summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@gmail.com>2020-04-19 17:14:41 -0400
committerPikalaxALT <PikalaxALT@gmail.com>2020-04-19 17:14:41 -0400
commit84053dd3ef9f6d0b720abdbaa7d7b72d73403b01 (patch)
treed38271dbec7f1ee3f5a40814ad10c70245e89f72
parentb0db4cab2ec010386a5619687944bdf7a5321ed4 (diff)
parenta2617364ed8c55a276e0ad626895294aed306a4b (diff)
Merge branch 'master' of https://github.com/martmists/pokediamond into finish_header
-rw-r--r--INSTALL.md4
-rw-r--r--Makefile8
-rw-r--r--asm/FUN_020C9C0C.s13766
-rw-r--r--asm/arm9_thumb.s6746
-rw-r--r--asm/entry.s2
-rw-r--r--asm/main.s172
-rw-r--r--asm/rom1.5.s5
-rw-r--r--asm/rom2.s3
-rw-r--r--asm/secure.s10
-rw-r--r--global.inc193
-rw-r--r--pokediamond.lcf2
-rw-r--r--src/FUN_02000DF4.c10
-rw-r--r--src/main.c151
-rw-r--r--undefined_syms.txt119
14 files changed, 17463 insertions, 3728 deletions
diff --git a/INSTALL.md b/INSTALL.md
index 2803a159..1ffc5c59 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -47,3 +47,7 @@ Install them using either the Cygwin package manager or using pacman on Msys2.
### 4. Build ROM
Run `make` to build the ROM.
+
+Windows Users:
+
+If you get an error in saving configuration settings when specifying the license file, you need to add a system environment variable called LM_LICENSE_FILE and point it to the license.dat file.
diff --git a/Makefile b/Makefile
index c5d2dfae..3026cc2d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
# Makefile to build Pokemon Diamond image
-.PHONY: clean tidy all default
+.PHONY: clean tidy all default patch_mwasmarm
# Try to include devkitarm if installed
TOOLCHAIN := $(DEVKITARM)
@@ -79,8 +79,8 @@ OBJCOPY := $(CROSS)objcopy
# ./tools/mwccarm/2.0/base/mwasmarm.exe -proc arm5te asm/arm9_thumb.s -o arm9.o
ASFLAGS = -proc arm5te
-CFLAGS = -O4,p -proc v5te -thumb -fp soft -lang c -Cpp_exceptions off -interworking -i nitro
-LDFLAGS = -nodead -w off -proc v5te -map -symtab -m Entry
+CFLAGS = -O4,p -proc v5te -thumb -fp soft -lang c -Cpp_exceptions off -i nitro
+LDFLAGS = -map -nodead -w off -proc v5te -interworking -map -symtab -m Entry
####################### Other Tools #########################
@@ -138,7 +138,7 @@ $(BUILD_DIR)/%.o: %.c
$(BUILD_DIR)/%.o: %.s
$(AS) $(ASFLAGS) $< -o $@
-$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT)
+$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT) undefined_syms.txt
$(CPP) $(VERSION_CFLAGS) -MMD -MP -MT $@ -MF $@.d -I include/ -I . -DBUILD_DIR=$(BUILD_DIR) -o $@ $<
$(ELF): $(O_FILES) $(BUILD_DIR)/$(LD_SCRIPT)
diff --git a/asm/FUN_020C9C0C.s b/asm/FUN_020C9C0C.s
new file mode 100644
index 00000000..b103a702
--- /dev/null
+++ b/asm/FUN_020C9C0C.s
@@ -0,0 +1,13766 @@
+ .include "asm/macros.inc"
+ .include "global.inc"
+
+ .text
+
+
+
+ arm_func_start OS_WaitIrq
+OS_WaitIrq:
+ stmdb sp!, {r4-r6,lr}
+ mov r5, r0
+ mov r4, r1
+ bl OS_DisableInterrupts
+ cmp r5, #0x0
+ beq _020C9C3C
+ ldr r1, _020C9C80 ; =0x027E0000
+ mvn r2, r4
+ add r1, r1, #0x3000
+ ldr r3, [r1, #0xff8]
+ and r2, r3, r2
+ str r2, [r1, #0xff8]
+_020C9C3C:
+ bl OS_RestoreInterrupts
+ ldr r1, _020C9C80 ; =0x027E0000
+ add r0, r1, #0x3000
+ ldr r0, [r0, #0xff8]
+ ands r0, r4, r0
+ ldmneia sp!, {r4-r6,lr}
+ bxne lr
+ ldr r0, _020C9C84 ; =0x00003FF8
+ add r6, r1, r0
+ ldr r5, _020C9C88 ; =0x027E0060
+_020C9C64:
+ mov r0, r5
+ bl OS_SleepThread
+ ldr r0, [r6, #0x0]
+ ands r0, r4, r0
+ beq _020C9C64
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020C9C80: .word 0x027E0000
+_020C9C84: .word 0x00003FF8
+_020C9C88: .word 0x027E0060
+
+ arm_func_start OSi_IrqTimer3
+OSi_IrqTimer3: ; 0x020C9C8C
+ ldr ip, _020C9C98 ; =OSi_IrqCallback
+ mov r0, #0x7
+ bx r12
+ .balign 4
+_020C9C98: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqTimer2
+OSi_IrqTimer2: ; 0x020C9C9C
+ ldr ip, _020C9CA8 ; =OSi_IrqCallback
+ mov r0, #0x6
+ bx r12
+ .balign 4
+_020C9CA8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqTimer1
+OSi_IrqTimer1: ; 0x020C9CAC
+ ldr ip, _020C9CB8 ; =OSi_IrqCallback
+ mov r0, #0x5
+ bx r12
+ .balign 4
+_020C9CB8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqTimer0
+OSi_IrqTimer0: ; 0x020C9CBC
+ ldr ip, _020C9CC8 ; =OSi_IrqCallback
+ mov r0, #0x4
+ bx r12
+ .balign 4
+_020C9CC8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqDma3
+OSi_IrqDma3: ; 0x020C9CCC
+ ldr ip, _020C9CD8 ; =OSi_IrqCallback
+ mov r0, #0x3
+ bx r12
+ .balign 4
+_020C9CD8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqDma2
+OSi_IrqDma2: ; 0x020C9CDC
+ ldr ip, _020C9CE8 ; =OSi_IrqCallback
+ mov r0, #0x2
+ bx r12
+ .balign 4
+_020C9CE8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqDma1
+OSi_IrqDma1: ; 0x020C9CEC
+ ldr ip, _020C9CF8 ; =OSi_IrqCallback
+ mov r0, #0x1
+ bx r12
+ .balign 4
+_020C9CF8: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqDma0
+OSi_IrqDma0: ; 0x020C9CFC
+ ldr ip, _020C9D08 ; =OSi_IrqCallback
+ mov r0, #0x0
+ bx r12
+ .balign 4
+_020C9D08: .word OSi_IrqCallback
+
+ arm_func_start OSi_IrqCallback
+OSi_IrqCallback: ; 0x020C9D0C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r1, #0xc
+ mul r4, r0, r1
+ ldr r2, _020C9D94 ; =0x021D341C
+ ldr r3, _020C9D98 ; =0x02106818
+ mov r0, r0, lsl #0x1
+ ldr r1, [r2, r4]
+ ldrh r3, [r3, r0]
+ mov r5, #0x1
+ mov r0, #0x0
+ str r0, [r2, r4]
+ cmp r1, #0x0
+ mov r5, r5, lsl r3
+ beq _020C9D54
+ ldr r0, _020C9D9C ; =0x021D3424
+ ldr r0, [r0, r4]
+ blx r1
+_020C9D54:
+ ldr r0, _020C9DA0 ; =0x027E0000
+ ldr r1, _020C9DA4 ; =0x021D3420
+ add r0, r0, #0x3000
+ ldr r2, [r0, #0xff8]
+ orr r2, r2, r5
+ str r2, [r0, #0xff8]
+ ldr r0, [r1, r4]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ mov r0, r5
+ bl OS_DisableIrqMask
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020C9D94: .word 0x021D341C
+_020C9D98: .word 0x02106818
+_020C9D9C: .word 0x021D3424
+_020C9DA0: .word 0x027E0000
+_020C9DA4: .word 0x021D3420
+
+ arm_func_start OS_IrqDummy
+OS_IrqDummy: ; 0x020C9DA8
+ bx lr
+
+ arm_func_start OS_SetIrqStackChecker
+OS_SetIrqStackChecker: ; 0x020C9DAC
+ ldr ip, _020C9DD0 ; =0x027E0000
+ ldr r3, _020C9DD4 ; =0xFDDB597D
+ add r0, r12, #0x3000
+ ldr r2, _020C9DD8 ; =0x7BF9DD5B
+ ldr r1, _020C9DDC ; =0x00000400
+ str r3, [r0, #0xf7c]
+ add r0, r12, #0x3f80
+ str r2, [r0, -r1]
+ bx lr
+ .balign 4
+_020C9DD0: .word 0x027E0000
+_020C9DD4: .word 0xFDDB597D
+_020C9DD8: .word 0x7BF9DD5B
+_020C9DDC: .word 0x00000400
+
+ arm_func_start OS_ResetRequestIrqMask
+OS_ResetRequestIrqMask: ; 0x020C9DE0
+ ldr ip, _020C9E0C ; =0x04000208
+ mov r1, #0x0
+ ldrh r3, [r12, #0x0]
+ ldr r2, _020C9E10 ; =0x04000214
+ strh r1, [r12, #0x0]
+ ldr r1, [r2, #0x0]
+ str r0, [r2, #0x0]
+ ldrh r0, [r12, #0x0]
+ mov r0, r1
+ strh r3, [r12, #0x0]
+ bx lr
+ .balign 4
+_020C9E0C: .word 0x04000208
+_020C9E10: .word 0x04000214
+
+ arm_func_start OS_DisableIrqMask
+OS_DisableIrqMask: ; 0x020C9E14
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr lr, _020C9E54 ; =0x04000208
+ mov r3, #0x0
+ ldrh r12, [lr, #0x0]
+ ldr r2, _020C9E58 ; =0x04000210
+ mvn r1, r0
+ strh r3, [lr, #0x0]
+ ldr r0, [r2, #0x0]
+ and r1, r0, r1
+ str r1, [r2, #0x0]
+ ldrh r1, [lr, #0x0]
+ strh r12, [lr, #0x0]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020C9E54: .word 0x04000208
+_020C9E58: .word 0x04000210
+
+ arm_func_start OS_EnableIrqMask
+OS_EnableIrqMask: ; 0x020C9E5C
+ ldr ip, _020C9E8C ; =0x04000208
+ mov r1, #0x0
+ ldrh r3, [r12, #0x0]
+ ldr r2, _020C9E90 ; =0x04000210
+ strh r1, [r12, #0x0]
+ ldr r1, [r2, #0x0]
+ orr r0, r1, r0
+ str r0, [r2, #0x0]
+ ldrh r0, [r12, #0x0]
+ mov r0, r1
+ strh r3, [r12, #0x0]
+ bx lr
+ .balign 4
+_020C9E8C: .word 0x04000208
+_020C9E90: .word 0x04000210
+
+ arm_func_start OS_SetIrqMask
+OS_SetIrqMask: ; 0x020C9E94
+ ldr ip, _020C9EC0 ; =0x04000208
+ mov r1, #0x0
+ ldrh r3, [r12, #0x0]
+ ldr r2, _020C9EC4 ; =0x04000210
+ strh r1, [r12, #0x0]
+ ldr r1, [r2, #0x0]
+ str r0, [r2, #0x0]
+ ldrh r0, [r12, #0x0]
+ mov r0, r1
+ strh r3, [r12, #0x0]
+ bx lr
+ .balign 4
+_020C9EC0: .word 0x04000208
+_020C9EC4: .word 0x04000210
+
+ arm_func_start OSi_EnterTimerCallback
+OSi_EnterTimerCallback: ; 0x020C9EC8
+ stmdb sp!, {r4,lr}
+ mov r3, #0xc
+ mul r4, r0, r3
+ ldr ip, _020C9F08 ; =0x021D344C
+ add r0, r0, #0x3
+ mov r3, #0x1
+ mov r0, r3, lsl r0
+ ldr r3, _020C9F0C ; =0x021D3454
+ str r1, [r12, r4]
+ str r2, [r3, r4]
+ bl OS_EnableIrqMask
+ ldr r0, _020C9F10 ; =0x021D3450
+ mov r1, #0x1
+ str r1, [r0, r4]
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020C9F08: .word 0x021D344C
+_020C9F0C: .word 0x021D3454
+_020C9F10: .word 0x021D3450
+
+ arm_func_start OSi_EnterDmaCallback
+OSi_EnterDmaCallback: ; 0x020C9F14
+ stmdb sp!, {r4-r6,lr}
+ mov r3, #0xc
+ mul r6, r0, r3
+ ldr ip, _020C9F54 ; =0x021D341C
+ add r4, r0, #0x8
+ mov r5, #0x1
+ mov r0, r5, lsl r4
+ ldr r3, _020C9F58 ; =0x021D3424
+ str r1, [r12, r6]
+ str r2, [r3, r6]
+ bl OS_EnableIrqMask
+ and r1, r0, r5, lsl r4
+ ldr r0, _020C9F5C ; =0x021D3420
+ str r1, [r0, r6]
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020C9F54: .word 0x021D341C
+_020C9F58: .word 0x021D3424
+_020C9F5C: .word 0x021D3420
+
+ arm_func_start OS_GetIrqFunction
+OS_GetIrqFunction: ; 0x020C9F60
+ ldr r2, _020C9FE4 ; =0x027E0000
+ mov r3, #0x0
+_020C9F68:
+ ands r1, r0, #0x1
+ beq _020C9FC8
+ cmp r3, #0x8
+ blt _020C9F98
+ cmp r3, #0xb
+ bgt _020C9F98
+ sub r1, r3, #0x8
+ mov r0, #0xc
+ mul r2, r1, r0
+ ldr r0, _020C9FE8 ; =0x021D341C
+ ldr r0, [r0, r2]
+ bx lr
+_020C9F98:
+ cmp r3, #0x3
+ blt _020C9FC0
+ cmp r3, #0x6
+ bgt _020C9FC0
+ add r1, r3, #0x1
+ mov r0, #0xc
+ mul r2, r1, r0
+ ldr r0, _020C9FE8 ; =0x021D341C
+ ldr r0, [r0, r2]
+ bx lr
+_020C9FC0:
+ ldr r0, [r2, #0x0]
+ bx lr
+_020C9FC8:
+ add r3, r3, #0x1
+ cmp r3, #0x16
+ mov r0, r0, lsr #0x1
+ add r2, r2, #0x4
+ blt _020C9F68
+ mov r0, #0x0
+ bx lr
+ .balign 4
+_020C9FE4: .word 0x027E0000
+_020C9FE8: .word 0x021D341C
+
+ arm_func_start OS_SetIrqFunction
+OS_SetIrqFunction: ; 0x020C9FEC
+ stmdb sp!, {r4-r8,lr}
+ mov r8, #0x0
+ ldr lr, _020CA074 ; =0x027E0000
+ ldr r5, _020CA078 ; =0x021D341C
+ mov r6, r8
+ mov r12, r8
+ mov r3, #0x1
+ mov r2, #0xc
+_020CA00C:
+ ands r4, r0, #0x1
+ beq _020CA05C
+ mov r7, r6
+ cmp r8, #0x8
+ blt _020CA030
+ cmp r8, #0xb
+ suble r4, r8, #0x8
+ mlale r7, r4, r2, r5
+ ble _020CA04C
+_020CA030:
+ cmp r8, #0x3
+ blt _020CA048
+ cmp r8, #0x6
+ addle r4, r8, #0x1
+ mlale r7, r4, r2, r5
+ ble _020CA04C
+_020CA048:
+ str r1, [lr, r8, lsl #0x2]
+_020CA04C:
+ cmp r7, #0x0
+ strne r1, [r7, #0x0]
+ strne r12, [r7, #0x8]
+ strne r3, [r7, #0x4]
+_020CA05C:
+ add r8, r8, #0x1
+ cmp r8, #0x16
+ mov r0, r0, lsr #0x1
+ blt _020CA00C
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020CA074: .word 0x027E0000
+_020CA078: .word 0x021D341C
+
+ arm_func_start OS_InitIrqTable
+OS_InitIrqTable: ; 0x020CA07C
+ ldr r0, _020CA090 ; =0x027E0060
+ mov r1, #0x0
+ str r1, [r0, #0x4]
+ str r1, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CA090: .word 0x027E0060
+
+ arm_func_start OS_UnlockCartridge
+OS_UnlockCartridge: ; 0x020CA094
+ ldr r1, _020CA09C ; =OS_UnlockCartridge2
+ bx r1
+ .balign 4
+_020CA09C: .word OS_UnlockCartridge2
+
+ arm_func_start OS_GetLockID
+OS_GetLockID: ; 0x020CA0A0
+ ldr r3, _020CA0F0 ; =0x027FFFB0
+ ldr r1, [r3, #0x0]
+ clz r2, r1
+ cmp r2, #0x20
+ movne r0, #0x40
+ bne _020CA0D4
+ add r3, r3, #0x4
+ ldr r1, [r3, #0x0]
+ clz r2, r1
+ cmp r2, #0x20
+ ldr r0, _020CA0F4 ; =0xFFFFFFFD
+ bxeq lr
+ mov r0, #0x60
+_020CA0D4:
+ add r0, r0, r2
+ mov r1, #0x80000000
+ mov r1, r1, lsr r2
+ ldr r2, [r3, #0x0]
+ bic r2, r2, r1
+ str r2, [r3, #0x0]
+ bx lr
+ .balign 4
+_020CA0F0: .word 0x027FFFB0
+_020CA0F4: .word 0xFFFFFFFD
+
+ arm_func_start OS_ReleaseLockID
+OS_ReleaseLockID: ; 0x020CA0F8
+ ldr r3, _020CA124 ; =0x027FFFB0
+ cmp r0, #0x60
+ addpl r3, r3, #0x4
+ subpl r0, r0, #0x60
+ submi r0, r0, #0x40
+ mov r1, #0x80000000
+ mov r1, r1, lsr r0
+ ldr r2, [r3, #0x0]
+ orr r2, r2, r1
+ str r2, [r3, #0x0]
+ bx lr
+ .balign 4
+_020CA124: .word 0x027FFFB0
+
+ arm_func_start OS_ReadOwnerOfLockWord
+OS_ReadOwnerOfLockWord: ; 0x020CA128
+ ldrh r0, [r0, #0x4]
+ bx lr
+
+ arm_func_start OSi_FreeCardBus
+OSi_FreeCardBus: ; 0x020CA130
+ ldr r1, _020CA144 ; =0x04000204
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x800
+ strh r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CA144: .word 0x04000204
+
+ arm_func_start OSi_AllocateCardBus
+OSi_AllocateCardBus: ; 0x020CA148
+ ldr r1, _020CA15C ; =0x04000204
+ ldrh r0, [r1, #0x0]
+ bic r0, r0, #0x800
+ strh r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CA15C: .word 0x04000204
+
+ arm_func_start OS_UnlockCard
+OS_UnlockCard: ; 0x020CA160
+ ldr ip, _020CA170 ; =OS_UnlockByWord
+ ldr r1, _020CA174 ; =0x027FFFE0
+ ldr r2, _020CA178 ; =OSi_FreeCardBus
+ bx r12
+ .balign 4
+_020CA170: .word OS_UnlockByWord
+_020CA174: .word 0x027FFFE0
+_020CA178: .word OSi_FreeCardBus
+
+ arm_func_start OS_TryLockCard
+OS_TryLockCard: ; 0x020CA17C
+ ldr ip, _020CA18C ; =OS_TryLockByWord
+ ldr r1, _020CA190 ; =0x027FFFE0
+ ldr r2, _020CA194 ; =OSi_AllocateCardBus
+ bx r12
+ .balign 4
+_020CA18C: .word OS_TryLockByWord
+_020CA190: .word 0x027FFFE0
+_020CA194: .word OSi_AllocateCardBus
+
+ arm_func_start OSi_FreeCartridgeBus
+OSi_FreeCartridgeBus: ; 0x020CA198
+ ldr r1, _020CA1AC ; =0x04000204
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x80
+ strh r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CA1AC: .word 0x04000204
+
+ arm_func_start OSi_AllocateCartridgeBus
+OSi_AllocateCartridgeBus: ; 0x020CA1B0
+ ldr r1, _020CA1C4 ; =0x04000204
+ ldrh r0, [r1, #0x0]
+ bic r0, r0, #0x80
+ strh r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CA1C4: .word 0x04000204
+
+ arm_func_start OS_TryLockCartridge
+OS_TryLockCartridge: ; 0x020CA1C8
+ ldr ip, _020CA1DC ; =OSi_DoTryLockByWord
+ ldr r1, _020CA1E0 ; =0x027FFFE8
+ ldr r2, _020CA1E4 ; =OSi_AllocateCartridgeBus
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020CA1DC: .word OSi_DoTryLockByWord
+_020CA1E0: .word 0x027FFFE8
+_020CA1E4: .word OSi_AllocateCartridgeBus
+
+ arm_func_start OS_UnlockCartridge2
+OS_UnlockCartridge2: ; 0x020CA1E8
+ ldr ip, _020CA1FC ; =FUN_020CA2B8
+ ldr r1, _020CA200 ; =0x027FFFE8
+ ldr r2, _020CA204 ; =OSi_FreeCartridgeBus
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020CA1FC: .word FUN_020CA2B8
+_020CA200: .word 0x027FFFE8
+_020CA204: .word OSi_FreeCartridgeBus
+
+ arm_func_start OS_LockCartridge
+OS_LockCartridge: ; 0x020CA208
+ ldr ip, _020CA21C ; =FUN_020CA358
+ ldr r1, _020CA220 ; =0x027FFFE8
+ ldr r2, _020CA224 ; =OSi_AllocateCartridgeBus
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020CA21C: .word FUN_020CA358
+_020CA220: .word 0x027FFFE8
+_020CA224: .word OSi_AllocateCartridgeBus
+
+ arm_func_start OSi_DoTryLockByWord
+OSi_DoTryLockByWord:
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4
+ movs r6, r3
+ mov r9, r0
+ mov r8, r1
+ mov r7, r2
+ beq _020CA250
+ bl OS_DisableInterrupts_IrqAndFiq
+ mov r5, r0
+ b _020CA258
+_020CA250:
+ bl OS_DisableInterrupts
+ mov r5, r0
+_020CA258:
+ mov r0, r9
+ mov r1, r8
+ bl MI_SwapWord
+ movs r4, r0
+ bne _020CA27C
+ cmp r7, #0x0
+ beq _020CA278
+ blx r7
+_020CA278:
+ strh r9, [r8, #0x4]
+_020CA27C:
+ cmp r6, #0x0
+ beq _020CA290
+ mov r0, r5
+ bl OS_RestoreInterrupts_IrqAndFiq
+ b _020CA298
+_020CA290:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+_020CA298:
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+
+ arm_func_start OS_UnlockByWord
+OS_UnlockByWord: ; 0x020CA2A8
+ ldr ip, _020CA2B4 ; =FUN_020CA2B8
+ mov r3, #0x0
+ bx r12
+ .balign 4
+_020CA2B4: .word FUN_020CA2B8
+
+ arm_func_start FUN_020CA2B8
+FUN_020CA2B8: ; 0x020CA2B8
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r1
+ ldrh r1, [r7, #0x4]
+ mov r6, r2
+ mov r5, r3
+ cmp r0, r1
+ addne sp, sp, #0x4
+ mvnne r0, #0x1
+ ldmneia sp!, {r4-r7,lr}
+ bxne lr
+ cmp r5, #0x0
+ beq _020CA2F8
+ bl OS_DisableInterrupts_IrqAndFiq
+ mov r4, r0
+ b _020CA300
+_020CA2F8:
+ bl OS_DisableInterrupts
+ mov r4, r0
+_020CA300:
+ mov r0, #0x0
+ strh r0, [r7, #0x4]
+ cmp r6, #0x0
+ beq _020CA314
+ blx r6
+_020CA314:
+ mov r0, #0x0
+ str r0, [r7, #0x0]
+ cmp r5, #0x0
+ beq _020CA330
+ mov r0, r4
+ bl OS_RestoreInterrupts_IrqAndFiq
+ b _020CA338
+_020CA330:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020CA338:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start OS_TryLockByWord
+OS_TryLockByWord: ; 0x020CA348
+ ldr ip, _020CA354 ; =FUN_020CA358
+ mov r3, #0x0
+ bx r12
+ .balign 4
+_020CA354: .word FUN_020CA358
+
+ arm_func_start FUN_020CA358
+FUN_020CA358: ; 0x020CA358
+ stmdb sp!, {r4-r8,lr}
+ mov r8, r0
+ mov r7, r1
+ mov r6, r2
+ mov r5, r3
+ bl OSi_DoTryLockByWord
+ cmp r0, #0x0
+ ldmleia sp!, {r4-r8,lr}
+ bxle lr
+ mov r4, #0x400
+_020CA380:
+ mov r0, r4
+ blx FUN_020005F2
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ mov r3, r5
+ bl OSi_DoTryLockByWord
+ cmp r0, #0x0
+ bgt _020CA380
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start OS_InitLock
+OS_InitLock: ; 0x020CA3AC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CA484 ; =0x021D347C
+ ldr r1, [r0, #0x0]
+ cmp r1, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ mov r2, #0x1
+ ldr r1, _020CA488 ; =0x027FFFF0
+ str r2, [r0, #0x0]
+ mov r2, #0x0
+ mov r0, #0x7e
+ str r2, [r1, #0x0]
+ bl OS_TryLockByWord
+ ldr r5, _020CA488 ; =0x027FFFF0
+ ldrh r0, [r5, #0x6]
+ cmp r0, #0x0
+ beq _020CA410
+ mov r4, #0x400
+_020CA3FC:
+ mov r0, r4
+ blx FUN_020005F2
+ ldrh r0, [r5, #0x6]
+ cmp r0, #0x0
+ bne _020CA3FC
+_020CA410:
+ ldr r2, _020CA48C ; =0x027FFFB0
+ mvn r12, #0x0
+ mov r0, #0x10000
+ ldr r3, _020CA490 ; =0x027FFFB4
+ ldr r1, _020CA494 ; =0x027FFFC0
+ str r12, [r2, #0x0]
+ rsb r12, r0, #0x0
+ mov r0, #0x0
+ mov r2, #0x28
+ str r12, [r3, #0x0]
+ bl MIi_CpuClear32
+ ldr ip, _020CA498 ; =0x04000204
+ ldr r1, _020CA488 ; =0x027FFFF0
+ ldrh r3, [r12, #0x0]
+ mov r0, #0x7e
+ mov r2, #0x0
+ orr r3, r3, #0x800
+ strh r3, [r12, #0x0]
+ ldrh r3, [r12, #0x0]
+ orr r3, r3, #0x80
+ strh r3, [r12, #0x0]
+ bl OS_UnlockByWord
+ ldr r1, _020CA488 ; =0x027FFFF0
+ mov r0, #0x7f
+ mov r2, #0x0
+ bl OS_TryLockByWord
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CA484: .word 0x021D347C
+_020CA488: .word 0x027FFFF0
+_020CA48C: .word 0x027FFFB0
+_020CA490: .word 0x027FFFB4
+_020CA494: .word 0x027FFFC0
+_020CA498: .word 0x04000204
+
+ arm_func_start OS_VSNPrintf
+OS_VSNPrintf: ; 0x020CA49C
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x64
+ mov r9, r2
+ str r1, [sp, #0x54]
+ str r0, [sp, #0x5c]
+ str r0, [sp, #0x58]
+ ldrsb r0, [r9, #0x0]
+ str r1, [sp, #0x0]
+ mov r11, r3
+ cmp r0, #0x0
+ beq _020CAD18
+ mov r0, #0xa
+ str r0, [sp, #0xc]
+ mov r0, #0x0
+ str r0, [sp, #0x4]
+ mov r0, #0x20
+ str r0, [sp, #0x1c]
+ mov r0, #0x30
+ str r0, [sp, #0x20]
+ mvn r0, #0x0
+ str r0, [sp, #0x8]
+ mov r0, #0x57
+ str r0, [sp, #0x10]
+ mov r0, #0x8
+ str r0, [sp, #0x14]
+ mov r0, #0x37
+ str r0, [sp, #0x18]
+ mov r0, #0x10
+ str r0, [sp, #0x24]
+ mov r0, #0x1
+ str r0, [sp, #0x28]
+ mov r0, #0x2b
+ str r0, [sp, #0x34]
+ mov r0, #0x2d
+ str r0, [sp, #0x30]
+ mov r0, #0x2
+ str r0, [sp, #0x2c]
+_020CA530:
+ ldrsb r1, [r9, #0x0]
+ and r0, r1, #0xff
+ eor r0, r0, #0x20
+ sub r0, r0, #0xa1
+ cmp r0, #0x3c
+ bhs _020CA56C
+ add r0, sp, #0x54
+ bl string_put_char
+ ldrsb r1, [r9, #0x1]!
+ cmp r1, #0x0
+ beq _020CAD0C
+ add r0, sp, #0x54
+ add r9, r9, #0x1
+ bl string_put_char
+ b _020CAD0C
+_020CA56C:
+ cmp r1, #0x25
+ beq _020CA584
+ add r0, sp, #0x54
+ add r9, r9, #0x1
+ bl string_put_char
+ b _020CAD0C
+_020CA584:
+ ldr r6, [sp, #0x4]
+ ldr r5, [sp, #0x8]
+ ldr r2, [sp, #0xc]
+ ldr r0, [sp, #0x10]
+ mov r10, r6
+ mov r3, r9
+_020CA59C:
+ ldrsb r4, [r9, #0x1]!
+ cmp r4, #0x20
+ bgt _020CA5B4
+ cmp r4, #0x20
+ beq _020CA5F4
+ b _020CA60C
+_020CA5B4:
+ cmp r4, #0x30
+ bgt _020CA60C
+ cmp r4, #0x2b
+ blt _020CA60C
+ cmp r4, #0x2b
+ beq _020CA5E0
+ cmp r4, #0x2d
+ beq _020CA5FC
+ cmp r4, #0x30
+ beq _020CA604
+ b _020CA60C
+_020CA5E0:
+ ldrsb r1, [r9, #-0x1]
+ cmp r1, #0x20
+ bne _020CA60C
+ orr r6, r6, #0x2
+ b _020CA59C
+_020CA5F4:
+ orr r6, r6, #0x1
+ b _020CA59C
+_020CA5FC:
+ orr r6, r6, #0x8
+ b _020CA59C
+_020CA604:
+ orr r6, r6, #0x10
+ b _020CA59C
+_020CA60C:
+ cmp r4, #0x2a
+ bne _020CA640
+ add r11, r11, #0x4
+ ldr r10, [r11, #-0x4]
+ add r9, r9, #0x1
+ cmp r10, #0x0
+ rsblt r10, r10, #0x0
+ orrlt r6, r6, #0x8
+ b _020CA654
+_020CA630:
+ ldrsb r4, [r9], #0x1
+ mov r1, #0xa
+ mla r1, r10, r1, r4
+ sub r10, r1, #0x30
+_020CA640:
+ ldrsb r1, [r9, #0x0]
+ cmp r1, #0x30
+ blt _020CA654
+ cmp r1, #0x39
+ ble _020CA630
+_020CA654:
+ ldrsb r1, [r9, #0x0]
+ cmp r1, #0x2e
+ bne _020CA6AC
+ ldrsb r1, [r9, #0x1]!
+ ldr r5, [sp, #0x4]
+ cmp r1, #0x2a
+ bne _020CA698
+ add r11, r11, #0x4
+ ldr r5, [r11, #-0x4]
+ add r9, r9, #0x1
+ cmp r5, #0x0
+ ldrlt r5, [sp, #0x8]
+ b _020CA6AC
+_020CA688:
+ ldrsb r4, [r9], #0x1
+ mov r1, #0xa
+ mla r1, r5, r1, r4
+ sub r5, r1, #0x30
+_020CA698:
+ ldrsb r1, [r9, #0x0]
+ cmp r1, #0x30
+ blt _020CA6AC
+ cmp r1, #0x39
+ ble _020CA688
+_020CA6AC:
+ ldrsb r1, [r9, #0x0]
+ cmp r1, #0x68
+ beq _020CA6C4
+ cmp r1, #0x6c
+ beq _020CA6DC
+ b _020CA6F0
+_020CA6C4:
+ ldrsb r1, [r9, #0x1]!
+ cmp r1, #0x68
+ orrne r6, r6, #0x40
+ addeq r9, r9, #0x1
+ orreq r6, r6, #0x100
+ b _020CA6F0
+_020CA6DC:
+ ldrsb r1, [r9, #0x1]!
+ cmp r1, #0x6c
+ orrne r6, r6, #0x20
+ addeq r9, r9, #0x1
+ orreq r6, r6, #0x80
+_020CA6F0:
+ ldrsb r1, [r9, #0x0]
+ cmp r1, #0x69
+ bgt _020CA740
+ cmp r1, #0x63
+ blt _020CA720
+ cmp r1, #0x63
+ beq _020CA7B4
+ cmp r1, #0x64
+ beq _020CA96C
+ cmp r1, #0x69
+ beq _020CA96C
+ b _020CA950
+_020CA720:
+ cmp r1, #0x25
+ bgt _020CA734
+ cmp r1, #0x25
+ beq _020CA934
+ b _020CA950
+_020CA734:
+ cmp r1, #0x58
+ beq _020CA7A0
+ b _020CA950
+_020CA740:
+ cmp r1, #0x6e
+ bgt _020CA754
+ cmp r1, #0x6e
+ beq _020CA8DC
+ b _020CA950
+_020CA754:
+ sub r1, r1, #0x6f
+ cmp r1, #0x9
+ addls pc, pc, r1, lsl #0x2
+ b _020CA950
+_020CA764:
+ b _020CA78C
+ b _020CA7A8
+ b _020CA950
+ b _020CA950
+ b _020CA828
+ b _020CA950
+ b _020CA798
+ b _020CA950
+ b _020CA950
+ b _020CA964
+_020CA78C:
+ ldr r2, [sp, #0x14]
+ orr r6, r6, #0x1000
+ b _020CA96C
+_020CA798:
+ orr r6, r6, #0x1000
+ b _020CA96C
+_020CA7A0:
+ ldr r0, [sp, #0x18]
+ b _020CA964
+_020CA7A8:
+ orr r6, r6, #0x4
+ ldr r5, [sp, #0x14]
+ b _020CA964
+_020CA7B4:
+ cmp r5, #0x0
+ bge _020CA950
+ ands r0, r6, #0x8
+ add r11, r11, #0x4
+ ldr r4, [r11, #-0x4]
+ beq _020CA7F0
+ mov r0, r4, lsl #0x18
+ mov r1, r0, asr #0x18
+ add r0, sp, #0x54
+ bl string_put_char
+ ldr r1, [sp, #0x1c]
+ sub r2, r10, #0x1
+ add r0, sp, #0x54
+ bl string_fill_char
+ b _020CA820
+_020CA7F0:
+ ands r0, r6, #0x10
+ ldrne r0, [sp, #0x20]
+ sub r2, r10, #0x1
+ ldreq r0, [sp, #0x1c]
+ mov r0, r0, lsl #0x18
+ mov r1, r0, asr #0x18
+ add r0, sp, #0x54
+ bl string_fill_char
+ mov r0, r4, lsl #0x18
+ mov r1, r0, asr #0x18
+ add r0, sp, #0x54
+ bl string_put_char
+_020CA820:
+ add r9, r9, #0x1
+ b _020CAD0C
+_020CA828:
+ add fp, fp, #0x4
+ cmp r5, #0x0
+ ldr r7, [sp, #0x4]
+ ldr r4, [fp, #-0x4]
+ bge _020CA860
+ ldrsb r0, [r4]
+ cmp r0, #0x0
+ beq _020CA874
+_020CA848:
+ add r7, r7, #0x1
+ ldrsb r0, [r4, r7]
+ cmp r0, #0x0
+ bne _020CA848
+ b _020CA874
+_020CA85C:
+ add r7, r7, #0x1
+_020CA860:
+ cmp r7, r5
+ bge _020CA874
+ ldrsb r0, [r4, r7]
+ cmp r0, #0x0
+ bne _020CA85C
+_020CA874:
+ ands r0, r6, #0x8
+ sub sl, sl, r7
+ beq _020CA8A4
+ mov r1, r4
+ mov r2, r7
+ add r0, sp, #0x54
+ bl string_put_string
+ ldr r1, [sp, #0x1C]
+ mov r2, sl
+ add r0, sp, #0x54
+ bl string_fill_char
+ b _020CA8D4
+_020CA8A4:
+ ands r0, r6, #0x10
+ ldrne r0, [sp, #0x20]
+ mov r2, sl
+ ldreq r0, [sp, #0x1C]
+ mov r0, r0, lsl #0x18
+ mov r1, r0, asr #0x18
+ add r0, sp, #0x54
+ bl string_fill_char
+ mov r1, r4
+ mov r2, r7
+ add r0, sp, #0x54
+ bl string_put_string
+_020CA8D4:
+ add r9, r9, #0x1
+ b _020CAD0C
+_020CA8DC:
+ ands r0, r6, #0x100
+ ldr r1, [sp, #0x58]
+ ldr r0, [sp, #0x5c]
+ sub r2, r1, r0
+ bne _020CA92C
+ ands r0, r6, #0x40
+ addne r11, r11, #0x4
+ ldrne r0, [r11, #-0x4]
+ strneh r2, [r0, #0x0]
+ bne _020CA92C
+ ands r0, r6, #0x80
+ addeq r11, r11, #0x4
+ ldreq r0, [r11, #-0x4]
+ streq r2, [r0, #0x0]
+ beq _020CA92C
+ add r11, r11, #0x4
+ ldr r0, [r11, #-0x4]
+ mov r1, r2, asr #0x1f
+ str r2, [r0, #0x0]
+ str r1, [r0, #0x4]
+_020CA92C:
+ add r9, r9, #0x1
+ b _020CAD0C
+_020CA934:
+ add r0, r3, #0x1
+ cmp r0, r9
+ bne _020CA950
+ add r0, sp, #0x54
+ add r9, r9, #0x1
+ bl string_put_char
+ b _020CAD0C
+_020CA950:
+ add r0, sp, #0x54
+ mov r1, r3
+ sub r2, r9, r3
+ bl string_put_string
+ b _020CAD0C
+_020CA964:
+ ldr r2, [sp, #0x24]
+ orr r6, r6, #0x1000
+_020CA96C:
+ ands r1, r6, #0x8
+ bicne r6, r6, #0x10
+ cmp r5, #0x0
+ bicge r6, r6, #0x10
+ ldrlt r5, [sp, #0x28]
+ ldr r7, [sp, #0x4]
+ ands r1, r6, #0x1000
+ beq _020CAA20
+ ands r1, r6, #0x100
+ addne r11, r11, #0x4
+ ldrneb r4, [r11, #-0x4]
+ movne r1, #0x0
+ bne _020CA9D0
+ ands r1, r6, #0x40
+ addne r11, r11, #0x4
+ ldrneh r4, [r11, #-0x4]
+ movne r1, #0x0
+ bne _020CA9D0
+ ands r1, r6, #0x80
+ addne r11, r11, #0x8
+ ldrne r1, [r11, #-0x4]
+ ldrne r4, [r11, #-0x8]
+ addeq r11, r11, #0x4
+ ldreq r4, [r11, #-0x4]
+ moveq r1, #0x0
+_020CA9D0:
+ bic r6, r6, #0x3
+ ands r3, r6, #0x4
+ beq _020CAAD8
+ cmp r2, #0x10
+ bne _020CAA0C
+ mov r3, #0x0
+ cmp r1, r3
+ cmpeq r4, r3
+ beq _020CAAD8
+ ldr r3, [sp, #0x20]
+ ldr r7, [sp, #0x2c]
+ strb r3, [sp, #0x39]
+ add r3, r0, #0x21
+ strb r3, [sp, #0x38]
+ b _020CAAD8
+_020CAA0C:
+ cmp r2, #0x8
+ ldreq r3, [sp, #0x20]
+ ldreq r7, [sp, #0x28]
+ streqb r3, [sp, #0x38]
+ b _020CAAD8
+_020CAA20:
+ ands r1, r6, #0x100
+ addne r11, r11, #0x4
+ ldrnesb r4, [r11, #-0x4]
+ movne r1, r4, asr #0x1f
+ bne _020CAA64
+ ands r1, r6, #0x40
+ addne r11, r11, #0x4
+ ldrnesh r4, [r11, #-0x4]
+ movne r1, r4, asr #0x1f
+ bne _020CAA64
+ ands r1, r6, #0x80
+ addne r11, r11, #0x8
+ ldrne r4, [r11, #-0x8]
+ ldrne r1, [r11, #-0x4]
+ addeq r11, r11, #0x4
+ ldreq r4, [r11, #-0x4]
+ moveq r1, r4, asr #0x1f
+_020CAA64:
+ mov r3, #0x0
+ and r8, r3, #0x0
+ cmp r8, r3
+ and r8, r1, #0x80000000
+ cmpeq r8, r3
+ beq _020CAAA0
+ ldr r7, [sp, #0x30]
+ mvn r4, r4
+ strb r7, [sp, #0x38]
+ mvn r7, r1
+ mov r1, #0x1
+ adds r4, r4, r1
+ adc r1, r7, r3
+ ldr r7, [sp, #0x28]
+ b _020CAAD8
+_020CAAA0:
+ cmp r1, r3
+ cmpeq r4, r3
+ bne _020CAAB4
+ cmp r5, #0x0
+ beq _020CAAD8
+_020CAAB4:
+ ands r3, r6, #0x2
+ ldrne r3, [sp, #0x34]
+ ldrne r7, [sp, #0x28]
+ strneb r3, [sp, #0x38]
+ bne _020CAAD8
+ ands r3, r6, #0x1
+ ldrne r3, [sp, #0x1c]
+ ldrne r7, [sp, #0x28]
+ strneb r3, [sp, #0x38]
+_020CAAD8:
+ cmp r2, #0x8
+ ldr r8, [sp, #0x4]
+ beq _020CAAF8
+ cmp r2, #0xa
+ beq _020CAB40
+ cmp r2, #0x10
+ beq _020CABDC
+ b _020CAC28
+_020CAAF8:
+ mov r0, #0x0
+ cmp r1, r0
+ cmpeq r4, r0
+ beq _020CAC28
+_020CAB08:
+ and r0, r4, #0x7
+ add r3, r0, #0x30
+ add r0, sp, #0x3a
+ strb r3, [r0, r8]
+ mov r4, r4, lsr #0x3
+ mov r2, #0x0
+ mov r0, r1, lsr #0x3
+ orr r4, r4, r1, lsl #0x1d
+ cmp r0, r2
+ cmpeq r4, r2
+ mov r1, r0
+ add r8, r8, #0x1
+ bne _020CAB08
+ b _020CAC28
+_020CAB40:
+ mov r0, #0x0
+ cmp r0, r0
+ cmpeq r1, r0
+ bne _020CAB8C
+ cmp r4, #0x0
+ beq _020CAC28
+_020CAB58:
+ ldr r0, _020CAD60 ; =0xCCCCCCCD
+ umull r1, r0, r4, r0
+ movs r0, r0, lsr #0x3
+ mov r1, #0xa
+ mul r1, r0, r1
+ sub r1, r4, r1
+ mov r4, r0
+ add r1, r1, #0x30
+ add r0, sp, #0x3a
+ strb r1, [r0, r8]
+ add r8, r8, #0x1
+ bne _020CAB58
+ b _020CAC28
+_020CAB8C:
+ cmp r1, r0
+ cmpeq r4, r0
+ beq _020CAC28
+_020CAB98:
+ ldr r2, [sp, #0xc]
+ ldr r3, [sp, #0x4]
+ mov r0, r4
+ bl _ll_udiv
+ mov r3, #0xa
+ umull r3, r12, r0, r3
+ subs r3, r4, r3
+ mov r2, #0x0
+ add r4, r3, #0x30
+ add r3, sp, #0x3a
+ strb r4, [r3, r8]
+ cmp r1, r2
+ cmpeq r0, r2
+ mov r4, r0
+ add r8, r8, #0x1
+ bne _020CAB98
+ b _020CAC28
+_020CABDC:
+ mov r2, #0x0
+ cmp r1, r2
+ cmpeq r4, r2
+ beq _020CAC28
+_020CABEC:
+ and r3, r4, #0xf
+ cmp r3, #0xa
+ mov r4, r4, lsr #0x4
+ addlt r3, r3, #0x30
+ mov r2, r1, lsr #0x4
+ orr r4, r4, r1, lsl #0x1c
+ mov r1, r2
+ addge r3, r3, r0
+ add r2, sp, #0x3a
+ strb r3, [r2, r8]
+ mov r2, #0x0
+ cmp r1, r2
+ add r8, r8, #0x1
+ cmpeq r4, r2
+ bne _020CABEC
+_020CAC28:
+ cmp r7, #0x0
+ ble _020CAC4C
+ ldrsb r0, [sp, #0x38]
+ cmp r0, #0x30
+ ldreq r1, [sp, #0x20]
+ addeq r0, sp, #0x3a
+ streqb r1, [r0, r8]
+ ldreq r7, [sp, #0x4]
+ addeq r8, r8, #0x1
+_020CAC4C:
+ sub r5, r5, r8
+ ands r0, r6, #0x10
+ beq _020CAC68
+ sub r0, r10, r8
+ sub r0, r0, r7
+ cmp r5, r0
+ movlt r5, r0
+_020CAC68:
+ cmp r5, #0x0
+ subgt r10, r10, r5
+ add r0, r7, r8
+ ands r6, r6, #0x8
+ sub r10, r10, r0
+ bne _020CAC90
+ ldr r1, [sp, #0x1c]
+ add r0, sp, #0x54
+ mov r2, r10
+ bl string_fill_char
+_020CAC90:
+ cmp r7, #0x0
+ ble _020CACB8
+ add r0, sp, #0x38
+ add r4, r0, r7
+_020CACA0:
+ ldrsb r1, [r4, #-0x1]!
+ sub r7, r7, #0x1
+ add r0, sp, #0x54
+ bl string_put_char
+_020CACB0:
+ cmp r7, #0x0
+ bgt _020CACA0
+_020CACB8:
+ ldr r1, [sp, #0x20]
+ mov r2, r5
+ add r0, sp, #0x54
+ bl string_fill_char
+_020CACC8:
+ cmp r8, #0x0
+ ble _020CACF0
+ add r0, sp, #0x3A
+ add r4, r0, r8
+_020CACD8:
+ ldrsb r1, [r4, #-0x1]!
+ sub r8, r8, #0x1
+ add r0, sp, #0x54
+ bl string_put_char
+ cmp r8, #0x0
+ bgt _020CACD8
+_020CACF0:
+ cmp r6, #0x0
+ beq _020CAD08
+ ldr r1, [sp, #0x1C]
+ mov r2, sl
+ add r0, sp, #0x54
+ bl string_fill_char
+_020CAD08:
+ add r9, r9, #0x1
+_020CAD0C:
+ ldrsb r0, [r9, #0x0]
+ cmp r0, #0x0
+ bne _020CA530
+_020CAD18:
+ ldr r0, [sp, #0x54]
+ cmp r0, #0x0
+ ldrne r0, [sp, #0x58]
+ movne r1, #0x0
+ strneb r1, [r0, #0x0]
+ bne _020CAD48
+ ldr r0, [sp, #0x0]
+ cmp r0, #0x0
+ ldrne r1, [sp, #0x5c]
+ movne r2, #0x0
+ addne r0, r1, r0
+ strneb r2, [r0, #-0x1]
+_020CAD48:
+ ldr r1, [sp, #0x58]
+ ldr r0, [sp, #0x5c]
+ sub r0, r1, r0
+ add sp, sp, #0x64
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+ .balign 4
+_020CAD60: .word 0xCCCCCCCD
+
+ arm_func_start OS_SNPrintf
+OS_SNPrintf: ; 0x020CAD64
+ stmdb sp!, {r0-r3}
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ add r3, sp, #0x10
+ bic r3, r3, #0x3
+ ldr r2, [sp, #0x10]
+ add r3, r3, #0x4
+ bl OS_VSNPrintf
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ add sp, sp, #0x10
+ bx lr
+
+ arm_func_start OS_VSPrintf
+OS_VSPrintf: ; 0x020CAD94
+ ldr ip, _020CADA8 ; =OS_VSNPrintf
+ mov r3, r2
+ mov r2, r1
+ mvn r1, #0x80000000
+ bx r12
+ .balign 4
+_020CADA8: .word OS_VSNPrintf
+
+ arm_func_start OS_SPrintf
+OS_SPrintf: ; 0x020CADAC
+ stmdb sp!, {r0-r3}
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ add r2, sp, #0xc
+ bic r2, r2, #0x3
+ ldr r1, [sp, #0xc]
+ add r2, r2, #0x4
+ bl OS_VSPrintf
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ add sp, sp, #0x10
+ bx lr
+
+ arm_func_start string_put_string
+string_put_string: ; 0x020CADDC
+ stmdb sp!, {r4,lr}
+ cmp r2, #0x0
+ ldmleia sp!, {r4,lr}
+ bxle lr
+ ldr lr, [r0, #0x0]
+ mov r4, #0x0
+ cmp lr, r2
+ movhi lr, r2
+ cmp lr, #0x0
+ bls _020CAE1C
+_020CAE04:
+ ldrsb r12, [r1, r4]
+ ldr r3, [r0, #0x4]
+ strb r12, [r3, r4]
+ add r4, r4, #0x1
+ cmp r4, lr
+ blo _020CAE04
+_020CAE1C:
+ ldr r1, [r0, #0x0]
+ sub r1, r1, lr
+ str r1, [r0, #0x0]
+ ldr r1, [r0, #0x4]
+ add r1, r1, r2
+ str r1, [r0, #0x4]
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start string_fill_char
+string_fill_char:
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r2, #0x0
+ addle sp, sp, #0x4
+ ldmleia sp!, {lr}
+ bxle lr
+ ldr r12, [r0, #0x0]
+ mov lr, #0x0
+ cmp r12, r2
+ movhi r12, r2
+ cmp r12, #0x0
+ bls _020CAE80
+_020CAE6C:
+ ldr r3, [r0, #0x4]
+ strb r1, [r3, lr]
+ add lr, lr, #0x1
+ cmp lr, r12
+ blo _020CAE6C
+_020CAE80:
+ ldr r1, [r0, #0x0]
+ sub r1, r1, r12
+ str r1, [r0, #0x0]
+ ldr r1, [r0, #0x4]
+ add r1, r1, r2
+ str r1, [r0, #0x4]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start string_put_char
+string_put_char:
+ ldr r2, [r0, #0x0]
+ cmp r2, #0x0
+ ldrne r2, [r0, #0x4]
+ strneb r1, [r2, #0x0]
+ ldrne r1, [r0, #0x0]
+ subne r1, r1, #0x1
+ strne r1, [r0, #0x0]
+ ldr r1, [r0, #0x4]
+ add r1, r1, #0x1
+ str r1, [r0, #0x4]
+ bx lr
+
+ arm_func_start FUN_020CAED0
+FUN_020CAED0: ; 0x020CAED0
+ ldr r0, _020CAEDC ; =0x021D3494
+ ldr r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CAEDC: .word 0x021D3494
+
+ arm_func_start OS_SetThreadDestructor
+OS_SetThreadDestructor:
+ str r1, [r0, #0xb4]
+ bx lr
+
+ arm_func_start OS_EnableScheduler
+OS_EnableScheduler: ; 0x020CAEE8
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r1, _020CAF1C ; =0x021D3484
+ mov r4, #0x0
+ ldr r3, [r1, #0x0]
+ cmp r3, #0x0
+ subne r2, r3, #0x1
+ movne r4, r3
+ strne r2, [r1, #0x0]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CAF1C: .word 0x021D3484
+
+ arm_func_start OS_DisableScheduler
+OS_DisableScheduler: ; 0x020CAF20
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r2, _020CAF54 ; =0x021D3484
+ mvn r1, #0x0
+ ldr r3, [r2, #0x0]
+ cmp r3, r1
+ addcc r1, r3, #0x1
+ movcc r4, r3
+ strcc r1, [r2, #0x0]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CAF54: .word 0x021D3484
+
+ arm_func_start OSi_IdleThreadProc
+OSi_IdleThreadProc: ; 0x020CAF58
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ bl OS_EnableInterrupts
+_020CAF64:
+ bl OS_Halt
+ b _020CAF64
+
+ arm_func_start OS_SetSwitchThreadCallback
+OS_SetSwitchThreadCallback: ; 0x020CAF6C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CAF9C ; =0x021D3498
+ ldr r4, [r1, #0xc]
+ str r5, [r1, #0xc]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CAF9C: .word 0x021D3498
+
+ arm_func_start OSi_SleepAlarmCallback
+OSi_SleepAlarmCallback: ; 0x020CAFA0
+ ldr r2, [r0, #0x0]
+ mov r1, #0x0
+ str r1, [r0, #0x0]
+ ldr ip, _020CAFBC ; =OS_WakeupThreadDirect
+ mov r0, r2
+ str r1, [r2, #0xb0]
+ bx r12
+ .balign 4
+_020CAFBC: .word OS_WakeupThreadDirect
+
+ arm_func_start OS_Sleep
+OS_Sleep: ; 0x020CAFC0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x34
+ mov r4, r0
+ add r0, sp, #0x8
+ bl OS_CreateAlarm
+ ldr r0, _020CB060 ; =0x021D3490
+ ldr r0, [r0, #0x0]
+ ldr r0, [r0, #0x0]
+ str r0, [sp, #0x4]
+ bl OS_DisableInterrupts
+ ldr r1, _020CB064 ; =0x000082EA
+ mov r2, #0x0
+ umull r5, r3, r4, r1
+ mla r3, r4, r2, r3
+ mla r3, r2, r1, r3
+ mov r1, r5, lsr #0x6
+ mov r4, r0
+ ldr r5, [sp, #0x4]
+ add r0, sp, #0x8
+ add r2, sp, #0x4
+ str r0, [r5, #0xb0]
+ str r2, [sp, #0x0]
+ mov r2, r3, lsr #0x6
+ orr r1, r1, r3, lsl #0x1a
+ ldr r3, _020CB068 ; =OSi_SleepAlarmCallback
+ bl OS_SetAlarm
+ ldr r0, [sp, #0x4]
+ cmp r0, #0x0
+ beq _020CB04C
+ mov r5, #0x0
+_020CB038:
+ mov r0, r5
+ bl OS_SleepThread
+ ldr r0, [sp, #0x4]
+ cmp r0, #0x0
+ bne _020CB038
+_020CB04C:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x34
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CB060: .word 0x021D3490
+_020CB064: .word 0x000082EA
+_020CB068: .word OSi_SleepAlarmCallback
+
+ arm_func_start OS_GetThreadPriority
+OS_GetThreadPriority: ; 0x020CB06C
+ ldr r0, [r0, #0x70]
+ bx lr
+
+ arm_func_start OS_SetThreadPriority
+OS_SetThreadPriority: ; 0x020CB074
+ stmdb sp!, {r4-r8,lr}
+ ldr r2, _020CB120 ; =0x021D3498
+ mov r6, r0
+ mov r5, r1
+ ldr r8, [r2, #0x8]
+ mov r7, #0x0
+ bl OS_DisableInterrupts
+ mov r4, r0
+ b _020CB0A0
+_020CB098:
+ mov r7, r8
+ ldr r8, [r8, #0x68]
+_020CB0A0:
+ cmp r8, #0x0
+ beq _020CB0B0
+ cmp r8, r6
+ bne _020CB098
+_020CB0B0:
+ cmp r8, #0x0
+ beq _020CB0C4
+ ldr r0, _020CB124 ; =0x021D34A8
+ cmp r8, r0
+ bne _020CB0D8
+_020CB0C4:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020CB0CC:
+ mov r0, #0x0
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CB0D8:
+ ldr r0, [r8, #0x70]
+ cmp r0, r5
+ beq _020CB10C
+ cmp r7, #0x0
+ ldreq r1, [r6, #0x68]
+ ldreq r0, _020CB120 ; =0x021D3498
+ streq r1, [r0, #0x8]
+ ldrne r0, [r6, #0x68]
+ strne r0, [r7, #0x68]
+ mov r0, r6
+ str r5, [r6, #0x70]
+ bl OSi_InsertThreadToList
+ bl OSi_RescheduleThread
+_020CB10C:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020CB120: .word 0x021D3498
+_020CB124: .word 0x021D34A8
+
+ arm_func_start OS_YieldThread
+OS_YieldThread: ; 0x020CB128
+ stmdb sp!, {r4-r8,lr}
+ ldr r0, _020CB1E0 ; =0x021D3498
+ mov r7, #0x0
+ mov r6, r7
+ mov r5, r7
+ ldr r8, [r0, #0x4]
+ bl OS_DisableInterrupts
+ ldr r1, _020CB1E0 ; =0x021D3498
+ mov r4, r0
+ ldr r2, [r1, #0x8]
+ mov r0, r7
+ cmp r2, #0x0
+ beq _020CB188
+ ldr r1, [r8, #0x70]
+_020CB160:
+ cmp r2, r8
+ moveq r7, r0
+ ldr r0, [r2, #0x70]
+ cmp r1, r0
+ moveq r6, r2
+ mov r0, r2
+ ldr r2, [r2, #0x68]
+ addeq r5, r5, #0x1
+ cmp r2, #0x0
+ bne _020CB160
+_020CB188:
+ cmp r5, #0x1
+ ble _020CB198
+ cmp r6, r8
+ bne _020CB1A8
+_020CB198:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CB1A8:
+ cmp r7, #0x0
+ ldreq r1, [r8, #0x68]
+ ldreq r0, _020CB1E0 ; =0x021D3498
+ streq r1, [r0, #0x8]
+ ldrne r0, [r8, #0x68]
+ strne r0, [r7, #0x68]
+ ldr r0, [r6, #0x68]
+ str r0, [r8, #0x68]
+ str r8, [r6, #0x68]
+ bl OSi_RescheduleThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020CB1E0: .word 0x021D3498
+
+ arm_func_start OS_RescheduleThread
+OS_RescheduleThread: ; 0x020CB1E4
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ mov r4, r0
+ bl OSi_RescheduleThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start OS_SelectThread
+OS_SelectThread: ; 0x020CB204
+ ldr r0, _020CB22C ; =0x021D3498
+ ldr r0, [r0, #0x8]
+ b _020CB214
+_020CB210:
+ ldr r0, [r0, #0x68]
+_020CB214:
+ cmp r0, #0x0
+ bxeq lr
+ ldr r1, [r0, #0x64]
+ cmp r1, #0x1
+ bne _020CB210
+ bx lr
+ .balign 4
+_020CB22C: .word 0x021D3498
+
+ arm_func_start OS_WakeupThreadDirect
+OS_WakeupThreadDirect: ; 0x020CB230
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ mov r1, #0x1
+ mov r4, r0
+ str r1, [r5, #0x64]
+ bl OSi_RescheduleThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start OS_WakeupThread
+OS_WakeupThread: ; 0x020CB264
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x0]
+ mov r4, r0
+ cmp r1, #0x0
+ beq _020CB2D0
+ cmp r1, #0x0
+ beq _020CB2BC
+ mov r7, #0x1
+ mov r6, #0x0
+_020CB294:
+ mov r0, r5
+ bl OSi_RemoveLinkFromQueue
+ str r7, [r0, #0x64]
+ str r6, [r0, #0x78]
+ str r6, [r0, #0x80]
+ ldr r1, [r0, #0x80]
+ str r1, [r0, #0x7c]
+ ldr r0, [r5, #0x0]
+ cmp r0, #0x0
+ bne _020CB294
+_020CB2BC:
+ mov r0, #0x0
+ str r0, [r5, #0x4]
+ ldr r0, [r5, #0x4]
+ str r0, [r5, #0x0]
+ bl OSi_RescheduleThread
+_020CB2D0:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start OS_SleepThread
+OS_SleepThread:
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CB334 ; =0x021D3490
+ mov r5, r0
+ ldr r0, [r1, #0x0]
+ cmp r6, #0x0
+ ldr r4, [r0, #0x0]
+ beq _020CB318
+ mov r0, r6
+ mov r1, r4
+ str r6, [r4, #0x78]
+ bl OSi_InsertLinkToQueue
+_020CB318:
+ mov r0, #0x0
+ str r0, [r4, #0x64]
+ bl OSi_RescheduleThread
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CB334: .word 0x021D3490
+
+ arm_func_start OS_IsThreadTerminated
+OS_IsThreadTerminated: ; 0x020CB338
+ ldr r0, [r0, #0x64]
+ cmp r0, #0x2
+ moveq r0, #0x1
+ movne r0, #0x0
+ bx lr
+
+ arm_func_start OS_JoinThread
+OS_JoinThread: ; 0x020CB34C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x64]
+ mov r4, r0
+ cmp r1, #0x2
+ beq _020CB374
+ add r0, r5, #0x9c
+ bl OS_SleepThread
+_020CB374:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start OSi_CancelThreadAlarmForSleep
+OSi_CancelThreadAlarmForSleep: ; 0x020CB388
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, [r0, #0xb0]
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {lr}
+ bxeq lr
+ bl OS_CancelAlarm
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start OS_DestroyThread
+OS_DestroyThread: ; 0x020CB3B4
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CB438 ; =0x021D3498
+ mov r4, r0
+ ldr r0, [r1, #0x4]
+ cmp r0, r5
+ bne _020CB3DC
+ bl OSi_ExitThread_Destroy
+_020CB3DC:
+ bl OS_DisableScheduler
+ mov r0, r5
+ bl OSi_UnlockAllMutex
+ mov r0, r5
+ bl OSi_CancelThreadAlarmForSleep
+ ldr r0, [r5, #0x78]
+ cmp r0, #0x0
+ beq _020CB404
+ mov r1, r5
+ bl OSi_RemoveSpecifiedLinkFromQueue
+_020CB404:
+ mov r0, r5
+ bl OSi_RemoveThreadFromList
+ mov r1, #0x2
+ add r0, r5, #0x9c
+ str r1, [r5, #0x64]
+ bl OS_WakeupThread
+ bl OS_EnableScheduler
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ bl OS_RescheduleThread
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CB438: .word 0x021D3498
+
+ arm_func_start OSi_ExitThread_Destroy
+OSi_ExitThread_Destroy: ; 0x020CB43C
+ stmdb sp!, {r4,lr}
+ ldr r0, _020CB498 ; =0x021D3490
+ ldr r0, [r0, #0x0]
+ ldr r4, [r0, #0x0]
+ bl OS_DisableScheduler
+ mov r0, r4
+ bl OSi_UnlockAllMutex
+ ldr r0, [r4, #0x78]
+ cmp r0, #0x0
+ beq _020CB46C
+ mov r1, r4
+ bl OSi_RemoveSpecifiedLinkFromQueue
+_020CB46C:
+ mov r0, r4
+ bl OSi_RemoveThreadFromList
+ mov r1, #0x2
+ add r0, r4, #0x9c
+ str r1, [r4, #0x64]
+ bl OS_WakeupThread
+ bl OS_EnableScheduler
+ bl OS_RescheduleThread
+ bl OS_Terminate
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CB498: .word 0x021D3490
+
+ arm_func_start OSi_ExitThread_Destroy2
+OSi_ExitThread_Destroy2: ; 0x020CB49C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CB4DC ; =0x021D3490
+ ldr r1, [r1, #0x0]
+ ldr r3, [r1, #0x0]
+ ldr r2, [r3, #0xb4]
+ cmp r2, #0x0
+ beq _020CB4CC
+ mov r1, #0x0
+ str r1, [r3, #0xb4]
+ blx r2
+ bl OS_DisableInterrupts
+_020CB4CC:
+ bl OSi_ExitThread_Destroy
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CB4DC: .word 0x021D3490
+
+ arm_func_start OSi_ExitThread_ArgSpecified
+OSi_ExitThread_ArgSpecified: ; 0x020CB4E0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r2, _020CB548 ; =0x021D3480
+ mov r5, r0
+ ldr r2, [r2, #0x0]
+ mov r4, r1
+ cmp r2, #0x0
+ beq _020CB534
+ ldr r1, _020CB54C ; =OSi_ExitThread_Destroy2
+ bl OS_InitContext
+ str r4, [r5, #0x4]
+ ldr r1, [r5, #0x0]
+ mov r0, r5
+ orr r1, r1, #0x80
+ str r1, [r5, #0x0]
+ mov r1, #0x1
+ str r1, [r5, #0x64]
+ bl OS_LoadContext
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CB534:
+ mov r0, r4
+ bl OSi_ExitThread_Destroy2
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CB548: .word 0x021D3480
+_020CB54C: .word OSi_ExitThread_Destroy2
+
+ arm_func_start OS_ExitThread
+OS_ExitThread: ; 0x020CB550
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ bl OS_DisableInterrupts
+ ldr r0, _020CB578 ; =0x021D3498
+ mov r1, #0x0
+ ldr r0, [r0, #0x4]
+ bl OSi_ExitThread_ArgSpecified
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CB578: .word 0x021D3498
+
+ arm_func_start OS_CreateThread
+OS_CreateThread: ; 0x020CB57C
+ stmdb sp!, {r4-r8,lr}
+ mov r8, r0
+ mov r5, r1
+ mov r7, r2
+ mov r6, r3
+ bl OS_DisableInterrupts
+ mov r4, r0
+ bl OSi_GetUnusedThreadId
+ ldr r2, [sp, #0x1c]
+ mov r1, #0x0
+ str r2, [r8, #0x70]
+ str r0, [r8, #0x6c]
+ str r1, [r8, #0x64]
+ str r1, [r8, #0x74]
+ mov r0, r8
+ bl OSi_InsertThreadToList
+ mov r1, r5
+ str r6, [r8, #0x94]
+ ldr r0, [sp, #0x18]
+ mov r12, #0x0
+ sub r5, r6, r0
+ sub r2, r6, #0x4
+ str r5, [r8, #0x90]
+ str r12, [r8, #0x98]
+ ldr r3, _020CB678 ; =0xFDDB597D
+ ldr r0, [r8, #0x94]
+ ldr r6, _020CB67C ; =0x7BF9DD5B
+ str r3, [r0, #-0x4]
+ ldr r3, [r8, #0x90]
+ mov r0, r8
+ str r6, [r3, #0x0]
+ str r12, [r8, #0xa0]
+ ldr r3, [r8, #0xa0]
+ str r3, [r8, #0x9c]
+ bl OS_InitContext
+ str r7, [r8, #0x4]
+ add r1, r5, #0x4
+ ldr r2, _020CB680 ; =OS_ExitThread
+ mov r0, #0x0
+ str r2, [r8, #0x3c]
+ ldr r2, [sp, #0x18]
+ sub r2, r2, #0x8
+ bl MIi_CpuClear32
+ mov r1, #0x0
+ str r1, [r8, #0x84]
+ str r1, [r8, #0x88]
+ str r1, [r8, #0x8c]
+ mov r0, r8
+ bl OS_SetThreadDestructor
+_020CB640:
+ mov r0, #0x0
+ str r0, [r8, #0x78]
+ str r0, [r8, #0x80]
+ ldr r2, [r8, #0x80]
+ add r1, r8, #0xA4
+ str r2, [r8, #0x7C]
+ mov r2, #0xC
+ bl MIi_CpuClear32
+ mov r0, r4
+ mov r1, #0x0
+ str r1, [r8, #0xB0]
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8, lr}
+ bx lr
+_020CB678: .word 0xFDDB597D
+_020CB67C: .word 0x7BF9DD5B
+_020CB680: .word OS_ExitThread
+
+ arm_func_start OS_InitThread
+OS_InitThread: ; 0x020CB684
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x8
+ ldr r3, _020CB7A4 ; =0x021D3494
+ ldr r0, [r3, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x8
+ ldmneia sp!, {r4-r6,lr}
+ bxne lr
+ ldr ip, _020CB7A8 ; =0x00000000
+ ldr r1, _020CB7AC ; =0x021D3568
+ mov lr, #0x0
+ ldr r0, _020CB7B0 ; =0x021D3498
+ mov r6, #0x1
+ mov r4, #0x10
+ str r1, [r0, #0x8]
+ str r1, [r0, #0x4]
+ cmp r12, #0x0
+ ldrle r0, _020CB7B4 ; =0x027E0080
+ str r4, [r1, #0x70]
+ suble r4, r0, r12
+ str lr, [r1, #0x6c]
+ str r6, [r1, #0x64]
+ str lr, [r1, #0x68]
+ str lr, [r1, #0x74]
+ ldrgt r1, _020CB7B8 ; =0x027E0000
+ ldrgt r0, _020CB7BC ; =0x00000400
+ addgt r1, r1, #0x3f80
+ subgt r0, r1, r0
+ subgt r4, r0, r12
+ ldr r1, _020CB7B8 ; =0x027E0000
+ ldr r5, _020CB7C0 ; =0x021D349C
+ ldr r2, _020CB7C4 ; =0x021D3490
+ ldr r0, _020CB7BC ; =0x00000400
+ str r5, [r2, #0x0]
+ ldr r2, _020CB7AC ; =0x021D3568
+ add r1, r1, #0x3f80
+ str r6, [r3, #0x0]
+ sub r3, r1, r0
+ mov r0, #0x0
+ ldr r1, _020CB7C8 ; =0xFDDB597D
+ str r3, [r2, #0x94]
+ str r4, [r2, #0x90]
+ str r0, [r2, #0x98]
+ str r1, [r3, #-0x4]
+ ldr r3, [r2, #0x90]
+ ldr ip, _020CB7CC ; =0x7BF9DD5B
+ ldr r1, _020CB7B0 ; =0x021D3498
+ str r12, [r3, #0x0]
+ ldr r3, _020CB7D0 ; =0x027FFFA0
+ str r0, [r2, #0xa0]
+ str r0, [r2, #0x9c]
+ strh r0, [r1, #0x0]
+ strh r0, [r1, #0x2]
+ str r1, [r3, #0x0]
+ bl OS_SetSwitchThreadCallback
+ mov r2, #0xc8
+ str r2, [sp, #0x0]
+ mov r12, #0x1f
+ ldr r0, _020CB7D4 ; =0x021D34A8
+ ldr r1, _020CB7D8 ; =OSi_IdleThreadProc
+ ldr r3, _020CB7DC ; =0x021D36F0
+ mov r2, #0x0
+ str r12, [sp, #0x4]
+ bl OS_CreateThread
+ ldr r0, _020CB7D4 ; =0x021D34A8
+ mov r2, #0x20
+ mov r1, #0x1
+ str r2, [r0, #0x70]
+ str r1, [r0, #0x64]
+ add sp, sp, #0x8
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CB7A4: .word 0x021D3494
+_020CB7A8: .word 0x00000000
+_020CB7AC: .word 0x021D3568
+_020CB7B0: .word 0x021D3498
+_020CB7B4: .word 0x027E0080
+_020CB7B8: .word 0x027E0000
+_020CB7BC: .word 0x00000400
+_020CB7C0: .word 0x021D349C
+_020CB7C4: .word 0x021D3490
+_020CB7C8: .word 0xFDDB597D
+_020CB7CC: .word 0x7BF9DD5B
+_020CB7D0: .word 0x027FFFA0
+_020CB7D4: .word 0x021D34A8
+_020CB7D8: .word OSi_IdleThreadProc
+_020CB7DC: .word 0x021D36F0
+
+ arm_func_start OSi_RescheduleThread
+OSi_RescheduleThread: ; 0x020CB7E0
+ stmdb sp!, {r4-r6,lr}
+ ldr r0, _020CB8BC ; =0x021D3484
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ ldmneia sp!, {r4-r6,lr}
+ bxne lr
+ ldr r4, _020CB8C0 ; =0x021D3498
+ ldrh r0, [r4, #0x2]
+ cmp r0, #0x0
+ bne _020CB814
+ bl OS_GetProcMode
+ cmp r0, #0x12
+ bne _020CB824
+_020CB814:
+ mov r0, #0x1
+ strh r0, [r4, #0x0]
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020CB824:
+ ldr r0, _020CB8C4 ; =0x021D3490
+ ldr r0, [r0, #0x0]
+ ldr r6, [r0, #0x0]
+ bl OS_SelectThread
+ mov r5, r0
+ cmp r6, r5
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ cmp r5, #0x0
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ ldr r0, [r6, #0x64]
+ cmp r0, #0x2
+ beq _020CB870
+ mov r0, r6
+ bl OS_SaveContext
+_020CB864:
+ cmp r0, #0x0
+ ldmneia sp!, {r4-r6,lr}
+ bxne lr
+_020CB870:
+ ldr r0, _020CB8C8 ; =0x021D348C
+ ldr r2, [r0, #0x0]
+ cmp r2, #0x0
+ beq _020CB88C
+ mov r0, r6
+ mov r1, r5
+ blx r2
+_020CB88C:
+ ldr r2, [r4, #0xc]
+ cmp r2, #0x0
+ beq _020CB8A4
+ mov r0, r6
+ mov r1, r5
+ blx r2
+_020CB8A4:
+ ldr r1, _020CB8C0 ; =0x021D3498
+ mov r0, r5
+ str r5, [r1, #0x4]
+ bl OS_LoadContext
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CB8BC: .word 0x021D3484
+_020CB8C0: .word 0x021D3498
+_020CB8C4: .word 0x021D3490
+_020CB8C8: .word 0x021D348C
+
+ arm_func_start OSi_RemoveThreadFromList
+OSi_RemoveThreadFromList: ; 0x020CB8CC
+ ldr r1, _020CB910 ; =0x021D3498
+ mov r2, #0x0
+ ldr r1, [r1, #0x8]
+ b _020CB8E4
+_020CB8DC:
+ mov r2, r1
+ ldr r1, [r1, #0x68]
+_020CB8E4:
+ cmp r1, #0x0
+ beq _020CB8F4
+ cmp r1, r0
+ bne _020CB8DC
+_020CB8F4:
+ cmp r2, #0x0
+ ldreq r1, [r0, #0x68]
+ ldreq r0, _020CB910 ; =0x021D3498
+ streq r1, [r0, #0x8]
+ ldrne r0, [r0, #0x68]
+ strne r0, [r2, #0x68]
+ bx lr
+ .balign 4
+_020CB910: .word 0x021D3498
+
+ arm_func_start OSi_InsertThreadToList
+OSi_InsertThreadToList: ; 0x020CB914
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CB978 ; =0x021D3498
+ mov r12, #0x0
+ ldr r3, [r1, #0x8]
+ mov lr, r3
+ b _020CB938
+_020CB930:
+ mov r12, lr
+ ldr lr, [lr, #0x68]
+_020CB938:
+ cmp lr, #0x0
+ beq _020CB950
+ ldr r2, [lr, #0x70]
+ ldr r1, [r0, #0x70]
+ cmp r2, r1
+ blo _020CB930
+_020CB950:
+ cmp r12, #0x0
+ ldreq r1, _020CB978 ; =0x021D3498
+ streq r3, [r0, #0x68]
+ streq r0, [r1, #0x8]
+ ldrne r1, [r12, #0x68]
+ strne r1, [r0, #0x68]
+ strne r0, [r12, #0x68]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CB978: .word 0x021D3498
+
+ arm_func_start OSi_RemoveMutexLinkFromQueue
+OSi_RemoveMutexLinkFromQueue: ; 0x020CB97C
+ ldr r2, [r0, #0x0]
+ cmp r2, #0x0
+ beq _020CB9A4
+ ldr r1, [r2, #0x10]
+ str r1, [r0, #0x0]
+ cmp r1, #0x0
+ movne r0, #0x0
+ strne r0, [r1, #0x14]
+ moveq r1, #0x0
+ streq r1, [r0, #0x4]
+_020CB9A4:
+ mov r0, r2
+ bx lr
+
+ arm_func_start OSi_RemoveSpecifiedLinkFromQueue
+OSi_RemoveSpecifiedLinkFromQueue: ; 0x020CB9AC
+ ldr r2, [r0, #0x0]
+ mov r12, r2
+ cmp r2, #0x0
+ beq _020CB9F8
+_020CB9BC:
+ cmp r12, r1
+ ldr r3, [r12, #0x80]
+ bne _020CB9EC
+ cmp r2, r12
+ ldr r2, [r12, #0x7c]
+ streq r3, [r0, #0x0]
+ strne r3, [r2, #0x80]
+ ldr r1, [r0, #0x4]
+ cmp r1, r12
+ streq r2, [r0, #0x4]
+ strne r2, [r3, #0x7c]
+ b _020CB9F8
+_020CB9EC:
+ mov r12, r3
+ cmp r3, #0x0
+ bne _020CB9BC
+_020CB9F8:
+ mov r0, r12
+ bx lr
+
+ arm_func_start OSi_RemoveLinkFromQueue
+OSi_RemoveLinkFromQueue: ; 0x020CBA00
+ ldr r2, [r0, #0x0]
+ cmp r2, #0x0
+ beq _020CBA2C
+ ldr r1, [r2, #0x80]
+ str r1, [r0, #0x0]
+ cmp r1, #0x0
+ movne r0, #0x0
+ strne r0, [r1, #0x7c]
+ moveq r1, #0x0
+ streq r1, [r0, #0x4]
+ streq r1, [r2, #0x78]
+_020CBA2C:
+ mov r0, r2
+ bx lr
+
+ arm_func_start OSi_InsertLinkToQueue
+OSi_InsertLinkToQueue:
+ ldr r12, [r0, #0x0]
+ b _020CBA48
+_020CBA3C:
+ cmp r12, r1
+ bxeq lr
+ ldr r12, [r12, #0x80]
+_020CBA48:
+ cmp r12, #0x0
+ beq _020CBA60
+ ldr r3, [r12, #0x70]
+ ldr r2, [r1, #0x70]
+ cmp r3, r2
+ bls _020CBA3C
+_020CBA60:
+ cmp r12, #0x0
+ bne _020CBA8C
+ ldr r2, [r0, #0x4]
+ cmp r2, #0x0
+ streq r1, [r0, #0x0]
+ strne r1, [r2, #0x80]
+ str r2, [r1, #0x7c]
+ mov r2, #0x0
+ str r2, [r1, #0x80]
+ str r1, [r0, #0x4]
+ bx lr
+_020CBA8C:
+ ldr r2, [r12, #0x7c]
+ cmp r2, #0x0
+ streq r1, [r0, #0x0]
+ strne r1, [r2, #0x80]
+ str r2, [r1, #0x7c]
+ str r12, [r1, #0x80]
+ str r1, [r12, #0x7c]
+ bx lr
+
+ arm_func_start OSi_GetUnusedThreadId
+OSi_GetUnusedThreadId: ; 0x020CBAAC
+ ldr r1, _020CBAC0 ; =0x021D3488
+ ldr r0, [r1, #0x0]
+ add r0, r0, #0x1
+ str r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CBAC0: .word 0x021D3488
+
+ arm_func_start OS_InitContext
+OS_InitContext: ; 0x020CBAC4
+ add r1, r1, #0x4
+ str r1, [r0, #0x40]
+ str r2, [r0, #0x44]
+ sub r2, r2, #0x40
+ tst r2, #0x4
+ subne r2, r2, #0x4
+ str r2, [r0, #0x38]
+ ands r1, r1, #0x1
+ movne r1, #0x3f
+ moveq r1, #0x1f
+ str r1, [r0, #0x0]
+ mov r1, #0x0
+ str r1, [r0, #0x4]
+ str r1, [r0, #0x8]
+ str r1, [r0, #0xc]
+ str r1, [r0, #0x10]
+ str r1, [r0, #0x14]
+ str r1, [r0, #0x18]
+ str r1, [r0, #0x1c]
+ str r1, [r0, #0x20]
+ str r1, [r0, #0x24]
+ str r1, [r0, #0x28]
+ str r1, [r0, #0x2c]
+ str r1, [r0, #0x30]
+ str r1, [r0, #0x34]
+ str r1, [r0, #0x3c]
+ bx lr
+
+ arm_func_start OS_SaveContext
+OS_SaveContext:
+ stmdb sp!, {r0,lr}
+ add r0, r0, #0x48
+ ldr r1, _020CBB78 ; =CP_SaveContext
+ blx r1
+ ldmia sp!, {r0,lr}
+ add r1, r0, #0x0
+ mrs r2, cpsr
+ str r2, [r1], #0x4
+ mov r0, #0xd3
+ msr cpsr_c, r0
+ str sp, [r1, #0x40]
+ msr cpsr_c, r2
+ mov r0, #0x1
+ stmia r1, {r0-lr}
+ add r0, pc, #0x8 ; =_020CBB78
+ str r0, [r1, #0x3c]
+ mov r0, #0x0
+ bx lr
+ .balign 4
+_020CBB78: .word CP_SaveContext
+
+ arm_func_start OS_LoadContext
+OS_LoadContext: ; 0x020CBB7C
+ stmdb sp!, {r0,lr}
+ add r0, r0, #0x48
+ ldr r1, _020CBBBC ; =CP_RestoreContext
+ blx r1
+ ldmia sp!, {r0,lr}
+ mrs r1, cpsr
+ bic r1, r1, #0x1f
+ orr r1, r1, #0xd3
+ msr cpsr_c, r1
+ ldr r1, [r0], #0x4
+ msr spsr_fsxc, r1
+ ldr sp, [r0, #0x40]
+ ldr lr, [r0, #0x3c]
+ ldmia r0, {r0-lr}^
+ mov r0, r0
+ subs pc, lr, #0x4
+ .balign 4
+_020CBBBC: .word CP_RestoreContext
+
+ arm_func_start OS_GetConsoleType
+OS_GetConsoleType: ; 0x020CBBC0
+ ldr r0, _020CBBD0 ; =0x82000001
+ ldr r1, _020CBBD4 ; =0x02106828
+ str r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CBBD0: .word 0x82000001
+_020CBBD4: .word 0x02106828
+
+ arm_func_start OS_IsRunOnEmulator
+OS_IsRunOnEmulator:
+ mov r0, #0x0
+ bx lr
+
+ arm_func_start OS_ReadMessage
+OS_ReadMessage: ; 0x020CBBE0
+ stmdb sp!, {r4-r8,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r7, r2
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x1c]
+ mov r4, r0
+ cmp r1, #0x0
+ bne _020CBC3C
+ and r8, r7, #0x1
+ add r7, r6, #0x8
+_020CBC0C:
+ cmp r8, #0x0
+ bne _020CBC28
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020CBC1C:
+ mov r0, #0x0
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CBC28:
+ mov r0, r7
+ bl OS_SleepThread
+ ldr r0, [r6, #0x1c]
+ cmp r0, #0x0
+ beq _020CBC0C
+_020CBC3C:
+ cmp r5, #0x0
+ ldrne r1, [r6, #0x10]
+ ldrne r0, [r6, #0x18]
+ ldrne r0, [r1, r0, lsl #0x2]
+ strne r0, [r5, #0x0]
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start OS_JamMessage
+OS_JamMessage: ; 0x020CBC64
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ mov r5, r1
+ mov r7, r2
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x14]
+ ldr r2, [r6, #0x1c]
+ mov r4, r0
+ cmp r1, r2
+ bgt _020CBCCC
+ and r7, r7, #0x1
+_020CBC94:
+ cmp r7, #0x0
+ bne _020CBCB4
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CBCB4:
+ mov r0, r6
+ bl OS_SleepThread
+ ldr r1, [r6, #0x14]
+ ldr r0, [r6, #0x1c]
+ cmp r1, r0
+ ble _020CBC94
+_020CBCCC:
+ ldr r0, [r6, #0x18]
+ add r0, r0, r1
+ sub r0, r0, #0x1
+ bl _s32_div_f
+ str r1, [r6, #0x18]
+ ldr r2, [r6, #0x10]
+ ldr r1, [r6, #0x18]
+ add r0, r6, #0x8
+ str r5, [r2, r1, lsl #0x2]
+ ldr r1, [r6, #0x1c]
+ add r1, r1, #0x1
+ str r1, [r6, #0x1c]
+ bl OS_WakeupThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start OS_ReceiveMessage
+OS_ReceiveMessage: ; 0x020CBD18
+ stmdb sp!, {r4-r8,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r7, r2
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x1c]
+ mov r4, r0
+ cmp r1, #0x0
+ bne _020CBD74
+ and r8, r7, #0x1
+ add r7, r6, #0x8
+_020CBD44:
+ cmp r8, #0x0
+ bne _020CBD60
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020CBD54:
+ mov r0, #0x0
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CBD60:
+ mov r0, r7
+ bl OS_SleepThread
+ ldr r0, [r6, #0x1c]
+ cmp r0, #0x0
+ beq _020CBD44
+_020CBD74:
+ cmp r5, #0x0
+ ldrne r1, [r6, #0x10]
+ ldrne r0, [r6, #0x18]
+ ldrne r0, [r1, r0, lsl #0x2]
+ strne r0, [r5, #0x0]
+ ldr r0, [r6, #0x18]
+ ldr r1, [r6, #0x14]
+ add r0, r0, #0x1
+ bl _s32_div_f
+ str r1, [r6, #0x18]
+ ldr r1, [r6, #0x1c]
+ mov r0, r6
+ sub r1, r1, #0x1
+ str r1, [r6, #0x1c]
+ bl OS_WakeupThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start OS_SendMessage
+OS_SendMessage: ; 0x020CBDC4
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ mov r5, r1
+ mov r7, r2
+ bl OS_DisableInterrupts
+ ldr r2, [r6, #0x1c]
+ ldr r1, [r6, #0x14]
+ mov r4, r0
+ cmp r1, r2
+ bgt _020CBE2C
+ and r7, r7, #0x1
+_020CBDF4:
+ cmp r7, #0x0
+ bne _020CBE14
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CBE14:
+ mov r0, r6
+ bl OS_SleepThread
+ ldr r2, [r6, #0x1c]
+ ldr r1, [r6, #0x14]
+ cmp r1, r2
+ ble _020CBDF4
+_020CBE2C:
+ ldr r0, [r6, #0x18]
+ add r0, r0, r2
+ bl _s32_div_f
+ ldr r2, [r6, #0x10]
+ add r0, r6, #0x8
+ str r5, [r2, r1, lsl #0x2]
+ ldr r1, [r6, #0x1c]
+ add r1, r1, #0x1
+ str r1, [r6, #0x1c]
+ bl OS_WakeupThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start OS_InitMessageQueue
+OS_InitMessageQueue: ; 0x020CBE6C
+ mov r12, #0x0
+ str r12, [r0, #0x4]
+ ldr r3, [r0, #0x4]
+ str r3, [r0, #0x0]
+ str r12, [r0, #0xc]
+ ldr r3, [r0, #0xc]
+ str r3, [r0, #0x8]
+ str r1, [r0, #0x10]
+ str r2, [r0, #0x14]
+ str r12, [r0, #0x18]
+ str r12, [r0, #0x1c]
+ bx lr
+
+ arm_func_start OSi_DequeueItem
+OSi_DequeueItem: ; 0x020CBE9C
+ ldr r2, [r1, #0x10]
+ ldr r1, [r1, #0x14]
+ cmp r2, #0x0
+ streq r1, [r0, #0x8c]
+ strne r1, [r2, #0x14]
+ cmp r1, #0x0
+ streq r2, [r0, #0x88]
+ strne r2, [r1, #0x10]
+ bx lr
+
+ arm_func_start OSi_EnqueueTail
+OSi_EnqueueTail: ; 0x020CBEC0
+ ldr r2, [r0, #0x8c]
+ cmp r2, #0x0
+ streq r1, [r0, #0x88]
+ strne r1, [r2, #0x10]
+ str r2, [r1, #0x14]
+ mov r2, #0x0
+ str r2, [r1, #0x10]
+ str r1, [r0, #0x8c]
+ bx lr
+
+ arm_func_start OS_TryLockMutex
+OS_TryLockMutex: ; 0x020CBEE4
+ stmdb sp!, {r4-r6,lr}
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r2, [r5, #0x8]
+ ldr r1, _020CBF54 ; =0x021D3498
+ mov r4, r0
+ cmp r2, #0x0
+ ldr r0, [r1, #0x4]
+ bne _020CBF28
+ str r0, [r5, #0x8]
+ ldr r2, [r5, #0xc]
+ mov r1, r5
+ add r2, r2, #0x1
+ str r2, [r5, #0xc]
+ bl OSi_EnqueueTail
+ mov r6, #0x1
+ b _020CBF40
+_020CBF28:
+ cmp r2, r0
+ ldreq r0, [r5, #0xc]
+ moveq r6, #0x1
+ addeq r0, r0, #0x1
+ streq r0, [r5, #0xc]
+ movne r6, #0x0
+_020CBF40:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, r6
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CBF54: .word 0x021D3498
+
+ arm_func_start OSi_UnlockAllMutex
+OSi_UnlockAllMutex: ; 0x020CBF58
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ ldr r0, [r6, #0x88]
+ cmp r0, #0x0
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ add r5, r6, #0x88
+ mov r4, #0x0
+_020CBF78:
+ mov r0, r5
+ bl OSi_RemoveMutexLinkFromQueue
+ str r4, [r0, #0xc]
+ str r4, [r0, #0x8]
+ bl OS_WakeupThread
+ ldr r0, [r6, #0x88]
+ cmp r0, #0x0
+ bne _020CBF78
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start OS_UnlockMutex
+OS_UnlockMutex: ; 0x020CBFA0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CC00C ; =0x021D3498
+ mov r4, r0
+ ldr r0, [r1, #0x4]
+ ldr r1, [r5, #0x8]
+ cmp r1, r0
+ bne _020CBFF8
+ ldr r1, [r5, #0xc]
+ sub r1, r1, #0x1
+ str r1, [r5, #0xc]
+ ldr r1, [r5, #0xc]
+ cmp r1, #0x0
+ bne _020CBFF8
+ mov r1, r5
+ bl OSi_DequeueItem
+ mov r1, #0x0
+ mov r0, r5
+ str r1, [r5, #0x8]
+ bl OS_WakeupThread
+_020CBFF8:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CC00C: .word 0x021D3498
+
+ arm_func_start OS_LockMutex
+OS_LockMutex: ; 0x020CC010
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CC098 ; =0x021D3498
+ mov r4, r0
+ ldr r7, [r1, #0x4]
+ mov r6, #0x0
+_020CC030:
+ ldr r0, [r5, #0x8]
+ cmp r0, #0x0
+ bne _020CC05C
+ str r7, [r5, #0x8]
+ ldr r1, [r5, #0xc]
+ mov r0, r7
+ add r2, r1, #0x1
+ mov r1, r5
+ str r2, [r5, #0xc]
+ bl OSi_EnqueueTail
+ b _020CC084
+_020CC05C:
+ cmp r0, r7
+ ldreq r0, [r5, #0xc]
+ addeq r0, r0, #0x1
+ streq r0, [r5, #0xc]
+ beq _020CC084
+ mov r0, r5
+ str r5, [r7, #0x84]
+ bl OS_SleepThread
+ str r6, [r7, #0x84]
+ b _020CC030
+_020CC084:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020CC098: .word 0x021D3498
+
+ arm_func_start OS_InitMutex
+OS_InitMutex: ; 0x020CC09C
+ mov r2, #0x0
+ str r2, [r0, #0x4]
+ ldr r1, [r0, #0x4]
+ str r1, [r0, #0x0]
+ str r2, [r0, #0x8]
+ str r2, [r0, #0xc]
+ bx lr
+
+ arm_func_start DC_InvalidateAll
+DC_InvalidateAll: ; 0x020CC0B8
+ mov r0, #0x0
+ mcr p15, 0x0, r0, c7, c6, 0x0
+ bx lr
+
+ arm_func_start DC_StoreAll
+DC_StoreAll: ; 0x020CC0C4
+ mov r1, #0x0
+_020CC0C8:
+ mov r0, #0x0
+_020CC0CC:
+ orr r2, r1, r0
+ mcr p15, 0x0, r2, c7, c10, 0x2
+ add r0, r0, #0x20
+ cmp r0, #0x400
+ blt _020CC0CC
+ add r1, r1, #0x40000000
+ cmp r1, #0x0
+ bne _020CC0C8
+ bx lr
+
+ arm_func_start DC_FlushAll
+DC_FlushAll: ; 0x020CC0F0
+ mov r12, #0x0
+ mov r1, #0x0
+_020CC0F8:
+ mov r0, #0x0
+_020CC0FC:
+ orr r2, r1, r0
+ mcr p15, 0x0, r12, c7, c10, 0x4
+ mcr p15, 0x0, r2, c7, c14, 0x2
+ add r0, r0, #0x20
+ cmp r0, #0x400
+ blt _020CC0FC
+ add r1, r1, #0x40000000
+ cmp r1, #0x0
+ bne _020CC0F8
+ bx lr
+
+ arm_func_start DC_InvalidateRange
+DC_InvalidateRange: ; 0x020CC124
+ add r1, r1, r0
+ bic r0, r0, #0x1f
+_020CC12C:
+ mcr p15, 0x0, r0, c7, c6, 0x1
+ add r0, r0, #0x20
+ cmp r0, r1
+ blt _020CC12C
+ bx lr
+
+ arm_func_start DC_StoreRange
+DC_StoreRange: ; 0x020CC140
+ add r1, r1, r0
+ bic r0, r0, #0x1f
+_020CC148:
+ mcr p15, 0x0, r0, c7, c10, 0x1
+ add r0, r0, #0x20
+ cmp r0, r1
+ blt _020CC148
+ bx lr
+
+ arm_func_start DC_FlushRange
+DC_FlushRange: ; 0x020CC15C
+ mov r12, #0x0
+ add r1, r1, r0
+ bic r0, r0, #0x1f
+_020CC168:
+ mcr p15, 0x0, r12, c7, c10, 0x4
+ mcr p15, 0x0, r0, c7, c14, 0x1
+ add r0, r0, #0x20
+ cmp r0, r1
+ blt _020CC168
+ bx lr
+
+ arm_func_start DC_WaitWriteBufferEmpty
+DC_WaitWriteBufferEmpty: ; 0x020CC180
+ mov r0, #0x0
+ mcr p15, 0x0, r0, c7, c10, 0x4
+ bx lr
+
+ arm_func_start IC_InvalidateAll
+IC_InvalidateAll: ; 0x020CC18C
+ mov r0, #0x0
+ mcr p15, 0x0, r0, c7, c5, 0x0
+ bx lr
+
+ arm_func_start IC_InvalidateRange
+IC_InvalidateRange:
+ add r1, r1, r0
+ bic r0, r0, #0x1f
+_020CC1A0:
+ mcr p15, 0x0, r0, c7, c5, 0x1
+ add r0, r0, #0x20
+ cmp r0, r1
+ blt _020CC1A0
+ bx lr
+
+ arm_func_start OS_Init
+OS_Init: ; 0x020CC1B4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ bl OS_InitArena
+ bl PXI_Init
+ bl OS_InitLock
+ bl OS_InitArenaEx
+ bl OS_InitIrqTable
+ bl OS_SetIrqStackChecker
+ bl OS_InitException
+ bl MI_Init
+ bl OS_InitVAlarm
+ bl OSi_InitVramExclusive
+ bl OS_InitThread
+ bl OS_InitReset
+ bl CTRDG_Init
+ bl CARD_Init
+ bl PM_Init
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start OS_AllocFromArenaHi
+OS_AllocFromArenaHi: ; 0x020CC204
+ stmdb sp!, {r4-r6,lr}
+ mov r4, r0
+ mov r6, r1
+ mov r5, r2
+ bl OS_GetArenaHi
+_020CC218:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ sub r1, r5, #0x1
+ mvn r2, r1
+ and r0, r0, r2
+ sub r1, r0, r6
+ mov r0, r4
+ and r5, r1, r2
+ bl OS_GetArenaLo
+ cmp r5, r0
+ movcc r0, #0x0
+ ldmccia sp!, {r4-r6, lr}
+ bxcc lr
+ mov r0, r4
+ mov r1, r5
+ bl OS_SetArenaHi
+ mov r0, r5
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start OS_AllocFromArenaLo
+OS_AllocFromArenaLo: ; 0x020CC26C
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ mov r6, r1
+ mov r5, r2
+ bl OS_GetArenaLo
+_020CC284:
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r7, lr}
+ bxeq lr
+ add r0, r0, r5
+ sub r1, r5, #0x1
+ mvn r2, r1
+ sub r0, r0, #0x1
+ and r4, r2, r0
+ add r0, r4, r6
+ add r0, r0, r5
+ sub r1, r0, #0x1
+ mov r0, r7
+ and r5, r2, r1
+ bl OS_GetArenaHi
+ cmp r5, r0
+ addhi sp, sp, #0x4
+ movhi r0, #0x0
+ ldmhiia sp!, {r4-r7, lr}
+ bxhi lr
+ mov r0, r7
+ mov r1, r5
+ bl OS_SetArenaLo
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7, lr}
+ bx lr
+
+ arm_func_start OS_SetArenaLo
+OS_SetArenaLo: ; 0x020CC2F4
+ mov r0, r0, lsl #0x2
+ add r0, r0, #0x2700000
+ add r0, r0, #0xff000
+ str r1, [r0, #0xda0]
+ bx lr
+
+ arm_func_start OS_SetArenaHi
+OS_SetArenaHi:
+ mov r0, r0, lsl #0x2
+ add r0, r0, #0x2700000
+ add r0, r0, #0xff000
+ str r1, [r0, #0xdc4]
+ bx lr
+
+ arm_func_start OS_GetInitArenaLo
+OS_GetInitArenaLo: ; 0x020CC31C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r0, #0x6
+ addls pc, pc, r0, lsl #0x2
+ b _020CC3DC
+_020CC330:
+ b _020CC34C
+ b _020CC3DC
+ b _020CC35C
+ b _020CC39C
+ b _020CC3AC
+ b _020CC3BC
+ b _020CC3CC
+_020CC34C:
+ add sp, sp, #0x4
+ ldr r0, _020CC3EC ; =0x0225FFA0
+ ldmfd sp!, {lr}
+ bx lr
+_020CC35C:
+ ldr r0, _020CC3F0 ; =0x021D36F4
+ ldr r0, [r0]
+ cmp r0, #0x0
+ beq _020CC37C
+ bl OS_GetConsoleType
+ and r0, r0, #0x3
+ cmp r0, #0x1
+ bne _020CC38C
+_020CC37C:
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmfd sp!, {lr}
+ bx lr
+_020CC38C:
+ add sp, sp, #0x4
+ ldr r0, _020CC3F4 ; =0x023E0000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC39C:
+ add sp, sp, #0x4
+ ldr r0, _020CC3F8 ; =0x01FF8720
+ ldmfd sp!, {lr}
+ bx lr
+_020CC3AC:
+ add sp, sp, #0x4
+ ldr r0, _020CC3FC ; =0x027E0080
+ ldmfd sp!, {lr}
+ bx lr
+_020CC3BC:
+ add sp, sp, #0x4
+ ldr r0, _020CC400 ; =0x027FF000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC3CC:
+ add sp, sp, #0x4
+ ldr r0, _020CC404 ; =0x037F8000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC3DC:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+_020CC3EC: .word 0x0225FFA0
+_020CC3F0: .word 0x021D36F4
+_020CC3F4: .word 0x023E0000
+_020CC3F8: .word 0x01FF8720
+_020CC3FC: .word 0x027E0080
+_020CC400: .word 0x027FF000
+_020CC404: .word 0x037F8000
+
+ arm_func_start OS_GetInitArenaHi
+OS_GetInitArenaHi: ; 0x020CC408
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r0, #0x6
+ addls pc, pc, r0, lsl #0x2
+ b _020CC508
+_020CC41C:
+ b _020CC438
+ b _020CC508
+ b _020CC448
+ b _020CC488
+ b _020CC498
+ b _020CC4E8
+ b _020CC4F8
+_020CC438:
+ add sp, sp, #0x4
+ ldr r0, _020CC518 ; =0x023E0000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC448:
+ ldr r0, _020CC51C ; =0x021D36F4
+ ldr r0, [r0]
+ cmp r0, #0x0
+ beq _020CC468
+ bl OS_GetConsoleType
+ and r0, r0, #0x3
+ cmp r0, #0x1
+ bne _020CC478
+_020CC468:
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmfd sp!, {lr}
+ bx lr
+_020CC478:
+ add sp, sp, #0x4
+ mov r0, #0x2700000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC488:
+ add sp, sp, #0x4
+ mov r0, #0x2000000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC498:
+ ldr r0, _020CC520 ; =0x027E0000
+ ldr r1, _020CC524 ; =0x00000000
+ ldr r2, _020CC528 ; =0x00000400
+ add r3, r0, #0x3f80
+ cmp r1, #0x0
+ sub r2, r3, r2
+ bne _020CC4CC
+ ldr r1, _020CC52C ; =0x027E0080
+ add sp, sp, #0x4
+ cmp r0, r1
+ movcc r0, r1
+ ldmfd sp!, {lr}
+ bx lr
+_020CC4CC:
+ cmp r1, #0x0
+ ldrlt r0, _020CC52C ; =0x027E0080
+ add sp, sp, #0x4
+ sublt r0, r0, r1
+ subge r0, r2, r1
+ ldmfd sp!, {lr}
+ bx lr
+_020CC4E8:
+ add sp, sp, #0x4
+ ldr r0, _020CC530 ; =0x027FF680
+ ldmfd sp!, {lr}
+ bx lr
+_020CC4F8:
+ add sp, sp, #0x4
+ ldr r0, _020CC534 ; =0x037F8000
+ ldmfd sp!, {lr}
+ bx lr
+_020CC508:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+_020CC518: .word 0x023E0000
+_020CC51C: .word 0x021D36F4
+_020CC520: .word 0x027E0000
+_020CC524: .word 0x00000000
+_020CC528: .word 0x00000400
+_020CC52C: .word 0x027E0080
+_020CC530: .word 0x027FF680
+_020CC534: .word 0x037F8000
+
+ arm_func_start OS_GetArenaLo
+OS_GetArenaLo:
+ mov r0, r0, lsl #0x2
+ add r0, r0, #0x2700000
+ add r0, r0, #0xff000
+ ldr r0, [r0, #0xda0]
+ bx lr
+
+ arm_func_start OS_GetArenaHi
+OS_GetArenaHi:
+ mov r0, r0, lsl #0x2
+ add r0, r0, #0x2700000
+ add r0, r0, #0xff000
+ ldr r0, [r0, #0xdc4]
+ bx lr
+
+ arm_func_start OS_InitArenaEx
+OS_InitArenaEx: ; 0x020CC560
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, #0x2
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x2
+ bl OS_SetArenaHi
+ mov r0, #0x2
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x2
+ bl OS_SetArenaLo
+ ldr r0, _020CC5D4 ; =0x021D36F4
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ beq _020CC5B8
+ bl OS_GetConsoleType
+ and r0, r0, #0x3
+ cmp r0, #0x1
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+_020CC5B8:
+ ldr r0, _020CC5D8 ; =0x0200002B
+ bl OS_SetProtectionRegion1
+ ldr r0, _020CC5DC ; =0x023E0021
+ bl OS_SetProtectionRegion2
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CC5D4: .word 0x021D36F4
+_020CC5D8: .word 0x0200002B
+_020CC5DC: .word 0x023E0021
+
+ arm_func_start OS_InitArena
+OS_InitArena: ; 0x020CC5E0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CC6F4 ; =0x021D36F0
+ ldr r0, [r1, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ mov r2, #0x1
+ mov r0, #0x0
+ str r2, [r1, #0x0]
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x0
+ bl OS_SetArenaHi
+_020CC61C:
+ mov r0, #0x0
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x0
+ bl OS_SetArenaLo
+ mov r0, #0x2
+ mov r1, #0x0
+ bl OS_SetArenaLo
+ mov r0, #0x2
+ mov r1, #0x0
+ bl OS_SetArenaHi
+ mov r0, #0x3
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x3
+ bl OS_SetArenaHi
+ mov r0, #0x3
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x3
+ bl OS_SetArenaLo
+ mov r0, #0x4
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x4
+ bl OS_SetArenaHi
+ mov r0, #0x4
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x4
+ bl OS_SetArenaLo
+ mov r0, #0x5
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x5
+ bl OS_SetArenaHi
+ mov r0, #0x5
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x5
+ bl OS_SetArenaLo
+ mov r0, #0x6
+ bl OS_GetInitArenaHi
+ mov r1, r0
+ mov r0, #0x6
+ bl OS_SetArenaHi
+ mov r0, #0x6
+ bl OS_GetInitArenaLo
+ mov r1, r0
+ mov r0, #0x6
+ bl OS_SetArenaLo
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+_020CC6F4: .word 0x021D36F0
+
+ arm_func_start OS_FreeToHeap
+OS_FreeToHeap: ; 0x020CC6F8
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ mov r5, r1
+ mov r4, r2
+ bl OS_DisableInterrupts
+ ldr r1, _020CC768 ; =0x021D36F8
+ mov r6, r0
+ ldr r0, [r1, r7, lsl #0x2]
+ cmp r5, #0x0
+ ldrlt r5, [r0, #0x0]
+ ldr r1, [r0, #0x10]
+ mov r0, #0xc
+ mla r7, r5, r0, r1
+ sub r4, r4, #0x20
+ ldr r0, [r7, #0x8]
+ mov r1, r4
+ bl DLExtract
+ str r0, [r7, #0x8]
+ ldr r0, [r7, #0x4]
+ mov r1, r4
+ bl DLInsert
+ str r0, [r7, #0x4]
+ mov r0, r6
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020CC768: .word 0x021D36F8
+
+ arm_func_start OS_AllocFromHeap
+OS_AllocFromHeap: ; 0x020CC76C
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ mov r5, r1
+ mov r7, r2
+ bl OS_DisableInterrupts
+ ldr r1, _020CC894 ; =0x021D36F8
+ mov r4, r0
+ ldr r1, [r1, r6, lsl #0x2]
+ cmp r1, #0x0
+ bne _020CC7AC
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CC7AC:
+ cmp r5, #0x0
+ ldrlt r5, [r1, #0x0]
+ ldr r1, [r1, #0x10]
+ mov r0, #0xc
+ mla r6, r5, r0, r1
+ ldr r0, [r6, #0x4]
+ add r1, r7, #0x20
+ add r1, r1, #0x1f
+ mov r5, r0
+ cmp r0, #0x0
+ bic r7, r1, #0x1f
+ beq _020CC7F4
+_020CC7DC:
+ ldr r1, [r5, #0x8]
+ cmp r7, r1
+ ble _020CC7F4
+ ldr r5, [r5, #0x4]
+ cmp r5, #0x0
+ bne _020CC7DC
+_020CC7F4:
+ cmp r5, #0x0
+ bne _020CC814
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CC814:
+ ldr r1, [r5, #0x8]
+ sub r1, r1, r7
+ cmp r1, #0x40
+ bhs _020CC834
+ mov r1, r5
+ bl DLExtract
+ str r0, [r6, #0x4]
+ b _020CC86C
+_020CC834:
+ str r7, [r5, #0x8]
+ add r2, r5, r7
+ str r1, [r2, #0x8]
+ ldr r0, [r5, #0x0]
+ str r0, [r5, r7]
+ ldr r0, [r5, #0x4]
+ str r0, [r2, #0x4]
+ ldr r0, [r2, #0x4]
+ cmp r0, #0x0
+ strne r2, [r0, #0x0]
+ ldr r0, [r2, #0x0]
+ cmp r0, #0x0
+ strne r2, [r0, #0x4]
+ streq r2, [r6, #0x4]
+_020CC86C:
+ ldr r0, [r6, #0x8]
+ mov r1, r5
+ bl DLAddFront
+ str r0, [r6, #0x8]
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add r0, r5, #0x20
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020CC894: .word 0x021D36F8
+
+ arm_func_start DLInsert
+DLInsert: ; 0x020CC898
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r12, r0
+ cmp r0, #0x0
+ mov lr, #0x0
+ beq _020CC8C8
+_020CC8B0:
+ cmp r1, r12
+ bls _020CC8C8
+ mov lr, r12
+ ldr r12, [r12, #0x4]
+ cmp r12, #0x0
+ bne _020CC8B0
+_020CC8C8:
+ str r12, [r1, #0x4]
+ str lr, [r1, #0x0]
+ cmp r12, #0x0
+ beq _020CC908
+ str r1, [r12, #0x0]
+ ldr r3, [r1, #0x8]
+ add r2, r1, r3
+ cmp r2, r12
+ bne _020CC908
+ ldr r2, [r12, #0x8]
+ add r2, r3, r2
+ str r2, [r1, #0x8]
+ ldr r12, [r12, #0x4]
+ str r12, [r1, #0x4]
+ cmp r12, #0x0
+ strne r1, [r12, #0x0]
+_020CC908:
+ cmp lr, #0x0
+ beq _020CC950
+ str r1, [lr, #0x4]
+ ldr r2, [lr, #0x8]
+ add r3, lr, r2
+ cmp r3, r1
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ ldr r1, [r1, #0x8]
+ add sp, sp, #0x4
+ add r1, r2, r1
+ str r1, [lr, #0x8]
+ str r12, [lr, #0x4]
+ cmp r12, #0x0
+ strne lr, [r12, #0x0]
+ ldmia sp!, {lr}
+ bx lr
+_020CC950:
+ mov r0, r1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start DLExtract
+DLExtract: ; 0x020CC960
+ ldr r3, [r1, #0x4]
+ cmp r3, #0x0
+ ldrne r2, [r1, #0x0]
+ strne r2, [r3, #0x0]
+ ldr r2, [r1, #0x0]
+ cmp r2, #0x0
+ ldreq r0, [r1, #0x4]
+ ldrne r1, [r1, #0x4]
+ strne r1, [r2, #0x4]
+ bx lr
+
+ arm_func_start DLAddFront
+DLAddFront: ; 0x020CC988
+ str r0, [r1, #0x4]
+ mov r2, #0x0
+ str r2, [r1, #0x0]
+ cmp r0, #0x0
+ strne r1, [r0, #0x0]
+ mov r0, r1
+ bx lr
+
+ arm_func_start OS_GetDTCMAddress
+OS_GetDTCMAddress: ; 0x020CC9A4
+ mrc p15, 0x0, r0, c9, c1, 0x0
+ ldr r1, _020CC9B4 ; =0xFFFFF000
+ and r0, r0, r1
+ bx lr
+ .balign 4
+_020CC9B4: .word 0xFFFFF000
+
+ arm_func_start OS_EnableProtectionUnit
+OS_EnableProtectionUnit: ; 0x020CC9B8
+ mrc p15, 0x0, r0, c1, c0, 0x0
+ orr r0, r0, #0x1
+ mcr p15, 0x0, r0, c1, c0, 0x0
+ bx lr
+
+ arm_func_start OS_DisableProtectionUnit
+OS_DisableProtectionUnit: ; 0x020CC9C8
+ mrc p15, 0x0, r0, c1, c0, 0x0
+ bic r0, r0, #0x1
+ mcr p15, 0x0, r0, c1, c0, 0x0
+ bx lr
+
+ arm_func_start OS_SetDPermissionsForProtectionRegion
+OS_SetDPermissionsForProtectionRegion: ; 0x020CC9D8
+ mrc p15, 0x0, r2, c5, c0, 0x2
+ bic r2, r2, r0
+ orr r2, r2, r1
+ mcr p15, 0x0, r2, c5, c0, 0x2
+ bx lr
+
+ arm_func_start OS_SetProtectionRegion1
+OS_SetProtectionRegion1: ; 0x020CC9EC
+ mcr p15, 0x0, r0, c6, c1, 0x0
+ bx lr
+
+ arm_func_start OS_SetProtectionRegion2
+OS_SetProtectionRegion2: ; 0x020CC9F4
+ mcr p15, 0x0, r0, c6, c2, 0x0
+ bx lr
+
+ arm_func_start OSi_ExceptionHandler
+OSi_ExceptionHandler: ; 0x020CC9FC
+ ldr ip, _020CCA68 ; =0x021D3724
+ ldr r12, [r12, #0x0]
+ cmp r12, #0x0
+ movne lr, pc
+ bxne r12
+ ldr ip, _020CCA6C ; =0x02000000
+ stmdb r12!, {r0-r3,sp-lr}
+ and r0, sp, #0x1
+ mov sp, r12
+ mrs r1, cpsr
+ and r1, r1, #0x1f
+ teq r1, #0x17
+ bne _020CCA38
+ bl OSi_GetAndDisplayContext
+ b _020CCA44
+_020CCA38:
+ teq r1, #0x1b
+ bne _020CCA44
+ bl OSi_GetAndDisplayContext
+_020CCA44:
+ ldr ip, _020CCA68 ; =0x021D3724
+ ldr r12, [r12, #0x0]
+ cmp r12, #0x0
+_020CCA50:
+ beq _020CCA50
+_020CCA54:
+ mov r0, r0
+ b _020CCA54
+_020CCA5C:
+ ldmia sp!, {r0-r3,ip,lr}
+ mov sp, ip
+ bx lr
+_020CCA68: .word 0x021D3724
+_020CCA6C: .word 0x02000000
+
+ arm_func_start OSi_GetAndDisplayContext
+OSi_GetAndDisplayContext: ; 0x020CCA70
+ stmdb sp!, {r0,lr}
+ bl OSi_SetExContext
+ bl OSi_DisplayExContext
+ ldmia sp!, {r0,lr}
+ bx lr
+
+ arm_func_start OSi_SetExContext
+OSi_SetExContext: ; 0x020CCA84
+ ldr r1, _020CCB10 ; =0x021D3728
+ mrs r2, cpsr
+ str r2, [r1, #0x74]
+ str r0, [r1, #0x6c]
+ ldr r0, [r12, #0x0]
+ str r0, [r1, #0x4]
+ ldr r0, [r12, #0x4]
+ str r0, [r1, #0x8]
+ ldr r0, [r12, #0x8]
+ str r0, [r1, #0xc]
+ ldr r0, [r12, #0xc]
+ str r0, [r1, #0x10]
+ ldr r2, [r12, #0x10]
+ bic r2, r2, #0x1
+ add r0, r1, #0x14
+ stmia r0, {r4-r11}
+ str r12, [r1, #0x70]
+ ldr r0, [r2, #0x0]
+ str r0, [r1, #0x64]
+ ldr r3, [r2, #0x4]
+ str r3, [r1, #0x0]
+ ldr r0, [r2, #0x8]
+ str r0, [r1, #0x34]
+ ldr r0, [r2, #0xc]
+ str r0, [r1, #0x40]
+ mrs r0, cpsr
+ orr r3, r3, #0x80
+ bic r3, r3, #0x20
+ msr cpsr_fsxc, r3
+ str sp, [r1, #0x38]
+ str lr, [r1, #0x3c]
+ mrs r2, spsr
+ str r2, [r1, #0x7c]
+ msr cpsr_fsxc, r0
+ bx lr
+ .balign 4
+_020CCB10: .word 0x021D3728
+
+ arm_func_start OSi_DisplayExContext
+OSi_DisplayExContext: ; 0x020CCB14
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CCB70 ; =0x021D371C
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {lr}
+ bxeq lr
+ mov r0, sp
+ ldr r1, _020CCB74 ; =0x0000009F
+ msr cpsr_fsxc, r1
+ mov sp, r0
+ bl OS_EnableProtectionUnit
+ ldr r1, _020CCB78 ; =0x021D3720
+ ldr r0, _020CCB70 ; =0x021D371C
+ ldr r1, [r1, #0x0]
+ ldr r2, [r0, #0x0]
+ ldr r0, _020CCB7C ; =0x021D3728
+ blx r2
+ bl OS_DisableProtectionUnit
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CCB70: .word 0x021D371C
+_020CCB74: .word 0x0000009F
+_020CCB78: .word 0x021D3720
+_020CCB7C: .word 0x021D3728
+
+ arm_func_start OS_InitException
+OS_InitException: ; 0x020CCB80
+ ldr r0, _020CCBDC ; =0x027FFD9C
+ ldr r1, [r0, #0x0]
+ cmp r1, #0x2600000
+ blo _020CCBA0
+ cmp r1, #0x2800000
+ ldrlo r0, _020CCBE0 ; =0x021D3724
+ strcc r1, [r0, #0x0]
+ blo _020CCBAC
+_020CCBA0:
+ ldr r0, _020CCBE0 ; =0x021D3724
+ mov r1, #0x0
+ str r1, [r0, #0x0]
+_020CCBAC:
+ ldr r0, _020CCBE0 ; =0x021D3724
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ ldreq r2, _020CCBE4 ; =OSi_ExceptionHandler
+ ldreq r1, _020CCBDC ; =0x027FFD9C
+ ldreq r0, _020CCBE8 ; =0x027E3000
+ streq r2, [r1, #0x0]
+ streq r2, [r0, #0xfdc]
+ ldr r0, _020CCBEC ; =0x021D371C
+ mov r1, #0x0
+ str r1, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CCBDC: .word 0x027FFD9C
+_020CCBE0: .word 0x021D3724
+_020CCBE4: .word OSi_ExceptionHandler
+_020CCBE8: .word 0x027E3000
+_020CCBEC: .word 0x021D371C
+
+ arm_func_start OSi_SetTimerReserved
+OSi_SetTimerReserved: ; 0x020CCBF0
+ ldr r1, _020CCC08 ; =0x021D37A8
+ mov r2, #0x1
+ ldrh r3, [r1, #0x0]
+ orr r0, r3, r2, lsl r0
+ strh r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CCC08: .word 0x021D37A8
+
+ arm_func_start OS_GetTickLo
+OS_GetTickLo: ; 0x020CCC0C
+ ldr r0, _020CCC18 ; =0x04000100
+ ldrh r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CCC18: .word 0x04000100
+
+ arm_func_start OS_GetTick
+OS_GetTick: ; 0x020CCC1C
+ stmdb sp!, {lr}
+ sub sp, sp, #0xc
+ bl OS_DisableInterrupts
+ ldr r1, _020CCCBC ; =0x04000100
+ ldr r3, _020CCCC0 ; =0x021D37B4
+ ldrh r12, [r1, #0x0]
+ ldr r2, _020CCCC4 ; =0x0000FFFF
+ mvn r1, #0x0
+ strh r12, [sp, #0x0]
+ ldr r12, [r3, #0x0]
+ ldr r3, [r3, #0x4]
+ and r1, r12, r1
+ and r2, r3, r2
+ str r1, [sp, #0x4]
+ ldr r1, _020CCCC8 ; =0x04000214
+ str r2, [sp, #0x8]
+ ldr r1, [r1, #0x0]
+ ands r1, r1, #0x8
+ beq _020CCC90
+ ldrh r1, [sp, #0x0]
+ ands r1, r1, #0x8000
+ bne _020CCC90
+ ldr r3, [sp, #0x4]
+ mov r1, #0x1
+ ldr r2, [sp, #0x8]
+ adds r3, r3, r1
+ adc r1, r2, #0x0
+ str r3, [sp, #0x4]
+ str r1, [sp, #0x8]
+_020CCC90:
+ bl OS_RestoreInterrupts
+ ldr r2, [sp, #0x4]
+ ldr r1, [sp, #0x8]
+ ldrh r0, [sp, #0x0]
+ mov r1, r1, lsl #0x10
+ orr r1, r1, r2, lsr #0x10
+ orr r1, r1, r0, asr #0x1f
+ orr r0, r0, r2, lsl #0x10
+ add sp, sp, #0xc
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CCCBC: .word 0x04000100
+_020CCCC0: .word 0x021D37B4
+_020CCCC4: .word 0x0000FFFF
+_020CCCC8: .word 0x04000214
+
+ arm_func_start OSi_CountUpTick
+OSi_CountUpTick: ; 0x020CCCCC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r2, _020CCD40 ; =0x021D37B4
+ ldr r1, _020CCD44 ; =0x021D37B0
+ ldr r12, [r2, #0x0]
+ mov r0, #0x1
+ ldr r3, [r2, #0x4]
+ adds r12, r12, r0
+ ldr r0, [r1, #0x0]
+ adc r3, r3, #0x0
+ str r12, [r2, #0x0]
+ str r3, [r2, #0x4]
+ cmp r0, #0x0
+ mov r3, #0x0
+ beq _020CCD24
+ ldr r2, _020CCD48 ; =0x04000102
+ ldr r0, _020CCD4C ; =0x04000100
+ strh r3, [r2, #0x0]
+ strh r3, [r0, #0x0]
+ mov r0, #0xc1
+ strh r0, [r2, #0x0]
+ str r3, [r1, #0x0]
+_020CCD24:
+ mov r0, #0x0
+ ldr r1, _020CCD50 ; =OSi_CountUpTick
+ mov r2, r0
+ bl OSi_EnterTimerCallback
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CCD40: .word 0x021D37B4
+_020CCD44: .word 0x021D37B0
+_020CCD48: .word 0x04000102
+_020CCD4C: .word 0x04000100
+_020CCD50: .word OSi_CountUpTick
+
+ arm_func_start OS_IsTickAvailable
+OS_IsTickAvailable: ; 0x020CCD54
+ ldr r0, _020CCD60 ; =0x021D37AC
+ ldrh r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CCD60: .word 0x021D37AC
+
+ arm_func_start OS_InitTick
+OS_InitTick: ; 0x020CCD64
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CCDE8 ; =0x021D37AC
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ mov r2, #0x1
+ mov r0, #0x0
+ strh r2, [r1, #0x0]
+ bl OSi_SetTimerReserved
+ ldr r0, _020CCDEC ; =0x021D37B4
+ mov r2, #0x0
+ str r2, [r0, #0x0]
+ ldr r3, _020CCDF0 ; =0x04000102
+ str r2, [r0, #0x4]
+ ldr r0, _020CCDF4 ; =0x04000100
+ strh r2, [r3, #0x0]
+ ldr r1, _020CCDF8 ; =OSi_CountUpTick
+ strh r2, [r0, #0x0]
+ mov r2, #0xc1
+ mov r0, #0x8
+ strh r2, [r3, #0x0]
+ bl OS_SetIrqFunction
+ mov r0, #0x8
+ bl OS_EnableIrqMask
+ ldr r0, _020CCDFC ; =0x021D37B0
+ mov r1, #0x0
+ str r1, [r0, #0x0]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CCDE8: .word 0x021D37AC
+_020CCDEC: .word 0x021D37B4
+_020CCDF0: .word 0x04000102
+_020CCDF4: .word 0x04000100
+_020CCDF8: .word OSi_CountUpTick
+_020CCDFC: .word 0x021D37B0
+
+ arm_func_start OSi_AlarmHandler
+OSi_AlarmHandler: ; 0x020CCE00
+ stmdb sp!, {r0,lr}
+ bl OSi_ArrangeTimer
+ ldmia sp!, {r0,lr}
+ bx lr
+
+ arm_func_start OSi_ArrangeTimer
+OSi_ArrangeTimer: ; 0x020CCE10
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CCF1C ; =0x04000106
+ mov r2, #0x0
+ mov r0, #0x10
+ strh r2, [r1, #0x0]
+ bl OS_DisableIrqMask
+ ldr r0, _020CCF20 ; =0x027E0000
+ add r0, r0, #0x3000
+ ldr r1, [r0, #0xff8]
+ orr r1, r1, #0x10
+ str r1, [r0, #0xff8]
+ bl OS_GetTick
+ ldr r2, _020CCF24 ; =0x021D37C0
+ ldr r4, [r2, #0x0]
+ cmp r4, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r3, [r4, #0x10]
+ ldr r12, [r4, #0xc]
+ cmp r1, r3
+ cmpeq r0, r12
+ bhs _020CCE84
+ mov r0, r4
+ bl OSi_SetTimer
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CCE84:
+ ldr r1, [r4, #0x18]
+ cmp r1, #0x0
+ moveq r0, #0x0
+ streq r0, [r2, #0x4]
+ str r1, [r2, #0x0]
+ movne r0, #0x0
+ strne r0, [r1, #0x14]
+ ldr r2, [r4, #0x1c]
+ ldr r1, [r4, #0x20]
+ mov r0, #0x0
+ cmp r1, r0
+ ldr r5, [r4, #0x0]
+ cmpeq r2, r0
+ streq r0, [r4, #0x0]
+ cmp r5, #0x0
+ beq _020CCECC
+ ldr r0, [r4, #0x4]
+ blx r5
+_020CCECC:
+ ldr r2, [r4, #0x1c]
+ ldr r0, [r4, #0x20]
+ mov r1, #0x0
+ cmp r0, r1
+ cmpeq r2, r1
+ beq _020CCEF4
+ mov r0, r4
+ mov r2, r1
+ str r5, [r4, #0x0]
+ bl OSi_InsertAlarm
+_020CCEF4:
+ ldr r0, _020CCF24 ; =0x021D37C0
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ bl OSi_SetTimer
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CCF1C: .word 0x04000106
+_020CCF20: .word 0x027E0000
+_020CCF24: .word 0x021D37C0
+
+ arm_func_start OS_CancelAlarm
+OS_CancelAlarm: ; 0x020CCF28
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x0]
+ mov r4, r0
+ cmp r1, #0x0
+ bne _020CCF58
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CCF58:
+ ldr r0, [r5, #0x18]
+ cmp r0, #0x0
+ ldreq r2, [r5, #0x14]
+ ldreq r1, _020CCFBC ; =0x021D37C0
+ streq r2, [r1, #0x4]
+ ldrne r1, [r5, #0x14]
+ strne r1, [r0, #0x14]
+ ldr r1, [r5, #0x14]
+ cmp r1, #0x0
+ strne r0, [r1, #0x18]
+ bne _020CCF98
+ ldr r1, _020CCFBC ; =0x021D37C0
+ cmp r0, #0x0
+ str r0, [r1, #0x0]
+ beq _020CCF98
+ bl OSi_SetTimer
+_020CCF98:
+ mov r1, #0x0
+ str r1, [r5, #0x0]
+ str r1, [r5, #0x1c]
+ mov r0, r4
+ str r1, [r5, #0x20]
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CCFBC: .word 0x021D37C0
+
+ arm_func_start OS_SetAlarm
+OS_SetAlarm: ; 0x020CCFC0
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ movs r6, r0
+ mov r5, r1
+ mov r4, r2
+ mov r7, r3
+ beq _020CCFE8
+ ldr r0, [r6, #0x0]
+ cmp r0, #0x0
+ beq _020CCFEC
+_020CCFE8:
+ bl OS_Terminate
+_020CCFEC:
+ bl OS_DisableInterrupts
+ mov r1, #0x0
+ str r1, [r6, #0x1c]
+ str r1, [r6, #0x20]
+ str r7, [r6, #0x0]
+ ldr r1, [sp, #0x18]
+ mov r7, r0
+ str r1, [r6, #0x4]
+ bl OS_GetTick
+ adds r3, r5, r0
+ adc r2, r4, r1
+ mov r0, r6
+ mov r1, r3
+ bl OSi_InsertAlarm
+ mov r0, r7
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start OSi_InsertAlarm
+OSi_InsertAlarm: ; 0x020CD038
+ stmdb sp!, {r4-r8,lr}
+ mov r8, r0
+ ldr r4, [r8, #0x1c]
+ ldr r3, [r8, #0x20]
+ mov r0, #0x0
+ cmp r3, r0
+ mov r7, r1
+ mov r6, r2
+ cmpeq r4, r0
+ beq _020CD0B4
+ bl OS_GetTick
+ ldr r6, [r8, #0x28]
+ ldr r7, [r8, #0x24]
+ cmp r6, r1
+ cmpeq r7, r0
+ bhs _020CD0B4
+ ldr r5, [r8, #0x1c]
+ ldr r4, [r8, #0x20]
+ subs r0, r0, r7
+ mov r2, r5
+ mov r3, r4
+ sbc r1, r1, r6
+ bl _ll_udiv
+ mov r2, #0x1
+ adds r2, r0, r2
+ adc r0, r1, #0x0
+ umull r3, r1, r5, r2
+ mla r1, r5, r0, r1
+ mla r1, r4, r2, r1
+ adds r7, r7, r3
+ adc r6, r6, r1
+_020CD0B4:
+ str r7, [r8, #0xc]
+ ldr r0, _020CD174 ; =0x021D37C0
+ str r6, [r8, #0x10]
+ ldr r4, [r0, #0x0]
+ cmp r4, #0x0
+ beq _020CD134
+ mov r1, #0x0
+_020CD0D0:
+ ldr r2, [r4, #0xc]
+ ldr r0, [r4, #0x10]
+ subs r3, r7, r2
+ sbc r2, r6, r0
+ subs r0, r3, r1
+ sbcs r0, r2, r1
+ bge _020CD128
+ ldr r0, [r4, #0x14]
+ str r0, [r8, #0x14]
+ str r8, [r4, #0x14]
+ str r4, [r8, #0x18]
+ ldr r0, [r8, #0x14]
+ cmp r0, #0x0
+ strne r8, [r0, #0x18]
+ ldmneia sp!, {r4-r8,lr}
+ bxne lr
+ ldr r1, _020CD174 ; =0x021D37C0
+ mov r0, r8
+ str r8, [r1, #0x0]
+ bl OSi_SetTimer
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CD128:
+ ldr r4, [r4, #0x18]
+ cmp r4, #0x0
+ bne _020CD0D0
+_020CD134:
+ ldr r1, _020CD174 ; =0x021D37C0
+ mov r0, #0x0
+ str r0, [r8, #0x18]
+ ldr r0, [r1, #0x4]
+ str r8, [r1, #0x4]
+ str r0, [r8, #0x14]
+ cmp r0, #0x0
+ strne r8, [r0, #0x18]
+ ldmneia sp!, {r4-r8,lr}
+ bxne lr
+ mov r0, r8
+ str r8, [r1, #0x4]
+ str r8, [r1, #0x0]
+ bl OSi_SetTimer
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020CD174: .word 0x021D37C0
+
+ arm_func_start OS_CreateAlarm
+OS_CreateAlarm: ; 0x020CD178
+ mov r1, #0x0
+ str r1, [r0, #0x0]
+ str r1, [r0, #0x8]
+ bx lr
+
+ arm_func_start OS_IsAlarmAvailable
+OS_IsAlarmAvailable: ; 0x020CD188
+ ldr r0, _020CD194 ; =0x021D37BC
+ ldrh r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020CD194: .word 0x021D37BC
+
+ arm_func_start OS_InitAlarm
+OS_InitAlarm: ; 0x020CD198
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CD1E8 ; =0x021D37BC
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ mov r0, #0x1
+ strh r0, [r1, #0x0]
+ bl OSi_SetTimerReserved
+ ldr r1, _020CD1EC ; =0x021D37C0
+ mov r2, #0x0
+ mov r0, #0x10
+ str r2, [r1, #0x0]
+ str r2, [r1, #0x4]
+ bl OS_DisableIrqMask
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CD1E8: .word 0x021D37BC
+_020CD1EC: .word 0x021D37C0
+
+ arm_func_start OSi_SetTimer
+OSi_SetTimer: ; 0x020CD1F0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r4, r0
+ bl OS_GetTick
+ ldr r3, _020CD27C ; =0x04000106
+ mov r2, #0x0
+ strh r2, [r3, #0x0]
+ ldr r12, [r4, #0xc]
+ ldr r3, [r4, #0x10]
+ subs r5, r12, r0
+ sbc r4, r3, r1
+ ldr r1, _020CD280 ; =OSi_AlarmHandler
+ mov r0, #0x1
+ bl OSi_EnterTimerCallback
+ mov r2, #0x0
+ subs r0, r5, r2
+ sbcs r0, r4, r2
+ ldrlt r2, _020CD284 ; =0x0000FFFE
+ blt _020CD254
+ mov r0, #0x10000
+ subs r0, r5, r0
+ sbcs r0, r4, r2
+ mvnlt r0, r5
+ movlt r0, r0, lsl #0x10
+ movlt r2, r0, lsr #0x10
+_020CD254:
+ ldr r0, _020CD288 ; =0x04000104
+ ldr r1, _020CD27C ; =0x04000106
+ strh r2, [r0, #0x0]
+ mov r2, #0xc1
+ mov r0, #0x10
+ strh r2, [r1, #0x0]
+ bl OS_EnableIrqMask
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CD27C: .word 0x04000106
+_020CD280: .word OSi_AlarmHandler
+_020CD284: .word 0x0000FFFE
+_020CD288: .word 0x04000104
+
+ arm_func_start OS_InitVAlarm
+OS_InitVAlarm: ; 0x020CD28C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r2, _020CD2EC ; =0x021D37C8
+ ldrh r0, [r2, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ ldr r1, _020CD2F0 ; =0x021D37D4
+ mov r3, #0x0
+ mov r12, #0x1
+ mov r0, #0x4
+ strh r12, [r2, #0x0]
+ str r3, [r1, #0x0]
+ str r3, [r1, #0x4]
+ bl OS_DisableIrqMask
+ ldr r1, _020CD2F4 ; =0x021D37D0
+ mov r2, #0x0
+ ldr r0, _020CD2F8 ; =0x021D37CC
+ str r2, [r1, #0x0]
+ str r2, [r0, #0x0]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CD2EC: .word 0x021D37C8
+_020CD2F0: .word 0x021D37D4
+_020CD2F4: .word 0x021D37D0
+_020CD2F8: .word 0x021D37CC
+
+ arm_func_start OS_EnableInterrupts
+OS_EnableInterrupts: ; 0x020CD2FC
+ mrs r0, cpsr
+ bic r1, r0, #0x80
+ msr cpsr_c, r1
+ and r0, r0, #0x80
+ bx lr
+
+ arm_func_start OS_DisableInterrupts
+OS_DisableInterrupts:
+ mrs r0, cpsr
+ orr r1, r0, #0x80
+ msr cpsr_c, r1
+ and r0, r0, #0x80
+ bx lr
+
+ arm_func_start OS_RestoreInterrupts
+OS_RestoreInterrupts:
+ mrs r1, cpsr
+ bic r2, r1, #0x80
+ orr r2, r2, r0
+ msr cpsr_c, r2
+ and r0, r1, #0x80
+ bx lr
+
+ arm_func_start OS_DisableInterrupts_IrqAndFiq
+OS_DisableInterrupts_IrqAndFiq: ; 0x020CD33C
+ mrs r0, cpsr
+ orr r1, r0, #0xc0
+ msr cpsr_c, r1
+ and r0, r0, #0xc0
+ bx lr
+
+ arm_func_start OS_RestoreInterrupts_IrqAndFiq
+OS_RestoreInterrupts_IrqAndFiq: ; 0x020CD350
+ mrs r1, cpsr
+ bic r2, r1, #0xc0
+ orr r2, r2, r0
+ msr cpsr_c, r2
+ and r0, r1, #0xc0
+ bx lr
+
+ arm_func_start OS_GetCpsrIrq
+OS_GetCpsrIrq: ; 0x020CD368
+ mrs r0, cpsr
+ and r0, r0, #0x80
+ bx lr
+
+ arm_func_start OS_GetProcMode
+OS_GetProcMode: ; 0x020CD374
+ mrs r0, cpsr
+ and r0, r0, #0x1f
+ bx lr
+_020CD380:
+ subs r0, r0, #0x4
+ bhs _020CD380
+ bx lr
+
+ arm_func_start OS_WaitVBlankIntr
+OS_WaitVBlankIntr: ; 0x020CD38C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, #0x1
+ blx FUN_020005F2
+ mov r0, #0x1
+ mov r1, r0
+ bl OS_WaitIrq
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start OS_ResetSystem
+OS_ResetSystem: ; 0x020CD3B4
+ stmdb sp!, {r4,lr}
+ ldr r1, _020CD42C ; =0x027FFC40
+ mov r4, r0
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x2
+ bne _020CD3D0
+ bl OS_Terminate
+_020CD3D0:
+ bl OS_GetLockID
+ mov r0, r0, lsl #0x10
+ mov r0, r0, lsr #0x10
+ bl CARD_LockRom
+_020CD3E0:
+ mov r0, #0x0
+ bl MI_StopDma
+ mov r0, #0x1
+ bl MI_StopDma
+ mov r0, #0x2
+ bl MI_StopDma
+ mov r0, #0x3
+ bl MI_StopDma
+ mov r0, #0x40000
+ bl OS_SetIrqMask
+ mvn r0, #0x0
+ bl OS_ResetRequestIrqMask
+ ldr r1, _020CD430
+ mov r0, #0x10
+ str r4, [r1]
+ bl OSi_SendToPxi
+ bl FUN_01FF84A4
+ ldmia sp!, {r4, lr}
+ bx lr
+_020CD42C: .word 0x027FFC40
+_020CD430: .word 0x027FFC20
+
+ arm_func_start OSi_SendToPxi
+OSi_SendToPxi: ; 0x020CD434
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0, lsl #0x8
+ mov r5, #0xc
+ mov r4, #0x0
+_020CD444:
+ mov r0, r5
+ mov r1, r6
+ mov r2, r4
+ bl PXI_SendWordByFifo
+_020CD454:
+ cmp r0, #0x0
+ bne _020CD444
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+
+ arm_func_start OSi_CommonCallback
+OSi_CommonCallback: ; 0x020CD464
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ and r0, r1, #0x7f00
+ mov r0, r0, lsl #0x8
+ mov r0, r0, lsr #0x10
+ cmp r0, #0x10
+ ldreq r0, _020CD4A4 ; =0x021D37E0
+ moveq r1, #0x1
+ streqh r1, [r0, #0x0]
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {lr}
+ bxeq lr
+ bl OS_Terminate
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CD4A4: .word 0x021D37E0
+
+ arm_func_start OS_InitReset
+OS_InitReset: ; 0x020CD4A8
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CD508 ; =0x021D37DC
+ ldrh r1, [r0, #0x0]
+ cmp r1, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ mov r1, #0x1
+ strh r1, [r0, #0x0]
+ bl PXI_Init
+ mov r5, #0xc
+ mov r4, #0x1
+_020CD4DC:
+ mov r0, r5
+ mov r1, r4
+ bl PXI_IsCallbackReady
+_020CD4E8:
+ cmp r0, #0x0
+ beq _020CD4DC
+ ldr r1, _020CD50C
+ mov r0, #0xC
+ bl PXI_SetFifoRecvCallback
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+_020CD508: .word 0x021D37DC
+_020CD50C: .word 0x020CD464
+
+ arm_func_start OS_GetOwnerRtcOffset
+OS_GetOwnerRtcOffset: ; 0x020CD510
+ ldr r1, _020CD520 ; =0x027FFC80
+ ldr r0, [r1, #0x68]
+ ldr r1, [r1, #0x6c]
+ bx lr
+ .balign 4
+_020CD520: .word 0x027FFC80
+
+ arm_func_start OS_GetOwnerInfo
+OS_GetOwnerInfo: ; 0x020CD524
+ stmdb sp!, {r4,lr}
+ ldr ip, _020CD59C ; =0x027FFC80
+ mov r4, r0
+ ldrh r2, [r12, #0x64]
+ add r0, r12, #0x6
+ add r1, r4, #0x4
+ mov r2, r2, lsl #0x1d
+ mov r2, r2, lsr #0x1d
+ strb r2, [r4, #0x0]
+ ldrb r3, [r12, #0x2]
+ mov r2, #0x14
+ mov r3, r3, lsl #0x1c
+ mov r3, r3, lsr #0x1c
+ strb r3, [r4, #0x1]
+ ldrb r3, [r12, #0x3]
+ strb r3, [r4, #0x2]
+ ldrb r3, [r12, #0x4]
+ strb r3, [r4, #0x3]
+ ldrb r3, [r12, #0x1a]
+ strh r3, [r4, #0x18]
+ ldrb r3, [r12, #0x50]
+ strh r3, [r4, #0x4e]
+ bl MIi_CpuCopy16
+ ldr r0, _020CD59C ; =0x027FFC80
+ add r1, r4, #0x1a
+ add r0, r0, #0x1c
+ mov r2, #0x34
+ bl MIi_CpuCopy16
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CD59C: .word 0x027FFC80
+
+ arm_func_start OS_GetMacAddress
+OS_GetMacAddress: ; 0x020CD5A0
+ ldr ip, _020CD5B4 ; =MI_CpuCopy8
+ mov r1, r0
+ ldr r0, _020CD5B8 ; =0x027FFCF4
+ mov r2, #0x6
+ bx r12
+ .balign 4
+_020CD5B4: .word MI_CpuCopy8
+_020CD5B8: .word 0x027FFCF4
+
+ arm_func_start OsCountZeroBits
+OsCountZeroBits: ; 0x020CD5BC
+ clz r0, r0
+ bx lr
+
+ arm_func_start OSi_UnlockVram
+OSi_UnlockVram: ; 0x020CD5C4
+ stmdb sp!, {r4-r10,lr}
+ mov r5, r0
+ mov r10, r1
+ bl OS_DisableInterrupts
+ ldr r4, _020CD640 ; =0x021D37E4
+ ldr r1, _020CD644 ; =0x000001FF
+ ldr r2, [r4, #0x0]
+ mov r8, r0
+ and r0, r5, r2
+ and r9, r0, r1
+ ldr r6, _020CD648 ; =0x021D37E8
+ mov r7, #0x1
+ mov r5, #0x0
+_020CD5F8:
+ mov r0, r9
+ bl OsCountZeroBits
+ rsbs r2, r0, #0x1f
+ bmi _020CD630
+ mov r1, r2, lsl #0x1
+ ldrh r0, [r6, r1]
+ mvn r2, r7, lsl r2
+ cmp r10, r0
+ ldreq r0, [r4, #0x0]
+ and r9, r9, r2
+ andeq r0, r0, r2
+ streqh r5, [r6, r1]
+ streq r0, [r4, #0x0]
+ b _020CD5F8
+_020CD630:
+ mov r0, r8
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r10,lr}
+ bx lr
+ .balign 4
+_020CD640: .word 0x021D37E4
+_020CD644: .word 0x000001FF
+_020CD648: .word 0x021D37E8
+
+ arm_func_start OSi_TryLockVram
+OSi_TryLockVram: ; 0x020CD64C
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ mov r8, r1
+ bl OS_DisableInterrupts
+ ldr r1, _020CD714 ; =0x021D37E4
+ mov r7, r0
+ ldr r0, [r1, #0x0]
+ and r5, r6, r0
+ ldr sb, _020CD718 ; =0x021D37E8
+ mov r4, #0x1
+_020CD678:
+ mov r0, r5
+ bl OsCountZeroBits
+ rsbs r1, r0, #0x1f
+ bmi _020CD6B8
+ mov r0, r1, lsl #0x1
+ ldrh r0, [r9, r0]
+ mvn r1, r4, lsl r1
+ cmp r8, r0
+ and r5, r5, r1
+ beq _020CD678
+ mov r0, r7
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+_020CD6B8:
+ ldr r0, _020CD71C ; =0x000001FF
+ and r6, r6, r0
+ ldr r4, _020CD718 ; =0x021D37E8
+ ldr sb, _020CD714 ; =0x021D37E4
+ mov r5, #0x1
+_020CD6CC:
+ mov r0, r6
+ bl OsCountZeroBits
+ rsbs r1, r0, #0x1f
+ bmi _020CD6FC
+ ldr r0, [r9, #0x0]
+ mvn r2, r5, lsl r1
+ orr r0, r0, r5, lsl r1
+ mov r1, r1, lsl #0x1
+ strh r8, [r4, r1]
+ str r0, [r9, #0x0]
+ and r6, r6, r2
+ b _020CD6CC
+_020CD6FC:
+ mov r0, r7
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+ .balign 4
+_020CD714: .word 0x021D37E4
+_020CD718: .word 0x021D37E8
+_020CD71C: .word 0x000001FF
+
+ arm_func_start OSi_InitVramExclusive
+OSi_InitVramExclusive: ; 0x020CD720
+ ldr r0, _020CD74C ; =0x021D37E4
+ mov r3, #0x0
+ str r3, [r0, #0x0]
+ ldr r0, _020CD750 ; =0x021D37E8
+ mov r2, r3
+_020CD734:
+ mov r1, r3, lsl #0x1
+ add r3, r3, #0x1
+ strh r2, [r0, r1]
+ cmp r3, #0x9
+ blt _020CD734
+ bx lr
+ .balign 4
+_020CD74C: .word 0x021D37E4
+_020CD750: .word 0x021D37E8
+
+ arm_func_start OS_GetLowEntropyData
+OS_GetLowEntropyData: ; 0x020CD754
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CD82C ; =0x04000006
+ ldr r2, _020CD830 ; =0x027FFC00
+ ldrh r7, [r1, #0x0]
+ add r4, r2, #0x80
+ mov r6, r0
+ add r5, r4, #0x74
+ bl OS_GetTickLo
+ orr r0, r0, r7, lsl #0x10
+ str r0, [r6, #0x0]
+ ldr r1, _020CD834 ; =0x021D37B4
+ ldr r0, _020CD830 ; =0x027FFC00
+ ldr r3, [r1, #0x0]
+ ldrh r5, [r5, #0x4]
+ ldr r2, [r1, #0x4]
+ ldr r2, _020CD838 ; =0x04000600
+ eor r3, r3, r5, lsl #0x10
+ str r3, [r6, #0x4]
+ ldr r3, [r1, #0x0]
+ ldr r3, [r1, #0x4]
+ ldr r1, [r4, #0x74]
+ ldr r4, [r0, #0x3c]
+ eor r1, r3, r1
+ eor r1, r4, r1
+ str r1, [r6, #0x8]
+ ldr r3, [r6, #0x8]
+ ldr r2, [r2, #0x0]
+ add r1, r0, #0x300
+ eor r2, r3, r2
+ str r2, [r6, #0x8]
+ ldr r2, [r0, #0x1e8]
+ ldr r3, _020CD83C ; =0x04000130
+ str r2, [r6, #0xc]
+ ldr r4, [r0, #0x1ec]
+ ldr r2, _020CD840 ; =0x027FFFA8
+ str r4, [r6, #0x10]
+ ldrh r4, [r1, #0x94]
+ ldr r0, [r0, #0x390]
+ eor r0, r0, r4, lsl #0x10
+ str r0, [r6, #0x14]
+ ldrh r4, [r1, #0xaa]
+ ldrh r0, [r1, #0xac]
+ orr r0, r0, r4, lsl #0x10
+ str r0, [r6, #0x18]
+ ldrh r3, [r3, #0x0]
+ ldrh r0, [r2, #0x0]
+ ldrh r1, [r1, #0x98]
+ orr r0, r3, r0
+ orr r0, r0, r1, lsl #0x10
+ str r0, [r6, #0x1c]
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020CD82C: .word 0x04000006
+_020CD830: .word 0x027FFC00
+_020CD834: .word 0x021D37B4
+_020CD838: .word 0x04000600
+_020CD83C: .word 0x04000130
+_020CD840: .word 0x027FFFA8
+
+ arm_func_start OS_Halt
+OS_Halt: ; 0x020CD844
+ mov r0, #0x0
+ mcr p15, 0x0, r0, c7, c0, 0x4
+ bx lr
+
+ arm_func_start OS_Terminate
+OS_Terminate: ; 0x020CD850
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+_020CD858:
+ bl OS_DisableInterrupts
+ bl OS_Halt
+ b _020CD858
+
+ arm_func_start MI_SetWramBank
+MI_SetWramBank:
+ ldr r1, _020CD870 ; =0x04000247
+ strb r0, [r1, #0x0]
+ bx lr
+ .balign 4
+_020CD870: .word 0x04000247
+
+ arm_func_start MIi_CheckDma0SourceAddress
+MIi_CheckDma0SourceAddress:
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ cmp r3, #0x0
+ and r0, r1, #0xff000000
+ beq _020CD8A4
+ cmp r3, #0x800000
+ subeq r1, r1, r2
+ b _020CD8A8
+_020CD8A4:
+ add r1, r1, r2
+_020CD8A8:
+ cmp r0, #0x4000000
+ beq _020CD8D4
+ cmp r0, #0x8000000
+ bhs _020CD8D4
+ and r0, r1, #0xff000000
+ cmp r0, #0x4000000
+ beq _020CD8D4
+ cmp r0, #0x8000000
+ addcc sp, sp, #0x4
+ ldmccia sp!, {lr}
+ bxcc lr
+_020CD8D4:
+ bl OS_Terminate
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start MIi_CheckAnotherAutoDMA
+MIi_CheckAnotherAutoDMA: ; 0x020CD8E4
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ ldr r4, _020CD994 ; =0x040000B8
+ mov r7, r0
+ mov r6, r1
+ mov r5, #0x0
+_020CD8FC:
+ cmp r5, r7
+ beq _020CD978
+ ldr r1, [r4, #0x0]
+ ands r0, r1, #0x80000000
+ beq _020CD978
+ and r0, r1, #0x38000000
+ cmp r0, r6
+ beq _020CD978
+ cmp r0, #0x8000000
+ bne _020CD92C
+ cmp r6, #0x10000000
+ beq _020CD978
+_020CD92C:
+ cmp r0, #0x10000000
+ bne _020CD93C
+ cmp r6, #0x8000000
+ beq _020CD978
+_020CD93C:
+ cmp r0, #0x18000000
+ beq _020CD974
+ cmp r0, #0x20000000
+ beq _020CD974
+ cmp r0, #0x28000000
+ beq _020CD974
+ cmp r0, #0x30000000
+ beq _020CD974
+ cmp r0, #0x38000000
+ beq _020CD974
+ cmp r0, #0x8000000
+ beq _020CD974
+ cmp r0, #0x10000000
+ bne _020CD978
+_020CD974:
+ bl OS_Terminate
+_020CD978:
+ add r5, r5, #0x1
+ cmp r5, #0x3
+ add r4, r4, #0xc
+ blt _020CD8FC
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020CD994: .word 0x040000B8
+
+ arm_func_start MI_StopDma
+MI_StopDma: ; 0x020CD998
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl OS_DisableInterrupts
+ mov r1, #0x6
+ mul r1, r4, r1
+ add r1, r1, #0x5
+ mov r1, r1, lsl #0x1
+ add r1, r1, #0x4000000
+ ldrh r2, [r1, #0xb0]
+ cmp r4, #0x0
+ bic r2, r2, #0x3a00
+ strh r2, [r1, #0xb0]
+ ldrh r2, [r1, #0xb0]
+ bic r2, r2, #0x8000
+ strh r2, [r1, #0xb0]
+ ldrh r2, [r1, #0xb0]
+ ldrh r1, [r1, #0xb0]
+ bne _020CDA08
+ mov r1, #0xc
+ mul r12, r4, r1
+ ldr r1, _020CDA14 ; =0x040000B0
+ add r2, r12, #0x4000000
+ mov r3, #0x0
+ str r3, [r2, #0xb0]
+ add r2, r12, r1
+ ldr r1, _020CDA18 ; =0x81400001
+ str r3, [r2, #0x4]
+ str r1, [r2, #0x8]
+_020CDA08:
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CDA14: .word 0x040000B0
+_020CDA18: .word 0x81400001
+
+ arm_func_start MI_WaitDma
+MI_WaitDma:
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl OS_DisableInterrupts
+ mov r1, #0x3
+ mul r2, r4, r1
+ ldr r1, _020CDA84 ; =0x040000B0
+ add r2, r2, #0x2
+ add r2, r1, r2, lsl #0x2
+_020CDA3C:
+ ldr r1, [r2, #0x0]
+ ands r1, r1, #0x80000000
+ bne _020CDA3C
+ cmp r4, #0x0
+ bne _020CDA78
+ mov r1, #0xc
+ mul r12, r4, r1
+ ldr r1, _020CDA84 ; =0x040000B0
+ add r2, r12, #0x4000000
+ mov r3, #0x0
+ str r3, [r2, #0xb0]
+ add r2, r12, r1
+ ldr r1, _020CDA88 ; =0x81400001
+ str r3, [r2, #0x4]
+ str r1, [r2, #0x8]
+_020CDA78:
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CDA84: .word 0x040000B0
+_020CDA88: .word 0x81400001
+
+ arm_func_start MI_DmaCopy32Async
+MI_DmaCopy32Async: ; 0x020CDA8C
+ stmdb sp!, {r4-r8,lr}
+ mov r5, r3
+ mov r6, r2
+ mov r2, r5
+ mov r3, #0x0
+ mov r8, r0
+ mov r7, r1
+ ldr r4, [sp, #0x18]
+ bl MIi_CheckDma0SourceAddress
+_020CDAB0:
+ cmp r5, #0x0
+ bne _020CDAD4
+ cmp r4, #0x0
+ ldmeqia sp!, {r4-r8, lr}
+ bxeq lr
+ ldr r0, [sp, #0x1C]
+ blx r4
+ ldmia sp!, {r4-r8, lr}
+ bx lr
+_020CDAD4:
+ mov r0, r8
+ bl MI_WaitDma
+ cmp r4, #0x0
+ beq _020CDB14
+ ldr r2, [sp, #0x1C]
+ mov r0, r8
+ mov r1, r4
+ bl OSi_EnterDmaCallback
+ mov r3, r5, lsr #0x2
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ orr r3, r3, #0xc4000000
+ bl FUN_01FF85F0
+ ldmia sp!, {r4-r8, lr}
+ bx lr
+_020CDB14:
+ mov r3, r5, lsr #0x2
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ orr r3, r3, #0x84000000
+ bl FUN_01FF85F0
+ ldmia sp!, {r4-r8, lr}
+ bx lr
+
+ arm_func_start MI_DmaFill32Async
+MI_DmaFill32Async: ; 0x020CDB34
+ stmdb sp!, {r4-r8,lr}
+ movs r4, r3
+ mov r7, r0
+ mov r6, r1
+ mov r5, r2
+ ldr r8, [sp, #0x18]
+ bne _020CDB6C
+ cmp r8, #0x0
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ ldr r0, [sp, #0x1c]
+ blx r8
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CDB6C:
+ bl MI_WaitDma
+_020CDB70:
+ cmp r8, #0x0
+ beq _020CDBC8
+ ldr r2, [sp, #0x1C]
+ mov r0, r7
+ mov r1, r8
+ bl OSi_EnterDmaCallback
+ bl OS_DisableInterrupts
+ mov r3, r4, lsr #2
+ ldr r1, _20CDC08
+ mov r2, r7, lsl #2
+ add r2, r2, #0x4000000
+ str r5, [r2, #0xE0]
+ mov r4, r0
+ add r1, r1, r7, lsl #0x2
+ mov r0, r7
+ mov r2, r6
+ orr r3, r3, #0xc5000000
+ bl FUN_01FF8544
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CDBC8:
+ bl OS_DisableInterrupts
+ ldr r1, _20CDC08
+ mov r2, r7, lsl #0x2
+ mov r3, r4, lsr #0x2
+ mov r4, r0
+ add ip, r2, #0x4000000
+ mov r0, r7
+ mov r2, r6
+ add r1, r1, r7, lsl #0x2
+ orr r3, r3, #0x85000000
+ str r5, [ip, #0xE0]
+ bl FUN_01FF8544
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_20CDC08: .word 0x040000E0
+
+ arm_func_start MI_DmaCopy16
+MI_DmaCopy16: ; 0x020CDC0C
+ stmdb sp!, {r4-r8,lr}
+ movs r5, r3
+ mov r8, r0
+ mov r7, r1
+ mov r6, r2
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r2, r5
+ mov r3, #0x0
+ bl MIi_CheckDma0SourceAddress
+ mov r0, #0x3
+ mul r1, r8, r0
+ ldr r0, _020CDC80 ; =0x040000B0
+ add r1, r1, #0x2
+ add r4, r0, r1, lsl #0x2
+_020CDC48:
+ ldr r0, [r4, #0x0]
+ ands r0, r0, #0x80000000
+ bne _020CDC48
+ mov r3, r5, lsr #0x1
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ orr r3, r3, #0x80000000
+ bl FUN_01FF857C
+_020CDC6C:
+ ldr r0, [r4]
+ ands r0, r0, #0x80000000
+ bne _020CDC6C
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CDC80: .word 0x040000B0
+
+ arm_func_start MI_DmaCopy32
+MI_DmaCopy32: ; 0x020CDC84
+ stmdb sp!, {r4-r8,lr}
+ mov r5, r3
+ mov r6, r2
+ mov r2, r5
+ mov r3, #0x0
+ mov r8, r0
+ mov r7, r1
+ bl MIi_CheckDma0SourceAddress
+_020CDCA4:
+ cmp r5, #0x0
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r0, #0x3
+ mul r1, r8, r0
+ ldr r0, _020CDCFC
+ add r1, r1, #0x2
+ add r4, r0, r1, lsl #0x2
+_020CDCC4:
+ ldr r0, [r4]
+ ands r0, r0, #0x80000000
+ bne _020CDCC4
+ mov r3, r5, lsr #0x2
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ orr r3, r3, #0x84000000
+ bl FUN_01FF857C
+_020CDCE8:
+ ldr r0, [r4]
+ ands r0, r0, #0x80000000
+ bne _020CDCE8
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CDCFC: .word 0x040000B0
+
+ arm_func_start MI_DmaFill32
+MI_DmaFill32: ; 0x020CDD00
+ stmdb sp!, {r4-r8,lr}
+ movs r4, r3
+ mov r8, r0
+ mov r7, r1
+ mov r6, r2
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r0, #0x3
+ mul r1, r8, r0
+ ldr r0, _020CDD88 ; =0x040000B0
+ add r1, r1, #0x2
+ add r5, r0, r1, lsl #0x2
+_020CDD30:
+ ldr r0, [r5, #0x0]
+ ands r0, r0, #0x80000000
+ bne _020CDD30
+ bl OS_DisableInterrupts
+ ldr r1, _020CDD8C ; =0x040000E0
+ mov r2, r8, lsl #0x2
+ mov r3, r4, lsr #0x2
+ mov r4, r0
+ add r12, r2, #0x4000000
+ mov r0, r8
+ mov r2, r7
+ add r1, r1, r8, lsl #0x2
+ orr r3, r3, #0x85000000
+ str r6, [r12, #0xe0]
+ bl FUN_01FF84E4
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020CDD74:
+ ldr r0, [r5]
+ ands r0, r0, #0x80000000
+ bne _020CDD74
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020CDD88: .word 0x040000B0
+_020CDD8C: .word 0x040000E0
+
+ arm_func_start MI_HBlankDmaCopy16
+MI_HBlankDmaCopy16: ; 0x020CDD90
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r1
+ mov r7, r0
+ mov r4, r3
+ mov r1, #0x10000000
+ mov r5, r2
+ bl MIi_CheckAnotherAutoDMA
+ mov r0, r7
+ mov r1, r6
+ mov r2, r4
+ mov r3, #0x0
+ bl MIi_CheckDma0SourceAddress
+_020CDDC4:
+ cmp r4, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r7, lr}
+ bxeq lr
+ mov r0, r7
+ bl MI_WaitDma
+ ldr r3, _020CDE00
+ mov r0, r7
+ mov r1, r6
+ mov r2, r5
+ orr r3, r3, r4, lsr #0x1
+ bl FUN_01FF85F0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CDE00: .word 0x92600000
+
+ arm_func_start MI_HBlankDmaCopy32
+MI_HBlankDmaCopy32: ; 0x020CDE04
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r1
+ mov r7, r0
+ mov r4, r3
+ mov r1, #0x10000000
+ mov r5, r2
+ bl MIi_CheckAnotherAutoDMA
+ mov r0, r7
+ mov r1, r6
+ mov r2, r4
+ mov r3, #0x0
+ bl MIi_CheckDma0SourceAddress
+_020CDE38:
+ cmp r4, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r7,lr}
+ bxeq lr
+ mov r0, r7
+ bl MI_WaitDma
+ ldr r3, _020CDE74
+ mov r0, r7
+ mov r1, r6
+ mov r2, r5
+ orr r3, r3, r4, lsr #0x2
+ bl FUN_01FF85F0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020CDE74: .word 0x96600000
+
+ arm_func_start MIi_DMAFastCallback
+MIi_DMAFastCallback: ; 0x020CDE78
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CDEB4 ; =0x021D37FC
+ mov r2, #0x0
+ ldr r1, [r0, #0x10]
+ str r2, [r0, #0x0]
+ cmp r1, #0x0
+ addeq sp, sp, #0x4
+ ldr r0, [r0, #0x14]
+ ldmeqia sp!, {lr}
+ bxeq lr
+ blx r1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CDEB4: .word 0x021D37FC
+
+ arm_func_start MI_SendGXCommandAsyncFast
+MI_SendGXCommandAsyncFast: ; 0x020CDEB8
+ stmdb sp!, {r4-r6,lr}
+ movs r4, r2
+ mov r6, r0
+ mov r5, r1
+ bne _020CDEE8
+ cmp r3, #0x0
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ ldr r0, [sp, #0x10]
+ blx r3
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020CDEE8:
+ ldr r2, _020CDF6C ; =0x021D37FC
+ ldr r0, [r2, #0x0]
+ cmp r0, #0x0
+ bne _020CDEE8
+ ldr r12, [sp, #0x10]
+ mov lr, #0x1
+ mov r0, r6
+ mov r1, #0x38000000
+ str lr, [r2, #0x0]
+ str r6, [r2, #0x4]
+ str r3, [r2, #0x10]
+ str r12, [r2, #0x14]
+ bl MIi_CheckAnotherAutoDMA
+ mov r0, r6
+ mov r1, r5
+ mov r2, r4
+ mov r3, #0x0
+ bl MIi_CheckDma0SourceAddress
+ mov r0, r6
+ bl MI_WaitDma
+ mov r0, r6
+ ldr r1, _020CDF70 ; =MIi_DMAFastCallback
+ mov r2, #0x0
+ bl OSi_EnterDmaCallback
+ mov r0, r6
+ mov r1, r5
+ ldr r2, _020CDF74 ; =0x04000400
+ mov r3, #0x3c00000
+ rsb r3, r3, #0x0
+ orr r3, r3, r4, lsr #0x2
+ bl FUN_01FF85F0
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CDF6C: .word 0x021D37FC
+_020CDF70: .word MIi_DMAFastCallback
+_020CDF74: .word 0x04000400
+
+ arm_func_start MIi_DMACallback
+MIi_DMACallback: ; 0x020CDF78
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, #0x200000
+ bl OS_DisableIrqMask
+ ldr r2, _020CDFE4 ; =0x04000600
+ ldr r0, _020CDFE8 ; =0x021D37FC
+ ldr r1, [r2, #0x0]
+ ldr r3, [r0, #0x18]
+ bic r1, r1, #0xc0000000
+ orr r1, r1, r3, lsl #0x1e
+ str r1, [r2, #0x0]
+ ldr r1, [r0, #0x1c]
+ mov r0, #0x200000
+ bl OS_SetIrqFunction
+ ldr r0, _020CDFE8 ; =0x021D37FC
+ mov r2, #0x0
+ ldr r1, [r0, #0x10]
+ str r2, [r0, #0x0]
+ cmp r1, #0x0
+ addeq sp, sp, #0x4
+ ldr r0, [r0, #0x14]
+ ldmeqia sp!, {lr}
+ bxeq lr
+ blx r1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CDFE4: .word 0x04000600
+_020CDFE8: .word 0x021D37FC
+
+ arm_func_start MIi_FIFOCallback
+MIi_FIFOCallback: ; 0x020CDFEC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CE0A4 ; =0x021D37FC
+ ldr r4, [r0, #0xc]
+ cmp r4, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r0, _020CE0A4 ; =0x021D37FC
+ cmp r4, #0x1d8
+ ldr r5, [r0, #0x8]
+ movcs r4, #0x1d8
+ ldr r2, [r0, #0xc]
+ add r1, r5, r4
+ subs r2, r2, r4
+ str r2, [r0, #0xc]
+ str r1, [r0, #0x8]
+ bne _020CE078
+ ldr r0, [r0, #0x4]
+ ldr r1, _020CE0A8 ; =MIi_DMACallback
+ mov r2, #0x0
+ bl OSi_EnterDmaCallback
+ mov r0, #0x3bc00000
+ rsb r3, r0, #0x0
+ ldr r1, _020CE0A4 ; =0x021D37FC
+ ldr r2, _020CE0AC ; =0x04000400
+ ldr r0, [r1, #0x4]
+ mov r1, r5
+ orr r3, r3, r4, lsr #0x2
+ bl FUN_01FF85F0
+ mov r0, #0x200000
+ bl OS_ResetRequestIrqMask
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CE078:
+ ldr r3, _020CE0B0 ; =0x84400000
+ ldr r0, [r0, #0x4]
+ ldr r2, _020CE0AC ; =0x04000400
+ mov r1, r5
+ orr r3, r3, r4, lsr #0x2
+ bl FUN_01FF85F0
+ mov r0, #0x200000
+ bl OS_ResetRequestIrqMask
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CE0A4: .word 0x021D37FC
+_020CE0A8: .word MIi_DMACallback
+_020CE0AC: .word 0x04000400
+_020CE0B0: .word 0x84400000
+
+ arm_func_start MI_SendGXCommandAsync
+MI_SendGXCommandAsync: ; 0x020CE0B4
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r4, r0
+ cmp r2, #0x0
+ bne _020CE0EC
+ cmp r3, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r0, [sp, #0x10]
+ blx r3
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CE0EC:
+ ldr r0, _020CE1BC ; =0x021D37FC
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x0
+ bne _020CE0EC
+ ldr r5, _020CE1C0 ; =0x04000600
+_020CE100:
+ ldr r0, [r5, #0x0]
+ and r0, r0, #0x7000000
+ mov r0, r0, lsr #0x18
+ ands r0, r0, #0x2
+ beq _020CE100
+ ldr ip, _020CE1BC ; =0x021D37FC
+ ldr lr, [sp, #0x10]
+ str r3, [r12, #0x10]
+ mov r5, #0x1
+ mov r0, r4
+ mov r3, #0x0
+ str r5, [r12, #0x0]
+ str r4, [r12, #0x4]
+ str r1, [r12, #0x8]
+ str r2, [r12, #0xc]
+ str lr, [r12, #0x14]
+ bl MIi_CheckDma0SourceAddress
+ mov r0, r4
+ bl MI_WaitDma
+ bl OS_DisableInterrupts
+ ldr r1, _020CE1C0 ; =0x04000600
+ mov r4, r0
+ ldr r0, [r1, #0x0]
+ ldr r1, _020CE1BC ; =0x021D37FC
+ and r0, r0, #0xc0000000
+ mov r2, r0, lsr #0x1e
+ mov r0, #0x200000
+ str r2, [r1, #0x18]
+ bl OS_GetIrqFunction
+ ldr r1, _020CE1BC ; =0x021D37FC
+ ldr r2, _020CE1C0 ; =0x04000600
+ str r0, [r1, #0x1c]
+ ldr r0, [r2, #0x0]
+ ldr r1, _020CE1C4 ; =MIi_FIFOCallback
+ bic r0, r0, #0xc0000000
+ orr r3, r0, #0x40000000
+ mov r0, #0x200000
+ str r3, [r2, #0x0]
+ bl OS_SetIrqFunction
+ mov r0, #0x200000
+ bl OS_EnableIrqMask
+ bl MIi_FIFOCallback
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CE1BC: .word 0x021D37FC
+_020CE1C0: .word 0x04000600
+_020CE1C4: .word MIi_FIFOCallback
+
+ arm_func_start MIi_CpuClear16
+MIi_CpuClear16: ; 0x020CE1C8
+ mov r3, #0x0
+_020CE1CC:
+ cmp r3, r2
+ strlth r0, [r1, r3]
+ addlt r3, r3, #0x2
+ blt _020CE1CC
+ bx lr
+
+ arm_func_start MIi_CpuCopy16
+MIi_CpuCopy16: ; 0x020CE1E0
+ mov r12, #0x0
+_020CE1E4:
+ cmp r12, r2
+ ldrlth r3, [r0, r12]
+ strlth r3, [r1, r12]
+ addlt r12, r12, #0x2
+ blt _020CE1E4
+ bx lr
+
+ arm_func_start MIi_CpuClear32
+MIi_CpuClear32: ; 0x020CE1FC
+ add r12, r1, r2
+_020CE200:
+ cmp r1, r12
+ stmltia r1!, {r0}
+ blt _020CE200
+ bx lr
+
+ arm_func_start MIi_CpuCopy32
+MIi_CpuCopy32: ; 0x020CE210
+ add r12, r1, r2
+_020CE214:
+ cmp r1, r12
+ ldmltia r0!, {r2}
+ stmltia r1!, {r2}
+ blt _020CE214
+ bx lr
+
+ arm_func_start MIi_CpuSend32
+MIi_CpuSend32: ; 0x020CE228
+ add r12, r0, r2
+_020CE22C:
+ cmp r0, r12
+ ldmltia r0!, {r2}
+ strlt r2, [r1, #0x0]
+ blt _020CE22C
+ bx lr
+
+ arm_func_start MIi_CpuClearFast
+MIi_CpuClearFast: ; 0x020CE240
+ stmdb sp!, {r4-r9}
+ add r9, r1, r2
+ mov r12, r2, lsr #0x5
+ add r12, r1, r12, lsl #0x5
+ mov r2, r0
+ mov r3, r2
+ mov r4, r2
+ mov r5, r2
+ mov r6, r2
+ mov r7, r2
+ mov r8, r2
+_020CE26C:
+ cmp r1, r12
+ stmltia r1!, {r0,r2-r8}
+ blt _020CE26C
+_020CE278:
+ cmp r1, r9
+ stmltia r1!, {r0}
+ blt _020CE278
+ ldmia sp!, {r4-r9}
+ bx lr
+
+ arm_func_start MIi_CpuCopyFast
+MIi_CpuCopyFast: ; 0x020CE28C
+ stmdb sp!, {r4-r10}
+ add r10, r1, r2
+ mov r12, r2, lsr #0x5
+ add r12, r1, r12, lsl #0x5
+_020CE29C:
+ cmp r1, r12
+ ldmltia r0!, {r2-r9}
+ stmltia r1!, {r2-r9}
+ blt _020CE29C
+_020CE2AC:
+ cmp r1, r10
+ ldmltia r0!, {r2}
+ stmltia r1!, {r2}
+ blt _020CE2AC
+ ldmia sp!, {r4-r10}
+ bx lr
+
+ arm_func_start FUN_020CE2C4
+FUN_020CE2C4:
+ ldmia r0!, {r2, r3, ip}
+ stmia r1!, {r2, r3, ip}
+ ldmia r0!, {r2, r3, ip}
+ stmia r1!, {r2, r3, ip}
+ ldmia r0!, {r2, r3}
+ stmia r1!, {r2, r3}
+ bx lr
+
+ arm_func_start MI_Copy36B
+MI_Copy36B: ; 0x020CE2E0
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ bx lr
+
+ arm_func_start MI_Copy48B
+MI_Copy48B: ; 0x020CE2FC
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ bx lr
+
+ arm_func_start MI_Copy64B
+MI_Copy64B: ; 0x020CE320
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0!, {r2-r3,r12}
+ stmia r1!, {r2-r3,r12}
+ ldmia r0, {r0,r2-r3,r12}
+ stmia r1!, {r0,r2-r3,r12}
+ bx lr
+
+ arm_func_start MI_CpuFill8
+MI_CpuFill8: ; 0x020CE34C
+ cmp r2, #0x0
+ bxeq lr
+ tst r0, #0x1
+ beq _020CE378
+ ldrh r12, [r0, #-0x1]
+ and r12, r12, #0xff
+ orr r3, r12, r1, lsl #0x8
+ strh r3, [r0, #-0x1]
+ add r0, r0, #0x1
+ subs r2, r2, #0x1
+ bxeq lr
+_020CE378:
+ cmp r2, #0x2
+ blo _020CE3C0
+ orr r1, r1, r1, lsl #0x8
+ tst r0, #0x2
+ beq _020CE398
+ strh r1, [r0], #0x2
+ subs r2, r2, #0x2
+ bxeq lr
+_020CE398:
+ orr r1, r1, r1, lsl #0x10
+ bics r3, r2, #0x3
+ beq _020CE3B8
+ sub r2, r2, r3
+ add r12, r3, r0
+_020CE3AC:
+ str r1, [r0], #0x4
+ cmp r0, r12
+ blo _020CE3AC
+_020CE3B8:
+ tst r2, #0x2
+ strneh r1, [r0], #0x2
+_020CE3C0:
+ tst r2, #0x1
+ bxeq lr
+ ldrh r3, [r0, #0x0]
+ and r3, r3, #0xff00
+ and r1, r1, #0xff
+ orr r1, r1, r3
+ strh r1, [r0, #0x0]
+ bx lr
+
+ arm_func_start MI_CpuCopy8
+MI_CpuCopy8:
+ cmp r2, #0x0
+ bxeq lr
+ tst r1, #0x1
+ beq _020CE420
+ ldrh r12, [r1, #-0x1]
+ and r12, r12, #0xff
+ tst r0, #0x1
+ ldrneh r3, [r0, #-0x1]
+ movne r3, r3, lsr #0x8
+ ldreqh r3, [r0, #0x0]
+ orr r3, r12, r3, lsl #0x8
+ strh r3, [r1, #-0x1]
+ add r0, r0, #0x1
+ add r1, r1, #0x1
+ subs r2, r2, #0x1
+ bxeq lr
+_020CE420:
+ eor r12, r1, r0
+ tst r12, #0x1
+ beq _020CE474
+ bic r0, r0, #0x1
+ ldrh r12, [r0], #0x2
+ mov r3, r12, lsr #0x8
+ subs r2, r2, #0x2
+ blo _020CE458
+_020CE440:
+ ldrh r12, [r0], #0x2
+ orr r12, r3, r12, lsl #0x8
+ strh r12, [r1], #0x2
+ mov r3, r12, lsr #0x10
+ subs r2, r2, #0x2
+ bhs _020CE440
+_020CE458:
+ tst r2, #0x1
+ bxeq lr
+ ldrh r12, [r1, #0x0]
+ and r12, r12, #0xff00
+ orr r12, r12, r3
+ strh r12, [r1, #0x0]
+ bx lr
+_020CE474:
+ tst r12, #0x2
+ beq _020CE4A0
+ bics r3, r2, #0x1
+ beq _020CE4EC
+ sub r2, r2, r3
+ add r12, r3, r1
+_020CE48C:
+ ldrh r3, [r0], #0x2
+ strh r3, [r1], #0x2
+ cmp r1, r12
+ blo _020CE48C
+ b _020CE4EC
+_020CE4A0:
+ cmp r2, #0x2
+ blo _020CE4EC
+ tst r1, #0x2
+ beq _020CE4C0
+ ldrh r3, [r0], #0x2
+ strh r3, [r1], #0x2
+ subs r2, r2, #0x2
+ bxeq lr
+_020CE4C0:
+ bics r3, r2, #0x3
+ beq _020CE4E0
+ sub r2, r2, r3
+ add r12, r3, r1
+_020CE4D0:
+ ldr r3, [r0], #0x4
+ str r3, [r1], #0x4
+ cmp r1, r12
+ blo _020CE4D0
+_020CE4E0:
+ tst r2, #0x2
+ ldrneh r3, [r0], #0x2
+ strneh r3, [r1], #0x2
+_020CE4EC:
+ tst r2, #0x1
+ bxeq lr
+ ldrh r2, [r1, #0x0]
+ ldrh r0, [r0, #0x0]
+ and r2, r2, #0xff00
+ and r0, r0, #0xff
+ orr r0, r2, r0
+ strh r0, [r1, #0x0]
+ bx lr
+
+ thumb_func_start MI_Zero36B
+MI_Zero36B: ; 0x020CE510
+ mov r1, #0x0
+ mov r2, #0x0
+ mov r3, #0x0
+ stmia r0!, {r1-r3}
+ stmia r0!, {r1-r3}
+ stmia r0!, {r1-r3}
+ bx lr
+
+ arm_func_start MI_SwapWord
+MI_SwapWord: ; 0x020CE520
+ swp r0, r0, [r1]
+ bx lr
+
+ arm_func_start MI_UncompressLZ8
+MI_UncompressLZ8: ; 0x020CE528
+ stmdb sp!, {r4-r6,lr}
+ ldr r5, [r0], #0x4
+ mov r2, r5, lsr #0x8
+_020CE534:
+ cmp r2, #0x0
+ ble _020CE5B4
+ ldrb lr, [r0], #0x1
+ mov r4, #0x8
+_020CE544:
+ subs r4, r4, #0x1
+ blt _020CE534
+ tst lr, #0x80
+ bne _020CE568
+ ldrb r6, [r0], #0x1
+ .word 0xE1416096
+ add r1, r1, #0x1
+ sub r2, r2, #0x1
+ b _020CE5A4
+_020CE568:
+ ldrb r5, [r0, #0x0]
+ mov r6, #0x3
+ add r3, r6, r5, asr #0x4
+ ldrb r6, [r0], #0x1
+ and r5, r6, #0xf
+ mov r12, r5, lsl #0x8
+ ldrb r6, [r0], #0x1
+ orr r5, r6, r12
+ add r12, r5, #0x1
+ sub r2, r2, r3
+_020CE590:
+ ldrb r5, [r1, -r12]
+ .word 0xE1415095
+ add r1, r1, #0x1
+ subs r3, r3, #0x1
+ bgt _020CE590
+_020CE5A4:
+ cmp r2, #0x0
+ movgt lr, lr, lsl #0x1
+ bgt _020CE544
+ b _020CE534
+_020CE5B4:
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start MIi_CardDmaCopy32
+MIi_CardDmaCopy32: ; 0x020CE5BC
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r5, r1
+ mov r6, r0
+ mov r7, r3
+ mvn r1, #0x0
+ mov r4, r2
+ bl MIi_CheckAnotherAutoDMA
+ mov r0, r6
+ mov r1, r5
+ mov r2, r7
+ mov r3, #0x1000000
+ bl MIi_CheckDma0SourceAddress
+_020CE5F0:
+ cmp r7, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r7, lr}
+ bxeq lr
+ mov r0, #0x3
+ mul r1, r6, r0
+ ldr r0, _020CE640
+ add r1, r1, #0x2
+ add r1, r0, r1, lsl #0x2
+_020CE614:
+ ldr r0, [r1]
+ ands r0, r0, #0x80000000
+ bne _020CE614
+ ldr r3, _020CE644
+ mov r0, r6
+ mov r1, r5
+ mov r2, r4
+ bl FUN_01FF85F0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7, lr}
+ bx lr
+_020CE640: .word 0x040000B0
+_020CE644: .word 0xAf000001
+
+ arm_func_start MI_Init
+MI_Init: ; 0x020CE648
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, #0x3
+ bl MI_SetWramBank
+ mov r0, #0x0
+ bl MI_StopDma
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start PushCommand_impl
+PushCommand_impl: ; 0x020CE66C
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ mov r0, #0x1
+ mov r6, r1
+ mov r5, r2
+ mov r4, r3
+ bl SND_AllocCommand
+_020CE68C:
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r7, lr}
+ bxeq lr
+ str r7, [r0, #0x4]
+ str r6, [r0, #0x8]
+ str r5, [r0, #0xc]
+ ldr r1, [sp, #0x18]
+ str r4, [r0, #0x10]
+ str r1, [r0, #0x14]
+ bl SND_PushCommand
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7, lr}
+ bx lr
+
+ arm_func_start SNDi_SetTrackParam
+SNDi_SetTrackParam: ; 0x020CE6C4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r12, [sp, #0x8]
+ mov lr, r2
+ str r3, [sp, #0x0]
+ mov r2, r1
+ orr r1, r0, r12, lsl #0x18
+ mov r3, lr
+ mov r0, #0x7
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FUN_020CE6F8
+FUN_020CE6F8: ; 0x020CE6F8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r12, r2
+ str r3, [sp, #0x0]
+ mov r1, r0
+ mov r2, lr
+ mov r3, r12
+ mov r0, #0x6
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_ResetMasterPan
+SND_ResetMasterPan: ; 0x020CE72C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, #0x0
+ mov r3, r2
+ mov r0, #0x18
+ mvn r1, #0x0
+ str r2, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetMasterPan
+SND_SetMasterPan: ; 0x020CE758
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, #0x0
+ mov r1, r0
+ mov r3, r2
+ mov r0, #0x18
+ str r2, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetOutputSelector
+SND_SetOutputSelector: ; 0x020CE784
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r12, r2
+ str r3, [sp, #0x0]
+ mov r1, r0
+ mov r2, lr
+ mov r3, r12
+ mov r0, #0x19
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_InvalidateWaveData
+SND_InvalidateWaveData: ; 0x020CE7B8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x20
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_InvalidateBankData
+SND_InvalidateBankData: ; 0x020CE7E4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x1f
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_InvalidateSeqData
+SND_InvalidateSeqData: ; 0x020CE810
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x1e
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetupChannelPcm
+SND_SetupChannelPcm: ; 0x020CE83C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r12, [sp, #0x18]
+ mov r3, r3, lsl #0x1a
+ orr r4, r3, r1, lsl #0x18
+ ldr r5, [sp, #0x24]
+ mov r3, r12, lsl #0x18
+ ldr r1, [sp, #0x1c]
+ ldr r12, [sp, #0x10]
+ orr r4, r4, r5, lsl #0x10
+ orr r4, r12, r4
+ ldr lr, [sp, #0x20]
+ orr r3, r3, r1, lsl #0x16
+ ldr r12, [sp, #0x14]
+ orr r1, r0, lr, lsl #0x10
+ orr r3, r12, r3
+ mov r0, #0xe
+ str r4, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start SND_SetChannelPan
+SND_SetChannelPan: ; 0x020CE894
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x15
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetChannelVolume
+SND_SetChannelVolume: ; 0x020CE8C0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r3, r2
+ mov r12, #0x0
+ mov r1, r0
+ mov r2, lr
+ mov r0, #0x14
+ str r12, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetChannelTimer
+SND_SetChannelTimer: ; 0x020CE8F4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x13
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_UnlockChannel
+SND_UnlockChannel: ; 0x020CE920
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x1b
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_LockChannel
+SND_LockChannel: ; 0x020CE94C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x1a
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetupAlarm
+SND_SetupAlarm: ; 0x020CE978
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x8
+ mov r4, r2
+ mov r5, r1
+ ldr r2, [sp, #0x18]
+ mov r6, r0
+ mov r1, r3
+ bl SNDi_SetAlarmHandler
+_020CE998:
+ str r0, [sp]
+ mov r1, r6
+ mov r2, r5
+ mov r3, r4
+ mov r0, #0x12
+ bl PushCommand_impl
+ add sp, sp, #0x8
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+
+ arm_func_start SND_SetupCapture
+SND_SetupCapture: ; 0x020CE9BC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, r0, lsl #0x1f
+ orr r0, r0, r1, lsl #0x1e
+ ldr r12, [sp, #0x8]
+ mov r1, r2
+ orr r0, r0, r12, lsl #0x1d
+ ldr r2, [sp, #0xc]
+ mov lr, #0x0
+ orr r0, r0, r2, lsl #0x1c
+ ldr r12, [sp, #0x10]
+ mov r2, r3
+ orr r3, r0, r12, lsl #0x1b
+ mov r0, #0x11
+ str lr, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_StopTimer
+SND_StopTimer: ; 0x020CEA08
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4
+ mov r7, r2
+ mov r9, r0
+ mov r8, r1
+ mov r6, r3
+ mov r4, r7
+ mov r5, #0x0
+ b _020CEA44
+_020CEA2C:
+ ands r0, r4, #0x1
+ beq _020CEA3C
+ mov r0, r5
+ bl SNDi_IncAlarmId
+_020CEA3C:
+ add r5, r5, #0x1
+ mov r4, r4, lsr #0x1
+_020CEA44:
+ cmp r5, #0x8
+ bge _020CEA54
+ cmp r4, #0x0
+ bne _020CEA2C
+_020CEA54:
+ mov r1, r9
+ mov r2, r8
+ mov r3, r7
+ mov r0, #0xd
+ str r6, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+
+ arm_func_start SND_StartTimer
+SND_StartTimer: ; 0x020CEA78
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r12, r2
+ str r3, [sp, #0x0]
+ mov r1, r0
+ mov r2, lr
+ mov r3, r12
+ mov r0, #0xc
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetTrackAllocatableChannel
+SND_SetTrackAllocatableChannel: ; 0x020CEAAC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r3, r2
+ mov r12, #0x0
+ mov r1, r0
+ mov r2, lr
+ mov r0, #0x9
+ str r12, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetTrackPan
+SND_SetTrackPan: ; 0x020CEAE0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r3, r2
+ mov r12, #0x1
+ mov r2, #0x9
+ str r12, [sp, #0x0]
+ bl SNDi_SetTrackParam
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetTrackPitch
+SND_SetTrackPitch: ; 0x020CEB08
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r3, r2
+ mov r12, #0x2
+ mov r2, #0xc
+ str r12, [sp, #0x0]
+ bl SNDi_SetTrackParam
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_SetPlayerChannelPriority
+SND_SetPlayerChannelPriority: ; 0x020CEB30
+ ldr ip, _020CEB44 ; =FUN_020CE6F8
+ mov r2, r1
+ mov r1, #0x4
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020CEB44: .word FUN_020CE6F8
+
+ arm_func_start SND_SetPlayerVolume
+SND_SetPlayerVolume: ; 0x020CEB48
+ ldr ip, _020CEB5C ; =FUN_020CE6F8
+ mov r2, r1
+ mov r1, #0x6
+ mov r3, #0x2
+ bx r12
+ .balign 4
+_020CEB5C: .word FUN_020CE6F8
+
+ arm_func_start SND_PauseSeq
+SND_PauseSeq: ; 0x020CEB60
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, r1
+ mov r3, #0x0
+ mov r1, r0
+ mov r0, #0x4
+ str r3, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_StartPreparedSeq
+SND_StartPreparedSeq: ; 0x020CEB8C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, #0x0
+ mov r1, r0
+ mov r3, r2
+ mov r0, #0x3
+ str r2, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_PrepareSeq
+SND_PrepareSeq: ; 0x020CEBB8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov lr, r1
+ mov r12, r2
+ str r3, [sp, #0x0]
+ mov r1, r0
+ mov r2, lr
+ mov r3, r12
+ mov r0, #0x2
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SND_StopSeq
+SND_StopSeq: ; 0x020CEBEC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r2, #0x0
+ mov r1, r0
+ mov r3, r2
+ mov r0, #0x1
+ str r2, [sp, #0x0]
+ bl PushCommand_impl
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start SNDi_UnlockMutex
+SNDi_UnlockMutex: ; 0x020CEC18
+ ldr ip, _020CEC24 ; =OS_UnlockMutex
+ ldr r0, _020CEC28 ; =0x021D3820
+ bx r12
+ .balign 4
+_020CEC24: .word OS_UnlockMutex
+_020CEC28: .word 0x021D3820
+
+ arm_func_start SNDi_LockMutex
+SNDi_LockMutex: ; 0x020CEC2C
+ ldr ip, _020CEC38 ; =OS_LockMutex
+ ldr r0, _020CEC3C ; =0x021D3820
+ bx r12
+ .balign 4
+_020CEC38: .word OS_LockMutex
+_020CEC3C: .word 0x021D3820
+
+ arm_func_start SND_Init
+SND_Init: ; 0x020CEC40
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020CEC84 ; =0x021D381C
+ ldr r0, [r1, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ ldr r0, _020CEC88 ; =0x021D3820
+ mov r2, #0x1
+ str r2, [r1, #0x0]
+ bl OS_InitMutex
+ bl SND_CommandInit
+ bl SND_AlarmInit
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CEC84: .word 0x021D381C
+_020CEC88: .word 0x021D3820
+
+ arm_func_start IsCommandAvailable
+IsCommandAvailable:
+ stmdb sp!, {r4,lr}
+ bl OS_IsRunOnEmulator
+_020CEC94:
+ cmp r0, #0x0
+ moveq r0, #0x1
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ bl OS_DisableInterrupts
+ ldr r1, _020CECD0
+ mov r2, #0x10
+ str r2, [r1]
+ ldr r4, [r1]
+ bl OS_RestoreInterrupts
+ cmp r4, #0x0
+ movne r0, #0x1
+ moveq r0, #0x0
+ ldmia sp!, {r4, lr}
+ bx lr
+_020CECD0: .word 0x04FFF200
+
+ arm_func_start AllocCommand
+AllocCommand: ; 0x020CECD4
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r1, _020CED24 ; =0x021D3838
+ ldr r4, [r1, #0x0]
+ cmp r4, #0x0
+ bne _020CECFC
+ bl OS_RestoreInterrupts
+_020CECF0:
+ mov r0, #0x0
+ ldmia sp!, {r4, lr}
+ bx lr
+_020CECFC:
+ ldr r2, [r4, #0x0]
+ str r2, [r1, #0x0]
+ cmp r2, #0x0
+ ldreq r1, _020CED28 ; =0x021D3848
+ moveq r2, #0x0
+ streq r2, [r1, #0x0]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CED24: .word 0x021D3838
+_020CED28: .word 0x021D3848
+
+ arm_func_start RequestCommandProc
+RequestCommandProc: ; 0x020CED2C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, #0x7
+ mov r4, #0x0
+_020CED3C:
+ mov r0, r5
+ mov r1, r4
+ mov r2, r4
+ bl PXI_SendWordByFifo
+_020CED4C:
+ cmp r0, #0
+ blt _020CED3C
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start InitPXI
+InitPXI: ; 0x020CED60
+ stmdb sp!, {r4-r6,lr}
+ ldr r1, _020CEDC8 ; =PxiFifoCallback
+ mov r0, #0x7
+ bl PXI_SetFifoRecvCallback
+ bl IsCommandAvailable
+_020CED74:
+ cmp r0, #0x0
+ ldmeqia sp!, {r4-r6, lr}
+ bxeq lr
+ mov r0, #0x7
+ mov r1, #0x1
+ bl PXI_IsCallbackReady
+ cmp r0, #0x0
+ ldmneia sp!, {r4-r6, lr}
+ bxne lr
+ mov r6, #0x64
+ mov r5, #0x7
+ mov r4, #0x1
+_020CEDA4:
+ mov r0, r6
+ bl OS_SpinWait
+ mov r0, r5
+ mov r1, r4
+ bl PXI_IsCallbackReady
+ cmp r0, #0x0
+ beq _020CEDA4
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+_020CEDC8: .word PxiFifoCallback
+
+ arm_func_start PxiFifoCallback
+PxiFifoCallback: ; 0x020CEDCC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r1
+ bl OS_DisableInterrupts
+ mov r4, r0
+ mov r0, r5
+ bl SNDi_CallAlarmHandler
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start SND_CountWaitingCommand
+SND_CountWaitingCommand: ; 0x020CEDFC
+ stmdb sp!, {r4,lr}
+ bl SND_CountFreeCommand
+ mov r4, r0
+ bl SND_CountReservedCommand
+ rsb r1, r4, #0x100
+ sub r0, r1, r0
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start SND_CountReservedCommand
+SND_CountReservedCommand: ; 0x020CEE1C
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r1, _020CEE58 ; =0x021D3840
+ mov r4, #0x0
+ ldr r1, [r1, #0x0]
+ cmp r1, #0x0
+ beq _020CEE48
+_020CEE38:
+ ldr r1, [r1, #0x0]
+ add r4, r4, #0x1
+ cmp r1, #0x0
+ bne _020CEE38
+_020CEE48:
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CEE58: .word 0x021D3840
+
+ arm_func_start SND_CountFreeCommand
+SND_CountFreeCommand: ; 0x020CEE5C
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r1, _020CEE98 ; =0x021D3838
+ mov r4, #0x0
+ ldr r1, [r1, #0x0]
+ cmp r1, #0x0
+ beq _020CEE88
+_020CEE78:
+ ldr r1, [r1, #0x0]
+ add r4, r4, #0x1
+ cmp r1, #0x0
+ bne _020CEE78
+_020CEE88:
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CEE98: .word 0x021D3838
+
+ arm_func_start SND_IsFinishedCommandTag
+SND_IsFinishedCommandTag:
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CEEEC ; =0x021D383C
+ ldr r1, [r1, #0x0]
+ cmp r4, r1
+ bls _020CEECC
+ sub r1, r4, r1
+ cmp r1, #0x80000000
+ movcc r4, #0x0
+ movcs r4, #0x1
+ b _020CEEDC
+_020CEECC:
+ sub r1, r1, r4
+ cmp r1, #0x80000000
+ movcc r4, #0x1
+ movcs r4, #0x0
+_020CEEDC:
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CEEEC: .word 0x021D383C
+
+ arm_func_start SND_GetCurrentCommandTag
+SND_GetCurrentCommandTag: ; 0x020CEEF0
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ ldr r1, _020CEF24 ; =0x021D3840
+ ldr r1, [r1, #0x0]
+ cmp r1, #0x0
+ ldreq r1, _020CEF28 ; =0x021D383C
+ ldreq r4, [r1, #0x0]
+ ldrne r1, _020CEF2C ; =0x021D3858
+ ldrne r4, [r1, #0x0]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CEF24: .word 0x021D3840
+_020CEF28: .word 0x021D383C
+_020CEF2C: .word 0x021D3858
+
+ arm_func_start SND_WaitForCommandProc
+SND_WaitForCommandProc: ; 0x020CEF30
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl SND_IsFinishedCommandTag
+_020CEF40:
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5, lr}
+ bxne lr
+ mov r4, #0x0
+_020CEF54:
+ mov r0, r4
+ bl SND_RecvCommandReply
+ cmp r0, #0x0
+ bne _020CEF54
+ mov r0, r5
+ bl SND_IsFinishedCommandTag
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5, lr}
+ bxne lr
+ bl RequestCommandProc
+ mov r0, r5
+ bl SND_IsFinishedCommandTag
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5, lr}
+ bxne lr
+ mov r4, #0x1
+_020CEF9C:
+ mov r0, r4
+ bl SND_RecvCommandReply
+ mov r0, r5
+ bl SND_IsFinishedCommandTag
+ cmp r0, #0x0
+ beq _020CEF9C
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+
+ arm_func_start SND_FlushCommand
+SND_FlushCommand: ; 0x020CEFC0
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020CF164 ; =0x021D3840
+ mov r4, r0
+ ldr r1, [r1, #0x0]
+ cmp r1, #0x0
+ bne _020CEFF8
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+_020CEFF8:
+ ldr r1, _020CF168 ; =0x021D3854
+ ldr r1, [r1, #0x0]
+ cmp r1, #0x8
+ blt _020CF03C
+ ands r1, r5, #0x1
+ bne _020CF024
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+_020CF024:
+ mov r0, #0x1
+ bl SND_RecvCommandReply
+ ldr r0, _020CF168 ; =0x021D3854
+ ldr r0, [r0, #0x0]
+ cmp r0, #0x8
+ bge _020CF024
+_020CF03C:
+ ldr r0, _020CF16C ; =0x021D3B00
+ mov r1, #0x1800
+ bl DC_FlushRange
+ ldr r1, _020CF164 ; =0x021D3840
+ mov r0, #0x7
+ ldr r1, [r1, #0x0]
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020CF05C:
+ cmp r0, #0x0
+ bge _020CF0E0
+ ands r0, r5, #0x1
+ bne _020CF084
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+_020CF084:
+ ldr r1, _020CF164
+ mov r0, #0x7
+ ldr r1, [r1]
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ bge _020CF0E0
+ ldr r6, _020CF164
+ mov r9, #0x64
+ mov r8, #0x7
+ mov r7, #0x0
+_020CF0B0:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, r9
+ bl OS_SpinWait
+ bl OS_DisableInterrupts
+ mov r4, r0
+ mov r0, r8
+ ldr r1, [r6]
+ mov r2, r7
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ blt _020CF0B0
+_020CF0E0:
+ ands r0, r5, #0x2
+ beq _020CF0EC
+ bl RequestCommandProc
+_020CF0EC:
+ ldr r0, _020CF170
+ ldr r1, _020CF164
+ ldr r3, [r0]
+ ldr r5, [r1]
+ add r1, r3, #0x1
+ ldr r2, _020CF174
+ str r1, [r0]
+ str r5, [r2, r3, lsl #2]
+ cmp r1, #0x8
+ movgt r1, #0x0
+ ldr r2, _020CF168
+ strgt r1, [r0]
+ ldr r1, _020CF178
+ ldr r3, [r2]
+ ldr r0, [r1]
+ add ip, r3, #0x1
+ add r6, r0, #0x1
+ ldr r5, _020CF164
+ mov lr, #0x0
+ ldr r3, _020CF17C
+ mov r0, r4
+ str lr, [r5]
+ str lr, [r3]
+ str ip, [r2]
+ str r6, [r1]
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+_020CF164: .word 0x021D3840
+_020CF168: .word 0x021D3854
+_020CF16C: .word 0x021D3B00
+_020CF170: .word 0x021D3850
+_020CF174: .word 0x021D385C
+_020CF178: .word 0x021D3858
+_020CF17C: .word 0x021D3844
+
+ arm_func_start SND_PushCommand
+SND_PushCommand: ; 0x020CF180
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl OS_DisableInterrupts
+ ldr r2, _020CF1C0 ; =0x021D3844
+ ldr r1, [r2, #0x0]
+ cmp r1, #0x0
+ ldreq r1, _020CF1C4 ; =0x021D3840
+ streq r4, [r2, #0x0]
+ streq r4, [r1, #0x0]
+ strne r4, [r1, #0x0]
+ strne r4, [r2, #0x0]
+ mov r1, #0x0
+ str r1, [r4, #0x0]
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CF1C0: .word 0x021D3844
+_020CF1C4: .word 0x021D3840
+
+ arm_func_start SND_AllocCommand
+SND_AllocCommand:
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl IsCommandAvailable
+_020CF1D4:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ bl AllocCommand
+ cmp r0, #0x0
+ ldmneia sp!, {r4,lr}
+ bxne lr
+ ands r0, r4, #0x1
+ moveq r0, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ bl SND_CountWaitingCommand
+ cmp r0, #0x0
+ ble _020CF238
+ mov r4, #0x0
+_020CF214:
+ mov r0, r4
+ bl SND_RecvCommandReply
+ cmp r0, #0x0
+ bne _020CF214
+ bl AllocCommand
+ cmp r0, #0x0
+ beq _020CF240
+ ldmia sp!, {r4,lr}
+ bx lr
+_020CF238:
+ mov r0, #0x1
+ bl SND_FlushCommand
+_020CF240:
+ bl RequestCommandProc
+ mov r4, #0x1
+_020CF248:
+ mov r0, r4
+ bl SND_RecvCommandReply
+ bl AllocCommand
+ cmp r0, #0x0
+ beq _020CF248
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start SND_RecvCommandReply
+SND_RecvCommandReply: ; 0x020CF264
+ stmdb sp!, {r4-r6,lr}
+ mov r4, r0
+ bl OS_DisableInterrupts
+ mov r5, r0
+ ands r0, r4, #0x1
+ beq _020CF2C0
+ bl SNDi_GetFinishedCommandTag
+ ldr r4, _020CF380 ; =0x021D383C
+ ldr r1, [r4, #0x0]
+ cmp r1, r0
+ bne _020CF2E8
+ mov r6, #0x64
+_020CF294:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ mov r0, r6
+ bl OS_SpinWait
+ bl OS_DisableInterrupts
+ mov r5, r0
+ bl SNDi_GetFinishedCommandTag
+ ldr r1, [r4, #0x0]
+ cmp r1, r0
+ beq _020CF294
+ b _020CF2E8
+_020CF2C0:
+ bl SNDi_GetFinishedCommandTag
+ ldr r1, _020CF380 ; =0x021D383C
+ ldr r1, [r1, #0x0]
+ cmp r1, r0
+ bne _020CF2E8
+ mov r0, r5
+ bl OS_RestoreInterrupts
+_020CF2DC:
+ mov r0, #0x0
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+_020CF2E8:
+ ldr r0, _020CF384 ; =0x021D384C
+ ldr r2, _020CF388 ; =0x021D385C
+ ldr r3, [r0, #0x0]
+ add r1, r3, #0x1
+ ldr r4, [r2, r3, lsl #0x2]
+ str r1, [r0, #0x0]
+ cmp r1, #0x8
+ movgt r1, #0x0
+ strgt r1, [r0, #0x0]
+ ldr r0, [r4, #0x0]
+ mov r1, r4
+ cmp r0, #0x0
+ beq _020CF32C
+_020CF31C:
+ ldr r1, [r1, #0x0]
+ ldr r0, [r1, #0x0]
+ cmp r0, #0x0
+ bne _020CF31C
+_020CF32C:
+ ldr r0, _020CF38C ; =0x021D3848
+ ldr r3, _020CF390 ; =0x021D3854
+ ldr r0, [r0, #0x0]
+ ldr r2, _020CF380 ; =0x021D383C
+ cmp r0, #0x0
+ strne r4, [r0, #0x0]
+ ldreq r0, _020CF394 ; =0x021D3838
+ ldr lr, [r3, #0x0]
+ streq r4, [r0, #0x0]
+ ldr ip, _020CF38C ; =0x021D3848
+ sub r6, lr, #0x1
+ ldr r0, [r2, #0x0]
+ str r1, [r12, #0x0]
+ add lr, r0, #0x1
+ mov r0, r5
+ str r6, [r3, #0x0]
+ str lr, [r2, #0x0]
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020CF380: .word 0x021D383C
+_020CF384: .word 0x021D384C
+_020CF388: .word 0x021D385C
+_020CF38C: .word 0x021D3848
+_020CF390: .word 0x021D3854
+_020CF394: .word 0x021D3838
+
+ arm_func_start SND_CommandInit
+SND_CommandInit: ; 0x020CF398
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x4
+ bl InitPXI
+ ldr r3, _020CF478 ; =0x021D3B00
+ ldr r0, _020CF47C ; =0x021D3838
+ mov r4, #0x0
+ str r3, [r0, #0x0]
+ mov r1, r3
+ mov r0, #0x18
+_020CF3BC:
+ add r4, r4, #0x1
+ mla r2, r4, r0, r1
+ cmp r4, #0xff
+ str r2, [r3], #0x18
+ blt _020CF3BC
+ ldr r7, _020CF480 ; =0x021D4B00
+ mov r10, #0x0
+ ldr r5, _020CF484 ; =0x021D3840
+ ldr r4, _020CF488 ; =0x021D3844
+ ldr lr, _020CF48C ; =0x021D3854
+ ldr ip, _020CF490 ; =0x021D384C
+ ldr r3, _020CF494 ; =0x021D3850
+ ldr r1, _020CF498 ; =0x021D383C
+ ldr sb, _020CF49C ; =0x021D52E8
+ ldr r6, _020CF4A0 ; =0x021D3848
+ ldr r2, _020CF4A4 ; =0x021D3858
+ mov r8, #0x1
+ ldr r0, _020CF4A8 ; =0x021D3880
+ ldr fp, _020CF4AC ; =0x021D5360
+ str r9, [r6, #0x0]
+ str r10, [r7, #0x7e8]
+ str r10, [r5, #0x0]
+ str r10, [r4, #0x0]
+ str r10, [lr, #0x0]
+ str r10, [r12, #0x0]
+ str r10, [r3, #0x0]
+ str r8, [r2, #0x0]
+ str r10, [r1, #0x0]
+ str r0, [r11, #0x0]
+ bl SNDi_InitSharedWork
+ mov r0, r8
+ bl SND_AllocCommand
+_020CF43C:
+ cmp r0, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r11, lr}
+ bxeq lr
+ mov r2, #0x1D
+ mov r1, fp
+ str r2, [r0, #0x4]
+ ldr r1, [r1]
+ str r1, [r0, #0x8]
+ bl SND_PushCommand
+ mov r0, r8
+ bl SND_FlushCommand
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r11, lr}
+ bx lr
+_020CF478: .word 0x021D3B00
+_020CF47C: .word 0x021D3838
+_020CF480: .word 0x021D4B00
+_020CF484: .word 0x021D3840
+_020CF488: .word 0x021D3844
+_020CF48C: .word 0x021D3854
+_020CF490: .word 0x021D384C
+_020CF494: .word 0x021D3850
+_020CF498: .word 0x021D383C
+_020CF49C: .word 0x021D52E8
+_020CF4A0: .word 0x021D3848
+_020CF4A4: .word 0x021D3858
+_020CF4A8: .word 0x021D3880
+_020CF4AC: .word 0x021D5360
+
+ arm_func_start SNDi_CallAlarmHandler
+SNDi_CallAlarmHandler: ; 0x020CF4B0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r3, _020CF50C ; =0x021D5300
+ and r2, r0, #0xff
+ mov r1, #0xc
+ mla r3, r2, r1, r3
+ mov r1, r0, asr #0x8
+ ldrb r0, [r3, #0x8]
+ and r1, r1, #0xff
+ cmp r1, r0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ ldr r1, [r3, #0x0]
+ cmp r1, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {lr}
+ bxeq lr
+ ldr r0, [r3, #0x4]
+ blx r1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CF50C: .word 0x021D5300
+
+ arm_func_start SNDi_SetAlarmHandler
+SNDi_SetAlarmHandler:
+ mov r3, #0xc
+ mul r3, r0, r3
+ ldr r0, _020CF53C ; =0x021D5300
+ str r1, [r0, r3]
+ add r1, r0, r3
+ str r2, [r1, #0x4]
+ ldrb r0, [r1, #0x8]
+ add r0, r0, #0x1
+ strb r0, [r1, #0x8]
+ ldrb r0, [r1, #0x8]
+ bx lr
+ .balign 4
+_020CF53C: .word 0x021D5300
+
+ arm_func_start SNDi_IncAlarmId
+SNDi_IncAlarmId: ; 0x020CF540
+ ldr r2, _020CF55C ; =0x021D5300
+ mov r1, #0xc
+ mla r1, r0, r1, r2
+ ldrb r0, [r1, #0x8]
+ add r0, r0, #0x1
+ strb r0, [r1, #0x8]
+ bx lr
+ .balign 4
+_020CF55C: .word 0x021D5300
+
+ arm_func_start SND_AlarmInit
+SND_AlarmInit: ; 0x020CF560
+ ldr r1, _020CF58C ; =0x021D5300
+ mov r2, #0x0
+ mov r0, r2
+_020CF56C:
+ str r0, [r1, #0x0]
+ str r0, [r1, #0x4]
+ add r2, r2, #0x1
+ strb r0, [r1, #0x8]
+ cmp r2, #0x8
+ add r1, r1, #0xc
+ blt _020CF56C
+ bx lr
+ .balign 4
+_020CF58C: .word 0x021D5300
+
+ arm_func_start SNDi_InitSharedWork
+SNDi_InitSharedWork: ; 0x020CF590
+ stmdb sp!, {r4,lr}
+ mov r4, #0x0
+ str r4, [r0, #0x4]
+ strh r4, [r0, #0x8]
+ strh r4, [r0, #0xa]
+ mov r12, r0
+ str r4, [r0, #0x0]
+ mov r3, r4
+ mvn r2, #0x0
+_020CF5B4:
+ mov lr, r3
+ str r3, [r12, #0x40]
+_020CF5BC:
+ add r1, r12, lr, lsl #0x1
+ add lr, lr, #0x1
+ strh r2, [r1, #0x20]
+ cmp lr, #0x10
+ blt _020CF5BC
+ add r4, r4, #0x1
+ cmp r4, #0x10
+ add r12, r12, #0x24
+ blt _020CF5B4
+ mov r3, #0x0
+ mvn r2, #0x0
+_020CF5E8:
+ add r1, r0, r3, lsl #0x1
+ add r1, r1, #0x200
+ add r3, r3, #0x1
+ strh r2, [r1, #0x60]
+ cmp r3, #0x10
+ blt _020CF5E8
+ mov r1, #0x280
+ bl DC_FlushRange
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start SNDi_GetFinishedCommandTag
+SNDi_GetFinishedCommandTag: ; 0x020CF610
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CF640 ; =0x021D5360
+ mov r1, #0x4
+ ldr r0, [r0, #0x0]
+ bl DC_InvalidateRange
+ ldr r0, _020CF640 ; =0x021D5360
+ ldr r0, [r0, #0x0]
+ ldr r0, [r0, #0x0]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CF640: .word 0x021D5360
+
+ arm_func_start SND_GetPlayerTickCounter
+SND_GetPlayerTickCounter: ; 0x020CF644
+ stmdb sp!, {r4,lr}
+ mov r1, #0x24
+ mul r4, r0, r1
+ ldr r0, _020CF680 ; =0x021D5360
+ mov r1, #0x4
+ ldr r0, [r0, #0x0]
+ add r0, r0, #0x40
+ add r0, r0, r4
+ bl DC_InvalidateRange
+ ldr r0, _020CF680 ; =0x021D5360
+ ldr r0, [r0, #0x0]
+ add r0, r0, r4
+ ldr r0, [r0, #0x40]
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020CF680: .word 0x021D5360
+
+ arm_func_start SND_GetChannelStatus
+SND_GetChannelStatus: ; 0x020CF684
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CF6B8 ; =0x021D5360
+ mov r1, #0x2
+ ldr r0, [r0, #0x0]
+ add r0, r0, #0x8
+ bl DC_InvalidateRange
+ ldr r0, _020CF6B8 ; =0x021D5360
+ ldr r0, [r0, #0x0]
+ ldrh r0, [r0, #0x8]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CF6B8: .word 0x021D5360
+
+ arm_func_start SND_GetPlayerStatus
+SND_GetPlayerStatus: ; 0x020CF6BC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020CF6F0 ; =0x021D5360
+ mov r1, #0x4
+ ldr r0, [r0, #0x0]
+ add r0, r0, #0x4
+ bl DC_InvalidateRange
+ ldr r0, _020CF6F0 ; =0x021D5360
+ ldr r0, [r0, #0x0]
+ ldr r0, [r0, #0x4]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020CF6F0: .word 0x021D5360
+
+ arm_func_start SND_CalcChannelVolume
+SND_CalcChannelVolume: ; 0x020CF6F4
+ ldr r1, _020CF75C ; =0xFFFFFD2D
+ cmp r0, r1
+ movlt r0, r1
+ blt _020CF70C
+ cmp r0, #0x0
+ movgt r0, #0x0
+_020CF70C:
+ ldr r1, _020CF760 ; =0x000002D3
+ ldr r2, _020CF764 ; =0x02103CAC
+ add r3, r0, r1
+ mvn r1, #0xef
+ cmp r0, r1
+ ldrb r2, [r2, r3]
+ movlt r0, #0x3
+ blt _020CF74C
+ mvn r1, #0x77
+ cmp r0, r1
+ movlt r0, #0x2
+ blt _020CF74C
+ mvn r1, #0x3b
+ cmp r0, r1
+ movlt r0, #0x1
+ movge r0, #0x0
+_020CF74C:
+ orr r0, r2, r0, lsl #0x8
+ mov r0, r0, lsl #0x10
+ mov r0, r0, lsr #0x10
+ bx lr
+ .balign 4
+_020CF75C: .word 0xFFFFFD2D
+_020CF760: .word 0x000002D3
+_020CF764: .word 0x02103CAC
+
+ arm_func_start SND_GetWaveDataAddress
+SND_GetWaveDataAddress: ; 0x020CF768
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ mov r4, r1
+ bl SNDi_LockMutex
+ add r0, r5, r4, lsl #0x2
+ ldr r4, [r0, #0x3c]
+ cmp r4, #0x0
+ beq _020CF798
+ cmp r4, #0x2000000
+ addcc r4, r5, r4
+ b _020CF79C
+_020CF798:
+ mov r4, #0x0
+_020CF79C:
+ bl SNDi_UnlockMutex
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start SND_SetWaveDataAddress
+SND_SetWaveDataAddress: ; 0x020CF7B0
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r4, r2
+ bl SNDi_LockMutex
+ add r0, r6, #0x3c
+ add r2, r6, r5, lsl #0x2
+ add r0, r0, r5, lsl #0x2
+ mov r1, #0x4
+ str r4, [r2, #0x3c]
+ bl DC_StoreRange
+ bl SNDi_UnlockMutex
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start SND_GetWaveDataCount
+SND_GetWaveDataCount: ; 0x020CF7E8
+ ldr r0, [r0, #0x38]
+ bx lr
+
+ arm_func_start SND_GetNextInstData
+SND_GetNextInstData: ; 0x020CF7F0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r4, [r2, #0x0]
+ ldr r3, [r0, #0x38]
+ cmp r4, r3
+ bhs _020CF9B8
+ mov r12, #0x0
+_020CF80C:
+ add r3, r0, r4, lsl #0x2
+ ldr r4, [r3, #0x3c]
+ strb r4, [r1, #0x0]
+ ldrb r3, [r1, #0x0]
+ cmp r3, #0x10
+ bgt _020CF850
+ cmp r3, #0x10
+ bge _020CF8A8
+ cmp r3, #0x5
+ addls pc, pc, r3, lsl #0x2
+ b _020CF998
+_020CF838:
+ b _020CF998
+ b _020CF85C
+ b _020CF85C
+ b _020CF85C
+ b _020CF85C
+ b _020CF85C
+_020CF850:
+ cmp r3, #0x11
+ beq _020CF924
+ b _020CF998
+_020CF85C:
+ mov r3, r4, lsr #0x8
+ add r5, r0, r4, lsr #0x8
+ ldrh r4, [r0, r3]
+ ldrh r3, [r5, #0x2]
+ add sp, sp, #0x4
+ mov r0, #0x1
+ strh r4, [r1, #0x2]
+ strh r3, [r1, #0x4]
+ ldrh r4, [r5, #0x4]
+ ldrh r3, [r5, #0x6]
+ strh r4, [r1, #0x6]
+ strh r3, [r1, #0x8]
+ ldrh r3, [r5, #0x8]
+ strh r3, [r1, #0xA]
+ ldr r1, [r2]
+ add r1, r1, #0x1
+ str r1, [r2]
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CF8A8:
+ add r5, r0, r4, lsr #0x8
+ b _020CF904
+_020CF8B0:
+ mov r0, #0xc
+ mla r12, lr, r0, r5
+ ldrh r4, [r12, #0x2]
+ ldrh r3, [r12, #0x4]
+ add sp, sp, #0x4
+ mov r0, #0x1
+ strh r4, [r1, #0x0]
+ strh r3, [r1, #0x2]
+ ldrh r4, [r12, #0x6]
+ ldrh r3, [r12, #0x8]
+ strh r4, [r1, #0x4]
+ strh r3, [r1, #0x6]
+ ldrh r4, [r12, #0xa]
+ ldrh r3, [r12, #0xc]
+ strh r4, [r1, #0x8]
+ strh r3, [r1, #0xa]
+ ldr r1, [r2, #0x4]
+ add r1, r1, #0x1
+ str r1, [r2, #0x4]
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CF904:
+ ldrb r4, [r5, #0x1]
+ ldrb r3, [r5, #0x0]
+ ldr lr, [r2, #0x4]
+ sub r3, r4, r3
+ add r3, r3, #0x1
+ cmp lr, r3
+ blo _020CF8B0
+ b _020CF998
+_020CF924:
+ add r4, r0, r4, lsr #0x8
+ b _020CF98C
+_020CF92C:
+ ldrb lr, [r4, r3]
+ cmp lr, #0x0
+ beq _020CF998
+ mov r0, #0xc
+ mla lr, r3, r0, r4
+ ldrh r12, [lr, #0x8]
+ ldrh r3, [lr, #0xa]
+ add sp, sp, #0x4
+ mov r0, #0x1
+ strh r12, [r1, #0x0]
+ strh r3, [r1, #0x2]
+ ldrh r12, [lr, #0xc]
+ ldrh r3, [lr, #0xe]
+ strh r12, [r1, #0x4]
+ strh r3, [r1, #0x6]
+ ldrh r12, [lr, #0x10]
+ ldrh r3, [lr, #0x12]
+ strh r12, [r1, #0x8]
+ strh r3, [r1, #0xa]
+ ldr r1, [r2, #0x4]
+ add r1, r1, #0x1
+ str r1, [r2, #0x4]
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020CF98C:
+ ldr r3, [r2, #0x4]
+ cmp r3, #0x8
+ blo _020CF92C
+_020CF998:
+ ldr r3, [r2, #0x0]
+ add r3, r3, #0x1
+ str r3, [r2, #0x0]
+ str r12, [r2, #0x4]
+ ldr r4, [r2, #0x0]
+ ldr r3, [r0, #0x38]
+ cmp r4, r3
+ blo _020CF80C
+_020CF9B8:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start SND_GetFirstInstDataPos
+SND_GetFirstInstDataPos: ; 0x020CF9C8
+ sub sp, sp, #0x8
+ mov r1, #0x0
+ str r1, [sp, #0x0]
+ str r1, [sp, #0x4]
+ str r1, [r0, #0x0]
+ str r1, [r0, #0x4]
+ add sp, sp, #0x8
+ bx lr
+
+ arm_func_start SND_DestroyWaveArc
+SND_DestroyWaveArc: ; 0x020CF9E8
+ stmdb sp!, {r4-r6,lr}
+ mov r4, r0
+ bl SNDi_LockMutex
+ ldr r0, [r4, #0x18]
+ cmp r0, #0x0
+ beq _020CFA28
+ mov r5, #0x0
+ mov r4, #0x8
+_020CFA08:
+ ldr r6, [r0, #0x4]
+ mov r1, r4
+ str r5, [r0, #0x0]
+ str r5, [r0, #0x4]
+ bl DC_StoreRange
+ mov r0, r6
+ cmp r6, #0x0
+ bne _020CFA08
+_020CFA28:
+ bl SNDi_UnlockMutex
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start SND_DestroyBank
+SND_DestroyBank: ; 0x020CFA34
+ stmdb sp!, {r4-r8,lr}
+ mov r7, r0
+ bl SNDi_LockMutex
+ add r5, r7, #0x18
+ mov r6, #0x0
+ mov r8, #0x8
+ mov r4, #0x3c
+_020CFA50:
+ add r1, r7, r6, lsl #0x3
+ ldr r0, [r1, #0x18]
+ cmp r0, #0x0
+ beq _020CFAB8
+ ldr r3, [r0, #0x18]
+ cmp r5, r3
+ bne _020CFA80
+ ldr r2, [r1, #0x1c]
+ mov r1, r4
+ str r2, [r0, #0x18]
+ bl DC_StoreRange
+ b _020CFAB8
+_020CFA80:
+ cmp r3, #0x0
+ beq _020CFAA0
+_020CFA88:
+ ldr r0, [r3, #0x4]
+ cmp r5, r0
+ beq _020CFAA0
+ mov r3, r0
+ cmp r0, #0x0
+ bne _020CFA88
+_020CFAA0:
+ add r0, r7, r6, lsl #0x3
+ ldr r2, [r0, #0x1c]
+ mov r0, r3
+ mov r1, r8
+ str r2, [r3, #0x4]
+ bl DC_StoreRange
+_020CFAB8:
+ add r6, r6, #0x1
+ cmp r6, #0x4
+ add r5, r5, #0x8
+ blt _020CFA50
+ bl SNDi_UnlockMutex
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start SND_AssignWaveArc
+SND_AssignWaveArc: ; 0x020CFAD4
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r4, r2
+ bl SNDi_LockMutex
+ add r3, r6, r5, lsl #0x3
+ ldr r2, [r3, #0x18]
+ mov r12, r5, lsl #0x3
+ cmp r2, #0x0
+ beq _020CFB70
+ cmp r4, r2
+ bne _020CFB10
+ bl SNDi_UnlockMutex
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020CFB10:
+ add r1, r6, #0x18
+ ldr r0, [r2, #0x18]
+ add r12, r1, r12
+ cmp r12, r0
+ bne _020CFB3C
+ ldr r0, [r3, #0x1c]
+ mov r1, #0x3c
+ str r0, [r2, #0x18]
+ ldr r0, [r3, #0x18]
+ bl DC_StoreRange
+ b _020CFB70
+_020CFB3C:
+ cmp r0, #0x0
+ beq _020CFB5C
+_020CFB44:
+ ldr r1, [r0, #0x4]
+ cmp r12, r1
+ beq _020CFB5C
+ mov r0, r1
+ cmp r1, #0x0
+ bne _020CFB44
+_020CFB5C:
+ add r1, r6, r5, lsl #0x3
+ ldr r2, [r1, #0x1c]
+ mov r1, #0x8
+ str r2, [r0, #0x4]
+ bl DC_StoreRange
+_020CFB70:
+ add r0, r6, #0x18
+ ldr r1, [r4, #0x18]
+ add r0, r0, r5, lsl #0x3
+ str r0, [r4, #0x18]
+ add r0, r6, r5, lsl #0x3
+ str r1, [r0, #0x1c]
+ str r4, [r0, #0x18]
+ bl SNDi_UnlockMutex
+ mov r0, r6
+ mov r1, #0x3c
+ bl DC_StoreRange
+ mov r0, r4
+ mov r1, #0x3c
+ bl DC_StoreRange
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start PXI_Init
+PXI_Init: ; 0x020CFBB0
+ ldr ip, _020CFBB8 ; =PXI_InitFifo
+ bx r12
+ .balign 4
+_020CFBB8: .word PXI_InitFifo
+
+ arm_func_start PXIi_HandlerRecvFifoNotEmpty
+PXIi_HandlerRecvFifoNotEmpty: ; 0x020CFBBC
+ stmdb sp!, {r4-r10,lr}
+ sub sp, sp, #0x8
+ ldr sl, _020CFCD4 ; =0x04000184
+ ldr r5, _020CFCD8 ; =0x021D5368
+ ldr r4, _020CFCDC ; =0x04000188
+ mov r7, #0x4100000
+ mov r6, #0x0
+ mvn r8, #0x3
+ mvn r9, #0x2
+_020CFBE0:
+ ldrh r0, [r10, #0x0]
+ ands r0, r0, #0x4000
+ ldrneh r0, [r10, #0x0]
+ movne r1, r9
+ orrne r0, r0, #0xc000
+ strneh r0, [r10, #0x0]
+ bne _020CFC28
+ bl OS_DisableInterrupts
+ ldrh r1, [r10, #0x0]
+ ands r1, r1, #0x100
+ beq _020CFC18
+ bl OS_RestoreInterrupts
+ mov r1, r8
+ b _020CFC28
+_020CFC18:
+ ldr r1, [r7, #0x0]
+ str r1, [sp, #0x0]
+ bl OS_RestoreInterrupts
+ mov r1, r6
+_020CFC28:
+ cmp r1, r8
+ addeq sp, sp, #0x8
+ ldmeqia sp!, {r4-r10,lr}
+ bxeq lr
+ mvn r0, #0x2
+ cmp r1, r0
+ beq _020CFBE0
+ ldr r1, [sp, #0x0]
+ mov r0, r1, lsl #0x1b
+ movs r0, r0, lsr #0x1b
+ beq _020CFBE0
+ ldr r3, [r5, r0, lsl #0x2]
+ cmp r3, #0x0
+ beq _020CFC74
+ mov r2, r1, lsl #0x1a
+ mov r1, r1, lsr #0x6
+ mov r2, r2, lsr #0x1f
+ blx r3
+ b _020CFBE0
+_020CFC74:
+ mov r0, r1, lsl #0x1a
+ movs r0, r0, lsr #0x1f
+ bne _020CFBE0
+ orr r0, r1, #0x20
+ str r0, [sp, #0x0]
+ ldrh r0, [r10, #0x0]
+ ands r0, r0, #0x4000
+ ldrneh r0, [r10, #0x0]
+ orrne r0, r0, #0xc000
+ strneh r0, [r10, #0x0]
+ bne _020CFBE0
+ bl OS_DisableInterrupts
+ ldrh r1, [r10, #0x0]
+ ands r1, r1, #0x2
+ beq _020CFCB8
+ bl OS_RestoreInterrupts
+ b _020CFBE0
+_020CFCB8:
+ ldr r1, [sp, #0x0]
+ str r1, [r4, #0x0]
+ bl OS_RestoreInterrupts
+ b _020CFBE0
+_020CFCC8:
+ add sp, sp, #0x8
+ ldmia sp!, {r4-r10, lr}
+ bx lr
+_020CFCD4: .word 0x04000184
+_020CFCD8: .word 0x021D5368
+_020CFCDC: .word 0x04000188
+
+ arm_func_start PXI_SendWordByFifo
+PXI_SendWordByFifo:
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r3, [sp, #0x0]
+ and r0, r0, #0x1f
+ bic r3, r3, #0x1f
+ orr r12, r3, r0
+ bic r3, r12, #0x20
+ and r0, r2, #0x1
+ orr r3, r3, r0, lsl #0x5
+ str r12, [sp, #0x0]
+ and r2, r3, #0x3f
+ bic r0, r1, #0xfc000000
+ orr r0, r2, r0, lsl #0x6
+ str r3, [sp, #0x0]
+ ldr r2, _020CFD8C ; =0x04000184
+ str r0, [sp, #0x0]
+ ldrh r0, [r2, #0x0]
+ ands r0, r0, #0x4000
+ ldrneh r1, [r2, #0x0]
+ addne sp, sp, #0x4
+ mvnne r0, #0x0
+ orrne r1, r1, #0xc000
+ strneh r1, [r2, #0x0]
+ ldmneia sp!, {lr}
+ bxne lr
+ bl OS_DisableInterrupts
+ ldr r1, _020CFD8C ; =0x04000184
+ ldrh r1, [r1, #0x0]
+ ands r1, r1, #0x2
+ beq _020CFD6C
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mvn r0, #0x1
+ ldmia sp!, {lr}
+ bx lr
+_020CFD6C:
+ ldr r2, [sp, #0x0]
+ ldr r1, _020CFD90 ; =0x04000188
+ str r2, [r1, #0x0]
+ bl OS_RestoreInterrupts
+_020CFD7C:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+_020CFD8C: .word 0x04000184
+_020CFD90: .word 0x04000188
+
+ arm_func_start PXI_IsCallbackReady
+PXI_IsCallbackReady:
+ ldr r2, _020CFDB8 ; =0x027FFC00
+ mov r3, #0x1
+ add r1, r2, r1, lsl #0x2
+ mov r2, r3, lsl r0
+ ldr r0, [r1, #0x388]
+ ands r0, r2, r0
+ moveq r3, #0x0
+ mov r0, r3
+ bx lr
+ .balign 4
+_020CFDB8: .word 0x027FFC00
+
+ arm_func_start PXI_SetFifoRecvCallback
+PXI_SetFifoRecvCallback: ; 0x020CFDBC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r4, r0
+ mov r5, r1
+ bl OS_DisableInterrupts
+ ldr r1, _020CFE20 ; =0x021D5368
+ cmp r5, #0x0
+ str r5, [r1, r4, lsl #0x2]
+ beq _020CFDF8
+ ldr r3, _020CFE24 ; =0x027FFC00
+ mov r1, #0x1
+ ldr r2, [r3, #0x388]
+ orr r1, r2, r1, lsl r4
+ str r1, [r3, #0x388]
+ b _020CFE10
+_020CFDF8:
+ ldr r3, _020CFE24 ; =0x027FFC00
+ mov r1, #0x1
+ mvn r1, r1, lsl r4
+ ldr r2, [r3, #0x388]
+ and r1, r2, r1
+ str r1, [r3, #0x388]
+_020CFE10:
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CFE20: .word 0x021D5368
+_020CFE24: .word 0x027FFC00
+
+ arm_func_start PXI_InitFifo
+PXI_InitFifo: ; 0x020CFE28
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ bl OS_DisableInterrupts
+ ldr r1, _020CFF18 ; =0x021D5364
+ mov r4, r0
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x0
+ bne _020CFF04
+ mov r2, #0x1
+ ldr r0, _020CFF1C ; =0x027FFC00
+ strh r2, [r1, #0x0]
+ mov r2, #0x0
+ str r2, [r0, #0x388]
+ ldr r0, _020CFF20 ; =0x021D5368
+ mov r1, r2
+_020CFE64:
+ str r1, [r0, r2, lsl #0x2]
+ add r2, r2, #0x1
+ cmp r2, #0x20
+ blt _020CFE64
+ ldr r2, _020CFF24 ; =0x0000C408
+ ldr r1, _020CFF28 ; =0x04000184
+ mov r0, #0x40000
+ strh r2, [r1, #0x0]
+ bl OS_ResetRequestIrqMask
+ ldr r1, _020CFF2C ; =PXIi_HandlerRecvFifoNotEmpty
+ mov r0, #0x40000
+ bl OS_SetIrqFunction
+ mov r0, #0x40000
+ bl OS_EnableIrqMask
+ mov r12, #0x0
+ ldr r3, _020CFF30 ; =0x04000180
+ mov r1, r12
+ mov r2, #0x3e8
+_020CFEAC:
+ ldrh r0, [r3, #0x0]
+ ands lr, r0, #0xf
+ mov r0, lr, lsl #0x8
+ strh r0, [r3, #0x0]
+ bne _020CFEC8
+ cmp r12, #0x4
+ bgt _020CFF04
+_020CFEC8:
+ ldrh r0, [r3, #0x0]
+ mov r5, r2
+ and r0, r0, #0xf
+ cmp r0, lr
+ bne _020CFEFC
+_020CFEDC:
+ cmp r5, #0x0
+ movle r12, r1
+ ble _020CFEFC
+ ldrh r0, [r3, #0x0]
+ sub r5, r5, #0x1
+ and r0, r0, #0xf
+ cmp r0, lr
+ beq _020CFEDC
+_020CFEFC:
+ add r12, r12, #0x1
+ b _020CFEAC
+_020CFF04:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020CFF18: .word 0x021D5364
+_020CFF1C: .word 0x027FFC00
+_020CFF20: .word 0x021D5368
+_020CFF24: .word 0x0000C408
+_020CFF28: .word 0x04000184
+_020CFF2C: .word PXIi_HandlerRecvFifoNotEmpty
+_020CFF30: .word 0x04000180
+
+ arm_func_start FSi_TranslateCommand
+FSi_TranslateCommand:
+ stmdb sp!, {r4-r8,lr}
+ mov r8, r0
+ ldr r0, [r8, #0xc]
+ mov r7, r1
+ mov r1, #0x1
+ ldr r5, [r8, #0x8]
+ mov r4, r1, lsl r7
+ ands r0, r0, #0x4
+ moveq r1, #0x0
+ cmp r1, #0x0
+ ldrne r0, [r5, #0x1c]
+ orrne r0, r0, #0x200
+ strne r0, [r5, #0x1c]
+ ldreq r0, [r5, #0x1c]
+ orreq r0, r0, #0x100
+ streq r0, [r5, #0x1c]
+ ldr r0, [r5, #0x58]
+ ands r0, r0, r4
+ beq _020CFFE4
+ ldr r2, [r5, #0x54]
+ mov r0, r8
+ mov r1, r7
+ blx r2
+ mov r6, r0
+ cmp r6, #0x8
+ addls pc, pc, r6, lsl #0x2
+ b _020CFFE8
+_020CFFA0:
+ b _020CFFC4
+ b _020CFFC4
+ b _020CFFE8
+ b _020CFFE8
+ b _020CFFC4
+ b _020CFFE8
+ b _020CFFE8
+ b _020CFFE8
+ b _020CFFCC
+_020CFFC4:
+ str r6, [r8, #0x14]
+ b _020CFFE8
+_020CFFCC:
+ ldr r1, [r5, #0x58]
+ mvn r0, r4
+ and r0, r1, r0
+ str r0, [r5, #0x58]
+ mov r6, #0x7
+ b _020CFFE8
+_020CFFE4:
+ mov r6, #0x7
+_020CFFE8:
+ cmp r6, #0x7
+ bne _020D0004
+ ldr r1, _020D00AC ; =0x02103F80
+ mov r0, r8
+ ldr r1, [r1, r7, lsl #0x2]
+ blx r1
+ mov r6, r0
+_020D0004:
+ cmp r6, #0x6
+ bne _020D0060
+ ldr r0, [r8, #0xc]
+ ands r0, r0, #0x4
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ beq _020D00A0
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x1c]
+ mov r4, r0
+ ands r0, r1, #0x200
+ beq _020D0050
+ add r6, r5, #0xc
+_020D003C:
+ mov r0, r6
+ bl OS_SleepThread
+ ldr r0, [r5, #0x1c]
+ ands r0, r0, #0x200
+ bne _020D003C
+_020D0050:
+ mov r0, r4
+ ldr r6, [r8, #0x14]
+ bl OS_RestoreInterrupts
+ b _020D00A0
+_020D0060:
+ ldr r0, [r8, #0xc]
+ ands r0, r0, #0x4
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ ldrne r0, [r5, #0x1c]
+ bicne r0, r0, #0x200
+ strne r0, [r5, #0x1c]
+ strne r6, [r8, #0x14]
+ bne _020D00A0
+ ldr r1, [r5, #0x1c]
+ mov r0, r8
+ bic r2, r1, #0x100
+ mov r1, r6
+ str r2, [r5, #0x1c]
+ bl FSi_ReleaseCommand
+_020D00A0:
+ mov r0, r6
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020D00AC: .word 0x02103F80
+
+ arm_func_start FSi_ReleaseCommand
+FSi_ReleaseCommand:
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, r1
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x0]
+ mov r4, r0
+ ldr r0, [r6, #0x4]
+ cmp r1, #0x0
+ strne r0, [r1, #0x4]
+ cmp r0, #0x0
+ strne r1, [r0, #0x0]
+ mov r0, #0x0
+ str r0, [r6, #0x0]
+ ldr r1, [r6, #0x0]
+ add r0, r6, #0x18
+ str r1, [r6, #0x4]
+ ldr r1, [r6, #0xc]
+ bic r1, r1, #0x4f
+ str r1, [r6, #0xc]
+ str r5, [r6, #0x14]
+ bl OS_WakeupThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start FSi_CloseFileCommand
+FSi_CloseFileCommand: ; 0x020D0114
+ mov r0, #0x0
+ bx lr
+
+ arm_func_start FSi_OpenFileDirectCommand
+FSi_OpenFileDirectCommand: ; 0x020D011C
+ ldr r1, [r0, #0x30]
+ str r1, [r0, #0x24]
+ ldr r1, [r0, #0x30]
+ str r1, [r0, #0x2c]
+ ldr r1, [r0, #0x34]
+ str r1, [r0, #0x28]
+ ldr r1, [r0, #0x38]
+ str r1, [r0, #0x20]
+ mov r0, #0x0
+ bx lr
+
+ arm_func_start FSi_OpenFileFastCommand
+FSi_OpenFileFastCommand: ; 0x020D0144
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x14
+ mov r5, r0
+ ldr r1, [r5, #0x8]
+ ldr r4, [r5, #0x34]
+ ldr r0, [r1, #0x30]
+ mov r2, r4, lsl #0x3
+ cmp r2, r0
+ addcs sp, sp, #0x14
+ movcs r0, #0x1
+ ldmcsia sp!, {r4-r5,lr}
+ bxcs lr
+ str r1, [sp, #0x8]
+ ldr r1, [r1, #0x2c]
+ add r0, sp, #0x8
+ add r3, r1, r2
+ add r1, sp, #0x0
+ mov r2, #0x8
+ str r3, [sp, #0xc]
+ bl FSi_ReadTable
+_020D0194:
+ cmp r0, #0
+ addne sp, sp, #0x14
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ ldr r1, [sp]
+ mov r0, r5
+ str r1, [r5, #0x30]
+ ldr r2, [sp, #0x4]
+ mov r1, #7
+ str r2, [r5, #0x34]
+ str r4, [r5, #0x38]
+ bl FSi_TranslateCommand
+ add sp, sp, #0x14
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start FSi_GetPathCommand
+FSi_GetPathCommand: ; 0x020D01D0
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0xe4
+ mov r4, r0
+ ldr r1, [r4, #0x8]
+ add r0, sp, #0x98
+ add r11, r4, #0x30
+ str r1, [sp, #0x0]
+ bl FS_InitFile
+ ldr r0, [r4, #0x8]
+ str r0, [sp, #0xa0]
+ ldr r0, [r4, #0xc]
+ ands r0, r0, #0x20
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ ldrneh r5, [r4, #0x24]
+ movne r4, #0x10000
+ bne _020D02BC
+ ldrh r0, [r11, #0x8]
+ ldr r4, [r4, #0x20]
+ cmp r0, #0x0
+ ldrneh r5, [r11, #0xa]
+ bne _020D02BC
+ mov r10, #0x0
+ mov r9, r10
+ mov r5, #0x10000
+ add r8, sp, #0x98
+ mov r6, #0x3
+ mov r7, #0x1
+_020D0244:
+ mov r0, r8
+ mov r1, r10
+ bl FSi_SeekDirDirect
+ add r2, sp, #0x4
+ cmp r10, #0x0
+ mov r0, r8
+ mov r1, r6
+ ldreq r9, [sp, #0xc4]
+ str r2, [sp, #0xc8]
+ str r7, [sp, #0xcc]
+ bl FSi_TranslateCommand
+_020D0270:
+ cmp r0, #0x0
+ bne _020D02A8
+_020D0278:
+ ldr r0, [sp, #0x10]
+ cmp r0, #0x0
+ bne _020D0294
+ ldr r0, [sp, #0x8]
+ cmp r0, r4
+ ldreqh r5, [sp, #0xbc]
+ beq _020D02A8
+_020D0294:
+ mov r0, r8
+ mov r1, r6
+ bl FSi_TranslateCommand
+ cmp r0, #0x0
+ beq _020D0278
+_020D02A8:
+ cmp r5, #0x10000
+ bne _020D02BC
+ add sl, sl, #0x1
+ cmp sl, r9
+ bcc _020D0244
+_020D02BC:
+ cmp r5, #0x10000
+ moveq r0, #0x0
+ streqh r0, [r11, #0x8]
+ addeq sp, sp, #0xe4
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r11,lr}
+ bxeq lr
+ ldrh r0, [r11, #0x8]
+ cmp r0, #0x0
+ bne _020D03B8
+ ldr r0, [sp, #0x0]
+ mov r1, #0x0
+ ldr r0, [r0, #0x0]
+ cmp r0, #0xff
+ addls r9, r1, #0x1
+ bls _020D0308
+ cmp r0, #0xff00
+ addls r9, r1, #0x2
+ addhi r9, r1, #0x3
+_020D0308:
+ cmp r4, #0x10000
+ ldrne r0, [sp, #0x14]
+ add r9, r9, #0x2
+ addne r9, r9, r0
+ mov r10, r5
+ cmp r5, #0x0
+ beq _020D03AC
+ add r0, sp, #0x98
+ mov r1, r5
+ bl FSi_SeekDirDirect
+ add r8, sp, #0x98
+ mov r6, #0x3
+ mov r7, #0x1
+_020D033C:
+ ldr r1, [sp, #0xc4]
+ mov r0, r8
+ bl FSi_SeekDirDirect
+ add r2, sp, #0x4
+ mov r0, r8
+ mov r1, r6
+ str r2, [sp, #0xc8]
+ str r7, [sp, #0xcc]
+ bl FSi_TranslateCommand
+_020D0360:
+ cmp r0, #0x0
+ bne _020D03A0
+_020D0368:
+ ldr r0, [sp, #0x10]
+ cmp r0, #0x0
+ beq _020D038C
+ ldrh r0, [sp, #0x8]
+ cmp r0, sl
+ ldreq r0, [sp, #0x14]
+ addeq r0, r0, #0x1
+ addeq r9, r9, r0
+ beq _020D03A0
+_020D038C:
+ mov r0, r8
+ mov r1, r6
+ bl FSi_TranslateCommand
+ cmp r0, #0x0
+ beq _020D0368
+_020D03A0:
+ ldrh sl, [sp, #0xbc]
+ cmp sl, #0x0
+ bne _020D033C
+_020D03AC:
+ add r0, r9, #0x1
+ strh r0, [r11, #0x8]
+ strh r5, [r11, #0xa]
+_020D03B8:
+ ldr r7, [r11, #0x0]
+ cmp r7, #0x0
+ addeq sp, sp, #0xe4
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r11,lr}
+ bxeq lr
+ ldrh r6, [r11, #0x8]
+ ldr r0, [r11, #0x4]
+ cmp r0, r6
+ addcc sp, sp, #0xe4
+ movcc r0, #0x1
+ ldmccia sp!, {r4-r11,lr}
+ bxcc lr
+ ldr r0, [sp, #0x0]
+ mov r9, #0x0
+ ldr r0, [r0, #0x0]
+ cmp r0, #0xff
+ movls r8, #0x1
+ bls _020D0410
+ cmp r0, #0xff00
+ movls r8, #0x2
+ movhi r8, #0x3
+_020D0410:
+ ldr r0, [sp, #0x0]
+ mov r1, r7
+ mov r2, r8
+ bl MI_CpuCopy8
+ add r1, r9, r8
+ ldr r0, _020D058C ; =0x0210682C
+ add r1, r7, r1
+ mov r2, #0x2
+ bl MI_CpuCopy8
+ add r0, sp, #0x98
+ mov r1, r5
+ bl FSi_SeekDirDirect
+ cmp r4, #0x10000
+ beq _020D04C4
+ add r3, sp, #0x4
+ mov r2, #0x0
+ add r0, sp, #0x98
+ mov r1, #0x3
+ str r3, [sp, #0xc8]
+ str r2, [sp, #0xcc]
+ bl FSi_TranslateCommand
+_020D0464:
+ cmp r0, #0x0
+ bne _020D04A0
+ add r9, sp, #0x98
+ mov r8, #0x3
+_020D0474:
+ ldr r0, [sp, #0x10]
+ cmp r0, #0x0
+ bne _020D048C
+ ldr r0, [sp, #0x8]
+ cmp r0, r4
+ beq _020D04A0
+_020D048C:
+ mov r0, r9
+ mov r1, r8
+ bl FSi_TranslateCommand
+ cmp r0, #0x0
+ beq _020D0474
+_020D04A0:
+ ldr r0, [sp, #0x14]
+ add r1, r7, r6
+ add r4, r0, #0x1
+ add r0, sp, #0x18
+ mov r2, r4
+ sub r1, r1, r4
+ bl MI_CpuCopy8
+ sub r6, r6, r4
+ b _020D04D4
+_020D04C4:
+ add r0, r7, r6
+ mov r1, #0x0
+ strb r1, [r0, #-0x1]
+ sub r6, r6, #0x1
+_020D04D4:
+ cmp r5, #0x0
+ beq _020D057C
+ add r10, sp, #0x98
+ add r11, sp, #0x4
+ mov r4, #0x3
+ mov r9, #0x0
+ mov r8, #0x2f
+_020D04F0:
+ ldr r1, [sp, #0xc4]
+ mov r0, r10
+ bl FSi_SeekDirDirect
+ add r2, r7, r6
+ mov r0, r10
+ mov r1, r4
+ str r11, [sp, #0xc8]
+ str r9, [sp, #0xcc]
+ strb r8, [r2, #-0x1]
+ sub r6, r6, #0x1
+ bl FSi_TranslateCommand
+_020D051C:
+ cmp r0, #0x0
+ bne _020D0570
+_020D0524:
+ ldr r0, [sp, #0x10]
+ cmp r0, #0x0
+ beq _020D055C
+ ldrh r0, [sp, #0x8]
+ cmp r0, r5
+ bne _020D055C
+ ldr r5, [sp, #0x14]
+ add r1, r7, r6
+ add r0, sp, #0x18
+ mov r2, r5
+ sub r1, r1, r5
+ bl MI_CpuCopy8
+ sub r6, r6, r5
+ b _020D0570
+_020D055C:
+ mov r0, sl
+ mov r1, r4
+ bl FSi_TranslateCommand
+ cmp r0, #0x0
+ beq _020D0524
+_020D0570:
+ ldrh r5, [sp, #0xbc]
+ cmp r5, #0x0
+ bne _020D04F0
+_020D057C:
+ mov r0, #0x0
+ add sp, sp, #0xe4
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+ .balign 4
+_020D058C: .word 0x0210682C
+
+ arm_func_start FSi_FindPathCommand
+FSi_FindPathCommand: ; 0x020D0590
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x9c
+ mov r10, r0
+ ldr r2, [r10, #0x40]
+ ldr r9, [r10, #0x3c]
+ mov r1, #0x2
+ str r2, [sp, #0x0]
+ bl FSi_TranslateCommand
+ ldrb r1, [r9, #0x0]
+ cmp r1, #0x0
+ beq _020D0780
+ mov r0, #0x2
+ add r11, sp, #0x1c
+ mov r4, #0x3
+ mov r5, #0x1
+ mov r6, #0x0
+ str r0, [sp, #0x4]
+_020D05D4:
+ mov r7, r6
+ b _020D05E0
+_020D05DC:
+ add r7, r7, #0x1
+_020D05E0:
+ ldrb r8, [r9, r7]
+ mov r0, r6
+ cmp r8, #0x0
+ beq _020D0600
+ cmp r8, #0x2f
+ beq _020D0600
+ cmp r8, #0x5c
+ movne r0, r5
+_020D0600:
+ cmp r0, #0x0
+ bne _020D05DC
+ cmp r8, #0x0
+ bne _020D061C
+ ldr r0, [sp, #0x0]
+ cmp r0, #0x0
+ beq _020D0620
+_020D061C:
+ mov r8, r5
+_020D0620:
+ cmp r7, #0x0
+ addeq sp, sp, #0x9c
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r11,lr}
+ bxeq lr
+ cmp r1, #0x2e
+ bne _020D068C
+ cmp r7, #0x1
+ addeq r9, r9, #0x1
+ beq _020D0764
+ ldrb r0, [r9, #0x1]
+ cmp r7, #0x2
+ moveq r1, r5
+ movne r1, r6
+ cmp r0, #0x2e
+ moveq r0, r5
+ movne r0, r6
+ ands r0, r1, r0
+ beq _020D068C
+ ldrh r0, [r10, #0x24]
+ cmp r0, #0x0
+ beq _020D0684
+ ldr r1, [r10, #0x2c]
+ mov r0, r10
+ bl FSi_SeekDirDirect
+_020D0684:
+ add r9, r9, #0x2
+ b _020D0764
+_020D068C:
+ cmp r7, #0x7f
+ addgt sp, sp, #0x9c
+ movgt r0, #0x1
+ ldmgtia sp!, {r4-r11,lr}
+ bxgt lr
+ add r0, sp, #0x8
+ str r0, [r10, #0x30]
+ str r6, [r10, #0x34]
+_020D06AC:
+ mov r0, r10
+ mov r1, r4
+ bl FSi_TranslateCommand
+_020D06B8:
+ cmp r0, #0x0
+ addne sp, sp, #0x9c
+ movne r0, #0x1
+ ldmneia sp!, {r4-r11,lr}
+ bxne lr
+ ldr r0, [sp, #0x14]
+ cmp r8, r0
+ bne _020D06AC
+ ldr r0, [sp, #0x18]
+ cmp r7, r0
+ bne _020D06AC
+ mov r0, r9
+ mov r1, fp
+ mov r2, r7
+ bl FSi_StrNICmp
+ cmp r0, #0x0
+ bne _020D06AC
+ cmp r8, #0x0
+ beq _020D0728
+ add r0, sp, #0x8
+ add r3, sl, #0x30
+ ldmia r0, {r0, r1, r2}
+ stmia r3, {r0, r1, r2}
+ ldr r1, [sp, #0x4]
+ mov r0, sl
+ add r9, r9, r7
+ bl FSi_TranslateCommand
+ b _020D0764
+_020D0728:
+ ldr r0, [sp]
+ cmp r0, #0x0
+ addne sp, sp, #0x9c
+ movne r0, #0x1
+ ldmneia sp!, {r4-r11,lr}
+ bxne lr
+ ldr r3, [sl, #0x44]
+ ldr r2, [sp, #0x8]
+ ldr r1, [sp, #0xC]
+ add sp, sp, #0x9c
+ str r2, [r3]
+ str r1, [r3, #0x4]
+ mov r0, #0x0
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D0764:
+ ldrb r0, [r9, #0x0]
+ cmp r0, #0x0
+ movne r0, r5
+ moveq r0, r6
+ ldrb r1, [r9, r0]!
+ cmp r1, #0x0
+ bne _020D05D4
+_020D0780:
+ ldr r0, [sp, #0x0]
+ cmp r0, #0x0
+ moveq r0, #0x1
+ addne r0, r10, #0x20
+ ldrne r3, [r10, #0x44]
+ ldmneia r0, {r0-r2}
+ stmneia r3, {r0-r2}
+ movne r0, #0x0
+ add sp, sp, #0x9c
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+
+ arm_func_start FSi_ReadDirCommand
+FSi_ReadDirCommand: ; 0x020D07AC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0xc
+ mov r5, r0
+ ldr r4, [r5, #0x30]
+ ldr r1, [r5, #0x8]
+ add r0, sp, #0x4
+ str r1, [sp, #0x4]
+ ldr r3, [r5, #0x28]
+ add r1, sp, #0x0
+ mov r2, #0x1
+ str r3, [sp, #0x8]
+ bl FSi_ReadTable
+_020D07DC:
+ cmp r0, #0x0
+ addne sp, sp, #0xC
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ ldrb r1, [sp]
+ and r2, r1, #0x7F
+ mov r1, r1, asr #0x7
+ str r2, [r4, #0x10]
+ and r1, r1, #0x1
+ str r1, [r4, #0xC]
+ ldr r2, [r4, #0x10]
+ cmp r2, #0x0
+ addeq sp, sp, #0xC
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r1, [r5, #0x34]
+ cmp r1, #0x0
+ bne _020D0858
+ add r0, sp, #0x4
+ add r1, r4, #0x14
+ bl FSi_ReadTable
+ cmp r0, #0x0
+ addne sp, sp, #0xC
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ ldr r1, [r4, #0x10]
+ mov r2, #0x0
+ add r1, r4, r1
+ strb r2, [r1, #0x14]
+ b _020D0864
+_020D0858:
+ ldr r1, [sp, #0x8]
+ add r1, r1, r2
+ str r1, [sp, #0x8]
+_020D0864:
+ ldr r1, [r4, #0xC]
+ cmp r1, #0x0
+ beq _020D08B8
+ add r0, sp, #0x4
+ add r1, sp, #0x2
+ mov r2, #0x2
+ bl FSi_ReadTable
+ cmp r0, #0x0
+ addne sp, sp, #0xC
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ ldr r2, [r5, #0x8]
+ ldr r1, _020D08E8
+ str r2, [r4]
+ ldrh r3, [sp, #0x2]
+ mov r2, #0x0
+ and r1, r3, r1
+ strh r1, [r4, #0x4]
+ strh r2, [r4, #0x6]
+ str r2, [r4, #0x8]
+ b _020D08D4
+_020D08B8:
+ ldr r1, [r5, #0x8]
+ str r1, [r4]
+ ldrh r1, [r5, #0x26]
+ str r1, [r4, #0x4]
+ ldrh r1, [r5, #0x26]
+ add r1, r1, #0x1
+ strh r1, [r5, #0x26]
+_020D08D4:
+ ldr r1, [sp, #0x8]
+ str r1, [r5, #0x28]
+ add sp, sp, #0xC
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D08E8: .word 0x00000FFF
+
+ arm_func_start FSi_SeekDirCommand
+FSi_SeekDirCommand: ; 0x020D08EC
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x10
+ mov r6, r0
+ ldr r5, [r6, #0x8]
+ add r4, r6, #0x30
+ str r5, [sp, #0x8]
+ ldrh r1, [r4, #0x4]
+ ldr r2, [r5, #0x34]
+ add r0, sp, #0x8
+ add r3, r2, r1, lsl #0x3
+ add r1, sp, #0x0
+ mov r2, #0x8
+ str r3, [sp, #0xc]
+ bl FSi_ReadTable
+ movs r3, r0
+ bne _020D0978
+ add r12, r6, #0x20
+ ldmia r4, {r0-r2}
+ stmia r12, {r0-r2}
+ ldrh r0, [r4, #0x6]
+ cmp r0, #0x0
+ bne _020D0968
+ ldr r0, [r4, #0x8]
+ cmp r0, #0x0
+ bne _020D0968
+ ldrh r0, [sp, #0x4]
+ strh r0, [r6, #0x26]
+ ldr r1, [r5, #0x34]
+ ldr r0, [sp, #0x0]
+ add r0, r1, r0
+ str r0, [r6, #0x28]
+_020D0968:
+ ldrh r1, [sp, #0x6]
+ ldr r0, _020D0988 ; =0x00000FFF
+ and r0, r1, r0
+ str r0, [r6, #0x2c]
+_020D0978:
+ mov r0, r3
+ add sp, sp, #0x10
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020D0988: .word 0x00000FFF
+
+ arm_func_start FSi_WriteFileCommand
+FSi_WriteFileCommand: ; 0x020D098C
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r2, [r0, #0x2c]
+ ldr r3, [r0, #0x38]
+ ldr lr, [r0, #0x8]
+ ldr r1, [r0, #0x30]
+ add r12, r2, r3
+ str r12, [r0, #0x2c]
+ ldr r12, [lr, #0x4c]
+ mov r0, lr
+ blx r12
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FSi_ReadFileCommand
+FSi_ReadFileCommand: ; 0x020D09C4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r2, [r0, #0x2c]
+ ldr r3, [r0, #0x38]
+ ldr lr, [r0, #0x8]
+ ldr r1, [r0, #0x30]
+ add r12, r2, r3
+ str r12, [r0, #0x2c]
+ ldr r12, [lr, #0x48]
+ mov r0, lr
+ blx r12
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FSi_SeekDirDirect
+FSi_SeekDirDirect: ; 0x020D09FC
+ ldr r3, [r0, #0xc]
+ mov r2, #0x0
+ orr r3, r3, #0x4
+ str r3, [r0, #0xc]
+ ldr r3, [r0, #0x8]
+ ldr ip, _020D0A2C ; =FSi_TranslateCommand
+ str r3, [r0, #0x30]
+ str r2, [r0, #0x38]
+ strh r2, [r0, #0x36]
+ strh r1, [r0, #0x34]
+ mov r1, #0x2
+ bx r12
+ .balign 4
+_020D0A2C: .word FSi_TranslateCommand
+
+ arm_func_start FSi_ReadTable
+FSi_ReadTable:
+ stmdb sp!, {r4-r8,lr}
+ mov r7, r0
+ ldr r5, [r7, #0x0]
+ mov r6, r2
+ ldr r2, [r5, #0x1c]
+ mov r0, r5
+ orr r2, r2, #0x200
+ str r2, [r5, #0x1c]
+ ldr r2, [r7, #0x4]
+ ldr r4, [r5, #0x50]
+ mov r3, r6
+ blx r4
+ cmp r0, #0x0
+ beq _020D0A7C
+ cmp r0, #0x1
+ beq _020D0A7C
+ cmp r0, #0x6
+ beq _020D0A8C
+ b _020D0AC8
+_020D0A7C:
+ ldr r1, [r5, #0x1c]
+ bic r1, r1, #0x200
+ str r1, [r5, #0x1c]
+ b _020D0AC8
+_020D0A8C:
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x1c]
+ mov r4, r0
+ ands r0, r1, #0x200
+ beq _020D0AB8
+ add r8, r5, #0xc
+_020D0AA4:
+ mov r0, r8
+ bl OS_SleepThread
+ ldr r0, [r5, #0x1c]
+ ands r0, r0, #0x200
+ bne _020D0AA4
+_020D0AB8:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldr r0, [r5, #0x24]
+ ldr r0, [r0, #0x14]
+_020D0AC8:
+ ldr r1, [r7, #0x4]
+ add r1, r1, r6
+ str r1, [r7, #0x4]
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start FSi_StrNICmp
+FSi_StrNICmp: ; 0x020D0ADC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r2, #0x0
+ mov lr, #0x0
+ bls _020D0B30
+_020D0AF0:
+ ldrb r12, [r0, lr]
+ ldrb r3, [r1, lr]
+ sub r12, r12, #0x41
+ cmp r12, #0x19
+ sub r3, r3, #0x41
+ addls r12, r12, #0x20
+ cmp r3, #0x19
+ addls r3, r3, #0x20
+ cmp r12, r3
+ addne sp, sp, #0x4
+ subne r0, r12, r3
+ ldmneia sp!, {lr}
+ bxne lr
+ add lr, lr, #0x1
+ cmp lr, r2
+ blo _020D0AF0
+_020D0B30:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FS_NotifyArchiveAsyncEnd
+FS_NotifyArchiveAsyncEnd: ; 0x020D0B40
+ stmdb sp!, {r4-r6,lr}
+ mov r4, r0
+ ldr r0, [r4, #0x1c]
+ mov r6, r1
+ ands r0, r0, #0x100
+ beq _020D0B8C
+ ldr r2, [r4, #0x1c]
+ ldr r0, [r4, #0x24]
+ bic r2, r2, #0x100
+ str r2, [r4, #0x1c]
+ bl FSi_ReleaseCommand
+ mov r0, r4
+ bl FSi_NextCommand
+_020D0B74:
+ cmp r0, #0x0
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ bl FSi_ExecuteAsyncCommand
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D0B8C:
+ ldr r5, [r4, #0x24]
+ bl OS_DisableInterrupts
+ str r6, [r5, #0x14]
+ ldr r1, [r4, #0x1c]
+ mov r5, r0
+ bic r1, r1, #0x200
+ add r0, r4, #0xc
+ str r1, [r4, #0x1c]
+ bl OS_WakeupThread
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start FS_SetArchiveProc
+FS_SetArchiveProc: ; 0x020D0BC0
+ cmp r2, #0x0
+ moveq r1, #0x0
+ beq _020D0BD4
+ cmp r1, #0x0
+ moveq r2, #0x0
+_020D0BD4:
+ str r1, [r0, #0x54]
+ str r2, [r0, #0x58]
+ bx lr
+
+ arm_func_start FS_ResumeArchive
+FS_ResumeArchive:
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r4, r0
+ mov r6, #0x0
+ bl OS_DisableInterrupts
+ ldr r1, [r4, #0x1c]
+ mov r5, r0
+ ands r0, r1, #0x8
+ movne r0, #0x1
+ moveq r0, r6
+ cmp r0, #0x0
+ moveq r7, #0x1
+ movne r7, #0x0
+ cmp r7, #0x0
+ bne _020D0C34
+ ldr r1, [r4, #0x1c]
+ mov r0, r4
+ bic r1, r1, #0x8
+ str r1, [r4, #0x1c]
+ bl FSi_NextCommand
+ mov r6, r0
+_020D0C34:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+_020D0C3C:
+ cmp r6, #0x0
+ beq _020D0C4C
+ mov r0, r6
+ bl FSi_ExecuteAsyncCommand
+_020D0C4C:
+ mov r0, r7
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7, lr}
+ bx lr
+
+ arm_func_start FS_SuspendArchive
+FS_SuspendArchive: ; 0x020D0C5C
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x1c]
+ mov r4, r0
+ ands r0, r1, #0x8
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ moveq r5, #0x1
+ movne r5, #0x0
+ cmp r5, #0x0
+ beq _020D0CD4
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x10
+ beq _020D0CC8
+ ldr r0, [r6, #0x1c]
+ orr r0, r0, #0x40
+ str r0, [r6, #0x1c]
+ add r7, r6, #0x14
+_020D0CB0:
+ mov r0, r7
+ bl OS_SleepThread
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x40
+ bne _020D0CB0
+ b _020D0CD4
+_020D0CC8:
+ ldr r0, [r6, #0x1c]
+ orr r0, r0, #0x8
+ str r0, [r6, #0x1c]
+_020D0CD4:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, r5
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start FS_UnloadArchiveTables
+FS_UnloadArchiveTables: ; 0x020D0CEC
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ ldr r0, [r5, #0x1c]
+ mov r4, #0x0
+ ands r0, r0, #0x2
+ movne r0, #0x1
+ moveq r0, r4
+ cmp r0, #0x0
+ beq _020D0D74
+ mov r0, r5
+ bl FS_SuspendArchive
+ ldr r1, [r5, #0x1c]
+ ands r1, r1, #0x4
+ movne r1, #0x1
+ moveq r1, #0x0
+ cmp r1, #0x0
+ beq _020D0D64
+ ldr r2, [r5, #0x1c]
+ mov r1, #0x0
+ bic r2, r2, #0x4
+ str r2, [r5, #0x1c]
+ ldr r4, [r5, #0x44]
+ str r1, [r5, #0x44]
+ ldr r1, [r5, #0x3c]
+ str r1, [r5, #0x2c]
+ ldr r1, [r5, #0x40]
+ str r1, [r5, #0x34]
+ ldr r1, [r5, #0x48]
+ str r1, [r5, #0x50]
+_020D0D64:
+ cmp r0, #0x0
+ beq _020D0D74
+ mov r0, r5
+ bl FS_ResumeArchive
+_020D0D74:
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+
+ arm_func_start FUN_020D0D84
+FUN_020D0D84: ; 0x020D0D84
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4c
+ mov r7, r0
+ ldr r3, [r7, #0x30]
+ ldr r0, [r7, #0x38]
+ mov r6, r1
+ add r0, r3, r0
+ add r0, r0, #0x20
+ add r0, r0, #0x1f
+ bic r5, r0, #0x1f
+ cmp r5, r2
+ bhi _020D0E9C
+ add r1, r6, #0x1f
+ add r0, sp, #0x4
+ bic r4, r1, #0x1f
+ bl FS_InitFile
+ ldr r2, [r7, #0x2c]
+ mvn r0, #0x0
+ str r0, [sp, #0x0]
+ ldr r3, [r7, #0x30]
+ add r0, sp, #0x4
+ mov r1, r7
+ add r3, r2, r3
+ bl FS_OpenFileDirect
+_020D0DE4:
+ cmp r0, #0x0
+ beq _020D0E1C
+ ldr r2, [r7, #0x30]
+ add r0, sp, #0x4
+ mov r1, r4
+ bl FS_ReadFile
+ cmp r0, #0x0
+ bge _020D0E14
+ ldr r2, [r7, #0x30]
+ mov r0, r4
+ mov r1, #0x0
+ bl MI_CpuFill8
+_020D0E14:
+ add r0, sp, #0x4
+ bl FS_CloseFile
+_020D0E1C:
+ str r4, [r7, #0x2C]
+ ldr ip, [r7, #0x30]
+ ldr r2, [r7, #0x34]
+ mvn r0, #0x0
+ str r0, [sp]
+ ldr r3, [r7, #0x38]
+ add r0, sp, #0x4
+ mov r1, r7
+ add r3, r2, r3
+ add r4, r4, ip
+ bl FS_OpenFileDirect
+ cmp r0, #0x0
+ beq _020D0E80
+ ldr r2, [r7, #0x38]
+ add r0, sp, #0x4
+ mov r1, r4
+ bl FS_ReadFile
+ cmp r0, #0x0
+ bge _020D0E78
+ ldr r2, [r7, #0x38]
+ mov r0, r4
+ mov r1, #0x0
+ bl MI_CpuFill8
+_020D0E78:
+ add r0, sp, #0x4
+ bl FS_CloseFile
+_020D0E80:
+ str r4, [r7, #0x34]
+ ldr r0, _020D0EAC
+ str r6, [r7, #0x44]
+ str r0, [r7, #0x50]
+ ldr r0, [r7, #0x1C]
+ orr r0, r0, #0x4
+ str r0, [r7, #0x1C]
+_020D0E9C:
+ mov r0, r5
+ add sp, sp, #0x4C
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D0EAC:
+ .word FSi_ReadMemoryCore
+
+ arm_func_start FUN_020D0EB0
+FUN_020D0EB0: ; 0x020D0EB0
+ stmdb sp!, {r4-r8,lr}
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r5, #0x1c]
+ mov r4, r0
+ ands r0, r1, #0x2
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ beq _020D0F64
+ mov r0, r5
+ ldr r1, [r5, #0x1c]
+ bl FS_SuspendArchive
+ ldr r1, [r5, #0x1c]
+ mov r7, r0
+ orr r0, r1, #0x80
+ str r0, [r5, #0x1c]
+ ldr r0, [r5, #0x24]
+ cmp r0, #0x0
+ beq _020D0F1C
+ mov r6, #0x3
+_020D0F04:
+ ldr r8, [r0, #0x4]
+ mov r1, r6
+ bl FSi_ReleaseCommand
+ mov r0, r8
+ cmp r8, #0x0
+ bne _020D0F04
+_020D0F1C:
+ mov r0, #0x0
+ str r0, [r5, #0x24]
+ cmp r7, #0x0
+ beq _020D0F34
+ mov r0, r5
+ bl FS_ResumeArchive
+_020D0F34:
+ mov r0, #0x0
+ str r0, [r5, #0x28]
+ str r0, [r5, #0x2c]
+ str r0, [r5, #0x30]
+ str r0, [r5, #0x34]
+ str r0, [r5, #0x38]
+ str r0, [r5, #0x40]
+ ldr r0, [r5, #0x40]
+ str r0, [r5, #0x3c]
+ ldr r0, [r5, #0x1c]
+ bic r0, r0, #0xa2
+ str r0, [r5, #0x1c]
+_020D0F64:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, #0x1
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start FS_LoadArchive
+FS_LoadArchive: ; 0x020D0F78
+ str r1, [r0, #0x28]
+ str r3, [r0, #0x30]
+ str r2, [r0, #0x3c]
+ ldr r1, [r0, #0x3c]
+ ldr r2, [sp, #0x4]
+ str r1, [r0, #0x2c]
+ str r2, [r0, #0x38]
+ ldr r1, [sp, #0x0]
+ ldr r2, [sp, #0x8]
+ str r1, [r0, #0x40]
+ ldr r1, [r0, #0x40]
+ cmp r2, #0x0
+ str r1, [r0, #0x34]
+ ldreq r2, _020D0FE8 ; =FSi_ReadMemCallback
+ ldr r1, [sp, #0xc]
+ str r2, [r0, #0x48]
+ cmp r1, #0x0
+ ldreq r1, _020D0FEC ; =FSi_WriteMemCallback
+ str r1, [r0, #0x4c]
+ ldr r2, [r0, #0x48]
+ mov r1, #0x0
+ str r2, [r0, #0x50]
+ str r1, [r0, #0x44]
+ ldr r1, [r0, #0x1c]
+ orr r1, r1, #0x2
+ str r1, [r0, #0x1c]
+ mov r0, #0x1
+ bx lr
+ .balign 4
+_020D0FE8: .word FSi_ReadMemCallback
+_020D0FEC: .word FSi_WriteMemCallback
+
+ arm_func_start FUN_020D0FF0
+FUN_020D0FF0: ; 0x020D0FF0
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ ldr r0, [r4, #0x0]
+ cmp r0, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ bl OS_DisableInterrupts
+ ldr r2, [r4, #0x4]
+ mov r3, #0x0
+ cmp r2, #0x0
+ ldrne r1, [r4, #0x8]
+ strne r1, [r2, #0x8]
+ ldr r2, [r4, #0x8]
+ cmp r2, #0x0
+ ldrne r1, [r4, #0x4]
+ strne r1, [r2, #0x4]
+ str r3, [r4, #0x0]
+ str r3, [r4, #0x8]
+ ldr r1, [r4, #0x8]
+ ldr r2, _020D1080 ; =0x021D53EC
+ str r1, [r4, #0x4]
+ ldr r1, [r4, #0x1c]
+ bic r1, r1, #0x1
+ str r1, [r4, #0x1c]
+ ldr r1, [r2, #0x0]
+ cmp r1, r4
+ bne _020D1074
+ ldr r1, _020D1084 ; =0x021D53E8
+ str r3, [r2, #0x8]
+ ldr r1, [r1, #0x0]
+ strh r3, [r2, #0x6]
+ str r1, [r2, #0x0]
+ strh r3, [r2, #0x4]
+_020D1074:
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020D1080: .word 0x021D53EC
+_020D1084: .word 0x021D53E8
+
+ arm_func_start FS_RegisterArchiveName
+FS_RegisterArchiveName: ; 0x020D1088
+ stmdb sp!, {r4-r8,lr}
+ mov r6, r1
+ mov r5, r2
+ mov r7, r0
+ mov r8, #0x0
+ bl OS_DisableInterrupts
+ mov r4, r0
+ mov r0, r6
+ mov r1, r5
+ bl FS_FindArchive
+_020D10B0:
+ cmp r0, #0x0
+ bne _020D112C
+ ldr r1, _020D1140
+ ldr r2, [r1]
+ cmp r2, #0x0
+ bne _020D10E8
+ ldr r0, _020D1144
+ mov r2, r8
+ str r7, [r1]
+ str r7, [r0]
+ str r2, [r0, #0x8]
+ strh r2, [r0, #0x6]
+ strh r2, [r0, #0x4]
+ b _020D110C
+_020D10E8:
+ ldr r0, [r2, #0x4]
+ cmp r0, #0x0
+ beq _020D1104
+_020D10F4:
+ mov r2, r0
+ ldr r0, [r0, #0x4]
+ cmp r0, #0x0
+ bne _020D10F4
+_020D1104:
+ str r7, [r2, #0x4]
+ str r2, [r7, #0x8]
+_020D110C:
+ mov r0, r6
+ mov r1, r5
+ bl FSi_GetPackedName
+ str r0, [r7]
+ ldr r0, [r7, #0x1C]
+ mov r8, #0x1
+ orr r0, r0, #0x1
+ str r0, [r7, #0x1C]
+_020D112C:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ mov r0, r8
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020D1140: .word 0x021D53E8
+_020D1144: .word 0x021D53EC
+
+ arm_func_start FS_FindArchive
+FS_FindArchive:
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ bl FSi_GetPackedName
+ mov r5, r0
+ bl OS_DisableInterrupts
+ ldr r1, _020D1194 ; =0x021D53E8
+ ldr r4, [r1, #0x0]
+ b _020D116C
+_020D1168:
+ ldr r4, [r4, #0x4]
+_020D116C:
+ cmp r4, #0x0
+ beq _020D1180
+ ldr r1, [r4, #0x0]
+ cmp r1, r5
+ bne _020D1168
+_020D1180:
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020D1194: .word 0x021D53E8
+
+ arm_func_start FS_InitArchive
+FS_InitArchive: ; 0x020D1198
+ stmdb sp!, {r4,lr}
+ mov r1, #0x0
+ mov r2, #0x5c
+ mov r4, r0
+ bl MI_CpuFill8
+ mov r1, #0x0
+ str r1, [r4, #0x10]
+ ldr r0, [r4, #0x10]
+ str r0, [r4, #0xc]
+ str r1, [r4, #0x18]
+ ldr r0, [r4, #0x18]
+ str r0, [r4, #0x14]
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start FSi_SendCommand
+FSi_SendCommand:
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ ldr r6, [r7, #0x8]
+ mov r2, #0x1
+ str r1, [r7, #0x10]
+ mov r0, #0x2
+ str r0, [r7, #0x14]
+ ldr r0, [r7, #0xc]
+ mov r5, r2, lsl r1
+ orr r0, r0, #0x1
+ str r0, [r7, #0xc]
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x1c]
+ mov r4, r0
+ ands r0, r1, #0x80
+ beq _020D1238
+ mov r0, r7
+ mov r1, #0x3
+ bl FSi_ReleaseCommand
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D1238:
+ ands r0, r5, #0x1fc
+ ldrne r0, [r7, #0xc]
+ add r2, r6, #0x20
+ orrne r0, r0, #0x4
+ strne r0, [r7, #0xc]
+ ldr r1, [r7, #0x0]
+ ldr r0, [r7, #0x4]
+ cmp r1, #0x0
+ strne r0, [r1, #0x4]
+ cmp r0, #0x0
+ strne r1, [r0, #0x0]
+ ldr r0, [r2, #0x4]
+ cmp r0, #0x0
+ beq _020D1280
+_020D1270:
+ mov r2, r0
+ ldr r0, [r0, #0x4]
+ cmp r0, #0x0
+ bne _020D1270
+_020D1280:
+ str r7, [r2, #0x4]
+ str r2, [r7, #0x0]
+ mov r1, #0x0
+ str r1, [r7, #0x4]
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x8
+ movne r1, #0x1
+ cmp r1, #0x0
+ bne _020D132C
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x10
+ bne _020D132C
+ ldr r1, [r6, #0x1c]
+ mov r0, r4
+ orr r1, r1, #0x10
+ str r1, [r6, #0x1c]
+ bl OS_RestoreInterrupts
+ ldr r0, [r6, #0x58]
+ ands r0, r0, #0x200
+ beq _020D12E0
+ ldr r2, [r6, #0x54]
+ mov r0, r7
+ mov r1, #0x9
+ blx r2
+_020D12E0:
+ bl OS_DisableInterrupts
+ ldr r1, [r7, #0xc]
+ orr r1, r1, #0x40
+ str r1, [r7, #0xc]
+ ldr r1, [r7, #0xc]
+ ands r1, r1, #0x4
+ movne r1, #0x1
+ moveq r1, #0x0
+ cmp r1, #0x0
+ bne _020D1324
+ bl OS_RestoreInterrupts
+ mov r0, r7
+ bl FSi_ExecuteAsyncCommand
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D1324:
+ bl OS_RestoreInterrupts
+ b _020D1378
+_020D132C:
+ ldr r0, [r7, #0xc]
+ ands r0, r0, #0x4
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ bne _020D135C
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D135C:
+ add r0, r7, #0x18
+ bl OS_SleepThread
+ ldr r0, [r7, #0xc]
+ ands r0, r0, #0x40
+ beq _020D135C
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020D1378:
+ mov r0, r7
+ bl FSi_ExecuteSyncCommand
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start FSi_ExecuteSyncCommand
+FSi_ExecuteSyncCommand: ; 0x020D138C
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ ldr r1, [r4, #0x10]
+ bl FSi_TranslateCommand
+ mov r1, r0
+ mov r0, r4
+ bl FSi_ReleaseCommand
+ ldr r0, [r4, #0x8]
+ bl FSi_NextCommand
+_020D13B0:
+ cmp r0, #0x0
+ beq _020D13BC
+ bl FSi_ExecuteAsyncCommand
+_020D13BC:
+ ldr r0, [r4, #0x14]
+ cmp r0, #0x0
+ moveq r0, #0x1
+ movne r0, #0x0
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start FSi_ExecuteAsyncCommand
+FSi_ExecuteAsyncCommand: ; 0x020D13D4
+ stmdb sp!, {r4-r8,lr}
+ movs r6, r0
+ ldr r5, [r6, #0x8]
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r7, #0x0
+ mov r8, #0x1
+_020D13F0:
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0xc]
+ mov r4, r0
+ orr r0, r1, #0x40
+ str r0, [r6, #0xc]
+ ldr r0, [r6, #0xc]
+ ands r0, r0, #0x4
+ movne r0, r8
+ moveq r0, r7
+ cmp r0, #0x0
+ beq _020D1434
+ add r0, r6, #0x18
+ bl OS_WakeupThread
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020D1434:
+ ldr r1, [r6, #0xc]
+ mov r0, r4
+ orr r1, r1, #0x8
+ str r1, [r6, #0xc]
+ bl OS_RestoreInterrupts
+ ldr r1, [r6, #0x10]
+ mov r0, r6
+ bl FSi_TranslateCommand
+ cmp r0, #0x6
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r0, r5
+ bl FSi_NextCommand
+ movs r6, r0
+ bne _020D13F0
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+
+ arm_func_start FSi_NextCommand
+FSi_NextCommand:
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4c
+ mov r6, r0
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0x1c]
+ mov r5, r0
+ ands r0, r1, #0x20
+ beq _020D1500
+ ldr r0, [r6, #0x1c]
+ bic r0, r0, #0x20
+ str r0, [r6, #0x1c]
+ ldr r0, [r6, #0x24]
+ cmp r0, #0x0
+ beq _020D1500
+ mov r8, #0x0
+ mov r9, #0x1
+ mov r7, #0x3
+_020D14BC:
+ ldr r1, [r0, #0xc]
+ ldr r4, [r0, #0x4]
+ ands r1, r1, #0x2
+ movne r1, r9
+ moveq r1, r8
+ cmp r1, #0x0
+ beq _020D14F4
+ ldr r1, [r6, #0x24]
+ cmp r1, r0
+ mov r1, r7
+ streq r4, [r6, #0x24]
+ bl FSi_ReleaseCommand
+_020D14EC:
+ cmp r4, #0x0
+ ldreq r4, [r6, #0x24]
+_020D14F4:
+ mov r0, r4
+ cmp r4, #0x0
+ bne _020D14BC
+_020D1500:
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x40
+ bne _020D15EC
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x8
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ bne _020D15EC
+ ldr r4, [r6, #0x24]
+ cmp r4, #0x0
+ beq _020D15EC
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x10
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ moveq r7, #0x1
+ movne r7, #0x0
+ cmp r7, #0x0
+ ldrne r0, [r6, #0x1c]
+ orrne r0, r0, #0x10
+ strne r0, [r6, #0x1c]
+ mov r0, r5
+ bl OS_RestoreInterrupts
+_020D1564:
+ cmp r7, #0x0
+ beq _020D1588
+ ldr r0, [r6, #0x58]
+ ands r0, r0, #0x200
+ beq _020D1588
+ ldr r2, [r6, #0x54]
+ mov r0, r4
+ mov r1, #0x9
+ blx r2
+_020D1588:
+ bl OS_DisableInterrupts
+ ldr r1, [r4, #0xC]
+ mov r5, r0
+ orr r0, r1, #0x40
+ str r0, [r4, #0xC]
+ ldr r0, [r4, #0xC]
+ ands r0, r0, #0x4
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ beq _020D15D4
+ add r0, r4, #0x18
+ bl OS_WakeupThread
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4c
+ mov r0, #0x0
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+_020D15D4:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4c
+ mov r0, r4
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+_020D15EC:
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x10
+ beq _020D162C
+ ldr r0, [r6, #0x1c]
+ bic r0, r0, #0x10
+ str r0, [r6, #0x1c]
+ ldr r0, [r6, #0x58]
+ ands r0, r0, #0x400
+ beq _020D162C
+ add r0, sp, #0x0
+ bl FS_InitFile
+ str r6, [sp, #0x8]
+ ldr r2, [r6, #0x54]
+ add r0, sp, #0x0
+ mov r1, #0xa
+ blx r2
+_020D162C:
+ ldr r0, [r6, #0x1c]
+ ands r0, r0, #0x40
+ beq _020D1658
+ ldr r1, [r6, #0x1c]
+ add r0, r6, #0x14
+ bic r1, r1, #0x40
+ str r1, [r6, #0x1c]
+ ldr r1, [r6, #0x1c]
+ orr r1, r1, #0x8
+ str r1, [r6, #0x1c]
+ bl OS_WakeupThread
+_020D1658:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+_020D1660:
+ mov r0, #0x0
+ add sp, sp, #0x4c
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+
+ arm_func_start FSi_ReadMemoryCore
+FSi_ReadMemoryCore: ; 0x020D1670
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ mov r0, r2
+ mov r2, r3
+ bl MI_CpuCopy8
+_020D1684:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start FSi_WriteMemCallback
+FSi_WriteMemCallback: ; 0x020D1694
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r12, [r0, #0x28]
+ mov r0, r1
+ add r1, r12, r2
+ mov r2, r3
+ bl MI_CpuCopy8
+_020D16B0:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start FSi_ReadMemCallback
+FSi_ReadMemCallback: ; 0x020D16C0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, [r0, #0x28]
+ add r0, r0, r2
+ mov r2, r3
+ bl MI_CpuCopy8
+_020D16D8:
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start FSi_GetPackedName
+FSi_GetPackedName: ; 0x020D16E8
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r1, #0x3
+ mov lr, #0x0
+ bgt _020D173C
+ mov r12, lr
+ cmp r1, #0x0
+ ble _020D173C
+ mov r3, lr
+_020D170C:
+ ldrb r2, [r0, r12]
+ cmp r2, #0x0
+ beq _020D173C
+ sub r2, r2, #0x41
+ cmp r2, #0x19
+ addls r2, r2, #0x61
+ addhi r2, r2, #0x41
+ add r12, r12, #0x1
+ orr lr, lr, r2, lsl r3
+ cmp r12, r1
+ add r3, r3, #0x8
+ blt _020D170C
+_020D173C:
+ mov r0, lr
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FS_ChangeDir
+FS_ChangeDir: ; 0x020D174C
+ stmdb sp!, {r4,lr}
+ sub sp, sp, #0x58
+ mov r4, r0
+ add r0, sp, #0xc
+ bl FS_InitFile
+ add r0, sp, #0xc
+ add r3, sp, #0x0
+ mov r1, r4
+ mov r2, #0x0
+ bl FSi_FindPath
+_020D1774:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ addne r0, sp, #0x0
+ ldrne r3, _020D179C
+ ldmneia r0, {r0, r1, r2}
+ stmneia r3, {r0, r1, r2}
+ movne r0, #0x1
+ add sp, sp, #0x58
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D179C: .word 0x021D53EC
+
+ arm_func_start FS_SeekFile
+FS_SeekFile: ; 0x020D17A0
+ cmp r2, #0x0
+ beq _020D17BC
+ cmp r2, #0x1
+ beq _020D17C8
+ cmp r2, #0x2
+ beq _020D17D4
+ b _020D17E0
+_020D17BC:
+ ldr r2, [r0, #0x24]
+ add r1, r1, r2
+ b _020D17E8
+_020D17C8:
+ ldr r2, [r0, #0x2c]
+ add r1, r1, r2
+ b _020D17E8
+_020D17D4:
+ ldr r2, [r0, #0x28]
+ add r1, r1, r2
+ b _020D17E8
+_020D17E0:
+ mov r0, #0x0
+ bx lr
+_020D17E8:
+ ldr r2, [r0, #0x24]
+ cmp r1, r2
+ movlt r1, r2
+ ldr r2, [r0, #0x28]
+ cmp r1, r2
+ movgt r1, r2
+ str r1, [r0, #0x2c]
+ mov r0, #0x1
+ bx lr
+
+ arm_func_start FS_ReadFile
+FS_ReadFile: ; 0x020D180C
+ ldr ip, _020D1818 ; =FUN_020D1AAC
+ mov r3, #0x0
+ bx r12
+ .balign 4
+_020D1818: .word FUN_020D1AAC
+
+ arm_func_start FS_ReadFileAsync
+FS_ReadFileAsync: ; 0x020D181C
+ ldr ip, _020D1828 ; =FUN_020D1AAC
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020D1828: .word FUN_020D1AAC
+
+ arm_func_start FS_WaitAsync
+FS_WaitAsync: ; 0x020D182C
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r0
+ mov r5, #0x0
+ bl OS_DisableInterrupts
+ ldr r1, [r6, #0xc]
+ mov r4, r0
+ ands r0, r1, #0x1
+ movne r0, #0x1
+ moveq r0, r5
+ cmp r0, #0x0
+ beq _020D18BC
+ ldr r0, [r6, #0xc]
+ ands r0, r0, #0x44
+ moveq r5, #0x1
+ movne r5, #0x0
+ cmp r5, #0x0
+ beq _020D189C
+ ldr r0, [r6, #0xc]
+ orr r0, r0, #0x4
+ str r0, [r6, #0xc]
+ add r7, r6, #0x18
+_020D1884:
+ mov r0, r7
+ bl OS_SleepThread
+ ldr r0, [r6, #0xc]
+ ands r0, r0, #0x40
+ beq _020D1884
+ b _020D18BC
+_020D189C:
+ add r0, r6, #0x18
+ bl OS_SleepThread
+ ldr r0, [r6, #0xc]
+ ands r0, r0, #0x1
+ movne r0, #0x1
+ moveq r0, #0x0
+ cmp r0, #0x0
+ bne _020D189C
+_020D18BC:
+ mov r0, r4
+ bl OS_RestoreInterrupts
+_020D18C4:
+ cmp r5, #0x0
+ beq _020D18E0
+ mov r0, r6
+ bl FSi_ExecuteSyncCommand
+ add sp, sp, #4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D18E0:
+ ldr r0, [r6, #0x14]
+ cmp r0, #0x0
+ moveq r0, #0x1
+ movne r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+
+ arm_func_start FS_CloseFile
+FS_CloseFile: ; 0x020D18FC
+ stmdb sp!, {r4,lr}
+ mov r1, #0x8
+ mov r4, r0
+ bl FSi_SendCommand
+_020D190C:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ mov r0, #0x0
+ str r0, [r4, #0x8]
+ mov r0, #0xE
+ str r0, [r4, #0x10]
+ ldr r1, [r4, #0xC]
+ mov r0, #0x1
+ bic r1, r1, #0x30
+ str r1, [r4, #0xC]
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start FS_OpenFile
+FS_OpenFile: ; 0x020D1944
+ stmdb sp!, {r4,lr}
+ sub sp, sp, #0x8
+ mov r4, r0
+ add r0, sp, #0x0
+ bl FS_ConvertPathToFileID
+_020D1958:
+ cmp r0, #0x0
+ beq _020D1984
+ add r1, sp, #0x0
+ mov r0, r4
+ ldmia r1, {r1, r2}
+ bl FS_OpenFileFast
+ cmp r0, #0x0
+ addne sp, sp, #0x8
+ movne r0, #0x1
+ ldmneia sp!, {r4, lr}
+ bxne lr
+_020D1984:
+ mov r0, #0x0
+ add sp, sp, #0x8
+ ldmia sp!, {r4, lr}
+ bx lr
+
+ arm_func_start FS_OpenFileFast
+FS_OpenFileFast:
+ stmdb sp!, {r0-r3}
+ stmdb sp!, {r4,lr}
+ ldr r1, [sp, #0xc]
+ mov r4, r0
+ cmp r1, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4,lr}
+ addeq sp, sp, #0x10
+ bxeq lr
+ str r1, [r4, #0x8]
+ ldr r3, [sp, #0xc]
+ ldr r2, [sp, #0x10]
+ mov r1, #0x6
+ str r3, [r4, #0x30]
+ str r2, [r4, #0x34]
+ bl FSi_SendCommand
+_020D19D4:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4, lr}
+ addeq sp, sp, #0x10
+ bxeq lr
+ ldr r1, [r4, #0xC]
+ mov r0, #0x1
+ orr r1, r1, #0x10
+ str r1, [r4, #0xC]
+ ldr r1, [r4, #0xC]
+ bic r1, r1, #0x20
+ str r1, [r4, #0xC]
+ ldmia sp!, {r4, lr}
+ add sp, sp, #0x10
+ bx lr
+
+ arm_func_start FS_OpenFileDirect
+FS_OpenFileDirect:
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ str r1, [r4, #0x8]
+ ldr r12, [sp, #0x8]
+ mov r1, #0x7
+ str r12, [r4, #0x38]
+ str r2, [r4, #0x30]
+ str r3, [r4, #0x34]
+ bl FSi_SendCommand
+_020D1A34:
+ cmp r0, #0x0
+ moveq r0, #0x0
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ ldr r1, [r4, #0xC]
+ mov r0, #0x1
+ orr r1, r1, #0x10
+ str r1, [r4, #0xC]
+ ldr r1, [r4, #0xC]
+ bic r1, r1, #0x20
+ str r1, [r4, #0xC]
+ ldmia sp!, {r4, lr}
+ bx lr
+
+ arm_func_start FS_ConvertPathToFileID
+FS_ConvertPathToFileID:
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4c
+ mov r5, r0
+ add r0, sp, #0x0
+ mov r4, r1
+ bl FS_InitFile
+_020D1A80:
+ add r0, sp, #0x0
+ mov r1, r4
+ mov r2, r5
+ mov r3, #0x0
+ bl FSi_FindPath
+ cmp r0, #0x0
+ movne r0, #0x1
+ moveq r0, #0x0
+ add sp, sp, #0x4C
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+
+ arm_func_start FUN_020D1AAC
+FUN_020D1AAC: ; 0x020D1AAC
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ ldr r4, [r7, #0x2c]
+ ldr r0, [r7, #0x28]
+ mov r6, r2
+ str r1, [r7, #0x30]
+ sub r0, r0, r4
+ cmp r6, r0
+ movgt r6, r0
+ cmp r6, #0x0
+ movlt r6, #0x0
+ str r2, [r7, #0x34]
+ mov r5, r3
+ str r6, [r7, #0x38]
+ cmp r5, #0x0
+ ldreq r0, [r7, #0xc]
+ mov r1, #0x0
+ orreq r0, r0, #0x4
+ streq r0, [r7, #0xc]
+ mov r0, r7
+ bl FSi_SendCommand
+_020D1B04:
+ cmp r5, #0x0
+ bne _020D1B24
+ mov r0, r7
+ bl FS_WaitAsync
+ cmp r0, #0x0
+ ldrne r0, [r7, #0x2C]
+ subne r6, r0, r4
+ mvneq r6, #0x0
+_020D1B24:
+ mov r0, r6
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7, lr}
+ bx lr
+
+ arm_func_start FSi_FindPath
+FSi_FindPath:
+ stmdb sp!, {r4-r8,lr}
+ sub sp, sp, #0x10
+ mov r7, r1
+ ldrb r1, [r7, #0x0]
+ mov r8, r0
+ mov r6, r2
+ mov r5, r3
+ cmp r1, #0x2f
+ beq _020D1B60
+ cmp r1, #0x5c
+ bne _020D1B84
+_020D1B60:
+ ldr r0, _020D1C90 ; =0x021D53EC
+ mov r1, #0x0
+ ldr r0, [r0, #0x0]
+ strh r1, [sp, #0x4]
+ str r0, [sp, #0x0]
+ str r1, [sp, #0x8]
+ strh r1, [sp, #0x6]
+ add r7, r7, #0x1
+ b _020D1C40
+_020D1B84:
+ ldr r0, _020D1C90 ; =0x021D53EC
+ add r3, sp, #0x0
+ ldmia r0, {r0-r2}
+ stmia r3, {r0-r2}
+ mov r4, #0x0
+_020D1B98:
+ ldrb r0, [r7, r4]
+ cmp r0, #0x0
+ beq _020D1C40
+ cmp r0, #0x2f
+ beq _020D1C40
+ cmp r0, #0x5c
+ beq _020D1C40
+ cmp r0, #0x3a
+ bne _020D1C34
+ mov r0, r7
+ mov r1, r4
+ bl FS_FindArchive
+_020D1BC8:
+ cmp r0, #0x0
+ addeq sp, sp, #0x10
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ ldr r1, [r0, #0x1C]
+ ands r1, r1, #0x2
+ movne r1, #0x1
+ moveq r1, #0x0
+ cmp r1, #0x0
+ addeq sp, sp, #0x10
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r1, #0x0
+ str r0, [sp]
+ str r1, [sp, #0x8]
+ strh r1, [sp, #0x6]
+ strh r1, [sp, #0x4]
+ add r0, r4, #0x1
+ ldrb r0, [r7, r0]!
+ cmp r0, #0x2f
+ beq _020D1C2C
+ cmp r0, #0x5c
+ bne _020D1C40
+_020D1C2C:
+ add r7, r7, #0x1
+ b _020D1C40
+_020D1C34:
+ add r4, r4, #0x1
+ cmp r4, #0x3
+ ble _020D1B98
+_020D1C40:
+ ldr r1, [sp, #0x0]
+ add r0, sp, #0x0
+ str r1, [r8, #0x8]
+ str r7, [r8, #0x3c]
+ add r3, r8, #0x30
+ ldmia r0, {r0-r2}
+ stmia r3, {r0-r2}
+ cmp r5, #0x0
+ movne r0, #0x1
+ strne r0, [r8, #0x40]
+ strne r5, [r8, #0x44]
+ moveq r0, #0x0
+ streq r0, [r8, #0x40]
+ mov r0, r8
+ mov r1, #0x4
+ streq r6, [r8, #0x44]
+ bl FSi_SendCommand
+ add sp, sp, #0x10
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020D1C90: .word 0x021D53EC
+
+ arm_func_start FS_InitFile
+FS_InitFile:
+ mov r3, #0x0
+ str r3, [r0, #0x0]
+ ldr r2, [r0, #0x0]
+ mov r1, #0xe
+ str r2, [r0, #0x4]
+ str r3, [r0, #0x1c]
+ ldr r2, [r0, #0x1c]
+ str r2, [r0, #0x18]
+ str r3, [r0, #0x8]
+ str r1, [r0, #0x10]
+ str r3, [r0, #0xc]
+ bx lr
+
+ arm_func_start FS_IsAvailable
+FS_IsAvailable: ; 0x020D1CC4
+ ldr r0, _020D1CD0 ; =0x021D53F8
+ ldr r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020D1CD0: .word 0x021D53F8
+
+ arm_func_start FS_Init
+FS_Init: ; 0x020D1CD4
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D1D0C ; =0x021D53F8
+ ldr r2, [r1, #0x0]
+ cmp r2, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {lr}
+ bxne lr
+ mov r2, #0x1
+ str r2, [r1, #0x0]
+ bl FSi_InitRom
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D1D0C: .word 0x021D53F8
+
+ arm_func_start FS_TryLoadTable
+FS_TryLoadTable: ; 0x020D1D10
+ ldr ip, _020D1D28 ; =FUN_020D0D84
+ mov r3, r0
+ mov r2, r1
+ ldr r0, _020D1D2C ; =0x021D5414
+ mov r1, r3
+ bx r12
+ .balign 4
+_020D1D28: .word FUN_020D0D84
+_020D1D2C: .word 0x021D5414
+
+ arm_func_start FS_SetDefaultDMA
+FS_SetDefaultDMA: ; 0x020D1D30
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ bl OS_DisableInterrupts
+ mov r5, r0
+ ldr r1, _020D1D7C ; =0x021D5400
+ ldr r0, _020D1D80 ; =0x021D5414
+ ldr r4, [r1, #0x0]
+ bl FS_SuspendArchive
+ ldr r1, _020D1D7C ; =0x021D5400
+ cmp r0, #0x0
+ str r6, [r1, #0x0]
+ beq _020D1D68
+ ldr r0, _020D1D80 ; =0x021D5414
+ bl FS_ResumeArchive
+_020D1D68:
+ mov r0, r5
+ bl OS_RestoreInterrupts
+ mov r0, r4
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020D1D7C: .word 0x021D5400
+_020D1D80: .word 0x021D5414
+
+ arm_func_start FSi_InitRom
+FSi_InitRom: ; 0x020D1D84
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x14
+ ldr r1, _020D1EE8 ; =0x021D5400
+ str r0, [r1, #0x0]
+ bl OS_GetLockID
+ ldr r3, _020D1EEC ; =0x021D53FC
+ ldr r2, _020D1EF0 ; =0x021D5404
+ mov r12, #0x0
+ ldr r1, _020D1EF4 ; =0x021D540C
+ str r0, [r3, #0x0]
+ str r12, [r2, #0x0]
+ str r12, [r2, #0x4]
+ str r12, [r1, #0x0]
+ str r12, [r1, #0x4]
+ bl CARD_Init
+ ldr r0, _020D1EF8 ; =0x021D5414
+ bl FS_InitArchive
+ ldr r0, _020D1EF8 ; =0x021D5414
+ ldr r1, _020D1EFC ; =0x02106830
+ mov r2, #0x3
+ bl FS_RegisterArchiveName
+ ldr r0, _020D1F00 ; =0x027FFC40
+ ldrh r0, [r0, #0x0]
+ cmp r0, #0x2
+ bne _020D1E4C
+ ldr ip, _020D1EF0 ; =0x021D5404
+ mvn r2, #0x0
+ ldr r3, _020D1EF4 ; =0x021D540C
+ mov lr, #0x0
+ ldr r0, _020D1EF8 ; =0x021D5414
+ ldr r1, _020D1F04 ; =FSi_EmptyArchiveProc
+ str r2, [r12, #0x0]
+ str lr, [r12, #0x4]
+ str r2, [r3, #0x0]
+ str lr, [r3, #0x4]
+ bl FS_SetArchiveProc
+ mov r1, #0x0
+ str r1, [sp, #0x0]
+ ldr r0, _020D1F08 ; =FSi_ReadDummyCallback
+ str r1, [sp, #0x4]
+ str r0, [sp, #0x8]
+ ldr ip, _020D1F0C ; =FSi_WriteDummyCallback
+ ldr r0, _020D1EF8 ; =0x021D5414
+ mov r2, r1
+ mov r3, r1
+ str r12, [sp, #0xc]
+ bl FS_LoadArchive
+ add sp, sp, #0x14
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D1E4C:
+ ldr r5, _020D1F10 ; =0x027FFE40
+ ldr r0, _020D1EF8 ; =0x021D5414
+ ldr r1, _020D1F14 ; =FSi_RomArchiveProc
+ ldr r2, _020D1F18 ; =0x00000602
+ ldr r4, _020D1F1C ; =0x027FFE48
+ bl FS_SetArchiveProc
+ ldr r1, [r5, #0x0]
+ mvn r0, #0x0
+ cmp r1, r0
+ addeq sp, sp, #0x14
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ cmp r1, #0x0
+ addeq sp, sp, #0x14
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r2, [r4, #0x0]
+ cmp r2, r0
+ addeq sp, sp, #0x14
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ cmp r2, #0x0
+ addeq sp, sp, #0x14
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ str r1, [sp, #0x0]
+ ldr r0, [r5, #0x4]
+ ldr r1, _020D1F20 ; =FSi_ReadRomCallback
+ str r0, [sp, #0x4]
+ ldr r0, _020D1F0C ; =FSi_WriteDummyCallback
+ str r1, [sp, #0x8]
+ str r0, [sp, #0xc]
+ ldr r3, [r4, #0x4]
+ ldr r0, _020D1EF8 ; =0x021D5414
+ mov r1, #0x0
+ bl FS_LoadArchive
+ add sp, sp, #0x14
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020D1EE8: .word 0x021D5400
+_020D1EEC: .word 0x021D53FC
+_020D1EF0: .word 0x021D5404
+_020D1EF4: .word 0x021D540C
+_020D1EF8: .word 0x021D5414
+_020D1EFC: .word 0x02106830
+_020D1F00: .word 0x027FFC40
+_020D1F04: .word FSi_EmptyArchiveProc
+_020D1F08: .word FSi_ReadDummyCallback
+_020D1F0C: .word FSi_WriteDummyCallback
+_020D1F10: .word 0x027FFE40
+_020D1F14: .word FSi_RomArchiveProc
+_020D1F18: .word 0x00000602
+_020D1F1C: .word 0x027FFE48
+_020D1F20: .word FSi_ReadRomCallback
+
+ arm_func_start FSi_EmptyArchiveProc
+FSi_EmptyArchiveProc: ; 0x020D1F24
+ mov r0, #0x4
+ bx lr
+
+ arm_func_start FSi_ReadDummyCallback
+FSi_ReadDummyCallback: ; 0x020D1F2C
+ mov r0, #0x1
+ bx lr
+
+ arm_func_start FSi_RomArchiveProc
+FSi_RomArchiveProc: ; 0x020D1F34
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r1, #0x1
+ beq _020D1FA0
+ cmp r1, #0x9
+ beq _020D1F58
+ cmp r1, #0xa
+ beq _020D1F7C
+ b _020D1FB0
+_020D1F58:
+ ldr r0, _020D1FC0 ; =0x021D53FC
+ ldr r0, [r0, #0x0]
+ mov r0, r0, lsl #0x10
+ mov r0, r0, lsr #0x10
+ bl CARD_LockRom
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {lr}
+ bx lr
+_020D1F7C:
+ ldr r0, _020D1FC0 ; =0x021D53FC
+ ldr r0, [r0, #0x0]
+ mov r0, r0, lsl #0x10
+ mov r0, r0, lsr #0x10
+ bl CARD_UnlockRom
+ add sp, sp, #0x4
+ mov r0, #0x0
+ ldmia sp!, {lr}
+ bx lr
+_020D1FA0:
+ add sp, sp, #0x4
+ mov r0, #0x4
+ ldmia sp!, {lr}
+ bx lr
+_020D1FB0:
+ mov r0, #0x8
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D1FC0: .word 0x021D53FC
+
+ arm_func_start FSi_WriteDummyCallback
+FSi_WriteDummyCallback: ; 0x020D1FC4
+ mov r0, #0x1
+ bx lr
+
+ arm_func_start FSi_ReadRomCallback
+FSi_ReadRomCallback: ; 0x020D1FCC
+ stmdb sp!, {lr}
+ sub sp, sp, #0xc
+ ldr ip, _020D2010 ; =FSi_OnRomReadDone
+ mov lr, r1
+ str r12, [sp, #0x0]
+ str r0, [sp, #0x4]
+ mov r1, #0x1
+ ldr r0, _020D2014 ; =0x021D5400
+ str r1, [sp, #0x8]
+ mov r1, r2
+ ldr r0, [r0, #0x0]
+ mov r2, lr
+ bl CARDi_ReadRom
+ mov r0, #0x6
+ add sp, sp, #0xc
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D2010: .word FSi_OnRomReadDone
+_020D2014: .word 0x021D5400
+
+ arm_func_start FSi_OnRomReadDone
+FSi_OnRomReadDone: ; 0x020D2018
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ bl CARD_IsPulledOut
+_020D2024:
+ cmp r0, #0x0
+ movne r1, #0x5
+ moveq r1, #0x0
+ mov r0, r4
+ bl FS_NotifyArchiveAsyncEnd
+ ldmia sp!, {r4,lr}
+ bx lr
+
+
+ arm_func_start FS_UnloadOverlay
+FS_UnloadOverlay: ; 0x020D2040
+ stmdb sp!, {lr}
+ sub sp, sp, #0x2c
+ mov r3, r0
+ mov r2, r1
+ add r0, sp, #0x0
+ mov r1, r3
+ bl FS_LoadOverlayInfo
+_020D205C:
+ cmp r0, #0x0
+ beq _020D2074
+ add r0, sp, #0x0
+ bl FS_UnloadOverlayImage
+ cmp r0, #0x0
+ bne _020D2084
+_020D2074:
+ add sp, sp, #0x2c
+ mov r0, #0x0
+ ldmfd sp!, {lr}
+ bx lr
+_020D2084:
+ mov r0, #0x1
+ add sp, sp, #0x2c
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start FS_LoadOverlay
+FS_LoadOverlay: ; 0x020D2094
+ stmdb sp!, {lr}
+ sub sp, sp, #0x2c
+ mov r3, r0
+ mov r2, r1
+ add r0, sp, #0x0
+ mov r1, r3
+ bl FS_LoadOverlayInfo
+_020D20B0:
+ cmp r0, #0x0
+ beq _020D20C8
+ add r0, sp, #0x0
+ bl FS_LoadOverlayImage
+ cmp r0, #0x0
+ bne _020D20D8
+_020D20C8:
+ add sp, sp, #0x2c
+ mov r0, #0x0
+ ldmfd sp!, {lr}
+ bx lr
+_020D20D8:
+ add r0, sp, #0x0
+ bl FS_StartOverlay
+ mov r0, #0x1
+ add sp, sp, #0x2c
+ ldmfd sp!, {lr}
+ bx lr
+
+ arm_func_start FS_UnloadOverlayImage
+FS_UnloadOverlayImage: ; 0x020D20F0
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ bl FS_EndOverlay
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+
+ arm_func_start FS_EndOverlay
+FS_EndOverlay: ; 0x020D210C
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x4
+ ldr r8, _020D220C ; =0x021D74C8
+ mov r11, r0
+ mov r9, #0x0
+_020D2120:
+ ldr r1, [r11, #0x8]
+ ldr r0, [r11, #0xc]
+ ldr r5, [r11, #0x4]
+ add r0, r1, r0
+ mov r7, r9
+ mov r6, r9
+ add r4, r5, r0
+ bl OS_DisableInterrupts
+ ldr lr, [r8, #0x0]
+ mov r10, r9
+ mov r12, lr
+ cmp lr, #0x0
+ beq _020D21C4
+_020D2154:
+ ldr r2, [r12, #0x8]
+ ldr r3, [r12, #0x0]
+ cmp r2, #0x0
+ ldr r1, [r12, #0x4]
+ bne _020D2178
+ cmp r1, r5
+ blo _020D2178
+ cmp r1, r4
+ blo _020D2188
+_020D2178:
+ cmp r2, r5
+ blo _020D21B4
+ cmp r2, r4
+ bhs _020D21B4
+_020D2188:
+ cmp r6, #0x0
+ strne r12, [r6, #0x0]
+ moveq r7, r12
+ cmp lr, r12
+ streq r3, [r8, #0x0]
+ moveq lr, r3
+ str r9, [r12, #0x0]
+ cmp r10, #0x0
+ mov r6, r12
+ strne r3, [r10, #0x0]
+ b _020D21B8
+_020D21B4:
+ mov r10, r12
+_020D21B8:
+ mov r12, r3
+ cmp r3, #0x0
+ bne _020D2154
+_020D21C4:
+ bl OS_RestoreInterrupts
+_020D21C8:
+ cmp r7, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r11, lr}
+ bxeq lr
+_020D21D8:
+ ldr r1, [r7, #0x4]
+ ldr r4, [r7]
+ cmp r1, #0x0
+ beq _020D21F0
+ ldr r0, [r7, #0x8]
+ blx r1
+_020D21F0:
+ mov r7, r4
+ cmp r4, #0x0
+ bne _020D21D8
+ b _020D2120
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r11, lr}
+ bx lr
+_020D220C: .word 0x021D74C8
+
+ arm_func_start FS_StartOverlay
+FS_StartOverlay: ; 0x020D2210
+ stmdb sp!, {r4-r6,lr}
+ mov r5, r0
+ bl FSi_GetOverlayBinarySize
+ ldr r1, _020D2300 ; =0x027FFC40
+ mov r4, r0
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x2
+ bne _020D22A4
+ ldrb r1, [r5, #0x1f]
+ mov r0, #0x0
+ ands r1, r1, #0x2
+ beq _020D2280
+ ldr r1, _020D2304 ; =0x02106F84
+ ldr r3, _020D2308 ; =0x02106F84
+ ldr r2, _020D230C ; =0x66666667
+ sub r12, r1, r3
+ smull r1, lr, r2, r12
+ mov lr, lr, asr #0x3
+ mov r1, r12, lsr #0x1f
+ ldr r2, [r5, #0x0]
+ add lr, r1, lr
+ cmp r2, lr
+ bhs _020D2280
+ mov r0, #0x14
+ mla r0, r2, r0, r3
+ ldr r1, [r5, #0x4]
+ mov r2, r4
+ bl FSi_CompareDigest
+_020D2280:
+ cmp r0, #0x0
+ bne _020D22A4
+ ldr r0, [r5, #0x4]
+ mov r2, r4
+ mov r1, #0x0
+ bl MI_CpuFill8
+ bl OS_Terminate
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D22A4:
+ ldrb r0, [r5, #0x1f]
+ ands r0, r0, #0x1
+ beq _020D22BC
+ ldr r0, [r5, #0x4]
+ add r0, r0, r4
+ bl MIi_UncompressBackward
+_020D22BC:
+ ldr r0, [r5, #0x4]
+ ldr r1, [r5, #0x8]
+ bl DC_FlushRange
+ ldr r6, [r5, #0x10]
+ ldr r4, [r5, #0x14]
+ cmp r6, r4
+ ldmcsia sp!, {r4-r6,lr}
+ bxcs lr
+_020D22DC:
+ ldr r0, [r6, #0x0]
+ cmp r0, #0x0
+ beq _020D22EC
+ blx r0
+_020D22EC:
+ add r6, r6, #0x4
+ cmp r6, r4
+ blo _020D22DC
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020D2300: .word 0x027FFC40
+_020D2304: .word 0x02106F84
+_020D2308: .word 0x02106F84
+_020D230C: .word 0x66666667
+
+ arm_func_start FSi_CompareDigest
+FSi_CompareDigest:
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x58
+ mov r4, r0
+ mov r6, r1
+ mov r5, r2
+ add r0, sp, #0x4
+ mov r1, #0x0
+ mov r2, #0x14
+ bl MI_CpuFill8
+ ldr r0, _020D23AC ; =0x02106834
+ ldr r1, _020D23B0 ; =0x02106838
+ ldr r0, [r0, #0x0]
+ ldr r2, [r1, #0x0]
+ add r1, sp, #0x18
+ bl MI_CpuCopy8
+ ldr r3, _020D23B0 ; =0x02106838
+ mov r1, r6
+ ldr r12, [r3, #0x0]
+ mov r2, r5
+ add r0, sp, #0x4
+ add r3, sp, #0x18
+ str r12, [sp, #0x0]
+ bl MATH_CalcHMACSHA1
+ add r2, sp, #0x4
+ mov r3, #0x0
+_020D2374:
+ ldr r1, [r2, #0x0]
+ ldr r0, [r4, r3]
+ cmp r1, r0
+ bne _020D2394
+ add r3, r3, #0x4
+ cmp r3, #0x14
+ add r2, r2, #0x4
+ blo _020D2374
+_020D2394:
+ cmp r3, #0x14
+ moveq r0, #0x1
+ movne r0, #0x0
+ add sp, sp, #0x58
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020D23AC: .word 0x02106834
+_020D23B0: .word 0x02106838
+
+ arm_func_start FS_LoadOverlayImage
+FS_LoadOverlayImage: ; 0x020D23B4
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x54
+ mov r5, r0
+ add r0, sp, #0x8
+ bl FS_InitFile
+_020D23C8:
+ add r0, sp, #0x0
+ mov r1, r5
+ bl FS_GetOverlayFileID
+ add r1, sp, #0x0
+ add r0, sp, #0x8
+ ldmia r1, {r1, r2}
+ bl FS_OpenFileFast
+ cmp r0, #0x0
+ addeq sp, sp, #0x54
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r5, lr}
+ bxeq lr
+ mov r0, r5
+ bl FSi_GetOverlayBinarySize
+ mov r4, r0
+ mov r0, r5
+ bl FS_ClearOverlayImage
+ ldr r1, [r5, #0x4]
+ add r0, sp, #0x8
+ mov r2, r4
+ bl FS_ReadFile
+ cmp r4, r0
+ beq _020D243C
+ add r0, sp, #0x8
+ bl FS_CloseFile
+ add sp, sp, #0x54
+ mov r0, #0x0
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+_020D243C:
+ add r0, sp, #0x8
+ bl FS_CloseFile
+ mov r0, #0x1
+ add sp, sp, #0x54
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+
+ arm_func_start FS_LoadOverlayImageAsync
+FS_LoadOverlayImageAsync: ; 0x020D2454
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x8
+ mov r5, r1
+ mov r6, r0
+ mov r0, r5
+ bl FS_InitFile
+_020D246C:
+ add r0, sp, #0x0
+ mov r1, r6
+ bl FS_GetOverlayFileID
+ add r1, sp, #0x0
+ mov r0, r5
+ ldmia r1, {r1, r2}
+ bl FS_OpenFileFast
+ cmp r0, #0x0
+ addeq sp, sp, #0x8
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r6, lr}
+ bxeq lr
+ mov r0, r6
+ bl FSi_GetOverlayBinarySize
+ mov r4, r0
+ mov r0, r6
+ bl FS_ClearOverlayImage
+ ldr r1, [r6, #0x4]
+ mov r0, r5
+ mov r2, r4
+ bl FS_ReadFileAsync
+ cmp r4, r0
+ addeq sp, sp, #0x8
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r6, lr}
+ bxeq lr
+ mov r0, r5
+ bl FS_CloseFile
+ mov r0, #0x0
+ add sp, sp, #0x8
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+
+ arm_func_start FS_LoadOverlayInfo
+FS_LoadOverlayInfo:
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x64
+ movs r4, r1
+ mov r5, r0
+ ldreq r0, _020D25EC ; =0x021D5404
+ ldrne r0, _020D25F0 ; =0x021D540C
+ ldr r3, [r0, #0x0]
+ cmp r3, #0x0
+ beq _020D25A8
+ ldr r0, [r0, #0x4]
+ mov r2, r2, lsl #0x5
+ cmp r2, r0
+ addcs sp, sp, #0x64
+ movcs r0, #0x0
+ ldmcsia sp!, {r4-r5,lr}
+ bxcs lr
+ add r0, r3, r2
+ mov r1, r5
+ mov r2, #0x20
+ bl MI_CpuCopy8
+ add r0, sp, #0x18
+ str r4, [r5, #0x20]
+ bl FS_InitFile
+ add r0, sp, #0x10
+ mov r1, r5
+ bl FS_GetOverlayFileID
+ add r1, sp, #0x10
+ add r0, sp, #0x18
+ ldmia r1, {r1-r2}
+ bl FS_OpenFileFast
+_020D2564:
+ cmp r0, #0x0
+ addeq sp, sp, #0x64
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldr r1, [sp, #0x3c]
+ add r0, sp, #0x18
+ str r1, [r5, #0x24]
+ ldr r2, [sp, #0x40]
+ ldr r1, [sp, #0x3c]
+ sub r1, r2, r1
+ str r1, [r5, #0x28]
+ bl FS_CloseFile
+ add sp, sp, #0x64
+ mov r0, #0x1
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D25A8:
+ ldr r1, _020D25F4 ; =0x027FFE50
+ ldr ip, _020D25F8 ; =0x027FFE58
+ ldr r0, [r1, #0x0]
+ ldr r3, _020D25FC ; =0x021D5414
+ str r0, [sp, #0x0]
+ ldr r1, [r1, #0x4]
+ mov r0, r5
+ str r1, [sp, #0x4]
+ ldr r5, [r12, #0x0]
+ mov r1, r4
+ str r5, [sp, #0x8]
+ ldr r4, [r12, #0x4]
+ str r4, [sp, #0xc]
+ bl FSi_LoadOverlayInfoCore
+ add sp, sp, #0x64
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020D25EC: .word 0x021D5404
+_020D25F0: .word 0x021D540C
+_020D25F4: .word 0x027FFE50
+_020D25F8: .word 0x027FFE58
+_020D25FC: .word 0x021D5414
+
+ arm_func_start FSi_LoadOverlayInfoCore
+FSi_LoadOverlayInfoCore: ; 0x020D2600
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x54
+ movs r9, r1
+ ldreq r5, [sp, #0x74]
+ ldreq r6, [sp, #0x70]
+ ldrne r5, [sp, #0x7c]
+ ldrne r6, [sp, #0x78]
+ mov r7, r2, lsl #0x5
+ cmp r7, r5
+ mov r4, r0
+ mov r8, r3
+ addcs sp, sp, #0x54
+ movcs r0, #0x0
+ ldmcsia sp!, {r4-r9,lr}
+ bxcs lr
+ add r0, sp, #0xc
+ bl FS_InitFile
+ mvn r12, #0x0
+ add r0, sp, #0xc
+ mov r1, r8
+ add r2, r6, r7
+ add r3, r6, r5
+ str r12, [sp, #0x0]
+ bl FS_OpenFileDirect
+_020D2660:
+ cmp r0, #0
+ addeq sp, sp, #0x54
+ moveq r0, #0
+ ldmeqia sp!, {r4-r9, lr}
+ bxeq lr
+ add r0, sp, #12
+ mov r1, r4
+ mov r2, #32
+ bl FS_ReadFile
+ cmp r0, #32
+ beq _020D26A4
+ add r0, sp, #12
+ bl FS_CloseFile
+ add sp, sp, #0x54
+ mov r0, #0x0
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+_020D26A4:
+ add r0, sp, #0xC
+ bl FS_CloseFile
+ add r0, sp, #0x4
+ mov r1, r4
+ str r9, [r4, #0x20]
+ bl FS_GetOverlayFileID
+ add r1, sp, #0x4
+ add r0, sp, #0xC
+ ldmia r1, {r1, r2}
+ bl FS_OpenFileFast
+ cmp r0, #0x0
+ addeq sp, sp, #0x54
+ moveq r0, #0x0
+ ldmeqia sp!, {r4-r9, lr}
+ bxeq lr
+ ldr r1, [sp, #0x30]
+ add r0, sp, #0xC
+ str r1, [r4, #0x24]
+ ldr r2, [sp, #0x34]
+ ldr r1, [sp, #0x30]
+ sub r1, r2, r1
+ str r1, [r4, #0x28]
+ bl FS_CloseFile
+ mov r0, #0x1
+ add sp, sp, #0x54
+ ldmia sp!, {r4-r9, lr}
+ bx lr
+
+ arm_func_start FS_GetOverlayFileID
+FS_GetOverlayFileID: ; 0x020D2710
+ sub sp, sp, #0x8
+ ldr r2, _020D2734 ; =0x021D5414
+ str r2, [sp, #0x0]
+ ldr r1, [r1, #0x18]
+ str r1, [sp, #0x4]
+ str r2, [r0, #0x0]
+ str r1, [r0, #0x4]
+ add sp, sp, #0x8
+ bx lr
+ .balign 4
+_020D2734: .word 0x021D5414
+
+ arm_func_start FS_ClearOverlayImage
+FS_ClearOverlayImage: ; 0x020D2738
+ stmdb sp!, {r4-r6,lr}
+ ldr r5, [r0, #0x8]
+ ldr r1, [r0, #0xc]
+ ldr r6, [r0, #0x4]
+ add r4, r5, r1
+ mov r0, r6
+ mov r1, r4
+ bl IC_InvalidateRange
+ mov r0, r6
+ mov r1, r4
+ bl DC_InvalidateRange
+ add r0, r6, r5
+ sub r2, r4, r5
+ mov r1, #0x0
+ bl MI_CpuFill8
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+
+ arm_func_start FSi_GetOverlayBinarySize
+FSi_GetOverlayBinarySize: ; 0x020D277C
+ ldrb r1, [r0, #0x1f]
+ ands r1, r1, #0x1
+ ldrne r0, [r0, #0x1c]
+ movne r0, r0, lsl #0x8
+ movne r0, r0, lsr #0x8
+ ldreq r0, [r0, #0x8]
+ bx lr
+
+ arm_func_start ProcessBlock
+ProcessBlock: ; 0x020D2798
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x4
+ add r3, r0, #0x18
+ ldr r5, [r0, #0x0]
+ ldr r4, [r0, #0x4]
+ ldr lr, [r0, #0x8]
+ ldr r12, [r0, #0xc]
+ ldr r2, _020D2B78 ; =0x02106900
+ mov r8, r3
+ mov r7, #0x0
+_020D27C0:
+ mvn r1, r4
+ and r6, r4, lr
+ and r1, r1, r12
+ orr r1, r6, r1
+ ldr r6, [r8, #0x0]
+ add r1, r5, r1
+ ldr r5, [r2, #0x0]
+ add r1, r6, r1
+ add r5, r5, r1
+ mov r1, r5, lsl #0x7
+ orr r1, r1, r5, lsr #0x19
+ add r5, r4, r1
+ mvn r1, r5
+ and r6, r5, r4
+ and r1, r1, lr
+ orr r1, r6, r1
+ ldr r6, [r8, #0x4]
+ add r1, r12, r1
+ ldr r9, [r2, #0x4]
+ add r1, r6, r1
+ add r6, r9, r1
+ mov r1, r6, lsl #0xc
+ orr r1, r1, r6, lsr #0x14
+ add r12, r5, r1
+ mvn r1, r12
+ and r6, r12, r5
+ and r1, r1, r4
+ orr r6, r6, r1
+ add r1, r8, #0xc
+ ldr r9, [r8, #0x8]
+ add r6, lr, r6
+ add r6, r9, r6
+ ldr r9, [r2, #0x8]
+ ldr r1, [r1, #0x0]
+ add r10, r9, r6
+ add r6, r2, #0xc
+ ldr r6, [r6, #0x0]
+ mov r9, r10, lsl #0x11
+ orr r9, r9, r10, lsr #0xf
+ add lr, r12, r9
+ add r2, r2, #0x10
+ add r8, r8, #0x10
+ and r10, lr, r12
+ mvn r9, lr
+ and r9, r9, r5
+ orr r9, r10, r9
+ add r4, r4, r9
+ add r1, r1, r4
+ add r4, r6, r1
+ mov r1, r4, lsl #0x16
+ orr r1, r1, r4, lsr #0xa
+ add r4, lr, r1
+ add r7, r7, #0x1
+ cmp r7, #0x4
+ blt _020D27C0
+ ldr r6, _020D2B7C ; =0x02106840
+ mov r1, #0x0
+_020D28A4:
+ mvn r7, r12
+ ldr r9, [r6, #0x0]
+ and r8, r4, r12
+ and r7, lr, r7
+ orr r7, r8, r7
+ ldr r8, [r3, r9, lsl #0x2]
+ add r5, r5, r7
+ ldr r7, [r2, #0x0]
+ add r5, r8, r5
+ add r7, r7, r5
+ mov r5, r7, lsl #0x5
+ orr r5, r5, r7, lsr #0x1b
+ add r5, r4, r5
+ mvn r8, lr
+ ldr r7, [r6, #0x4]
+ and r9, r5, lr
+ and r8, r4, r8
+ orr r10, r9, r8
+ mvn r8, r4
+ ldr r9, [r6, #0x8]
+ ldr r11, [r3, r7, lsl #0x2]
+ add r7, r12, r10
+ add r10, r11, r7
+ add r7, r6, #0xc
+ ldr r9, [r3, r9, lsl #0x2]
+ and r8, r5, r8
+ ldr r7, [r7, #0x0]
+ ldr r11, [r2, #0x4]
+ ldr r7, [r3, r7, lsl #0x2]
+ add r11, r11, r10
+ mov r10, r11, lsl #0x9
+ orr r10, r10, r11, lsr #0x17
+ add r12, r5, r10
+ ldr r10, [r2, #0x8]
+ and r11, r12, r4
+ orr r8, r11, r8
+ add r8, lr, r8
+ add r8, r9, r8
+ add r10, r10, r8
+ add r8, r2, #0xc
+ ldr r8, [r8, #0x0]
+ mov r9, r10, lsl #0xe
+ orr r9, r9, r10, lsr #0x12
+ add lr, r12, r9
+ add r2, r2, #0x10
+ add r6, r6, #0x10
+ and r10, lr, r5
+ mvn r9, r5
+ and r9, r12, r9
+ orr r9, r10, r9
+ add r4, r4, r9
+ add r4, r7, r4
+ add r7, r8, r4
+ mov r4, r7, lsl #0x14
+ orr r4, r4, r7, lsr #0xc
+ add r4, lr, r4
+ add r1, r1, #0x1
+ cmp r1, #0x4
+ blt _020D28A4
+ mov r7, #0x0
+_020D2994:
+ ldr r8, [r6, #0x0]
+ eor r1, r4, lr
+ eor r1, r12, r1
+ add r1, r5, r1
+ ldr r8, [r3, r8, lsl #0x2]
+ ldr r5, [r2, #0x0]
+ add r1, r8, r1
+ add r5, r5, r1
+ mov r1, r5, lsl #0x4
+ orr r1, r1, r5, lsr #0x1c
+ add r5, r4, r1
+ ldr r8, [r6, #0x4]
+ eor r1, r5, r4
+ eor r1, lr, r1
+ ldr r8, [r3, r8, lsl #0x2]
+ add r1, r12, r1
+ ldr r9, [r6, #0x8]
+ ldr r10, [r2, #0x4]
+ add r1, r8, r1
+ add r8, r10, r1
+ mov r1, r8, lsl #0xb
+ orr r1, r1, r8, lsr #0x15
+ add r12, r5, r1
+ eor r8, r12, r5
+ eor r8, r4, r8
+ ldr r9, [r3, r9, lsl #0x2]
+ add r8, lr, r8
+ add r9, r9, r8
+ ldr r10, [r2, #0x8]
+ add r1, r2, #0xc
+ ldr r8, [r6, #0xc]
+ add r10, r10, r9
+ ldr r9, [r3, r8, lsl #0x2]
+ mov r8, r10, lsl #0x10
+ orr r8, r8, r10, lsr #0x10
+ add lr, r12, r8
+ eor r8, lr, r12
+ eor r8, r5, r8
+ add r4, r4, r8
+ add r7, r7, #0x1
+ ldr r1, [r1, #0x0]
+ add r4, r9, r4
+ add r4, r1, r4
+ mov r1, r4, lsl #0x17
+ orr r1, r1, r4, lsr #0x9
+ add r2, r2, #0x10
+ add r6, r6, #0x10
+ add r4, lr, r1
+ cmp r7, #0x4
+ blt _020D2994
+ mov r10, #0x0
+_020D2A60:
+ mvn r1, r12
+ ldr r7, [r6, #0x0]
+ orr r1, r4, r1
+ eor r1, lr, r1
+ ldr r7, [r3, r7, lsl #0x2]
+ add r1, r5, r1
+ ldr r5, [r2, #0x0]
+ add r1, r7, r1
+ add r5, r5, r1
+ mov r1, r5, lsl #0x6
+ orr r1, r1, r5, lsr #0x1a
+ add r5, r4, r1
+ mvn r1, lr
+ ldr r7, [r6, #0x4]
+ orr r1, r5, r1
+ eor r1, r4, r1
+ ldr r8, [r6, #0x8]
+ ldr r7, [r3, r7, lsl #0x2]
+ add r1, r12, r1
+ ldr r9, [r2, #0x4]
+ add r1, r7, r1
+ add r9, r9, r1
+ mov r7, r9, lsl #0xa
+ add r1, r6, #0xc
+ orr r9, r7, r9, lsr #0x16
+ ldr r1, [r1, #0x0]
+ add r7, r2, #0xc
+ add r12, r5, r9
+ ldr r8, [r3, r8, lsl #0x2]
+ ldr r7, [r7, #0x0]
+ ldr r1, [r3, r1, lsl #0x2]
+ ldr r9, [r2, #0x8]
+ mvn r11, r4
+ orr r11, r12, r11
+ eor r11, r5, r11
+ add r11, lr, r11
+ add r8, r8, r11
+ add r9, r9, r8
+ mov r8, r9, lsl #0xf
+ orr r8, r8, r9, lsr #0x11
+ add lr, r12, r8
+ add r2, r2, #0x10
+ add r6, r6, #0x10
+ mvn r8, r5
+ orr r8, lr, r8
+ eor r8, r12, r8
+ add r4, r4, r8
+ add r1, r1, r4
+ add r4, r7, r1
+ mov r1, r4, lsl #0x15
+ orr r1, r1, r4, lsr #0xb
+ add r4, lr, r1
+ add r10, r10, #0x1
+ cmp r10, #0x4
+ blt _020D2A60
+ ldr r1, [r0, #0x0]
+ add r1, r1, r5
+ str r1, [r0, #0x0]
+ ldr r1, [r0, #0x4]
+ add r1, r1, r4
+ str r1, [r0, #0x4]
+ ldr r1, [r0, #0x8]
+ add r1, r1, lr
+ str r1, [r0, #0x8]
+ ldr r1, [r0, #0xc]
+ add r1, r1, r12
+ str r1, [r0, #0xc]
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+ .balign 4
+_020D2B78: .word 0x02106900
+_020D2B7C: .word 0x02106840
+
+ arm_func_start MATH_MD5GetHash
+MATH_MD5GetHash: ; 0x020D2B80
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r6, r1
+ ldr r1, [r6, #0x14]
+ ldr r3, [r6, #0x10]
+ mov r7, r0
+ mov r4, r1, lsl #0x3
+ ldr r1, _020D2C40 ; =0x0210683C
+ mov r0, r6
+ mov r2, #0x1
+ orr r4, r4, r3, lsr #0x1d
+ mov r5, r3, lsl #0x3
+ bl MATH_MD5Update
+ ldr r0, [r6, #0x10]
+ mov r1, #0x0
+ and r3, r0, #0x3f
+ rsb r2, r3, #0x40
+ cmp r2, #0x8
+ bhs _020D2BE8
+ add r0, r6, #0x18
+ add r0, r0, r3
+ bl MI_CpuFill8
+ mov r0, r6
+ bl ProcessBlock
+ mov r3, #0x0
+ mov r2, #0x40
+_020D2BE8:
+ cmp r2, #0x8
+ bls _020D2C04
+ add r0, r6, #0x18
+ add r0, r0, r3
+ sub r2, r2, #0x8
+ mov r1, #0x0
+ bl MI_CpuFill8
+_020D2C04:
+ str r5, [r6, #0x50]
+ mov r0, r6
+ str r4, [r6, #0x54]
+ bl ProcessBlock
+ mov r0, r6
+ mov r1, r7
+ mov r2, #0x10
+ bl MI_CpuCopy8
+ mov r0, r6
+ mov r1, #0x0
+ mov r2, #0x58
+ bl MI_CpuFill8
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+ .balign 4
+_020D2C40: .word 0x0210683C
+
+ arm_func_start MATH_MD5Update
+MATH_MD5Update: ; 0x020D2C44
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0x4
+ mov r8, r0
+ add r12, r8, #0x10
+ ldr r4, [r8, #0x10]
+ mov r6, r2
+ and r3, r4, #0x3f
+ ldr r0, [r12, #0x4]
+ adds r4, r4, r6
+ str r4, [r8, #0x10]
+ adc r0, r0, #0x0
+ rsb r5, r3, #0x40
+ mov r7, r1
+ str r0, [r12, #0x4]
+ cmp r5, r6
+ bls _020D2CB0
+ cmp r6, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ add r1, r8, #0x18
+ mov r0, r7
+ add r1, r1, r3
+ bl MI_CpuCopy8
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+_020D2CB0:
+ add r1, r8, #0x18
+ mov r0, r7
+ mov r2, r5
+ add r1, r1, r3
+ bl MI_CpuCopy8
+ mov r0, r8
+ bl ProcessBlock
+ sub r6, r6, r5
+ mov r4, r6, lsr #0x6
+ cmp r4, #0x0
+ add r9, r7, r5
+ ble _020D2D10
+ add r7, r8, #0x18
+ mov r5, #0x40
+_020D2CE8:
+ mov r0, r9
+ mov r1, r7
+ mov r2, r5
+ bl MI_CpuCopy8
+ mov r0, r8
+ add r9, r9, #0x40
+ bl ProcessBlock
+ sub r4, r4, #0x1
+ cmp r4, #0x0
+ bgt _020D2CE8
+_020D2D10:
+ ands r2, r6, #0x3f
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ mov r0, r9
+ add r1, r8, #0x18
+ bl MI_CpuCopy8
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+
+ arm_func_start MATH_MD5Init
+MATH_MD5Init: ; 0x020D2D38
+ ldr r2, _020D2D68 ; =0x67452301
+ ldr r1, _020D2D6C ; =0xEFCDAB89
+ str r2, [r0, #0x0]
+ ldr r2, _020D2D70 ; =0x98BADCFE
+ str r1, [r0, #0x4]
+ ldr r1, _020D2D74 ; =0x10325476
+ str r2, [r0, #0x8]
+ str r1, [r0, #0xc]
+ mov r1, #0x0
+ str r1, [r0, #0x10]
+ str r1, [r0, #0x14]
+ bx lr
+ .balign 4
+_020D2D68: .word 0x67452301
+_020D2D6C: .word 0xEFCDAB89
+_020D2D70: .word 0x98BADCFE
+_020D2D74: .word 0x10325476
+
+ arm_func_start MATH_CalcHMACSHA1
+MATH_CalcHMACSHA1: ; 0x020D2D78
+ stmdb sp!, {r4-r8,lr}
+ sub sp, sp, #0xa0
+ ldr lr, _020D2E00 ; =0x02106A04
+ add r12, sp, #0x1c
+ mov r8, r0
+ mov r7, r1
+ mov r6, r2
+ mov r5, r3
+ mov r4, r12
+ ldmia lr!, {r0-r3}
+ stmia r12!, {r0-r3}
+ ldmia lr, {r0-r2}
+ stmia r12, {r0-r2}
+ add lr, sp, #0x38
+ add r12, sp, #0x8
+ str lr, [sp, #0x24]
+ ldr lr, _020D2E04 ; =MATH_SHA1Init
+ str r12, [sp, #0x28]
+ ldr ip, _020D2E08 ; =MATH_SHA1Update
+ str lr, [sp, #0x2c]
+ ldr lr, _020D2E0C ; =MATH_SHA1GetHash
+ str r12, [sp, #0x30]
+ ldr r12, [sp, #0xb8]
+ str lr, [sp, #0x34]
+ str r12, [sp, #0x0]
+ mov r3, r5
+ mov r0, r8
+ mov r1, r7
+ mov r2, r6
+ str r4, [sp, #0x4]
+ bl MATHi_CalcHMAC
+ add sp, sp, #0xa0
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020D2E00: .word 0x02106A04
+_020D2E04: .word MATH_SHA1Init
+_020D2E08: .word MATH_SHA1Update
+_020D2E0C: .word MATH_SHA1GetHash
+
+ arm_func_start MATH_SHA1GetHash
+MATH_SHA1GetHash: ; 0x020D2E10
+ stmdb sp!, {r0-r3}
+ stmdb sp!, {r4-r6,lr}
+ ldr r0, [sp, #0x10]
+ mov r6, r1
+ ldr r3, [r0, #0x1c]
+ add r5, r0, #0x20
+ ands r1, r3, #0x3
+ mov r0, r3, asr #0x2
+ moveq r1, #0x0
+ streq r1, [r5, r0, lsl #0x2]
+ ldr r2, [sp, #0x10]
+ mov r1, #0x80
+ add r4, r2, #0x20
+ strb r1, [r4, r3]
+ add r3, r3, #0x1
+ ands r1, r3, #0x3
+ beq _020D2E68
+ mov r2, #0x0
+_020D2E58:
+ strb r2, [r4, r3]
+ add r3, r3, #0x1
+ ands r1, r3, #0x3
+ bne _020D2E58
+_020D2E68:
+ ldr r1, [sp, #0x10]
+ add r0, r0, #0x1
+ ldr r1, [r1, #0x1c]
+ cmp r1, #0x38
+ blt _020D2EB4
+ cmp r0, #0x10
+ bge _020D2E98
+ mov r1, #0x0
+_020D2E88:
+ str r1, [r5, r0, lsl #0x2]
+ add r0, r0, #0x1
+ cmp r0, #0x10
+ blt _020D2E88
+_020D2E98:
+ ldr r1, _020D3008 ; =0x02106A00
+ ldr r0, [sp, #0x10]
+ ldr r3, [r1, #0x0]
+ mov r1, r5
+ mov r2, #0x40
+ blx r3
+ mov r0, #0x0
+_020D2EB4:
+ cmp r0, #0xe
+ bge _020D2ED0
+ mov r1, #0x0
+_020D2EC0:
+ str r1, [r5, r0, lsl #0x2]
+ add r0, r0, #0x1
+ cmp r0, #0xe
+ blt _020D2EC0
+_020D2ED0:
+ ldr r0, [sp, #0x10]
+ mov r1, r5
+ ldr r2, [r0, #0x14]
+ ldr r3, _020D3008 ; =0x02106A00
+ strb r2, [r4, #0x3f]
+ mov r0, r2, lsr #0x8
+ strb r0, [r4, #0x3e]
+ mov r0, r2, lsr #0x10
+ strb r0, [r4, #0x3d]
+ mov r0, r2, lsr #0x18
+ strb r0, [r4, #0x3c]
+ ldr r0, [sp, #0x10]
+ mov r2, #0x40
+ ldr r5, [r0, #0x18]
+ strb r5, [r4, #0x3b]
+ mov r0, r5, lsr #0x8
+ strb r0, [r4, #0x3a]
+ mov r0, r5, lsr #0x10
+ strb r0, [r4, #0x39]
+ mov r0, r5, lsr #0x18
+ strb r0, [r4, #0x38]
+ ldr r0, [sp, #0x10]
+ ldr r3, [r3, #0x0]
+ blx r3
+ ldr r0, [sp, #0x10]
+ add r1, sp, #0x10
+ ldr r3, [r0, #0x0]
+ mov r0, #0x0
+ mov r2, r3, lsr #0x18
+ strb r2, [r6, #0x0]
+ mov r2, r3, lsr #0x10
+ strb r2, [r6, #0x1]
+ mov r2, r3, lsr #0x8
+ strb r2, [r6, #0x2]
+ strb r3, [r6, #0x3]
+ ldr r3, [sp, #0x10]
+ mov r2, #0x4
+ ldr r4, [r3, #0x4]
+ mov r3, r4, lsr #0x18
+ strb r3, [r6, #0x4]
+ mov r3, r4, lsr #0x10
+ strb r3, [r6, #0x5]
+ mov r3, r4, lsr #0x8
+ strb r3, [r6, #0x6]
+ strb r4, [r6, #0x7]
+ ldr r3, [sp, #0x10]
+ ldr r4, [r3, #0x8]
+ mov r3, r4, lsr #0x18
+ strb r3, [r6, #0x8]
+ mov r3, r4, lsr #0x10
+ strb r3, [r6, #0x9]
+ mov r3, r4, lsr #0x8
+ strb r3, [r6, #0xa]
+ strb r4, [r6, #0xb]
+ ldr r3, [sp, #0x10]
+ ldr r4, [r3, #0xc]
+ mov r3, r4, lsr #0x18
+ strb r3, [r6, #0xc]
+ mov r3, r4, lsr #0x10
+ strb r3, [r6, #0xd]
+ mov r3, r4, lsr #0x8
+ strb r3, [r6, #0xe]
+ strb r4, [r6, #0xf]
+ ldr r3, [sp, #0x10]
+ ldr r4, [r3, #0x10]
+ mov r3, r4, lsr #0x18
+ strb r3, [r6, #0x10]
+ mov r3, r4, lsr #0x10
+ strb r3, [r6, #0x11]
+ mov r3, r4, lsr #0x8
+ strb r3, [r6, #0x12]
+ strb r4, [r6, #0x13]
+ ldr r3, [sp, #0x10]
+ str r0, [r3, #0x1c]
+ bl MIi_CpuClear32
+ ldmia sp!, {r4-r6,lr}
+ add sp, sp, #0x10
+ bx lr
+ .balign 4
+_020D3008: .word 0x02106A00
+
+ arm_func_start MATH_SHA1Update
+MATH_SHA1Update: ; 0x020D300C
+ stmdb sp!, {r4-r8,lr}
+ mov r8, r0
+ movs r6, r2
+ mov r7, r1
+ add r5, r8, #0x20
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ ldr r0, [r8, #0x14]
+ add r1, r0, r6, lsl #0x3
+ cmp r1, r0
+ ldrcc r0, [r8, #0x18]
+ addcc r0, r0, #0x1
+ strcc r0, [r8, #0x18]
+ ldr r0, [r8, #0x18]
+ add r0, r0, r6, lsr #0x1d
+ str r0, [r8, #0x18]
+ str r1, [r8, #0x14]
+ ldr r1, [r8, #0x1c]
+ cmp r1, #0x0
+ beq _020D30CC
+ add r0, r1, r6
+ cmp r0, #0x40
+ blo _020D30A8
+ rsb r4, r1, #0x40
+ mov r0, r7
+ mov r2, r4
+ add r1, r5, r1
+ bl MI_CpuCopy8
+ ldr r1, _020D3164 ; =0x02106A00
+ mov r0, r8
+ ldr r3, [r1, #0x0]
+ mov r1, r5
+ mov r2, #0x40
+ sub r6, r6, r4
+ add r7, r7, r4
+ blx r3
+ mov r0, #0x0
+ str r0, [r8, #0x1c]
+ b _020D30CC
+_020D30A8:
+ mov r0, r7
+ mov r2, r6
+ add r1, r5, r1
+ bl MI_CpuCopy8
+ ldr r0, [r8, #0x1c]
+ add r0, r0, r6
+ str r0, [r8, #0x1c]
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+_020D30CC:
+ cmp r6, #0x40
+ blo _020D313C
+ bic r4, r6, #0x3f
+ sub r6, r6, r4
+ ands r0, r7, #0x3
+ bne _020D3104
+ ldr r1, _020D3164 ; =0x02106A00
+ mov r0, r8
+ ldr r3, [r1, #0x0]
+ mov r1, r7
+ mov r2, r4
+ blx r3
+ add r7, r7, r4
+ b _020D313C
+_020D3104:
+ mov r0, r7
+ mov r1, r5
+ mov r2, #0x40
+ bl MI_CpuCopy8
+ ldr r1, _020D3164 ; =0x02106A00
+ mov r0, r8
+ ldr r3, [r1, #0x0]
+ mov r1, r5
+ mov r2, #0x40
+ add r7, r7, #0x40
+ blx r3
+ sub r4, r4, #0x40
+ cmp r4, #0x0
+ bgt _020D3104
+_020D313C:
+ str r6, [r8, #0x1c]
+ cmp r6, #0x0
+ ldmeqia sp!, {r4-r8,lr}
+ bxeq lr
+ mov r0, r7
+ mov r1, r5
+ mov r2, r6
+ bl MI_CpuCopy8
+ ldmia sp!, {r4-r8,lr}
+ bx lr
+ .balign 4
+_020D3164: .word 0x02106A00
+
+ arm_func_start MATH_SHA1Init
+MATH_SHA1Init: ; 0x020D3168
+ ldr r1, _020D31A4 ; =0x67452301
+ ldr r2, _020D31A8 ; =0xEFCDAB89
+ str r1, [r0, #0x0]
+ ldr r1, _020D31AC ; =0x98BADCFE
+ str r2, [r0, #0x4]
+ ldr r2, _020D31B0 ; =0x10325476
+ str r1, [r0, #0x8]
+ ldr r1, _020D31B4 ; =0xC3D2E1F0
+ str r2, [r0, #0xc]
+ str r1, [r0, #0x10]
+ mov r1, #0x0
+ str r1, [r0, #0x14]
+ str r1, [r0, #0x18]
+ str r1, [r0, #0x1c]
+ bx lr
+ .balign 4
+_020D31A4: .word 0x67452301
+_020D31A8: .word 0xEFCDAB89
+_020D31AC: .word 0x98BADCFE
+_020D31B0: .word 0x10325476
+_020D31B4: .word 0xC3D2E1F0
+
+ arm_func_start MATHi_CalcHMAC
+MATHi_CalcHMAC: ; 0x020D31B8
+ stmdb sp!, {r4-r9,lr}
+ sub sp, sp, #0xc4
+ ldr r5, [sp, #0xe0]
+ ldr r4, [sp, #0xe4]
+ movs r9, r0
+ mov r8, r1
+ mov r7, r2
+ mov r6, r3
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ cmp r8, #0x0
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ cmp r7, #0x0
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ cmp r6, #0x0
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ cmp r5, #0x0
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ cmp r4, #0x0
+ addeq sp, sp, #0xc4
+ ldmeqia sp!, {r4-r9,lr}
+ bxeq lr
+ ldr r0, [r4, #0x4]
+ cmp r5, r0
+ ble _020D3278
+ ldr r0, [r4, #0x8]
+ ldr r1, [r4, #0x10]
+ blx r1
+ ldr r0, [r4, #0x8]
+ ldr r3, [r4, #0x14]
+ mov r1, r6
+ mov r2, r5
+ blx r3
+ ldr r0, [r4, #0x8]
+ ldr r2, [r4, #0x18]
+ add r1, sp, #0x0
+ blx r2
+ ldr r5, [r4, #0x0]
+ add r6, sp, #0x0
+_020D3278:
+ cmp r5, #0x0
+ mov r0, #0x0
+ ble _020D32A0
+ add r2, sp, #0x40
+_020D3288:
+ ldrb r1, [r6, r0]
+ add r0, r0, #0x1
+ cmp r0, r5
+ eor r1, r1, #0x36
+ strb r1, [r2], #0x1
+ blt _020D3288
+_020D32A0:
+ ldr r1, [r4, #0x4]
+ cmp r0, r1
+ bge _020D32CC
+ add r1, sp, #0x40
+ add r3, r1, r0
+ mov r2, #0x36
+_020D32B8:
+ strb r2, [r3], #0x1
+ ldr r1, [r4, #0x4]
+ add r0, r0, #0x1
+ cmp r0, r1
+ blt _020D32B8
+_020D32CC:
+ ldr r0, [r4, #0x8]
+ ldr r1, [r4, #0x10]
+ blx r1
+ ldr r0, [r4, #0x8]
+ ldr r2, [r4, #0x4]
+ ldr r3, [r4, #0x14]
+ add r1, sp, #0x40
+ blx r3
+ ldr r0, [r4, #0x8]
+ ldr r3, [r4, #0x14]
+ mov r1, r8
+ mov r2, r7
+ blx r3
+ ldr r0, [r4, #0x8]
+ ldr r1, [r4, #0xc]
+ ldr r2, [r4, #0x18]
+ blx r2
+ cmp r5, #0x0
+ mov r2, #0x0
+ ble _020D3338
+ add r1, sp, #0x80
+_020D3320:
+ ldrb r0, [r6, r2]
+ add r2, r2, #0x1
+ cmp r2, r5
+ eor r0, r0, #0x5c
+ strb r0, [r1], #0x1
+ blt _020D3320
+_020D3338:
+ ldr r0, [r4, #0x4]
+ cmp r2, r0
+ bge _020D3364
+ add r0, sp, #0x80
+ add r3, r0, r2
+ mov r1, #0x5c
+_020D3350:
+ strb r1, [r3], #0x1
+ ldr r0, [r4, #0x4]
+ add r2, r2, #0x1
+ cmp r2, r0
+ blt _020D3350
+_020D3364:
+ ldr r0, [r4, #0x8]
+ ldr r1, [r4, #0x10]
+ blx r1
+ ldr r0, [r4, #0x8]
+ ldr r2, [r4, #0x4]
+ ldr r3, [r4, #0x14]
+ add r1, sp, #0x80
+ blx r3
+ ldr r0, [r4, #0x8]
+ ldr r1, [r4, #0xc]
+ ldr r2, [r4, #0x0]
+ ldr r3, [r4, #0x14]
+ blx r3
+ ldr r0, [r4, #0x8]
+ ldr r2, [r4, #0x18]
+ mov r1, r9
+ blx r2
+ add sp, sp, #0xc4
+ ldmia sp!, {r4-r9,lr}
+ bx lr
+ .balign 4
+_020D33B4: .word 0x00FF00FF
+_020D33B8: .word 0x5A827999
+_020D33BC: .word 0x6ED9EBA1
+_020D33C0: .word 0x8F1BBCDC
+_020D33C4: .word 0xCA62C1D6
+
+ arm_func_start MATHi_SHA1ProcessBlock
+MATHi_SHA1ProcessBlock: ; 0x020D33C8
+ stmdb sp!, {r4-r12,lr}
+ ldmia r0, {r3,r9-r12}
+ sub sp, sp, #0x84
+ str r2, [sp, #0x80]
+_020D33D8:
+ ldr r8, _020D33B8 ; =0x5A827999
+ ldr r7, _020D33B4 ; =0x00FF00FF
+ mov r6, sp
+ mov r5, #0x0
+_020D33E8:
+ ldr r4, [r1], #0x4
+ add r2, r8, r12
+ add r2, r2, r3, ror #0x1B
+ and lr, r4, r7
+ and r4, r7, r4, ror #0x18
+ orr r4, r4, lr, ror #0x8
+ str r4, [r6, #0x40]
+ str r4, [r6], #0x4
+ add r2, r2, r4
+ eor r4, r10, r11
+ and r4, r4, r9
+ eor r4, r4, r11
+ add r2, r2, r4
+ mov r9, r9, ror #0x2
+ mov r12, r11
+ mov r11, r10
+ mov r10, r9
+ mov r9, r3
+ mov r3, r2
+ add r5, r5, #0x4
+ cmp r5, #0x40
+ blt _020D33E8
+ mov r7, #0x0
+ mov r6, sp
+_020D3448:
+ ldr r2, [r6, #0x0]
+ ldr r5, [r6, #0x8]
+ ldr r4, [r6, #0x20]
+ ldr lr, [r6, #0x34]
+ eor r2, r2, r5
+ eor r4, r4, lr
+ eor r2, r2, r4
+ mov r2, r2, ror #0x1F
+ str r2, [r6, #0x40]
+ str r2, [r6], #0x4
+ add r2, r2, r12
+ add r2, r2, r8
+ add r2, r2, r3, ror #0x1B
+ eor r4, r10, r11
+ and r4, r4, r9
+ eor r4, r4, r11
+ add r2, r2, r4
+ mov r9, r9, ror #0x2
+ mov r12, r11
+ mov r11, r10
+ mov r10, r9
+ mov r9, r3
+ mov r3, r2
+ add r7, r7, #0x4
+ cmp r7, #0x10
+ blt _020D3448
+ ldr r8, _020D33BC ; =0x6ED9EBA1
+ mov r7, #0x0
+_020D34B8:
+ ldr r2, [r6, #0x0]
+ ldr r4, [r6, #0x8]
+ ldr lr, [r6, #0x20]
+ ldr r5, [r6, #0x34]
+ eor r2, r2, r4
+ eor lr, lr, r5
+ eor r2, r2, lr
+ mov r2, r2, ror #0x1F
+ str r2, [r6, #0x40]
+ str r2, [r6], #0x4
+ add r2, r2, r12
+ add r2, r2, r8
+ add r2, r2, r3, ror #0x1B
+ eor lr, r9, r10
+ eor lr, lr, r11
+ add r2, r2, lr
+ mov r9, r9, ror #0x2
+ mov r12, r11
+ mov r11, r10
+ mov r10, r9
+ mov r9, r3
+ mov r3, r2
+ add r7, r7, #0x1
+ cmp r7, #0xc
+ moveq r6, sp
+ cmp r7, #0x14
+ blt _020D34B8
+ ldr r8, _020D33C0 ; =0x8F1BBCDC
+ mov r7, #0x0
+_020D352C:
+ ldr r2, [r6, #0x0]
+ ldr lr, [r6, #0x8]
+ ldr r5, [r6, #0x20]
+ ldr r4, [r6, #0x34]
+ eor r2, r2, lr
+ eor r5, r5, r4
+ eor r2, r2, r5
+ mov r2, r2, ror #0x1F
+ str r2, [r6, #0x40]
+ str r2, [r6], #0x4
+ add r2, r2, r12
+ add r2, r2, r8
+ add r2, r2, r3, ror #0x1B
+ orr r5, r9, r10
+ and r5, r5, r11
+ and r4, r9, r10
+ orr r5, r5, r4
+ add r2, r2, r5
+ mov r9, r9, ror #0x2
+ mov r12, r11
+ mov r11, r10
+ mov r10, r9
+ mov r9, r3
+ mov r3, r2
+ add r7, r7, #0x1
+ cmp r7, #0x8
+ moveq r6, sp
+ cmp r7, #0x14
+ blt _020D352C
+ ldr r8, _020D33C4 ; =0xCA62C1D6
+ mov r7, #0x0
+_020D35A8:
+ ldr r2, [r6, #0x0]
+ ldr r5, [r6, #0x8]
+ ldr r4, [r6, #0x20]
+ ldr lr, [r6, #0x34]
+ eor r2, r2, r5
+ eor r4, r4, lr
+ eor r2, r2, r4
+ mov r2, r2, ror #0x1F
+ str r2, [r6, #0x40]
+ str r2, [r6], #0x4
+ add r2, r2, r12
+ add r2, r2, r8
+ add r2, r2, r3, ror #0x1B
+ eor r4, r9, r10
+ eor r4, r4, r11
+ add r2, r2, r4
+ mov r9, r9, ror #0x2
+ mov r12, r11
+ mov r11, r10
+ mov r10, r9
+ mov r9, r3
+ mov r3, r2
+ add r7, r7, #0x1
+ cmp r7, #0x4
+ moveq r6, sp
+ cmp r7, #0x14
+ blt _020D35A8
+ ldmia r0, {r2,r4,r6-r7,lr}
+ add r3, r3, r2
+ add r9, r9, r4
+ add r10, r10, r6
+ add r11, r11, r7
+ add r12, r12, lr
+ stmia r0, {r3,r9-r12}
+ ldr lr, [sp, #0x80]
+ subs lr, lr, #0x40
+ str lr, [sp, #0x80]
+ bgt _020D33D8
+ add sp, sp, #0x84
+ ldmia sp!, {r4-r12,pc}
+
+ arm_func_start CP_SaveContext
+CP_SaveContext: ; 0x020D3648
+ ldr r1, _020D3684 ; =0x04000290
+ stmdb sp!, {r4}
+ ldmia r1, {r2-r4,r12}
+ stmia r0!, {r2-r4,r12}
+ ldrh r12, [r1, #-0x10]
+ add r1, r1, #0x28
+ ldmia r1, {r2-r3}
+ stmia r0!, {r2-r3}
+ and r12, r12, #0x3
+ ldrh r2, [r1, #-0x8]
+ strh r12, [r0, #0x0]
+ and r2, r2, #0x1
+ strh r2, [r0, #0x2]
+ ldmia sp!, {r4}
+ bx lr
+ .balign 4
+_020D3684: .word 0x04000290
+
+ arm_func_start CP_RestoreContext
+CP_RestoreContext: ; 0x020D3688
+ stmdb sp!, {r4}
+ ldr r1, _020D36C0 ; =0x04000290
+ ldmia r0, {r2-r4,r12}
+ stmia r1, {r2-r4,r12}
+ ldrh r2, [r0, #0x18]
+ ldrh r3, [r0, #0x1a]
+ strh r2, [r1, #-0x10]
+ strh r3, [r1, #0x20]
+ add r0, r0, #0x10
+ add r1, r1, #0x28
+ ldmia r0, {r2-r3}
+ stmia r1, {r2-r3}
+ ldmia sp!, {r4}
+ bx lr
+ .balign 4
+_020D36C0: .word 0x04000290
+
+ arm_func_start TP_CheckError
+TP_CheckError: ; 0x020D36C4
+ ldr r1, _020D36D4 ; =0x021D5474
+ ldrh r1, [r1, #0x34]
+ and r0, r1, r0
+ bx lr
+ .balign 4
+_020D36D4: .word 0x021D5474
+
+ arm_func_start TP_WaitBusy
+TP_WaitBusy: ; 0x020D36D8
+ ldr r1, _020D36EC ; =0x021D5474
+_020D36DC:
+ ldrh r2, [r1, #0x36]
+ ands r2, r2, r0
+ bne _020D36DC
+ bx lr
+ .balign 4
+_020D36EC: .word 0x021D5474
+
+ arm_func_start TP_GetCalibratedPoint
+TP_GetCalibratedPoint: ; 0x020D36F0
+ stmdb sp!, {r4-r6,lr}
+ ldr r2, _020D3818 ; =0x021D5474
+ ldrh r2, [r2, #0x30]
+ cmp r2, #0x0
+ bne _020D372C
+ ldrh r3, [r1, #0x0]
+ ldrh r2, [r1, #0x2]
+ strh r3, [r0, #0x0]
+ strh r2, [r0, #0x2]
+ ldrh r2, [r1, #0x4]
+ ldrh r1, [r1, #0x6]
+ strh r2, [r0, #0x4]
+ strh r1, [r0, #0x6]
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D372C:
+ ldrh r3, [r1, #0x4]
+ ldr r2, _020D381C ; =0x021D548C
+ strh r3, [r0, #0x4]
+ ldrh r3, [r1, #0x6]
+ strh r3, [r0, #0x6]
+ ldrh r3, [r1, #0x4]
+ cmp r3, #0x0
+ moveq r1, #0x0
+ streqh r1, [r0, #0x0]
+ streqh r1, [r0, #0x2]
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ ldrh r4, [r1, #0x0]
+ ldr r3, [r2, #0x0]
+ ldr lr, [r2, #0x8]
+ mov r12, r4, lsl #0x2
+ mov r4, r12, asr #0x1f
+ subs r12, r12, r3
+ sbc r3, r4, r3, asr #0x1f
+ umull r6, r5, lr, r12
+ mla r5, lr, r3, r5
+ mov r3, lr, asr #0x1f
+ mla r5, r3, r12, r5
+ mov r3, r6, lsr #0x16
+ orr r3, r3, r5, lsl #0xa
+ strh r3, [r0, #0x0]
+ ldrsh r3, [r0, #0x0]
+ cmp r3, #0x0
+ movlt r3, #0x0
+ strlth r3, [r0, #0x0]
+ blt _020D37B4
+ cmp r3, #0xff
+ movgt r3, #0xff
+ strgth r3, [r0, #0x0]
+_020D37B4:
+ ldrh r3, [r1, #0x2]
+ ldr r1, [r2, #0xc]
+ ldr r12, [r2, #0x14]
+ mov r3, r3, lsl #0x2
+ mov r2, r3, asr #0x1f
+ subs r3, r3, r1
+ sbc r1, r2, r1, asr #0x1f
+ umull r4, lr, r12, r3
+ mla lr, r12, r1, lr
+ mov r1, r12, asr #0x1f
+ mla lr, r1, r3, lr
+ mov r1, r4, lsr #0x16
+ orr r1, r1, lr, lsl #0xa
+ strh r1, [r0, #0x2]
+ ldrsh r1, [r0, #0x2]
+ cmp r1, #0x0
+ movlt r1, #0x0
+ strlth r1, [r0, #0x2]
+ ldmltia sp!, {r4-r6,lr}
+ bxlt lr
+ cmp r1, #0xbf
+ movgt r1, #0xbf
+ strgth r1, [r0, #0x2]
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+ .balign 4
+_020D3818: .word 0x021D5474
+_020D381C: .word 0x021D548C
+
+ arm_func_start TP_CalcCalibrateParam
+TP_CalcCalibrateParam:
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x4
+ mov r6, r1
+ mov r7, r0
+ mov r5, r2
+ mov r4, r3
+ cmp r6, #0x1000
+ bhs _020D3860
+ cmp r5, #0x1000
+ bhs _020D3860
+ ldrh r8, [sp, #0x2c]
+ cmp r8, #0x1000
+ bhs _020D3860
+ ldrh r3, [sp, #0x30]
+ cmp r3, #0x1000
+ blo _020D3870
+_020D3860:
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D3870:
+ cmp r4, #0x100
+ bhs _020D389C
+ ldrh r2, [sp, #0x34]
+ cmp r2, #0x100
+ bhs _020D389C
+ ldrh r1, [sp, #0x28]
+ cmp r1, #0xc0
+ bhs _020D389C
+ ldrh r0, [sp, #0x38]
+ cmp r0, #0xc0
+ blo _020D38AC
+_020D389C:
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D38AC:
+ cmp r4, r2
+ beq _020D38CC
+ cmp r1, r0
+ beq _020D38CC
+ cmp r6, r8
+ beq _020D38CC
+ cmp r5, r3
+ bne _020D38DC
+_020D38CC:
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D38DC:
+ bl OS_DisableInterrupts
+ ldrh r1, [sp, #0x2c]
+ ldr r3, _020D3A80 ; =0x04000280
+ ldr fp, _020D3A84 ; =0x04000290
+ str r1, [sp, #0x0]
+ ldr r2, [sp, #0x0]
+ ldrh r1, [sp, #0x34]
+ sub r9, r6, r2
+ mov r2, #0x0
+ mov r12, r9, lsl #0x8
+ strh r2, [r3, #0x0]
+ str r12, [r11, #0x0]
+ ldrh r8, [sp, #0x30]
+ ldrh r10, [sp, #0x38]
+ ldrh r9, [sp, #0x28]
+ ldr fp, _020D3A88 ; =0x04000298
+ sub r12, r4, r1
+ str r12, [r11, #0x0]
+ str r2, [r11, #0x4]
+ sub r11, r5, r8
+ sub r2, r9, r10
+_020D3930:
+ ldrh r12, [r3, #0x0]
+ ands r12, r12, #0x8000
+ bne _020D3930
+ ldr ip, _020D3A8C ; =0x040002A0
+ mov r11, r11, lsl #0x8
+ ldr lr, [r12, #0x0]
+ mov r12, #0x0
+ strh r12, [r3, #0x0]
+ ldr r3, _020D3A84 ; =0x04000290
+ cmp lr, #0x8000
+ str r11, [r3, #0x0]
+ ldr r3, _020D3A88 ; =0x04000298
+ str r2, [r3, #0x0]
+ mov r2, r3
+ str r12, [r2, #0x4]
+ bge _020D3980
+ mov r2, #0x8000
+ rsb r2, r2, #0x0
+ cmp lr, r2
+ bge _020D3994
+_020D3980:
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D3994:
+ strh lr, [r7, #0x4]
+ ldrsh r11, [r7, #0x4]
+ add r3, r4, r1
+ ldr r1, [sp, #0x0]
+ add r4, r6, r1
+ mul r1, r11, r3
+ mov r3, r4, lsl #0x8
+ sub r1, r3, r1
+ mov r1, r1, lsl #0x9
+ mov r1, r1, asr #0x10
+ cmp r1, #0x8000
+ bge _020D39CC
+ cmp r1, r2
+ bge _020D39E0
+_020D39CC:
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D39E0:
+ ldr r2, _020D3A80 ; =0x04000280
+ strh r1, [r7, #0x0]
+_020D39E8:
+ ldrh r1, [r2, #0x0]
+ ands r1, r1, #0x8000
+ bne _020D39E8
+ ldr r1, _020D3A8C ; =0x040002A0
+ ldr r4, [r1, #0x0]
+ bl OS_RestoreInterrupts
+ cmp r4, #0x8000
+ bge _020D3A18
+ mov r0, #0x8000
+ rsb r1, r0, #0x0
+ cmp r4, r1
+ bge _020D3A28
+_020D3A18:
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D3A28:
+ strh r4, [r7, #0x6]
+ ldrsh r2, [r7, #0x6]
+ add r0, r9, r10
+ add r3, r5, r8
+ mul r0, r2, r0
+ mov r2, r3, lsl #0x8
+ sub r0, r2, r0
+ mov r0, r0, lsl #0x9
+ mov r0, r0, asr #0x10
+ cmp r0, #0x8000
+ bge _020D3A5C
+ cmp r0, r1
+ bge _020D3A6C
+_020D3A5C:
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+_020D3A6C:
+ strh r0, [r7, #0x2]
+ mov r0, #0x0
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r11,lr}
+ bx lr
+ .balign 4
+_020D3A80: .word 0x04000280
+_020D3A84: .word 0x04000290
+_020D3A88: .word 0x04000298
+_020D3A8C: .word 0x040002A0
+
+ arm_func_start TP_GetLatestIndexInAuto
+TP_GetLatestIndexInAuto: ; 0x020D3A90
+ ldr r0, _020D3A9C ; =0x021D5474
+ ldrh r0, [r0, #0xc]
+ bx lr
+ .balign 4
+_020D3A9C: .word 0x021D5474
+
+ arm_func_start TP_GetLatestRawPointInAuto
+TP_GetLatestRawPointInAuto: ; 0x020D3AA0
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r1, #0x3
+ ldr lr, _020D3C10 ; =0x021D5474
+ strh r1, [r0, #0x6]
+ ldrh r1, [lr, #0xe]
+ ldrh r3, [lr, #0xc]
+ cmp r1, #0x1
+ beq _020D3AD0
+ ldrh r1, [lr, #0x14]
+ cmp r1, #0x1
+ bne _020D3B0C
+_020D3AD0:
+ ldr r1, _020D3C10 ; =0x021D5474
+ mov r2, r3, lsl #0x3
+ ldr r1, [r1, #0x10]
+ add sp, sp, #0x4
+ add r3, r1, r3, lsl #0x3
+ ldrh r2, [r1, r2]
+ ldrh r1, [r3, #0x2]
+ strh r2, [r0, #0x0]
+ strh r1, [r0, #0x2]
+ ldrh r2, [r3, #0x4]
+ ldrh r1, [r3, #0x6]
+ strh r2, [r0, #0x4]
+ strh r1, [r0, #0x6]
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D3B0C:
+ add r1, r0, #0x6
+ mov r12, #0x0
+ b _020D3BE0
+_020D3B18:
+ subs r5, r3, r12
+ ldr r2, [lr, #0x10]
+ addmi r5, r5, r4
+ add r2, r2, r5, lsl #0x3
+ ldrh r4, [r2, #0x4]
+ cmp r4, #0x0
+ bne _020D3B60
+ ldrh r3, [r2, #0x0]
+ ldrh r1, [r2, #0x2]
+ add sp, sp, #0x4
+ strh r3, [r0, #0x0]
+ strh r1, [r0, #0x2]
+ ldrh r3, [r2, #0x4]
+ ldrh r1, [r2, #0x6]
+ strh r3, [r0, #0x4]
+ strh r1, [r0, #0x6]
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D3B60:
+ ldrh r4, [r0, #0x6]
+ ands r4, r4, #0x1
+ beq _020D3B90
+ ldrh r4, [r2, #0x6]
+ ands r4, r4, #0x1
+ bne _020D3B90
+ ldrh r4, [r2, #0x0]
+ cmp r12, #0x0
+ strh r4, [r0, #0x0]
+ ldrneh r4, [r1, #0x0]
+ bicne r4, r4, #0x1
+ strneh r4, [r1, #0x0]
+_020D3B90:
+ ldrh r4, [r0, #0x6]
+ ands r4, r4, #0x2
+ beq _020D3BC0
+ ldrh r4, [r2, #0x6]
+ ands r4, r4, #0x2
+ bne _020D3BC0
+ ldrh r2, [r2, #0x2]
+ cmp r12, #0x0
+ strh r2, [r0, #0x2]
+ ldrneh r2, [r1, #0x0]
+ bicne r2, r2, #0x2
+ strneh r2, [r1, #0x0]
+_020D3BC0:
+ ldrh r2, [r0, #0x6]
+ cmp r2, #0x0
+ moveq r1, #0x1
+ streqh r1, [r0, #0x4]
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ add r12, r12, #0x1
+_020D3BE0:
+ ldrh r2, [lr, #0xe]
+ cmp r12, r2
+ bge _020D3BFC
+ ldrh r4, [lr, #0x14]
+ sub r2, r4, #0x1
+ cmp r12, r2
+ blt _020D3B18
+_020D3BFC:
+ mov r1, #0x1
+ strh r1, [r0, #0x4]
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020D3C10: .word 0x021D5474
+
+ arm_func_start TP_RequestAutoSamplingStopAsync
+TP_RequestAutoSamplingStopAsync: ; 0x020D3C14
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ mov r4, r0
+ ldr r1, _020D3CB0 ; =0x03000200
+ mov r0, #0x6
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020D3C30:
+ cmp r0, #0x0
+ movge r0, #0x1
+ movlt r0, #0x0
+ cmp r0, #0x0
+ bne _020D3C84
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldr r0, _020D3CB4
+ ldrh r1, [r0, #0x34]
+ ldr r3, [r0]
+ orr r1, r1, #0x4
+ strh r1, [r0, #0x34]
+ cmp r3, #0x0
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ mov r0, #0x2
+ mov r1, #0x4
+ mov r2, #0x0
+ blx r3
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D3C84:
+ ldr r1, _020D3CB4
+ mov r0, r4
+ ldrh r2, [r1, #0x36]
+ orr r2, r2, #0x4
+ strh r2, [r1, #0x36]
+ ldrh r2, [r1, #0x34]
+ bic r2, r2, #0x4
+ strh r2, [r1, #0x34]
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D3CB0: .word 0x03000200
+_020D3CB4: .word 0x021D5474
+
+ arm_func_start TP_RequestAutoSamplingStartAsync
+TP_RequestAutoSamplingStartAsync: ; 0x020D3CB8
+ stmdb sp!, {r4-r6,lr}
+ ldr r4, _020D3DC0 ; =0x021D5474
+ mov r5, r1
+ mov r12, #0x0
+ mov r6, r0
+ str r2, [r4, #0x10]
+ strh r12, [r4, #0xc]
+ strh r5, [r4, #0xe]
+ strh r3, [r4, #0x14]
+ cmp r3, #0x0
+ bls _020D3D00
+ mov r1, r12
+_020D3CE8:
+ ldr r0, [r4, #0x10]
+ add r0, r0, r12, lsl #0x3
+ add r12, r12, #0x1
+ strh r1, [r0, #0x4]
+ cmp r12, r3
+ blo _020D3CE8
+_020D3D00:
+ bl OS_DisableInterrupts
+ mov r4, r0
+ ldr r0, _020D3DC4 ; =0x02000100
+ and r1, r5, #0xff
+ orr r1, r1, r0
+ mov r0, #0x6
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020D3D20:
+ cmp r0, #0x0
+ movlt r0, #0x0
+ blt _020D3D4C
+ ldr r1, _020D3DC8
+ mov r0, #0x6
+ orr r1, r6, r1
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ movge r0, #0x1
+_020D3D4C:
+ ands r0, r0, #0xFF
+ bne _020D3D94
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldr r0, _020D3DC0
+ ldrh r1, [r0, #0x34]
+ ldr r3, [r0]
+ orr r1, r1, #0x2
+ strh r1, [r0, #0x34]
+ cmp r3, #0x0
+ ldmeqia sp!, {r4-r6, lr}
+ bxeq lr
+ mov r0, #0x1
+ mov r1, #0x4
+ mov r2, #0x0
+ blx r3
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+_020D3D94:
+ ldr r1, _020D3DC0
+ mov r0, r4
+ ldrh r2, [r1, #0x36]
+ orr r2, r2, #0x2
+ strh r2, [r1, #0x36]
+ ldrh r2, [r1, #0x34]
+ bic r2, r2, #0x2
+ strh r2, [r1, #0x34]
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+_020D3DC0: .word 0x021D5474
+_020D3DC4: .word 0x02000100
+_020D3DC8: .word 0x01010000
+
+ arm_func_start TP_WaitRawResult
+TP_WaitRawResult: ; 0x020D3DCC
+ stmdb sp!, {r4,lr}
+ mov r4, r0
+ mov r0, #0x1
+ bl TP_WaitBusy
+ ldr r1, _020D3E20 ; =0x021D5474
+ ldrh r0, [r1, #0x34]
+ ands r0, r0, #0x1
+ movne r0, #0x1
+ ldmneia sp!, {r4,lr}
+ bxne lr
+ ldrh r3, [r1, #0x4]
+ ldrh r2, [r1, #0x6]
+ mov r0, #0x0
+ strh r3, [r4, #0x0]
+ strh r2, [r4, #0x2]
+ ldrh r2, [r1, #0x8]
+ ldrh r1, [r1, #0xa]
+ strh r2, [r4, #0x4]
+ strh r1, [r4, #0x6]
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020D3E20: .word 0x021D5474
+
+ arm_func_start TP_RequestSamplingAsync
+TP_RequestSamplingAsync: ; 0x020D3E24
+ stmdb sp!, {r4,lr}
+ bl OS_DisableInterrupts
+ mov r4, r0
+ mov r0, #0x6
+ mov r1, #0x3000000
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020D3E40:
+ cmp r0, #0x0
+ movge r0, #0x1
+ movlt r0, #0x0
+ cmp r0, #0x0
+ bne _020D3E94
+ mov r0, r4
+ bl OS_RestoreInterrupts
+ ldr r0, _20D3EC0
+ ldrh r1, [r0, #0x34]
+ ldr r3, [r0]
+ orr r1, r1, #0x1
+ strh r1, [r0, #0x34]
+ cmp r3, #0x0
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ mov r0, #0x0
+ mov r2, r0
+ mov r1, #0x4
+ blx r3
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D3E94:
+ ldr r1, _20D3EC0
+ mov r0, r4
+ ldrh r2, [r1, #0x36]
+ orr r2, r2, #0x1
+ strh r2, [r1, #0x36]
+ ldrh r2, [r1, #0x34]
+ bic r2, r2, #0x1
+ strh r2, [r1, #0x34]
+ bl OS_RestoreInterrupts
+ ldmia sp!, {r4, lr}
+ bx lr
+_20D3EC0: .word 0x021D5474
+
+ arm_func_start TP_SetCalibrateParam
+TP_SetCalibrateParam: ; 0x020D3EC4
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ movs r4, r0
+ ldreq r0, _020D3FF8 ; =0x021D5474
+ moveq r1, #0x0
+ streqh r1, [r0, #0x30]
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ bl OS_DisableInterrupts
+ ldrsh lr, [r4, #0x4]
+ cmp lr, #0x0
+ beq _020D3F50
+ ldr r5, _020D3FFC ; =0x04000280
+ mov r12, #0x0
+ ldr r2, _020D4000 ; =0x04000290
+ strh r12, [r5, #0x0]
+ mov r3, #0x10000000
+ ldr r1, _020D4004 ; =0x04000298
+ str r3, [r2, #0x0]
+ str lr, [r1, #0x0]
+ str r12, [r1, #0x4]
+ ldrsh r2, [r4, #0x0]
+ ldr r1, _020D3FF8 ; =0x021D5474
+ str r2, [r1, #0x18]
+ ldrsh r2, [r4, #0x4]
+ str r2, [r1, #0x1c]
+_020D3F30:
+ ldrh r1, [r5, #0x0]
+ ands r1, r1, #0x8000
+ bne _020D3F30
+ ldr r2, _020D4008 ; =0x040002A0
+ ldr r1, _020D3FF8 ; =0x021D5474
+ ldr r2, [r2, #0x0]
+ str r2, [r1, #0x20]
+ b _020D3F64
+_020D3F50:
+ ldr r1, _020D3FF8 ; =0x021D5474
+ mov r2, #0x0
+ str r2, [r1, #0x18]
+ str r2, [r1, #0x1c]
+ str r2, [r1, #0x20]
+_020D3F64:
+ ldrsh r5, [r4, #0x6]
+ cmp r5, #0x0
+ beq _020D3FC8
+ ldr ip, _020D3FFC ; =0x04000280
+ mov lr, #0x0
+ ldr r2, _020D4000 ; =0x04000290
+ strh lr, [r12, #0x0]
+ mov r3, #0x10000000
+ ldr r1, _020D4004 ; =0x04000298
+ str r3, [r2, #0x0]
+ str r5, [r1, #0x0]
+ str lr, [r1, #0x4]
+ ldrsh r2, [r4, #0x2]
+ ldr r1, _020D3FF8 ; =0x021D5474
+ str r2, [r1, #0x24]
+ ldrsh r2, [r4, #0x6]
+ str r2, [r1, #0x28]
+_020D3FA8:
+ ldrh r1, [r12, #0x0]
+ ands r1, r1, #0x8000
+ bne _020D3FA8
+ ldr r2, _020D4008 ; =0x040002A0
+ ldr r1, _020D3FF8 ; =0x021D5474
+ ldr r2, [r2, #0x0]
+ str r2, [r1, #0x2c]
+ b _020D3FDC
+_020D3FC8:
+ ldr r1, _020D3FF8 ; =0x021D5474
+ mov r2, #0x0
+ str r2, [r1, #0x24]
+ str r2, [r1, #0x28]
+ str r2, [r1, #0x2c]
+_020D3FDC:
+ bl OS_RestoreInterrupts
+ ldr r0, _020D3FF8 ; =0x021D5474
+ mov r1, #0x1
+ strh r1, [r0, #0x30]
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+ .balign 4
+_020D3FF8: .word 0x021D5474
+_020D3FFC: .word 0x04000280
+_020D4000: .word 0x04000290
+_020D4004: .word 0x04000298
+_020D4008: .word 0x040002A0
+
+ arm_func_start TP_GetUserInfo
+TP_GetUserInfo: ; 0x020D400C
+ stmdb sp!, {r4-r6,lr}
+ sub sp, sp, #0x18
+ ldr ip, _020D40B4 ; =0x027FFC80
+ mov r4, r0
+ ldrh r1, [r12, #0x58]
+ ldrh r2, [r12, #0x5a]
+ ldrb r3, [r12, #0x5c]
+ cmp r1, #0x0
+ ldrb lr, [r12, #0x5d]
+ ldrh r6, [r12, #0x5e]
+ ldrh r5, [r12, #0x60]
+ ldrb r0, [r12, #0x62]
+ ldrb r12, [r12, #0x63]
+ bne _020D405C
+ cmp r6, #0x0
+ bne _020D405C
+ cmp r2, #0x0
+ bne _020D405C
+ cmp r5, #0x0
+ beq _020D4080
+_020D405C:
+ str lr, [sp, #0x0]
+ str r6, [sp, #0x4]
+ str r5, [sp, #0x8]
+ str r0, [sp, #0xc]
+ mov r0, r4
+ str r12, [sp, #0x10]
+ bl TP_CalcCalibrateParam
+_020D4078:
+ cmp r0, #0
+ beq _020D40A4
+_020D4080:
+ mov r0, #0x0
+ strh r0, [r4, #0x0]
+ strh r0, [r4, #0x2]
+ strh r0, [r4, #0x4]
+ strh r0, [r4, #0x6]
+ add sp, sp, #0x18
+ mov r0, #0x1
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D40A4:
+ mov r0, #0x1
+ add sp, sp, #0x18
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D40B4: .word 0x027FFC80
+
+ arm_func_start TP_Init
+TP_Init: ; 0x020D40B8
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r0, _020D413C ; =0x021D5470
+ ldrh r1, [r0, #0x0]
+ cmp r1, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ mov r1, #0x1
+ strh r1, [r0, #0x0]
+ bl PXI_Init
+ ldr r0, _020D4140 ; =0x021D5474
+ mov r1, #0x0
+ strh r1, [r0, #0x32]
+ strh r1, [r0, #0x36]
+ strh r1, [r0, #0xc]
+ str r1, [r0, #0x0]
+ str r1, [r0, #0x10]
+ strh r1, [r0, #0x30]
+ strh r1, [r0, #0x34]
+ mov r5, #0x6
+ mov r4, #0x1
+_020D4110:
+ mov r0, r5
+ mov r1, r4
+ bl PXI_IsCallbackReady
+_020D411C:
+ cmp r0, #0x0
+ beq _020D4110
+ ldr r1, _020D4144
+ mov r0, #0x6
+ bl PXI_SetFifoRecvCallback
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D413C: .word 0x021D5470
+_020D4140: .word 0x021D5474
+_020D4144: .word FUN_020D4148
+
+ arm_func_start FUN_020D4148
+FUN_020D4148: ; 0x020D4148
+ stmdb sp!, {r4,lr}
+ sub sp, sp, #0x8
+ mov r0, r1, lsl #0x10
+ mov r3, r0, lsr #0x10
+ and r0, r3, #0x7f00
+ mov r0, r0, lsl #0x8
+ cmp r2, #0x0
+ mov r0, r0, lsr #0x10
+ beq _020D41AC
+ ldr r1, _020D43FC ; =0x021D5474
+ mov r2, #0x1
+ ldrh r4, [r1, #0x34]
+ ldr r3, [r1, #0x0]
+ orr r2, r4, r2, lsl r0
+ cmp r3, #0x0
+ strh r2, [r1, #0x34]
+ addeq sp, sp, #0x8
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ mov r1, #0x4
+ mov r2, #0x0
+ blx r3
+ add sp, sp, #0x8
+ ldmia sp!, {r4,lr}
+ bx lr
+_020D41AC:
+ cmp r0, #0x10
+ bne _020D427C
+ ldr r1, _020D43FC ; =0x021D5474
+ ldrh r3, [r1, #0xc]
+ ldrh r2, [r1, #0x14]
+ add r3, r3, #0x1
+ strh r3, [r1, #0xc]
+ ldrh r3, [r1, #0xc]
+ cmp r3, r2
+ movcs r2, #0x0
+ strcsh r2, [r1, #0xc]
+ ldr r1, _020D4400 ; =0x027FFFAA
+ ldr r2, _020D43FC ; =0x021D5474
+ ldrh r3, [r1, #0x0]
+ ldr r1, _020D4404 ; =0x027FFFAC
+ ldrh r12, [r2, #0xc]
+ strh r3, [sp, #0x0]
+ ldrh r1, [r1, #0x0]
+ ldr r4, [r2, #0x10]
+ mov lr, r12, lsl #0x3
+ strh r1, [sp, #0x2]
+ ldr r3, [sp, #0x0]
+ add r1, r4, r12, lsl #0x3
+ mov r3, r3, lsl #0x14
+ mov r3, r3, lsr #0x14
+ strh r3, [r4, lr]
+ ldr r3, [sp, #0x0]
+ mov r3, r3, lsl #0x8
+ mov r3, r3, lsr #0x14
+ strh r3, [r1, #0x2]
+ ldr r3, [sp, #0x0]
+ mov r3, r3, lsl #0x7
+ mov r3, r3, lsr #0x1f
+ and r3, r3, #0xff
+ strh r3, [r1, #0x4]
+ ldr r3, [sp, #0x0]
+ mov r3, r3, lsl #0x5
+ mov r3, r3, lsr #0x1e
+ and r3, r3, #0xff
+ strh r3, [r1, #0x6]
+ ldr r3, [r2, #0x0]
+ cmp r3, #0x0
+ addeq sp, sp, #0x8
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ ldrh r2, [r2, #0xc]
+ mov r1, #0x0
+ and r2, r2, #0xff
+ blx r3
+ add sp, sp, #0x8
+ ldmia sp!, {r4,lr}
+ bx lr
+_020D427C:
+ ands r1, r1, #0x1000000
+ addeq sp, sp, #0x8
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ and r1, r3, #0xff
+ cmp r1, #0x4
+ addls pc, pc, r1, lsl #0x2
+ b _020D43EC
+_020D429C:
+ b _020D42B0
+ b _020D43EC
+ b _020D4390
+ b _020D4398
+ b _020D4388
+_020D42B0:
+ cmp r0, #0x0
+ beq _020D42D4
+ cmp r0, #0x1
+ beq _020D4338
+ cmp r0, #0x2
+ ldreq r1, _020D43FC
+ moveq r2, #0x0
+ streqh r2, [r1, #0x32]
+ b _020D4344
+_020D42D4:
+ ldr r1, _020D4400
+ ldr r3, _020D4404
+ ldrh ip, [r1]
+ ldr r1, _020D43FC
+ mov r2, #0x0
+ strh ip, [sp, #0x4]
+ ldrh r3, [r3]
+ strh r3, [sp, #0x6]
+ ldr ip, [sp, #0x4]
+ strh r2, [r1, #0x32]
+ mov r3, ip, lsl #0x7
+ mov r2, ip, lsl #0x5
+ mov lr, ip, lsl #0x14
+ mov ip, ip, lsl #0x8
+ mov r3, r3, lsr #0x1F
+ mov r2, r2, lsr #0x1E
+ mov lr, lr, lsr #0x14
+ mov ip, ip, lsr #0x14
+ and r3, r3, #0xFF
+ and r2, r2, #0xFF
+ strh lr, [r1, #0x4]
+ strh ip, [r1, #0x6]
+ strh r3, [r1, #0x8]
+ strh r2, [r1, #0xA]
+ b _020D4344
+_020D4338:
+ ldr r1, _020D43FC
+ mov r2, #0x2
+ strh r2, [r1, #0x32]
+_020D4344:
+ ldr r1, _020D43FC
+ mov r2, #0x1
+ ldrh ip, [r1, #0x36]
+ mvn r2, r2, lsl r0
+ ldr r3, [r1]
+ and r2, ip, r2
+ cmp r3, #0x0
+ strh r2, [r1, #0x36]
+ addeq sp, sp, #0x8
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ mov r1, #0x0
+ mov r2, r1
+ blx r3
+ add sp, sp, #0x8
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D4388:
+ mov r4, #0x3
+ b _020D439C
+_020D4390:
+ mov r4, #0x1
+ b _020D439C
+_020D4398:
+ mov r4, #0x2
+_020D439C:
+ ldr r1, _020D43FC
+ mov lr, #0x1
+ ldrh ip, [r1, #0x34]
+ ldr r3, [r1]
+ mvn r2, lr, lsl r0
+ orr ip, ip, lr, lsl r0
+ strh ip, [r1, #0x34]
+ ldrh ip, [r1, #0x36]
+ cmp r3, #0x0
+ addeq sp, sp, #0x8
+ and r2, ip, r2
+ strh r2, [r1, #0x36]
+ ldmeqia sp!, {r4, lr}
+ bxeq lr
+ and r1, r4, #0xff
+ mov r2, #0x0
+ blx r3
+ add sp, sp, #0x8
+ ldmia sp!, {r4, lr}
+ bx lr
+_020D43EC:
+ bl OS_Terminate
+ add sp, sp, #0x8
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020D43FC: .word 0x021D5474
+_020D4400: .word 0x027FFFAA
+_020D4404: .word 0x027FFFAC
+
+ arm_func_start MicWaitBusy
+MicWaitBusy: ; 0x020D4408
+ ldr ip, _020D441C ; =0x021D54B0
+_020D440C:
+ ldr r0, [r12, #0x0]
+ cmp r0, #0x1
+ beq _020D440C
+ bx lr
+ .balign 4
+_020D441C: .word 0x021D54B0
+
+ arm_func_start MicGetResultCallback
+MicGetResultCallback: ; 0x020D4420
+ ldr r1, _020D442C ; =0x021D54B0
+ str r0, [r1, #0xc]
+ bx lr
+ .balign 4
+_020D442C: .word 0x021D54B0
+
+ arm_func_start MicStopAutoSampling
+MicStopAutoSampling:
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D4460 ; =0x03004200
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020D4448:
+ cmp r0, #0x0
+ movge r0, #0x1
+ movlt r0, #0x0
+ add sp, sp, #4
+ ldmfd sp!, {lr}
+ bx lr
+_020D4460: .word 0x03004200
+
+ arm_func_start MicStartAutoSampling
+MicStartAutoSampling: ; 0x020D4464
+ stmdb sp!, {r4-r6,lr}
+ ldr ip, _020D4584 ; =0x02004100
+ mov r6, r0
+ mov r5, r1
+ mov r4, r2
+ orr r1, r3, r12
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+_020D4488:
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ mov r0, r6, lsr #0x10
+ orr r1, r0, #0x10000
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ ldr r1, _020D4588
+ mov r0, #0x9
+ and r1, r6, r1
+ orr r1, r1, #0x20000
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ mov r0, r5, lsr #0x10
+ orr r1, r0, #0x30000
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ ldr r1, _020D4588
+ mov r0, #0x9
+ and r1, r5, r1
+ orr r1, r1, #0x40000
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ mov r0, r4, lsr #0x10
+ orr r1, r0, #0x50000
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movlt r0, #0x0
+ ldmltia sp!, {r4-r6, lr}
+ bxlt lr
+ ldr r0, _020D4588
+ ldr r1, _020D458C
+ and r0, r4, r0
+ orr r1, r0, r1
+ mov r0, #0x9
+ mov r2, #0x0
+ bl PXI_SendWordByFifo
+ cmp r0, #0x0
+ movge r0, #0x1
+ movlt r0, #0x0
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+_020D4584: .word 0x02004100
+_020D4588: .word 0x0000FFFF
+_020D458C: .word 0x01060000
+
+ arm_func_start MicDoSampling
+MicDoSampling: ; 0x020D4590
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D45C4 ; =0x03004000
+ mov r2, #0x0
+ orr r1, r0, r1
+ mov r0, #0x9
+ bl PXI_SendWordByFifo
+_020D45AC:
+ cmp r0, #0x0
+ movge r0, #0x1
+ movlt r0, #0x0
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+_020D45C4: .word 0x03004000
+
+ arm_func_start MicCommonCallback
+MicCommonCallback: ; 0x020D45C8
+ stmdb sp!, {r4,lr}
+ mov r4, r1
+ cmp r2, #0x0
+ beq _020D4610
+ ldr r0, _020D4700 ; =0x021D54B0
+ ldr r2, _020D4700 ; =0x021D54B0
+ ldr r1, [r0, #0x0]
+ ldr r12, [r2, #0x4]
+ cmp r1, #0x0
+ movne r1, #0x0
+ strne r1, [r0, #0x0]
+ cmp r12, #0x0
+ beq _020D4610
+ ldr r1, [r2, #0x8]
+ mov r3, #0x0
+ mov r0, #0x6
+ str r3, [r2, #0x4]
+ blx r12
+_020D4610:
+ and r0, r4, #0xff
+ mov r1, r0, lsl #0x10
+ and r2, r4, #0x7f00
+ mov r0, r2, lsl #0x8
+ mov r1, r1, lsr #0x10
+ cmp r1, #0x4
+ mov r2, r0, lsr #0x10
+ addls pc, pc, r1, lsl #0x2
+ b _020D4670
+_020D4634:
+ b _020D4648
+ b _020D4650
+ b _020D4658
+ b _020D4660
+ b _020D4668
+_020D4648:
+ mov r0, #0x0
+ b _020D4674
+_020D4650:
+ mov r0, #0x4
+ b _020D4674
+_020D4658:
+ mov r0, #0x2
+ b _020D4674
+_020D4660:
+ mov r0, #0x5
+ b _020D4674
+_020D4668:
+ mov r0, #0x1
+ b _020D4674
+_020D4670:
+ mov r0, #0x6
+_020D4674:
+ cmp r2, #0x51
+ bne _020D46A0
+ ldr r1, _020D4700 ; =0x021D54B0
+ ldr r2, [r1, #0x10]
+ cmp r2, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ ldr r1, [r1, #0x14]
+ blx r2
+ ldmia sp!, {r4,lr}
+ bx lr
+_020D46A0:
+ cmp r2, #0x40
+ bne _020D46C0
+ ldr r1, _020D4700 ; =0x021D54B0
+ ldr r2, [r1, #0x18]
+ cmp r2, #0x0
+ ldrne r1, _020D4704 ; =0x027FFF94
+ ldrneh r1, [r1, #0x0]
+ strneh r1, [r2, #0x0]
+_020D46C0:
+ ldr r1, _020D4700 ; =0x021D54B0
+ ldr r2, [r1, #0x0]
+ cmp r2, #0x0
+ movne r2, #0x0
+ strne r2, [r1, #0x0]
+ ldr r2, _020D4700 ; =0x021D54B0
+ ldr r4, [r2, #0x4]
+ cmp r4, #0x0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+ ldr r1, [r2, #0x8]
+ mov r3, #0x0
+ str r3, [r2, #0x4]
+ blx r4
+ ldmia sp!, {r4,lr}
+ bx lr
+ .balign 4
+_020D4700: .word 0x021D54B0
+_020D4704: .word 0x027FFF94
+
+ arm_func_start MIC_GetLastSamplingAddress
+MIC_GetLastSamplingAddress: ; 0x020D4708
+ ldr r0, _020D4714 ; =0x027FFF90
+ ldr r0, [r0, #0x0]
+ bx lr
+ .balign 4
+_020D4714: .word 0x027FFF90
+
+ arm_func_start MIC_StopAutoSampling
+MIC_StopAutoSampling: ; 0x020D4718
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r0, _020D4754 ; =MicGetResultCallback
+ mov r1, #0x0
+ bl MIC_StopAutoSamplingAsync
+ ldr r1, _020D4758 ; =0x021D54B0
+ cmp r0, #0x0
+ str r0, [r1, #0xc]
+ bne _020D4740
+ bl MicWaitBusy
+_020D4740:
+ ldr r0, _020D4758 ; =0x021D54B0
+ ldr r0, [r0, #0xc]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D4754: .word MicGetResultCallback
+_020D4758: .word 0x021D54B0
+
+ arm_func_start MIC_StopAutoSamplingAsync
+MIC_StopAutoSamplingAsync: ; 0x020D475C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r5, r0
+ mov r4, r1
+ bl OS_DisableInterrupts
+ ldr r1, _020D47C8 ; =0x021D54B0
+ ldr r2, [r1, #0x0]
+ cmp r2, #0x0
+ beq _020D4794
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r5,lr}
+ bx lr
+_020D4794:
+ mov r2, #0x1
+ str r2, [r1, #0x0]
+ bl OS_RestoreInterrupts
+ ldr r0, _020D47C8 ; =0x021D54B0
+ str r5, [r0, #0x4]
+ str r4, [r0, #0x8]
+ bl MicStopAutoSampling
+_020D47B0:
+ cmp r0, #0x0
+ movne r0, #0x0
+ moveq r0, #0x3
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+_020D47C8: .word 0x021D54B0
+
+ arm_func_start MIC_StartAutoSampling
+MIC_StartAutoSampling: ; 0x020D47CC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D4808 ; =MicGetResultCallback
+ mov r2, #0x0
+ bl MIC_StartAutoSamplingAsync
+ ldr r1, _020D480C ; =0x021D54B0
+ cmp r0, #0x0
+ str r0, [r1, #0xc]
+ bne _020D47F4
+ bl MicWaitBusy
+_020D47F4:
+ ldr r0, _020D480C ; =0x021D54B0
+ ldr r0, [r0, #0xc]
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D4808: .word MicGetResultCallback
+_020D480C: .word 0x021D54B0
+
+ arm_func_start MIC_StartAutoSamplingAsync
+MIC_StartAutoSamplingAsync: ; 0x020D4810
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ mov r7, r0
+ ldr r0, [r7, #0x4]
+ mov r6, r1
+ ands r0, r0, #0x1f
+ mov r5, r2
+ addne sp, sp, #0x4
+ movne r0, #0x2
+ ldmneia sp!, {r4-r7,lr}
+ bxne lr
+ ldr r1, [r7, #0x8]
+ ands r0, r1, #0x1f
+ addne sp, sp, #0x4
+ movne r0, #0x2
+ ldmneia sp!, {r4-r7,lr}
+ bxne lr
+ cmp r1, #0x0
+ addeq sp, sp, #0x4
+ moveq r0, #0x2
+ ldmeqia sp!, {r4-r7,lr}
+ bxeq lr
+ ldr r0, [r7, #0xc]
+ cmp r0, #0x400
+ addcc sp, sp, #0x4
+ movcc r0, #0x2
+ ldmccia sp!, {r4-r7,lr}
+ bxcc lr
+ ldr r0, [r7, #0x0]
+ cmp r0, #0x5
+ addls pc, pc, r0, lsl #0x2
+ b _020D48D8
+_020D4890:
+ b _020D48A8
+ b _020D48B0
+ b _020D48B8
+ b _020D48C0
+ b _020D48C8
+ b _020D48D0
+_020D48A8:
+ mov r1, #0x0
+ b _020D48E8
+_020D48B0:
+ mov r1, #0x1
+ b _020D48E8
+_020D48B8:
+ mov r1, #0x2
+ b _020D48E8
+_020D48C0:
+ mov r1, #0x3
+ b _020D48E8
+_020D48C8:
+ mov r1, #0x5
+ b _020D48E8
+_020D48D0:
+ mov r1, #0x7
+ b _020D48E8
+_020D48D8:
+ add sp, sp, #0x4
+ mov r0, #0x2
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D48E8:
+ ldr r0, [r7, #0x10]
+ cmp r0, #0x0
+ orrne r0, r1, #0x10
+ andne r0, r0, #0xff
+ andeq r0, r1, #0xff
+ and r4, r0, #0xff
+ bl OS_DisableInterrupts
+ ldr r1, _020D497C
+ ldr r2, [r1]
+ cmp r2, #0x0
+ beq _020D4928
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D4928:
+ mov r2, #0x1
+ str r2, [r1]
+ bl OS_RestoreInterrupts
+ ldr r0, _020D497C
+ mov r3, r4
+ str r6, [r0, #0x4]
+ str r5, [r0, #0x8]
+ ldr r1, [r7, #0x14]
+ str r1, [r0, #0x10]
+ ldr r1, [r7, #0x18]
+ str r1, [r0, #0x14]
+ ldr r0, [r7, #0x4]
+ ldr r1, [r7, #0x8]
+ ldr r2, [r7, #0xC]
+ bl MicStartAutoSampling
+ cmp r0, #0x0
+ movne r0, #0x0
+ moveq r0, #0x3
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D497C: .word 0x021D54B0
+
+ arm_func_start MIC_DoSamplingAsync
+MIC_DoSamplingAsync: ; 0x020D4980
+ stmdb sp!, {r4-r7,lr}
+ sub sp, sp, #0x4
+ cmp r0, #0x6
+ mov r7, r1
+ mov r6, r2
+ mov r5, r3
+ addge sp, sp, #0x4
+ movge r0, #0x2
+ ldmgeia sp!, {r4-r7,lr}
+ bxge lr
+ cmp r0, #0x3
+ addls pc, pc, r0, lsl #0x2
+ b _020D49E4
+_020D49B4:
+ b _020D49C4
+ b _020D49CC
+ b _020D49D4
+ b _020D49DC
+_020D49C4:
+ mov r4, #0x0
+ b _020D49F4
+_020D49CC:
+ mov r4, #0x1
+ b _020D49F4
+_020D49D4:
+ mov r4, #0x2
+ b _020D49F4
+_020D49DC:
+ mov r4, #0x3
+ b _020D49F4
+_020D49E4:
+ add sp, sp, #0x4
+ mov r0, #0x2
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D49F4:
+ bl OS_DisableInterrupts
+ ldr r1, _020D4A58
+ ldr r2, [r1]
+ cmp r2, #0x0
+ beq _020D4A1C
+ bl OS_RestoreInterrupts
+ add sp, sp, #0x4
+ mov r0, #0x1
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D4A1C:
+ mov r2, #0x1
+ str r2, [r1]
+ bl OS_RestoreInterrupts
+ ldr r1, _020D4A58
+ mov r0, r4
+ str r6, [r1, #0x4]
+ str r5, [r1, #0x8]
+ str r7, [r1, #0x18]
+ bl MicDoSampling
+ cmp r0, #0x0
+ movne r0, #0x0
+ moveq r0, #0x3
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r7,lr}
+ bx lr
+_020D4A58: .word 0x021D54B0
+
+ arm_func_start MIC_Init
+MIC_Init: ; 0x020D4A5C
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D4AD8 ; =0x021D54AC
+ ldrh r0, [r1, #0x0]
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ ldr r0, _020D4ADC ; =0x021D54B0
+ mov r2, #0x0
+ mov r3, #0x1
+ strh r3, [r1, #0x0]
+ str r2, [r0, #0x0]
+ str r2, [r0, #0x4]
+ bl PXI_Init
+ mov r5, #0x9
+ mov r4, #0x1
+_020D4AA0:
+ mov r0, r5
+ mov r1, r4
+ bl PXI_IsCallbackReady
+_020D4AAC:
+ cmp r0, #0x0
+ beq _020D4AA0
+ ldr r2, _020D4AE0
+ mov r3, #0x0
+ ldr r1, _020D4AE4
+ mov r0, #0x9
+ str r3, [r2]
+ bl PXI_SetFifoRecvCallback
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5, lr}
+ bx lr
+_020D4AD8: .word 0x021D54AC
+_020D4ADC: .word 0x021D54B0
+_020D4AE0: .word 0x027FFF90
+_020D4AE4: .word MicCommonCallback
+
+ arm_func_start PM_DeletePostSleepCallback
+PM_DeletePostSleepCallback: ; 0x020D4AE8
+ ldr ip, _020D4AF8 ; =0x020D4B78
+ mov r1, r0
+ ldr r0, _020D4AFC ; =0x021D54E0
+ bx r12
+ .balign 4
+_020D4AF8: .word 0x020D4B78
+_020D4AFC: .word 0x021D54E0
+
+ arm_func_start PM_DeletePreSleepCallback
+PM_DeletePreSleepCallback: ; 0x020D4B00
+ ldr ip, _020D4B10 ; =0x020D4B78
+ mov r1, r0
+ ldr r0, _020D4B14 ; =0x021D54D8
+ bx r12
+ .balign 4
+_020D4B10: .word 0x020D4B78
+_020D4B14: .word 0x021D54D8
+
+ arm_func_start PM_AppendPostSleepCallback
+PM_AppendPostSleepCallback: ; 0x020D4B18
+ ldr ip, _020D4B28 ; =FUN_020D4BC4
+ mov r1, r0
+ ldr r0, _020D4B2C ; =0x021D54E0
+ bx r12
+ .balign 4
+_020D4B28: .word FUN_020D4BC4
+_020D4B2C: .word 0x021D54E0
+
+ arm_func_start PM_PrependPreSleepCallback
+PM_PrependPreSleepCallback: ; 0x020D4B30
+ ldr ip, _020D4B40 ; =FUN_020D4C0C
+ mov r1, r0
+ ldr r0, _020D4B44 ; =0x021D54D8
+ bx r12
+ .balign 4
+_020D4B40: .word FUN_020D4C0C
+_020D4B44: .word 0x021D54D8
+
+ arm_func_start PMi_ExecuteList
+PMi_ExecuteList: ; 0x020D4B48
+ stmdb sp!, {r4,lr}
+ movs r4, r0
+ ldmeqia sp!, {r4,lr}
+ bxeq lr
+_020D4B58:
+ ldr r0, [r4, #0x4]
+ ldr r1, [r4, #0x0]
+ blx r1
+ ldr r4, [r4, #0x8]
+ cmp r4, #0x0
+ bne _020D4B58
+ ldmia sp!, {r4,lr}
+ bx lr
+
+ arm_func_start FUN_020D4B78
+FUN_020D4B78:
+ cmp r0, #0x0
+ bxeq lr
+ ldr r3, [r0]
+ mov r2, r3
+ cmp r3, #0x0
+ bxeq lr
+_020D4B90:
+ cmp r3, r1
+ bne _020D4BB0
+ cmp r3, r2
+ ldreq r1, [r3, #0x8]
+ streq r1, [r0]
+ ldrne r0, [r3, #0x8]
+ strne r0, [r2, #0x8]
+ bx lr
+_020D4BB0:
+ mov r2, r3
+ ldr r3, [r3, #0x8]
+ cmp r3, #0x0
+ bne _020D4B90
+ bx lr
+
+ arm_func_start FUN_020D4BC4
+FUN_020D4BC4: ; 0x020D4BC4
+ cmp r0, #0x0
+ bxeq lr
+ ldr r2, [r0, #0x0]
+ cmp r2, #0x0
+ moveq r2, #0x0
+ streq r2, [r1, #0x8]
+ streq r1, [r0, #0x0]
+ bxeq lr
+ ldr r0, [r2, #0x8]
+ cmp r0, #0x0
+ beq _020D4C00
+_020D4BF0:
+ mov r2, r0
+ ldr r0, [r0, #0x8]
+ cmp r0, #0x0
+ bne _020D4BF0
+_020D4C00:
+ str r0, [r1, #0x8]
+ str r1, [r2, #0x8]
+ bx lr
+
+ arm_func_start FUN_020D4C0C
+FUN_020D4C0C: ; 0x020D4C0C
+ cmp r0, #0x0
+ ldrne r2, [r0, #0x0]
+ strne r2, [r1, #0x8]
+ strne r1, [r0, #0x0]
+ bx lr
+
+ arm_func_start PM_GetLEDPattern
+PM_GetLEDPattern: ; 0x020D4C20
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D4C58 ; =0x020D587C
+ add r2, sp, #0x0
+ bl PM_GetLEDPatternAsync
+_020D4C34:
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmnefd sp!, {lr}
+ bxne lr
+ bl PMi_WaitBusy
+ ldr r0, [sp]
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+_020D4C58: .word 0x020D587C
+
+ arm_func_start PM_GetLEDPatternAsync
+PM_GetLEDPatternAsync:
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r4, r2
+ bl PMi_Lock
+_020D4C70:
+ cmp r0, #0x0
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ ldr r1, _020D4CA4
+ ldr r0, _020D4CA8
+ str r5, [r1, #0x4]
+ str r4, [r1, #0x8]
+ str r6, [r1, #0xC]
+ bl PMi_SendPxiData
+ mov r0, #0x0
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D4CA4: .word 0x021D54E4
+_020D4CA8: .word 0x03006700
+
+ arm_func_start PMi_SendLEDPatternCommand
+PMi_SendLEDPatternCommand: ; 0x020D4CAC
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ ldr r1, _020D4CE4 ; =0x020D587C
+ add r2, sp, #0x0
+ bl PMi_SendLEDPatternCommandAsync
+_020D4CC0:
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmnefd sp!, {lr}
+ bxne lr
+ bl PMi_WaitBusy
+ ldr r0, [sp]
+ add sp, sp, #0x4
+ ldmfd sp!, {lr}
+ bx lr
+_020D4CE4: .word 0x020D587C
+
+ arm_func_start PMi_SendLEDPatternCommandAsync
+PMi_SendLEDPatternCommandAsync:
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, r1
+ mov r4, r2
+ bl PMi_Lock
+_020D4CFC:
+ cmp r0, #0x0
+ moveq r0, #0x1
+ ldmeqia sp!, {r4-r6,lr}
+ bxeq lr
+ ldr r0, _020D4D34
+ ldr r1, _020D4D38
+ and r2, r6, #0xff
+ orr r0, r2, r0
+ str r5, [r1, #0x4]
+ str r4, [r1, #0x8]
+ bl PMi_SendPxiData
+ mov r0, #0x0
+ ldmia sp!, {r4-r6,lr}
+ bx lr
+_020D4D34: .word 0x03006600
+_020D4D38: .word 0x021D54E4
+
+ arm_func_start PM_GetLCDPower
+PM_GetLCDPower: ; 0x020D4D3C
+ ldr r0, _020D4D54 ; =0x04000304
+ ldrh r0, [r0, #0x0]
+ ands r0, r0, #0x1
+ movne r0, #0x1
+ moveq r0, #0x0
+ bx lr
+ .balign 4
+_020D4D54: .word 0x04000304
+
+ arm_func_start PM_SetLCDPower
+PM_SetLCDPower: ; 0x020D4D58
+ ldr ip, _020D4D74 ; =PMi_SetLCDPower
+ mov r1, #0x0
+ cmp r0, #0x1
+ movne r0, #0x0
+ mov r2, r1
+ mov r3, #0x1
+ bx r12
+ .balign 4
+_020D4D74: .word PMi_SetLCDPower
+
+ arm_func_start PMi_SetLCDPower
+PMi_SetLCDPower: ; 0x020D4D78
+ stmdb sp!, {lr}
+ sub sp, sp, #0x4
+ cmp r0, #0x0
+ beq _020D4E00
+ cmp r0, #0x1
+ bne _020D4E4C
+ cmp r2, #0x0
+ bne _020D4DC0
+ ldr r2, _020D4E5C ; =0x027FFC3C
+ ldr r0, _020D4E60 ; =0x021D54DC
+ ldr r2, [r2, #0x0]
+ ldr r0, [r0, #0x0]
+ sub r0, r2, r0
+ cmp r0, #0x7
+ addls sp, sp, #0x4
+ movls r0, #0x0
+ ldmlsia sp!, {lr}
+ bxls lr
+_020D4DC0:
+ cmp r1, #0x0
+ beq _020D4DEC
+ cmp r3, #0x0
+ beq _020D4DDC
+ mov r0, r1
+ bl PMi_SetLED
+ b _020D4DEC
+_020D4DDC:
+ mov r0, r1
+ mov r1, #0x0
+ mov r2, r1
+ bl PMi_SetLEDAsync
+_020D4DEC:
+ ldr r1, _020D4E64 ; =0x04000304
+ ldrh r0, [r1, #0x0]
+ orr r0, r0, #0x1
+ strh r0, [r1, #0x0]
+ b _020D4E4C
+_020D4E00:
+ ldr lr, _020D4E64 ; =0x04000304
+ ldr r2, _020D4E5C ; =0x027FFC3C
+ ldrh r12, [lr, #0x0]
+ ldr r0, _020D4E60 ; =0x021D54DC
+ cmp r1, #0x0
+ bic r12, r12, #0x1
+ strh r12, [lr, #0x0]
+ ldr r2, [r2, #0x0]
+ str r2, [r0, #0x0]
+ beq _020D4E4C
+ cmp r3, #0x0
+ beq _020D4E3C
+ mov r0, r1
+ bl PMi_SetLED
+ b _020D4E4C
+_020D4E3C:
+ mov r0, r1
+ mov r1, #0x0
+ mov r2, r1
+ bl PMi_SetLEDAsync
+_020D4E4C:
+ mov r0, #0x1
+ add sp, sp, #0x4
+ ldmia sp!, {lr}
+ bx lr
+ .balign 4
+_020D4E5C: .word 0x027FFC3C
+_020D4E60: .word 0x021D54DC
+_020D4E64: .word 0x04000304
+
+ arm_func_start PM_GoSleepMode
+PM_GoSleepMode: ; 0x020D4E68
+ stmdb sp!, {r4-r11,lr}
+ sub sp, sp, #0x1c
+ ldr r3, _020D5084 ; =0x021D54D8
+ mov r10, r0
+ ldr r0, [r3, #0x0]
+ mov r9, r1
+ mov r11, r2
+ mov r8, #0x0
+ bl PMi_ExecuteList
+ ldr r1, _020D5088 ; =0x04000208
+ mov r0, r8
+ ldrh r4, [r1, #0x0]
+ strh r0, [r1, #0x0]
+ bl OS_DisableInterrupts
+_020D4EA0:
+ str r0, [sp]
+ ldr r0, _020D508C
+ bl OS_DisableIrqMask
+ str r0, [sp, #0x4]
+ mov r0, #0x40000
+ bl OS_SetIrqMask
+ ldr r0, [sp]
+ bl OS_RestoreInterrupts
+ ldr r2, _020D5088
+ mov r1, #0x1
+ ldrh r0, [r2]
+ ands r0, sl, #0x8
+ strh r1, [r2]
+ beq _020D4EE8
+ ldr r0, _020D5090
+ ldrh r0, [r0]
+ cmp r0, #0x2
+ biceq sl, sl, #0x8
+_020D4EE8:
+ ands r0, sl, #0x10
+ beq _020D4EFC
+ bl CTRDG_IsExisting
+ cmp r0, #0x0
+ biceq sl, sl, #0x10
+_020D4EFC:
+ ldr r0, _020D5094
+ mov r1, #0x4000000
+ ldr r7, [r1]
+ ldr r6, [r0]
+ bl PM_GetLCDPower
+ str r0, [sp, #0x8]
+ add r0, sp, #0xC
+ add r1, sp, #0x10
+ bl PM_GetBackLight
+ mov r0, #0x2
+ mov r1, #0x0
+ bl FUN_020D526C
+ ldr r2, _020D5098
+ ldr r0, [r2]
+ str r0, [sp, #0x14]
+_020D4F38:
+ ldr r1, [r2]
+ ldr r0, [sp, #0x14]
+ cmp r0, r1
+ beq _020D4F38
+ ldr r0, [r2]
+ mov r2, #0x4000000
+ str r0, [sp, #0x14]
+ ldr r0, [r2]
+ ldr r1, _020D5094
+ bic r0, r0, #0x30000
+ str r0, [r2]
+ ldr r0, [r1]
+ bic r0, r0, #0x10000
+ str r0, [r1]
+ ldr r2, _020D5098
+_020D4F74:
+ ldr r1, [r2]
+ ldr r0, [sp, #0x14]
+ cmp r0, r1
+ beq _020D4F74
+ ldr r0, [r2]
+ str r0, [sp, #0x14]
+ ldr r2, _020D5098
+_020D4F90:
+ ldr r1, [r2]
+ ldr r0, [sp, #0x14]
+ cmp r0, r1
+ beq _020D4F90
+ ldr r0, [sp, #0xC]
+ ldr r1, [sp, #0x10]
+ orr r0, sl, r0, lsl #0x5
+ orr r0, r0, r1, lsl #0x6
+ mov r0, r0, lsl #0x10
+ mov r5, r0, lsr #0x10
+ orr r0, r9, fp
+ mov r0, r0, lsl #0x10
+ mov r9, r0, lsr #0x10
+_020D4FC4:
+ mov r0, r5
+ mov r1, r9
+ bl PMi_SendSleepStart
+ cmp r0, #0x0
+ bne _020D4FC4
+ bl OS_Halt
+ ldr r0, _020D509C
+ bl OS_SpinWait
+ ands r0, sl, #0x8
+ beq _020D4FFC
+ ldr r0, _020D50A0
+ ldr r0, [r0]
+ ands r0, r0, #0x100000
+ movne r8, #0x1
+_020D4FFC:
+ cmp r8, #0x0
+ bne _020D5040
+ ldr r0, [sp, #0x8]
+ cmp r0, #0x1
+ bne _020D5028
+ mov r0, #0x1
+ mov r1, r0
+ mov r2, r0
+ mov r3, #0x0
+ bl PMi_SetLCDPower
+ b _020D5030
+_020D5028:
+ mov r0, #0x1
+ bl PMi_SetLED
+_020D5030:
+ mov r1, #0x4000000
+ ldr r0, _020D5094
+ str r7, [r1]
+ str r6, [r0]
+_020D5040:
+ bl OS_DisableInterrupts
+ ldr r0, [sp, #0x4]
+ bl OS_SetIrqMask
+ ldr r0, [sp]
+ bl OS_RestoreInterrupts
+ ldr r1, _020D5088
+ cmp r8, #0x0
+ ldrh r0, [r1]
+ strh r4, [r1]
+ beq _020D506C
+ bl FUN_020D5180
+_020D506C:
+ ldr r0, _020D50A4
+ ldr r0, [r0]
+ bl PMi_ExecuteList
+ add sp, sp, #0x1C
+ ldmia sp!, {r4-r11, lr}
+ bx lr
+_020D5084: .word 0x021D54D8
+_020D5088: .word 0x04000208
+_020D508C: .word 0x003FFFFF
+_020D5090: .word 0x027FFC40
+_020D5094: .word 0x04001000
+_020D5098: .word 0x027FFC3C
+_020D509C: .word 0x00996A00
+_020D50A0: .word 0x04000214
+_020D50A4: .word 0x021D54E0
+
+
+ arm_func_start PMi_SendPxiData
+PMi_SendPxiData: ; 0x020D50A8
+ stmdb sp!, {r4-r6,lr}
+ mov r6, r0
+ mov r5, #0x8
+ mov r4, #0x0
+_020D50B8:
+ mov r0, r5
+ mov r1, r6
+ mov r2, r4
+ bl PXI_SendWordByFifo
+_020D50C8:
+ cmp r0, #0
+ bne _020D50B8
+ ldmia sp!, {r4-r6, lr}
+ bx lr
+
+ arm_func_start PM_GetBackLight
+PM_GetBackLight: ; 0x020D50D8
+ stmdb sp!, {r4-r5,lr}
+ sub sp, sp, #0x4
+ mov r4, r1
+ mov r5, r0
+ add r1, sp, #0x0
+ mov r0, #0x0
+ bl PMi_ReadRegister
+_020D50F4:
+ cmp r0, #0x0
+ addne sp, sp, #0x4
+ ldmneia sp!, {r4-r5,lr}
+ bxne lr
+ cmp r5, #0x0
+ beq _020D5120
+ ldrh r1, [sp]
+ ands r1, r1, #0x8
+ movne r1, #0x1
+ moveq r1, #0x0
+ str r1, [r5]
+_020D5120:
+ cmp r4, #0x0
+ addeq sp, sp, #0x4
+ ldmeqia sp!, {r4-r5,lr}
+ bxeq lr
+ ldrh r1, [sp]
+ ands r1, r1, #0x4
+ movne r1, #0x1
+ moveq r1, #0x0
+ str r1, [r4]
+ add sp, sp, #0x4
+ ldmia sp!, {r4-r5,lr}
+ bx lr
diff --git a/asm/arm9_thumb.s b/asm/arm9_thumb.s
index 82e25175..8e3a5b8e 100644
--- a/asm/arm9_thumb.s
+++ b/asm/arm9_thumb.s
@@ -67,7 +67,7 @@ FUN_02000E7C: ; 0x02000E7C
ldr r0, [r0, #0x14]
cmp r0, #0x0
beq _02000E8E
- bl FUN_02020C2C
+ bl ErrorHandling
_02000E8E:
ldr r0, _02000E98 ; =0x02106FA0
str r5, [r0, #0x10]
@@ -82,7 +82,7 @@ FUN_02000E9C: ; 0x02000E9C
bl FUN_0202FB80
mov r0, #0x1
add r1, r0, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
ldr r0, _02000EC4 ; =0x021C48B8
ldr r1, [r0, #0x2c]
add r1, r1, #0x1
@@ -110,7 +110,7 @@ FUN_02000EC8: ; 0x02000EC8
cmp r0, #0x1
bne _02000EE2
add r0, r4, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
_02000EE2:
bl FUN_02000E9C
pop {r4, pc}
@@ -282,8 +282,8 @@ _02001024:
_02001032:
mov r1, #0x0
add r2, r1, #0x0
- blx FUN_020D4E68
- blx FUN_020D7D18
+ blx PM_GoSleepMode
+ blx CARD_IsPulledOut
cmp r0, #0x0
beq _02001048
blx FUN_020D5180
@@ -306,7 +306,7 @@ _0200105C:
_02001064:
add r0, sp, #0x4
add r1, sp, #0x0
- blx FUN_020D50D8
+ blx PM_GetBackLight
ldr r0, [sp, #0x4]
cmp r0, #0x1
bne _02001096
@@ -318,7 +318,7 @@ _02001064:
_0200107E:
add r0, sp, #0x4
add r1, sp, #0x0
- blx FUN_020D50D8
+ blx PM_GetBackLight
ldr r0, [sp, #0x4]
cmp r0, #0x0
bne _02001096
@@ -1848,7 +1848,7 @@ FUN_02001B80: ; 0x02001B80
ldr r0, [r0, #0xc]
bx r3
nop
-_02001B88: .word FUN_020191D0 + 1
+_02001B88: .word FUN_020191D0
thumb_func_start FUN_02001B8C
FUN_02001B8C: ; 0x02001B8C
@@ -2291,7 +2291,7 @@ _02001ECE:
ldrb r4, [r5, #0x15]
add r1, r6, #0x0
add r0, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x0
bne _02001EF2
ldrb r0, [r5, #0xb]
@@ -2323,7 +2323,7 @@ _02001F08:
ldrb r6, [r5, #0x15]
sub r4, r1, #0x1
add r0, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r4, r1
bne _02001F2A
ldrb r0, [r5, #0xb]
@@ -2393,7 +2393,7 @@ _02001F72:
mov r0, #0x0
pop {r4-r6, pc}
_02001F8A:
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x18
asr r2, r0, #0x18
b _02001F9A
@@ -2563,7 +2563,7 @@ FUN_020020B0: ; 0x020020B0
ldrb r1, [r5, #0xa]
add r0, r7, #0x0
add r6, r2, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
ldrb r2, [r5, #0x19]
ldrb r1, [r5, #0x16]
lsl r2, r2, #0x1
@@ -2572,7 +2572,7 @@ FUN_020020B0: ; 0x020020B0
strb r1, [r4, #0x0]
ldrb r1, [r5, #0xa]
add r0, r7, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
ldrb r2, [r5, #0xb]
ldrb r3, [r5, #0x1a]
ldrb r0, [r5, #0x18]
@@ -2909,7 +2909,7 @@ FUN_0200232C: ; 0x0200232C
ldr r1, _02002338 ; =0x0000FFFF
bx r3
.balign 4
-_02002334: .word FUN_02002310 + 1
+_02002334: .word FUN_02002310
_02002338: .word 0x0000FFFF
thumb_func_start FUN_0200233C
@@ -3116,7 +3116,7 @@ _0200248C:
lsl r0, r0, #0x8
cmp r5, r0
bne _020024B0
- bl FUN_02020C2C
+ bl ErrorHandling
_020024B0:
ldr r0, _02002664 ; =0x0000F0FD
cmp r5, r0
@@ -4153,7 +4153,7 @@ FUN_02002C84: ; 0x02002C84
add r5, r1, #0x0
cmp r4, #0x4
blt _02002C92
- bl FUN_02020C2C
+ bl ErrorHandling
_02002C92:
ldr r0, _02002CBC ; =0x02106FC8
lsl r4, r4, #0x2
@@ -4163,7 +4163,7 @@ _02002C92:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002CA6
- bl FUN_02020C2C
+ bl ErrorHandling
_02002CA6:
ldr r0, _02002CBC ; =0x02106FC8
mov r1, #0x0
@@ -4183,7 +4183,7 @@ FUN_02002CC0: ; 0x02002CC0
add r4, r0, #0x0
cmp r4, #0x4
blt _02002CCC
- bl FUN_02020C2C
+ bl ErrorHandling
_02002CCC:
ldr r0, _02002CF4 ; =0x02106FC8
lsl r4, r4, #0x2
@@ -4193,7 +4193,7 @@ _02002CCC:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002CE0
- bl FUN_02020C2C
+ bl ErrorHandling
_02002CE0:
ldr r0, _02002CF4 ; =0x02106FC8
mov r1, #0x1
@@ -4213,7 +4213,7 @@ FUN_02002CF8: ; 0x02002CF8
add r4, r0, #0x0
cmp r4, #0x4
blt _02002D04
- bl FUN_02020C2C
+ bl ErrorHandling
_02002D04:
ldr r0, _02002D8C ; =0x02106FC8
lsl r6, r4, #0x2
@@ -4345,7 +4345,7 @@ FUN_02002DE0: ; 0x02002DE0
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002DFA
- bl FUN_02020C2C
+ bl ErrorHandling
_02002DFA:
ldr r0, _02002E10 ; =0x02106FC8
add r1, r5, #0x0
@@ -4372,7 +4372,7 @@ FUN_02002E14: ; 0x02002E14
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002E2E
- bl FUN_02020C2C
+ bl ErrorHandling
_02002E2E:
add r0, r5, #0x0
bl FUN_02021F2C
@@ -4505,7 +4505,7 @@ FUN_02002F08: ; 0x02002F08
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002F22
- bl FUN_02020C2C
+ bl ErrorHandling
_02002F22:
add r0, r5, #0x0
bl FUN_02021F2C
@@ -4590,7 +4590,7 @@ FUN_02002F9C: ; 0x02002F9C
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02002FB4
- bl FUN_02020C2C
+ bl ErrorHandling
_02002FB4:
add r0, r5, #0x0
bl FUN_02021F2C
@@ -4615,7 +4615,7 @@ FUN_02002FD0: ; 0x02002FD0
mov r1, #0x0
lsl r2, r2, #0x4
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
pop {r4, pc}
.balign 4
@@ -4625,7 +4625,7 @@ FUN_02002FEC: ; 0x02002FEC
ldr r3, _02002FF0 ; =FUN_02016A18
bx r3
.balign 4
-_02002FF0: .word FUN_02016A18 + 1
+_02002FF0: .word FUN_02016A18
thumb_func_start FUN_02002FF4
FUN_02002FF4: ; 0x02002FF4
@@ -4694,13 +4694,13 @@ FUN_02003054: ; 0x02003054
lsl r4, r3, #0x1
add r1, r1, r4
add r2, r7, #0x0
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
add r1, r5, r6
ldr r1, [r1, #0x4]
ldr r0, [sp, #0x0]
add r1, r1, r4
add r2, r7, #0x0
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
pop {r3-r7, pc}
.balign 4
@@ -4716,7 +4716,7 @@ FUN_02003084: ; 0x02003084
bl FUN_02006C08
add r6, r0, #0x0
bne _0200309E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200309E:
cmp r4, #0x0
bne _020030A6
@@ -4734,7 +4734,7 @@ _020030A6:
add r0, r4, r0
cmp r0, r1
bls _020030C0
- bl FUN_02020C2C
+ bl ErrorHandling
_020030C0:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
@@ -4788,7 +4788,7 @@ FUN_02003108: ; 0x02003108
add r0, r7, r0
cmp r0, r1
bls _02003126
- bl FUN_02020C2C
+ bl ErrorHandling
_02003126:
cmp r4, #0x3
bhi _0200315E
@@ -4820,7 +4820,7 @@ _02003156:
add r1, r0, #0x0
b _02003164
_0200315E:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_02003164:
lsl r0, r7, #0x10
@@ -4845,7 +4845,7 @@ FUN_0200317C: ; 0x0200317C
bl FUN_02006C08
add r4, r0, #0x0
bne _02003192
- bl FUN_02020C2C
+ bl ErrorHandling
_02003192:
cmp r5, #0x0
bne _0200319A
@@ -4860,7 +4860,7 @@ _0200319A:
lsl r0, r0, #0x1
add r0, r1, r0
ldr r1, [sp, #0x14]
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
add r0, r4, #0x0
bl FUN_02016A18
pop {r3-r5, pc}
@@ -4888,7 +4888,7 @@ FUN_020031B8: ; 0x020031B8
ldr r1, [r5, r6]
add r0, r0, r4
add r1, r1, r7
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
ldr r0, [sp, #0x4]
add r1, r5, r6
ldr r0, [r5, r0]
@@ -4896,7 +4896,7 @@ FUN_020031B8: ; 0x020031B8
ldr r2, [sp, #0x0]
add r0, r0, r4
add r1, r1, r7
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
add sp, #0x8
pop {r3-r7, pc}
.balign 4
@@ -5044,7 +5044,7 @@ _02003300:
bx r3
.balign 4
_0200330C: .word 0xFFFF0003
-_02003310: .word FUN_02003464 + 1
+_02003310: .word FUN_02003464
thumb_func_start FUN_02003314
FUN_02003314: ; 0x02003314
@@ -5643,7 +5643,7 @@ _02003750:
_02003770:
ldr r0, [r4, #0x4]
ldr r1, [r4, #0x8]
- blx FUN_020CC15C
+ blx DC_FlushRange
cmp r5, #0xd
bls _0200377E
_0200377C:
@@ -5859,7 +5859,7 @@ FUN_02003914: ; 0x02003914
ldr r0, [r0, #0x8]
cmp r1, r0
bls _0200393A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200393A:
sub r0, r7, #0x1
cmp r0, #0x1
@@ -5871,7 +5871,7 @@ _0200393A:
ldr r0, [sp, #0x0]
sub r2, r2, r5
lsl r2, r2, #0x1
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
_02003952:
cmp r7, #0x0
beq _0200395A
@@ -5886,7 +5886,7 @@ _0200395A:
ldr r0, [sp, #0x0]
sub r2, r2, r5
lsl r2, r2, #0x1
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
_0200396E:
add sp, #0x8
pop {r3-r7, pc}
@@ -5977,7 +5977,7 @@ FUN_020039E8: ; 0x020039E8
_02003A0A:
cmp r0, #0x0
bne _02003A12
- bl FUN_02020C2C
+ bl ErrorHandling
_02003A12:
add r3, sp, #0x10
ldrh r0, [r3, #0x14]
@@ -6051,7 +6051,7 @@ FUN_02003A64: ; 0x02003A64
_02003A8E:
cmp r0, #0x0
bne _02003A96
- bl FUN_02020C2C
+ bl ErrorHandling
_02003A96:
cmp r5, #0x0
beq _02003AC0
@@ -6160,7 +6160,7 @@ FUN_02003B40: ; 0x02003B40
bl FUN_02006C08
add r4, r0, #0x0
bne _02003B58
- bl FUN_02020C2C
+ bl ErrorHandling
_02003B58:
ldr r0, [sp, #0x1c]
cmp r0, #0x0
@@ -6604,7 +6604,7 @@ _02003E8C:
add r0, r0, r1
pop {r4, pc}
_02003E92:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4, pc}
nop
@@ -6662,7 +6662,7 @@ FUN_02003F3C: ; 0x02003F3C
mvn r0, r0
cmp r4, r0
bne _02003F5A
- bl FUN_02020C2C
+ bl ErrorHandling
_02003F5A:
cmp r5, #0x0
beq _02003F60
@@ -6757,7 +6757,7 @@ FUN_02003FF4: ; 0x02003FF4
add r4, r0, #0x0
cmp r5, #0x9
blt _02004008
- bl FUN_02020C2C
+ bl ErrorHandling
mov r5, #0x0
_02004008:
ldr r0, _02004014 ; =0x000BBC94
@@ -6813,7 +6813,7 @@ _02004056:
mov r0, #0x7
pop {r3, pc}
_0200405A:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x3
pop {r3, pc}
.balign 4
@@ -6875,7 +6875,7 @@ _020040C4: .word 0x000BCD20
thumb_func_start FUN_020040C8
FUN_020040C8: ; 0x020040C8
push {r3, lr}
- blx FUN_020D4A5C
+ blx MIC_Init
mov r0, #0x1
blx FUN_020D5168
mov r0, #0x2
@@ -7505,7 +7505,7 @@ FUN_02004568: ; 0x02004568
add r0, r5, #0x0
mov r1, #0x4
bl FUN_02003FA8
- bl FUN_02020C2C
+ bl ErrorHandling
b _0200459C
_02004594:
ldrh r0, [r4, #0x0]
@@ -7570,7 +7570,7 @@ _020045E4:
add r0, r7, #0x0
mov r1, #0x4
bl FUN_02003FA8
- bl FUN_02020C2C
+ bl ErrorHandling
b _02004638
_02004630:
ldrh r0, [r4, #0x0]
@@ -7707,7 +7707,7 @@ FUN_02004748: ; 0x02004748
bl FUN_02003D30
cmp r4, #0x7
blt _02004762
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1a
bl FUN_02003D38
ldr r0, [r0, #0x0]
@@ -7866,7 +7866,7 @@ _02004872:
bne _0200488A
add r0, r4, #0x0
mov r1, #0x5
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r0, r5, #0x0
bl FUN_0200483C
@@ -7903,7 +7903,7 @@ FUN_020048BC: ; 0x020048BC
push {r4, lr}
add r4, r0, #0x0
bpl _020048C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020048C6:
add r0, r4, #0x0
blx FUN_020C0F50
@@ -7957,22 +7957,22 @@ _0200490E:
thumb_func_start FUN_02004914
FUN_02004914: ; 0x02004914
- ldr r3, _02004918 ; =FUN_020D47CC
+ ldr r3, _02004918 ; =MIC_StartAutoSampling
bx r3
.balign 4
-_02004918: .word FUN_020D47CC
+_02004918: .word MIC_StartAutoSampling
thumb_func_start FUN_0200491C
FUN_0200491C: ; 0x0200491C
push {r3, lr}
bl FUN_02003D30
- blx FUN_020D4718
+ blx MIC_StopAutoSampling
pop {r3, pc}
thumb_func_start FUN_02004928
FUN_02004928: ; 0x02004928
push {r3, lr}
- blx FUN_020D4980
+ blx MIC_DoSamplingAsync
pop {r3, pc}
thumb_func_start FUN_02004930
@@ -7990,21 +7990,21 @@ FUN_02004930: ; 0x02004930
beq _02004954
cmp r5, #0xf
beq _02004954
- bl FUN_02020C2C
+ bl ErrorHandling
_02004954:
cmp r5, #0xe
bne _02004962
ldrb r0, [r6, #0x0]
cmp r0, #0x0
bne _02004962
- bl FUN_02020C2C
+ bl ErrorHandling
_02004962:
cmp r5, #0xf
bne _02004970
ldrb r0, [r4, #0x0]
cmp r0, #0x0
bne _02004970
- bl FUN_02020C2C
+ bl ErrorHandling
_02004970:
cmp r5, #0xe
bne _0200497C
@@ -8031,7 +8031,7 @@ FUN_02004984: ; 0x02004984
beq _020049A8
cmp r5, #0xf
beq _020049A8
- bl FUN_02020C2C
+ bl ErrorHandling
_020049A8:
cmp r5, #0xe
bne _020049D6
@@ -8053,7 +8053,7 @@ _020049CA:
strb r0, [r6, #0x0]
b _020049FE
_020049D0:
- bl FUN_02020C2C
+ bl ErrorHandling
b _020049FE
_020049D6:
ldrb r0, [r4, #0x0]
@@ -8074,7 +8074,7 @@ _020049F4:
strb r0, [r4, #0x0]
b _020049FE
_020049FA:
- bl FUN_02020C2C
+ bl ErrorHandling
_020049FE:
mov r0, #0x1
pop {r4-r6, pc}
@@ -8095,7 +8095,7 @@ FUN_02004A04: ; 0x02004A04
beq _02004A2A
cmp r5, #0xf
beq _02004A2A
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_02004A2A:
cmp r5, #0xe
@@ -8111,7 +8111,7 @@ _02004A2A:
strb r0, [r6, #0x0]
pop {r4-r6, pc}
_02004A46:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_02004A4C:
ldrb r0, [r4, #0x0]
@@ -8125,7 +8125,7 @@ _02004A4C:
strb r0, [r4, #0x0]
pop {r4-r6, pc}
_02004A64:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
.balign 4
@@ -8219,7 +8219,7 @@ FUN_02004AF8: ; 0x02004AF8
add r4, r0, #0x0
add r0, r5, #0x0
mov r1, #0x5
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
ldr r0, [r4, #0x0]
blx FUN_020C04DC
@@ -8248,13 +8248,13 @@ FUN_02004B30: ; 0x02004B30
beq _02004B54
cmp r5, #0xf
beq _02004B54
- bl FUN_02020C2C
+ bl ErrorHandling
_02004B54:
add r0, r6, #0x0
blx FUN_020C226C
add r7, r0, #0x0
bne _02004B68
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x30
mov r0, #0x0
pop {r3-r7, pc}
@@ -8265,7 +8265,7 @@ _02004B68:
blx FUN_020C217C
add r6, r0, #0x0
bne _02004B80
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x30
mov r0, #0x0
pop {r3-r7, pc}
@@ -8278,7 +8278,7 @@ _02004B80:
str r0, [r4, #0x0]
cmp r0, #0x0
bne _02004B9C
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x30
mov r0, #0x0
pop {r3-r7, pc}
@@ -8297,7 +8297,7 @@ _02004B9C:
mvn r1, r1
cmp r0, r1
bne _02004BC6
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x30
mov r0, #0x0
pop {r3-r7, pc}
@@ -8378,7 +8378,7 @@ FUN_02004C3C: ; 0x02004C3C
beq _02004C60
cmp r5, #0xf
beq _02004C60
- bl FUN_02020C2C
+ bl ErrorHandling
_02004C60:
add r0, r5, #0x0
bl FUN_02004AAC
@@ -8440,7 +8440,7 @@ FUN_02004CB4: ; 0x02004CB4
bl FUN_02003D38
mov r1, #0x0
mov r2, #0x1c
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x3
bl FUN_02003D38
add r4, r0, #0x0
@@ -8459,7 +8459,7 @@ FUN_02004CB4: ; 0x02004CB4
add sp, #0xc
pop {r3-r4, pc}
nop
-_02004CF4: .word FUN_02005068 + 1
+_02004CF4: .word FUN_02005068
_02004CF8: .word 0x000055F0
thumb_func_start FUN_02004CFC
@@ -8745,7 +8745,7 @@ _02004EF2:
blx FUN_020C226C
cmp r0, #0x0
bne _02004F02
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_02004F02:
@@ -8755,12 +8755,12 @@ _02004F02:
blx FUN_020C20DC
cmp r0, #0x0
bne _02004F18
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_02004F18:
mov r1, #0x0
- blx FUN_020CF768
+ blx SND_GetWaveDataAddress
str r0, [r4, #0x0]
pop {r3-r5, pc}
nop
@@ -8778,11 +8778,11 @@ FUN_02004F28: ; 0x02004F28
add r0, r6, #0x0
lsl r1, r1, #0x8
ldr r5, [r5, #0x8]
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r1, r0, #0x1
bpl _02004F50
mov r0, #0x20
- blx FUN_020EBC80
+ blx _s32_div_f
neg r0, r0
b _02004F5A
_02004F50:
@@ -9027,7 +9027,7 @@ _020050D8:
blt _020050D8
_020050E6:
add r1, r2, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [sp, #0x8]
strh r0, [r1, #0x0]
mov r0, #0x0
@@ -9044,7 +9044,7 @@ _020050FA:
cmp r2, r1
blt _020050FA
_02005108:
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [sp, #0x4]
sub r4, r4, #0x1
strh r0, [r1, #0x0]
@@ -9081,10 +9081,10 @@ _02005130:
_0200514A:
ldr r1, [sp, #0x0]
add r0, r5, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r1, [sp, #0x0]
add r0, r6, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
_0200515A:
add sp, #0x30
pop {r3-r7, pc}
@@ -9207,7 +9207,7 @@ _0200523E:
add r4, r0, #0x0
b _02005258
_02005250:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4-r6, pc}
_02005258:
@@ -9294,7 +9294,7 @@ FUN_02005308: ; 0x02005308
add r5, r1, #0x0
cmp r0, #0x4
beq _02005318
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_02005318:
@@ -9302,7 +9302,7 @@ _02005318:
bl FUN_020048D0
cmp r0, #0x7
beq _0200532A
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0200532A:
@@ -10232,7 +10232,7 @@ FUN_02005AE0: ; 0x02005AE0
bl FUN_02016998
add r4, r0, #0x0
bne _02005B04
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_02005B04:
mov r2, #0x0
@@ -10252,7 +10252,7 @@ _02005B04:
str r0, [r6, #0x0]
pop {r4-r6, pc}
nop
-_02005B28: .word FUN_02005B2C + 1
+_02005B28: .word FUN_02005B2C
thumb_func_start FUN_02005B2C
FUN_02005B2C: ; 0x02005B2C
@@ -10658,7 +10658,7 @@ FUN_02005E64: ; 0x02005E64
ldr r3, _02005E68 ; =FUN_0200491C
bx r3
.balign 4
-_02005E68: .word FUN_0200491C + 1
+_02005E68: .word FUN_0200491C
thumb_func_start FUN_02005E6C
FUN_02005E6C: ; 0x02005E6C
@@ -10784,14 +10784,14 @@ FUN_02005F3C: ; 0x02005F3C
ldr r0, [r4, #0x4]
cmp r0, #0x1
beq _02005F4A
- bl FUN_02020C2C
+ bl ErrorHandling
_02005F4A:
ldr r1, [r4, #0x0]
mov r0, #0x0
- blx FUN_020D2040
+ blx FS_UnloadOverlay
cmp r0, #0x1
beq _02005F5A
- bl FUN_02020C2C
+ bl ErrorHandling
_02005F5A:
mov r0, #0x0
str r0, [r4, #0x4]
@@ -10830,10 +10830,10 @@ FUN_02005F90: ; 0x02005F90
add r2, r0, #0x0
add r0, sp, #0x0
mov r1, #0x0
- blx FUN_020D24EC
+ blx FS_LoadOverlayInfo
cmp r0, #0x1
beq _02005FA6
- bl FUN_02020C2C
+ bl ErrorHandling
_02005FA6:
mov r0, #0x2
ldr r2, [sp, #0x4]
@@ -10904,7 +10904,7 @@ _02006018:
_02006020:
cmp r6, #0x8
blt _0200602C
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0200602C:
@@ -10913,7 +10913,7 @@ _0200602C:
bhi _0200603C
mov r0, #0x0
mvn r0, r0
- blx FUN_020D1D30
+ blx FS_SetDefaultDMA
str r0, [sp, #0x0]
_0200603C:
cmp r4, #0x0
@@ -10942,18 +10942,18 @@ _02006062:
add r4, r0, #0x0
b _02006076
_0200606E:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_02006076:
cmp r6, #0x1
bhi _02006080
ldr r0, [sp, #0x0]
- blx FUN_020D1D30
+ blx FS_SetDefaultDMA
_02006080:
cmp r4, #0x0
bne _0200608C
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0200608C:
@@ -11012,7 +11012,7 @@ _020060E8:
cmp r3, r0
blo _020060FC
_020060F2:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x10
mov r0, #0x0
pop {r3-r7, pc}
@@ -11058,10 +11058,10 @@ FUN_02006130: ; 0x02006130
add r0, sp, #0x0
mov r1, #0x0
add r2, r3, #0x0
- blx FUN_020D24EC
+ blx FS_LoadOverlayInfo
cmp r0, #0x0
bne _02006152
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x2c
mov r0, #0x0
pop {r4-r5, pc}
@@ -11080,10 +11080,10 @@ _02006152:
thumb_func_start FUN_02006168
FUN_02006168: ; 0x02006168
- ldr r3, _0200616C ; =FUN_020D2094
+ ldr r3, _0200616C ; =FS_LoadOverlay
bx r3
.balign 4
-_0200616C: .word FUN_020D2094
+_0200616C: .word FS_LoadOverlay
thumb_func_start FUN_02006170
FUN_02006170: ; 0x02006170
@@ -11093,7 +11093,7 @@ FUN_02006170: ; 0x02006170
add r2, r1, #0x0
add r0, sp, #0x0
add r1, r3, #0x0
- blx FUN_020D24EC
+ blx FS_LoadOverlayInfo
cmp r0, #0x0
bne _0200618A
add sp, #0x2c
@@ -11101,7 +11101,7 @@ FUN_02006170: ; 0x02006170
pop {pc}
_0200618A:
add r0, sp, #0x0
- blx FUN_020D23B4
+ blx FS_LoadOverlayImage
cmp r0, #0x0
bne _0200619A
add sp, #0x2c
@@ -11109,7 +11109,7 @@ _0200618A:
pop {pc}
_0200619A:
add r0, sp, #0x0
- blx FUN_020D2210
+ blx FS_StartOverlay
mov r0, #0x1
add sp, #0x2c
pop {pc}
@@ -11123,7 +11123,7 @@ FUN_020061A8: ; 0x020061A8
add r2, r1, #0x0
add r0, sp, #0x0
add r1, r3, #0x0
- blx FUN_020D24EC
+ blx FS_LoadOverlayInfo
cmp r0, #0x0
bne _020061C2
add sp, #0x74
@@ -11131,16 +11131,16 @@ FUN_020061A8: ; 0x020061A8
pop {pc}
_020061C2:
add r0, sp, #0x2c
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x0
add r1, sp, #0x2c
- blx FUN_020D2454
+ blx FS_LoadOverlayImageAsync
add r0, sp, #0x2c
- blx FUN_020D182C
+ blx FS_WaitAsync
add r0, sp, #0x2c
- blx FUN_020D18FC
+ blx FS_CloseFile
add r0, sp, #0x0
- blx FUN_020D2210
+ blx FS_StartOverlay
mov r0, #0x1
add sp, #0x74
pop {pc}
@@ -11216,7 +11216,7 @@ FUN_02006260: ; 0x02006260
ldr r3, _02006264 ; =FUN_02016A18
bx r3
.balign 4
-_02006264: .word FUN_02016A18 + 1
+_02006264: .word FUN_02016A18
thumb_func_start FUN_02006268
FUN_02006268: ; 0x02006268
@@ -11338,62 +11338,62 @@ FUN_02006314: ; 0x02006314
add r0, sp, #0x18
add r5, r2, #0x0
str r3, [sp, #0x4]
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x18
add r1, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
add r0, sp, #0x18
mov r1, #0xc
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r4, [sp, #0x14]
add r0, sp, #0x18
add r1, r4, #0x4
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
add r1, sp, #0x8
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x8
ldrh r0, [r0, #0x0]
cmp r0, r5
bgt _0200637A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200637A:
ldr r0, [sp, #0x14]
mov r2, #0x0
add r6, r4, r0
add r0, sp, #0x18
add r1, r6, #0x4
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r4, #0xc
lsl r1, r5, #0x3
add r0, sp, #0x18
add r1, r4, r1
mov r2, #0x0
ldr r7, [sp, #0x14]
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x10
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
add r1, sp, #0xc
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r2, r6, r7
ldr r1, [sp, #0x10]
add r2, #0x8
@@ -11402,7 +11402,7 @@ _0200637A:
add r0, sp, #0x18
add r1, r1, r2
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r0, [sp, #0x78]
cmp r0, #0x0
bne _020063D6
@@ -11413,14 +11413,14 @@ _020063D6:
str r0, [sp, #0x14]
cmp r0, #0x0
bne _020063E0
- bl FUN_02020C2C
+ bl ErrorHandling
_020063E0:
ldr r1, [sp, #0x0]
ldr r2, [sp, #0x14]
add r0, sp, #0x18
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
- blx FUN_020D18FC
+ blx FS_CloseFile
add sp, #0x60
pop {r3-r7, pc}
@@ -11439,62 +11439,62 @@ FUN_020063F4: ; 0x020063F4
add r0, sp, #0x18
str r2, [sp, #0x0]
str r3, [sp, #0x4]
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x18
add r1, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
add r0, sp, #0x18
mov r1, #0xc
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r4, [sp, #0x14]
add r0, sp, #0x18
add r1, r4, #0x4
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
add r1, sp, #0x8
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x8
ldrh r0, [r0, #0x0]
cmp r0, r5
bgt _0200645A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200645A:
ldr r0, [sp, #0x14]
mov r2, #0x0
add r6, r4, r0
add r0, sp, #0x18
add r1, r6, #0x4
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x14
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r4, #0xc
lsl r1, r5, #0x3
add r0, sp, #0x18
add r1, r4, r1
mov r2, #0x0
ldr r7, [sp, #0x14]
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x18
add r1, sp, #0x10
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
add r1, sp, #0xc
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r2, r6, r7
ldr r1, [sp, #0x10]
add r2, #0x8
@@ -11503,7 +11503,7 @@ _0200645A:
add r0, sp, #0x18
add r1, r1, r2
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r0, [sp, #0x78]
cmp r0, #0x0
bne _020064B6
@@ -11514,7 +11514,7 @@ _020064B6:
str r0, [sp, #0x14]
cmp r0, #0x0
bne _020064C0
- bl FUN_02020C2C
+ bl ErrorHandling
_020064C0:
ldr r0, [sp, #0x7c]
cmp r0, #0x0
@@ -11532,9 +11532,9 @@ _020064D8:
ldr r2, [sp, #0x14]
add r0, sp, #0x18
add r1, r4, #0x0
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x18
- blx FUN_020D18FC
+ blx FS_CloseFile
add r0, r4, #0x0
add sp, #0x60
pop {r3-r7, pc}
@@ -11649,77 +11649,77 @@ FUN_020065A4: ; 0x020065A4
add r0, sp, #0x0
strh r1, [r0, #0x0]
add r0, sp, #0x10
- blx FUN_020D1C94
+ blx FS_InitFile
ldr r1, _0200666C ; =0x021058A0
lsl r2, r4, #0x2
ldr r1, [r1, r2]
add r0, sp, #0x10
- blx FUN_020D1944
+ blx FS_OpenFile
add r0, sp, #0x10
mov r1, #0xc
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x10
add r1, sp, #0xc
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r4, [sp, #0xc]
add r0, sp, #0x10
add r1, r4, #0x4
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x10
add r1, sp, #0xc
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x10
add r1, sp, #0x0
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x0
ldrh r0, [r0, #0x0]
cmp r0, r5
bgt _0200660A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200660A:
ldr r0, [sp, #0xc]
mov r2, #0x0
add r6, r4, r0
add r0, sp, #0x10
add r1, r6, #0x4
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x10
add r1, sp, #0xc
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r4, #0xc
lsl r1, r5, #0x3
add r0, sp, #0x10
add r1, r4, r1
mov r2, #0x0
ldr r7, [sp, #0xc]
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x10
add r1, sp, #0x8
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x10
add r1, sp, #0x4
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r2, r6, r7
ldr r1, [sp, #0x8]
add r2, #0x8
add r1, r2, r1
add r0, sp, #0x10
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r1, [sp, #0x4]
ldr r0, [sp, #0x8]
sub r0, r1, r0
str r0, [sp, #0xc]
bne _02006664
- bl FUN_02020C2C
+ bl ErrorHandling
_02006664:
ldr r0, [sp, #0xc]
add sp, #0x58
@@ -11738,46 +11738,46 @@ FUN_02006670: ; 0x02006670
beq _020066EC
mov r1, #0x0
str r1, [r4, #0x48]
- blx FUN_020D1C94
+ blx FS_InitFile
ldr r1, _020066F0 ; =0x021058A0
lsl r2, r5, #0x2
ldr r1, [r1, r2]
add r0, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
add r0, r4, #0x0
mov r1, #0xc
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r1, r4, #0x0
add r0, r4, #0x0
add r1, #0x48
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r1, [r4, #0x48]
add r0, r4, #0x0
add r1, r1, #0x4
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r4, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r1, r4, #0x0
add r0, r4, #0x0
add r1, #0x50
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r1, [r4, #0x48]
ldr r0, [sp, #0x0]
mov r2, #0x0
add r5, r1, r0
add r0, r4, #0x0
add r1, r5, #0x4
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r4, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r0, [sp, #0x0]
add r0, r5, r0
str r0, [r4, #0x4c]
@@ -11791,7 +11791,7 @@ _020066F0: .word 0x021058A0
FUN_020066F4: ; 0x020066F4
push {r4, lr}
add r4, r0, #0x0
- blx FUN_020D18FC
+ blx FS_CloseFile
add r0, r4, #0x0
bl FUN_02016A18
pop {r4, pc}
@@ -11807,7 +11807,7 @@ FUN_02006704: ; 0x02006704
add r6, r2, #0x0
cmp r0, r4
bhi _0200671A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200671A:
ldr r2, [r5, #0x48]
lsl r1, r4, #0x3
@@ -11815,22 +11815,22 @@ _0200671A:
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r5, #0x0
add r1, sp, #0x4
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, r5, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r2, [r5, #0x4c]
ldr r1, [sp, #0x4]
add r2, #0x8
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r2, [sp, #0x0]
ldr r1, [sp, #0x4]
add r0, r6, #0x0
@@ -11843,7 +11843,7 @@ _0200671A:
add r0, r5, #0x0
add r1, r4, #0x0
sub r2, r3, r2
- blx FUN_020D180C
+ blx FS_ReadFile
_0200676C:
add r0, r4, #0x0
add sp, #0x8
@@ -11861,7 +11861,7 @@ FUN_02006774: ; 0x02006774
add r6, r2, #0x0
cmp r0, r4
bhi _0200678A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200678A:
ldr r2, [r5, #0x48]
lsl r1, r4, #0x3
@@ -11869,28 +11869,28 @@ _0200678A:
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r5, #0x0
add r1, sp, #0x4
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, r5, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r2, [r5, #0x4c]
ldr r1, [sp, #0x4]
add r2, #0x8
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r3, [sp, #0x0]
ldr r2, [sp, #0x4]
add r0, r5, #0x0
add r1, r6, #0x0
sub r2, r3, r2
- blx FUN_020D180C
+ blx FS_ReadFile
add sp, #0x8
pop {r4-r6, pc}
@@ -11904,7 +11904,7 @@ FUN_020067D0: ; 0x020067D0
add r4, r1, #0x0
cmp r0, r4
bhi _020067E4
- bl FUN_02020C2C
+ bl ErrorHandling
_020067E4:
ldr r2, [r5, #0x48]
lsl r1, r4, #0x3
@@ -11912,15 +11912,15 @@ _020067E4:
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r5, #0x0
add r1, sp, #0x4
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, r5, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r1, [sp, #0x0]
ldr r0, [sp, #0x4]
sub r0, r1, r0
@@ -11939,7 +11939,7 @@ FUN_02006814: ; 0x02006814
add r7, r3, #0x0
cmp r0, r4
bhi _0200682A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200682A:
ldr r2, [r5, #0x48]
lsl r1, r4, #0x3
@@ -11947,11 +11947,11 @@ _0200682A:
add r1, r2, r1
add r0, r5, #0x0
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, r5, #0x0
add r1, sp, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldr r2, [r5, #0x4c]
ldr r1, [sp, #0x0]
add r2, #0x8
@@ -11959,11 +11959,11 @@ _0200682A:
add r0, r5, #0x0
add r1, r6, r1
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
ldr r1, [sp, #0x18]
add r0, r5, #0x0
add r2, r7, #0x0
- blx FUN_020D180C
+ blx FS_ReadFile
pop {r3-r7, pc}
.balign 4
@@ -12124,7 +12124,7 @@ _02006982:
ldr r0, [sp, #0x8]
add r1, r5, #0x0
ldr r0, [r0, #0xc]
- blx FUN_020CC15C
+ blx DC_FlushRange
cmp r4, #0x7
bhi _02006A14
add r0, r4, r4
@@ -12234,7 +12234,7 @@ _02006A60:
ldr r0, [sp, #0x4]
add r1, r4, #0x0
ldr r0, [r0, #0x14]
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [sp, #0x4]
ldr r3, _02006A88 ; =0x020ECBA0
lsl r5, r5, #0x2
@@ -12581,7 +12581,7 @@ _02006CFC:
beq _02006D10
add r0, r4, #0x0
add r1, r5, #0x0
- blx FUN_020CE528
+ blx MI_UncompressLZ8
add r0, r4, #0x0
bl FUN_02016A18
_02006D10:
@@ -12647,7 +12647,7 @@ _02006D7C:
beq _02006D90
add r0, r4, #0x0
add r1, r5, #0x0
- blx FUN_020CE528
+ blx MI_UncompressLZ8
add r0, r4, #0x0
bl FUN_02016A18
_02006D90:
@@ -12700,7 +12700,7 @@ FUN_02006D98: ; 0x02006D98
ldr r1, [r4, r1]
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r5, #0x0
mov r1, #0xc0
bl FUN_02016998
@@ -12710,7 +12710,7 @@ FUN_02006D98: ; 0x02006D98
ldr r1, [r4, r1]
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r6, #0x0
add r5, r4, #0x0
add r7, r6, #0x0
@@ -12718,7 +12718,7 @@ _02006E12:
add r0, r7, #0x0
add r1, r5, #0x0
mov r2, #0x98
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r6, r6, #0x1
add r5, #0x98
cmp r6, #0x4
@@ -12759,7 +12759,7 @@ _02006E12:
ldrb r1, [r1, #0x0]
ldr r0, [r4, r0]
lsl r2, r2, #0xe
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
mov r7, #0xab
ldr r6, _02006ECC ; =0x00005050
@@ -13410,14 +13410,14 @@ _0200734A:
thumb_func_start FUN_0200737C
FUN_0200737C: ; 0x0200737C
add r2, r0, #0x0
- ldr r3, _0200738C ; =FUN_020CE3E0
+ ldr r3, _0200738C ; =MI_CpuCopy8
add r2, #0x84
add r0, r1, #0x0
add r1, r2, #0x0
mov r2, #0x14
bx r3
nop
-_0200738C: .word FUN_020CE3E0
+_0200738C: .word MI_CpuCopy8
thumb_func_start FUN_02007390
FUN_02007390: ; 0x02007390
@@ -13452,7 +13452,7 @@ _020073AE:
_020073BE:
cmp r4, #0x4
bne _020073C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020073C6:
ldr r0, [sp, #0x30]
ldr r3, [sp, #0x14]
@@ -13487,13 +13487,13 @@ FUN_020073E8: ; 0x020073E8
str r3, [sp, #0x4]
lsr r0, r0, #0x1f
beq _02007408
- bl FUN_02020C2C
+ bl ErrorHandling
_02007408:
add r5, r4, r6
mov r0, #0x0
add r1, r5, #0x0
mov r2, #0x98
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r1, [r4, r6]
mov r0, #0x1
bic r1, r0
@@ -13622,7 +13622,7 @@ _02007408:
add r1, r4, r6
add r1, #0x84
mov r2, #0x14
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_02007518:
add r0, r4, r6
add sp, #0xc
@@ -14326,7 +14326,7 @@ _020079CC:
lsr r0, r0, #0x1e
pop {r3, pc}
_020079D6:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -15540,7 +15540,7 @@ FUN_02008268: ; 0x02008268
push {r4, lr}
add r4, r0, #0x0
bne _02008272
- bl FUN_02020C2C
+ bl ErrorHandling
_02008272:
ldr r0, [r4, #0x0]
lsl r0, r0, #0x1f
@@ -16659,33 +16659,33 @@ FUN_02008AA4: ; 0x02008AA4
str r4, [sp, #0xc]
cmp r0, #0x0
bne _02008AC2
- bl FUN_02020C2C
+ bl ErrorHandling
_02008AC2:
ldr r0, [sp, #0x48]
cmp r0, #0x0
bne _02008ACC
- bl FUN_02020C2C
+ bl ErrorHandling
_02008ACC:
ldr r0, [sp, #0x50]
cmp r0, #0x0
bne _02008AD6
- bl FUN_02020C2C
+ bl ErrorHandling
_02008AD6:
ldr r0, [sp, #0x4c]
cmp r0, #0x0
bne _02008AE0
- bl FUN_02020C2C
+ bl ErrorHandling
_02008AE0:
cmp r5, #0x0
bne _02008AE8
- bl FUN_02020C2C
+ bl ErrorHandling
_02008AE8:
ldr r0, [sp, #0x44]
add r1, r6, #0x0
bl FUN_020094F0
add r7, r0, #0x0
bne _02008AF8
- bl FUN_02020C2C
+ bl ErrorHandling
_02008AF8:
ldr r0, [sp, #0x48]
ldr r1, [sp, #0x0]
@@ -16693,7 +16693,7 @@ _02008AF8:
str r0, [sp, #0x14]
cmp r0, #0x0
bne _02008B0A
- bl FUN_02020C2C
+ bl ErrorHandling
_02008B0A:
ldr r0, [sp, #0x4c]
ldr r1, [sp, #0x4]
@@ -16701,7 +16701,7 @@ _02008B0A:
str r0, [sp, #0x10]
cmp r0, #0x0
bne _02008B1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02008B1C:
ldr r0, [sp, #0x50]
cmp r0, #0x0
@@ -16715,7 +16715,7 @@ _02008B1C:
str r0, [sp, #0xc]
cmp r0, #0x0
bne _02008B3A
- bl FUN_02020C2C
+ bl ErrorHandling
_02008B3A:
ldr r0, [sp, #0x54]
cmp r0, #0x0
@@ -16745,7 +16745,7 @@ _02008B62:
bl FUN_02009C80
add r6, r0, #0x0
bne _02008B78
- bl FUN_02020C2C
+ bl ErrorHandling
_02008B78:
add r0, r7, #0x0
bl FUN_02009544
@@ -16756,7 +16756,7 @@ _02008B82:
bl FUN_02009C5C
add r6, r0, #0x0
bne _02008B90
- bl FUN_02020C2C
+ bl ErrorHandling
_02008B90:
mov r0, #0x0
str r0, [r5, #0x4]
@@ -16888,7 +16888,7 @@ FUN_02008C80: ; 0x02008C80
push {r4, lr}
add r4, r0, #0x0
bne _02008C8A
- bl FUN_02020C2C
+ bl ErrorHandling
_02008C8A:
ldr r0, [r4, #0x0]
cmp r0, #0x0
@@ -17050,7 +17050,7 @@ _02008DB6:
bl FUN_0201D194
pop {r4, pc}
_02008DC4:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
nop
_02008DCC: .word 0x00100010
@@ -17104,17 +17104,17 @@ FUN_02008E2C: ; 0x02008E2C
push {r4, lr}
add r4, r0, #0x0
bne _02008E36
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E36:
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02008E40
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E40:
ldr r0, [r4, #0x4]
cmp r0, #0x0
bne _02008E4A
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E4A:
add r0, r4, #0x0
bl FUN_020094C4
@@ -17140,29 +17140,29 @@ FUN_02008E6C: ; 0x02008E6C
add r7, r3, #0x0
cmp r5, #0x0
bne _02008E80
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E80:
cmp r4, #0x0
bne _02008E88
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E88:
ldr r0, [r4, #0x4]
cmp r0, r6
bgt _02008E92
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E92:
ldr r1, [r5, #0x10]
ldr r0, [r4, #0x8]
cmp r1, r0
beq _02008E9E
- bl FUN_02020C2C
+ bl ErrorHandling
_02008E9E:
add r0, r5, #0x0
bl FUN_020097D0
str r0, [sp, #0x1c]
cmp r0, #0x0
bne _02008EAE
- bl FUN_02020C2C
+ bl ErrorHandling
_02008EAE:
ldrb r0, [r4, #0xc]
cmp r0, #0x0
@@ -17177,7 +17177,7 @@ _02008EAE:
bl FUN_0200945C
cmp r0, #0x1
beq _02008ECE
- bl FUN_02020C2C
+ bl ErrorHandling
_02008ECE:
ldr r0, [r6, #0x44]
ldr r1, [sp, #0x1c]
@@ -17202,7 +17202,7 @@ _02008EEA:
bl FUN_0200945C
cmp r0, #0x1
beq _02008F02
- bl FUN_02020C2C
+ bl ErrorHandling
_02008F02:
ldr r0, [r6, #0x8]
ldr r1, [sp, #0x1c]
@@ -17240,18 +17240,18 @@ FUN_02008F34: ; 0x02008F34
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _02008F48
- bl FUN_02020C2C
+ bl ErrorHandling
_02008F48:
ldr r0, [r5, #0x10]
cmp r0, #0x0
beq _02008F52
- bl FUN_02020C2C
+ bl ErrorHandling
_02008F52:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02008F60
- bl FUN_02020C2C
+ bl ErrorHandling
_02008F60:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17287,18 +17287,18 @@ FUN_02008F90: ; 0x02008F90
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _02008FA4
- bl FUN_02020C2C
+ bl ErrorHandling
_02008FA4:
ldr r0, [r5, #0x10]
cmp r0, #0x0
beq _02008FAE
- bl FUN_02020C2C
+ bl ErrorHandling
_02008FAE:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02008FBC
- bl FUN_02020C2C
+ bl ErrorHandling
_02008FBC:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17334,18 +17334,18 @@ FUN_02008FEC: ; 0x02008FEC
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _02009000
- bl FUN_02020C2C
+ bl ErrorHandling
_02009000:
ldr r0, [r5, #0x10]
cmp r0, #0x1
beq _0200900A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200900A:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02009018
- bl FUN_02020C2C
+ bl ErrorHandling
_02009018:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17383,18 +17383,18 @@ FUN_0200904C: ; 0x0200904C
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _02009060
- bl FUN_02020C2C
+ bl ErrorHandling
_02009060:
ldr r0, [r5, #0x10]
cmp r0, #0x1
beq _0200906A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200906A:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02009078
- bl FUN_02020C2C
+ bl ErrorHandling
_02009078:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17432,13 +17432,13 @@ FUN_020090AC: ; 0x020090AC
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _020090C0
- bl FUN_02020C2C
+ bl ErrorHandling
_020090C0:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _020090CE
- bl FUN_02020C2C
+ bl ErrorHandling
_020090CE:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17473,21 +17473,21 @@ FUN_020090FC: ; 0x020090FC
str r3, [sp, #0x20]
cmp r5, #0x0
bne _02009110
- bl FUN_02020C2C
+ bl ErrorHandling
_02009110:
ldr r0, [r5, #0x10]
cmp r0, #0x0
beq _0200911A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200911A:
cmp r4, #0x0
bne _02009122
- bl FUN_02020C2C
+ bl ErrorHandling
_02009122:
ldr r0, [r4, #0x4]
cmp r0, #0x0
beq _0200912C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200912C:
add r0, r4, #0x0
bl FUN_02009530
@@ -17526,21 +17526,21 @@ FUN_02009168: ; 0x02009168
str r3, [sp, #0x20]
cmp r5, #0x0
bne _0200917C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200917C:
ldr r0, [r5, #0x10]
cmp r0, #0x1
beq _02009186
- bl FUN_02020C2C
+ bl ErrorHandling
_02009186:
cmp r4, #0x0
bne _0200918E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200918E:
ldr r0, [r4, #0x4]
cmp r0, #0x1
beq _02009198
- bl FUN_02020C2C
+ bl ErrorHandling
_02009198:
add r0, r4, #0x0
bl FUN_02009530
@@ -17584,18 +17584,18 @@ FUN_020091E0: ; 0x020091E0
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _020091F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020091F4:
ldr r0, [r5, #0x10]
cmp r0, #0x0
beq _020091FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020091FE:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _0200920C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200920C:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17631,18 +17631,18 @@ FUN_0200923C: ; 0x0200923C
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _02009250
- bl FUN_02020C2C
+ bl ErrorHandling
_02009250:
ldr r0, [r5, #0x10]
cmp r0, #0x0
beq _0200925A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200925A:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02009268
- bl FUN_02020C2C
+ bl ErrorHandling
_02009268:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17678,18 +17678,18 @@ FUN_02009298: ; 0x02009298
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _020092AC
- bl FUN_02020C2C
+ bl ErrorHandling
_020092AC:
ldr r0, [r5, #0x10]
cmp r0, #0x1
beq _020092B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020092B6:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _020092C4
- bl FUN_02020C2C
+ bl ErrorHandling
_020092C4:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17727,18 +17727,18 @@ FUN_020092F8: ; 0x020092F8
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _0200930C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200930C:
ldr r0, [r5, #0x10]
cmp r0, #0x1
beq _02009316
- bl FUN_02020C2C
+ bl ErrorHandling
_02009316:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _02009324
- bl FUN_02020C2C
+ bl ErrorHandling
_02009324:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17776,13 +17776,13 @@ FUN_02009358: ; 0x02009358
str r2, [sp, #0x1c]
cmp r5, #0x0
bne _0200936C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200936C:
add r0, r5, #0x0
bl FUN_020097D0
add r6, r0, #0x0
bne _0200937A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200937A:
ldr r0, [sp, #0x38]
str r4, [sp, #0x0]
@@ -17817,11 +17817,11 @@ FUN_020093A8: ; 0x020093A8
add r7, r3, #0x0
cmp r5, #0x0
bne _020093BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020093BC:
cmp r4, #0x0
bne _020093C4
- bl FUN_02020C2C
+ bl ErrorHandling
_020093C4:
str r6, [sp, #0x0]
str r7, [sp, #0x4]
@@ -17913,7 +17913,7 @@ FUN_0200945C: ; 0x0200945C
add r4, r1, #0x0
cmp r5, #0x0
bne _0200946A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200946A:
ldr r0, [r5, #0x0]
add r1, r4, #0x0
@@ -17925,7 +17925,7 @@ FUN_02009474: ; 0x02009474
push {r4, lr}
add r4, r0, #0x0
bne _0200947E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200947E:
add r0, r4, #0x0
bl FUN_02009920
@@ -17942,12 +17942,12 @@ FUN_02009490: ; 0x02009490
add r4, r1, #0x0
cmp r5, #0x0
bne _0200949E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200949E:
ldr r0, [r5, #0x4]
cmp r0, #0x0
bne _020094A8
- bl FUN_02020C2C
+ bl ErrorHandling
_020094A8:
add r0, r4, #0x0
bl FUN_02009920
@@ -17996,7 +17996,7 @@ FUN_020094F0: ; 0x020094F0
add r7, r1, #0x0
cmp r5, #0x0
bne _020094FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020094FE:
ldr r0, [r5, #0x8]
mov r6, #0x0
@@ -18031,7 +18031,7 @@ FUN_02009530: ; 0x02009530
push {r4, lr}
add r4, r0, #0x0
bne _0200953A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200953A:
ldr r0, [r4, #0x0]
bl FUN_02020E38
@@ -18045,7 +18045,7 @@ FUN_02009544: ; 0x02009544
ldr r0, [r4, #0x4]
cmp r0, #0x0
beq _02009552
- bl FUN_02020C2C
+ bl ErrorHandling
_02009552:
add r0, r4, #0x0
bl FUN_02009934
@@ -18059,7 +18059,7 @@ FUN_0200955C: ; 0x0200955C
ldr r0, [r4, #0x4]
cmp r0, #0x1
beq _0200956A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200956A:
add r0, r4, #0x0
bl FUN_02009934
@@ -18073,7 +18073,7 @@ FUN_02009574: ; 0x02009574
ldr r0, [r4, #0x4]
cmp r0, #0x2
beq _02009582
- bl FUN_02020C2C
+ bl ErrorHandling
_02009582:
add r0, r4, #0x0
bl FUN_02009934
@@ -18087,7 +18087,7 @@ FUN_0200958C: ; 0x0200958C
ldr r0, [r4, #0x4]
cmp r0, #0x3
beq _0200959A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200959A:
add r0, r4, #0x0
bl FUN_02009934
@@ -18101,7 +18101,7 @@ FUN_020095A4: ; 0x020095A4
ldr r0, [r4, #0x4]
cmp r0, #0x4
beq _020095B2
- bl FUN_02020C2C
+ bl ErrorHandling
_020095B2:
add r0, r4, #0x0
bl FUN_02009934
@@ -18115,7 +18115,7 @@ FUN_020095BC: ; 0x020095BC
ldr r0, [r4, #0x4]
cmp r0, #0x5
beq _020095CA
- bl FUN_02020C2C
+ bl ErrorHandling
_020095CA:
add r0, r4, #0x0
bl FUN_02009934
@@ -18127,7 +18127,7 @@ FUN_020095D4: ; 0x020095D4
push {r4, lr}
add r4, r0, #0x0
bne _020095DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020095DE:
ldr r0, [r4, #0x4]
pop {r4, pc}
@@ -18138,7 +18138,7 @@ FUN_020095E4: ; 0x020095E4
push {r4, lr}
add r4, r0, #0x0
bne _020095EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020095EE:
ldr r0, [r4, #0x4]
cmp r0, #0x0
@@ -18163,7 +18163,7 @@ FUN_02009610: ; 0x02009610
push {r4, lr}
add r4, r0, #0x0
bne _0200961A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200961A:
ldr r0, [r4, #0x4]
cmp r0, #0x1
@@ -18184,7 +18184,7 @@ FUN_02009630: ; 0x02009630
add r4, r1, #0x0
cmp r5, #0x0
bne _0200963E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200963E:
ldr r0, [r5, #0x4]
cmp r0, #0x0
@@ -18222,7 +18222,7 @@ FUN_02009668: ; 0x02009668
add r6, r2, #0x0
cmp r4, #0x0
bne _02009678
- bl FUN_02020C2C
+ bl ErrorHandling
_02009678:
ldr r0, [r5, #0x0]
str r0, [r4, #0x8]
@@ -18275,7 +18275,7 @@ FUN_020096CC: ; 0x020096CC
push {r4, lr}
add r4, r0, #0x0
bne _020096D6
- bl FUN_02020C2C
+ bl ErrorHandling
_020096D6:
ldr r0, [r4, #0x4]
pop {r4, pc}
@@ -18288,12 +18288,12 @@ FUN_020096DC: ; 0x020096DC
add r4, r1, #0x0
cmp r5, #0x0
bne _020096EA
- bl FUN_02020C2C
+ bl ErrorHandling
_020096EA:
ldr r0, [r5, #0x4]
cmp r0, r4
bgt _020096F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020096F4:
ldrb r0, [r5, #0xc]
ldr r1, [r5, #0x0]
@@ -18318,12 +18318,12 @@ FUN_02009710: ; 0x02009710
add r4, r1, #0x0
cmp r5, #0x0
bne _0200971E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200971E:
ldr r0, [r5, #0x4]
cmp r0, r4
bgt _02009728
- bl FUN_02020C2C
+ bl ErrorHandling
_02009728:
ldrb r0, [r5, #0xc]
cmp r0, #0x1
@@ -18344,12 +18344,12 @@ FUN_0200973C: ; 0x0200973C
add r4, r1, #0x0
cmp r5, #0x0
bne _0200974A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200974A:
ldr r0, [r5, #0x4]
cmp r0, r4
bgt _02009754
- bl FUN_02020C2C
+ bl ErrorHandling
_02009754:
ldrb r0, [r5, #0xc]
cmp r0, #0x1
@@ -18370,12 +18370,12 @@ FUN_02009768: ; 0x02009768
add r4, r1, #0x0
cmp r5, #0x0
bne _02009776
- bl FUN_02020C2C
+ bl ErrorHandling
_02009776:
ldr r0, [r5, #0x4]
cmp r0, r4
bgt _02009780
- bl FUN_02020C2C
+ bl ErrorHandling
_02009780:
ldrb r0, [r5, #0xc]
ldr r1, [r5, #0x0]
@@ -18400,12 +18400,12 @@ FUN_0200979C: ; 0x0200979C
add r4, r1, #0x0
cmp r5, #0x0
bne _020097AA
- bl FUN_02020C2C
+ bl ErrorHandling
_020097AA:
ldr r0, [r5, #0x4]
cmp r0, r4
bgt _020097B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020097B4:
ldrb r0, [r5, #0xc]
ldr r1, [r5, #0x0]
@@ -18625,12 +18625,12 @@ FUN_02009934: ; 0x02009934
push {r4, lr}
add r4, r0, #0x0
bne _0200993E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200993E:
ldr r0, [r4, #0x8]
cmp r0, #0x0
bne _02009948
- bl FUN_02020C2C
+ bl ErrorHandling
_02009948:
ldr r0, [r4, #0x8]
pop {r4, pc}
@@ -18763,7 +18763,7 @@ _02009A34:
beq _02009A48
add r0, r4, #0x0
add r1, r5, #0x0
- blx FUN_020CE528
+ blx MI_UncompressLZ8
add r0, r4, #0x0
bl FUN_02016A18
_02009A48:
@@ -18779,13 +18779,13 @@ FUN_02009A50: ; 0x02009A50
sub sp, #0x10
add r4, r0, #0x0
bne _02009A5C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009A5C:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009A6A
- bl FUN_02020C2C
+ bl ErrorHandling
_02009A6A:
add r0, r4, #0x0
bl FUN_02009544
@@ -18808,7 +18808,7 @@ FUN_02009A90: ; 0x02009A90
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009A9A
- bl FUN_02020C2C
+ bl ErrorHandling
_02009A9A:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -18823,7 +18823,7 @@ _02009AA4:
bl FUN_02009A50
cmp r0, #0x0
bne _02009AB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02009AB8:
ldr r0, [r5, #0x4]
add r6, r6, #0x1
@@ -18839,13 +18839,13 @@ FUN_02009AC4: ; 0x02009AC4
sub sp, #0x10
add r4, r0, #0x0
bne _02009AD0
- bl FUN_02020C2C
+ bl ErrorHandling
_02009AD0:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009ADE
- bl FUN_02020C2C
+ bl ErrorHandling
_02009ADE:
add r0, r4, #0x0
bl FUN_02009544
@@ -18869,13 +18869,13 @@ FUN_02009B04: ; 0x02009B04
sub sp, #0x10
add r4, r0, #0x0
bne _02009B10
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B10:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009B1E
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B1E:
add r0, r4, #0x0
bl FUN_02009544
@@ -18898,7 +18898,7 @@ FUN_02009B44: ; 0x02009B44
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009B4E
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B4E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -18913,7 +18913,7 @@ _02009B58:
bl FUN_02009B04
cmp r0, #0x0
bne _02009B6C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B6C:
ldr r0, [r5, #0x4]
add r6, r6, #0x1
@@ -18929,13 +18929,13 @@ FUN_02009B78: ; 0x02009B78
sub sp, #0x10
add r4, r0, #0x0
bne _02009B84
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B84:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009B92
- bl FUN_02020C2C
+ bl ErrorHandling
_02009B92:
add r0, r4, #0x0
bl FUN_02009544
@@ -18960,11 +18960,11 @@ FUN_02009BB8: ; 0x02009BB8
add r5, r1, #0x0
cmp r4, #0x0
bne _02009BC6
- bl FUN_02020C2C
+ bl ErrorHandling
_02009BC6:
cmp r5, #0x0
bne _02009BCE
- bl FUN_02020C2C
+ bl ErrorHandling
_02009BCE:
add r0, r4, #0x0
bl FUN_02009530
@@ -18982,7 +18982,7 @@ FUN_02009BE8: ; 0x02009BE8
push {r3-r5, lr}
add r5, r0, #0x0
bne _02009BF2
- bl FUN_02020C2C
+ bl ErrorHandling
_02009BF2:
add r0, r5, #0x0
bl FUN_02009530
@@ -19000,13 +19000,13 @@ FUN_02009C0C: ; 0x02009C0C
push {r4, lr}
add r4, r0, #0x0
bne _02009C16
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C16:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009C24
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C24:
add r0, r4, #0x0
bl FUN_02009530
@@ -19018,7 +19018,7 @@ FUN_02009C30: ; 0x02009C30
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009C3A
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C3A:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -19045,13 +19045,13 @@ FUN_02009C5C: ; 0x02009C5C
push {r4, lr}
add r4, r0, #0x0
bne _02009C66
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C66:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009C74
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C74:
add r0, r4, #0x0
bl FUN_02009530
@@ -19065,23 +19065,23 @@ FUN_02009C80: ; 0x02009C80
add r5, r1, #0x0
cmp r4, #0x0
bne _02009C8E
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C8E:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x0
beq _02009C9C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009C9C:
cmp r5, #0x0
bne _02009CA4
- bl FUN_02020C2C
+ bl ErrorHandling
_02009CA4:
add r0, r5, #0x0
bl FUN_020095D4
cmp r0, #0x2
beq _02009CB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02009CB2:
add r0, r4, #0x0
bl FUN_02009530
@@ -19106,7 +19106,7 @@ FUN_02009CDC: ; 0x02009CDC
push {r4, lr}
add r4, r0, #0x0
bne _02009CE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02009CE6:
add r0, r4, #0x0
bl FUN_0201D4F0
@@ -19119,13 +19119,13 @@ FUN_02009CF0: ; 0x02009CF0
sub sp, #0x10
add r4, r0, #0x0
bne _02009CFC
- bl FUN_02020C2C
+ bl ErrorHandling
_02009CFC:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x1
beq _02009D0A
- bl FUN_02020C2C
+ bl ErrorHandling
_02009D0A:
add r0, r4, #0x0
bl FUN_0200955C
@@ -19149,7 +19149,7 @@ FUN_02009D34: ; 0x02009D34
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009D3E
- bl FUN_02020C2C
+ bl ErrorHandling
_02009D3E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -19164,7 +19164,7 @@ _02009D48:
bl FUN_02009CF0
cmp r0, #0x0
bne _02009D5C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009D5C:
ldr r0, [r5, #0x4]
add r6, r6, #0x1
@@ -19180,13 +19180,13 @@ FUN_02009D68: ; 0x02009D68
sub sp, #0x10
add r4, r0, #0x0
bne _02009D74
- bl FUN_02020C2C
+ bl ErrorHandling
_02009D74:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x1
beq _02009D82
- bl FUN_02020C2C
+ bl ErrorHandling
_02009D82:
add r0, r4, #0x0
bl FUN_0200955C
@@ -19210,7 +19210,7 @@ FUN_02009DAC: ; 0x02009DAC
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009DB6
- bl FUN_02020C2C
+ bl ErrorHandling
_02009DB6:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -19225,7 +19225,7 @@ _02009DC0:
bl FUN_02009D68
cmp r0, #0x0
bne _02009DD4
- bl FUN_02020C2C
+ bl ErrorHandling
_02009DD4:
ldr r0, [r5, #0x4]
add r6, r6, #0x1
@@ -19240,7 +19240,7 @@ FUN_02009DE0: ; 0x02009DE0
push {r3-r5, lr}
add r5, r0, #0x0
bne _02009DEA
- bl FUN_02020C2C
+ bl ErrorHandling
_02009DEA:
add r0, r5, #0x0
bl FUN_02009530
@@ -19258,13 +19258,13 @@ FUN_02009E04: ; 0x02009E04
push {r4, lr}
add r4, r0, #0x0
bne _02009E0E
- bl FUN_02020C2C
+ bl ErrorHandling
_02009E0E:
add r0, r4, #0x0
bl FUN_020095D4
cmp r0, #0x1
beq _02009E1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009E1C:
add r0, r4, #0x0
bl FUN_02009530
@@ -19276,7 +19276,7 @@ FUN_02009E28: ; 0x02009E28
push {r4-r6, lr}
add r5, r0, #0x0
bne _02009E32
- bl FUN_02020C2C
+ bl ErrorHandling
_02009E32:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -19305,13 +19305,13 @@ FUN_02009E54: ; 0x02009E54
add r4, r1, #0x0
cmp r5, #0x0
bne _02009E62
- bl FUN_02020C2C
+ bl ErrorHandling
_02009E62:
add r0, r5, #0x0
bl FUN_020095D4
cmp r0, #0x1
beq _02009E70
- bl FUN_02020C2C
+ bl ErrorHandling
_02009E70:
add r0, r5, #0x0
bl FUN_02009530
@@ -19395,7 +19395,7 @@ FUN_02009EF0: ; 0x02009EF0
add r7, r3, #0x0
cmp r0, #0x0
beq _02009F08
- bl FUN_02020C2C
+ bl ErrorHandling
_02009F08:
ldr r0, [sp, #0x30]
mov r1, #0x3c
@@ -19404,7 +19404,7 @@ _02009F08:
cmp r0, #0x0
str r0, [r1, #0x0]
bne _02009F1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02009F1C:
ldr r1, _02009F7C ; =0x021C4670
lsl r3, r6, #0x10
@@ -19425,7 +19425,7 @@ _02009F1C:
blx FUN_020B0E34
cmp r0, #0x0
bne _02009F48
- bl FUN_02020C2C
+ bl ErrorHandling
_02009F48:
ldr r0, [sp, #0x2c]
ldr r1, [sp, #0x20]
@@ -19448,7 +19448,7 @@ _02009F48:
blx FUN_020B0E34
cmp r0, #0x0
bne _02009F78
- bl FUN_02020C2C
+ bl ErrorHandling
_02009F78:
add sp, #0x8
pop {r3-r7, pc}
@@ -19479,7 +19479,7 @@ FUN_02009FA0: ; 0x02009FA0
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02009FAE
- bl FUN_02020C2C
+ bl ErrorHandling
_02009FAE:
ldr r0, _02009FD4 ; =0x021C4670
ldr r0, [r0, #0x0]
@@ -19511,7 +19511,7 @@ FUN_02009FD8: ; 0x02009FD8
add r4, r3, #0x0
cmp r0, #0x0
bne _02009FF0
- bl FUN_02020C2C
+ bl ErrorHandling
_02009FF0:
cmp r5, #0x1
bne _0200A00C
@@ -19540,11 +19540,11 @@ _0200A00C:
pop {r4-r7, pc}
.balign 4
_0200A024: .word 0x021C4670
-_0200A028: .word FUN_020213A0 + 1
-_0200A02C: .word FUN_0200A074 + 1
-_0200A030: .word FUN_0200A0B8 + 1
-_0200A034: .word FUN_0200A094 + 1
-_0200A038: .word FUN_0200A0DC + 1
+_0200A028: .word FUN_020213A0
+_0200A02C: .word FUN_0200A074
+_0200A030: .word FUN_0200A0B8
+_0200A034: .word FUN_0200A094
+_0200A038: .word FUN_0200A0DC
thumb_func_start FUN_0200A03C
FUN_0200A03C: ; 0x0200A03C
@@ -19554,7 +19554,7 @@ FUN_0200A03C: ; 0x0200A03C
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0200A04C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A04C:
cmp r4, #0x0
bne _0200A056
@@ -19574,14 +19574,14 @@ FUN_0200A064: ; 0x0200A064
ldr r3, _0200A068 ; =FUN_020203CC
bx r3
.balign 4
-_0200A068: .word FUN_020203CC + 1
+_0200A068: .word FUN_020203CC
thumb_func_start FUN_0200A06C
FUN_0200A06C: ; 0x0200A06C
ldr r3, _0200A070 ; =FUN_02020404
bx r3
.balign 4
-_0200A070: .word FUN_02020404 + 1
+_0200A070: .word FUN_02020404
thumb_func_start FUN_0200A074
FUN_0200A074: ; 0x0200A074
@@ -19594,7 +19594,7 @@ FUN_0200A074: ; 0x0200A074
blx FUN_020B0C7C
add r4, r0, #0x0
bne _0200A08C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A08C:
add r0, r4, #0x0
pop {r4, pc}
@@ -19613,7 +19613,7 @@ FUN_0200A094: ; 0x0200A094
blx FUN_020B0C7C
add r4, r0, #0x0
bne _0200A0AE
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A0AE:
add r0, r4, #0x0
pop {r4, pc}
@@ -19631,7 +19631,7 @@ FUN_0200A0B8: ; 0x0200A0B8
ldr r0, _0200A0D8 ; =0x0000FFFE
cmp r4, r0
bne _0200A0D0
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A0D0:
add r0, r4, #0x0
pop {r4, pc}
@@ -19651,7 +19651,7 @@ FUN_0200A0DC: ; 0x0200A0DC
ldr r0, _0200A100 ; =0x0000FFFE
cmp r4, r0
bne _0200A0F6
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A0F6:
add r0, r4, #0x0
pop {r4, pc}
@@ -19753,7 +19753,7 @@ FUN_0200A1A0: ; 0x0200A1A0
add r7, r3, #0x0
cmp r0, #0x0
beq _0200A1B4
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A1B4:
ldr r1, [sp, #0x18]
mov r0, #0x1
@@ -19787,12 +19787,12 @@ _0200A1EA:
mov r0, #0x12
ldrsh r0, [r5, r0]
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
strh r0, [r5, #0x14]
mov r0, #0x12
ldrsh r0, [r5, r0]
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
strh r1, [r5, #0x16]
mov r0, #0x0
strh r0, [r5, #0x18]
@@ -19883,11 +19883,11 @@ FUN_0200A2AC: ; 0x0200A2AC
ldr r0, _0200A2CC ; =0x021C4694
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0200A2D0 ; =0x021C4674
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0200A2D4 ; =0x021C4674
mov r1, #0x0
str r1, [r0, #0x3c]
@@ -19908,7 +19908,7 @@ FUN_0200A2D8: ; 0x0200A2D8
ldr r0, _0200A30C ; =0x021C4694
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0200A310 ; =0x021C4674
mov r1, #0x0
str r1, [r0, #0x3c]
@@ -19919,7 +19919,7 @@ _0200A2F2:
ldr r0, _0200A314 ; =0x021C4674
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0200A310 ; =0x021C4674
mov r1, #0x0
str r1, [r0, #0x1c]
@@ -19995,14 +19995,14 @@ FUN_0200A384: ; 0x0200A384
ldr r3, _0200A388 ; =FUN_0200650C
bx r3
.balign 4
-_0200A388: .word FUN_0200650C + 1
+_0200A388: .word FUN_0200650C
thumb_func_start FUN_0200A38C
FUN_0200A38C: ; 0x0200A38C
ldr r3, _0200A390 ; =FUN_02016A18
bx r3
.balign 4
-_0200A390: .word FUN_02016A18 + 1
+_0200A390: .word FUN_02016A18
thumb_func_start FUN_0200A394
FUN_0200A394: ; 0x0200A394
@@ -20063,7 +20063,7 @@ _0200A3EA:
add sp, #0x8
pop {r3-r7, pc}
_0200A404:
- bl FUN_02020C2C
+ bl ErrorHandling
_0200A408:
add sp, #0x8
pop {r3-r7, pc}
@@ -20160,11 +20160,11 @@ FUN_0200A4C0: ; 0x0200A4C0
add r0, r1, #0x0
add r1, r3, #0x0
ldr r2, [r2, #0x4]
- ldr r3, _0200A4D0 ; =FUN_020CE1E0
+ ldr r3, _0200A4D0 ; =MIi_CpuCopy16
lsl r2, r2, #0x1
bx r3
nop
-_0200A4D0: .word FUN_020CE1E0
+_0200A4D0: .word MIi_CpuCopy16
thumb_func_start FUN_0200A4D4
FUN_0200A4D4: ; 0x0200A4D4
@@ -20209,7 +20209,7 @@ FUN_0200A4D4: ; 0x0200A4D4
ldr r2, [sp, #0x4]
add r0, r5, r0
add r1, r7, #0x0
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
ldr r1, _0200A57C ; =0x00091BD3
add r2, r4, #0x1
mul r1, r2
@@ -20242,7 +20242,7 @@ _0200A556:
add sp, #0x10
pop {r3-r7, pc}
_0200A56A:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, [sp, #0x0]
bl FUN_02021A4C
_0200A574:
@@ -20296,7 +20296,7 @@ FUN_0200A584: ; 0x0200A584
ldr r2, [sp, #0x4]
add r0, r5, r0
add r1, r7, #0x0
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
ldr r1, _0200A640 ; =0x00091BD3
add r2, r4, #0x1
mul r1, r2
@@ -20339,7 +20339,7 @@ _0200A626:
mov r0, #0x0
pop {r3-r7, pc}
_0200A62C:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r1, [sp, #0x0]
mov r0, #0x4
bl FUN_020219F4
@@ -20457,7 +20457,7 @@ _0200A70A:
add sp, #0x14
pop {r4-r7, pc}
_0200A71E:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, [sp, #0x28]
bl FUN_02021A4C
_0200A728:
@@ -20589,7 +20589,7 @@ _0200A824:
add sp, #0x18
pop {r3-r7, pc}
_0200A82A:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x4
add r1, r5, #0x0
bl FUN_020219F4
@@ -20917,7 +20917,7 @@ FUN_0200AA80: ; 0x0200AA80
mov r1, #0x20
bx r3
nop
-_0200AA8C: .word FUN_0200AA90 + 1
+_0200AA8C: .word FUN_0200AA90
thumb_func_start FUN_0200AA90
FUN_0200AA90: ; 0x0200AA90
@@ -20927,12 +20927,12 @@ FUN_0200AA90: ; 0x0200AA90
str r1, [sp, #0x0]
str r2, [sp, #0x4]
bne _0200AAA0
- bl FUN_02020C2C
+ bl ErrorHandling
_0200AAA0:
ldr r0, [sp, #0x0]
cmp r0, #0x0
bne _0200AAAA
- bl FUN_02020C2C
+ bl ErrorHandling
_0200AAAA:
ldr r0, [sp, #0x4]
mov r1, #0x10
@@ -20995,7 +20995,7 @@ FUN_0200AB18: ; 0x0200AB18
ldr r0, [r5, #0x0]
cmp r0, #0x0
bne _0200AB26
- bl FUN_02020C2C
+ bl ErrorHandling
_0200AB26:
ldr r0, [r5, #0x8]
cmp r0, #0x0
@@ -21048,7 +21048,7 @@ FUN_0200AB70: ; 0x0200AB70
add r4, r3, #0x0
cmp r6, r0
blo _0200AB84
- bl FUN_02020C2C
+ bl ErrorHandling
_0200AB84:
ldr r0, [r5, #0x0]
cmp r6, r0
@@ -22604,7 +22604,7 @@ FUN_0200B7A8: ; 0x0200B7A8
ldr r0, [r0, #0x4]
bx r3
.balign 4
-_0200B7B4: .word FUN_02021FF8 + 1
+_0200B7B4: .word FUN_02021FF8
thumb_func_start FUN_0200B7B8
FUN_0200B7B8: ; 0x0200B7B8
@@ -22635,7 +22635,7 @@ _0200B7D4:
ldr r0, [r7, #0x0]
cmp r4, r0
blo _0200B7F8
- bl FUN_02020C2C
+ bl ErrorHandling
_0200B7F8:
ldr r2, [r7, #0x8]
lsl r1, r4, #0x3
@@ -23047,13 +23047,13 @@ _0200BAD8:
add r0, r1, r0
add r1, r6, r5
mov r2, #0x20
- blx FUN_020CE210
+ blx MIi_CpuCopy32
b _0200BB00
_0200BAF6:
ldr r1, [sp, #0x0]
add r0, r6, r5
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
_0200BB00:
add r4, r4, #0x2
ldrh r1, [r4, #0x8]
@@ -23090,7 +23090,7 @@ FUN_0200BB34: ; 0x0200BB34
push {r4, lr}
add r4, r0, #0x0
bne _0200BB3E
- bl FUN_02020C2C
+ bl ErrorHandling
_0200BB3E:
ldr r0, [r4, #0x0]
mov r1, #0x58
@@ -23130,7 +23130,7 @@ FUN_0200BB6C: ; 0x0200BB6C
add r7, r3, #0x0
cmp r5, #0x0
bne _0200BB80
- bl FUN_02020C2C
+ bl ErrorHandling
_0200BB80:
cmp r5, #0x0
bne _0200BB8A
@@ -23211,14 +23211,14 @@ FUN_0200BC14: ; 0x0200BC14
ldr r3, _0200BC18 ; =FUN_0201FFC8
bx r3
.balign 4
-_0200BC18: .word FUN_0201FFC8 + 1
+_0200BC18: .word FUN_0201FFC8
thumb_func_start FUN_0200BC1C
FUN_0200BC1C: ; 0x0200BC1C
push {r4, lr}
add r4, r0, #0x0
bne _0200BC26
- bl FUN_02020C2C
+ bl ErrorHandling
_0200BC26:
ldr r0, [r4, #0x0]
bl FUN_0201FDEC
@@ -23230,14 +23230,14 @@ FUN_0200BC30: ; 0x0200BC30
ldr r3, _0200BC34 ; =FUN_02009F80
bx r3
.balign 4
-_0200BC34: .word FUN_02009F80 + 1
+_0200BC34: .word FUN_02009F80
thumb_func_start FUN_0200BC38
FUN_0200BC38: ; 0x0200BC38
ldr r3, _0200BC3C ; =FUN_0201C348
bx r3
.balign 4
-_0200BC3C: .word FUN_0201C348 + 1
+_0200BC3C: .word FUN_0201C348
thumb_func_start FUN_0200BC40
FUN_0200BC40: ; 0x0200BC40
@@ -23245,7 +23245,7 @@ FUN_0200BC40: ; 0x0200BC40
ldr r0, [r0, #0x0]
bx r3
nop
-_0200BC48: .word FUN_0201FD58 + 1
+_0200BC48: .word FUN_0201FD58
thumb_func_start FUN_0200BC4C
FUN_0200BC4C: ; 0x0200BC4C
@@ -23325,7 +23325,7 @@ FUN_0200BCD0: ; 0x0200BCD0
add r0, r1, #0x0
bx r3
.balign 4
-_0200BCDC: .word FUN_02016A18 + 1
+_0200BCDC: .word FUN_02016A18
thumb_func_start FUN_0200BCE0
FUN_0200BCE0: ; 0x0200BCE0
@@ -23351,7 +23351,7 @@ FUN_0200BD04: ; 0x0200BD04
ldr r0, [r4, #0x4]
cmp r0, #0x0
beq _0200BD12
- bl FUN_02020C2C
+ bl ErrorHandling
_0200BD12:
add r0, r4, #0x0
bl FUN_0200BCB0
@@ -23771,7 +23771,7 @@ _0200C02A:
mov r0, #0x1
pop {r4-r7, pc}
_0200C058:
- bl FUN_02020C2C
+ bl ErrorHandling
cmp r5, #0x0
beq _0200C066
add sp, #0xc
@@ -23818,7 +23818,7 @@ _0200C08C:
bl FUN_02009D68
cmp r0, #0x1
beq _0200C0B8
- bl FUN_02020C2C
+ bl ErrorHandling
_0200C0B8:
ldr r0, [r4, #0x28]
add r1, r5, #0x0
@@ -23831,7 +23831,7 @@ _0200C0B8:
asr r0, r0, #0x18
pop {r3-r7, pc}
_0200C0D0:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
mvn r0, r0
add sp, #0x10
@@ -24130,7 +24130,7 @@ _0200C2E0:
bl FUN_02020248
b _0200C32C
_0200C328:
- bl FUN_02020C2C
+ bl ErrorHandling
_0200C32C:
add r0, r4, #0x0
add sp, #0x74
@@ -24166,7 +24166,7 @@ FUN_0200C358: ; 0x0200C358
ldr r3, _0200C364 ; =FUN_0200C4F4
bx r3
.balign 4
-_0200C364: .word FUN_0200C4F4 + 1
+_0200C364: .word FUN_0200C4F4
thumb_func_start FUN_0200C368
FUN_0200C368: ; 0x0200C368
@@ -24177,7 +24177,7 @@ FUN_0200C368: ; 0x0200C368
ldr r3, _0200C374 ; =FUN_0200C548
bx r3
.balign 4
-_0200C374: .word FUN_0200C548 + 1
+_0200C374: .word FUN_0200C548
thumb_func_start FUN_0200C378
FUN_0200C378: ; 0x0200C378
@@ -24188,7 +24188,7 @@ FUN_0200C378: ; 0x0200C378
ldr r3, _0200C384 ; =FUN_0200C4A8
bx r3
.balign 4
-_0200C384: .word FUN_0200C4A8 + 1
+_0200C384: .word FUN_0200C4A8
thumb_func_start FUN_0200C388
FUN_0200C388: ; 0x0200C388
@@ -24199,7 +24199,7 @@ FUN_0200C388: ; 0x0200C388
ldr r3, _0200C394 ; =FUN_0200C4A8
bx r3
.balign 4
-_0200C394: .word FUN_0200C4A8 + 1
+_0200C394: .word FUN_0200C4A8
thumb_func_start FUN_0200C398
FUN_0200C398: ; 0x0200C398
@@ -24295,13 +24295,13 @@ _0200C42A:
add r4, r0, #0x0
cmp r4, #0x1
beq _0200C45A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200C45A:
add sp, #0x14
add r0, r4, #0x0
pop {r4-r7, pc}
_0200C460:
- bl FUN_02020C2C
+ bl ErrorHandling
cmp r5, #0x0
beq _0200C46E
add sp, #0x14
@@ -24483,7 +24483,7 @@ FUN_0200C59C: ; 0x0200C59C
lsl r1, r1, #0xc
bx r3
.balign 4
-_0200C5A4: .word FUN_020201E4 + 1
+_0200C5A4: .word FUN_020201E4
thumb_func_start FUN_0200C5A8
FUN_0200C5A8: ; 0x0200C5A8
@@ -24499,7 +24499,7 @@ FUN_0200C5B4: ; 0x0200C5B4
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C5BC: .word FUN_020201E4 + 1
+_0200C5BC: .word FUN_020201E4
thumb_func_start FUN_0200C5C0
FUN_0200C5C0: ; 0x0200C5C0
@@ -24507,7 +24507,7 @@ FUN_0200C5C0: ; 0x0200C5C0
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C5C8: .word FUN_02020130 + 1
+_0200C5C8: .word FUN_02020130
thumb_func_start FUN_0200C5CC
FUN_0200C5CC: ; 0x0200C5CC
@@ -24515,14 +24515,14 @@ FUN_0200C5CC: ; 0x0200C5CC
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C5D4: .word FUN_020201DC + 1
+_0200C5D4: .word FUN_020201DC
thumb_func_start FUN_0200C5D8
FUN_0200C5D8: ; 0x0200C5D8
ldr r3, _0200C5DC ; =FUN_020200BC
bx r3
.balign 4
-_0200C5DC: .word FUN_020200BC + 1
+_0200C5DC: .word FUN_020200BC
thumb_func_start FUN_0200C5E0
FUN_0200C5E0: ; 0x0200C5E0
@@ -24530,14 +24530,14 @@ FUN_0200C5E0: ; 0x0200C5E0
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C5E8: .word FUN_0200C5D8 + 1
+_0200C5E8: .word FUN_0200C5D8
thumb_func_start FUN_0200C5EC
FUN_0200C5EC: ; 0x0200C5EC
ldr r3, _0200C5F0 ; =FUN_020200D8
bx r3
.balign 4
-_0200C5F0: .word FUN_020200D8 + 1
+_0200C5F0: .word FUN_020200D8
thumb_func_start FUN_0200C5F4
FUN_0200C5F4: ; 0x0200C5F4
@@ -24545,14 +24545,14 @@ FUN_0200C5F4: ; 0x0200C5F4
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C5FC: .word FUN_0200C5EC + 1
+_0200C5FC: .word FUN_0200C5EC
thumb_func_start FUN_0200C600
FUN_0200C600: ; 0x0200C600
ldr r3, _0200C604 ; =FUN_02020388
bx r3
.balign 4
-_0200C604: .word FUN_02020388 + 1
+_0200C604: .word FUN_02020388
thumb_func_start FUN_0200C608
FUN_0200C608: ; 0x0200C608
@@ -24560,14 +24560,14 @@ FUN_0200C608: ; 0x0200C608
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C610: .word FUN_0200C600 + 1
+_0200C610: .word FUN_0200C600
thumb_func_start FUN_0200C614
FUN_0200C614: ; 0x0200C614
ldr r3, _0200C618 ; =FUN_02020208
bx r3
.balign 4
-_0200C618: .word FUN_02020208 + 1
+_0200C618: .word FUN_02020208
thumb_func_start FUN_0200C61C
FUN_0200C61C: ; 0x0200C61C
@@ -24582,7 +24582,7 @@ FUN_0200C628: ; 0x0200C628
ldr r3, _0200C62C ; =FUN_0202022C
bx r3
.balign 4
-_0200C62C: .word FUN_0202022C + 1
+_0200C62C: .word FUN_0202022C
thumb_func_start FUN_0200C630
FUN_0200C630: ; 0x0200C630
@@ -24590,14 +24590,14 @@ FUN_0200C630: ; 0x0200C630
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C638: .word FUN_0200C628 + 1
+_0200C638: .word FUN_0200C628
thumb_func_start FUN_0200C63C
FUN_0200C63C: ; 0x0200C63C
ldr r3, _0200C640 ; =FUN_020200A0
bx r3
.balign 4
-_0200C640: .word FUN_020200A0 + 1
+_0200C640: .word FUN_020200A0
thumb_func_start FUN_0200C644
FUN_0200C644: ; 0x0200C644
@@ -24605,14 +24605,14 @@ FUN_0200C644: ; 0x0200C644
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C64C: .word FUN_0200C63C + 1
+_0200C64C: .word FUN_0200C63C
thumb_func_start FUN_0200C650
FUN_0200C650: ; 0x0200C650
ldr r3, _0200C654 ; =FUN_02020128
bx r3
.balign 4
-_0200C654: .word FUN_02020128 + 1
+_0200C654: .word FUN_02020128
thumb_func_start FUN_0200C658
FUN_0200C658: ; 0x0200C658
@@ -24620,14 +24620,14 @@ FUN_0200C658: ; 0x0200C658
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C660: .word FUN_0200C650 + 1
+_0200C660: .word FUN_0200C650
thumb_func_start FUN_0200C664
FUN_0200C664: ; 0x0200C664
ldr r3, _0200C668 ; =FUN_02020248
bx r3
.balign 4
-_0200C668: .word FUN_02020248 + 1
+_0200C668: .word FUN_02020248
thumb_func_start FUN_0200C66C
FUN_0200C66C: ; 0x0200C66C
@@ -24635,14 +24635,14 @@ FUN_0200C66C: ; 0x0200C66C
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C674: .word FUN_0200C664 + 1
+_0200C674: .word FUN_0200C664
thumb_func_start FUN_0200C678
FUN_0200C678: ; 0x0200C678
ldr r3, _0200C67C ; =FUN_020202A8
bx r3
.balign 4
-_0200C67C: .word FUN_020202A8 + 1
+_0200C67C: .word FUN_020202A8
thumb_func_start FUN_0200C680
FUN_0200C680: ; 0x0200C680
@@ -24650,7 +24650,7 @@ FUN_0200C680: ; 0x0200C680
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C688: .word FUN_0200C678 + 1
+_0200C688: .word FUN_0200C678
thumb_func_start FUN_0200C68C
FUN_0200C68C: ; 0x0200C68C
@@ -24658,7 +24658,7 @@ FUN_0200C68C: ; 0x0200C68C
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C694: .word FUN_02020300 + 1
+_0200C694: .word FUN_02020300
thumb_func_start FUN_0200C698
FUN_0200C698: ; 0x0200C698
@@ -24667,7 +24667,7 @@ FUN_0200C698: ; 0x0200C698
lsr r1, r1, #0x18
bx r3
.balign 4
-_0200C6A0: .word FUN_02020238 + 1
+_0200C6A0: .word FUN_02020238
thumb_func_start FUN_0200C6A4
FUN_0200C6A4: ; 0x0200C6A4
@@ -24683,14 +24683,14 @@ FUN_0200C6B0: ; 0x0200C6B0
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C6B8: .word FUN_0200C698 + 1
+_0200C6B8: .word FUN_0200C698
thumb_func_start FUN_0200C6BC
FUN_0200C6BC: ; 0x0200C6BC
ldr r3, _0200C6C0 ; =FUN_02020310
bx r3
.balign 4
-_0200C6C0: .word FUN_02020310 + 1
+_0200C6C0: .word FUN_02020310
thumb_func_start FUN_0200C6C4
FUN_0200C6C4: ; 0x0200C6C4
@@ -24698,14 +24698,14 @@ FUN_0200C6C4: ; 0x0200C6C4
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C6CC: .word FUN_0200C6BC + 1
+_0200C6CC: .word FUN_0200C6BC
thumb_func_start FUN_0200C6D0
FUN_0200C6D0: ; 0x0200C6D0
ldr r3, _0200C6D4 ; =FUN_0202032C
bx r3
.balign 4
-_0200C6D4: .word FUN_0202032C + 1
+_0200C6D4: .word FUN_0202032C
thumb_func_start FUN_0200C6D8
FUN_0200C6D8: ; 0x0200C6D8
@@ -24713,7 +24713,7 @@ FUN_0200C6D8: ; 0x0200C6D8
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C6E0: .word FUN_0200C6D0 + 1
+_0200C6E0: .word FUN_0200C6D0
thumb_func_start FUN_0200C6E4
FUN_0200C6E4: ; 0x0200C6E4
@@ -24747,7 +24747,7 @@ FUN_0200C714: ; 0x0200C714
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C71C: .word FUN_0200C6E4 + 1
+_0200C71C: .word FUN_0200C6E4
thumb_func_start FUN_0200C720
FUN_0200C720: ; 0x0200C720
@@ -24825,7 +24825,7 @@ FUN_0200C7A0: ; 0x0200C7A0
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C7A8: .word FUN_0200C75C + 1
+_0200C7A8: .word FUN_0200C75C
thumb_func_start FUN_0200C7AC
FUN_0200C7AC: ; 0x0200C7AC
@@ -24902,14 +24902,14 @@ FUN_0200C82C: ; 0x0200C82C
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C834: .word FUN_0200C7FC + 1
+_0200C834: .word FUN_0200C7FC
thumb_func_start FUN_0200C838
FUN_0200C838: ; 0x0200C838
ldr r3, _0200C83C ; =FUN_020200EC
bx r3
.balign 4
-_0200C83C: .word FUN_020200EC + 1
+_0200C83C: .word FUN_020200EC
thumb_func_start FUN_0200C840
FUN_0200C840: ; 0x0200C840
@@ -24950,14 +24950,14 @@ FUN_0200C884: ; 0x0200C884
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C88C: .word FUN_0200C84C + 1
+_0200C88C: .word FUN_0200C84C
thumb_func_start FUN_0200C890
FUN_0200C890: ; 0x0200C890
ldr r3, _0200C894 ; =FUN_02020088
bx r3
.balign 4
-_0200C894: .word FUN_02020088 + 1
+_0200C894: .word FUN_02020088
thumb_func_start FUN_0200C898
FUN_0200C898: ; 0x0200C898
@@ -24965,7 +24965,7 @@ FUN_0200C898: ; 0x0200C898
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C8A0: .word FUN_0200C890 + 1
+_0200C8A0: .word FUN_0200C890
thumb_func_start FUN_0200C8A4
FUN_0200C8A4: ; 0x0200C8A4
@@ -24986,14 +24986,14 @@ FUN_0200C8BC: ; 0x0200C8BC
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C8C4: .word FUN_0200C8A4 + 1
+_0200C8C4: .word FUN_0200C8A4
thumb_func_start FUN_0200C8C8
FUN_0200C8C8: ; 0x0200C8C8
ldr r3, _0200C8CC ; =FUN_02020100
bx r3
.balign 4
-_0200C8CC: .word FUN_02020100 + 1
+_0200C8CC: .word FUN_02020100
thumb_func_start FUN_0200C8D0
FUN_0200C8D0: ; 0x0200C8D0
@@ -25001,7 +25001,7 @@ FUN_0200C8D0: ; 0x0200C8D0
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C8D8: .word FUN_0200C8C8 + 1
+_0200C8D8: .word FUN_0200C8C8
thumb_func_start FUN_0200C8DC
FUN_0200C8DC: ; 0x0200C8DC
@@ -25032,7 +25032,7 @@ FUN_0200C904: ; 0x0200C904
ldr r3, _0200C908 ; =FUN_02020398
bx r3
.balign 4
-_0200C908: .word FUN_02020398 + 1
+_0200C908: .word FUN_02020398
thumb_func_start FUN_0200C90C
FUN_0200C90C: ; 0x0200C90C
@@ -25040,7 +25040,7 @@ FUN_0200C90C: ; 0x0200C90C
ldr r0, [r0, #0x0]
bx r3
nop
-_0200C914: .word FUN_0200C904 + 1
+_0200C914: .word FUN_0200C904
thumb_func_start FUN_0200C918
FUN_0200C918: ; 0x0200C918
@@ -25080,7 +25080,7 @@ _0200C936:
mov r0, #0x1
pop {r4-r7, pc}
_0200C964:
- bl FUN_02020C2C
+ bl ErrorHandling
cmp r5, #0x0
beq _0200C972
add sp, #0xc
@@ -25129,7 +25129,7 @@ _0200C996:
mov r0, #0x1
pop {r4-r7, pc}
_0200C9C4:
- bl FUN_02020C2C
+ bl ErrorHandling
cmp r5, #0x0
beq _0200C9D2
add sp, #0xc
@@ -25262,7 +25262,7 @@ FUN_0200CAB4: ; 0x0200CAB4
ldr r3, _0200CAB8 ; =FUN_0201B6A0
bx r3
.balign 4
-_0200CAB8: .word FUN_0201B6A0 + 1
+_0200CAB8: .word FUN_0201B6A0
thumb_func_start FUN_0200CABC
FUN_0200CABC: ; 0x0200CABC
@@ -27084,7 +27084,7 @@ _0200D8DA:
_0200D970: .word 0x0000048C
_0200D974: .word 0x00000404
_0200D978: .word 0x00000484
-_0200D97C: .word FUN_0200DB7C + 1
+_0200D97C: .word FUN_0200DB7C
thumb_func_start FUN_0200D980
FUN_0200D980: ; 0x0200D980
@@ -27412,7 +27412,7 @@ FUN_0200DBFC: ; 0x0200DBFC
strb r0, [r4, r1]
pop {r4, pc}
nop
-_0200DC1C: .word FUN_0200DBE8 + 1
+_0200DC1C: .word FUN_0200DBE8
_0200DC20: .word 0x00000488
thumb_func_start FUN_0200DC24
@@ -27432,7 +27432,7 @@ FUN_0200DC24: ; 0x0200DC24
strb r0, [r4, r1]
pop {r4, pc}
nop
-_0200DC44: .word FUN_0200DBE8 + 1
+_0200DC44: .word FUN_0200DBE8
_0200DC48: .word 0x00000488
thumb_func_start FUN_0200DC4C
@@ -27599,7 +27599,7 @@ FUN_0200DD70: ; 0x0200DD70
strb r7, [r0, r1]
pop {r3-r7, pc}
.balign 4
-_0200DDA4: .word FUN_0200DCF8 + 1
+_0200DDA4: .word FUN_0200DCF8
_0200DDA8: .word 0x0000016F
thumb_func_start FUN_0200DDAC
@@ -27818,7 +27818,7 @@ FUN_0200DEF4: ; 0x0200DEF4
add r7, r0, #0x0
add r0, r4, #0x0
lsl r1, r1, #0x8
- blx FUN_020CC15C
+ blx DC_FlushRange
mov r2, #0x19
add r0, r4, #0x0
add r1, r7, #0x0
@@ -27844,7 +27844,7 @@ FUN_0200DEF4: ; 0x0200DEF4
add r5, r0, #0x0
add r0, r4, #0x0
mov r1, #0x20
- blx FUN_020CC15C
+ blx DC_FlushRange
add r0, r4, #0x0
add r1, r5, #0x0
mov r2, #0x20
@@ -28115,18 +28115,18 @@ FUN_0200E1D0: ; 0x0200E1D0
add r6, r3, #0x0
cmp r0, #0x0
bne _0200E1E6
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E1E6:
ldr r0, [sp, #0x34]
cmp r0, #0x0
bne _0200E1F0
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E1F0:
ldr r0, _0200E2AC ; =0x021C47F4
ldrh r0, [r0, #0xc]
cmp r0, #0x0
beq _0200E1FC
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E1FC:
ldr r0, _0200E2B0 ; =0x021C46B4
bl FUN_0200E808
@@ -28312,7 +28312,7 @@ FUN_0200E388: ; 0x0200E388
mov r0, #0x0
bx r3
.balign 4
-_0200E390: .word FUN_02011480 + 1
+_0200E390: .word FUN_02011480
thumb_func_start FUN_0200E394
FUN_0200E394: ; 0x0200E394
@@ -28320,7 +28320,7 @@ FUN_0200E394: ; 0x0200E394
mov r1, #0x0
bx r3
nop
-_0200E39C: .word FUN_0200E440 + 1
+_0200E39C: .word FUN_0200E440
thumb_func_start FUN_0200E3A0
FUN_0200E3A0: ; 0x0200E3A0
@@ -28337,7 +28337,7 @@ _0200E3AE:
bx r3
nop
_0200E3B4: .word 0x00007FFF
-_0200E3B8: .word FUN_0200E440 + 1
+_0200E3B8: .word FUN_0200E440
thumb_func_start FUN_0200E3BC
FUN_0200E3BC: ; 0x0200E3BC
@@ -28657,7 +28657,7 @@ _0200E5FA:
blt _0200E5FA
bx lr
nop
-_0200E60C: .word FUN_0200E758 + 1
+_0200E60C: .word FUN_0200E758
thumb_func_start FUN_0200E610
FUN_0200E610: ; 0x0200E610
@@ -28692,14 +28692,14 @@ FUN_0200E628: ; 0x0200E628
str r1, [sp, #0x0]
cmp r0, #0x0
beq _0200E64A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E64A:
add r6, r5, #0x0
add r6, #0x8
ldr r0, [r6, r4]
cmp r0, #0x0
bne _0200E658
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E658:
ldr r0, [r5, #0x10]
cmp r0, #0x0
@@ -28717,7 +28717,7 @@ _0200E672:
ldr r0, [sp, #0x4]
cmp r0, #0x1
beq _0200E67C
- bl FUN_02020C2C
+ bl ErrorHandling
_0200E67C:
ldr r0, [sp, #0x0]
cmp r7, #0x0
@@ -28735,8 +28735,8 @@ _0200E68C:
add sp, #0xc
pop {r4-r7, pc}
nop
-_0200E698: .word FUN_0200E610 + 1
-_0200E69C: .word FUN_0200E758 + 1
+_0200E698: .word FUN_0200E610
+_0200E69C: .word FUN_0200E758
thumb_func_start FUN_0200E6A0
FUN_0200E6A0: ; 0x0200E6A0
@@ -28761,7 +28761,7 @@ _0200E6BC:
str r0, [r5, r4]
pop {r3-r5, pc}
.balign 4
-_0200E6C8: .word FUN_0200E758 + 1
+_0200E6C8: .word FUN_0200E758
thumb_func_start FUN_0200E6CC
FUN_0200E6CC: ; 0x0200E6CC
@@ -28784,7 +28784,7 @@ FUN_0200E6CC: ; 0x0200E6CC
bl FUN_0200CA98
pop {r3-r7, pc}
.balign 4
-_0200E6F4: .word FUN_0200E71C + 1
+_0200E6F4: .word FUN_0200E71C
thumb_func_start FUN_0200E6F8
FUN_0200E6F8: ; 0x0200E6F8
@@ -28803,7 +28803,7 @@ FUN_0200E6F8: ; 0x0200E6F8
bl FUN_0200CA98
pop {r3-r5, pc}
.balign 4
-_0200E718: .word FUN_0200E73C + 1
+_0200E718: .word FUN_0200E73C
thumb_func_start FUN_0200E71C
FUN_0200E71C: ; 0x0200E71C
@@ -28914,7 +28914,7 @@ _0200E7CE:
pop {r3, pc}
.balign 4
_0200E7D0: .word 0x00007FFF
-_0200E7D4: .word FUN_0200E794 + 1
+_0200E7D4: .word FUN_0200E794
thumb_func_start FUN_0200E7D8
FUN_0200E7D8: ; 0x0200E7D8
@@ -30147,13 +30147,13 @@ FUN_0200F14C: ; 0x0200F14C
thumb_func_start FUN_0200F164
FUN_0200F164: ; 0x0200F164
- ldr r3, _0200F170 ; =FUN_020EBC80
+ ldr r3, _0200F170 ; =_s32_div_f
sub r0, r1, r0
lsl r0, r0, #0x7
add r1, r2, #0x0
bx r3
nop
-_0200F170: .word FUN_020EBC80
+_0200F170: .word _s32_div_f
thumb_func_start FUN_0200F174
FUN_0200F174: ; 0x0200F174
@@ -30275,7 +30275,7 @@ _0200F248:
mov r7, #0xf
mvn r7, r7
mov r6, #0x0
- bl FUN_02020C2C
+ bl ErrorHandling
b _0200F274
_0200F254:
cmp r1, r0
@@ -30294,7 +30294,7 @@ _0200F26A:
mov r7, #0x0
add r6, r7, #0x0
sub r6, #0x10
- bl FUN_02020C2C
+ bl ErrorHandling
_0200F274:
ldr r0, [r5, #0x10]
add r1, r7, #0x0
@@ -30404,7 +30404,7 @@ FUN_0200F330: ; 0x0200F330
push {r4-r6, lr}
add r4, r0, #0x0
bne _0200F33A
- bl FUN_02020C2C
+ bl ErrorHandling
_0200F33A:
ldr r0, _0200F54C ; =0x04000006
ldrh r0, [r0, #0x0]
@@ -30745,7 +30745,7 @@ FUN_0200F5C0: ; 0x0200F5C0
ldr r3, _0200F5C4 ; =FUN_0200F5C8
bx r3
.balign 4
-_0200F5C4: .word FUN_0200F5C8 + 1
+_0200F5C4: .word FUN_0200F5C8
thumb_func_start FUN_0200F5C8
FUN_0200F5C8: ; 0x0200F5C8
@@ -30765,7 +30765,7 @@ FUN_0200F5D8: ; 0x0200F5D8
add r4, r1, #0x0
cmp r0, r4
bgt _0200F5E8
- bl FUN_02020C2C
+ bl ErrorHandling
_0200F5E8:
ldr r0, _0200F5F4 ; =0x00000604
ldr r1, [r5, #0x0]
@@ -30951,8 +30951,8 @@ FUN_0200F740: ; 0x0200F740
ldr r2, _0200F754 ; =0x000003FF
bx r3
nop
-_0200F74C: .word FUN_0200CA98 + 1
-_0200F750: .word FUN_0200F780 + 1
+_0200F74C: .word FUN_0200CA98
+_0200F750: .word FUN_0200F780
_0200F754: .word 0x000003FF
thumb_func_start FUN_0200F758
@@ -30966,7 +30966,7 @@ FUN_0200F758: ; 0x0200F758
pop {r3, pc}
.balign 4
_0200F768: .word 0x00000309
-_0200F76C: .word FUN_0200F7AC + 1
+_0200F76C: .word FUN_0200F7AC
thumb_func_start FUN_0200F770
FUN_0200F770: ; 0x0200F770
@@ -30976,7 +30976,7 @@ FUN_0200F770: ; 0x0200F770
bx r3
.balign 4
_0200F778: .word 0x00000309
-_0200F77C: .word FUN_0200E6F8 + 1
+_0200F77C: .word FUN_0200E6F8
thumb_func_start FUN_0200F780
FUN_0200F780: ; 0x0200F780
@@ -31007,7 +31007,7 @@ FUN_0200F7AC: ; 0x0200F7AC
push {r3-r5, lr}
add r4, r0, #0x0
bne _0200F7B6
- bl FUN_02020C2C
+ bl ErrorHandling
_0200F7B6:
ldr r0, _0200FAC0 ; =0x04000006
ldrh r0, [r0, #0x0]
@@ -32074,7 +32074,7 @@ _0200FF9E:
mov r6, #0x1
b _0200FFA6
_0200FFA2:
- bl FUN_02020C2C
+ bl ErrorHandling
_0200FFA6:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -32178,9 +32178,9 @@ _02010064:
add sp, #0x24
pop {r4-r7, pc}
.balign 4
-_02010078: .word FUN_0200F5F8 + 1
+_02010078: .word FUN_0200F5F8
_0201007C: .word 0x000003FF
-_02010080: .word FUN_0200F330 + 1
+_02010080: .word FUN_0200F330
thumb_func_start FUN_02010084
FUN_02010084: ; 0x02010084
@@ -32220,7 +32220,7 @@ _020100C8:
mov r0, #0x0
pop {r4, pc}
.balign 4
-_020100CC: .word FUN_0200F5F8 + 1
+_020100CC: .word FUN_0200F5F8
_020100D0: .word 0x000003FF
thumb_func_start FUN_020100D4
@@ -32443,7 +32443,7 @@ _02010272:
mov r6, #0x1
b _0201027A
_02010276:
- bl FUN_02020C2C
+ bl ErrorHandling
_0201027A:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -32539,9 +32539,9 @@ _02010328:
add sp, #0x20
pop {r3-r7, pc}
.balign 4
-_0201033C: .word FUN_0200F5F8 + 1
+_0201033C: .word FUN_0200F5F8
_02010340: .word 0x000003FF
-_02010344: .word FUN_0200F330 + 1
+_02010344: .word FUN_0200F330
thumb_func_start FUN_02010348
FUN_02010348: ; 0x02010348
@@ -32581,7 +32581,7 @@ _0201038C:
mov r0, #0x0
pop {r4, pc}
.balign 4
-_02010390: .word FUN_0200F5F8 + 1
+_02010390: .word FUN_0200F5F8
_02010394: .word 0x000003FF
thumb_func_start FUN_02010398
@@ -32716,7 +32716,7 @@ FUN_0201047C: ; 0x0201047C
str r3, [sp, #0x1c]
ldr r6, [sp, #0x38]
ldr r7, [sp, #0x3c]
- blx FUN_020EBC80
+ blx _s32_div_f
str r0, [sp, #0x20]
ldrb r1, [r4, #0x8]
ldr r3, [sp, #0x44]
@@ -32798,9 +32798,9 @@ _02010530:
add sp, #0x24
pop {r4-r7, pc}
.balign 4
-_02010544: .word FUN_0200F5F8 + 1
+_02010544: .word FUN_0200F5F8
_02010548: .word 0x000003FF
-_0201054C: .word FUN_0200F330 + 1
+_0201054C: .word FUN_0200F330
thumb_func_start FUN_02010550
FUN_02010550: ; 0x02010550
@@ -32840,7 +32840,7 @@ _02010594:
mov r0, #0x0
pop {r4, pc}
.balign 4
-_02010598: .word FUN_0200F5F8 + 1
+_02010598: .word FUN_0200F5F8
_0201059C: .word 0x000003FF
thumb_func_start FUN_020105A0
@@ -32872,7 +32872,7 @@ FUN_020105A0: ; 0x020105A0
asr r7, r1, #0xc
lsl r0, r7, #0x1
mov r1, #0x15
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x1
lsl r0, r0, #0x1
mov r1, #0xb4
@@ -32880,7 +32880,7 @@ FUN_020105A0: ; 0x020105A0
ldr r0, _02010684 ; =0x0000FFFF
add r1, #0xb4
mul r0, r2
- blx FUN_020EBC80
+ blx _s32_div_f
lsr r1, r0, #0x1f
add r1, r0, r1
asr r4, r1, #0x1
@@ -32892,7 +32892,7 @@ FUN_020105A0: ; 0x020105A0
str r0, [sp, #0x4]
cmp r0, #0xc0
blt _0201060C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201060C:
ldr r2, [sp, #0x4]
add r0, r4, #0x0
@@ -33029,7 +33029,7 @@ _02010714:
mov r6, #0x1
b _0201071C
_02010718:
- bl FUN_02020C2C
+ bl ErrorHandling
_0201071C:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -33053,7 +33053,7 @@ FUN_02010720: ; 0x02010720
str r0, [r7, #0xc]
cmp r0, #0x0
bne _02010748
- bl FUN_02020C2C
+ bl ErrorHandling
_02010748:
ldrb r0, [r5, #0x8]
str r0, [r7, #0x10]
@@ -33162,9 +33162,9 @@ _02010812:
add sp, #0x24
pop {r4-r7, pc}
nop
-_02010828: .word FUN_0200F5F8 + 1
+_02010828: .word FUN_0200F5F8
_0201082C: .word 0x000003FF
-_02010830: .word FUN_0200F330 + 1
+_02010830: .word FUN_0200F330
thumb_func_start FUN_02010834
FUN_02010834: ; 0x02010834
@@ -33202,7 +33202,7 @@ _02010876:
mov r0, #0x0
pop {r4, pc}
nop
-_0201087C: .word FUN_0200F5F8 + 1
+_0201087C: .word FUN_0200F5F8
_02010880: .word 0x000003FF
thumb_func_start FUN_02010884
@@ -33392,7 +33392,7 @@ _020109DC:
mov r6, #0x1
b _020109E4
_020109E0:
- bl FUN_02020C2C
+ bl ErrorHandling
_020109E4:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -33510,9 +33510,9 @@ FUN_020109E8: ; 0x020109E8
add sp, #0x28
pop {r3-r7, pc}
.balign 4
-_02010AD8: .word FUN_0200F5F8 + 1
+_02010AD8: .word FUN_0200F5F8
_02010ADC: .word 0x000003FF
-_02010AE0: .word FUN_0200F330 + 1
+_02010AE0: .word FUN_0200F330
thumb_func_start FUN_02010AE4
FUN_02010AE4: ; 0x02010AE4
@@ -33554,7 +33554,7 @@ _02010B2E:
mov r0, #0x0
pop {r4, pc}
nop
-_02010B34: .word FUN_0200F5F8 + 1
+_02010B34: .word FUN_0200F5F8
_02010B38: .word 0x000003FF
thumb_func_start FUN_02010B3C
@@ -33569,7 +33569,7 @@ FUN_02010B40: ; 0x02010B40
str r0, [sp, #0x0]
ldr r0, [r0, #0xc]
ldr r1, _02010C60 ; =0x00003FFF
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
str r0, [sp, #0x4]
@@ -33722,7 +33722,7 @@ FUN_02010C64: ; 0x02010C64
add r0, r3, #0x0
mul r0, r1
add r1, r2, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [r4, #0x4]
add r0, r0, r1
str r0, [r4, #0x0]
@@ -33805,7 +33805,7 @@ _02010D10:
mov r6, #0x1
b _02010D18
_02010D14:
- bl FUN_02020C2C
+ bl ErrorHandling
_02010D18:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -33902,9 +33902,9 @@ FUN_02010D1C: ; 0x02010D1C
add sp, #0x20
pop {r3-r7, pc}
.balign 4
-_02010DE0: .word FUN_0200F5F8 + 1
+_02010DE0: .word FUN_0200F5F8
_02010DE4: .word 0x000003FF
-_02010DE8: .word FUN_0200F330 + 1
+_02010DE8: .word FUN_0200F330
thumb_func_start FUN_02010DEC
FUN_02010DEC: ; 0x02010DEC
@@ -33946,7 +33946,7 @@ _02010E36:
mov r0, #0x0
pop {r4, pc}
nop
-_02010E3C: .word FUN_0200F5F8 + 1
+_02010E3C: .word FUN_0200F5F8
_02010E40: .word 0x000003FF
thumb_func_start FUN_02010E44
@@ -34065,7 +34065,7 @@ FUN_02010F14: ; 0x02010F14
add r0, r3, #0x0
mul r0, r1
add r1, r2, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [r4, #0x4]
add r0, r0, r1
str r0, [r4, #0x0]
@@ -34151,7 +34151,7 @@ _02010FC4:
mov r6, #0x1
b _02010FCC
_02010FC8:
- bl FUN_02020C2C
+ bl ErrorHandling
_02010FCC:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -34371,7 +34371,7 @@ FUN_0201115C: ; 0x0201115C
add r1, r3, #0x0
sub r0, r4, r6
mul r0, r2
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, r6
cmp r6, r4
bhi _0201117C
@@ -34512,7 +34512,7 @@ _0201126A:
mov r4, #0x1
b _02011272
_0201126E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02011272:
add r0, r4, #0x0
pop {r3-r5, pc}
@@ -35035,7 +35035,7 @@ FUN_02011634: ; 0x02011634
bl FUN_0200CA98
pop {r4, pc}
nop
-_0201164C: .word FUN_020116CC + 1
+_0201164C: .word FUN_020116CC
thumb_func_start FUN_02011650
FUN_02011650: ; 0x02011650
@@ -35056,7 +35056,7 @@ FUN_02011650: ; 0x02011650
bl FUN_0200CA98
pop {r4-r6, pc}
nop
-_02011674: .word FUN_020116E0 + 1
+_02011674: .word FUN_020116E0
thumb_func_start FUN_02011678
FUN_02011678: ; 0x02011678
@@ -35074,7 +35074,7 @@ FUN_02011678: ; 0x02011678
bl FUN_0200CA98
pop {r3-r5, pc}
.balign 4
-_02011694: .word FUN_020116FC + 1
+_02011694: .word FUN_020116FC
thumb_func_start FUN_02011698
FUN_02011698: ; 0x02011698
@@ -35101,7 +35101,7 @@ FUN_02011698: ; 0x02011698
bl FUN_0200CA98
pop {r3-r7, pc}
nop
-_020116C8: .word FUN_02011714 + 1
+_020116C8: .word FUN_02011714
thumb_func_start FUN_020116CC
FUN_020116CC: ; 0x020116CC
@@ -35179,7 +35179,7 @@ FUN_02011744: ; 0x02011744
str r0, [sp, #0x8]
cmp r0, #0x0
bne _0201175E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201175E:
ldr r4, [sp, #0x8]
ldr r5, [sp, #0x8]
@@ -35195,7 +35195,7 @@ _02011766:
str r0, [r5, #0x0]
cmp r0, #0x0
bne _0201177E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201177E:
add r6, r6, #0x1
add r4, r4, #0x4
@@ -35213,7 +35213,7 @@ _0201177E:
cmp r0, #0x0
str r0, [r1, #0x60]
bne _020117A4
- bl FUN_02020C2C
+ bl ErrorHandling
_020117A4:
ldr r1, [sp, #0x4]
ldr r0, [sp, #0x8]
@@ -35232,7 +35232,7 @@ FUN_020117BC: ; 0x020117BC
push {r4-r6, lr}
add r6, r0, #0x0
bne _020117C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020117C6:
mov r4, #0x0
add r5, r6, #0x0
@@ -35256,13 +35256,13 @@ FUN_020117E8: ; 0x020117E8
sub sp, #0x1c
add r5, r0, #0x0
bne _020117F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020117F4:
ldr r0, [r5, #0x0]
bl FUN_02011BA0
add r4, r0, #0x0
bne _02011802
- bl FUN_02020C2C
+ bl ErrorHandling
_02011802:
ldr r0, [r5, #0x10]
add r3, sp, #0x8
@@ -35318,12 +35318,12 @@ FUN_02011870: ; 0x02011870
push {r4, lr}
add r4, r0, #0x0
bne _0201187A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201187A:
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02011884
- bl FUN_02020C2C
+ bl ErrorHandling
_02011884:
add r0, r4, #0x0
bl FUN_02011F00
@@ -35364,7 +35364,7 @@ FUN_020118C4: ; 0x020118C4
str r1, [sp, #0x0]
cmp r5, #0x0
bne _020118D6
- bl FUN_02020C2C
+ bl ErrorHandling
_020118D6:
ldr r0, [sp, #0x0]
str r0, [r5, #0xc]
@@ -35423,7 +35423,7 @@ FUN_02011938: ; 0x02011938
sub sp, #0x10
add r5, r0, #0x0
bne _02011944
- bl FUN_02020C2C
+ bl ErrorHandling
_02011944:
ldr r0, [r5, #0x8]
cmp r0, #0x0
@@ -35482,15 +35482,15 @@ FUN_020119A4: ; 0x020119A4
add r6, r2, #0x0
cmp r5, #0x0
bne _020119B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020119B4:
cmp r4, #0x0
bne _020119BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020119BC:
cmp r6, #0x0
bne _020119C4
- bl FUN_02020C2C
+ bl ErrorHandling
_020119C4:
ldr r0, [r5, #0xc]
str r0, [r4, #0x0]
@@ -35506,7 +35506,7 @@ FUN_020119D0: ; 0x020119D0
add r7, r1, #0x0
cmp r5, #0x0
bne _020119DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020119DE:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35534,7 +35534,7 @@ FUN_02011A00: ; 0x02011A00
add r7, r1, #0x0
cmp r5, #0x0
bne _02011A0E
- bl FUN_02020C2C
+ bl ErrorHandling
_02011A0E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35562,7 +35562,7 @@ FUN_02011A30: ; 0x02011A30
add r7, r1, #0x0
cmp r5, #0x0
bne _02011A3E
- bl FUN_02020C2C
+ bl ErrorHandling
_02011A3E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35590,7 +35590,7 @@ FUN_02011A60: ; 0x02011A60
add r7, r1, #0x0
cmp r5, #0x0
bne _02011A6E
- bl FUN_02020C2C
+ bl ErrorHandling
_02011A6E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35618,7 +35618,7 @@ FUN_02011A90: ; 0x02011A90
add r7, r1, #0x0
cmp r5, #0x0
bne _02011A9E
- bl FUN_02020C2C
+ bl ErrorHandling
_02011A9E:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35646,7 +35646,7 @@ FUN_02011AC0: ; 0x02011AC0
add r7, r1, #0x0
cmp r5, #0x0
bne _02011ACE
- bl FUN_02020C2C
+ bl ErrorHandling
_02011ACE:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35674,7 +35674,7 @@ FUN_02011AF0: ; 0x02011AF0
add r7, r1, #0x0
cmp r5, #0x0
bne _02011AFE
- bl FUN_02020C2C
+ bl ErrorHandling
_02011AFE:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -35712,7 +35712,7 @@ FUN_02011B20: ; 0x02011B20
str r3, [sp, #0x4]
cmp r1, r0
bge _02011B42
- bl FUN_02020C2C
+ bl ErrorHandling
_02011B42:
ldrb r2, [r6, #0x8]
ldr r1, [sp, #0x0]
@@ -35720,7 +35720,7 @@ _02011B42:
add r0, r1, r0
cmp r2, r0
bge _02011B52
- bl FUN_02020C2C
+ bl ErrorHandling
_02011B52:
ldr r0, [sp, #0x0]
mov r4, #0x0
@@ -35864,7 +35864,7 @@ FUN_02011BF4: ; 0x02011BF4
ldrb r0, [r0, #0x0]
cmp r0, #0x1
bne _02011C54
- bl FUN_02020C2C
+ bl ErrorHandling
_02011C54:
add r0, r5, #0x0
mov r1, #0x1
@@ -35919,12 +35919,12 @@ FUN_02011CA4: ; 0x02011CA4
add r6, r3, #0x0
cmp r7, #0x0
bne _02011CB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02011CB8:
ldr r0, [sp, #0x0]
cmp r0, #0x0
bne _02011CC2
- bl FUN_02020C2C
+ bl ErrorHandling
_02011CC2:
ldr r0, [sp, #0x0]
mov r4, #0x0
@@ -36077,7 +36077,7 @@ _02011DC6:
bl FUN_02011B20
add r0, r7, #0x0
add r1, r4, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [sp, #0x30]
cmp r0, #0x1
bne _02011E08
@@ -36198,7 +36198,7 @@ _02011EC2:
ldr r0, [r0, r5]
cmp r0, #0x0
bne _02011EDC
- bl FUN_02020C2C
+ bl ErrorHandling
_02011EDC:
ldr r0, [r4, #0x0]
add r7, #0x24
@@ -36319,7 +36319,7 @@ FUN_02011FAC: ; 0x02011FAC
bl FUN_020169D8
add r4, r0, #0x0
bne _02011FBC
- bl FUN_02020C2C
+ bl ErrorHandling
_02011FBC:
mov r0, #0x0
str r0, [r4, #0xc]
@@ -36333,7 +36333,7 @@ FUN_02011FC8: ; 0x02011FC8
push {r4, lr}
add r4, r0, #0x0
bne _02011FD2
- bl FUN_02020C2C
+ bl ErrorHandling
_02011FD2:
add r0, r4, #0x0
bl FUN_02016A18
@@ -36409,7 +36409,7 @@ FUN_02012044: ; 0x02012044
bl FUN_0200650C
add r4, r0, #0x0
bne _02012054
- bl FUN_02020C2C
+ bl ErrorHandling
_02012054:
add r0, r4, #0x0
add r1, r5, #0x0
@@ -36417,11 +36417,11 @@ _02012054:
add r6, r0, #0x0
cmp r5, #0x0
bne _02012066
- bl FUN_02020C2C
+ bl ErrorHandling
_02012066:
cmp r6, #0x0
bne _0201206E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201206E:
add r0, r4, #0x0
bl FUN_02016A18
@@ -36440,7 +36440,7 @@ FUN_02012078: ; 0x02012078
add r5, r3, #0x0
cmp r0, r6
bge _02012090
- bl FUN_02020C2C
+ bl ErrorHandling
_02012090:
ldr r0, [sp, #0xc]
ldrh r1, [r4, #0x0]
@@ -36448,7 +36448,7 @@ _02012090:
str r0, [sp, #0x14]
cmp r1, r0
bge _020120A0
- bl FUN_02020C2C
+ bl ErrorHandling
_020120A0:
ldr r0, [r4, #0x14]
str r0, [sp, #0x20]
@@ -36636,14 +36636,14 @@ FUN_020121E8: ; 0x020121E8
str r0, [sp, #0x20]
cmp r0, #0x0
bne _02012204
- bl FUN_02020C2C
+ bl ErrorHandling
_02012204:
ldr r0, [sp, #0x20]
add r1, sp, #0x2c
blx FUN_020B0088
cmp r0, #0x0
bne _02012214
- bl FUN_02020C2C
+ bl ErrorHandling
_02012214:
ldr r1, [sp, #0x4c]
ldr r0, [sp, #0x8]
@@ -36652,7 +36652,7 @@ _02012214:
ldrh r0, [r0, #0x2]
cmp r0, r6
bge _02012226
- bl FUN_02020C2C
+ bl ErrorHandling
_02012226:
ldr r1, [sp, #0x50]
ldr r0, [sp, #0x48]
@@ -36663,7 +36663,7 @@ _02012226:
ldr r0, [sp, #0x10]
cmp r1, r0
bge _0201223C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201223C:
ldr r0, [sp, #0x2c]
ldr r0, [r0, #0x14]
@@ -36983,13 +36983,13 @@ FUN_02012470: ; 0x02012470
blx FUN_020B0138
cmp r0, #0x1
beq _0201249C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201249C:
ldr r0, [sp, #0x0]
add r1, r4, #0x0
ldr r0, [r0, #0xc]
mov r2, #0x20
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
add r0, r5, #0x0
bl FUN_02016A18
add r0, r4, #0x0
@@ -37174,7 +37174,7 @@ FUN_020125FC: ; 0x020125FC
str r0, [r4, #0xc]
cmp r0, #0x0
beq _0201260A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201260A:
add r3, r4, #0x0
mov r0, #0x1
@@ -37214,11 +37214,11 @@ FUN_02012634: ; 0x02012634
str r0, [r4, #0xc]
cmp r0, #0x0
beq _02012656
- bl FUN_02020C2C
+ bl ErrorHandling
_02012656:
pop {r4, pc}
.balign 4
-_02012658: .word FUN_020125FC + 1
+_02012658: .word FUN_020125FC
thumb_func_start FUN_0201265C
FUN_0201265C: ; 0x0201265C
@@ -37229,7 +37229,7 @@ FUN_0201265C: ; 0x0201265C
ldr r0, [r0, #0x0]
cmp r0, #0x1
beq _0201266E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201266E:
ldr r2, _02012688 ; =0x021C4818
ldmia r2!, {r0-r1}
@@ -37255,7 +37255,7 @@ FUN_02012690: ; 0x02012690
ldr r0, [r0, #0x0]
cmp r0, #0x1
beq _020126A0
- bl FUN_02020C2C
+ bl ErrorHandling
_020126A0:
ldr r2, _020126B0 ; =0x021C4828
ldmia r2!, {r0-r1}
@@ -37275,7 +37275,7 @@ FUN_020126B4: ; 0x020126B4
ldr r0, [r0, #0x0]
cmp r0, #0x1
beq _020126C4
- bl FUN_02020C2C
+ bl ErrorHandling
_020126C4:
ldr r2, _020126D4 ; =0x021C4818
ldmia r2!, {r0-r1}
@@ -37341,14 +37341,14 @@ FUN_02012710: ; 0x02012710
bne _02012742
add r0, r6, #0x0
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x0
bne _02012750
_02012742:
mov r1, #0x19
add r0, r6, #0x0
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x0
bne _02012752
_02012750:
@@ -37409,7 +37409,7 @@ FUN_020127A8: ; 0x020127A8
cmp r4, #0x18
blt _020127B6
_020127B2:
- bl FUN_02020C2C
+ bl ErrorHandling
_020127B6:
ldr r0, _020127BC ; =0x020ED4CC
ldrb r0, [r0, r4]
@@ -37450,7 +37450,7 @@ FUN_020127C0: ; 0x020127C0
eor r0, r3
orr r0, r1
beq _02012804
- bl FUN_02020C2C
+ bl ErrorHandling
_02012804:
sub r0, r4, r5
mov r12, r7
@@ -37585,7 +37585,7 @@ FUN_020128E0: ; 0x020128E0
_020128EC:
cmp r3, r2
bne _020128F8
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4, pc}
_020128F8:
@@ -37666,7 +37666,7 @@ FUN_02012974: ; 0x02012974
push {r4, lr}
add r4, r0, #0x0
bne _0201297E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201297E:
add r0, r4, #0x0
bl FUN_02016A18
@@ -37678,7 +37678,7 @@ FUN_02012988: ; 0x02012988
push {r4, lr}
add r4, r0, #0x0
bne _02012992
- bl FUN_02020C2C
+ bl ErrorHandling
_02012992:
ldrb r0, [r4, #0x8]
lsl r0, r0, #0x2
@@ -37691,7 +37691,7 @@ FUN_0201299C: ; 0x0201299C
push {r4, lr}
add r4, r0, #0x0
bne _020129A6
- bl FUN_02020C2C
+ bl ErrorHandling
_020129A6:
ldrb r1, [r4, #0x8]
mov r0, #0x1
@@ -37719,9 +37719,9 @@ _020129C6:
FUN_020129C8: ; 0x020129C8
push {r3, lr}
mov r0, #0x0
- blx FUN_020CD998
+ blx MI_StopDma
mov r0, #0x0
- blx FUN_020CDA1C
+ blx MI_WaitDma
pop {r3, pc}
thumb_func_start FUN_020129D8
@@ -37736,14 +37736,14 @@ FUN_020129D8: ; 0x020129D8
add r1, r6, #0x0
add r2, r5, #0x0
add r3, r4, #0x0
- blx FUN_020CDE04
+ blx MI_HBlankDmaCopy32
pop {r4-r6, pc}
_020129F2:
mov r0, #0x0
add r1, r6, #0x0
add r2, r5, #0x0
add r3, r4, #0x0
- blx FUN_020CDD90
+ blx MI_HBlankDmaCopy16
pop {r4-r6, pc}
thumb_func_start FUN_02012A00
@@ -37779,13 +37779,13 @@ FUN_02012A30: ; 0x02012A30
add r7, r3, #0x0
cmp r5, #0x0
bne _02012A42
- bl FUN_02020C2C
+ bl ErrorHandling
_02012A42:
ldr r0, _02012AB0 ; =0x00000604
ldr r0, [r5, r0]
cmp r0, #0x0
beq _02012A4E
- bl FUN_02020C2C
+ bl ErrorHandling
_02012A4E:
ldr r0, _02012AB4 ; =0x0000078C
mov r2, #0x0
@@ -37824,19 +37824,19 @@ _02012A4E:
add r1, r5, #0x0
ldr r0, [r5, r0]
lsl r2, r2, #0x8
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r0, _02012AC0 ; =0x00000794
mov r2, #0x3
lsl r2, r2, #0x8
ldr r0, [r5, r0]
add r1, r5, r2
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
pop {r3-r7, pc}
.balign 4
_02012AB0: .word 0x00000604
_02012AB4: .word 0x0000078C
_02012AB8: .word 0x0000060C
-_02012ABC: .word FUN_02012BE4 + 1
+_02012ABC: .word FUN_02012BE4
_02012AC0: .word 0x00000794
thumb_func_start FUN_02012AC4
@@ -37844,7 +37844,7 @@ FUN_02012AC4: ; 0x02012AC4
push {r4, lr}
add r4, r0, #0x0
bne _02012ACE
- bl FUN_02020C2C
+ bl ErrorHandling
_02012ACE:
ldr r0, _02012AF8 ; =0x00000604
ldr r0, [r4, r0]
@@ -37891,7 +37891,7 @@ FUN_02012B20: ; 0x02012B20
ldr r0, [r0, r1]
bx r3
nop
-_02012B2C: .word FUN_02012988 + 1
+_02012B2C: .word FUN_02012988
thumb_func_start FUN_02012B30
FUN_02012B30: ; 0x02012B30
@@ -37914,7 +37914,7 @@ FUN_02012B30: ; 0x02012B30
mov r2, #0x3
ldr r0, [r4, r0]
lsl r2, r2, #0x8
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
_02012B5E:
pop {r4, pc}
.balign 4
@@ -37998,7 +37998,7 @@ FUN_02012BE4: ; 0x02012BE4
ldr r0, _02012C80 ; =0x00000798
mov r1, #0x64
ldrsh r0, [r6, r0]
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r3, r0, #0x18
ldr r0, _02012C84 ; =0x0000078C
@@ -38030,7 +38030,7 @@ _02012C12:
stmia r5!, {r0}
add r0, r3, #0x1
mov r1, #0xc0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x18
lsr r3, r0, #0x18
ldr r0, _02012C8C ; =0x0000078D
@@ -38053,7 +38053,7 @@ _02012C4C:
blt _02012C70
mov r0, #0x0
ldrsh r0, [r4, r0]
- blx FUN_020EBC80
+ blx _s32_div_f
strh r1, [r4, #0x0]
pop {r3-r7, pc}
_02012C70:
@@ -38076,14 +38076,14 @@ FUN_02012C90: ; 0x02012C90
ldr r3, _02012C94 ; =FUN_020129C8
bx r3
.balign 4
-_02012C94: .word FUN_020129C8 + 1
+_02012C94: .word FUN_020129C8
thumb_func_start FUN_02012C98
FUN_02012C98: ; 0x02012C98
push {r3-r5, lr}
add r4, r0, #0x0
bne _02012CA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02012CA2:
mov r0, #0x6
lsl r0, r0, #0x8
@@ -38092,7 +38092,7 @@ _02012CA2:
mov r1, #0x3
lsl r1, r1, #0x8
add r5, r0, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
mov r1, #0x79
lsl r1, r1, #0x4
ldr r1, [r4, r1]
@@ -38146,7 +38146,7 @@ _02012D04:
bl FUN_02016998
add r4, r0, #0x0
bne _02012D14
- bl FUN_02020C2C
+ bl ErrorHandling
_02012D14:
add r0, r4, #0x0
mov r1, #0x0
@@ -38387,7 +38387,7 @@ _02012EE4:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012EF0
- bl FUN_02020C2C
+ bl ErrorHandling
_02012EF0:
add r0, r4, #0x0
pop {r4, pc}
@@ -38413,7 +38413,7 @@ _02012F10:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012F1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02012F1C:
add r0, r4, #0x0
pop {r4, pc}
@@ -38439,7 +38439,7 @@ _02012F3C:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012F48
- bl FUN_02020C2C
+ bl ErrorHandling
_02012F48:
add r0, r4, #0x0
pop {r4, pc}
@@ -38465,7 +38465,7 @@ _02012F68:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012F74
- bl FUN_02020C2C
+ bl ErrorHandling
_02012F74:
add r0, r4, #0x0
pop {r4, pc}
@@ -38491,7 +38491,7 @@ _02012F94:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012FA0
- bl FUN_02020C2C
+ bl ErrorHandling
_02012FA0:
add r0, r4, #0x0
pop {r4, pc}
@@ -38517,7 +38517,7 @@ _02012FC0:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012FCC
- bl FUN_02020C2C
+ bl ErrorHandling
_02012FCC:
add r0, r4, #0x0
pop {r4, pc}
@@ -38543,7 +38543,7 @@ _02012FEC:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02012FF8
- bl FUN_02020C2C
+ bl ErrorHandling
_02012FF8:
add r0, r4, #0x0
pop {r4, pc}
@@ -38569,7 +38569,7 @@ _02013018:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02013024
- bl FUN_02020C2C
+ bl ErrorHandling
_02013024:
add r0, r4, #0x0
pop {r4, pc}
@@ -38595,7 +38595,7 @@ _02013044:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02013050
- bl FUN_02020C2C
+ bl ErrorHandling
_02013050:
add r0, r4, #0x0
pop {r4, pc}
@@ -38621,7 +38621,7 @@ _02013070:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _0201307C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201307C:
add r0, r4, #0x0
pop {r4, pc}
@@ -38647,7 +38647,7 @@ _0201309C:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _020130A8
- bl FUN_02020C2C
+ bl ErrorHandling
_020130A8:
add r0, r4, #0x0
pop {r4, pc}
@@ -38673,7 +38673,7 @@ _020130C8:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _020130D4
- bl FUN_02020C2C
+ bl ErrorHandling
_020130D4:
add r0, r4, #0x0
pop {r4, pc}
@@ -38699,7 +38699,7 @@ _020130F4:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02013100
- bl FUN_02020C2C
+ bl ErrorHandling
_02013100:
add r0, r4, #0x0
pop {r4, pc}
@@ -38725,7 +38725,7 @@ _02013120:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _0201312C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201312C:
add r0, r4, #0x0
pop {r4, pc}
@@ -38751,7 +38751,7 @@ _0201314C:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02013158
- bl FUN_02020C2C
+ bl ErrorHandling
_02013158:
add r0, r4, #0x0
pop {r4, pc}
@@ -38777,7 +38777,7 @@ _02013178:
ldr r1, [r1, #0x14]
cmp r0, r1
blo _02013184
- bl FUN_02020C2C
+ bl ErrorHandling
_02013184:
add r0, r4, #0x0
pop {r4, pc}
@@ -38789,7 +38789,7 @@ FUN_0201318C: ; 0x0201318C
ldr r3, _02013190 ; =FUN_0200650C
bx r3
.balign 4
-_02013190: .word FUN_0200650C + 1
+_02013190: .word FUN_0200650C
thumb_func_start FUN_02013194
FUN_02013194: ; 0x02013194
@@ -38801,12 +38801,12 @@ FUN_02013194: ; 0x02013194
add r7, r3, #0x0
cmp r0, #0x0
bne _020131A8
- bl FUN_02020C2C
+ bl ErrorHandling
_020131A8:
ldr r0, [r5, #0x4]
cmp r0, #0x0
beq _020131B2
- bl FUN_02020C2C
+ bl ErrorHandling
_020131B2:
add r0, r5, #0x0
add r0, #0xd8
@@ -38868,7 +38868,7 @@ _02013216:
bl FUN_0200CA98
pop {r3-r7, pc}
nop
-_02013224: .word FUN_02013268 + 1
+_02013224: .word FUN_02013268
thumb_func_start FUN_02013228
FUN_02013228: ; 0x02013228
@@ -38920,13 +38920,13 @@ FUN_0201327C: ; 0x0201327C
push {r4, lr}
add r4, r0, #0x0
bne _02013286
- bl FUN_02020C2C
+ bl ErrorHandling
_02013286:
ldr r0, _020132B8 ; =0x021C4850
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02013292
- bl FUN_02020C2C
+ bl ErrorHandling
_02013292:
ldr r0, _020132B8 ; =0x021C4850
mov r1, #0x0
@@ -38945,7 +38945,7 @@ _020132A8:
add r2, r2, #0x4
cmp r1, #0x10
blt _0201329A
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
nop
_020132B8: .word 0x021C4850
@@ -38955,13 +38955,13 @@ FUN_020132BC: ; 0x020132BC
push {r4, lr}
add r4, r0, #0x0
bne _020132C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020132C6:
ldr r0, _020132FC ; =0x021C4850
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _020132D2
- bl FUN_02020C2C
+ bl ErrorHandling
_020132D2:
ldr r0, _020132FC ; =0x021C4850
mov r1, #0x0
@@ -38983,7 +38983,7 @@ _020132EE:
add r2, r2, #0x4
cmp r1, #0x10
blt _020132DA
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
.balign 4
_020132FC: .word 0x021C4850
@@ -39566,7 +39566,7 @@ FUN_020136C0: ; 0x020136C0
push {r4, lr}
add r4, r0, #0x0
bne _020136CA
- bl FUN_02020C2C
+ bl ErrorHandling
_020136CA:
cmp r4, #0x0
beq _020136DE
@@ -39587,7 +39587,7 @@ FUN_020136E0: ; 0x020136E0
add r4, r1, #0x0
cmp r5, #0x0
bne _020136EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020136EE:
cmp r5, #0x0
beq _020136F4
@@ -39667,7 +39667,7 @@ FUN_02013764: ; 0x02013764
add r5, r0, #0x0
cmp r6, #0x4
blo _02013772
- bl FUN_02020C2C
+ bl ErrorHandling
_02013772:
cmp r6, #0x4
bhs _020137B8
@@ -39829,13 +39829,13 @@ FUN_020138A0: ; 0x020138A0
add r4, r1, #0x0
cmp r5, #0x5
blo _020138AE
- bl FUN_02020C2C
+ bl ErrorHandling
_020138AE:
add r0, r5, #0x0
bl FUN_02013974
cmp r4, r0
blo _020138BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020138BC:
ldr r1, _02013910 ; =0x020ED54C
lsl r2, r5, #0x1
@@ -39965,7 +39965,7 @@ FUN_02013980: ; 0x02013980
add r6, r2, #0x0
cmp r4, #0x5
blo _02013990
- bl FUN_02020C2C
+ bl ErrorHandling
_02013990:
strh r4, [r5, #0x0]
strh r6, [r5, #0x2]
@@ -39980,7 +39980,7 @@ FUN_02013998: ; 0x02013998
add r6, r2, #0x0
cmp r4, #0x2
blo _020139A8
- bl FUN_02020C2C
+ bl ErrorHandling
_020139A8:
lsl r0, r4, #0x1
add r0, r5, r0
@@ -40225,7 +40225,7 @@ FUN_02013B5C: ; 0x02013B5C
mov r1, #0x22
bx r3
nop
-_02013B64: .word FUN_02022610 + 1
+_02013B64: .word FUN_02022610
thumb_func_start FUN_02013B68
FUN_02013B68: ; 0x02013B68
@@ -40425,7 +40425,7 @@ _02013CA4:
cmp r2, #0x0
bne _02013C96
_02013CAC:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, _02013CD0 ; =0x0000FFFF
pop {r3-r7, pc}
_02013CB4:
@@ -40453,7 +40453,7 @@ FUN_02013CD4: ; 0x02013CD4
bl FUN_02016998
add r4, r0, #0x0
bne _02013CE8
- bl FUN_02020C2C
+ bl ErrorHandling
_02013CE8:
ldr r0, [r5, #0x0]
ldr r1, [r5, #0xc]
@@ -40482,22 +40482,22 @@ FUN_02013D18: ; 0x02013D18
push {r4, lr}
add r4, r0, #0x0
bne _02013D22
- bl FUN_02020C2C
+ bl ErrorHandling
_02013D22:
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02013D2C
- bl FUN_02020C2C
+ bl ErrorHandling
_02013D2C:
ldr r0, [r4, #0x8]
cmp r0, #0x0
bne _02013D36
- bl FUN_02020C2C
+ bl ErrorHandling
_02013D36:
ldr r0, [r4, #0x10]
cmp r0, #0x0
bne _02013D40
- bl FUN_02020C2C
+ bl ErrorHandling
_02013D40:
ldr r0, [r4, #0x0]
bl FUN_02016A18
@@ -40551,20 +40551,20 @@ FUN_02013D98: ; 0x02013D98
bl FUN_02014024
add r4, r0, #0x0
bne _02013DAA
- bl FUN_02020C2C
+ bl ErrorHandling
_02013DAA:
ldr r0, [r5, #0x4]
ldr r0, [r0, #0x8]
cmp r0, #0x0
beq _02013DB6
- bl FUN_02020C2C
+ bl ErrorHandling
_02013DB6:
ldr r0, [r5, #0x4]
bl FUN_0201407C
str r0, [r4, #0x0]
cmp r0, #0x0
bne _02013DC6
- bl FUN_02020C2C
+ bl ErrorHandling
_02013DC6:
ldr r0, [r5, #0x4]
ldr r1, [r4, #0x0]
@@ -40620,14 +40620,14 @@ FUN_02013E14: ; 0x02013E14
bl FUN_02014050
add r4, r0, #0x0
bne _02013E26
- bl FUN_02020C2C
+ bl ErrorHandling
_02013E26:
ldr r0, [r5, #0x8]
bl FUN_02014090
str r0, [r4, #0x0]
cmp r0, #0x0
bne _02013E36
- bl FUN_02020C2C
+ bl ErrorHandling
_02013E36:
ldr r0, [r5, #0x4]
ldr r1, [r4, #0x0]
@@ -40683,7 +40683,7 @@ FUN_02013E84: ; 0x02013E84
bl FUN_02013FF8
add r4, r0, #0x0
bne _02013E96
- bl FUN_02020C2C
+ bl ErrorHandling
_02013E96:
add r0, r4, #0x0
add r1, r5, #0x0
@@ -40699,7 +40699,7 @@ FUN_02013EA8: ; 0x02013EA8
ldr r3, _02013EAC ; =FUN_02013F30
bx r3
.balign 4
-_02013EAC: .word FUN_02013F30 + 1
+_02013EAC: .word FUN_02013F30
thumb_func_start FUN_02013EB0
FUN_02013EB0: ; 0x02013EB0
@@ -40708,7 +40708,7 @@ FUN_02013EB0: ; 0x02013EB0
add r4, r1, #0x0
cmp r5, #0x0
bne _02013EBE
- bl FUN_02020C2C
+ bl ErrorHandling
_02013EBE:
str r4, [r5, #0x20]
pop {r3-r5, pc}
@@ -40861,7 +40861,7 @@ FUN_02013F68: ; 0x02013F68
bl FUN_02016998
add r7, r0, #0x0
bne _02013F7C
- bl FUN_02020C2C
+ bl ErrorHandling
_02013F7C:
mov r4, #0x0
cmp r6, #0x0
@@ -40889,7 +40889,7 @@ FUN_02013F98: ; 0x02013F98
bl FUN_02016998
add r7, r0, #0x0
bne _02013FAE
- bl FUN_02020C2C
+ bl ErrorHandling
_02013FAE:
mov r4, #0x0
cmp r6, #0x0
@@ -40916,7 +40916,7 @@ FUN_02013FC8: ; 0x02013FC8
bl FUN_02016998
add r7, r0, #0x0
bne _02013FDE
- bl FUN_02020C2C
+ bl ErrorHandling
_02013FDE:
mov r4, #0x0
cmp r6, #0x0
@@ -41385,14 +41385,14 @@ _0201434A:
add r1, r4, #0x0
add r1, #0xc
mov r2, #0x20
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
ldr r1, [sp, #0x0]
ldr r0, [sp, #0x8]
mov r2, #0x20
add r0, r1, r0
add r1, r4, #0x0
add r1, #0x2c
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
ldr r0, [sp, #0x4]
mov r1, #0x1
str r0, [r4, #0x0]
@@ -41414,11 +41414,11 @@ _0201434A:
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_02014394: .word FUN_020143DC + 1
-_02014398: .word FUN_020144E0 + 1
-_0201439C: .word FUN_020144FC + 1
-_020143A0: .word FUN_020144B0 + 1
-_020143A4: .word FUN_020144C8 + 1
+_02014394: .word FUN_020143DC
+_02014398: .word FUN_020144E0
+_0201439C: .word FUN_020144FC
+_020143A0: .word FUN_020144B0
+_020143A4: .word FUN_020144C8
thumb_func_start FUN_020143A8
FUN_020143A8: ; 0x020143A8
@@ -41452,7 +41452,7 @@ FUN_020143D0: ; 0x020143D0
ldr r0, [r0, #0x0]
bx r3
nop
-_020143D8: .word FUN_0200621C + 1
+_020143D8: .word FUN_0200621C
thumb_func_start FUN_020143DC
FUN_020143DC: ; 0x020143DC
@@ -41645,7 +41645,7 @@ FUN_02014518: ; 0x02014518
mov r1, #0x0
mov r2, #0x78
add r6, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r2, _02014560 ; =0x0000019E
mov r0, #0x0
mov r1, #0x1a
@@ -41824,7 +41824,7 @@ FUN_0201466C: ; 0x0201466C
lsr r0, r0, #0x1c
cmp r0, #0x1
beq _02014680
- bl FUN_02020C2C
+ bl ErrorHandling
_02014680:
add r0, r4, #0x0
add r0, #0x9a
@@ -42096,7 +42096,7 @@ _02014820:
add sp, #0x4
pop {r3-r4, pc}
.balign 4
-_02014874: .word FUN_02014878 + 1
+_02014874: .word FUN_02014878
thumb_func_start FUN_02014878
FUN_02014878: ; 0x02014878
@@ -42380,7 +42380,7 @@ _02014A58:
add sp, #0x8
pop {r3-r7, pc}
.balign 4
-_02014A88: .word FUN_02014AD4 + 1
+_02014A88: .word FUN_02014AD4
thumb_func_start FUN_02014A8C
FUN_02014A8C: ; 0x02014A8C
@@ -42417,7 +42417,7 @@ _02014AA6:
bl FUN_0200CA98
pop {r3-r7, pc}
.balign 4
-_02014AD0: .word FUN_02014B10 + 1
+_02014AD0: .word FUN_02014B10
thumb_func_start FUN_02014AD4
FUN_02014AD4: ; 0x02014AD4
@@ -42427,7 +42427,7 @@ FUN_02014AD4: ; 0x02014AD4
add r5, r0, #0x0
ldr r0, [r1, #0x14]
ldr r1, [r1, #0x10]
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r3, [r4, #0x4]
ldr r0, [r4, #0x10]
str r0, [sp, #0x0]
@@ -42455,7 +42455,7 @@ FUN_02014B10: ; 0x02014B10
ldr r0, [r4, #0x0]
ldr r1, [r4, #0x10]
ldr r0, [r0, #0xc]
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [r4, #0x8]
cmp r0, #0x0
bne _02014B34
@@ -42592,7 +42592,7 @@ FUN_02014BF4: ; 0x02014BF4
mov r1, #0x0
add r2, r6, #0x0
str r0, [r4, #0x0]
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
pop {r3-r7, pc}
@@ -42613,7 +42613,7 @@ FUN_02014C3C: ; 0x02014C3C
add r4, r0, #0x0
cmp r4, #0x19
blo _02014C48
- bl FUN_02020C2C
+ bl ErrorHandling
_02014C48:
ldr r0, _02014C50 ; =0x020ED64C
ldrb r0, [r0, r4]
@@ -42637,7 +42637,7 @@ FUN_02014C54: ; 0x02014C54
str r2, [sp, #0x0]
cmp r0, r1
blo _02014C74
- bl FUN_02020C2C
+ bl ErrorHandling
_02014C74:
ldr r0, [sp, #0x4]
mov r1, #0x1d
@@ -42649,14 +42649,14 @@ _02014C74:
ldr r0, [r0, #0x10]
cmp r0, #0x0
beq _02014C8C
- bl FUN_02020C2C
+ bl ErrorHandling
_02014C8C:
ldr r0, [r5, #0x0]
mov r2, #0x1d
add r0, r0, r4
mov r1, #0x0
lsl r2, r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r5, #0x0]
mov r1, #0x1
add r0, r0, r4
@@ -42767,7 +42767,7 @@ _02014CC2:
pop {r4-r7, pc}
.balign 4
_02014D74: .word 0x000001CD
-_02014D78: .word FUN_02014DD8 + 1
+_02014D78: .word FUN_02014DD8
thumb_func_start FUN_02014D7C
FUN_02014D7C: ; 0x02014D7C
@@ -42777,7 +42777,7 @@ FUN_02014D7C: ; 0x02014D7C
add r4, r1, #0x0
cmp r4, r0
blo _02014D8C
- bl FUN_02020C2C
+ bl ErrorHandling
_02014D8C:
mov r0, #0x1d
lsl r0, r0, #0x4
@@ -42937,7 +42937,7 @@ _02014EA0:
ldr r0, [r0, #0x0]
cmp r0, #0x22
blo _02014EB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02014EB2:
ldr r1, [r5, #0xc]
add r0, r5, #0x0
@@ -42969,7 +42969,7 @@ _02014EE6:
lsl r0, r0, #0x8
cmp r1, r0
blt _02014EA0
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
str r0, [r5, #0x1c]
_02014EF8:
@@ -42986,7 +42986,7 @@ FUN_02014F08: ; 0x02014F08
ldr r4, [r0, r1]
cmp r2, #0x1
beq _02014F16
- bl FUN_02020C2C
+ bl ErrorHandling
_02014F16:
add r0, r4, #0x0
pop {r4, pc}
@@ -42999,7 +42999,7 @@ FUN_02014F1C: ; 0x02014F1C
mov r1, #0x0
bx r3
.balign 4
-_02014F24: .word FUN_02014F08 + 1
+_02014F24: .word FUN_02014F08
thumb_func_start FUN_02014F28
FUN_02014F28: ; 0x02014F28
@@ -43026,7 +43026,7 @@ _02014F3E:
add r0, r4, #0x0
mov r1, #0x0
mov r2, #0x54
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x1
str r0, [r4, #0x0]
mov r0, #0xc
@@ -43043,7 +43043,7 @@ _02014F68:
lsr r3, r1, #0x18
cmp r3, #0x4
blo _02014F3E
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
nop
@@ -43086,7 +43086,7 @@ FUN_02014FA8: ; 0x02014FA8
ldrb r0, [r4, #0x0]
cmp r0, #0x8
blo _02014FC4
- bl FUN_02020C2C
+ bl ErrorHandling
_02014FC4:
pop {r4, pc}
.balign 4
@@ -43155,7 +43155,7 @@ _0201501C:
str r0, [r6, #0x0]
pop {r3-r6, pc}
_02015048:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x4
pop {r3-r6, pc}
@@ -43197,7 +43197,7 @@ _02015082:
str r0, [r4, #0x0]
b _020150A2
_0201509E:
- bl FUN_02020C2C
+ bl ErrorHandling
_020150A2:
add r0, sp, #0x0
ldrb r0, [r0, #0x0]
@@ -43224,7 +43224,7 @@ _020150B6:
str r0, [r6, #0x0]
pop {r3-r6, pc}
_020150D4:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x4
pop {r3-r6, pc}
@@ -43269,7 +43269,7 @@ _02015112:
str r0, [r6, #0x0]
b _02015132
_0201512E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02015132:
add r0, r5, #0x0
add r1, sp, #0x0
@@ -43297,7 +43297,7 @@ _0201514C:
str r0, [sp, #0x4]
b _0201516C
_02015168:
- bl FUN_02020C2C
+ bl ErrorHandling
_0201516C:
ldr r0, [sp, #0x4]
add r0, r7, r0
@@ -43343,7 +43343,7 @@ FUN_0201519C: ; 0x0201519C
asr r2, r2, #0x3
bx r3
nop
-_020151B4: .word FUN_020079E0 + 1
+_020151B4: .word FUN_020079E0
thumb_func_start FUN_020151B8
FUN_020151B8: ; 0x020151B8
@@ -43490,7 +43490,7 @@ FUN_020152B0: ; 0x020152B0
bl FUN_02015050
ldr r0, [sp, #0x8]
ldr r1, [sp, #0x4]
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, sp, #0x0
ldrb r1, [r1, #0x0]
lsl r1, r1, #0x2
@@ -43511,7 +43511,7 @@ FUN_020152D8: ; 0x020152D8
bl FUN_02015050
ldr r0, [sp, #0x8]
ldr r1, [sp, #0x4]
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, sp, #0x0
ldrb r0, [r0, #0x0]
lsl r0, r0, #0x2
@@ -43568,7 +43568,7 @@ _02015334:
str r0, [sp, #0x8]
b _02015362
_0201535E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02015362:
add r1, sp, #0x0
add r0, r5, #0x0
@@ -43578,7 +43578,7 @@ _02015362:
ldrb r0, [r0, #0x1]
cmp r0, #0x11
bls _02015378
- bl FUN_02020C2C
+ bl ErrorHandling
_02015378:
add r0, sp, #0xc
add r1, sp, #0x8
@@ -43616,7 +43616,7 @@ _020153A6:
str r0, [sp, #0x4]
b _020153CA
_020153C6:
- bl FUN_02020C2C
+ bl ErrorHandling
_020153CA:
add r0, sp, #0x0
ldrb r1, [r0, #0x1]
@@ -43657,7 +43657,7 @@ FUN_02015404: ; 0x02015404
ldr r0, [r4, #0x50]
cmp r0, #0x0
beq _02015412
- bl FUN_02020C2C
+ bl ErrorHandling
_02015412:
ldr r0, [r4, #0xc]
add r0, r0, #0x4
@@ -43766,7 +43766,7 @@ _020154C4:
str r0, [sp, #0x4]
b _020154E4
_020154E0:
- bl FUN_02020C2C
+ bl ErrorHandling
_020154E4:
add r0, r4, #0x0
add r1, sp, #0x0
@@ -43791,7 +43791,7 @@ _02015502:
add sp, #0xc
pop {r3-r4, pc}
_02015514:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
pop {r3-r4, pc}
@@ -43884,7 +43884,7 @@ _020155B4:
str r0, [r4, #0x64]
pop {r3-r4, pc}
_020155C6:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x4
pop {r3-r4, pc}
.balign 4
@@ -43926,7 +43926,7 @@ _02015600:
str r0, [r4, #0x64]
pop {r3-r4, pc}
_02015616:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x4
pop {r3-r4, pc}
.balign 4
@@ -43983,7 +43983,7 @@ _0201566E:
add r4, #0x78
b _0201567C
_02015678:
- bl FUN_02020C2C
+ bl ErrorHandling
_0201567C:
add r1, sp, #0x0
add r0, r5, #0x0
@@ -44012,7 +44012,7 @@ _02015698:
str r0, [sp, #0x4]
b _020156B8
_020156B4:
- bl FUN_02020C2C
+ bl ErrorHandling
_020156B8:
add r0, r5, #0x0
add r1, sp, #0x0
@@ -44035,7 +44035,7 @@ _020156D0:
str r0, [r4, #0x0]
pop {r3-r5, pc}
_020156E0:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x8
pop {r3-r5, pc}
@@ -44123,7 +44123,7 @@ _02015778:
_0201578A:
cmp r0, #0x1c
beq _02015792
- bl FUN_02020C2C
+ bl ErrorHandling
_02015792:
pop {r4, pc}
.balign 4
@@ -44170,7 +44170,7 @@ _020157D2:
str r0, [r4, #0x6c]
pop {r3-r4, pc}
_020157E2:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x4
pop {r3-r4, pc}
.balign 4
@@ -44268,7 +44268,7 @@ _02015886:
_02015890:
cmp r1, #0x0
bne _02015898
- bl FUN_02020C2C
+ bl ErrorHandling
_02015898:
pop {r4, pc}
nop
@@ -44280,7 +44280,7 @@ FUN_020158A0: ; 0x020158A0
mov r1, #0x0
bx r3
nop
-_020158A8: .word FUN_0201598C + 1
+_020158A8: .word FUN_0201598C
thumb_func_start FUN_020158AC
FUN_020158AC: ; 0x020158AC
@@ -44288,7 +44288,7 @@ FUN_020158AC: ; 0x020158AC
mov r1, #0x1
bx r3
nop
-_020158B4: .word FUN_0201598C + 1
+_020158B4: .word FUN_0201598C
thumb_func_start FUN_020158B8
FUN_020158B8: ; 0x020158B8
@@ -44296,7 +44296,7 @@ FUN_020158B8: ; 0x020158B8
mov r1, #0x2
bx r3
nop
-_020158C0: .word FUN_0201598C + 1
+_020158C0: .word FUN_0201598C
thumb_func_start FUN_020158C4
FUN_020158C4: ; 0x020158C4
@@ -44304,7 +44304,7 @@ FUN_020158C4: ; 0x020158C4
mov r1, #0x3
bx r3
nop
-_020158CC: .word FUN_0201598C + 1
+_020158CC: .word FUN_0201598C
thumb_func_start FUN_020158D0
FUN_020158D0: ; 0x020158D0
@@ -44312,7 +44312,7 @@ FUN_020158D0: ; 0x020158D0
mov r1, #0x4
bx r3
nop
-_020158D8: .word FUN_0201598C + 1
+_020158D8: .word FUN_0201598C
thumb_func_start FUN_020158DC
FUN_020158DC: ; 0x020158DC
@@ -44339,7 +44339,7 @@ _020158F6:
str r0, [r3, #0x0]
pop {r3, pc}
_02015904:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
@@ -44412,7 +44412,7 @@ _02015972:
str r0, [r1, #0x30]
pop {r3, pc}
_02015984:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
@@ -44577,7 +44577,7 @@ _02015AA6:
str r1, [r0, #0x0]
b _02015AC4
_02015AC0:
- bl FUN_02020C2C
+ bl ErrorHandling
_02015AC4:
add r0, r4, #0x0
add r0, #0x2c
@@ -44609,7 +44609,7 @@ FUN_02015AEC: ; 0x02015AEC
add r0, r0, #0x1
mul r0, r1
ldr r1, [r4, #0x18]
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [r4, #0x14]
add r0, r1, r0
lsl r0, r0, #0x10
@@ -44680,7 +44680,7 @@ _02015B64:
str r1, [r0, #0x0]
b _02015B82
_02015B7E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02015B82:
add r0, r4, #0x0
add r0, #0x2c
@@ -44745,7 +44745,7 @@ FUN_02015BE8: ; 0x02015BE8
ldr r0, [r4, #0x8]
mul r0, r1
ldr r1, [r4, #0xc]
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, [r4, #0x24]
str r0, [r1, #0x0]
add r0, r4, #0x0
@@ -44837,7 +44837,7 @@ _02015C90:
str r0, [r4, #0x0]
b _02015CA4
_02015CA0:
- bl FUN_02020C2C
+ bl ErrorHandling
_02015CA4:
add r0, r4, #0x0
add r0, #0x2c
@@ -44893,7 +44893,7 @@ FUN_02015CF8: ; 0x02015CF8
add r4, r1, #0x0
cmp r5, #0x3
blt _02015D06
- bl FUN_02020C2C
+ bl ErrorHandling
_02015D06:
ldr r0, _02015D10 ; =0x020ED72C
lsl r1, r5, #0x1
@@ -45142,7 +45142,7 @@ FUN_02015EA0: ; 0x02015EA0
orr r0, r2
str r0, [r3, r1]
mov r0, #0x3
- blx FUN_020CDA1C
+ blx MI_WaitDma
ldr r0, _02015ED0 ; =0x021C48B8
ldr r0, [r0, #0x1c]
bl FUN_0201B5CC
@@ -45164,27 +45164,27 @@ FUN_02015ED4: ; 0x02015ED4
ldr r2, [r3, r1]
orr r0, r2
str r0, [r3, r1]
- ldr r3, _02015EF0 ; =FUN_020CDA1C
+ ldr r3, _02015EF0 ; =MI_WaitDma
mov r0, #0x3
bx r3
nop
_02015EE8: .word 0x027E0000
_02015EEC: .word 0x00003FF8
-_02015EF0: .word FUN_020CDA1C
+_02015EF0: .word MI_WaitDma
thumb_func_start FUN_02015EF4
FUN_02015EF4: ; 0x02015EF4
push {r3, lr}
mov r0, #0x1
- blx FUN_020C9E14
+ blx OS_DisableIrqMask
ldr r1, _02015F0C ; =FUN_02015ED4
mov r0, #0x1
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x1
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
pop {r3, pc}
.balign 4
-_02015F0C: .word FUN_02015ED4 + 1
+_02015F0C: .word FUN_02015ED4
thumb_func_start FUN_02015F10
FUN_02015F10: ; 0x02015F10
@@ -45263,7 +45263,7 @@ FUN_02015F80: ; 0x02015F80
bne _02015F9E
ldr r0, [r2, #0x8]
mov r0, #0x2
- blx FUN_020C9E14
+ blx OS_DisableIrqMask
mov r0, #0x0
blx FUN_020C5AF8
b _02015FB4
@@ -45271,9 +45271,9 @@ _02015F9E:
ldr r0, [r2, #0x8]
ldr r1, _02015FC4 ; =FUN_02015F6C
mov r0, #0x2
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x2
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
mov r0, #0x1
blx FUN_020C5AF8
_02015FB4:
@@ -45284,14 +45284,14 @@ _02015FB4:
pop {r3, pc}
nop
_02015FC0: .word 0x04000208
-_02015FC4: .word FUN_02015F6C + 1
+_02015FC4: .word FUN_02015F6C
thumb_func_start FUN_02015FC8
FUN_02015FC8: ; 0x02015FC8
push {r3, lr}
sub sp, #0x30
add r0, sp, #0x10
- blx FUN_020CD754
+ blx OS_GetLowEntropyData
add r0, sp, #0x0
add r1, sp, #0x10
mov r2, #0x20
@@ -45327,10 +45327,10 @@ _02016002:
.balign 4
_02016010: .word 0x020EDB10
- thumb_func_start FUN_02016014
-FUN_02016014: ; 0x02016014
+ thumb_func_start InitSystemForTheGame
+InitSystemForTheGame: ; 0x02016014
push {r3-r5, lr}
- blx FUN_020CC1B4
+ blx OS_Init
blx FUN_020C5974
ldr r2, _02016124 ; =0x04000304
ldr r0, _02016128 ; =0xFFFFFDF1
@@ -45340,14 +45340,14 @@ FUN_02016014: ; 0x02016014
orr r0, r1
strh r0, [r2, #0x0]
blx FUN_020C5B28
- blx FUN_020CCD64
+ blx OS_InitTick
bl FUN_02015FC8
mov r0, #0xa0
bl FUN_0201B578
add r1, r0, #0x0
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
add r1, r0, #0x0
mov r0, #0xa0
bl FUN_0201B580
@@ -45358,7 +45358,7 @@ FUN_02016014: ; 0x02016014
add r1, r0, #0x0
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
add r1, r0, #0x0
mov r0, #0x10
bl FUN_0201B580
@@ -45369,7 +45369,7 @@ FUN_02016014: ; 0x02016014
add r1, r0, #0x0
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
add r1, r0, #0x0
mov r0, #0x20
bl FUN_0201B580
@@ -45380,7 +45380,7 @@ FUN_02016014: ; 0x02016014
add r1, r0, #0x0
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
add r1, r0, #0x0
mov r0, #0x4
bl FUN_0201B580
@@ -45399,35 +45399,35 @@ FUN_02016014: ; 0x02016014
strh r0, [r2, #0x0]
ldr r1, _0201613C ; =FUN_02015EA0
mov r0, #0x1
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x1
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
mov r0, #0x1
lsl r0, r0, #0x12
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
ldr r1, _02016140 ; =0x04000208
ldrh r0, [r1, #0x0]
mov r0, #0x1
strh r0, [r1, #0x0]
blx FUN_020C5AC8
mov r0, #0x1
- blx FUN_020D1CD4
+ blx FS_Init
bl FUN_02022450
mov r0, #0x0
add r1, r0, #0x0
- blx FUN_020D1D10
+ blx FS_TryLoadTable
add r4, r0, #0x0
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
add r5, r0, #0x0
bne _02016108
- bl FUN_02020C2C
+ bl ErrorHandling
_02016108:
add r0, r5, #0x0
add r1, r4, #0x0
- blx FUN_020D1D10
+ blx FS_TryLoadTable
ldr r0, _02016130 ; =0x021C48B8
mov r1, #0x0
str r1, [r0, #0x0]
@@ -45445,12 +45445,12 @@ _0201612C: .word 0x0000020E
_02016130: .word 0x021C48B8
_02016134: .word 0x04001000
_02016138: .word 0xFFFEFFFF
-_0201613C: .word FUN_02015EA0 + 1
+_0201613C: .word FUN_02015EA0
_02016140: .word 0x04000208
_02016144: .word 0x021C4918
- thumb_func_start FUN_02016148
-FUN_02016148: ; 0x02016148
+ thumb_func_start InitGraphicMemory
+InitGraphicMemory: ; 0x02016148
push {r3, lr}
ldr r0, _02016198 ; =0x000001FF
blx FUN_020C63A8
@@ -45459,30 +45459,30 @@ FUN_02016148: ; 0x02016148
mov r0, #0x0
lsl r1, r1, #0x16
lsl r2, r2, #0xe
- blx FUN_020CE240
+ blx MIi_CpuClearFast
blx FUN_020C5E54
mov r1, #0x7
mov r2, #0x1
mov r0, #0xc0
lsl r1, r1, #0x18
lsl r2, r2, #0xa
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r2, #0x1
ldr r1, _0201619C ; =0x07000400
mov r0, #0xc0
lsl r2, r2, #0xa
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r1, #0x5
mov r2, #0x1
mov r0, #0x0
lsl r1, r1, #0x18
lsl r2, r2, #0xa
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r2, #0x1
ldr r1, _020161A0 ; =0x05000400
mov r0, #0x0
lsl r2, r2, #0xa
- blx FUN_020CE240
+ blx MIi_CpuClearFast
pop {r3, pc}
.balign 4
_02016198: .word 0x000001FF
@@ -45496,10 +45496,10 @@ FUN_020161A4: ; 0x020161A4
add r6, r0, #0x0
add r4, r1, #0x0
add r0, sp, #0x0
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x0
add r1, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
cmp r0, #0x0
beq _020161F0
ldr r1, [sp, #0x28]
@@ -45513,7 +45513,7 @@ FUN_020161A4: ; 0x020161A4
add r0, sp, #0x0
add r1, r4, #0x0
add r2, r5, #0x0
- blx FUN_020D180C
+ blx FS_ReadFile
cmp r5, r0
beq _020161E8
add r0, r6, #0x0
@@ -45522,7 +45522,7 @@ FUN_020161A4: ; 0x020161A4
mov r4, #0x0
_020161E8:
add r0, sp, #0x0
- blx FUN_020D18FC
+ blx FS_CloseFile
b _020161F2
_020161F0:
mov r4, #0x0
@@ -45538,10 +45538,10 @@ FUN_020161F8: ; 0x020161F8
add r5, r0, #0x0
add r0, sp, #0x0
add r4, r1, #0x0
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x0
add r1, r5, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
cmp r0, #0x0
beq _0201622A
ldr r1, [sp, #0x28]
@@ -45551,10 +45551,10 @@ FUN_020161F8: ; 0x020161F8
cmp r1, #0x0
beq _02016224
add r0, sp, #0x0
- blx FUN_020D180C
+ blx FS_ReadFile
_02016224:
add r0, sp, #0x0
- blx FUN_020D18FC
+ blx FS_CloseFile
_0201622A:
add sp, #0x48
pop {r3-r5, pc}
@@ -45734,10 +45734,10 @@ _02016346:
b _020163B2
_02016362:
add r0, sp, #0x20
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x20
add r1, sp, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
cmp r0, #0x0
beq _020163B0
ldr r1, [sp, #0x48]
@@ -45751,7 +45751,7 @@ _02016362:
add r0, sp, #0x20
add r1, r4, #0x0
add r2, r6, #0x0
- blx FUN_020D180C
+ blx FS_ReadFile
cmp r6, r0
beq _0201639C
add r0, r4, #0x0
@@ -45759,7 +45759,7 @@ _02016362:
mov r4, #0x0
_0201639C:
add r0, sp, #0x20
- blx FUN_020D18FC
+ blx FS_CloseFile
cmp r5, #0x0
bne _020163B2
add r0, r4, #0x0
@@ -45800,13 +45800,13 @@ FUN_020163BC: ; 0x020163BC
strh r2, [r0, #0x22]
ldr r0, _02016424 ; =0x021C4918
strb r2, [r0, #0x4]
- blx FUN_020D40B8
+ blx TP_Init
add r0, sp, #0x0
- blx FUN_020D400C
+ blx TP_GetUserInfo
cmp r0, #0x1
add r0, sp, #0x0
bne _02016402
- blx FUN_020D3EC4
+ blx TP_SetCalibrateParam
add sp, #0x8
pop {r3, pc}
_02016402:
@@ -45819,7 +45819,7 @@ _02016402:
ldr r1, _02016434 ; =0x00001208
strh r1, [r0, #0x6]
add r0, sp, #0x0
- blx FUN_020D3EC4
+ blx TP_SetCalibrateParam
add sp, #0x8
pop {r3, pc}
.balign 4
@@ -45929,19 +45929,19 @@ _020164C8:
bne _020164F4
add r4, sp, #0x8
_020164E4:
- blx FUN_020D3E24
+ blx TP_RequestSamplingAsync
add r0, r4, #0x0
- blx FUN_020D3DCC
+ blx TP_WaitRawResult
cmp r0, #0x0
bne _020164E4
b _020164FA
_020164F4:
add r0, sp, #0x8
- blx FUN_020D3AA0
+ blx TP_GetLatestRawPointInAuto
_020164FA:
add r0, sp, #0x0
add r1, sp, #0x8
- blx FUN_020D36F0
+ blx TP_GetCalibratedPoint
add r1, sp, #0x0
ldrh r3, [r1, #0x6]
cmp r3, #0x0
@@ -46224,7 +46224,7 @@ _020166F4:
mov r0, #0x0
add r1, r3, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
_020166FE:
ldr r1, [sp, #0x4]
lsl r7, r6, #0x1
@@ -46236,7 +46236,7 @@ _020166FE:
mov r0, #0x0
add r1, r6, r1
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
ldr r1, _020167F0 ; =0x021C4D28
str r0, [r1, #0x0]
ldr r1, [sp, #0x4]
@@ -46277,13 +46277,13 @@ _0201675C:
ldr r1, [r5, #0x0]
mov r0, #0x0
mov r2, #0x4
- blx FUN_020CC26C
+ blx OS_AllocFromArenaLo
b _02016772
_02016768:
ldr r1, [r5, #0x0]
mov r0, #0x2
mov r2, #0x4
- blx FUN_020CC204
+ blx OS_AllocFromArenaHi
_02016772:
cmp r0, #0x0
beq _0201678E
@@ -46299,7 +46299,7 @@ _02016772:
strb r7, [r0, r7]
b _02016792
_0201678E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02016792:
ldr r0, [sp, #0x0]
add r7, r7, #0x1
@@ -46407,10 +46407,10 @@ FUN_02016834: ; 0x02016834
add r5, r1, #0x0
str r2, [sp, #0x0]
add r7, r3, #0x0
- blx FUN_020CD374
+ blx OS_GetProcMode
cmp r0, #0x12
bne _0201684C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201684C:
ldr r1, _020168CC ; =0x021C4D28
ldr r0, [r1, #0x10]
@@ -46457,19 +46457,19 @@ _0201684C:
mov r0, #0x1
pop {r3-r7, pc}
_020168AA:
- bl FUN_02020C2C
+ bl ErrorHandling
b _020168C6
_020168B0:
- bl FUN_02020C2C
+ bl ErrorHandling
b _020168C6
_020168B6:
- bl FUN_02020C2C
+ bl ErrorHandling
b _020168C6
_020168BC:
- bl FUN_02020C2C
+ bl ErrorHandling
b _020168C6
_020168C2:
- bl FUN_02020C2C
+ bl ErrorHandling
_020168C6:
mov r0, #0x0
add sp, #0x8
@@ -46481,10 +46481,10 @@ _020168CC: .word 0x021C4D28
FUN_020168D0: ; 0x020168D0
push {r4, lr}
add r4, r0, #0x0
- blx FUN_020CD374
+ blx OS_GetProcMode
cmp r0, #0x12
bne _020168E0
- bl FUN_02020C2C
+ bl ErrorHandling
_020168E0:
ldr r0, _02016940 ; =0x021C4D28
ldr r1, [r0, #0x0]
@@ -46510,7 +46510,7 @@ _020168E0:
blx FUN_020ADDF0
b _02016916
_02016912:
- bl FUN_02020C2C
+ bl ErrorHandling
_02016916:
ldr r1, _02016940 ; =0x021C4D28
mov r0, #0x0
@@ -46546,9 +46546,9 @@ FUN_02016944: ; 0x02016944
add r6, r3, #0x0
cmp r5, #0x0
bne _02016956
- bl FUN_02020C2C
+ bl ErrorHandling
_02016956:
- blx FUN_020CD310
+ blx OS_DisableInterrupts
add r4, #0x10
str r0, [sp, #0x0]
add r0, r5, #0x0
@@ -46557,7 +46557,7 @@ _02016956:
blx FUN_020ADFA0
add r4, r0, #0x0
ldr r0, [sp, #0x0]
- blx FUN_020CD324
+ blx OS_RestoreInterrupts
cmp r4, #0x0
beq _02016984
ldr r1, [r4, #0xc]
@@ -46673,7 +46673,7 @@ FUN_02016A18: ; 0x02016A18
ldr r7, [r1, r0]
cmp r7, #0x0
bne _02016A3E
- bl FUN_02020C2C
+ bl ErrorHandling
_02016A3E:
ldr r0, _02016A88 ; =0x021C4D28
lsl r5, r4, #0x1
@@ -46689,24 +46689,24 @@ _02016A50:
ldrh r0, [r0, r5]
cmp r0, #0x0
bne _02016A5E
- bl FUN_02020C2C
+ bl ErrorHandling
_02016A5E:
ldr r0, _02016A88 ; =0x021C4D28
ldr r1, [r0, #0xc]
ldrh r0, [r1, r5]
sub r0, r0, #0x1
strh r0, [r1, r5]
- blx FUN_020CD310
+ blx OS_DisableInterrupts
sub r6, #0x10
add r4, r0, #0x0
add r0, r7, #0x0
add r1, r6, #0x0
blx FUN_020ADDF0
add r0, r4, #0x0
- blx FUN_020CD324
+ blx OS_RestoreInterrupts
pop {r3-r7, pc}
_02016A80:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
nop
_02016A88: .word 0x021C4D28
@@ -46716,10 +46716,10 @@ FUN_02016A8C: ; 0x02016A8C
push {r4-r6, lr}
add r5, r0, #0x0
add r4, r1, #0x0
- blx FUN_020CD374
+ blx OS_GetProcMode
cmp r0, #0x12
bne _02016A9E
- bl FUN_02020C2C
+ bl ErrorHandling
_02016A9E:
ldr r0, _02016AF4 ; =0x021C4D28
ldrh r1, [r0, #0x14]
@@ -46732,7 +46732,7 @@ _02016A9E:
ldr r6, [r1, r0]
cmp r6, #0x0
bne _02016AB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02016AB8:
sub r0, r4, #0x4
ldr r0, [r0, #0x0]
@@ -46740,7 +46740,7 @@ _02016AB8:
lsr r0, r0, #0x18
cmp r0, r5
beq _02016AC8
- bl FUN_02020C2C
+ bl ErrorHandling
_02016AC8:
sub r4, #0x10
add r0, r6, #0x0
@@ -46752,7 +46752,7 @@ _02016AC8:
ldrh r0, [r0, r4]
cmp r0, #0x0
bne _02016AE2
- bl FUN_02020C2C
+ bl ErrorHandling
_02016AE2:
ldr r0, _02016AF4 ; =0x021C4D28
ldr r1, [r0, #0xc]
@@ -46761,7 +46761,7 @@ _02016AE2:
strh r0, [r1, r4]
pop {r4-r6, pc}
_02016AEE:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
.balign 4
_02016AF4: .word 0x021C4D28
@@ -46781,7 +46781,7 @@ FUN_02016AF8: ; 0x02016AF8
blx FUN_020ADDC8
pop {r3, pc}
_02016B12:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
nop
@@ -46802,7 +46802,7 @@ FUN_02016B20: ; 0x02016B20
blx FUN_020AE82C
pop {r4, pc}
_02016B3A:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
.balign 4
_02016B40: .word 0x021C4D28
@@ -46812,10 +46812,10 @@ FUN_02016B44: ; 0x02016B44
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
- blx FUN_020CD374
+ blx OS_GetProcMode
cmp r0, #0x12
bne _02016B56
- bl FUN_02020C2C
+ bl ErrorHandling
_02016B56:
add r0, r5, #0x0
sub r0, #0x10
@@ -46839,7 +46839,7 @@ _02016B56:
blx FUN_020ADE2C
pop {r3-r5, pc}
_02016B84:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
nop
_02016B8C: .word 0x021C4D28
@@ -47510,7 +47510,7 @@ _0201705A:
ldr r1, [r6, r5]
ldr r2, [r4, #0x8]
mov r0, #0x0
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
ldr r0, [sp, #0x0]
ldr r2, [r4, #0x8]
add r1, r0, r5
@@ -49172,7 +49172,7 @@ FUN_02017C98: ; 0x02017C98
push {r3-r5, lr}
cmp r2, #0x0
bne _02017CA4
- blx FUN_020CE528
+ blx MI_UncompressLZ8
pop {r3-r5, pc}
_02017CA4:
mov r4, #0x3
@@ -49191,10 +49191,10 @@ _02017CA4:
ror r5, r3
add r3, r4, r5
bne _02017CCA
- blx FUN_020CE210
+ blx MIi_CpuCopy32
pop {r3-r5, pc}
_02017CCA:
- blx FUN_020CE1E0
+ blx MIi_CpuCopy16
pop {r3-r5, pc}
thumb_func_start FUN_02017CD0
@@ -49282,7 +49282,7 @@ FUN_02017D68: ; 0x02017D68
add r0, r4, #0x0
add r1, r6, #0x0
add r5, r2, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
cmp r7, #0x7
bhi _02017DF8
add r0, r7, r7
@@ -49431,7 +49431,7 @@ FUN_02017E84: ; 0x02017E84
add r0, r4, #0x0
add r1, r6, #0x0
add r5, r2, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
cmp r7, #0x7
bhi _02017F14
add r0, r7, r7
@@ -49564,7 +49564,7 @@ _02017F8C:
ldr r1, [sp, #0x4]
ldr r2, [sp, #0x0]
add r0, r5, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
lsl r0, r7, #0x18
ldrb r2, [r4, r6]
ldr r3, [sp, #0x20]
@@ -49587,7 +49587,7 @@ FUN_02017FB4: ; 0x02017FB4
add r0, r5, #0x0
add r1, r4, #0x0
add r7, r3, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
cmp r6, #0x4
bhs _02017FD6
add r0, r5, #0x0
@@ -50632,7 +50632,7 @@ FUN_02018744: ; 0x02018744
beq _02018766
ldr r2, [r2, #0xc]
mov r0, #0x0
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02017CD0
@@ -50652,7 +50652,7 @@ FUN_02018768: ; 0x02018768
beq _0201878A
add r0, r2, #0x0
ldr r2, [r3, #0xc]
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02017CD0
@@ -50672,7 +50672,7 @@ FUN_0201878C: ; 0x0201878C
beq _020187AE
add r0, r2, #0x0
ldr r2, [r3, #0xc]
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_0201AC68
@@ -52092,17 +52092,17 @@ FUN_020191D0: ; 0x020191D0
push {r4, lr}
add r4, r0, #0x0
bne _020191DA
- bl FUN_02020C2C
+ bl ErrorHandling
_020191DA:
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _020191E4
- bl FUN_02020C2C
+ bl ErrorHandling
_020191E4:
ldrb r0, [r4, #0x4]
cmp r0, #0x8
blo _020191EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020191EE:
ldrb r1, [r4, #0x4]
mov r0, #0x2c
@@ -52112,7 +52112,7 @@ _020191EE:
ldrb r0, [r0, #0x1c]
cmp r0, #0x3
blo _02019202
- bl FUN_02020C2C
+ bl ErrorHandling
_02019202:
ldrb r2, [r4, #0x4]
mov r1, #0x2c
@@ -52134,17 +52134,17 @@ FUN_02019220: ; 0x02019220
push {r4, lr}
add r4, r0, #0x0
bne _0201922A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201922A:
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02019234
- bl FUN_02020C2C
+ bl ErrorHandling
_02019234:
ldrb r0, [r4, #0x4]
cmp r0, #0x8
blo _0201923E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201923E:
ldrb r1, [r4, #0x4]
mov r0, #0x2c
@@ -52154,7 +52154,7 @@ _0201923E:
ldrb r0, [r0, #0x1c]
cmp r0, #0x3
blo _02019252
- bl FUN_02020C2C
+ bl ErrorHandling
_02019252:
ldrb r2, [r4, #0x4]
mov r1, #0x2c
@@ -52718,7 +52718,7 @@ _0201963C:
ldrb r4, [r4, #0x7]
mul r2, r4
mul r2, r3
- blx FUN_020CE240
+ blx MIi_CpuClearFast
pop {r3-r5, pc}
thumb_func_start FUN_02019658
@@ -56471,7 +56471,7 @@ FUN_0201B1A8: ; 0x0201B1A8
bne _0201B1D2
ldr r0, [r5, #0x0]
ldr r1, [r0, #0x8]
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [r5, #0x0]
blx FUN_020BB59C
_0201B1D2:
@@ -56498,7 +56498,7 @@ FUN_0201B1E4: ; 0x0201B1E4
bne _0201B20A
ldr r0, [r5, #0x0]
ldr r1, [r0, #0x8]
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [r5, #0x0]
blx FUN_020BB59C
_0201B20A:
@@ -56534,7 +56534,7 @@ FUN_0201B234: ; 0x0201B234
bl FUN_0201B1E4
cmp r4, #0x0
bne _0201B24A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B24A:
ldr r1, [r4, #0x0]
add r0, r5, #0x0
@@ -56568,7 +56568,7 @@ FUN_0201B26C: ; 0x0201B26C
blx FUN_020B8474
ldr r1, _0201B2A0 ; =0x021CEDD4
add r0, r4, #0x0
- blx FUN_020CE2E0
+ blx MI_Copy36B
ldr r1, _0201B2A4 ; =0x021CED98
mov r0, #0xa4
ldr r2, [r1, #0x7c]
@@ -56594,7 +56594,7 @@ FUN_0201B2A8: ; 0x0201B2A8
blx FUN_020B8474
ldr r1, _0201B2E4 ; =0x021CEDD4
add r0, r4, #0x0
- blx FUN_020CE2E0
+ blx MI_Copy36B
ldr r1, _0201B2E8 ; =0x021CED98
mov r0, #0xa4
ldr r2, [r1, #0x7c]
@@ -56631,7 +56631,7 @@ FUN_0201B2EC: ; 0x0201B2EC
add sp, #0x8
pop {r3, pc}
nop
-_0201B30C: .word FUN_0201B314 + 1
+_0201B30C: .word FUN_0201B314
_0201B310: .word 0x021C4D44
thumb_func_start FUN_0201B314
@@ -56703,7 +56703,7 @@ FUN_0201B398: ; 0x0201B398
bx r3
.balign 4
_0201B3A0: .word 0x021C4D44
-_0201B3A4: .word FUN_020223BC + 1
+_0201B3A4: .word FUN_020223BC
thumb_func_start FUN_0201B3A8
FUN_0201B3A8: ; 0x0201B3A8
@@ -56807,7 +56807,7 @@ _0201B452:
blx r1
cmp r0, #0x0
beq _0201B468
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B468:
add sp, #0x10
mov r0, #0x0
@@ -56822,7 +56822,7 @@ _0201B46E:
blx r1
cmp r0, #0x0
beq _0201B484
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B484:
add sp, #0x10
mov r0, #0x0
@@ -56837,7 +56837,7 @@ _0201B48A:
blx r1
cmp r0, #0x0
beq _0201B4A0
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B4A0:
add sp, #0x10
mov r0, #0x0
@@ -56852,7 +56852,7 @@ _0201B4A6:
blx FUN_020B7CDC
ldr r1, [r5, #0x4]
add r0, r5, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
add r0, r5, #0x0
mov r1, #0x1
blx FUN_020B7D28
@@ -56969,7 +56969,7 @@ FUN_0201B580: ; 0x0201B580
add r5, r0, #0x0
add r4, r1, #0x0
bne _0201B58C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B58C:
add r1, r4, #0x0
add r1, #0x34
@@ -57204,7 +57204,7 @@ FUN_0201B6D0: ; 0x0201B6D0
blx FUN_020B8474
ldr r1, _0201B764 ; =0x021CEDD4
add r0, r5, #0x0
- blx FUN_020CE2E0
+ blx MI_Copy36B
ldr r1, _0201B768 ; =0x021CED98
mov r0, #0xa4
ldr r2, [r1, #0x7c]
@@ -57416,7 +57416,7 @@ FUN_0201B8B8: ; 0x0201B8B8
ldr r0, _0201B8DC ; =0x0000FFFE
cmp r1, r0
beq _0201B8C8
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B8C8:
ldrh r1, [r4, #0x0]
ldr r0, _0201B8DC ; =0x0000FFFE
@@ -57440,7 +57440,7 @@ FUN_0201B8E0: ; 0x0201B8E0
ldr r0, _0201B8F4 ; =0x0000FFFE
cmp r1, r0
beq _0201B8F0
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B8F0:
ldrh r0, [r4, #0x2]
pop {r4, pc}
@@ -57473,12 +57473,12 @@ FUN_0201B914: ; 0x0201B914
ldr r0, _0201B938 ; =0x0000FFFE
cmp r1, r0
beq _0201B926
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B926:
ldrh r0, [r5, #0x4]
cmp r4, r0
blo _0201B930
- bl FUN_02020C2C
+ bl ErrorHandling
_0201B930:
lsl r0, r4, #0x1
add r0, r5, r0
@@ -57525,7 +57525,7 @@ FUN_0201B970: ; 0x0201B970
push {r3, lr}
mov r1, #0x5a
lsl r1, r1, #0x2
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r0, _0201B984 ; =0x020EDF50
lsl r1, r1, #0x2
ldr r0, [r0, r1]
@@ -57538,7 +57538,7 @@ FUN_0201B988: ; 0x0201B988
push {r3, lr}
mov r1, #0x5a
lsl r1, r1, #0x2
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, #0x5a
ldr r0, _0201B99C ; =0x020EDF50
lsl r1, r1, #0x2
@@ -57552,7 +57552,7 @@ FUN_0201B9A0: ; 0x0201B9A0
push {r3, lr}
mov r1, #0x5a
lsl r1, r1, #0x2
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r0, _0201B9B4 ; =0x020EDC7E
lsl r1, r1, #0x1
ldrh r0, [r0, r1]
@@ -57567,7 +57567,7 @@ FUN_0201B9B8: ; 0x0201B9B8
mov r1, #0x5a
lsr r0, r0, #0x10
lsl r1, r1, #0x2
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r0, _0201B9D0 ; =0x020EDF50
lsl r1, r1, #0x2
ldr r0, [r0, r1]
@@ -57944,7 +57944,7 @@ FUN_0201BC84: ; 0x0201BC84
lsr r2, r2, #0xc
orr r2, r1
asr r1, r2, #0xc
- blx FUN_020EBC80
+ blx _s32_div_f
pop {r3-r5, pc}
nop
_0201BCB4: .word 0x0000323D
@@ -57994,14 +57994,14 @@ FUN_0201BCFC: ; 0x0201BCFC
add r5, r0, #0x0
cmp r5, #0x8
blo _0201BD08
- bl FUN_02020C2C
+ bl ErrorHandling
_0201BD08:
ldr r6, _0201BD40 ; =0x021C5714
lsl r4, r5, #0x2
ldr r0, [r6, r4]
cmp r0, #0x0
bne _0201BD16
- bl FUN_02020C2C
+ bl ErrorHandling
_0201BD16:
cmp r5, #0x8
bhs _0201BD3C
@@ -58066,7 +58066,7 @@ FUN_0201BD7C: ; 0x0201BD7C
ldr r3, _0201BD80 ; =FUN_0201BCFC
bx r3
.balign 4
-_0201BD80: .word FUN_0201BCFC + 1
+_0201BD80: .word FUN_0201BCFC
thumb_func_start FUN_0201BD84
FUN_0201BD84: ; 0x0201BD84
@@ -58366,7 +58366,7 @@ _0201BFBE:
nop
_0201BFD0: .word 0x02105BB4
_0201BFD4: .word 0x021C570C
-_0201BFD8: .word FUN_0201BFDC + 1
+_0201BFD8: .word FUN_0201BFDC
thumb_func_start FUN_0201BFDC
FUN_0201BFDC: ; 0x0201BFDC
@@ -58642,7 +58642,7 @@ FUN_0201C1B0: ; 0x0201C1B0
ldr r0, [r0, #0x14]
add r1, r5, #0x0
lsl r2, r2, #0x8
- blx FUN_020CE210
+ blx MIi_CpuCopy32
add r0, r4, #0x0
bl FUN_02016A18
add r0, r5, #0x0
@@ -58711,7 +58711,7 @@ FUN_0201C24C: ; 0x0201C24C
ldr r0, [r0, #0x0]
cmp r0, #0x0
beq _0201C25E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201C25E:
add r0, r4, #0x0
mov r1, #0xc
@@ -58720,7 +58720,7 @@ _0201C25E:
cmp r0, #0x0
str r0, [r1, #0x0]
bne _0201C272
- bl FUN_02020C2C
+ bl ErrorHandling
_0201C272:
add r0, r4, #0x0
lsl r1, r5, #0x4
@@ -58748,7 +58748,7 @@ FUN_0201C29C: ; 0x0201C29C
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0201C2AA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201C2AA:
ldr r0, _0201C2C4 ; =0x021C5934
ldr r0, [r0, #0x0]
@@ -58775,7 +58775,7 @@ FUN_0201C2C8: ; 0x0201C2C8
add r7, r3, #0x0
cmp r0, #0x0
bne _0201C2DE
- bl FUN_02020C2C
+ bl ErrorHandling
_0201C2DE:
ldr r1, _0201C308 ; =0x021C5934
ldr r0, [r1, #0x0]
@@ -58787,7 +58787,7 @@ _0201C2DE:
ldr r0, [r0, #0x0]
cmp r1, r0
blo _0201C2FA
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0201C2FA:
@@ -58832,7 +58832,7 @@ FUN_0201C328: ; 0x0201C328
add r0, r5, #0x0
pop {r3-r5, pc}
.balign 4
-_0201C344: .word FUN_0201C358 + 1
+_0201C344: .word FUN_0201C358
thumb_func_start FUN_0201C348
FUN_0201C348: ; 0x0201C348
@@ -58846,7 +58846,7 @@ FUN_0201C350: ; 0x0201C350
ldr r3, _0201C354 ; =FUN_02016A18
bx r3
.balign 4
-_0201C354: .word FUN_02016A18 + 1
+_0201C354: .word FUN_02016A18
thumb_func_start FUN_0201C358
FUN_0201C358: ; 0x0201C358
@@ -58953,7 +58953,7 @@ FUN_0201C40C: ; 0x0201C40C
ldr r3, _0201C410 ; =FUN_0201C444
bx r3
.balign 4
-_0201C410: .word FUN_0201C444 + 1
+_0201C410: .word FUN_0201C444
thumb_func_start FUN_0201C414
FUN_0201C414: ; 0x0201C414
@@ -58984,7 +58984,7 @@ FUN_0201C438: ; 0x0201C438
lsr r1, r1, #0x10
bx r3
.balign 4
-_0201C440: .word FUN_0201C454 + 1
+_0201C440: .word FUN_0201C454
thumb_func_start FUN_0201C444
FUN_0201C444: ; 0x0201C444
@@ -60061,7 +60061,7 @@ FUN_0201CC08: ; 0x0201CC08
ldrh r0, [r0, #0x1a]
cmp r0, #0x0
beq _0201CC16
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CC16:
ldr r0, _0201CC20 ; =0x021C5978
mov r1, #0x0
@@ -60080,7 +60080,7 @@ FUN_0201CC24: ; 0x0201CC24
ldrh r0, [r0, #0x1a]
cmp r0, #0x0
beq _0201CC36
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CC36:
cmp r4, #0x5
bhs _0201CC3E
@@ -60171,11 +60171,11 @@ _0201CCD0:
mov r4, #0x4
add r6, r4, #0x0
_0201CCD4:
- blx FUN_020D3C14
+ blx TP_RequestAutoSamplingStopAsync
add r0, r4, #0x0
- blx FUN_020D36D8
+ blx TP_WaitBusy
add r0, r6, #0x0
- blx FUN_020D36C4
+ blx TP_CheckError
cmp r0, #0x0
beq _0201CCEA
add r5, r5, #0x1
@@ -60203,7 +60203,7 @@ FUN_0201CD04: ; 0x0201CD04
ldrh r0, [r0, #0x1a]
cmp r0, #0x0
beq _0201CD14
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CD14:
bl FUN_0201CCC0
add r4, r0, #0x0
@@ -60234,13 +60234,13 @@ FUN_0201CD38: ; 0x0201CD38
mov r5, #0x3
cmp r0, #0x0
beq _0201CD4E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CD4E:
ldr r0, _0201CD8C ; =0x021C5978
ldrh r0, [r0, #0x18]
cmp r0, #0x0
beq _0201CD88
- blx FUN_020D3A90
+ blx TP_GetLatestIndexInAuto
add r5, r0, #0x0
ldr r0, _0201CD90 ; =0x021C5944
mov r1, #0x9
@@ -60284,7 +60284,7 @@ FUN_0201CD94: ; 0x0201CD94
_0201CDA6:
add r0, sp, #0x4
add r1, r5, #0x0
- blx FUN_020D36F0
+ blx TP_GetCalibratedPoint
ldrh r0, [r6, #0x0]
add r7, r7, #0x1
add r5, #0x8
@@ -60320,7 +60320,7 @@ FUN_0201CDD0: ; 0x0201CDD0
bl FUN_0201CE2C
cmp r0, #0x1
beq _0201CDF2
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CDF2:
ldr r0, _0201CDFC ; =0x021C5978
mov r1, #0x0
@@ -60344,7 +60344,7 @@ FUN_0201CE04: ; 0x0201CE04
bl FUN_0201CCC0
cmp r0, #0x1
beq _0201CE20
- bl FUN_02020C2C
+ bl ErrorHandling
_0201CE20:
ldr r0, _0201CE28 ; =0x021C5978
mov r1, #0x1
@@ -60367,11 +60367,11 @@ _0201CE38:
add r1, r4, #0x0
add r2, r7, #0x0
mov r3, #0x9
- blx FUN_020D3CB8
+ blx TP_RequestAutoSamplingStartAsync
mov r0, #0x2
- blx FUN_020D36D8
+ blx TP_WaitBusy
mov r0, #0x2
- blx FUN_020D36C4
+ blx TP_CheckError
cmp r0, #0x0
beq _0201CE56
add r5, r5, #0x1
@@ -60664,7 +60664,7 @@ FUN_0201D040: ; 0x0201D040
nop
_0201D054: .word 0x04001000
_0201D058: .word 0x00300010
-_0201D05C: .word FUN_0201D060 + 1
+_0201D05C: .word FUN_0201D060
thumb_func_start FUN_0201D060
FUN_0201D060: ; 0x0201D060
@@ -60685,7 +60685,7 @@ FUN_0201D060: ; 0x0201D060
mov r2, #0x3c
str r1, [r0, #0x0]
mov r0, #0x0
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r1, _0201D120 ; =0x021C5994
ldr r2, [r5, #0x0]
ldr r0, [r1, #0x0]
@@ -60871,12 +60871,12 @@ FUN_0201D1F8: ; 0x0201D1F8
bl FUN_0201D2AC
cmp r0, #0x1
bne _0201D20A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D20A:
bl FUN_0201DAAC
add r4, r0, #0x0
bne _0201D21A
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201D21A:
@@ -60915,12 +60915,12 @@ FUN_0201D250: ; 0x0201D250
bl FUN_0201D2AC
cmp r0, #0x1
bne _0201D262
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D262:
bl FUN_0201DAAC
add r4, r0, #0x0
bne _0201D272
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201D272:
@@ -60989,13 +60989,13 @@ FUN_0201D2DC: ; 0x0201D2DC
add r4, r0, #0x0
add r5, r1, #0x0
bne _0201D2E8
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D2E8:
add r0, r4, #0x0
bl FUN_0201D7F8
add r4, r0, #0x0
bne _0201D2F6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D2F6:
str r5, [r4, #0x0]
ldr r1, [r4, #0x4]
@@ -61032,7 +61032,7 @@ _0201D32C:
bl FUN_0201D7F8
add r4, r0, #0x0
bne _0201D33A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D33A:
add r0, r4, #0x0
add r0, #0x3c
@@ -61106,7 +61106,7 @@ FUN_0201D3B0: ; 0x0201D3B0
bl FUN_0201D7F8
add r4, r0, #0x0
bne _0201D3BE
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D3BE:
add r0, r4, #0x0
add r0, #0x3c
@@ -61129,7 +61129,7 @@ FUN_0201D3D4: ; 0x0201D3D4
bl FUN_0201D7F8
add r4, r0, #0x0
bne _0201D3E6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D3E6:
add r0, r4, #0x0
add r0, #0x3c
@@ -61194,12 +61194,12 @@ FUN_0201D458: ; 0x0201D458
bl FUN_0201D6D8
add r4, r0, #0x0
bne _0201D468
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D468:
bl FUN_0201DAAC
add r5, r0, #0x0
bne _0201D474
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D474:
add r0, r4, #0x0
add r0, #0x3c
@@ -61459,7 +61459,7 @@ FUN_0201D658: ; 0x0201D658
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0201D666
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D666:
ldr r1, _0201D670 ; =0x021C5994
mov r2, #0x0
@@ -61477,7 +61477,7 @@ FUN_0201D674: ; 0x0201D674
ldr r0, [r0, #0x0]
cmp r0, #0x0
beq _0201D684
- bl FUN_02020C2C
+ bl ErrorHandling
_0201D684:
ldr r0, _0201D68C ; =0x021C5994
str r4, [r0, #0x0]
@@ -61786,7 +61786,7 @@ FUN_0201D86C: ; 0x0201D86C
str r0, [r4, #0x0]
cmp r0, r1
bne _0201D8B8
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0201D8B8:
@@ -61820,7 +61820,7 @@ _0201D8C4:
str r0, [r6, #0x0]
cmp r0, r1
bne _0201D902
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0201D902:
@@ -62254,7 +62254,7 @@ _0201DBD6:
_0201DC12:
cmp r2, #0x0
bne _0201DC1A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201DC1A:
ldr r0, _0201DC38 ; =0x021C5994
mov r2, #0x0
@@ -62269,7 +62269,7 @@ _0201DC1A:
_0201DC2E:
cmp r2, #0x0
bne _0201DC36
- bl FUN_02020C2C
+ bl ErrorHandling
_0201DC36:
pop {r3, pc}
.balign 4
@@ -62424,7 +62424,7 @@ _0201DD32:
ldrb r1, [r4, r1]
tst r0, r1
beq _0201DD54
- bl FUN_02020C2C
+ bl ErrorHandling
_0201DD54:
add r2, sp, #0x0
ldrb r3, [r2, #0x0]
@@ -62542,7 +62542,7 @@ _0201DE0E:
ldrb r1, [r4, r1]
tst r0, r1
bne _0201DE2A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201DE2A:
ldrb r0, [r7, #0x0]
mov r1, #0x1
@@ -62671,7 +62671,7 @@ FUN_0201DF10: ; 0x0201DF10
add r5, r0, #0x0
add r4, r1, #0x0
add r6, r2, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x0
beq _0201DF28
sub r5, r5, r1
@@ -62687,11 +62687,11 @@ FUN_0201DF2C: ; 0x0201DF2C
asr r2, r0, #0x4
lsr r2, r2, #0x1b
add r2, r0, r2
- ldr r3, _0201DF38 ; =FUN_020EBC80
+ ldr r3, _0201DF38 ; =_s32_div_f
asr r0, r2, #0x5
bx r3
.balign 4
-_0201DF38: .word FUN_020EBC80
+_0201DF38: .word _s32_div_f
thumb_func_start FUN_0201DF3C
FUN_0201DF3C: ; 0x0201DF3C
@@ -62718,7 +62718,7 @@ FUN_0201DF44: ; 0x0201DF44
add r3, r6, r5
cmp r3, r2
bls _0201DF6C
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
b _0201DF6E
_0201DF6C:
@@ -62734,7 +62734,7 @@ _0201DF6E:
add r2, r3, r5
cmp r2, r1
bls _0201DF8A
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_0201DF8A:
@@ -62831,7 +62831,7 @@ FUN_0201E00C: ; 0x0201E00C
mov r2, #0x28
str r1, [r0, #0x0]
mov r0, #0x0
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r0, _0201E064 ; =0x021C5998
mov r1, #0x30
ldr r0, [r0, #0x0]
@@ -62939,7 +62939,7 @@ FUN_0201E0E4: ; 0x0201E0E4
bl FUN_0201E428
add r4, r0, #0x0
bne _0201E0F8
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201E0F8:
@@ -62973,7 +62973,7 @@ FUN_0201E128: ; 0x0201E128
bl FUN_0201E428
add r4, r0, #0x0
bne _0201E13C
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201E13C:
@@ -63005,13 +63005,13 @@ FUN_0201E168: ; 0x0201E168
add r4, r0, #0x0
add r5, r1, #0x0
bne _0201E174
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E174:
add r0, r4, #0x0
bl FUN_0201E3F0
add r4, r0, #0x0
bne _0201E182
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E182:
str r5, [r4, #0x0]
ldr r1, [r4, #0x4]
@@ -63058,7 +63058,7 @@ FUN_0201E1C8: ; 0x0201E1C8
bl FUN_0201E3F0
add r4, r0, #0x0
bne _0201E1D6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E1D6:
add r0, r4, #0x0
add r0, #0x2c
@@ -63115,7 +63115,7 @@ FUN_0201E230: ; 0x0201E230
cmp r0, #0x0
bne _0201E244
bne _0201E240
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E240:
mov r0, #0x0
pop {r3, pc}
@@ -63140,7 +63140,7 @@ FUN_0201E258: ; 0x0201E258
cmp r0, #0x0
bne _0201E26E
bne _0201E26A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E26A:
mov r0, #0x0
pop {r4, pc}
@@ -63197,7 +63197,7 @@ FUN_0201E2BC: ; 0x0201E2BC
ldr r3, _0201E2C0 ; =FUN_0201E2F8
bx r3
.balign 4
-_0201E2C0: .word FUN_0201E2F8 + 1
+_0201E2C0: .word FUN_0201E2F8
thumb_func_start FUN_0201E2C4
FUN_0201E2C4: ; 0x0201E2C4
@@ -63210,7 +63210,7 @@ FUN_0201E2C4: ; 0x0201E2C4
bl FUN_0201E1B4
cmp r0, #0x1
bne _0201E2E0
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201E2E0:
@@ -63295,7 +63295,7 @@ FUN_0201E36C: ; 0x0201E36C
ldr r0, [r0, #0x4]
cmp r0, #0x0
beq _0201E37C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201E37C:
ldr r1, [r5, #0x4]
mov r0, #0x1
@@ -63473,7 +63473,7 @@ FUN_0201E4AC: ; 0x0201E4AC
str r2, [r1, #0x8]
bx r3
.balign 4
-_0201E4B8: .word FUN_0201E4BC + 1
+_0201E4B8: .word FUN_0201E4BC
thumb_func_start FUN_0201E4BC
FUN_0201E4BC: ; 0x0201E4BC
@@ -63673,7 +63673,7 @@ FUN_0201E5F4: ; 0x0201E5F4
add r2, r1, r2
cmp r2, r3
bls _0201E618
- bl FUN_02020C2C
+ bl ErrorHandling
bl FUN_0201E0B8
mov r0, #0x0
b _0201E61A
@@ -63690,7 +63690,7 @@ _0201E61A:
ldr r1, [sp, #0x10]
cmp r2, r1
bls _0201E63A
- bl FUN_02020C2C
+ bl ErrorHandling
bl FUN_0201E0B8
mov r0, #0x0
pop {r3-r5, pc}
@@ -64243,7 +64243,7 @@ _0201EA5C:
ldr r0, [r7, #0x4]
ldr r1, [r1, #0x0]
add r0, r0, #0x1
- blx FUN_020EBC80
+ blx _s32_div_f
str r1, [r7, #0x4]
ldr r1, [sp, #0x0]
ldr r0, [r5, #0x64]
@@ -64262,7 +64262,7 @@ _0201EA5C:
ldr r0, [r0, #0x0]
ldr r1, [r1, #0x0]
add r0, r0, #0x1
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r0, [sp, #0x0]
str r1, [r0, #0x0]
ldr r0, [r5, #0x64]
@@ -64304,7 +64304,7 @@ FUN_0201EABC: ; 0x0201EABC
add r0, r7, #0x1
cmp r0, r5
ble _0201EADA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201EADA:
ldr r0, [sp, #0x0]
mov r1, #0x24
@@ -64388,14 +64388,14 @@ FUN_0201EB64: ; 0x0201EB64
mov r1, #0x68
bx r3
nop
-_0201EB6C: .word FUN_02016998 + 1
+_0201EB6C: .word FUN_02016998
thumb_func_start FUN_0201EB70
FUN_0201EB70: ; 0x0201EB70
ldr r3, _0201EB74 ; =FUN_02016A18
bx r3
.balign 4
-_0201EB74: .word FUN_02016A18 + 1
+_0201EB74: .word FUN_02016A18
thumb_func_start FUN_0201EB78
FUN_0201EB78: ; 0x0201EB78
@@ -64562,7 +64562,7 @@ FUN_0201EC94: ; 0x0201EC94
add r1, r2, #0x0
bx r3
.balign 4
-_0201ECA4: .word FUN_0201EE2C + 1
+_0201ECA4: .word FUN_0201EE2C
thumb_func_start FUN_0201ECA8
FUN_0201ECA8: ; 0x0201ECA8
@@ -64879,7 +64879,7 @@ FUN_0201EEF0: ; 0x0201EEF0
ldrb r0, [r0, #0x0]
bx r3
nop
-_0201EF24: .word FUN_0201EE2C + 1
+_0201EF24: .word FUN_0201EE2C
_0201EF28: .word 0x020FFA38
thumb_func_start FUN_0201EF2C
@@ -64914,7 +64914,7 @@ FUN_0201EF2C: ; 0x0201EF2C
ldrb r0, [r0, #0x0]
bx r3
nop
-_0201EF68: .word FUN_0201EE2C + 1
+_0201EF68: .word FUN_0201EE2C
_0201EF6C: .word 0x020FFA38
thumb_func_start FUN_0201EF70
@@ -64952,7 +64952,7 @@ FUN_0201EF90: ; 0x0201EF90
add r0, r1, #0x0
bx r3
nop
-_0201EFB0: .word FUN_0201E7D8 + 1
+_0201EFB0: .word FUN_0201E7D8
thumb_func_start FUN_0201EFB4
FUN_0201EFB4: ; 0x0201EFB4
@@ -64976,7 +64976,7 @@ FUN_0201EFB4: ; 0x0201EFB4
add r0, r1, #0x0
bx r3
nop
-_0201EFDC: .word FUN_0201E8B8 + 1
+_0201EFDC: .word FUN_0201E8B8
thumb_func_start FUN_0201EFE0
FUN_0201EFE0: ; 0x0201EFE0
@@ -64985,7 +64985,7 @@ FUN_0201EFE0: ; 0x0201EFE0
add r0, r1, #0x0
bx r3
.balign 4
-_0201EFE8: .word FUN_0201E7D8 + 1
+_0201EFE8: .word FUN_0201E7D8
thumb_func_start FUN_0201EFEC
FUN_0201EFEC: ; 0x0201EFEC
@@ -65164,7 +65164,7 @@ FUN_0201F100: ; 0x0201F100
ldr r0, [r0, #0x0]
cmp r0, #0x0
beq _0201F112
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F112:
mov r1, #0xd4
add r0, r4, #0x0
@@ -65262,7 +65262,7 @@ FUN_0201F1B4: ; 0x0201F1B4
bl FUN_0201F2E4
add r4, r0, #0x0
bne _0201F1C8
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0201F1C8:
@@ -65323,7 +65323,7 @@ FUN_0201F23C: ; 0x0201F23C
push {r4, lr}
add r4, r0, #0x0
bne _0201F24A
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4, pc}
_0201F24A:
@@ -65358,7 +65358,7 @@ FUN_0201F284: ; 0x0201F284
cmp r0, #0x0
bne _0201F294
bne _0201F290
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F290:
mov r0, #0x0
pop {r3-r5, pc}
@@ -65392,7 +65392,7 @@ FUN_0201F2C0: ; 0x0201F2C0
push {r4, lr}
add r4, r0, #0x0
bne _0201F2CA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F2CA:
ldrb r0, [r4, #0x3]
cmp r0, #0x0
@@ -65450,7 +65450,7 @@ FUN_0201F318: ; 0x0201F318
sub sp, #0x24
add r5, r0, #0x0
bne _0201F324
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F324:
add r0, sp, #0x0
blx FUN_020C3F14
@@ -65631,7 +65631,7 @@ FUN_0201F454: ; 0x0201F454
str r0, [r4, #0x0]
cmp r0, #0x0
bne _0201F496
- bl FUN_02020C2C
+ bl ErrorHandling
b _0201F496
_0201F492:
mov r0, #0x0
@@ -65648,7 +65648,7 @@ _0201F496:
str r0, [r6, #0x0]
cmp r0, #0x0
bne _0201F4B6
- bl FUN_02020C2C
+ bl ErrorHandling
b _0201F4B6
_0201F4B2:
mov r0, #0x0
@@ -65668,7 +65668,7 @@ _0201F4B6:
str r0, [r7, #0x0]
cmp r0, #0x0
bne _0201F4DE
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
pop {r4-r7, pc}
_0201F4DA:
@@ -66005,14 +66005,14 @@ FUN_0201F744: ; 0x0201F744
push {r3-r5, lr}
add r5, r0, #0x0
bne _0201F74E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F74E:
add r0, r5, #0x0
add r0, #0xa8
ldrb r0, [r0, #0x0]
cmp r0, #0x1
bne _0201F75C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F75C:
add r0, r5, #0x0
add r0, #0xa8
@@ -66077,7 +66077,7 @@ FUN_0201F7C8: ; 0x0201F7C8
add r5, r1, #0x0
cmp r4, #0x0
bne _0201F7D6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F7D6:
ldmia r5!, {r0-r1}
stmia r4!, {r0-r1}
@@ -66090,7 +66090,7 @@ FUN_0201F7E0: ; 0x0201F7E0
push {r4, lr}
add r4, r0, #0x0
bne _0201F7EA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F7EA:
add r0, r4, #0x0
pop {r4, pc}
@@ -66103,7 +66103,7 @@ FUN_0201F7F0: ; 0x0201F7F0
add r5, r1, #0x0
cmp r4, #0x0
bne _0201F7FE
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F7FE:
ldmia r5!, {r0-r1}
add r4, #0xc
@@ -66120,7 +66120,7 @@ FUN_0201F80C: ; 0x0201F80C
add r4, r1, #0x0
cmp r5, #0x0
bne _0201F81A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F81A:
strb r4, [r5, #0x18]
pop {r3-r5, pc}
@@ -66131,7 +66131,7 @@ FUN_0201F820: ; 0x0201F820
push {r4, lr}
add r4, r0, #0x0
bne _0201F82A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F82A:
ldrb r0, [r4, #0x18]
pop {r4, pc}
@@ -66144,7 +66144,7 @@ FUN_0201F830: ; 0x0201F830
add r4, r1, #0x0
cmp r5, #0x0
bne _0201F83E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F83E:
add r5, #0xaa
strh r4, [r5, #0x0]
@@ -66155,7 +66155,7 @@ FUN_0201F844: ; 0x0201F844
push {r4, lr}
add r4, r0, #0x0
bne _0201F84E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F84E:
add r4, #0xaa
ldrh r0, [r4, #0x0]
@@ -66168,7 +66168,7 @@ FUN_0201F854: ; 0x0201F854
add r4, r1, #0x0
cmp r5, #0x0
bne _0201F862
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F862:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -66182,7 +66182,7 @@ FUN_0201F86C: ; 0x0201F86C
add r4, r1, #0x0
cmp r5, #0x0
bne _0201F87A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F87A:
add r5, #0xac
str r4, [r5, #0x0]
@@ -66193,7 +66193,7 @@ FUN_0201F880: ; 0x0201F880
push {r4, lr}
add r4, r0, #0x0
bne _0201F88A
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F88A:
add r4, #0xac
ldr r0, [r4, #0x0]
@@ -66206,7 +66206,7 @@ FUN_0201F890: ; 0x0201F890
add r4, r1, #0x0
cmp r5, #0x0
bne _0201F89E
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F89E:
add r1, r5, #0x0
add r1, #0xaa
@@ -66230,7 +66230,7 @@ FUN_0201F8C0: ; 0x0201F8C0
push {r4, lr}
add r4, r0, #0x0
bne _0201F8CA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F8CA:
add r1, r4, #0x0
add r1, #0xaa
@@ -66248,7 +66248,7 @@ FUN_0201F8E0: ; 0x0201F8E0
push {r4, lr}
add r4, r0, #0x0
bne _0201F8EA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F8EA:
ldr r0, [r4, #0x7c]
pop {r4, pc}
@@ -66389,7 +66389,7 @@ _0201F9C4:
ldr r0, _0201FA00 ; =0x0000FFFF
cmp r1, r0
bls _0201F9EC
- bl FUN_02020C2C
+ bl ErrorHandling
_0201F9EC:
ldr r0, [r5, #0x14]
add r4, r4, #0x1
@@ -66492,7 +66492,7 @@ _0201FA7C:
ldr r0, _0201FAB8 ; =0x00001FFF
cmp r1, r0
bls _0201FAA4
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FAA4:
ldrh r0, [r5, #0x1c]
add r4, r4, #0x1
@@ -66668,7 +66668,7 @@ FUN_0201FBCC: ; 0x0201FBCC
mov r1, #0x1
bx r3
nop
-_0201FBD4: .word FUN_0201FC90 + 1
+_0201FBD4: .word FUN_0201FC90
thumb_func_start FUN_0201FBD8
FUN_0201FBD8: ; 0x0201FBD8
@@ -66808,12 +66808,12 @@ FUN_0201FCB0: ; 0x0201FCB0
push {r3-r5, lr}
add r5, r0, #0x0
bne _0201FCBA
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FCBA:
ldr r0, [r5, #0x4]
cmp r0, #0x0
bne _0201FCC4
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FCC4:
mov r1, #0x49
ldr r0, [r5, #0x8]
@@ -66821,7 +66821,7 @@ _0201FCC4:
bl FUN_02016998
add r4, r0, #0x0
bne _0201FCD6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FCD6:
add r0, r4, #0x0
bl FUN_0201FE44
@@ -66834,7 +66834,7 @@ _0201FCD6:
str r0, [r4, #0x0]
cmp r0, #0x0
bne _0201FCF4
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FCF4:
ldr r0, [r5, #0x0]
str r0, [r4, #0x4]
@@ -66845,7 +66845,7 @@ _0201FCF4:
str r0, [r4, #0x8]
cmp r0, #0x0
bne _0201FD0C
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FD0C:
add r0, r4, #0x0
bl FUN_0202083C
@@ -66970,7 +66970,7 @@ FUN_0201FDEC: ; 0x0201FDEC
push {r3-r7, lr}
add r5, r0, #0x0
bne _0201FDF6
- bl FUN_02020C2C
+ bl ErrorHandling
_0201FDF6:
mov r0, #0x12
lsl r0, r0, #0x4
@@ -67339,11 +67339,11 @@ FUN_020200A0: ; 0x020200A0
add r4, r1, #0x0
cmp r5, #0x0
bne _020200AE
- bl FUN_02020C2C
+ bl ErrorHandling
_020200AE:
cmp r4, #0x2
blt _020200B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020200B6:
add r5, #0x34
strb r4, [r5, #0x0]
@@ -67356,11 +67356,11 @@ FUN_020200BC: ; 0x020200BC
add r4, r1, #0x0
cmp r5, #0x0
bne _020200CA
- bl FUN_02020C2C
+ bl ErrorHandling
_020200CA:
cmp r4, #0x2
blt _020200D2
- bl FUN_02020C2C
+ bl ErrorHandling
_020200D2:
add r5, #0x35
strb r4, [r5, #0x0]
@@ -67373,7 +67373,7 @@ FUN_020200D8: ; 0x020200D8
add r4, r1, #0x0
cmp r5, #0x0
bne _020200E6
- bl FUN_02020C2C
+ bl ErrorHandling
_020200E6:
str r4, [r5, #0x38]
pop {r3-r5, pc}
@@ -67386,7 +67386,7 @@ FUN_020200EC: ; 0x020200EC
add r4, r1, #0x0
cmp r5, #0x0
bne _020200FA
- bl FUN_02020C2C
+ bl ErrorHandling
_020200FA:
add r5, #0x26
strb r4, [r5, #0x0]
@@ -67399,7 +67399,7 @@ FUN_02020100: ; 0x02020100
add r4, r1, #0x0
cmp r5, #0x0
bne _0202010E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202010E:
add r0, r5, #0x0
add r0, #0x27
@@ -67601,7 +67601,7 @@ FUN_02020248: ; 0x02020248
add r4, r1, #0x0
cmp r5, #0x0
bne _02020256
- bl FUN_02020C2C
+ bl ErrorHandling
_02020256:
add r0, r5, #0x0
add r0, #0x29
@@ -67656,7 +67656,7 @@ FUN_020202A8: ; 0x020202A8
add r4, r1, #0x0
cmp r5, #0x0
bne _020202B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020202B6:
add r0, r5, #0x0
add r0, #0x2a
@@ -67702,7 +67702,7 @@ FUN_02020300: ; 0x02020300
push {r4, lr}
add r4, r0, #0x0
bne _0202030A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202030A:
add r4, #0x2a
ldrb r0, [r4, #0x0]
@@ -67794,7 +67794,7 @@ FUN_02020388: ; 0x02020388
push {r4, lr}
add r4, r0, #0x0
bne _02020392
- bl FUN_02020C2C
+ bl ErrorHandling
_02020392:
ldr r0, [r4, #0x50]
pop {r4, pc}
@@ -67807,7 +67807,7 @@ FUN_02020398: ; 0x02020398
add r5, r1, #0x0
cmp r4, #0x0
bne _020203A6
- bl FUN_02020C2C
+ bl ErrorHandling
_020203A6:
str r5, [r4, #0x30]
cmp r5, #0x0
@@ -67842,11 +67842,11 @@ FUN_020203CC: ; 0x020203CC
lsl r0, r0, #0x6
add r1, r4, #0x0
lsl r2, r2, #0xa
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
mov r1, #0x1
add r0, r4, #0x0
lsl r1, r1, #0xa
- blx FUN_020CC15C
+ blx DC_FlushRange
mov r2, #0x1
add r0, r4, #0x0
mov r1, #0x0
@@ -67868,7 +67868,7 @@ FUN_02020404: ; 0x02020404
lsl r0, r0, #0x6
add r1, r4, #0x0
lsl r2, r2, #0xa
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
mov r2, #0x1
add r0, r4, #0x0
mov r1, #0x0
@@ -68318,7 +68318,7 @@ FUN_02020778: ; 0x02020778
ldr r1, [r0, #0x38]
bx r3
nop
-_02020780: .word FUN_020201E4 + 1
+_02020780: .word FUN_020201E4
thumb_func_start FUN_02020784
FUN_02020784: ; 0x02020784
@@ -68859,14 +68859,14 @@ FUN_02020AFC: ; 0x02020AFC
strh r0, [r1, #0x0]
ldr r1, _02020B2C ; =FUN_02020B30
mov r0, #0x40
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x40
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
pop {r3, pc}
.balign 4
_02020B24: .word 0x021C59B0
_02020B28: .word 0x0400010E
-_02020B2C: .word FUN_02020B30 + 1
+_02020B2C: .word FUN_02020B30
thumb_func_start FUN_02020B30
FUN_02020B30: ; 0x02020B30
@@ -68895,7 +68895,7 @@ _02020B54:
ldr r2, [r3, r1]
orr r2, r0
str r2, [r3, r1]
- ldr r3, _02020B78 ; =FUN_020C9FEC
+ ldr r3, _02020B78 ; =OS_SetIrqFunction
ldr r1, _02020B7C ; =FUN_02020B30
bx r3
nop
@@ -68903,14 +68903,14 @@ _02020B68: .word 0x021C59B0
_02020B6C: .word 0x0400010E
_02020B70: .word 0x027E0000
_02020B74: .word 0x00003FF8
-_02020B78: .word FUN_020C9FEC
-_02020B7C: .word FUN_02020B30 + 1
+_02020B78: .word OS_SetIrqFunction
+_02020B7C: .word FUN_02020B30
thumb_func_start FUN_02020B80
FUN_02020B80: ; 0x02020B80
push {r4-r5, lr}
sub sp, #0xc
- blx FUN_020CD310
+ blx OS_DisableInterrupts
ldr r1, _02020BE4 ; =0x0400010C
add r3, sp, #0x0
ldrh r1, [r1, #0x0]
@@ -68942,7 +68942,7 @@ FUN_02020B80: ; 0x02020B80
str r2, [sp, #0x4]
str r3, [sp, #0x8]
_02020BC4:
- blx FUN_020CD324
+ blx OS_RestoreInterrupts
ldr r2, [sp, #0x4]
ldr r1, [sp, #0x8]
lsr r0, r2, #0x10
@@ -68968,7 +68968,7 @@ FUN_02020BF4: ; 0x02020BF4
ldr r3, _02020BF8 ; =FUN_02020B80
bx r3
.balign 4
-_02020BF8: .word FUN_02020B80 + 1
+_02020BF8: .word FUN_02020B80
thumb_func_start FUN_02020BFC
FUN_02020BFC: ; 0x02020BFC
@@ -68979,7 +68979,7 @@ FUN_02020BFC: ; 0x02020BFC
ldr r2, _02020C10 ; =0x000082EA
lsl r0, r0, #0x6
mov r3, #0x0
- blx FUN_020EBBE8
+ blx _ll_udiv
pop {r3, pc}
.balign 4
_02020C10: .word 0x000082EA
@@ -68993,18 +68993,18 @@ FUN_02020C14: ; 0x02020C14
ldr r2, _02020C28 ; =0x01FF6210
lsl r0, r0, #0x6
mov r3, #0x0
- blx FUN_020EBBE8
+ blx _ll_udiv
pop {r3, pc}
.balign 4
_02020C28: .word 0x01FF6210
- thumb_func_start FUN_02020C2C
-FUN_02020C2C: ; 0x02020C2C
+ thumb_func_start ErrorHandling
+ErrorHandling: ; 0x02020C2C
push {r3, lr}
bl FUN_02031810
cmp r0, #0x0
beq _02020C42
- blx FUN_020CD374
+ blx OS_GetProcMode
cmp r0, #0x12
beq _02020C42
bl FUN_0208A9B8
@@ -69021,7 +69021,7 @@ FUN_02020C44: ; 0x02020C44
bl FUN_02016998
add r6, r0, #0x0
bne _02020C5A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020C5A:
add r0, r4, #0x0
lsl r1, r7, #0x3
@@ -69029,7 +69029,7 @@ _02020C5A:
str r0, [r6, #0x0]
cmp r0, #0x0
bne _02020C6C
- bl FUN_02020C2C
+ bl ErrorHandling
_02020C6C:
mov r4, #0x0
cmp r7, #0x0
@@ -69056,7 +69056,7 @@ FUN_02020C90: ; 0x02020C90
push {r4, lr}
add r4, r0, #0x0
bne _02020C9A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020C9A:
add r0, r4, #0x0
bl FUN_02020D9C
@@ -69074,7 +69074,7 @@ FUN_02020CB0: ; 0x02020CB0
add r4, r1, #0x0
cmp r5, #0x0
bne _02020CBE
- bl FUN_02020C2C
+ bl ErrorHandling
_02020CBE:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -69096,20 +69096,20 @@ FUN_02020CD4: ; 0x02020CD4
add r6, r2, #0x0
cmp r5, #0x0
bne _02020CE4
- bl FUN_02020C2C
+ bl ErrorHandling
_02020CE4:
add r0, r5, #0x0
bl FUN_02020E48
add r4, r0, #0x0
bne _02020CF2
- bl FUN_02020C2C
+ bl ErrorHandling
_02020CF2:
add r0, r5, #0x0
add r1, r6, #0x0
bl FUN_02020CB0
cmp r0, #0x1
beq _02020D02
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D02:
str r7, [r4, #0x4]
str r6, [r4, #0x0]
@@ -69128,24 +69128,24 @@ FUN_02020D10: ; 0x02020D10
str r3, [sp, #0x0]
cmp r5, #0x0
bne _02020D22
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D22:
cmp r6, #0x0
bne _02020D2A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D2A:
add r0, r5, #0x0
bl FUN_02020E48
add r4, r0, #0x0
bne _02020D38
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D38:
add r0, r5, #0x0
add r1, r7, #0x0
bl FUN_02020CB0
cmp r0, #0x1
beq _02020D48
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D48:
ldr r0, [sp, #0x0]
add r1, r6, #0x0
@@ -69153,7 +69153,7 @@ _02020D48:
str r0, [r4, #0x4]
cmp r0, #0x0
bne _02020D5A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D5A:
str r7, [r4, #0x0]
ldr r0, [r5, #0x8]
@@ -69170,11 +69170,11 @@ FUN_02020D68: ; 0x02020D68
add r4, r1, #0x0
cmp r5, #0x0
bne _02020D76
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D76:
cmp r4, #0x0
bne _02020D7E
- bl FUN_02020C2C
+ bl ErrorHandling
_02020D7E:
ldr r0, [r4, #0x4]
cmp r0, #0x0
@@ -69197,12 +69197,12 @@ FUN_02020D9C: ; 0x02020D9C
push {r3-r7, lr}
add r5, r0, #0x0
bne _02020DA6
- bl FUN_02020C2C
+ bl ErrorHandling
_02020DA6:
ldr r0, [r5, #0x0]
cmp r0, #0x0
bne _02020DB0
- bl FUN_02020C2C
+ bl ErrorHandling
_02020DB0:
ldr r0, [r5, #0x4]
mov r6, #0x0
@@ -69234,7 +69234,7 @@ FUN_02020DD8: ; 0x02020DD8
add r4, r1, #0x0
cmp r5, #0x0
bne _02020DE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02020DE6:
ldr r6, [r5, #0x4]
mov r1, #0x0
@@ -69264,7 +69264,7 @@ FUN_02020E0C: ; 0x02020E0C
push {r4, lr}
add r4, r0, #0x0
bne _02020E16
- bl FUN_02020C2C
+ bl ErrorHandling
_02020E16:
ldr r0, [r4, #0x4]
pop {r4, pc}
@@ -69277,7 +69277,7 @@ FUN_02020E1C: ; 0x02020E1C
add r4, r1, #0x0
cmp r5, #0x0
bne _02020E2A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020E2A:
ldr r0, [r5, #0x4]
cmp r0, #0x0
@@ -69292,7 +69292,7 @@ FUN_02020E38: ; 0x02020E38
push {r4, lr}
add r4, r0, #0x0
bne _02020E42
- bl FUN_02020C2C
+ bl ErrorHandling
_02020E42:
ldr r0, [r4, #0x0]
pop {r4, pc}
@@ -69303,7 +69303,7 @@ FUN_02020E48: ; 0x02020E48
push {r3-r5, lr}
add r4, r0, #0x0
bne _02020E52
- bl FUN_02020C2C
+ bl ErrorHandling
_02020E52:
ldr r5, [r4, #0x4]
mov r2, #0x0
@@ -69333,7 +69333,7 @@ FUN_02020E78: ; 0x02020E78
push {r4, lr}
add r4, r0, #0x0
bne _02020E82
- bl FUN_02020C2C
+ bl ErrorHandling
_02020E82:
mov r0, #0x0
mvn r0, r0
@@ -69383,7 +69383,7 @@ FUN_02020ED4: ; 0x02020ED4
push {r4, lr}
add r4, r0, #0x0
bne _02020EDE
- bl FUN_02020C2C
+ bl ErrorHandling
_02020EDE:
add r0, r4, #0x0
bl FUN_02021010
@@ -69402,7 +69402,7 @@ FUN_02020EF8: ; 0x02020EF8
add r4, r1, #0x0
cmp r5, #0x0
bne _02020F06
- bl FUN_02020C2C
+ bl ErrorHandling
_02020F06:
ldr r0, [r5, #0x0]
add r1, r4, #0x0
@@ -69418,7 +69418,7 @@ FUN_02020F10: ; 0x02020F10
str r2, [sp, #0x0]
cmp r5, #0x0
bne _02020F22
- bl FUN_02020C2C
+ bl ErrorHandling
_02020F22:
add r0, r5, #0x0
bl FUN_020211DC
@@ -69465,11 +69465,11 @@ FUN_02020F6C: ; 0x02020F6C
add r4, r1, #0x0
cmp r5, #0x0
bne _02020F7A
- bl FUN_02020C2C
+ bl ErrorHandling
_02020F7A:
cmp r4, #0x0
bne _02020F82
- bl FUN_02020C2C
+ bl ErrorHandling
_02020F82:
ldrh r0, [r4, #0x16]
cmp r0, #0x1
@@ -69496,7 +69496,7 @@ _02020FA4:
blx r1
cmp r0, #0x0
beq _02020FB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02020FB8:
ldr r0, [r4, #0x8]
cmp r0, #0x0
@@ -69506,7 +69506,7 @@ _02020FB8:
blx r1
cmp r0, #0x0
beq _02020FCC
- bl FUN_02020C2C
+ bl ErrorHandling
_02020FCC:
ldr r0, [r4, #0xc]
cmp r0, #0x0
@@ -69516,7 +69516,7 @@ _02020FCC:
blx r1
cmp r0, #0x0
beq _02020FE0
- bl FUN_02020C2C
+ bl ErrorHandling
_02020FE0:
add r0, r4, #0x0
bl FUN_0202120C
@@ -69532,7 +69532,7 @@ FUN_02020FF0: ; 0x02020FF0
add r4, r1, #0x0
cmp r5, #0x0
bne _02020FFE
- bl FUN_02020C2C
+ bl ErrorHandling
_02020FFE:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -69547,12 +69547,12 @@ FUN_02021010: ; 0x02021010
push {r4-r6, lr}
add r5, r0, #0x0
bne _0202101A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202101A:
ldr r0, [r5, #0x4]
cmp r0, #0x0
bne _02021024
- bl FUN_02020C2C
+ bl ErrorHandling
_02021024:
ldr r0, [r5, #0x0]
mov r6, #0x0
@@ -69586,7 +69586,7 @@ FUN_02021050: ; 0x02021050
add r7, r1, #0x0
cmp r6, #0x0
bne _0202105E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202105E:
ldr r0, [r6, #0x0]
mov r4, #0x0
@@ -69625,7 +69625,7 @@ FUN_02021098: ; 0x02021098
push {r4, lr}
add r4, r0, #0x0
bne _020210A2
- bl FUN_02020C2C
+ bl ErrorHandling
_020210A2:
ldr r0, [r4, #0x0]
bl FUN_02020E38
@@ -69637,7 +69637,7 @@ FUN_020210AC: ; 0x020210AC
push {r4, lr}
add r4, r0, #0x0
bne _020210B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020210B6:
add r0, r4, #0x0
bl FUN_02021220
@@ -69649,17 +69649,17 @@ FUN_020210C0: ; 0x020210C0
push {r4, lr}
add r4, r0, #0x0
bne _020210CA
- bl FUN_02020C2C
+ bl ErrorHandling
_020210CA:
ldrh r0, [r4, #0x14]
cmp r0, #0x0
beq _020210D4
- bl FUN_02020C2C
+ bl ErrorHandling
_020210D4:
ldr r0, [r4, #0xc]
cmp r0, #0x0
bne _020210E0
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
_020210E0:
add r0, r4, #0x0
@@ -69676,7 +69676,7 @@ FUN_020210F0: ; 0x020210F0
add r4, r1, #0x0
cmp r5, #0x0
bne _020210FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020210FE:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -69689,18 +69689,18 @@ FUN_0202110C: ; 0x0202110C
push {r4, lr}
add r4, r0, #0x0
bne _02021116
- bl FUN_02020C2C
+ bl ErrorHandling
_02021116:
ldrh r0, [r4, #0x16]
cmp r0, #0x0
bne _02021122
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
_02021122:
ldrh r0, [r4, #0x14]
cmp r0, #0x0
beq _0202112E
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
_0202112E:
add r0, r4, #0x0
@@ -69727,7 +69727,7 @@ FUN_02021158: ; 0x02021158
add r4, r1, #0x0
cmp r5, #0x0
bne _02021166
- bl FUN_02020C2C
+ bl ErrorHandling
_02021166:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -69740,17 +69740,17 @@ FUN_02021174: ; 0x02021174
push {r4, lr}
add r4, r0, #0x0
bne _0202117E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202117E:
ldrh r0, [r4, #0x14]
cmp r0, #0x0
beq _02021188
- bl FUN_02020C2C
+ bl ErrorHandling
_02021188:
ldr r0, [r4, #0xc]
cmp r0, #0x0
beq _02021194
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
_02021194:
add r0, r4, #0x0
@@ -69769,7 +69769,7 @@ FUN_020211AC: ; 0x020211AC
push {r4, lr}
add r4, r0, #0x0
bne _020211B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020211B6:
ldr r0, [r4, #0x4]
pop {r4, pc}
@@ -69780,7 +69780,7 @@ FUN_020211BC: ; 0x020211BC
push {r4, lr}
add r4, r0, #0x0
bne _020211C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020211C6:
ldr r0, [r4, #0x8]
pop {r4, pc}
@@ -69791,7 +69791,7 @@ FUN_020211CC: ; 0x020211CC
push {r4, lr}
add r4, r0, #0x0
bne _020211D6
- bl FUN_02020C2C
+ bl ErrorHandling
_020211D6:
ldr r0, [r4, #0xc]
pop {r4, pc}
@@ -69933,7 +69933,7 @@ FUN_020212B8: ; 0x020212B8
bl FUN_020212E4
ldr r1, [r4, #0x4]
add r0, r4, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
add r0, r4, #0x0
mov r1, #0x1
blx FUN_020B7D28
@@ -69992,7 +69992,7 @@ FUN_02021334: ; 0x02021334
blx FUN_020BC0FC
add r4, r0, #0x0
bne _02021344
- bl FUN_02020C2C
+ bl ErrorHandling
_02021344:
ldr r0, [r4, #0x14]
add r0, r4, r0
@@ -70387,7 +70387,7 @@ _02021638:
ldr r0, [r5, #0x60]
cmp r0, #0x0
bne _02021642
- bl FUN_02020C2C
+ bl ErrorHandling
_02021642:
ldr r0, [sp, #0x18]
ldr r1, [r5, #0x64]
@@ -70414,7 +70414,7 @@ _02021660:
cmp r0, #0x2
bls _02021678
_02021674:
- bl FUN_02020C2C
+ bl ErrorHandling
_02021678:
add r0, r5, #0x0
add r0, #0x6a
@@ -70443,8 +70443,8 @@ _020216A6:
add sp, #0x4
pop {r3-r6, pc}
nop
-_020216AC: .word FUN_0202192C + 1
-_020216B0: .word FUN_02021924 + 1
+_020216AC: .word FUN_0202192C
+_020216B0: .word FUN_02021924
_020216B4: .word 0x020EE668
thumb_func_start FUN_020216B8
@@ -70501,7 +70501,7 @@ FUN_020216EC: ; 0x020216EC
bl FUN_02006814
pop {r3-r5, pc}
.balign 4
-_02021718: .word FUN_02021774 + 1
+_02021718: .word FUN_02021774
thumb_func_start FUN_0202171C
FUN_0202171C: ; 0x0202171C
@@ -70509,7 +70509,7 @@ FUN_0202171C: ; 0x0202171C
str r1, [r0, #0x4]
bx lr
nop
-_02021724: .word FUN_0202181C + 1
+_02021724: .word FUN_0202181C
thumb_func_start FUN_02021728
FUN_02021728: ; 0x02021728
@@ -70928,13 +70928,13 @@ FUN_02021A20: ; 0x02021A20
push {r4, lr}
add r4, r0, #0x0
bne _02021A2A
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A2A:
ldr r1, [r4, #0x4]
ldr r0, _02021A44 ; =0xB6F8D2EC
cmp r1, r0
beq _02021A36
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A36:
ldr r0, _02021A48 ; =0xB6F8D2ED
str r0, [r4, #0x4]
@@ -70950,13 +70950,13 @@ FUN_02021A4C: ; 0x02021A4C
push {r4, lr}
add r4, r0, #0x0
bne _02021A56
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A56:
ldr r1, [r4, #0x4]
ldr r0, _02021A6C ; =0xB6F8D2EC
cmp r1, r0
beq _02021A62
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A62:
mov r0, #0x0
strh r0, [r4, #0x2]
@@ -70974,23 +70974,23 @@ FUN_02021A74: ; 0x02021A74
add r4, r1, #0x0
cmp r5, #0x0
bne _02021A82
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A82:
ldr r1, [r5, #0x4]
ldr r0, _02021AC8 ; =0xB6F8D2EC
cmp r1, r0
beq _02021A8E
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A8E:
cmp r4, #0x0
bne _02021A96
- bl FUN_02020C2C
+ bl ErrorHandling
_02021A96:
ldr r1, [r4, #0x4]
ldr r0, _02021AC8 ; =0xB6F8D2EC
cmp r1, r0
beq _02021AA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02021AA2:
ldrh r2, [r4, #0x2]
ldrh r0, [r5, #0x0]
@@ -71007,7 +71007,7 @@ _02021AA2:
strh r0, [r5, #0x2]
pop {r3-r5, pc}
_02021AC0:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
nop
_02021AC8: .word 0xB6F8D2EC
@@ -71019,13 +71019,13 @@ FUN_02021ACC: ; 0x02021ACC
add r4, r1, #0x0
cmp r5, #0x0
bne _02021ADA
- bl FUN_02020C2C
+ bl ErrorHandling
_02021ADA:
ldr r1, [r5, #0x4]
ldr r0, _02021B00 ; =0xB6F8D2EC
cmp r1, r0
beq _02021AE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02021AE6:
ldrh r0, [r5, #0x2]
add r1, r4, #0x0
@@ -71053,13 +71053,13 @@ FUN_02021B04: ; 0x02021B04
str r0, [sp, #0x20]
cmp r5, #0x0
bne _02021B1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02021B1C:
ldr r1, [r5, #0x4]
ldr r0, _02021C1C ; =0xB6F8D2EC
cmp r1, r0
beq _02021B28
- bl FUN_02020C2C
+ bl ErrorHandling
_02021B28:
cmp r6, #0x0
bge _02021B30
@@ -71196,7 +71196,7 @@ _02021C06:
strh r1, [r0, #0x8]
pop {r3-r7, pc}
_02021C14:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x8
pop {r3-r7, pc}
.balign 4
@@ -71303,23 +71303,23 @@ FUN_02021CE0: ; 0x02021CE0
add r4, r1, #0x0
cmp r5, #0x0
bne _02021CEE
- bl FUN_02020C2C
+ bl ErrorHandling
_02021CEE:
ldr r1, [r5, #0x4]
ldr r0, _02021D34 ; =0xB6F8D2EC
cmp r1, r0
beq _02021CFA
- bl FUN_02020C2C
+ bl ErrorHandling
_02021CFA:
cmp r4, #0x0
bne _02021D02
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D02:
ldr r1, [r4, #0x4]
ldr r0, _02021D34 ; =0xB6F8D2EC
cmp r1, r0
beq _02021D0E
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D0E:
ldrh r1, [r5, #0x8]
ldrh r0, [r4, #0x8]
@@ -71351,13 +71351,13 @@ FUN_02021D3C: ; 0x02021D3C
push {r4, lr}
add r4, r0, #0x0
bne _02021D46
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D46:
ldr r1, [r4, #0x4]
ldr r0, _02021D58 ; =0xB6F8D2EC
cmp r1, r0
beq _02021D52
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D52:
ldrh r0, [r4, #0x2]
pop {r4, pc}
@@ -71369,13 +71369,13 @@ FUN_02021D5C: ; 0x02021D5C
push {r3-r5, lr}
add r4, r0, #0x0
bne _02021D66
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D66:
ldr r1, [r4, #0x4]
ldr r0, _02021D98 ; =0xB6F8D2EC
cmp r1, r0
beq _02021D72
- bl FUN_02020C2C
+ bl ErrorHandling
_02021D72:
ldrh r1, [r4, #0x2]
mov r3, #0x0
@@ -71409,23 +71409,23 @@ FUN_02021D9C: ; 0x02021D9C
add r6, r2, #0x0
cmp r5, #0x0
bne _02021DAC
- bl FUN_02020C2C
+ bl ErrorHandling
_02021DAC:
ldr r1, [r5, #0x4]
ldr r0, _02021E24 ; =0xB6F8D2EC
cmp r1, r0
beq _02021DB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02021DB8:
cmp r7, #0x0
bne _02021DC0
- bl FUN_02020C2C
+ bl ErrorHandling
_02021DC0:
ldr r1, [r7, #0x4]
ldr r0, _02021E24 ; =0xB6F8D2EC
cmp r1, r0
beq _02021DCC
- bl FUN_02020C2C
+ bl ErrorHandling
_02021DCC:
mov r4, #0x0
cmp r6, #0x0
@@ -71483,13 +71483,13 @@ FUN_02021E28: ; 0x02021E28
add r4, r1, #0x0
cmp r5, #0x0
bne _02021E36
- bl FUN_02020C2C
+ bl ErrorHandling
_02021E36:
ldr r1, [r5, #0x4]
ldr r0, _02021E84 ; =0xB6F8D2EC
cmp r1, r0
beq _02021E42
- bl FUN_02020C2C
+ bl ErrorHandling
_02021E42:
mov r0, #0x0
strh r0, [r5, #0x2]
@@ -71504,7 +71504,7 @@ _02021E50:
sub r2, r2, #0x1
cmp r0, r2
blt _02021E60
- bl FUN_02020C2C
+ bl ErrorHandling
b _02021E76
_02021E60:
add r2, r0, #0x0
@@ -71537,13 +71537,13 @@ FUN_02021E8C: ; 0x02021E8C
add r4, r2, #0x0
cmp r5, #0x0
bne _02021E9C
- bl FUN_02020C2C
+ bl ErrorHandling
_02021E9C:
ldr r1, [r5, #0x4]
ldr r0, _02021EE8 ; =0xB6F8D2EC
cmp r1, r0
beq _02021EA8
- bl FUN_02020C2C
+ bl ErrorHandling
_02021EA8:
ldrh r0, [r5, #0x0]
cmp r4, r0
@@ -71576,7 +71576,7 @@ _02021ED4:
strh r1, [r0, #0x6]
pop {r3-r7, pc}
_02021EE2:
- bl FUN_02020C2C
+ bl ErrorHandling
_02021EE6:
pop {r3-r7, pc}
.balign 4
@@ -71591,13 +71591,13 @@ FUN_02021EF0: ; 0x02021EF0
add r4, r2, #0x0
cmp r5, #0x0
bne _02021F00
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F00:
ldr r1, [r5, #0x4]
ldr r0, _02021F28 ; =0xB6F8D2EC
cmp r1, r0
beq _02021F0C
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F0C:
ldrh r0, [r5, #0x2]
add r2, r0, #0x1
@@ -71610,7 +71610,7 @@ _02021F0C:
blx FUN_020DF438
pop {r4-r6, pc}
_02021F22:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
.balign 4
_02021F28: .word 0xB6F8D2EC
@@ -71620,13 +71620,13 @@ FUN_02021F2C: ; 0x02021F2C
push {r4, lr}
add r4, r0, #0x0
bne _02021F36
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F36:
ldr r1, [r4, #0x4]
ldr r0, _02021F48 ; =0xB6F8D2EC
cmp r1, r0
beq _02021F42
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F42:
add r4, #0x8
add r0, r4, #0x0
@@ -71641,23 +71641,23 @@ FUN_02021F4C: ; 0x02021F4C
add r4, r1, #0x0
cmp r5, #0x0
bne _02021F5A
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F5A:
ldr r1, [r5, #0x4]
ldr r0, _02021FAC ; =0xB6F8D2EC
cmp r1, r0
beq _02021F66
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F66:
cmp r4, #0x0
bne _02021F6E
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F6E:
ldr r1, [r4, #0x4]
ldr r0, _02021FAC ; =0xB6F8D2EC
cmp r1, r0
beq _02021F7A
- bl FUN_02020C2C
+ bl ErrorHandling
_02021F7A:
ldrh r2, [r4, #0x2]
ldrh r0, [r5, #0x2]
@@ -71681,7 +71681,7 @@ _02021F7A:
strh r0, [r5, #0x2]
pop {r3-r5, pc}
_02021FA6:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
.balign 4
_02021FAC: .word 0xB6F8D2EC
@@ -71693,13 +71693,13 @@ FUN_02021FB0: ; 0x02021FB0
add r4, r1, #0x0
cmp r5, #0x0
bne _02021FBE
- bl FUN_02020C2C
+ bl ErrorHandling
_02021FBE:
ldr r1, [r5, #0x4]
ldr r0, _02021FF0 ; =0xB6F8D2EC
cmp r1, r0
beq _02021FCA
- bl FUN_02020C2C
+ bl ErrorHandling
_02021FCA:
ldrh r2, [r5, #0x2]
ldrh r0, [r5, #0x0]
@@ -71717,7 +71717,7 @@ _02021FCA:
strh r1, [r0, #0x8]
pop {r3-r5, pc}
_02021FE8:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
nop
_02021FF0: .word 0xB6F8D2EC
@@ -71728,13 +71728,13 @@ FUN_02021FF8: ; 0x02021FF8
push {r4, lr}
add r4, r0, #0x0
bne _02022002
- bl FUN_02020C2C
+ bl ErrorHandling
_02022002:
ldr r1, [r4, #0x4]
ldr r0, _02022028 ; =0xB6F8D2EC
cmp r1, r0
beq _0202200E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202200E:
ldrh r0, [r4, #0x2]
cmp r0, #0x0
@@ -71845,7 +71845,7 @@ FUN_020220C4: ; 0x020220C4
str r3, [sp, #0x0]
cmp r7, #0x0
bne _020220D6
- bl FUN_02020C2C
+ bl ErrorHandling
_020220D6:
ldr r0, [sp, #0x18]
mov r1, #0x14
@@ -71898,7 +71898,7 @@ FUN_0202212C: ; 0x0202212C
push {r4, lr}
add r4, r0, #0x0
bne _02022136
- bl FUN_02020C2C
+ bl ErrorHandling
_02022136:
ldr r0, [r4, #0x10]
bl FUN_02016A18
@@ -72345,34 +72345,34 @@ _0202244C: .word 0x04000580
thumb_func_start FUN_02022450
FUN_02022450: ; 0x02022450
push {r3, lr}
- blx FUN_020D1CC4
+ blx FS_IsAvailable
cmp r0, #0x0
bne _02022460
- blx FUN_020CD850
+ blx OS_Terminate
pop {r3, pc}
_02022460:
ldr r0, _020224BC ; =0x027FF00C
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0202248A
- blx FUN_020D7228
+ blx CARD_Init
mov r2, #0x16
ldr r0, _020224C0 ; =0x027FFE00
ldr r1, _020224C4 ; =0x027FF000
lsl r2, r2, #0x4
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r2, #0x16
ldr r0, _020224C0 ; =0x027FFE00
ldr r1, _020224C8 ; =0x027FFA80
lsl r2, r2, #0x4
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r1, _020224CC ; =0x4A414441
ldr r0, _020224BC ; =0x027FF00C
str r1, [r0, #0x0]
_0202248A:
ldr r0, _020224D0 ; =0x020EE6D4
mov r1, #0x3
- blx FUN_020D1148
+ blx FS_FindArchive
ldr r1, _020224C4 ; =0x027FF000
ldr r2, [r1, #0x48]
str r2, [r0, #0x2c]
@@ -72391,7 +72391,7 @@ _0202248A:
cmp r1, r0
beq _020224B8
_020224B4:
- blx FUN_020CD850
+ blx OS_Terminate
_020224B8:
pop {r3, pc}
nop
@@ -72409,17 +72409,17 @@ FUN_020224D8: ; 0x020224D8
sub sp, #0x48
add r4, r0, #0x0
add r0, sp, #0x0
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x0
add r1, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
cmp r0, #0x0
beq _020224FC
ldr r1, [sp, #0x24]
ldr r0, _02022500 ; =0x027FFC2C
str r1, [r0, #0x0]
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
_020224FC:
add sp, #0x48
pop {r4, pc}
@@ -72432,7 +72432,7 @@ FUN_02022504: ; 0x02022504
mov r1, #0x1b
bx r3
nop
-_0202250C: .word FUN_02022610 + 1
+_0202250C: .word FUN_02022610
thumb_func_start FUN_02022510
FUN_02022510: ; 0x02022510
@@ -72440,7 +72440,7 @@ FUN_02022510: ; 0x02022510
mov r1, #0x23
bx r3
nop
-_02022518: .word FUN_02022610 + 1
+_02022518: .word FUN_02022610
thumb_func_start FUN_0202251C
FUN_0202251C: ; 0x0202251C
@@ -72448,7 +72448,7 @@ FUN_0202251C: ; 0x0202251C
mov r1, #0x1f
bx r3
nop
-_02022524: .word FUN_02022610 + 1
+_02022524: .word FUN_02022610
thumb_func_start FUN_02022528
FUN_02022528: ; 0x02022528
@@ -72456,7 +72456,7 @@ FUN_02022528: ; 0x02022528
mov r1, #0x20
bx r3
nop
-_02022530: .word FUN_02022610 + 1
+_02022530: .word FUN_02022610
thumb_func_start FUN_02022534
FUN_02022534: ; 0x02022534
@@ -72473,7 +72473,7 @@ FUN_02022540: ; 0x02022540
mov r1, #0x0
bx r3
.balign 4
-_02022548: .word FUN_020232BC + 1
+_02022548: .word FUN_020232BC
thumb_func_start FUN_0202254C
FUN_0202254C: ; 0x0202254C
@@ -72485,7 +72485,7 @@ FUN_0202254C: ; 0x0202254C
ldr r2, _020225E0 ; =0x000204A8
mov r0, #0x0
add r1, r4, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r0, _020225E4 ; =0x021C59C8
str r4, [r0, #0x0]
bl FUN_02023570
@@ -72511,7 +72511,7 @@ FUN_0202254C: ; 0x0202254C
mov r0, #0x0
add r1, r4, r1
mov r2, #0x8
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
bl FUN_02022AD8
str r0, [r4, #0x10]
@@ -72560,7 +72560,7 @@ FUN_020225F8: ; 0x020225F8
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02022606
- bl FUN_02020C2C
+ bl ErrorHandling
_02022606:
ldr r0, _0202260C ; =0x021C59C8
ldr r0, [r0, #0x0]
@@ -72575,7 +72575,7 @@ FUN_02022610: ; 0x02022610
add r5, r0, #0x0
cmp r4, #0x24
blt _0202261E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202261E:
mov r0, #0x85
lsl r0, r0, #0x2
@@ -72594,7 +72594,7 @@ FUN_02022634: ; 0x02022634
ldr r3, _02022638 ; =FUN_02022610
bx r3
.balign 4
-_02022638: .word FUN_02022610 + 1
+_02022638: .word FUN_02022610
thumb_func_start FUN_0202263C
FUN_0202263C: ; 0x0202263C
@@ -72650,7 +72650,7 @@ _0202267A:
mvn r0, r0
add r1, r6, #0x0
lsl r2, r2, #0xc
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r4, #0x0
mov r7, #0x1
add r5, r4, #0x0
@@ -72782,17 +72782,17 @@ FUN_020227A0: ; 0x020227A0
add r5, r0, #0x0
cmp r4, #0x2
blt _020227AE
- bl FUN_02020C2C
+ bl ErrorHandling
_020227AE:
ldr r0, [r5, #0x8]
cmp r0, #0x0
beq _020227B8
- bl FUN_02020C2C
+ bl ErrorHandling
_020227B8:
ldr r0, [r5, #0x4]
cmp r0, #0x1
beq _020227C2
- bl FUN_02020C2C
+ bl ErrorHandling
_020227C2:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -72822,7 +72822,7 @@ FUN_020227DC: ; 0x020227DC
bx r3
nop
_020227F4: .word 0x00020224
-_020227F8: .word FUN_020231F4 + 1
+_020227F8: .word FUN_020231F4
thumb_func_start FUN_020227FC
FUN_020227FC: ; 0x020227FC
@@ -72886,7 +72886,7 @@ FUN_02022840: ; 0x02022840
bx r3
nop
_0202284C: .word 0x0002047C
-_02022850: .word FUN_02022DFC + 1
+_02022850: .word FUN_02022DFC
thumb_func_start FUN_02022854
FUN_02022854: ; 0x02022854
@@ -72918,7 +72918,7 @@ FUN_0202287C: ; 0x0202287C
bx r3
.balign 4
_02022884: .word 0x0002047C
-_02022888: .word FUN_02022FF0 + 1
+_02022888: .word FUN_02022FF0
thumb_func_start FUN_0202288C
FUN_0202288C: ; 0x0202288C
@@ -72966,7 +72966,7 @@ FUN_020228B8: ; 0x020228B8
ldr r0, [r5, #0x8]
cmp r0, #0x0
bne _020228D2
- bl FUN_02020C2C
+ bl ErrorHandling
_020228D2:
ldr r0, [r5, #0x8]
add r0, r4, r0
@@ -73148,7 +73148,7 @@ FUN_020229F0: ; 0x020229F0
ble _02022A30
cmp r0, #0x0
bgt _02022A26
- bl FUN_02020C2C
+ bl ErrorHandling
_02022A26:
mov r0, #0x0
str r0, [r5, #0x0]
@@ -73159,7 +73159,7 @@ _02022A30:
bge _02022A44
cmp r0, #0x0
blt _02022A3A
- bl FUN_02020C2C
+ bl ErrorHandling
_02022A3A:
mov r0, #0x1
str r0, [r5, #0x0]
@@ -73473,7 +73473,7 @@ _02022C7E:
ldr r0, [r0, r1]
cmp r2, r0
beq _02022CA6
- bl FUN_02020C2C
+ bl ErrorHandling
_02022CA6:
ldr r0, [sp, #0xc]
add r1, sp, #0x2c
@@ -73499,7 +73499,7 @@ _02022CBC:
ldr r0, [r0, r2]
cmp r3, r0
beq _02022CDA
- bl FUN_02020C2C
+ bl ErrorHandling
_02022CDA:
ldr r0, [sp, #0xc]
add r1, sp, #0x2c
@@ -73959,7 +73959,7 @@ _02023006:
ldr r0, [r4, #0x10]
lsl r0, r0, #0x10
lsr r0, r0, #0x10
- blx FUN_020CA0F8
+ blx OS_ReleaseLockID
_02023034:
mov r0, #0x1
bl FUN_02016454
@@ -74006,7 +74006,7 @@ FUN_02023074: ; 0x02023074
add r0, sp, #0x0
mov r1, #0xff
mov r2, #0x14
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
add r1, r5, #0x0
bl FUN_020228A4
@@ -74030,7 +74030,7 @@ FUN_020230AC: ; 0x020230AC
ldr r0, [r0, #0x0]
cmp r5, r0
blt _020230BE
- bl FUN_02020C2C
+ bl ErrorHandling
_020230BE:
lsl r0, r5, #0x4
add r0, r4, r0
@@ -74062,7 +74062,7 @@ FUN_020230E4: ; 0x020230E4
str r0, [sp, #0x0]
cmp r0, #0x24
beq _020230FC
- bl FUN_02020C2C
+ bl ErrorHandling
_020230FC:
ldr r0, [sp, #0x0]
mov r6, #0x0
@@ -74074,7 +74074,7 @@ _02023108:
ldr r0, [r4, #0x0]
cmp r6, r0
beq _02023112
- bl FUN_02020C2C
+ bl ErrorHandling
_02023112:
ldr r0, [r4, #0x0]
str r0, [r5, #0x0]
@@ -74109,7 +74109,7 @@ _02023148:
lsl r0, r0, #0x10
cmp r7, r0
ble _02023154
- bl FUN_02020C2C
+ bl ErrorHandling
_02023154:
add sp, #0x8
pop {r3-r7, pc}
@@ -74183,12 +74183,12 @@ _0202319A:
ldr r0, [sp, #0x4]
cmp r0, r1
beq _020231DC
- bl FUN_02020C2C
+ bl ErrorHandling
_020231DC:
ldr r0, [sp, #0x4]
cmp r0, #0x20
ble _020231E6
- bl FUN_02020C2C
+ bl ErrorHandling
_020231E6:
add sp, #0x8
pop {r3-r7, pc}
@@ -74207,7 +74207,7 @@ FUN_020231F4: ; 0x020231F4
add r1, r6, #0x0
lsl r2, r2, #0x10
ldr r4, _02023240 ; =0x020EE700
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r0, _02023244 ; =0x020EE6DC
mov r7, #0x0
ldr r0, [r0, #0x0]
@@ -74221,7 +74221,7 @@ _02023216:
ldr r1, [sp, #0x4]
mov r0, #0x0
add r1, r6, r1
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r0, [sp, #0x4]
ldr r1, [r4, #0xc]
add r0, r6, r0
@@ -74319,7 +74319,7 @@ FUN_020232BC: ; 0x020232BC
ldr r0, [r0, #0x0]
cmp r5, r0
blt _020232D8
- bl FUN_02020C2C
+ bl ErrorHandling
_020232D8:
ldr r1, _02023400 ; =0x020EE6E0
lsl r0, r5, #0x4
@@ -74327,7 +74327,7 @@ _020232D8:
ldr r0, [r1, r0]
cmp r0, r5
beq _020232E8
- bl FUN_02020C2C
+ bl ErrorHandling
_020232E8:
ldr r0, [r4, #0x8]
blx r0
@@ -74360,7 +74360,7 @@ _020232E8:
bl FUN_02023274
cmp r0, #0x1
beq _02023330
- bl FUN_02020C2C
+ bl ErrorHandling
_02023330:
ldr r0, [r4, #0x8]
blx r0
@@ -74387,7 +74387,7 @@ _02023330:
bl FUN_02023274
cmp r0, #0x1
beq _020233DE
- bl FUN_02020C2C
+ bl ErrorHandling
b _020233DE
_0202336E:
blx r0
@@ -74412,7 +74412,7 @@ _0202336E:
bl FUN_02023274
cmp r0, #0x1
beq _020233A4
- bl FUN_02020C2C
+ bl ErrorHandling
_020233A4:
ldr r0, [r4, #0x8]
blx r0
@@ -74438,7 +74438,7 @@ _020233A4:
bl FUN_02023274
cmp r0, #0x1
beq _020233DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020233DE:
ldr r0, [sp, #0x0]
cmp r0, #0x1
@@ -74471,7 +74471,7 @@ FUN_02023408: ; 0x02023408
str r3, [sp, #0x0]
cmp r7, r0
blt _02023420
- bl FUN_02020C2C
+ bl ErrorHandling
_02023420:
ldr r1, _02023568 ; =0x020EE6E0
lsl r0, r7, #0x4
@@ -74479,7 +74479,7 @@ _02023420:
ldr r0, [r1, r0]
cmp r0, r7
beq _02023430
- bl FUN_02020C2C
+ bl ErrorHandling
_02023430:
ldr r0, [r4, #0x8]
blx r0
@@ -74634,13 +74634,13 @@ _0202356C: .word 0x000204A0
thumb_func_start FUN_02023570
FUN_02023570: ; 0x02023570
push {r3-r5, lr}
- blx FUN_020CA0A0
+ blx OS_GetLockID
add r4, r0, #0x0
mov r0, #0x2
mvn r0, r0
cmp r4, r0
bne _02023584
- bl FUN_02020C2C
+ bl ErrorHandling
_02023584:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
@@ -74666,7 +74666,7 @@ _020235AA:
blx FUN_020D66A0
lsl r0, r4, #0x10
lsr r0, r0, #0x10
- blx FUN_020CA0F8
+ blx OS_ReleaseLockID
cmp r5, #0x0
beq _020235C2
mov r0, #0x1
@@ -74701,13 +74701,13 @@ FUN_020235EC: ; 0x020235EC
add r5, r0, #0x0
add r6, r1, #0x0
add r7, r2, #0x0
- blx FUN_020CA0A0
+ blx OS_GetLockID
add r4, r0, #0x0
mov r0, #0x2
mvn r0, r0
cmp r4, r0
bne _02023608
- bl FUN_02020C2C
+ bl ErrorHandling
_02023608:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
@@ -74731,7 +74731,7 @@ _02023608:
blx FUN_020D66A0
lsl r0, r4, #0x10
lsr r0, r0, #0x10
- blx FUN_020CA0F8
+ blx OS_ReleaseLockID
cmp r5, #0x0
bne _02023652
ldr r0, _02023658 ; =0x021C59C8
@@ -74762,13 +74762,13 @@ FUN_02023668: ; 0x02023668
add r5, r0, #0x0
add r6, r1, #0x0
add r7, r2, #0x0
- blx FUN_020CA0A0
+ blx OS_GetLockID
add r4, r0, #0x0
mov r0, #0x2
mvn r0, r0
cmp r4, r0
bne _02023684
- bl FUN_02020C2C
+ bl ErrorHandling
_02023684:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
@@ -74813,7 +74813,7 @@ _020236B2:
pop {r3-r7, pc}
.balign 4
_020236DC: .word 0x021C59C8
-_020236E0: .word FUN_0202365C + 1
+_020236E0: .word FUN_0202365C
thumb_func_start FUN_020236E4
FUN_020236E4: ; 0x020236E4
@@ -74829,7 +74829,7 @@ FUN_020236E4: ; 0x020236E4
blx FUN_020D66A0
lsl r0, r5, #0x10
lsr r0, r0, #0x10
- blx FUN_020CA0F8
+ blx OS_ReleaseLockID
blx FUN_020D6700
cmp r0, #0x0
beq _02023714
@@ -74843,7 +74843,7 @@ _02023714:
str r0, [r4, #0x0]
b _02023734
_0202371A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0202371E:
mov r1, #0x0
add r0, r5, #0x0
@@ -74874,7 +74874,7 @@ FUN_02023740: ; 0x02023740
blx FUN_020D66A0
lsl r0, r5, #0x10
lsr r0, r0, #0x10
- blx FUN_020CA0F8
+ blx OS_ReleaseLockID
ldr r0, _02023768 ; =0x021C59C8
ldr r0, [r0, #0x0]
bl FUN_02016A18
@@ -74897,7 +74897,7 @@ FUN_02023770: ; 0x02023770
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x5c
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r4, #0x10
add r0, r4, #0x0
bl FUN_02023840
@@ -74909,7 +74909,7 @@ FUN_02023788: ; 0x02023788
mov r1, #0x0
bx r3
nop
-_02023790: .word FUN_02022610 + 1
+_02023790: .word FUN_02022610
thumb_func_start FUN_02023794
FUN_02023794: ; 0x02023794
@@ -74924,14 +74924,14 @@ FUN_020237A0: ; 0x020237A0
push {r4, lr}
sub sp, #0x50
add r4, r0, #0x0
- blx FUN_020CD510
+ blx OS_GetOwnerRtcOffset
str r0, [r4, #0x0]
add r0, r4, #0x0
add r0, #0x8
str r1, [r4, #0x4]
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
add r0, sp, #0x0
- blx FUN_020CD524
+ blx OS_GetOwnerInfo
add r0, sp, #0x0
ldrb r1, [r0, #0x2]
strb r1, [r4, #0xe]
@@ -74947,7 +74947,7 @@ FUN_020237CC: ; 0x020237CC
sub sp, #0x8
add r4, r0, #0x0
add r0, sp, #0x0
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
mov r2, #0x0
add r3, sp, #0x0
_020237DC:
@@ -74973,7 +74973,7 @@ _020237EC:
FUN_020237FC: ; 0x020237FC
push {r4, lr}
add r4, r0, #0x0
- blx FUN_020CD510
+ blx OS_GetOwnerRtcOffset
ldr r3, [r4, #0x0]
ldr r2, [r4, #0x4]
eor r0, r3
@@ -75113,7 +75113,7 @@ FUN_020238C8: ; 0x020238C8
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x2c
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
bl FUN_02024F50
add r0, r4, #0x4
@@ -75134,13 +75134,13 @@ FUN_020238F4: ; 0x020238F4
add r0, r0, #0x4
pop {r3, pc}
- thumb_func_start FUN_02023900
-FUN_02023900: ; 0x02023900
+ thumb_func_start LoadPlayerDataAddress
+LoadPlayerDataAddress: ; 0x02023900
ldr r3, _02023908 ; =FUN_02022610
mov r1, #0x1
bx r3
nop
-_02023908: .word FUN_02022610 + 1
+_02023908: .word FUN_02022610
thumb_func_start FUN_0202390C
FUN_0202390C: ; 0x0202390C
@@ -75176,11 +75176,11 @@ FUN_02023928: ; 0x02023928
thumb_func_start FUN_0202393C
FUN_0202393C: ; 0x0202393C
- ldr r3, _02023944 ; =FUN_020CE3E0
+ ldr r3, _02023944 ; =MI_CpuCopy8
mov r2, #0x20
bx r3
nop
-_02023944: .word FUN_020CE3E0
+_02023944: .word MI_CpuCopy8
thumb_func_start FUN_02023948
FUN_02023948: ; 0x02023948
@@ -75203,7 +75203,7 @@ FUN_0202395C: ; 0x0202395C
bl FUN_02002288
cmp r0, #0x8
blt _02023970
- bl FUN_02020C2C
+ bl ErrorHandling
_02023970:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -75220,7 +75220,7 @@ FUN_0202397C: ; 0x0202397C
mov r2, #0x8
bx r3
.balign 4
-_02023988: .word FUN_02021EF0 + 1
+_02023988: .word FUN_02021EF0
thumb_func_start FUN_0202398C
FUN_0202398C: ; 0x0202398C
@@ -75235,7 +75235,7 @@ FUN_02023990: ; 0x02023990
add r1, r2, #0x0
bx r3
nop
-_0202399C: .word FUN_02021E28 + 1
+_0202399C: .word FUN_02021E28
thumb_func_start FUN_020239A0
FUN_020239A0: ; 0x020239A0
@@ -75473,11 +75473,11 @@ FUN_02023AC8: ; 0x02023AC8
thumb_func_start FUN_02023ACC
FUN_02023ACC: ; 0x02023ACC
- ldr r3, _02023AD4 ; =FUN_020CE3E0
+ ldr r3, _02023AD4 ; =MI_CpuCopy8
mov r2, #0x20
bx r3
nop
-_02023AD4: .word FUN_020CE3E0
+_02023AD4: .word MI_CpuCopy8
thumb_func_start FUN_02023AD8
FUN_02023AD8: ; 0x02023AD8
@@ -75497,7 +75497,7 @@ FUN_02023AE4: ; 0x02023AE4
mov r2, #0xc
bx r3
.balign 4
-_02023AF0: .word FUN_02021E8C + 1
+_02023AF0: .word FUN_02021E8C
thumb_func_start FUN_02023AF4
FUN_02023AF4: ; 0x02023AF4
@@ -75614,7 +75614,7 @@ FUN_02023BA4: ; 0x02023BA4
add r4, r0, #0x0
cmp r5, #0x1
blt _02023BB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02023BB2:
add r0, r4, #0x0
mov r1, #0xd
@@ -75882,7 +75882,7 @@ FUN_02023D58: ; 0x02023D58
mov r1, #0x8
bx r3
nop
-_02023D60: .word FUN_02022610 + 1
+_02023D60: .word FUN_02022610
thumb_func_start FUN_02023D64
FUN_02023D64: ; 0x02023D64
@@ -75904,12 +75904,12 @@ FUN_02023D6C: ; 0x02023D6C
thumb_func_start FUN_02023D80
FUN_02023D80: ; 0x02023D80
- ldr r3, _02023D88 ; =FUN_020CE3E0
+ ldr r3, _02023D88 ; =MI_CpuCopy8
mov r2, #0x4f
lsl r2, r2, #0x2
bx r3
.balign 4
-_02023D88: .word FUN_020CE3E0
+_02023D88: .word MI_CpuCopy8
thumb_func_start FUN_02023D8C
FUN_02023D8C: ; 0x02023D8C
@@ -75922,7 +75922,7 @@ FUN_02023D8C: ; 0x02023D8C
add r0, r0, #0x1
cmp r4, r0
beq _02023DA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02023DA2:
lsl r1, r4, #0x10
add r0, r5, #0x0
@@ -75979,7 +75979,7 @@ FUN_02023DEC: ; 0x02023DEC
add r0, r0, #0x1
cmp r6, r0
beq _02023E04
- bl FUN_02020C2C
+ bl ErrorHandling
_02023E04:
lsl r1, r6, #0x10
add r0, r7, #0x0
@@ -76053,7 +76053,7 @@ FUN_02023E70: ; 0x02023E70
add r0, r0, #0x1
cmp r5, r0
beq _02023E88
- bl FUN_02020C2C
+ bl ErrorHandling
_02023E88:
lsl r2, r7, #0x18
add r0, r6, #0x0
@@ -76084,7 +76084,7 @@ _02023EA4:
lsr r0, r0, #0x18
cmp r0, #0x2
blo _02023EC6
- bl FUN_02020C2C
+ bl ErrorHandling
_02023EC6:
sub r0, r6, #0x1
lsl r0, r0, #0x10
@@ -76113,7 +76113,7 @@ _02023EC6:
lsr r5, r0, #0x10
cmp r6, #0x2
blo _02023F00
- bl FUN_02020C2C
+ bl ErrorHandling
_02023F00:
sub r0, r5, #0x1
lsl r0, r0, #0x10
@@ -76151,7 +76151,7 @@ FUN_02023F2C: ; 0x02023F2C
add r0, r0, #0x1
cmp r4, r0
beq _02023F44
- bl FUN_02020C2C
+ bl ErrorHandling
_02023F44:
lsl r1, r4, #0x10
add r0, r5, #0x0
@@ -76205,7 +76205,7 @@ FUN_02023F88: ; 0x02023F88
add r0, r0, #0x1
cmp r5, r0
beq _02023FA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02023FA2:
lsl r1, r5, #0x10
add r0, r6, #0x0
@@ -76262,7 +76262,7 @@ FUN_02023FEC: ; 0x02023FEC
add r0, r0, #0x1
cmp r5, r0
beq _02024006
- bl FUN_02020C2C
+ bl ErrorHandling
_02024006:
lsl r2, r7, #0x18
add r0, r6, #0x0
@@ -76291,7 +76291,7 @@ _02024024:
lsr r0, r0, #0x18
cmp r0, #0x4
blo _02024040
- bl FUN_02020C2C
+ bl ErrorHandling
_02024040:
lsl r0, r5, #0x10
lsr r2, r0, #0x10
@@ -76323,11 +76323,11 @@ FUN_02024068: ; 0x02024068
add r4, r1, #0x0
cmp r6, #0x4
blo _02024078
- bl FUN_02020C2C
+ bl ErrorHandling
_02024078:
cmp r4, #0xf
bls _02024080
- bl FUN_02020C2C
+ bl ErrorHandling
_02024080:
cmp r6, #0x2
bhs _0202409E
@@ -76795,7 +76795,7 @@ FUN_020243C8: ; 0x020243C8
ldr r0, _020243FC ; =0xBEEFCAFE
cmp r1, r0
beq _020243D8
- bl FUN_02020C2C
+ bl ErrorHandling
_020243D8:
ldr r7, _02024400 ; =0x000001ED
mov r5, #0x0
@@ -76827,7 +76827,7 @@ FUN_02024404: ; 0x02024404
ldr r0, _02024438 ; =0xBEEFCAFE
cmp r1, r0
beq _02024414
- bl FUN_02020C2C
+ bl ErrorHandling
_02024414:
ldr r7, _0202443C ; =0x000001ED
mov r5, #0x0
@@ -76874,7 +76874,7 @@ FUN_0202445C: ; 0x0202445C
ldr r0, _0202449C ; =0xBEEFCAFE
cmp r1, r0
beq _0202446C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202446C:
ldr r7, _020244A0 ; =0x000001ED
mov r5, #0x0
@@ -76911,7 +76911,7 @@ FUN_020244A4: ; 0x020244A4
ldr r0, _020244E4 ; =0xBEEFCAFE
cmp r1, r0
beq _020244B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020244B4:
ldr r7, _020244E8 ; =0x000001ED
mov r5, #0x0
@@ -77044,7 +77044,7 @@ FUN_02024594: ; 0x02024594
ldr r0, _020245E8 ; =0xBEEFCAFE
cmp r1, r0
beq _020245A6
- bl FUN_02020C2C
+ bl ErrorHandling
_020245A6:
cmp r4, #0x0
beq _020245B0
@@ -77052,7 +77052,7 @@ _020245A6:
cmp r4, r0
bls _020245B8
_020245B0:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
b _020245BA
_020245B8:
@@ -77097,7 +77097,7 @@ FUN_020245F0: ; 0x020245F0
ldr r0, _02024640 ; =0xBEEFCAFE
cmp r1, r0
beq _02024602
- bl FUN_02020C2C
+ bl ErrorHandling
_02024602:
cmp r4, #0x0
beq _0202460C
@@ -77105,7 +77105,7 @@ _02024602:
cmp r4, r0
bls _02024614
_0202460C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
b _02024616
_02024614:
@@ -77146,7 +77146,7 @@ FUN_02024648: ; 0x02024648
ldr r0, _02024670 ; =0xBEEFCAFE
cmp r1, r0
beq _0202465A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202465A:
cmp r4, #0x0
bne _02024666
@@ -77155,7 +77155,7 @@ _0202465A:
ldr r6, [r5, r0]
b _0202466A
_02024666:
- bl FUN_02020C2C
+ bl ErrorHandling
_0202466A:
add r0, r6, #0x0
pop {r4-r6, pc}
@@ -77172,7 +77172,7 @@ FUN_02024674: ; 0x02024674
add r6, r2, #0x0
cmp r1, r0
beq _02024688
- bl FUN_02020C2C
+ bl ErrorHandling
_02024688:
cmp r4, #0x0
beq _02024692
@@ -77180,7 +77180,7 @@ _02024688:
cmp r4, r0
bls _0202469A
_02024692:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
b _0202469C
_0202469A:
@@ -77227,7 +77227,7 @@ FUN_020246DC: ; 0x020246DC
ldr r0, _02024718 ; =0xBEEFCAFE
cmp r1, r0
beq _020246EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020246EE:
mov r0, #0x43
mov r2, #0x0
@@ -77263,7 +77263,7 @@ FUN_0202471C: ; 0x0202471C
ldr r0, _02024744 ; =0xBEEFCAFE
cmp r1, r0
beq _0202472C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202472C:
mov r1, #0x43
mov r0, #0x0
@@ -77290,7 +77290,7 @@ FUN_02024748: ; 0x02024748
ldr r0, _0202479C ; =0xBEEFCAFE
cmp r1, r0
beq _0202475A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202475A:
ldr r1, _020247A0 ; =0x000001A6
add r0, r5, #0x0
@@ -77303,7 +77303,7 @@ _0202475A:
_0202476C:
cmp r4, #0x2
blt _02024774
- bl FUN_02020C2C
+ bl ErrorHandling
_02024774:
add r0, r4, #0x1
lsl r0, r0, #0x10
@@ -77338,7 +77338,7 @@ FUN_020247A4: ; 0x020247A4
ldr r0, _020247C0 ; =0xBEEFCAFE
cmp r1, r0
beq _020247B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020247B4:
ldr r1, _020247C4 ; =0x000001A6
add r0, r4, #0x0
@@ -77357,7 +77357,7 @@ FUN_020247C8: ; 0x020247C8
ldr r0, _0202481C ; =0xBEEFCAFE
cmp r1, r0
beq _020247DA
- bl FUN_02020C2C
+ bl ErrorHandling
_020247DA:
ldr r1, _02024820 ; =0x000001A7
add r0, r5, #0x0
@@ -77370,7 +77370,7 @@ _020247DA:
_020247EC:
cmp r4, #0x2
blt _020247F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020247F4:
add r0, r4, #0x1
lsl r0, r0, #0x10
@@ -77405,7 +77405,7 @@ FUN_02024828: ; 0x02024828
ldr r0, _02024844 ; =0xBEEFCAFE
cmp r1, r0
beq _02024838
- bl FUN_02020C2C
+ bl ErrorHandling
_02024838:
ldr r1, _02024848 ; =0x000001A7
add r0, r4, #0x0
@@ -77424,7 +77424,7 @@ FUN_0202484C: ; 0x0202484C
ldr r0, _02024894 ; =0xBEEFCAFE
cmp r1, r0
beq _0202485E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202485E:
mov r1, #0x67
add r0, r5, #0x0
@@ -77438,7 +77438,7 @@ _0202485E:
_02024872:
cmp r4, #0x3
blt _0202487A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202487A:
lsl r0, r4, #0x10
lsr r2, r0, #0x10
@@ -77464,7 +77464,7 @@ FUN_0202489C: ; 0x0202489C
ldr r0, _020248B8 ; =0xBEEFCAFE
cmp r1, r0
beq _020248AC
- bl FUN_02020C2C
+ bl ErrorHandling
_020248AC:
mov r1, #0x67
add r0, r4, #0x0
@@ -77483,7 +77483,7 @@ FUN_020248BC: ; 0x020248BC
ldr r0, _02024900 ; =0xBEEFCAFE
cmp r1, r0
beq _020248CE
- bl FUN_02020C2C
+ bl ErrorHandling
_020248CE:
ldr r1, _02024904 ; =0x0000019D
add r0, r5, #0x0
@@ -77496,7 +77496,7 @@ _020248CE:
_020248E0:
cmp r4, #0x3
blt _020248E8
- bl FUN_02020C2C
+ bl ErrorHandling
_020248E8:
lsl r0, r4, #0x10
lsr r2, r0, #0x10
@@ -77523,7 +77523,7 @@ FUN_0202490C: ; 0x0202490C
ldr r0, _02024928 ; =0xBEEFCAFE
cmp r1, r0
beq _0202491C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202491C:
ldr r1, _0202492C ; =0x0000019D
add r0, r4, #0x0
@@ -77542,7 +77542,7 @@ FUN_02024930: ; 0x02024930
ldr r0, _0202496C ; =0xBEEFCAFE
cmp r1, r0
beq _02024942
- bl FUN_02020C2C
+ bl ErrorHandling
_02024942:
lsl r0, r4, #0x18
lsr r0, r0, #0x18
@@ -77577,7 +77577,7 @@ FUN_02024970: ; 0x02024970
ldr r0, _02024988 ; =0xBEEFCAFE
cmp r1, r0
beq _02024980
- bl FUN_02020C2C
+ bl ErrorHandling
_02024980:
add r0, r4, #0x0
bl FUN_020240D0
@@ -77610,7 +77610,7 @@ FUN_0202498C: ; 0x0202498C
ldr r0, _02024AE4 ; =0xBEEFCAFE
cmp r1, r0
beq _020249C4
- bl FUN_02020C2C
+ bl ErrorHandling
_020249C4:
ldr r0, [sp, #0x4]
cmp r0, #0x0
@@ -77619,7 +77619,7 @@ _020249C4:
cmp r0, r1
bls _020249D8
_020249D0:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
b _020249DA
_020249D8:
@@ -77653,7 +77653,7 @@ _02024A08:
lsr r6, r0, #0x18
cmp r6, #0x2
bls _02024A14
- bl FUN_02020C2C
+ bl ErrorHandling
_02024A14:
cmp r6, #0x2
bne _02024A1A
@@ -77661,7 +77661,7 @@ _02024A14:
_02024A1A:
cmp r6, #0x2
blo _02024A22
- bl FUN_02020C2C
+ bl ErrorHandling
_02024A22:
add r2, r5, #0x0
mov r0, #0x7
@@ -77682,7 +77682,7 @@ _02024A22:
strb r0, [r2, r1]
cmp r6, #0x2
blo _02024A4C
- bl FUN_02020C2C
+ bl ErrorHandling
_02024A4C:
add r1, r5, #0x0
mov r0, #0x7
@@ -77718,7 +77718,7 @@ _02024A7C:
lsr r6, r0, #0x18
cmp r6, #0x2
bls _02024A90
- bl FUN_02020C2C
+ bl ErrorHandling
_02024A90:
cmp r6, #0x2
bne _02024A96
@@ -77726,7 +77726,7 @@ _02024A90:
_02024A96:
cmp r6, #0x2
blo _02024A9E
- bl FUN_02020C2C
+ bl ErrorHandling
_02024A9E:
add r1, r5, #0x0
mov r0, #0x7
@@ -77797,7 +77797,7 @@ FUN_02024AF0: ; 0x02024AF0
ldr r0, _02024C78 ; =0xBEEFCAFE
cmp r1, r0
beq _02024B32
- bl FUN_02020C2C
+ bl ErrorHandling
_02024B32:
cmp r6, #0x0
beq _02024B3C
@@ -77805,7 +77805,7 @@ _02024B32:
cmp r6, r0
bls _02024B44
_02024B3C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
b _02024B46
_02024B44:
@@ -77840,7 +77840,7 @@ _02024B74:
lsr r7, r0, #0x18
cmp r7, #0x2
bls _02024B80
- bl FUN_02020C2C
+ bl ErrorHandling
_02024B80:
cmp r7, #0x2
bne _02024B86
@@ -77848,7 +77848,7 @@ _02024B80:
_02024B86:
cmp r7, #0x2
blo _02024B8E
- bl FUN_02020C2C
+ bl ErrorHandling
_02024B8E:
mov r0, #0x7
and r0, r5
@@ -77875,7 +77875,7 @@ _02024B8E:
strb r1, [r0, r3]
cmp r7, #0x2
blo _02024BC4
- bl FUN_02020C2C
+ bl ErrorHandling
_02024BC4:
add r1, r4, #0x0
mov r0, #0x7
@@ -77912,7 +77912,7 @@ _02024BF6:
lsr r7, r0, #0x18
cmp r7, #0x2
bls _02024C0A
- bl FUN_02020C2C
+ bl ErrorHandling
_02024C0A:
cmp r7, #0x2
bne _02024C10
@@ -77920,7 +77920,7 @@ _02024C0A:
_02024C10:
cmp r7, #0x2
blo _02024C18
- bl FUN_02020C2C
+ bl ErrorHandling
_02024C18:
add r1, r4, #0x0
mov r0, #0x7
@@ -77982,7 +77982,7 @@ FUN_02024C84: ; 0x02024C84
ldr r0, _02024C9C ; =0xBEEFCAFE
cmp r1, r0
beq _02024C94
- bl FUN_02020C2C
+ bl ErrorHandling
_02024C94:
ldr r0, _02024CA0 ; =0x00000139
mov r1, #0x1
@@ -78000,7 +78000,7 @@ FUN_02024CA4: ; 0x02024CA4
ldr r0, _02024CBC ; =0xBEEFCAFE
cmp r1, r0
beq _02024CB4
- bl FUN_02020C2C
+ bl ErrorHandling
_02024CB4:
ldr r0, _02024CC0 ; =0x00000139
ldrb r0, [r4, r0]
@@ -78017,7 +78017,7 @@ FUN_02024CC4: ; 0x02024CC4
ldr r0, _02024CDC ; =0xBEEFCAFE
cmp r1, r0
beq _02024CD4
- bl FUN_02020C2C
+ bl ErrorHandling
_02024CD4:
mov r0, #0x4a
lsl r0, r0, #0x2
@@ -78034,7 +78034,7 @@ FUN_02024CE0: ; 0x02024CE0
ldr r0, _02024CFC ; =0xBEEFCAFE
cmp r1, r0
beq _02024CF0
- bl FUN_02020C2C
+ bl ErrorHandling
_02024CF0:
mov r0, #0x4a
mov r1, #0x1
@@ -78052,13 +78052,13 @@ FUN_02024D00: ; 0x02024D00
add r5, r1, #0x0
cmp r6, #0x8
blo _02024D10
- bl FUN_02020C2C
+ bl ErrorHandling
_02024D10:
ldr r1, [r4, #0x0]
ldr r0, _02024D44 ; =0xBEEFCAFE
cmp r1, r0
beq _02024D1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02024D1C:
add r0, r5, #0x0
bl FUN_02087A50
@@ -78107,7 +78107,7 @@ FUN_02024D64: ; 0x02024D64
ldr r0, _02024D7C ; =0xBEEFCAFE
cmp r1, r0
beq _02024D74
- bl FUN_02020C2C
+ bl ErrorHandling
_02024D74:
mov r0, #0x4e
lsl r0, r0, #0x2
@@ -78124,7 +78124,7 @@ FUN_02024D80: ; 0x02024D80
ldr r0, _02024D9C ; =0xBEEFCAFE
cmp r1, r0
beq _02024D90
- bl FUN_02020C2C
+ bl ErrorHandling
_02024D90:
mov r0, #0x4e
mov r1, #0x1
@@ -78140,7 +78140,7 @@ FUN_02024DA0: ; 0x02024DA0
mov r1, #0x7
bx r3
nop
-_02024DA8: .word FUN_02022610 + 1
+_02024DA8: .word FUN_02022610
thumb_func_start FUN_02024DAC
FUN_02024DAC: ; 0x02024DAC
@@ -78249,7 +78249,7 @@ FUN_02024E6C: ; 0x02024E6C
ldr r2, _02024EA4 ; =0x0000074C
mov r0, #0x0
add r1, r4, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
bl FUN_020250A4
mov r0, #0x7
@@ -78260,12 +78260,12 @@ FUN_02024E6C: ; 0x02024E6C
ldr r0, _02024EAC ; =0x0000FFFF
add r1, r4, r1
mov r2, #0x8
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
ldr r1, _02024EB0 ; =0x00000734
ldr r0, _02024EAC ; =0x0000FFFF
add r1, r4, r1
mov r2, #0xb
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
pop {r4, pc}
.balign 4
_02024EA4: .word 0x0000074C
@@ -78279,7 +78279,7 @@ FUN_02024EB4: ; 0x02024EB4
mov r1, #0xa
bx r3
nop
-_02024EBC: .word FUN_02022610 + 1
+_02024EBC: .word FUN_02022610
thumb_func_start FUN_02024EC0
FUN_02024EC0: ; 0x02024EC0
@@ -78295,7 +78295,7 @@ FUN_02024ECC: ; 0x02024ECC
mov r1, #0xa
bx r3
nop
-_02024ED4: .word FUN_02022610 + 1
+_02024ED4: .word FUN_02022610
thumb_func_start FUN_02024ED8
FUN_02024ED8: ; 0x02024ED8
@@ -78326,7 +78326,7 @@ FUN_02024EF4: ; 0x02024EF4
bx r3
nop
_02024F04: .word 0x00000724
-_02024F08: .word FUN_02021EF0 + 1
+_02024F08: .word FUN_02021EF0
thumb_func_start FUN_02024F0C
FUN_02024F0C: ; 0x02024F0C
@@ -78347,7 +78347,7 @@ FUN_02024F18: ; 0x02024F18
bx r3
nop
_02024F28: .word 0x00000734
-_02024F2C: .word FUN_02021EF0 + 1
+_02024F2C: .word FUN_02021EF0
thumb_func_start FUN_02024F30
FUN_02024F30: ; 0x02024F30
@@ -78362,11 +78362,11 @@ FUN_02024F30: ; 0x02024F30
thumb_func_start FUN_02024F44
FUN_02024F44: ; 0x02024F44
- ldr r3, _02024F4C ; =FUN_020CE3E0
+ ldr r3, _02024F4C ; =MI_CpuCopy8
mov r2, #0x2
bx r3
nop
-_02024F4C: .word FUN_020CE3E0
+_02024F4C: .word MI_CpuCopy8
thumb_func_start FUN_02024F50
FUN_02024F50: ; 0x02024F50
@@ -78374,7 +78374,7 @@ FUN_02024F50: ; 0x02024F50
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldrh r1, [r4, #0x0]
mov r0, #0xf
bic r1, r0
@@ -78411,7 +78411,7 @@ FUN_02024F9C: ; 0x02024F9C
push {r3, lr}
cmp r0, #0x0
beq _02024FAC
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02025064
add r1, r0, #0x0
_02024FAC:
@@ -78589,7 +78589,7 @@ FUN_020250A4: ; 0x020250A4
mov r1, #0x0
lsl r2, r2, #0x8
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r1, #0x0
add r0, r1, #0x0
_020250B6:
@@ -78970,7 +78970,7 @@ _0202531E: ; jump table (using 16-bit offset)
.short _02025336 - _0202531E - 2; case 4
.short _0202534E - _0202531E - 2; case 5
_0202532A:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
_02025330:
add r0, r2, #0x1
@@ -79026,12 +79026,12 @@ FUN_02025374: ; 0x02025374
mov r1, #0x3c
str r0, [sp, #0x0]
add r0, r7, r0
- blx FUN_020EBC80
+ blx _s32_div_f
add r4, r0, #0x0
ldr r0, [sp, #0x0]
mov r1, #0x3c
add r0, r7, r0
- blx FUN_020EBC80
+ blx _s32_div_f
strh r1, [r5, #0x4]
cmp r4, #0x0
beq _020253DE
@@ -79049,7 +79049,7 @@ _020253BA:
sub r0, r6, #0x1
add r0, r1, r0
add r1, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
sub r4, r4, r0
mov r0, #0x0
strb r0, [r5, #0xa]
@@ -79151,12 +79151,12 @@ _02025474:
thumb_func_start FUN_02025484
FUN_02025484: ; 0x02025484
- ldr r3, _0202548C ; =FUN_020CE34C
+ ldr r3, _0202548C ; =MI_CpuFill8
mov r1, #0x0
mov r2, #0x24
bx r3
.balign 4
-_0202548C: .word FUN_020CE34C
+_0202548C: .word MI_CpuFill8
thumb_func_start FUN_02025490
FUN_02025490: ; 0x02025490
@@ -79175,7 +79175,7 @@ FUN_020254A0: ; 0x020254A0
ldr r0, [r4, #0x0]
cmp r0, r1
beq _020254AE
- bl FUN_02020C2C
+ bl ErrorHandling
_020254AE:
add r0, r4, #0x4
pop {r4, pc}
@@ -79199,7 +79199,7 @@ FUN_020254C0: ; 0x020254C0
mov r1, #0x9
bx r3
nop
-_020254C8: .word FUN_02022610 + 1
+_020254C8: .word FUN_02022610
thumb_func_start FUN_020254CC
FUN_020254CC: ; 0x020254CC
@@ -79496,11 +79496,11 @@ FUN_020256BC: ; 0x020256BC
thumb_func_start FUN_020256D0
FUN_020256D0: ; 0x020256D0
- ldr r3, _020256D8 ; =FUN_020CE3E0
+ ldr r3, _020256D8 ; =MI_CpuCopy8
mov r2, #0x38
bx r3
nop
-_020256D8: .word FUN_020CE3E0
+_020256D8: .word MI_CpuCopy8
thumb_func_start FUN_020256DC
FUN_020256DC: ; 0x020256DC
@@ -79705,7 +79705,7 @@ FUN_02025838: ; 0x02025838
mov r1, #0xf
bx r3
nop
-_02025840: .word FUN_02022610 + 1
+_02025840: .word FUN_02022610
thumb_func_start FUN_02025844
FUN_02025844: ; 0x02025844
@@ -79900,7 +79900,7 @@ FUN_02025964: ; 0x02025964
mov r1, #0x0
mov r2, #0x3c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
pop {r4, pc}
.balign 4
@@ -79936,7 +79936,7 @@ FUN_0202597C: ; 0x0202597C
ldr r2, _020259DC ; =0x000009B4
add r0, r4, #0x0
add r1, r7, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
add r0, #0x94
mov r1, #0x9b
@@ -80334,7 +80334,7 @@ _02025C50:
ldr r0, [sp, #0x0]
cmp r0, #0x5
blt _02025C72
- bl FUN_02020C2C
+ bl ErrorHandling
_02025C72:
add r0, r6, #0x0
bl FUN_0202398C
@@ -80344,7 +80344,7 @@ _02025C72:
lsl r1, r1, #0x4
add r1, r2, r1
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r6, #0x0
bl FUN_020239BC
ldr r1, [sp, #0x0]
@@ -80445,11 +80445,11 @@ FUN_02025D48: ; 0x02025D48
add r4, r0, #0x0
cmp r4, #0xb
bge _02025D54
- bl FUN_02020C2C
+ bl ErrorHandling
_02025D54:
cmp r4, #0x3c
blt _02025D5C
- bl FUN_02020C2C
+ bl ErrorHandling
_02025D5C:
sub r4, #0xb
ldr r0, _02025D68 ; =0x02105C74
@@ -80537,7 +80537,7 @@ FUN_02025DD4: ; 0x02025DD4
bl FUN_02025F0C
cmp r0, #0x0
beq _02025DE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02025DE6:
mov r0, #0x81
add r1, r5, r4
@@ -80584,7 +80584,7 @@ FUN_02025E20: ; 0x02025E20
add r0, r5, r0
add r1, sp, #0xc
mov r2, #0xc8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r2, [sp, #0x8]
add r1, sp, #0xc
add r0, r4, #0x0
@@ -80679,11 +80679,11 @@ FUN_02025EDC: ; 0x02025EDC
add r4, r1, #0x0
cmp r6, #0x1
bge _02025EEC
- bl FUN_02020C2C
+ bl ErrorHandling
_02025EEC:
cmp r6, #0xf
ble _02025EF4
- bl FUN_02020C2C
+ bl ErrorHandling
_02025EF4:
sub r0, r6, #0x1
add r1, r5, r0
@@ -80740,12 +80740,12 @@ FUN_02025F44: ; 0x02025F44
mov r1, #0x9a
lsl r1, r1, #0x4
add r0, r0, r1
- ldr r3, _02025F54 ; =FUN_020CE34C
+ ldr r3, _02025F54 ; =MI_CpuFill8
mov r1, #0x0
mov r2, #0xf
bx r3
nop
-_02025F54: .word FUN_020CE34C
+_02025F54: .word MI_CpuFill8
thumb_func_start FUN_02025F58
FUN_02025F58: ; 0x02025F58
@@ -80861,7 +80861,7 @@ FUN_02025FFC: ; 0x02025FFC
add r1, sp, #0x8
mov r2, #0x28
mov r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r2, [sp, #0x4]
add r1, sp, #0x8
add r0, r4, #0x0
@@ -81003,12 +81003,12 @@ FUN_020260EC: ; 0x020260EC
add r1, sp, #0x34
mov r2, #0x28
mov r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _02026168 ; =0x00000978
add r1, sp, #0xc
add r0, r7, r0
mov r2, #0x28
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r3, [sp, #0x0]
add r1, sp, #0x34
add r3, r1, r3
@@ -81146,7 +81146,7 @@ FUN_020261EC: ; 0x020261EC
add r1, sp, #0x8
mov r2, #0x28
mov r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r2, [sp, #0x4]
add r1, sp, #0x8
add r0, r4, #0x0
@@ -81268,7 +81268,7 @@ FUN_020262BC: ; 0x020262BC
add r1, sp, #0x8
mov r2, #0x28
mov r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r2, [sp, #0x4]
add r1, sp, #0x8
add r0, r4, #0x0
@@ -81310,7 +81310,7 @@ FUN_0202630C: ; 0x0202630C
add r6, r3, #0x0
cmp r4, #0x40
blt _0202631E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202631E:
ldr r0, _02026350 ; =0x0000010F
add r1, r5, r4
@@ -81346,7 +81346,7 @@ FUN_02026354: ; 0x02026354
add r5, r0, #0x0
cmp r4, #0x40
blt _02026362
- bl FUN_02020C2C
+ bl ErrorHandling
_02026362:
ldr r0, _0202636C ; =0x0000010F
add r1, r5, r4
@@ -81362,7 +81362,7 @@ FUN_02026370: ; 0x02026370
add r5, r0, #0x0
cmp r4, #0x40
blt _0202637E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202637E:
lsl r0, r4, #0x1
add r0, r4, r0
@@ -81387,7 +81387,7 @@ FUN_0202639C: ; 0x0202639C
add r5, r0, #0x0
cmp r4, #0x40
blt _020263AA
- bl FUN_02020C2C
+ bl ErrorHandling
_020263AA:
lsl r0, r4, #0x1
add r0, r4, r0
@@ -81412,7 +81412,7 @@ FUN_020263C8: ; 0x020263C8
add r5, r0, #0x0
cmp r4, #0x40
blt _020263D6
- bl FUN_02020C2C
+ bl ErrorHandling
_020263D6:
ldr r0, _020263F0 ; =0x0000010F
mov r1, #0x0
@@ -81424,7 +81424,7 @@ _020263D6:
add r0, r4, r0
add r0, r2, r0
mov r2, #0x3
- blx FUN_020CE34C
+ blx MI_CpuFill8
pop {r3-r5, pc}
.balign 4
_020263F0: .word 0x0000010F
@@ -81438,7 +81438,7 @@ FUN_020263F4: ; 0x020263F4
add r6, r3, #0x0
cmp r4, #0x10
blt _02026406
- bl FUN_02020C2C
+ bl ErrorHandling
_02026406:
lsl r2, r4, #0x1
ldr r1, _02026440 ; =0x0000050C
@@ -81534,7 +81534,7 @@ FUN_0202649C: ; 0x0202649C
add r7, r3, #0x0
cmp r4, #0x64
blt _020264AE
- bl FUN_02020C2C
+ bl ErrorHandling
_020264AE:
ldr r1, _020264E8 ; =0x0000055C
add r0, r5, r4
@@ -81692,7 +81692,7 @@ FUN_020265B8: ; 0x020265B8
add r5, r0, #0x0
cmp r4, #0xff
blt _020265C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020265C6:
ldr r0, _020265DC ; =0x0000020F
mov r2, #0x3
@@ -81701,7 +81701,7 @@ _020265C6:
add r0, r4, r0
add r0, r1, r0
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
pop {r3-r5, pc}
nop
_020265DC: .word 0x0000020F
@@ -81861,12 +81861,12 @@ _020266D0: .word 0x000009AF
thumb_func_start FUN_020266D4
FUN_020266D4: ; 0x020266D4
- ldr r3, _020266DC ; =FUN_020CE34C
+ ldr r3, _020266DC ; =MI_CpuFill8
mov r1, #0x0
mov r2, #0x94
bx r3
.balign 4
-_020266DC: .word FUN_020CE34C
+_020266DC: .word MI_CpuFill8
thumb_func_start FUN_020266E0
FUN_020266E0: ; 0x020266E0
@@ -81874,12 +81874,12 @@ FUN_020266E0: ; 0x020266E0
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x2d
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
add r0, #0x2d
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
mov r1, #0x0
add r0, #0x8c
@@ -81911,20 +81911,20 @@ FUN_0202671C: ; 0x0202671C
add r6, r3, #0x0
cmp r4, #0x20
blt _0202672E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202672E:
cmp r6, #0x20
blt _02026736
- bl FUN_02020C2C
+ bl ErrorHandling
_02026736:
ldr r0, [sp, #0x18]
cmp r0, #0x20
blt _02026740
- bl FUN_02020C2C
+ bl ErrorHandling
_02026740:
cmp r5, #0x0
bne _02026748
- bl FUN_02020C2C
+ bl ErrorHandling
_02026748:
cmp r4, #0x0
beq _02026774
@@ -82006,7 +82006,7 @@ FUN_020267C4: ; 0x020267C4
add r4, r0, #0x0
cmp r5, #0x20
blt _020267D2
- bl FUN_02020C2C
+ bl ErrorHandling
_020267D2:
cmp r5, #0x0
bne _020267DE
@@ -82049,7 +82049,7 @@ FUN_02026810: ; 0x02026810
add r4, r0, #0x0
cmp r5, #0x20
blt _0202681E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202681E:
cmp r5, #0x0
bne _02026826
@@ -82078,7 +82078,7 @@ FUN_02026840: ; 0x02026840
add r4, r0, #0x0
cmp r5, #0x20
blt _0202684E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202684E:
cmp r5, #0x0
bne _02026856
@@ -82743,7 +82743,7 @@ FUN_02026CA8: ; 0x02026CA8
mov r1, #0xc
bx r3
nop
-_02026CB0: .word FUN_02022610 + 1
+_02026CB0: .word FUN_02022610
thumb_func_start FUN_02026CB4
FUN_02026CB4: ; 0x02026CB4
@@ -82764,7 +82764,7 @@ FUN_02026CC4: ; 0x02026CC4
mov r1, #0xc
bx r3
nop
-_02026CCC: .word FUN_02022610 + 1
+_02026CCC: .word FUN_02022610
thumb_func_start FUN_02026CD0
FUN_02026CD0: ; 0x02026CD0
@@ -82833,20 +82833,20 @@ FUN_02026D34: ; 0x02026D34
lsl r0, r0, #0x8
cmp r1, r0
blt _02026D5E
- bl FUN_02020C2C
+ bl ErrorHandling
_02026D5E:
mov r0, #0x1
ldr r1, [sp, #0x8]
lsl r0, r0, #0x8
cmp r1, r0
blt _02026D6C
- bl FUN_02020C2C
+ bl ErrorHandling
_02026D6C:
mov r0, #0x7f
mvn r0, r0
cmp r4, r0
bgt _02026D78
- bl FUN_02020C2C
+ bl ErrorHandling
_02026D78:
lsl r0, r4, #0x18
asr r0, r0, #0x18
@@ -82899,7 +82899,7 @@ FUN_02026DC4: ; 0x02026DC4
add r6, r1, #0x0
cmp r4, #0x3d
blo _02026DD4
- bl FUN_02020C2C
+ bl ErrorHandling
_02026DD4:
lsr r2, r4, #0x1f
lsl r1, r4, #0x1d
@@ -82935,7 +82935,7 @@ FUN_02026E08: ; 0x02026E08
add r5, r0, #0x0
cmp r4, #0x3d
blo _02026E16
- bl FUN_02020C2C
+ bl ErrorHandling
_02026E16:
lsr r3, r4, #0x1f
lsl r2, r4, #0x1d
@@ -82972,7 +82972,7 @@ FUN_02026E48: ; 0x02026E48
add r6, r2, #0x0
cmp r4, #0x2
blo _02026E58
- bl FUN_02020C2C
+ bl ErrorHandling
_02026E58:
lsr r2, r6, #0x1f
lsl r1, r6, #0x1b
@@ -83030,7 +83030,7 @@ FUN_02026EB0: ; 0x02026EB0
add r6, r2, #0x0
cmp r4, #0x12
bls _02026EC0
- bl FUN_02020C2C
+ bl ErrorHandling
_02026EC0:
lsr r2, r6, #0x1f
lsl r1, r6, #0x1e
@@ -83220,7 +83220,7 @@ FUN_02027008: ; 0x02027008
add r5, r0, #0x0
cmp r6, #0xb
blt _02027016
- bl FUN_02020C2C
+ bl ErrorHandling
_02027016:
mov r0, #0x74
add r4, r6, #0x0
@@ -83240,7 +83240,7 @@ _0202702E:
_02027030:
cmp r0, #0x0
bne _02027038
- bl FUN_02020C2C
+ bl ErrorHandling
_02027038:
add r0, r5, r4
pop {r4-r6, pc}
@@ -83255,7 +83255,7 @@ FUN_02027044: ; 0x02027044
add r5, r0, #0x0
cmp r6, #0x5
blt _02027052
- bl FUN_02020C2C
+ bl ErrorHandling
_02027052:
mov r0, #0x98
add r4, r6, #0x0
@@ -83277,7 +83277,7 @@ _0202706E:
_02027070:
cmp r0, #0x0
bne _02027078
- bl FUN_02020C2C
+ bl ErrorHandling
_02027078:
ldr r0, _02027080 ; =0x000004FC
add r0, r5, r0
@@ -83303,7 +83303,7 @@ FUN_02027098: ; 0x02027098
add r5, r0, #0x0
cmp r4, #0xb
blt _020270A6
- bl FUN_02020C2C
+ bl ErrorHandling
_020270A6:
mov r0, #0x74
mul r0, r4
@@ -83319,7 +83319,7 @@ FUN_020270B4: ; 0x020270B4
add r5, r0, #0x0
cmp r4, #0x5
blt _020270C2
- bl FUN_02020C2C
+ bl ErrorHandling
_020270C2:
ldr r0, _020270D4 ; =0x000004FC
add r1, r5, r0
@@ -83375,7 +83375,7 @@ FUN_02027114: ; 0x02027114
add r4, r0, #0x0
cmp r5, #0x64
blo _02027122
- bl FUN_02020C2C
+ bl ErrorHandling
_02027122:
cmp r5, #0x3d
bhs _02027132
@@ -83386,7 +83386,7 @@ _02027122:
pop {r3-r5, pc}
_02027132:
bhs _02027138
- bl FUN_02020C2C
+ bl ErrorHandling
_02027138:
sub r5, #0x3d
lsl r0, r5, #0x18
@@ -83405,7 +83405,7 @@ FUN_0202714C: ; 0x0202714C
add r5, r0, #0x0
cmp r4, #0x12
blo _0202715A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202715A:
add r5, #0x28
lsl r1, r4, #0x18
@@ -83459,7 +83459,7 @@ FUN_020271A4: ; 0x020271A4
add r6, r2, #0x0
cmp r4, #0x64
blo _020271B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020271B4:
cmp r4, #0x3d
bhs _020271DA
@@ -83494,7 +83494,7 @@ _020271DA:
_020271F2:
cmp r4, #0x3d
bhs _020271FA
- bl FUN_02020C2C
+ bl ErrorHandling
_020271FA:
sub r4, #0x3d
lsl r0, r4, #0x18
@@ -83515,7 +83515,7 @@ FUN_02027210: ; 0x02027210
add r6, r2, #0x0
cmp r4, #0x64
blo _02027220
- bl FUN_02020C2C
+ bl ErrorHandling
_02027220:
cmp r4, #0x3d
bhs _02027248
@@ -83539,7 +83539,7 @@ _0202723C:
pop {r4-r6, pc}
_02027248:
bhs _0202724E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202724E:
sub r4, #0x3d
lsl r0, r4, #0x18
@@ -83559,7 +83559,7 @@ FUN_02027264: ; 0x02027264
add r5, r0, #0x0
cmp r4, #0x12
blo _02027272
- bl FUN_02020C2C
+ bl ErrorHandling
_02027272:
add r0, r5, #0x0
lsl r1, r4, #0x18
@@ -83600,7 +83600,7 @@ _020272B2:
_020272B4:
cmp r0, #0x0
bne _020272BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020272BC:
ldr r1, [r4, #0x0]
ldr r0, _020272D0 ; =0x00002345
@@ -83634,7 +83634,7 @@ _020272EA:
_020272EC:
cmp r0, #0x0
bne _020272F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020272F4:
ldr r0, _02027308 ; =0x00002345
str r0, [r4, #0x0]
@@ -83667,7 +83667,7 @@ _02027326:
_02027328:
cmp r0, #0x0
bne _02027330
- bl FUN_02020C2C
+ bl ErrorHandling
_02027330:
add r0, r4, #0x0
mov r1, #0x0
@@ -83701,7 +83701,7 @@ _02027362:
_02027364:
cmp r0, #0x0
bne _0202736C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202736C:
add r0, r5, #0x4
add r1, r4, #0x0
@@ -83734,7 +83734,7 @@ FUN_02027380: ; 0x02027380
str r0, [sp, #0x8]
cmp r6, #0xa
blt _020273B0
- bl FUN_02020C2C
+ bl ErrorHandling
_020273B0:
add r1, sp, #0xc
mov r0, #0x4
@@ -83742,7 +83742,7 @@ _020273B0:
add r0, #0xfc
cmp r1, r0
blt _020273C0
- bl FUN_02020C2C
+ bl ErrorHandling
_020273C0:
add r1, sp, #0xc
mov r0, #0x6
@@ -83750,14 +83750,14 @@ _020273C0:
add r0, #0xfa
cmp r7, r0
blt _020273D0
- bl FUN_02020C2C
+ bl ErrorHandling
_020273D0:
mov r1, #0x7f
ldr r0, [sp, #0x8]
mvn r1, r1
cmp r0, r1
bgt _020273DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020273DE:
mov r0, #0x1
lsl r0, r6
@@ -83765,7 +83765,7 @@ _020273DE:
str r0, [sp, #0x4]
tst r0, r1
beq _020273EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020273EE:
ldr r1, [r5, #0x0]
ldr r0, _02027440 ; =0x00001234
@@ -83782,7 +83782,7 @@ _02027400:
_02027402:
cmp r0, #0x0
bne _0202740A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202740A:
ldr r0, [sp, #0x8]
add r1, r5, #0x0
@@ -83833,7 +83833,7 @@ _02027460:
_02027462:
cmp r0, #0x0
bne _0202746A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202746A:
add r5, #0x70
strb r4, [r5, #0x0]
@@ -83862,7 +83862,7 @@ _02027490:
_02027492:
cmp r0, #0x0
bne _0202749A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202749A:
add r0, r5, #0x0
add r0, #0x40
@@ -83897,7 +83897,7 @@ _020274D0:
_020274D2:
cmp r0, #0x0
bne _020274DA
- bl FUN_02020C2C
+ bl ErrorHandling
_020274DA:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -83929,7 +83929,7 @@ _0202750A:
_0202750C:
cmp r0, #0x0
bne _02027514
- bl FUN_02020C2C
+ bl ErrorHandling
_02027514:
add r0, r5, #0x4
add r1, r4, #0x0
@@ -83947,7 +83947,7 @@ FUN_02027528: ; 0x02027528
add r5, r0, #0x0
cmp r4, #0xa
blt _02027536
- bl FUN_02020C2C
+ bl ErrorHandling
_02027536:
ldr r1, [r5, #0x0]
ldr r0, _0202755C ; =0x00001234
@@ -83964,7 +83964,7 @@ _02027548:
_0202754A:
cmp r0, #0x0
bne _02027552
- bl FUN_02020C2C
+ bl ErrorHandling
_02027552:
mov r0, #0x1
ldr r1, [r5, #0x3c]
@@ -83994,7 +83994,7 @@ _0202757A:
_0202757C:
cmp r0, #0x0
bne _02027584
- bl FUN_02020C2C
+ bl ErrorHandling
_02027584:
add r0, r4, #0x4
pop {r4, pc}
@@ -84009,14 +84009,14 @@ FUN_02027590: ; 0x02027590
add r5, r0, #0x0
cmp r4, #0xa
blt _0202759E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202759E:
mov r0, #0x1
ldr r1, [r5, #0x3c]
lsl r0, r4
tst r0, r1
bne _020275AC
- bl FUN_02020C2C
+ bl ErrorHandling
_020275AC:
ldr r1, [r5, #0x0]
ldr r0, _020275D0 ; =0x00001234
@@ -84033,7 +84033,7 @@ _020275BE:
_020275C0:
cmp r0, #0x0
bne _020275C8
- bl FUN_02020C2C
+ bl ErrorHandling
_020275C8:
add r5, #0x48
lsl r0, r4, #0x2
@@ -84062,7 +84062,7 @@ _020275EE:
_020275F0:
cmp r0, #0x0
bne _020275F8
- bl FUN_02020C2C
+ bl ErrorHandling
_020275F8:
add r0, r4, #0x4
bl FUN_02027C84
@@ -84091,7 +84091,7 @@ _02027620:
_02027622:
cmp r0, #0x0
bne _0202762A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202762A:
add r0, r5, #0x4
add r1, r4, #0x0
@@ -84120,7 +84120,7 @@ _02027652:
_02027654:
cmp r0, #0x0
bne _0202765C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202765C:
add r0, r4, #0x4
bl FUN_02027C98
@@ -84148,7 +84148,7 @@ _02027682:
_02027684:
cmp r0, #0x0
bne _0202768C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202768C:
add r4, #0x70
ldrb r0, [r4, #0x0]
@@ -84164,7 +84164,7 @@ FUN_0202769C: ; 0x0202769C
mov r1, #0x0
bx r3
.balign 4
-_020276A4: .word FUN_02013918 + 1
+_020276A4: .word FUN_02013918
thumb_func_start FUN_020276A8
FUN_020276A8: ; 0x020276A8
@@ -84185,7 +84185,7 @@ _020276BE:
_020276C0:
cmp r0, #0x0
bne _020276C8
- bl FUN_02020C2C
+ bl ErrorHandling
_020276C8:
add r4, #0x71
ldrb r0, [r4, #0x0]
@@ -84213,7 +84213,7 @@ _020276EE:
_020276F0:
cmp r0, #0x0
bne _020276F8
- bl FUN_02020C2C
+ bl ErrorHandling
_020276F8:
ldr r1, [r4, #0x0]
ldr r0, _0202770C ; =0x00002345
@@ -84247,7 +84247,7 @@ _02027726:
_02027728:
cmp r0, #0x0
bne _02027730
- bl FUN_02020C2C
+ bl ErrorHandling
_02027730:
ldr r0, _0202773C ; =0x00002345
str r0, [r4, #0x0]
@@ -84275,7 +84275,7 @@ _02027756:
_02027758:
cmp r0, #0x0
bne _02027760
- bl FUN_02020C2C
+ bl ErrorHandling
_02027760:
add r0, r4, #0x0
mov r1, #0x0
@@ -84309,7 +84309,7 @@ _02027792:
_02027794:
cmp r0, #0x0
bne _0202779C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202779C:
add r5, #0x8
add r0, r5, #0x0
@@ -84343,7 +84343,7 @@ FUN_020277B4: ; 0x020277B4
str r0, [sp, #0x8]
cmp r6, #0x14
blt _020277E4
- bl FUN_02020C2C
+ bl ErrorHandling
_020277E4:
add r1, sp, #0xc
mov r0, #0x4
@@ -84351,7 +84351,7 @@ _020277E4:
add r0, #0xfc
cmp r1, r0
blt _020277F4
- bl FUN_02020C2C
+ bl ErrorHandling
_020277F4:
add r1, sp, #0xc
mov r0, #0x6
@@ -84359,14 +84359,14 @@ _020277F4:
add r0, #0xfa
cmp r7, r0
blt _02027804
- bl FUN_02020C2C
+ bl ErrorHandling
_02027804:
mov r1, #0x7f
ldr r0, [sp, #0x8]
mvn r1, r1
cmp r0, r1
bgt _02027812
- bl FUN_02020C2C
+ bl ErrorHandling
_02027812:
mov r0, #0x1
lsl r0, r6
@@ -84374,7 +84374,7 @@ _02027812:
str r0, [sp, #0x4]
tst r0, r1
beq _02027822
- bl FUN_02020C2C
+ bl ErrorHandling
_02027822:
ldr r1, [r5, #0x0]
ldr r0, _02027874 ; =0x00001234
@@ -84391,7 +84391,7 @@ _02027834:
_02027836:
cmp r0, #0x0
bne _0202783E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202783E:
ldr r0, [sp, #0x8]
add r1, r5, #0x0
@@ -84442,7 +84442,7 @@ _02027894:
_02027896:
cmp r0, #0x0
bne _0202789E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202789E:
add r5, #0x94
strb r4, [r5, #0x0]
@@ -84471,7 +84471,7 @@ _020278C4:
_020278C6:
cmp r0, #0x0
bne _020278CE
- bl FUN_02020C2C
+ bl ErrorHandling
_020278CE:
str r4, [r5, #0x4]
pop {r3-r5, pc}
@@ -84499,7 +84499,7 @@ _020278F4:
_020278F6:
cmp r0, #0x0
bne _020278FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020278FE:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -84532,7 +84532,7 @@ _02027930:
_02027932:
cmp r0, #0x0
bne _0202793A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202793A:
add r1, sp, #0x4
add r0, r4, #0x0
@@ -84564,18 +84564,18 @@ FUN_02027964: ; 0x02027964
ldr r4, [sp, #0x24]
cmp r6, #0x14
blo _0202797A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202797A:
cmp r7, #0x64
blo _02027982
- bl FUN_02020C2C
+ bl ErrorHandling
_02027982:
mov r1, #0x1
ldr r0, [sp, #0x4]
lsl r1, r1, #0x8
cmp r0, r1
blt _02027990
- bl FUN_02020C2C
+ bl ErrorHandling
_02027990:
add r0, sp, #0x10
ldrb r1, [r0, #0x10]
@@ -84583,13 +84583,13 @@ _02027990:
lsl r0, r0, #0x8
cmp r1, r0
blt _020279A0
- bl FUN_02020C2C
+ bl ErrorHandling
_020279A0:
mov r0, #0x7f
mvn r0, r0
cmp r4, r0
bgt _020279AC
- bl FUN_02020C2C
+ bl ErrorHandling
_020279AC:
mov r0, #0x1
lsl r0, r6
@@ -84597,7 +84597,7 @@ _020279AC:
str r0, [sp, #0x8]
tst r0, r1
beq _020279BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020279BC:
ldr r1, [r5, #0x0]
ldr r0, _02027A0C ; =0x00001234
@@ -84614,7 +84614,7 @@ _020279CE:
_020279D0:
cmp r0, #0x0
bne _020279D8
- bl FUN_02020C2C
+ bl ErrorHandling
_020279D8:
mov r0, #0x38
ldrsb r0, [r5, r0]
@@ -84653,7 +84653,7 @@ FUN_02027A14: ; 0x02027A14
add r5, r0, #0x0
cmp r4, #0x14
blt _02027A22
- bl FUN_02020C2C
+ bl ErrorHandling
_02027A22:
ldr r1, [r5, #0x0]
ldr r0, _02027A50 ; =0x00001234
@@ -84670,7 +84670,7 @@ _02027A34:
_02027A36:
cmp r0, #0x0
bne _02027A3E
- bl FUN_02020C2C
+ bl ErrorHandling
_02027A3E:
mov r0, #0x1
add r1, r0, #0x0
@@ -84706,7 +84706,7 @@ _02027A72:
_02027A74:
cmp r0, #0x0
bne _02027A7C
- bl FUN_02020C2C
+ bl ErrorHandling
_02027A7C:
add r5, #0x8
add r0, r5, #0x0
@@ -84737,7 +84737,7 @@ _02027AAA:
_02027AAC:
cmp r0, #0x0
bne _02027AB4
- bl FUN_02020C2C
+ bl ErrorHandling
_02027AB4:
add r4, #0x8
add r0, r4, #0x0
@@ -84753,14 +84753,14 @@ FUN_02027AC4: ; 0x02027AC4
add r5, r0, #0x0
cmp r4, #0x14
blt _02027AD2
- bl FUN_02020C2C
+ bl ErrorHandling
_02027AD2:
mov r0, #0x1
ldr r1, [r5, #0x40]
lsl r0, r4
tst r0, r1
bne _02027AE0
- bl FUN_02020C2C
+ bl ErrorHandling
_02027AE0:
ldr r1, [r5, #0x0]
ldr r0, _02027B04 ; =0x00001234
@@ -84777,7 +84777,7 @@ _02027AF2:
_02027AF4:
cmp r0, #0x0
bne _02027AFC
- bl FUN_02020C2C
+ bl ErrorHandling
_02027AFC:
add r5, #0x44
lsl r0, r4, #0x2
@@ -84807,7 +84807,7 @@ _02027B24:
_02027B26:
cmp r0, #0x0
bne _02027B2E
- bl FUN_02020C2C
+ bl ErrorHandling
_02027B2E:
add r5, #0x8
add r0, r5, #0x0
@@ -84837,7 +84837,7 @@ _02027B5A:
_02027B5C:
cmp r0, #0x0
bne _02027B64
- bl FUN_02020C2C
+ bl ErrorHandling
_02027B64:
add r4, #0x8
add r0, r4, #0x0
@@ -84868,7 +84868,7 @@ _02027B92:
_02027B94:
cmp r0, #0x0
bne _02027B9C
- bl FUN_02020C2C
+ bl ErrorHandling
_02027B9C:
mov r1, #0x1
str r1, [sp, #0x0]
@@ -84905,14 +84905,14 @@ FUN_02027BDC: ; 0x02027BDC
add r5, r0, #0x0
cmp r4, #0x14
blt _02027BEA
- bl FUN_02020C2C
+ bl ErrorHandling
_02027BEA:
mov r0, #0x1
ldr r1, [r5, #0x40]
lsl r0, r4
tst r0, r1
bne _02027BF8
- bl FUN_02020C2C
+ bl ErrorHandling
_02027BF8:
ldr r1, [r5, #0x0]
ldr r0, _02027C20 ; =0x00001234
@@ -84929,7 +84929,7 @@ _02027C0A:
_02027C0C:
cmp r0, #0x0
bne _02027C14
- bl FUN_02020C2C
+ bl ErrorHandling
_02027C14:
add r5, #0x44
lsl r0, r4, #0x2
@@ -84959,7 +84959,7 @@ _02027C3E:
_02027C40:
cmp r0, #0x0
bne _02027C48
- bl FUN_02020C2C
+ bl ErrorHandling
_02027C48:
add r4, #0x94
ldrb r0, [r4, #0x0]
@@ -84987,7 +84987,7 @@ _02027C6E:
_02027C70:
cmp r0, #0x0
bne _02027C78
- bl FUN_02020C2C
+ bl ErrorHandling
_02027C78:
ldr r0, [r4, #0x4]
pop {r4, pc}
@@ -85009,7 +85009,7 @@ FUN_02027C88: ; 0x02027C88
add r1, r2, #0x0
bx r3
.balign 4
-_02027C94: .word FUN_02021E28 + 1
+_02027C94: .word FUN_02021E28
thumb_func_start FUN_02027C98
FUN_02027C98: ; 0x02027C98
@@ -85244,7 +85244,7 @@ FUN_02027E24: ; 0x02027E24
mov r1, #0xe
bx r3
nop
-_02027E2C: .word FUN_02022610 + 1
+_02027E2C: .word FUN_02022610
thumb_func_start FUN_02027E30
FUN_02027E30: ; 0x02027E30
@@ -85362,7 +85362,7 @@ FUN_02027ED0: ; 0x02027ED0
_02027EDC:
bl FUN_0201B9EC
add r1, r7, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x18
lsr r0, r0, #0x18
add r1, r5, r0
@@ -85512,7 +85512,7 @@ FUN_02027FDC: ; 0x02027FDC
add r4, r0, #0x0
ldrb r0, [r4, #0x0]
mov r1, #0x5
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r0, r0, #0x18
cmp r0, #0x5
@@ -85580,7 +85580,7 @@ FUN_02028048: ; 0x02028048
mov r1, #0x10
bx r3
nop
-_02028050: .word FUN_02022610 + 1
+_02028050: .word FUN_02022610
thumb_func_start FUN_02028054
FUN_02028054: ; 0x02028054
@@ -85827,7 +85827,7 @@ FUN_020281E8: ; 0x020281E8
mov r0, #0x0
add r1, r7, #0x0
lsl r2, r2, #0x6
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r0, #0x1d
lsl r0, r0, #0x4
add r1, r0, #0x0
@@ -85865,7 +85865,7 @@ FUN_0202822C: ; 0x0202822C
add r7, r2, #0x0
cmp r4, #0x20
blt _0202823C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202823C:
cmp r7, #0x8
bhi _020282D0
@@ -85970,7 +85970,7 @@ FUN_020282E8: ; 0x020282E8
add r6, r3, #0x0
cmp r4, #0x20
blt _020282FA
- bl FUN_02020C2C
+ bl ErrorHandling
_020282FA:
cmp r7, #0x8
bhi _02028378
@@ -85999,13 +85999,13 @@ _0202831C:
str r6, [r1, r0]
pop {r3-r7, pc}
_0202832A:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_02028330:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_02028336:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_0202833C:
mov r0, #0x30
@@ -86057,7 +86057,7 @@ FUN_0202838C: ; 0x0202838C
add r5, r0, #0x0
cmp r4, #0x20
blt _0202839A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202839A:
mov r0, #0xc
add r5, #0x40
@@ -86072,7 +86072,7 @@ FUN_020283A4: ; 0x020283A4
add r5, r0, #0x0
cmp r4, #0x20
blt _020283B2
- bl FUN_02020C2C
+ bl ErrorHandling
_020283B2:
mov r0, #0x1d
lsl r0, r0, #0x4
@@ -86090,7 +86090,7 @@ FUN_020283C0: ; 0x020283C0
add r6, r2, #0x0
cmp r4, #0x20
blt _020283D0
- bl FUN_02020C2C
+ bl ErrorHandling
_020283D0:
mov r1, #0x1d
lsl r1, r1, #0x4
@@ -86111,7 +86111,7 @@ FUN_020283E8: ; 0x020283E8
add r5, r0, #0x0
cmp r4, #0x20
blt _020283F6
- bl FUN_02020C2C
+ bl ErrorHandling
_020283F6:
mov r0, #0x7
lsl r0, r0, #0x6
@@ -86129,7 +86129,7 @@ FUN_02028404: ; 0x02028404
add r6, r2, #0x0
cmp r4, #0x20
blt _02028414
- bl FUN_02020C2C
+ bl ErrorHandling
_02028414:
mov r1, #0x7
lsl r1, r1, #0x6
@@ -86150,7 +86150,7 @@ FUN_0202842C: ; 0x0202842C
add r5, r0, #0x0
cmp r4, #0x20
blt _0202843A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202843A:
mov r0, #0xc
add r5, #0x40
@@ -86187,7 +86187,7 @@ FUN_02028468: ; 0x02028468
str r0, [sp, #0x0]
cmp r5, #0x20
blt _02028478
- bl FUN_02020C2C
+ bl ErrorHandling
_02028478:
cmp r5, #0x1f
bge _020284D2
@@ -86219,7 +86219,7 @@ _020284A2:
mov r2, #0x30
add r0, r0, r1
add r1, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0xc
add r1, r7, #0x0
mul r1, r0
@@ -86227,7 +86227,7 @@ _020284A2:
mov r2, #0xc
add r0, r0, r1
add r1, r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r5, r5, #0x1
add r6, #0x30
add r4, #0xc
@@ -86243,7 +86243,7 @@ _020284D2:
add r1, r2, r1
mov r0, #0x0
mov r2, #0x30
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r2, [sp, #0x0]
mov r1, #0x5d
add r2, #0x40
@@ -86251,7 +86251,7 @@ _020284D2:
add r1, r2, r1
mov r0, #0x0
mov r2, #0xc
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r2, #0x7a
lsl r2, r2, #0x4
add r1, r2, #0x0
@@ -86286,7 +86286,7 @@ FUN_02028518: ; 0x02028518
str r1, [sp, #0x0]
add r0, r4, r5
add r1, r4, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, [sp, #0x4]
add r6, r7, #0x0
mov r3, #0xc
@@ -86300,16 +86300,16 @@ FUN_02028518: ; 0x02028518
mul r2, r3
add r1, r6, r2
add r2, r3, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x0
add r1, r4, r5
mov r2, #0x30
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r1, [sp, #0x8]
mov r0, #0x0
add r1, r6, r1
mov r2, #0xc
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r0, #0x1d
ldr r1, _02028588 ; =0x0000FFFF
add r2, r7, r5
@@ -86495,7 +86495,7 @@ _020286BC:
mov r0, #0x0
add r1, r6, r4
mov r2, #0x30
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r0, #0x1d
ldr r1, _020286E8 ; =0x0000FFFF
add r2, r5, r4
@@ -86517,7 +86517,7 @@ FUN_020286EC: ; 0x020286EC
mov r1, #0x1d
bx r3
nop
-_020286F4: .word FUN_02022610 + 1
+_020286F4: .word FUN_02022610
thumb_func_start FUN_020286F8
FUN_020286F8: ; 0x020286F8
@@ -86556,7 +86556,7 @@ FUN_02028724: ; 0x02028724
mov r0, #0x0
add r1, r4, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r0, _0202874C ; =0x0000FFFF
mov r1, #0x0
add r2, r4, #0x0
@@ -86711,7 +86711,7 @@ FUN_0202881C: ; 0x0202881C
mov r1, #0x11
bx r3
nop
-_02028824: .word FUN_02022610 + 1
+_02028824: .word FUN_02022610
thumb_func_start FUN_02028828
FUN_02028828: ; 0x02028828
@@ -86738,7 +86738,7 @@ FUN_02028840: ; 0x02028840
add r0, #0x2c
bx r3
nop
-_02028850: .word FUN_020288AC + 1
+_02028850: .word FUN_020288AC
thumb_func_start FUN_02028854
FUN_02028854: ; 0x02028854
@@ -86864,7 +86864,7 @@ FUN_02028918: ; 0x02028918
add r4, r1, #0x0
cmp r4, r0
bls _02028928
- bl FUN_02020C2C
+ bl ErrorHandling
_02028928:
strh r4, [r5, #0x0]
pop {r3-r5, pc}
@@ -86958,7 +86958,7 @@ FUN_020289A4: ; 0x020289A4
mov r1, #0x12
bx r3
nop
-_020289AC: .word FUN_02022610 + 1
+_020289AC: .word FUN_02022610
thumb_func_start FUN_020289B0
FUN_020289B0: ; 0x020289B0
@@ -87749,7 +87749,7 @@ FUN_02028F10: ; 0x02028F10
mov r2, #0x8
bx r3
.balign 4
-_02028F28: .word FUN_020292D4 + 1
+_02028F28: .word FUN_020292D4
thumb_func_start FUN_02028F2C
FUN_02028F2C: ; 0x02028F2C
@@ -88139,7 +88139,7 @@ FUN_0202918C: ; 0x0202918C
ldr r0, [sp, #0x0]
bl FUN_02029EC0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r0, r0, #0x18
beq _020291DA
@@ -88208,7 +88208,7 @@ FUN_0202920C: ; 0x0202920C
ldr r0, [sp, #0x0]
bl FUN_02029EC0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r0, r0, #0x18
cmp r0, #0x1
@@ -89015,7 +89015,7 @@ FUN_020297E4: ; 0x020297E4
mov r2, #0x8
bx r3
nop
-_02029804: .word FUN_020292D4 + 1
+_02029804: .word FUN_020292D4
thumb_func_start FUN_02029808
FUN_02029808: ; 0x02029808
@@ -89384,7 +89384,7 @@ FUN_02029ABC: ; 0x02029ABC
mov r1, #0x13
bx r3
nop
-_02029AC4: .word FUN_02022610 + 1
+_02029AC4: .word FUN_02022610
thumb_func_start FUN_02029AC8
FUN_02029AC8: ; 0x02029AC8
@@ -89419,13 +89419,13 @@ _02029AE4: .word 0x00000FF8
thumb_func_start FUN_02029AE8
FUN_02029AE8: ; 0x02029AE8
- ldr r3, _02029AF4 ; =FUN_020CE1FC
+ ldr r3, _02029AF4 ; =MIi_CpuClear32
add r1, r0, #0x0
mov r0, #0x0
ldr r2, _02029AF8 ; =0x00000FF8
bx r3
nop
-_02029AF4: .word FUN_020CE1FC
+_02029AF4: .word MIi_CpuClear32
_02029AF8: .word 0x00000FF8
thumb_func_start FUN_02029AFC
@@ -89434,7 +89434,7 @@ FUN_02029AFC: ; 0x02029AFC
mov r1, #0x1e
bx r3
nop
-_02029B04: .word FUN_02022610 + 1
+_02029B04: .word FUN_02022610
thumb_func_start FUN_02029B08
FUN_02029B08: ; 0x02029B08
@@ -89446,11 +89446,11 @@ FUN_02029B08: ; 0x02029B08
add r4, r2, #0x0
cmp r5, r0
blt _02029B1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02029B1C:
cmp r4, #0x40
blt _02029B24
- bl FUN_02020C2C
+ bl ErrorHandling
_02029B24:
strb r5, [r6, #0x5]
add r0, r6, #0x0
@@ -89482,11 +89482,11 @@ FUN_02029B40: ; 0x02029B40
add r4, r2, #0x0
cmp r5, r0
blt _02029B54
- bl FUN_02020C2C
+ bl ErrorHandling
_02029B54:
cmp r4, #0x40
blt _02029B5C
- bl FUN_02020C2C
+ bl ErrorHandling
_02029B5C:
cmp r5, #0x0
bne _02029B64
@@ -89525,17 +89525,17 @@ FUN_02029B90: ; 0x02029B90
str r3, [sp, #0x0]
cmp r3, #0x4
blt _02029BA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02029BA2:
mov r0, #0x1
lsl r0, r0, #0x8
cmp r5, r0
blt _02029BAE
- bl FUN_02020C2C
+ bl ErrorHandling
_02029BAE:
cmp r4, #0x40
blt _02029BB6
- bl FUN_02020C2C
+ bl ErrorHandling
_02029BB6:
cmp r5, #0x0
beq _02029BFE
@@ -89646,16 +89646,16 @@ FUN_02029C60: ; 0x02029C60
add r2, r0, #0x0
add r0, r4, #0x0
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
pop {r4, pc}
thumb_func_start FUN_02029C74
FUN_02029C74: ; 0x02029C74
- ldr r3, _02029C7C ; =FUN_020CE3E0
+ ldr r3, _02029C7C ; =MI_CpuCopy8
mov r2, #0x18
bx r3
nop
-_02029C7C: .word FUN_020CE3E0
+_02029C7C: .word MI_CpuCopy8
thumb_func_start FUN_02029C80
FUN_02029C80: ; 0x02029C80
@@ -89663,7 +89663,7 @@ FUN_02029C80: ; 0x02029C80
mov r1, #0x15
bx r3
nop
-_02029C88: .word FUN_02022610 + 1
+_02029C88: .word FUN_02022610
thumb_func_start FUN_02029C8C
FUN_02029C8C: ; 0x02029C8C
@@ -89672,7 +89672,7 @@ FUN_02029C8C: ; 0x02029C8C
add r5, r0, #0x0
cmp r4, #0xc
blt _02029C9A
- bl FUN_02020C2C
+ bl ErrorHandling
_02029C9A:
mov r0, #0x18
mul r0, r4
@@ -89688,7 +89688,7 @@ FUN_02029CA4: ; 0x02029CA4
add r4, r1, #0x0
cmp r6, #0xc
blt _02029CB4
- bl FUN_02020C2C
+ bl ErrorHandling
_02029CB4:
add r0, r5, #0x0
add r1, r6, #0x0
@@ -89706,7 +89706,7 @@ FUN_02029CC8: ; 0x02029CC8
add r5, r0, #0x0
cmp r4, #0x8
blt _02029CD6
- bl FUN_02020C2C
+ bl ErrorHandling
_02029CD6:
lsl r0, r4, #0x1
add r0, r4, r0
@@ -90033,7 +90033,7 @@ FUN_02029ECC: ; 0x02029ECC
mov r0, #0x0
add r1, r4, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r0, #0x0
str r0, [r4, #0x0]
pop {r4, pc}
@@ -90056,7 +90056,7 @@ FUN_02029EF8: ; 0x02029EF8
mov r1, #0x16
bx r3
nop
-_02029F00: .word FUN_02022610 + 1
+_02029F00: .word FUN_02022610
thumb_func_start FUN_02029F04
FUN_02029F04: ; 0x02029F04
@@ -90157,11 +90157,11 @@ FUN_02029F9C: ; 0x02029F9C
add r0, r1, #0x0
add r1, r2, #0x0
mov r2, #0xfb
- ldr r3, _02029FAC ; =FUN_020CE28C
+ ldr r3, _02029FAC ; =MIi_CpuCopyFast
lsl r2, r2, #0x2
bx r3
nop
-_02029FAC: .word FUN_020CE28C
+_02029FAC: .word MIi_CpuCopyFast
thumb_func_start FUN_02029FB0
FUN_02029FB0: ; 0x02029FB0
@@ -90172,14 +90172,14 @@ FUN_02029FB0: ; 0x02029FB0
thumb_func_start FUN_02029FB8
FUN_02029FB8: ; 0x02029FB8
- ldr r3, _02029FC4 ; =FUN_020CE1FC
+ ldr r3, _02029FC4 ; =MIi_CpuClear32
mov r2, #0x53
add r1, r0, #0x0
mov r0, #0x0
lsl r2, r2, #0x2
bx r3
.balign 4
-_02029FC4: .word FUN_020CE1FC
+_02029FC4: .word MIi_CpuClear32
thumb_func_start FUN_02029FC8
FUN_02029FC8: ; 0x02029FC8
@@ -90187,7 +90187,7 @@ FUN_02029FC8: ; 0x02029FC8
mov r1, #0x14
bx r3
nop
-_02029FD0: .word FUN_02022610 + 1
+_02029FD0: .word FUN_02022610
thumb_func_start FUN_02029FD4
FUN_02029FD4: ; 0x02029FD4
@@ -90207,7 +90207,7 @@ _02029FE0:
ldrh r0, [r0, #0x0]
pop {r3, pc}
_02029FF0:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -90232,7 +90232,7 @@ _0202A008:
strh r2, [r0, #0x0]
b _0202A01E
_0202A01A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0202A01E:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -90266,7 +90266,7 @@ _0202A04E:
ldr r0, _0202A06C ; =0x0000270F
pop {r3, pc}
_0202A052:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
nop
@@ -90419,7 +90419,7 @@ FUN_0202A170: ; 0x0202A170
add r5, r0, #0x0
cmp r4, #0x26
blt _0202A17E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202A17E:
add r0, r5, #0x0
mov r1, #0x0
@@ -90452,7 +90452,7 @@ FUN_0202A1B8: ; 0x0202A1B8
mov r1, #0x0
bx r3
nop
-_0202A1C0: .word FUN_0202A150 + 1
+_0202A1C0: .word FUN_0202A150
thumb_func_start FUN_0202A1C4
FUN_0202A1C4: ; 0x0202A1C4
@@ -90477,12 +90477,12 @@ FUN_0202A1E0: ; 0x0202A1E0
thumb_func_start FUN_0202A1E4
FUN_0202A1E4: ; 0x0202A1E4
- ldr r3, _0202A1EC ; =FUN_020CE34C
+ ldr r3, _0202A1EC ; =MI_CpuFill8
mov r1, #0x0
mov r2, #0x3c
bx r3
.balign 4
-_0202A1EC: .word FUN_020CE34C
+_0202A1EC: .word MI_CpuFill8
thumb_func_start FUN_0202A1F0
FUN_0202A1F0: ; 0x0202A1F0
@@ -90491,7 +90491,7 @@ FUN_0202A1F0: ; 0x0202A1F0
mov r1, #0x0
lsl r2, r2, #0x2
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x1
strb r0, [r4, #0x3]
pop {r4, pc}
@@ -90519,12 +90519,12 @@ FUN_0202A204: ; 0x0202A204
thumb_func_start FUN_0202A230
FUN_0202A230: ; 0x0202A230
- ldr r3, _0202A238 ; =FUN_020CE34C
+ ldr r3, _0202A238 ; =MI_CpuFill8
mov r1, #0x0
ldr r2, _0202A23C ; =0x00000B3C
bx r3
.balign 4
-_0202A238: .word FUN_020CE34C
+_0202A238: .word MI_CpuFill8
_0202A23C: .word 0x00000B3C
thumb_func_start FUN_0202A240
@@ -90571,14 +90571,14 @@ _0202A280:
add r1, r2, #0x0
add r0, #0x8
mov r2, #0x4
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x0
pop {r3, pc}
_0202A28E:
add r1, r2, #0x0
add r0, #0x2c
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x0
pop {r3, pc}
_0202A29C:
@@ -90590,7 +90590,7 @@ _0202A2A4:
add r1, r2, #0x0
add r0, #0xc
mov r2, #0x1c
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x0
pop {r3, pc}
_0202A2B2:
@@ -90661,14 +90661,14 @@ _0202A318:
add r0, r2, #0x0
add r1, r3, #0x0
mov r2, #0x4
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r4, pc}
_0202A326:
add r3, #0x2c
add r0, r2, #0x0
add r1, r3, #0x0
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r4, pc}
_0202A334:
ldrb r4, [r3, #0x0]
@@ -90685,7 +90685,7 @@ _0202A346:
add r0, r2, #0x0
add r1, r3, #0x0
mov r2, #0x1c
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r4, pc}
_0202A354:
ldr r0, [r2, #0x0]
@@ -90881,14 +90881,14 @@ FUN_0202A474: ; 0x0202A474
add r0, r2, #0x0
add r1, r3, #0x0
mov r2, #0xa8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3, pc}
_0202A48A:
add r3, #0x18
add r0, r2, #0x0
add r1, r3, #0x0
mov r2, #0xa8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3, pc}
thumb_func_start FUN_0202A498
@@ -90899,13 +90899,13 @@ FUN_0202A498: ; 0x0202A498
add r1, r2, #0x0
add r0, #0xc0
mov r2, #0xa8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3, pc}
_0202A4AA:
add r1, r2, #0x0
add r0, #0x18
mov r2, #0xa8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3, pc}
.balign 4
@@ -90954,7 +90954,7 @@ _0202A502:
add r0, #0x1e
sub r0, r0, r1
mov r1, #0x1e
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r1, r0, #0x10
_0202A510:
@@ -90978,7 +90978,7 @@ FUN_0202A524: ; 0x0202A524
ldrh r0, [r0, #0x16]
mov r1, #0xfa
lsl r1, r1, #0x2
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r0, r0, #0x18
pop {r3, pc}
@@ -91175,11 +91175,11 @@ FUN_0202A670: ; 0x0202A670
add r0, r4, #0x4
mov r1, #0x0
mov r2, #0xfa
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
mov r1, #0x0
mov r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
pop {r4, pc}
.balign 4
@@ -91311,7 +91311,7 @@ FUN_0202A754: ; 0x0202A754
ldr r2, _0202A77C ; =0x0000063C
add r1, r5, r1
add r6, r3, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0202A780 ; =0x00000101
strb r4, [r5, r0]
sub r0, r0, #0x1
@@ -91384,30 +91384,30 @@ _0202A7EE:
add r0, #0xa8
add r1, #0x8
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_0202A7FC:
add r0, r5, r4
add r1, r6, #0x0
add r0, #0xca
add r1, #0x18
mov r2, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r5, r4
add r1, r6, #0x0
add r0, #0xd2
add r1, #0x20
mov r2, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r5, r4
add r6, #0x28
add r0, #0xda
add r1, r6, #0x0
mov r2, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r5, r4
add r1, r7, #0x0
mov r2, #0xa8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3-r7, pc}
nop
_0202A834: .word 0x00002710
@@ -91424,7 +91424,7 @@ FUN_0202A838: ; 0x0202A838
add r1, r5, r1
lsl r2, r2, #0x2
add r6, r3, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0202A860 ; =0x00000103
strb r4, [r5, r0]
sub r0, r0, #0x1
@@ -91463,7 +91463,7 @@ FUN_0202A878: ; 0x0202A878
add r0, r5, r0
add r1, r4, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
pop {r3-r5, pc}
@@ -91499,7 +91499,7 @@ FUN_0202A8CC: ; 0x0202A8CC
mov r1, #0x17
bx r3
nop
-_0202A8D4: .word FUN_02022610 + 1
+_0202A8D4: .word FUN_02022610
thumb_func_start FUN_0202A8D8
FUN_0202A8D8: ; 0x0202A8D8
@@ -91549,7 +91549,7 @@ FUN_0202A918: ; 0x0202A918
mov r1, #0x18
bx r3
nop
-_0202A920: .word FUN_02022610 + 1
+_0202A920: .word FUN_02022610
thumb_func_start FUN_0202A924
FUN_0202A924: ; 0x0202A924
@@ -91625,7 +91625,7 @@ _0202A9A0:
ldr r0, [r0, #0x4]
pop {r3, pc}
_0202A9A4:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -91640,7 +91640,7 @@ FUN_0202A9B0: ; 0x0202A9B0
mov r1, #0x19
bx r3
nop
-_0202A9B8: .word FUN_02022610 + 1
+_0202A9B8: .word FUN_02022610
thumb_func_start FUN_0202A9BC
FUN_0202A9BC: ; 0x0202A9BC
@@ -91740,7 +91740,7 @@ FUN_0202AA40: ; 0x0202AA40
add r5, r0, #0x0
cmp r4, #0x3
blo _0202AA4E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AA4E:
mov r0, #0x43
add r1, r5, r4
@@ -91756,7 +91756,7 @@ FUN_0202AA58: ; 0x0202AA58
add r6, r2, #0x0
cmp r4, #0x3
blo _0202AA68
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AA68:
mov r0, #0x43
add r1, r5, r4
@@ -91772,7 +91772,7 @@ FUN_0202AA74: ; 0x0202AA74
add r5, r0, #0x0
cmp r4, #0x3
blo _0202AA82
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AA82:
mov r0, #0x14
mul r0, r4
@@ -91801,7 +91801,7 @@ FUN_0202AAA0: ; 0x0202AAA0
add r5, r0, #0x0
cmp r4, #0x3
blo _0202AAAE
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AAAE:
mov r0, #0x14
add r5, #0xd0
@@ -91939,7 +91939,7 @@ FUN_0202AB68: ; 0x0202AB68
add r5, r0, #0x0
cmp r4, #0x2
bls _0202AB76
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AB76:
ldr r0, _0202AB7C ; =0x00000112
strb r4, [r5, r0]
@@ -91975,7 +91975,7 @@ FUN_0202ABA0: ; 0x0202ABA0
add r4, r0, #0x0
cmp r5, #0x10
blo _0202ABB2
- bl FUN_02020C2C
+ bl ErrorHandling
_0202ABB2:
ldrh r0, [r4, #0xc]
strh r0, [r4, #0xe]
@@ -91989,7 +91989,7 @@ FUN_0202ABBC: ; 0x0202ABBC
mov r1, #0x1a
bx r3
nop
-_0202ABC4: .word FUN_02022610 + 1
+_0202ABC4: .word FUN_02022610
thumb_func_start FUN_0202ABC8
FUN_0202ABC8: ; 0x0202ABC8
@@ -91998,13 +91998,13 @@ FUN_0202ABC8: ; 0x0202ABC8
thumb_func_start FUN_0202ABCC
FUN_0202ABCC: ; 0x0202ABCC
- ldr r3, _0202ABD8 ; =FUN_020CE240
+ ldr r3, _0202ABD8 ; =MIi_CpuClearFast
add r1, r0, #0x0
mov r0, #0x0
mov r2, #0xf4
bx r3
nop
-_0202ABD8: .word FUN_020CE240
+_0202ABD8: .word MIi_CpuClearFast
thumb_func_start FUN_0202ABDC
FUN_0202ABDC: ; 0x0202ABDC
@@ -92022,22 +92022,22 @@ FUN_0202ABE4: ; 0x0202ABE4
thumb_func_start FUN_0202ABEC
FUN_0202ABEC: ; 0x0202ABEC
- ldr r3, _0202ABF4 ; =FUN_020CE28C
+ ldr r3, _0202ABF4 ; =MIi_CpuCopyFast
mov r2, #0xec
bx r3
nop
-_0202ABF4: .word FUN_020CE28C
+_0202ABF4: .word MIi_CpuCopyFast
thumb_func_start FUN_0202ABF8
FUN_0202ABF8: ; 0x0202ABF8
- ldr r3, _0202AC04 ; =FUN_020CE28C
+ ldr r3, _0202AC04 ; =MIi_CpuCopyFast
add r2, r0, #0x0
add r0, r1, #0x0
add r1, r2, #0x0
mov r2, #0xec
bx r3
.balign 4
-_0202AC04: .word FUN_020CE28C
+_0202AC04: .word MIi_CpuCopyFast
thumb_func_start FUN_0202AC08
FUN_0202AC08: ; 0x0202AC08
@@ -92079,7 +92079,7 @@ FUN_0202AC2C: ; 0x0202AC2C
add r5, r0, #0x0
cmp r4, #0x8
blt _0202AC3A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AC3A:
mov r0, #0x1
lsl r0, r0, #0x8
@@ -92110,7 +92110,7 @@ FUN_0202AC64: ; 0x0202AC64
add r5, r0, #0x0
cmp r4, #0x3
blt _0202AC72
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AC72:
lsl r0, r4, #0x2
add r1, r5, r0
@@ -92161,7 +92161,7 @@ _0202ACB4:
ldr r0, [sp, #0x0]
add r1, r1, r6
sub r2, #0x28
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
lsl r0, r4, #0x2
add r1, r5, r0
mov r0, #0x1
@@ -92231,7 +92231,7 @@ _0202AD3C:
mul r1, r2
add r0, r6, #0x0
add r1, r3, r1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
lsl r0, r4, #0x2
add r1, r5, r0
mov r0, #0x12
@@ -92271,7 +92271,7 @@ FUN_0202AD94: ; 0x0202AD94
sub r0, r4, #0x1
cmp r0, #0x8
blt _0202ADA4
- bl FUN_02020C2C
+ bl ErrorHandling
_0202ADA4:
sub r4, r4, #0x1
lsl r0, r4, #0x2
@@ -92299,7 +92299,7 @@ FUN_0202ADC8: ; 0x0202ADC8
add r5, r0, #0x0
cmp r4, #0x3
blt _0202ADD6
- bl FUN_02020C2C
+ bl ErrorHandling
_0202ADD6:
lsl r0, r4, #0x2
add r1, r5, r0
@@ -92359,7 +92359,7 @@ FUN_0202AE28: ; 0x0202AE28
add r4, r0, #0x0
cmp r5, #0x8
blt _0202AE36
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AE36:
lsl r0, r5, #0x2
add r1, r4, r0
@@ -92381,7 +92381,7 @@ FUN_0202AE4C: ; 0x0202AE4C
add r4, r0, #0x0
cmp r5, #0x3
blt _0202AE5A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AE5A:
lsl r0, r5, #0x2
add r1, r4, r0
@@ -92485,7 +92485,7 @@ FUN_0202AEF4: ; 0x0202AEF4
lsl r0, r0, #0xa
cmp r4, r0
blt _0202AF06
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AF06:
mov r0, #0x1
mov r1, #0x7
@@ -92513,7 +92513,7 @@ FUN_0202AF24: ; 0x0202AF24
lsl r0, r0, #0xa
cmp r4, r0
blt _0202AF36
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AF36:
asr r0, r4, #0x2
lsr r0, r0, #0x1d
@@ -92535,7 +92535,7 @@ FUN_0202AF50: ; 0x0202AF50
ldr r1, _0202AF5C ; =0x000007FF
bx r3
nop
-_0202AF58: .word FUN_0202AEF4 + 1
+_0202AF58: .word FUN_0202AEF4
_0202AF5C: .word 0x000007FF
thumb_func_start FUN_0202AF60
@@ -92544,7 +92544,7 @@ FUN_0202AF60: ; 0x0202AF60
ldr r1, _0202AF6C ; =0x000007FF
bx r3
nop
-_0202AF68: .word FUN_0202AF24 + 1
+_0202AF68: .word FUN_0202AF24
_0202AF6C: .word 0x000007FF
thumb_func_start FUN_0202AF70
@@ -92608,7 +92608,7 @@ _0202AFCA:
sub r0, r4, #0x1
cmp r0, #0x8
blt _0202AFD4
- bl FUN_02020C2C
+ bl ErrorHandling
_0202AFD4:
ldr r0, _0202AFF8 ; =0x021C59D4
sub r1, r4, #0x1
@@ -92660,7 +92660,7 @@ FUN_0202B020: ; 0x0202B020
bx r3
nop
_0202B02C: .word 0x021C59D4
-_0202B030: .word FUN_0202AD94 + 1
+_0202B030: .word FUN_0202AD94
thumb_func_start FUN_0202B034
FUN_0202B034: ; 0x0202B034
@@ -92671,13 +92671,13 @@ _0202B038: .word 0x00002AB0
thumb_func_start FUN_0202B03C
FUN_0202B03C: ; 0x0202B03C
- ldr r3, _0202B048 ; =FUN_020CE1FC
+ ldr r3, _0202B048 ; =MIi_CpuClear32
add r1, r0, #0x0
mov r0, #0x0
ldr r2, _0202B04C ; =0x00002AB0
bx r3
nop
-_0202B048: .word FUN_020CE1FC
+_0202B048: .word MIi_CpuClear32
_0202B04C: .word 0x00002AB0
thumb_func_start FUN_0202B050
@@ -92689,14 +92689,14 @@ FUN_0202B050: ; 0x0202B050
str r2, [sp, #0x8]
cmp r0, #0x0
bne _0202B062
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B062:
ldr r1, _0202B1E0 ; =0x00002AA8
ldr r0, [sp, #0x0]
ldr r0, [r0, r1]
cmp r0, #0x1e
blo _0202B070
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B070:
ldr r1, _0202B1E4 ; =0x00002AAC
ldr r0, [sp, #0x0]
@@ -92727,7 +92727,7 @@ _0202B07E:
ldr r1, [sp, #0x14]
mov r0, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
ldr r0, [sp, #0x10]
mov r7, #0x0
cmp r0, #0x0
@@ -92880,13 +92880,13 @@ FUN_0202B1F0: ; 0x0202B1F0
push {r4, lr}
add r4, r0, #0x0
bne _0202B1FA
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B1FA:
ldr r0, _0202B214 ; =0x00002AA8
ldr r0, [r4, r0]
cmp r0, #0x1e
blo _0202B206
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B206:
ldr r0, _0202B218 ; =0x00002AAC
ldr r0, [r4, r0]
@@ -92906,17 +92906,17 @@ FUN_0202B21C: ; 0x0202B21C
add r4, r1, #0x0
cmp r5, #0x0
bne _0202B22A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B22A:
ldr r0, _0202B248 ; =0x00002AA8
ldr r0, [r5, r0]
cmp r0, #0x1e
blo _0202B236
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B236:
cmp r4, #0x1e
blt _0202B23E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B23E:
ldr r0, _0202B24C ; =0x00002AAC
ldr r0, [r5, r0]
@@ -92933,17 +92933,17 @@ FUN_0202B250: ; 0x0202B250
add r4, r1, #0x0
cmp r5, #0x0
bne _0202B25E
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B25E:
ldr r0, _0202B298 ; =0x00002AA8
ldr r0, [r5, r0]
cmp r0, #0x1e
blo _0202B26A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B26A:
cmp r4, #0x1e
blt _0202B272
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B272:
ldr r0, _0202B298 ; =0x00002AA8
ldr r0, [r5, r0]
@@ -92979,17 +92979,17 @@ FUN_0202B29C: ; 0x0202B29C
add r4, r3, #0x0
cmp r5, #0x0
bne _0202B2AE
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B2AE:
ldr r0, _0202B318 ; =0x00002AA8
ldr r0, [r5, r0]
cmp r0, #0x1e
blo _0202B2BA
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B2BA:
cmp r6, #0x1e
blt _0202B2C2
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B2C2:
ldr r0, _0202B318 ; =0x00002AA8
ldr r0, [r5, r0]
@@ -93044,17 +93044,17 @@ FUN_0202B31C: ; 0x0202B31C
add r4, r2, #0x0
cmp r5, #0x0
bne _0202B32C
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B32C:
ldr r0, _0202B370 ; =0x00002AA8
ldr r0, [r5, r0]
cmp r0, #0x1e
blo _0202B338
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B338:
cmp r6, #0x1e
blt _0202B340
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B340:
ldr r0, _0202B370 ; =0x00002AA8
ldr r0, [r5, r0]
@@ -93092,13 +93092,13 @@ _0202B378: .word 0x00000B88
thumb_func_start FUN_0202B37C
FUN_0202B37C: ; 0x0202B37C
- ldr r3, _0202B388 ; =FUN_020CE240
+ ldr r3, _0202B388 ; =MIi_CpuClearFast
add r1, r0, #0x0
mov r0, #0x0
ldr r2, _0202B38C ; =0x00000B88
bx r3
nop
-_0202B388: .word FUN_020CE240
+_0202B388: .word MIi_CpuClearFast
_0202B38C: .word 0x00000B88
thumb_func_start FUN_0202B390
@@ -93109,18 +93109,18 @@ FUN_0202B390: ; 0x0202B390
mov r0, #0x0
add r1, #0xc
mov r2, #0xc0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r1, r4, #0x0
mov r0, #0x0
add r1, #0xcc
mov r2, #0xc0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r1, #0x63
lsl r1, r1, #0x2
mov r0, #0x0
add r1, r4, r1
mov r2, #0xc0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
bl FUN_0202B3F8
pop {r4, pc}
@@ -93139,7 +93139,7 @@ FUN_0202B3C4: ; 0x0202B3C4
_0202B3D4:
add r0, r2, #0x0
mov r1, #0xf
- blx FUN_020EBC80
+ blx _s32_div_f
mov r0, #0xf
sub r1, r0, r1
str r1, [r4, #0x4]
@@ -93192,7 +93192,7 @@ _0202B422:
add r3, r3, #0x1
cmp r3, #0x4
blt _0202B418
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
@@ -93271,7 +93271,7 @@ FUN_0202B470: ; 0x0202B470
add r0, r6, #0x0
add r1, r5, #0x0
mov r2, #0x28
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
add sp, #0x10
pop {r4-r6, pc}
@@ -93404,7 +93404,7 @@ _0202B574:
add r4, #0xcc
b _0202B57E
_0202B57A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B57E:
add r0, r4, #0x0
pop {r4, pc}
@@ -93442,7 +93442,7 @@ _0202B5B0:
add r4, r0, r1
b _0202B5BA
_0202B5B6:
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B5BA:
add r0, r4, #0x0
pop {r4, pc}
@@ -93650,7 +93650,7 @@ FUN_0202B710: ; 0x0202B710
add r0, sp, #0x8
mov r1, #0x0
mov r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
str r0, [sp, #0x0]
add r0, sp, #0x8
@@ -93752,7 +93752,7 @@ FUN_0202B7C8: ; 0x0202B7C8
bl FUN_0202B820
cmp r0, #0x1
beq _0202B7DE
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B7DE:
add r0, r5, #0x0
add r1, r6, #0x0
@@ -93775,7 +93775,7 @@ FUN_0202B7F4: ; 0x0202B7F4
bl FUN_0202B820
cmp r0, #0x0
beq _0202B80A
- bl FUN_02020C2C
+ bl ErrorHandling
_0202B80A:
add r0, r5, #0x0
add r1, r6, #0x0
@@ -93874,7 +93874,7 @@ FUN_0202B888: ; 0x0202B888
mov r1, #0x8
bx r3
nop
-_0202B898: .word FUN_0200232C + 1
+_0202B898: .word FUN_0200232C
thumb_func_start FUN_0202B89C
FUN_0202B89C: ; 0x0202B89C
@@ -93903,7 +93903,7 @@ FUN_0202B8B8: ; 0x0202B8B8
mov r1, #0x0
lsl r2, r2, #0x4
add r6, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r7, #0x0
_0202B8C8:
mov r4, #0x0
@@ -93927,7 +93927,7 @@ FUN_0202B8E4: ; 0x0202B8E4
mov r1, #0x1c
bx r3
nop
-_0202B8EC: .word FUN_02022610 + 1
+_0202B8EC: .word FUN_02022610
thumb_func_start FUN_0202B8F0
FUN_0202B8F0: ; 0x0202B8F0
@@ -93935,7 +93935,7 @@ FUN_0202B8F0: ; 0x0202B8F0
cmp r2, #0x6
blo _0202B8FE
blo _0202B930
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_0202B8FE:
mov r3, #0x90
@@ -94079,7 +94079,7 @@ FUN_0202B9EC: ; 0x0202B9EC
mov r1, #0x0
lsl r2, r2, #0x2
str r0, [sp, #0x4]
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
bl FUN_0202881C
mov r1, #0x1
@@ -94196,7 +94196,7 @@ FUN_0202BAD4: ; 0x0202BAD4
mov r1, #0x0
mov r2, #0xe0
add r4, r3, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, sp, #0x10
ldrb r0, [r0, #0x10]
cmp r0, #0x0
@@ -94208,7 +94208,7 @@ FUN_0202BAD4: ; 0x0202BAD4
add r0, r5, r0
add r1, #0x50
str r0, [sp, #0x8]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r1, sp, #0x10
ldrb r3, [r1, #0x18]
mov r0, #0x0
@@ -94269,7 +94269,7 @@ _0202BB64:
add r1, r6, #0x0
add r1, #0x50
str r0, [sp, #0x8]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, sp, #0x10
ldrb r2, [r0, #0x18]
mov r3, #0x0
@@ -94552,7 +94552,7 @@ FUN_0202BD6C: ; 0x0202BD6C
mov r1, #0x0
mov r2, #0x4c
add r7, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
bl FUN_0202881C
mov r1, #0x1
@@ -94610,7 +94610,7 @@ FUN_0202BDF0: ; 0x0202BDF0
mov r1, #0x0
mov r2, #0x4c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [sp, #0x0]
mov r1, #0x90
mul r1, r0
@@ -94679,7 +94679,7 @@ _0202BE7E:
add r0, r6, #0x0
mov r1, #0x0
mov r2, #0x4c
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r6, #0x0
bl FUN_02016A18
pop {r4-r6, pc}
@@ -94698,7 +94698,7 @@ FUN_0202BEA0: ; 0x0202BEA0
ldr r2, _0202BED8 ; =0x00000688
mov r0, #0x0
add r1, r5, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r4, #0x0
mov r6, #0xab
add r7, r4, #0x0
@@ -94711,7 +94711,7 @@ _0202BEB4:
bl FUN_020671BC
cmp r0, #0x0
beq _0202BECC
- bl FUN_02020C2C
+ bl ErrorHandling
_0202BECC:
add r4, r4, #0x1
add r5, #0xec
@@ -94728,7 +94728,7 @@ FUN_0202BEDC: ; 0x0202BEDC
ldr r2, _0202BF14 ; =0x00000588
mov r0, #0x0
add r1, r5, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r4, #0x0
mov r6, #0xab
add r7, r4, #0x0
@@ -94741,7 +94741,7 @@ _0202BEF0:
bl FUN_020671BC
cmp r0, #0x0
beq _0202BF08
- bl FUN_02020C2C
+ bl ErrorHandling
_0202BF08:
add r4, r4, #0x1
add r5, #0xec
@@ -94817,7 +94817,7 @@ FUN_0202BF7C: ; 0x0202BF7C
ldr r3, _0202BF8C ; =FUN_02069A64
bx r3
nop
-_0202BF8C: .word FUN_02069A64 + 1
+_0202BF8C: .word FUN_02069A64
thumb_func_start FUN_0202BF90
FUN_0202BF90: ; 0x0202BF90
@@ -94837,14 +94837,14 @@ FUN_0202BF90: ; 0x0202BF90
str r0, [r3, r2]
add r0, r2, #0x4
str r1, [r3, r0]
- blx FUN_020CD510
+ blx OS_GetOwnerRtcOffset
ldr r2, _0202BFD4 ; =0x00000678
str r0, [r5, r2]
add r0, r2, #0x4
add r2, #0x8
str r1, [r5, r0]
add r0, r5, r2
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
pop {r4-r6, pc}
nop
_0202BFCC: .word 0x00000588
@@ -94859,7 +94859,7 @@ FUN_0202BFD8: ; 0x0202BFD8
add r4, r2, #0x0
cmp r5, #0x6
blt _0202BFE8
- bl FUN_02020C2C
+ bl ErrorHandling
_0202BFE8:
mov r0, #0xec
mul r0, r5
@@ -94935,7 +94935,7 @@ FUN_0202C060: ; 0x0202C060
sub sp, #0x8
add r4, r0, #0x0
add r0, sp, #0x0
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
mov r0, #0x1a
mov r3, #0x0
add r5, sp, #0x0
@@ -94963,7 +94963,7 @@ _0202C084:
FUN_0202C094: ; 0x0202C094
push {r4, lr}
add r4, r0, #0x0
- blx FUN_020CD510
+ blx OS_GetOwnerRtcOffset
ldr r2, _0202C0B4 ; =0x00000678
ldr r3, [r4, r2]
add r2, r2, #0x4
@@ -95155,7 +95155,7 @@ _0202C1EC:
pop {r3, pc}
.balign 4
_0202C1F0: .word 0x021C59D8
-_0202C1F4: .word FUN_0202C1F8 + 1
+_0202C1F4: .word FUN_0202C1F8
thumb_func_start FUN_0202C1F8
FUN_0202C1F8: ; 0x0202C1F8
@@ -95195,14 +95195,14 @@ _0202C230:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x4
- blx FUN_020CC124
+ blx DC_InvalidateRange
mov r0, #0x66
mov r1, #0x0
lsl r0, r0, #0x2
str r1, [r4, r0]
add r0, r4, r0
mov r1, #0x4
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, _0202C280 ; =FUN_0202C288
blx FUN_020D9554
cmp r0, #0x2
@@ -95224,7 +95224,7 @@ _0202C264:
.balign 4
_0202C278: .word 0x021C59D8
_0202C27C: .word 0x00001310
-_0202C280: .word FUN_0202C288 + 1
+_0202C280: .word FUN_0202C288
_0202C284: .word 0x0000132C
thumb_func_start FUN_0202C288
@@ -95409,7 +95409,7 @@ _0202C3F0: .word 0x021C59D8
_0202C3F4: .word 0x00001310
_0202C3F8: .word 0x00001304
_0202C3FC: .word 0x00001020
-_0202C400: .word FUN_0202C404 + 1
+_0202C400: .word FUN_0202C404
thumb_func_start FUN_0202C404
FUN_0202C404: ; 0x0202C404
@@ -95476,7 +95476,7 @@ _0202C47A:
mov r0, #0x1
pop {r3, pc}
nop
-_0202C480: .word FUN_0202C484 + 1
+_0202C480: .word FUN_0202C484
thumb_func_start FUN_0202C484
FUN_0202C484: ; 0x0202C484
@@ -95509,7 +95509,7 @@ _0202C4B8:
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0202C4BC: .word FUN_0202C4C0 + 1
+_0202C4BC: .word FUN_0202C4C0
thumb_func_start FUN_0202C4C0
FUN_0202C4C0: ; 0x0202C4C0
@@ -95744,7 +95744,7 @@ _0202C684: .word 0x021C59D8
_0202C688: .word 0x0000130C
_0202C68C: .word 0x000012E4
_0202C690: .word 0x000012E6
-_0202C694: .word FUN_0202C698 + 1
+_0202C694: .word FUN_0202C698
thumb_func_start FUN_0202C698
FUN_0202C698: ; 0x0202C698
@@ -95784,7 +95784,7 @@ _0202C6D0:
sub r0, #0xf0
add r0, r2, r0
mov r1, #0xc0
- blx FUN_020CC124
+ blx DC_InvalidateRange
ldr r0, _0202C760 ; =0x021C59D8
ldr r1, [r0, #0x4]
ldr r0, _0202C768 ; =0x00001320
@@ -95884,7 +95884,7 @@ _0202C7A8:
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0202C7AC: .word FUN_0202C7B0 + 1
+_0202C7AC: .word FUN_0202C7B0
thumb_func_start FUN_0202C7B0
FUN_0202C7B0: ; 0x0202C7B0
@@ -95935,7 +95935,7 @@ _0202C800:
ldr r0, _0202C84C ; =0x02105D54
add r1, #0x1
mov r2, #0x3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
bl FUN_02033534
add r1, sp, #0x4
strb r0, [r1, #0x0]
@@ -95963,7 +95963,7 @@ _0202C83E:
_0202C844: .word 0x021C59D8
_0202C848: .word 0x00001310
_0202C84C: .word 0x02105D54
-_0202C850: .word FUN_0202C858 + 1
+_0202C850: .word FUN_0202C858
_0202C854: .word 0x00001220
thumb_func_start FUN_0202C858
@@ -96088,7 +96088,7 @@ _0202C942:
_0202C948: .word 0x021C59D8
_0202C94C: .word 0x00001304
_0202C950: .word 0x00001020
-_0202C954: .word FUN_0202C958 + 1
+_0202C954: .word FUN_0202C958
thumb_func_start FUN_0202C958
FUN_0202C958: ; 0x0202C958
@@ -96159,7 +96159,7 @@ _0202C9D6:
mov r0, #0x1
pop {r3, pc}
nop
-_0202C9DC: .word FUN_0202C9E0 + 1
+_0202C9DC: .word FUN_0202C9E0
thumb_func_start FUN_0202C9E0
FUN_0202C9E0: ; 0x0202C9E0
@@ -96198,7 +96198,7 @@ _0202CA24:
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0202CA28: .word FUN_0202CA2C + 1
+_0202CA28: .word FUN_0202CA2C
thumb_func_start FUN_0202CA2C
FUN_0202CA2C: ; 0x0202CA2C
@@ -96230,7 +96230,7 @@ _0202CA5E:
mov r0, #0x1
pop {r3, pc}
nop
-_0202CA64: .word FUN_0202CA68 + 1
+_0202CA64: .word FUN_0202CA68
thumb_func_start FUN_0202CA68
FUN_0202CA68: ; 0x0202CA68
@@ -96264,7 +96264,7 @@ FUN_0202CA88: ; 0x0202CA88
add r0, r1, r0
ldr r1, [r1, r2]
add r7, r3, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, _0202CAD8 ; =0x0000FFFF
add r1, r7, #0x0
str r0, [sp, #0x0]
@@ -96290,7 +96290,7 @@ _0202CACA:
_0202CAD0: .word 0x021C59D8
_0202CAD4: .word 0x00001304
_0202CAD8: .word 0x0000FFFF
-_0202CADC: .word FUN_0202CAE0 + 1
+_0202CADC: .word FUN_0202CAE0
thumb_func_start FUN_0202CAE0
FUN_0202CAE0: ; 0x0202CAE0
@@ -96461,7 +96461,7 @@ FUN_0202CBFC: ; 0x0202CBFC
push {r3-r5, lr}
sub sp, #0x8
add r0, sp, #0x0
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
ldr r0, _0202CC84 ; =0x027FFC3C
ldr r3, [r0, #0x0]
add r0, sp, #0x0
@@ -96585,7 +96585,7 @@ _0202CD00:
lsr r0, r0, #0x10
pop {r4, pc}
nop
-_0202CD10: .word FUN_0202CD14 + 1
+_0202CD10: .word FUN_0202CD14
thumb_func_start FUN_0202CD14
FUN_0202CD14: ; 0x0202CD14
@@ -96877,7 +96877,7 @@ _0202CF34:
pop {r3, pc}
.balign 4
_0202CF38: .word 0x021C59D8
-_0202CF3C: .word FUN_0202CF40 + 1
+_0202CF3C: .word FUN_0202CF40
thumb_func_start FUN_0202CF40
FUN_0202CF40: ; 0x0202CF40
@@ -96907,7 +96907,7 @@ _0202CF76:
bl FUN_0202C198
pop {r3, pc}
nop
-_0202CF80: .word FUN_0202CEF4 + 1
+_0202CF80: .word FUN_0202CEF4
thumb_func_start FUN_0202CF84
FUN_0202CF84: ; 0x0202CF84
@@ -97037,14 +97037,14 @@ _0202D066:
ldr r1, _0202D09C ; =0x00001220
add r1, r2, r1
mov r2, #0xc0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0202D094 ; =0x021C59D8
ldr r1, [r0, #0x4]
ldr r0, _0202D09C ; =0x00001220
add r0, r1, r0
mov r1, #0xc0
- blx FUN_020CC15C
- blx FUN_020CC180
+ blx DC_FlushRange
+ blx DC_WaitWriteBufferEmpty
bl FUN_0202C7E8
pop {r4-r6, pc}
_0202D08E:
@@ -97078,7 +97078,7 @@ _0202D0C2:
.balign 4
_0202D0C4: .word 0x021C59D8
_0202D0C8: .word 0x00001318
-_0202D0CC: .word FUN_0202CB08 + 1
+_0202D0CC: .word FUN_0202CB08
thumb_func_start FUN_0202D0D0
FUN_0202D0D0: ; 0x0202D0D0
@@ -97185,7 +97185,7 @@ _0202D194:
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0202D198: .word FUN_0202CB50 + 1
+_0202D198: .word FUN_0202CB50
thumb_func_start FUN_0202D19C
FUN_0202D19C: ; 0x0202D19C
@@ -97358,7 +97358,7 @@ _0202D2BE:
nop
_0202D2C4: .word 0x021C59D8
_0202D2C8: .word 0x00001344
-_0202D2CC: .word FUN_0202D27C + 1
+_0202D2CC: .word FUN_0202D27C
thumb_func_start FUN_0202D2D0
FUN_0202D2D0: ; 0x0202D2D0
@@ -97506,7 +97506,7 @@ _0202D3BC:
_0202D3CC:
cmp r7, #0x0
bne _0202D3D4
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D3D4:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -97634,7 +97634,7 @@ FUN_0202D4A8: ; 0x0202D4A8
add r0, r1, #0x0
mov r1, #0xa
ldrsh r1, [r2, r1]
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r1, #0x0
pop {r3, pc}
.balign 4
@@ -97886,7 +97886,7 @@ _0202D660:
ldr r0, [r5, #0x0]
ldr r1, [r4, #0x0]
add r2, r3, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_0202D66A:
ldrh r0, [r5, #0xc]
ldr r1, [r4, #0x0]
@@ -97919,7 +97919,7 @@ _0202D69E:
ldr r0, _0202D710 ; =0x0000FFFE
cmp r7, r0
blt _0202D6A8
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D6A8:
ldr r0, [sp, #0x0]
bl FUN_0202D9A0
@@ -98060,7 +98060,7 @@ _0202D7A4:
add r0, r6, #0x0
mov r1, #0x0
mov r2, #0x10
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r4, #0x4]
ldr r7, [sp, #0x0]
cmp r0, #0x0
@@ -98094,7 +98094,7 @@ FUN_0202D7D8: ; 0x0202D7D8
mov r1, #0x0
mov r2, #0x20
add r5, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
lsl r7, r4, #0x4
mov r0, #0xf
add r1, r7, #0x0
@@ -98102,7 +98102,7 @@ FUN_0202D7D8: ; 0x0202D7D8
mov r1, #0x0
add r2, r7, #0x0
str r0, [r5, #0x18]
- blx FUN_020CE34C
+ blx MI_CpuFill8
str r4, [r5, #0x1c]
str r6, [r5, #0x14]
pop {r3-r7, pc}
@@ -98116,7 +98116,7 @@ FUN_0202D804: ; 0x0202D804
ldr r0, [r4, #0x18]
mov r1, #0x0
lsl r2, r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
str r0, [r4, #0x0]
str r0, [r4, #0x4]
@@ -98132,7 +98132,7 @@ FUN_0202D824: ; 0x0202D824
ldr r0, [r0, #0x18]
bx r3
nop
-_0202D82C: .word FUN_02016A18 + 1
+_0202D82C: .word FUN_02016A18
thumb_func_start FUN_0202D830
FUN_0202D830: ; 0x0202D830
@@ -98177,7 +98177,7 @@ _0202D864:
bne _0202D864
cmp r4, #0x1a
blo _0202D878
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D878:
add r0, sp, #0x0
ldrb r0, [r0, r4]
@@ -98203,7 +98203,7 @@ _0202D890:
bne _0202D890
cmp r4, #0x1a
blo _0202D8A4
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D8A4:
add r0, sp, #0x0
ldrb r0, [r0, r4]
@@ -98308,7 +98308,7 @@ _0202D94C:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0202D958
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D958:
ldr r0, _0202D99C ; =0x021C59E0
ldr r1, [r0, #0x0]
@@ -98367,7 +98367,7 @@ _0202D9B6:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _0202D9C2
- bl FUN_02020C2C
+ bl ErrorHandling
_0202D9C2:
ldr r0, _0202DA00 ; =0x021C59E0
ldr r1, [r0, #0x0]
@@ -98547,7 +98547,7 @@ FUN_0202DAD0: ; 0x0202DAD0
bx r3
nop
_0202DAF0: .word 0x021C59E0
-_0202DAF4: .word FUN_020311D0 + 1
+_0202DAF4: .word FUN_020311D0
thumb_func_start FUN_0202DAF8
FUN_0202DAF8: ; 0x0202DAF8
@@ -98587,7 +98587,7 @@ FUN_0202DB14: ; 0x0202DB14
str r0, [r1, #0x0]
mov r1, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r6, #0x0
ldr r7, _0202DBA0 ; =0x021C59E4
add r4, r6, #0x0
@@ -98710,7 +98710,7 @@ FUN_0202DBE0: ; 0x0202DBE0
ldr r0, [r0, #0x0]
add r0, #0x64
add r0, r0, r5
- blx FUN_020CD5A0
+ blx OS_GetMacAddress
add r0, r7, #0x0
mov r1, #0x1
mov r2, #0x0
@@ -98720,7 +98720,7 @@ FUN_0202DBE0: ; 0x0202DBE0
ldr r1, [r1, #0x0]
add r1, #0x54
add r1, r1, r5
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r6, #0x0
bl FUN_02029B38
ldr r1, _0202DCD8 ; =0x021C59E4
@@ -98762,7 +98762,7 @@ FUN_0202DBE0: ; 0x0202DBE0
mov r2, #0x20
add r0, #0x8
add r0, r0, r5
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202DCD8 ; =0x021C59E4
ldr r1, [r0, #0x0]
ldr r0, [r1, #0x0]
@@ -98838,7 +98838,7 @@ FUN_0202DD08: ; 0x0202DD08
add r3, r1, #0x0
mul r3, r2
add r1, r5, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r4, #0x62
ldr r2, _0202DD78 ; =0x021C59E4
ldrb r3, [r4, #0x0]
@@ -98888,7 +98888,7 @@ FUN_0202DD80: ; 0x0202DD80
add r1, #0x8
add r1, r1, r4
add r2, r3, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0202DDE0 ; =0x021C59E4
add r1, r5, #0x0
ldr r0, [r0, #0x0]
@@ -98966,7 +98966,7 @@ _0202DE0A:
ldr r0, [r1, r0]
add r6, #0x28
add r1, r6, r5
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r1, _0202DE70 ; =0x021C59E4
mov r0, #0x4
ldr r1, [r1, #0x0]
@@ -99499,7 +99499,7 @@ _0202E1EE:
ldr r0, [sp, #0x8]
cmp r0, #0x0
bge _0202E1F8
- bl FUN_02020C2C
+ bl ErrorHandling
_0202E1F8:
ldr r0, _0202E254 ; =0x021C59E4
mov r2, #0xda
@@ -99603,7 +99603,7 @@ FUN_0202E29C: ; 0x0202E29C
str r0, [r1, #0x8]
mov r1, #0x0
lsl r2, r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
bl FUN_0202CEEC
add r1, r0, #0x0
mov r0, #0xf
@@ -99619,7 +99619,7 @@ FUN_0202E29C: ; 0x0202E29C
ldr r0, _0202E338 ; =0x00000CA4
ldr r0, [r1, r0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
bl FUN_02023AC4
add r1, r0, #0x0
mov r0, #0xf
@@ -99635,7 +99635,7 @@ FUN_0202E29C: ; 0x0202E29C
ldr r0, _0202E33C ; =0x00000CBC
ldr r0, [r1, r0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r2, _0202E334 ; =0x021C59E8
mov r1, #0x33
ldr r3, _0202E340 ; =0x00000333
@@ -99771,7 +99771,7 @@ _0202E3D2:
mul r1, r2
add r0, r7, #0x0
add r1, r3, r1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3-r7, pc}
_0202E412:
add r6, r6, #0x1
@@ -99808,7 +99808,7 @@ _0202E434:
mul r3, r2
add r0, r7, #0x0
add r1, r4, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0202E464 ; =0x021C59E8
mov r2, #0x1
ldr r1, [r0, #0x8]
@@ -99826,7 +99826,7 @@ FUN_0202E470: ; 0x0202E470
push {r3, lr}
cmp r1, #0x0
beq _0202E47A
- blx FUN_020CD850
+ blx OS_Terminate
_0202E47A:
ldr r0, _0202E484 ; =0x021C59E8
mov r1, #0x2
@@ -99845,7 +99845,7 @@ FUN_0202E488: ; 0x0202E488
bx r3
.balign 4
_0202E494: .word 0x021C59E8
-_0202E498: .word FUN_02016454 + 1
+_0202E498: .word FUN_02016454
thumb_func_start FUN_0202E49C
FUN_0202E49C: ; 0x0202E49C
@@ -99861,12 +99861,12 @@ FUN_0202E49C: ; 0x0202E49C
blx FUN_02090DB8
cmp r0, #0x1
beq _0202E4BC
- blx FUN_020CD850
+ blx OS_Terminate
_0202E4BC:
pop {r3, pc}
nop
_0202E4C0: .word 0x021C59E8
-_0202E4C4: .word FUN_0202E470 + 1
+_0202E4C4: .word FUN_0202E470
thumb_func_start FUN_0202E4C8
FUN_0202E4C8: ; 0x0202E4C8
@@ -99904,7 +99904,7 @@ FUN_0202E4F0: ; 0x0202E4F0
bx r3
.balign 4
_0202E4F8: .word FUN_02090CC8
-_0202E4FC: .word FUN_0202E488 + 1
+_0202E4FC: .word FUN_0202E488
thumb_func_start FUN_0202E500
FUN_0202E500: ; 0x0202E500
@@ -99956,7 +99956,7 @@ _0202E544:
ldr r0, [r0, #0x8]
lsl r2, r2, #0xa
add r0, #0x54
- blx FUN_020CE34C
+ blx MI_CpuFill8
pop {r3-r5, pc}
nop
_0202E564: .word 0x021C59E8
@@ -100085,7 +100085,7 @@ _0202E656:
nop
_0202E65C: .word 0x021C59E8
_0202E660: .word 0x00000DAB
-_0202E664: .word FUN_020303BC + 1
+_0202E664: .word FUN_020303BC
_0202E668: .word 0x00000DAD
thumb_func_start FUN_0202E66C
@@ -100146,9 +100146,9 @@ _0202E6D4:
nop
_0202E6DC: .word 0x021C59E8
_0202E6E0: .word 0x00000DAB
-_0202E6E4: .word FUN_02030238 + 1
+_0202E6E4: .word FUN_02030238
_0202E6E8: .word 0x020EEC40
-_0202E6EC: .word FUN_0202E380 + 1
+_0202E6EC: .word FUN_0202E380
thumb_func_start FUN_0202E6F0
FUN_0202E6F0: ; 0x0202E6F0
@@ -100347,7 +100347,7 @@ _0202E860:
add r5, r5, #0x2
cmp r3, #0x10
blt _0202E850
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
@@ -100661,19 +100661,19 @@ FUN_0202EA9C: ; 0x0202EA9C
bl FUN_02023AC4
cmp r0, #0x20
ble _0202EAC2
- bl FUN_02020C2C
+ bl ErrorHandling
_0202EAC2:
bl FUN_02023924
cmp r0, #0x20
beq _0202EACE
- bl FUN_02020C2C
+ bl ErrorHandling
_0202EACE:
bl FUN_02023924
add r1, r5, #0x0
add r2, r0, #0x0
add r0, r4, #0x0
add r1, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
bl FUN_02023AC4
add r2, r0, #0x0
ldr r0, _0202EB6C ; =0x021C59E8
@@ -100682,7 +100682,7 @@ _0202EACE:
ldr r0, [r1, r0]
add r1, r5, #0x0
add r1, #0x30
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
bl FUN_020239BC
str r0, [r5, #0x0]
@@ -100697,7 +100697,7 @@ _0202EACE:
add r0, r1, r0
add r1, r5, #0x0
add r1, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
bl FUN_0202D358
add r5, #0x54
strb r0, [r5, #0x0]
@@ -100719,14 +100719,14 @@ _0202EB24:
ldr r0, [r0, #0x8]
add r1, r5, #0x0
mov r2, #0x54
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_0202EB4E:
ldr r0, _0202EB6C ; =0x021C59E8
ldr r1, [r0, #0x8]
ldr r0, _0202EB70 ; =0x00000CC4
add r0, r1, r0
mov r1, #0x5c
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, _0202EB6C ; =0x021C59E8
ldr r1, [r0, #0x8]
ldr r0, _0202EB70 ; =0x00000CC4
@@ -100758,7 +100758,7 @@ FUN_0202EB7C: ; 0x0202EB7C
ldr r0, _0202EBCC ; =0x00000CC4
add r0, r1, r0
mov r1, #0x5c
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, _0202EBC8 ; =0x021C59E8
ldr r1, [r0, #0x8]
ldr r0, _0202EBCC ; =0x00000CC4
@@ -101208,7 +101208,7 @@ FUN_0202EEE8: ; 0x0202EEE8
add r4, r0, #0x0
cmp r5, #0x1a
blo _0202EEFA
- bl FUN_02020C2C
+ bl ErrorHandling
_0202EEFA:
cmp r5, #0xa
bne _0202EF04
@@ -101322,7 +101322,7 @@ FUN_0202EFAC: ; 0x0202EFAC
beq _0202EFD8
cmp r4, #0x8
blt _0202EFC2
- bl FUN_02020C2C
+ bl ErrorHandling
_0202EFC2:
ldr r1, _0202EFDC ; =0x021C59E8
add r0, r5, #0x0
@@ -101333,7 +101333,7 @@ _0202EFC2:
add r1, r4, #0x0
mul r1, r2
add r1, r3, r1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_0202EFD8:
pop {r3-r5, pc}
nop
@@ -101426,7 +101426,7 @@ _0202F074: .word 0x00000DAD
thumb_func_start FUN_0202F078
FUN_0202F078: ; 0x0202F078
ldr r1, _0202F088 ; =0x021C59E8
- ldr r3, _0202F08C ; =FUN_020CE3E0
+ ldr r3, _0202F08C ; =MI_CpuCopy8
ldr r2, [r1, #0x8]
ldr r1, _0202F090 ; =0x00000CA8
add r1, r2, r1
@@ -101434,7 +101434,7 @@ FUN_0202F078: ; 0x0202F078
bx r3
nop
_0202F088: .word 0x021C59E8
-_0202F08C: .word FUN_020CE3E0
+_0202F08C: .word MI_CpuCopy8
_0202F090: .word 0x00000CA8
thumb_func_start FUN_0202F094
@@ -101448,7 +101448,7 @@ FUN_0202F094: ; 0x0202F094
ldr r1, _0202F0B4 ; =0x00000CBC
add r0, r4, #0x0
ldr r1, [r3, r1]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r4, pc}
nop
_0202F0B0: .word 0x021C59E8
@@ -101501,7 +101501,7 @@ FUN_0202F104: ; 0x0202F104
ldr r3, _0202F108 ; =FUN_0202D2D0
bx r3
.balign 4
-_0202F108: .word FUN_0202D2D0 + 1
+_0202F108: .word FUN_0202D2D0
thumb_func_start FUN_0202F10C
FUN_0202F10C: ; 0x0202F10C
@@ -101509,7 +101509,7 @@ FUN_0202F10C: ; 0x0202F10C
ldr r1, _0202F120 ; =0x021C59E8
mov r2, #0x54
ldr r1, [r1, #0x8]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
bl FUN_0202F0B8
pop {r3, pc}
nop
@@ -101570,7 +101570,7 @@ _0202F178:
ldr r2, _0202F2C0 ; =0x0000068C
str r0, [r1, #0x4]
add r1, r4, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r2, _0202F2BC ; =0x021C59F4
ldr r1, _0202F2C4 ; =0x00000658
ldr r0, [r2, #0x4]
@@ -101669,7 +101669,7 @@ _0202F25C:
mov r4, #0x1
cmp r0, #0x0
bne _0202F268
- bl FUN_02020C2C
+ bl ErrorHandling
_0202F268:
ldr r2, _0202F2BC ; =0x021C59F4
ldr r1, _0202F2DC ; =0x0000065C
@@ -101723,7 +101723,7 @@ _0202F2D4: .word 0x0000054C
_0202F2D8: .word 0x0000056C
_0202F2DC: .word 0x0000065C
_0202F2E0: .word 0x000005F8
-_0202F2E4: .word FUN_0202FB20 + 1
+_0202F2E4: .word FUN_0202FB20
_0202F2E8: .word 0x00000548
_0202F2EC: .word 0x00000687
@@ -101759,7 +101759,7 @@ FUN_0202F2F0: ; 0x0202F2F0
ldr r3, [r3, r2]
add r2, r3, #0x0
mul r2, r6
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r4, #0x0
cmp r6, #0x0
ble _0202F360
@@ -101792,7 +101792,7 @@ _0202F360:
ldr r3, [r3, r2]
add r2, r3, #0x0
mul r2, r6
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r5, #0x0
cmp r6, #0x0
ble _0202F3A2
@@ -101824,7 +101824,7 @@ _0202F3A2:
add r0, r1, r0
mov r1, #0x0
lsl r2, r2, #0x6
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F54C ; =0x021C59F4
mov r1, #0xb5
ldr r2, [r0, #0x4]
@@ -101858,7 +101858,7 @@ _0202F3DA:
mov r1, #0x0
add r0, #0x4c
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F54C ; =0x021C59F4
mov r2, #0x42
ldr r1, [r0, #0x4]
@@ -101894,7 +101894,7 @@ _0202F420:
ldr r0, [r3, r0]
mov r1, #0x0
lsl r2, r2, #0x1
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F54C ; =0x021C59F4
mov r1, #0x47
ldr r3, [r0, #0x4]
@@ -102073,7 +102073,7 @@ FUN_0202F5A4: ; 0x0202F5A4
ldr r3, [r3, r2]
add r2, r3, #0x0
mul r2, r6
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r4, #0x0
cmp r6, #0x0
ble _0202F606
@@ -102106,7 +102106,7 @@ _0202F606:
ldr r3, [r3, r2]
add r2, r3, #0x0
mul r2, r6
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r5, #0x0
cmp r6, #0x0
ble _0202F648
@@ -102138,7 +102138,7 @@ _0202F648:
add r0, r1, r0
mov r1, #0x0
lsl r2, r2, #0x6
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F7D4 ; =0x021C59F4
mov r1, #0xb5
ldr r2, [r0, #0x4]
@@ -102172,7 +102172,7 @@ _0202F680:
mov r1, #0x0
add r0, #0x4c
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F7D4 ; =0x021C59F4
mov r2, #0x42
ldr r1, [r0, #0x4]
@@ -102208,7 +102208,7 @@ _0202F6C6:
ldr r0, [r3, r0]
mov r1, #0x0
lsl r2, r2, #0x1
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0202F7D4 ; =0x021C59F4
mov r1, #0x47
ldr r3, [r0, #0x4]
@@ -102465,7 +102465,7 @@ FUN_0202F910: ; 0x0202F910
ldr r3, _0202F914 ; =FUN_0202F820
bx r3
.balign 4
-_0202F914: .word FUN_0202F820 + 1
+_0202F914: .word FUN_0202F820
thumb_func_start FUN_0202F918
FUN_0202F918: ; 0x0202F918
@@ -102492,7 +102492,7 @@ _0202F93E:
add r0, r4, #0x0
pop {r3-r7, pc}
nop
-_0202F94C: .word FUN_0202F910 + 1
+_0202F94C: .word FUN_0202F910
thumb_func_start FUN_0202F950
FUN_0202F950: ; 0x0202F950
@@ -102602,7 +102602,7 @@ FUN_0202FA10: ; 0x0202FA10
mov r0, #0x1
bx r3
nop
-_0202FA18: .word FUN_0202F9E0 + 1
+_0202FA18: .word FUN_0202F9E0
thumb_func_start FUN_0202FA1C
FUN_0202FA1C: ; 0x0202FA1C
@@ -102610,7 +102610,7 @@ FUN_0202FA1C: ; 0x0202FA1C
mov r0, #0x0
bx r3
nop
-_0202FA24: .word FUN_0202F9E0 + 1
+_0202FA24: .word FUN_0202F9E0
thumb_func_start FUN_0202FA28
FUN_0202FA28: ; 0x0202FA28
@@ -102732,7 +102732,7 @@ FUN_0202FB18: ; 0x0202FB18
ldr r3, _0202FB1C ; =FUN_0202E9E8
bx r3
.balign 4
-_0202FB1C: .word FUN_0202E9E8 + 1
+_0202FB1C: .word FUN_0202E9E8
thumb_func_start FUN_0202FB20
FUN_0202FB20: ; 0x0202FB20
@@ -103397,7 +103397,7 @@ _02030062:
.balign 4
_02030064: .word 0x021C59F4
_02030068: .word 0x02105D58
-_0203006C: .word FUN_020304F0 + 1
+_0203006C: .word FUN_020304F0
_02030070: .word 0x00000638
thumb_func_start FUN_02030074
@@ -103961,7 +103961,7 @@ FUN_020304D4: ; 0x020304D4
strb r1, [r0, #0x0]
pop {r3, pc}
_020304E4:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
nop
_020304EC: .word 0x02105D58
@@ -103977,7 +103977,7 @@ FUN_020304F0: ; 0x020304F0
strb r1, [r0, #0x1]
pop {r3, pc}
_02030500:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
nop
_02030508: .word 0x02105D58
@@ -104150,7 +104150,7 @@ _0203065E:
_02030660: .word 0x021C59F4
_02030664: .word 0x02105D58
_02030668: .word 0x0000067F
-_0203066C: .word FUN_020304D4 + 1
+_0203066C: .word FUN_020304D4
_02030670: .word 0x0000FFFE
thumb_func_start FUN_02030674
@@ -104802,7 +104802,7 @@ FUN_02030B3C: ; 0x02030B3C
bl FUN_02031190
cmp r0, #0x0
beq _02030B58
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x8
mov r0, #0x0
pop {r4-r6, pc}
@@ -104929,7 +104929,7 @@ FUN_02030C4C: ; 0x02030C4C
mov r2, #0x0
bx r3
nop
-_02030C54: .word FUN_02030BC4 + 1
+_02030C54: .word FUN_02030BC4
thumb_func_start FUN_02030C58
FUN_02030C58: ; 0x02030C58
@@ -104941,7 +104941,7 @@ FUN_02030C58: ; 0x02030C58
bx r3
.balign 4
_02030C64: .word 0x021C59F4
-_02030C68: .word FUN_0202D498 + 1
+_02030C68: .word FUN_0202D498
_02030C6C: .word 0x00000464
thumb_func_start FUN_02030C70
@@ -105048,7 +105048,7 @@ _02030D22:
ldr r0, [sp, #0x8]
add r1, r2, r1
ldr r2, [sp, #0xc]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_02030D42:
ldr r1, [r5, #0x0]
ldr r0, [sp, #0xc]
@@ -105662,7 +105662,7 @@ FUN_020311D0: ; 0x020311D0
mov r2, #0x0
bx r3
nop
-_020311D8: .word FUN_02030ADC + 1
+_020311D8: .word FUN_02030ADC
thumb_func_start FUN_020311DC
FUN_020311DC: ; 0x020311DC
@@ -105671,14 +105671,14 @@ FUN_020311DC: ; 0x020311DC
add r2, r1, #0x0
bx r3
.balign 4
-_020311E4: .word FUN_02030ADC + 1
+_020311E4: .word FUN_02030ADC
thumb_func_start FUN_020311E8
FUN_020311E8: ; 0x020311E8
ldr r3, _020311EC ; =FUN_0202EE24
bx r3
.balign 4
-_020311EC: .word FUN_0202EE24 + 1
+_020311EC: .word FUN_0202EE24
thumb_func_start FUN_020311F0
FUN_020311F0: ; 0x020311F0
@@ -105879,7 +105879,7 @@ FUN_02031354: ; 0x02031354
bx r3
nop
_02031364: .word 0x021C59F4
-_02031368: .word FUN_0202D830 + 1
+_02031368: .word FUN_0202D830
_0203136C: .word 0x0000056C
thumb_func_start FUN_02031370
@@ -105892,7 +105892,7 @@ FUN_02031370: ; 0x02031370
bx r3
.balign 4
_0203137C: .word 0x021C59F4
-_02031380: .word FUN_0202D4E4 + 1
+_02031380: .word FUN_0202D4E4
_02031384: .word 0x0000056C
thumb_func_start FUN_02031388
@@ -105905,7 +105905,7 @@ FUN_02031388: ; 0x02031388
bx r3
.balign 4
_02031394: .word 0x021C59F4
-_02031398: .word FUN_0202D4E4 + 1
+_02031398: .word FUN_0202D4E4
_0203139C: .word 0x0000054C
thumb_func_start FUN_020313A0
@@ -106051,7 +106051,7 @@ FUN_02031480: ; 0x02031480
ldr r2, _020314CC ; =0x00000253
str r0, [r1, #0x0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
_0203149C:
ldr r1, _020314C8 ; =0x021C59FC
mov r3, #0x0
@@ -106327,7 +106327,7 @@ _02031672:
add r1, r7, #0x0
add r0, r0, r5
mov r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r4, r4, #0x1
add r5, r5, #0x2
cmp r4, #0x8
@@ -106369,7 +106369,7 @@ FUN_020316AC: ; 0x020316AC
add r3, #0x18
add r0, r1, #0x0
add r1, r3, r4
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r1, _020316DC ; =0x021C59FC
mov r0, #0x14
ldr r1, [r1, #0x0]
@@ -106423,7 +106423,7 @@ FUN_02031704: ; 0x02031704
add r4, #0x18
mul r3, r2
add r1, r4, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3-r5, pc}
nop
_0203172C: .word 0x021C59FC
@@ -106450,7 +106450,7 @@ FUN_02031734: ; 0x02031734
mov r2, #0x50
str r0, [r1, #0x0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _020317BC ; =0x021C5A00
mov r2, #0x32
ldr r1, [r0, #0x0]
@@ -106580,7 +106580,7 @@ _02031856:
pop {r4, pc}
.balign 4
_02031858: .word 0x021C5A00
-_0203185C: .word FUN_02031D30 + 1
+_0203185C: .word FUN_02031D30
thumb_func_start FUN_02031860
FUN_02031860: ; 0x02031860
@@ -106597,7 +106597,7 @@ _02031876:
pop {r3, pc}
.balign 4
_02031878: .word 0x021C5A00
-_0203187C: .word FUN_020323CC + 1
+_0203187C: .word FUN_020323CC
thumb_func_start FUN_02031880
FUN_02031880: ; 0x02031880
@@ -106613,7 +106613,7 @@ FUN_02031880: ; 0x02031880
pop {r3, pc}
nop
_0203189C: .word 0x021C5A00
-_020318A0: .word FUN_020321B8 + 1
+_020318A0: .word FUN_020321B8
thumb_func_start FUN_020318A4
FUN_020318A4: ; 0x020318A4
@@ -106632,8 +106632,8 @@ FUN_020318B4: ; 0x020318B4
mov r1, #0x0
bx r3
.balign 4
-_020318BC: .word FUN_02031D20 + 1
-_020318C0: .word FUN_02032028 + 1
+_020318BC: .word FUN_02031D20
+_020318C0: .word FUN_02032028
thumb_func_start FUN_020318C4
FUN_020318C4: ; 0x020318C4
@@ -106688,8 +106688,8 @@ FUN_02031914: ; 0x02031914
mov r1, #0x0
bx r3
.balign 4
-_0203191C: .word FUN_02031D20 + 1
-_02031920: .word FUN_02032178 + 1
+_0203191C: .word FUN_02031D20
+_02031920: .word FUN_02032178
thumb_func_start FUN_02031924
FUN_02031924: ; 0x02031924
@@ -106711,7 +106711,7 @@ FUN_02031934: ; 0x02031934
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_02031944: .word FUN_02032194 + 1
+_02031944: .word FUN_02032194
thumb_func_start FUN_02031948
FUN_02031948: ; 0x02031948
@@ -106744,7 +106744,7 @@ _02031980:
nop
_02031984: .word 0x00007080
_02031988: .word 0x021C5A00
-_0203198C: .word FUN_020321D0 + 1
+_0203198C: .word FUN_020321D0
thumb_func_start FUN_02031990
FUN_02031990: ; 0x02031990
@@ -106777,7 +106777,7 @@ _020319C8:
nop
_020319CC: .word 0x00007080
_020319D0: .word 0x021C5A00
-_020319D4: .word FUN_0203224C + 1
+_020319D4: .word FUN_0203224C
thumb_func_start FUN_020319D8
FUN_020319D8: ; 0x020319D8
@@ -106791,8 +106791,8 @@ FUN_020319D8: ; 0x020319D8
bx r3
.balign 4
_020319E8: .word 0x021C5A00
-_020319EC: .word FUN_02031D20 + 1
-_020319F0: .word FUN_02032298 + 1
+_020319EC: .word FUN_02031D20
+_020319F0: .word FUN_02032298
thumb_func_start FUN_020319F4
FUN_020319F4: ; 0x020319F4
@@ -106803,7 +106803,7 @@ FUN_020319F4: ; 0x020319F4
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_02031A04: .word FUN_02032364 + 1
+_02031A04: .word FUN_02032364
thumb_func_start FUN_02031A08
FUN_02031A08: ; 0x02031A08
@@ -106819,14 +106819,14 @@ _02031A1A:
pop {r3, pc}
.balign 4
_02031A1C: .word 0x021C5A00
-_02031A20: .word FUN_02032440 + 1
+_02031A20: .word FUN_02032440
thumb_func_start FUN_02031A24
FUN_02031A24: ; 0x02031A24
ldr r3, _02031A28 ; =FUN_0202D298
bx r3
.balign 4
-_02031A28: .word FUN_0202D298 + 1
+_02031A28: .word FUN_0202D298
thumb_func_start FUN_02031A2C
FUN_02031A2C: ; 0x02031A2C
@@ -106909,7 +106909,7 @@ _02031ABA:
.balign 4
_02031ABC: .word 0x021C5A00
_02031AC0: .word 0x00007080
-_02031AC4: .word FUN_02032478 + 1
+_02031AC4: .word FUN_02032478
thumb_func_start FUN_02031AC8
FUN_02031AC8: ; 0x02031AC8
@@ -106930,7 +106930,7 @@ FUN_02031AC8: ; 0x02031AC8
pop {r3, pc}
.balign 4
_02031AEC: .word 0x021C5A00
-_02031AF0: .word FUN_02032628 + 1
+_02031AF0: .word FUN_02032628
thumb_func_start FUN_02031AF4
FUN_02031AF4: ; 0x02031AF4
@@ -106961,8 +106961,8 @@ _02031B1A:
bx lr
nop
_02031B20: .word 0x021C5A00
-_02031B24: .word FUN_0203279C + 1
-_02031B28: .word FUN_020327B4 + 1
+_02031B24: .word FUN_0203279C
+_02031B28: .word FUN_020327B4
thumb_func_start FUN_02031B2C
FUN_02031B2C: ; 0x02031B2C
@@ -106984,7 +106984,7 @@ _02031B44:
bx lr
.balign 4
_02031B48: .word 0x021C5A00
-_02031B4C: .word FUN_020327FC + 1
+_02031B4C: .word FUN_020327FC
thumb_func_start FUN_02031B50
FUN_02031B50: ; 0x02031B50
@@ -107042,8 +107042,8 @@ _02031BB8:
pop {r3, pc}
nop
_02031BC4: .word 0x021C5A00
-_02031BC8: .word FUN_020323DC + 1
-_02031BCC: .word FUN_02032424 + 1
+_02031BC8: .word FUN_020323DC
+_02031BCC: .word FUN_02032424
thumb_func_start FUN_02031BD0
FUN_02031BD0: ; 0x02031BD0
@@ -107065,7 +107065,7 @@ _02031BE8:
bx lr
.balign 4
_02031BEC: .word 0x021C5A00
-_02031BF0: .word FUN_020324F8 + 1
+_02031BF0: .word FUN_020324F8
thumb_func_start FUN_02031BF4
FUN_02031BF4: ; 0x02031BF4
@@ -107081,7 +107081,7 @@ _02031C06:
pop {r3, pc}
.balign 4
_02031C08: .word 0x021C5A00
-_02031C0C: .word FUN_02032440 + 1
+_02031C0C: .word FUN_02032440
thumb_func_start FUN_02031C10
FUN_02031C10: ; 0x02031C10
@@ -107117,7 +107117,7 @@ _02031C48:
pop {r3, pc}
nop
_02031C4C: .word 0x021C5A00
-_02031C50: .word FUN_02032850 + 1
+_02031C50: .word FUN_02032850
thumb_func_start FUN_02031C54
FUN_02031C54: ; 0x02031C54
@@ -107163,7 +107163,7 @@ _02031C9C:
pop {r3-r5, pc}
nop
_02031CA0: .word 0x00007080
-_02031CA4: .word FUN_02032E00 + 1
+_02031CA4: .word FUN_02032E00
thumb_func_start FUN_02031CA8
FUN_02031CA8: ; 0x02031CA8
@@ -107187,7 +107187,7 @@ _02031CD0:
pop {r3-r5, pc}
nop
_02031CD4: .word 0x00007080
-_02031CD8: .word FUN_02032E48 + 1
+_02031CD8: .word FUN_02032E48
thumb_func_start FUN_02031CDC
FUN_02031CDC: ; 0x02031CDC
@@ -107329,9 +107329,9 @@ _02031DF6:
pop {r3-r5, pc}
.balign 4
_02031DF8: .word 0x021C5A00
-_02031DFC: .word FUN_020320C4 + 1
-_02031E00: .word FUN_020323B8 + 1
-_02031E04: .word FUN_02031EE0 + 1
+_02031DFC: .word FUN_020320C4
+_02031E00: .word FUN_020323B8
+_02031E04: .word FUN_02031EE0
thumb_func_start FUN_02031E08
FUN_02031E08: ; 0x02031E08
@@ -107392,8 +107392,8 @@ _02031E7C:
pop {r3-r5, pc}
nop
_02031E80: .word 0x021C5A00
-_02031E84: .word FUN_02032058 + 1
-_02031E88: .word FUN_02031EE0 + 1
+_02031E84: .word FUN_02032058
+_02031E88: .word FUN_02031EE0
thumb_func_start FUN_02031E8C
FUN_02031E8C: ; 0x02031E8C
@@ -107434,7 +107434,7 @@ _02031ED6:
pop {r3-r5, pc}
.balign 4
_02031ED8: .word 0x021C5A00
-_02031EDC: .word FUN_02031EE0 + 1
+_02031EDC: .word FUN_02031EE0
thumb_func_start FUN_02031EE0
FUN_02031EE0: ; 0x02031EE0
@@ -107495,8 +107495,8 @@ _02031F50:
pop {r3, pc}
nop
_02031F54: .word 0x021C5A00
-_02031F58: .word FUN_02031F60 + 1
-_02031F5C: .word FUN_02032028 + 1
+_02031F58: .word FUN_02031F60
+_02031F5C: .word FUN_02032028
thumb_func_start FUN_02031F60
FUN_02031F60: ; 0x02031F60
@@ -107544,8 +107544,8 @@ _02031FB2:
pop {r3, pc}
.balign 4
_02031FBC: .word 0x021C5A00
-_02031FC0: .word FUN_02031FC8 + 1
-_02031FC4: .word FUN_02032028 + 1
+_02031FC0: .word FUN_02031FC8
+_02031FC4: .word FUN_02032028
thumb_func_start FUN_02031FC8
FUN_02031FC8: ; 0x02031FC8
@@ -107585,8 +107585,8 @@ _02032010:
bl FUN_02031D20
pop {r3, pc}
nop
-_0203201C: .word FUN_0203213C + 1
-_02032020: .word FUN_02032028 + 1
+_0203201C: .word FUN_0203213C
+_02032020: .word FUN_02032028
_02032024: .word 0x021C5A00
thumb_func_start FUN_02032028
@@ -107601,7 +107601,7 @@ FUN_02032028: ; 0x02032028
_0203203A:
pop {r3, pc}
.balign 4
-_0203203C: .word FUN_02032058 + 1
+_0203203C: .word FUN_02032058
thumb_func_start FUN_02032040
FUN_02032040: ; 0x02032040
@@ -107615,7 +107615,7 @@ FUN_02032040: ; 0x02032040
_02032052:
pop {r3, pc}
.balign 4
-_02032054: .word FUN_02031E8C + 1
+_02032054: .word FUN_02031E8C
thumb_func_start FUN_02032058
FUN_02032058: ; 0x02032058
@@ -107666,7 +107666,7 @@ _020320BA:
pop {r3-r5, pc}
.balign 4
_020320BC: .word 0x021C5A00
-_020320C0: .word FUN_020320C4 + 1
+_020320C0: .word FUN_020320C4
thumb_func_start FUN_020320C4
FUN_020320C4: ; 0x020320C4
@@ -107707,8 +107707,8 @@ _0203210A:
pop {r3, pc}
.balign 4
_0203210C: .word 0x021C5A00
-_02032110: .word FUN_02032118 + 1
-_02032114: .word FUN_02032040 + 1
+_02032110: .word FUN_02032118
+_02032114: .word FUN_02032040
thumb_func_start FUN_02032118
FUN_02032118: ; 0x02032118
@@ -107723,7 +107723,7 @@ FUN_02032118: ; 0x02032118
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_02032134: .word FUN_02032138 + 1
+_02032134: .word FUN_02032138
thumb_func_start FUN_02032138
FUN_02032138: ; 0x02032138
@@ -107760,7 +107760,7 @@ _0203216E:
pop {r3, pc}
.balign 4
_02032170: .word 0x021C5A00
-_02032174: .word FUN_020323B8 + 1
+_02032174: .word FUN_020323B8
thumb_func_start FUN_02032178
FUN_02032178: ; 0x02032178
@@ -107775,7 +107775,7 @@ FUN_02032178: ; 0x02032178
_0203218E:
pop {r3, pc}
.balign 4
-_02032190: .word FUN_02032140 + 1
+_02032190: .word FUN_02032140
thumb_func_start FUN_02032194
FUN_02032194: ; 0x02032194
@@ -107792,7 +107792,7 @@ FUN_02032194: ; 0x02032194
_020321B0:
pop {r3, pc}
nop
-_020321B4: .word FUN_02031E08 + 1
+_020321B4: .word FUN_02031E08
thumb_func_start FUN_020321B8
FUN_020321B8: ; 0x020321B8
@@ -107806,7 +107806,7 @@ FUN_020321B8: ; 0x020321B8
_020321CA:
pop {r3, pc}
.balign 4
-_020321CC: .word FUN_02031E08 + 1
+_020321CC: .word FUN_02031E08
thumb_func_start FUN_020321D0
FUN_020321D0: ; 0x020321D0
@@ -107838,7 +107838,7 @@ _0203220C:
pop {r3, pc}
nop
_02032210: .word 0x021C5A00
-_02032214: .word FUN_02032218 + 1
+_02032214: .word FUN_02032218
thumb_func_start FUN_02032218
FUN_02032218: ; 0x02032218
@@ -107853,7 +107853,7 @@ FUN_02032218: ; 0x02032218
_0203222E:
pop {r3, pc}
.balign 4
-_02032230: .word FUN_02032234 + 1
+_02032230: .word FUN_02032234
thumb_func_start FUN_02032234
FUN_02032234: ; 0x02032234
@@ -107867,7 +107867,7 @@ FUN_02032234: ; 0x02032234
_02032246:
pop {r3, pc}
.balign 4
-_02032248: .word FUN_020323BC + 1
+_02032248: .word FUN_020323BC
thumb_func_start FUN_0203224C
FUN_0203224C: ; 0x0203224C
@@ -107898,14 +107898,14 @@ _02032286:
pop {r3, pc}
.balign 4
_02032288: .word 0x021C5A00
-_0203228C: .word FUN_02032290 + 1
+_0203228C: .word FUN_02032290
thumb_func_start FUN_02032290
FUN_02032290: ; 0x02032290
ldr r3, _02032294 ; =FUN_0202EA54
bx r3
.balign 4
-_02032294: .word FUN_0202EA54 + 1
+_02032294: .word FUN_0202EA54
thumb_func_start FUN_02032298
FUN_02032298: ; 0x02032298
@@ -107925,7 +107925,7 @@ _020322B6:
pop {r3, pc}
.balign 4
_020322B8: .word 0x021C5A00
-_020322BC: .word FUN_020322C0 + 1
+_020322BC: .word FUN_020322C0
thumb_func_start FUN_020322C0
FUN_020322C0: ; 0x020322C0
@@ -107950,8 +107950,8 @@ _020322D2:
_020322EE:
pop {r3, pc}
.balign 4
-_020322F0: .word FUN_020322F8 + 1
-_020322F4: .word FUN_0203234C + 1
+_020322F0: .word FUN_020322F8
+_020322F4: .word FUN_0203234C
thumb_func_start FUN_020322F8
FUN_020322F8: ; 0x020322F8
@@ -107962,7 +107962,7 @@ FUN_020322F8: ; 0x020322F8
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_02032308: .word FUN_0203230C + 1
+_02032308: .word FUN_0203230C
thumb_func_start FUN_0203230C
FUN_0203230C: ; 0x0203230C
@@ -107993,7 +107993,7 @@ _02032340:
pop {r3, pc}
nop
_02032344: .word 0x021C5A00
-_02032348: .word FUN_02032298 + 1
+_02032348: .word FUN_02032298
thumb_func_start FUN_0203234C
FUN_0203234C: ; 0x0203234C
@@ -108007,7 +108007,7 @@ FUN_0203234C: ; 0x0203234C
_0203235E:
pop {r3, pc}
.balign 4
-_02032360: .word FUN_020323BC + 1
+_02032360: .word FUN_020323BC
thumb_func_start FUN_02032364
FUN_02032364: ; 0x02032364
@@ -108018,7 +108018,7 @@ FUN_02032364: ; 0x02032364
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_02032374: .word FUN_02032378 + 1
+_02032374: .word FUN_02032378
thumb_func_start FUN_02032378
FUN_02032378: ; 0x02032378
@@ -108049,7 +108049,7 @@ _020323AC:
pop {r3, pc}
nop
_020323B0: .word 0x021C5A00
-_020323B4: .word FUN_02032290 + 1
+_020323B4: .word FUN_02032290
thumb_func_start FUN_020323B8
FUN_020323B8: ; 0x020323B8
@@ -108073,8 +108073,8 @@ FUN_020323CC: ; 0x020323CC
mov r1, #0x5
bx r3
.balign 4
-_020323D4: .word FUN_02031D20 + 1
-_020323D8: .word FUN_02032440 + 1
+_020323D4: .word FUN_02031D20
+_020323D8: .word FUN_02032440
thumb_func_start FUN_020323DC
FUN_020323DC: ; 0x020323DC
@@ -108106,7 +108106,7 @@ _02032408:
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_0203241C: .word FUN_020324F8 + 1
+_0203241C: .word FUN_020324F8
_02032420: .word 0x021C5A00
thumb_func_start FUN_02032424
@@ -108122,7 +108122,7 @@ FUN_02032424: ; 0x02032424
_0203243A:
pop {r3, pc}
.balign 4
-_0203243C: .word FUN_020324F8 + 1
+_0203243C: .word FUN_020324F8
thumb_func_start FUN_02032440
FUN_02032440: ; 0x02032440
@@ -108151,7 +108151,7 @@ _0203246E:
pop {r3, pc}
.balign 4
_02032470: .word 0x021C5A00
-_02032474: .word FUN_020323BC + 1
+_02032474: .word FUN_020323BC
thumb_func_start FUN_02032478
FUN_02032478: ; 0x02032478
@@ -108187,7 +108187,7 @@ _020324BE:
pop {r3, pc}
.balign 4
_020324C0: .word 0x021C5A00
-_020324C4: .word FUN_020324C8 + 1
+_020324C4: .word FUN_020324C8
thumb_func_start FUN_020324C8
FUN_020324C8: ; 0x020324C8
@@ -108212,7 +108212,7 @@ _020324EE:
pop {r3, pc}
.balign 4
_020324F0: .word 0x021C5A00
-_020324F4: .word FUN_02032510 + 1
+_020324F4: .word FUN_02032510
thumb_func_start FUN_020324F8
FUN_020324F8: ; 0x020324F8
@@ -108226,7 +108226,7 @@ FUN_020324F8: ; 0x020324F8
_0203250A:
pop {r3, pc}
.balign 4
-_0203250C: .word FUN_02032510 + 1
+_0203250C: .word FUN_02032510
thumb_func_start FUN_02032510
FUN_02032510: ; 0x02032510
@@ -108273,7 +108273,7 @@ _02032568:
pop {r3-r5, pc}
nop
_0203256C: .word 0x021C5A00
-_02032570: .word FUN_02032578 + 1
+_02032570: .word FUN_02032578
_02032574: .word 0x00002710
thumb_func_start FUN_02032578
@@ -108315,8 +108315,8 @@ _020325C2:
pop {r3, pc}
.balign 4
_020325C4: .word 0x021C5A00
-_020325C8: .word FUN_020327FC + 1
-_020325CC: .word FUN_020325D0 + 1
+_020325C8: .word FUN_020327FC
+_020325CC: .word FUN_020325D0
thumb_func_start FUN_020325D0
FUN_020325D0: ; 0x020325D0
@@ -108357,7 +108357,7 @@ _0203261C:
pop {r3-r5, pc}
nop
_02032620: .word 0x021C5A00
-_02032624: .word FUN_020324C8 + 1
+_02032624: .word FUN_020324C8
thumb_func_start FUN_02032628
FUN_02032628: ; 0x02032628
@@ -108371,7 +108371,7 @@ FUN_02032628: ; 0x02032628
_0203263A:
pop {r3, pc}
.balign 4
-_0203263C: .word FUN_02032640 + 1
+_0203263C: .word FUN_02032640
thumb_func_start FUN_02032640
FUN_02032640: ; 0x02032640
@@ -108393,7 +108393,7 @@ FUN_02032640: ; 0x02032640
_02032666:
pop {r3, pc}
.balign 4
-_02032668: .word FUN_0203266C + 1
+_02032668: .word FUN_0203266C
thumb_func_start FUN_0203266C
FUN_0203266C: ; 0x0203266C
@@ -108440,8 +108440,8 @@ _020326BA:
pop {r3, pc}
.balign 4
_020326C4: .word 0x021C5A00
-_020326C8: .word FUN_020326D0 + 1
-_020326CC: .word FUN_020327B8 + 1
+_020326C8: .word FUN_020326D0
+_020326CC: .word FUN_020327B8
thumb_func_start FUN_020326D0
FUN_020326D0: ; 0x020326D0
@@ -108485,10 +108485,10 @@ _0203271C:
bl FUN_02031D20
pop {r3, pc}
nop
-_02032728: .word FUN_020327B8 + 1
+_02032728: .word FUN_020327B8
_0203272C: .word 0x021C5A00
_02032730: .word 0x02105D5C
-_02032734: .word FUN_02032738 + 1
+_02032734: .word FUN_02032738
thumb_func_start FUN_02032738
FUN_02032738: ; 0x02032738
@@ -108533,10 +108533,10 @@ _02032782:
bl FUN_02031D20
pop {r3, pc}
.balign 4
-_0203278C: .word FUN_020327B8 + 1
+_0203278C: .word FUN_020327B8
_02032790: .word 0x021C5A00
-_02032794: .word FUN_020327B4 + 1
-_02032798: .word FUN_0203279C + 1
+_02032794: .word FUN_020327B4
+_02032798: .word FUN_0203279C
thumb_func_start FUN_0203279C
FUN_0203279C: ; 0x0203279C
@@ -108550,7 +108550,7 @@ FUN_0203279C: ; 0x0203279C
_020327AE:
pop {r3, pc}
.balign 4
-_020327B0: .word FUN_020327B8 + 1
+_020327B0: .word FUN_020327B8
thumb_func_start FUN_020327B4
FUN_020327B4: ; 0x020327B4
@@ -108587,8 +108587,8 @@ _020327EC:
pop {r3, pc}
nop
_020327F0: .word 0x021C5A00
-_020327F4: .word FUN_02032640 + 1
-_020327F8: .word FUN_020327B4 + 1
+_020327F4: .word FUN_02032640
+_020327F8: .word FUN_020327B4
thumb_func_start FUN_020327FC
FUN_020327FC: ; 0x020327FC
@@ -108624,8 +108624,8 @@ _0203282C:
_02032844:
pop {r3, pc}
nop
-_02032848: .word FUN_020325D0 + 1
-_0203284C: .word FUN_020327B8 + 1
+_02032848: .word FUN_020325D0
+_0203284C: .word FUN_020327B8
thumb_func_start FUN_02032850
FUN_02032850: ; 0x02032850
@@ -108652,7 +108652,7 @@ _0203287E:
pop {r3, pc}
.balign 4
_02032880: .word 0x021C5A00
-_02032884: .word FUN_020323B8 + 1
+_02032884: .word FUN_020323B8
thumb_func_start FUN_02032888
FUN_02032888: ; 0x02032888
@@ -108698,8 +108698,8 @@ FUN_020328C0: ; 0x020328C0
bx r3
nop
_020328D8: .word 0x021C5A00
-_020328DC: .word FUN_02031D20 + 1
-_020328E0: .word FUN_02032924 + 1
+_020328DC: .word FUN_02031D20
+_020328E0: .word FUN_02032924
thumb_func_start FUN_020328E4
FUN_020328E4: ; 0x020328E4
@@ -108733,7 +108733,7 @@ FUN_020328F4: ; 0x020328F4
pop {r3, pc}
nop
_0203291C: .word 0x021C5A00
-_02032920: .word FUN_02032628 + 1
+_02032920: .word FUN_02032628
thumb_func_start FUN_02032924
FUN_02032924: ; 0x02032924
@@ -108747,7 +108747,7 @@ FUN_02032924: ; 0x02032924
_02032936:
pop {r3, pc}
.balign 4
-_02032938: .word FUN_0203293C + 1
+_02032938: .word FUN_0203293C
thumb_func_start FUN_0203293C
FUN_0203293C: ; 0x0203293C
@@ -108775,7 +108775,7 @@ _0203296C:
pop {r3, pc}
nop
_02032970: .word 0x021C5A00
-_02032974: .word FUN_02032978 + 1
+_02032974: .word FUN_02032978
thumb_func_start FUN_02032978
FUN_02032978: ; 0x02032978
@@ -108834,9 +108834,9 @@ _020329E2:
pop {r3, pc}
.balign 4
_020329E4: .word 0x021C5A00
-_020329E8: .word FUN_020329F4 + 1
-_020329EC: .word FUN_020327B4 + 1
-_020329F0: .word FUN_02032924 + 1
+_020329E8: .word FUN_020329F4
+_020329EC: .word FUN_020327B4
+_020329F0: .word FUN_02032924
thumb_func_start FUN_020329F4
FUN_020329F4: ; 0x020329F4
@@ -108908,9 +108908,9 @@ _02032A72:
pop {r3, pc}
.balign 4
_02032A7C: .word 0x021C5A00
-_02032A80: .word FUN_020327B4 + 1
-_02032A84: .word FUN_02032924 + 1
-_02032A88: .word FUN_0203279C + 1
+_02032A80: .word FUN_020327B4
+_02032A84: .word FUN_02032924
+_02032A88: .word FUN_0203279C
thumb_func_start FUN_02032A8C
FUN_02032A8C: ; 0x02032A8C
@@ -109055,7 +109055,7 @@ FUN_02032B84: ; 0x02032B84
ldr r3, _02032B88 ; =FUN_0202EA54
bx r3
.balign 4
-_02032B88: .word FUN_0202EA54 + 1
+_02032B88: .word FUN_0202EA54
thumb_func_start FUN_02032B8C
FUN_02032B8C: ; 0x02032B8C
@@ -109086,7 +109086,7 @@ _02032BC6:
pop {r3, pc}
.balign 4
_02032BC8: .word 0x021C5A00
-_02032BCC: .word FUN_02032B84 + 1
+_02032BCC: .word FUN_02032B84
thumb_func_start FUN_02032BD0
FUN_02032BD0: ; 0x02032BD0
@@ -109114,7 +109114,7 @@ _02032C00:
pop {r4, pc}
nop
_02032C04: .word 0x021C5A00
-_02032C08: .word FUN_02032B8C + 1
+_02032C08: .word FUN_02032B8C
thumb_func_start FUN_02032C0C
FUN_02032C0C: ; 0x02032C0C
@@ -109130,7 +109130,7 @@ _02032C1E:
pop {r3, pc}
.balign 4
_02032C20: .word 0x021C5A00
-_02032C24: .word FUN_02032440 + 1
+_02032C24: .word FUN_02032440
thumb_func_start FUN_02032C28
FUN_02032C28: ; 0x02032C28
@@ -109277,8 +109277,8 @@ _02032D34:
pop {r3, pc}
nop
_02032D38: .word 0x021C5A00
-_02032D3C: .word FUN_02032C6C + 1
-_02032D40: .word FUN_02032B84 + 1
+_02032D3C: .word FUN_02032C6C
+_02032D40: .word FUN_02032B84
thumb_func_start FUN_02032D44
FUN_02032D44: ; 0x02032D44
@@ -109306,7 +109306,7 @@ _02032D74:
pop {r4, pc}
nop
_02032D78: .word 0x021C5A00
-_02032D7C: .word FUN_02032CF4 + 1
+_02032D7C: .word FUN_02032CF4
thumb_func_start FUN_02032D80
FUN_02032D80: ; 0x02032D80
@@ -109322,7 +109322,7 @@ _02032D92:
pop {r3, pc}
.balign 4
_02032D94: .word 0x021C5A00
-_02032D98: .word FUN_02032440 + 1
+_02032D98: .word FUN_02032440
thumb_func_start FUN_02032D9C
FUN_02032D9C: ; 0x02032D9C
@@ -109372,8 +109372,8 @@ _02032DEE:
pop {r3, pc}
nop
_02032DF4: .word 0x021C5A00
-_02032DF8: .word FUN_0203318C + 1
-_02032DFC: .word FUN_02032178 + 1
+_02032DF8: .word FUN_0203318C
+_02032DFC: .word FUN_02032178
thumb_func_start FUN_02032E00
FUN_02032E00: ; 0x02032E00
@@ -109405,7 +109405,7 @@ _02032E3C:
pop {r3, pc}
nop
_02032E40: .word 0x021C5A00
-_02032E44: .word FUN_02032218 + 1
+_02032E44: .word FUN_02032218
thumb_func_start FUN_02032E48
FUN_02032E48: ; 0x02032E48
@@ -109436,7 +109436,7 @@ _02032E82:
pop {r3, pc}
.balign 4
_02032E84: .word 0x021C5A00
-_02032E88: .word FUN_02032290 + 1
+_02032E88: .word FUN_02032290
thumb_func_start FUN_02032E8C
FUN_02032E8C: ; 0x02032E8C
@@ -109455,7 +109455,7 @@ FUN_02032E90: ; 0x02032E90
_02032EA2:
pop {r3, pc}
.balign 4
-_02032EA4: .word FUN_02032E8C + 1
+_02032EA4: .word FUN_02032E8C
thumb_func_start FUN_02032EA8
FUN_02032EA8: ; 0x02032EA8
@@ -109513,11 +109513,11 @@ _02032F00:
_02032F08:
pop {r3, pc}
nop
-_02032F0C: .word FUN_02032EAC + 1
-_02032F10: .word FUN_02032E8C + 1
-_02032F14: .word FUN_02032E90 + 1
+_02032F0C: .word FUN_02032EAC
+_02032F10: .word FUN_02032E8C
+_02032F14: .word FUN_02032E90
_02032F18: .word 0x021C5A00
-_02032F1C: .word FUN_02032EA8 + 1
+_02032F1C: .word FUN_02032EA8
thumb_func_start FUN_02032F20
FUN_02032F20: ; 0x02032F20
@@ -109575,10 +109575,10 @@ _02032F78:
_02032F84:
pop {r3, pc}
nop
-_02032F88: .word FUN_02032EAC + 1
-_02032F8C: .word FUN_02032E8C + 1
-_02032F90: .word FUN_02032EB0 + 1
-_02032F94: .word FUN_02032EA8 + 1
+_02032F88: .word FUN_02032EAC
+_02032F8C: .word FUN_02032E8C
+_02032F90: .word FUN_02032EB0
+_02032F94: .word FUN_02032EA8
thumb_func_start FUN_02032F98
FUN_02032F98: ; 0x02032F98
@@ -109607,9 +109607,9 @@ _02032FB2:
_02032FCE:
pop {r3, pc}
.balign 4
-_02032FD0: .word FUN_02032E8C + 1
+_02032FD0: .word FUN_02032E8C
_02032FD4: .word 0x021C5A00
-_02032FD8: .word FUN_02032F34 + 1
+_02032FD8: .word FUN_02032F34
thumb_func_start FUN_02032FDC
FUN_02032FDC: ; 0x02032FDC
@@ -109628,10 +109628,10 @@ FUN_02032FDC: ; 0x02032FDC
mov r0, #0x1
pop {r4, pc}
.balign 4
-_02032FFC: .word FUN_020303BC + 1
-_02033000: .word FUN_02030238 + 1
+_02032FFC: .word FUN_020303BC
+_02033000: .word FUN_02030238
_02033004: .word 0x021C5A00
-_02033008: .word FUN_02032F98 + 1
+_02033008: .word FUN_02032F98
thumb_func_start FUN_0203300C
FUN_0203300C: ; 0x0203300C
@@ -109672,11 +109672,11 @@ _02033044:
bx lr
.balign 4
_02033048: .word 0x021C5A00
-_0203304C: .word FUN_02032F34 + 1
-_02033050: .word FUN_02032EB0 + 1
-_02033054: .word FUN_02032E90 + 1
-_02033058: .word FUN_02032EA8 + 1
-_0203305C: .word FUN_02032EAC + 1
+_0203304C: .word FUN_02032F34
+_02033050: .word FUN_02032EB0
+_02033054: .word FUN_02032E90
+_02033058: .word FUN_02032EA8
+_0203305C: .word FUN_02032EAC
thumb_func_start FUN_02033060
FUN_02033060: ; 0x02033060
@@ -109701,10 +109701,10 @@ FUN_02033060: ; 0x02033060
_0203308C:
pop {r3, pc}
nop
-_02033090: .word FUN_020303BC + 1
-_02033094: .word FUN_02030238 + 1
+_02033090: .word FUN_020303BC
+_02033094: .word FUN_02030238
_02033098: .word 0x021C5A00
-_0203309C: .word FUN_02032F34 + 1
+_0203309C: .word FUN_02032F34
thumb_func_start FUN_020330A0
FUN_020330A0: ; 0x020330A0
@@ -109734,8 +109734,8 @@ _020330D6:
pop {r3, pc}
.balign 4
_020330D8: .word 0x021C5A00
-_020330DC: .word FUN_02033060 + 1
-_020330E0: .word FUN_02032E8C + 1
+_020330DC: .word FUN_02033060
+_020330E0: .word FUN_02032E8C
thumb_func_start FUN_020330E4
FUN_020330E4: ; 0x020330E4
@@ -109769,7 +109769,7 @@ _02033112:
pop {r3, pc}
nop
_02033120: .word 0x021C5A00
-_02033124: .word FUN_020330A0 + 1
+_02033124: .word FUN_020330A0
thumb_func_start FUN_02033128
FUN_02033128: ; 0x02033128
@@ -109796,7 +109796,7 @@ _02033148:
bx lr
.balign 4
_0203314C: .word 0x021C5A00
-_02033150: .word FUN_02033060 + 1
+_02033150: .word FUN_02033060
thumb_func_start FUN_02033154
FUN_02033154: ; 0x02033154
@@ -109819,8 +109819,8 @@ _0203316E:
bx lr
nop
_02033174: .word 0x021C5A00
-_02033178: .word FUN_02032F34 + 1
-_0203317C: .word FUN_02033060 + 1
+_02033178: .word FUN_02032F34
+_0203317C: .word FUN_02033060
thumb_func_start FUN_02033180
FUN_02033180: ; 0x02033180
@@ -109854,8 +109854,8 @@ _020331AA:
_020331BA:
pop {r3, pc}
.balign 4
-_020331BC: .word FUN_02032440 + 1
-_020331C0: .word FUN_02032E8C + 1
+_020331BC: .word FUN_02032440
+_020331C0: .word FUN_02032E8C
thumb_func_start FUN_020331C4
FUN_020331C4: ; 0x020331C4
@@ -109873,7 +109873,7 @@ _020331DC:
pop {r3, pc}
nop
_020331E0: .word 0x021C5A00
-_020331E4: .word FUN_02032440 + 1
+_020331E4: .word FUN_02032440
thumb_func_start FUN_020331E8
FUN_020331E8: ; 0x020331E8
@@ -109891,7 +109891,7 @@ _020331FE:
pop {r3, pc}
.balign 4
_02033200: .word 0x021C5A00
-_02033204: .word FUN_020330A0 + 1
+_02033204: .word FUN_020330A0
thumb_func_start FUN_02033208
FUN_02033208: ; 0x02033208
@@ -109920,7 +109920,7 @@ _02033232:
pop {r3, pc}
.balign 4
_02033234: .word 0x021C5A00
-_02033238: .word FUN_020330A0 + 1
+_02033238: .word FUN_020330A0
thumb_func_start FUN_0203323C
FUN_0203323C: ; 0x0203323C
@@ -109960,8 +109960,8 @@ _02033276:
bx lr
nop
_0203327C: .word 0x021C5A00
-_02033280: .word FUN_02032E8C + 1
-_02033284: .word FUN_02032E90 + 1
+_02033280: .word FUN_02032E8C
+_02033284: .word FUN_02032E90
thumb_func_start FUN_02033288
FUN_02033288: ; 0x02033288
@@ -109983,7 +109983,7 @@ FUN_02033288: ; 0x02033288
mov r2, #0x50
str r0, [r1, #0x0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _020332D8 ; =0x021C5A00
mov r2, #0x18
ldr r1, [r0, #0x0]
@@ -110049,7 +110049,7 @@ FUN_02033310: ; 0x02033310
mov r2, #0x50
str r0, [r1, #0x0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _02033360 ; =0x021C5A00
mov r2, #0x19
ldr r1, [r0, #0x0]
@@ -110160,8 +110160,8 @@ _02033408:
_02033412:
pop {r3, pc}
.balign 4
-_02033414: .word FUN_02032E8C + 1
-_02033418: .word FUN_02033060 + 1
+_02033414: .word FUN_02032E8C
+_02033418: .word FUN_02033060
thumb_func_start FUN_0203341C
FUN_0203341C: ; 0x0203341C
@@ -110195,8 +110195,8 @@ _0203345E:
pop {r3, pc}
.balign 4
_02033460: .word 0x021C5A00
-_02033464: .word FUN_020335D0 + 1
-_02033468: .word FUN_020333F0 + 1
+_02033464: .word FUN_020335D0
+_02033468: .word FUN_020333F0
thumb_func_start FUN_0203346C
FUN_0203346C: ; 0x0203346C
@@ -110229,7 +110229,7 @@ _02033482:
mov r1, #0x0
ldr r0, [r0, #0x0]
add r2, r4, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _020334D4 ; =0x021C5A00
mov r1, #0x0
ldr r2, [r0, #0x0]
@@ -110246,7 +110246,7 @@ _02033482:
.balign 4
_020334D0: .word 0x00007080
_020334D4: .word 0x021C5A00
-_020334D8: .word FUN_0203341C + 1
+_020334D8: .word FUN_0203341C
thumb_func_start FUN_020334DC
FUN_020334DC: ; 0x020334DC
@@ -110335,27 +110335,27 @@ _02033560: .word 0x021C5A00
thumb_func_start FUN_02033564
FUN_02033564: ; 0x02033564
ldr r1, _02033570 ; =0x021C5A00
- ldr r3, _02033574 ; =FUN_020CE3E0
+ ldr r3, _02033574 ; =MI_CpuCopy8
ldr r1, [r1, #0x0]
mov r2, #0x6
add r1, r1, #0x4
bx r3
.balign 4
_02033570: .word 0x021C5A00
-_02033574: .word FUN_020CE3E0
+_02033574: .word MI_CpuCopy8
thumb_func_start FUN_02033578
FUN_02033578: ; 0x02033578
add r1, r0, #0x0
ldr r0, _02033588 ; =0x021C5A00
- ldr r3, _0203358C ; =FUN_020CE3E0
+ ldr r3, _0203358C ; =MI_CpuCopy8
ldr r0, [r0, #0x0]
mov r2, #0x6
add r0, r0, #0x4
bx r3
nop
_02033588: .word 0x021C5A00
-_0203358C: .word FUN_020CE3E0
+_0203358C: .word MI_CpuCopy8
thumb_func_start FUN_02033590
FUN_02033590: ; 0x02033590
@@ -110580,11 +110580,11 @@ _02033714:
add r5, r0, #0x0
cmp r5, #0x2
bne _02033722
- bl FUN_02020C2C
+ bl ErrorHandling
_02033722:
cmp r5, #0x3
bne _0203372A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203372A:
cmp r5, #0x1
bne _02033774
@@ -110606,11 +110606,11 @@ _0203374A:
add r5, r0, #0x0
cmp r5, #0x3
bne _02033758
- bl FUN_02020C2C
+ bl ErrorHandling
_02033758:
cmp r5, #0x1
bne _02033760
- bl FUN_02020C2C
+ bl ErrorHandling
_02033760:
cmp r5, #0x2
bne _02033774
@@ -110942,7 +110942,7 @@ _020339D8:
str r0, [r6, #0x0]
cmp r0, #0x3
bne _020339FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020339FE:
ldr r0, [r6, #0x0]
cmp r0, #0x0
@@ -110978,7 +110978,7 @@ _02033A1C:
add r0, r7, #0x0
add r1, r1, r3
mov r2, #0xc
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r5, #0x0
bl FUN_0202E1BC
b _02033A5C
@@ -111022,7 +111022,7 @@ FUN_02033A70: ; 0x02033A70
bl FUN_0202DFD8
ldr r1, [sp, #0x8]
mov r2, #0xc
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_02033AA6:
ldr r0, [sp, #0x28]
cmp r0, #0x0
@@ -111148,7 +111148,7 @@ FUN_02033B68: ; 0x02033B68
add r0, r4, #0x0
pop {r4-r6, pc}
nop
-_02033BC4: .word FUN_02033BC8 + 1
+_02033BC4: .word FUN_02033BC8
thumb_func_start FUN_02033BC8
FUN_02033BC8: ; 0x02033BC8
@@ -111377,7 +111377,7 @@ FUN_02033D3C: ; 0x02033D3C
mov r1, #0x96
ldr r0, [sp, #0x4]
lsl r1, r1, #0x2
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [sp, #0x4]
add r1, sp, #0x0
blx FUN_020B0138
@@ -111430,7 +111430,7 @@ _02033DC8:
mov r1, #0x96
ldr r0, [sp, #0x4]
lsl r1, r1, #0x2
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r0, [sp, #0x4]
add r1, sp, #0x0
blx FUN_020B0088
@@ -111642,13 +111642,13 @@ FUN_02033F50: ; 0x02033F50
ldr r2, [r3, r1]
orr r0, r2
str r0, [r3, r1]
- ldr r3, _02033F6C ; =FUN_020CDA1C
+ ldr r3, _02033F6C ; =MI_WaitDma
mov r0, #0x3
bx r3
nop
_02033F64: .word 0x027E0000
_02033F68: .word 0x00003FF8
-_02033F6C: .word FUN_020CDA1C
+_02033F6C: .word MI_WaitDma
thumb_func_start FUN_02033F70
FUN_02033F70: ; 0x02033F70
@@ -111692,12 +111692,12 @@ _02033FA4:
mov r1, #0x0
bl FUN_0200E3A0
mov r0, #0x1
- blx FUN_020C9E14
+ blx OS_DisableIrqMask
ldr r1, _02034154 ; =FUN_02033F50
mov r0, #0x1
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x1
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F10
@@ -111859,7 +111859,7 @@ _02033FA4:
add sp, #0x28
pop {r3-r7, pc}
nop
-_02034154: .word FUN_02033F50 + 1
+_02034154: .word FUN_02033F50
_02034158: .word 0xFFFFE0FF
_0203415C: .word 0x04001000
_02034160: .word 0x021C4918
@@ -112032,7 +112032,7 @@ _020342E4:
bne _02034308
mov r0, #0x1
add r1, r0, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _020342E4
_02034308:
add r0, sp, #0x14
@@ -112138,13 +112138,13 @@ _020343D8:
ldrb r7, [r6, #0x4]
cmp r7, #0x10
bls _0203440A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203440A:
ldr r1, _02034490 ; =0x00001196
add r0, r5, #0x0
add r1, r4, r1
add r2, r7, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, [sp, #0x8]
add r5, r5, r7
cmp r0, #0x0
@@ -112155,7 +112155,7 @@ _0203440A:
add r1, r4, #0x2
mul r2, r3
lsl r2, r2, #0x1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldrb r1, [r4, #0x1]
ldrb r0, [r4, #0x0]
mul r0, r1
@@ -112171,7 +112171,7 @@ _0203443A:
mul r2, r3
lsr r0, r0, #0x10
lsl r2, r2, #0x1
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
_0203444E:
ldr r0, [sp, #0x4]
cmp r0, #0x0
@@ -112182,7 +112182,7 @@ _0203444E:
add r0, r5, #0x0
add r1, r4, r1
mul r2, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldrb r1, [r4, #0x1]
ldrb r0, [r4, #0x0]
mul r0, r1
@@ -112195,7 +112195,7 @@ _0203446C:
mul r2, r3
add r1, r4, r1
lsl r2, r2, #0x1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r6, #0x0
bl FUN_02016A18
add sp, #0xc
@@ -112243,7 +112243,7 @@ FUN_020344D0: ; 0x020344D0
ldr r3, _020344D4 ; =FUN_02016A18
bx r3
.balign 4
-_020344D4: .word FUN_02016A18 + 1
+_020344D4: .word FUN_02016A18
thumb_func_start FUN_020344D8
FUN_020344D8: ; 0x020344D8
@@ -112255,7 +112255,7 @@ FUN_020344D8: ; 0x020344D8
mul r0, r1
cmp r5, r0
blt _020344EC
- bl FUN_02020C2C
+ bl ErrorHandling
_020344EC:
lsl r0, r5, #0x1
add r1, r4, r0
@@ -112270,7 +112270,7 @@ FUN_020344FC: ; 0x020344FC
push {r4, lr}
add r4, r0, #0x0
bne _02034506
- bl FUN_02020C2C
+ bl ErrorHandling
_02034506:
ldrb r0, [r4, #0x0]
pop {r4, pc}
@@ -112281,7 +112281,7 @@ FUN_0203450C: ; 0x0203450C
push {r4, lr}
add r4, r0, #0x0
bne _02034516
- bl FUN_02020C2C
+ bl ErrorHandling
_02034516:
ldrb r0, [r4, #0x1]
pop {r4, pc}
@@ -112301,7 +112301,7 @@ FUN_0203451C: ; 0x0203451C
cmp r5, r6
blt _02034536
_02034532:
- bl FUN_02020C2C
+ bl ErrorHandling
_02034536:
cmp r4, #0x0
blt _02034540
@@ -112309,7 +112309,7 @@ _02034536:
cmp r4, r0
blt _02034544
_02034540:
- bl FUN_02020C2C
+ bl ErrorHandling
_02034544:
add r0, r4, #0x0
mul r0, r6
@@ -112333,7 +112333,7 @@ FUN_02034554: ; 0x02034554
cmp r4, r0
blt _0203456C
_02034568:
- bl FUN_02020C2C
+ bl ErrorHandling
_0203456C:
lsl r0, r4, #0x1
add r0, r5, r0
@@ -112354,7 +112354,7 @@ FUN_02034578: ; 0x02034578
add r6, r3, #0x0
cmp r4, r0
blt _0203458A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203458A:
ldr r0, [sp, #0x10]
mul r0, r6
@@ -112363,7 +112363,7 @@ _0203458A:
lsl r0, r0, #0x2
cmp r4, r0
blt _0203459C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203459C:
ldr r0, _020345A4 ; =0x0000070E
add r1, r5, r4
@@ -112389,7 +112389,7 @@ FUN_020345A8: ; 0x020345A8
ldr r2, _020345D8 ; =0x00000708
add r0, r0, r1
add r1, r5, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
bl FUN_02016A18
add r0, r5, #0x0
@@ -112402,7 +112402,7 @@ FUN_020345DC: ; 0x020345DC
push {r4, lr}
add r4, r0, #0x0
bne _020345E6
- bl FUN_02020C2C
+ bl ErrorHandling
_020345E6:
add r0, r4, #0x0
bl FUN_02016A18
@@ -112442,13 +112442,13 @@ FUN_020345FC: ; 0x020345FC
ldrb r0, [r0, #0x1]
cmp r5, r0
blt _0203462E
- bl FUN_02020C2C
+ bl ErrorHandling
_0203462E:
add r0, sp, #0x0
ldrb r0, [r0, #0x0]
cmp r4, r0
blt _0203463A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203463A:
add r0, sp, #0x0
ldrb r0, [r0, #0x1]
@@ -112476,7 +112476,7 @@ FUN_02034660: ; 0x02034660
add r5, r0, #0x0
add r4, r1, #0x0
bne _0203466C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203466C:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -112571,7 +112571,7 @@ FUN_02034710: ; 0x02034710
ldr r1, _02034720 ; =0x0000022F
cmp r0, r1
blo _0203471E
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x3
_0203471E:
pop {r3, pc}
@@ -113053,7 +113053,7 @@ FUN_02034A28: ; 0x02034A28
add r4, r1, #0x0
cmp r0, #0x0
beq _02034A38
- bl FUN_02020C2C
+ bl ErrorHandling
_02034A38:
ldr r1, _02034A44 ; =0x00000AC8
add r0, r4, #0x0
@@ -113070,7 +113070,7 @@ FUN_02034A48: ; 0x02034A48
ldr r0, [r4, #0x14]
cmp r0, #0x0
bne _02034A56
- bl FUN_02020C2C
+ bl ErrorHandling
_02034A56:
ldr r0, [r4, #0x14]
bl FUN_02016A18
@@ -113085,7 +113085,7 @@ FUN_02034A60: ; 0x02034A60
add r4, r1, #0x0
cmp r0, #0x0
bne _02034A70
- bl FUN_02020C2C
+ bl ErrorHandling
_02034A70:
ldr r0, [r5, #0x14]
add r1, r4, #0x0
@@ -113118,7 +113118,7 @@ FUN_02034A98: ; 0x02034A98
lsl r1, r1, #0xa
cmp r0, r1
blo _02034AB8
- bl FUN_02020C2C
+ bl ErrorHandling
_02034AB8:
add r5, #0x20
add r0, r5, #0x0
@@ -113136,7 +113136,7 @@ FUN_02034AC8: ; 0x02034AC8
ldr r4, [r0, #0x4]
cmp r0, #0x0
bne _02034AD8
- bl FUN_02020C2C
+ bl ErrorHandling
_02034AD8:
cmp r4, #0x0
beq _02034AEC
@@ -113274,7 +113274,7 @@ _02034B9C:
cmp r2, r5
blo _02034B8A
_02034BA4:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
@@ -113303,7 +113303,7 @@ _02034BCC:
cmp r3, r5
blo _02034BBC
_02034BD4:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4-r6, pc}
@@ -113332,7 +113332,7 @@ _02034BFC:
cmp r3, r5
blo _02034BEC
_02034C04:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4-r6, pc}
@@ -113482,7 +113482,7 @@ FUN_02034CEC: ; 0x02034CEC
mov r0, #0x0
add r1, r5, r1
lsl r2, r2, #0x8
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r0, #0xa
add r1, r4, #0x0
bl FUN_020065A4
@@ -113490,7 +113490,7 @@ FUN_02034CEC: ; 0x02034CEC
lsl r1, r1, #0x8
cmp r0, r1
blo _02034D1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02034D1C:
mov r0, #0x82
lsl r0, r0, #0x4
@@ -113507,7 +113507,7 @@ FUN_02034D2C: ; 0x02034D2C
ldr r0, [r4, #0x14]
cmp r0, #0x0
bne _02034D3A
- bl FUN_02020C2C
+ bl ErrorHandling
_02034D3A:
mov r0, #0x82
ldr r1, [r4, #0x14]
@@ -113563,14 +113563,14 @@ FUN_02034D80: ; 0x02034D80
thumb_func_start FUN_02034D88
FUN_02034D88: ; 0x02034D88
- ldr r3, _02034D94 ; =FUN_020CE1FC
+ ldr r3, _02034D94 ; =MIi_CpuClear32
mov r2, #0x5
add r1, r0, #0x0
mov r0, #0x0
lsl r2, r2, #0xa
bx r3
.balign 4
-_02034D94: .word FUN_020CE1FC
+_02034D94: .word MIi_CpuClear32
thumb_func_start FUN_02034D98
FUN_02034D98: ; 0x02034D98
@@ -113707,7 +113707,7 @@ FUN_02034E30: ; 0x02034E30
mov r1, #0x6
bx r3
nop
-_02034E38: .word FUN_02022610 + 1
+_02034E38: .word FUN_02022610
thumb_func_start FUN_02034E3C
FUN_02034E3C: ; 0x02034E3C
@@ -113715,7 +113715,7 @@ FUN_02034E3C: ; 0x02034E3C
mov r1, #0xb
bx r3
nop
-_02034E44: .word FUN_02022610 + 1
+_02034E44: .word FUN_02022610
thumb_func_start FUN_02034E48
FUN_02034E48: ; 0x02034E48
@@ -113751,7 +113751,7 @@ FUN_02034E78: ; 0x02034E78
cmp r0, #0x14
bls _02034E88
_02034E82:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
_02034E88:
sub r0, r0, #0x1
@@ -113969,7 +113969,7 @@ FUN_02034FE4: ; 0x02034FE4
cmp r5, r0
blt _02035010
_0203500C:
- bl FUN_02020C2C
+ bl ErrorHandling
_02035010:
ldr r0, [r6, #0x8]
cmp r0, #0x2
@@ -114100,7 +114100,7 @@ _02035106:
bl FUN_020463CC
pop {r3-r5, pc}
nop
-_02035114: .word FUN_020352E4 + 1
+_02035114: .word FUN_020352E4
thumb_func_start FUN_02035118
FUN_02035118: ; 0x02035118
@@ -114132,7 +114132,7 @@ _0203514C:
bl FUN_020463CC
pop {r3-r5, pc}
.balign 4
-_02035158: .word FUN_020352E4 + 1
+_02035158: .word FUN_020352E4
thumb_func_start FUN_0203515C
FUN_0203515C: ; 0x0203515C
@@ -114164,7 +114164,7 @@ _02035190:
bl FUN_020463CC
pop {r3-r5, pc}
.balign 4
-_0203519C: .word FUN_020352E4 + 1
+_0203519C: .word FUN_020352E4
thumb_func_start FUN_020351A0
FUN_020351A0: ; 0x020351A0
@@ -114248,7 +114248,7 @@ _02035240:
pop {r3-r5, pc}
.balign 4
_0203524C: .word 0x000005FD
-_02035250: .word FUN_020352E4 + 1
+_02035250: .word FUN_020352E4
thumb_func_start FUN_02035254
FUN_02035254: ; 0x02035254
@@ -115603,7 +115603,7 @@ FUN_02035D10: ; 0x02035D10
mov r0, #0x1
pop {r4, pc}
nop
-_02035D30: .word FUN_02035D34 + 1
+_02035D30: .word FUN_02035D34
thumb_func_start FUN_02035D34
FUN_02035D34: ; 0x02035D34
@@ -115668,7 +115668,7 @@ FUN_02035D34: ; 0x02035D34
add sp, #0x8
pop {r3-r7, pc}
.balign 4
-_02035DC4: .word FUN_02035DC8 + 1
+_02035DC4: .word FUN_02035DC8
thumb_func_start FUN_02035DC8
FUN_02035DC8: ; 0x02035DC8
@@ -115710,7 +115710,7 @@ FUN_02035DF8: ; 0x02035DF8
mov r0, #0x1
pop {r4, pc}
nop
-_02035E18: .word FUN_02035E1C + 1
+_02035E18: .word FUN_02035E1C
thumb_func_start FUN_02035E1C
FUN_02035E1C: ; 0x02035E1C
@@ -115736,7 +115736,7 @@ FUN_02035E1C: ; 0x02035E1C
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_02035E4C: .word FUN_02035E50 + 1
+_02035E4C: .word FUN_02035E50
thumb_func_start FUN_02035E50
FUN_02035E50: ; 0x02035E50
@@ -115808,7 +115808,7 @@ _02035ECC:
bl FUN_0206BB1C
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r7, #0x4]
mov r0, #0x1
strb r0, [r7, #0x11]
@@ -115860,7 +115860,7 @@ _02035F4A:
bl FUN_0206BB1C
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r7, #0x4]
mov r1, #0x1
add r0, r6, #0x0
@@ -115917,7 +115917,7 @@ _02035FD0:
bl FUN_0206BB1C
str r0, [r7, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r7, #0x4]
mov r1, #0x1
add r0, r6, #0x0
@@ -116218,11 +116218,11 @@ _0203625E:
pop {r4-r7, pc}
nop
_0203626C: .word 0x020F2A9C
-_02036270: .word FUN_0203684C + 1
+_02036270: .word FUN_0203684C
_02036274: .word 0x020F2A8C
-_02036278: .word FUN_02036BDC + 1
+_02036278: .word FUN_02036BDC
_0203627C: .word 0x020F2A90
-_02036280: .word FUN_020362E4 + 1
+_02036280: .word FUN_020362E4
thumb_func_start FUN_02036284
FUN_02036284: ; 0x02036284
@@ -116240,7 +116240,7 @@ FUN_02036284: ; 0x02036284
mov r0, #0x1
pop {r4, pc}
nop
-_020362A4: .word FUN_020362A8 + 1
+_020362A4: .word FUN_020362A8
thumb_func_start FUN_020362A8
FUN_020362A8: ; 0x020362A8
@@ -116269,7 +116269,7 @@ FUN_020362A8: ; 0x020362A8
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_020362E0: .word FUN_020362E4 + 1
+_020362E0: .word FUN_020362E4
thumb_func_start FUN_020362E4
FUN_020362E4: ; 0x020362E4
@@ -116365,7 +116365,7 @@ _0203638A:
bl FUN_02025838
str r0, [r5, #0x8]
ldr r0, [r6, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r5, #0xc]
mov r0, #0x7a
lsl r0, r0, #0x2
@@ -116464,7 +116464,7 @@ _02036474:
bl FUN_02025838
str r0, [r5, #0x8]
ldr r0, [r6, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r5, #0xc]
mov r0, #0x7a
lsl r0, r0, #0x2
@@ -116516,8 +116516,8 @@ _020364F8:
pop {r3-r7, pc}
.balign 4
_02036504: .word 0x020F96DC
-_02036508: .word FUN_02035E50 + 1
-_0203650C: .word FUN_02036BDC + 1
+_02036508: .word FUN_02035E50
+_0203650C: .word FUN_02036BDC
thumb_func_start FUN_02036510
FUN_02036510: ; 0x02036510
@@ -116535,7 +116535,7 @@ FUN_02036510: ; 0x02036510
mov r0, #0x1
pop {r4, pc}
nop
-_02036530: .word FUN_02036534 + 1
+_02036530: .word FUN_02036534
thumb_func_start FUN_02036534
FUN_02036534: ; 0x02036534
@@ -116573,7 +116573,7 @@ FUN_02036534: ; 0x02036534
add sp, #0x8
pop {r3-r5, pc}
.balign 4
-_02036580: .word FUN_02036584 + 1
+_02036580: .word FUN_02036584
thumb_func_start FUN_02036584
FUN_02036584: ; 0x02036584
@@ -116714,7 +116714,7 @@ FUN_02036684: ; 0x02036684
mov r0, #0x1
pop {r4, pc}
nop
-_020366A4: .word FUN_020366A8 + 1
+_020366A4: .word FUN_020366A8
thumb_func_start FUN_020366A8
FUN_020366A8: ; 0x020366A8
@@ -116736,7 +116736,7 @@ FUN_020366A8: ; 0x020366A8
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_020366D0: .word FUN_020366D4 + 1
+_020366D0: .word FUN_020366D4
thumb_func_start FUN_020366D4
FUN_020366D4: ; 0x020366D4
@@ -116775,7 +116775,7 @@ FUN_02036700: ; 0x02036700
mov r0, #0x1
pop {r4, pc}
nop
-_02036720: .word FUN_02036724 + 1
+_02036720: .word FUN_02036724
thumb_func_start FUN_02036724
FUN_02036724: ; 0x02036724
@@ -116816,7 +116816,7 @@ FUN_02036724: ; 0x02036724
add sp, #0x8
pop {r3-r5, pc}
.balign 4
-_02036778: .word FUN_0203677C + 1
+_02036778: .word FUN_0203677C
thumb_func_start FUN_0203677C
FUN_0203677C: ; 0x0203677C
@@ -116957,7 +116957,7 @@ FUN_0203684C: ; 0x0203684C
bl FUN_02025838
str r0, [r5, #0x8]
ldr r0, [r6, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r5, #0xc]
mov r0, #0x7a
lsl r0, r0, #0x2
@@ -117034,7 +117034,7 @@ _0203694A:
pop {r3-r7, pc}
.balign 4
_02036954: .word 0x020F96DC
-_02036958: .word FUN_02035E50 + 1
+_02036958: .word FUN_02035E50
thumb_func_start FUN_0203695C
FUN_0203695C: ; 0x0203695C
@@ -117119,7 +117119,7 @@ _020369C6:
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_02036A10: .word FUN_02036A14 + 1
+_02036A10: .word FUN_02036A14
thumb_func_start FUN_02036A14
FUN_02036A14: ; 0x02036A14
@@ -117164,7 +117164,7 @@ FUN_02036A14: ; 0x02036A14
mov r0, #0x0
pop {r3-r5, pc}
nop
-_02036A74: .word FUN_020362E4 + 1
+_02036A74: .word FUN_020362E4
thumb_func_start FUN_02036A78
FUN_02036A78: ; 0x02036A78
@@ -117194,7 +117194,7 @@ FUN_02036A78: ; 0x02036A78
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_02036AB4: .word FUN_020362E4 + 1
+_02036AB4: .word FUN_020362E4
thumb_func_start FUN_02036AB8
FUN_02036AB8: ; 0x02036AB8
@@ -117292,8 +117292,8 @@ _02036B82:
add sp, #0x8
pop {r3-r7, pc}
.balign 4
-_02036B88: .word FUN_02035E50 + 1
-_02036B8C: .word FUN_020638BC + 1
+_02036B88: .word FUN_02035E50
+_02036B8C: .word FUN_020638BC
thumb_func_start FUN_02036B90
FUN_02036B90: ; 0x02036B90
@@ -117318,7 +117318,7 @@ FUN_02036B90: ; 0x02036B90
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_02036BC0: .word FUN_020362E4 + 1
+_02036BC0: .word FUN_020362E4
thumb_func_start FUN_02036BC4
FUN_02036BC4: ; 0x02036BC4
@@ -117457,8 +117457,8 @@ _02036CD4:
mov r0, #0x0
pop {r4-r6, pc}
nop
-_02036CE4: .word FUN_020362E4 + 1
-_02036CE8: .word FUN_02035E50 + 1
+_02036CE4: .word FUN_020362E4
+_02036CE8: .word FUN_02035E50
thumb_func_start FUN_02036CEC
FUN_02036CEC: ; 0x02036CEC
@@ -117486,7 +117486,7 @@ FUN_02036CEC: ; 0x02036CEC
bl FUN_02025838
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
mov r0, #0x7a
lsl r0, r0, #0x2
@@ -117532,7 +117532,7 @@ FUN_02036CEC: ; 0x02036CEC
pop {r3-r7, pc}
nop
_02036D8C: .word 0x020F96DC
-_02036D90: .word FUN_02035E50 + 1
+_02036D90: .word FUN_02035E50
thumb_func_start FUN_02036D94
FUN_02036D94: ; 0x02036D94
@@ -117561,7 +117561,7 @@ FUN_02036D94: ; 0x02036D94
mov r0, #0x0
pop {r3-r5, pc}
nop
-_02036DD0: .word FUN_020362E4 + 1
+_02036DD0: .word FUN_020362E4
thumb_func_start FUN_02036DD4
FUN_02036DD4: ; 0x02036DD4
@@ -117586,7 +117586,7 @@ FUN_02036DD4: ; 0x02036DD4
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_02036E04: .word FUN_020362E4 + 1
+_02036E04: .word FUN_020362E4
thumb_func_start FUN_02036E08
FUN_02036E08: ; 0x02036E08
@@ -117616,7 +117616,7 @@ FUN_02036E08: ; 0x02036E08
cmp r0, #0x0
ldr r0, [r4, #0xc]
bne _02036E9E
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x28]
ldr r0, [r4, #0xc]
bl FUN_02079C70
@@ -117653,7 +117653,7 @@ FUN_02036E08: ; 0x02036E08
bl FUN_0206C700
b _02036EF2
_02036E9E:
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x38]
ldr r0, [r4, #0xc]
bl FUN_02079C70
@@ -117765,7 +117765,7 @@ _02036F98:
pop {r3-r5, pc}
nop
_02036F9C: .word 0x00000475
-_02036FA0: .word FUN_020362E4 + 1
+_02036FA0: .word FUN_020362E4
thumb_func_start FUN_02036FA4
FUN_02036FA4: ; 0x02036FA4
@@ -118289,13 +118289,13 @@ FUN_02037350: ; 0x02037350
ldr r0, [r0, #0x4]
cmp r0, #0x0
beq _02037360
- bl FUN_02020C2C
+ bl ErrorHandling
_02037360:
ldr r0, [r4, #0x0]
ldr r0, [r0, #0x0]
cmp r0, #0x0
beq _0203736C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203736C:
ldr r0, _0203738C ; =0x00000005
mov r1, #0x2
@@ -118372,7 +118372,7 @@ FUN_020373D4: ; 0x020373D4
add r6, r2, #0x0
cmp r0, #0x0
beq _020373E8
- bl FUN_02020C2C
+ bl ErrorHandling
_020373E8:
add r0, r5, #0x0
bl FUN_02037394
@@ -118410,7 +118410,7 @@ FUN_02037400: ; 0x02037400
mov r1, #0x0
mov r2, #0xb8
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0xb
mov r1, #0x10
bl FUN_02016998
@@ -118803,7 +118803,7 @@ FUN_02037760: ; 0x02037760
bx r3
nop
_02037770: .word 0x021C5A08
-_02037774: .word FUN_02030FC8 + 1
+_02037774: .word FUN_02030FC8
thumb_func_start FUN_02037778
FUN_02037778: ; 0x02037778
@@ -118816,7 +118816,7 @@ FUN_02037778: ; 0x02037778
bx r3
nop
_02037788: .word 0x021C5A08
-_0203778C: .word FUN_02030FA8 + 1
+_0203778C: .word FUN_02030FA8
thumb_func_start FUN_02037790
FUN_02037790: ; 0x02037790
@@ -118909,7 +118909,7 @@ FUN_0203780C: ; 0x0203780C
ldr r1, _02037818 ; =0x020F2D94
bx r3
.balign 4
-_02037814: .word FUN_020373D4 + 1
+_02037814: .word FUN_020373D4
_02037818: .word 0x020F2D94
thumb_func_start FUN_0203781C
@@ -118997,7 +118997,7 @@ _020378BC:
str r1, [r0, #0x0]
b _020378C8
_020378C4:
- bl FUN_02020C2C
+ bl ErrorHandling
_020378C8:
ldr r1, _020378F4 ; =0x02105DB8
add r0, r6, #0x0
@@ -119032,7 +119032,7 @@ FUN_020378FC: ; 0x020378FC
bl FUN_0206E384
cmp r0, #0x5
bne _02037916
- bl FUN_02020C2C
+ bl ErrorHandling
_02037916:
add r0, r4, #0x0
pop {r3-r5, pc}
@@ -119087,7 +119087,7 @@ FUN_0203796C: ; 0x0203796C
ldr r1, _02037978 ; =0x020FA6E8
bx r3
.balign 4
-_02037974: .word FUN_020373D4 + 1
+_02037974: .word FUN_020373D4
_02037978: .word 0x020FA6E8
thumb_func_start FUN_0203797C
@@ -119102,7 +119102,7 @@ FUN_0203797C: ; 0x0203797C
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x40
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r0, [r5, #0xc]
bl FUN_0206BB1C
str r0, [r4, #0x0]
@@ -119113,7 +119113,7 @@ FUN_0203797C: ; 0x0203797C
bl FUN_02025838
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
add r0, r4, #0x0
add r0, #0x21
@@ -119375,7 +119375,7 @@ FUN_02037B44: ; 0x02037B44
add r0, r5, #0x0
pop {r3-r7, pc}
.balign 4
-_02037BAC: .word FUN_02037A7C + 1
+_02037BAC: .word FUN_02037A7C
thumb_func_start FUN_02037BB0
FUN_02037BB0: ; 0x02037BB0
@@ -119433,7 +119433,7 @@ FUN_02037C00: ; 0x02037C00
bl FUN_0206BB1C
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x4]
mov r0, #0x1
strb r0, [r4, #0x11]
@@ -119484,9 +119484,9 @@ FUN_02037C7C: ; 0x02037C7C
mov r1, #0x0
mov r2, #0x30
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x4]
add r0, r5, #0x0
bl FUN_0206BB1C
@@ -119538,7 +119538,7 @@ FUN_02037CF0: ; 0x02037CF0
bl FUN_0206BB1C
str r0, [r4, #0x0]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x4]
mov r0, #0x1
strb r0, [r4, #0x11]
@@ -119582,7 +119582,7 @@ FUN_02037D60: ; 0x02037D60
ldr r1, _02037D6C ; =0x020F2CF4
bx r3
.balign 4
-_02037D68: .word FUN_020373D4 + 1
+_02037D68: .word FUN_020373D4
_02037D6C: .word 0x020F2CF4
thumb_func_start FUN_02037D70
@@ -119716,7 +119716,7 @@ _02037E6C:
add sp, #0x8
pop {r3-r7, pc}
nop
-_02037E7C: .word FUN_02037D70 + 1
+_02037E7C: .word FUN_02037D70
thumb_func_start FUN_02037E80
FUN_02037E80: ; 0x02037E80
@@ -119725,7 +119725,7 @@ FUN_02037E80: ; 0x02037E80
ldr r1, _02037E8C ; =0x020F2CE4
bx r3
.balign 4
-_02037E88: .word FUN_020373D4 + 1
+_02037E88: .word FUN_020373D4
_02037E8C: .word 0x020F2CE4
thumb_func_start FUN_02037E90
@@ -119778,7 +119778,7 @@ FUN_02037EE8: ; 0x02037EE8
ldr r1, _02037EF4 ; =0x020F2CC4
bx r3
.balign 4
-_02037EF0: .word FUN_020373D4 + 1
+_02037EF0: .word FUN_020373D4
_02037EF4: .word 0x020F2CC4
thumb_func_start FUN_02037EF8
@@ -119791,7 +119791,7 @@ FUN_02037EF8: ; 0x02037EF8
add r4, r0, #0x0
add r0, r5, #0x0
bl FUN_020377AC
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r5, #0x0
bl FUN_02037EE8
@@ -119805,7 +119805,7 @@ FUN_02037F1C: ; 0x02037F1C
ldr r1, _02037F28 ; =0x020FCAC8
bx r3
.balign 4
-_02037F24: .word FUN_020373D4 + 1
+_02037F24: .word FUN_020373D4
_02037F28: .word 0x020FCAC8
thumb_func_start FUN_02037F2C
@@ -119883,7 +119883,7 @@ FUN_02037FB4: ; 0x02037FB4
ldr r1, _02037FC0 ; =0x020FD1B0
bx r3
.balign 4
-_02037FBC: .word FUN_020373D4 + 1
+_02037FBC: .word FUN_020373D4
_02037FC0: .word 0x020FD1B0
thumb_func_start FUN_02037FC4
@@ -119951,7 +119951,7 @@ FUN_0203800C: ; 0x0203800C
str r7, [r4, #0x4]
str r0, [r4, #0x8]
add r0, r5, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
add r0, r5, #0x0
bl FUN_02029FC8
@@ -120052,7 +120052,7 @@ _020380E8:
add sp, #0x8
pop {r3-r7, pc}
nop
-_02038118: .word FUN_02038070 + 1
+_02038118: .word FUN_02038070
thumb_func_start FUN_0203811C
FUN_0203811C: ; 0x0203811C
@@ -120095,7 +120095,7 @@ FUN_02038144: ; 0x02038144
bl FUN_02029AFC
str r0, [r5, #0x14]
ldr r0, [r4, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r5, #0x18]
ldr r0, [r4, #0xc]
bl FUN_02024DA0
@@ -120242,7 +120242,7 @@ _02038288:
bl FUN_020690E4
str r0, [r4, #0x4c]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x5c]
mov r0, #0x1
str r0, [r4, #0x58]
@@ -120310,7 +120310,7 @@ _020382F6:
lsl r2, r0, #0x10
bl FUN_0201681C
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x24]
ldr r0, [r5, #0xc]
bl FUN_02079C70
@@ -120403,7 +120403,7 @@ FUN_020383D8: ; 0x020383D8
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_020383F4: .word FUN_020381FC + 1
+_020383F4: .word FUN_020381FC
thumb_func_start FUN_020383F8
FUN_020383F8: ; 0x020383F8
@@ -120420,7 +120420,7 @@ FUN_020383F8: ; 0x020383F8
ldr r0, [r0, #0x0]
str r0, [r4, #0x4]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x8]
ldr r1, _02038428 ; =0x020F2C94
add r0, r5, #0x0
@@ -120443,7 +120443,7 @@ FUN_0203842C: ; 0x0203842C
ldr r0, [r5, #0x7c]
str r0, [r4, #0x4]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
bl FUN_02029FC8
@@ -120468,7 +120468,7 @@ FUN_0203846C: ; 0x0203846C
ldr r1, _02038478 ; =0x020F2D54
bx r3
.balign 4
-_02038474: .word FUN_020373D4 + 1
+_02038474: .word FUN_020373D4
_02038478: .word 0x020F2D54
thumb_func_start FUN_0203847C
@@ -120659,7 +120659,7 @@ FUN_020385CC: ; 0x020385CC
ldr r0, [sp, #0x30]
str r0, [r4, #0x8]
ldr r0, [r7, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x0]
ldr r2, [sp, #0x8]
ldr r3, [sp, #0xc]
@@ -120719,7 +120719,7 @@ _0203866E:
add sp, #0x10
pop {r3-r7, pc}
.balign 4
-_0203867C: .word FUN_0203847C + 1
+_0203867C: .word FUN_0203847C
thumb_func_start FUN_02038680
FUN_02038680: ; 0x02038680
@@ -120728,7 +120728,7 @@ FUN_02038680: ; 0x02038680
ldr r1, _0203868C ; =0x020F2C54
bx r3
.balign 4
-_02038688: .word FUN_020373D4 + 1
+_02038688: .word FUN_020373D4
_0203868C: .word 0x020F2C54
thumb_func_start FUN_02038690
@@ -120749,7 +120749,7 @@ FUN_020386A4: ; 0x020386A4
ldr r1, _020386B0 ; =0x020F2C34
bx r3
.balign 4
-_020386AC: .word FUN_020373D4 + 1
+_020386AC: .word FUN_020373D4
_020386B0: .word 0x020F2C34
thumb_func_start FUN_020386B4
@@ -120817,7 +120817,7 @@ FUN_020386E0: ; 0x020386E0
bl FUN_020238F4
str r0, [r4, #0x1c]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x24]
ldr r0, [r5, #0xc]
bl FUN_02029FC8
@@ -120877,7 +120877,7 @@ FUN_02038790: ; 0x02038790
bl FUN_02023788
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x10]
ldr r0, [r5, #0xc]
bl FUN_020286EC
@@ -120908,7 +120908,7 @@ FUN_02038804: ; 0x02038804
ldr r2, [r0, #0xc]
bx r3
.balign 4
-_0203880C: .word FUN_020373D4 + 1
+_0203880C: .word FUN_020373D4
_02038810: .word 0x020F2D14
thumb_func_start FUN_02038814
@@ -120918,7 +120918,7 @@ FUN_02038814: ; 0x02038814
ldr r1, _02038820 ; =0x020F2D64
bx r3
.balign 4
-_0203881C: .word FUN_020373D4 + 1
+_0203881C: .word FUN_020373D4
_02038820: .word 0x020F2D64
thumb_func_start FUN_02038824
@@ -120953,7 +120953,7 @@ FUN_02038854: ; 0x02038854
ldr r1, _02038860 ; =0x020F2C04
bx r3
.balign 4
-_0203885C: .word FUN_020373D4 + 1
+_0203885C: .word FUN_020373D4
_02038860: .word 0x020F2C04
thumb_func_start FUN_02038864
@@ -121008,14 +121008,14 @@ FUN_020388B4: ; 0x020388B4
bl FUN_021ED49C
add r5, r0, #0x0
bne _020388CC
- bl FUN_02020C2C
+ bl ErrorHandling
_020388CC:
add r0, r4, #0x0
add r1, r5, #0x0
bl FUN_020613CC
str r5, [sp, #0x0]
ldr r0, [r4, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x4]
ldr r0, [r4, #0xc]
bl FUN_020238F4
@@ -121133,7 +121133,7 @@ FUN_020389CC: ; 0x020389CC
bl FUN_02046528
add r5, r0, #0x0
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x0]
mov r0, #0x20
add r1, r0, #0x0
@@ -121170,7 +121170,7 @@ FUN_020389CC: ; 0x020389CC
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_02038A38: .word FUN_02038914 + 1
+_02038A38: .word FUN_02038914
thumb_func_start FUN_02038A3C
FUN_02038A3C: ; 0x02038A3C
@@ -121187,7 +121187,7 @@ FUN_02038A3C: ; 0x02038A3C
ldr r0, _02038AAC ; =0x020F2BE8
add r1, sp, #0x8
mov r2, #0xc
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r4, #0x0
mov r7, #0xc
add r6, sp, #0x8
@@ -121200,7 +121200,7 @@ _02038A68:
_02038A72:
bl FUN_0201B9EC
add r1, r7, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x18
lsr r2, r0, #0x18
ldrb r1, [r6, r4]
@@ -121261,7 +121261,7 @@ FUN_02038AD0: ; 0x02038AD0
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_02038AF0: .word FUN_02038AB0 + 1
+_02038AF0: .word FUN_02038AB0
thumb_func_start FUN_02038AF4
FUN_02038AF4: ; 0x02038AF4
@@ -121391,7 +121391,7 @@ _02038BB2:
ldr r0, [r4, #0x60]
cmp r1, r0
blo _02038BCA
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
strb r0, [r4, #0x1]
pop {r4, pc}
@@ -121527,7 +121527,7 @@ FUN_02038C78: ; 0x02038C78
bl FUN_020463CC
pop {r3-r7, pc}
nop
-_02038CA4: .word FUN_02038D48 + 1
+_02038CA4: .word FUN_02038D48
thumb_func_start FUN_02038CA8
FUN_02038CA8: ; 0x02038CA8
@@ -121580,7 +121580,7 @@ FUN_02038CD8: ; 0x02038CD8
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_02038D0C: .word FUN_02038D48 + 1
+_02038D0C: .word FUN_02038D48
thumb_func_start FUN_02038D10
FUN_02038D10: ; 0x02038D10
@@ -121607,7 +121607,7 @@ FUN_02038D10: ; 0x02038D10
add sp, #0x8
pop {r3-r7, pc}
.balign 4
-_02038D44: .word FUN_02038D48 + 1
+_02038D44: .word FUN_02038D48
thumb_func_start FUN_02038D48
FUN_02038D48: ; 0x02038D48
@@ -121668,7 +121668,7 @@ _02038DA8:
ldrb r0, [r4, #0x9]
cmp r0, #0x0
bne _02038DC8
- bl FUN_02020C2C
+ bl ErrorHandling
_02038DC8:
mov r0, #0x0
str r0, [r5, #0x38]
@@ -121722,7 +121722,7 @@ FUN_02038E20: ; 0x02038E20
bl FUN_02016998
add r4, r0, #0x0
bne _02038E32
- bl FUN_02020C2C
+ bl ErrorHandling
_02038E32:
add r0, r4, #0x0
mov r1, #0x0
@@ -121797,7 +121797,7 @@ FUN_02038EB0: ; 0x02038EB0
bl FUN_02016998
add r4, r0, #0x0
bne _02038EC6
- bl FUN_02020C2C
+ bl ErrorHandling
_02038EC6:
ldr r2, _02038EE4 ; =0x020F34DC
ldr r1, _02038EE8 ; =0x020F355C
@@ -122498,7 +122498,7 @@ _02039426:
add r0, r0, r1
pop {r3, pc}
_02039430:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -122513,7 +122513,7 @@ FUN_02039438: ; 0x02039438
ldr r0, _0203945C ; =0x0003643F
cmp r1, r0
beq _02039450
- bl FUN_02020C2C
+ bl ErrorHandling
_02039450:
add r0, r4, #0x0
add r1, r5, #0x0
@@ -122539,7 +122539,7 @@ FUN_02039460: ; 0x02039460
_0203947C:
pop {r3-r5, pc}
nop
-_02039480: .word FUN_020351A0 + 1
+_02039480: .word FUN_020351A0
thumb_func_start FUN_02039484
FUN_02039484: ; 0x02039484
@@ -122571,7 +122571,7 @@ FUN_020394B0: ; 0x020394B0
ldr r3, _020394B4 ; =FUN_02034774
bx r3
.balign 4
-_020394B4: .word FUN_02034774 + 1
+_020394B4: .word FUN_02034774
thumb_func_start FUN_020394B8
FUN_020394B8: ; 0x020394B8
@@ -122622,7 +122622,7 @@ FUN_02039504: ; 0x02039504
add r5, r0, #0x0
cmp r4, #0x10
blo _02039512
- bl FUN_02020C2C
+ bl ErrorHandling
_02039512:
ldr r1, _02039524 ; =0x00004020
add r0, r5, #0x0
@@ -122869,7 +122869,7 @@ _020396C0:
_020396CE:
cmp r1, #0xe5
blo _020396DA
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4, pc}
_020396DA:
@@ -122913,7 +122913,7 @@ _02039718:
_02039726:
cmp r1, #0xe5
blo _02039732
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
_02039732:
@@ -123083,7 +123083,7 @@ FUN_02039874: ; 0x02039874
lsl r1, r1, #0x6
bx r3
.balign 4
-_0203987C: .word FUN_02039880 + 1
+_0203987C: .word FUN_02039880
thumb_func_start FUN_02039880
FUN_02039880: ; 0x02039880
@@ -123292,7 +123292,7 @@ FUN_020399B4: ; 0x020399B4
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_020399E4: .word FUN_020399E8 + 1
+_020399E4: .word FUN_020399E8
thumb_func_start FUN_020399E8
FUN_020399E8: ; 0x020399E8
@@ -123684,7 +123684,7 @@ FUN_02039C78: ; 0x02039C78
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_02039CC4: .word FUN_02039CC8 + 1
+_02039CC4: .word FUN_02039CC8
thumb_func_start FUN_02039CC8
FUN_02039CC8: ; 0x02039CC8
@@ -124226,7 +124226,7 @@ FUN_0203A098: ; 0x0203A098
add sp, #0x4
pop {r3-r6, pc}
nop
-_0203A0F8: .word FUN_0203A2F0 + 1
+_0203A0F8: .word FUN_0203A2F0
thumb_func_start FUN_0203A0FC
FUN_0203A0FC: ; 0x0203A0FC
@@ -124290,7 +124290,7 @@ FUN_0203A13C: ; 0x0203A13C
add sp, #0x8
pop {r3-r7, pc}
nop
-_0203A184: .word FUN_0203A2F0 + 1
+_0203A184: .word FUN_0203A2F0
thumb_func_start FUN_0203A188
FUN_0203A188: ; 0x0203A188
@@ -124356,7 +124356,7 @@ _0203A1F4:
nop
_0203A204: .word 0x0000FFFF
_0203A208: .word 0x0000022B
-_0203A20C: .word FUN_0203A2F0 + 1
+_0203A20C: .word FUN_0203A2F0
thumb_func_start FUN_0203A210
FUN_0203A210: ; 0x0203A210
@@ -124411,7 +124411,7 @@ FUN_0203A210: ; 0x0203A210
add sp, #0x8
pop {r3-r7, pc}
nop
-_0203A284: .word FUN_0203A2F0 + 1
+_0203A284: .word FUN_0203A2F0
thumb_func_start FUN_0203A288
FUN_0203A288: ; 0x0203A288
@@ -124440,7 +124440,7 @@ FUN_0203A288: ; 0x0203A288
add sp, #0x8
pop {r3-r5, pc}
.balign 4
-_0203A2C0: .word FUN_0203A2F0 + 1
+_0203A2C0: .word FUN_0203A2F0
thumb_func_start FUN_0203A2C4
FUN_0203A2C4: ; 0x0203A2C4
@@ -124463,7 +124463,7 @@ FUN_0203A2C4: ; 0x0203A2C4
add sp, #0x4
pop {r3-r4, pc}
.balign 4
-_0203A2EC: .word FUN_0203A2F0 + 1
+_0203A2EC: .word FUN_0203A2F0
thumb_func_start FUN_0203A2F0
FUN_0203A2F0: ; 0x0203A2F0
@@ -124503,7 +124503,7 @@ FUN_0203A304: ; 0x0203A304
add sp, #0x4
pop {r3-r4, pc}
.balign 4
-_0203A33C: .word FUN_0203A2F0 + 1
+_0203A33C: .word FUN_0203A2F0
thumb_func_start FUN_0203A340
FUN_0203A340: ; 0x0203A340
@@ -124537,7 +124537,7 @@ FUN_0203A340: ; 0x0203A340
add sp, #0x8
pop {r3-r5, pc}
.balign 4
-_0203A384: .word FUN_0203A2F0 + 1
+_0203A384: .word FUN_0203A2F0
thumb_func_start FUN_0203A388
FUN_0203A388: ; 0x0203A388
@@ -124565,7 +124565,7 @@ FUN_0203A388: ; 0x0203A388
add sp, #0x4
pop {r3-r4, pc}
nop
-_0203A3C0: .word FUN_0203A2F0 + 1
+_0203A3C0: .word FUN_0203A2F0
thumb_func_start FUN_0203A3C4
FUN_0203A3C4: ; 0x0203A3C4
@@ -124593,7 +124593,7 @@ FUN_0203A3C4: ; 0x0203A3C4
add sp, #0x4
pop {r3-r4, pc}
nop
-_0203A3FC: .word FUN_0203A2F0 + 1
+_0203A3FC: .word FUN_0203A2F0
thumb_func_start FUN_0203A400
FUN_0203A400: ; 0x0203A400
@@ -124638,7 +124638,7 @@ _0203A448:
add sp, #0x8
pop {r3-r5, pc}
nop
-_0203A458: .word FUN_0203A2F0 + 1
+_0203A458: .word FUN_0203A2F0
thumb_func_start FUN_0203A45C
FUN_0203A45C: ; 0x0203A45C
@@ -124648,7 +124648,7 @@ FUN_0203A45C: ; 0x0203A45C
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0203A468: .word FUN_0203A46C + 1
+_0203A468: .word FUN_0203A46C
thumb_func_start FUN_0203A46C
FUN_0203A46C: ; 0x0203A46C
@@ -124682,7 +124682,7 @@ FUN_0203A484: ; 0x0203A484
mov r0, #0x1
pop {r4, pc}
nop
-_0203A4A8: .word FUN_0203A4AC + 1
+_0203A4A8: .word FUN_0203A4AC
thumb_func_start FUN_0203A4AC
FUN_0203A4AC: ; 0x0203A4AC
@@ -124714,7 +124714,7 @@ FUN_0203A4D0: ; 0x0203A4D0
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0203A4DC: .word FUN_0203A4E0 + 1
+_0203A4DC: .word FUN_0203A4E0
thumb_func_start FUN_0203A4E0
FUN_0203A4E0: ; 0x0203A4E0
@@ -124792,7 +124792,7 @@ FUN_0203A560: ; 0x0203A560
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0203A56C: .word FUN_0203A570 + 1
+_0203A56C: .word FUN_0203A570
thumb_func_start FUN_0203A570
FUN_0203A570: ; 0x0203A570
@@ -124839,7 +124839,7 @@ FUN_0203A590: ; 0x0203A590
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r4, #0x0
bl FUN_02054608
@@ -124961,7 +124961,7 @@ FUN_0203A630: ; 0x0203A630
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_0203A6C4: .word FUN_0203A6C8 + 1
+_0203A6C4: .word FUN_0203A6C8
thumb_func_start FUN_0203A6C8
FUN_0203A6C8: ; 0x0203A6C8
@@ -125190,7 +125190,7 @@ _0203A88E:
mov r0, #0x1
pop {r4, pc}
nop
-_0203A89C: .word FUN_0203A8A0 + 1
+_0203A89C: .word FUN_0203A8A0
thumb_func_start FUN_0203A8A0
FUN_0203A8A0: ; 0x0203A8A0
@@ -125254,7 +125254,7 @@ FUN_0203A8B8: ; 0x0203A8B8
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
ldr r1, [r7, #0x0]
add r0, r4, #0x0
@@ -125271,7 +125271,7 @@ FUN_0203A8B8: ; 0x0203A8B8
add sp, #0x10
pop {r3-r7, pc}
.balign 4
-_0203A948: .word FUN_0203A94C + 1
+_0203A948: .word FUN_0203A94C
thumb_func_start FUN_0203A94C
FUN_0203A94C: ; 0x0203A94C
@@ -125369,7 +125369,7 @@ FUN_0203A9F0: ; 0x0203A9F0
mov r0, #0x1
pop {r4, pc}
nop
-_0203AA08: .word FUN_0203AA0C + 1
+_0203AA08: .word FUN_0203AA0C
thumb_func_start FUN_0203AA0C
FUN_0203AA0C: ; 0x0203AA0C
@@ -125494,7 +125494,7 @@ FUN_0203AAA0: ; 0x0203AAA0
nop
_0203AAF4: .word 0x000003D9
_0203AAF8: .word 0x020F34E0
-_0203AAFC: .word FUN_0203AB00 + 1
+_0203AAFC: .word FUN_0203AB00
thumb_func_start FUN_0203AB00
FUN_0203AB00: ; 0x0203AB00
@@ -125767,7 +125767,7 @@ FUN_0203AD08: ; 0x0203AD08
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203AD28: .word FUN_0203AD2C + 1
+_0203AD28: .word FUN_0203AD2C
thumb_func_start FUN_0203AD2C
FUN_0203AD2C: ; 0x0203AD2C
@@ -125807,7 +125807,7 @@ FUN_0203AD54: ; 0x0203AD54
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203AD74: .word FUN_0203AD78 + 1
+_0203AD74: .word FUN_0203AD78
thumb_func_start FUN_0203AD78
FUN_0203AD78: ; 0x0203AD78
@@ -126037,7 +126037,7 @@ FUN_0203AF34: ; 0x0203AF34
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203AF54: .word FUN_0203AD2C + 1
+_0203AF54: .word FUN_0203AD2C
thumb_func_start FUN_0203AF58
FUN_0203AF58: ; 0x0203AF58
@@ -126059,7 +126059,7 @@ FUN_0203AF58: ; 0x0203AF58
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203AF80: .word FUN_0203AD2C + 1
+_0203AF80: .word FUN_0203AD2C
thumb_func_start FUN_0203AF84
FUN_0203AF84: ; 0x0203AF84
@@ -126116,7 +126116,7 @@ FUN_0203AFC4: ; 0x0203AFC4
bl FUN_0203B120
add r6, r0, #0x0
bne _0203AFF6
- bl FUN_02020C2C
+ bl ErrorHandling
_0203AFF6:
ldr r1, [r5, #0x8]
add r0, r6, #0x0
@@ -126175,7 +126175,7 @@ FUN_0203B024: ; 0x0203B024
str r0, [sp, #0x4]
cmp r0, #0x0
bne _0203B07A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203B07A:
mov r0, #0x4
add r1, r0, #0x0
@@ -126289,7 +126289,7 @@ FUN_0203B148: ; 0x0203B148
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0203B154: .word FUN_0203B158 + 1
+_0203B154: .word FUN_0203B158
thumb_func_start FUN_0203B158
FUN_0203B158: ; 0x0203B158
@@ -126319,7 +126319,7 @@ FUN_0203B174: ; 0x0203B174
bl FUN_02016998
add r4, r0, #0x0
bne _0203B18E
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_0203B18E:
str r5, [r4, #0xc]
@@ -126332,7 +126332,7 @@ _0203B18E:
str r0, [r4, #0x0]
pop {r3-r7, pc}
nop
-_0203B1A4: .word FUN_0203B1A8 + 1
+_0203B1A4: .word FUN_0203B1A8
thumb_func_start FUN_0203B1A8
FUN_0203B1A8: ; 0x0203B1A8
@@ -126360,7 +126360,7 @@ _0203B1D6:
ldrb r0, [r4, #0x0]
cmp r0, #0x0
bne _0203B1E8
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
_0203B1E8:
sub r0, r0, #0x1
@@ -126578,7 +126578,7 @@ _0203B398:
pop {r3-r7, pc}
nop
_0203B3A8: .word 0x021C5A0C
-_0203B3AC: .word FUN_0203B218 + 1
+_0203B3AC: .word FUN_0203B218
thumb_func_start FUN_0203B3B0
FUN_0203B3B0: ; 0x0203B3B0
@@ -126646,7 +126646,7 @@ FUN_0203B3F8: ; 0x0203B3F8
bl FUN_020575D4
cmp r0, #0x0
bne _0203B43A
- bl FUN_02020C2C
+ bl ErrorHandling
_0203B43A:
mov r0, #0x0
add sp, #0x4
@@ -127215,7 +127215,7 @@ FUN_0203B8E4: ; 0x0203B8E4
mov r0, #0x1
pop {r3-r5, pc}
nop
-_0203B910: .word FUN_0203BC04 + 1
+_0203B910: .word FUN_0203BC04
thumb_func_start FUN_0203B914
FUN_0203B914: ; 0x0203B914
@@ -127238,7 +127238,7 @@ FUN_0203B914: ; 0x0203B914
mov r0, #0x1
pop {r3-r5, pc}
nop
-_0203B940: .word FUN_0203BC04 + 1
+_0203B940: .word FUN_0203BC04
thumb_func_start FUN_0203B944
FUN_0203B944: ; 0x0203B944
@@ -127278,7 +127278,7 @@ FUN_0203B968: ; 0x0203B968
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203B994
- bl FUN_02020C2C
+ bl ErrorHandling
_0203B994:
ldr r0, [r4, #0x0]
bl FUN_02037A40
@@ -127354,7 +127354,7 @@ FUN_0203B9B4: ; 0x0203B9B4
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_0203BA38: .word FUN_0203BC04 + 1
+_0203BA38: .word FUN_0203BC04
thumb_func_start FUN_0203BA3C
FUN_0203BA3C: ; 0x0203BA3C
@@ -127383,7 +127383,7 @@ FUN_0203BA3C: ; 0x0203BA3C
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203BA7C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203BA7C:
ldr r0, [r4, #0x0]
bl FUN_02037A40
@@ -127441,7 +127441,7 @@ FUN_0203BAB0: ; 0x0203BAB0
mov r0, #0x1
pop {r3-r5, pc}
nop
-_0203BAF0: .word FUN_0203BC04 + 1
+_0203BAF0: .word FUN_0203BC04
thumb_func_start FUN_0203BAF4
FUN_0203BAF4: ; 0x0203BAF4
@@ -127462,7 +127462,7 @@ FUN_0203BAF4: ; 0x0203BAF4
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203BB20
- bl FUN_02020C2C
+ bl ErrorHandling
_0203BB20:
ldr r0, [r4, #0x0]
bl FUN_02037A78
@@ -127923,7 +127923,7 @@ FUN_0203BE80: ; 0x0203BE80
mov r0, #0x1
pop {r4, pc}
nop
-_0203BE98: .word FUN_0203BE9C + 1
+_0203BE98: .word FUN_0203BE9C
thumb_func_start FUN_0203BE9C
FUN_0203BE9C: ; 0x0203BE9C
@@ -128089,7 +128089,7 @@ _0203BFCC:
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_0203BFE8: .word FUN_0203BB90 + 1
+_0203BFE8: .word FUN_0203BB90
thumb_func_start FUN_0203BFEC
FUN_0203BFEC: ; 0x0203BFEC
@@ -128138,7 +128138,7 @@ _0203C034:
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_0203C050: .word FUN_0203BB90 + 1
+_0203C050: .word FUN_0203BB90
thumb_func_start FUN_0203C054
FUN_0203C054: ; 0x0203C054
@@ -128235,7 +128235,7 @@ FUN_0203C0FC: ; 0x0203C0FC
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203C114: .word FUN_0203BC04 + 1
+_0203C114: .word FUN_0203BC04
thumb_func_start FUN_0203C118
FUN_0203C118: ; 0x0203C118
@@ -128280,7 +128280,7 @@ FUN_0203C12C: ; 0x0203C12C
mov r0, #0x1
pop {r3-r5, pc}
nop
-_0203C170: .word FUN_0203BB90 + 1
+_0203C170: .word FUN_0203BB90
thumb_func_start FUN_0203C174
FUN_0203C174: ; 0x0203C174
@@ -128307,7 +128307,7 @@ FUN_0203C174: ; 0x0203C174
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203C1A8: .word FUN_0203BB90 + 1
+_0203C1A8: .word FUN_0203BB90
thumb_func_start FUN_0203C1AC
FUN_0203C1AC: ; 0x0203C1AC
@@ -128382,7 +128382,7 @@ FUN_0203C200: ; 0x0203C200
mov r2, #0x8
str r0, [r6, #0x0]
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [sp, #0x0]
strh r7, [r4, #0x4]
strh r0, [r4, #0x6]
@@ -128402,7 +128402,7 @@ FUN_0203C200: ; 0x0203C200
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_0203C274: .word FUN_0203BB90 + 1
+_0203C274: .word FUN_0203BB90
thumb_func_start FUN_0203C278
FUN_0203C278: ; 0x0203C278
@@ -128438,7 +128438,7 @@ FUN_0203C278: ; 0x0203C278
mov r0, #0x1
pop {r3-r5, pc}
nop
-_0203C2C0: .word FUN_0203BBBC + 1
+_0203C2C0: .word FUN_0203BBBC
thumb_func_start FUN_0203C2C4
FUN_0203C2C4: ; 0x0203C2C4
@@ -128453,7 +128453,7 @@ FUN_0203C2C4: ; 0x0203C2C4
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203C2DC: .word FUN_0203BC04 + 1
+_0203C2DC: .word FUN_0203BC04
thumb_func_start FUN_0203C2E0
FUN_0203C2E0: ; 0x0203C2E0
@@ -128495,7 +128495,7 @@ FUN_0203C300: ; 0x0203C300
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203C328: .word FUN_0203BB90 + 1
+_0203C328: .word FUN_0203BB90
thumb_func_start FUN_0203C32C
FUN_0203C32C: ; 0x0203C32C
@@ -128527,7 +128527,7 @@ FUN_0203C33C: ; 0x0203C33C
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203C364: .word FUN_0203BB90 + 1
+_0203C364: .word FUN_0203BB90
thumb_func_start FUN_0203C368
FUN_0203C368: ; 0x0203C368
@@ -128573,7 +128573,7 @@ _0203C3C0:
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
-_0203C3C4: .word FUN_0203BC04 + 1
+_0203C3C4: .word FUN_0203BC04
thumb_func_start FUN_0203C3C8
FUN_0203C3C8: ; 0x0203C3C8
@@ -128609,7 +128609,7 @@ FUN_0203C3E8: ; 0x0203C3E8
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r6, #0x4]
add r0, r5, #0x0
add r0, #0x80
@@ -128622,7 +128622,7 @@ FUN_0203C3E8: ; 0x0203C3E8
mov r0, #0x1
pop {r4-r6, pc}
nop
-_0203C42C: .word FUN_0203BC04 + 1
+_0203C42C: .word FUN_0203BC04
thumb_func_start FUN_0203C430
FUN_0203C430: ; 0x0203C430
@@ -128673,7 +128673,7 @@ _0203C476:
ldr r0, [r6, #0x0]
cmp r0, #0x0
beq _0203C492
- bl FUN_02020C2C
+ bl ErrorHandling
_0203C492:
add r0, r5, #0x0
add r0, #0x80
@@ -128687,7 +128687,7 @@ _0203C492:
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
-_0203C4AC: .word FUN_0203BC04 + 1
+_0203C4AC: .word FUN_0203BC04
thumb_func_start FUN_0203C4B0
FUN_0203C4B0: ; 0x0203C4B0
@@ -128708,7 +128708,7 @@ FUN_0203C4B0: ; 0x0203C4B0
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203C4DC
- bl FUN_02020C2C
+ bl ErrorHandling
_0203C4DC:
ldr r0, [r4, #0x0]
bl FUN_020378FC
@@ -128973,7 +128973,7 @@ FUN_0203C70C: ; 0x0203C70C
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0203C718: .word FUN_0203C71C + 1
+_0203C718: .word FUN_0203C71C
thumb_func_start FUN_0203C71C
FUN_0203C71C: ; 0x0203C71C
@@ -129319,7 +129319,7 @@ FUN_0203C990: ; 0x0203C990
mov r0, #0x1
pop {r4-r6, pc}
nop
-_0203C9F4: .word FUN_0203C9F8 + 1
+_0203C9F4: .word FUN_0203C9F8
thumb_func_start FUN_0203C9F8
FUN_0203C9F8: ; 0x0203C9F8
@@ -129624,7 +129624,7 @@ FUN_0203CBE8: ; 0x0203CBE8
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
ldr r1, [r6, #0x0]
add r0, r4, #0x0
@@ -129637,7 +129637,7 @@ FUN_0203CBE8: ; 0x0203CBE8
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_0203CC84: .word FUN_0203A2F0 + 1
+_0203CC84: .word FUN_0203A2F0
thumb_func_start FUN_0203CC88
FUN_0203CC88: ; 0x0203CC88
@@ -129686,7 +129686,7 @@ FUN_0203CC88: ; 0x0203CC88
add sp, #0x8
pop {r3-r7, pc}
nop
-_0203CCF4: .word FUN_0203CCF8 + 1
+_0203CCF4: .word FUN_0203CCF8
thumb_func_start FUN_0203CCF8
FUN_0203CCF8: ; 0x0203CCF8
@@ -129757,7 +129757,7 @@ FUN_0203CD20: ; 0x0203CD20
add sp, #0x8
pop {r3-r7, pc}
nop
-_0203CD8C: .word FUN_0203CD90 + 1
+_0203CD8C: .word FUN_0203CD90
thumb_func_start FUN_0203CD90
FUN_0203CD90: ; 0x0203CD90
@@ -130282,7 +130282,7 @@ FUN_0203D1A4: ; 0x0203D1A4
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203D1BC: .word FUN_0203BC04 + 1
+_0203D1BC: .word FUN_0203BC04
thumb_func_start FUN_0203D1C0
FUN_0203D1C0: ; 0x0203D1C0
@@ -130449,7 +130449,7 @@ FUN_0203D2E4: ; 0x0203D2E4
mov r0, #0x1
pop {r4, pc}
nop
-_0203D310: .word FUN_0203D314 + 1
+_0203D310: .word FUN_0203D314
thumb_func_start FUN_0203D314
FUN_0203D314: ; 0x0203D314
@@ -130630,7 +130630,7 @@ FUN_0203D458: ; 0x0203D458
mov r0, #0x1
pop {r4, pc}
nop
-_0203D478: .word FUN_0203D47C + 1
+_0203D478: .word FUN_0203D47C
thumb_func_start FUN_0203D47C
FUN_0203D47C: ; 0x0203D47C
@@ -130790,7 +130790,7 @@ FUN_0203D5B0: ; 0x0203D5B0
mov r0, #0x1
pop {r4, pc}
nop
-_0203D5C8: .word FUN_0203D5CC + 1
+_0203D5C8: .word FUN_0203D5CC
thumb_func_start FUN_0203D5CC
FUN_0203D5CC: ; 0x0203D5CC
@@ -130887,7 +130887,7 @@ FUN_0203D66C: ; 0x0203D66C
mov r0, #0x1
pop {r4, pc}
nop
-_0203D684: .word FUN_0203D688 + 1
+_0203D684: .word FUN_0203D688
thumb_func_start FUN_0203D688
FUN_0203D688: ; 0x0203D688
@@ -130932,7 +130932,7 @@ FUN_0203D6C4: ; 0x0203D6C4
mov r0, #0x1
pop {r4, pc}
nop
-_0203D6DC: .word FUN_0203D6E0 + 1
+_0203D6DC: .word FUN_0203D6E0
thumb_func_start FUN_0203D6E0
FUN_0203D6E0: ; 0x0203D6E0
@@ -131194,7 +131194,7 @@ FUN_0203D8EC: ; 0x0203D8EC
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203D900: .word FUN_0203D904 + 1
+_0203D900: .word FUN_0203D904
thumb_func_start FUN_0203D904
FUN_0203D904: ; 0x0203D904
@@ -131223,7 +131223,7 @@ FUN_0203D920: ; 0x0203D920
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203D934: .word FUN_0203D904 + 1
+_0203D934: .word FUN_0203D904
thumb_func_start FUN_0203D938
FUN_0203D938: ; 0x0203D938
@@ -131521,7 +131521,7 @@ FUN_0203DB88: ; 0x0203DB88
bl FUN_02058060
add r5, r0, #0x0
bne _0203DBC6
- bl FUN_02020C2C
+ bl ErrorHandling
_0203DBC6:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -131792,7 +131792,7 @@ FUN_0203DD60: ; 0x0203DD60
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
-_0203DDBC: .word FUN_0203DDC0 + 1
+_0203DDBC: .word FUN_0203DDC0
thumb_func_start FUN_0203DDC0
FUN_0203DDC0: ; 0x0203DDC0
@@ -131850,7 +131850,7 @@ FUN_0203DE00: ; 0x0203DE00
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203DE34: .word FUN_0203DE38 + 1
+_0203DE34: .word FUN_0203DE38
thumb_func_start FUN_0203DE38
FUN_0203DE38: ; 0x0203DE38
@@ -131944,7 +131944,7 @@ FUN_0203DEC4: ; 0x0203DEC4
bl FUN_02058060
add r4, r0, #0x0
bne _0203DEEC
- bl FUN_02020C2C
+ bl ErrorHandling
_0203DEEC:
add r0, r4, #0x0
mov r1, #0x0
@@ -131969,7 +131969,7 @@ FUN_0203DEF8: ; 0x0203DEF8
bl FUN_02058060
add r4, r0, #0x0
bne _0203DF20
- bl FUN_02020C2C
+ bl ErrorHandling
_0203DF20:
add r0, r4, #0x0
mov r1, #0x1
@@ -132060,7 +132060,7 @@ FUN_0203DFA8: ; 0x0203DFA8
add r5, r0, #0x0
bl FUN_0201B9EC
add r1, r5, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
strh r1, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
@@ -132085,7 +132085,7 @@ FUN_0203DFE0: ; 0x0203DFE0
add r5, r0, #0x0
bl FUN_0201B9EC
add r1, r5, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
strh r1, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
@@ -132610,7 +132610,7 @@ FUN_0203E440: ; 0x0203E440
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203E46C: .word FUN_0203BB90 + 1
+_0203E46C: .word FUN_0203BB90
thumb_func_start FUN_0203E470
FUN_0203E470: ; 0x0203E470
@@ -132634,7 +132634,7 @@ FUN_0203E470: ; 0x0203E470
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_0203E49C: .word FUN_0203BB90 + 1
+_0203E49C: .word FUN_0203BB90
thumb_func_start FUN_0203E4A0
FUN_0203E4A0: ; 0x0203E4A0
@@ -133013,7 +133013,7 @@ FUN_0203E774: ; 0x0203E774
add r4, r0, #0x0
bl FUN_0201B9EC
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r6, r0, #0x10
ldr r0, [sp, #0x0]
@@ -133286,7 +133286,7 @@ _0203E9AE:
strh r0, [r6, #0x0]
b _0203E9C8
_0203E9C4:
- bl FUN_02020C2C
+ bl ErrorHandling
_0203E9C8:
mov r0, #0x0
pop {r4-r6, pc}
@@ -134181,7 +134181,7 @@ FUN_0203F07C: ; 0x0203F07C
bl FUN_02058060
add r7, r0, #0x0
bne _0203F0FA
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F0FA:
str r6, [sp, #0x0]
str r4, [sp, #0x4]
@@ -134229,7 +134229,7 @@ FUN_0203F110: ; 0x0203F110
bl FUN_02058060
add r5, r0, #0x0
bne _0203F164
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F164:
ldr r0, [r4, #0x74]
add r1, r5, #0x0
@@ -134307,7 +134307,7 @@ _0203F1E0:
_0203F1F8:
bl FUN_0201B9EC
add r1, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
mov r4, #0x0
add r2, sp, #0x4
_0203F206:
@@ -134325,7 +134325,7 @@ _0203F212:
_0203F21A:
cmp r4, #0x10
blt _0203F222
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F222:
ldr r0, [sp, #0x0]
add r4, #0x22
@@ -134733,7 +134733,7 @@ _0203F54C:
_0203F556:
bl FUN_0201B9EC
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x19
bge _0203F568
ldr r7, _0203F5CC ; =0x0000010D
@@ -134741,7 +134741,7 @@ _0203F556:
_0203F568:
bl FUN_0201B9EC
mov r1, #0x6
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r1, r0, #0x10
mov r0, #0x6
@@ -134980,7 +134980,7 @@ FUN_0203F720: ; 0x0203F720
add r5, r0, #0x0
cmp r4, #0x3
bls _0203F752
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F752:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -135070,7 +135070,7 @@ FUN_0203F7C8: ; 0x0203F7C8
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
-_0203F808: .word FUN_0203BC04 + 1
+_0203F808: .word FUN_0203BC04
thumb_func_start FUN_0203F80C
FUN_0203F80C: ; 0x0203F80C
@@ -135099,7 +135099,7 @@ FUN_0203F80C: ; 0x0203F80C
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203F84C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F84C:
ldr r0, [r4, #0x0]
bl FUN_02037A40
@@ -135148,7 +135148,7 @@ FUN_0203F880: ; 0x0203F880
_0203F8A2:
bl FUN_0201B9EC
mov r1, #0x65
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
cmp r0, r4
@@ -135206,7 +135206,7 @@ _0203F910:
bl FUN_0224F12C
b _0203F91E
_0203F91A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0203F91E:
mov r0, #0x1
pop {r3-r5, pc}
@@ -135593,7 +135593,7 @@ FUN_0203FC1C: ; 0x0203FC1C
bl FUN_02058060
add r5, r0, #0x0
bne _0203FC4C
- bl FUN_02020C2C
+ bl ErrorHandling
_0203FC4C:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -135947,7 +135947,7 @@ FUN_0203FEC0: ; 0x0203FEC0
mov r0, #0x1
pop {r4, pc}
nop
-_0203FEF0: .word FUN_0203FEF4 + 1
+_0203FEF0: .word FUN_0203FEF4
thumb_func_start FUN_0203FEF4
FUN_0203FEF4: ; 0x0203FEF4
@@ -136062,7 +136062,7 @@ FUN_0203FF10: ; 0x0203FF10
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x2c]
add r0, r5, #0x0
add r0, #0x80
@@ -136291,7 +136291,7 @@ FUN_020401CC: ; 0x020401CC
mov r0, #0x1
pop {r4, pc}
.balign 4
-_020401EC: .word FUN_020401F0 + 1
+_020401EC: .word FUN_020401F0
thumb_func_start FUN_020401F0
FUN_020401F0: ; 0x020401F0
@@ -136796,7 +136796,7 @@ FUN_020405F8: ; 0x020405F8
mov r0, #0x1
pop {r4, pc}
nop
-_02040614: .word FUN_02040618 + 1
+_02040614: .word FUN_02040618
thumb_func_start FUN_02040618
FUN_02040618: ; 0x02040618
@@ -137242,11 +137242,11 @@ FUN_02040964: ; 0x02040964
bl FUN_020394F0
add r5, r0, #0x0
mov r1, #0x1e
- blx FUN_020EBC80
+ blx _s32_div_f
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x1e
- blx FUN_020EBC80
+ blx _s32_div_f
add r2, r1, #0x0
ldr r0, [sp, #0x0]
add r1, r7, #0x0
@@ -138431,14 +138431,14 @@ FUN_02041354: ; 0x02041354
_02041360:
add r0, r5, #0x0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
str r1, [sp, #0x0]
str r0, [sp, #0x4]
add r0, r4, #0x0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
str r0, [sp, #0x8]
@@ -138447,12 +138447,12 @@ _02041360:
bne _020413AC
add r0, r5, #0x0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, #0x0
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
add r0, r6, #0x1
@@ -138556,7 +138556,7 @@ FUN_0204143C: ; 0x0204143C
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
-_02041460: .word FUN_02041464 + 1
+_02041460: .word FUN_02041464
thumb_func_start FUN_02041464
FUN_02041464: ; 0x02041464
@@ -138586,7 +138586,7 @@ FUN_02041478: ; 0x02041478
mov r0, #0x1
pop {r4, pc}
nop
-_02041498: .word FUN_02041464 + 1
+_02041498: .word FUN_02041464
thumb_func_start FUN_0204149C
FUN_0204149C: ; 0x0204149C
@@ -138672,7 +138672,7 @@ FUN_02041518: ; 0x02041518
mov r0, #0x1
pop {r4, pc}
nop
-_0204153C: .word FUN_02041540 + 1
+_0204153C: .word FUN_02041540
thumb_func_start FUN_02041540
FUN_02041540: ; 0x02041540
@@ -138719,7 +138719,7 @@ FUN_02041588: ; 0x02041588
mov r0, #0x1
pop {r3, pc}
.balign 4
-_02041594: .word FUN_02041598 + 1
+_02041594: .word FUN_02041598
thumb_func_start FUN_02041598
FUN_02041598: ; 0x02041598
@@ -138751,7 +138751,7 @@ FUN_020415BC: ; 0x020415BC
mov r0, #0x1
pop {r3, pc}
.balign 4
-_020415C8: .word FUN_020415CC + 1
+_020415C8: .word FUN_020415CC
thumb_func_start FUN_020415CC
FUN_020415CC: ; 0x020415CC
@@ -140989,7 +140989,7 @@ FUN_020427D0: ; 0x020427D0
ldr r0, _0204285C ; =0x00000884
mov r2, #0x46
add r0, r6, r0
- blx FUN_020CE34C
+ blx MI_CpuFill8
cmp r4, #0x0
beq _0204281E
cmp r4, #0x1
@@ -141573,7 +141573,7 @@ _02042CA8:
bl FUN_0204B9CC
b _02042CB6
_02042CB2:
- bl FUN_02020C2C
+ bl ErrorHandling
_02042CB6:
mov r0, #0x1
pop {r4, pc}
@@ -141946,7 +141946,7 @@ FUN_02042F6C: ; 0x02042F6C
add r2, r7, #0x0
bl FUN_020671BC
add r6, r0, #0x0
- blx FUN_020CCC1C
+ blx OS_GetTick
bl FUN_0201BA10
add r1, r0, #0x0
ldr r0, [sp, #0x14]
@@ -142303,7 +142303,7 @@ FUN_020432C0: ; 0x020432C0
ldr r3, _020432C4 ; =FUN_02042F6C
bx r3
.balign 4
-_020432C4: .word FUN_02042F6C + 1
+_020432C4: .word FUN_02042F6C
thumb_func_start FUN_020432C8
FUN_020432C8: ; 0x020432C8
@@ -143067,7 +143067,7 @@ _020438B2:
bl FUN_0204BA1C
b _020438CA
_020438C6:
- bl FUN_02020C2C
+ bl ErrorHandling
_020438CA:
mov r0, #0x0
pop {r3-r5, pc}
@@ -143158,7 +143158,7 @@ _0204395C:
bl FUN_0206B20C
cmp r0, #0x0
bne _0204398C
- bl FUN_02020C2C
+ bl ErrorHandling
_0204398C:
add r0, r6, #0x0
add r0, #0x80
@@ -144162,7 +144162,7 @@ FUN_02044198: ; 0x02044198
add r5, r0, #0x0
bl FUN_0201B9EC
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
cmp r0, #0xf
@@ -145072,7 +145072,7 @@ FUN_020448D4: ; 0x020448D4
mov r0, #0x96
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
_0204495A:
@@ -146455,7 +146455,7 @@ FUN_02045484: ; 0x02045484
add r6, r0, #0x0
cmp r4, #0x8
blo _020454B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020454B6:
add r5, #0x80
ldr r0, [r5, #0x0]
@@ -146480,7 +146480,7 @@ FUN_020454CC: ; 0x020454CC
add r4, r0, #0x0
cmp r4, #0x8
blo _020454EA
- bl FUN_02020C2C
+ bl ErrorHandling
_020454EA:
add r5, #0x80
ldr r0, [r5, #0x0]
@@ -146724,7 +146724,7 @@ _020456AE:
strh r0, [r5, #0x0]
b _020456D0
_020456CC:
- bl FUN_02020C2C
+ bl ErrorHandling
_020456D0:
mov r0, #0x0
pop {r3-r5, pc}
@@ -146768,7 +146768,7 @@ _02045706:
strh r0, [r5, #0x0]
b _02045726
_02045722:
- bl FUN_02020C2C
+ bl ErrorHandling
_02045726:
mov r0, #0x0
pop {r3-r5, pc}
@@ -146813,7 +146813,7 @@ _0204575E:
strh r0, [r5, #0x0]
b _0204577E
_0204577A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204577E:
mov r0, #0x0
pop {r3-r5, pc}
@@ -147545,7 +147545,7 @@ FUN_02045D88: ; 0x02045D88
mov r0, #0x1
pop {r4-r6, pc}
nop
-_02045DCC: .word FUN_0203BC04 + 1
+_02045DCC: .word FUN_0203BC04
thumb_func_start FUN_02045DD0
FUN_02045DD0: ; 0x02045DD0
@@ -147566,7 +147566,7 @@ FUN_02045DD0: ; 0x02045DD0
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02045DFC
- bl FUN_02020C2C
+ bl ErrorHandling
_02045DFC:
ldr r0, [r4, #0x0]
bl FUN_02037D5C
@@ -147655,7 +147655,7 @@ FUN_02045E74: ; 0x02045E74
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x8]
str r6, [r4, #0xc]
add r0, r5, #0x0
@@ -147672,7 +147672,7 @@ FUN_02045E74: ; 0x02045E74
add sp, #0x8
pop {r3-r7, pc}
.balign 4
-_02045EDC: .word FUN_0203BC04 + 1
+_02045EDC: .word FUN_0203BC04
thumb_func_start FUN_02045EE0
FUN_02045EE0: ; 0x02045EE0
@@ -147774,7 +147774,7 @@ FUN_02045F88: ; 0x02045F88
ldr r4, [r0, #0x0]
cmp r4, #0x0
bne _02045FB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02045FB2:
ldrb r0, [r4, #0x16]
cmp r0, #0x0
@@ -147809,7 +147809,7 @@ FUN_02045FCC: ; 0x02045FCC
ldr r4, [r0, #0x0]
cmp r4, #0x0
bne _02045FF6
- bl FUN_02020C2C
+ bl ErrorHandling
_02045FF6:
ldrb r0, [r4, #0x16]
cmp r0, #0x0
@@ -147829,7 +147829,7 @@ _02046002:
thumb_func_start FUN_02046010
FUN_02046010: ; 0x02046010
push {r3, lr}
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -147837,7 +147837,7 @@ FUN_02046010: ; 0x02046010
thumb_func_start FUN_0204601C
FUN_0204601C: ; 0x0204601C
push {r3, lr}
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -147878,7 +147878,7 @@ FUN_02046030: ; 0x02046030
bl FUN_0204640C
pop {r4, pc}
nop
-_02046064: .word FUN_02046068 + 1
+_02046064: .word FUN_02046068
thumb_func_start FUN_02046068
FUN_02046068: ; 0x02046068
@@ -148161,7 +148161,7 @@ FUN_020462AC: ; 0x020462AC
mov r1, #0x4
bx r3
nop
-_020462B4: .word FUN_02022610 + 1
+_020462B4: .word FUN_02022610
thumb_func_start FUN_020462B8
FUN_020462B8: ; 0x020462B8
@@ -148255,7 +148255,7 @@ _02046344:
lsl r0, r0, #0x2
cmp r4, r0
blt _0204635A
- bl FUN_02020C2C
+ bl ErrorHandling
_0204635A:
mov r0, #0x9
lsl r0, r0, #0x6
@@ -148270,7 +148270,7 @@ _02046364:
asr r4, r0, #0x3
cmp r4, #0x8
blt _02046376
- bl FUN_02020C2C
+ bl ErrorHandling
_02046376:
ldr r0, _0204637C ; =0x021C5A14
add r0, r0, r4
@@ -148289,7 +148289,7 @@ FUN_02046380: ; 0x02046380
lsl r0, r0, #0x4
cmp r4, r0
blt _02046396
- bl FUN_02020C2C
+ bl ErrorHandling
_02046396:
lsl r0, r4, #0x1
add r0, r5, r0
@@ -148329,7 +148329,7 @@ FUN_020463CC: ; 0x020463CC
add r6, r2, #0x0
cmp r0, #0x0
beq _020463DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020463DE:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -148449,7 +148449,7 @@ FUN_0204649C: ; 0x0204649C
ldr r3, _020464A0 ; =FUN_02037350
bx r3
.balign 4
-_020464A0: .word FUN_02037350 + 1
+_020464A0: .word FUN_02037350
thumb_func_start FUN_020464A4
FUN_020464A4: ; 0x020464A4
@@ -148520,7 +148520,7 @@ FUN_02046500: ; 0x02046500
bl FUN_0204640C
pop {r4-r6, pc}
.balign 4
-_02046524: .word FUN_020464B8 + 1
+_02046524: .word FUN_020464B8
thumb_func_start FUN_02046528
FUN_02046528: ; 0x02046528
@@ -148588,8 +148588,8 @@ FUN_02046584: ; 0x02046584
ldr r1, _02046590 ; =FUN_0204653C
bx r3
.balign 4
-_0204658C: .word FUN_0204640C + 1
-_02046590: .word FUN_0204653C + 1
+_0204658C: .word FUN_0204640C
+_02046590: .word FUN_0204653C
thumb_func_start FUN_02046594
FUN_02046594: ; 0x02046594
@@ -148637,7 +148637,7 @@ _020465D8:
ldr r0, [r0, #0x14]
bx r3
.balign 4
-_020465E0: .word FUN_020480B8 + 1
+_020465E0: .word FUN_020480B8
thumb_func_start FUN_020465E4
FUN_020465E4: ; 0x020465E4
@@ -148791,7 +148791,7 @@ FUN_020466FC: ; 0x020466FC
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_02046718: .word FUN_020465F8 + 1
+_02046718: .word FUN_020465F8
thumb_func_start FUN_0204671C
FUN_0204671C: ; 0x0204671C
@@ -149069,7 +149069,7 @@ FUN_02046928: ; 0x02046928
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_02046944: .word FUN_02046878 + 1
+_02046944: .word FUN_02046878
thumb_func_start FUN_02046948
FUN_02046948: ; 0x02046948
@@ -149171,8 +149171,8 @@ _020469F2:
bl FUN_020463CC
pop {r4-r6, pc}
.balign 4
-_02046A18: .word FUN_02046C1C + 1
-_02046A1C: .word FUN_02046A88 + 1
+_02046A18: .word FUN_02046C1C
+_02046A1C: .word FUN_02046A88
thumb_func_start FUN_02046A20
FUN_02046A20: ; 0x02046A20
@@ -149216,8 +149216,8 @@ _02046A5A:
bl FUN_020463EC
pop {r4-r6, pc}
.balign 4
-_02046A80: .word FUN_02046C1C + 1
-_02046A84: .word FUN_02046A88 + 1
+_02046A80: .word FUN_02046C1C
+_02046A84: .word FUN_02046A88
thumb_func_start FUN_02046A88
FUN_02046A88: ; 0x02046A88
@@ -149403,7 +149403,7 @@ _02046C12:
mov r0, #0x0
pop {r4-r6, pc}
nop
-_02046C18: .word FUN_0204837C + 1
+_02046C18: .word FUN_0204837C
thumb_func_start FUN_02046C1C
FUN_02046C1C: ; 0x02046C1C
@@ -149819,7 +149819,7 @@ FUN_02046F70: ; 0x02046F70
bl FUN_020463CC
pop {r4-r6, pc}
.balign 4
-_02046F9C: .word FUN_02046E8C + 1
+_02046F9C: .word FUN_02046E8C
thumb_func_start FUN_02046FA0
FUN_02046FA0: ; 0x02046FA0
@@ -149974,7 +149974,7 @@ FUN_020470AC: ; 0x020470AC
bl FUN_0204640C
pop {r4-r6, pc}
nop
-_020470E4: .word FUN_02047004 + 1
+_020470E4: .word FUN_02047004
thumb_func_start FUN_020470E8
FUN_020470E8: ; 0x020470E8
@@ -150074,7 +150074,7 @@ FUN_02047174: ; 0x02047174
bl FUN_0204640C
pop {r3-r7, pc}
nop
-_020471BC: .word FUN_02046758 + 1
+_020471BC: .word FUN_02046758
thumb_func_start FUN_020471C0
FUN_020471C0: ; 0x020471C0
@@ -150118,7 +150118,7 @@ _020471E6:
bl FUN_0204640C
pop {r3-r7, pc}
nop
-_0204721C: .word FUN_020467FC + 1
+_0204721C: .word FUN_020467FC
thumb_func_start FUN_02047220
FUN_02047220: ; 0x02047220
@@ -150156,7 +150156,7 @@ _02047262:
mov r0, #0x0
pop {r3-r7, pc}
nop
-_02047268: .word FUN_02046758 + 1
+_02047268: .word FUN_02046758
thumb_func_start FUN_0204726C
FUN_0204726C: ; 0x0204726C
@@ -150186,7 +150186,7 @@ FUN_0204726C: ; 0x0204726C
bl FUN_020463CC
pop {r4-r6, pc}
nop
-_020472AC: .word FUN_02047220 + 1
+_020472AC: .word FUN_02047220
thumb_func_start FUN_020472B0
FUN_020472B0: ; 0x020472B0
@@ -150217,7 +150217,7 @@ FUN_020472B0: ; 0x020472B0
bl FUN_020463CC
pop {r4-r6, pc}
.balign 4
-_020472F0: .word FUN_02047220 + 1
+_020472F0: .word FUN_02047220
thumb_func_start FUN_020472F4
FUN_020472F4: ; 0x020472F4
@@ -150531,7 +150531,7 @@ FUN_0204755C: ; 0x0204755C
add r4, r1, #0x0
cmp r5, #0x1f
blo _0204756A
- bl FUN_02020C2C
+ bl ErrorHandling
_0204756A:
ldr r0, _02047580 ; =0x020F457C
lsl r1, r5, #0x2
@@ -150553,7 +150553,7 @@ FUN_02047588: ; 0x02047588
add r4, r0, #0x0
cmp r4, #0x1f
blo _02047594
- bl FUN_02020C2C
+ bl ErrorHandling
_02047594:
ldr r0, _0204759C ; =0x020F457E
lsl r1, r4, #0x2
@@ -150759,7 +150759,7 @@ FUN_020476CC: ; 0x020476CC
mov r1, #0x0
lsl r2, r2, #0x2
add r7, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r1, #0x63
str r4, [r7, #0x0]
mov r0, #0x0
@@ -150775,7 +150775,7 @@ _020476FA:
add r1, r4, #0x0
mov r2, #0x34
str r0, [r6, #0x18]
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r0, [sp, #0x0]
add r6, r6, #0x4
add r0, r0, #0x1
@@ -150883,7 +150883,7 @@ _02047774:
add r0, r2, #0x4
add r0, r7, r0
mov r2, #0xc
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r7, #0x0
pop {r3-r7, pc}
@@ -150921,7 +150921,7 @@ FUN_02047814: ; 0x02047814
bl FUN_020238F4
str r0, [sp, #0x10]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
mov r1, #0x1
str r0, [sp, #0x14]
add r0, r6, #0x0
@@ -151063,7 +151063,7 @@ _0204796C:
ldr r0, [r5, #0x4]
cmp r0, #0x0
bne _02047976
- bl FUN_02020C2C
+ bl ErrorHandling
_02047976:
ldr r0, [r5, #0x4]
bl FUN_02016A18
@@ -151079,7 +151079,7 @@ _02047988:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02047996
- bl FUN_02020C2C
+ bl ErrorHandling
_02047996:
add r0, r4, #0x0
add r0, #0xf8
@@ -151097,7 +151097,7 @@ _020479B0:
ldr r0, [r4, r6]
cmp r0, #0x0
bne _020479BA
- bl FUN_02020C2C
+ bl ErrorHandling
_020479BA:
mov r0, #0x46
lsl r0, r0, #0x2
@@ -151135,7 +151135,7 @@ FUN_020479FC: ; 0x020479FC
add r6, r1, #0x0
cmp r4, #0x4
blt _02047A0C
- bl FUN_02020C2C
+ bl ErrorHandling
_02047A0C:
lsl r0, r4, #0x2
add r0, r5, r0
@@ -151144,7 +151144,7 @@ _02047A0C:
bl FUN_0206B900
cmp r0, #0x0
bne _02047A20
- bl FUN_02020C2C
+ bl ErrorHandling
_02047A20:
pop {r4-r6, pc}
.balign 4
@@ -151157,7 +151157,7 @@ FUN_02047A24: ; 0x02047A24
add r6, r1, #0x0
cmp r4, #0x4
blt _02047A34
- bl FUN_02020C2C
+ bl ErrorHandling
_02047A34:
lsl r1, r4, #0x2
add r1, r5, r1
@@ -151175,7 +151175,7 @@ FUN_02047A44: ; 0x02047A44
add r6, r1, #0x0
cmp r4, #0x4
blt _02047A54
- bl FUN_02020C2C
+ bl ErrorHandling
_02047A54:
lsl r1, r4, #0x2
add r1, r5, r1
@@ -151195,7 +151195,7 @@ FUN_02047A64: ; 0x02047A64
ldr r0, [r2, r0]
bx r3
nop
-_02047A74: .word FUN_02029F9C + 1
+_02047A74: .word FUN_02029F9C
thumb_func_start FUN_02047A78
FUN_02047A78: ; 0x02047A78
@@ -151219,7 +151219,7 @@ FUN_02047A78: ; 0x02047A78
bl FUN_02029EF8
str r0, [sp, #0x8]
ldr r0, [r4, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0xc]
ldr r0, [r4, #0xc]
bl FUN_02034E30
@@ -151368,7 +151368,7 @@ FUN_02047BC0: ; 0x02047BC0
str r0, [sp, #0x8]
ldr r0, [sp, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x4]
mov r0, #0x15
mov r1, #0x6
@@ -151535,7 +151535,7 @@ FUN_02047D48: ; 0x02047D48
str r0, [sp, #0x14]
ldr r0, [sp, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x10]
ldr r0, [sp, #0x0]
mov r1, #0x6
@@ -151880,7 +151880,7 @@ _02048054:
ldr r0, [r0, r1]
pop {r3-r5, pc}
_02048060:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0xc
pop {r3-r5, pc}
.balign 4
@@ -152035,7 +152035,7 @@ FUN_02048164: ; 0x02048164
bl FUN_02016998
add r4, r0, #0x0
bne _0204817A
- bl FUN_02020C2C
+ bl ErrorHandling
_0204817A:
add r0, r4, #0x0
mov r1, #0x0
@@ -152099,7 +152099,7 @@ _020481F2:
nop
_02048208: .word 0x020F4628
_0204820C: .word 0x0000019E
-_02048210: .word FUN_02048214 + 1
+_02048210: .word FUN_02048214
thumb_func_start FUN_02048214
FUN_02048214: ; 0x02048214
@@ -152412,8 +152412,8 @@ FUN_02048498: ; 0x02048498
mov r2, #0x0
bx r3
.balign 4
-_020484A0: .word FUN_0204640C + 1
-_020484A4: .word FUN_0204837C + 1
+_020484A0: .word FUN_0204640C
+_020484A4: .word FUN_0204837C
thumb_func_start FUN_020484A8
FUN_020484A8: ; 0x020484A8
@@ -152637,7 +152637,7 @@ _02048666:
mov r0, #0x4
bl FUN_020168D0
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
add sp, #0xc
mov r0, #0x1
pop {r4-r7, pc}
@@ -152726,7 +152726,7 @@ _0204871E:
add sp, #0xc
pop {r4-r7, pc}
.balign 4
-_02048760: .word FUN_020484F8 + 1
+_02048760: .word FUN_020484F8
thumb_func_start FUN_02048764
FUN_02048764: ; 0x02048764
@@ -152789,7 +152789,7 @@ FUN_020487E4: ; 0x020487E4
add r5, r0, #0x0
ldr r0, [r5, #0xc]
add r4, r1, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r6, r0, #0x0
mov r0, #0x1a
mov r1, #0xc7
@@ -152830,7 +152830,7 @@ FUN_02048838: ; 0x02048838
lsr r0, r0, #0x18
bx r3
nop
-_02048844: .word FUN_020546C8 + 1
+_02048844: .word FUN_020546C8
thumb_func_start FUN_02048848
FUN_02048848: ; 0x02048848
@@ -152886,7 +152886,7 @@ _020488B4:
add r0, r7, #0x0
bl FUN_0200A8B8
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
add r0, r4, #0x0
ldr r1, [r4, #0x2c]
@@ -153045,7 +153045,7 @@ FUN_020489DC: ; 0x020489DC
ldr r0, [r4, #0x6c]
cmp r0, #0x5
blt _020489EA
- bl FUN_02020C2C
+ bl ErrorHandling
_020489EA:
ldr r0, [r4, #0x70]
ldr r0, [r0, #0x0]
@@ -153131,7 +153131,7 @@ _02048A82:
bl FUN_0203484C
cmp r6, r0
beq _02048AB4
- bl FUN_02020C2C
+ bl ErrorHandling
b _02048AB4
_02048AA6:
add r0, r7, #0x0
@@ -153246,7 +153246,7 @@ FUN_02048B90: ; 0x02048B90
ldr r0, [r4, #0x58]
cmp r0, #0x0
beq _02048BA2
- bl FUN_02020C2C
+ bl ErrorHandling
_02048BA2:
ldr r0, [r4, #0x1c]
ldr r1, [r4, #0x28]
@@ -153273,7 +153273,7 @@ _02048BD8:
ldr r0, [r4, #0x6c]
cmp r0, #0x5
blt _02048BE2
- bl FUN_02020C2C
+ bl ErrorHandling
_02048BE2:
ldr r0, [r4, #0x6c]
ldr r1, _02048C28 ; =0x020F46E0
@@ -153318,7 +153318,7 @@ FUN_02048C2C: ; 0x02048C2C
ldr r0, [r4, #0x58]
cmp r0, #0x0
bne _02048C3A
- bl FUN_02020C2C
+ bl ErrorHandling
_02048C3A:
mov r0, #0x0
str r0, [r4, #0x58]
@@ -153511,7 +153511,7 @@ FUN_02048D90: ; 0x02048D90
bl FUN_020463CC
pop {r4, pc}
.balign 4
-_02048DA8: .word FUN_02048D34 + 1
+_02048DA8: .word FUN_02048D34
thumb_func_start FUN_02048DAC
FUN_02048DAC: ; 0x02048DAC
@@ -153647,8 +153647,8 @@ FUN_02048EC8: ; 0x02048EC8
ldr r1, _02048ED8 ; =FUN_02048DAC
bx r3
nop
-_02048ED4: .word FUN_020463CC + 1
-_02048ED8: .word FUN_02048DAC + 1
+_02048ED4: .word FUN_020463CC
+_02048ED8: .word FUN_02048DAC
thumb_func_start FUN_02048EDC
FUN_02048EDC: ; 0x02048EDC
@@ -153808,7 +153808,7 @@ _02049000:
pop {r3-r5, pc}
nop
_02049030: .word 0x000001D2
-_02049034: .word FUN_02048EDC + 1
+_02049034: .word FUN_02048EDC
thumb_func_start FUN_02049038
FUN_02049038: ; 0x02049038
@@ -153899,7 +153899,7 @@ FUN_020490C0: ; 0x020490C0
bl FUN_0204640C
pop {r3-r5, pc}
.balign 4
-_020490EC: .word FUN_02049038 + 1
+_020490EC: .word FUN_02049038
thumb_func_start FUN_020490F0
FUN_020490F0: ; 0x020490F0
@@ -153969,7 +153969,7 @@ FUN_02049160: ; 0x02049160
bl FUN_0203739C
cmp r0, #0x0
beq _02049186
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_02049186:
mov r0, #0x0
@@ -153987,7 +153987,7 @@ _02049186:
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_020491A4: .word FUN_020490F0 + 1
+_020491A4: .word FUN_020490F0
thumb_func_start FUN_020491A8
FUN_020491A8: ; 0x020491A8
@@ -154092,7 +154092,7 @@ FUN_02049240: ; 0x02049240
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_02049270: .word FUN_020491C4 + 1
+_02049270: .word FUN_020491C4
thumb_func_start FUN_02049274
FUN_02049274: ; 0x02049274
@@ -154128,7 +154128,7 @@ FUN_02049274: ; 0x02049274
add sp, #0x14
pop {r4-r5, pc}
nop
-_020492B8: .word FUN_02049304 + 1
+_020492B8: .word FUN_02049304
thumb_func_start FUN_020492BC
FUN_020492BC: ; 0x020492BC
@@ -154164,7 +154164,7 @@ FUN_020492BC: ; 0x020492BC
add sp, #0x14
pop {r4-r5, pc}
nop
-_02049300: .word FUN_02049304 + 1
+_02049300: .word FUN_02049304
thumb_func_start FUN_02049304
FUN_02049304: ; 0x02049304
@@ -154243,8 +154243,8 @@ FUN_02049394: ; 0x02049394
mov r2, #0x0
bx r3
.balign 4
-_0204939C: .word FUN_0204640C + 1
-_020493A0: .word FUN_020493A4 + 1
+_0204939C: .word FUN_0204640C
+_020493A0: .word FUN_020493A4
thumb_func_start FUN_020493A4
FUN_020493A4: ; 0x020493A4
@@ -154283,7 +154283,7 @@ FUN_020493D0: ; 0x020493D0
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_020493E4: .word FUN_020493E8 + 1
+_020493E4: .word FUN_020493E8
thumb_func_start FUN_020493E8
FUN_020493E8: ; 0x020493E8
@@ -154336,7 +154336,7 @@ FUN_02049430: ; 0x02049430
bl FUN_0203739C
cmp r0, #0x0
bne _02049452
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_02049452:
ldr r0, [r5, #0x38]
@@ -154351,7 +154351,7 @@ _02049452:
bl FUN_0204640C
pop {r4-r6, pc}
nop
-_02049470: .word FUN_02049474 + 1
+_02049470: .word FUN_02049474
thumb_func_start FUN_02049474
FUN_02049474: ; 0x02049474
@@ -154397,7 +154397,7 @@ FUN_02049494: ; 0x02049494
bl FUN_020463EC
pop {r4-r6, pc}
.balign 4
-_020494C8: .word FUN_020494CC + 1
+_020494C8: .word FUN_020494CC
thumb_func_start FUN_020494CC
FUN_020494CC: ; 0x020494CC
@@ -154466,7 +154466,7 @@ _0204954A:
bl FUN_020637E0
b _0204955A
_02049556:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204955A:
add r0, r7, #0x0
bl FUN_020495B0
@@ -154489,8 +154489,8 @@ FUN_02049574: ; 0x02049574
mov r2, #0x0
bx r3
.balign 4
-_0204957C: .word FUN_0204640C + 1
-_02049580: .word FUN_02049584 + 1
+_0204957C: .word FUN_0204640C
+_02049580: .word FUN_02049584
thumb_func_start FUN_02049584
FUN_02049584: ; 0x02049584
@@ -154529,7 +154529,7 @@ FUN_020495B0: ; 0x020495B0
bl FUN_0204640C
pop {r4, pc}
.balign 4
-_020495C4: .word FUN_020495C8 + 1
+_020495C4: .word FUN_020495C8
thumb_func_start FUN_020495C8
FUN_020495C8: ; 0x020495C8
@@ -154587,7 +154587,7 @@ FUN_0204961C: ; 0x0204961C
bl FUN_0203739C
cmp r0, #0x0
bne _0204963E
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4-r6, pc}
_0204963E:
ldr r2, [r6, #0x4]
@@ -154712,7 +154712,7 @@ FUN_02049718: ; 0x02049718
mov r1, #0x0
mov r2, #0x1c
add r7, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r5, #0x38]
bl FUN_020552F8
mov r1, #0x0
@@ -154737,7 +154737,7 @@ FUN_02049718: ; 0x02049718
add sp, #0x14
pop {r4-r7, pc}
nop
-_02049768: .word FUN_02049658 + 1
+_02049768: .word FUN_02049658
thumb_func_start FUN_0204976C
FUN_0204976C: ; 0x0204976C
@@ -154788,11 +154788,11 @@ _020497A4:
sub r4, r0, #0x6
cmp r6, #0x0
bge _020497D4
- bl FUN_02020C2C
+ bl ErrorHandling
_020497D4:
cmp r4, #0x0
bge _020497DC
- bl FUN_02020C2C
+ bl ErrorHandling
_020497DC:
lsr r2, r6, #0x1f
lsl r1, r6, #0x1f
@@ -154904,13 +154904,13 @@ _02049884:
mov r2, #0x3
bl FUN_020545B8
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x24
bl FUN_02054608
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
add r0, r4, #0x0
ldr r1, [r4, #0x34]
@@ -155300,12 +155300,12 @@ _02049BF4:
ldr r0, _02049C08 ; =FUN_02049ACC
pop {r3, pc}
_02049BFC:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
-_02049C04: .word FUN_02049844 + 1
-_02049C08: .word FUN_02049ACC + 1
+_02049C04: .word FUN_02049844
+_02049C08: .word FUN_02049ACC
thumb_func_start FUN_02049C0C
FUN_02049C0C: ; 0x02049C0C
@@ -155407,7 +155407,7 @@ FUN_02049CB0: ; 0x02049CB0
bl FUN_0203739C
cmp r0, #0x0
beq _02049CD6
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_02049CD6:
mov r0, #0x0
@@ -155425,7 +155425,7 @@ _02049CD6:
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_02049CF4: .word FUN_02049C54 + 1
+_02049CF4: .word FUN_02049C54
thumb_func_start FUN_02049CF8
FUN_02049CF8: ; 0x02049CF8
@@ -155524,7 +155524,7 @@ FUN_02049D9C: ; 0x02049D9C
add r6, r0, #0x0
mov r1, #0x0
mov r2, #0x1c
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r2, r6, #0x0
ldmia r4!, {r0-r1}
add r2, #0x8
@@ -155547,7 +155547,7 @@ FUN_02049D9C: ; 0x02049D9C
str r0, [r5, #0x78]
pop {r4-r6, pc}
nop
-_02049DF0: .word FUN_02049CF8 + 1
+_02049DF0: .word FUN_02049CF8
thumb_func_start FUN_02049DF4
FUN_02049DF4: ; 0x02049DF4
@@ -155655,7 +155655,7 @@ FUN_02049EA4: ; 0x02049EA4
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r7, #0x0
add r1, r5, #0x0
bl FUN_02048CB0
@@ -155684,7 +155684,7 @@ FUN_02049EA4: ; 0x02049EA4
pop {r3-r7, pc}
.balign 4
_02049F08: .word 0x000001D2
-_02049F0C: .word FUN_02049DF4 + 1
+_02049F0C: .word FUN_02049DF4
thumb_func_start FUN_02049F10
FUN_02049F10: ; 0x02049F10
@@ -155796,7 +155796,7 @@ FUN_02049F98: ; 0x02049F98
add sp, #0x18
pop {r3-r7, pc}
nop
-_02049FF8: .word FUN_02049F10 + 1
+_02049FF8: .word FUN_02049F10
thumb_func_start FUN_02049FFC
FUN_02049FFC: ; 0x02049FFC
@@ -156055,7 +156055,7 @@ _0204A1FE:
cmp r4, r5
blt _0204A1E8
_0204A204:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
@@ -156402,7 +156402,7 @@ _0204A478:
_0204A482:
cmp r4, #0x10
blo _0204A48A
- bl FUN_02020C2C
+ bl ErrorHandling
_0204A48A:
lsl r0, r4, #0x1
strh r5, [r6, r0]
@@ -156694,7 +156694,7 @@ _0204A69C:
str r1, [r0, #0x0]
pop {r3, pc}
_0204A6A6:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
_0204A6AC: .word 0x020F4708
@@ -156803,7 +156803,7 @@ _0204A754:
blt _0204A768
cmp r4, #0x0
bne _0204A76A
- bl FUN_02020C2C
+ bl ErrorHandling
b _0204A76A
_0204A768:
mov r4, #0x0
@@ -156941,7 +156941,7 @@ FUN_0204A840: ; 0x0204A840
cmp r7, #0x0
bge _0204A868
_0204A864:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204A868:
lsl r0, r6, #0x10
str r0, [r5, #0x0]
@@ -157281,7 +157281,7 @@ FUN_0204AAD4: ; 0x0204AAD4
add r5, r0, #0x0
add r6, r1, #0x0
str r2, [r4, #0x8]
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r1, r1, #0x10
lsr r1, r1, #0x10
ldr r0, [r4, #0x0]
@@ -157290,7 +157290,7 @@ FUN_0204AAD4: ; 0x0204AAD4
str r0, [r4, #0x0]
add r0, r5, #0x0
add r1, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r0, r0, #0x10
ldr r1, [r4, #0x8]
@@ -157739,7 +157739,7 @@ _0204AE28:
ldr r0, [r4, #0x0]
mov r1, #0x6
add r0, r0, #0x1
- blx FUN_020EBC80
+ blx _s32_div_f
str r1, [r4, #0x0]
_0204AE58:
pop {r4, pc}
@@ -157782,7 +157782,7 @@ _0204AE74:
ldr r0, [r4, #0x0]
mov r1, #0x6
add r0, r0, #0x1
- blx FUN_020EBC80
+ blx _s32_div_f
str r1, [r4, #0x0]
_0204AEA6:
pop {r4, pc}
@@ -157848,7 +157848,7 @@ FUN_0204AEF8: ; 0x0204AEF8
bl FUN_0204640C
pop {r4-r6, pc}
nop
-_0204AF20: .word FUN_0204AEA8 + 1
+_0204AF20: .word FUN_0204AEA8
thumb_func_start FUN_0204AF24
FUN_0204AF24: ; 0x0204AF24
@@ -157873,7 +157873,7 @@ FUN_0204AF3C: ; 0x0204AF3C
bl FUN_0203739C
cmp r0, #0x0
bne _0204AF54
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
_0204AF54:
add r0, r4, #0x0
@@ -157884,7 +157884,7 @@ _0204AF54:
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_0204AF68: .word FUN_0204AF24 + 1
+_0204AF68: .word FUN_0204AF24
thumb_func_start FUN_0204AF6C
FUN_0204AF6C: ; 0x0204AF6C
@@ -157909,7 +157909,7 @@ FUN_0204AF84: ; 0x0204AF84
bl FUN_0203739C
cmp r0, #0x0
beq _0204AF9C
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
_0204AF9C:
add r0, r4, #0x0
@@ -157920,7 +157920,7 @@ _0204AF9C:
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_0204AFB0: .word FUN_0204AF6C + 1
+_0204AFB0: .word FUN_0204AF6C
thumb_func_start FUN_0204AFB4
FUN_0204AFB4: ; 0x0204AFB4
@@ -157944,7 +157944,7 @@ FUN_0204AFC8: ; 0x0204AFC8
bl FUN_0203739C
cmp r0, #0x0
bne _0204AFE2
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
pop {r3-r4, pc}
_0204AFE2:
@@ -157966,7 +157966,7 @@ _0204AFE2:
add sp, #0xc
pop {r3-r4, pc}
.balign 4
-_0204B008: .word FUN_0204AFB4 + 1
+_0204B008: .word FUN_0204AFB4
thumb_func_start FUN_0204B00C
FUN_0204B00C: ; 0x0204B00C
@@ -157977,7 +157977,7 @@ FUN_0204B00C: ; 0x0204B00C
bl FUN_0203739C
cmp r0, #0x0
bne _0204B026
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
pop {r3-r4, pc}
_0204B026:
@@ -157998,7 +157998,7 @@ _0204B026:
add sp, #0xc
pop {r3-r4, pc}
nop
-_0204B04C: .word FUN_0204AFB4 + 1
+_0204B04C: .word FUN_0204AFB4
thumb_func_start FUN_0204B050
FUN_0204B050: ; 0x0204B050
@@ -158043,8 +158043,8 @@ FUN_0204B090: ; 0x0204B090
mov r2, #0x0
bx r3
.balign 4
-_0204B098: .word FUN_0204640C + 1
-_0204B09C: .word FUN_0204B050 + 1
+_0204B098: .word FUN_0204640C
+_0204B09C: .word FUN_0204B050
thumb_func_start FUN_0204B0A0
FUN_0204B0A0: ; 0x0204B0A0
@@ -158091,8 +158091,8 @@ FUN_0204B0E8: ; 0x0204B0E8
mov r2, #0x0
bx r3
.balign 4
-_0204B0F0: .word FUN_0204640C + 1
-_0204B0F4: .word FUN_0204B0A0 + 1
+_0204B0F0: .word FUN_0204640C
+_0204B0F4: .word FUN_0204B0A0
thumb_func_start FUN_0204B0F8
FUN_0204B0F8: ; 0x0204B0F8
@@ -158449,7 +158449,7 @@ FUN_0204B388: ; 0x0204B388
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x64
- blx FUN_020CE34C
+ blx MI_CpuFill8
str r6, [r4, #0x0]
add r0, r6, #0x0
bl FUN_02025128
@@ -158905,7 +158905,7 @@ _0204B73A:
add r4, r4, #0x1
b _0204B746
_0204B742:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204B746:
add r0, r7, #0x0
add r1, r6, #0x0
@@ -158977,7 +158977,7 @@ _0204B7C0:
add r4, r4, #0x1
b _0204B7CC
_0204B7C8:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204B7CC:
ldr r0, [r5, #0x34]
add r1, r7, #0x0
@@ -159230,7 +159230,7 @@ FUN_0204B9A0: ; 0x0204B9A0
bl FUN_0204640C
pop {r3-r5, pc}
.balign 4
-_0204B9C8: .word FUN_0204B818 + 1
+_0204B9C8: .word FUN_0204B818
thumb_func_start FUN_0204B9CC
FUN_0204B9CC: ; 0x0204B9CC
@@ -159254,7 +159254,7 @@ FUN_0204B9EC: ; 0x0204B9EC
add r4, r0, #0x0
mov r0, #0x0
mov r2, #0x4c
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r1, _0204BA14 ; =0x021C5A1C
add r0, r4, #0x0
bl FUN_0204BB20
@@ -159334,7 +159334,7 @@ FUN_0204BA90: ; 0x0204BA90
ldr r1, _0204BA9C ; =0x021C5A1C
bx r3
nop
-_0204BA98: .word FUN_0204BD40 + 1
+_0204BA98: .word FUN_0204BD40
_0204BA9C: .word 0x021C5A1C
thumb_func_start FUN_0204BAA0
@@ -159343,7 +159343,7 @@ FUN_0204BAA0: ; 0x0204BAA0
ldr r2, _0204BAAC ; =0x021C5A1C
bx r3
nop
-_0204BAA8: .word FUN_0204BD18 + 1
+_0204BAA8: .word FUN_0204BD18
_0204BAAC: .word 0x021C5A1C
thumb_func_start FUN_0204BAB0
@@ -159363,7 +159363,7 @@ FUN_0204BAC4: ; 0x0204BAC4
ldr r0, _0204BAD0 ; =0x021C5A1C
bx r3
nop
-_0204BACC: .word FUN_0204BD8C + 1
+_0204BACC: .word FUN_0204BD8C
_0204BAD0: .word 0x021C5A1C
thumb_func_start FUN_0204BAD4
@@ -159381,7 +159381,7 @@ FUN_0204BAE4: ; 0x0204BAE4
ldr r0, _0204BAF0 ; =0x021C5A1C
bx r3
nop
-_0204BAEC: .word FUN_0204BDA0 + 1
+_0204BAEC: .word FUN_0204BDA0
_0204BAF0: .word 0x021C5A1C
thumb_func_start FUN_0204BAF4
@@ -159395,7 +159395,7 @@ FUN_0204BAF4: ; 0x0204BAF4
cmp r5, r0
bls _0204BB08
_0204BB04:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BB08:
mov r3, #0x6
add r0, r4, #0x0
@@ -159500,12 +159500,12 @@ FUN_0204BBC4: ; 0x0204BBC4
add r4, r0, #0x0
bl FUN_0201B9EC
ldr r1, _0204BBE4 ; =0x0000199A
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
cmp r5, #0xa
blo _0204BBDE
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BBDE:
add r0, r5, #0x5
str r0, [r4, #0x38]
@@ -159611,7 +159611,7 @@ _0204BC86:
lsl r0, r0, #0x10
lsr r0, r0, #0x10
bne _0204BC94
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BC94:
add r0, r6, #0x0
add r0, #0x14
@@ -159629,13 +159629,13 @@ _0204BCA4:
lsl r1, r1, #0x10
ldr r0, _0204BD14 ; =0x0000FFFF
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r4, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
add r6, #0x14
lsr r4, r0, #0x10
@@ -159643,7 +159643,7 @@ _0204BCA4:
lsr r0, r0, #0x10
cmp r4, r0
blo _0204BCD8
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BCD8:
cmp r4, #0x14
bge _0204BCE0
@@ -159675,7 +159675,7 @@ _0204BD04:
add r0, #0x8
cmp r1, #0x6
blt _0204BCE6
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -159701,7 +159701,7 @@ _0204BD28:
strb r1, [r0, #0x0]
pop {r4, pc}
_0204BD3A:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BD3E:
pop {r4, pc}
@@ -159947,7 +159947,7 @@ FUN_0204BED8: ; 0x0204BED8
cmp r4, #0x19
blt _0204BEE8
_0204BEE4:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BEE8:
mov r0, #0x1
ldrsb r1, [r5, r0]
@@ -160012,7 +160012,7 @@ FUN_0204BF44: ; 0x0204BF44
push {r4, lr}
add r4, r0, #0x0
bne _0204BF4E
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BF4E:
ldrb r0, [r4, #0x0]
lsl r0, r0, #0x1a
@@ -160027,11 +160027,11 @@ FUN_0204BF58: ; 0x0204BF58
add r4, r1, #0x0
cmp r5, #0x0
bne _0204BF66
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BF66:
cmp r4, #0x8
blo _0204BF6E
- bl FUN_02020C2C
+ bl ErrorHandling
_0204BF6E:
ldrb r1, [r5, #0x0]
mov r0, #0x38
@@ -160208,7 +160208,7 @@ FUN_0204C080: ; 0x0204C080
add r7, r3, #0x0
cmp r4, #0x6
blt _0204C092
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C092:
lsl r1, r4, #0x1
add r0, r5, r1
@@ -160229,7 +160229,7 @@ FUN_0204C0A4: ; 0x0204C0A4
add r7, r3, #0x0
cmp r4, #0x6
blt _0204C0B6
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C0B6:
lsl r1, r4, #0x1
add r0, r5, r1
@@ -160259,7 +160259,7 @@ FUN_0204C0D4: ; 0x0204C0D4
beq _0204C0E6
add r0, #0x2a
mov r2, #0x78
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_0204C0E6:
pop {r3, pc}
@@ -160271,7 +160271,7 @@ FUN_0204C0E8: ; 0x0204C0E8
add r1, r4, #0x0
add r1, #0x2a
mov r2, #0x78
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldrb r1, [r4, #0x0]
mov r0, #0x4
orr r0, r1
@@ -160351,7 +160351,7 @@ FUN_0204C174: ; 0x0204C174
str r3, [sp, #0x0]
cmp r4, #0xc
blt _0204C186
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C186:
add r6, r5, #0x0
lsl r4, r4, #0x2
@@ -160359,7 +160359,7 @@ _0204C186:
ldrh r0, [r6, r4]
cmp r0, #0x0
bne _0204C196
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C196:
ldrh r0, [r6, r4]
str r0, [r7, #0x0]
@@ -160377,7 +160377,7 @@ FUN_0204C1A8: ; 0x0204C1A8
mov r1, #0x5
bx r3
nop
-_0204C1B0: .word FUN_02022610 + 1
+_0204C1B0: .word FUN_02022610
thumb_func_start FUN_0204C1B4
FUN_0204C1B4: ; 0x0204C1B4
@@ -160409,7 +160409,7 @@ FUN_0204C1B4: ; 0x0204C1B4
bl FUN_0204640C
pop {r3-r7, pc}
nop
-_0204C1F0: .word FUN_0204C1F4 + 1
+_0204C1F0: .word FUN_0204C1F4
thumb_func_start FUN_0204C1F4
FUN_0204C1F4: ; 0x0204C1F4
@@ -160492,7 +160492,7 @@ FUN_0204C260: ; 0x0204C260
bl FUN_020463CC
pop {r3-r7, pc}
nop
-_0204C298: .word FUN_0204C380 + 1
+_0204C298: .word FUN_0204C380
thumb_func_start FUN_0204C29C
FUN_0204C29C: ; 0x0204C29C
@@ -160545,7 +160545,7 @@ _0204C2F4:
mov r4, #0x6
b _0204C36A
_0204C302:
- bl FUN_02020C2C
+ bl ErrorHandling
b _0204C36A
_0204C308:
ldr r0, [sp, #0x8]
@@ -160566,7 +160566,7 @@ _0204C320:
mov r4, #0x6
b _0204C36A
_0204C32E:
- bl FUN_02020C2C
+ bl ErrorHandling
b _0204C36A
_0204C334:
ldr r0, [sp, #0x8]
@@ -160588,10 +160588,10 @@ _0204C356:
bl FUN_02034930
cmp r0, #0x0
bne _0204C36A
- bl FUN_02020C2C
+ bl ErrorHandling
b _0204C36A
_0204C366:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C36A:
ldr r1, _0204C37C ; =FUN_0204C380
add r0, r7, #0x0
@@ -160601,7 +160601,7 @@ _0204C36A:
add sp, #0xc
pop {r4-r7, pc}
nop
-_0204C37C: .word FUN_0204C380 + 1
+_0204C37C: .word FUN_0204C380
thumb_func_start FUN_0204C380
FUN_0204C380: ; 0x0204C380
@@ -160915,7 +160915,7 @@ _0204C5E6:
bl FUN_0205ADDC
b _0204C5F6
_0204C5F2:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C5F6:
ldr r0, [r4, #0x4]
add r0, r0, #0x1
@@ -161179,7 +161179,7 @@ _0204C818:
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
-_0204C81C: .word FUN_0204C6D4 + 1
+_0204C81C: .word FUN_0204C6D4
_0204C820: .word 0x021DB381
thumb_func_start FUN_0204C824
@@ -161285,7 +161285,7 @@ _0204C8EA:
bl FUN_0205ADDC
b _0204C8FC
_0204C8F8:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204C8FC:
ldr r0, [r4, #0x4]
add r0, r0, #0x1
@@ -161589,7 +161589,7 @@ _0204CB32:
str r0, [r1, #0x0]
mov r1, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
_0204CB40:
ldr r1, _0204CC34 ; =0x021C5A68
ldr r0, _0204CC38 ; =0x000002BE
@@ -161714,7 +161714,7 @@ _0204CC34: .word 0x021C5A68
_0204CC38: .word 0x000002BE
_0204CC3C: .word 0x0000FFFF
_0204CC40: .word 0x00000102
-_0204CC44: .word FUN_0204D4F0 + 1
+_0204CC44: .word FUN_0204D4F0
thumb_func_start FUN_0204CC48
FUN_0204CC48: ; 0x0204CC48
@@ -161892,7 +161892,7 @@ FUN_0204CD78: ; 0x0204CD78
bl FUN_02064520
b _0204CDA2
_0204CD9E:
- bl FUN_02020C2C
+ bl ErrorHandling
_0204CDA2:
ldr r0, _0204CDB0 ; =0x021C5A68
mov r1, #0x0
@@ -162057,7 +162057,7 @@ _0204CEE4: .word 0x0000010A
_0204CEE8: .word 0x0000013A
_0204CEEC: .word 0x00000142
_0204CEF0: .word 0x000002BF
-_0204CEF4: .word FUN_0204D4F0 + 1
+_0204CEF4: .word FUN_0204D4F0
thumb_func_start FUN_0204CEF8
FUN_0204CEF8: ; 0x0204CEF8
@@ -162661,7 +162661,7 @@ _0204D37C:
bl FUN_02055068
add r7, r0, #0x0
bne _0204D3B2
- bl FUN_02020C2C
+ bl ErrorHandling
_0204D3B2:
ldr r0, _0204D430 ; =0x021C5A68
ldr r0, [r0, #0x0]
@@ -162743,7 +162743,7 @@ FUN_0204D43C: ; 0x0204D43C
add r0, #0x5a
mov r1, #0x0
mov r2, #0x8
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
bl FUN_0204CD78
ldr r0, _0204D4CC ; =0x021C5A68
@@ -162822,7 +162822,7 @@ _0204D4E4:
bx r3
.balign 4
_0204D4E8: .word 0x021C48B8
-_0204D4EC: .word FUN_02030F60 + 1
+_0204D4EC: .word FUN_02030F60
thumb_func_start FUN_0204D4F0
FUN_0204D4F0: ; 0x0204D4F0
@@ -163035,11 +163035,11 @@ FUN_0204D67C: ; 0x0204D67C
beq _0204D6B8
cmp r1, #0x1
beq _0204D692
- bl FUN_02020C2C
+ bl ErrorHandling
_0204D692:
cmp r5, #0x8
blt _0204D69A
- bl FUN_02020C2C
+ bl ErrorHandling
_0204D69A:
ldrb r0, [r4, #0x0]
mov r1, #0x1
@@ -163051,7 +163051,7 @@ _0204D69A:
_0204D6A8:
cmp r1, #0x0
bne _0204D6B0
- bl FUN_02020C2C
+ bl ErrorHandling
_0204D6B0:
ldrb r1, [r4, #0x0]
add r0, r5, #0x0
@@ -163305,7 +163305,7 @@ FUN_0204D870: ; 0x0204D870
cmp r4, #0x5
str r0, [r2, #0x0]
blt _0204D88E
- bl FUN_02020C2C
+ bl ErrorHandling
_0204D88E:
lsl r1, r4, #0x2
add r0, sp, #0x0
@@ -163712,7 +163712,7 @@ _0204DB5A:
bl FUN_0204A6B4
cmp r0, #0x0
beq _0204DBBC
- bl FUN_02020C2C
+ bl ErrorHandling
_0204DBBC:
pop {r3-r7, pc}
nop
@@ -164617,14 +164617,14 @@ FUN_0204E2AC: ; 0x0204E2AC
ldr r3, _0204E2B0 ; =FUN_0204F7FC
bx r3
.balign 4
-_0204E2B0: .word FUN_0204F7FC + 1
+_0204E2B0: .word FUN_0204F7FC
thumb_func_start FUN_0204E2B4
FUN_0204E2B4: ; 0x0204E2B4
ldr r3, _0204E2B8 ; =FUN_0204F7FC
bx r3
.balign 4
-_0204E2B8: .word FUN_0204F7FC + 1
+_0204E2B8: .word FUN_0204F7FC
thumb_func_start FUN_0204E2BC
FUN_0204E2BC: ; 0x0204E2BC
@@ -164632,7 +164632,7 @@ FUN_0204E2BC: ; 0x0204E2BC
mov r0, #0x2
bx r3
nop
-_0204E2C4: .word FUN_0204F774 + 1
+_0204E2C4: .word FUN_0204F774
thumb_func_start FUN_0204E2C8
FUN_0204E2C8: ; 0x0204E2C8
@@ -164640,7 +164640,7 @@ FUN_0204E2C8: ; 0x0204E2C8
mov r0, #0x20
bx r3
nop
-_0204E2D0: .word FUN_0204F774 + 1
+_0204E2D0: .word FUN_0204F774
thumb_func_start FUN_0204E2D4
FUN_0204E2D4: ; 0x0204E2D4
@@ -164648,7 +164648,7 @@ FUN_0204E2D4: ; 0x0204E2D4
mov r0, #0x1
bx r3
nop
-_0204E2DC: .word FUN_0204F774 + 1
+_0204E2DC: .word FUN_0204F774
thumb_func_start FUN_0204E2E0
FUN_0204E2E0: ; 0x0204E2E0
@@ -165540,7 +165540,7 @@ _0204E962:
pop {r4, pc}
.balign 4
_0204E964: .word 0x021C5A68
-_0204E968: .word FUN_0204D308 + 1
+_0204E968: .word FUN_0204D308
thumb_func_start FUN_0204E96C
FUN_0204E96C: ; 0x0204E96C
@@ -165555,7 +165555,7 @@ FUN_0204E96C: ; 0x0204E96C
ldrb r0, [r5, #0x1]
cmp r0, #0x8
blo _0204E988
- bl FUN_02020C2C
+ bl ErrorHandling
_0204E988:
ldrb r0, [r5, #0x0]
cmp r0, #0x4
@@ -165706,8 +165706,8 @@ _0204EACA:
pop {r4-r6, pc}
.balign 4
_0204EACC: .word 0x021C5A68
-_0204EAD0: .word FUN_0204E2AC + 1
-_0204EAD4: .word FUN_0204D308 + 1
+_0204EAD0: .word FUN_0204E2AC
+_0204EAD4: .word FUN_0204D308
thumb_func_start FUN_0204EAD8
FUN_0204EAD8: ; 0x0204EAD8
@@ -166475,7 +166475,7 @@ _0204F09C:
bx r3
.balign 4
_0204F0A0: .word 0x021C5A68
-_0204F0A4: .word FUN_0204CD78 + 1
+_0204F0A4: .word FUN_0204CD78
thumb_func_start FUN_0204F0A8
FUN_0204F0A8: ; 0x0204F0A8
@@ -166492,7 +166492,7 @@ _0204F0B8:
bx r3
.balign 4
_0204F0BC: .word 0x021C5A68
-_0204F0C0: .word FUN_0204CD78 + 1
+_0204F0C0: .word FUN_0204CD78
thumb_func_start FUN_0204F0C4
FUN_0204F0C4: ; 0x0204F0C4
@@ -166613,7 +166613,7 @@ FUN_0204F178: ; 0x0204F178
pop {r4, pc}
.balign 4
_0204F1A8: .word 0x021C5A68
-_0204F1AC: .word FUN_0204F124 + 1
+_0204F1AC: .word FUN_0204F124
thumb_func_start FUN_0204F1B0
FUN_0204F1B0: ; 0x0204F1B0
@@ -166749,7 +166749,7 @@ _0204F2AA:
pop {r4-r6, pc}
nop
_0204F2C8: .word 0x021C5A68
-_0204F2CC: .word FUN_0204F108 + 1
+_0204F2CC: .word FUN_0204F108
_0204F2D0: .word 0x00000424
_0204F2D4: .word 0x000005F6
@@ -167102,14 +167102,14 @@ _0204F5DA:
pop {r4-r5, pc}
nop
_0204F5E0: .word 0x021C5A68
-_0204F5E4: .word FUN_0204E2B4 + 1
+_0204F5E4: .word FUN_0204E2B4
_0204F5E8: .word 0x00000424
-_0204F5EC: .word FUN_0204E2AC + 1
+_0204F5EC: .word FUN_0204E2AC
_0204F5F0: .word 0x00000625
-_0204F5F4: .word FUN_0204E2D4 + 1
+_0204F5F4: .word FUN_0204E2D4
_0204F5F8: .word 0x00000425
-_0204F5FC: .word FUN_0204E2BC + 1
-_0204F600: .word FUN_0204E2C8 + 1
+_0204F5FC: .word FUN_0204E2BC
+_0204F600: .word FUN_0204E2C8
_0204F604: .word 0x0000FFFF
_0204F608: .word 0x000002B2
_0204F60C: .word 0x0000062B
@@ -167137,7 +167137,7 @@ _0204F62A:
mov r0, #0x2
pop {r3, pc}
_0204F632:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x2
pop {r3, pc}
.balign 4
@@ -167584,11 +167584,11 @@ _0204F96E:
add r5, r0, #0x0
cmp r4, #0x0
bne _0204F988
- bl FUN_02020C2C
+ bl ErrorHandling
_0204F988:
cmp r5, #0x0
bne _0204F990
- bl FUN_02020C2C
+ bl ErrorHandling
_0204F990:
add r0, r4, #0x0
add r1, r5, #0x0
@@ -167682,7 +167682,7 @@ _0204FA26:
strb r2, [r1, r0]
pop {r3-r7, pc}
_0204FA4C:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x8
pop {r3-r7, pc}
.balign 4
@@ -167889,7 +167889,7 @@ FUN_0204FBB0: ; 0x0204FBB0
mov r2, #0x48
str r0, [r1, #0x0]
mov r1, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _0204FC08 ; =0x021C5A6C
mov r1, #0x32
ldr r0, [r0, #0x0]
@@ -167915,7 +167915,7 @@ _0204FC04:
pop {r4, pc}
nop
_0204FC08: .word 0x021C5A6C
-_0204FC0C: .word FUN_0205006C + 1
+_0204FC0C: .word FUN_0205006C
thumb_func_start FUN_0204FC10
FUN_0204FC10: ; 0x0204FC10
@@ -168013,7 +168013,7 @@ FUN_0204FCA0: ; 0x0204FCA0
pop {r3, pc}
.balign 4
_0204FCD0: .word 0x021C5A6C
-_0204FCD4: .word FUN_020500A4 + 1
+_0204FCD4: .word FUN_020500A4
thumb_func_start FUN_0204FCD8
FUN_0204FCD8: ; 0x0204FCD8
@@ -168029,7 +168029,7 @@ _0204FCEA:
pop {r3, pc}
.balign 4
_0204FCEC: .word 0x021C5A6C
-_0204FCF0: .word FUN_02050D54 + 1
+_0204FCF0: .word FUN_02050D54
thumb_func_start FUN_0204FCF4
FUN_0204FCF4: ; 0x0204FCF4
@@ -168040,7 +168040,7 @@ FUN_0204FCF4: ; 0x0204FCF4
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0204FD04: .word FUN_020504D8 + 1
+_0204FD04: .word FUN_020504D8
thumb_func_start FUN_0204FD08
FUN_0204FD08: ; 0x0204FD08
@@ -168055,7 +168055,7 @@ FUN_0204FD08: ; 0x0204FD08
_0204FD1E:
pop {r3, pc}
.balign 4
-_0204FD20: .word FUN_020500A4 + 1
+_0204FD20: .word FUN_020500A4
thumb_func_start FUN_0204FD24
FUN_0204FD24: ; 0x0204FD24
@@ -168066,7 +168066,7 @@ FUN_0204FD24: ; 0x0204FD24
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0204FD34: .word FUN_0204FD08 + 1
+_0204FD34: .word FUN_0204FD08
thumb_func_start FUN_0204FD38
FUN_0204FD38: ; 0x0204FD38
@@ -168141,14 +168141,14 @@ _0204FDAE:
.balign 4
_0204FDBC: .word 0x021C5A6C
_0204FDC0: .word 0x020F5838
-_0204FDC4: .word FUN_020502AC + 1
-_0204FDC8: .word FUN_02050548 + 1
-_0204FDCC: .word FUN_02050168 + 1
-_0204FDD0: .word FUN_0205031C + 1
-_0204FDD4: .word FUN_02050578 + 1
-_0204FDD8: .word FUN_020505E0 + 1
-_0204FDDC: .word FUN_020504D0 + 1
-_0204FDE0: .word FUN_02050610 + 1
+_0204FDC4: .word FUN_020502AC
+_0204FDC8: .word FUN_02050548
+_0204FDCC: .word FUN_02050168
+_0204FDD0: .word FUN_0205031C
+_0204FDD4: .word FUN_02050578
+_0204FDD8: .word FUN_020505E0
+_0204FDDC: .word FUN_020504D0
+_0204FDE0: .word FUN_02050610
thumb_func_start FUN_0204FDE4
FUN_0204FDE4: ; 0x0204FDE4
@@ -168196,14 +168196,14 @@ _0204FE34:
pop {r4, pc}
.balign 4
_0204FE38: .word 0x021C5A6C
-_0204FE3C: .word FUN_0205058C + 1
-_0204FE40: .word FUN_020505F4 + 1
-_0204FE44: .word FUN_02050330 + 1
-_0204FE48: .word FUN_02050624 + 1
-_0204FE4C: .word FUN_02050338 + 1
-_0204FE50: .word FUN_02050594 + 1
-_0204FE54: .word FUN_020505F8 + 1
-_0204FE58: .word FUN_02050628 + 1
+_0204FE3C: .word FUN_0205058C
+_0204FE40: .word FUN_020505F4
+_0204FE44: .word FUN_02050330
+_0204FE48: .word FUN_02050624
+_0204FE4C: .word FUN_02050338
+_0204FE50: .word FUN_02050594
+_0204FE54: .word FUN_020505F8
+_0204FE58: .word FUN_02050628
thumb_func_start FUN_0204FE5C
FUN_0204FE5C: ; 0x0204FE5C
@@ -168282,7 +168282,7 @@ _0204FEE8:
add sp, #0x4
pop {r3-r6, pc}
.balign 4
-_0204FEEC: .word FUN_02050640 + 1
+_0204FEEC: .word FUN_02050640
thumb_func_start FUN_0204FEF0
FUN_0204FEF0: ; 0x0204FEF0
@@ -168313,7 +168313,7 @@ _0204FF28:
add sp, #0x4
pop {r3-r6, pc}
.balign 4
-_0204FF2C: .word FUN_02050668 + 1
+_0204FF2C: .word FUN_02050668
thumb_func_start FUN_0204FF30
FUN_0204FF30: ; 0x0204FF30
@@ -168327,8 +168327,8 @@ FUN_0204FF30: ; 0x0204FF30
bx r3
.balign 4
_0204FF40: .word 0x021C5A6C
-_0204FF44: .word FUN_02050094 + 1
-_0204FF48: .word FUN_02050688 + 1
+_0204FF44: .word FUN_02050094
+_0204FF48: .word FUN_02050688
thumb_func_start FUN_0204FF4C
FUN_0204FF4C: ; 0x0204FF4C
@@ -168337,8 +168337,8 @@ FUN_0204FF4C: ; 0x0204FF4C
mov r1, #0x0
bx r3
.balign 4
-_0204FF54: .word FUN_02050094 + 1
-_0204FF58: .word FUN_02050BBC + 1
+_0204FF54: .word FUN_02050094
+_0204FF58: .word FUN_02050BBC
thumb_func_start FUN_0204FF5C
FUN_0204FF5C: ; 0x0204FF5C
@@ -168431,7 +168431,7 @@ _02050014:
.balign 4
_02050018: .word 0x021C5A6C
_0205001C: .word 0x0000066C
-_02050020: .word FUN_02050C14 + 1
+_02050020: .word FUN_02050C14
thumb_func_start FUN_02050024
FUN_02050024: ; 0x02050024
@@ -168450,7 +168450,7 @@ _0205003E:
pop {r3, pc}
.balign 4
_02050040: .word 0x021C5A6C
-_02050044: .word FUN_02050DB0 + 1
+_02050044: .word FUN_02050DB0
thumb_func_start FUN_02050048
FUN_02050048: ; 0x02050048
@@ -168468,7 +168468,7 @@ _02050060:
pop {r3, pc}
nop
_02050064: .word 0x021C5A6C
-_02050068: .word FUN_02050D88 + 1
+_02050068: .word FUN_02050D88
thumb_func_start FUN_0205006C
FUN_0205006C: ; 0x0205006C
@@ -168549,8 +168549,8 @@ _02050104:
pop {r3, pc}
nop
_02050108: .word 0x021C5A6C
-_0205010C: .word FUN_02050114 + 1
-_02050110: .word FUN_02050144 + 1
+_0205010C: .word FUN_02050114
+_02050110: .word FUN_02050144
thumb_func_start FUN_02050114
FUN_02050114: ; 0x02050114
@@ -168572,7 +168572,7 @@ _0205013A:
pop {r3, pc}
.balign 4
_0205013C: .word 0x021C5A6C
-_02050140: .word FUN_02050168 + 1
+_02050140: .word FUN_02050168
thumb_func_start FUN_02050144
FUN_02050144: ; 0x02050144
@@ -168592,7 +168592,7 @@ _02050156:
pop {r3, pc}
.balign 4
_02050160: .word 0x021C5A6C
-_02050164: .word FUN_02050168 + 1
+_02050164: .word FUN_02050168
thumb_func_start FUN_02050168
FUN_02050168: ; 0x02050168
@@ -168617,8 +168617,8 @@ _02050190:
_02050198:
pop {r3, pc}
nop
-_0205019C: .word FUN_0205024C + 1
-_020501A0: .word FUN_020501A4 + 1
+_0205019C: .word FUN_0205024C
+_020501A0: .word FUN_020501A4
thumb_func_start FUN_020501A4
FUN_020501A4: ; 0x020501A4
@@ -168691,8 +168691,8 @@ _0205023C:
pop {r3, pc}
nop
_02050240: .word 0x021C5A6C
-_02050244: .word FUN_020504A4 + 1
-_02050248: .word FUN_02050350 + 1
+_02050244: .word FUN_020504A4
+_02050248: .word FUN_02050350
thumb_func_start FUN_0205024C
FUN_0205024C: ; 0x0205024C
@@ -168735,7 +168735,7 @@ _0205029E:
.balign 4
_020502A0: .word 0x021C5A6C
_020502A4: .word 0x02105E74
-_020502A8: .word FUN_020502AC + 1
+_020502A8: .word FUN_020502AC
thumb_func_start FUN_020502AC
FUN_020502AC: ; 0x020502AC
@@ -168779,7 +168779,7 @@ _02050310:
pop {r3, pc}
nop
_02050314: .word 0x021C5A6C
-_02050318: .word FUN_02050458 + 1
+_02050318: .word FUN_02050458
thumb_func_start FUN_0205031C
FUN_0205031C: ; 0x0205031C
@@ -168790,7 +168790,7 @@ FUN_0205031C: ; 0x0205031C
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0205032C: .word FUN_02050330 + 1
+_0205032C: .word FUN_02050330
thumb_func_start FUN_02050330
FUN_02050330: ; 0x02050330
@@ -168809,7 +168809,7 @@ FUN_02050338: ; 0x02050338
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0205034C: .word FUN_020502AC + 1
+_0205034C: .word FUN_020502AC
thumb_func_start FUN_02050350
FUN_02050350: ; 0x02050350
@@ -168855,7 +168855,7 @@ _020503A0:
nop
_020503A8: .word 0x021C5A6C
_020503AC: .word 0x02105E80
-_020503B0: .word FUN_020503B4 + 1
+_020503B0: .word FUN_020503B4
thumb_func_start FUN_020503B4
FUN_020503B4: ; 0x020503B4
@@ -168882,7 +168882,7 @@ _020503E0:
bl FUN_02050510
pop {r3, pc}
nop
-_020503E8: .word FUN_020503F0 + 1
+_020503E8: .word FUN_020503F0
_020503EC: .word 0x021C5A6C
thumb_func_start FUN_020503F0
@@ -168904,7 +168904,7 @@ _02050412:
pop {r3, pc}
.balign 4
_02050418: .word 0x02105E94
-_0205041C: .word FUN_02050420 + 1
+_0205041C: .word FUN_02050420
thumb_func_start FUN_02050420
FUN_02050420: ; 0x02050420
@@ -168928,7 +168928,7 @@ _0205044A:
pop {r3, pc}
.balign 4
_02050450: .word 0x02105EB0
-_02050454: .word FUN_02050548 + 1
+_02050454: .word FUN_02050548
thumb_func_start FUN_02050458
FUN_02050458: ; 0x02050458
@@ -168945,7 +168945,7 @@ FUN_02050458: ; 0x02050458
_02050472:
pop {r3, pc}
.balign 4
-_02050474: .word FUN_02050478 + 1
+_02050474: .word FUN_02050478
thumb_func_start FUN_02050478
FUN_02050478: ; 0x02050478
@@ -168969,7 +168969,7 @@ _0205049A:
pop {r3, pc}
.balign 4
_0205049C: .word 0x021C5A6C
-_020504A0: .word FUN_020500A4 + 1
+_020504A0: .word FUN_020500A4
thumb_func_start FUN_020504A4
FUN_020504A4: ; 0x020504A4
@@ -168993,7 +168993,7 @@ _020504C6:
pop {r3, pc}
.balign 4
_020504C8: .word 0x021C5A6C
-_020504CC: .word FUN_020500A4 + 1
+_020504CC: .word FUN_020500A4
thumb_func_start FUN_020504D0
FUN_020504D0: ; 0x020504D0
@@ -169024,7 +169024,7 @@ _02050506:
pop {r3, pc}
.balign 4
_02050508: .word 0x021C5A6C
-_0205050C: .word FUN_020504D0 + 1
+_0205050C: .word FUN_020504D0
thumb_func_start FUN_02050510
FUN_02050510: ; 0x02050510
@@ -169045,7 +169045,7 @@ FUN_02050510: ; 0x02050510
bl FUN_02050094
pop {r3, pc}
.balign 4
-_02050544: .word FUN_020504A4 + 1
+_02050544: .word FUN_020504A4
thumb_func_start FUN_02050548
FUN_02050548: ; 0x02050548
@@ -169080,7 +169080,7 @@ FUN_02050578: ; 0x02050578
bl FUN_02050094
pop {r3, pc}
.balign 4
-_02050588: .word FUN_0205058C + 1
+_02050588: .word FUN_0205058C
thumb_func_start FUN_0205058C
FUN_0205058C: ; 0x0205058C
@@ -169116,8 +169116,8 @@ _020505CC:
bl FUN_02050094
pop {r3, pc}
nop
-_020505D8: .word FUN_020504A4 + 1
-_020505DC: .word FUN_02050548 + 1
+_020505D8: .word FUN_020504A4
+_020505DC: .word FUN_02050548
thumb_func_start FUN_020505E0
FUN_020505E0: ; 0x020505E0
@@ -169128,7 +169128,7 @@ FUN_020505E0: ; 0x020505E0
bl FUN_02050094
pop {r3, pc}
.balign 4
-_020505F0: .word FUN_020505F4 + 1
+_020505F0: .word FUN_020505F4
thumb_func_start FUN_020505F4
FUN_020505F4: ; 0x020505F4
@@ -169145,7 +169145,7 @@ FUN_020505F8: ; 0x020505F8
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0205060C: .word FUN_02050168 + 1
+_0205060C: .word FUN_02050168
thumb_func_start FUN_02050610
FUN_02050610: ; 0x02050610
@@ -169156,7 +169156,7 @@ FUN_02050610: ; 0x02050610
bl FUN_02050094
pop {r3, pc}
.balign 4
-_02050620: .word FUN_02050624 + 1
+_02050620: .word FUN_02050624
thumb_func_start FUN_02050624
FUN_02050624: ; 0x02050624
@@ -169173,7 +169173,7 @@ FUN_02050628: ; 0x02050628
bl FUN_02050094
pop {r3, pc}
.balign 4
-_0205063C: .word FUN_020504D0 + 1
+_0205063C: .word FUN_020504D0
thumb_func_start FUN_02050640
FUN_02050640: ; 0x02050640
@@ -169190,7 +169190,7 @@ FUN_02050640: ; 0x02050640
_0205065E:
pop {r3, pc}
.balign 4
-_02050660: .word FUN_02050664 + 1
+_02050660: .word FUN_02050664
thumb_func_start FUN_02050664
FUN_02050664: ; 0x02050664
@@ -169210,7 +169210,7 @@ FUN_02050668: ; 0x02050668
_0205067E:
pop {r3, pc}
.balign 4
-_02050680: .word FUN_02050684 + 1
+_02050680: .word FUN_02050684
thumb_func_start FUN_02050684
FUN_02050684: ; 0x02050684
@@ -169231,7 +169231,7 @@ FUN_02050688: ; 0x02050688
pop {r3, pc}
.balign 4
_020506A0: .word 0x021C5A6C
-_020506A4: .word FUN_020506A8 + 1
+_020506A4: .word FUN_020506A8
thumb_func_start FUN_020506A8
FUN_020506A8: ; 0x020506A8
@@ -169246,7 +169246,7 @@ FUN_020506A8: ; 0x020506A8
_020506BE:
pop {r3, pc}
.balign 4
-_020506C0: .word FUN_020506C4 + 1
+_020506C0: .word FUN_020506C4
thumb_func_start FUN_020506C4
FUN_020506C4: ; 0x020506C4
@@ -169294,7 +169294,7 @@ _02050714:
pop {r3, pc}
.balign 4
_02050720: .word 0x021C5A6C
-_02050724: .word FUN_02050728 + 1
+_02050724: .word FUN_02050728
thumb_func_start FUN_02050728
FUN_02050728: ; 0x02050728
@@ -169333,7 +169333,7 @@ _02050776:
add sp, #0xc
pop {pc}
nop
-_0205077C: .word FUN_020507B4 + 1
+_0205077C: .word FUN_020507B4
thumb_func_start FUN_02050780
FUN_02050780: ; 0x02050780
@@ -169359,7 +169359,7 @@ _020507A8:
pop {r3, pc}
nop
_020507AC: .word 0x021C5A6C
-_020507B0: .word FUN_02050930 + 1
+_020507B0: .word FUN_02050930
thumb_func_start FUN_020507B4
FUN_020507B4: ; 0x020507B4
@@ -169393,7 +169393,7 @@ _020507EC:
pop {r3, pc}
nop
_020507F0: .word 0x021C5A6C
-_020507F4: .word FUN_02050780 + 1
+_020507F4: .word FUN_02050780
thumb_func_start FUN_020507F8
FUN_020507F8: ; 0x020507F8
@@ -169435,7 +169435,7 @@ _02050840:
pop {r3, pc}
.balign 4
_0205084C: .word 0x021C5A6C
-_02050850: .word FUN_02050854 + 1
+_02050850: .word FUN_02050854
thumb_func_start FUN_02050854
FUN_02050854: ; 0x02050854
@@ -169480,7 +169480,7 @@ _020508B0:
add sp, #0x10
pop {r3, pc}
.balign 4
-_020508B4: .word FUN_02050A14 + 1
+_020508B4: .word FUN_02050A14
thumb_func_start FUN_020508B8
FUN_020508B8: ; 0x020508B8
@@ -169566,7 +169566,7 @@ _0205095A:
pop {r3, pc}
.balign 4
_02050960: .word 0x021C5A6C
-_02050964: .word FUN_02050A14 + 1
+_02050964: .word FUN_02050A14
thumb_func_start FUN_02050968
FUN_02050968: ; 0x02050968
@@ -169603,8 +169603,8 @@ _02050994:
pop {r3-r5, pc}
.balign 4
_020509AC: .word 0x021C5A6C
-_020509B0: .word FUN_02050B8C + 1
-_020509B4: .word FUN_02050930 + 1
+_020509B0: .word FUN_02050B8C
+_020509B4: .word FUN_02050930
thumb_func_start FUN_020509B8
FUN_020509B8: ; 0x020509B8
@@ -169613,8 +169613,8 @@ FUN_020509B8: ; 0x020509B8
mov r1, #0x0
bx r3
.balign 4
-_020509C0: .word FUN_02050094 + 1
-_020509C4: .word FUN_02050930 + 1
+_020509C0: .word FUN_02050094
+_020509C4: .word FUN_02050930
thumb_func_start FUN_020509C8
FUN_020509C8: ; 0x020509C8
@@ -169648,8 +169648,8 @@ _02050A06:
pop {r3, pc}
.balign 4
_02050A08: .word 0x021C5A6C
-_02050A0C: .word FUN_02050968 + 1
-_02050A10: .word FUN_020509B8 + 1
+_02050A0C: .word FUN_02050968
+_02050A10: .word FUN_020509B8
thumb_func_start FUN_02050A14
FUN_02050A14: ; 0x02050A14
@@ -169674,7 +169674,7 @@ _02050A38:
pop {r3, pc}
nop
_02050A40: .word 0x021C5A6C
-_02050A44: .word FUN_020509C8 + 1
+_02050A44: .word FUN_020509C8
thumb_func_start FUN_02050A48
FUN_02050A48: ; 0x02050A48
@@ -169715,8 +169715,8 @@ _02050A82:
bx lr
nop
_02050A88: .word 0x021C5A6C
-_02050A8C: .word FUN_02050A14 + 1
-_02050A90: .word FUN_02050930 + 1
+_02050A8C: .word FUN_02050A14
+_02050A90: .word FUN_02050930
thumb_func_start FUN_02050A94
FUN_02050A94: ; 0x02050A94
@@ -169809,7 +169809,7 @@ _02050B3E:
pop {r3, pc}
.balign 4
_02050B40: .word 0x021C5A6C
-_02050B44: .word FUN_02050A94 + 1
+_02050B44: .word FUN_02050A94
thumb_func_start FUN_02050B48
FUN_02050B48: ; 0x02050B48
@@ -169830,7 +169830,7 @@ _02050B5A:
pop {r3, pc}
.balign 4
_02050B68: .word 0x021C5A6C
-_02050B6C: .word FUN_02050B04 + 1
+_02050B6C: .word FUN_02050B04
thumb_func_start FUN_02050B70
FUN_02050B70: ; 0x02050B70
@@ -169845,7 +169845,7 @@ FUN_02050B70: ; 0x02050B70
_02050B84:
pop {r3, pc}
nop
-_02050B88: .word FUN_02050B48 + 1
+_02050B88: .word FUN_02050B48
thumb_func_start FUN_02050B8C
FUN_02050B8C: ; 0x02050B8C
@@ -169869,7 +169869,7 @@ _02050B9E:
pop {r3, pc}
.balign 4
_02050BB4: .word 0x021C5A6C
-_02050BB8: .word FUN_02050B70 + 1
+_02050BB8: .word FUN_02050B70
thumb_func_start FUN_02050BBC
FUN_02050BBC: ; 0x02050BBC
@@ -169880,7 +169880,7 @@ FUN_02050BBC: ; 0x02050BBC
bl FUN_02050094
pop {r3, pc}
.balign 4
-_02050BCC: .word FUN_02050BD0 + 1
+_02050BCC: .word FUN_02050BD0
thumb_func_start FUN_02050BD0
FUN_02050BD0: ; 0x02050BD0
@@ -169894,7 +169894,7 @@ FUN_02050BD0: ; 0x02050BD0
_02050BE2:
pop {r3, pc}
.balign 4
-_02050BE4: .word FUN_020506A8 + 1
+_02050BE4: .word FUN_020506A8
thumb_func_start FUN_02050BE8
FUN_02050BE8: ; 0x02050BE8
@@ -169913,7 +169913,7 @@ FUN_02050BF8: ; 0x02050BF8
add r4, r0, #0x0
cmp r4, #0x4
blt _02050C04
- bl FUN_02020C2C
+ bl ErrorHandling
_02050C04:
ldr r0, _02050C10 ; =0x021C5A6C
ldr r1, [r0, #0x0]
@@ -169947,7 +169947,7 @@ _02050C3E:
.balign 4
_02050C40: .word 0x021C5A6C
_02050C44: .word 0x0000066C
-_02050C48: .word FUN_02050C4C + 1
+_02050C48: .word FUN_02050C4C
thumb_func_start FUN_02050C4C
FUN_02050C4C: ; 0x02050C4C
@@ -169977,7 +169977,7 @@ _02050C7C:
pop {r3-r5, pc}
nop
_02050C80: .word 0x021C5A6C
-_02050C84: .word FUN_02050CF4 + 1
+_02050C84: .word FUN_02050CF4
thumb_func_start FUN_02050C88
FUN_02050C88: ; 0x02050C88
@@ -170012,7 +170012,7 @@ _02050CC2:
pop {r3, pc}
.balign 4
_02050CC4: .word 0x021C5A6C
-_02050CC8: .word FUN_02050D10 + 1
+_02050CC8: .word FUN_02050D10
thumb_func_start FUN_02050CCC
FUN_02050CCC: ; 0x02050CCC
@@ -170033,7 +170033,7 @@ _02050CDE:
pop {r3, pc}
.balign 4
_02050CEC: .word 0x021C5A6C
-_02050CF0: .word FUN_02050C88 + 1
+_02050CF0: .word FUN_02050C88
thumb_func_start FUN_02050CF4
FUN_02050CF4: ; 0x02050CF4
@@ -170048,7 +170048,7 @@ FUN_02050CF4: ; 0x02050CF4
_02050D08:
pop {r3, pc}
nop
-_02050D0C: .word FUN_02050CCC + 1
+_02050D0C: .word FUN_02050CCC
thumb_func_start FUN_02050D10
FUN_02050D10: ; 0x02050D10
@@ -170081,8 +170081,8 @@ _02050D3E:
pop {r3, pc}
.balign 4
_02050D48: .word 0x021C5A6C
-_02050D4C: .word FUN_020506C8 + 1
-_02050D50: .word FUN_020507F8 + 1
+_02050D4C: .word FUN_020506C8
+_02050D50: .word FUN_020507F8
thumb_func_start FUN_02050D54
FUN_02050D54: ; 0x02050D54
@@ -170128,7 +170128,7 @@ FUN_02050D88: ; 0x02050D88
_02050DAA:
pop {r3, pc}
.balign 4
-_02050DAC: .word FUN_02050DC8 + 1
+_02050DAC: .word FUN_02050DC8
thumb_func_start FUN_02050DB0
FUN_02050DB0: ; 0x02050DB0
@@ -170140,7 +170140,7 @@ FUN_02050DB0: ; 0x02050DB0
bl FUN_02050094
pop {r3, pc}
nop
-_02050DC4: .word FUN_02050DC8 + 1
+_02050DC4: .word FUN_02050DC8
thumb_func_start FUN_02050DC8
FUN_02050DC8: ; 0x02050DC8
@@ -170161,7 +170161,7 @@ _02050DDA:
pop {r3, pc}
.balign 4
_02050DE8: .word 0x021C5A6C
-_02050DEC: .word FUN_0204FC10 + 1
+_02050DEC: .word FUN_0204FC10
thumb_func_start FUN_02050DF0
FUN_02050DF0: ; 0x02050DF0
@@ -170232,7 +170232,7 @@ FUN_02050E48: ; 0x02050E48
mov r1, #0x0
mov r2, #0x30
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r5, #0xc]
bl FUN_020238F4
add r1, r0, #0x0
@@ -170245,7 +170245,7 @@ FUN_02050E48: ; 0x02050E48
bl FUN_02079C70
str r0, [r4, #0x2c]
add r0, r6, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x4]
ldr r0, [sp, #0x0]
str r0, [r4, #0x0]
@@ -170287,10 +170287,10 @@ FUN_02050ED4: ; 0x02050ED4
mov r1, #0x0
mov r2, #0x40
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r5, #0x24]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
ldr r0, [r5, #0x24]
add r0, #0xac
@@ -170413,7 +170413,7 @@ _02050FDA:
add r0, #0x2c
add r1, #0x3d
mov r2, #0x6
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, [r4, #0x4]
add r0, #0x22
ldrb r0, [r0, #0x0]
@@ -171415,7 +171415,7 @@ FUN_020517C0: ; 0x020517C0
bl FUN_020545B8
ldr r0, [r5, #0x24]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r4, #0x0
bl FUN_02054608
@@ -171426,7 +171426,7 @@ _020517F2:
_020517F8:
ldr r0, [r5, #0x24]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
add r0, r4, #0x0
add r1, r6, #0x0
@@ -171503,7 +171503,7 @@ _0205188E:
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x8c
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
mov r1, #0x5
add r0, #0x43
@@ -171616,7 +171616,7 @@ _02051988:
_02051992:
pop {r4-r6, pc}
.balign 4
-_02051994: .word FUN_02051094 + 1
+_02051994: .word FUN_02051094
thumb_func_start FUN_02051998
FUN_02051998: ; 0x02051998
@@ -171659,7 +171659,7 @@ FUN_020519E4: ; 0x020519E4
ldr r0, [r0, #0x10]
bx r3
nop
-_020519EC: .word FUN_0204652C + 1
+_020519EC: .word FUN_0204652C
thumb_func_start FUN_020519F0
FUN_020519F0: ; 0x020519F0
@@ -171689,7 +171689,7 @@ _02051A16:
bl FUN_0206B9B0
add r1, r4, #0x0
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r5, r5, #0x1
add r4, r4, r6
cmp r5, #0x3
@@ -171851,7 +171851,7 @@ FUN_02051B1C: ; 0x02051B1C
mul r2, r4
add r1, r3, r2
add r2, r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, [r6, #0x50]
mov r1, #0x3
bl FUN_0206B8CC
@@ -172215,7 +172215,7 @@ FUN_02051E24: ; 0x02051E24
mov r1, #0x1
bx r3
.balign 4
-_02051E2C: .word FUN_0200CCF8 + 1
+_02051E2C: .word FUN_0200CCF8
thumb_func_start FUN_02051E30
FUN_02051E30: ; 0x02051E30
@@ -172365,13 +172365,13 @@ _02051EF2:
mov r2, #0x3
bl FUN_020545B8
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x8
bl FUN_02054608
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
add r0, r4, #0x0
ldr r1, [r4, #0x4]
@@ -172521,14 +172521,14 @@ _0205209C:
_020520A6:
pop {r3-r7, pc}
.balign 4
-_020520A8: .word FUN_02051EB0 + 1
+_020520A8: .word FUN_02051EB0
thumb_func_start FUN_020520AC
FUN_020520AC: ; 0x020520AC
push {r3-r5, lr}
add r4, r0, #0x0
bne _020520B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020520B6:
ldr r0, [r4, #0x78]
cmp r0, #0x0
@@ -172558,7 +172558,7 @@ _020520D8:
add r0, r5, #0x0
pop {r3-r5, pc}
nop
-_020520F4: .word FUN_02052178 + 1
+_020520F4: .word FUN_02052178
thumb_func_start FUN_020520F8
FUN_020520F8: ; 0x020520F8
@@ -172572,7 +172572,7 @@ FUN_020520F8: ; 0x020520F8
_02052108:
pop {r3, pc}
nop
-_0205210C: .word FUN_02052348 + 1
+_0205210C: .word FUN_02052348
thumb_func_start FUN_02052110
FUN_02052110: ; 0x02052110
@@ -172595,7 +172595,7 @@ _0205211E:
mov r1, #0x0
lsl r2, r2, #0x4
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
str r0, [r4, #0x10]
mov r0, #0x28
@@ -172619,7 +172619,7 @@ _0205211E:
add r0, r4, #0x0
pop {r4-r6, pc}
nop
-_02052174: .word FUN_02052308 + 1
+_02052174: .word FUN_02052308
thumb_func_start FUN_02052178
FUN_02052178: ; 0x02052178
@@ -172644,7 +172644,7 @@ _020521A4:
add sp, #0x8
pop {r4, pc}
.balign 4
-_020521A8: .word FUN_020521AC + 1
+_020521A8: .word FUN_020521AC
thumb_func_start FUN_020521AC
FUN_020521AC: ; 0x020521AC
@@ -172694,8 +172694,8 @@ _02052206:
pop {r4, pc}
.balign 4
_02052208: .word 0x021C5A70
-_0205220C: .word FUN_0205225C + 1
-_02052210: .word FUN_02052380 + 1
+_0205220C: .word FUN_0205225C
+_02052210: .word FUN_02052380
thumb_func_start FUN_02052214
FUN_02052214: ; 0x02052214
@@ -172713,7 +172713,7 @@ FUN_02052214: ; 0x02052214
_02052230:
pop {r4, pc}
nop
-_02052234: .word FUN_020521AC + 1
+_02052234: .word FUN_020521AC
thumb_func_start FUN_02052238
FUN_02052238: ; 0x02052238
@@ -172786,8 +172786,8 @@ _020522C2:
pop {r4, pc}
.balign 4
_020522C4: .word 0x021C5A70
-_020522C8: .word FUN_020522D0 + 1
-_020522CC: .word FUN_02052214 + 1
+_020522C8: .word FUN_020522D0
+_020522CC: .word FUN_02052214
thumb_func_start FUN_020522D0
FUN_020522D0: ; 0x020522D0
@@ -172809,7 +172809,7 @@ FUN_020522D0: ; 0x020522D0
_020522FA:
pop {r4, pc}
.balign 4
-_020522FC: .word FUN_02052214 + 1
+_020522FC: .word FUN_02052214
thumb_func_start FUN_02052300
FUN_02052300: ; 0x02052300
@@ -172872,7 +172872,7 @@ _02052358:
bl FUN_02052300
pop {r4, pc}
.balign 4
-_02052368: .word FUN_0205236C + 1
+_02052368: .word FUN_0205236C
thumb_func_start FUN_0205236C
FUN_0205236C: ; 0x0205236C
@@ -172927,9 +172927,9 @@ _020523B4:
_020523D2:
pop {r4, pc}
.balign 4
-_020523D4: .word FUN_02052410 + 1
-_020523D8: .word FUN_0205225C + 1
-_020523DC: .word FUN_020523E0 + 1
+_020523D4: .word FUN_02052410
+_020523D8: .word FUN_0205225C
+_020523DC: .word FUN_020523E0
thumb_func_start FUN_020523E0
FUN_020523E0: ; 0x020523E0
@@ -172951,7 +172951,7 @@ FUN_020523E0: ; 0x020523E0
_02052408:
pop {r4, pc}
nop
-_0205240C: .word FUN_02052214 + 1
+_0205240C: .word FUN_02052214
thumb_func_start FUN_02052410
FUN_02052410: ; 0x02052410
@@ -172996,8 +172996,8 @@ _02052444:
_0205246C:
pop {r4, pc}
nop
-_02052470: .word FUN_02052478 + 1
-_02052474: .word FUN_02052214 + 1
+_02052470: .word FUN_02052478
+_02052474: .word FUN_02052214
thumb_func_start FUN_02052478
FUN_02052478: ; 0x02052478
@@ -173016,7 +173016,7 @@ FUN_02052478: ; 0x02052478
_02052498:
pop {r4, pc}
nop
-_0205249C: .word FUN_02052214 + 1
+_0205249C: .word FUN_02052214
thumb_func_start FUN_020524A0
FUN_020524A0: ; 0x020524A0
@@ -173217,7 +173217,7 @@ _020525F4:
mov r0, #0x5
pop {r4-r6, pc}
_020525F8:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -173346,7 +173346,7 @@ FUN_020526BC: ; 0x020526BC
bl FUN_02052E1C
pop {r4, pc}
nop
-_020526D4: .word FUN_020521AC + 1
+_020526D4: .word FUN_020521AC
thumb_func_start FUN_020526D8
FUN_020526D8: ; 0x020526D8
@@ -173547,7 +173547,7 @@ FUN_02052814: ; 0x02052814
mvn r0, r0
cmp r4, r0
bne _02052836
- bl FUN_02020C2C
+ bl ErrorHandling
b _02052836
_02052834:
add r5, r4, #0x0
@@ -173919,7 +173919,7 @@ _02052AF2:
ldr r0, [r0, r1]
pop {r4-r6, pc}
_02052AFA:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x28
pop {r4-r6, pc}
nop
@@ -173980,7 +173980,7 @@ FUN_02052B74: ; 0x02052B74
add r0, sp, #0x0
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
cmp r4, #0xb
bhi _02052BFA
add r0, r4, r4
@@ -174428,7 +174428,7 @@ FUN_02052ED0: ; 0x02052ED0
ldr r2, _02052EE4 ; =0x0000066C
bx r3
.balign 4
-_02052EE0: .word FUN_02030A78 + 1
+_02052EE0: .word FUN_02030A78
_02052EE4: .word 0x0000066C
thumb_func_start FUN_02052EE8
@@ -174442,7 +174442,7 @@ FUN_02052EE8: ; 0x02052EE8
ldr r2, _02052F58 ; =0x000004E8
mov r0, #0x0
add r1, r4, #0x0
- blx FUN_020CE240
+ blx MIi_CpuClearFast
mov r0, #0x4e
str r5, [r4, #0x0]
mov r1, #0x1
@@ -174483,7 +174483,7 @@ FUN_02052EE8: ; 0x02052EE8
pop {r3-r5, pc}
.balign 4
_02052F58: .word 0x000004E8
-_02052F5C: .word FUN_02052FC8 + 1
+_02052F5C: .word FUN_02052FC8
_02052F60: .word 0x000004D4
_02052F64: .word 0x000004D8
_02052F68: .word 0x00002710
@@ -174720,7 +174720,7 @@ FUN_02053104: ; 0x02053104
ldr r0, [r0, r5]
cmp r3, r0
beq _02053120
- bl FUN_02020C2C
+ bl ErrorHandling
_02053120:
pop {r4-r6, pc}
nop
@@ -174846,7 +174846,7 @@ _02053206:
bl FUN_02058060
add r5, r0, #0x0
bne _02053216
- bl FUN_02020C2C
+ bl ErrorHandling
_02053216:
ldrb r0, [r4, #0xd]
cmp r0, #0x4
@@ -175181,7 +175181,7 @@ _020534AC:
bl FUN_02058060
add r4, r0, #0x0
bne _020534BC
- bl FUN_02020C2C
+ bl ErrorHandling
_020534BC:
add r0, r4, #0x0
mov r1, #0x1
@@ -175207,7 +175207,7 @@ FUN_020534DC: ; 0x020534DC
bl FUN_02058060
add r4, r0, #0x0
bne _020534F0
- bl FUN_02020C2C
+ bl ErrorHandling
_020534F0:
add r0, r4, #0x0
bl FUN_0205AD98
@@ -175231,7 +175231,7 @@ _0205350E:
bl FUN_02058060
add r4, r0, #0x0
bne _02053524
- bl FUN_02020C2C
+ bl ErrorHandling
_02053524:
ldrb r1, [r5, #0x8]
add r0, r4, #0x0
@@ -175465,7 +175465,7 @@ FUN_020536C8: ; 0x020536C8
ldr r3, _020536CC ; =FUN_0205369C
bx r3
.balign 4
-_020536CC: .word FUN_0205369C + 1
+_020536CC: .word FUN_0205369C
thumb_func_start FUN_020536D0
FUN_020536D0: ; 0x020536D0
@@ -175490,7 +175490,7 @@ _020536EE:
ldr r0, [r0, r1]
pop {r4, pc}
_020536F8:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
_020536FE:
pop {r4, pc}
@@ -176282,10 +176282,10 @@ _02053CEE:
pop {r3-r5, pc}
.balign 4
_02053CF8: .word 0x020F5C04
-_02053CFC: .word FUN_02053750 + 1
-_02053D00: .word FUN_020538B8 + 1
-_02053D04: .word FUN_020539F8 + 1
-_02053D08: .word FUN_02053B38 + 1
+_02053CFC: .word FUN_02053750
+_02053D00: .word FUN_020538B8
+_02053D04: .word FUN_020539F8
+_02053D08: .word FUN_02053B38
thumb_func_start FUN_02053D0C
FUN_02053D0C: ; 0x02053D0C
@@ -176338,7 +176338,7 @@ FUN_02053D68: ; 0x02053D68
ldr r3, _02053D6C ; =FUN_02053EF0
bx r3
.balign 4
-_02053D6C: .word FUN_02053EF0 + 1
+_02053D6C: .word FUN_02053EF0
thumb_func_start FUN_02053D70
FUN_02053D70: ; 0x02053D70
@@ -176632,24 +176632,24 @@ _02053FB6:
blx r2
pop {r3-r5, pc}
nop
-_02053FC0: .word FUN_02054088 + 1
-_02053FC4: .word FUN_020540C8 + 1
-_02053FC8: .word FUN_020540E8 + 1
-_02053FCC: .word FUN_02054168 + 1
-_02053FD0: .word FUN_020541A4 + 1
-_02053FD4: .word FUN_020541C4 + 1
-_02053FD8: .word FUN_020541E8 + 1
-_02053FDC: .word FUN_02054228 + 1
-_02053FE0: .word FUN_02054248 + 1
-_02053FE4: .word FUN_020542A4 + 1
-_02053FE8: .word FUN_020542E8 + 1
-_02053FEC: .word FUN_02054308 + 1
-_02053FF0: .word FUN_020543D8 + 1
-_02053FF4: .word FUN_0205442C + 1
-_02053FF8: .word FUN_0205444C + 1
-_02053FFC: .word FUN_02054508 + 1
-_02054000: .word FUN_0205454C + 1
-_02054004: .word FUN_0205456C + 1
+_02053FC0: .word FUN_02054088
+_02053FC4: .word FUN_020540C8
+_02053FC8: .word FUN_020540E8
+_02053FCC: .word FUN_02054168
+_02053FD0: .word FUN_020541A4
+_02053FD4: .word FUN_020541C4
+_02053FD8: .word FUN_020541E8
+_02053FDC: .word FUN_02054228
+_02053FE0: .word FUN_02054248
+_02053FE4: .word FUN_020542A4
+_02053FE8: .word FUN_020542E8
+_02053FEC: .word FUN_02054308
+_02053FF0: .word FUN_020543D8
+_02053FF4: .word FUN_0205442C
+_02053FF8: .word FUN_0205444C
+_02053FFC: .word FUN_02054508
+_02054000: .word FUN_0205454C
+_02054004: .word FUN_0205456C
thumb_func_start FUN_02054008
FUN_02054008: ; 0x02054008
@@ -176696,7 +176696,7 @@ FUN_02054008: ; 0x02054008
bl FUN_0201FE94
add r4, r0, #0x0
bne _02054064
- bl FUN_02020C2C
+ bl ErrorHandling
_02054064:
add r0, r4, #0x0
add sp, #0x30
@@ -177502,7 +177502,7 @@ FUN_0205464C: ; 0x0205464C
mov r1, #0xf
bx r3
nop
-_02054654: .word FUN_02019620 + 1
+_02054654: .word FUN_02019620
thumb_func_start FUN_02054658
FUN_02054658: ; 0x02054658
@@ -179020,7 +179020,7 @@ FUN_02054F50: ; 0x02054F50
mov r1, #0x0
mov r2, #0x14
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, sp, #0x8
ldrh r0, [r0, #0x10]
cmp r0, #0x0
@@ -179071,7 +179071,7 @@ _02054FC6:
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_02054FE0: .word FUN_02054EA0 + 1
+_02054FE0: .word FUN_02054EA0
thumb_func_start FUN_02054FE4
FUN_02054FE4: ; 0x02054FE4
@@ -179123,7 +179123,7 @@ FUN_0205502C: ; 0x0205502C
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0xc
- blx FUN_020CE34C
+ blx MI_CpuFill8
strh r6, [r4, #0x4]
strh r7, [r4, #0x6]
str r5, [r4, #0x0]
@@ -179136,7 +179136,7 @@ FUN_0205502C: ; 0x0205502C
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_02055064: .word FUN_02054FE4 + 1
+_02055064: .word FUN_02054FE4
thumb_func_start FUN_02055068
FUN_02055068: ; 0x02055068
@@ -179217,7 +179217,7 @@ FUN_02055108: ; 0x02055108
bl FUN_020553A0
add r4, r0, #0x0
bne _02055118
- bl FUN_02020C2C
+ bl ErrorHandling
_02055118:
add r0, r4, #0x0
bl FUN_02058578
@@ -179254,7 +179254,7 @@ FUN_02055160: ; 0x02055160
ldr r3, _02055164 ; =FUN_02016A18
bx r3
.balign 4
-_02055164: .word FUN_02016A18 + 1
+_02055164: .word FUN_02016A18
thumb_func_start FUN_02055168
FUN_02055168: ; 0x02055168
@@ -179274,7 +179274,7 @@ FUN_0205517C: ; 0x0205517C
bl FUN_02016998
add r4, r0, #0x0
bne _0205518E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205518E:
add r0, r4, #0x0
mov r1, #0x0
@@ -179343,7 +179343,7 @@ FUN_02055208: ; 0x02055208
bl FUN_0205753C
add r5, r0, #0x0
bne _02055228
- bl FUN_02020C2C
+ bl ErrorHandling
_02055228:
add r0, r5, #0x0
mov r1, #0xff
@@ -179435,7 +179435,7 @@ FUN_020552E4: ; 0x020552E4
bl FUN_020552A4
add r4, r0, #0x0
bne _020552F2
- bl FUN_02020C2C
+ bl ErrorHandling
_020552F2:
add r0, r4, #0x0
pop {r4, pc}
@@ -179567,7 +179567,7 @@ FUN_020553A8: ; 0x020553A8
add r5, r0, #0x0
cmp r4, #0x3
blt _020553B6
- bl FUN_02020C2C
+ bl ErrorHandling
_020553B6:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -179581,7 +179581,7 @@ FUN_020553C4: ; 0x020553C4
push {r4, lr}
add r4, r0, #0x0
bne _020553CE
- bl FUN_02020C2C
+ bl ErrorHandling
_020553CE:
ldr r0, [r4, #0x18]
pop {r4, pc}
@@ -179654,7 +179654,7 @@ FUN_02055410: ; 0x02055410
str r1, [r0, #0x20]
bx r3
.balign 4
-_02055418: .word FUN_020556F4 + 1
+_02055418: .word FUN_020556F4
thumb_func_start FUN_0205541C
FUN_0205541C: ; 0x0205541C
@@ -180019,7 +180019,7 @@ _0205563A:
mov r0, #0xc9
pop {r3, pc}
_0205563E:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -180072,7 +180072,7 @@ _0205568A:
lsl r0, r0, #0x8
pop {r3, pc}
_02055690:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
pop {r3, pc}
@@ -180249,7 +180249,7 @@ FUN_020557A4: ; 0x020557A4
mov r1, #0x40
bx r3
nop
-_020557AC: .word FUN_020553EC + 1
+_020557AC: .word FUN_020553EC
thumb_func_start FUN_020557B0
FUN_020557B0: ; 0x020557B0
@@ -180257,7 +180257,7 @@ FUN_020557B0: ; 0x020557B0
mov r1, #0x40
bx r3
nop
-_020557B8: .word FUN_020553F4 + 1
+_020557B8: .word FUN_020553F4
thumb_func_start FUN_020557BC
FUN_020557BC: ; 0x020557BC
@@ -180292,7 +180292,7 @@ FUN_020557E8: ; 0x020557E8
mov r1, #0x80
bx r3
nop
-_020557F0: .word FUN_02055400 + 1
+_020557F0: .word FUN_02055400
thumb_func_start FUN_020557F4
FUN_020557F4: ; 0x020557F4
@@ -180375,7 +180375,7 @@ FUN_02055898: ; 0x02055898
ldr r3, _0205589C ; =FUN_020558A0
bx r3
.balign 4
-_0205589C: .word FUN_020558A0 + 1
+_0205589C: .word FUN_020558A0
thumb_func_start FUN_020558A0
FUN_020558A0: ; 0x020558A0
@@ -181431,7 +181431,7 @@ _0205614C:
add sp, #0xc
pop {r4-r7, pc}
_02056162:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
pop {r4-r7, pc}
.balign 4
@@ -181522,7 +181522,7 @@ _02056204:
mov r0, #0x2
pop {r3, pc}
_02056208:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -181983,7 +181983,7 @@ _0205657E:
mov r0, #0x1
pop {r3, pc}
_02056582:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -182370,7 +182370,7 @@ _0205689A:
mov r0, #0x1
pop {r3, pc}
_0205689E:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -183292,7 +183292,7 @@ FUN_02057020: ; 0x02057020
ldr r3, _02057024 ; =FUN_02057060
bx r3
.balign 4
-_02057024: .word FUN_02057060 + 1
+_02057024: .word FUN_02057060
thumb_func_start FUN_02057028
FUN_02057028: ; 0x02057028
@@ -183501,7 +183501,7 @@ _02057172:
b _0205718E
_02057188:
mov r4, #0x0
- bl FUN_02020C2C
+ bl ErrorHandling
_0205718E:
add r0, r4, #0x0
pop {r3-r5, pc}
@@ -183873,7 +183873,7 @@ FUN_02057444: ; 0x02057444
bl FUN_02016998
add r5, r0, #0x0
bne _0205745A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205745A:
mov r2, #0x4b
add r0, r5, #0x0
@@ -183889,7 +183889,7 @@ _0205745A:
bl FUN_02016998
add r4, r0, #0x0
bne _0205747E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205747E:
add r0, r4, #0x0
mov r1, #0x0
@@ -184179,10 +184179,10 @@ _020576D6:
pop {r4, pc}
.balign 4
_02057708: .word 0x0000FFFF
-_0205770C: .word FUN_02058ED8 + 1
-_02057710: .word FUN_02058EDC + 1
-_02057714: .word FUN_02058EE0 + 1
-_02057718: .word FUN_02058EE4 + 1
+_0205770C: .word FUN_02058ED8
+_02057710: .word FUN_02058EDC
+_02057714: .word FUN_02058EE0
+_02057718: .word FUN_02058EE4
thumb_func_start FUN_0205771C
FUN_0205771C: ; 0x0205771C
@@ -184218,7 +184218,7 @@ FUN_02057750: ; 0x02057750
bl FUN_020587E0
cmp r0, #0x1
beq _02057760
- bl FUN_02020C2C
+ bl ErrorHandling
_02057760:
add r0, r5, #0x0
mov r4, #0x0
@@ -184260,7 +184260,7 @@ FUN_020577A8: ; 0x020577A8
bl FUN_020587E0
cmp r0, #0x1
beq _020577B8
- bl FUN_02020C2C
+ bl ErrorHandling
_020577B8:
add r0, r5, #0x0
mov r4, #0x0
@@ -184322,7 +184322,7 @@ _02057820:
add r5, #0x50
cmp r4, #0x0
bgt _02057836
- bl FUN_02020C2C
+ bl ErrorHandling
_02057836:
add r0, r6, #0x0
add r1, sp, #0x0
@@ -184360,7 +184360,7 @@ _02057866:
bl FUN_02057C64
add r4, r0, #0x0
bne _0205787C
- bl FUN_02020C2C
+ bl ErrorHandling
_0205787C:
add r0, r4, #0x0
add r1, r5, #0x0
@@ -184724,7 +184724,7 @@ FUN_02057BAC: ; 0x02057BAC
str r1, [sp, #0x0]
cmp r5, #0x0
bne _02057BC0
- bl FUN_02020C2C
+ bl ErrorHandling
_02057BC0:
lsl r0, r5, #0x5
str r0, [sp, #0x4]
@@ -184733,7 +184733,7 @@ _02057BC0:
bl FUN_020169D8
add r6, r0, #0x0
bne _02057BD4
- bl FUN_02020C2C
+ bl ErrorHandling
_02057BD4:
ldr r2, [sp, #0x4]
add r0, r6, #0x0
@@ -184744,7 +184744,7 @@ _02057BD4:
bl FUN_020169D8
add r4, r0, #0x0
bne _02057BEE
- bl FUN_02020C2C
+ bl ErrorHandling
_02057BEE:
ldr r0, [sp, #0x0]
str r0, [r4, #0x0]
@@ -184786,7 +184786,7 @@ _02057C30:
bl FUN_02057494
cmp r0, #0x0
bne _02057C42
- bl FUN_02020C2C
+ bl ErrorHandling
_02057C42:
ldr r0, [r6, #0x0]
add r4, #0x20
@@ -184898,14 +184898,14 @@ _02057D0A:
bl FUN_0200CA44
add r5, r0, #0x0
bne _02057D1C
- bl FUN_02020C2C
+ bl ErrorHandling
_02057D1C:
add r0, r4, #0x0
add r1, r5, #0x0
bl FUN_02058554
pop {r3-r5, pc}
nop
-_02057D28: .word FUN_0205832C + 1
+_02057D28: .word FUN_0205832C
thumb_func_start FUN_02057D2C
FUN_02057D2C: ; 0x02057D2C
@@ -185275,7 +185275,7 @@ FUN_02058060: ; 0x02058060
add r6, r1, #0x0
cmp r5, #0x0
bne _0205806E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205806E:
add r0, r5, #0x0
bl FUN_02058368
@@ -185405,7 +185405,7 @@ FUN_0205815C: ; 0x0205815C
ldr r1, _02058168 ; =0x05108000
bx r3
nop
-_02058164: .word FUN_02058418 + 1
+_02058164: .word FUN_02058418
_02058168: .word 0x05108000
thumb_func_start FUN_0205816C
@@ -185508,7 +185508,7 @@ FUN_02058214: ; 0x02058214
bl FUN_020589CC
cmp r0, #0x1
beq _02058228
- bl FUN_02020C2C
+ bl ErrorHandling
_02058228:
add r0, r5, #0x0
mov r1, #0x0
@@ -185539,7 +185539,7 @@ FUN_02058258: ; 0x02058258
bl FUN_02058CE0
cmp r0, #0x1
beq _0205826E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205826E:
add r0, r5, #0x0
mov r1, #0x1
@@ -185809,7 +185809,7 @@ FUN_020583F4: ; 0x020583F4
ldr r0, [r4, #0x14]
cmp r0, #0x0
bne _02058402
- bl FUN_02020C2C
+ bl ErrorHandling
_02058402:
ldr r0, [r4, #0x14]
pop {r4, pc}
@@ -186042,7 +186042,7 @@ _02058504:
str r1, [r0, #0x40]
pop {r3, pc}
_02058508:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
@@ -186066,7 +186066,7 @@ _02058528:
ldr r0, [r0, #0x40]
pop {r3, pc}
_0205852C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -186146,7 +186146,7 @@ FUN_02058580: ; 0x02058580
ldr r0, [r0, #0x0]
bx r3
.balign 4
-_02058588: .word FUN_02058360 + 1
+_02058588: .word FUN_02058360
thumb_func_start FUN_0205858C
FUN_0205858C: ; 0x0205858C
@@ -186155,7 +186155,7 @@ FUN_0205858C: ; 0x0205858C
add r4, r0, #0x0
cmp r5, #0x10
ble _0205859A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205859A:
add r0, r4, #0x0
bl FUN_020585B0
@@ -186179,7 +186179,7 @@ FUN_020585B4: ; 0x020585B4
add r4, r0, #0x0
cmp r5, #0x10
ble _020585C2
- bl FUN_02020C2C
+ bl ErrorHandling
_020585C2:
add r0, r4, #0x0
bl FUN_020585D8
@@ -186203,7 +186203,7 @@ FUN_020585DC: ; 0x020585DC
add r4, r0, #0x0
cmp r5, #0x10
ble _020585EA
- bl FUN_02020C2C
+ bl ErrorHandling
_020585EA:
add r0, r4, #0x0
bl FUN_02058600
@@ -186227,7 +186227,7 @@ FUN_02058604: ; 0x02058604
add r4, r0, #0x0
cmp r5, #0x20
ble _02058612
- bl FUN_02020C2C
+ bl ErrorHandling
_02058612:
add r0, r4, #0x0
bl FUN_02058628
@@ -186475,7 +186475,7 @@ FUN_02058750: ; 0x02058750
bl FUN_020589CC
cmp r0, #0x1
beq _02058760
- bl FUN_02020C2C
+ bl ErrorHandling
_02058760:
add r0, r4, #0x0
bl FUN_02058490
@@ -186487,7 +186487,7 @@ FUN_02058768: ; 0x02058768
mov r1, #0x6
bx r3
nop
-_02058770: .word FUN_0205837C + 1
+_02058770: .word FUN_0205837C
thumb_func_start FUN_02058774
FUN_02058774: ; 0x02058774
@@ -186495,7 +186495,7 @@ FUN_02058774: ; 0x02058774
mov r1, #0x6
bx r3
nop
-_0205877C: .word FUN_02058384 + 1
+_0205877C: .word FUN_02058384
thumb_func_start FUN_02058780
FUN_02058780: ; 0x02058780
@@ -186602,7 +186602,7 @@ FUN_02058830: ; 0x02058830
mov r1, #0x1
bx r3
nop
-_02058838: .word FUN_0205842C + 1
+_02058838: .word FUN_0205842C
thumb_func_start FUN_0205883C
FUN_0205883C: ; 0x0205883C
@@ -186610,7 +186610,7 @@ FUN_0205883C: ; 0x0205883C
mov r1, #0x2
bx r3
nop
-_02058844: .word FUN_02058410 + 1
+_02058844: .word FUN_02058410
thumb_func_start FUN_02058848
FUN_02058848: ; 0x02058848
@@ -186618,7 +186618,7 @@ FUN_02058848: ; 0x02058848
mov r1, #0x2
bx r3
nop
-_02058850: .word FUN_02058418 + 1
+_02058850: .word FUN_02058418
thumb_func_start FUN_02058854
FUN_02058854: ; 0x02058854
@@ -186626,7 +186626,7 @@ FUN_02058854: ; 0x02058854
mov r1, #0x2
bx r3
nop
-_0205885C: .word FUN_0205842C + 1
+_0205885C: .word FUN_0205842C
thumb_func_start FUN_02058860
FUN_02058860: ; 0x02058860
@@ -186634,7 +186634,7 @@ FUN_02058860: ; 0x02058860
mov r1, #0x4
bx r3
nop
-_02058868: .word FUN_02058410 + 1
+_02058868: .word FUN_02058410
thumb_func_start FUN_0205886C
FUN_0205886C: ; 0x0205886C
@@ -186642,7 +186642,7 @@ FUN_0205886C: ; 0x0205886C
mov r1, #0x8
bx r3
nop
-_02058874: .word FUN_02058418 + 1
+_02058874: .word FUN_02058418
thumb_func_start FUN_02058878
FUN_02058878: ; 0x02058878
@@ -186651,7 +186651,7 @@ FUN_02058878: ; 0x02058878
lsl r1, r1, #0xe
bx r3
.balign 4
-_02058880: .word FUN_02058410 + 1
+_02058880: .word FUN_02058410
thumb_func_start FUN_02058884
FUN_02058884: ; 0x02058884
@@ -186660,7 +186660,7 @@ FUN_02058884: ; 0x02058884
lsl r1, r1, #0xe
bx r3
.balign 4
-_0205888C: .word FUN_0205842C + 1
+_0205888C: .word FUN_0205842C
thumb_func_start FUN_02058890
FUN_02058890: ; 0x02058890
@@ -186669,7 +186669,7 @@ FUN_02058890: ; 0x02058890
lsl r1, r1, #0x8
bx r3
.balign 4
-_02058898: .word FUN_0205842C + 1
+_02058898: .word FUN_0205842C
thumb_func_start FUN_0205889C
FUN_0205889C: ; 0x0205889C
@@ -186740,7 +186740,7 @@ FUN_02058908: ; 0x02058908
mov r1, #0x40
bx r3
nop
-_02058910: .word FUN_02058410 + 1
+_02058910: .word FUN_02058410
thumb_func_start FUN_02058914
FUN_02058914: ; 0x02058914
@@ -186748,7 +186748,7 @@ FUN_02058914: ; 0x02058914
mov r1, #0x40
bx r3
nop
-_0205891C: .word FUN_02058418 + 1
+_0205891C: .word FUN_02058418
thumb_func_start FUN_02058920
FUN_02058920: ; 0x02058920
@@ -187346,7 +187346,7 @@ _02058C4C:
strh r1, [r0, #0x12]
pop {r3, pc}
_02058C50:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
.balign 4
@@ -187370,7 +187370,7 @@ _02058C70:
ldrh r0, [r0, #0x12]
pop {r3, pc}
_02058C74:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
@@ -187481,7 +187481,7 @@ FUN_02058CFC: ; 0x02058CFC
bl FUN_02058CE0
cmp r0, #0x1
beq _02058D0C
- bl FUN_02020C2C
+ bl ErrorHandling
_02058D0C:
add r0, r4, #0x0
bl FUN_02058C1C
@@ -187493,7 +187493,7 @@ FUN_02058D14: ; 0x02058D14
add r4, r0, #0x0
cmp r4, #0x37
blo _02058D20
- bl FUN_02020C2C
+ bl ErrorHandling
_02058D20:
ldr r0, _02058D28 ; =0x020F6364
lsl r1, r4, #0x2
@@ -187558,7 +187558,7 @@ _02058D5C:
ldr r2, [r3, #0x0]
cmp r2, r1
bne _02058D52
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
.balign 4
@@ -188495,7 +188495,7 @@ FUN_020594F4: ; 0x020594F4
mov r1, #0x0
bx r3
nop
-_020594FC: .word FUN_020589E4 + 1
+_020594FC: .word FUN_020589E4
thumb_func_start FUN_02059500
FUN_02059500: ; 0x02059500
@@ -189196,11 +189196,11 @@ FUN_02059A60: ; 0x02059A60
mvn r0, r0
cmp r5, r0
bne _02059A92
- bl FUN_02020C2C
+ bl ErrorHandling
_02059A92:
cmp r5, #0x4
blt _02059A9A
- bl FUN_02020C2C
+ bl ErrorHandling
_02059A9A:
ldr r1, _02059ABC ; =0x020F6630
lsl r5, r5, #0x2
@@ -189825,7 +189825,7 @@ FUN_02059F34: ; 0x02059F34
mov r1, #0x0
bx r3
nop
-_02059F3C: .word FUN_02059F04 + 1
+_02059F3C: .word FUN_02059F04
thumb_func_start FUN_02059F40
FUN_02059F40: ; 0x02059F40
@@ -189833,7 +189833,7 @@ FUN_02059F40: ; 0x02059F40
mov r1, #0x1
bx r3
nop
-_02059F48: .word FUN_02059F04 + 1
+_02059F48: .word FUN_02059F04
thumb_func_start FUN_02059F4C
FUN_02059F4C: ; 0x02059F4C
@@ -189841,7 +189841,7 @@ FUN_02059F4C: ; 0x02059F4C
mov r1, #0x2
bx r3
nop
-_02059F54: .word FUN_02059F04 + 1
+_02059F54: .word FUN_02059F04
thumb_func_start FUN_02059F58
FUN_02059F58: ; 0x02059F58
@@ -189849,7 +189849,7 @@ FUN_02059F58: ; 0x02059F58
mov r1, #0x3
bx r3
nop
-_02059F60: .word FUN_02059F04 + 1
+_02059F60: .word FUN_02059F04
thumb_func_start FUN_02059F64
FUN_02059F64: ; 0x02059F64
@@ -189857,7 +189857,7 @@ FUN_02059F64: ; 0x02059F64
mov r1, #0x4
bx r3
nop
-_02059F6C: .word FUN_02059F04 + 1
+_02059F6C: .word FUN_02059F04
thumb_func_start FUN_02059F70
FUN_02059F70: ; 0x02059F70
@@ -189865,7 +189865,7 @@ FUN_02059F70: ; 0x02059F70
mov r1, #0x5
bx r3
nop
-_02059F78: .word FUN_02059F04 + 1
+_02059F78: .word FUN_02059F04
thumb_func_start FUN_02059F7C
FUN_02059F7C: ; 0x02059F7C
@@ -189873,7 +189873,7 @@ FUN_02059F7C: ; 0x02059F7C
mov r1, #0x6
bx r3
nop
-_02059F84: .word FUN_02059F04 + 1
+_02059F84: .word FUN_02059F04
thumb_func_start FUN_02059F88
FUN_02059F88: ; 0x02059F88
@@ -189881,7 +189881,7 @@ FUN_02059F88: ; 0x02059F88
mov r1, #0x7
bx r3
nop
-_02059F90: .word FUN_02059F04 + 1
+_02059F90: .word FUN_02059F04
thumb_func_start FUN_02059F94
FUN_02059F94: ; 0x02059F94
@@ -189889,7 +189889,7 @@ FUN_02059F94: ; 0x02059F94
mov r1, #0x8
bx r3
nop
-_02059F9C: .word FUN_02059F04 + 1
+_02059F9C: .word FUN_02059F04
thumb_func_start FUN_02059FA0
FUN_02059FA0: ; 0x02059FA0
@@ -189897,7 +189897,7 @@ FUN_02059FA0: ; 0x02059FA0
mov r1, #0x9
bx r3
nop
-_02059FA8: .word FUN_02059F04 + 1
+_02059FA8: .word FUN_02059F04
thumb_func_start FUN_02059FAC
FUN_02059FAC: ; 0x02059FAC
@@ -189905,7 +189905,7 @@ FUN_02059FAC: ; 0x02059FAC
mov r1, #0xa
bx r3
nop
-_02059FB4: .word FUN_02059F04 + 1
+_02059FB4: .word FUN_02059F04
thumb_func_start FUN_02059FB8
FUN_02059FB8: ; 0x02059FB8
@@ -190260,7 +190260,7 @@ _0205A254:
str r0, [r4, #0xc]
pop {r3-r7, pc}
_0205A268:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x8
pop {r3-r7, pc}
@@ -190353,7 +190353,7 @@ FUN_0205A310: ; 0x0205A310
mov r1, #0x0
bx r3
nop
-_0205A318: .word FUN_0205A2C8 + 1
+_0205A318: .word FUN_0205A2C8
thumb_func_start FUN_0205A31C
FUN_0205A31C: ; 0x0205A31C
@@ -190361,7 +190361,7 @@ FUN_0205A31C: ; 0x0205A31C
mov r1, #0x1
bx r3
nop
-_0205A324: .word FUN_0205A2C8 + 1
+_0205A324: .word FUN_0205A2C8
thumb_func_start FUN_0205A328
FUN_0205A328: ; 0x0205A328
@@ -190369,7 +190369,7 @@ FUN_0205A328: ; 0x0205A328
mov r1, #0x2
bx r3
nop
-_0205A330: .word FUN_0205A2C8 + 1
+_0205A330: .word FUN_0205A2C8
thumb_func_start FUN_0205A334
FUN_0205A334: ; 0x0205A334
@@ -190377,7 +190377,7 @@ FUN_0205A334: ; 0x0205A334
mov r1, #0x3
bx r3
nop
-_0205A33C: .word FUN_0205A2C8 + 1
+_0205A33C: .word FUN_0205A2C8
thumb_func_start FUN_0205A340
FUN_0205A340: ; 0x0205A340
@@ -190402,7 +190402,7 @@ FUN_0205A364: ; 0x0205A364
mov r1, #0x2
bx r3
nop
-_0205A36C: .word FUN_0205A340 + 1
+_0205A36C: .word FUN_0205A340
thumb_func_start FUN_0205A370
FUN_0205A370: ; 0x0205A370
@@ -190410,7 +190410,7 @@ FUN_0205A370: ; 0x0205A370
mov r1, #0x3
bx r3
nop
-_0205A378: .word FUN_0205A340 + 1
+_0205A378: .word FUN_0205A340
thumb_func_start FUN_0205A37C
FUN_0205A37C: ; 0x0205A37C
@@ -190565,7 +190565,7 @@ _0205A486:
mvn r0, r0
cmp r1, r0
bne _0205A496
- bl FUN_02020C2C
+ bl ErrorHandling
_0205A496:
add r4, r4, #0x1
lsl r0, r4, #0x2
@@ -190595,7 +190595,7 @@ FUN_0205A4C4: ; 0x0205A4C4
mov r1, #0x3
bx r3
nop
-_0205A4CC: .word FUN_0205A340 + 1
+_0205A4CC: .word FUN_0205A340
thumb_func_start FUN_0205A4D0
FUN_0205A4D0: ; 0x0205A4D0
@@ -190722,7 +190722,7 @@ _0205A5A2:
mvn r0, r0
cmp r1, r0
bne _0205A5B2
- bl FUN_02020C2C
+ bl ErrorHandling
_0205A5B2:
add r4, r4, #0x1
lsl r0, r4, #0x2
@@ -191397,7 +191397,7 @@ _0205AA9A:
_0205AAA4:
cmp r4, #0x0
bne _0205AAAC
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AAAC:
add r0, r4, #0x0
pop {r4, pc}
@@ -191414,7 +191414,7 @@ FUN_0205AAB0: ; 0x0205AAB0
bl FUN_0205AA90
add r1, r0, #0x0
add r0, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x2
ldr r0, [r5, r0]
pop {r4-r6, pc}
@@ -191433,7 +191433,7 @@ FUN_0205AAD4: ; 0x0205AAD4
bl FUN_0205AA90
add r1, r0, #0x0
add r0, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x2
ldr r0, [r4, r0]
pop {r4-r6, pc}
@@ -191454,7 +191454,7 @@ _0205AB0A:
ldr r2, [r1, #0x0]
cmp r2, #0x27
bne _0205AB02
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
nop
@@ -191745,7 +191745,7 @@ _0205AD26:
_0205AD36:
cmp r4, #0x4
blt _0205AD3E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AD3E:
add r0, r4, #0x1
lsr r2, r0, #0x1f
@@ -191837,7 +191837,7 @@ FUN_0205ADDC: ; 0x0205ADDC
add r5, r0, #0x0
cmp r4, #0x69
blt _0205ADEA
- bl FUN_02020C2C
+ bl ErrorHandling
_0205ADEA:
add r0, r5, #0x0
add r1, r4, #0x0
@@ -191943,7 +191943,7 @@ FUN_0205AEA4: ; 0x0205AEA4
bl FUN_020169D8
add r4, r0, #0x0
bne _0205AEBA
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AEBA:
add r2, r4, #0x0
mov r1, #0x14
@@ -191962,14 +191962,14 @@ _0205AEC0:
bl FUN_0200CA44
add r7, r0, #0x0
bne _0205AEE4
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AEE4:
str r5, [r4, #0xc]
str r6, [r4, #0x10]
add r0, r7, #0x0
pop {r3-r7, pc}
.balign 4
-_0205AEEC: .word FUN_0205AF2C + 1
+_0205AEEC: .word FUN_0205AF2C
thumb_func_start FUN_0205AEF0
FUN_0205AEF0: ; 0x0205AEF0
@@ -191989,7 +191989,7 @@ FUN_0205AEFC: ; 0x0205AEFC
bl FUN_0205AE28
cmp r0, #0x1
beq _0205AF14
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AF14:
ldr r0, [r4, #0xc]
bl FUN_0205AE50
@@ -192118,7 +192118,7 @@ FUN_0205AFDC: ; 0x0205AFDC
add r4, r1, #0x0
cmp r7, #0x4
blt _0205AFEA
- bl FUN_02020C2C
+ bl ErrorHandling
_0205AFEA:
ldr r3, _0205B01C ; =0x020F6308
ldr r6, [r3, #0x0]
@@ -192145,7 +192145,7 @@ _0205B004:
cmp r6, #0x0
bne _0205AFF4
_0205B014:
- bl FUN_02020C2C
+ bl ErrorHandling
add r0, r4, #0x0
pop {r3-r7, pc}
.balign 4
@@ -194237,7 +194237,7 @@ FUN_0205BEF8: ; 0x0205BEF8
ldr r3, _0205BEFC ; =FUN_0205BF24
bx r3
.balign 4
-_0205BEFC: .word FUN_0205BF24 + 1
+_0205BEFC: .word FUN_0205BF24
thumb_func_start FUN_0205BF00
FUN_0205BF00: ; 0x0205BF00
@@ -194726,7 +194726,7 @@ _0205C266:
_0205C276:
cmp r5, #0x4
blt _0205C27E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205C27E:
add r0, r5, #0x1
lsr r2, r0, #0x1f
@@ -195136,7 +195136,7 @@ _0205C584:
ldr r0, [r2, #0x8]
pop {r3, pc}
_0205C588:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, _0205C590 ; =0x0000FFFF
pop {r3, pc}
.balign 4
@@ -195279,7 +195279,7 @@ _0205C650:
mov r0, #0x1
pop {r3-r7, pc}
_0205C6AE:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
add sp, #0x58
pop {r3-r7, pc}
@@ -195710,7 +195710,7 @@ FUN_0205C9E8: ; 0x0205C9E8
ldr r3, _0205C9EC ; =FUN_0205C9D8
bx r3
.balign 4
-_0205C9EC: .word FUN_0205C9D8 + 1
+_0205C9EC: .word FUN_0205C9D8
thumb_func_start FUN_0205C9F0
FUN_0205C9F0: ; 0x0205C9F0
@@ -195753,7 +195753,7 @@ _0205CA30:
cmp r0, #0x0
bne _0205CA10
_0205CA40:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
@@ -195778,7 +195778,7 @@ FUN_0205CA64: ; 0x0205CA64
push {r4, lr}
add r4, r0, #0x0
bne _0205CA6E
- bl FUN_02020C2C
+ bl ErrorHandling
_0205CA6E:
add r0, r4, #0x0
bl FUN_0205CAD4
@@ -195790,7 +195790,7 @@ FUN_0205CA78: ; 0x0205CA78
ldr r3, _0205CA7C ; =FUN_0205CAE0
bx r3
.balign 4
-_0205CA7C: .word FUN_0205CAE0 + 1
+_0205CA7C: .word FUN_0205CAE0
thumb_func_start FUN_0205CA80
FUN_0205CA80: ; 0x0205CA80
@@ -195804,7 +195804,7 @@ FUN_0205CA80: ; 0x0205CA80
bl FUN_020169D8
add r4, r0, #0x0
bne _0205CA9A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205CA9A:
add r0, r4, #0x0
mov r1, #0x0
@@ -195827,12 +195827,12 @@ _0205CA9A:
bl FUN_0200CA44
add r4, r0, #0x0
bne _0205CACC
- bl FUN_02020C2C
+ bl ErrorHandling
_0205CACC:
add r0, r4, #0x0
pop {r3-r7, pc}
.balign 4
-_0205CAD0: .word FUN_0205CAF8 + 1
+_0205CAD0: .word FUN_0205CAF8
thumb_func_start FUN_0205CAD4
FUN_0205CAD4: ; 0x0205CAD4
@@ -195966,7 +195966,7 @@ _0205CBB6:
mvn r0, r0
cmp r1, r0
bne _0205CBC4
- bl FUN_02020C2C
+ bl ErrorHandling
_0205CBC4:
ldr r0, [r4, #0x8]
mov r1, #0x0
@@ -196473,7 +196473,7 @@ FUN_0205CF34: ; 0x0205CF34
strh r0, [r4, #0x2a]
pop {r3-r7, pc}
nop
-_0205CF74: .word FUN_0205CFA0 + 1
+_0205CF74: .word FUN_0205CFA0
thumb_func_start FUN_0205CF78
FUN_0205CF78: ; 0x0205CF78
@@ -196493,7 +196493,7 @@ FUN_0205CF78: ; 0x0205CF78
add sp, #0x4
pop {r3-r4, pc}
nop
-_0205CF9C: .word FUN_0205CFA0 + 1
+_0205CF9C: .word FUN_0205CFA0
thumb_func_start FUN_0205CFA0
FUN_0205CFA0: ; 0x0205CFA0
@@ -196584,7 +196584,7 @@ FUN_0205D024: ; 0x0205D024
bl FUN_02025838
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
ldr r0, [r5, #0xc]
bl FUN_02022504
@@ -196621,7 +196621,7 @@ FUN_0205D024: ; 0x0205D024
pop {r3-r7, pc}
nop
_0205D0B4: .word 0x020F96DC
-_0205D0B8: .word FUN_02035E50 + 1
+_0205D0B8: .word FUN_02035E50
thumb_func_start FUN_0205D0BC
FUN_0205D0BC: ; 0x0205D0BC
@@ -196643,7 +196643,7 @@ FUN_0205D0BC: ; 0x0205D0BC
bl FUN_02035D04
pop {r3-r5, pc}
nop
-_0205D0E8: .word FUN_02036A78 + 1
+_0205D0E8: .word FUN_02036A78
thumb_func_start FUN_0205D0EC
FUN_0205D0EC: ; 0x0205D0EC
@@ -196653,14 +196653,14 @@ FUN_0205D0EC: ; 0x0205D0EC
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0205D0F8: .word FUN_0205D0FC + 1
+_0205D0F8: .word FUN_0205D0FC
thumb_func_start FUN_0205D0FC
FUN_0205D0FC: ; 0x0205D0FC
ldr r3, _0205D100 ; =FUN_02037EB8
bx r3
.balign 4
-_0205D100: .word FUN_02037EB8 + 1
+_0205D100: .word FUN_02037EB8
thumb_func_start FUN_0205D104
FUN_0205D104: ; 0x0205D104
@@ -196690,7 +196690,7 @@ FUN_0205D104: ; 0x0205D104
str r0, [r5, #0x0]
pop {r3-r5, pc}
nop
-_0205D140: .word FUN_02049844 + 1
+_0205D140: .word FUN_02049844
thumb_func_start FUN_0205D144
FUN_0205D144: ; 0x0205D144
@@ -196712,7 +196712,7 @@ FUN_0205D144: ; 0x0205D144
str r0, [r1, #0x0]
pop {r3-r5, pc}
.balign 4
-_0205D16C: .word FUN_02049844 + 1
+_0205D16C: .word FUN_02049844
thumb_func_start FUN_0205D170
FUN_0205D170: ; 0x0205D170
@@ -196822,7 +196822,7 @@ FUN_0205D21C: ; 0x0205D21C
strh r0, [r4, #0x2a]
pop {r3-r5, pc}
nop
-_0205D24C: .word FUN_0205D264 + 1
+_0205D24C: .word FUN_0205D264
thumb_func_start FUN_0205D250
FUN_0205D250: ; 0x0205D250
@@ -196834,7 +196834,7 @@ FUN_0205D250: ; 0x0205D250
mov r0, #0x0
pop {r3, pc}
.balign 4
-_0205D260: .word FUN_0205D264 + 1
+_0205D260: .word FUN_0205D264
thumb_func_start FUN_0205D264
FUN_0205D264: ; 0x0205D264
@@ -197020,7 +197020,7 @@ FUN_0205D3B8: ; 0x0205D3B8
bl FUN_02035D04
pop {r3-r5, pc}
nop
-_0205D3E0: .word FUN_02036B90 + 1
+_0205D3E0: .word FUN_02036B90
thumb_func_start FUN_0205D3E4
FUN_0205D3E4: ; 0x0205D3E4
@@ -197030,7 +197030,7 @@ FUN_0205D3E4: ; 0x0205D3E4
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0205D3F0: .word FUN_0205D3F4 + 1
+_0205D3F0: .word FUN_0205D3F4
thumb_func_start FUN_0205D3F4
FUN_0205D3F4: ; 0x0205D3F4
@@ -197067,7 +197067,7 @@ FUN_0205D400: ; 0x0205D400
bl FUN_02025838
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
mov r0, #0x7a
lsl r0, r0, #0x2
@@ -197104,7 +197104,7 @@ FUN_0205D400: ; 0x0205D400
pop {r3-r7, pc}
nop
_0205D490: .word 0x020F96DC
-_0205D494: .word FUN_02035E50 + 1
+_0205D494: .word FUN_02035E50
thumb_func_start FUN_0205D498
FUN_0205D498: ; 0x0205D498
@@ -197138,7 +197138,7 @@ FUN_0205D498: ; 0x0205D498
bl FUN_02035D04
pop {r4-r6, pc}
nop
-_0205D4E0: .word FUN_02036BDC + 1
+_0205D4E0: .word FUN_02036BDC
thumb_func_start FUN_0205D4E4
FUN_0205D4E4: ; 0x0205D4E4
@@ -197202,7 +197202,7 @@ FUN_0205D528: ; 0x0205D528
bl FUN_02035D04
pop {r3-r5, pc}
.balign 4
-_0205D554: .word FUN_02036D94 + 1
+_0205D554: .word FUN_02036D94
thumb_func_start FUN_0205D558
FUN_0205D558: ; 0x0205D558
@@ -197212,7 +197212,7 @@ FUN_0205D558: ; 0x0205D558
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0205D564: .word FUN_0205D568 + 1
+_0205D564: .word FUN_0205D568
thumb_func_start FUN_0205D568
FUN_0205D568: ; 0x0205D568
@@ -197220,7 +197220,7 @@ FUN_0205D568: ; 0x0205D568
mov r1, #0xb
bx r3
nop
-_0205D570: .word FUN_02037FC4 + 1
+_0205D570: .word FUN_02037FC4
thumb_func_start FUN_0205D574
FUN_0205D574: ; 0x0205D574
@@ -197244,7 +197244,7 @@ FUN_0205D574: ; 0x0205D574
bl FUN_02035D04
pop {r3-r5, pc}
nop
-_0205D5A4: .word FUN_02036DD4 + 1
+_0205D5A4: .word FUN_02036DD4
thumb_func_start FUN_0205D5A8
FUN_0205D5A8: ; 0x0205D5A8
@@ -197254,7 +197254,7 @@ FUN_0205D5A8: ; 0x0205D5A8
mov r0, #0x1
pop {r3, pc}
.balign 4
-_0205D5B4: .word FUN_0205D5B8 + 1
+_0205D5B4: .word FUN_0205D5B8
thumb_func_start FUN_0205D5B8
FUN_0205D5B8: ; 0x0205D5B8
@@ -197292,7 +197292,7 @@ FUN_0205D5C4: ; 0x0205D5C4
strh r0, [r5, #0x2a]
pop {r4-r6, pc}
nop
-_0205D600: .word FUN_0205E30C + 1
+_0205D600: .word FUN_0205E30C
thumb_func_start FUN_0205D604
FUN_0205D604: ; 0x0205D604
@@ -197310,7 +197310,7 @@ FUN_0205D604: ; 0x0205D604
mov r0, #0x0
pop {r4, pc}
nop
-_0205D624: .word FUN_0205E30C + 1
+_0205D624: .word FUN_0205E30C
thumb_func_start FUN_0205D628
FUN_0205D628: ; 0x0205D628
@@ -197350,7 +197350,7 @@ FUN_0205D660: ; 0x0205D660
ldr r2, _0205D66C ; =0x00000AF2
bx r3
nop
-_0205D668: .word FUN_0205CF34 + 1
+_0205D668: .word FUN_0205CF34
_0205D66C: .word 0x00000AF2
thumb_func_start FUN_0205D670
@@ -197388,7 +197388,7 @@ FUN_0205D69C: ; 0x0205D69C
ldr r2, _0205D6A8 ; =0x00000AF3
bx r3
nop
-_0205D6A4: .word FUN_0205CF34 + 1
+_0205D6A4: .word FUN_0205CF34
_0205D6A8: .word 0x00000AF3
thumb_func_start FUN_0205D6AC
@@ -197448,7 +197448,7 @@ FUN_0205D714: ; 0x0205D714
ldr r2, _0205D720 ; =0x000022F6
bx r3
nop
-_0205D71C: .word FUN_0205CF34 + 1
+_0205D71C: .word FUN_0205CF34
_0205D720: .word 0x000022F6
thumb_func_start FUN_0205D724
@@ -197693,7 +197693,7 @@ FUN_0205D8B8: ; 0x0205D8B8
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
-_0205D900: .word FUN_0205D904 + 1
+_0205D900: .word FUN_0205D904
thumb_func_start FUN_0205D904
FUN_0205D904: ; 0x0205D904
@@ -197720,7 +197720,7 @@ _0205D926:
mov r2, #0x3
bl FUN_020545B8
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r5, r0, #0x0
add r0, r4, #0x0
add r1, r5, #0x0
@@ -197798,7 +197798,7 @@ FUN_0205D9A8: ; 0x0205D9A8
bl FUN_02025838
str r0, [r4, #0x8]
ldr r0, [r5, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
ldr r0, [r5, #0xc]
bl FUN_02022504
@@ -197834,7 +197834,7 @@ FUN_0205D9A8: ; 0x0205D9A8
pop {r3-r7, pc}
.balign 4
_0205DA34: .word 0x020F96DC
-_0205DA38: .word FUN_02035E50 + 1
+_0205DA38: .word FUN_02035E50
thumb_func_start FUN_0205DA3C
FUN_0205DA3C: ; 0x0205DA3C
@@ -197865,7 +197865,7 @@ FUN_0205DA3C: ; 0x0205DA3C
bl FUN_0206EDD4
pop {r4-r6, pc}
nop
-_0205DA7C: .word FUN_0205DAAC + 1
+_0205DA7C: .word FUN_0205DAAC
thumb_func_start FUN_0205DA80
FUN_0205DA80: ; 0x0205DA80
@@ -197914,7 +197914,7 @@ FUN_0205DACC: ; 0x0205DACC
ldr r2, _0205DAD8 ; =0x000007F7
bx r3
nop
-_0205DAD4: .word FUN_0205CF34 + 1
+_0205DAD4: .word FUN_0205CF34
_0205DAD8: .word 0x000007F7
thumb_func_start FUN_0205DADC
@@ -198087,7 +198087,7 @@ FUN_0205DBF0: ; 0x0205DBF0
add sp, #0x4
pop {r3-r6, pc}
.balign 4
-_0205DC34: .word FUN_0205D904 + 1
+_0205DC34: .word FUN_0205D904
thumb_func_start FUN_0205DC38
FUN_0205DC38: ; 0x0205DC38
@@ -198185,7 +198185,7 @@ _0205DCFA:
mov r0, #0x0
pop {r3-r5, pc}
nop
-_0205DD00: .word FUN_0205D568 + 1
+_0205DD00: .word FUN_0205D568
thumb_func_start FUN_0205DD04
FUN_0205DD04: ; 0x0205DD04
@@ -198196,8 +198196,8 @@ FUN_0205DD04: ; 0x0205DD04
ldr r1, _0205DD14 ; =FUN_0205DC38
bx r3
.balign 4
-_0205DD10: .word FUN_020463CC + 1
-_0205DD14: .word FUN_0205DC38 + 1
+_0205DD10: .word FUN_020463CC
+_0205DD14: .word FUN_0205DC38
thumb_func_start FUN_0205DD18
FUN_0205DD18: ; 0x0205DD18
@@ -198221,7 +198221,7 @@ FUN_0205DD38: ; 0x0205DD38
ldr r3, _0205DD3C ; =FUN_02016A18
bx r3
.balign 4
-_0205DD3C: .word FUN_02016A18 + 1
+_0205DD3C: .word FUN_02016A18
thumb_func_start FUN_0205DD40
FUN_0205DD40: ; 0x0205DD40
@@ -198241,7 +198241,7 @@ FUN_0205DD40: ; 0x0205DD40
add r0, #0x1c
mov r2, #0xa0
str r1, [r4, #0x18]
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r3, #0x0
add r2, r3, #0x0
mov r0, #0x28
@@ -198291,7 +198291,7 @@ _0205DDB6:
ldrb r4, [r0, r5]
cmp r4, #0x0
bne _0205DDC2
- bl FUN_02020C2C
+ bl ErrorHandling
_0205DDC2:
cmp r4, #0x1
bhi _0205DDCA
@@ -198302,18 +198302,18 @@ _0205DDCA:
add r6, r0, #0x0
ldr r0, _0205DED0 ; =0x0000FFFF
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r6, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r6, r0, #0x10
cmp r6, r4
blo _0205DDF2
- bl FUN_02020C2C
+ bl ErrorHandling
_0205DDF2:
lsl r1, r5, #0x1
mov r0, #0x9
@@ -198324,13 +198324,13 @@ _0205DDF2:
lsr r6, r0, #0x18
add r0, r6, #0x0
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
lsr r0, r0, #0x18
bne _0205DE1C
add r0, r6, #0x0
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r5, r1
add r0, r5, #0x0
b _0205DE5C
@@ -198339,7 +198339,7 @@ _0205DE1C:
bne _0205DE30
add r0, r6, #0x0
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r5, r4
add r1, r5, r1
sub r0, r0, #0x1
@@ -198348,7 +198348,7 @@ _0205DE30:
lsl r7, r4, #0x1
cmp r6, r7
bge _0205DE3A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205DE3A:
sub r0, r6, r7
lsl r0, r0, #0x18
@@ -198452,12 +198452,12 @@ _0205DEE0:
bl FUN_0201B9EC
mov r1, #0x29
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r7, r0, #0x10
cmp r7, #0x64
blo _0205DF12
- bl FUN_02020C2C
+ bl ErrorHandling
_0205DF12:
cmp r7, #0x32
bhs _0205DF1A
@@ -198667,7 +198667,7 @@ FUN_0205E080: ; 0x0205E080
add r6, r2, #0x0
cmp r4, #0x0
bne _0205E090
- bl FUN_02020C2C
+ bl ErrorHandling
_0205E090:
str r4, [r5, #0x8]
str r6, [r5, #0xc]
@@ -198916,7 +198916,7 @@ _0205E24C:
add r1, r1, #0x1
cmp r1, #0x3
blt _0205E23A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205E256:
pop {r4-r6, pc}
@@ -198999,12 +198999,12 @@ _0205E2DC:
bl FUN_0201B9EC
mov r1, #0x29
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x64
blo _0205E2F4
- bl FUN_02020C2C
+ bl ErrorHandling
_0205E2F4:
ldrb r0, [r6, r5]
cmp r4, r0
@@ -199160,7 +199160,7 @@ _0205E426:
lsl r0, r5, #0x10
lsr r0, r0, #0x10
bne _0205E430
- bl FUN_02020C2C
+ bl ErrorHandling
_0205E430:
lsl r0, r5, #0x10
lsr r0, r0, #0x10
@@ -199174,20 +199174,20 @@ _0205E43C:
lsl r1, r5, #0x10
ldr r0, _0205E47C ; =0x0000FFFF
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r4, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
lsl r0, r5, #0x10
lsr r0, r0, #0x10
cmp r4, r0
blo _0205E46A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205E46A:
cmp r4, #0x0
bne _0205E472
@@ -199928,7 +199928,7 @@ FUN_0205EA10: ; 0x0205EA10
mov r1, #0x0
bx r3
nop
-_0205EA18: .word FUN_0205E9C8 + 1
+_0205EA18: .word FUN_0205E9C8
thumb_func_start FUN_0205EA1C
FUN_0205EA1C: ; 0x0205EA1C
@@ -199936,7 +199936,7 @@ FUN_0205EA1C: ; 0x0205EA1C
mov r1, #0x1
bx r3
nop
-_0205EA24: .word FUN_0205E9C8 + 1
+_0205EA24: .word FUN_0205E9C8
thumb_func_start FUN_0205EA28
FUN_0205EA28: ; 0x0205EA28
@@ -199944,7 +199944,7 @@ FUN_0205EA28: ; 0x0205EA28
mov r1, #0x2
bx r3
nop
-_0205EA30: .word FUN_0205E9C8 + 1
+_0205EA30: .word FUN_0205E9C8
thumb_func_start FUN_0205EA34
FUN_0205EA34: ; 0x0205EA34
@@ -199952,7 +199952,7 @@ FUN_0205EA34: ; 0x0205EA34
mov r1, #0x3
bx r3
nop
-_0205EA3C: .word FUN_0205E9C8 + 1
+_0205EA3C: .word FUN_0205E9C8
thumb_func_start FUN_0205EA40
FUN_0205EA40: ; 0x0205EA40
@@ -200109,7 +200109,7 @@ FUN_0205EB38: ; 0x0205EB38
add r7, r0, #0x0
mov r1, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r7, #0x0
add r1, sp, #0xc
mov r2, #0x2
@@ -200261,21 +200261,21 @@ FUN_0205EC84: ; 0x0205EC84
ldr r3, _0205EC88 ; =FUN_020462E4
bx r3
.balign 4
-_0205EC88: .word FUN_020462E4 + 1
+_0205EC88: .word FUN_020462E4
thumb_func_start FUN_0205EC8C
FUN_0205EC8C: ; 0x0205EC8C
ldr r3, _0205EC90 ; =FUN_0204630C
bx r3
.balign 4
-_0205EC90: .word FUN_0204630C + 1
+_0205EC90: .word FUN_0204630C
thumb_func_start FUN_0205EC94
FUN_0205EC94: ; 0x0205EC94
ldr r3, _0205EC98 ; =FUN_020462B8
bx r3
.balign 4
-_0205EC98: .word FUN_020462B8 + 1
+_0205EC98: .word FUN_020462B8
thumb_func_start FUN_0205EC9C
FUN_0205EC9C: ; 0x0205EC9C
@@ -200303,7 +200303,7 @@ _0205ECC0:
bl FUN_0205EC94
pop {r3, pc}
_0205ECCA:
- bl FUN_02020C2C
+ bl ErrorHandling
_0205ECCE:
mov r0, #0x0
pop {r3, pc}
@@ -200316,7 +200316,7 @@ FUN_0205ECD4: ; 0x0205ECD4
lsl r1, r1, #0x4
bx r3
.balign 4
-_0205ECDC: .word FUN_0205EC84 + 1
+_0205ECDC: .word FUN_0205EC84
thumb_func_start FUN_0205ECE0
FUN_0205ECE0: ; 0x0205ECE0
@@ -200325,7 +200325,7 @@ FUN_0205ECE0: ; 0x0205ECE0
lsl r1, r1, #0x4
bx r3
.balign 4
-_0205ECE8: .word FUN_0205EC94 + 1
+_0205ECE8: .word FUN_0205EC94
thumb_func_start FUN_0205ECEC
FUN_0205ECEC: ; 0x0205ECEC
@@ -200333,7 +200333,7 @@ FUN_0205ECEC: ; 0x0205ECEC
ldr r1, _0205ECF8 ; =0x0000098D
bx r3
nop
-_0205ECF4: .word FUN_0205EC94 + 1
+_0205ECF4: .word FUN_0205EC94
_0205ECF8: .word 0x0000098D
thumb_func_start FUN_0205ECFC
@@ -200342,7 +200342,7 @@ FUN_0205ECFC: ; 0x0205ECFC
ldr r1, _0205ED08 ; =0x00000964
bx r3
nop
-_0205ED04: .word FUN_0205EC84 + 1
+_0205ED04: .word FUN_0205EC84
_0205ED08: .word 0x00000964
thumb_func_start FUN_0205ED0C
@@ -200351,7 +200351,7 @@ FUN_0205ED0C: ; 0x0205ED0C
ldr r1, _0205ED18 ; =0x00000964
bx r3
nop
-_0205ED14: .word FUN_0205EC94 + 1
+_0205ED14: .word FUN_0205EC94
_0205ED18: .word 0x00000964
thumb_func_start FUN_0205ED1C
@@ -200360,7 +200360,7 @@ FUN_0205ED1C: ; 0x0205ED1C
ldr r1, _0205ED28 ; =0x00000961
bx r3
nop
-_0205ED24: .word FUN_0205EC84 + 1
+_0205ED24: .word FUN_0205EC84
_0205ED28: .word 0x00000961
thumb_func_start FUN_0205ED2C
@@ -200369,7 +200369,7 @@ FUN_0205ED2C: ; 0x0205ED2C
ldr r1, _0205ED38 ; =0x00000961
bx r3
nop
-_0205ED34: .word FUN_0205EC8C + 1
+_0205ED34: .word FUN_0205EC8C
_0205ED38: .word 0x00000961
thumb_func_start FUN_0205ED3C
@@ -200378,7 +200378,7 @@ FUN_0205ED3C: ; 0x0205ED3C
ldr r1, _0205ED48 ; =0x00000961
bx r3
nop
-_0205ED44: .word FUN_0205EC94 + 1
+_0205ED44: .word FUN_0205EC94
_0205ED48: .word 0x00000961
thumb_func_start FUN_0205ED4C
@@ -200387,7 +200387,7 @@ FUN_0205ED4C: ; 0x0205ED4C
ldr r1, _0205ED58 ; =0x00000965
bx r3
nop
-_0205ED54: .word FUN_0205EC84 + 1
+_0205ED54: .word FUN_0205EC84
_0205ED58: .word 0x00000965
thumb_func_start FUN_0205ED5C
@@ -200396,7 +200396,7 @@ FUN_0205ED5C: ; 0x0205ED5C
ldr r1, _0205ED68 ; =0x00000965
bx r3
nop
-_0205ED64: .word FUN_0205EC8C + 1
+_0205ED64: .word FUN_0205EC8C
_0205ED68: .word 0x00000965
thumb_func_start FUN_0205ED6C
@@ -200405,7 +200405,7 @@ FUN_0205ED6C: ; 0x0205ED6C
ldr r1, _0205ED78 ; =0x00000965
bx r3
nop
-_0205ED74: .word FUN_0205EC94 + 1
+_0205ED74: .word FUN_0205EC94
_0205ED78: .word 0x00000965
thumb_func_start FUN_0205ED7C
@@ -200414,7 +200414,7 @@ FUN_0205ED7C: ; 0x0205ED7C
ldr r1, _0205ED88 ; =0x0000096D
bx r3
nop
-_0205ED84: .word FUN_0205EC84 + 1
+_0205ED84: .word FUN_0205EC84
_0205ED88: .word 0x0000096D
thumb_func_start FUN_0205ED8C
@@ -200423,7 +200423,7 @@ FUN_0205ED8C: ; 0x0205ED8C
ldr r1, _0205ED98 ; =0x0000096D
bx r3
nop
-_0205ED94: .word FUN_0205EC8C + 1
+_0205ED94: .word FUN_0205EC8C
_0205ED98: .word 0x0000096D
thumb_func_start FUN_0205ED9C
@@ -200432,7 +200432,7 @@ FUN_0205ED9C: ; 0x0205ED9C
ldr r1, _0205EDA8 ; =0x0000096D
bx r3
nop
-_0205EDA4: .word FUN_0205EC94 + 1
+_0205EDA4: .word FUN_0205EC94
_0205EDA8: .word 0x0000096D
thumb_func_start FUN_0205EDAC
@@ -200441,7 +200441,7 @@ FUN_0205EDAC: ; 0x0205EDAC
ldr r1, _0205EDB8 ; =0x0000096E
bx r3
nop
-_0205EDB4: .word FUN_0205EC84 + 1
+_0205EDB4: .word FUN_0205EC84
_0205EDB8: .word 0x0000096E
thumb_func_start FUN_0205EDBC
@@ -200450,7 +200450,7 @@ FUN_0205EDBC: ; 0x0205EDBC
ldr r1, _0205EDC8 ; =0x0000096F
bx r3
nop
-_0205EDC4: .word FUN_0205EC84 + 1
+_0205EDC4: .word FUN_0205EC84
_0205EDC8: .word 0x0000096F
thumb_func_start FUN_0205EDCC
@@ -200460,7 +200460,7 @@ FUN_0205EDCC: ; 0x0205EDCC
lsl r1, r1, #0x4
bx r3
.balign 4
-_0205EDD4: .word FUN_0205EC84 + 1
+_0205EDD4: .word FUN_0205EC84
thumb_func_start FUN_0205EDD8
FUN_0205EDD8: ; 0x0205EDD8
@@ -200468,7 +200468,7 @@ FUN_0205EDD8: ; 0x0205EDD8
ldr r1, _0205EDE4 ; =0x00000971
bx r3
nop
-_0205EDE0: .word FUN_0205EC84 + 1
+_0205EDE0: .word FUN_0205EC84
_0205EDE4: .word 0x00000971
thumb_func_start FUN_0205EDE8
@@ -200477,7 +200477,7 @@ FUN_0205EDE8: ; 0x0205EDE8
ldr r1, _0205EDF4 ; =0x00000972
bx r3
nop
-_0205EDF0: .word FUN_0205EC84 + 1
+_0205EDF0: .word FUN_0205EC84
_0205EDF4: .word 0x00000972
thumb_func_start FUN_0205EDF8
@@ -200486,7 +200486,7 @@ FUN_0205EDF8: ; 0x0205EDF8
ldr r1, _0205EE04 ; =0x00000973
bx r3
nop
-_0205EE00: .word FUN_0205EC84 + 1
+_0205EE00: .word FUN_0205EC84
_0205EE04: .word 0x00000973
thumb_func_start FUN_0205EE08
@@ -200912,7 +200912,7 @@ FUN_0205F154: ; 0x0205F154
ldr r1, _0205F160 ; =0x00000966
bx r3
nop
-_0205F15C: .word FUN_0205EC84 + 1
+_0205F15C: .word FUN_0205EC84
_0205F160: .word 0x00000966
thumb_func_start FUN_0205F164
@@ -200921,7 +200921,7 @@ FUN_0205F164: ; 0x0205F164
ldr r1, _0205F170 ; =0x00000966
bx r3
nop
-_0205F16C: .word FUN_0205EC8C + 1
+_0205F16C: .word FUN_0205EC8C
_0205F170: .word 0x00000966
thumb_func_start FUN_0205F174
@@ -200930,7 +200930,7 @@ FUN_0205F174: ; 0x0205F174
ldr r1, _0205F180 ; =0x00000966
bx r3
nop
-_0205F17C: .word FUN_0205EC94 + 1
+_0205F17C: .word FUN_0205EC94
_0205F180: .word 0x00000966
thumb_func_start FUN_0205F184
@@ -200939,7 +200939,7 @@ FUN_0205F184: ; 0x0205F184
ldr r1, _0205F190 ; =0x00000978
bx r3
nop
-_0205F18C: .word FUN_0205EC94 + 1
+_0205F18C: .word FUN_0205EC94
_0205F190: .word 0x00000978
thumb_func_start FUN_0205F194
@@ -200948,7 +200948,7 @@ FUN_0205F194: ; 0x0205F194
ldr r1, _0205F1A0 ; =0x00000992
bx r3
nop
-_0205F19C: .word FUN_0205EC94 + 1
+_0205F19C: .word FUN_0205EC94
_0205F1A0: .word 0x00000992
thumb_func_start FUN_0205F1A4
@@ -200957,7 +200957,7 @@ FUN_0205F1A4: ; 0x0205F1A4
ldr r1, _0205F1B0 ; =0x0000097D
bx r3
nop
-_0205F1AC: .word FUN_0205EC94 + 1
+_0205F1AC: .word FUN_0205EC94
_0205F1B0: .word 0x0000097D
thumb_func_start FUN_0205F1B4
@@ -200966,7 +200966,7 @@ FUN_0205F1B4: ; 0x0205F1B4
ldr r1, _0205F1C0 ; =0x0000097E
bx r3
nop
-_0205F1BC: .word FUN_0205EC94 + 1
+_0205F1BC: .word FUN_0205EC94
_0205F1C0: .word 0x0000097E
thumb_func_start FUN_0205F1C4
@@ -200975,7 +200975,7 @@ FUN_0205F1C4: ; 0x0205F1C4
ldr r1, _0205F1D0 ; =0x0000097C
bx r3
nop
-_0205F1CC: .word FUN_0205EC84 + 1
+_0205F1CC: .word FUN_0205EC84
_0205F1D0: .word 0x0000097C
thumb_func_start FUN_0205F1D4
@@ -200984,7 +200984,7 @@ FUN_0205F1D4: ; 0x0205F1D4
ldr r1, _0205F1E0 ; =0x0000097C
bx r3
nop
-_0205F1DC: .word FUN_0205EC8C + 1
+_0205F1DC: .word FUN_0205EC8C
_0205F1E0: .word 0x0000097C
thumb_func_start FUN_0205F1E4
@@ -200993,7 +200993,7 @@ FUN_0205F1E4: ; 0x0205F1E4
ldr r1, _0205F1F0 ; =0x0000097C
bx r3
nop
-_0205F1EC: .word FUN_0205EC94 + 1
+_0205F1EC: .word FUN_0205EC94
_0205F1F0: .word 0x0000097C
thumb_func_start FUN_0205F1F4
@@ -201002,7 +201002,7 @@ FUN_0205F1F4: ; 0x0205F1F4
ldr r1, _0205F200 ; =0x00000967
bx r3
nop
-_0205F1FC: .word FUN_0205EC84 + 1
+_0205F1FC: .word FUN_0205EC84
_0205F200: .word 0x00000967
thumb_func_start FUN_0205F204
@@ -201011,7 +201011,7 @@ FUN_0205F204: ; 0x0205F204
ldr r1, _0205F210 ; =0x00000967
bx r3
nop
-_0205F20C: .word FUN_0205EC8C + 1
+_0205F20C: .word FUN_0205EC8C
_0205F210: .word 0x00000967
thumb_func_start FUN_0205F214
@@ -201020,7 +201020,7 @@ FUN_0205F214: ; 0x0205F214
ldr r1, _0205F220 ; =0x00000967
bx r3
nop
-_0205F21C: .word FUN_0205EC94 + 1
+_0205F21C: .word FUN_0205EC94
_0205F220: .word 0x00000967
thumb_func_start FUN_0205F224
@@ -201029,7 +201029,7 @@ FUN_0205F224: ; 0x0205F224
ldr r1, _0205F230 ; =0x00000979
bx r3
nop
-_0205F22C: .word FUN_0205EC84 + 1
+_0205F22C: .word FUN_0205EC84
_0205F230: .word 0x00000979
thumb_func_start FUN_0205F234
@@ -201038,7 +201038,7 @@ FUN_0205F234: ; 0x0205F234
ldr r1, _0205F240 ; =0x00000979
bx r3
nop
-_0205F23C: .word FUN_0205EC8C + 1
+_0205F23C: .word FUN_0205EC8C
_0205F240: .word 0x00000979
thumb_func_start FUN_0205F244
@@ -201047,7 +201047,7 @@ FUN_0205F244: ; 0x0205F244
ldr r1, _0205F250 ; =0x00000979
bx r3
nop
-_0205F24C: .word FUN_0205EC94 + 1
+_0205F24C: .word FUN_0205EC94
_0205F250: .word 0x00000979
thumb_func_start FUN_0205F254
@@ -201056,7 +201056,7 @@ FUN_0205F254: ; 0x0205F254
ldr r1, _0205F260 ; =0x00000994
bx r3
nop
-_0205F25C: .word FUN_0205EC8C + 1
+_0205F25C: .word FUN_0205EC8C
_0205F260: .word 0x00000994
thumb_func_start FUN_0205F264
@@ -201065,7 +201065,7 @@ FUN_0205F264: ; 0x0205F264
ldr r2, _0205F270 ; =0x00000962
bx r3
nop
-_0205F26C: .word FUN_0205EC9C + 1
+_0205F26C: .word FUN_0205EC9C
_0205F270: .word 0x00000962
thumb_func_start FUN_0205F274
@@ -201074,7 +201074,7 @@ FUN_0205F274: ; 0x0205F274
ldr r1, _0205F280 ; =0x0000097A
bx r3
nop
-_0205F27C: .word FUN_0205EC84 + 1
+_0205F27C: .word FUN_0205EC84
_0205F280: .word 0x0000097A
thumb_func_start FUN_0205F284
@@ -201083,7 +201083,7 @@ FUN_0205F284: ; 0x0205F284
ldr r1, _0205F290 ; =0x0000097A
bx r3
nop
-_0205F28C: .word FUN_0205EC8C + 1
+_0205F28C: .word FUN_0205EC8C
_0205F290: .word 0x0000097A
thumb_func_start FUN_0205F294
@@ -201092,7 +201092,7 @@ FUN_0205F294: ; 0x0205F294
ldr r1, _0205F2A0 ; =0x0000097A
bx r3
nop
-_0205F29C: .word FUN_0205EC94 + 1
+_0205F29C: .word FUN_0205EC94
_0205F2A0: .word 0x0000097A
thumb_func_start FUN_0205F2A4
@@ -201101,7 +201101,7 @@ FUN_0205F2A4: ; 0x0205F2A4
ldr r1, _0205F2B0 ; =0x0000097B
bx r3
nop
-_0205F2AC: .word FUN_0205EC84 + 1
+_0205F2AC: .word FUN_0205EC84
_0205F2B0: .word 0x0000097B
thumb_func_start FUN_0205F2B4
@@ -201110,7 +201110,7 @@ FUN_0205F2B4: ; 0x0205F2B4
ldr r1, _0205F2C0 ; =0x0000097B
bx r3
nop
-_0205F2BC: .word FUN_0205EC8C + 1
+_0205F2BC: .word FUN_0205EC8C
_0205F2C0: .word 0x0000097B
thumb_func_start FUN_0205F2C4
@@ -201119,7 +201119,7 @@ FUN_0205F2C4: ; 0x0205F2C4
ldr r1, _0205F2D0 ; =0x0000097B
bx r3
nop
-_0205F2CC: .word FUN_0205EC94 + 1
+_0205F2CC: .word FUN_0205EC94
_0205F2D0: .word 0x0000097B
thumb_func_start FUN_0205F2D4
@@ -201128,7 +201128,7 @@ FUN_0205F2D4: ; 0x0205F2D4
ldr r2, _0205F2E0 ; =0x00000963
bx r3
nop
-_0205F2DC: .word FUN_0205EC9C + 1
+_0205F2DC: .word FUN_0205EC9C
_0205F2E0: .word 0x00000963
thumb_func_start FUN_0205F2E4
@@ -201139,7 +201139,7 @@ FUN_0205F2E4: ; 0x0205F2E4
add r6, r1, #0x0
cmp r4, #0x45
blo _0205F2F4
- bl FUN_02020C2C
+ bl ErrorHandling
_0205F2F4:
mov r2, #0x9b
lsl r2, r2, #0x4
@@ -201155,7 +201155,7 @@ FUN_0205F304: ; 0x0205F304
ldr r1, _0205F310 ; =0x0000098C
bx r3
nop
-_0205F30C: .word FUN_0205EC84 + 1
+_0205F30C: .word FUN_0205EC84
_0205F310: .word 0x0000098C
thumb_func_start FUN_0205F314
@@ -201172,7 +201172,7 @@ FUN_0205F314: ; 0x0205F314
cmp r5, r1
bls _0205F334
_0205F32C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r5, pc}
_0205F334:
@@ -201206,7 +201206,7 @@ FUN_0205F358: ; 0x0205F358
ldr r1, _0205F364 ; =0x0000403F
bx r3
.balign 4
-_0205F360: .word FUN_0205F314 + 1
+_0205F360: .word FUN_0205F314
_0205F364: .word 0x0000403F
thumb_func_start FUN_0205F368
@@ -201215,7 +201215,7 @@ FUN_0205F368: ; 0x0205F368
ldr r1, _0205F374 ; =0x0000403F
bx r3
nop
-_0205F370: .word FUN_0205F344 + 1
+_0205F370: .word FUN_0205F344
_0205F374: .word 0x0000403F
thumb_func_start FUN_0205F378
@@ -201225,7 +201225,7 @@ FUN_0205F378: ; 0x0205F378
ldr r1, _0205F384 ; =0x00004030
bx r3
.balign 4
-_0205F380: .word FUN_0205F314 + 1
+_0205F380: .word FUN_0205F314
_0205F384: .word 0x00004030
thumb_func_start FUN_0205F388
@@ -201234,7 +201234,7 @@ FUN_0205F388: ; 0x0205F388
ldr r1, _0205F394 ; =0x00004030
bx r3
nop
-_0205F390: .word FUN_0205F344 + 1
+_0205F390: .word FUN_0205F344
_0205F394: .word 0x00004030
thumb_func_start FUN_0205F398
@@ -201287,7 +201287,7 @@ FUN_0205F3E8: ; 0x0205F3E8
ldr r1, _0205F3F4 ; =0x00004035
bx r3
nop
-_0205F3F0: .word FUN_0205F344 + 1
+_0205F3F0: .word FUN_0205F344
_0205F3F4: .word 0x00004035
thumb_func_start FUN_0205F3F8
@@ -201297,7 +201297,7 @@ FUN_0205F3F8: ; 0x0205F3F8
ldr r1, _0205F404 ; =0x00004035
bx r3
.balign 4
-_0205F400: .word FUN_0205F314 + 1
+_0205F400: .word FUN_0205F314
_0205F404: .word 0x00004035
thumb_func_start FUN_0205F408
@@ -201317,7 +201317,7 @@ FUN_0205F41C: ; 0x0205F41C
ldr r1, _0205F428 ; =0x00004033
bx r3
nop
-_0205F424: .word FUN_0205F344 + 1
+_0205F424: .word FUN_0205F344
_0205F428: .word 0x00004033
thumb_func_start FUN_0205F42C
@@ -201327,7 +201327,7 @@ FUN_0205F42C: ; 0x0205F42C
ldr r1, _0205F438 ; =0x00004033
bx r3
.balign 4
-_0205F434: .word FUN_0205F314 + 1
+_0205F434: .word FUN_0205F314
_0205F438: .word 0x00004033
thumb_func_start FUN_0205F43C
@@ -201336,7 +201336,7 @@ FUN_0205F43C: ; 0x0205F43C
ldr r1, _0205F448 ; =0x00004034
bx r3
nop
-_0205F444: .word FUN_0205F344 + 1
+_0205F444: .word FUN_0205F344
_0205F448: .word 0x00004034
thumb_func_start FUN_0205F44C
@@ -201346,7 +201346,7 @@ FUN_0205F44C: ; 0x0205F44C
ldr r1, _0205F458 ; =0x00004034
bx r3
.balign 4
-_0205F454: .word FUN_0205F314 + 1
+_0205F454: .word FUN_0205F314
_0205F458: .word 0x00004034
thumb_func_start FUN_0205F45C
@@ -201357,7 +201357,7 @@ FUN_0205F45C: ; 0x0205F45C
cmp r4, #0x3
blo _0205F46A
_0205F466:
- bl FUN_02020C2C
+ bl ErrorHandling
_0205F46A:
ldr r0, _0205F474 ; =0x020F7430
lsl r1, r4, #0x1
@@ -201416,7 +201416,7 @@ FUN_0205F4C8: ; 0x0205F4C8
cmp r4, #0x4
blt _0205F4D6
_0205F4D2:
- bl FUN_02020C2C
+ bl ErrorHandling
_0205F4D6:
ldr r0, _0205F4E0 ; =0x020F7436
lsl r1, r4, #0x1
@@ -201456,7 +201456,7 @@ FUN_0205F50C: ; 0x0205F50C
bx r3
nop
_0205F51C: .word 0x00004036
-_0205F520: .word FUN_0205F314 + 1
+_0205F520: .word FUN_0205F314
thumb_func_start FUN_0205F524
FUN_0205F524: ; 0x0205F524
@@ -201487,7 +201487,7 @@ FUN_0205F54C: ; 0x0205F54C
mov r2, #0x0
bx r3
.balign 4
-_0205F554: .word FUN_0205F314 + 1
+_0205F554: .word FUN_0205F314
_0205F558: .word 0x0000403A
thumb_func_start FUN_0205F55C
@@ -201496,7 +201496,7 @@ FUN_0205F55C: ; 0x0205F55C
ldr r1, _0205F568 ; =0x0000403A
bx r3
nop
-_0205F564: .word FUN_0205F344 + 1
+_0205F564: .word FUN_0205F344
_0205F568: .word 0x0000403A
thumb_func_start FUN_0205F56C
@@ -201526,7 +201526,7 @@ FUN_0205F594: ; 0x0205F594
ldr r1, _0205F5A0 ; =0x0000403B
bx r3
nop
-_0205F59C: .word FUN_0205F344 + 1
+_0205F59C: .word FUN_0205F344
_0205F5A0: .word 0x0000403B
thumb_func_start FUN_0205F5A4
@@ -201536,7 +201536,7 @@ FUN_0205F5A4: ; 0x0205F5A4
ldr r1, _0205F5B0 ; =0x0000403B
bx r3
.balign 4
-_0205F5AC: .word FUN_0205F314 + 1
+_0205F5AC: .word FUN_0205F314
_0205F5B0: .word 0x0000403B
thumb_func_start FUN_0205F5B4
@@ -201616,7 +201616,7 @@ FUN_0205F648: ; 0x0205F648
ldr r1, _0205F654 ; =0x00004041
bx r3
nop
-_0205F650: .word FUN_0205F344 + 1
+_0205F650: .word FUN_0205F344
_0205F654: .word 0x00004041
thumb_func_start FUN_0205F658
@@ -201626,7 +201626,7 @@ FUN_0205F658: ; 0x0205F658
ldr r1, _0205F664 ; =0x00004041
bx r3
.balign 4
-_0205F660: .word FUN_0205F314 + 1
+_0205F660: .word FUN_0205F314
_0205F664: .word 0x00004041
thumb_func_start FUN_0205F668
@@ -201636,7 +201636,7 @@ FUN_0205F668: ; 0x0205F668
add r4, r0, #0x0
bl FUN_0201B9EC
mov r1, #0x62
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r1, #0x2
lsl r1, r1, #0x10
add r0, r4, #0x0
@@ -201650,7 +201650,7 @@ FUN_0205F688: ; 0x0205F688
ldr r1, _0205F694 ; =0x0000403E
bx r3
nop
-_0205F690: .word FUN_0205F344 + 1
+_0205F690: .word FUN_0205F344
_0205F694: .word 0x0000403E
thumb_func_start FUN_0205F698
@@ -201660,7 +201660,7 @@ FUN_0205F698: ; 0x0205F698
ldr r1, _0205F6A4 ; =0x0000403E
bx r3
.balign 4
-_0205F6A0: .word FUN_0205F314 + 1
+_0205F6A0: .word FUN_0205F314
_0205F6A4: .word 0x0000403E
thumb_func_start FUN_0205F6A8
@@ -201669,7 +201669,7 @@ FUN_0205F6A8: ; 0x0205F6A8
ldr r1, _0205F6B4 ; =0x00004049
bx r3
nop
-_0205F6B0: .word FUN_0205F344 + 1
+_0205F6B0: .word FUN_0205F344
_0205F6B4: .word 0x00004049
thumb_func_start FUN_0205F6B8
@@ -201679,7 +201679,7 @@ FUN_0205F6B8: ; 0x0205F6B8
ldr r1, _0205F6C4 ; =0x00004049
bx r3
.balign 4
-_0205F6C0: .word FUN_0205F314 + 1
+_0205F6C0: .word FUN_0205F314
_0205F6C4: .word 0x00004049
thumb_func_start FUN_0205F6C8
@@ -201688,7 +201688,7 @@ FUN_0205F6C8: ; 0x0205F6C8
ldr r1, _0205F6D4 ; =0x00004040
bx r3
nop
-_0205F6D0: .word FUN_0205F344 + 1
+_0205F6D0: .word FUN_0205F344
_0205F6D4: .word 0x00004040
thumb_func_start FUN_0205F6D8
@@ -201698,7 +201698,7 @@ FUN_0205F6D8: ; 0x0205F6D8
ldr r1, _0205F6E4 ; =0x00004040
bx r3
.balign 4
-_0205F6E0: .word FUN_0205F314 + 1
+_0205F6E0: .word FUN_0205F314
_0205F6E4: .word 0x00004040
thumb_func_start FUN_0205F6E8
@@ -201728,7 +201728,7 @@ FUN_0205F710: ; 0x0205F710
ldr r1, _0205F71C ; =0x00004042
bx r3
nop
-_0205F718: .word FUN_0205F344 + 1
+_0205F718: .word FUN_0205F344
_0205F71C: .word 0x00004042
thumb_func_start FUN_0205F720
@@ -201737,7 +201737,7 @@ FUN_0205F720: ; 0x0205F720
ldr r1, _0205F72C ; =0x00004046
bx r3
nop
-_0205F728: .word FUN_0205F344 + 1
+_0205F728: .word FUN_0205F344
_0205F72C: .word 0x00004046
thumb_func_start FUN_0205F730
@@ -201747,7 +201747,7 @@ FUN_0205F730: ; 0x0205F730
ldr r1, _0205F73C ; =0x00004046
bx r3
.balign 4
-_0205F738: .word FUN_0205F314 + 1
+_0205F738: .word FUN_0205F314
_0205F73C: .word 0x00004046
thumb_func_start FUN_0205F740
@@ -201756,7 +201756,7 @@ FUN_0205F740: ; 0x0205F740
ldr r1, _0205F74C ; =0x00004047
bx r3
nop
-_0205F748: .word FUN_0205F344 + 1
+_0205F748: .word FUN_0205F344
_0205F74C: .word 0x00004047
thumb_func_start FUN_0205F750
@@ -201766,7 +201766,7 @@ FUN_0205F750: ; 0x0205F750
ldr r1, _0205F75C ; =0x00004047
bx r3
.balign 4
-_0205F758: .word FUN_0205F314 + 1
+_0205F758: .word FUN_0205F314
_0205F75C: .word 0x00004047
thumb_func_start FUN_0205F760
@@ -201775,7 +201775,7 @@ FUN_0205F760: ; 0x0205F760
ldr r1, _0205F76C ; =0x00004048
bx r3
nop
-_0205F768: .word FUN_0205F344 + 1
+_0205F768: .word FUN_0205F344
_0205F76C: .word 0x00004048
thumb_func_start FUN_0205F770
@@ -201785,7 +201785,7 @@ FUN_0205F770: ; 0x0205F770
ldr r1, _0205F77C ; =0x00004048
bx r3
.balign 4
-_0205F778: .word FUN_0205F314 + 1
+_0205F778: .word FUN_0205F314
_0205F77C: .word 0x00004048
thumb_func_start FUN_0205F780
@@ -201794,7 +201794,7 @@ FUN_0205F780: ; 0x0205F780
ldr r1, _0205F78C ; =0x0000404A
bx r3
nop
-_0205F788: .word FUN_0205F344 + 1
+_0205F788: .word FUN_0205F344
_0205F78C: .word 0x0000404A
thumb_func_start FUN_0205F790
@@ -201804,7 +201804,7 @@ FUN_0205F790: ; 0x0205F790
ldr r1, _0205F79C ; =0x0000404A
bx r3
.balign 4
-_0205F798: .word FUN_0205F314 + 1
+_0205F798: .word FUN_0205F314
_0205F79C: .word 0x0000404A
thumb_func_start FUN_0205F7A0
@@ -201873,7 +201873,7 @@ _0205F812:
ldr r0, [r0, #0x0]
mov r1, #0x6
add r0, r0, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
mov r6, #0x0
add r4, r5, #0x0
_0205F83E:
@@ -201895,7 +201895,7 @@ _0205F85A:
strh r0, [r4, #0x28]
add r0, r1, #0x5
mov r1, #0x6
- blx FUN_020EBC80
+ blx _s32_div_f
add r6, r6, #0x1
add r4, #0xc
cmp r6, #0x5
@@ -201958,23 +201958,23 @@ FUN_0205F8CC: ; 0x0205F8CC
bl FUN_020462AC
str r0, [sp, #0x0]
add r0, sp, #0x28
- blx FUN_020D1C94
+ blx FS_InitFile
add r0, sp, #0x28
add r1, r4, #0x0
- blx FUN_020D1944
+ blx FS_OpenFile
cmp r0, #0x0
bne _0205F8F8
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x70
pop {r3-r7, pc}
_0205F8F8:
add r0, sp, #0x28
add r1, sp, #0x24
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
cmp r0, #0x0
bge _0205F90A
- bl FUN_02020C2C
+ bl ErrorHandling
_0205F90A:
mov r0, #0xb
mov r1, #0x4
@@ -201982,7 +201982,7 @@ _0205F90A:
mov r1, #0x0
mov r2, #0x4
add r6, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r1, [sp, #0x24]
ldr r0, _0205FA28 ; =0x0000013A
mov r4, #0x0
@@ -202011,7 +202011,7 @@ _0205F94C:
add r0, sp, #0x28
add r1, r6, #0x0
mov r2, #0x4
- blx FUN_020D180C
+ blx FS_ReadFile
ldrb r0, [r6, #0x0]
cmp r0, #0x1
beq _0205F962
@@ -202112,7 +202112,7 @@ _0205FA0E:
blt _0205F94C
_0205FA16:
add r0, sp, #0x28
- blx FUN_020D18FC
+ blx FS_CloseFile
add r0, r6, #0x0
bl FUN_02016A18
add sp, #0x70
@@ -202132,9 +202132,9 @@ FUN_0205FA2C: ; 0x0205FA2C
mov r1, #0x0
mov r2, #0x40
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r6, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
add r0, r6, #0x0
bl FUN_0206BB1C
@@ -202239,7 +202239,7 @@ _0205FB0C:
add r0, #0x2c
add r1, #0xe
mov r2, #0x6
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
add r0, #0x22
ldrb r0, [r0, #0x0]
@@ -202265,9 +202265,9 @@ FUN_0205FB34: ; 0x0205FB34
mov r1, #0x0
mov r2, #0x30
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x4]
add r0, r5, #0x0
bl FUN_0206BB1C
@@ -202403,7 +202403,7 @@ FUN_0205FC50: ; 0x0205FC50
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x18
- blx FUN_020CE34C
+ blx MI_CpuFill8
strb r6, [r4, #0x8]
strb r7, [r4, #0x9]
add r0, sp, #0x8
@@ -202423,7 +202423,7 @@ FUN_0205FC50: ; 0x0205FC50
bl FUN_0204640C
pop {r3-r7, pc}
nop
-_0205FC98: .word FUN_0205FBE8 + 1
+_0205FC98: .word FUN_0205FBE8
thumb_func_start FUN_0205FC9C
FUN_0205FC9C: ; 0x0205FC9C
@@ -202522,7 +202522,7 @@ FUN_0205FD38: ; 0x0205FD38
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x18
- blx FUN_020CE34C
+ blx MI_CpuFill8
strh r5, [r4, #0x12]
strh r7, [r4, #0x14]
ldr r0, [sp, #0x0]
@@ -202533,7 +202533,7 @@ FUN_0205FD38: ; 0x0205FD38
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_0205FD6C: .word FUN_0205FCE8 + 1
+_0205FD6C: .word FUN_0205FCE8
thumb_func_start FUN_0205FD70
FUN_0205FD70: ; 0x0205FD70
@@ -202601,7 +202601,7 @@ FUN_0205FDDC: ; 0x0205FDDC
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
strh r5, [r4, #0x0]
strh r6, [r4, #0x2]
ldr r0, [r7, #0x10]
@@ -202610,7 +202610,7 @@ FUN_0205FDDC: ; 0x0205FDDC
bl FUN_0204640C
pop {r3-r7, pc}
nop
-_0205FE0C: .word FUN_0205FD70 + 1
+_0205FE0C: .word FUN_0205FD70
thumb_func_start FUN_0205FE10
FUN_0205FE10: ; 0x0205FE10
@@ -203061,7 +203061,7 @@ FUN_0206015C: ; 0x0206015C
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_02060190: .word FUN_02060194 + 1
+_02060190: .word FUN_02060194
thumb_func_start FUN_02060194
FUN_02060194: ; 0x02060194
@@ -203301,7 +203301,7 @@ _0206036A:
_0206038C:
cmp r1, #0xc8
blt _02060394
- bl FUN_02020C2C
+ bl ErrorHandling
_02060394:
mov r1, #0x0
_02060396:
@@ -203373,7 +203373,7 @@ _020603F6:
lsr r6, r0, #0x10
cmp r6, #0x10
blo _02060412
- bl FUN_02020C2C
+ bl ErrorHandling
_02060412:
cmp r6, #0x0
bne _02060420
@@ -203402,7 +203402,7 @@ FUN_0206043C: ; 0x0206043C
add r4, r0, #0x0
cmp r4, #0x1d
blo _02060448
- bl FUN_02020C2C
+ bl ErrorHandling
_02060448:
ldr r0, _02060450 ; =0x020F7460
lsl r1, r4, #0x2
@@ -203479,7 +203479,7 @@ _020604C2:
mov r6, #0x28
b _020604D0
_020604C8:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x20
pop {r3-r7, pc}
_020604D0:
@@ -203571,12 +203571,12 @@ FUN_02060588: ; 0x02060588
_0206059C:
bl FUN_0201B9EC
ldr r1, _020605D4 ; =0x000008D4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
cmp r5, #0x1d
blo _020605B2
- bl FUN_02020C2C
+ bl ErrorHandling
_020605B2:
lsl r0, r5, #0x18
lsr r2, r0, #0x18
@@ -203634,7 +203634,7 @@ _0206061E:
ldrh r5, [r4, #0x0]
cmp r5, #0x0
bne _02060628
- bl FUN_02020C2C
+ bl ErrorHandling
_02060628:
cmp r5, #0x1
bhi _02060630
@@ -203645,18 +203645,18 @@ _02060630:
add r6, r0, #0x0
ldr r0, _02060684 ; =0x0000FFFF
add r1, r5, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r6, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r6, r0, #0x10
cmp r6, r5
blo _02060658
- bl FUN_02020C2C
+ bl ErrorHandling
_02060658:
lsl r0, r6, #0x18
lsr r0, r0, #0x17
@@ -203841,7 +203841,7 @@ FUN_02060790: ; 0x02060790
bl FUN_0204640C
pop {r3-r7, pc}
.balign 4
-_020607D0: .word FUN_020606D0 + 1
+_020607D0: .word FUN_020606D0
thumb_func_start FUN_020607D4
FUN_020607D4: ; 0x020607D4
@@ -203983,7 +203983,7 @@ _020608F0:
bl FUN_020054C8
b _0206090A
_020608F8:
- bl FUN_02020C2C
+ bl ErrorHandling
add r0, r4, #0x0
bl FUN_02016A18
add sp, #0x28
@@ -204001,7 +204001,7 @@ _0206090A:
.balign 4
_02060918: .word 0x000001C1
_0206091C: .word 0x000006DD
-_02060920: .word FUN_020609A0 + 1
+_02060920: .word FUN_020609A0
thumb_func_start FUN_02060924
FUN_02060924: ; 0x02060924
@@ -204020,7 +204020,7 @@ FUN_02060924: ; 0x02060924
bl FUN_0204640C
pop {r4-r6, pc}
.balign 4
-_02060944: .word FUN_02060948 + 1
+_02060944: .word FUN_02060948
thumb_func_start FUN_02060948
FUN_02060948: ; 0x02060948
@@ -204306,7 +204306,7 @@ _02060B6A:
str r0, [r4, #0x24]
b _02060B86
_02060B7C:
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0xc
mov r0, #0x1
pop {r3-r4, pc}
@@ -204403,7 +204403,7 @@ _02060BF6:
bl FUN_0204A9F0
cmp r0, #0x0
bne _02060C38
- bl FUN_02020C2C
+ bl ErrorHandling
_02060C38:
ldr r0, [sp, #0x20]
bl FUN_021E7EC8
@@ -204428,7 +204428,7 @@ _02060C38:
bl FUN_021DA464
b _02060C6E
_02060C6A:
- bl FUN_02020C2C
+ bl ErrorHandling
_02060C6E:
add r0, r6, #0x1
lsl r0, r0, #0x18
@@ -204478,7 +204478,7 @@ _02060CA8:
str r1, [r0, #0x8]
pop {r3, pc}
_02060CC4:
- bl FUN_02020C2C
+ bl ErrorHandling
_02060CC8:
pop {r3, pc}
.balign 4
@@ -204492,7 +204492,7 @@ FUN_02060CCC: ; 0x02060CCC
cmp r5, #0x5
blt _02060CDC
_02060CD8:
- bl FUN_02020C2C
+ bl ErrorHandling
_02060CDC:
sub r1, r5, #0x1
ldr r6, _02060CF4 ; =0x020F767C
@@ -204502,7 +204502,7 @@ _02060CDC:
ldr r0, [r6, r4]
cmp r0, r5
beq _02060CF0
- bl FUN_02020C2C
+ bl ErrorHandling
_02060CF0:
add r0, r6, r4
pop {r4-r6, pc}
@@ -204522,7 +204522,7 @@ FUN_02060CF8: ; 0x02060CF8
cmp r4, r0
blt _02060D12
_02060D0E:
- bl FUN_02020C2C
+ bl ErrorHandling
_02060D12:
sub r0, r4, #0x1
ldr r1, [r5, #0x8]
@@ -204545,7 +204545,7 @@ FUN_02060D1C: ; 0x02060D1C
ldr r4, [r0, #0x0]
cmp r4, #0x0
bne _02060D3E
- bl FUN_02020C2C
+ bl ErrorHandling
_02060D3E:
add r0, r6, #0x0
add r1, r7, #0x0
@@ -204926,7 +204926,7 @@ FUN_02061008: ; 0x02061008
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x24
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
pop {r4, pc}
@@ -204935,7 +204935,7 @@ FUN_02061020: ; 0x02061020
ldr r3, _02061024 ; =FUN_02016A18
bx r3
.balign 4
-_02061024: .word FUN_02016A18 + 1
+_02061024: .word FUN_02016A18
thumb_func_start FUN_02061028
FUN_02061028: ; 0x02061028
@@ -204947,7 +204947,7 @@ FUN_02061028: ; 0x02061028
add r1, r5, #0x0
mov r2, #0x24
add r7, r3, #0x0
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
str r6, [r5, #0x0]
add r0, r5, #0x0
add r2, r5, #0x0
@@ -204968,7 +204968,7 @@ FUN_02061028: ; 0x02061028
ldrh r0, [r5, #0x22]
cmp r0, #0x0
bne _0206106C
- bl FUN_02020C2C
+ bl ErrorHandling
_0206106C:
add r2, r5, #0x0
add r5, #0xc
@@ -205275,7 +205275,7 @@ FUN_020612AC: ; 0x020612AC
mov r0, #0x0
add r1, sp, #0x0
mov r2, #0x28
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r6, #0x0
mov r1, #0x1
mov r2, #0x0
@@ -205299,7 +205299,7 @@ FUN_020612EC: ; 0x020612EC
mov r1, #0x14
bx r3
nop
-_020612F4: .word FUN_020612AC + 1
+_020612F4: .word FUN_020612AC
thumb_func_start FUN_020612F8
FUN_020612F8: ; 0x020612F8
@@ -205307,7 +205307,7 @@ FUN_020612F8: ; 0x020612F8
mov r1, #0x4
bx r3
nop
-_02061300: .word FUN_020612AC + 1
+_02061300: .word FUN_020612AC
thumb_func_start FUN_02061304
FUN_02061304: ; 0x02061304
@@ -205541,12 +205541,12 @@ FUN_02061498: ; 0x02061498
bl FUN_02060D90
bl FUN_0201B9EC
ldr r1, _020614F8 ; =0x00003334
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x5
blo _020614F0
- bl FUN_02020C2C
+ bl ErrorHandling
_020614F0:
add r4, #0x11
add r0, r4, #0x0
@@ -205949,12 +205949,12 @@ FUN_020617D8: ; 0x020617D8
bl FUN_02060E70
bl FUN_0201B9EC
ldr r1, _02061830 ; =0x00005556
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x3
blo _02061826
- bl FUN_02020C2C
+ bl ErrorHandling
_02061826:
add r4, #0x21
add r0, r4, #0x0
@@ -206002,7 +206002,7 @@ FUN_02061868: ; 0x02061868
ldr r1, [r4, #0x0]
cmp r1, r0
beq _02061884
- bl FUN_02020C2C
+ bl ErrorHandling
_02061884:
add r0, r5, #0x0
mov r1, #0x0
@@ -207063,7 +207063,7 @@ FUN_020620A0: ; 0x020620A0
add r4, r0, #0x0
cmp r4, #0x0
bgt _020620BE
- bl FUN_02020C2C
+ bl ErrorHandling
_020620BE:
cmp r4, #0x1
ble _020620D0
@@ -207099,17 +207099,17 @@ _020620F0:
_020620F8:
cmp r5, #0x0
beq _02062100
- bl FUN_02020C2C
+ bl ErrorHandling
_02062100:
bl FUN_0201B9EC
mov r1, #0xf1
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x11
blo _02062118
- bl FUN_02020C2C
+ bl ErrorHandling
_02062118:
cmp r4, #0x9
blt _0206211E
@@ -207162,12 +207162,12 @@ FUN_02062170: ; 0x02062170
add r7, r1, #0x0
bl FUN_0201B9EC
ldr r1, _02062234 ; =0x00003334
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x5
blo _0206218C
- bl FUN_02020C2C
+ bl ErrorHandling
_0206218C:
ldr r0, _02062238 ; =0x02105FBC
lsl r1, r4, #0x1
@@ -207209,7 +207209,7 @@ _020621D4:
lsr r4, r0, #0x10
cmp r4, #0x4
blo _020621E4
- bl FUN_02020C2C
+ bl ErrorHandling
_020621E4:
cmp r4, #0x3
bhi _0206220C
@@ -207261,7 +207261,7 @@ _02062228:
mov r0, #0xc
pop {r3-r7, pc}
_0206222C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
@@ -207348,12 +207348,12 @@ FUN_020622C4: ; 0x020622C4
bl FUN_0201B9EC
mov r1, #0xf1
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
cmp r5, #0x11
blo _020622E0
- bl FUN_02020C2C
+ bl ErrorHandling
_020622E0:
cmp r5, #0x9
blt _020622E6
@@ -207362,12 +207362,12 @@ _020622E6:
bl FUN_0201B9EC
mov r1, #0xf1
lsl r1, r1, #0x4
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x11
blo _020622FE
- bl FUN_02020C2C
+ bl ErrorHandling
_020622FE:
cmp r4, #0x9
blt _02062304
@@ -207460,7 +207460,7 @@ _02062392:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
bne _020623A4
- bl FUN_02020C2C
+ bl ErrorHandling
_020623A4:
lsl r0, r4, #0x10
lsr r0, r0, #0x10
@@ -207474,20 +207474,20 @@ _020623B0:
lsl r1, r4, #0x10
ldr r0, _020623F0 ; =0x0000FFFF
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r5, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
lsl r0, r4, #0x10
lsr r0, r0, #0x10
cmp r5, r0
blo _020623DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020623DE:
add r0, sp, #0x10
add r0, #0x2
@@ -207583,7 +207583,7 @@ FUN_02062474: ; 0x02062474
lsl r0, r0, #0x10
lsr r4, r0, #0x10
bne _02062496
- bl FUN_02020C2C
+ bl ErrorHandling
_02062496:
cmp r4, #0x1
bhi _0206249E
@@ -207594,18 +207594,18 @@ _0206249E:
add r5, r0, #0x0
ldr r0, _02062504 ; =0x0000FFFF
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x0
add r1, r1, #0x1
lsl r1, r1, #0x10
add r0, r5, #0x0
lsr r1, r1, #0x10
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r5, r0, #0x10
cmp r5, r4
blo _020624C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020624C6:
lsl r4, r5, #0x2
add r0, sp, #0x4
@@ -207702,7 +207702,7 @@ _0206256C:
_02062572:
cmp r4, #0xb
blt _0206257A
- bl FUN_02020C2C
+ bl ErrorHandling
_0206257A:
ldr r1, [sp, #0x8]
add r0, r6, #0x0
@@ -207774,16 +207774,16 @@ FUN_020625EC: ; 0x020625EC
mov r1, #0x0
lsl r2, r2, #0x4
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x50
str r0, [r4, #0x0]
ldr r0, [sp, #0x0]
mov r1, #0x3
- blx FUN_020EBC80
+ blx _s32_div_f
strb r1, [r4, #0x16]
ldr r0, [sp, #0x0]
mov r1, #0x3
- blx FUN_020EBC80
+ blx _s32_div_f
strb r0, [r4, #0x17]
ldrb r0, [r4, #0x16]
bl FUN_0202B870
@@ -207804,11 +207804,11 @@ FUN_020625EC: ; 0x020625EC
lsl r1, r1, #0x4
str r0, [r4, r1]
add r0, r6, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02024FF4
strh r0, [r4, #0x1a]
add r0, r6, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02025084
strh r0, [r4, #0x1c]
str r4, [r7, #0x8]
@@ -207896,7 +207896,7 @@ _020626FE:
add r0, r4, #0x0
mov r1, #0x0
lsl r2, r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
bl FUN_020168D0
mov r0, #0xc
@@ -208360,7 +208360,7 @@ FUN_02062A70: ; 0x02062A70
mov r2, #0x3c
mov r1, #0x0
mul r2, r3
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldrb r1, [r4, #0x16]
ldr r2, [r4, #0x0]
add r0, r5, #0x0
@@ -209118,7 +209118,7 @@ _02063094:
ldr r0, _02063164 ; =0x020F7C2C
add r1, #0xa0
mov r2, #0x20
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r1, r5, #0x0
add r0, r5, #0x0
add r1, #0xd4
@@ -209204,7 +209204,7 @@ _02063094:
.balign 4
_02063160: .word 0x0000FFFF
_02063164: .word 0x020F7C2C
-_02063168: .word FUN_020631C8 + 1
+_02063168: .word FUN_020631C8
_0206316C: .word 0x000003D9
_02063170: .word 0x000003E2
_02063174: .word 0x0001020F
@@ -209827,7 +209827,7 @@ FUN_02063650: ; 0x02063650
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_02063678: .word FUN_02063524 + 1
+_02063678: .word FUN_02063524
thumb_func_start FUN_0206367C
FUN_0206367C: ; 0x0206367C
@@ -210148,7 +210148,7 @@ _020638F8:
lsl r0, r0, #0x10
lsr r6, r0, #0x10
bne _02063920
- bl FUN_02020C2C
+ bl ErrorHandling
_02063920:
add r0, r6, #0x0
add r1, sp, #0x8
@@ -210337,7 +210337,7 @@ FUN_02063A80: ; 0x02063A80
ldr r0, _02063A98 ; =0x19740205
cmp r1, r0
beq _02063A90
- bl FUN_02020C2C
+ bl ErrorHandling
_02063A90:
add r0, r4, #0x0
bl FUN_02016A18
@@ -210399,7 +210399,7 @@ FUN_02063AD0: ; 0x02063AD0
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063B00: .word FUN_02063B04 + 1
+_02063B00: .word FUN_02063B04
thumb_func_start FUN_02063B04
FUN_02063B04: ; 0x02063B04
@@ -210531,7 +210531,7 @@ FUN_02063BBC: ; 0x02063BBC
bl FUN_02035D04
pop {r4-r6, pc}
.balign 4
-_02063C10: .word FUN_02036AB8 + 1
+_02063C10: .word FUN_02036AB8
thumb_func_start FUN_02063C14
FUN_02063C14: ; 0x02063C14
@@ -210606,7 +210606,7 @@ FUN_02063C70: ; 0x02063C70
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063CA0: .word FUN_02063CA4 + 1
+_02063CA0: .word FUN_02063CA4
thumb_func_start FUN_02063CA4
FUN_02063CA4: ; 0x02063CA4
@@ -210692,7 +210692,7 @@ FUN_02063D18: ; 0x02063D18
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063D48: .word FUN_02063D4C + 1
+_02063D48: .word FUN_02063D4C
thumb_func_start FUN_02063D4C
FUN_02063D4C: ; 0x02063D4C
@@ -210778,7 +210778,7 @@ FUN_02063DC0: ; 0x02063DC0
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063DF0: .word FUN_02063DF4 + 1
+_02063DF0: .word FUN_02063DF4
thumb_func_start FUN_02063DF4
FUN_02063DF4: ; 0x02063DF4
@@ -210864,7 +210864,7 @@ FUN_02063E68: ; 0x02063E68
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063E98: .word FUN_02063E9C + 1
+_02063E98: .word FUN_02063E9C
thumb_func_start FUN_02063E9C
FUN_02063E9C: ; 0x02063E9C
@@ -210950,7 +210950,7 @@ FUN_02063F10: ; 0x02063F10
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063F40: .word FUN_02063F44 + 1
+_02063F40: .word FUN_02063F44
thumb_func_start FUN_02063F44
FUN_02063F44: ; 0x02063F44
@@ -211045,7 +211045,7 @@ FUN_02063FCC: ; 0x02063FCC
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_02063FFC: .word FUN_02064000 + 1
+_02063FFC: .word FUN_02064000
thumb_func_start FUN_02064000
FUN_02064000: ; 0x02064000
@@ -211120,7 +211120,7 @@ FUN_0206405C: ; 0x0206405C
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
.balign 4
-_0206408C: .word FUN_02064090 + 1
+_0206408C: .word FUN_02064090
thumb_func_start FUN_02064090
FUN_02064090: ; 0x02064090
@@ -211233,7 +211233,7 @@ FUN_02064134: ; 0x02064134
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
nop
-_02064170: .word FUN_02064174 + 1
+_02064170: .word FUN_02064174
thumb_func_start FUN_02064174
FUN_02064174: ; 0x02064174
@@ -211325,7 +211325,7 @@ FUN_020641F0: ; 0x020641F0
strh r0, [r4, #0x2a]
pop {r4-r6, pc}
nop
-_0206422C: .word FUN_02064230 + 1
+_0206422C: .word FUN_02064230
thumb_func_start FUN_02064230
FUN_02064230: ; 0x02064230
@@ -211477,7 +211477,7 @@ FUN_02064324: ; 0x02064324
strh r0, [r4, #0x2a]
pop {r3-r7, pc}
.balign 4
-_0206435C: .word FUN_02064360 + 1
+_0206435C: .word FUN_02064360
thumb_func_start FUN_02064360
FUN_02064360: ; 0x02064360
@@ -211689,15 +211689,15 @@ FUN_020644E4: ; 0x020644E4
add sp, #0x24
pop {r4-r7, pc}
.balign 4
-_02064518: .word FUN_0206479C + 1
-_0206451C: .word FUN_020647A0 + 1
+_02064518: .word FUN_0206479C
+_0206451C: .word FUN_020647A0
thumb_func_start FUN_02064520
FUN_02064520: ; 0x02064520
push {r4, lr}
add r4, r0, #0x0
bne _0206452A
- bl FUN_02020C2C
+ bl ErrorHandling
_0206452A:
add r0, r4, #0x0
bl FUN_020646A0
@@ -211776,12 +211776,12 @@ FUN_020645B0: ; 0x020645B0
bl FUN_0200CA44
add r4, r0, #0x0
bne _020645C6
- bl FUN_02020C2C
+ bl ErrorHandling
_020645C6:
add r0, r4, #0x0
pop {r4, pc}
nop
-_020645CC: .word FUN_020645D0 + 1
+_020645CC: .word FUN_020645D0
thumb_func_start FUN_020645D0
FUN_020645D0: ; 0x020645D0
@@ -211789,7 +211789,7 @@ FUN_020645D0: ; 0x020645D0
add r0, r1, #0x0
bx r3
nop
-_020645D8: .word FUN_020646DC + 1
+_020645D8: .word FUN_020646DC
thumb_func_start FUN_020645DC
FUN_020645DC: ; 0x020645DC
@@ -211798,7 +211798,7 @@ FUN_020645DC: ; 0x020645DC
bl FUN_02016998
add r4, r0, #0x0
bne _020645EC
- bl FUN_02020C2C
+ bl ErrorHandling
_020645EC:
add r2, r4, #0x0
mov r1, #0x10
@@ -211819,7 +211819,7 @@ FUN_02064600: ; 0x02064600
ldr r0, [r1, #0x8]
bx r3
.balign 4
-_02064608: .word FUN_02016A8C + 1
+_02064608: .word FUN_02016A8C
thumb_func_start FUN_0206460C
FUN_0206460C: ; 0x0206460C
@@ -211831,7 +211831,7 @@ FUN_0206460C: ; 0x0206460C
bl FUN_02016998
add r4, r0, #0x0
bne _02064622
- bl FUN_02020C2C
+ bl ErrorHandling
_02064622:
add r0, r4, #0x0
mov r1, #0x0
@@ -211848,7 +211848,7 @@ FUN_02064630: ; 0x02064630
ldr r1, [r1, #0xc]
bx r3
nop
-_0206463C: .word FUN_02016A8C + 1
+_0206463C: .word FUN_02016A8C
thumb_func_start FUN_02064640
FUN_02064640: ; 0x02064640
@@ -211877,12 +211877,12 @@ FUN_02064640: ; 0x02064640
bl FUN_02064730
pop {r4, pc}
nop
-_02064680: .word FUN_0206478C + 1
-_02064684: .word FUN_02064798 + 1
-_02064688: .word FUN_02064790 + 1
-_0206468C: .word FUN_02064794 + 1
-_02064690: .word FUN_0206479C + 1
-_02064694: .word FUN_020647A0 + 1
+_02064680: .word FUN_0206478C
+_02064684: .word FUN_02064798
+_02064688: .word FUN_02064790
+_0206468C: .word FUN_02064794
+_02064690: .word FUN_0206479C
+_02064694: .word FUN_020647A0
thumb_func_start FUN_02064698
FUN_02064698: ; 0x02064698
@@ -212169,7 +212169,7 @@ _0206480A:
bl FUN_0204AA5C
cmp r0, #0x0
bne _0206482C
- bl FUN_02020C2C
+ bl ErrorHandling
_0206482C:
ldr r1, [sp, #0x14]
add r0, sp, #0x18
@@ -212380,7 +212380,7 @@ _02064996:
str r1, [r0, #0x8]
pop {r3-r5, pc}
_020649A0:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
nop
_020649A8: .word 0x00000123
@@ -212474,9 +212474,9 @@ _02064A54:
_02064A58: .word 0x020F7D80
_02064A5C: .word 0x020F7D84
_02064A60: .word 0x020F7D74
-_02064A64: .word FUN_02064A70 + 1
+_02064A64: .word FUN_02064A70
_02064A68: .word 0x020F7D70
-_02064A6C: .word FUN_02064B70 + 1
+_02064A6C: .word FUN_02064B70
thumb_func_start FUN_02064A70
FUN_02064A70: ; 0x02064A70
@@ -212538,7 +212538,7 @@ _02064ACA:
bl FUN_0204AA5C
cmp r0, #0x0
bne _02064AEC
- bl FUN_02020C2C
+ bl ErrorHandling
_02064AEC:
ldr r1, [sp, #0xc]
add r0, sp, #0x10
@@ -212662,7 +212662,7 @@ _02064BCA:
bl FUN_0204AA5C
cmp r0, #0x0
bne _02064BEC
- bl FUN_02020C2C
+ bl ErrorHandling
_02064BEC:
ldr r1, [sp, #0xc]
add r0, sp, #0x10
@@ -212866,7 +212866,7 @@ FUN_02064D88: ; 0x02064D88
add r7, r0, #0x0
cmp r5, #0x3
blo _02064D96
- bl FUN_02020C2C
+ bl ErrorHandling
_02064D96:
add r0, r7, #0x0
bl FUN_020377AC
@@ -212902,7 +212902,7 @@ _02064DD2:
mov r6, #0x19
b _02064DDE
_02064DDA:
- bl FUN_02020C2C
+ bl ErrorHandling
_02064DDE:
ldr r0, [r7, #0x1c]
ldr r0, [r0, #0xc]
@@ -212921,7 +212921,7 @@ FUN_02064DEC: ; 0x02064DEC
add r6, r2, #0x0
cmp r4, #0x1
bls _02064DFC
- bl FUN_02020C2C
+ bl ErrorHandling
_02064DFC:
mov r0, #0x0
mvn r0, r0
@@ -213207,7 +213207,7 @@ FUN_02065070: ; 0x02065070
ldr r3, _02065074 ; =FUN_02016A18
bx r3
.balign 4
-_02065074: .word FUN_02016A18 + 1
+_02065074: .word FUN_02016A18
thumb_func_start FUN_02065078
FUN_02065078: ; 0x02065078
@@ -213489,7 +213489,7 @@ _02065290:
ldr r0, [sp, #0x10]
add r1, r4, #0x0
lsl r2, r2, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r3-r5, pc}
.balign 4
_020652A0: .word 0x000F423F
@@ -213594,7 +213594,7 @@ FUN_02065344: ; 0x02065344
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_0206536C: .word FUN_02065370 + 1
+_0206536C: .word FUN_02065370
thumb_func_start FUN_02065370
FUN_02065370: ; 0x02065370
@@ -213677,7 +213677,7 @@ FUN_020653EC: ; 0x020653EC
mov r1, #0x0
lsl r2, r2, #0x2
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
str r6, [r4, #0x4]
bl FUN_020377AC
@@ -213691,11 +213691,11 @@ FUN_020653EC: ; 0x020653EC
mov r1, #0xff
add r6, r0, #0x0
strb r1, [r4, #0x1a]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02024FF4
strb r0, [r4, #0x16]
add r0, r6, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02025084
strh r0, [r4, #0x14]
add r0, r4, #0x0
@@ -213716,7 +213716,7 @@ FUN_020653EC: ; 0x020653EC
str r0, [r4, #0x8]
pop {r4-r6, pc}
.balign 4
-_02065470: .word FUN_020654B0 + 1
+_02065470: .word FUN_020654B0
thumb_func_start FUN_02065474
FUN_02065474: ; 0x02065474
@@ -213746,7 +213746,7 @@ FUN_020654A4: ; 0x020654A4
add r0, r1, #0x0
bx r3
nop
-_020654AC: .word FUN_02065474 + 1
+_020654AC: .word FUN_02065474
thumb_func_start FUN_020654B0
FUN_020654B0: ; 0x020654B0
@@ -213762,7 +213762,7 @@ FUN_020654B0: ; 0x020654B0
bl FUN_0201B6C4
pop {r3-r5, pc}
.balign 4
-_020654CC: .word FUN_020654D0 + 1
+_020654CC: .word FUN_020654D0
thumb_func_start FUN_020654D0
FUN_020654D0: ; 0x020654D0
@@ -213824,10 +213824,10 @@ _02065542:
pop {r3-r5, pc}
.balign 4
_02065544: .word 0x021C48B8
-_02065548: .word FUN_02065658 + 1
-_0206554C: .word FUN_020654A4 + 1
+_02065548: .word FUN_02065658
+_0206554C: .word FUN_020654A4
_02065550: .word 0x000005DC
-_02065554: .word FUN_02065558 + 1
+_02065554: .word FUN_02065558
thumb_func_start FUN_02065558
FUN_02065558: ; 0x02065558
@@ -213871,7 +213871,7 @@ _02065592:
_020655A8:
pop {r3-r5, pc}
nop
-_020655AC: .word FUN_020655B0 + 1
+_020655AC: .word FUN_020655B0
thumb_func_start FUN_020655B0
FUN_020655B0: ; 0x020655B0
@@ -213943,13 +213943,13 @@ _02065634:
pop {r4-r6, pc}
nop
_02065638: .word 0x021C48B8
-_0206563C: .word FUN_02065674 + 1
-_02065640: .word FUN_020654B0 + 1
+_0206563C: .word FUN_02065674
+_02065640: .word FUN_020654B0
_02065644: .word 0x000005DC
-_02065648: .word FUN_02065710 + 1
-_0206564C: .word FUN_02065894 + 1
-_02065650: .word FUN_02065938 + 1
-_02065654: .word FUN_02065690 + 1
+_02065648: .word FUN_02065710
+_0206564C: .word FUN_02065894
+_02065650: .word FUN_02065938
+_02065654: .word FUN_02065690
thumb_func_start FUN_02065658
FUN_02065658: ; 0x02065658
@@ -214043,7 +214043,7 @@ _02065704:
_0206570A:
pop {r3-r5, pc}
.balign 4
-_0206570C: .word FUN_020654D0 + 1
+_0206570C: .word FUN_020654D0
thumb_func_start FUN_02065710
FUN_02065710: ; 0x02065710
@@ -214153,10 +214153,10 @@ _020657E0:
add sp, #0x4
pop {r3-r4, pc}
.balign 4
-_020657E4: .word FUN_02065674 + 1
-_020657E8: .word FUN_020654B0 + 1
-_020657EC: .word FUN_020659B8 + 1
-_020657F0: .word FUN_020657F4 + 1
+_020657E4: .word FUN_02065674
+_020657E8: .word FUN_020654B0
+_020657EC: .word FUN_020659B8
+_020657F0: .word FUN_020657F4
thumb_func_start FUN_020657F4
FUN_020657F4: ; 0x020657F4
@@ -214235,8 +214235,8 @@ _02065884:
pop {r3-r4, pc}
.balign 4
_02065888: .word 0x021C48B8
-_0206588C: .word FUN_02065674 + 1
-_02065890: .word FUN_020654B0 + 1
+_0206588C: .word FUN_02065674
+_02065890: .word FUN_020654B0
thumb_func_start FUN_02065894
FUN_02065894: ; 0x02065894
@@ -214320,7 +214320,7 @@ _0206592C:
_02065932:
pop {r3-r5, pc}
.balign 4
-_02065934: .word FUN_020654B0 + 1
+_02065934: .word FUN_020654B0
thumb_func_start FUN_02065938
FUN_02065938: ; 0x02065938
@@ -214382,8 +214382,8 @@ _020659A6:
pop {r3-r4, pc}
nop
_020659AC: .word 0x021C48B8
-_020659B0: .word FUN_02065674 + 1
-_020659B4: .word FUN_020654B0 + 1
+_020659B0: .word FUN_02065674
+_020659B4: .word FUN_020654B0
thumb_func_start FUN_020659B8
FUN_020659B8: ; 0x020659B8
@@ -214543,8 +214543,8 @@ _02065AE6:
pop {r4-r6, pc}
.balign 4
_02065AE8: .word 0x0000013B
-_02065AEC: .word FUN_020657F4 + 1
-_02065AF0: .word FUN_020654B0 + 1
+_02065AEC: .word FUN_020657F4
+_02065AF0: .word FUN_020654B0
thumb_func_start FUN_02065AF4
FUN_02065AF4: ; 0x02065AF4
@@ -214645,7 +214645,7 @@ _02065B9E:
ldr r0, _02065CE4 ; =0x020F7E8C
add r1, r5, r1
mov r2, #0x20
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r1, #0x5d
lsl r1, r1, #0x2
add r0, r1, #0x0
@@ -214782,8 +214782,8 @@ _02065CD8: .word 0x020F7E7C
_02065CDC: .word 0x020F7E84
_02065CE0: .word 0x0000FFFF
_02065CE4: .word 0x020F7E8C
-_02065CE8: .word FUN_02065D4C + 1
-_02065CEC: .word FUN_02065CFC + 1
+_02065CE8: .word FUN_02065D4C
+_02065CEC: .word FUN_02065CFC
_02065CF0: .word 0x0000013B
_02065CF4: .word 0x000003D9
_02065CF8: .word 0x0001020F
@@ -214945,7 +214945,7 @@ _02065E14:
ldr r0, _02065ED0 ; =0x020F7E8C
add r1, r5, r1
mov r2, #0x20
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x5d
lsl r0, r0, #0x2
add r1, r0, #0x0
@@ -215016,7 +215016,7 @@ _02065EC8: .word 0x020F7E74
_02065ECC: .word 0x020F7EAC
_02065ED0: .word 0x020F7E8C
_02065ED4: .word 0xFFFFFE7F
-_02065ED8: .word FUN_02065EE4 + 1
+_02065ED8: .word FUN_02065EE4
_02065EDC: .word 0x000003D9
_02065EE0: .word 0x0000013B
@@ -215656,7 +215656,7 @@ FUN_020663D4: ; 0x020663D4
add r0, r4, r0
mov r1, #0x0
mov r2, #0x10
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x17
mov r1, #0x0
lsl r0, r0, #0x4
@@ -215997,7 +215997,7 @@ _02066676:
mov r1, #0x0
mov r2, #0x40
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x5b
lsl r0, r0, #0x2
ldr r0, [r5, r0]
@@ -216014,7 +216014,7 @@ _02066676:
lsl r0, r0, #0x2
ldr r0, [r5, r0]
bl FUN_020377AC
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0xc]
mov r0, #0x5b
lsl r0, r0, #0x2
@@ -216216,7 +216216,7 @@ FUN_02066818: ; 0x02066818
bl FUN_0204640C
pop {r4, pc}
nop
-_0206683C: .word FUN_020667D4 + 1
+_0206683C: .word FUN_020667D4
thumb_func_start FUN_02066840
FUN_02066840: ; 0x02066840
@@ -216236,13 +216236,13 @@ FUN_02066840: ; 0x02066840
add r0, r7, #0x0
mov r1, #0x0
mov r2, #0xe4
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
bl FUN_0202398C
add r1, r7, #0x0
add r1, #0xa8
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
bl FUN_020239BC
add r1, r7, #0x0
@@ -216309,7 +216309,7 @@ _020668FC:
ldr r1, [sp, #0x8]
mov r2, #0x8
add r1, r1, r5
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r4, r4, #0x1
add r5, #0x8
cmp r4, #0x3
@@ -216320,7 +216320,7 @@ _020668FC:
add r1, r7, #0x0
add r1, #0xc0
mov r2, #0x8
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, [sp, #0x0]
cmp r0, #0x0
bne _02066956
@@ -216366,7 +216366,7 @@ FUN_02066978: ; 0x02066978
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0xec
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
ldrh r2, [r4, #0x6]
add r0, #0x8
@@ -216386,7 +216386,7 @@ FUN_020669A0: ; 0x020669A0
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x88
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
ldrh r2, [r4, #0x6]
add r0, #0x8
@@ -216423,7 +216423,7 @@ FUN_020669D4: ; 0x020669D4
mov r4, #0x1
lsr r0, r0, #0x1f
beq _020669EE
- bl FUN_02020C2C
+ bl ErrorHandling
_020669EE:
ldrh r1, [r5, #0x4]
mov r0, #0x1
@@ -216596,7 +216596,7 @@ FUN_02066ACC: ; 0x02066ACC
mov r0, #0x0
add r1, sp, #0x14
mov r2, #0x18
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r5, #0x0
mov r1, #0xaa
add r2, sp, #0x14
@@ -216986,7 +216986,7 @@ FUN_02066E74: ; 0x02066E74
cmp r5, #0x0
bne _02066EA0
mov r1, #0x19
- blx FUN_020EBC80
+ blx _s32_div_f
add r1, r0, #0x1
mov r0, #0x19
mul r0, r1
@@ -217161,7 +217161,7 @@ _02066FFC:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r4, r0
add r0, #0xa
_0206701E:
@@ -217183,7 +217183,7 @@ _0206701E:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x5
str r0, [sp, #0x4c]
add r0, r5, #0x0
@@ -217211,7 +217211,7 @@ _0206701E:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x5
str r0, [sp, #0x48]
add r0, r5, #0x0
@@ -217239,7 +217239,7 @@ _0206701E:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x5
str r0, [sp, #0x44]
add r0, r5, #0x0
@@ -217267,7 +217267,7 @@ _0206701E:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x5
str r0, [sp, #0x40]
add r0, r5, #0x0
@@ -217295,7 +217295,7 @@ _0206701E:
add r0, r0, r1
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r0, #0x5
str r0, [sp, #0x3c]
add r0, r5, #0x0
@@ -217383,7 +217383,7 @@ FUN_020671BC: ; 0x020671BC
beq _02067204
cmp r0, r1
beq _020671FC
- bl FUN_02020C2C
+ bl ErrorHandling
_020671FC:
ldrh r1, [r5, #0x4]
mov r0, #0x4
@@ -217519,7 +217519,7 @@ FUN_020672BC: ; 0x020672BC
beq _020672F8
cmp r0, r1
beq _020672F0
- bl FUN_02020C2C
+ bl ErrorHandling
_020672F0:
ldrh r1, [r5, #0x4]
mov r0, #0x4
@@ -218294,7 +218294,7 @@ FUN_02067830: ; 0x02067830
beq _02067886
cmp r0, r1
beq _02067870
- bl FUN_02020C2C
+ bl ErrorHandling
_02067870:
ldrh r1, [r5, #0x4]
mov r0, #0x4
@@ -218452,7 +218452,7 @@ FUN_02067960: ; 0x02067960
beq _020679AA
cmp r0, r1
beq _02067994
- bl FUN_02020C2C
+ bl ErrorHandling
_02067994:
ldrh r1, [r5, #0x4]
mov r0, #0x4
@@ -218715,7 +218715,7 @@ _02067B92:
str r1, [r0, #0x0]
pop {r4-r7, pc}
_02067B9C:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, [sp, #0x0]
ldrb r1, [r4, #0x0]
ldrh r2, [r0, #0x4]
@@ -218730,7 +218730,7 @@ _02067B9C:
strh r1, [r0, #0x4]
pop {r4-r7, pc}
_02067BBA:
- bl FUN_02020C2C
+ bl ErrorHandling
ldr r0, [sp, #0x0]
ldrh r1, [r0, #0x4]
mov r0, #0x2
@@ -219369,7 +219369,7 @@ FUN_02068018: ; 0x02068018
beq _02068066
cmp r0, r1
beq _02068058
- bl FUN_02020C2C
+ bl ErrorHandling
_02068058:
ldrh r2, [r5, #0x6]
add r0, r5, #0x0
@@ -219452,7 +219452,7 @@ _020680E4:
strh r1, [r0, #0x0]
pop {r3, pc}
_020680F2:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
_020680F8:
bl FUN_02068100
@@ -220006,7 +220006,7 @@ _020684F2:
str r0, [r5, #0x10]
pop {r4-r7, pc}
_02068500:
- bl FUN_02020C2C
+ bl ErrorHandling
_02068504:
add sp, #0xc
pop {r4-r7, pc}
@@ -220039,7 +220039,7 @@ FUN_02068538: ; 0x02068538
add r6, r1, #0x0
cmp r4, #0x0
bne _02068546
- bl FUN_02020C2C
+ bl ErrorHandling
_02068546:
cmp r6, #0x20
bhi _0206863A
@@ -220207,7 +220207,7 @@ FUN_02068640: ; 0x02068640
push {r4, lr}
add r4, r0, #0x0
bne _0206864A
- bl FUN_02020C2C
+ bl ErrorHandling
_0206864A:
add r0, r4, #0x0
bl FUN_02016A18
@@ -220295,7 +220295,7 @@ FUN_020686F8: ; 0x020686F8
ldr r3, _020686FC ; =FUN_02068700
bx r3
.balign 4
-_020686FC: .word FUN_02068700 + 1
+_020686FC: .word FUN_02068700
thumb_func_start FUN_02068700
FUN_02068700: ; 0x02068700
@@ -220358,7 +220358,7 @@ FUN_0206876C: ; 0x0206876C
add r4, r1, #0x0
cmp r5, #0x8
blt _0206877A
- bl FUN_02020C2C
+ bl ErrorHandling
_0206877A:
add r0, r4, #0x0
mov r1, #0x3
@@ -220374,11 +220374,11 @@ FUN_02068788: ; 0x02068788
add r5, r1, #0x0
cmp r6, #0x8
blt _02068796
- bl FUN_02020C2C
+ bl ErrorHandling
_02068796:
cmp r5, #0x65
ble _0206879E
- bl FUN_02020C2C
+ bl ErrorHandling
_0206879E:
mov r1, #0x65
mov r0, #0x0
@@ -220400,7 +220400,7 @@ FUN_020687C0: ; 0x020687C0
ldr r3, _020687C4 ; =FUN_020687C8
bx r3
.balign 4
-_020687C4: .word FUN_020687C8 + 1
+_020687C4: .word FUN_020687C8
thumb_func_start FUN_020687C8
FUN_020687C8: ; 0x020687C8
@@ -220476,7 +220476,7 @@ FUN_02068854: ; 0x02068854
ldr r3, _02068858 ; =FUN_0206885C
bx r3
.balign 4
-_02068858: .word FUN_0206885C + 1
+_02068858: .word FUN_0206885C
thumb_func_start FUN_0206885C
FUN_0206885C: ; 0x0206885C
@@ -220535,7 +220535,7 @@ _020688A2:
lsl r0, r0, #0x10
lsr r0, r0, #0x10
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r1, r0, #0x10
b _020688E0
@@ -220545,7 +220545,7 @@ _020688CE:
lsl r0, r0, #0x10
lsr r0, r0, #0x10
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x10
lsr r1, r0, #0x10
_020688E0:
@@ -220647,7 +220647,7 @@ _02068994:
mov r0, #0x96
mul r0, r4
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
asr r4, r0, #0x18
_020689AA:
@@ -220685,7 +220685,7 @@ FUN_020689E0: ; 0x020689E0
ldr r3, _020689E4 ; =FUN_020689E8
bx r3
.balign 4
-_020689E4: .word FUN_020689E8 + 1
+_020689E4: .word FUN_020689E8
thumb_func_start FUN_020689E8
FUN_020689E8: ; 0x020689E8
@@ -220774,7 +220774,7 @@ FUN_02068A80: ; 0x02068A80
ldr r3, _02068A84 ; =FUN_02068A88
bx r3
.balign 4
-_02068A84: .word FUN_02068A88 + 1
+_02068A84: .word FUN_02068A88
thumb_func_start FUN_02068A88
FUN_02068A88: ; 0x02068A88
@@ -220895,7 +220895,7 @@ FUN_02068B68: ; 0x02068B68
ldr r3, _02068B6C ; =FUN_02068B70
bx r3
.balign 4
-_02068B6C: .word FUN_02068B70 + 1
+_02068B6C: .word FUN_02068B70
thumb_func_start FUN_02068B70
FUN_02068B70: ; 0x02068B70
@@ -221273,7 +221273,7 @@ FUN_02068E14: ; 0x02068E14
ldr r3, _02068E18 ; =FUN_02068E1C
bx r3
.balign 4
-_02068E18: .word FUN_02068E1C + 1
+_02068E18: .word FUN_02068E1C
thumb_func_start FUN_02068E1C
FUN_02068E1C: ; 0x02068E1C
@@ -221575,7 +221575,7 @@ FUN_02069010: ; 0x02069010
add r0, sp, #0xc
add r1, r4, #0x0
mov r2, #0x14
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add sp, #0x20
pop {r3-r5, pc}
.balign 4
@@ -221615,7 +221615,7 @@ _0206906C:
add r5, r0, #0x0
cmp r5, #0x3
blt _02069080
- bl FUN_02020C2C
+ bl ErrorHandling
_02069080:
lsl r2, r5, #0x1
add r0, sp, #0xc
@@ -221670,7 +221670,7 @@ FUN_020690CC: ; 0x020690CC
ldr r3, _020690D0 ; =FUN_020690D4
bx r3
.balign 4
-_020690D0: .word FUN_020690D4 + 1
+_020690D0: .word FUN_020690D4
thumb_func_start FUN_020690D4
FUN_020690D4: ; 0x020690D4
@@ -221855,7 +221855,7 @@ _02069216:
ldr r0, [sp, #0x1c]
mov r1, #0xa
ldr r4, [sp, #0x18]
- blx FUN_020EBC80
+ blx _s32_div_f
str r1, [sp, #0x8]
_02069246:
ldrh r0, [r4, #0x0]
@@ -222284,23 +222284,23 @@ FUN_02069558: ; 0x02069558
ldr r0, _020695A0 ; =0x000001EE
cmp r4, r0
blo _0206956E
- bl FUN_02020C2C
+ bl ErrorHandling
_0206956E:
add r0, sp, #0x4
- blx FUN_020D1C94
+ blx FS_InitFile
ldr r1, _020695A4 ; =0x02105FC8
add r0, sp, #0x4
- blx FUN_020D1944
+ blx FS_OpenFile
add r0, sp, #0x4
lsl r1, r4, #0x1
mov r2, #0x0
- blx FUN_020D17A0
+ blx FS_SeekFile
add r0, sp, #0x4
add r1, sp, #0x0
mov r2, #0x2
- blx FUN_020D180C
+ blx FS_ReadFile
add r0, sp, #0x4
- blx FUN_020D18FC
+ blx FS_CloseFile
add r0, sp, #0x0
ldrh r0, [r0, #0x0]
add sp, #0x4c
@@ -222589,7 +222589,7 @@ FUN_020697CC: ; 0x020697CC
ldr r3, _020697D0 ; =FUN_020697D4
bx r3
.balign 4
-_020697D0: .word FUN_020697D4 + 1
+_020697D0: .word FUN_020697D4
thumb_func_start FUN_020697D4
FUN_020697D4: ; 0x020697D4
@@ -222727,7 +222727,7 @@ FUN_020698E0: ; 0x020698E0
ldr r3, _020698E4 ; =FUN_020698E8
bx r3
.balign 4
-_020698E4: .word FUN_020698E8 + 1
+_020698E4: .word FUN_020698E8
thumb_func_start FUN_020698E8
FUN_020698E8: ; 0x020698E8
@@ -222964,7 +222964,7 @@ _02069A8E:
mov r0, #0x0
add r1, sp, #0x4
mov r2, #0x18
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
mov r1, #0xaa
add r2, sp, #0x4
@@ -223107,7 +223107,7 @@ FUN_02069BC8: ; 0x02069BC8
ldr r3, _02069BCC ; =FUN_02069BD0
bx r3
.balign 4
-_02069BCC: .word FUN_02069BD0 + 1
+_02069BCC: .word FUN_02069BD0
thumb_func_start FUN_02069BD0
FUN_02069BD0: ; 0x02069BD0
@@ -223196,7 +223196,7 @@ FUN_02069C4C: ; 0x02069C4C
_02069C70:
bl FUN_0201B9EC
add r1, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r5, #0x0
add r7, r1, #0x0
bl FUN_0206B9B0
@@ -223378,7 +223378,7 @@ FUN_02069DC8: ; 0x02069DC8
add r7, r0, #0x0
bl FUN_0201B9EC
mov r1, #0x3
- blx FUN_020EBC80
+ blx _s32_div_f
cmp r1, #0x0
bne _02069E70
mov r4, #0x0
@@ -223455,7 +223455,7 @@ FUN_02069E74: ; 0x02069E74
ldr r3, _02069E78 ; =FUN_02069E7C
bx r3
.balign 4
-_02069E78: .word FUN_02069E7C + 1
+_02069E78: .word FUN_02069E7C
thumb_func_start FUN_02069E7C
FUN_02069E7C: ; 0x02069E7C
@@ -223477,7 +223477,7 @@ FUN_02069E94: ; 0x02069E94
ldr r3, _02069E98 ; =FUN_02069E9C
bx r3
.balign 4
-_02069E98: .word FUN_02069E9C + 1
+_02069E98: .word FUN_02069E9C
thumb_func_start FUN_02069E9C
FUN_02069E9C: ; 0x02069E9C
@@ -223508,7 +223508,7 @@ FUN_02069EC4: ; 0x02069EC4
ldr r3, _02069EC8 ; =FUN_02069ECC
bx r3
.balign 4
-_02069EC8: .word FUN_02069ECC + 1
+_02069EC8: .word FUN_02069ECC
thumb_func_start FUN_02069ECC
FUN_02069ECC: ; 0x02069ECC
@@ -223766,7 +223766,7 @@ FUN_0206A094: ; 0x0206A094
bne _0206A12E
bl FUN_0201B9EC
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r4, r1, #0x0
add r0, r5, #0x0
mov r1, #0x5
@@ -223839,7 +223839,7 @@ FUN_0206A13C: ; 0x0206A13C
ldr r3, _0206A140 ; =FUN_0206A144
bx r3
.balign 4
-_0206A140: .word FUN_0206A144 + 1
+_0206A140: .word FUN_0206A144
thumb_func_start FUN_0206A144
FUN_0206A144: ; 0x0206A144
@@ -223918,7 +223918,7 @@ FUN_0206A1C4: ; 0x0206A1C4
ldr r3, _0206A1C8 ; =FUN_0206A1CC
bx r3
.balign 4
-_0206A1C8: .word FUN_0206A1CC + 1
+_0206A1C8: .word FUN_0206A1CC
thumb_func_start FUN_0206A1CC
FUN_0206A1CC: ; 0x0206A1CC
@@ -224122,7 +224122,7 @@ FUN_0206A370: ; 0x0206A370
mov r1, #0x2
bx r3
nop
-_0206A37C: .word FUN_020064F0 + 1
+_0206A37C: .word FUN_020064F0
thumb_func_start FUN_0206A380
FUN_0206A380: ; 0x0206A380
@@ -224143,7 +224143,7 @@ FUN_0206A394: ; 0x0206A394
mov r1, #0x22
bx r3
nop
-_0206A3A0: .word FUN_020064F0 + 1
+_0206A3A0: .word FUN_020064F0
thumb_func_start FUN_0206A3A4
FUN_0206A3A4: ; 0x0206A3A4
@@ -224176,7 +224176,7 @@ FUN_0206A3D0: ; 0x0206A3D0
ldr r3, _0206A3D4 ; =FUN_0206A3A4
bx r3
.balign 4
-_0206A3D4: .word FUN_0206A3A4 + 1
+_0206A3D4: .word FUN_0206A3A4
thumb_func_start FUN_0206A3D8
FUN_0206A3D8: ; 0x0206A3D8
@@ -225036,7 +225036,7 @@ FUN_0206A92C: ; 0x0206A92C
mov r4, #0x1
cmp r5, #0x20
blt _0206A93A
- bl FUN_02020C2C
+ bl ErrorHandling
_0206A93A:
mov r0, #0x0
cmp r5, #0x0
@@ -225234,7 +225234,7 @@ FUN_0206AA84: ; 0x0206AA84
add r1, sp, #0x0
add r1, #0x1
mov r2, #0x18
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r4, #0x0
mov r1, #0xa1
add r2, sp, #0x0
@@ -225328,7 +225328,7 @@ _0206AB3A:
mul r0, r4
mul r0, r5
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r4, r0
lsl r0, r0, #0x18
lsr r0, r0, #0x18
@@ -225405,7 +225405,7 @@ FUN_0206ABB4: ; 0x0206ABB4
mov r1, #0x9
bx r3
nop
-_0206ABC0: .word FUN_020064F0 + 1
+_0206ABC0: .word FUN_020064F0
thumb_func_start FUN_0206ABC4
FUN_0206ABC4: ; 0x0206ABC4
@@ -225693,7 +225693,7 @@ FUN_0206ADE0: ; 0x0206ADE0
mov r1, #0x39
bx r3
nop
-_0206ADEC: .word FUN_020064F0 + 1
+_0206ADEC: .word FUN_020064F0
thumb_func_start FUN_0206ADF0
FUN_0206ADF0: ; 0x0206ADF0
@@ -225703,7 +225703,7 @@ FUN_0206ADF0: ; 0x0206ADF0
mov r1, #0x3a
bx r3
nop
-_0206ADFC: .word FUN_020064F0 + 1
+_0206ADFC: .word FUN_020064F0
thumb_func_start FUN_0206AE00
FUN_0206AE00: ; 0x0206AE00
@@ -225819,7 +225819,7 @@ _0206AECE:
mov r0, #0x1f
mul r0, r1
mov r1, #0xff
- blx FUN_020EBC80
+ blx _s32_div_f
add r3, r0, #0x0
mov r0, #0x1
str r0, [sp, #0x0]
@@ -225903,7 +225903,7 @@ _0206AF76:
mov r0, #0x1f
mul r0, r1
mov r1, #0xff
- blx FUN_020EBC80
+ blx _s32_div_f
add r3, r0, #0x0
mov r0, #0x1
str r0, [sp, #0x0]
@@ -225996,7 +225996,7 @@ _0206B030:
mov r0, #0x1f
mul r0, r1
mov r1, #0xff
- blx FUN_020EBC80
+ blx _s32_div_f
add r3, r0, #0x0
mov r0, #0x1
str r0, [sp, #0x0]
@@ -226080,7 +226080,7 @@ _0206B0DA:
mov r0, #0x1f
mul r0, r1
mov r1, #0xff
- blx FUN_020EBC80
+ blx _s32_div_f
add r3, r0, #0x0
mov r0, #0x1
str r0, [sp, #0x0]
@@ -226353,7 +226353,7 @@ _0206B2E4:
mov r0, #0x1
pop {r3-r7, pc}
_0206B2F4:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
@@ -226382,7 +226382,7 @@ _0206B308:
bl FUN_02022830
pop {r3, pc}
_0206B32A:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
thumb_func_start FUN_0206B330
@@ -226540,7 +226540,7 @@ FUN_0206B428: ; 0x0206B428
bl FUN_02022830
pop {r3, pc}
_0206B436:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
thumb_func_start FUN_0206B43C
@@ -226553,7 +226553,7 @@ FUN_0206B43C: ; 0x0206B43C
ldrb r0, [r1, r0]
pop {r3, pc}
_0206B44A:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3, pc}
nop
@@ -226578,7 +226578,7 @@ _0206B464:
bl FUN_02022830
pop {r3, pc}
_0206B478:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
nop
_0206B480: .word 0x000121B4
@@ -226604,7 +226604,7 @@ _0206B492:
bl FUN_02021E28
pop {r3, pc}
_0206B4A8:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3, pc}
nop
_0206B4B0: .word 0x00011EE4
@@ -226670,7 +226670,7 @@ _0206B514:
add r0, r4, #0x0
pop {r3-r7, pc}
_0206B520:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
@@ -226715,7 +226715,7 @@ _0206B566:
add r0, r4, #0x0
pop {r3-r7, pc}
_0206B572:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -226750,11 +226750,11 @@ FUN_0206B598: ; 0x0206B598
mvn r0, r0
cmp r4, r0
beq _0206B5B2
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B5B2:
cmp r6, #0x1e
blo _0206B5BA
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B5BA:
mov r0, #0x0
mvn r0, r0
@@ -226789,11 +226789,11 @@ FUN_0206B5E4: ; 0x0206B5E4
mvn r0, r0
cmp r4, r0
beq _0206B5FC
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B5FC:
cmp r6, #0x1e
blo _0206B604
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B604:
mov r0, #0x0
mvn r0, r0
@@ -226818,7 +226818,7 @@ FUN_0206B620: ; 0x0206B620
add r5, r0, #0x0
cmp r4, #0x8
blo _0206B62E
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B62E:
ldr r0, _0206B640 ; =0x000121C6
mov r1, #0x1
@@ -226838,7 +226838,7 @@ FUN_0206B644: ; 0x0206B644
add r5, r0, #0x0
cmp r4, #0x8
blo _0206B652
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B652:
ldr r0, _0206B664 ; =0x000121C6
ldrb r2, [r5, r0]
@@ -227211,7 +227211,7 @@ FUN_0206B8C0: ; 0x0206B8C0
mov r1, #0x6
bx r3
nop
-_0206B8C8: .word FUN_0206B8CC + 1
+_0206B8C8: .word FUN_0206B8CC
thumb_func_start FUN_0206B8CC
FUN_0206B8CC: ; 0x0206B8CC
@@ -227220,7 +227220,7 @@ FUN_0206B8CC: ; 0x0206B8CC
add r5, r0, #0x0
cmp r6, #0x6
ble _0206B8DA
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B8DA:
mov r2, #0x59
add r0, r5, #0x0
@@ -227280,22 +227280,22 @@ FUN_0206B938: ; 0x0206B938
add r7, r0, #0x0
add r4, r1, #0x0
bpl _0206B944
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B944:
ldr r0, [r7, #0x4]
cmp r4, r0
blt _0206B94E
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B94E:
ldr r0, [r7, #0x0]
cmp r4, r0
blt _0206B958
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B958:
ldr r0, [r7, #0x4]
cmp r0, #0x0
bgt _0206B962
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B962:
ldr r0, [r7, #0x4]
sub r0, r0, #0x1
@@ -227348,17 +227348,17 @@ FUN_0206B9B0: ; 0x0206B9B0
add r5, r0, #0x0
add r4, r1, #0x0
bpl _0206B9BC
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B9BC:
ldr r0, [r5, #0x4]
cmp r4, r0
blt _0206B9C6
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B9C6:
ldr r0, [r5, #0x0]
cmp r4, r0
blt _0206B9D0
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B9D0:
mov r0, #0xec
add r5, #0x8
@@ -227375,17 +227375,17 @@ FUN_0206B9DC: ; 0x0206B9DC
add r6, r2, #0x0
cmp r4, #0x0
bge _0206B9EC
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B9EC:
ldr r0, [r5, #0x4]
cmp r4, r0
blt _0206B9F6
- bl FUN_02020C2C
+ bl ErrorHandling
_0206B9F6:
ldr r0, [r5, #0x0]
cmp r4, r0
blt _0206BA00
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA00:
add r1, r5, #0x0
mov r0, #0xec
@@ -227423,31 +227423,31 @@ FUN_0206BA38: ; 0x0206BA38
add r6, r2, #0x0
cmp r5, #0x0
bge _0206BA48
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA48:
ldr r0, [r4, #0x4]
cmp r5, r0
blt _0206BA52
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA52:
ldr r0, [r4, #0x0]
cmp r5, r0
blt _0206BA5C
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA5C:
cmp r6, #0x0
bge _0206BA64
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA64:
ldr r0, [r4, #0x4]
cmp r6, r0
blt _0206BA6E
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA6E:
ldr r0, [r4, #0x0]
cmp r6, r0
blt _0206BA78
- bl FUN_02020C2C
+ bl ErrorHandling
_0206BA78:
mov r0, #0x0
mov r1, #0xec
@@ -227548,7 +227548,7 @@ FUN_0206BB1C: ; 0x0206BB1C
mov r1, #0x2
bx r3
nop
-_0206BB24: .word FUN_02022610 + 1
+_0206BB24: .word FUN_02022610
thumb_func_start FUN_0206BB28
FUN_0206BB28: ; 0x0206BB28
@@ -227993,7 +227993,7 @@ FUN_0206BE48: ; 0x0206BE48
add r0, sp, #0x30
mov r1, #0x0
mov r2, #0xc
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [sp, #0x20]
mov r7, #0x0
cmp r0, #0x0
@@ -228189,8 +228189,8 @@ FUN_0206BF90: ; 0x0206BF90
pop {r4-r6, pc}
nop
_0206BFE4: .word 0x020F828C
-_0206BFE8: .word FUN_0206C550 + 1
-_0206BFEC: .word FUN_0206C5DC + 1
+_0206BFE8: .word FUN_0206C550
+_0206BFEC: .word FUN_0206C5DC
thumb_func_start FUN_0206BFF0
FUN_0206BFF0: ; 0x0206BFF0
@@ -228200,7 +228200,7 @@ FUN_0206BFF0: ; 0x0206BFF0
mov r1, #0xc
bx r3
nop
-_0206BFFC: .word FUN_0202D8D0 + 1
+_0206BFFC: .word FUN_0202D8D0
_0206C000: .word 0x020F828C
thumb_func_start FUN_0206C004
@@ -228213,14 +228213,14 @@ FUN_0206C008: ; 0x0206C008
ldr r3, _0206C00C ; =FUN_02023924
bx r3
.balign 4
-_0206C00C: .word FUN_02023924 + 1
+_0206C00C: .word FUN_02023924
thumb_func_start FUN_0206C010
FUN_0206C010: ; 0x0206C010
ldr r3, _0206C014 ; =FUN_0206B8A4
bx r3
.balign 4
-_0206C014: .word FUN_0206B8A4 + 1
+_0206C014: .word FUN_0206B8A4
thumb_func_start FUN_0206C018
FUN_0206C018: ; 0x0206C018
@@ -229211,21 +229211,21 @@ FUN_0206C700: ; 0x0206C700
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x80
- blx FUN_020CE240
+ blx MIi_CpuClearFast
bl FUN_020222F0
str r0, [sp, #0x1c]
bl FUN_020222E8
add r1, r0, #0x0
ldr r2, [sp, #0x1c]
mov r0, #0x0
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
bl FUN_02022300
str r0, [sp, #0x20]
bl FUN_020222F8
add r1, r0, #0x0
ldr r2, [sp, #0x20]
mov r0, #0x0
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
ldr r0, [sp, #0x14]
str r6, [r4, #0x24]
mov r1, #0x5
@@ -229346,7 +229346,7 @@ FUN_0206C700: ; 0x0206C700
ldr r1, [r4, #0x3c]
mov r0, #0x0
mov r2, #0x30
- blx FUN_020CE240
+ blx MIi_CpuClearFast
ldr r1, [sp, #0x38]
ldr r0, [r4, #0x3c]
str r1, [r0, #0x2c]
@@ -229400,7 +229400,7 @@ FUN_0206C700: ; 0x0206C700
pop {r4-r7, pc}
nop
_0206C8E4: .word 0x0000FFFF
-_0206C8E8: .word FUN_0206C8EC + 1
+_0206C8E8: .word FUN_0206C8EC
thumb_func_start FUN_0206C8EC
FUN_0206C8EC: ; 0x0206C8EC
@@ -229898,7 +229898,7 @@ _0206CCCE:
lsl r1, r1, #0xe
cmp r0, r1
bhi _0206CD16
- bl FUN_02020C2C
+ bl ErrorHandling
_0206CD16:
ldr r0, _0206CE24 ; =0x000005F9
bl FUN_020054C8
@@ -231339,7 +231339,7 @@ _0206D8EA:
mov r0, #0x0
add r1, sp, #0x8
mov r2, #0x18
- blx FUN_020CE240
+ blx MIi_CpuClearFast
add r0, r5, #0x0
mov r1, #0xaa
add r2, sp, #0x8
@@ -231408,25 +231408,25 @@ _0206D9C6:
mov r0, #0x0
lsl r1, r1, #0x18
lsl r2, r2, #0x12
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x62
mov r2, #0x2
mov r0, #0x0
lsl r1, r1, #0x14
lsl r2, r2, #0x10
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x19
mov r2, #0x1
mov r0, #0x0
lsl r1, r1, #0x16
lsl r2, r2, #0x12
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x66
mov r2, #0x2
mov r0, #0x0
lsl r1, r1, #0x14
lsl r2, r2, #0x10
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r6, _0206DC2C ; =0x020F8328
add r3, sp, #0x2c
add r2, r3, #0x0
@@ -231679,7 +231679,7 @@ _0206DC34: .word 0x04000008
_0206DC38: .word 0x020F8338
_0206DC3C: .word 0xFFFF1FFF
_0206DC40: .word 0x04001000
-_0206DC44: .word FUN_0206DD08 + 1
+_0206DC44: .word FUN_0206DD08
thumb_func_start FUN_0206DC48
FUN_0206DC48: ; 0x0206DC48
@@ -231843,7 +231843,7 @@ FUN_0206DD6C: ; 0x0206DD6C
add sp, #0xc
pop {r4-r5, pc}
.balign 4
-_0206DDB0: .word FUN_0206DDB4 + 1
+_0206DDB0: .word FUN_0206DDB4
thumb_func_start FUN_0206DDB4
FUN_0206DDB4: ; 0x0206DDB4
@@ -231960,7 +231960,7 @@ FUN_0206DE78: ; 0x0206DE78
add sp, #0x8
pop {r3, pc}
.balign 4
-_0206DE90: .word FUN_0206DE94 + 1
+_0206DE90: .word FUN_0206DE94
thumb_func_start FUN_0206DE94
FUN_0206DE94: ; 0x0206DE94
@@ -232043,11 +232043,11 @@ FUN_0206DF18: ; 0x0206DF18
add r5, r0, #0x0
cmp r4, #0x0
bne _0206DF40
- bl FUN_02020C2C
+ bl ErrorHandling
_0206DF40:
cmp r5, #0x0
bne _0206DF48
- bl FUN_02020C2C
+ bl ErrorHandling
_0206DF48:
bl FUN_02012CC8
pop {r3-r5, pc}
@@ -232132,8 +232132,8 @@ _0206DFEC:
add sp, #0x8
pop {r4, pc}
nop
-_0206DFF4: .word FUN_0206DF7C + 1
-_0206DFF8: .word FUN_0206DF98 + 1
+_0206DFF4: .word FUN_0206DF7C
+_0206DFF8: .word FUN_0206DF98
thumb_func_start FUN_0206DFFC
FUN_0206DFFC: ; 0x0206DFFC
@@ -232211,7 +232211,7 @@ FUN_0206E07C: ; 0x0206E07C
bl FUN_02016998
add r4, r0, #0x0
bne _0206E090
- bl FUN_02020C2C
+ bl ErrorHandling
_0206E090:
ldr r0, [r5, #0x0]
ldr r2, [r5, #0x4]
@@ -232239,7 +232239,7 @@ FUN_0206E0AC: ; 0x0206E0AC
bl FUN_02013440
pop {r4, pc}
.balign 4
-_0206E0C4: .word FUN_0206E03C + 1
+_0206E0C4: .word FUN_0206E03C
thumb_func_start FUN_0206E0C8
FUN_0206E0C8: ; 0x0206E0C8
@@ -232271,7 +232271,7 @@ FUN_0206E0F0: ; 0x0206E0F0
add r4, r0, #0x0
cmp r4, #0x17
blo _0206E0FC
- bl FUN_02020C2C
+ bl ErrorHandling
_0206E0FC:
ldr r0, _0206E104 ; =0x020F83E0
lsl r1, r4, #0x2
@@ -232301,7 +232301,7 @@ FUN_0206E114: ; 0x0206E114
add r4, r0, #0x0
cmp r4, #0x17
blo _0206E120
- bl FUN_02020C2C
+ bl ErrorHandling
_0206E120:
ldr r0, _0206E128 ; =0x020F843C
ldrb r0, [r0, r4]
@@ -232434,14 +232434,14 @@ FUN_0206E21C: ; 0x0206E21C
ldr r3, _0206E220 ; =FUN_0200C358
bx r3
.balign 4
-_0206E220: .word FUN_0200C358 + 1
+_0206E220: .word FUN_0200C358
thumb_func_start FUN_0206E224
FUN_0206E224: ; 0x0206E224
ldr r3, _0206E228 ; =FUN_0200C368
bx r3
.balign 4
-_0206E228: .word FUN_0200C368 + 1
+_0206E228: .word FUN_0200C368
thumb_func_start FUN_0206E22C
FUN_0206E22C: ; 0x0206E22C
@@ -232485,7 +232485,7 @@ FUN_0206E270: ; 0x0206E270
ldr r3, _0206E274 ; =FUN_0200C3DC
bx r3
.balign 4
-_0206E274: .word FUN_0200C3DC + 1
+_0206E274: .word FUN_0200C3DC
thumb_func_start FUN_0206E278
FUN_0206E278: ; 0x0206E278
@@ -232493,7 +232493,7 @@ FUN_0206E278: ; 0x0206E278
add r4, r0, #0x0
cmp r4, #0x3
blo _0206E284
- bl FUN_02020C2C
+ bl ErrorHandling
_0206E284:
ldr r0, _0206E28C ; =0x020F83D4
lsl r1, r4, #0x2
@@ -232508,7 +232508,7 @@ FUN_0206E290: ; 0x0206E290
add r4, r0, #0x0
cmp r4, #0x3
blo _0206E29C
- bl FUN_02020C2C
+ bl ErrorHandling
_0206E29C:
ldr r0, _0206E2A4 ; =0x020F83D0
ldrb r0, [r0, r4]
@@ -232552,14 +232552,14 @@ FUN_0206E2E0: ; 0x0206E2E0
ldr r3, _0206E2E4 ; =FUN_0200C358
bx r3
.balign 4
-_0206E2E4: .word FUN_0200C358 + 1
+_0206E2E4: .word FUN_0200C358
thumb_func_start FUN_0206E2E8
FUN_0206E2E8: ; 0x0206E2E8
ldr r3, _0206E2EC ; =FUN_0200C3DC
bx r3
.balign 4
-_0206E2EC: .word FUN_0200C3DC + 1
+_0206E2EC: .word FUN_0200C3DC
thumb_func_start FUN_0206E2F0
FUN_0206E2F0: ; 0x0206E2F0
@@ -233839,22 +233839,22 @@ _0206EB9C: .word 0x00000774
thumb_func_start FUN_0206EBA0
FUN_0206EBA0: ; 0x0206EBA0
- ldr r3, _0206EBAC ; =FUN_020CE1C8
+ ldr r3, _0206EBAC ; =MIi_CpuClear16
add r1, r0, #0x0
mov r0, #0x0
ldr r2, _0206EBB0 ; =0x00000774
bx r3
nop
-_0206EBAC: .word FUN_020CE1C8
+_0206EBAC: .word MIi_CpuClear16
_0206EBB0: .word 0x00000774
thumb_func_start FUN_0206EBB4
FUN_0206EBB4: ; 0x0206EBB4
- ldr r3, _0206EBBC ; =FUN_020CE3E0
+ ldr r3, _0206EBBC ; =MI_CpuCopy8
ldr r2, _0206EBC0 ; =0x00000774
bx r3
nop
-_0206EBBC: .word FUN_020CE3E0
+_0206EBBC: .word MI_CpuCopy8
_0206EBC0: .word 0x00000774
thumb_func_start FUN_0206EBC4
@@ -234668,7 +234668,7 @@ FUN_0206F158: ; 0x0206F158
mov r1, #0x3
bx r3
nop
-_0206F160: .word FUN_02022610 + 1
+_0206F160: .word FUN_02022610
thumb_func_start FUN_0206F164
FUN_0206F164: ; 0x0206F164
@@ -234679,7 +234679,7 @@ FUN_0206F164: ; 0x0206F164
mov r0, #0x0
add r1, r4, #0x0
mov r2, #0x24
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
add r0, r4, #0x0
pop {r4, pc}
@@ -234975,7 +234975,7 @@ _0206F34A:
mov r0, #0x36
bl FUN_02211E60
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
b _0206F380
_0206F366:
ldr r0, [r4, #0x0]
@@ -235006,14 +235006,14 @@ FUN_0206F38C: ; 0x0206F38C
mov r1, #0x0
mov r2, #0x10
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0xb
mov r1, #0xc
bl FUN_020169D8
mov r1, #0x0
mov r2, #0xc
str r0, [r4, #0x0]
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
pop {r4, pc}
.balign 4
@@ -235032,7 +235032,7 @@ FUN_0206F3B8: ; 0x0206F3B8
bl FUN_0204640C
pop {r4, pc}
nop
-_0206F3D4: .word FUN_0206F1F0 + 1
+_0206F3D4: .word FUN_0206F1F0
thumb_func_start FUN_0206F3D8
FUN_0206F3D8: ; 0x0206F3D8
@@ -235050,7 +235050,7 @@ FUN_0206F3D8: ; 0x0206F3D8
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_0206F3F8: .word FUN_0206F1F0 + 1
+_0206F3F8: .word FUN_0206F1F0
thumb_func_start FUN_0206F3FC
FUN_0206F3FC: ; 0x0206F3FC
@@ -235241,7 +235241,7 @@ _0206F598: .word 0x04001000
_0206F59C: .word 0x00000B25
_0206F5A0: .word 0x000005A4
_0206F5A4: .word 0x000005C8
-_0206F5A8: .word FUN_0206FB58 + 1
+_0206F5A8: .word FUN_0206FB58
thumb_func_start FUN_0206F5AC
FUN_0206F5AC: ; 0x0206F5AC
@@ -240428,7 +240428,7 @@ _02071F18:
.balign 4
_02071F1C: .word 0x000005A4
_02071F20: .word 0x00000B25
-_02071F24: .word FUN_02075CE4 + 1
+_02071F24: .word FUN_02075CE4
thumb_func_start FUN_02071F28
FUN_02071F28: ; 0x02071F28
@@ -241070,9 +241070,9 @@ _02072470: .word 0x00000B25
_02072474: .word 0x00000712
_02072478: .word 0x000005A4
_0207247C: .word 0x000005C8
-_02072480: .word FUN_02074428 + 1
+_02072480: .word FUN_02074428
_02072484: .word 0x00000B18
-_02072488: .word FUN_02074454 + 1
+_02072488: .word FUN_02074454
thumb_func_start FUN_0207248C
FUN_0207248C: ; 0x0207248C
@@ -242791,7 +242791,7 @@ FUN_0207322C: ; 0x0207322C
pop {r3-r4, pc}
nop
_0207326C: .word 0x000005A4
-_02073270: .word FUN_0207327C + 1
+_02073270: .word FUN_0207327C
_02073274: .word 0x000006A4
_02073278: .word 0x00000B24
@@ -243850,7 +243850,7 @@ FUN_02073B0C: ; 0x02073B0C
bx r3
.balign 4
_02073B34: .word 0x0000071E
-_02073B38: .word FUN_0200C6E4 + 1
+_02073B38: .word FUN_0200C6E4
thumb_func_start FUN_02073B3C
FUN_02073B3C: ; 0x02073B3C
@@ -244666,9 +244666,9 @@ FUN_020741A4: ; 0x020741A4
nop
_020741EC: .word 0x000006FC
_020741F0: .word 0x000006F8
-_020741F4: .word FUN_02074200 + 1
+_020741F4: .word FUN_02074200
_020741F8: .word 0x00000B18
-_020741FC: .word FUN_02074278 + 1
+_020741FC: .word FUN_02074278
thumb_func_start FUN_02074200
FUN_02074200: ; 0x02074200
@@ -244746,9 +244746,9 @@ FUN_02074278: ; 0x02074278
mov r0, #0x14
pop {r4, pc}
nop
-_0207429C: .word FUN_020742A8 + 1
+_0207429C: .word FUN_020742A8
_020742A0: .word 0x00000B18
-_020742A4: .word FUN_02074340 + 1
+_020742A4: .word FUN_02074340
thumb_func_start FUN_020742A8
FUN_020742A8: ; 0x020742A8
@@ -244925,9 +244925,9 @@ _0207440C: .word 0x00000B25
_02074410: .word 0x00000712
_02074414: .word 0x000006F8
_02074418: .word 0x000005A4
-_0207441C: .word FUN_02074428 + 1
+_0207441C: .word FUN_02074428
_02074420: .word 0x00000B18
-_02074424: .word FUN_02074454 + 1
+_02074424: .word FUN_02074454
thumb_func_start FUN_02074428
FUN_02074428: ; 0x02074428
@@ -246681,7 +246681,7 @@ FUN_02075244: ; 0x02075244
bx r3
nop
_02075254: .word 0x000005A4
-_02075258: .word FUN_020751A0 + 1
+_02075258: .word FUN_020751A0
thumb_func_start FUN_0207525C
FUN_0207525C: ; 0x0207525C
@@ -246694,7 +246694,7 @@ FUN_0207525C: ; 0x0207525C
bx r3
nop
_0207526C: .word 0x000005A4
-_02075270: .word FUN_020751A0 + 1
+_02075270: .word FUN_020751A0
thumb_func_start FUN_02075274
FUN_02075274: ; 0x02075274
@@ -246707,7 +246707,7 @@ FUN_02075274: ; 0x02075274
bx r3
nop
_02075284: .word 0x000005A4
-_02075288: .word FUN_020751A0 + 1
+_02075288: .word FUN_020751A0
thumb_func_start FUN_0207528C
FUN_0207528C: ; 0x0207528C
@@ -246720,7 +246720,7 @@ FUN_0207528C: ; 0x0207528C
bx r3
nop
_0207529C: .word 0x000005A4
-_020752A0: .word FUN_020751A0 + 1
+_020752A0: .word FUN_020751A0
thumb_func_start FUN_020752A4
FUN_020752A4: ; 0x020752A4
@@ -246733,7 +246733,7 @@ FUN_020752A4: ; 0x020752A4
bx r3
nop
_020752B4: .word 0x000005A4
-_020752B8: .word FUN_020751A0 + 1
+_020752B8: .word FUN_020751A0
thumb_func_start FUN_020752BC
FUN_020752BC: ; 0x020752BC
@@ -246746,7 +246746,7 @@ FUN_020752BC: ; 0x020752BC
bx r3
nop
_020752CC: .word 0x000005A4
-_020752D0: .word FUN_020751A0 + 1
+_020752D0: .word FUN_020751A0
thumb_func_start FUN_020752D4
FUN_020752D4: ; 0x020752D4
@@ -246759,7 +246759,7 @@ FUN_020752D4: ; 0x020752D4
bx r3
nop
_020752E4: .word 0x000005A4
-_020752E8: .word FUN_020751A0 + 1
+_020752E8: .word FUN_020751A0
thumb_func_start FUN_020752EC
FUN_020752EC: ; 0x020752EC
@@ -246772,7 +246772,7 @@ FUN_020752EC: ; 0x020752EC
bx r3
nop
_020752FC: .word 0x000005A4
-_02075300: .word FUN_020751A0 + 1
+_02075300: .word FUN_020751A0
thumb_func_start FUN_02075304
FUN_02075304: ; 0x02075304
@@ -246785,7 +246785,7 @@ FUN_02075304: ; 0x02075304
bx r3
nop
_02075314: .word 0x000005A4
-_02075318: .word FUN_020751A0 + 1
+_02075318: .word FUN_020751A0
thumb_func_start FUN_0207531C
FUN_0207531C: ; 0x0207531C
@@ -246798,7 +246798,7 @@ FUN_0207531C: ; 0x0207531C
bx r3
nop
_0207532C: .word 0x000005A4
-_02075330: .word FUN_020751A0 + 1
+_02075330: .word FUN_020751A0
thumb_func_start FUN_02075334
FUN_02075334: ; 0x02075334
@@ -246811,7 +246811,7 @@ FUN_02075334: ; 0x02075334
bx r3
nop
_02075344: .word 0x000005A4
-_02075348: .word FUN_020751A0 + 1
+_02075348: .word FUN_020751A0
thumb_func_start FUN_0207534C
FUN_0207534C: ; 0x0207534C
@@ -246824,7 +246824,7 @@ FUN_0207534C: ; 0x0207534C
bx r3
nop
_0207535C: .word 0x000005A4
-_02075360: .word FUN_020751A0 + 1
+_02075360: .word FUN_020751A0
thumb_func_start FUN_02075364
FUN_02075364: ; 0x02075364
@@ -246837,7 +246837,7 @@ FUN_02075364: ; 0x02075364
bx r3
nop
_02075374: .word 0x000005A4
-_02075378: .word FUN_020751A0 + 1
+_02075378: .word FUN_020751A0
thumb_func_start FUN_0207537C
FUN_0207537C: ; 0x0207537C
@@ -246893,7 +246893,7 @@ FUN_020753B4: ; 0x020753B4
ldr r0, _020754AC ; =0x00000708
ldrh r0, [r1, r0]
mov r1, #0x5
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r1, _020754B0 ; =0x00000B28
strh r0, [r4, r1]
sub r0, r1, #0x3
@@ -247949,11 +247949,11 @@ _02075CCA:
pop {r4, pc}
.balign 4
_02075CCC: .word 0x000005A4
-_02075CD0: .word FUN_0207640C + 1
+_02075CD0: .word FUN_0207640C
_02075CD4: .word 0x00000B14
-_02075CD8: .word FUN_02075D20 + 1
-_02075CDC: .word FUN_02075DC0 + 1
-_02075CE0: .word FUN_02075F60 + 1
+_02075CD8: .word FUN_02075D20
+_02075CDC: .word FUN_02075DC0
+_02075CE0: .word FUN_02075F60
thumb_func_start FUN_02075CE4
FUN_02075CE4: ; 0x02075CE4
@@ -248053,7 +248053,7 @@ _02075DA8: .word 0x000005A4
_02075DAC: .word 0x00000B25
_02075DB0: .word 0x0000070E
_02075DB4: .word 0x000005EC
-_02075DB8: .word FUN_02075CE4 + 1
+_02075DB8: .word FUN_02075CE4
_02075DBC: .word 0x00000B14
thumb_func_start FUN_02075DC0
@@ -248239,7 +248239,7 @@ _02075F34:
_02075F4C: .word 0x000005A4
_02075F50: .word 0x00000B25
_02075F54: .word 0x0000070E
-_02075F58: .word FUN_02075CE4 + 1
+_02075F58: .word FUN_02075CE4
_02075F5C: .word 0x00000B14
thumb_func_start FUN_02075F60
@@ -248380,7 +248380,7 @@ _02076084: .word 0x00000B25
_02076088: .word 0x00000706
_0207608C: .word 0x0000070E
_02076090: .word 0xFFFFF000
-_02076094: .word FUN_020760A0 + 1
+_02076094: .word FUN_020760A0
_02076098: .word 0x00000B14
_0207609C: .word 0x000005EC
@@ -248457,7 +248457,7 @@ _0207612C:
_02076130: .word 0x000005A4
_02076134: .word 0x00000B25
_02076138: .word 0x00000706
-_0207613C: .word FUN_02075CE4 + 1
+_0207613C: .word FUN_02075CE4
_02076140: .word 0x00000B14
thumb_func_start FUN_02076144
@@ -248783,7 +248783,7 @@ _020763D6:
_020763DC: .word 0x00000B22
_020763E0: .word 0x00000B25
_020763E4: .word 0x0000069C
-_020763E8: .word FUN_02075CE4 + 1
+_020763E8: .word FUN_02075CE4
_020763EC: .word 0x00000B14
_020763F0: .word 0x000005A4
_020763F4: .word 0x0000070E
@@ -248994,9 +248994,9 @@ _020765D0: .word 0x00000706
_020765D4: .word 0x00000708
_020765D8: .word 0x0000070E
_020765DC: .word 0xFFFFF000
-_020765E0: .word FUN_020760A0 + 1
+_020765E0: .word FUN_020760A0
_020765E4: .word 0x00000B14
-_020765E8: .word FUN_020765EC + 1
+_020765E8: .word FUN_020765EC
thumb_func_start FUN_020765EC
FUN_020765EC: ; 0x020765EC
@@ -249308,9 +249308,9 @@ _02076874: .word 0x000005DC
_02076878: .word 0x000005A4
_0207687C: .word 0x0000FFFE
_02076880: .word 0x0000069C
-_02076884: .word FUN_02076950 + 1
+_02076884: .word FUN_02076950
_02076888: .word 0x00000B18
-_0207688C: .word FUN_020769A4 + 1
+_0207688C: .word FUN_020769A4
thumb_func_start FUN_02076890
FUN_02076890: ; 0x02076890
@@ -249390,7 +249390,7 @@ _020768E6:
mov r0, #0x14
pop {r3-r5, pc}
nop
-_0207693C: .word FUN_020765EC + 1
+_0207693C: .word FUN_020765EC
_02076940: .word 0x00000B14
_02076944: .word 0x000005A4
_02076948: .word 0x0000069C
@@ -249470,9 +249470,9 @@ FUN_020769A4: ; 0x020769A4
pop {r3-r5, pc}
.balign 4
_020769EC: .word 0x0000069C
-_020769F0: .word FUN_020769FC + 1
+_020769F0: .word FUN_020769FC
_020769F4: .word 0x00000B18
-_020769F8: .word FUN_02076A48 + 1
+_020769F8: .word FUN_02076A48
thumb_func_start FUN_020769FC
FUN_020769FC: ; 0x020769FC
@@ -249545,9 +249545,9 @@ FUN_02076A48: ; 0x02076A48
pop {r3-r5, pc}
.balign 4
_02076A90: .word 0x0000069C
-_02076A94: .word FUN_02076950 + 1
+_02076A94: .word FUN_02076950
_02076A98: .word 0x00000B18
-_02076A9C: .word FUN_020769A4 + 1
+_02076A9C: .word FUN_020769A4
thumb_func_start FUN_02076AA0
FUN_02076AA0: ; 0x02076AA0
@@ -249783,9 +249783,9 @@ _02076C78: .word 0x000005A4
_02076C7C: .word 0x00000B25
_02076C80: .word 0x0000069C
_02076C84: .word 0x00000B22
-_02076C88: .word FUN_02076DD4 + 1
+_02076C88: .word FUN_02076DD4
_02076C8C: .word 0x00000B18
-_02076C90: .word FUN_02076E28 + 1
+_02076C90: .word FUN_02076E28
thumb_func_start FUN_02076C94
FUN_02076C94: ; 0x02076C94
@@ -250004,9 +250004,9 @@ FUN_02076E28: ; 0x02076E28
pop {r3-r5, pc}
.balign 4
_02076E70: .word 0x0000069C
-_02076E74: .word FUN_02076E80 + 1
+_02076E74: .word FUN_02076E80
_02076E78: .word 0x00000B18
-_02076E7C: .word FUN_02076ED4 + 1
+_02076E7C: .word FUN_02076ED4
thumb_func_start FUN_02076E80
FUN_02076E80: ; 0x02076E80
@@ -250082,9 +250082,9 @@ FUN_02076ED4: ; 0x02076ED4
pop {r3-r5, pc}
.balign 4
_02076F1C: .word 0x0000069C
-_02076F20: .word FUN_02076DD4 + 1
+_02076F20: .word FUN_02076DD4
_02076F24: .word 0x00000B18
-_02076F28: .word FUN_02076E28 + 1
+_02076F28: .word FUN_02076E28
thumb_func_start FUN_02076F2C
FUN_02076F2C: ; 0x02076F2C
@@ -250722,7 +250722,7 @@ _02077490:
nop
_02077498: .word 0xFFFFE0FF
_0207749C: .word 0x04001000
-_020774A0: .word FUN_02077AE8 + 1
+_020774A0: .word FUN_02077AE8
_020774A4: .word 0x000004C4
_020774A8: .word 0x021C4918
_020774AC: .word 0x000004B8
@@ -251128,7 +251128,7 @@ FUN_020777D4: ; 0x020777D4
bne _020777FE
bl FUN_0201B9EC
mov r1, #0x12
- blx FUN_020EBC80
+ blx _s32_div_f
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
@@ -251140,7 +251140,7 @@ _020777FE:
bne _0207781A
bl FUN_0201B9EC
mov r1, #0x12
- blx FUN_020EBC80
+ blx _s32_div_f
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
@@ -251464,11 +251464,11 @@ FUN_02077AC4: ; 0x02077AC4
ldr r0, [r4, #0x18]
cmp r0, #0x0
bne _02077AD2
- bl FUN_02020C2C
+ bl ErrorHandling
_02077AD2:
cmp r4, #0x0
bne _02077ADA
- bl FUN_02020C2C
+ bl ErrorHandling
_02077ADA:
ldr r0, [r4, #0x18]
bl FUN_02021A20
@@ -251798,7 +251798,7 @@ _02077D88:
mov r0, #0x1
add r1, #0xd8
mov r2, #0x40
- blx FUN_020CE1C8
+ blx MIi_CpuClear16
ldr r0, [r4, #0x0]
cmp r0, #0x1
bne _02077DCE
@@ -252365,7 +252365,7 @@ _0207818C:
mov r1, #0x2
ldr r0, [r5, r0]
lsl r1, r1, #0x8
- blx FUN_020CC15C
+ blx DC_FlushRange
bl FUN_0206B888
add r1, r0, #0x0
mov r0, #0x13
@@ -252378,7 +252378,7 @@ _0207818C:
add r0, r1, #0x4
ldr r0, [r5, r0]
mov r1, #0x80
- blx FUN_020CC15C
+ blx DC_FlushRange
_02078272:
mov r3, #0x1
str r3, [sp, #0x0]
@@ -252708,7 +252708,7 @@ _020784FA:
pop {r4-r7, pc}
nop
_02078528: .word 0x020FA1D4
-_0207852C: .word FUN_02078328 + 1
+_0207852C: .word FUN_02078328
thumb_func_start FUN_02078530
FUN_02078530: ; 0x02078530
@@ -253140,7 +253140,7 @@ _0207887E:
nop
_02078884: .word 0x020F9D2C
_02078888: .word 0x000E0F00
-_0207888C: .word FUN_02078628 + 1
+_0207888C: .word FUN_02078628
_02078890: .word 0x0000069B
thumb_func_start FUN_02078894
@@ -254046,7 +254046,7 @@ FUN_02078FA0: ; 0x02078FA0
bl FUN_02078F7C
mov r1, #0x2
lsl r1, r1, #0xa
- blx FUN_020CC15C
+ blx DC_FlushRange
add r7, r6, #0x0
mov r4, #0x0
add r7, #0x30
@@ -254062,7 +254062,7 @@ _02078FD0:
mov r1, #0x1
add r0, r5, #0x0
lsl r1, r1, #0x8
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r1, _02079070 ; =0x020F9D28
mov r2, #0x1
ldrb r1, [r1, r4]
@@ -254102,7 +254102,7 @@ _02079012:
bl FUN_02078F7C
mov r1, #0x80
add r7, r0, #0x0
- blx FUN_020CC15C
+ blx DC_FlushRange
ldr r1, _02079078 ; =0x020F9D40
lsl r2, r5, #0x2
ldr r1, [r1, r2]
@@ -255843,7 +255843,7 @@ _02079DA0: .word 0xFFFFE0FF
_02079DA4: .word 0x04001000
_02079DA8: .word 0xFFFF1FFF
_02079DAC: .word 0x0000069C
-_02079DB0: .word FUN_02079F24 + 1
+_02079DB0: .word FUN_02079F24
thumb_func_start FUN_02079DB4
FUN_02079DB4: ; 0x02079DB4
@@ -259829,7 +259829,7 @@ FUN_0207BD84: ; 0x0207BD84
bl FUN_0206AB18
bl FUN_02083114
mov r1, #0xa
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r0, #0x18
asr r6, r0, #0x18
mov r4, #0x0
@@ -261582,7 +261582,7 @@ FUN_0207CBC0: ; 0x0207CBC0
.balign 4
_0207CBDC: .word 0x0000068D
_0207CBE0: .word 0x0000042C
-_0207CBE4: .word FUN_0200C6E4 + 1
+_0207CBE4: .word FUN_0200C6E4
thumb_func_start FUN_0207CBE8
FUN_0207CBE8: ; 0x0207CBE8
@@ -261769,7 +261769,7 @@ _0207CD3E:
mov r1, #0xa
ldrb r0, [r4, r0]
add r0, r0, #0x1
- blx FUN_020EBC80
+ blx _s32_div_f
ldr r0, _0207CE44 ; =0x00000693
strb r1, [r4, r0]
b _0207CDE8
@@ -262584,7 +262584,7 @@ FUN_0207D3C4: ; 0x0207D3C4
nop
_0207D3E8: .word 0x00000697
_0207D3EC: .word 0x00000514
-_0207D3F0: .word FUN_0200C6E4 + 1
+_0207D3F0: .word FUN_0200C6E4
thumb_func_start FUN_0207D3F4
FUN_0207D3F4: ; 0x0207D3F4
@@ -268668,7 +268668,7 @@ _0208064C:
add r0, r7, #0x0
_02080654:
mov r1, #0x5
- blx FUN_020EBC80
+ blx _s32_div_f
mov r2, #0xa
add r6, r5, #0x0
mul r6, r2
@@ -269399,14 +269399,14 @@ FUN_02080C38: ; 0x02080C38
mov r1, #0x0
mov r2, #0x8
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r1, _02080C5C ; =FUN_02080C60
add r0, r5, #0x0
add r2, r4, #0x0
bl FUN_0204640C
pop {r3-r5, pc}
nop
-_02080C5C: .word FUN_02080C60 + 1
+_02080C5C: .word FUN_02080C60
thumb_func_start FUN_02080C60
FUN_02080C60: ; 0x02080C60
@@ -269479,7 +269479,7 @@ _02080CB4:
bl FUN_02027E24
str r0, [sp, #0x18]
ldr r0, [r6, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x1c]
add r0, sp, #0x4
bl FUN_02081214
@@ -269594,7 +269594,7 @@ _02080DD4:
str r0, [r4, #0x4]
b _02080DF2
_02080DE2:
- bl FUN_02020C2C
+ bl ErrorHandling
_02080DE6:
add r0, r4, #0x0
bl FUN_02016A18
@@ -269623,7 +269623,7 @@ FUN_02080E0C: ; 0x02080E0C
mov r1, #0x0
mov r2, #0x8
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _02080E50 ; =0x00000121
str r6, [r4, #0x0]
ldrb r0, [r6, r0]
@@ -269647,8 +269647,8 @@ _02080E42:
pop {r4-r6, pc}
nop
_02080E50: .word 0x00000121
-_02080E54: .word FUN_02080E5C + 1
-_02080E58: .word FUN_02081000 + 1
+_02080E54: .word FUN_02080E5C
+_02080E58: .word FUN_02081000
thumb_func_start FUN_02080E5C
FUN_02080E5C: ; 0x02080E5C
@@ -269845,7 +269845,7 @@ _02080FC0:
str r0, [r4, #0x4]
b _02080FDC
_02080FCE:
- bl FUN_02020C2C
+ bl ErrorHandling
_02080FD2:
add r0, r4, #0x0
bl FUN_02016A18
@@ -270095,7 +270095,7 @@ _02081196:
str r0, [r4, #0x4]
b _020811B4
_020811A4:
- bl FUN_02020C2C
+ bl ErrorHandling
_020811A8:
add r0, r4, #0x0
bl FUN_02016A18
@@ -270124,7 +270124,7 @@ FUN_020811D8: ; 0x020811D8
ldr r2, _02081204 ; =0x000019C4
mov r1, #0x0
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _02081208 ; =0x00000123
mov r1, #0x0
strb r1, [r4, r0]
@@ -270145,7 +270145,7 @@ FUN_0208120C: ; 0x0208120C
ldr r3, _02081210 ; =FUN_02016A18
bx r3
.balign 4
-_02081210: .word FUN_02016A18 + 1
+_02081210: .word FUN_02016A18
thumb_func_start FUN_02081214
FUN_02081214: ; 0x02081214
@@ -270607,7 +270607,7 @@ _020815A6:
add r6, r0, #0x0
b _020815BA
_020815B6:
- bl FUN_02020C2C
+ bl ErrorHandling
_020815BA:
cmp r6, #0x0
beq _020815CA
@@ -270639,7 +270639,7 @@ FUN_020815D0: ; 0x020815D0
mov r1, #0x0
mov r2, #0x28
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, _02081658 ; =0x00000123
ldrb r1, [r5, r0]
lsl r1, r1, #0x2
@@ -271255,7 +271255,7 @@ _02081A8A:
ldr r1, _02081D30 ; =0x00000585
ldr r0, [r4, r0]
add r1, r4, r1
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0xc
bl FUN_02031588
ldr r0, _02081D2C ; =0x00000584
@@ -271695,7 +271695,7 @@ _02081DEC:
bl FUN_0202DFA4
add r7, r0, #0x0
bne _02081DFA
- bl FUN_02020C2C
+ bl ErrorHandling
_02081DFA:
add r0, r7, #0x0
bl FUN_02023A88
@@ -271722,7 +271722,7 @@ _02081E1E:
bl FUN_0202DFA4
add r7, r0, #0x0
bne _02081E2C
- bl FUN_02020C2C
+ bl ErrorHandling
_02081E2C:
add r0, r7, #0x0
bl FUN_02023A9C
@@ -271787,14 +271787,14 @@ _02081EA4: .word 0x00000171
_02081EA8: .word 0x00001999
_02081EAC: .word 0x0000199A
_02081EB0: .word 0x00000122
-_02081EB4: .word FUN_02081680 + 1
+_02081EB4: .word FUN_02081680
thumb_func_start FUN_02081EB8
FUN_02081EB8: ; 0x02081EB8
ldr r3, _02081EBC ; =FUN_02081EC0
bx r3
.balign 4
-_02081EBC: .word FUN_02081EC0 + 1
+_02081EBC: .word FUN_02081EC0
thumb_func_start FUN_02081EC0
FUN_02081EC0: ; 0x02081EC0
@@ -271819,7 +271819,7 @@ FUN_02081ED4: ; 0x02081ED4
ldr r0, [r4, r0]
cmp r0, #0x0
beq _02081EE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02081EE6:
ldr r0, _02081F00 ; =0x00000176
mov r1, #0x0
@@ -271834,7 +271834,7 @@ _02081EE6:
pop {r4, pc}
nop
_02081F00: .word 0x00000176
-_02081F04: .word FUN_02081F08 + 1
+_02081F04: .word FUN_02081F08
thumb_func_start FUN_02081F08
FUN_02081F08: ; 0x02081F08
@@ -272219,7 +272219,7 @@ FUN_020821B4: ; 0x020821B4
bx r3
.balign 4
_020821BC: .word 0x00000123
-_020821C0: .word FUN_020832DC + 1
+_020821C0: .word FUN_020832DC
thumb_func_start FUN_020821C4
FUN_020821C4: ; 0x020821C4
@@ -272298,14 +272298,14 @@ FUN_0208223C: ; 0x0208223C
bx r3
.balign 4
_02082244: .word 0x00000171
-_02082248: .word FUN_020833D4 + 1
+_02082248: .word FUN_020833D4
thumb_func_start FUN_0208224C
FUN_0208224C: ; 0x0208224C
ldr r3, _02082250 ; =FUN_02083404
bx r3
.balign 4
-_02082250: .word FUN_02083404 + 1
+_02082250: .word FUN_02083404
thumb_func_start FUN_02082254
FUN_02082254: ; 0x02082254
@@ -272379,7 +272379,7 @@ _020822C8:
add r0, #0x31
b _020822D6
_020822D0:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r5, pc}
_020822D6:
lsl r0, r0, #0x18
@@ -272577,7 +272577,7 @@ _02082412:
_02082414:
cmp r4, #0x64
bne _0208241C
- bl FUN_02020C2C
+ bl ErrorHandling
_0208241C:
ldr r0, _02082440 ; =0x0000198C
ldr r0, [r5, r0]
@@ -272606,7 +272606,7 @@ FUN_02082444: ; 0x02082444
ldr r0, [r5, r0]
cmp r0, #0x0
beq _02082456
- bl FUN_02020C2C
+ bl ErrorHandling
_02082456:
mov r0, #0x4
mov r1, #0x10
@@ -272614,7 +272614,7 @@ _02082456:
mov r1, #0x0
mov r2, #0x10
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r6, #0x0
bl FUN_020832E4
strb r0, [r4, #0xc]
@@ -272693,7 +272693,7 @@ _020824F4: .word 0x020FBBAC
_020824F8: .word 0x020FBB90
_020824FC: .word 0x020FBB98
_02082500: .word 0x020FBBA0
-_02082504: .word FUN_0208251C + 1
+_02082504: .word FUN_0208251C
thumb_func_start FUN_02082508
FUN_02082508: ; 0x02082508
@@ -273128,7 +273128,7 @@ FUN_02082878: ; 0x02082878
ldr r3, _0208287C ; =FUN_0201B9EC
bx r3
.balign 4
-_0208287C: .word FUN_0201B9EC + 1
+_0208287C: .word FUN_0201B9EC
thumb_func_start FUN_02082880
FUN_02082880: ; 0x02082880
@@ -273370,7 +273370,7 @@ _02082A26:
ldr r0, [sp, #0x8]
cmp r6, r0
bge _02082A30
- bl FUN_02020C2C
+ bl ErrorHandling
_02082A30:
mov r0, #0x0
str r0, [sp, #0x10]
@@ -273402,7 +273402,7 @@ _02082A5A:
ldr r0, [sp, #0x4]
bl FUN_02082878
ldr r1, [sp, #0x10]
- blx FUN_020EBC80
+ blx _s32_div_f
mov r3, #0x0
cmp r6, #0x0
ble _02082AA2
@@ -273446,7 +273446,7 @@ _02082AB0:
ldr r0, [sp, #0x4]
bl FUN_02082878
add r1, r6, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r2, r0, #0x10
ldrb r3, [r5, r2]
@@ -273507,7 +273507,7 @@ _02082B16:
ldr r0, [sp, #0x4]
bl FUN_02082878
ldr r1, [sp, #0x8]
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, r4, r1
lsl r0, r0, #0x10
lsr r2, r0, #0x10
@@ -273528,7 +273528,7 @@ _02082B44:
_02082B4E:
cmp r6, #0x4
bhs _02082B56
- bl FUN_02020C2C
+ bl ErrorHandling
_02082B56:
mov r6, #0x0
mov r7, #0x30
@@ -273692,7 +273692,7 @@ _02082C66:
ldrb r2, [r0, #0x0]
b _02082C74
_02082C6E:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r2, #0x0
_02082C74:
mov r0, #0x54
@@ -273950,7 +273950,7 @@ FUN_02082E64: ; 0x02082E64
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02082E98
- bl FUN_02020C2C
+ bl ErrorHandling
_02082E98:
add r1, sp, #0x14
ldrh r0, [r1, #0x0]
@@ -274153,7 +274153,7 @@ _0208300A:
strb r1, [r0, r4]
cmp r5, #0x2
bhs _0208301A
- bl FUN_02020C2C
+ bl ErrorHandling
_0208301A:
ldr r2, [sp, #0x4]
mov r3, #0x0
@@ -274185,12 +274185,12 @@ _0208301E:
blt _0208301E
cmp r4, #0x1
bhs _02083058
- bl FUN_02020C2C
+ bl ErrorHandling
_02083058:
ldr r0, [sp, #0x4]
bl FUN_02082878
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
lsl r0, r1, #0x10
lsr r1, r0, #0x10
ldr r0, [sp, #0x10]
@@ -274283,7 +274283,7 @@ FUN_02083114: ; 0x02083114
add r4, r0, #0x0
cmp r4, #0x18
blo _02083120
- bl FUN_02020C2C
+ bl ErrorHandling
_02083120:
mov r0, #0x1a
add r1, r4, #0x0
@@ -274302,7 +274302,7 @@ FUN_02083130: ; 0x02083130
add r6, r2, #0x0
cmp r5, #0x18
blo _02083140
- bl FUN_02020C2C
+ bl ErrorHandling
_02083140:
mov r0, #0x1a
add r1, r5, #0x0
@@ -274324,7 +274324,7 @@ FUN_0208315C: ; 0x0208315C
add r4, r0, #0x0
cmp r4, #0x18
blo _02083168
- bl FUN_02020C2C
+ bl ErrorHandling
_02083168:
add r4, #0x2d
add r0, r4, #0x0
@@ -274340,7 +274340,7 @@ FUN_02083170: ; 0x02083170
add r6, r3, #0x0
cmp r4, #0x18
blo _02083182
- bl FUN_02020C2C
+ bl ErrorHandling
_02083182:
cmp r7, #0x4
bhi _0208319C
@@ -274505,7 +274505,7 @@ FUN_02083298: ; 0x02083298
mov r1, #0x2
bx r3
nop
-_020832A0: .word FUN_020832A4 + 1
+_020832A0: .word FUN_020832A4
thumb_func_start FUN_020832A4
FUN_020832A4: ; 0x020832A4
@@ -274761,7 +274761,7 @@ _02083448:
add r0, #0x8a
pop {r3, pc}
_0208344C:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x7a
pop {r3, pc}
@@ -274778,7 +274778,7 @@ FUN_02083454: ; 0x02083454
_02083464:
bl FUN_0201B9EC
mov r1, #0xc
- blx FUN_020EBC80
+ blx _s32_div_f
add sp, #0xc
add r0, r1, #0x0
pop {r4-r5, pc}
@@ -274786,7 +274786,7 @@ _02083474:
add r0, sp, #0x0
add r1, r4, #0x0
mov r2, #0xc
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r1, #0x2
add r0, sp, #0x0
strb r1, [r0, #0x0]
@@ -274823,7 +274823,7 @@ _020834A6:
_020834BE:
bl FUN_0201B9EC
add r1, r4, #0x0
- blx FUN_020EBC80
+ blx _s32_div_f
add r0, sp, #0x0
ldrb r0, [r0, r1]
add sp, #0xc
@@ -274837,7 +274837,7 @@ FUN_020834D0: ; 0x020834D0
mov r1, #0x10
bx r3
nop
-_020834DC: .word FUN_0202D8D0 + 1
+_020834DC: .word FUN_0202D8D0
_020834E0: .word 0x020FBED8
thumb_func_start FUN_020834E4
@@ -274849,7 +274849,7 @@ FUN_020834E4: ; 0x020834E4
add r4, r1, #0x0
cmp r2, r0
blt _020834F6
- bl FUN_02020C2C
+ bl ErrorHandling
_020834F6:
ldr r0, _02083500 ; =0x00000985
add r1, r4, r0
@@ -274916,21 +274916,21 @@ _0208354A:
add r4, r1, r0
b _0208355E
_02083558:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r3-r7, pc}
_0208355E:
mov r0, #0x2
lsl r0, r0, #0x8
cmp r6, r0
ble _0208356A
- bl FUN_02020C2C
+ bl ErrorHandling
_0208356A:
ldr r0, _0208359C ; =0x00000A11
add r7, r4, r0
ldrb r0, [r7, r5]
cmp r0, #0x0
beq _02083578
- bl FUN_02020C2C
+ bl ErrorHandling
_02083578:
mov r1, #0x21
lsl r1, r1, #0x4
@@ -274939,7 +274939,7 @@ _02083578:
add r1, r2, r1
ldr r0, [sp, #0x0]
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x1
strb r0, [r7, r5]
pop {r3-r7, pc}
@@ -274974,7 +274974,7 @@ FUN_020835B0: ; 0x020835B0
lsl r1, r6, #0x8
add r1, r2, r1
add r2, r5, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r2, _02083628 ; =0x00000584
ldrb r0, [r4, r2]
add r0, r0, #0x1
@@ -275096,7 +275096,7 @@ FUN_02083694: ; 0x02083694
add r0, r5, #0x0
lsl r1, r1, #0x2
ldr r1, [r4, r1]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _020836B8 ; =0x00000584
ldrb r1, [r4, r0]
add r1, r1, #0x1
@@ -275119,7 +275119,7 @@ FUN_020836BC: ; 0x020836BC
add r0, r7, #0x0
add r1, r5, #0x0
add r2, r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x1b
add r1, r5, #0x0
add r2, r4, #0x1
@@ -275153,7 +275153,7 @@ _02083710:
ldr r1, [r4, #0x0]
add r0, r0, r5
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r7, r7, #0x1
add r4, r4, #0x4
add r5, r5, r6
@@ -275190,7 +275190,7 @@ _02083758:
ldr r0, [r5, #0x0]
add r1, r1, r4
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r7, r7, #0x1
add r4, r4, r6
add r5, r5, #0x4
@@ -275225,7 +275225,7 @@ FUN_0208378C: ; 0x0208378C
add r5, #0x10
mul r3, r2
add r1, r5, r3
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _020837B0 ; =0x00000584
ldrb r1, [r4, r0]
add r1, r1, #0x1
@@ -275246,7 +275246,7 @@ FUN_020837B4: ; 0x020837B4
add r0, r6, #0x0
add r1, r4, #0x0
mov r2, #0x30
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r0, r4, #0x0
add r0, #0x30
strb r5, [r0, #0x0]
@@ -275281,7 +275281,7 @@ _02083802:
add r0, r6, r0
add r1, r5, #0x0
add r2, r7, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r4, r4, #0x1
add r5, #0x8
cmp r4, #0x3
@@ -275316,7 +275316,7 @@ _02083848:
add r0, r5, #0x0
add r1, r6, r1
add r2, r7, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r4, r4, #0x1
add r5, #0x8
cmp r4, #0x3
@@ -275381,7 +275381,7 @@ FUN_020838B4: ; 0x020838B4
add r0, sp, #0x0
add r1, r4, #0x4
mov r2, #0x10
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
strb r5, [r4, #0x0]
mov r0, #0x10
strb r0, [r4, #0x1]
@@ -275418,7 +275418,7 @@ FUN_02083904: ; 0x02083904
add r1, r4, r1
add r1, #0xf8
ldr r1, [r1, #0x0]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _0208392C ; =0x00000584
ldrb r1, [r4, r0]
add r1, r1, #0x1
@@ -275441,7 +275441,7 @@ FUN_02083930: ; 0x02083930
add r0, r7, #0x0
add r1, r5, #0x0
add r2, r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x20
add r1, r5, #0x0
add r2, r4, #0x1
@@ -275472,7 +275472,7 @@ FUN_02083970: ; 0x02083970
lsl r0, r0, #0xa
cmp r1, r0
blt _0208398C
- bl FUN_02020C2C
+ bl ErrorHandling
_0208398C:
mov r7, #0x0
ldr r4, [sp, #0x4]
@@ -275484,7 +275484,7 @@ _02083992:
ldr r1, [r1, #0x0]
add r0, r0, r5
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r7, r7, #0x1
add r4, r4, #0x4
add r5, r5, r6
@@ -275515,7 +275515,7 @@ FUN_020839C0: ; 0x020839C0
str r0, [sp, #0x0]
cmp r0, r1
blt _020839DE
- bl FUN_02020C2C
+ bl ErrorHandling
_020839DE:
ldr r0, _02083A18 ; =0x00000585
mov r7, #0x0
@@ -275527,7 +275527,7 @@ _020839E8:
ldr r0, [r5, #0x0]
add r1, r1, r4
add r2, r6, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
add r7, r7, #0x1
add r4, r4, r6
add r5, r5, #0x4
@@ -275557,7 +275557,7 @@ FUN_02083A1C: ; 0x02083A1C
add r0, r2, #0x0
add r1, r3, r1
add r2, r4, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
pop {r4, pc}
nop
_02083A30: .word 0x000019A0
@@ -275645,7 +275645,7 @@ FUN_02083AA8: ; 0x02083AA8
mov r1, #0x57
lsl r1, r1, #0x2
ldr r1, [r3, r1]
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
ldr r0, _02083AD0 ; =0x00000584
ldrb r1, [r4, r0]
add r1, r1, #0x1
@@ -275669,7 +275669,7 @@ FUN_02083AD4: ; 0x02083AD4
add r0, r6, #0x0
add r1, r4, #0x0
add r2, r5, #0x0
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
_02083AF4:
mov r0, #0x24
add r1, r4, #0x0
@@ -275728,7 +275728,7 @@ FUN_02083B48: ; 0x02083B48
add r0, r6, #0x0
add r1, r4, #0x0
mov r2, #0x6
- blx FUN_020CE3E0
+ blx MI_CpuCopy8
mov r0, #0x25
add r1, r4, #0x0
mov r2, #0x7
@@ -275755,7 +275755,7 @@ FUN_02083B84: ; 0x02083B84
mov r1, #0xb
bx r3
nop
-_02083B90: .word FUN_0202D8D0 + 1
+_02083B90: .word FUN_0202D8D0
_02083B94: .word 0x020FBF98
thumb_func_start FUN_02083B98
@@ -275964,7 +275964,7 @@ FUN_02083CD8: ; 0x02083CD8
add r0, r6, #0x0
add r1, r3, r1
sub r2, r2, #0x4
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
mov r0, #0x4
str r0, [r4, #0x54]
mov r0, #0x0
@@ -276027,7 +276027,7 @@ FUN_02083D48: ; 0x02083D48
mov r1, #0x6c
bx r3
nop
-_02083D54: .word FUN_0202D8D0 + 1
+_02083D54: .word FUN_0202D8D0
_02083D58: .word 0x020FC01C
thumb_func_start FUN_02083D5C
@@ -276054,14 +276054,14 @@ FUN_02083D5C: ; 0x02083D5C
mov r2, #0x19
add r0, r5, #0x0
lsl r2, r2, #0x4
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
b _02083D9C
_02083D90:
add r2, r4, r2
add r1, r2, r1
add r0, r5, #0x0
sub r2, r3, #0x4
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
_02083D9C:
mov r1, #0xb5
ldr r0, _02083DE8 ; =0x000043D0
@@ -276070,7 +276070,7 @@ _02083D9C:
ldr r1, [r4, r1]
add r0, r4, r0
lsl r2, r2, #0x6
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
mov r0, #0xb2
lsl r0, r0, #0x2
add r0, r4, r0
@@ -276171,7 +276171,7 @@ FUN_02083E4C: ; 0x02083E4C
mov r0, #0x0
add r1, r4, r1
lsl r2, r2, #0x6
- blx FUN_020CE240
+ blx MIi_CpuClearFast
bl FUN_02031190
cmp r0, #0x0
bne _02083E8A
@@ -276375,7 +276375,7 @@ FUN_02083FDC: ; 0x02083FDC
bl FUN_02031190
cmp r0, #0x0
beq _02083FEE
- bl FUN_02020C2C
+ bl ErrorHandling
_02083FEE:
bl FUN_02031190
cmp r0, #0x0
@@ -276426,7 +276426,7 @@ FUN_0208402C: ; 0x0208402C
add r0, r1, r0
ldr r1, _02084078 ; =0x00007C10
add r1, r5, r1
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
ldr r0, _02084078 ; =0x00007C10
mov r2, #0x0
add r1, r2, #0x0
@@ -276482,7 +276482,7 @@ FUN_02084098: ; 0x02084098
mov r1, #0x6c
bx r3
nop
-_020840A4: .word FUN_0202D8D0 + 1
+_020840A4: .word FUN_0202D8D0
_020840A8: .word 0x020FC52C
thumb_func_start FUN_020840AC
@@ -278531,7 +278531,7 @@ _020850BE:
mov r0, #0x96
mul r0, r1
mov r1, #0x64
- blx FUN_020EBC80
+ blx _s32_div_f
str r0, [sp, #0x18]
_020850EC:
add r0, r5, #0x0
@@ -278743,21 +278743,21 @@ FUN_02085258: ; 0x02085258
mov r0, #0x44
bx r3
.balign 4
-_02085260: .word FUN_02006670 + 1
+_02085260: .word FUN_02006670
thumb_func_start FUN_02085264
FUN_02085264: ; 0x02085264
ldr r3, _02085268 ; =FUN_02006704
bx r3
.balign 4
-_02085268: .word FUN_02006704 + 1
+_02085268: .word FUN_02006704
thumb_func_start FUN_0208526C
FUN_0208526C: ; 0x0208526C
ldr r3, _02085270 ; =FUN_020066F4
bx r3
.balign 4
-_02085270: .word FUN_020066F4 + 1
+_02085270: .word FUN_020066F4
thumb_func_start FUN_02085274
FUN_02085274: ; 0x02085274
@@ -278768,7 +278768,7 @@ FUN_02085274: ; 0x02085274
mov r0, #0x44
bx r3
.balign 4
-_02085280: .word FUN_0200650C + 1
+_02085280: .word FUN_0200650C
thumb_func_start FUN_02085284
FUN_02085284: ; 0x02085284
@@ -278776,7 +278776,7 @@ FUN_02085284: ; 0x02085284
sub r0, #0x95
bx r3
nop
-_0208528C: .word FUN_02085274 + 1
+_0208528C: .word FUN_02085274
thumb_func_start FUN_02085290
FUN_02085290: ; 0x02085290
@@ -278906,7 +278906,7 @@ FUN_02085338: ; 0x02085338
strb r0, [r4, #0x2]
add r0, r6, #0x0
strb r1, [r4, #0x3]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
bl FUN_02025084
str r0, [r4, #0x8]
cmp r5, #0x2
@@ -278937,7 +278937,7 @@ FUN_020853A8: ; 0x020853A8
ldr r3, _020853AC ; =FUN_02016A18
bx r3
.balign 4
-_020853AC: .word FUN_02016A18 + 1
+_020853AC: .word FUN_02016A18
thumb_func_start FUN_020853B0
FUN_020853B0: ; 0x020853B0
@@ -279013,7 +279013,7 @@ FUN_020853FC: ; 0x020853FC
add r1, r2, #0x0
bx r3
.balign 4
-_02085408: .word FUN_02013960 + 1
+_02085408: .word FUN_02013960
thumb_func_start FUN_0208540C
FUN_0208540C: ; 0x0208540C
@@ -279176,7 +279176,7 @@ FUN_020854E0: ; 0x020854E0
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [sp, #0x0]
strb r0, [r4, #0xf]
ldr r0, [sp, #0x4]
@@ -279214,7 +279214,7 @@ FUN_02085538: ; 0x02085538
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
strh r0, [r4, #0x0]
str r5, [r4, #0x8]
@@ -279244,7 +279244,7 @@ FUN_02085578: ; 0x02085578
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
strh r0, [r4, #0x0]
str r5, [r4, #0x10]
@@ -279271,7 +279271,7 @@ FUN_020855B0: ; 0x020855B0
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
strh r0, [r4, #0x0]
add r0, r7, #0x0
@@ -279431,7 +279431,7 @@ FUN_020856F0: ; 0x020856F0
mov r1, #0x0
mov r2, #0x34
add r6, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x0
strh r0, [r6, #0x0]
add r0, r4, #0x0
@@ -279569,14 +279569,14 @@ FUN_020857F8: ; 0x020857F8
mov r1, #0x0
mov r2, #0x1c
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r1, #0x28
str r1, [r4, #0x0]
ldr r0, [r5, #0x14]
bl FUN_020856F0
str r0, [r4, #0x10]
ldr r0, [r5, #0x10]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
ldr r1, [r4, #0x10]
str r0, [r1, #0x4]
ldrh r0, [r5, #0x0]
@@ -280186,7 +280186,7 @@ FUN_02085D6C: ; 0x02085D6C
ldr r0, [r4, #0x0]
cmp r0, r1
bge _02085D7C
- bl FUN_02020C2C
+ bl ErrorHandling
mov r1, #0x0
_02085D7C:
lsl r0, r1, #0x2
@@ -280312,7 +280312,7 @@ _02085E48:
beq _02085E5A
cmp r0, #0x1
beq _02085E60
- bl FUN_02020C2C
+ bl ErrorHandling
_02085E5A:
mov r0, #0x5
str r0, [r6, #0x14]
@@ -280447,7 +280447,7 @@ _02085F5E:
str r0, [r4, #0x8]
blx FUN_020DF4A4
add r0, r5, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
ldr r1, [r4, #0x8]
str r0, [r1, #0x24]
ldr r0, [r4, #0x8]
@@ -280465,7 +280465,7 @@ _02085F5E:
bl FUN_0204640C
pop {r4-r6, pc}
nop
-_02085FA8: .word FUN_02085DA4 + 1
+_02085FA8: .word FUN_02085DA4
thumb_func_start FUN_02085FAC
FUN_02085FAC: ; 0x02085FAC
@@ -280474,7 +280474,7 @@ FUN_02085FAC: ; 0x02085FAC
ldr r0, _02085FC8 ; =0x0000032A
cmp r4, r0
blo _02085FBA
- bl FUN_02020C2C
+ bl ErrorHandling
_02085FBA:
mov r0, #0xa
add r1, r4, #0x0
@@ -280493,7 +280493,7 @@ FUN_02085FD0: ; 0x02085FD0
ldr r0, _02085FEC ; =0x0000032A
cmp r4, r0
blo _02085FDE
- bl FUN_02020C2C
+ bl ErrorHandling
_02085FDE:
mov r0, #0xa
add r1, r4, #0x0
@@ -280512,7 +280512,7 @@ FUN_02085FF4: ; 0x02085FF4
ldr r0, _02086010 ; =0x0000032A
cmp r4, r0
blo _02086002
- bl FUN_02020C2C
+ bl ErrorHandling
_02086002:
mov r0, #0xa
add r1, r4, #0x0
@@ -280531,7 +280531,7 @@ FUN_02086018: ; 0x02086018
ldr r0, _02086034 ; =0x0000032A
cmp r4, r0
blo _02086026
- bl FUN_02020C2C
+ bl ErrorHandling
_02086026:
mov r0, #0xa
add r1, r4, #0x0
@@ -280550,7 +280550,7 @@ FUN_0208603C: ; 0x0208603C
ldr r0, _02086058 ; =0x0000032A
cmp r4, r0
blo _0208604A
- bl FUN_02020C2C
+ bl ErrorHandling
_0208604A:
mov r0, #0xa
add r1, r4, #0x0
@@ -280569,7 +280569,7 @@ FUN_02086060: ; 0x02086060
ldr r0, _0208607C ; =0x0000032A
cmp r4, r0
blo _0208606E
- bl FUN_02020C2C
+ bl ErrorHandling
_0208606E:
mov r0, #0xa
add r1, r4, #0x0
@@ -280669,7 +280669,7 @@ FUN_02086084: ; 0x02086084
mov r0, #0x1
pop {r3-r5, pc}
nop
-_02086164: .word FUN_02086664 + 1
+_02086164: .word FUN_02086664
thumb_func_start FUN_02086168
FUN_02086168: ; 0x02086168
@@ -280893,7 +280893,7 @@ _0208633A:
add r7, r0, #0x0
add r0, r6, #0x0
bl FUN_020377AC
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [sp, #0x0]
mov r0, #0xb
mov r1, #0x1
@@ -280985,7 +280985,7 @@ _020863F2:
bl FUN_0204640C
pop {r3-r5, pc}
.balign 4
-_02086410: .word FUN_02086280 + 1
+_02086410: .word FUN_02086280
thumb_func_start FUN_02086414
FUN_02086414: ; 0x02086414
@@ -281044,7 +281044,7 @@ FUN_02086468: ; 0x02086468
add sp, #0x8
pop {r3, pc}
nop
-_02086484: .word FUN_02086488 + 1
+_02086484: .word FUN_02086488
thumb_func_start FUN_02086488
FUN_02086488: ; 0x02086488
@@ -281127,11 +281127,11 @@ FUN_0208650C: ; 0x0208650C
add r5, r0, #0x0
cmp r4, #0x0
bne _02086534
- bl FUN_02020C2C
+ bl ErrorHandling
_02086534:
cmp r5, #0x0
bne _0208653C
- bl FUN_02020C2C
+ bl ErrorHandling
_0208653C:
bl FUN_02012CC8
pop {r3-r5, pc}
@@ -281160,25 +281160,25 @@ _0208655C:
mov r0, #0x0
lsl r1, r1, #0x18
lsl r2, r2, #0x12
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x62
mov r2, #0x2
mov r0, #0x0
lsl r1, r1, #0x14
lsl r2, r2, #0x10
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x19
mov r2, #0x1
mov r0, #0x0
lsl r1, r1, #0x16
lsl r2, r2, #0x12
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
mov r1, #0x66
mov r2, #0x2
mov r0, #0x0
lsl r1, r1, #0x14
lsl r2, r2, #0x10
- blx FUN_020CE1FC
+ blx MIi_CpuClear32
ldr r5, _02086654 ; =0x020FCE24
add r3, sp, #0x1c
add r2, r3, #0x0
@@ -281796,8 +281796,8 @@ _02086AB8:
add sp, #0x8
pop {r4, pc}
nop
-_02086AC0: .word FUN_02086A48 + 1
-_02086AC4: .word FUN_02086A64 + 1
+_02086AC0: .word FUN_02086A48
+_02086AC4: .word FUN_02086A64
thumb_func_start FUN_02086AC8
FUN_02086AC8: ; 0x02086AC8
@@ -281871,7 +281871,7 @@ FUN_02086B40: ; 0x02086B40
bl FUN_02016998
add r4, r0, #0x0
bne _02086B54
- bl FUN_02020C2C
+ bl ErrorHandling
_02086B54:
ldr r0, [r5, #0x0]
ldr r2, [r5, #0x4]
@@ -281899,7 +281899,7 @@ FUN_02086B70: ; 0x02086B70
bl FUN_02013440
pop {r4, pc}
.balign 4
-_02086B88: .word FUN_02086B08 + 1
+_02086B88: .word FUN_02086B08
thumb_func_start FUN_02086B8C
FUN_02086B8C: ; 0x02086B8C
@@ -281919,7 +281919,7 @@ FUN_02086BA0: ; 0x02086BA0
ldr r3, _02086BA4 ; =FUN_02016A18
bx r3
.balign 4
-_02086BA4: .word FUN_02016A18 + 1
+_02086BA4: .word FUN_02016A18
thumb_func_start FUN_02086BA8
FUN_02086BA8: ; 0x02086BA8
@@ -282296,7 +282296,7 @@ FUN_02086E48: ; 0x02086E48
bl FUN_0200BBF0
cmp r0, #0x0
bne _02086EB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02086EB2:
ldr r0, [r4, #0x4c]
ldr r1, [r4, #0x48]
@@ -282304,7 +282304,7 @@ _02086EB2:
bl FUN_0200BF60
cmp r0, #0x0
bne _02086EC4
- bl FUN_02020C2C
+ bl ErrorHandling
_02086EC4:
add sp, #0x4c
pop {r3-r6, pc}
@@ -282408,7 +282408,7 @@ FUN_02086F8C: ; 0x02086F8C
ldr r0, [r0, #0x68]
bx r3
nop
-_02086F94: .word FUN_02007534 + 1
+_02086F94: .word FUN_02007534
thumb_func_start FUN_02086F98
FUN_02086F98: ; 0x02086F98
@@ -282418,7 +282418,7 @@ FUN_02086F98: ; 0x02086F98
mov r1, #0x6
bx r3
nop
-_02086FA4: .word FUN_02007558 + 1
+_02086FA4: .word FUN_02007558
thumb_func_start FUN_02086FA8
FUN_02086FA8: ; 0x02086FA8
@@ -282874,7 +282874,7 @@ _02087322:
str r0, [r4, #0x5c]
b _02087486
_0208735C:
- bl FUN_02020C2C
+ bl ErrorHandling
b _02087486
_02087362:
bl FUN_02005670
@@ -283746,7 +283746,7 @@ FUN_02087A38: ; 0x02087A38
add r4, r0, #0x0
cmp r4, #0x6
blt _02087A44
- bl FUN_02020C2C
+ bl ErrorHandling
_02087A44:
ldr r0, _02087A4C ; =0x020FD13C
ldrb r0, [r0, r4]
@@ -283792,7 +283792,7 @@ FUN_02087A84: ; 0x02087A84
push {r4, lr}
add r4, r0, #0x0
bne _02087A8E
- bl FUN_02020C2C
+ bl ErrorHandling
_02087A8E:
add r0, r4, #0x0
bl FUN_02016A18
@@ -283807,17 +283807,17 @@ FUN_02087A98: ; 0x02087A98
add r4, r2, #0x0
cmp r5, #0x0
bne _02087AA8
- bl FUN_02020C2C
+ bl ErrorHandling
_02087AA8:
ldr r0, [r5, #0x0]
cmp r0, #0x0
beq _02087AB2
- bl FUN_02020C2C
+ bl ErrorHandling
_02087AB2:
ldr r0, [r5, #0x4]
cmp r0, #0x0
beq _02087ABC
- bl FUN_02020C2C
+ bl ErrorHandling
_02087ABC:
add r0, r4, #0x0
bl FUN_02087C18
@@ -283862,12 +283862,12 @@ FUN_02087B0C: ; 0x02087B0C
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _02087B1A
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B1A:
ldr r0, [r4, #0x4]
cmp r0, #0x0
bne _02087B24
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B24:
ldr r0, [r4, #0x0]
bl FUN_02016A18
@@ -283897,12 +283897,12 @@ FUN_02087B58: ; 0x02087B58
add r4, r1, #0x0
cmp r5, #0x0
bne _02087B66
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B66:
ldr r0, [r5, #0x0]
cmp r0, #0x0
bne _02087B70
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B70:
ldr r1, [r5, #0x0]
lsl r0, r4, #0x2
@@ -283916,12 +283916,12 @@ FUN_02087B78: ; 0x02087B78
add r4, r1, #0x0
cmp r5, #0x0
bne _02087B86
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B86:
ldr r0, [r5, #0x4]
cmp r0, #0x0
bne _02087B90
- bl FUN_02020C2C
+ bl ErrorHandling
_02087B90:
ldr r1, [r5, #0x4]
lsl r0, r4, #0x2
@@ -283935,12 +283935,12 @@ FUN_02087B98: ; 0x02087B98
add r4, r1, #0x0
cmp r5, #0x0
bne _02087BA6
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BA6:
ldr r0, [r5, #0x8]
cmp r0, #0x0
bne _02087BB0
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BB0:
ldr r1, [r5, #0x8]
lsl r0, r4, #0x1
@@ -283954,12 +283954,12 @@ FUN_02087BB8: ; 0x02087BB8
add r4, r1, #0x0
cmp r5, #0x0
bne _02087BC6
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BC6:
ldr r0, [r5, #0xc]
cmp r0, #0x0
bne _02087BD0
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BD0:
ldr r1, [r5, #0xc]
lsl r0, r4, #0x1
@@ -283973,12 +283973,12 @@ FUN_02087BD8: ; 0x02087BD8
add r4, r1, #0x0
cmp r5, #0x0
bne _02087BE6
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BE6:
ldr r0, [r5, #0x10]
cmp r0, #0x0
bne _02087BF0
- bl FUN_02020C2C
+ bl ErrorHandling
_02087BF0:
ldr r1, [r5, #0x10]
lsl r0, r4, #0x1
@@ -283992,12 +283992,12 @@ FUN_02087BF8: ; 0x02087BF8
add r4, r1, #0x0
cmp r5, #0x0
bne _02087C06
- bl FUN_02020C2C
+ bl ErrorHandling
_02087C06:
ldr r0, [r5, #0x14]
cmp r0, #0x0
bne _02087C10
- bl FUN_02020C2C
+ bl ErrorHandling
_02087C10:
ldr r1, [r5, #0x14]
lsl r0, r4, #0x1
@@ -284144,7 +284144,7 @@ FUN_02087D00: ; 0x02087D00
mov r1, #0x0
lsl r2, r2, #0x2
add r7, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
bl FUN_02028048
str r0, [r7, #0x8]
@@ -284158,7 +284158,7 @@ FUN_02087D00: ; 0x02087D00
bl FUN_0206F158
str r0, [r7, #0x14]
add r0, r4, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r7, #0x18]
add r0, r5, #0x0
bl FUN_02027E5C
@@ -284263,7 +284263,7 @@ FUN_02087E14: ; 0x02087E14
ldr r3, _02087E18 ; =FUN_02016A18
bx r3
.balign 4
-_02087E18: .word FUN_02016A18 + 1
+_02087E18: .word FUN_02016A18
thumb_func_start FUN_02087E1C
FUN_02087E1C: ; 0x02087E1C
@@ -284303,7 +284303,7 @@ FUN_02087E40: ; 0x02087E40
mov r1, #0x0
mov r2, #0x18
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x2c
str r0, [r4, #0x0]
str r5, [r4, #0xc]
@@ -284469,7 +284469,7 @@ _02087F86:
mov r1, #0x0
mov r2, #0x40
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r0, [r5, #0xc]
mov r1, #0x0
ldr r0, [r0, #0x10]
@@ -284610,7 +284610,7 @@ FUN_020880A0: ; 0x020880A0
mov r1, #0x0
mov r2, #0xc
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r1, [r5, #0xc]
ldrb r0, [r1, #0x1]
lsl r0, r0, #0x3
@@ -284924,7 +284924,7 @@ FUN_02088320: ; 0x02088320
mov r1, #0x0
lsl r2, r2, #0x2
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
str r6, [r4, #0x0]
cmp r5, #0x10
bls _0208834A
@@ -284953,7 +284953,7 @@ FUN_02088360: ; 0x02088360
add r0, r4, #0x0
mov r1, #0x0
lsl r2, r2, #0x2
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r4, #0x0
bl FUN_02016A18
pop {r4, pc}
@@ -285048,7 +285048,7 @@ _02088402:
ldr r0, [r0, r2]
mov r1, #0x0
mov r2, #0x4
- blx FUN_020CE34C
+ blx MI_CpuFill8
add sp, #0xc
pop {r4-r7, pc}
.balign 4
@@ -285094,7 +285094,7 @@ FUN_02088484: ; 0x02088484
ldr r0, [r0, #0x10]
bx r3
nop
-_0208848C: .word FUN_0201FDEC + 1
+_0208848C: .word FUN_0201FDEC
thumb_func_start FUN_02088490
FUN_02088490: ; 0x02088490
@@ -285110,7 +285110,7 @@ FUN_02088490: ; 0x02088490
str r0, [sp, #0x3c]
cmp r0, #0x0
bge _020884B4
- bl FUN_02020C2C
+ bl ErrorHandling
add sp, #0x70
mov r0, #0x0
pop {r3-r7, pc}
@@ -285121,7 +285121,7 @@ _020884B4:
str r0, [sp, #0x38]
mov r1, #0x0
mov r2, #0x8
- blx FUN_020CE34C
+ blx MI_CpuFill8
ldr r1, [sp, #0x3c]
ldr r0, [sp, #0x38]
strh r1, [r0, #0x0]
@@ -285305,7 +285305,7 @@ _02088612:
bl FUN_02020248
b _02088656
_02088652:
- bl FUN_02020C2C
+ bl ErrorHandling
_02088656:
ldr r0, [sp, #0x38]
str r4, [r0, #0x4]
@@ -285396,7 +285396,7 @@ FUN_020886CC: ; 0x020886CC
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02088704
- bl FUN_02020C2C
+ bl ErrorHandling
_02088704:
ldr r0, [r5, #0x4]
cmp r0, #0x0
@@ -285447,7 +285447,7 @@ _02088734:
ldr r0, [r0, #0x0]
cmp r0, #0x0
bne _02088768
- bl FUN_02020C2C
+ bl ErrorHandling
_02088768:
add r4, r4, #0x1
add r6, r6, #0x4
@@ -285485,7 +285485,7 @@ _02088780:
ldr r0, [r0, r4]
cmp r0, #0x0
bne _020887B4
- bl FUN_02020C2C
+ bl ErrorHandling
_020887B4:
ldr r0, [r6, #0x0]
ldr r0, [r0, r4]
@@ -285560,7 +285560,7 @@ FUN_0208881C: ; 0x0208881C
mov r1, #0x6c
bx r3
nop
-_02088828: .word FUN_0202D8D0 + 1
+_02088828: .word FUN_0202D8D0
_0208882C: .word 0x020FD1C4
thumb_func_start FUN_02088830
@@ -285611,7 +285611,7 @@ FUN_02088858: ; 0x02088858
mov r1, #0x2
bx r3
.balign 4
-_02088860: .word FUN_02005FDC + 1
+_02088860: .word FUN_02005FDC
_02088864: .word 0x00000004
thumb_func_start FUN_02088868
@@ -285620,7 +285620,7 @@ FUN_02088868: ; 0x02088868
ldr r0, _02088874 ; =0x00000004
bx r3
nop
-_02088870: .word FUN_02005F60 + 1
+_02088870: .word FUN_02005F60
_02088874: .word 0x00000004
thumb_func_start FUN_02088878
@@ -285630,7 +285630,7 @@ FUN_02088878: ; 0x02088878
mov r1, #0x2
bx r3
.balign 4
-_02088880: .word FUN_02005FDC + 1
+_02088880: .word FUN_02005FDC
_02088884: .word 0x0000000D
thumb_func_start FUN_02088888
@@ -285639,7 +285639,7 @@ FUN_02088888: ; 0x02088888
ldr r0, _02088894 ; =0x0000000D
bx r3
nop
-_02088890: .word FUN_02005F60 + 1
+_02088890: .word FUN_02005F60
_02088894: .word 0x0000000D
thumb_func_start FUN_02088898
@@ -285653,7 +285653,7 @@ FUN_02088898: ; 0x02088898
bl FUN_02088888
bl FUN_02088868
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
pop {r4, pc}
.balign 4
@@ -285664,7 +285664,7 @@ FUN_020888BC: ; 0x020888BC
mov r1, #0x2
bx r3
.balign 4
-_020888C4: .word FUN_02005FDC + 1
+_020888C4: .word FUN_02005FDC
_020888C8: .word 0x0000004F
thumb_func_start FUN_020888CC
@@ -285673,7 +285673,7 @@ FUN_020888CC: ; 0x020888CC
ldr r0, _020888D8 ; =0x0000004F
bx r3
nop
-_020888D4: .word FUN_02005F60 + 1
+_020888D4: .word FUN_02005F60
_020888D8: .word 0x0000004F
thumb_func_start FUN_020888DC
@@ -285693,7 +285693,7 @@ FUN_020888DC: ; 0x020888DC
mov r0, #0x31
bl FUN_020168D0
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
mov r0, #0x1
pop {r4, pc}
.balign 4
@@ -285710,7 +285710,7 @@ FUN_0208890C: ; 0x0208890C
add r4, r0, #0x0
mov r1, #0x0
mov r2, #0x20
- blx FUN_020CE34C
+ blx MI_CpuFill8
str r5, [r4, #0xc]
add r0, r5, #0x0
bl FUN_02028048
@@ -285722,7 +285722,7 @@ FUN_0208890C: ; 0x0208890C
bl FUN_0206F158
str r0, [r4, #0x14]
add r0, r5, #0x0
- bl FUN_02023900
+ bl LoadPlayerDataAddress
str r0, [r4, #0x18]
str r7, [r4, #0x1c]
str r6, [r4, #0x4]
@@ -285736,7 +285736,7 @@ FUN_02088950: ; 0x02088950
ldr r1, _0208895C ; =0x020FD6E4
bx r3
.balign 4
-_02088958: .word FUN_020373D4 + 1
+_02088958: .word FUN_020373D4
_0208895C: .word 0x020FD6E4
thumb_func_start FUN_02088960
@@ -285799,7 +285799,7 @@ FUN_020889B0: ; 0x020889B0
mov r1, #0x0
mov r2, #0x24
add r4, r0, #0x0
- blx FUN_020CE34C
+ blx MI_CpuFill8
mov r0, #0x37
str r0, [r4, #0x0]
str r5, [r4, #0x10]
@@ -285899,7 +285899,7 @@ FUN_02088A78: ; 0x02088A78
add r0, r4, #0x0
mov r1, #0x0
mov r2, #0x24
- blx FUN_020CE34C
+ blx MI_CpuFill8
add r0, r5, #0x0
bl FUN_0200627C
add r0, r6, #0x0
@@ -286104,7 +286104,7 @@ _02088C12:
mov r0, #0x5
pop {r3-r5, pc}
_02088C16:
- bl FUN_02020C2C
+ bl ErrorHandling
mov r0, #0x95
str r0, [r4, #0x8]
_02088C1E:
@@ -286118,7 +286118,7 @@ _02088C1E:
bl FUN_0206EDD4
cmp r0, #0x0
bne _02088C38
- bl FUN_02020C2C
+ bl ErrorHandling
_02088C38:
mov r0, #0x4
pop {r3-r5, pc}
@@ -286269,7 +286269,7 @@ FUN_02088D4C: ; 0x02088D4C
add r4, r0, #0x0
cmp r4, #0x13
blo _02088D58
- bl FUN_02020C2C
+ bl ErrorHandling
_02088D58:
mov r0, #0xc
add r1, r4, #0x0
@@ -286286,7 +286286,7 @@ FUN_02088D68: ; 0x02088D68
add r4, r0, #0x0
cmp r4, #0x13
blo _02088D74
- bl FUN_02020C2C
+ bl ErrorHandling
_02088D74:
mov r0, #0xc
add r1, r4, #0x0
@@ -286303,7 +286303,7 @@ FUN_02088D84: ; 0x02088D84
add r4, r0, #0x0
cmp r4, #0x13
blo _02088D90
- bl FUN_02020C2C
+ bl ErrorHandling
_02088D90:
mov r0, #0xc
add r1, r4, #0x0
@@ -286320,7 +286320,7 @@ FUN_02088DA0: ; 0x02088DA0
add r4, r0, #0x0
cmp r4, #0x13
blo _02088DAC
- bl FUN_02020C2C
+ bl ErrorHandling
_02088DAC:
mov r0, #0xc
add r1, r4, #0x0
@@ -286337,7 +286337,7 @@ FUN_02088DBC: ; 0x02088DBC
add r4, r0, #0x0
cmp r4, #0x13
blo _02088DC8
- bl FUN_02020C2C
+ bl ErrorHandling
_02088DC8:
mov r0, #0xc
add r1, r4, #0x0
@@ -286368,7 +286368,7 @@ FUN_02088DF0: ; 0x02088DF0
ldr r3, _02088DF4 ; =FUN_02016A18
bx r3
.balign 4
-_02088DF4: .word FUN_02016A18 + 1
+_02088DF4: .word FUN_02016A18
thumb_func_start FUN_02088DF8
FUN_02088DF8: ; 0x02088DF8
@@ -287208,12 +287208,12 @@ FUN_020893F0: ; 0x020893F0
bhs _0208940A
add r0, r1, #0x0
ldr r1, _02089410 ; =0x021C5C58
- blx FUN_020CE210
+ blx MIi_CpuCopy32
ldr r0, _02089414 ; =0x02106154
str r4, [r0, #0x0]
pop {r4, pc}
_0208940A:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
.balign 4
_02089410: .word 0x021C5C58
@@ -287231,11 +287231,11 @@ FUN_02089418: ; 0x02089418
cmp r0, r3
bne _02089438
ldr r0, _02089440 ; =0x021C5C58
- blx FUN_020CE210
+ blx MIi_CpuCopy32
mov r0, #0x1
pop {r3, pc}
_02089434:
- bl FUN_02020C2C
+ bl ErrorHandling
_02089438:
mov r0, #0x0
pop {r3, pc}
@@ -287253,12 +287253,12 @@ FUN_02089444: ; 0x02089444
bhs _0208945E
add r0, r1, #0x0
ldr r1, _02089464 ; =0x021C5C58
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
ldr r0, _02089468 ; =0x02106154
str r4, [r0, #0x0]
pop {r4, pc}
_0208945E:
- bl FUN_02020C2C
+ bl ErrorHandling
pop {r4, pc}
.balign 4
_02089464: .word 0x021C5C58
@@ -287276,11 +287276,11 @@ FUN_0208946C: ; 0x0208946C
cmp r0, r3
bne _0208948C
ldr r0, _02089494 ; =0x021C5C58
- blx FUN_020CE28C
+ blx MIi_CpuCopyFast
mov r0, #0x1
pop {r3, pc}
_02089488:
- bl FUN_02020C2C
+ bl ErrorHandling
_0208948C:
mov r0, #0x0
pop {r3, pc}
@@ -287440,7 +287440,7 @@ _020895DA:
_020895E0: .word 0x00000495
_020895E4: .word 0xFFFFE0FF
_020895E8: .word 0x04001000
-_020895EC: .word FUN_02089610 + 1
+_020895EC: .word FUN_02089610
thumb_func_start FUN_020895F0
FUN_020895F0: ; 0x020895F0
@@ -287453,7 +287453,7 @@ FUN_020895F0: ; 0x020895F0
add r0, r4, #0x0
bl FUN_020168D0
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
mov r0, #0x1
pop {r3-r5, pc}
@@ -287463,7 +287463,7 @@ FUN_02089610: ; 0x02089610
ldr r0, [r0, #0x14]
bx r3
nop
-_02089618: .word FUN_0201AB60 + 1
+_02089618: .word FUN_0201AB60
thumb_func_start FUN_0208961C
FUN_0208961C: ; 0x0208961C
@@ -288516,7 +288516,7 @@ _02089EE4:
bl FUN_02000FE8
add r0, r4, #0x0
add r1, r4, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _02089EE4
nop
_02089EF4: .word 0xFFFFE0FF
@@ -288677,7 +288677,7 @@ _0208A078:
bl FUN_02000FE8
add r0, r4, #0x0
add r1, r4, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _0208A078
nop
_0208A088: .word 0xFFFFE0FF
@@ -288846,7 +288846,7 @@ _0208A21A:
bl FUN_02000FE8
add r0, r4, #0x0
add r1, r4, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _0208A21A
.balign 4
_0208A228: .word 0xFFFFE0FF
@@ -288969,7 +288969,7 @@ FUN_0208A320: ; 0x0208A320
ldr r3, _0208A324 ; =FUN_02016A18
bx r3
.balign 4
-_0208A324: .word FUN_02016A18 + 1
+_0208A324: .word FUN_02016A18
thumb_func_start FUN_0208A328
FUN_0208A328: ; 0x0208A328
@@ -289050,7 +289050,7 @@ FUN_0208A338: ; 0x0208A338
pop {r4-r6, pc}
.balign 4
_0208A3C0: .word 0x00000171
-_0208A3C4: .word FUN_0208A458 + 1
+_0208A3C4: .word FUN_0208A458
thumb_func_start FUN_0208A3C8
FUN_0208A3C8: ; 0x0208A3C8
@@ -289451,7 +289451,7 @@ _0208A6FA:
bl FUN_020545B8
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r1, r0, #0x0
add r0, r4, #0x0
bl FUN_02054608
@@ -289467,7 +289467,7 @@ _0208A722:
_0208A734:
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
- bl FUN_02023900
+ bl LoadPlayerDataAddress
add r2, r0, #0x0
ldr r1, [r5, #0x8]
add r0, r4, #0x0
@@ -289486,7 +289486,7 @@ FUN_0208A750: ; 0x0208A750
lsr r0, r0, #0x18
bx r3
nop
-_0208A75C: .word FUN_020546C8 + 1
+_0208A75C: .word FUN_020546C8
thumb_func_start FUN_0208A760
FUN_0208A760: ; 0x0208A760
@@ -289590,7 +289590,7 @@ FUN_0208A820: ; 0x0208A820
mov r1, #0x1
bx r3
.balign 4
-_0208A828: .word FUN_0200CCF8 + 1
+_0208A828: .word FUN_0200CCF8
thumb_func_start FUN_0208A82C
FUN_0208A82C: ; 0x0208A82C
@@ -289678,7 +289678,7 @@ FUN_0208A8D0: ; 0x0208A8D0
mov r1, #0x1
bx r3
.balign 4
-_0208A8D8: .word FUN_0200CCF8 + 1
+_0208A8D8: .word FUN_0200CCF8
thumb_func_start FUN_0208A8DC
FUN_0208A8DC: ; 0x0208A8DC
@@ -289784,13 +289784,13 @@ FUN_0208A998: ; 0x0208A998
ldr r2, [r3, r1]
orr r0, r2
str r0, [r3, r1]
- ldr r3, _0208A9B4 ; =FUN_020CDA1C
+ ldr r3, _0208A9B4 ; =MI_WaitDma
mov r0, #0x3
bx r3
nop
_0208A9AC: .word 0x027E0000
_0208A9B0: .word 0x00003FF8
-_0208A9B4: .word FUN_020CDA1C
+_0208A9B4: .word MI_WaitDma
thumb_func_start FUN_0208A9B8
FUN_0208A9B8: ; 0x0208A9B8
@@ -289805,15 +289805,15 @@ _0208A9C6:
mov r1, #0x1
str r1, [r0, #0x0]
mov r0, #0x0
- blx FUN_020CC408
+ blx OS_GetInitArenaHi
add r1, r0, #0x0
mov r0, #0x0
- blx FUN_020CC308
+ blx OS_SetArenaHi
mov r0, #0x0
- blx FUN_020CC31C
+ blx OS_GetInitArenaLo
add r1, r0, #0x0
mov r0, #0x0
- blx FUN_020CC2F4
+ blx OS_SetArenaLo
mov r1, #0x1
ldr r0, _0208ABCC ; =0x020FF4A4
add r2, r1, #0x0
@@ -289826,12 +289826,12 @@ _0208A9C6:
mov r1, #0x0
bl FUN_0200E3A0
mov r0, #0x1
- blx FUN_020C9E14
+ blx OS_DisableIrqMask
ldr r1, _0208ABD0 ; =FUN_0208A998
mov r0, #0x1
- blx FUN_020C9FEC
+ blx OS_SetIrqFunction
mov r0, #0x1
- blx FUN_020C9E5C
+ blx OS_EnableIrqMask
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F10
@@ -289971,7 +289971,7 @@ _0208AB58:
bne _0208AB72
add r0, r4, #0x0
add r1, r4, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _0208AB58
_0208AB72:
ldr r5, _0208AC04 ; =0x04000130
@@ -289992,7 +289992,7 @@ _0208AB7A:
bne _0208AB9C
mov r0, #0x1
add r1, r0, #0x0
- blx FUN_020C9C0C
+ blx OS_WaitIrq
b _0208AB7A
_0208AB9C:
ldr r1, _0208AC10 ; =0x00007FFF
@@ -290008,14 +290008,14 @@ _0208AB9C:
ldr r0, [sp, #0x10]
bl FUN_02016A18
mov r0, #0x0
- blx FUN_020CD3B4
+ blx OS_ResetSystem
_0208ABC4:
add sp, #0x24
pop {r4-r7, pc}
.balign 4
_0208ABC8: .word 0x021C8C58
_0208ABCC: .word 0x020FF4A4
-_0208ABD0: .word FUN_0208A998 + 1
+_0208ABD0: .word FUN_0208A998
_0208ABD4: .word 0xFFFFE0FF
_0208ABD8: .word 0x04001000
_0208ABDC: .word 0x021C4918
diff --git a/asm/entry.s b/asm/entry.s
index f35a7006..b0f1c340 100644
--- a/asm/entry.s
+++ b/asm/entry.s
@@ -85,7 +85,7 @@ _02000924: .word 0x07000000
_02000928: .word _02000B68
_0200092C: .word 0x027FFF9C
_02000930: .word 0x01FF8000
-_02000934: .word NitroMain+1
+_02000934: .word NitroMain
_02000938: .word 0xFFFF0000
arm_func_end Entry
diff --git a/asm/main.s b/asm/main.s
deleted file mode 100644
index afd4969d..00000000
--- a/asm/main.s
+++ /dev/null
@@ -1,172 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .text
-
- thumb_func_start NitroMain
-NitroMain: ; 0x02000C54
- push {r3-r7, lr}
- bl FUN_02016014
- bl FUN_02016148
- bl FUN_020163BC
- mov r0, #0x0
- bl FUN_02016438
- ldr r0, _02000DD0 ; =0x02106FA0
- mov r1, #0x0
- blx FUN_020D50D8
- bl FUN_02022294
- bl FUN_0201259C
- bl FUN_02000DF4
- bl FUN_02002C14
- mov r0, #0x0
- mov r1, #0x3
- bl FUN_02002C50
- mov r0, #0x1
- mov r1, #0x3
- bl FUN_02002C50
- mov r0, #0x3
- add r1, r0, #0x0
- bl FUN_02002C50
- mov r1, #0x0
- ldr r0, _02000DD4 ; =0x02106FA0
- mvn r1, r1
- str r1, [r0, #0x18]
- bl FUN_0202254C
- ldr r1, _02000DD4 ; =0x02106FA0
- str r0, [r1, #0x20]
- bl FUN_02029EF8
- add r4, r0, #0x0
- ldr r0, _02000DD4 ; =0x02106FA0
- ldr r0, [r0, #0x20]
- bl FUN_02023900
- add r1, r0, #0x0
- add r0, r4, #0x0
- bl FUN_02003B98
- bl FUN_02020AFC
- mov r0, #0x3
- bl FUN_020337E8
- cmp r0, #0x3
- bne _02000CD4
- mov r0, #0x3
- mov r1, #0x0
- bl FUN_02034188
-_02000CD4:
- ldr r0, _02000DD4 ; =0x02106FA0
- ldr r0, [r0, #0x20]
- bl FUN_020227FC
- cmp r0, #0x0
- bne _02000CE8
- mov r0, #0x0
- bl FUN_02089D90
- b _02000D1A
-_02000CE8:
- ldr r0, _02000DD8 ; =0x027FFC20
- ldr r0, [r0, #0x0]
- cmp r0, #0x0
- beq _02000CF6
- cmp r0, #0x1
- beq _02000D06
- b _02000D16
-_02000CF6:
- ldr r0, _02000DD4 ; =0x02106FA0
- mov r1, #0x0
- str r1, [r0, #0x1c]
- ldr r0, _02000DDC ; =0x0000003F
- ldr r1, _02000DE0 ; =0x021DBE18
- bl FUN_02000E7C
- b _02000D1A
-_02000D06:
- ldr r0, _02000DD4 ; =0x02106FA0
- mov r1, #0x1
- str r1, [r0, #0x1c]
- ldr r0, _02000DE4 ; =0x00000034
- ldr r1, _02000DE8 ; =0x021D76C8
- bl FUN_02000E7C
- b _02000D1A
-_02000D16:
- bl FUN_02020C2C
-_02000D1A:
- ldr r0, _02000DEC ; =0x021C48B8
- mov r1, #0x1
- str r1, [r0, #0x6c]
- mov r1, #0x0
- str r1, [r0, #0x30]
- bl FUN_02000FA4
- bl FUN_0200A2AC
- bl FUN_02015E30
- mov r1, #0x0
- ldr r0, _02000DD4 ; =0x02106FA0
- mov r7, #0xc3
- ldr r6, _02000DF0 ; =0x021C4918
- ldr r4, _02000DEC ; =0x021C48B8
- str r1, [r0, #0x4]
- add r5, r1, #0x0
- lsl r7, r7, #0x2
-_02000D40:
- bl FUN_02000EE8
- bl FUN_02000FE8
- bl FUN_02016464
- mov r0, #0xc3
- ldr r1, [r4, #0x38]
- lsl r0, r0, #0x2
- and r0, r1
- cmp r0, r7
- bne _02000D64
- ldrb r0, [r6, #0x8]
- cmp r0, #0x0
- bne _02000D64
- mov r0, #0x0
- bl FUN_02000F18
-_02000D64:
- bl FUN_0202FB80
- cmp r0, #0x0
- beq _02000D90
- bl FUN_02000E0C
- ldr r0, [r4, #0x18]
- bl FUN_0201B5CC
- ldr r0, [r4, #0x24]
- bl FUN_0201B5CC
- ldr r0, [r4, #0x30]
- cmp r0, #0x0
- bne _02000D90
- mov r0, #0x1
- add r1, r0, #0x0
- blx FUN_020C9C0C
- ldr r0, [r4, #0x2c]
- add r0, r0, #0x1
- str r0, [r4, #0x2c]
-_02000D90:
- bl FUN_020125D4
- bl FUN_02015E60
- bl FUN_020222C4
- ldr r0, [r4, #0x24]
- bl FUN_0201B5CC
- mov r0, #0x1
- add r1, r0, #0x0
- blx FUN_020C9C0C
- ldr r0, [r4, #0x2c]
- add r0, r0, #0x1
- str r0, [r4, #0x2c]
- str r5, [r4, #0x30]
- bl FUN_0200A318
- bl FUN_0200E2D8
- ldr r1, [r4, #0x0]
- cmp r1, #0x0
- beq _02000DC4
- ldr r0, [r4, #0x4]
- blx r1
-_02000DC4:
- bl FUN_02003C10
- ldr r0, [r4, #0x20]
- bl FUN_0201B5CC
- b _02000D40
- .balign 4
-_02000DD0: .word 0x02106FA0
-_02000DD4: .word 0x02106FA0
-_02000DD8: .word 0x027FFC20
-_02000DDC: .word 0x0000003F
-_02000DE0: .word 0x021DBE18
-_02000DE4: .word 0x00000034
-_02000DE8: .word 0x021D76C8
-_02000DEC: .word 0x021C48B8
-_02000DF0: .word 0x021C4918
diff --git a/asm/rom1.5.s b/asm/rom1.5.s
new file mode 100644
index 00000000..50021ed7
--- /dev/null
+++ b/asm/rom1.5.s
@@ -0,0 +1,5 @@
+/* rom1.5.s TODO: Disassemble */
+
+.section .text
+
+.incbin "baserom.nds", 0x8EC14, 0x3EFF8
diff --git a/asm/rom2.s b/asm/rom2.s
index f6dea1e9..c0ec08f4 100644
--- a/asm/rom2.s
+++ b/asm/rom2.s
@@ -2,7 +2,8 @@
.section .text
-.incbin "baserom.nds", 0x8EC14, 0x619B8
+.incbin "baserom.nds", 0xD9150, 0x1747C
+
.global FUN_020EC5CC
FUN_020EC5CC:
diff --git a/asm/secure.s b/asm/secure.s
index 7f3a678c..05d39175 100644
--- a/asm/secure.s
+++ b/asm/secure.s
@@ -1,5 +1,13 @@
/* secure.s TODO: Disassemble */
+ .include "asm/macros.inc"
.section .text
-.incbin "baserom.nds", 0x4000, 0x800
+.incbin "baserom.nds", 0x4000, 0x5F2
+
+ thumb_func_start FUN_020005F2
+FUN_020005F2:
+ swi 3
+ bx lr
+
+.incbin "baserom.nds", 0x45F6, 0x20A
diff --git a/global.inc b/global.inc
index 5a116af1..7987d56e 100644
--- a/global.inc
+++ b/global.inc
@@ -17,19 +17,19 @@
.extern FUN_020125D4
.extern FUN_02015E30
.extern FUN_02015E60
-.extern FUN_02016014
-.extern FUN_02016148
+.extern InitSystemForTheGame
+.extern InitGraphicMemory
.extern FUN_020163BC
.extern FUN_02016438
.extern FUN_02016464
.extern FUN_0201B5CC
.extern FUN_02020AFC
-.extern FUN_02020C2C
+.extern ErrorHandling
.extern FUN_02022294
.extern FUN_020222C4
.extern FUN_0202254C
.extern FUN_020227FC
-.extern FUN_02023900
+.extern LoadPlayerDataAddress
.extern FUN_02029EF8
.extern FUN_0202FB80
.extern FUN_020337E8
@@ -319,83 +319,83 @@
.extern FUN_020C9480
.extern FUN_020C94E8
.extern FUN_020C9550
-.extern FUN_020C9C0C
-.extern FUN_020C9E14
-.extern FUN_020C9E5C
-.extern FUN_020C9FEC
-.extern FUN_020CA0A0
-.extern FUN_020CA0F8
-.extern FUN_020CC124
-.extern FUN_020CC15C
-.extern FUN_020CC180
-.extern FUN_020CC1B4
-.extern FUN_020CC204
-.extern FUN_020CC26C
-.extern FUN_020CC2F4
-.extern FUN_020CC308
-.extern FUN_020CC31C
-.extern FUN_020CC408
-.extern FUN_020CCC1C
-.extern FUN_020CCD64
-.extern FUN_020CD310
-.extern FUN_020CD324
-.extern FUN_020CD374
-.extern FUN_020CD3B4
-.extern FUN_020CD510
-.extern FUN_020CD524
-.extern FUN_020CD5A0
-.extern FUN_020CD754
-.extern FUN_020CD850
-.extern FUN_020CD998
-.extern FUN_020CDA1C
-.extern FUN_020CDD90
-.extern FUN_020CDE04
-.extern FUN_020CE1C8
-.extern FUN_020CE1E0
-.extern FUN_020CE1FC
-.extern FUN_020CE210
-.extern FUN_020CE240
-.extern FUN_020CE28C
-.extern FUN_020CE2E0
-.extern FUN_020CE34C
-.extern FUN_020CE3E0
-.extern FUN_020CE528
-.extern FUN_020CF768
-.extern FUN_020D1148
-.extern FUN_020D17A0
-.extern FUN_020D180C
-.extern FUN_020D182C
-.extern FUN_020D18FC
-.extern FUN_020D1944
-.extern FUN_020D1C94
-.extern FUN_020D1CC4
-.extern FUN_020D1CD4
-.extern FUN_020D1D10
-.extern FUN_020D1D30
-.extern FUN_020D2040
-.extern FUN_020D2094
-.extern FUN_020D2210
-.extern FUN_020D23B4
-.extern FUN_020D2454
-.extern FUN_020D24EC
-.extern FUN_020D36C4
-.extern FUN_020D36D8
-.extern FUN_020D36F0
-.extern FUN_020D3A90
-.extern FUN_020D3AA0
-.extern FUN_020D3C14
-.extern FUN_020D3CB8
-.extern FUN_020D3DCC
-.extern FUN_020D3E24
-.extern FUN_020D3EC4
-.extern FUN_020D400C
-.extern FUN_020D40B8
-.extern FUN_020D4718
-.extern FUN_020D47CC
-.extern FUN_020D4980
-.extern FUN_020D4A5C
-.extern FUN_020D4E68
-.extern FUN_020D50D8
+.extern OS_WaitIrq
+.extern OS_DisableIrqMask
+.extern OS_EnableIrqMask
+.extern OS_SetIrqFunction
+.extern OS_GetLockID
+.extern OS_ReleaseLockID
+.extern DC_InvalidateRange
+.extern DC_FlushRange
+.extern DC_WaitWriteBufferEmpty
+.extern OS_Init
+.extern OS_AllocFromArenaHi
+.extern OS_AllocFromArenaLo
+.extern OS_SetArenaLo
+.extern OS_SetArenaHi
+.extern OS_GetInitArenaLo
+.extern OS_GetInitArenaHi
+.extern OS_GetTick
+.extern OS_InitTick
+.extern OS_DisableInterrupts
+.extern OS_RestoreInterrupts
+.extern OS_GetProcMode
+.extern OS_ResetSystem
+.extern OS_GetOwnerRtcOffset
+.extern OS_GetOwnerInfo
+.extern OS_GetMacAddress
+.extern OS_GetLowEntropyData
+.extern OS_Terminate
+.extern MI_StopDma
+.extern MI_WaitDma
+.extern MI_HBlankDmaCopy16
+.extern MI_HBlankDmaCopy32
+.extern MIi_CpuClear16
+.extern MIi_CpuCopy16
+.extern MIi_CpuClear32
+.extern MIi_CpuCopy32
+.extern MIi_CpuClearFast
+.extern MIi_CpuCopyFast
+.extern MI_Copy36B
+.extern MI_CpuFill8
+.extern MI_CpuCopy8
+.extern MI_UncompressLZ8
+.extern SND_GetWaveDataAddress
+.extern FS_FindArchive
+.extern FS_SeekFile
+.extern FS_ReadFile
+.extern FS_WaitAsync
+.extern FS_CloseFile
+.extern FS_OpenFile
+.extern FS_InitFile
+.extern FS_IsAvailable
+.extern FS_Init
+.extern FS_TryLoadTable
+.extern FS_SetDefaultDMA
+.extern FS_UnloadOverlay
+.extern FS_LoadOverlay
+.extern FS_StartOverlay
+.extern FS_LoadOverlayImage
+.extern FS_LoadOverlayImageAsync
+.extern FS_LoadOverlayInfo
+.extern TP_CheckError
+.extern TP_WaitBusy
+.extern TP_GetCalibratedPoint
+.extern TP_GetLatestIndexInAuto
+.extern TP_GetLatestRawPointInAuto
+.extern TP_RequestAutoSamplingStopAsync
+.extern TP_RequestAutoSamplingStartAsync
+.extern TP_WaitRawResult
+.extern TP_RequestSamplingAsync
+.extern TP_SetCalibrateParam
+.extern TP_GetUserInfo
+.extern TP_Init
+.extern MIC_StopAutoSampling
+.extern MIC_StartAutoSampling
+.extern MIC_DoSamplingAsync
+.extern MIC_Init
+.extern PM_GoSleepMode
+.extern PM_GetBackLight
.extern FUN_020D5150
.extern FUN_020D5168
.extern FUN_020D5180
@@ -413,8 +413,8 @@
.extern FUN_020D6DB8
.extern FUN_020D6DC4
.extern FUN_020D6F20
-.extern FUN_020D7228
-.extern FUN_020D7D18
+.extern CARD_Init
+.extern CARD_IsPulledOut
.extern FUN_020D7E9C
.extern FUN_020D8A4C
.extern FUN_020D8AF0
@@ -462,10 +462,10 @@
.extern FUN_020EB5C4
.extern FUN_020EB7B0
.extern FUN_020EBA38
-.extern FUN_020EBBE8
+.extern _ll_udiv
.extern FUN_020EBC30
.extern FUN_020EBC50
-.extern FUN_020EBC80
+.extern _s32_div_f
.extern FUN_020EBE8C
.extern FUN_020EC5CC
.extern FUN_020EC694
@@ -905,4 +905,25 @@
.extern FUN_02252534
.extern FUN_02252538
.extern FUN_022567E0
-.extern NitroMain \ No newline at end of file
+.extern NitroMain
+
+.extern FUN_020005F2
+.extern CTRDG_Init
+.extern PM_Init
+.extern CARD_LockRom
+.extern CARD_UnlockRom
+.extern CARDi_ReadRom
+.extern MIi_UncompressBackward
+.extern PMi_SetLED
+.extern OS_SpinWait
+.extern PMi_Lock
+.extern PMi_SetLEDAsync
+.extern PMi_ReadRegister
+.extern PMi_WaitBusy
+.extern CTRDG_IsExisting
+.extern PMi_SendSleepStart
+.extern FUN_01FF857C
+.extern FUN_01FF84E4
+.extern FUN_01FF85F0
+.extern FUN_01FF84A4
+.extern FUN_01FF8544
diff --git a/pokediamond.lcf b/pokediamond.lcf
index 9fe3c3c6..52d06a1a 100644
--- a/pokediamond.lcf
+++ b/pokediamond.lcf
@@ -379,6 +379,8 @@ SECTIONS {
main.o (.text)
FUN_02000DF4.o (.text)
arm9_thumb.o (.text)
+ rom1.5.o (.text)
+ FUN_020C9C0C.o (.text)
rom2.o (.text)
} > arm9
diff --git a/src/FUN_02000DF4.c b/src/FUN_02000DF4.c
index 65bc63da..0cc1c2dd 100644
--- a/src/FUN_02000DF4.c
+++ b/src/FUN_02000DF4.c
@@ -8,12 +8,12 @@ struct Unk2106FA0 {
s32 unk14;
};
-extern struct Unk2106FA0 gUnknown2106FA0;
+extern struct Unk2106FA0 gBacklightTop;
void FUN_02000DF4(void)
{
- gUnknown2106FA0.unk8 = -1;
- gUnknown2106FA0.unkC = 0;
- gUnknown2106FA0.unk10 = -1;
- gUnknown2106FA0.unk14 = 0;
+ gBacklightTop.unk8 = -1;
+ gBacklightTop.unkC = 0;
+ gBacklightTop.unk10 = -1;
+ gBacklightTop.unk14 = 0;
}
diff --git a/src/main.c b/src/main.c
new file mode 100644
index 00000000..d703331d
--- /dev/null
+++ b/src/main.c
@@ -0,0 +1,151 @@
+
+typedef unsigned char u8;
+typedef unsigned short u16;
+typedef unsigned long u32;
+typedef signed char s8;
+typedef signed short s16;
+typedef signed long s32;
+
+struct Unk2106FA0
+{
+ s32 unk0;
+ s32 unk4;
+ s32 unk8;
+ s32 unkC;
+ s32 unk10;
+ s32 unk14;
+ s32 unk18;
+ s32 unk1C;
+ s32 unk20;
+};
+
+struct Unk21C48B8
+{
+ void (*unk0)(s32);
+ s32 unk4;
+ s32 unk8;
+ s32 unkC;
+ s32 unk10;
+ s32 unk14;
+ s32 unk18;
+ s32 unk1C;
+ s32 unk20;
+ s32 unk24;
+ s32 unk28;
+ s32 unk2C;
+ s32 unk30;
+ s32 unk34;
+ s32 unk38;
+ u8 filler3C[0xC];
+ s32 unk48;
+ u8 filler4C[0x20];
+ s32 unk6C;
+};
+
+extern struct Unk2106FA0 gBacklightTop;
+extern struct Unk2106FA0 gBacklightTop_2; // same as the first one, it's referenced twice in the constant pool...
+extern struct Unk2106FA0 gUnknown2106FB8;
+extern struct Unk21C48B8 gUnknown21C48B8;
+
+extern s32 gUnk027FFC20;
+extern struct {
+ s32 unk0;
+ s32 unk4;
+ u8 unk8;
+} gUnk021C4918;
+
+extern void PM_GetBackLight();
+extern void OS_WaitIrq();
+extern void FUN_02016438(s32);
+
+extern const s32 CONST_3F; // 0x0000003F
+extern const s32 CONST_34; // 0x00000034
+
+extern struct Unk21DBE18 gUnk021DBE18;
+extern struct Unk21DBE18 gUnk021D76C8;
+
+
+void NitroMain(void)
+{
+ InitSystemForTheGame();
+ InitGraphicMemory();
+ FUN_020163BC();
+ FUN_02016438(0);
+
+ PM_GetBackLight(&gBacklightTop_2, 0);
+
+ FUN_02022294();
+ FUN_0201259C();
+ FUN_02000DF4();
+ FUN_02002C14();
+ FUN_02002C50(0, 3);
+ FUN_02002C50(1, 3);
+ FUN_02002C50(3, 3);
+ gBacklightTop.unk18 = -1;
+ gBacklightTop.unk20 = FUN_0202254C();
+ FUN_02003B98(FUN_02029EF8(gBacklightTop.unk20), LoadPlayerDataAddress(gBacklightTop.unk20));
+ FUN_02020AFC();
+ if (FUN_020337E8(3) == 3)
+ FUN_02034188(3, 0);
+ if (FUN_020227FC(gBacklightTop.unk20) == 0)
+ {
+ FUN_02089D90(0);
+ }
+ else
+ {
+ switch (gUnk027FFC20)
+ {
+ case 0:
+ gBacklightTop.unk1C = 0;
+ FUN_02000E7C(&CONST_3F, &gUnk021DBE18);
+ break;
+ case 1:
+ gBacklightTop.unk1C = 1;
+ FUN_02000E7C(&CONST_34, &gUnk021D76C8);
+ break;
+ default:
+ ErrorHandling();
+ break;
+ }
+ }
+ gUnknown21C48B8.unk6C = 1;
+ gUnknown21C48B8.unk30 = 0;
+ FUN_02000FA4();
+ FUN_0200A2AC();
+ FUN_02015E30();
+ gBacklightTop.unk4 = 0;
+ for (;;)
+ {
+ FUN_02000EE8();
+ FUN_02000FE8();
+ FUN_02016464();
+ if ((gUnknown21C48B8.unk38 & 0x30C) == 0x30C && !gUnk021C4918.unk8) // soft reset?
+ {
+ FUN_02000F18(0); // soft reset?
+ }
+ if (FUN_0202FB80())
+ {
+ FUN_02000E0C();
+ FUN_0201B5CC(gUnknown21C48B8.unk18);
+ FUN_0201B5CC(gUnknown21C48B8.unk24);
+ if (!gUnknown21C48B8.unk30)
+ {
+ OS_WaitIrq(1, 1);
+ gUnknown21C48B8.unk2C++;
+ }
+ }
+ FUN_020125D4();
+ FUN_02015E60();
+ FUN_020222C4();
+ FUN_0201B5CC(gUnknown21C48B8.unk24);
+ OS_WaitIrq(1, 1);
+ gUnknown21C48B8.unk2C++;
+ gUnknown21C48B8.unk30 = 0;
+ FUN_0200A318();
+ FUN_0200E2D8();
+ if (gUnknown21C48B8.unk0)
+ gUnknown21C48B8.unk0(gUnknown21C48B8.unk4);
+ FUN_02003C10();
+ FUN_0201B5CC(gUnknown21C48B8.unk20);
+ }
+} \ No newline at end of file
diff --git a/undefined_syms.txt b/undefined_syms.txt
index 43538862..6b24590a 100644
--- a/undefined_syms.txt
+++ b/undefined_syms.txt
@@ -17,18 +17,15 @@ FUN_0201259C = 0x0201259C;
FUN_020125D4 = 0x020125D4;
FUN_02015E30 = 0x02015E30;
FUN_02015E60 = 0x02015E60;
-FUN_02016148 = 0x02016148;
FUN_020163BC = 0x020163BC;
FUN_02016438 = 0x02016438;
FUN_02016464 = 0x02016464;
FUN_0201B5CC = 0x0201B5CC;
FUN_02020AFC = 0x02020AFC;
-FUN_02020C2C = 0x02020C2C;
FUN_02022294 = 0x02022294;
FUN_020222C4 = 0x020222C4;
FUN_0202254C = 0x0202254C;
FUN_020227FC = 0x020227FC;
-FUN_02023900 = 0x02023900;
FUN_02029EF8 = 0x02029EF8;
FUN_0202FB80 = 0x0202FB80;
FUN_020337E8 = 0x020337E8;
@@ -318,83 +315,6 @@ FUN_020C9418 = 0x020C9418;
FUN_020C9480 = 0x020C9480;
FUN_020C94E8 = 0x020C94E8;
FUN_020C9550 = 0x020C9550;
-FUN_020C9C0C = 0x020C9C0C;
-FUN_020C9E14 = 0x020C9E14;
-FUN_020C9E5C = 0x020C9E5C;
-FUN_020C9FEC = 0x020C9FEC;
-FUN_020CA0A0 = 0x020CA0A0;
-FUN_020CA0F8 = 0x020CA0F8;
-FUN_020CC124 = 0x020CC124;
-FUN_020CC15C = 0x020CC15C;
-FUN_020CC180 = 0x020CC180;
-FUN_020CC1B4 = 0x020CC1B4;
-FUN_020CC204 = 0x020CC204;
-FUN_020CC26C = 0x020CC26C;
-FUN_020CC2F4 = 0x020CC2F4;
-FUN_020CC308 = 0x020CC308;
-FUN_020CC31C = 0x020CC31C;
-FUN_020CC408 = 0x020CC408;
-FUN_020CCC1C = 0x020CCC1C;
-FUN_020CCD64 = 0x020CCD64;
-FUN_020CD310 = 0x020CD310;
-FUN_020CD324 = 0x020CD324;
-FUN_020CD374 = 0x020CD374;
-FUN_020CD3B4 = 0x020CD3B4;
-FUN_020CD510 = 0x020CD510;
-FUN_020CD524 = 0x020CD524;
-FUN_020CD5A0 = 0x020CD5A0;
-FUN_020CD754 = 0x020CD754;
-FUN_020CD850 = 0x020CD850;
-FUN_020CD998 = 0x020CD998;
-FUN_020CDA1C = 0x020CDA1C;
-FUN_020CDD90 = 0x020CDD90;
-FUN_020CDE04 = 0x020CDE04;
-FUN_020CE1C8 = 0x020CE1C8;
-FUN_020CE1E0 = 0x020CE1E0;
-FUN_020CE1FC = 0x020CE1FC;
-FUN_020CE210 = 0x020CE210;
-FUN_020CE240 = 0x020CE240;
-FUN_020CE28C = 0x020CE28C;
-FUN_020CE2E0 = 0x020CE2E0;
-FUN_020CE34C = 0x020CE34C;
-FUN_020CE3E0 = 0x020CE3E0;
-FUN_020CE528 = 0x020CE528;
-FUN_020CF768 = 0x020CF768;
-FUN_020D1148 = 0x020D1148;
-FUN_020D17A0 = 0x020D17A0;
-FUN_020D180C = 0x020D180C;
-FUN_020D182C = 0x020D182C;
-FUN_020D18FC = 0x020D18FC;
-FUN_020D1944 = 0x020D1944;
-FUN_020D1C94 = 0x020D1C94;
-FUN_020D1CC4 = 0x020D1CC4;
-FUN_020D1CD4 = 0x020D1CD4;
-FUN_020D1D10 = 0x020D1D10;
-FUN_020D1D30 = 0x020D1D30;
-FUN_020D2040 = 0x020D2040;
-FUN_020D2094 = 0x020D2094;
-FUN_020D2210 = 0x020D2210;
-FUN_020D23B4 = 0x020D23B4;
-FUN_020D2454 = 0x020D2454;
-FUN_020D24EC = 0x020D24EC;
-FUN_020D36C4 = 0x020D36C4;
-FUN_020D36D8 = 0x020D36D8;
-FUN_020D36F0 = 0x020D36F0;
-FUN_020D3A90 = 0x020D3A90;
-FUN_020D3AA0 = 0x020D3AA0;
-FUN_020D3C14 = 0x020D3C14;
-FUN_020D3CB8 = 0x020D3CB8;
-FUN_020D3DCC = 0x020D3DCC;
-FUN_020D3E24 = 0x020D3E24;
-FUN_020D3EC4 = 0x020D3EC4;
-FUN_020D400C = 0x020D400C;
-FUN_020D40B8 = 0x020D40B8;
-FUN_020D4718 = 0x020D4718;
-FUN_020D47CC = 0x020D47CC;
-FUN_020D4980 = 0x020D4980;
-FUN_020D4A5C = 0x020D4A5C;
-FUN_020D4E68 = 0x020D4E68;
-FUN_020D50D8 = 0x020D50D8;
FUN_020D5150 = 0x020D5150;
FUN_020D5168 = 0x020D5168;
FUN_020D5180 = 0x020D5180;
@@ -412,8 +332,8 @@ FUN_020D6DAC = 0x020D6DAC;
FUN_020D6DB8 = 0x020D6DB8;
FUN_020D6DC4 = 0x020D6DC4;
FUN_020D6F20 = 0x020D6F20;
-FUN_020D7228 = 0x020D7228;
-FUN_020D7D18 = 0x020D7D18;
+CARD_Init = 0x020D7228;
+CARD_IsPulledOut = 0x020D7D18;
FUN_020D7E9C = 0x020D7E9C;
FUN_020D8A4C = 0x020D8A4C;
FUN_020D8AF0 = 0x020D8AF0;
@@ -461,10 +381,10 @@ FUN_020EB57C = 0x020EB57C;
FUN_020EB5C4 = 0x020EB5C4;
FUN_020EB7B0 = 0x020EB7B0;
FUN_020EBA38 = 0x020EBA38;
-FUN_020EBBE8 = 0x020EBBE8;
+_ll_udiv = 0x020EBBE8;
FUN_020EBC30 = 0x020EBC30;
FUN_020EBC50 = 0x020EBC50;
-FUN_020EBC80 = 0x020EBC80;
+_s32_div_f = 0x020EBC80;
FUN_020EBE8C = 0x020EBE8C;
FUN_021D74E0 = 0x021D74E0;
FUN_021D76AC = 0x021D76AC;
@@ -902,4 +822,33 @@ FUN_0224F12C = 0x0224F12C;
FUN_02252534 = 0x02252534;
FUN_02252538 = 0x02252538;
FUN_022567E0 = 0x022567E0;
-gUnknown2106FA0 = 0x2106FA0; \ No newline at end of file
+FUN_01FF84A4 = 0x01FF84A4;
+FUN_01FF84E4 = 0x01FF84E4;
+FUN_01FF8544 = 0x01FF8544;
+FUN_01FF857C = 0x01FF857C;
+FUN_01FF85F0 = 0x01FF85F0;
+FUN_020005F2 = 0x020005F2;
+PMi_WaitBusy = 0x020D5884;
+CTRDG_IsExisting = 0x020DB68C;
+PMi_SendSleepStart = 0x020D55C0;
+MIi_UncompressBackward = 0x02000950;
+OS_SpinWait = 0x020CD380;
+PMi_SetLED = 0x020D5338;
+PMi_SetLEDAsync = 0x020D5374;
+PMi_ReadRegister = 0x020D5498;
+PM_Init = 0x020D5764;
+PMi_Lock = 0x020D58C4;
+CARD_UnlockRom = 0x020D66C0;
+CARD_LockRom = 0x020D66E0;
+CARDi_ReadRom = 0x020D72AC;
+CTRDG_Init = 0x020DBC80;
+CONST_3F = 0x0000003F;
+CONST_34 = 0x00000034;
+gBacklightTop = 0x2106FA0;
+gBacklightTop_2 = 0x2106FA0;
+gUnknown2106FB8 = 0x2106FB8;
+gUnknown21C48B8 = 0x21C48B8;
+gUnk021C4918 = 0x21C4918;
+gUnk021D76C8 = 0x21D76C8;
+gUnk021DBE18 = 0x21DBE18;
+gUnk027FFC20 = 0x27FFC20; \ No newline at end of file