summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--arm7/asm/OS_mutex.s131
-rw-r--r--arm7/lib/include/OS_mutex.h5
-rw-r--r--arm7/lib/src/OS_mutex.c95
-rw-r--r--arm9/Makefile2
-rw-r--r--arm9/arm9.lcf2
-rw-r--r--arm9/asm/scrcmd.s16
-rw-r--r--arm9/asm/scrcmd_12.s4
-rw-r--r--arm9/asm/scrcmd_3.s2
-rw-r--r--arm9/asm/scrcmd_4.s20
-rw-r--r--arm9/asm/scrcmd_8.s4
-rw-r--r--arm9/asm/scrcmd_9.s6
-rw-r--r--arm9/asm/unk_02002C14.s2
-rw-r--r--arm9/asm/unk_02002F08.s6
-rw-r--r--arm9/asm/unk_0200A384.s946
-rw-r--r--arm9/asm/unk_0200AA80.s124
-rw-r--r--arm9/asm/unk_02011744.s6
-rw-r--r--arm9/asm/unk_02012CC8.s4
-rw-r--r--arm9/asm/unk_02013724.s10
-rw-r--r--arm9/asm/unk_020139D8.s6
-rw-r--r--arm9/asm/unk_020144FC.s6
-rw-r--r--arm9/asm/unk_0201B8B8.s83
-rw-r--r--arm9/asm/unk_0201BCBC.s2
-rw-r--r--arm9/asm/unk_02021934.s32
-rw-r--r--arm9/asm/unk_020238C4.s4
-rw-r--r--arm9/asm/unk_02023AC4.s4
-rw-r--r--arm9/asm/unk_02025658.s2
-rw-r--r--arm9/asm/unk_0202A1E0.s2
-rw-r--r--arm9/asm/unk_0202B034.s4
-rw-r--r--arm9/asm/unk_0202B870.s6
-rw-r--r--arm9/asm/unk_02033874.s6
-rw-r--r--arm9/asm/unk_02033F50.s10
-rw-r--r--arm9/asm/unk_02034188.s6
-rw-r--r--arm9/asm/unk_02035068.s26
-rw-r--r--arm9/asm/unk_020377F0.s6
-rw-r--r--arm9/asm/unk_02038C78.s8
-rw-r--r--arm9/asm/unk_020476CC.s12
-rw-r--r--arm9/asm/unk_02048120.s12
-rw-r--r--arm9/asm/unk_020484A8.s10
-rw-r--r--arm9/asm/unk_02048904.s4
-rw-r--r--arm9/asm/unk_0204CB20.s6
-rw-r--r--arm9/asm/unk_02050E48.s54
-rw-r--r--arm9/asm/unk_020520AC.s2
-rw-r--r--arm9/asm/unk_02052EE8.s6
-rw-r--r--arm9/asm/unk_0205CE48.s6
-rw-r--r--arm9/asm/unk_02060CCC.s24
-rw-r--r--arm9/asm/unk_020625EC.s40
-rw-r--r--arm9/asm/unk_02064E4C.s2
-rw-r--r--arm9/asm/unk_02064E90.s2
-rw-r--r--arm9/asm/unk_020653EC.s26
-rw-r--r--arm9/asm/unk_0206ABC4.s10
-rw-r--r--arm9/asm/unk_0206B16C.s2
-rw-r--r--arm9/asm/unk_0206BF90.s2
-rw-r--r--arm9/asm/unk_0206C700.s6
-rw-r--r--arm9/asm/unk_0206E2F0.s24
-rw-r--r--arm9/asm/unk_0206E5B4.s4
-rw-r--r--arm9/asm/unk_0206F3FC.s54
-rw-r--r--arm9/asm/unk_02072548.s106
-rw-r--r--arm9/asm/unk_02073DA8.s14
-rw-r--r--arm9/asm/unk_0207550C.s274
-rw-r--r--arm9/asm/unk_020772F0.s52
-rw-r--r--arm9/asm/unk_02079C70.s32
-rw-r--r--arm9/asm/unk_0207D5BC.s88
-rw-r--r--arm9/asm/unk_0207FD00.s48
-rw-r--r--arm9/asm/unk_02080C38.s12
-rw-r--r--arm9/asm/unk_020828BC.s8
-rw-r--r--arm9/asm/unk_020834D0.s2
-rw-r--r--arm9/asm/unk_020854E0.s4
-rw-r--r--arm9/asm/unk_02086414.s14
-rw-r--r--arm9/asm/unk_02089498.s8
-rw-r--r--arm9/asm/unk_02089960.s8
-rw-r--r--arm9/asm/unk_02089D90.s6
-rw-r--r--arm9/asm/unk_02089F24.s12
-rw-r--r--arm9/asm/unk_0208A338.s18
-rw-r--r--arm9/asm/unk_0208A998.s6
-rw-r--r--arm9/global.inc36
-rw-r--r--arm9/lib/include/MI_memory.h5
-rw-r--r--arm9/modules/05/asm/module_05.s146
-rw-r--r--arm9/modules/06/asm/module_06.s378
-rw-r--r--arm9/modules/07/asm/module_07.s34
-rw-r--r--arm9/modules/09/asm/module_09.s520
-rw-r--r--arm9/modules/11/asm/module_11.s204
-rw-r--r--arm9/modules/12/asm/module_12.s120
-rw-r--r--arm9/modules/14/asm/module_14.s102
-rw-r--r--arm9/modules/15/asm/module_15.s68
-rw-r--r--arm9/modules/16/asm/module_16.s134
-rw-r--r--arm9/modules/17/asm/module_17.s70
-rw-r--r--arm9/modules/18/asm/module_18.s212
-rw-r--r--arm9/modules/38/asm/module_38.s10
-rw-r--r--arm9/modules/43/asm/module_43.s4
-rw-r--r--arm9/modules/47/asm/module_47.s22
-rw-r--r--arm9/modules/49/asm/module_49.s4
-rw-r--r--arm9/modules/51/asm/module_51.s10
-rw-r--r--arm9/modules/53/asm/module_53.s22
-rw-r--r--arm9/modules/54/asm/module_54.s30
-rw-r--r--arm9/modules/55/asm/module_55.s110
-rw-r--r--arm9/modules/56/asm/module_56.s102
-rw-r--r--arm9/modules/57/asm/module_57.s72
-rw-r--r--arm9/modules/58/asm/module_58.s28
-rw-r--r--arm9/modules/59/asm/module_59.s34
-rw-r--r--arm9/modules/60/asm/module_60.s18
-rw-r--r--arm9/modules/61/asm/module_61.s22
-rw-r--r--arm9/modules/62/asm/module_62.s24
-rw-r--r--arm9/modules/63/asm/module_63.s6
-rw-r--r--arm9/modules/64/asm/module_64.s12
-rw-r--r--arm9/modules/65/asm/module_65.s68
-rw-r--r--arm9/modules/66/asm/module_66.s24
-rw-r--r--arm9/modules/67/asm/module_67.s366
-rw-r--r--arm9/modules/68/asm/module_68.s40
-rw-r--r--arm9/modules/69/asm/module_69.s32
-rw-r--r--arm9/modules/70/asm/module_70.s38
-rw-r--r--arm9/modules/71/asm/module_71.s42
-rw-r--r--arm9/modules/73/asm/module_73.s68
-rw-r--r--arm9/modules/74/asm/module_74.s72
-rw-r--r--arm9/modules/75/asm/module_75.s254
-rw-r--r--arm9/modules/76/asm/module_76.s38
-rw-r--r--arm9/modules/77/asm/module_77.s50
-rw-r--r--arm9/modules/80/asm/module_80.s230
-rw-r--r--arm9/modules/81/asm/module_81.s36
-rw-r--r--arm9/modules/82/asm/module_82.s36
-rw-r--r--arm9/modules/83/asm/module_83.s98
-rw-r--r--arm9/modules/84/asm/module_84.s8
-rw-r--r--arm9/modules/85/asm/module_85.s6
-rw-r--r--arm9/modules/86/asm/module_86.s16
-rw-r--r--arm9/src/msgdata.c400
-rw-r--r--arm9/src/nutdata.c14
-rw-r--r--arm9/src/pokemon.c27
-rw-r--r--arm9/src/string_util.c4
-rw-r--r--arm9/src/unk_0201B8B8.c33
-rw-r--r--files/wazaeffect/we.arcbin254028 -> 0 bytes
-rw-r--r--include/itemtool.h9
-rw-r--r--include/msg_data.h20
-rw-r--r--include/msgdata.h44
-rw-r--r--include/proto.h9
-rw-r--r--include/string16.h5
-rw-r--r--include/string_util.h4
-rw-r--r--include/text.h2
-rw-r--r--include/unk_0201B8B88.h9
-rw-r--r--tools/csv2bin/.gitignore1
-rw-r--r--tools/msgenc/Makefile13
-rw-r--r--tools/msgenc/msgenc.c7
141 files changed, 3374 insertions, 3928 deletions
diff --git a/Makefile b/Makefile
index 63a5a1a7..e82738fd 100644
--- a/Makefile
+++ b/Makefile
@@ -175,7 +175,7 @@ SBINFILES = $(BINFILES:%.bin=%.sbin)
##################### Compiler Options #######################
-MWCCVERSION = 2.0/base
+MWCCVERSION = 2.0/sp1
CROSS := arm-none-eabi-
diff --git a/arm7/asm/OS_mutex.s b/arm7/asm/OS_mutex.s
deleted file mode 100644
index 981842b8..00000000
--- a/arm7/asm/OS_mutex.s
+++ /dev/null
@@ -1,131 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- arm_func_start OSi_DequeueItem
-OSi_DequeueItem: ; 0x037F99E8
- ldr r2, [r1, #16]
- ldr r1, [r1, #20]
- cmp r2, #0
- streq r1, [r0, #112] ; 0x70
- strne r1, [r2, #20]
- cmp r1, #0
- streq r2, [r0, #108] ; 0x6c
- strne r2, [r1, #16]
- bx lr
-
- arm_func_start OSi_EnqueueTail
-OSi_EnqueueTail: ; 0x037F9A0C
- ldr r2, [r0, #112] ; 0x70
- cmp r2, #0
- streq r1, [r0, #108] ; 0x6c
- strne r1, [r2, #16]
- str r2, [r1, #20]
- mov r2, #0
- str r2, [r1, #16]
- str r1, [r0, #112] ; 0x70
- bx lr
-
- arm_func_start OSi_UnlockAllMutex
-OSi_UnlockAllMutex: ; 0x037F9A30
- stmdb sp!, {r4, r5, r6, lr}
- mov r6, r0
- add r5, r6, #108 ; 0x6c
- mov r4, #0
- b _037F9A58
-_037F9A44:
- mov r0, r5
- bl OSi_RemoveMutexLinkFromQueue
- str r4, [r0, #12]
- str r4, [r0, #8]
- bl OS_WakeupThread
-_037F9A58:
- ldr r0, [r6, #108] ; 0x6c
- cmp r0, #0
- bne _037F9A44
- ldmia sp!, {r4, r5, r6, lr}
- bx lr
-
- arm_func_start OS_UnlockMutex
-OS_UnlockMutex: ; 0x037F9A6C
- stmdb sp!, {r4, r5, lr}
- sub sp, sp, #4
- mov r5, r0
- bl OS_DisableInterrupts
- mov r4, r0
- ldr r0, _037F9AD8 ; =OSi_ThreadInfo
- ldr r0, [r0, #4]
- ldr r1, [r5, #8]
- cmp r1, r0
- bne _037F9AC4
- ldr r1, [r5, #12]
- sub r1, r1, #1
- str r1, [r5, #12]
- ldr r1, [r5, #12]
- cmp r1, #0
- bne _037F9AC4
- mov r1, r5
- bl OSi_DequeueItem
- mov r0, #0
- str r0, [r5, #8]
- mov r0, r5
- bl OS_WakeupThread
-_037F9AC4:
- mov r0, r4
- bl OS_RestoreInterrupts
- add sp, sp, #4
- ldmia sp!, {r4, r5, lr}
- bx lr
-_037F9AD8: .word OSi_ThreadInfo
-
- arm_func_start OS_LockMutex
-OS_LockMutex: ; 0x037F9ADC
- stmdb sp!, {r4, r5, r6, r7, lr}
- sub sp, sp, #4
- mov r5, r0
- bl OS_DisableInterrupts
- mov r4, r0
- ldr r0, _037F9B64 ; =OSi_ThreadInfo
- ldr r7, [r0, #4]
- mov r6, #0
-_037F9AFC:
- ldr r0, [r5, #8]
- cmp r0, #0
- bne _037F9B28
- str r7, [r5, #8]
- ldr r0, [r5, #12]
- add r0, r0, #1
- str r0, [r5, #12]
- mov r0, r7
- mov r1, r5
- bl OSi_EnqueueTail
- b _037F9B50
-_037F9B28:
- cmp r0, r7
- ldreq r0, [r5, #12]
- addeq r0, r0, #1
- streq r0, [r5, #12]
- beq _037F9B50
- str r5, [r7, #104] ; 0x68
- mov r0, r5
- bl OS_SleepThread
- str r6, [r7, #104] ; 0x68
- b _037F9AFC
-_037F9B50:
- mov r0, r4
- bl OS_RestoreInterrupts
- add sp, sp, #4
- ldmia sp!, {r4, r5, r6, r7, lr}
- bx lr
-_037F9B64: .word OSi_ThreadInfo
-
- arm_func_start OS_InitMutex
-OS_InitMutex: ; 0x037F9B68
- mov r2, #0
- str r2, [r0, #4]
- ldr r1, [r0, #4]
- str r1, [r0]
- str r2, [r0, #8]
- str r2, [r0, #12]
- bx lr
diff --git a/arm7/lib/include/OS_mutex.h b/arm7/lib/include/OS_mutex.h
index b41ac9f8..920d5594 100644
--- a/arm7/lib/include/OS_mutex.h
+++ b/arm7/lib/include/OS_mutex.h
@@ -4,6 +4,11 @@
#include "OS_context.h"
#include "nitro/OS_mutex_shared.h"
+void OSi_DequeueItem(OSThread * thread, OSMutex * mutex);
+void OSi_EnqueueTail(OSThread * thread, OSMutex * mutex);
+void OS_InitMutex(OSMutex* mutex);
+void OS_LockMutex(OSMutex* mutex);
+void OS_UnlockMutex(OSMutex* mutex);
void OSi_UnlockAllMutex(OSThread * thread);
#endif //POKEDIAMOND_ARM7_OS_MUTEX_H
diff --git a/arm7/lib/src/OS_mutex.c b/arm7/lib/src/OS_mutex.c
new file mode 100644
index 00000000..7e9b05ec
--- /dev/null
+++ b/arm7/lib/src/OS_mutex.c
@@ -0,0 +1,95 @@
+#include "function_target.h"
+#include "OS_mutex.h"
+#include "OS_system.h"
+#include "OS_thread.h"
+
+ARM_FUNC void OS_InitMutex(OSMutex* mutex) {
+ OS_InitThreadQueue(&mutex->queue);
+ mutex->thread = NULL;
+ mutex->count = 0;
+}
+
+ARM_FUNC void OS_LockMutex(OSMutex* mutex) {
+ OSIntrMode mode;
+ OSThread* current;
+
+ mode = OS_DisableInterrupts();
+ current = OS_GetCurrentThread();
+ while (1) {
+ OSThread* owner = mutex->thread;
+ if (owner == NULL) {
+ mutex->thread = current;
+ mutex->count++;
+ OSi_EnqueueTail(current, mutex);
+ break;
+ }
+ else if (owner == current) {
+ mutex->count++;
+ break;
+ }
+ else {
+ current->mutex = mutex;
+ OS_SleepThread(&mutex->queue);
+ current->mutex = NULL;
+ }
+ }
+ (void)OS_RestoreInterrupts(mode);
+}
+
+ARM_FUNC void OS_UnlockMutex(OSMutex* mutex) {
+ OSIntrMode mode;
+ OSThread* current;
+
+ mode = OS_DisableInterrupts();
+ current = OS_GetCurrentThread();
+ if (mutex->thread == current) {
+ if (--mutex->count == 0) {
+ OSi_DequeueItem(current, mutex);
+ mutex->thread = NULL;
+ OS_WakeupThread(&mutex->queue);
+ }
+ }
+ (void)OS_RestoreInterrupts(mode);
+}
+
+ARM_FUNC void OSi_UnlockAllMutex(OSThread * thread) {
+ OSMutex * mutex;
+ while (thread->mutexQueue.head) {
+ mutex = OSi_RemoveMutexLinkFromQueue(&thread->mutexQueue);
+ mutex->count = 0;
+ mutex->thread = NULL;
+ OS_WakeupThread(&mutex->queue);
+ }
+}
+
+ARM_FUNC void OSi_EnqueueTail(OSThread * thread, OSMutex * mutex) {
+ OSMutex * tail = thread->mutexQueue.tail;
+ if (tail == NULL) {
+ thread->mutexQueue.head = mutex;
+ }
+ else {
+ tail->link.next = mutex;
+ }
+ mutex->link.prev = tail;
+ mutex->link.next = NULL;
+ thread->mutexQueue.tail = mutex;
+}
+
+ARM_FUNC void OSi_DequeueItem(OSThread * thread, OSMutex * mutex) {
+ OSMutex *next = mutex->link.next;
+ OSMutex *prev = mutex->link.prev;
+
+ if (next == NULL) {
+ thread->mutexQueue.tail = prev;
+ }
+ else {
+ next->link.prev = prev;
+ }
+
+ if (prev == NULL) {
+ thread->mutexQueue.head = next;
+ }
+ else {
+ prev->link.next = next;
+ }
+}
diff --git a/arm9/Makefile b/arm9/Makefile
index 65f2cc00..36e19417 100644
--- a/arm9/Makefile
+++ b/arm9/Makefile
@@ -158,7 +158,7 @@ OVERLAYS := \
##################### Compiler Options #######################
-MWCCVERSION = 2.0/base
+MWCCVERSION = 2.0/sp1
TOOLS_DIR = ../tools
CROSS := arm-none-eabi-
diff --git a/arm9/arm9.lcf b/arm9/arm9.lcf
index 8150b54e..70b309a0 100644
--- a/arm9/arm9.lcf
+++ b/arm9/arm9.lcf
@@ -144,7 +144,7 @@ SECTIONS {
unk_02008AA4.o (.text)
unk_02008DEC.o (.text)
unk_02009EAC.o (.text)
- unk_0200A384.o (.text)
+ msgdata.o (.text)
unk_0200AA80.o (.text)
unk_0200BA78.o (.text)
unk_0200BB14.o (.text)
diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s
index 61bb429a..80614f44 100644
--- a/arm9/asm/scrcmd.s
+++ b/arm9/asm/scrcmd.s
@@ -1877,13 +1877,13 @@ _0203A7E0:
ldr r0, [r5, #0x78]
ldr r1, [sp, #0xc]
ldr r2, [r2, #0x0]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x18]
ldr r0, [r0, #0x0]
ldr r1, [r7, #0x0]
ldr r2, [r2, #0x0]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0x60]
bl MOD05_021E8140
mov r3, #0x0
@@ -2006,12 +2006,12 @@ FUN_0203A8B8: ; 0x0203A8B8
ldr r0, [r5, #0x78]
ldr r1, [sp, #0x0]
ldr r2, [r6, #0x0]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x8]
ldr r1, [r7, #0x0]
ldr r0, [r0, #0x0]
ldr r2, [r6, #0x0]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0x60]
bl MOD05_021E8140
add r4, r0, #0x0
@@ -12201,11 +12201,11 @@ FUN_0203FA58: ; 0x0203FA58
add r1, r5, #0x0
mov r2, #0x1
mov r3, #0x20
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x0]
ldr r1, [sp, #0x0]
add r0, r7, #0x0
@@ -12219,9 +12219,9 @@ _0203FB24:
_0203FB26:
strh r0, [r6, #0x0]
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
bl DestroyMsgData
add r0, r4, #0x0
diff --git a/arm9/asm/scrcmd_12.s b/arm9/asm/scrcmd_12.s
index e7c29d09..95f2fa63 100644
--- a/arm9/asm/scrcmd_12.s
+++ b/arm9/asm/scrcmd_12.s
@@ -640,7 +640,7 @@ _020431D4:
bl SetMonData
add r0, r5, #0x0
add r4, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
_0204322C:
ldr r1, [sp, #0x8]
mov r0, #0x2
@@ -894,7 +894,7 @@ FUN_020433DC: ; 0x020433DC
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r3-r7, pc}
diff --git a/arm9/asm/scrcmd_3.s b/arm9/asm/scrcmd_3.s
index 959b85d1..04d35396 100644
--- a/arm9/asm/scrcmd_3.s
+++ b/arm9/asm/scrcmd_3.s
@@ -180,7 +180,7 @@ FUN_0203FF10: ; 0x0203FF10
ldr r1, [sp, #0x0]
str r0, [r1, #0x0]
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x38
pop {r3-r7, pc}
diff --git a/arm9/asm/scrcmd_4.s b/arm9/asm/scrcmd_4.s
index f8ec8636..4dc36e74 100644
--- a/arm9/asm/scrcmd_4.s
+++ b/arm9/asm/scrcmd_4.s
@@ -495,7 +495,7 @@ FUN_02040A7C: ; 0x02040A7C
add r2, r6, #0x0
bl FUN_0200ABB4
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0xc
pop {r4-r7, pc}
@@ -512,7 +512,7 @@ FUN_02040AE4: ; 0x02040AE4
bl NewMsgDataFromNarc
add r5, r0, #0x0
add r1, r4, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0x0
add r0, r5, #0x0
bl DestroyMsgData
@@ -553,7 +553,7 @@ FUN_02040B0C: ; 0x02040B0C
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r4-r6, pc}
@@ -590,7 +590,7 @@ FUN_02040B5C: ; 0x02040B5C
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r4-r6, pc}
@@ -627,7 +627,7 @@ FUN_02040BAC: ; 0x02040BAC
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r4-r6, pc}
@@ -720,7 +720,7 @@ FUN_02040CA4: ; 0x02040CA4
add r5, r0, #0x0
mov r0, #0x16
mov r1, #0x4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
@@ -751,7 +751,7 @@ FUN_02040CA4: ; 0x02040CA4
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
@@ -808,7 +808,7 @@ _02040D5C:
mov r3, #0x0
bl FUN_0200ABB4
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
@@ -884,7 +884,7 @@ FUN_02040DEC: ; 0x02040DEC
mov r0, #0xb
ldrb r6, [r1, #0x0]
add r1, r0, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
@@ -904,7 +904,7 @@ FUN_02040DEC: ; 0x02040DEC
add r2, r4, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
diff --git a/arm9/asm/scrcmd_8.s b/arm9/asm/scrcmd_8.s
index 50e533d7..d5a1a525 100644
--- a/arm9/asm/scrcmd_8.s
+++ b/arm9/asm/scrcmd_8.s
@@ -188,7 +188,7 @@ _02041DC8:
_02041DCE:
mov r0, #0x40
mov r1, #0x20
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
@@ -219,7 +219,7 @@ _02041DCE:
mov r1, #0x0
bl FUN_02028788
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
mov r1, #0x0
mov r2, #0x1
diff --git a/arm9/asm/scrcmd_9.s b/arm9/asm/scrcmd_9.s
index 8ea6313d..c4315fb0 100644
--- a/arm9/asm/scrcmd_9.s
+++ b/arm9/asm/scrcmd_9.s
@@ -524,7 +524,7 @@ FUN_0204224C: ; 0x0204224C
mov r0, #0x40
mov r1, #0x4
str r3, [sp, #0x8]
- bl FUN_020219F4
+ bl String_ctor
add r1, r7, #0x0
add r4, r0, #0x0
bl FUN_02021E28
@@ -538,7 +538,7 @@ FUN_0204224C: ; 0x0204224C
add r2, r4, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r4-r7, pc}
.balign 4
@@ -582,7 +582,7 @@ FUN_020422C0: ; 0x020422C0
ldrh r0, [r0, #0x2]
mov r1, #0x4
add r2, sp, #0x8
- bl GetSpeciesName
+ bl GetSpeciesNameIntoArray
mov r0, #0x2
str r0, [sp, #0x0]
mov r0, #0x1
diff --git a/arm9/asm/unk_02002C14.s b/arm9/asm/unk_02002C14.s
index 41a63edc..ee2881da 100644
--- a/arm9/asm/unk_02002C14.s
+++ b/arm9/asm/unk_02002C14.s
@@ -341,7 +341,7 @@ FUN_02002E14: ; 0x02002E14
bl ErrorHandling
_02002E2E:
add r0, r5, #0x0
- bl FUN_02021F2C
+ bl String_c_str
add r1, r0, #0x0
ldr r0, _02002E48 ; =UNK_02106FC8
add r2, r6, #0x0
diff --git a/arm9/asm/unk_02002F08.s b/arm9/asm/unk_02002F08.s
index 2eed07fc..a1fdc78f 100644
--- a/arm9/asm/unk_02002F08.s
+++ b/arm9/asm/unk_02002F08.s
@@ -21,7 +21,7 @@ FUN_02002F08: ; 0x02002F08
bl ErrorHandling
_02002F22:
add r0, r5, #0x0
- bl FUN_02021F2C
+ bl String_c_str
add r1, r0, #0x0
ldr r0, _02002F3C ; =UNK_02106FC8
add r2, r6, #0x0
@@ -87,7 +87,7 @@ _02002F8C: .word 0x0000FFFF
thumb_func_start FUN_02002F90
FUN_02002F90: ; 0x02002F90
push {r3, lr}
- bl FUN_02021F2C
+ bl String_c_str
bl FUN_02002F58
pop {r3, pc}
@@ -106,7 +106,7 @@ FUN_02002F9C: ; 0x02002F9C
bl ErrorHandling
_02002FB4:
add r0, r5, #0x0
- bl FUN_02021F2C
+ bl String_c_str
add r1, r0, #0x0
ldr r0, _02002FCC ; =UNK_02106FC8
ldr r0, [r0, #0x0]
diff --git a/arm9/asm/unk_0200A384.s b/arm9/asm/unk_0200A384.s
deleted file mode 100644
index 0584dfbf..00000000
--- a/arm9/asm/unk_0200A384.s
+++ /dev/null
@@ -1,946 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start LoadSingleElementFromNarc
-LoadSingleElementFromNarc: ; 0x0200A384
- ldr r3, _0200A388 ; =AllocAndReadWholeNarcMemberByIdPair
- bx r3
- .balign 4
-_0200A388: .word AllocAndReadWholeNarcMemberByIdPair
-
- thumb_func_start FreeMsgDataRawData
-FreeMsgDataRawData: ; 0x0200A38C
- ldr r3, _0200A390 ; =FreeToHeap
- bx r3
- .balign 4
-_0200A390: .word FreeToHeap
-
- thumb_func_start DecryptMessageDirect
-DecryptMessageDirect: ; 0x0200A394
- push {r3-r7, lr}
- sub sp, #0x8
- add r3, r0, #0x0
- ldrh r0, [r3, #0x0]
- add r5, r1, #0x0
- add r4, r2, #0x0
- cmp r5, r0
- bhs _0200A404
- lsl r0, r5, #0x3
- add r0, r3, r0
- ldr r2, [r0, #0x4]
- ldr r1, [r0, #0x8]
- ldr r6, _0200A40C ; =0x000002FD
- str r2, [sp, #0x0]
- str r1, [sp, #0x4]
- ldrh r0, [r3, #0x2]
- add r7, r5, #0x1
- mul r6, r0
- add r0, r7, #0x0
- mul r0, r6
- lsl r0, r0, #0x10
- lsr r6, r0, #0x10
- lsl r0, r6, #0x10
- orr r0, r6
- eor r2, r0
- eor r0, r1
- str r0, [sp, #0x4]
- str r2, [sp, #0x0]
- add r1, r3, r2
- add r0, r4, #0x0
- add r2, sp, #0x0
- bl CopyEncryptedMessage16
- ldr r2, [sp, #0x4]
- ldr r0, _0200A410 ; =0x00091BD3
- add r1, r7, #0x0
- mul r0, r1
- lsl r0, r0, #0x10
- lsr r5, r0, #0x10
- sub r3, r2, #0x1
- cmp r2, #0x0
- beq _0200A408
- ldr r0, _0200A414 ; =0x0000493D
-_0200A3EA:
- ldrh r1, [r4, #0x0]
- eor r1, r5
- strh r1, [r4, #0x0]
- add r1, r5, r0
- lsl r1, r1, #0x10
- lsr r5, r1, #0x10
- add r1, r3, #0x0
- add r4, r4, #0x2
- sub r3, r3, #0x1
- cmp r1, #0x0
- bne _0200A3EA
- add sp, #0x8
- pop {r3-r7, pc}
-_0200A404:
- bl ErrorHandling
-_0200A408:
- add sp, #0x8
- pop {r3-r7, pc}
- .balign 4
-_0200A40C: .word 0x000002FD
-_0200A410: .word 0x00091BD3
-_0200A414: .word 0x0000493D
-
- thumb_func_start DecryptMessageViaNewNarcHandle
-DecryptMessageViaNewNarcHandle: ; 0x0200A418
- ; r0: narc_id
- ; r1: ???
- ; r2: ???
- ; r3: heap_id
- push {r4-r6, lr}
- sub sp, #0x10
- add r5, r1, #0x0
- add r1, r3, #0x0
- add r4, r2, #0x0
- bl NARC_ctor
- add r6, r0, #0x0
- beq _0200A4AE
- add r1, sp, #0xc
- str r1, [sp, #0x0]
- add r1, r5, #0x0
- mov r2, #0x0
- mov r3, #0x4
- bl NARC_ReadFromMember
- add r0, sp, #0x4
- lsl r2, r4, #0x3
- str r0, [sp, #0x0]
- add r0, r6, #0x0
- add r1, r5, #0x0
- add r2, r2, #0x4
- mov r3, #0x8
- bl NARC_ReadFromMember
- add r0, sp, #0x4
- ldrh r2, [r0, #0xa]
- ldr r0, _0200A4B4 ; =0x000002FD
- add r1, r4, #0x1
- mul r0, r2
- mul r0, r1
- lsl r0, r0, #0x10
- lsr r1, r0, #0x10
- lsl r0, r1, #0x10
- orr r1, r0
- ldr r0, [sp, #0x4]
- eor r0, r1
- str r0, [sp, #0x4]
- ldr r0, [sp, #0x8]
- eor r0, r1
- str r0, [sp, #0x8]
- ldr r0, [sp, #0x20]
- add r1, r5, #0x0
- str r0, [sp, #0x0]
- ldr r3, [sp, #0x8]
- ldr r2, [sp, #0x4]
- add r0, r6, #0x0
- lsl r3, r3, #0x1
- bl NARC_ReadFromMember
- ldr r2, _0200A4B8 ; =0x00091BD3
- add r3, r4, #0x1
- mul r2, r3
- lsl r2, r2, #0x10
- ldr r0, [sp, #0x8]
- lsr r3, r2, #0x10
- sub r2, r0, #0x1
- ldr r1, [sp, #0x20]
- cmp r0, #0x0
- beq _0200A4A8
- ldr r0, _0200A4BC ; =0x0000493D
-_0200A492:
- ldrh r4, [r1, #0x0]
- eor r4, r3
- strh r4, [r1, #0x0]
- add r3, r3, r0
- lsl r3, r3, #0x10
- add r4, r2, #0x0
- add r1, r1, #0x2
- lsr r3, r3, #0x10
- sub r2, r2, #0x1
- cmp r4, #0x0
- bne _0200A492
-_0200A4A8:
- add r0, r6, #0x0
- bl NARC_dtor
-_0200A4AE:
- add sp, #0x10
- pop {r4-r6, pc}
- nop
-_0200A4B4: .word 0x000002FD
-_0200A4B8: .word 0x00091BD3
-_0200A4BC: .word 0x0000493D
-
- thumb_func_start CopyEncryptedMessage16
-CopyEncryptedMessage16: ; 0x0200A4C0
- add r3, r0, #0x0
- add r0, r1, #0x0
- add r1, r3, #0x0
- ldr r2, [r2, #0x4]
- ldr r3, _0200A4D0 ; =MIi_CpuCopy16
- lsl r2, r2, #0x1
- bx r3
- nop
-_0200A4D0: .word MIi_CpuCopy16
-
- thumb_func_start FUN_0200A4D4
-FUN_0200A4D4: ; 0x0200A4D4
- push {r3-r7, lr}
- sub sp, #0x10
- add r5, r0, #0x0
- ldrh r0, [r5, #0x0]
- add r4, r1, #0x0
- str r2, [sp, #0x0]
- cmp r4, r0
- bhs _0200A56A
- lsl r0, r4, #0x3
- add r0, r5, r0
- ldr r3, [r0, #0x4]
- ldr r2, [r0, #0x8]
- ldrh r1, [r5, #0x2]
- ldr r6, _0200A578 ; =0x000002FD
- add r0, r4, #0x1
- mul r6, r1
- add r1, r0, #0x0
- mul r1, r6
- lsl r0, r1, #0x10
- lsr r1, r0, #0x10
- lsl r0, r1, #0x10
- orr r1, r0
- add r0, r3, #0x0
- add r6, r2, #0x0
- str r3, [sp, #0x8]
- eor r0, r1
- eor r6, r1
- str r0, [sp, #0x8]
- lsl r0, r6, #0x1
- str r0, [sp, #0x4]
- str r2, [sp, #0xc]
- ldr r1, [sp, #0x4]
- mov r0, #0x0
- str r6, [sp, #0xc]
- bl AllocFromHeapAtEnd
- add r7, r0, #0x0
- beq _0200A574
- ldr r0, [sp, #0x8]
- ldr r2, [sp, #0x4]
- add r0, r5, r0
- add r1, r7, #0x0
- bl MIi_CpuCopy16
- ldr r1, _0200A57C ; =0x00091BD3
- add r2, r4, #0x1
- mul r1, r2
- lsl r1, r1, #0x10
- lsr r2, r1, #0x10
- add r0, r7, #0x0
- sub r1, r6, #0x1
- cmp r6, #0x0
- beq _0200A556
- ldr r3, _0200A580 ; =0x0000493D
-_0200A540:
- ldrh r4, [r0, #0x0]
- eor r4, r2
- strh r4, [r0, #0x0]
- add r2, r2, r3
- lsl r2, r2, #0x10
- add r4, r1, #0x0
- add r0, r0, #0x2
- lsr r2, r2, #0x10
- sub r1, r1, #0x1
- cmp r4, #0x0
- bne _0200A540
-_0200A556:
- ldr r0, [sp, #0x0]
- add r1, r7, #0x0
- add r2, r6, #0x0
- bl FUN_02021E8C
- add r0, r7, #0x0
- bl FreeToHeap
- add sp, #0x10
- pop {r3-r7, pc}
-_0200A56A:
- bl ErrorHandling
- ldr r0, [sp, #0x0]
- bl FUN_02021A4C
-_0200A574:
- add sp, #0x10
- pop {r3-r7, pc}
- .balign 4
-_0200A578: .word 0x000002FD
-_0200A57C: .word 0x00091BD3
-_0200A580: .word 0x0000493D
-
- thumb_func_start FUN_0200A584
-FUN_0200A584: ; 0x0200A584
- push {r3-r7, lr}
- sub sp, #0x10
- add r5, r0, #0x0
- ldrh r0, [r5, #0x0]
- add r4, r1, #0x0
- str r2, [sp, #0x0]
- cmp r4, r0
- bhs _0200A62C
- lsl r0, r4, #0x3
- add r0, r5, r0
- ldr r3, [r0, #0x4]
- ldr r2, [r0, #0x8]
- ldrh r1, [r5, #0x2]
- ldr r6, _0200A63C ; =0x000002FD
- add r0, r4, #0x1
- mul r6, r1
- add r1, r0, #0x0
- mul r1, r6
- lsl r0, r1, #0x10
- lsr r1, r0, #0x10
- lsl r0, r1, #0x10
- orr r1, r0
- add r0, r3, #0x0
- add r6, r2, #0x0
- str r3, [sp, #0x8]
- eor r0, r1
- eor r6, r1
- str r0, [sp, #0x8]
- lsl r0, r6, #0x1
- str r0, [sp, #0x4]
- str r2, [sp, #0xc]
- ldr r0, [sp, #0x0]
- ldr r1, [sp, #0x4]
- str r6, [sp, #0xc]
- bl AllocFromHeapAtEnd
- add r7, r0, #0x0
- beq _0200A626
- ldr r0, [sp, #0x8]
- ldr r2, [sp, #0x4]
- add r0, r5, r0
- add r1, r7, #0x0
- bl MIi_CpuCopy16
- ldr r1, _0200A640 ; =0x00091BD3
- add r2, r4, #0x1
- mul r1, r2
- lsl r1, r1, #0x10
- lsr r2, r1, #0x10
- add r0, r7, #0x0
- sub r1, r6, #0x1
- cmp r6, #0x0
- beq _0200A606
- ldr r3, _0200A644 ; =0x0000493D
-_0200A5F0:
- ldrh r4, [r0, #0x0]
- eor r4, r2
- strh r4, [r0, #0x0]
- add r2, r2, r3
- lsl r2, r2, #0x10
- add r4, r1, #0x0
- add r0, r0, #0x2
- lsr r2, r2, #0x10
- sub r1, r1, #0x1
- cmp r4, #0x0
- bne _0200A5F0
-_0200A606:
- ldr r1, [sp, #0x0]
- add r0, r6, #0x0
- bl FUN_020219F4
- add r4, r0, #0x0
- beq _0200A61A
- add r1, r7, #0x0
- add r2, r6, #0x0
- bl FUN_02021E8C
-_0200A61A:
- add r0, r7, #0x0
- bl FreeToHeap
- add sp, #0x10
- add r0, r4, #0x0
- pop {r3-r7, pc}
-_0200A626:
- add sp, #0x10
- mov r0, #0x0
- pop {r3-r7, pc}
-_0200A62C:
- bl ErrorHandling
- ldr r1, [sp, #0x0]
- mov r0, #0x4
- bl FUN_020219F4
- add sp, #0x10
- pop {r3-r7, pc}
- .balign 4
-_0200A63C: .word 0x000002FD
-_0200A640: .word 0x00091BD3
-_0200A644: .word 0x0000493D
-
- thumb_func_start FUN_0200A648
-FUN_0200A648: ; 0x0200A648
- push {r3-r7, lr}
- add r7, r3, #0x0
- add r5, r1, #0x0
- add r1, r7, #0x0
- add r4, r2, #0x0
- bl NARC_ctor
- add r6, r0, #0x0
- beq _0200A66E
- ldr r1, [sp, #0x18]
- add r2, r4, #0x0
- str r1, [sp, #0x0]
- add r1, r5, #0x0
- add r3, r7, #0x0
- bl FUN_0200A670
- add r0, r6, #0x0
- bl NARC_dtor
-_0200A66E:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200A670
-FUN_0200A670: ; 0x0200A670
- push {r4-r7, lr}
- sub sp, #0x14
- add r5, r2, #0x0
- add r2, sp, #0x10
- add r4, r3, #0x0
- str r2, [sp, #0x0]
- mov r2, #0x0
- mov r3, #0x4
- add r7, r0, #0x0
- str r1, [sp, #0x4]
- bl NARC_ReadFromMember
- add r0, sp, #0x8
- ldrh r0, [r0, #0x8]
- cmp r5, r0
- bhs _0200A71E
- add r0, sp, #0x8
- lsl r2, r5, #0x3
- str r0, [sp, #0x0]
- ldr r1, [sp, #0x4]
- add r0, r7, #0x0
- add r2, r2, #0x4
- mov r3, #0x8
- bl NARC_ReadFromMember
- add r0, sp, #0x8
- ldrh r2, [r0, #0xa]
- ldr r0, _0200A72C ; =0x000002FD
- add r1, r5, #0x1
- mul r0, r2
- mul r0, r1
- lsl r0, r0, #0x10
- lsr r1, r0, #0x10
- lsl r0, r1, #0x10
- orr r1, r0
- ldr r0, [sp, #0x8]
- eor r0, r1
- str r0, [sp, #0x8]
- ldr r0, [sp, #0xc]
- eor r0, r1
- lsl r6, r0, #0x1
- str r0, [sp, #0xc]
- add r0, r4, #0x0
- add r1, r6, #0x0
- bl AllocFromHeapAtEnd
- add r4, r0, #0x0
- beq _0200A728
- str r4, [sp, #0x0]
- ldr r1, [sp, #0x4]
- ldr r2, [sp, #0x8]
- add r0, r7, #0x0
- add r3, r6, #0x0
- bl NARC_ReadFromMember
- ldr r2, _0200A730 ; =0x00091BD3
- add r3, r5, #0x1
- mul r2, r3
- lsl r2, r2, #0x10
- ldr r0, [sp, #0xc]
- lsr r3, r2, #0x10
- add r1, r4, #0x0
- sub r2, r0, #0x1
- cmp r0, #0x0
- beq _0200A70A
- ldr r0, _0200A734 ; =0x0000493D
-_0200A6F4:
- ldrh r5, [r1, #0x0]
- eor r5, r3
- strh r5, [r1, #0x0]
- add r3, r3, r0
- lsl r3, r3, #0x10
- add r5, r2, #0x0
- add r1, r1, #0x2
- lsr r3, r3, #0x10
- sub r2, r2, #0x1
- cmp r5, #0x0
- bne _0200A6F4
-_0200A70A:
- ldr r0, [sp, #0x28]
- ldr r2, [sp, #0xc]
- add r1, r4, #0x0
- bl FUN_02021E8C
- add r0, r4, #0x0
- bl FreeToHeap
- add sp, #0x14
- pop {r4-r7, pc}
-_0200A71E:
- bl ErrorHandling
- ldr r0, [sp, #0x28]
- bl FUN_02021A4C
-_0200A728:
- add sp, #0x14
- pop {r4-r7, pc}
- .balign 4
-_0200A72C: .word 0x000002FD
-_0200A730: .word 0x00091BD3
-_0200A734: .word 0x0000493D
-
- thumb_func_start FUN_0200A738
-FUN_0200A738: ; 0x0200A738
- push {r3-r7, lr}
- add r6, r3, #0x0
- add r5, r1, #0x0
- add r1, r6, #0x0
- add r4, r2, #0x0
- bl NARC_ctor
- add r7, r0, #0x0
- beq _0200A75E
- add r1, r5, #0x0
- add r2, r4, #0x0
- add r3, r6, #0x0
- bl FUN_0200A76C
- add r4, r0, #0x0
- add r0, r7, #0x0
- bl NARC_dtor
- b _0200A768
-_0200A75E:
- mov r0, #0x4
- add r1, r6, #0x0
- bl FUN_020219F4
- add r4, r0, #0x0
-_0200A768:
- add r0, r4, #0x0
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200A76C
-FUN_0200A76C: ; 0x0200A76C
- push {r3-r7, lr}
- sub sp, #0x18
- add r4, r2, #0x0
- add r2, sp, #0x14
- add r5, r3, #0x0
- str r2, [sp, #0x0]
- mov r2, #0x0
- mov r3, #0x4
- add r7, r0, #0x0
- str r1, [sp, #0x4]
- bl NARC_ReadFromMember
- add r0, sp, #0xc
- ldrh r0, [r0, #0x8]
- cmp r4, r0
- bhs _0200A82A
- add r0, sp, #0xc
- lsl r2, r4, #0x3
- str r0, [sp, #0x0]
- ldr r1, [sp, #0x4]
- add r0, r7, #0x0
- add r2, r2, #0x4
- mov r3, #0x8
- bl NARC_ReadFromMember
- add r0, sp, #0xc
- ldrh r2, [r0, #0xa]
- ldr r0, _0200A83C ; =0x000002FD
- add r1, r4, #0x1
- mul r0, r2
- mul r0, r1
- lsl r0, r0, #0x10
- lsr r1, r0, #0x10
- lsl r0, r1, #0x10
- orr r1, r0
- ldr r0, [sp, #0xc]
- eor r0, r1
- str r0, [sp, #0xc]
- ldr r0, [sp, #0x10]
- eor r0, r1
- add r1, r5, #0x0
- str r0, [sp, #0x10]
- bl FUN_020219F4
- str r0, [sp, #0x8]
- cmp r0, #0x0
- beq _0200A824
- ldr r0, [sp, #0x10]
- lsl r6, r0, #0x1
- add r0, r5, #0x0
- add r1, r6, #0x0
- bl AllocFromHeapAtEnd
- add r5, r0, #0x0
- beq _0200A824
- str r5, [sp, #0x0]
- ldr r1, [sp, #0x4]
- ldr r2, [sp, #0xc]
- add r0, r7, #0x0
- add r3, r6, #0x0
- bl NARC_ReadFromMember
- ldr r2, _0200A840 ; =0x00091BD3
- add r3, r4, #0x1
- mul r2, r3
- lsl r2, r2, #0x10
- ldr r0, [sp, #0x10]
- lsr r3, r2, #0x10
- add r1, r5, #0x0
- sub r2, r0, #0x1
- cmp r0, #0x0
- beq _0200A814
- ldr r0, _0200A844 ; =0x0000493D
-_0200A7FE:
- ldrh r4, [r1, #0x0]
- eor r4, r3
- strh r4, [r1, #0x0]
- add r3, r3, r0
- lsl r3, r3, #0x10
- add r4, r2, #0x0
- add r1, r1, #0x2
- lsr r3, r3, #0x10
- sub r2, r2, #0x1
- cmp r4, #0x0
- bne _0200A7FE
-_0200A814:
- ldr r0, [sp, #0x8]
- ldr r2, [sp, #0x10]
- add r1, r5, #0x0
- bl FUN_02021E8C
- add r0, r5, #0x0
- bl FreeToHeap
-_0200A824:
- ldr r0, [sp, #0x8]
- add sp, #0x18
- pop {r3-r7, pc}
-_0200A82A:
- bl ErrorHandling
- mov r0, #0x4
- add r1, r5, #0x0
- bl FUN_020219F4
- add sp, #0x18
- pop {r3-r7, pc}
- nop
-_0200A83C: .word 0x000002FD
-_0200A840: .word 0x00091BD3
-_0200A844: .word 0x0000493D
-
- thumb_func_start FUN_0200A848
-FUN_0200A848: ; 0x0200A848
- ldrh r0, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_0200A84C
-FUN_0200A84C: ; 0x0200A84C
- push {r3, lr}
- sub sp, #0x8
- add r3, r0, #0x0
- mov r0, #0x4
- add r2, r1, #0x0
- str r0, [sp, #0x0]
- add r1, r3, #0x0
- add r0, sp, #0x4
- mov r3, #0x0
- bl ReadFromNarcMemberByIdPair
- add r0, sp, #0x4
- ldrh r0, [r0, #0x0]
- add sp, #0x8
- pop {r3, pc}
- .balign 4
-
-; struct MsgData
-; {
-; u16 unk0;
-; u16 unk2;
-; u16 unk4;
-; u16 unk6;
-; union {
-; u16 * raw;
-; NARC * narc;
-; } data;
-; };
-
- thumb_func_start NewMsgDataFromNarc
-NewMsgDataFromNarc: ; 0x0200A86C
- ; r0: msg data type
- ; r1: NARC ID
- ; r2: File ID
- ; r3: heap_id
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r1, #0x0
- add r0, r3, #0x0
- mov r1, #0xc
- add r7, r2, #0x0
- str r3, [sp, #0x0]
- bl AllocFromHeapAtEnd
- add r4, r0, #0x0
- beq _0200A8B4
- cmp r5, #0x0
- bne _0200A8A0
- ldr r2, [sp, #0x0]
- add r0, r6, #0x0
- add r1, r7, #0x0
- bl LoadSingleElementFromNarc
- str r0, [r4, #0x8]
- cmp r0, #0x0
- bne _0200A8AA
- add r0, r4, #0x0
- bl FreeToHeap
- mov r0, #0x0
- pop {r3-r7, pc}
-_0200A8A0:
- ldr r1, [sp, #0x0]
- add r0, r6, #0x0
- bl NARC_ctor
- str r0, [r4, #0x8]
-_0200A8AA:
- strh r5, [r4, #0x0]
- strh r6, [r4, #0x4]
- ldr r0, [sp, #0x0]
- strh r7, [r4, #0x6]
- strh r0, [r4, #0x2]
-_0200A8B4:
- add r0, r4, #0x0
- pop {r3-r7, pc}
-
- thumb_func_start DestroyMsgData
-DestroyMsgData: ; 0x0200A8B8
- push {r4, lr}
- add r4, r0, #0x0
- beq _0200A8DE
- ldrh r0, [r4, #0x0]
- cmp r0, #0x0
- beq _0200A8CA
- cmp r0, #0x1
- beq _0200A8D2
- b _0200A8D8
-_0200A8CA:
- ldr r0, [r4, #0x8]
- bl FreeMsgDataRawData
- b _0200A8D8
-_0200A8D2:
- ldr r0, [r4, #0x8]
- bl NARC_dtor
-_0200A8D8:
- add r0, r4, #0x0
- bl FreeToHeap
-_0200A8DE:
- pop {r4, pc}
-
- thumb_func_start FUN_0200A8E0
-FUN_0200A8E0: ; 0x0200A8E0
- push {r3-r4, lr}
- sub sp, #0x4
- add r4, r0, #0x0
- ldrh r0, [r4, #0x0]
- add r3, r1, #0x0
- cmp r0, #0x0
- beq _0200A8F6
- cmp r0, #0x1
- beq _0200A900
- add sp, #0x4
- pop {r3-r4, pc}
-_0200A8F6:
- ldr r0, [r4, #0x8]
- bl FUN_0200A4D4
- add sp, #0x4
- pop {r3-r4, pc}
-_0200A900:
- str r2, [sp, #0x0]
- add r2, r3, #0x0
- ldrh r1, [r4, #0x6]
- ldrh r3, [r4, #0x2]
- ldr r0, [r4, #0x8]
- bl FUN_0200A670
- add sp, #0x4
- pop {r3-r4, pc}
- .balign 4
-
- thumb_func_start FUN_0200A914
-FUN_0200A914: ; 0x0200A914
- push {r3, lr}
- add r3, r0, #0x0
- ldrh r0, [r3, #0x0]
- add r2, r1, #0x0
- cmp r0, #0x0
- beq _0200A926
- cmp r0, #0x1
- beq _0200A930
- b _0200A93C
-_0200A926:
- ldrh r2, [r3, #0x2]
- ldr r0, [r3, #0x8]
- bl FUN_0200A584
- pop {r3, pc}
-_0200A930:
- ldr r0, [r3, #0x8]
- ldrh r1, [r3, #0x6]
- ldrh r3, [r3, #0x2]
- bl FUN_0200A76C
- pop {r3, pc}
-_0200A93C:
- mov r0, #0x0
- pop {r3, pc}
-
- thumb_func_start FUN_0200A940
-FUN_0200A940: ; 0x0200A940
- push {r3, lr}
- add r1, r0, #0x0
- ldrh r0, [r1, #0x0]
- cmp r0, #0x0
- beq _0200A950
- cmp r0, #0x1
- beq _0200A958
- b _0200A962
-_0200A950:
- ldr r0, [r1, #0x8]
- bl FUN_0200A848
- pop {r3, pc}
-_0200A958:
- ldrh r0, [r1, #0x4]
- ldrh r1, [r1, #0x6]
- bl FUN_0200A84C
- pop {r3, pc}
-_0200A962:
- mov r0, #0x0
- pop {r3, pc}
- .balign 4
-
- thumb_func_start DecryptCopyString
-DecryptCopyString: ; 0x0200A968
- push {r3-r4, lr}
- sub sp, #0x4
- add r4, r0, #0x0
- ldrh r0, [r4, #0x0]
- add r3, r1, #0x0
- cmp r0, #0x0
- beq _0200A97E
- cmp r0, #0x1
- beq _0200A988
- add sp, #0x4
- pop {r3-r4, pc}
-_0200A97E:
- ldr r0, [r4, #0x8]
- bl DecryptMessageDirect
- add sp, #0x4
- pop {r3-r4, pc}
-_0200A988:
- str r2, [sp, #0x0]
- add r2, r3, #0x0
- ldrh r0, [r4, #0x4]
- ldrh r1, [r4, #0x6]
- ldrh r3, [r4, #0x2]
- bl DecryptMessageViaNewNarcHandle
- add sp, #0x4
- pop {r3-r4, pc}
- .balign 4
-
- thumb_func_start GetSpeciesName
-GetSpeciesName: ; 0x0200A99C
- ; r0: species
- ; r1: heap_id
- ; r2: dest
- push {r4-r6, lr}
- add r4, r2, #0x0
- add r5, r0, #0x0
- add r3, r1, #0x0
- ldr r2, _0200A9C0 ; =0x0000016A
- mov r0, #0x1
- mov r1, #0x1a ; NARC_MSGDATA_MSG
- bl NewMsgDataFromNarc
- add r6, r0, #0x0
- add r1, r5, #0x0
- add r2, r4, #0x0
- bl DecryptCopyString
- add r0, r6, #0x0
- bl DestroyMsgData
- pop {r4-r6, pc}
- .balign 4
-_0200A9C0: .word 0x0000016A
-
- thumb_func_start FUN_0200A9C4
-FUN_0200A9C4: ; 0x0200A9C4
- push {r3-r7, lr}
- sub sp, #0x8
- add r7, r0, #0x0
- mov r0, #0x0
- str r0, [sp, #0x4]
- add r5, r1, #0x0
- mov r0, #0x1
- ldr r1, [sp, #0x4]
- lsl r0, r0, #0xa
- add r6, r2, #0x0
- str r3, [sp, #0x0]
- bl FUN_020219F4
- add r4, r0, #0x0
- beq _0200AA0E
- add r0, r5, #0x0
- add r1, r6, #0x0
- bl FUN_0200A914
- add r5, r0, #0x0
- beq _0200AA08
- add r0, r7, #0x0
- add r1, r4, #0x0
- add r2, r5, #0x0
- bl FUN_0200B7B8
- ldr r1, [sp, #0x0]
- add r0, r4, #0x0
- bl FUN_02021ACC
- str r0, [sp, #0x4]
- add r0, r5, #0x0
- bl FUN_02021A20
-_0200AA08:
- add r0, r4, #0x0
- bl FUN_02021A20
-_0200AA0E:
- ldr r0, [sp, #0x4]
- add sp, #0x8
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200AA14
-FUN_0200AA14: ; 0x0200AA14
- push {r4-r6, lr}
- add r5, r1, #0x0
- mov r2, #0x93
- add r6, r0, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- add r3, r5, #0x0
- bl NewMsgDataFromNarc
- add r4, r0, #0x0
- beq _0200AA4C
- mov r0, #0x10
- add r1, r5, #0x0
- bl FUN_020219F4
- add r5, r0, #0x0
- beq _0200AA42
- add r0, r4, #0x0
- add r1, r6, #0x0
- add r2, r5, #0x0
- bl FUN_0200A8E0
-_0200AA42:
- add r0, r4, #0x0
- bl DestroyMsgData
- add r0, r5, #0x0
- pop {r4-r6, pc}
-_0200AA4C:
- mov r0, #0x0
- pop {r4-r6, pc}
-
- thumb_func_start FUN_0200AA50
-FUN_0200AA50: ; 0x0200AA50
- push {r3-r5, lr}
- ldr r2, _0200AA7C ; =0x0000016A
- add r4, r0, #0x0
- add r3, r1, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r5, r0, #0x0
- beq _0200AA76
- add r1, r4, #0x0
- bl FUN_0200A914
- add r4, r0, #0x0
- add r0, r5, #0x0
- bl DestroyMsgData
- add r0, r4, #0x0
- pop {r3-r5, pc}
-_0200AA76:
- mov r0, #0x0
- pop {r3-r5, pc}
- nop
-_0200AA7C: .word 0x0000016A
diff --git a/arm9/asm/unk_0200AA80.s b/arm9/asm/unk_0200AA80.s
index 42a4d3a4..537ca6b3 100644
--- a/arm9/asm/unk_0200AA80.s
+++ b/arm9/asm/unk_0200AA80.s
@@ -53,7 +53,7 @@ _0200AAAA:
str r0, [r4, #0x4]
ldr r0, [sp, #0x0]
ldr r1, [sp, #0x4]
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0xc]
cmp r0, #0x0
beq _0200AB10
@@ -72,7 +72,7 @@ _0200AAE0:
bl FUN_0200AB6C
ldr r0, [sp, #0x0]
ldr r1, [sp, #0x4]
- bl FUN_020219F4
+ bl String_ctor
ldr r1, [r4, #0x8]
add r1, r1, r5
str r0, [r1, #0x4]
@@ -120,7 +120,7 @@ _0200AB36:
ldr r0, [r0, #0x4]
cmp r0, #0x0
beq _0200AB4E
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x0]
add r6, r6, #0x1
add r4, #0x8
@@ -133,7 +133,7 @@ _0200AB54:
ldr r0, [r5, #0xc]
cmp r0, #0x0
beq _0200AB5E
- bl FUN_02021A20
+ bl String_dtor
_0200AB5E:
mov r0, #0x0
str r0, [r5, #0x0]
@@ -181,7 +181,7 @@ _0200ABA4:
add r0, r1, r0
ldr r0, [r0, #0x4]
add r1, r7, #0x0
- bl FUN_02021A74
+ bl StringCopy
_0200ABB2:
pop {r3-r7, pc}
@@ -251,13 +251,13 @@ FUN_0200AC0C: ; 0x0200AC0C
ldr r2, [r5, #0xc]
add r0, r4, #0x0
mov r1, #0x1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0200AC48
_0200AC3E:
ldr r2, [r5, #0xc]
add r0, r4, #0x0
mov r1, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0200AC48:
ldr r2, [r5, #0xc]
add r0, r5, #0x0
@@ -289,7 +289,7 @@ FUN_0200AC60: ; 0x0200AC60
add r1, r0, #0x0
ldr r2, [r5, #0xc]
add r0, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r6, #0x0
@@ -330,7 +330,7 @@ FUN_0200ACC0: ; 0x0200ACC0
ldr r2, [r5, #0xc]
add r1, r6, #0x0
add r7, r0, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -411,7 +411,7 @@ FUN_0200AD5C: ; 0x0200AD5C
beq _0200AD90
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -439,7 +439,7 @@ FUN_0200AD94: ; 0x0200AD94
beq _0200ADC8
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -467,7 +467,7 @@ FUN_0200ADCC: ; 0x0200ADCC
beq _0200AE00
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -493,7 +493,7 @@ FUN_0200AE04: ; 0x0200AE04
ldr r2, [r5, #0xc]
add r1, r6, #0x0
add r7, r0, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -520,7 +520,7 @@ FUN_0200AE38: ; 0x0200AE38
beq _0200AE6C
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -547,7 +547,7 @@ FUN_0200AE70: ; 0x0200AE70
beq _0200AEA2
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -575,7 +575,7 @@ FUN_0200AEA8: ; 0x0200AEA8
beq _0200AEDA
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -603,7 +603,7 @@ FUN_0200AEE0: ; 0x0200AEE0
beq _0200AF12
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -631,7 +631,7 @@ FUN_0200AF18: ; 0x0200AF18
beq _0200AF4A
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -659,7 +659,7 @@ FUN_0200AF50: ; 0x0200AF50
beq _0200AF82
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -687,7 +687,7 @@ FUN_0200AF88: ; 0x0200AF88
beq _0200AFBA
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -714,7 +714,7 @@ FUN_0200AFBC: ; 0x0200AFBC
beq _0200AFF0
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -741,7 +741,7 @@ FUN_0200AFF4: ; 0x0200AFF4
beq _0200B026
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -769,7 +769,7 @@ FUN_0200B02C: ; 0x0200B02C
beq _0200B05E
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -798,7 +798,7 @@ FUN_0200B064: ; 0x0200B064
beq _0200B098
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -825,7 +825,7 @@ FUN_0200B09C: ; 0x0200B09C
beq _0200B0CE
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -854,7 +854,7 @@ FUN_0200B0D4: ; 0x0200B0D4
beq _0200B108
ldrb r1, [r4, #0x1]
ldr r2, [r5, #0xc]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r6, #0x0
@@ -881,7 +881,7 @@ FUN_0200B10C: ; 0x0200B10C
beq _0200B13E
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -926,7 +926,7 @@ FUN_0200B164: ; 0x0200B164
beq _0200B196
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -954,7 +954,7 @@ FUN_0200B19C: ; 0x0200B19C
beq _0200B1CE
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -982,7 +982,7 @@ FUN_0200B1D4: ; 0x0200B1D4
beq _0200B206
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1011,7 +1011,7 @@ FUN_0200B20C: ; 0x0200B20C
beq _0200B240
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1038,7 +1038,7 @@ FUN_0200B244: ; 0x0200B244
beq _0200B276
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1064,7 +1064,7 @@ FUN_0200B278: ; 0x0200B278
beq _0200B2AA
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1090,7 +1090,7 @@ FUN_0200B2AC: ; 0x0200B2AC
beq _0200B2DE
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1116,7 +1116,7 @@ FUN_0200B2E0: ; 0x0200B2E0
beq _0200B312
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1144,7 +1144,7 @@ FUN_0200B318: ; 0x0200B318
beq _0200B34A
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1172,7 +1172,7 @@ FUN_0200B350: ; 0x0200B350
beq _0200B382
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1201,7 +1201,7 @@ FUN_0200B388: ; 0x0200B388
beq _0200B3BC
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1233,16 +1233,16 @@ FUN_0200B3C0: ; 0x0200B3C0
_0200B3E0:
ldr r2, [r5, #0xc]
mov r1, #0x44
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0200B3FA
_0200B3EA:
ldr r2, [r5, #0xc]
mov r1, #0x45
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0200B3FA
_0200B3F4:
ldr r0, [r5, #0xc]
- bl FUN_02021A4C
+ bl StringSetEmpty
_0200B3FA:
ldr r2, [r5, #0xc]
add r0, r5, #0x0
@@ -1286,7 +1286,7 @@ FUN_0200B430: ; 0x0200B430
beq _0200B462
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1314,7 +1314,7 @@ FUN_0200B468: ; 0x0200B468
beq _0200B49A
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1343,7 +1343,7 @@ FUN_0200B4A0: ; 0x0200B4A0
beq _0200B4D4
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1375,7 +1375,7 @@ FUN_0200B4D8: ; 0x0200B4D8
beq _0200B516
ldr r2, [r5, #0xc]
add r1, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r6, #0x0
@@ -1416,7 +1416,7 @@ FUN_0200B534: ; 0x0200B534
beq _0200B566
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1442,7 +1442,7 @@ FUN_0200B568: ; 0x0200B568
beq _0200B59A
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1474,13 +1474,13 @@ FUN_0200B59C: ; 0x0200B59C
bl NewMsgDataFromNarc
add r6, r0, #0x0
beq _0200B61E
- bl FUN_0200A940
+ bl MsgDataGetCount
cmp r4, r0
bhs _0200B5EE
ldr r2, [r5, #0xc]
add r0, r6, #0x0
add r1, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r7, #0x0
@@ -1501,7 +1501,7 @@ _0200B5EE:
beq _0200B61E
ldr r2, [r5, #0xc]
mov r1, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r7, #0x0
@@ -1530,7 +1530,7 @@ FUN_0200B628: ; 0x0200B628
beq _0200B65A
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1558,7 +1558,7 @@ FUN_0200B660: ; 0x0200B660
beq _0200B692
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1586,7 +1586,7 @@ FUN_0200B698: ; 0x0200B698
beq _0200B6CA
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1615,7 +1615,7 @@ FUN_0200B6D0: ; 0x0200B6D0
beq _0200B704
ldr r2, [r5, #0xc]
add r1, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -1646,7 +1646,7 @@ FUN_0200B708: ; 0x0200B708
add r7, r0, #0x0
mov r0, #0x40
mov r1, #0x4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
ldr r2, [sp, #0x28]
add r0, r6, #0x0
@@ -1664,7 +1664,7 @@ FUN_0200B708: ; 0x0200B708
str r7, [sp, #0x4]
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4-r7, pc}
@@ -1692,7 +1692,7 @@ _0200B788:
ldr r2, [r5, #0xc]
add r0, r6, #0x0
sub r1, r4, #0x1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r5, #0xc]
add r0, r5, #0x0
add r1, r7, #0x0
@@ -1715,16 +1715,16 @@ FUN_0200B7A8: ; 0x0200B7A8
.balign 4
_0200B7B4: .word FUN_02021FF8
- thumb_func_start FUN_0200B7B8
-FUN_0200B7B8: ; 0x0200B7B8
+ thumb_func_start StringExpandPlaceholders
+StringExpandPlaceholders: ; 0x0200B7B8
push {r3-r7, lr}
add r7, r0, #0x0
add r6, r1, #0x0
add r0, r2, #0x0
- bl FUN_02021F2C
+ bl String_c_str
add r5, r0, #0x0
add r0, r6, #0x0
- bl FUN_02021A4C
+ bl StringSetEmpty
ldrh r1, [r5, #0x0]
ldr r0, _0200B844 ; =0x0000FFFF
cmp r1, r0
@@ -1800,7 +1800,7 @@ _0200B85A:
ldr r0, [r5, #0x8]
add r0, r0, r4
ldr r0, [r0, #0x4]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r0, [r5, #0x0]
add r6, r6, #0x1
add r4, #0x8
diff --git a/arm9/asm/unk_02011744.s b/arm9/asm/unk_02011744.s
index c8fec74e..5d836ed4 100644
--- a/arm9/asm/unk_02011744.s
+++ b/arm9/asm/unk_02011744.s
@@ -2442,7 +2442,7 @@ FUN_02012880: ; 0x02012880
beq _0201289E
add r0, r6, #0x0
add r1, r7, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4, #0x0]
str r5, [r4, #0x4]
_0201289E:
@@ -2460,7 +2460,7 @@ FUN_020128A0: ; 0x020128A0
beq _020128BE
ldr r1, [sp, #0x0]
add r0, r6, #0x0
- bl FUN_02021ACC
+ bl StringDup
str r0, [r4, #0x0]
str r5, [r4, #0x4]
_020128BE:
@@ -2537,7 +2537,7 @@ _0201292E:
ldr r0, [r5, #0x0]
cmp r0, #0x0
beq _02012942
- bl FUN_02021A20
+ bl String_dtor
str r4, [r5, #0x0]
add r5, #0x8
ldr r0, [r5, #0x0]
diff --git a/arm9/asm/unk_02012CC8.s b/arm9/asm/unk_02012CC8.s
index 8cc86c3a..0f39b4e8 100644
--- a/arm9/asm/unk_02012CC8.s
+++ b/arm9/asm/unk_02012CC8.s
@@ -1500,7 +1500,7 @@ FUN_02013690: ; 0x02013690
add r1, r5, #0x0
str r0, [r4, #0x0]
mov r0, #0x4
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _020136BC ; =UNK_020ED548
str r0, [r4, #0x4]
bl FUN_02021E28
@@ -1523,7 +1523,7 @@ _020136CA:
ldr r0, [r4, #0x4]
cmp r0, #0x0
beq _020136D8
- bl FUN_02021A20
+ bl String_dtor
_020136D8:
add r0, r4, #0x0
bl FreeToHeap
diff --git a/arm9/asm/unk_02013724.s b/arm9/asm/unk_02013724.s
index 66e27343..b9edb722 100644
--- a/arm9/asm/unk_02013724.s
+++ b/arm9/asm/unk_02013724.s
@@ -167,7 +167,7 @@ _02013800:
ldrh r2, [r2, #0x2]
add r0, r6, #0x0
add r1, r5, #0x0
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r4, r0, #0x0
add r0, r5, #0x0
bl DestroyMsgData
@@ -191,7 +191,7 @@ FUN_02013840: ; 0x02013840
ldr r1, _02013858 ; =UNK_020ED54C
ldrh r1, [r1, r2]
ldrh r2, [r4, #0x2]
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
pop {r4, pc}
.balign 4
_02013858: .word UNK_020ED54C
@@ -259,9 +259,9 @@ _020138BC:
mov r0, #0x1a
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
str r0, [sp, #0x0]
- bl FUN_02021F2C
+ bl String_c_str
add r4, r0, #0x0
ldrh r1, [r4, #0x0]
ldr r0, _02013914 ; =0x0000FFFF
@@ -291,7 +291,7 @@ _020138FE:
bne _020138E2
_02013904:
ldr r0, [sp, #0x0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
pop {r3-r7, pc}
nop
diff --git a/arm9/asm/unk_020139D8.s b/arm9/asm/unk_020139D8.s
index 5fef7194..a799de27 100644
--- a/arm9/asm/unk_020139D8.s
+++ b/arm9/asm/unk_020139D8.s
@@ -161,7 +161,7 @@ FUN_02013A30: ; 0x02013A30
add r0, r5, r0
ldr r0, [r0, #0x4]
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add sp, #0x8
pop {r3-r5, pc}
.balign 4
@@ -187,12 +187,12 @@ FUN_02013A58: ; 0x02013A58
ldr r1, [sp, #0x8]
ldr r2, [sp, #0x4]
mov r0, #0x1a
- bl FUN_0200A648
+ bl ReadMsgData_NewNarc_ExistingString
add sp, #0xc
pop {r3-r4, pc}
_02013A88:
add r0, r4, #0x0
- bl FUN_02021A4C
+ bl StringSetEmpty
add sp, #0xc
pop {r3-r4, pc}
nop
diff --git a/arm9/asm/unk_020144FC.s b/arm9/asm/unk_020144FC.s
index 5ba5f631..b9dd902f 100644
--- a/arm9/asm/unk_020144FC.s
+++ b/arm9/asm/unk_020144FC.s
@@ -40,12 +40,12 @@ FUN_02014518: ; 0x02014518
_0201453E:
mov r0, #0x16
add r1, r7, #0x0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x4]
ldr r0, [r6, #0x0]
ldr r2, [r5, #0x4]
add r1, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r4, r4, #0x1
add r5, r5, #0x4
cmp r4, #0x1d
@@ -64,7 +64,7 @@ FUN_02014564: ; 0x02014564
add r5, #0x70
_0201456E:
ldr r0, [r5, #0x4]
- bl FUN_02021A20
+ bl String_dtor
sub r5, r5, #0x4
sub r4, r4, #0x1
bpl _0201456E
diff --git a/arm9/asm/unk_0201B8B8.s b/arm9/asm/unk_0201B8B8.s
deleted file mode 100644
index 13107df8..00000000
--- a/arm9/asm/unk_0201B8B8.s
+++ /dev/null
@@ -1,83 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0201B8B8
-FUN_0201B8B8: ; 0x0201B8B8
- push {r4, lr}
- add r4, r0, #0x0
- ldrh r1, [r4, #0x0]
- ldr r0, _0201B8DC ; =0x0000FFFE
- cmp r1, r0
- beq _0201B8C8
- bl ErrorHandling
-_0201B8C8:
- ldrh r1, [r4, #0x0]
- ldr r0, _0201B8DC ; =0x0000FFFE
- cmp r1, r0
- bne _0201B8D8
- ldrh r0, [r4, #0x4]
- add r1, r4, #0x6
- lsl r0, r0, #0x1
- add r4, r1, r0
-_0201B8D8:
- add r0, r4, #0x0
- pop {r4, pc}
- .balign 4
-_0201B8DC: .word 0x0000FFFE
-
- thumb_func_start FUN_0201B8E0
-FUN_0201B8E0: ; 0x0201B8E0
- push {r4, lr}
- add r4, r0, #0x0
- ldrh r1, [r4, #0x0]
- ldr r0, _0201B8F4 ; =0x0000FFFE
- cmp r1, r0
- beq _0201B8F0
- bl ErrorHandling
-_0201B8F0:
- ldrh r0, [r4, #0x2]
- pop {r4, pc}
- .balign 4
-_0201B8F4: .word 0x0000FFFE
-
- thumb_func_start FUN_0201B8F8
-FUN_0201B8F8: ; 0x0201B8F8
- push {r3, lr}
- bl FUN_0201B8E0
- mov r1, #0xff
- lsl r1, r1, #0x8
- and r1, r0
- mov r0, #0x1
- lsl r0, r0, #0x8
- cmp r1, r0
- bne _0201B910
- mov r0, #0x1
- pop {r3, pc}
-_0201B910:
- mov r0, #0x0
- pop {r3, pc}
-
- thumb_func_start FUN_0201B914
-FUN_0201B914: ; 0x0201B914
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r4, r1, #0x0
- ldrh r1, [r5, #0x0]
- ldr r0, _0201B938 ; =0x0000FFFE
- cmp r1, r0
- beq _0201B926
- bl ErrorHandling
-_0201B926:
- ldrh r0, [r5, #0x4]
- cmp r4, r0
- blo _0201B930
- bl ErrorHandling
-_0201B930:
- lsl r0, r4, #0x1
- add r0, r5, r0
- ldrh r0, [r0, #0x6]
- pop {r3-r5, pc}
- .balign 4
-_0201B938: .word 0x0000FFFE
diff --git a/arm9/asm/unk_0201BCBC.s b/arm9/asm/unk_0201BCBC.s
index 10ab541b..c8cd3e56 100644
--- a/arm9/asm/unk_0201BCBC.s
+++ b/arm9/asm/unk_0201BCBC.s
@@ -345,7 +345,7 @@ _0201BEF4:
ldmia r3!, {r0-r1}
stmia r2!, {r0-r1}
ldr r0, [r4, #0x0]
- bl FUN_02021F2C
+ bl String_c_str
str r0, [r4, #0x0]
ldr r0, _0201BFD4 ; =UNK_021C570C
str r5, [r4, #0x18]
diff --git a/arm9/asm/unk_02021934.s b/arm9/asm/unk_02021934.s
index 1171e40a..08a23632 100644
--- a/arm9/asm/unk_02021934.s
+++ b/arm9/asm/unk_02021934.s
@@ -128,8 +128,8 @@ _020219E8:
_020219EC: .word 0x0000FFFF
_020219F0: .word 0x00000203
- thumb_func_start FUN_020219F4
-FUN_020219F4: ; 0x020219F4
+ thumb_func_start String_ctor
+String_ctor: ; 0x020219F4
push {r4, lr}
add r4, r0, #0x0
add r0, r1, #0x0
@@ -151,8 +151,8 @@ _02021A14:
_02021A18: .word 0xB6F8D2EC
_02021A1C: .word 0x0000FFFF
- thumb_func_start FUN_02021A20
-FUN_02021A20: ; 0x02021A20
+ thumb_func_start String_dtor
+String_dtor: ; 0x02021A20
push {r4, lr}
add r4, r0, #0x0
bne _02021A2A
@@ -173,8 +173,8 @@ _02021A36:
_02021A44: .word 0xB6F8D2EC
_02021A48: .word 0xB6F8D2ED
- thumb_func_start FUN_02021A4C
-FUN_02021A4C: ; 0x02021A4C
+ thumb_func_start StringSetEmpty
+StringSetEmpty: ; 0x02021A4C
push {r4, lr}
add r4, r0, #0x0
bne _02021A56
@@ -195,8 +195,8 @@ _02021A62:
_02021A6C: .word 0xB6F8D2EC
_02021A70: .word 0x0000FFFF
- thumb_func_start FUN_02021A74
-FUN_02021A74: ; 0x02021A74
+ thumb_func_start StringCopy
+StringCopy: ; 0x02021A74
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
@@ -240,8 +240,8 @@ _02021AC0:
nop
_02021AC8: .word 0xB6F8D2EC
- thumb_func_start FUN_02021ACC
-FUN_02021ACC: ; 0x02021ACC
+ thumb_func_start StringDup
+StringDup: ; 0x02021ACC
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
@@ -258,11 +258,11 @@ _02021AE6:
ldrh r0, [r5, #0x2]
add r1, r4, #0x0
add r0, r0, #0x1
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
beq _02021AFA
add r1, r5, #0x0
- bl FUN_02021A74
+ bl StringCopy
_02021AFA:
add r0, r4, #0x0
pop {r3-r5, pc}
@@ -312,7 +312,7 @@ _02021B48:
str r0, [sp, #0x4]
_02021B4C:
add r0, r5, #0x0
- bl FUN_02021A4C
+ bl StringSetEmpty
cmp r4, #0x0
beq _02021B74
mov r0, #0x0
@@ -680,7 +680,7 @@ _02021DEC:
blt _02021DDE
_02021DF6:
add r0, r7, #0x0
- bl FUN_02021A4C
+ bl StringSetEmpty
ldrh r0, [r5, #0x2]
cmp r4, r0
bge _02021E20
@@ -843,8 +843,8 @@ _02021F22:
.balign 4
_02021F28: .word 0xB6F8D2EC
- thumb_func_start FUN_02021F2C
-FUN_02021F2C: ; 0x02021F2C
+ thumb_func_start String_c_str
+String_c_str: ; 0x02021F2C
push {r4, lr}
add r4, r0, #0x0
bne _02021F36
diff --git a/arm9/asm/unk_020238C4.s b/arm9/asm/unk_020238C4.s
index c443494a..339a723f 100644
--- a/arm9/asm/unk_020238C4.s
+++ b/arm9/asm/unk_020238C4.s
@@ -109,7 +109,7 @@ FUN_0202395C: ; 0x0202395C
_02023970:
add r0, r5, #0x0
add r1, r4, #0x0
- bl StringCopy
+ bl CopyU16StringArray
pop {r3-r5, pc}
.balign 4
@@ -144,7 +144,7 @@ FUN_020239A0: ; 0x020239A0
push {r3-r5, lr}
add r5, r0, #0x0
mov r0, #0x8
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r5, #0x0
add r1, r4, #0x0
diff --git a/arm9/asm/unk_02023AC4.s b/arm9/asm/unk_02023AC4.s
index 0a50978c..ea875620 100644
--- a/arm9/asm/unk_02023AC4.s
+++ b/arm9/asm/unk_02023AC4.s
@@ -61,7 +61,7 @@ FUN_02023AF4: ; 0x02023AF4
push {r3-r5, lr}
add r5, r0, #0x0
mov r0, #0x18
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0x0
add r4, r0, #0x0
bl FUN_02021E28
@@ -232,7 +232,7 @@ FUN_02023C04: ; 0x02023C04
add r6, r0, #0x0
add r1, r5, #0x0
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl DestroyMsgData
pop {r4-r6, pc}
diff --git a/arm9/asm/unk_02025658.s b/arm9/asm/unk_02025658.s
index 9cf2dfa2..f793f121 100644
--- a/arm9/asm/unk_02025658.s
+++ b/arm9/asm/unk_02025658.s
@@ -100,7 +100,7 @@ FUN_020256DC: ; 0x020256DC
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x8
- bl StringCopy
+ bl CopyU16StringArray
add r0, r6, #0x0
bl FUN_020239CC
strb r0, [r5, #0x4]
diff --git a/arm9/asm/unk_0202A1E0.s b/arm9/asm/unk_0202A1E0.s
index c63116ff..de15c8f9 100644
--- a/arm9/asm/unk_0202A1E0.s
+++ b/arm9/asm/unk_0202A1E0.s
@@ -907,7 +907,7 @@ FUN_0202A798: ; 0x0202A798
lsr r1, r1, #0x1f
add r1, #0x16
add r2, #0x8
- bl DecryptCopyString
+ bl ReadMsgDataIntoU16Array
ldr r0, [sp, #0x0]
bl DestroyMsgData
b _0202A7FC
diff --git a/arm9/asm/unk_0202B034.s b/arm9/asm/unk_0202B034.s
index 2708bee6..8c604e39 100644
--- a/arm9/asm/unk_0202B034.s
+++ b/arm9/asm/unk_0202B034.s
@@ -62,7 +62,7 @@ _0202B07E:
str r0, [sp, #0x10]
mov r0, #0xb
mov r1, #0x0
- bl FUN_020219F4
+ bl String_ctor
mov r2, #0x5a
add r6, r0, #0x0
ldr r1, [sp, #0x14]
@@ -206,7 +206,7 @@ _0202B1C6:
str r2, [r0, r1]
beq _0202B1DC
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
_0202B1DC:
add sp, #0x18
pop {r3-r7, pc}
diff --git a/arm9/asm/unk_0202B870.s b/arm9/asm/unk_0202B870.s
index f37f255e..b9a2a3b1 100644
--- a/arm9/asm/unk_0202B870.s
+++ b/arm9/asm/unk_0202B870.s
@@ -288,7 +288,7 @@ _0202BA38:
ldr r0, [sp, #0x0]
bl FreeToHeap
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x4]
add sp, #0xc
pop {r4-r7, pc}
@@ -809,7 +809,7 @@ _0202BE14:
str r0, [r1, #0x8]
mov r0, #0x8
add r1, r7, #0x0
- bl FUN_020219F4
+ bl String_ctor
ldr r2, [r4, #0x0]
mov r1, #0xc
mul r1, r2
@@ -844,7 +844,7 @@ _0202BE74:
ldr r0, [r5, #0xc]
cmp r0, #0x0
beq _0202BE7E
- bl FUN_02021A20
+ bl String_dtor
_0202BE7E:
add r4, r4, #0x1
add r5, #0xc
diff --git a/arm9/asm/unk_02033874.s b/arm9/asm/unk_02033874.s
index a321f397..24d12a3a 100644
--- a/arm9/asm/unk_02033874.s
+++ b/arm9/asm/unk_02033874.s
@@ -285,7 +285,7 @@ _02033AA6:
add r1, r5, #0x0
bl FUN_020283C0
ldr r0, [sp, #0xc]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0x0
bl FUN_020239CC
add r3, r0, #0x0
@@ -327,7 +327,7 @@ _02033AEC:
_02033B22:
ldr r1, [sp, #0x4]
mov r0, #0x78
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
add r0, r7, #0x0
bl FUN_0202DFFC
@@ -339,7 +339,7 @@ _02033B22:
add r1, r5, #0x0
bl FUN_02028404
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0x0
bl FUN_02023A28
add r3, r0, #0x0
diff --git a/arm9/asm/unk_02033F50.s b/arm9/asm/unk_02033F50.s
index e56914e2..ff184e1c 100644
--- a/arm9/asm/unk_02033F50.s
+++ b/arm9/asm/unk_02033F50.s
@@ -175,12 +175,12 @@ _02033FA4:
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0x0
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x14]
bl FUN_0201BD5C
add r0, r4, #0x0
@@ -216,11 +216,11 @@ _02033FA4:
ldr r0, [sp, #0x10]
ldr r2, [sp, #0x14]
add r1, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x14]
add r0, r4, #0x0
add r1, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -230,7 +230,7 @@ _02033FA4:
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
diff --git a/arm9/asm/unk_02034188.s b/arm9/asm/unk_02034188.s
index 18161609..4116fa17 100644
--- a/arm9/asm/unk_02034188.s
+++ b/arm9/asm/unk_02034188.s
@@ -123,7 +123,7 @@ FUN_02034188: ; 0x02034188
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
bl FUN_0201BD5C
ldr r0, [sp, #0x10]
@@ -147,7 +147,7 @@ FUN_02034188: ; 0x02034188
ldr r0, [sp, #0xc]
mov r1, #0xf
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -157,7 +157,7 @@ FUN_02034188: ; 0x02034188
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
diff --git a/arm9/asm/unk_02035068.s b/arm9/asm/unk_02035068.s
index 6cb0e026..6fedcc3c 100644
--- a/arm9/asm/unk_02035068.s
+++ b/arm9/asm/unk_02035068.s
@@ -651,7 +651,7 @@ _02035526:
add r6, r0, #0x0
mov r0, #0x8
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, r5
add r1, #0x30
ldrb r1, [r1, #0x0]
@@ -660,7 +660,7 @@ _02035526:
lsl r2, r1, #0x3
ldr r1, _02035664 ; =UNK_020F2ACC
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r0, [sp, #0x1c]
ldr r0, [r0, #0xc]
@@ -672,7 +672,7 @@ _02035526:
ldr r2, [sp, #0x20]
add r0, r6, #0x0
add r1, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r2, r4, r5
add r2, #0x30
ldrb r2, [r2, #0x0]
@@ -680,9 +680,9 @@ _02035526:
add r1, r7, #0x0
bl FUN_020128A0
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0x0
bl FUN_0200AB18
b _020355A2
@@ -970,11 +970,11 @@ _0203576C:
cmp r6, #0x0
bne _020357D0
mov r1, #0x9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _020357D6
_020357D0:
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_020357D6:
mov r1, #0x0
add r7, r0, #0x0
@@ -988,17 +988,17 @@ _020357D6:
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
bl FUN_0200AA80
add r7, r0, #0x0
mov r0, #0x20
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x18]
ldr r0, [sp, #0x1c]
mov r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
cmp r6, #0x0
bne _02035834
@@ -1030,7 +1030,7 @@ _0203584C:
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x14]
add r0, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0xff
@@ -1043,9 +1043,9 @@ _0203584C:
str r1, [sp, #0x8]
bl FUN_0201BD84
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0x0
bl FUN_0200AB18
ldr r0, [sp, #0x1c]
diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s
index f4cea674..7d27a313 100644
--- a/arm9/asm/unk_020377F0.s
+++ b/arm9/asm/unk_020377F0.s
@@ -1828,7 +1828,7 @@ _020384F2:
cmp r0, #0x5
bne _02038514
ldr r0, [r1, #0x18]
- bl FUN_02021F2C
+ bl String_c_str
add r7, r0, #0x0
ldr r0, [r6, #0xc]
bl FUN_0202881C
@@ -1857,7 +1857,7 @@ _0203852E:
ldr r0, [r4, #0xc]
bl FUN_02077AC4
ldr r0, [r4, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FreeToHeap
mov r0, #0x1
@@ -1962,7 +1962,7 @@ FUN_020385CC: ; 0x020385CC
str r0, [r4, #0xc]
mov r0, #0xc
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x10]
cmp r6, #0x1
beq _02038620
diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s
index 92eed507..257d7199 100644
--- a/arm9/asm/unk_02038C78.s
+++ b/arm9/asm/unk_02038C78.s
@@ -1006,12 +1006,12 @@ _02038D68:
mov r0, #0x1
lsl r0, r0, #0xa
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x44]
mov r0, #0x1
lsl r0, r0, #0xa
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x48]
ldrb r0, [r4, #0x4]
add r0, r0, #0x1
@@ -1058,9 +1058,9 @@ _02038DD2:
ldr r0, [r4, #0x40]
bl FUN_0200AB18
ldr r0, [r4, #0x44]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x48]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
str r0, [r4, #0x0]
add r0, r4, #0x0
diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s
index e167517a..4e65221d 100644
--- a/arm9/asm/unk_020476CC.s
+++ b/arm9/asm/unk_020476CC.s
@@ -200,7 +200,7 @@ FUN_02047814: ; 0x02047814
str r0, [sp, #0x18]
mov r0, #0x8
add r1, r6, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0x0
ldr r0, [sp, #0x10]
bl FUN_020239CC
@@ -209,16 +209,16 @@ FUN_02047814: ; 0x02047814
eor r1, r2
ldr r0, [sp, #0x18]
add r2, r7, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0x0
- bl FUN_02021F2C
+ bl String_c_str
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0xf8
ldr r0, [r0, #0x0]
bl FUN_0202395C
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
bl DestroyMsgData
ldr r0, [sp, #0x10]
@@ -967,7 +967,7 @@ _02047E2C:
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x3c
- bl StringCopy
+ bl CopyU16StringArray
add r3, r5, #0x0
add r3, #0x28
add r5, #0x90
@@ -1244,7 +1244,7 @@ FUN_020480E4: ; 0x020480E4
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x3c
- bl StringCopy
+ bl CopyU16StringArray
add r3, r4, #0x0
add r3, #0x28
add r4, #0x90
diff --git a/arm9/asm/unk_02048120.s b/arm9/asm/unk_02048120.s
index bc9fa3d7..cf52f344 100644
--- a/arm9/asm/unk_02048120.s
+++ b/arm9/asm/unk_02048120.s
@@ -253,12 +253,12 @@ FUN_020482F4: ; 0x020482F4
lsl r0, r0, #0xa
mov r1, #0xb
add r7, r3, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0x0
mov r0, #0x1
lsl r0, r0, #0xa
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0xc
@@ -267,11 +267,11 @@ FUN_020482F4: ; 0x020482F4
ldr r0, [r5, #0x1c]
ldr r1, [sp, #0x10]
add r2, r6, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x20]
add r1, r4, #0x0
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x0
add r1, r4, #0x0
add r2, r0, #0x0
@@ -297,9 +297,9 @@ FUN_020482F4: ; 0x020482F4
lsr r3, r3, #0x18
bl FUN_0201BDE0
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4-r7, pc}
.balign 4
diff --git a/arm9/asm/unk_020484A8.s b/arm9/asm/unk_020484A8.s
index a9bc2e07..4fd3babb 100644
--- a/arm9/asm/unk_020484A8.s
+++ b/arm9/asm/unk_020484A8.s
@@ -400,7 +400,7 @@ FUN_020487E4: ; 0x020487E4
mov r1, #0xc7
mov r2, #0xf
mov r3, #0x20
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
str r0, [r4, #0x2c]
add r1, r4, #0x0
ldr r0, [r5, #0x8]
@@ -442,7 +442,7 @@ FUN_02048848: ; 0x02048848
push {r4, lr}
add r4, r0, #0x0
ldr r0, [r4, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x30]
bl FUN_0200DBFC
add r4, #0x1c
@@ -478,14 +478,14 @@ FUN_02048864: ; 0x02048864
add r1, r7, #0x0
mov r2, #0x10
mov r3, #0x4
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [r4, #0x2c]
add r0, r6, #0x0
bl FUN_0200AB18
b _020488B4
_020488AC:
mov r1, #0x12
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4, #0x2c]
_020488B4:
add r0, r7, #0x0
@@ -510,7 +510,7 @@ FUN_020488D4: ; 0x020488D4
ldr r0, [r4, #0x2c]
cmp r0, #0x0
beq _020488E4
- bl FUN_02021A20
+ bl String_dtor
_020488E4:
add r0, r4, #0x0
add r0, #0x1c
diff --git a/arm9/asm/unk_02048904.s b/arm9/asm/unk_02048904.s
index e902058a..a9dc8bae 100644
--- a/arm9/asm/unk_02048904.s
+++ b/arm9/asm/unk_02048904.s
@@ -1989,7 +1989,7 @@ _02049884:
bl NewMsgDataFromNarc
add r6, r0, #0x0
mov r1, #0x7c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4, #0x34]
add r0, r6, #0x0
bl DestroyMsgData
@@ -2026,7 +2026,7 @@ _020498DC:
cmp r0, #0x1
bne _0204992C
ldr r0, [r4, #0x34]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x0
str r0, [sp, #0x0]
mov r3, #0xb
diff --git a/arm9/asm/unk_0204CB20.s b/arm9/asm/unk_0204CB20.s
index d738b304..6c3ae7b3 100644
--- a/arm9/asm/unk_0204CB20.s
+++ b/arm9/asm/unk_0204CB20.s
@@ -6048,7 +6048,7 @@ _0204F96E:
add r4, r0, #0x0
mov r0, #0x14
mov r1, #0xf
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0x0
cmp r4, #0x0
bne _0204F988
@@ -6065,7 +6065,7 @@ _0204F990:
add r1, r4, #0x0
bl FUN_020311D0
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FreeToHeap
pop {r3-r5, pc}
@@ -6141,7 +6141,7 @@ _0204FA26:
mov r2, #0x1
bl FUN_02030BC4
ldr r0, [sp, #0x0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0204FA54 ; =UNK_021C5A68
mov r2, #0x1
ldr r1, [r0, #0x0]
diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s
index d2267271..c4024a82 100644
--- a/arm9/asm/unk_02050E48.s
+++ b/arm9/asm/unk_02050E48.s
@@ -393,7 +393,7 @@ _02051136:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -546,7 +546,7 @@ _0205126A:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xd
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -729,7 +729,7 @@ _020513D4:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x13
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -787,11 +787,11 @@ _0205142C:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xe
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x28]
ldr r1, [r4, #0x10]
ldr r2, [r4, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r4, #0x10]
add r0, r4, #0x0
bl FUN_020517C0
@@ -857,7 +857,7 @@ _020514BE:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x14
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -883,7 +883,7 @@ _02051508:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -942,7 +942,7 @@ _0205158C:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xf
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -966,11 +966,11 @@ _020515BA:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x12
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x28]
ldr r1, [r4, #0x10]
ldr r2, [r4, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r4, #0x10]
add r0, r4, #0x0
bl FUN_020517C0
@@ -1003,7 +1003,7 @@ _02051614:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -1021,11 +1021,11 @@ _02051642:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xe
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x28]
ldr r1, [r4, #0x10]
ldr r2, [r4, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r4, #0x10]
add r0, r4, #0x0
bl FUN_020517C0
@@ -1136,7 +1136,7 @@ _02051744:
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xf
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0xc]
add r0, r4, #0x0
bl FUN_020517C0
@@ -1317,11 +1317,11 @@ _0205188E:
str r0, [r4, #0x2c]
mov r0, #0xc8
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0xc]
mov r0, #0xc8
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x10]
add r0, r4, #0x0
add r0, #0x14
@@ -1438,9 +1438,9 @@ _020519BA:
ldr r0, [r4, #0x28]
bl FUN_0200AB18
ldr r0, [r4, #0xc]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x78]
bl FUN_020136C0
add r0, r4, #0x0
@@ -1724,7 +1724,7 @@ _02051BD6:
add r1, r0, #0x0
ldr r0, [sp, #0x18]
ldr r2, [r5, #0xc]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp, #0x0]
mov r0, #0xff
str r0, [sp, #0x4]
@@ -1744,7 +1744,7 @@ _02051BD6:
ldr r0, [r5, #0x2c]
ldr r2, [r5, #0xc]
mov r1, #0x15
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
lsl r0, r7, #0x4
str r0, [sp, #0x0]
mov r0, #0xff
@@ -1845,7 +1845,7 @@ _02051CE0:
ldr r0, [r5, #0x2c]
ldr r2, [r5, #0xc]
add r1, #0x16
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp, #0x0]
mov r0, #0xff
str r0, [sp, #0x4]
@@ -2134,17 +2134,17 @@ _02051EF2:
str r0, [r4, #0x1c]
mov r0, #0xc8
mov r1, #0x4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x0]
mov r0, #0xc8
mov r1, #0x4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x4]
ldrb r1, [r6, #0x3]
ldr r0, [r4, #0x1c]
ldr r2, [r4, #0x0]
add r1, r1, #0x2
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x24]
bl FUN_0202DFA4
add r2, r0, #0x0
@@ -2154,7 +2154,7 @@ _02051EF2:
ldr r0, [r4, #0x18]
ldr r1, [r4, #0x4]
ldr r2, [r4, #0x0]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0x0
ldr r0, [r5, #0x8]
add r1, #0x8
@@ -2196,9 +2196,9 @@ _02051F7C:
ldr r0, [r4, #0x18]
bl FUN_0200AB18
ldr r0, [r4, #0x0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x4]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
add r0, #0x8
mov r1, #0x0
diff --git a/arm9/asm/unk_020520AC.s b/arm9/asm/unk_020520AC.s
index a0ca6cae..f7eeac55 100644
--- a/arm9/asm/unk_020520AC.s
+++ b/arm9/asm/unk_020520AC.s
@@ -1878,7 +1878,7 @@ _02052DB8:
mov r1, #0xd7
_02052DBA:
add r0, r7, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
mov r0, #0x1
str r0, [sp, #0x0]
diff --git a/arm9/asm/unk_02052EE8.s b/arm9/asm/unk_02052EE8.s
index 0ebe0995..50e499bf 100644
--- a/arm9/asm/unk_02052EE8.s
+++ b/arm9/asm/unk_02052EE8.s
@@ -874,7 +874,7 @@ FUN_02053598: ; 0x02053598
add r4, r0, #0x0
mov r0, #0x8
mov r1, #0x59
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x0]
mov r1, #0x0
add r0, r4, #0x0
@@ -917,12 +917,12 @@ FUN_020535E0: ; 0x020535E0
ldr r0, [r4, #0x4]
cmp r0, #0x0
beq _020535F4
- bl FUN_02021A20
+ bl String_dtor
_020535F4:
ldr r0, [r4, #0x8]
cmp r0, #0x0
beq _020535FE
- bl FUN_02021A20
+ bl String_dtor
_020535FE:
pop {r4, pc}
diff --git a/arm9/asm/unk_0205CE48.s b/arm9/asm/unk_0205CE48.s
index 91a7f21a..ae71023f 100644
--- a/arm9/asm/unk_0205CE48.s
+++ b/arm9/asm/unk_0205CE48.s
@@ -1385,7 +1385,7 @@ FUN_0205D8B8: ; 0x0205D8B8
strh r0, [r4, #0x16]
mov r0, #0x80
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x10]
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
@@ -1473,7 +1473,7 @@ _0205D984:
add r0, r4, #0x0
bl FUN_02019178
ldr r0, [r4, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FreeToHeap
mov r0, #0x1
@@ -1782,7 +1782,7 @@ FUN_0205DBF0: ; 0x0205DBF0
strh r0, [r4, #0x16]
mov r0, #0x80
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x10]
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
diff --git a/arm9/asm/unk_02060CCC.s b/arm9/asm/unk_02060CCC.s
index 15021367..6dd43423 100644
--- a/arm9/asm/unk_02060CCC.s
+++ b/arm9/asm/unk_02060CCC.s
@@ -264,7 +264,7 @@ FUN_02060D90: ; 0x02060D90
mov r0, #0x40
mov r1, #0x4
str r3, [sp, #0x8]
- bl FUN_020219F4
+ bl String_ctor
add r1, r7, #0x0
add r4, r0, #0x0
bl FUN_02021E28
@@ -278,7 +278,7 @@ FUN_02060D90: ; 0x02060D90
add r2, r4, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r4-r7, pc}
.balign 4
@@ -318,7 +318,7 @@ FUN_02060E04: ; 0x02060E04
mov r0, #0x40
add r1, r3, #0x0
add r6, r2, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r6, #0x0
mov r1, #0x76
@@ -329,7 +329,7 @@ FUN_02060E04: ; 0x02060E04
mov r2, #0xb
bl FUN_02021EF0
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
.balign 4
@@ -372,7 +372,7 @@ FUN_02060E70: ; 0x02060E70
mov r1, #0x4
add r2, sp, #0x8
add r6, r3, #0x0
- bl GetSpeciesName
+ bl GetSpeciesNameIntoArray
add r0, sp, #0x20
ldrb r0, [r0, #0x10]
add r1, r4, #0x0
@@ -396,7 +396,7 @@ FUN_02060EA0: ; 0x02060EA0
add r0, r2, #0x0
mov r1, #0x4
add r2, sp, #0x8
- bl GetSpeciesName
+ bl GetSpeciesNameIntoArray
mov r0, #0x2
str r0, [sp, #0x0]
mov r0, #0x1
@@ -427,7 +427,7 @@ FUN_02060ECC: ; 0x02060ECC
beq _02060F0C
mov r0, #0x40
add r1, r6, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r5, #0x0
mov r1, #0x76
@@ -438,7 +438,7 @@ FUN_02060ECC: ; 0x02060ECC
mov r2, #0xb
bl FUN_02021EF0
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
_02060F0C:
pop {r3-r7, pc}
.balign 4
@@ -944,7 +944,7 @@ FUN_020612AC: ; 0x020612AC
add r1, r0, #0x0
add r0, sp, #0x0
mov r2, #0xb
- bl StringCopyN
+ bl CopyU16StringArrayN
add r0, r5, #0x0
mov r1, #0x2
add r2, r4, #0x0
@@ -1546,7 +1546,7 @@ FUN_02061750: ; 0x02061750
mov r3, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x5
add sp, #0x8
pop {r4-r6, pc}
@@ -3371,7 +3371,7 @@ _0206257A:
add r5, r0, #0x0
mov r0, #0x8
mov r1, #0x4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
add r0, r5, #0x0
bl FUN_0202763C
@@ -3390,7 +3390,7 @@ _0206257A:
add r3, r6, #0x0
bl FUN_0200ABB4
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
bl FUN_0202769C
add r2, r0, #0x0
diff --git a/arm9/asm/unk_020625EC.s b/arm9/asm/unk_020625EC.s
index ecc0c89a..18aac665 100644
--- a/arm9/asm/unk_020625EC.s
+++ b/arm9/asm/unk_020625EC.s
@@ -930,23 +930,23 @@ FUN_02062C80: ; 0x02062C80
str r0, [r5, #0x30]
ldr r1, [r5, #0x0]
mov r0, #0x4c
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x34]
ldr r0, [r5, #0x2c]
mov r1, #0xd
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x38]
ldr r0, [r5, #0x2c]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x3c]
ldr r0, [r5, #0x2c]
mov r1, #0x24
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x40]
ldr r0, [r5, #0x2c]
mov r1, #0xe
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x44]
ldrb r0, [r5, #0x18]
mov r4, #0x0
@@ -957,13 +957,13 @@ _02062CDA:
ldrb r1, [r5, #0x19]
ldr r0, [r5, #0x2c]
add r1, r1, r4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, #0x64]
ldrb r1, [r5, #0x19]
ldr r0, [r5, #0x2c]
add r1, #0x17
add r1, r1, r4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, #0x7c]
ldrb r0, [r5, #0x18]
add r4, r4, #0x1
@@ -977,7 +977,7 @@ _02062D02:
add r1, r4, #0x0
ldr r0, [r5, #0x2c]
add r1, #0xf
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, #0x48]
add r4, r4, #0x1
add r6, r6, #0x4
@@ -989,7 +989,7 @@ _02062D1A:
add r1, r4, #0x0
ldr r0, [r5, #0x2c]
add r1, #0x25
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r1, r6, #0x0
add r1, #0x94
add r4, r4, #0x1
@@ -1011,7 +1011,7 @@ _02062D40:
add r0, r5, #0x0
add r0, #0x94
ldr r0, [r0, #0x0]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #0x1
add r5, r5, #0x4
cmp r4, #0x3
@@ -1020,7 +1020,7 @@ _02062D40:
add r4, r6, #0x0
_02062D56:
ldr r0, [r4, #0x48]
- bl FUN_02021A20
+ bl String_dtor
add r5, r5, #0x1
add r4, r4, #0x4
cmp r5, #0x7
@@ -1032,9 +1032,9 @@ _02062D56:
add r4, r6, #0x0
_02062D6E:
ldr r0, [r4, #0x64]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x7c]
- bl FUN_02021A20
+ bl String_dtor
ldrb r0, [r6, #0x18]
add r5, r5, #0x1
add r4, r4, #0x4
@@ -1042,15 +1042,15 @@ _02062D6E:
blt _02062D6E
_02062D84:
ldr r0, [r6, #0x44]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x40]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x3c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x38]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x34]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x30]
bl FUN_0200AB18
ldr r0, [r6, #0x2c]
@@ -1734,7 +1734,7 @@ _02063318:
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x44]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x30]
mov r1, #0x0
str r0, [sp, #0x0]
@@ -1764,7 +1764,7 @@ _02063318:
lsl r2, r2, #0x2
add r2, r4, r2
ldr r2, [r2, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x0
ldr r1, [r4, #0x34]
add r2, r0, #0x0
diff --git a/arm9/asm/unk_02064E4C.s b/arm9/asm/unk_02064E4C.s
index 07144d43..dfe117fb 100644
--- a/arm9/asm/unk_02064E4C.s
+++ b/arm9/asm/unk_02064E4C.s
@@ -7,7 +7,7 @@
FUN_02064E4C: ; 0x02064E4C
push {r4, lr}
add r4, r2, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x0
add r1, r4, #0x0
add r2, r0, #0x0
diff --git a/arm9/asm/unk_02064E90.s b/arm9/asm/unk_02064E90.s
index 9fd903dd..50239ea5 100644
--- a/arm9/asm/unk_02064E90.s
+++ b/arm9/asm/unk_02064E90.s
@@ -356,7 +356,7 @@ FUN_02065178: ; 0x02065178
add r0, #0x8
mov r2, #0x8
add r5, r3, #0x0
- bl StringCopyN
+ bl CopyU16StringArrayN
ldr r0, [sp, #0x10]
str r5, [r4, #0x1c]
str r0, [r4, #0x20]
diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s
index ec33a0a1..ba17b570 100644
--- a/arm9/asm/unk_020653EC.s
+++ b/arm9/asm/unk_020653EC.s
@@ -1538,7 +1538,7 @@ FUN_02065FF8: ; 0x02065FF8
ldr r0, [r0, #0x8]
cmp r0, #0x0
beq _0206600E
- bl FUN_02021A4C
+ bl StringSetEmpty
_0206600E:
pop {r3, pc}
@@ -1554,7 +1554,7 @@ FUN_02066010: ; 0x02066010
_0206601E:
mov r0, #0x8
add r1, r7, #0x0
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0xc
mul r1, r4
add r1, r5, r1
@@ -1586,7 +1586,7 @@ _02066050:
ldr r0, [r0, #0x8]
cmp r0, #0x0
beq _02066060
- bl FUN_02021A20
+ bl String_dtor
_02066060:
add r0, r4, #0x1
lsl r0, r0, #0x18
@@ -1868,21 +1868,21 @@ FUN_02066270: ; 0x02066270
str r0, [r6, r1]
ldr r1, [r6, #0x0]
mov r0, #0x80
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x45
lsl r1, r1, #0x2
str r0, [r6, r1]
sub r1, #0x8
ldr r0, [r6, r1]
mov r1, #0x4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x46
lsl r1, r1, #0x2
str r0, [r6, r1]
sub r1, #0xc
ldr r0, [r6, r1]
mov r1, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x47
lsl r1, r1, #0x2
str r0, [r6, r1]
@@ -1894,7 +1894,7 @@ _020662CC:
lsl r0, r0, #0x2
ldr r0, [r6, r0]
add r1, r4, #0x6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, r7]
add r4, r4, #0x1
add r5, r5, #0x4
@@ -1912,7 +1912,7 @@ FUN_020662E4: ; 0x020662E4
lsl r7, r7, #0x4
_020662F0:
ldr r0, [r5, r7]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #0x1
add r5, r5, #0x4
cmp r4, #0x6
@@ -1920,15 +1920,15 @@ _020662F0:
mov r0, #0x47
lsl r0, r0, #0x2
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x46
lsl r0, r0, #0x2
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #0x2
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x11
lsl r0, r0, #0x4
ldr r0, [r6, r0]
@@ -2076,7 +2076,7 @@ _02066426:
mov r0, #0x45
lsl r0, r0, #0x2
ldr r0, [r5, r0]
- bl FUN_02021A4C
+ bl StringSetEmpty
mov r0, #0x1
str r0, [sp, #0x0]
mov r0, #0x2
@@ -2101,7 +2101,7 @@ _02066426:
add r2, #0x10
ldr r1, [r5, r1]
ldr r2, [r3, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x45
lsl r0, r0, #0x2
ldr r2, [r5, r0]
diff --git a/arm9/asm/unk_0206ABC4.s b/arm9/asm/unk_0206ABC4.s
index cbc45e09..bddf1314 100644
--- a/arm9/asm/unk_0206ABC4.s
+++ b/arm9/asm/unk_0206ABC4.s
@@ -61,18 +61,18 @@ _0206AC08:
bne _0206AC26
ldr r1, [sp, #0xc]
add r0, r5, #0x0
- bl StringCopy
+ bl CopyU16StringArray
b _0206AC3E
_0206AC26:
ldr r0, [sp, #0x10]
ldr r1, [r4, #0x18]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
add r1, r5, #0x0
mov r2, #0x8
bl FUN_02021EF0
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
_0206AC3E:
ldr r0, [sp, #0x0]
ldr r2, [sp, #0x4]
@@ -269,7 +269,7 @@ _0206AD84:
ldr r3, [sp, #0x8]
mov r0, #0x1a
lsr r2, r2, #0x2
- bl FUN_0200A648
+ bl ReadMsgData_NewNarc_ExistingString
b _0206ADC2
_0206ADB6:
ldrh r0, [r4, #0x0]
@@ -286,7 +286,7 @@ _0206ADC2:
cmp r0, r5
bne _0206ADD6
ldr r0, [sp, #0x4]
- bl FUN_02021A4C
+ bl StringSetEmpty
_0206ADD6:
add sp, #0x18
pop {r3-r7, pc}
diff --git a/arm9/asm/unk_0206B16C.s b/arm9/asm/unk_0206B16C.s
index f454c441..e5b5bebe 100644
--- a/arm9/asm/unk_0206B16C.s
+++ b/arm9/asm/unk_0206B16C.s
@@ -73,7 +73,7 @@ _0206B1E0:
add r0, r6, #0x0
add r1, r5, #0x6
add r2, r4, #0x0
- bl DecryptCopyString
+ bl ReadMsgDataIntoU16Array
add r5, r5, #0x1
add r4, #0x28
cmp r5, #0x12
diff --git a/arm9/asm/unk_0206BF90.s b/arm9/asm/unk_0206BF90.s
index 2522d3a7..bab339f2 100644
--- a/arm9/asm/unk_0206BF90.s
+++ b/arm9/asm/unk_0206BF90.s
@@ -993,7 +993,7 @@ FUN_0206C66C: ; 0x0206C66C
bl FUN_0202398C
add r1, r0, #0x0
add r0, r4, #0x0
- bl StringCopy
+ bl CopyU16StringArray
add r0, r6, #0x0
bl FUN_020239BC
str r0, [r4, #0x10]
diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s
index 81a90ae3..30db1fe3 100644
--- a/arm9/asm/unk_0206C700.s
+++ b/arm9/asm/unk_0206C700.s
@@ -182,7 +182,7 @@ FUN_0206C700: ; 0x0206C700
mov r0, #0x5
lsl r0, r0, #0x6
add r1, r5, #0x0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x10]
add r0, r5, #0x0
mov r1, #0x30
@@ -2663,12 +2663,12 @@ FUN_0206DD6C: ; 0x0206DD6C
sub sp, #0xc
add r4, r0, #0x0
ldr r0, [r4, #0x8]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
ldr r0, [r4, #0xc]
ldr r1, [r4, #0x10]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
bl FreeToHeap
ldr r0, [r4, #0x4]
diff --git a/arm9/asm/unk_0206E2F0.s b/arm9/asm/unk_0206E2F0.s
index fb9f1e67..6d87f0fa 100644
--- a/arm9/asm/unk_0206E2F0.s
+++ b/arm9/asm/unk_0206E2F0.s
@@ -194,7 +194,7 @@ FUN_0206E3F8: ; 0x0206E3F8
bne _0206E428
add r0, r6, #0x0
mov r1, #0x63
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
b _0206E4FA
_0206E428:
@@ -204,7 +204,7 @@ _0206E428:
bne _0206E454
add r0, r6, #0x0
mov r1, #0x61
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
add r0, r7, #0x0
bl FUN_0206E3E8
@@ -223,7 +223,7 @@ _0206E454:
bne _0206E47E
add r0, r6, #0x0
mov r1, #0x5c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
add r0, r7, #0x0
bl FUN_0206E3A8
@@ -242,7 +242,7 @@ _0206E47E:
bne _0206E4C0
add r0, r6, #0x0
mov r1, #0x5d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
add r0, r7, #0x0
bl FUN_0206E3C8
@@ -271,7 +271,7 @@ _0206E4C0:
bne _0206E4EA
add r0, r6, #0x0
mov r1, #0x39
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
add r0, r7, #0x0
bl FUN_0206E39C
@@ -295,9 +295,9 @@ _0206E4FA:
ldr r1, [sp, #0x8]
add r0, r4, #0x0
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FUN_0200AB18
add r0, r6, #0x0
@@ -326,7 +326,7 @@ _0206E52E:
add r4, r0, #0x0
mov r1, #0x38
add r2, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0x0
bl DestroyMsgData
pop {r3-r7, pc}
@@ -339,7 +339,7 @@ _0206E54C:
add r4, r0, #0x0
mov r1, #0x6f
add r2, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0x0
bl DestroyMsgData
pop {r3-r7, pc}
@@ -355,7 +355,7 @@ _0206E56A:
add r4, r0, #0x0
add r0, r7, #0x0
mov r1, #0x24
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
ldr r2, [sp, #0x0]
add r0, r4, #0x0
@@ -364,9 +364,9 @@ _0206E56A:
add r0, r4, #0x0
add r1, r5, #0x0
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FUN_0200AB18
add r0, r7, #0x0
diff --git a/arm9/asm/unk_0206E5B4.s b/arm9/asm/unk_0206E5B4.s
index f7c743f6..09f8865a 100644
--- a/arm9/asm/unk_0206E5B4.s
+++ b/arm9/asm/unk_0206E5B4.s
@@ -762,7 +762,7 @@ FUN_0206E768: ; 0x0206E768
add r6, r0, #0x0
add r1, r4, #0x0
add r2, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl DestroyMsgData
pop {r4-r6, pc}
@@ -781,7 +781,7 @@ FUN_0206E790: ; 0x0206E790
add r6, r0, #0x0
add r1, r4, #0x0
add r2, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl DestroyMsgData
pop {r4-r6, pc}
diff --git a/arm9/asm/unk_0206F3FC.s b/arm9/asm/unk_0206F3FC.s
index 4534dc1b..45c546c9 100644
--- a/arm9/asm/unk_0206F3FC.s
+++ b/arm9/asm/unk_0206F3FC.s
@@ -933,7 +933,7 @@ _0206FA4C:
ldr r0, [r4, r1]
ldr r2, [r4, r2]
mov r1, #0x69
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x14
pop {r4, pc}
_0206FA78:
@@ -979,23 +979,23 @@ FUN_0206FAA4: ; 0x0206FAA4
lsl r7, r7, #0x8
_0206FAD8:
ldr r0, [r5, r7]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #0x1
add r5, #0x2c
cmp r4, #0x6
blo _0206FAD8
ldr r0, _0206FB40 ; =0x000006A4
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0206FB44 ; =0x000006A8
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r7, _0206FB48 ; =0x000006AC
mov r5, #0x0
add r4, r6, #0x0
_0206FAFC:
ldr r0, [r4, r7]
- bl FUN_02021A20
+ bl String_dtor
add r5, r5, #0x1
add r4, r4, #0x4
cmp r5, #0x13
@@ -1453,7 +1453,7 @@ _0206FEC2:
_0206FEF6:
mov r0, #0xb
mov r1, #0xc
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, r7]
add r4, r4, #0x1
add r5, #0x2c
@@ -1462,13 +1462,13 @@ _0206FEF6:
mov r0, #0x1
lsl r0, r0, #0x8
mov r1, #0xc
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0206FF68 ; =0x000006A4
str r0, [r6, r1]
mov r0, #0x1
lsl r0, r0, #0x8
mov r1, #0xc
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0206FF6C ; =0x000006A8
mov r5, #0x0
str r0, [r6, r1]
@@ -1477,7 +1477,7 @@ _0206FEF6:
_0206FF2A:
mov r0, #0x20
mov r1, #0xc
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, r7]
add r5, r5, #0x1
add r4, r4, #0x4
@@ -4381,7 +4381,7 @@ _02071630:
ldr r0, _02071748 ; =0x0000069C
mov r1, #0xb8
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
ldr r0, _02071738 ; =0x000005A4
mov r1, #0x3
@@ -4404,9 +4404,9 @@ _02071630:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -5038,7 +5038,7 @@ _02071B34:
ldr r0, _02071C3C ; =0x0000069C
mov r1, #0x40
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
add r0, r6, #0x0
bl FUN_020690E4
@@ -5065,9 +5065,9 @@ _02071B34:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -5562,7 +5562,7 @@ _02071FA0:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl FUN_020690E4
add r2, r0, #0x0
@@ -5586,7 +5586,7 @@ _02071FA0:
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r4, #0xb
b _02072054
_02071FF2:
@@ -5595,7 +5595,7 @@ _02071FF2:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl FUN_020690E4
add r2, r0, #0x0
@@ -5623,7 +5623,7 @@ _02071FF2:
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r4, #0x9
b _02072054
_02072044:
@@ -5632,7 +5632,7 @@ _02072044:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r4, #0xb
_02072054:
add r0, r5, r7
@@ -5838,7 +5838,7 @@ _020721B0:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _02072282
_0207220C:
ldr r0, _020722A8 ; =0x000005A4
@@ -5873,7 +5873,7 @@ _02072246:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
@@ -5893,7 +5893,7 @@ _02072246:
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
_02072282:
mov r0, #0x89
lsl r0, r0, #0x2
@@ -5990,7 +5990,7 @@ FUN_0207230C: ; 0x0207230C
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0x0
bl FUN_020690E4
add r2, r0, #0x0
@@ -6014,7 +6014,7 @@ FUN_0207230C: ; 0x0207230C
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _020723D6
_02072388:
ldr r0, _02072410 ; =0x000005A4
@@ -6030,7 +6030,7 @@ _02072388:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
@@ -6050,7 +6050,7 @@ _02072388:
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
_020723D6:
mov r0, #0x89
lsl r0, r0, #0x2
diff --git a/arm9/asm/unk_02072548.s b/arm9/asm/unk_02072548.s
index 062862b7..2592e6ed 100644
--- a/arm9/asm/unk_02072548.s
+++ b/arm9/asm/unk_02072548.s
@@ -300,91 +300,91 @@ FUN_02072720: ; 0x02072720
add r2, #0x10
ldr r2, [r4, r2]
mov r1, #0x91
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x92
ldr r0, [r4, r2]
add r2, #0x14
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x93
ldr r0, [r4, r2]
add r2, #0x18
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0xa0
ldr r0, [r4, r2]
add r2, #0x1c
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0xa1
ldr r0, [r4, r2]
add r2, #0x20
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x94
ldr r0, [r4, r2]
add r2, #0x24
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x95
ldr r0, [r4, r2]
add r2, #0x28
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x96
ldr r0, [r4, r2]
add r2, #0x2c
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x97
ldr r0, [r4, r2]
add r2, #0x30
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x98
ldr r0, [r4, r2]
add r2, #0x34
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x99
ldr r0, [r4, r2]
add r2, #0x38
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x9a
ldr r0, [r4, r2]
add r2, #0x3c
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x9b
ldr r0, [r4, r2]
add r2, #0x40
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0x9a
ldr r0, [r4, r2]
add r2, #0x44
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _020727F8 ; =0x0000069C
mov r1, #0xa6
ldr r0, [r4, r2]
add r2, #0x48
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r4, pc}
.balign 4
_020727F8: .word 0x0000069C
@@ -399,7 +399,7 @@ FUN_020727FC: ; 0x020727FC
add r1, r4, #0x0
ldr r0, [r5, r0]
add r1, #0x9c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -416,9 +416,9 @@ FUN_020727FC: ; 0x020727FC
add r1, #0xc
ldr r1, [r2, r1]
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r3-r7, pc}
nop
_02072840: .word 0x0000069C
@@ -576,7 +576,7 @@ FUN_0207295C: ; 0x0207295C
ldr r0, [r5, r0]
ldr r2, [r5, r2]
mov r1, #0x2a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r4-r6, pc}
_0207297E:
ldr r1, _020729CC ; =0x00000B25
@@ -587,7 +587,7 @@ _0207297E:
ldr r0, _020729D0 ; =0x0000069C
mov r1, #0x25
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0x0
add r0, r6, #0x0
bl FUN_020690E4
@@ -603,9 +603,9 @@ _0207297E:
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
nop
_020729C4: .word 0x000005A4
@@ -648,7 +648,7 @@ FUN_02072A00: ; 0x02072A00
lsl r2, r4, #0x3
ldrh r1, [r1, r2]
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
add r0, r7, #0x0
bl FUN_020690E4
@@ -667,9 +667,9 @@ FUN_02072A00: ; 0x02072A00
add r2, #0x60
ldr r1, [r1, r2]
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r3-r7, pc}
nop
_02072A4C: .word 0x0000069C
@@ -727,7 +727,7 @@ _02072A9C:
ldr r0, [r5, r0]
ldr r2, [r5, r2]
mov r1, #0x1b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
mov r0, #0xff
@@ -751,7 +751,7 @@ _02072ADC:
ldr r0, [r5, r0]
ldr r2, [r5, r2]
mov r1, #0x1c
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
mov r0, #0xff
@@ -1477,7 +1477,7 @@ FUN_02073094: ; 0x02073094
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _02073150 ; =0x000001EB
ldr r1, _02073154 ; =0x000006A8
ldrb r2, [r5, r2]
@@ -1511,7 +1511,7 @@ _020730FE:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _0207315C ; =0x000001FB
ldr r1, _02073154 ; =0x000006A8
ldrb r2, [r5, r2]
@@ -1573,7 +1573,7 @@ _0207317A:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02073198:
mov r3, #0x0
str r3, [sp, #0x0]
@@ -1644,7 +1644,7 @@ _02073202:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02073220:
add r0, r5, #0x0
bl FUN_0207322C
@@ -1773,14 +1773,14 @@ _02073318:
ldr r0, _0207335C ; =0x0000069C
mov r1, #0xb2
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
b _02073332
_02073326:
ldr r0, _0207335C ; =0x0000069C
mov r1, #0xb3
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
_02073332:
mov r1, #0x0
@@ -1795,7 +1795,7 @@ _02073332:
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x14
@@ -1829,21 +1829,21 @@ _0207338C:
ldr r0, _020733DC ; =0x0000069C
mov r1, #0xaf
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
b _020733B4
_0207339A:
ldr r0, _020733DC ; =0x0000069C
mov r1, #0xb0
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
b _020733B4
_020733A8:
ldr r0, _020733DC ; =0x0000069C
mov r1, #0xb1
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
_020733B4:
mov r1, #0x0
@@ -1858,7 +1858,7 @@ _020733B4:
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r7
bl FUN_02019220
add sp, #0x14
@@ -1886,12 +1886,12 @@ FUN_020733E4: ; 0x020733E4
bne _0207340E
ldr r0, [r5, r0]
mov r1, #0xb5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _02073416
_0207340E:
ldr r0, [r5, r0]
mov r1, #0xb4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_02073416:
mov r1, #0x0
add r5, r0, #0x0
@@ -1906,7 +1906,7 @@ _02073416:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x10
@@ -1935,7 +1935,7 @@ FUN_02073448: ; 0x02073448
add r6, #0xa9
ldr r0, [r5, r0]
add r1, r6, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
b _02073490
_02073476:
@@ -1943,13 +1943,13 @@ _02073476:
bne _02073486
ldr r0, [r5, r0]
mov r1, #0xa7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
b _02073490
_02073486:
ldr r0, [r5, r0]
mov r1, #0xa8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
_02073490:
mov r1, #0x0
@@ -1964,7 +1964,7 @@ _02073490:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r7
bl FUN_02019220
add sp, #0x10
@@ -2056,7 +2056,7 @@ _0207356C:
ldr r1, [sp, #0x14]
ldr r0, [r5, r0]
add r1, #0xb9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
mov r1, #0x0
str r4, [sp, #0x0]
@@ -2071,11 +2071,11 @@ _0207356C:
add r3, r1, #0x0
bl FUN_0201BD84
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02073630 ; =0x0000069C
mov r1, #0xbf
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
mov r0, #0x0
str r0, [sp, #0x0]
@@ -2097,9 +2097,9 @@ _0207356C:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
ldr r2, [sp, #0x1c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r1, _02073638 ; =0x000006A4
mov r0, #0x0
ldr r1, [r5, r1]
@@ -2162,7 +2162,7 @@ FUN_0207363C: ; 0x0207363C
ldr r0, _020736E8 ; =0x0000069C
mov r1, #0xc0
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0xc]
mov r0, #0x0
str r0, [sp, #0x10]
@@ -2187,7 +2187,7 @@ _0207366E:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
ldr r2, [sp, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, _020736F0 ; =0x000006A4
mov r0, #0x0
ldr r1, [r5, r1]
@@ -2216,7 +2216,7 @@ _0207366E:
cmp r0, #0x6
blo _0207366E
ldr r0, [sp, #0xc]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x95
lsl r0, r0, #0x2
add r0, r5, r0
diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s
index cb5d7a22..e30d5da6 100644
--- a/arm9/asm/unk_02073DA8.s
+++ b/arm9/asm/unk_02073DA8.s
@@ -206,7 +206,7 @@ FUN_02073EEC: ; 0x02073EEC
add r2, #0xc
ldr r2, [r5, r2]
mov r1, #0x51
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl FUN_020690E4
add r2, r0, #0x0
@@ -222,7 +222,7 @@ FUN_02073EEC: ; 0x02073EEC
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _02074018
_02073F66:
ldr r0, [r5, r0]
@@ -252,7 +252,7 @@ _02073F66:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r6, #0x0
bl FUN_020690E4
add r2, r0, #0x0
@@ -280,7 +280,7 @@ _02073F66:
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, _0207404C ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r5, r1]
@@ -303,7 +303,7 @@ _0207400A:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02074018:
mov r0, #0x89
lsl r0, r0, #0x2
@@ -2394,7 +2394,7 @@ FUN_02075118: ; 0x02075118
add r2, #0x8
ldr r2, [r4, r2]
mov r1, #0x81
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _02075194 ; =0x00000B25
ldrb r0, [r4, r0]
add r0, #0x16
@@ -2411,7 +2411,7 @@ _0207515C:
add r2, #0x8
ldr r2, [r4, r2]
mov r1, #0x82
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _02075194 ; =0x00000B25
mov r1, #0x7
strb r1, [r4, r0]
diff --git a/arm9/asm/unk_0207550C.s b/arm9/asm/unk_0207550C.s
index 7d275208..08f186df 100644
--- a/arm9/asm/unk_0207550C.s
+++ b/arm9/asm/unk_0207550C.s
@@ -418,7 +418,7 @@ _0207586C:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x41
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -426,15 +426,15 @@ _0207586C:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075890:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x5b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -442,15 +442,15 @@ _02075890:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_020758B4:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x43
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -458,15 +458,15 @@ _020758B4:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_020758D8:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x44
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -474,15 +474,15 @@ _020758D8:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_020758FC:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x42
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -490,15 +490,15 @@ _020758FC:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075920:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x49
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -506,15 +506,15 @@ _02075920:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075944:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4a
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -522,15 +522,15 @@ _02075944:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075968:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x47
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -538,15 +538,15 @@ _02075968:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_0207598C:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -560,15 +560,15 @@ _0207598C:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_020759BE:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -582,15 +582,15 @@ _020759BE:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_020759F0:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -604,15 +604,15 @@ _020759F0:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075A22:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -626,15 +626,15 @@ _02075A22:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075A54:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -648,15 +648,15 @@ _02075A54:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075A86:
ldr r0, _02075B94 ; =0x0000069C
mov r1, #0x4b
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -670,16 +670,16 @@ _02075A86:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075AB8:
ldr r0, _02075B94 ; =0x0000069C
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -693,16 +693,16 @@ _02075AB8:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075AEC:
ldr r0, _02075B94 ; =0x0000069C
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -716,16 +716,16 @@ _02075AEC:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075B20:
ldr r0, _02075B94 ; =0x0000069C
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -739,16 +739,16 @@ _02075B20:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075B54:
ldr r0, _02075B94 ; =0x0000069C
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -762,9 +762,9 @@ _02075B54:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075B88:
ldr r0, _02075B94 ; =0x0000069C
@@ -777,7 +777,7 @@ _02075B98:
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -791,16 +791,16 @@ _02075B98:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075BCA:
ldr r0, _02075C50 ; =0x0000069C
add r5, #0x6e
ldr r0, [r4, r0]
add r1, r5, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -814,15 +814,15 @@ _02075BCA:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075BFE:
ldr r0, _02075C50 ; =0x0000069C
mov r1, #0x48
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -836,9 +836,9 @@ _02075BFE:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
pop {r4-r6, pc}
_02075C30:
ldr r2, _02075C50 ; =0x0000069C
@@ -846,7 +846,7 @@ _02075C30:
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r4-r6, pc}
_02075C40:
ldr r2, _02075C50 ; =0x0000069C
@@ -854,7 +854,7 @@ _02075C40:
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r4-r6, pc}
.balign 4
_02075C50: .word 0x0000069C
@@ -1261,7 +1261,7 @@ FUN_02075F60: ; 0x02075F60
sub r0, #0x6a
ldr r0, [r5, r0]
mov r1, #0x46
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0x0
b _02075FDA
_02075FBC:
@@ -1270,14 +1270,14 @@ _02075FBC:
sub r0, #0x6a
ldr r0, [r5, r0]
mov r1, #0x47
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0x0
b _02075FDA
_02075FCE:
sub r0, #0x6a
ldr r0, [r5, r0]
mov r1, #0x40
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0x0
_02075FDA:
ldr r0, [sp, #0x8]
@@ -1311,9 +1311,9 @@ _02075FDA:
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x8]
bl FUN_0207C2D4
add r4, r0, #0x0
@@ -1528,7 +1528,7 @@ _020761C2:
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -1578,7 +1578,7 @@ _02076212:
ldr r0, _020763E4 ; =0x0000069C
mov r1, #0x46
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
add r0, r5, #0x0
bl FUN_020690E4
@@ -1594,9 +1594,9 @@ _02076212:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r6, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r7, _020763E0 ; =0x00000B25
ldr r3, _020763F4 ; =0x0000070E
ldrb r5, [r4, r7]
@@ -1869,7 +1869,7 @@ FUN_0207640C: ; 0x0207640C
sub r1, #0x6c
ldr r0, [r5, r1]
mov r1, #0xc1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0x0
add r0, r4, #0x0
bl FUN_020690E4
@@ -1901,9 +1901,9 @@ FUN_0207640C: ; 0x0207640C
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FUN_0207C2D4
add r4, r0, #0x0
@@ -2101,7 +2101,7 @@ _020766BA:
ldr r0, _02076880 ; =0x0000069C
mov r1, #0x34
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2109,9 +2109,9 @@ _020766BA:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2148,7 +2148,7 @@ _02076724:
ldr r0, _02076880 ; =0x0000069C
mov r1, #0xc2
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2156,9 +2156,9 @@ _02076724:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2207,7 +2207,7 @@ _020767A4:
ldr r0, _02076880 ; =0x0000069C
mov r1, #0x3d
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r2, #0x6a
lsl r2, r2, #0x4
add r5, r0, #0x0
@@ -2223,9 +2223,9 @@ _020767A4:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2345,7 +2345,7 @@ _020768E6:
ldr r0, _02076948 ; =0x0000069C
mov r1, #0x3c
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2353,9 +2353,9 @@ _020768E6:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2382,7 +2382,7 @@ FUN_02076950: ; 0x02076950
ldr r0, _02076998 ; =0x0000069C
mov r1, #0x3b
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2390,9 +2390,9 @@ FUN_02076950: ; 0x02076950
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2420,7 +2420,7 @@ FUN_020769A4: ; 0x020769A4
ldr r0, _020769EC ; =0x0000069C
mov r1, #0x37
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2428,9 +2428,9 @@ FUN_020769A4: ; 0x020769A4
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2460,7 +2460,7 @@ FUN_020769FC: ; 0x020769FC
ldr r0, _02076A40 ; =0x0000069C
mov r1, #0x3a
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2468,9 +2468,9 @@ FUN_020769FC: ; 0x020769FC
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2495,7 +2495,7 @@ FUN_02076A48: ; 0x02076A48
ldr r0, _02076A90 ; =0x0000069C
mov r1, #0x34
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2503,9 +2503,9 @@ FUN_02076A48: ; 0x02076A48
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2642,7 +2642,7 @@ _02076B68:
ldr r0, _02076C80 ; =0x0000069C
mov r1, #0x3d
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2650,9 +2650,9 @@ _02076B68:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2671,7 +2671,7 @@ _02076BB2:
ldr r0, _02076C80 ; =0x0000069C
mov r1, #0x3f
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2679,9 +2679,9 @@ _02076BB2:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2700,7 +2700,7 @@ _02076BF2:
ldr r0, _02076C80 ; =0x0000069C
mov r1, #0x34
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2708,9 +2708,9 @@ _02076BF2:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2730,7 +2730,7 @@ _02076C34:
ldr r0, _02076C80 ; =0x0000069C
mov r1, #0x3e
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2738,9 +2738,9 @@ _02076C34:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2813,7 +2813,7 @@ _02076CDC:
ldr r0, _02076D34 ; =0x0000069C
mov r1, #0x3c
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r5, r0, #0x0
lsl r1, r1, #0x4
@@ -2821,9 +2821,9 @@ _02076CDC:
add r1, r1, #0x4
ldr r1, [r4, r1]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
@@ -2865,7 +2865,7 @@ FUN_02076D3C: ; 0x02076D3C
ldr r0, _02076DCC ; =0x0000069C
mov r1, #0x3d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r2, #0x6a
lsl r2, r2, #0x4
add r4, r0, #0x0
@@ -2881,9 +2881,9 @@ FUN_02076D3C: ; 0x02076D3C
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2916,7 +2916,7 @@ FUN_02076DD4: ; 0x02076DD4
ldr r0, _02076E1C ; =0x0000069C
mov r1, #0x3b
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2924,9 +2924,9 @@ FUN_02076DD4: ; 0x02076DD4
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2954,7 +2954,7 @@ FUN_02076E28: ; 0x02076E28
ldr r0, _02076E70 ; =0x0000069C
mov r1, #0x37
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -2962,9 +2962,9 @@ FUN_02076E28: ; 0x02076E28
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -2994,7 +2994,7 @@ FUN_02076E80: ; 0x02076E80
ldr r0, _02076EC8 ; =0x0000069C
mov r1, #0x3a
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -3002,9 +3002,9 @@ FUN_02076E80: ; 0x02076E80
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -3032,7 +3032,7 @@ FUN_02076ED4: ; 0x02076ED4
ldr r0, _02076F1C ; =0x0000069C
mov r1, #0x34
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x6a
add r4, r0, #0x0
lsl r1, r1, #0x4
@@ -3040,9 +3040,9 @@ FUN_02076ED4: ; 0x02076ED4
add r1, r1, #0x4
ldr r1, [r5, r1]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
add r0, r5, #0x0
mvn r1, r1
@@ -3149,7 +3149,7 @@ FUN_02076FB0: ; 0x02076FB0
add r1, r6, #0x0
ldr r0, [r5, r0]
add r1, #0xa2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
@@ -3163,9 +3163,9 @@ FUN_02076FB0: ; 0x02076FB0
add r1, #0x8
ldr r1, [r5, r1]
add r2, r7, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
cmp r4, #0x0
ldr r1, _02077038 ; =0x000006F8
bne _0207701C
@@ -3402,7 +3402,7 @@ _020771F6:
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02077204:
mov r1, #0x0
add r0, r5, #0x0
@@ -3457,7 +3457,7 @@ FUN_02077248: ; 0x02077248
ldr r0, [r4, r0]
ldr r2, [r4, r2]
mov r1, #0x7f
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, _020772BC ; =0x00000B25
add r0, r4, #0x0
ldrb r1, [r4, r1]
@@ -3470,7 +3470,7 @@ _02077286:
ldr r0, [r4, r0]
ldr r2, [r4, r2]
mov r1, #0x80
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _020772BC ; =0x00000B25
mov r1, #0x7
strb r1, [r4, r0]
diff --git a/arm9/asm/unk_020772F0.s b/arm9/asm/unk_020772F0.s
index f97f92fc..9f83df6f 100644
--- a/arm9/asm/unk_020772F0.s
+++ b/arm9/asm/unk_020772F0.s
@@ -971,7 +971,7 @@ FUN_020777D4: ; 0x020777D4
mov r0, #0x17
lsl r0, r0, #0x4
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
b _0207781A
_020777FE:
@@ -984,14 +984,14 @@ _020777FE:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
add r1, #0x12
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
_0207781A:
ldr r0, [r4, #0x18]
add r1, r6, #0x0
- bl FUN_02021A74
+ bl StringCopy
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x18]
add r4, #0x1c
add r1, r4, #0x0
@@ -1005,13 +1005,13 @@ _02077836:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x58
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
ldr r0, [r4, #0x18]
add r1, r5, #0x0
- bl FUN_02021A74
+ bl StringCopy
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x18]
add r4, #0x1c
add r1, r4, #0x0
@@ -1112,12 +1112,12 @@ _0207790E:
add r1, r4, #0x0
add r0, r4, r0
add r1, #0xd8
- bl StringCopy
+ bl CopyU16StringArray
add r0, r5, #0x0
add r1, r4, #0x0
add r0, #0x1c
add r1, #0xd8
- bl StringCopy
+ bl CopyU16StringArray
add r1, r4, #0x0
ldr r0, [r5, #0x18]
add r1, #0xd8
@@ -1126,7 +1126,7 @@ _02077932:
mov r0, #0x61
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r7, #0xe7
mov r6, #0x0
add r5, r4, #0x0
@@ -1215,16 +1215,16 @@ _020779C2:
ldr r0, [r4, r0]
cmp r0, #0x0
beq _02077A0C
- bl FUN_02021A20
+ bl String_dtor
_02077A0C:
mov r0, #0x5e
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x5f
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x5d
lsl r0, r0, #0x2
ldr r0, [r4, r0]
@@ -1282,7 +1282,7 @@ FUN_02077A84: ; 0x02077A84
ldr r1, [sp, #0x0]
strh r0, [r4, #0x1c]
add r0, r5, #0x1
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
mov r1, #0x0
str r1, [r4, #0x44]
@@ -1310,7 +1310,7 @@ _02077AD2:
bl ErrorHandling
_02077ADA:
ldr r0, [r4, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl FreeToHeap
pop {r4, pc}
@@ -1679,7 +1679,7 @@ _02077DD8:
ldr r2, [r2, r3]
ldr r1, [r4, r1]
mov r3, #0x12
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
mov r1, #0x5e
lsl r1, r1, #0x2
str r0, [r4, r1]
@@ -1690,14 +1690,14 @@ _02077DD8:
ldr r1, [r4, r1]
mov r2, #0x8
mov r3, #0x12
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
mov r1, #0x5f
lsl r1, r1, #0x2
str r0, [r4, r1]
sub r1, #0x10
ldr r0, [r4, r1]
mov r1, #0x7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x61
lsl r1, r1, #0x2
str r0, [r4, r1]
@@ -1768,7 +1768,7 @@ FUN_02077E90: ; 0x02077E90
beq _02077FA0
mov r0, #0xc8
mov r1, #0x12
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0x0
mov r0, #0x6
mov r1, #0x0
@@ -1873,14 +1873,14 @@ _02077F7E:
ldr r1, [r5, r1]
ldr r2, [r4, #0x44]
mov r3, #0x12
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
mov r1, #0x6
lsl r1, r1, #0x6
str r0, [r5, r1]
mov r0, #0x1
str r0, [r5, #0x14]
add r0, r7, #0x0
- bl FUN_02021A20
+ bl String_dtor
_02077FA0:
add sp, #0x14
pop {r4-r7, pc}
@@ -3264,7 +3264,7 @@ _02078A90:
add r0, r5, #0x0
add r0, #0xd8
add r1, r5, r1
- bl StringCopy
+ bl CopyU16StringArray
mov r0, #0xc
str r0, [sp, #0x0]
mov r2, #0x0
@@ -3729,7 +3729,7 @@ FUN_02078E7C: ; 0x02078E7C
str r2, [sp, #0x1c]
str r3, [sp, #0x20]
mov r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x28]
ldrh r1, [r7, #0x0]
ldr r0, _02078F6C ; =0x0000FFFF
@@ -3837,7 +3837,7 @@ _02078F58:
bne _02078EB4
_02078F62:
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x3c
pop {r4-r7, pc}
.balign 4
@@ -3916,7 +3916,7 @@ _02078FD0:
blo _02078FD0
mov r0, #0x15
mov r1, #0x12
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
mov r5, #0x0
_02079012:
@@ -3955,7 +3955,7 @@ _02079012:
cmp r5, #0x3
blo _02079012
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x38
pop {r3-r7, pc}
nop
diff --git a/arm9/asm/unk_02079C70.s b/arm9/asm/unk_02079C70.s
index 17374c00..d9fbf726 100644
--- a/arm9/asm/unk_02079C70.s
+++ b/arm9/asm/unk_02079C70.s
@@ -674,25 +674,25 @@ FUN_0207A1A0: ; 0x0207A1A0
str r0, [r4, r1]
mov r0, #0xc
mov r1, #0x13
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x25
lsl r1, r1, #0x4
str r0, [r4, r1]
mov r0, #0xc
mov r1, #0x13
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x95
lsl r1, r1, #0x2
str r0, [r4, r1]
mov r0, #0x8
mov r1, #0x13
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x96
lsl r1, r1, #0x2
str r0, [r4, r1]
mov r0, #0x80
mov r1, #0x13
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x1a
lsl r1, r1, #0x6
str r0, [r4, r1]
@@ -706,7 +706,7 @@ FUN_0207A1A0: ; 0x0207A1A0
str r0, [r4, r1]
mov r0, #0x8
mov r1, #0x13
- bl FUN_020219F4
+ bl String_ctor
ldr r2, _0207A260 ; =0x00000684
str r0, [r4, r2]
mov r0, #0x93
@@ -749,22 +749,22 @@ FUN_0207A264: ; 0x0207A264
mov r0, #0x25
lsl r0, r0, #0x4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x95
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x96
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x1a
lsl r0, r0, #0x6
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0207A2D4 ; =0x00000684
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.balign 4
_0207A2C4: .word 0x00000688
@@ -1858,7 +1858,7 @@ FUN_0207AB0C: ; 0x0207AB0C
add r2, #0xc
ldr r2, [r7, r2]
mov r1, #0xb
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0207AEB0 ; =0x0000067C
mov r1, #0x0
ldr r0, [r7, r0]
@@ -1871,13 +1871,13 @@ FUN_0207AB0C: ; 0x0207AB0C
add r2, r2, #0x4
ldr r1, [r7, r1]
ldr r2, [r7, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r2, _0207AEAC ; =0x00000674
mov r1, #0x0
ldr r0, [r7, r2]
add r2, #0xc
ldr r2, [r7, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0207AEB0 ; =0x0000067C
mov r1, #0x0
ldr r0, [r7, r0]
@@ -1890,13 +1890,13 @@ FUN_0207AB0C: ; 0x0207AB0C
add r2, r2, #0x4
ldr r1, [r7, r1]
ldr r2, [r7, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r2, _0207AEAC ; =0x00000674
mov r1, #0xe
ldr r0, [r7, r2]
add r2, #0xc
ldr r2, [r7, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0207AEB0 ; =0x0000067C
mov r1, #0x0
ldr r0, [r7, r0]
@@ -1909,7 +1909,7 @@ FUN_0207AB0C: ; 0x0207AB0C
add r2, r2, #0x4
ldr r1, [r7, r1]
ldr r2, [r7, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
mov r1, #0x6
mov r2, #0x0
diff --git a/arm9/asm/unk_0207D5BC.s b/arm9/asm/unk_0207D5BC.s
index 4893d340..ecdfaaa3 100644
--- a/arm9/asm/unk_0207D5BC.s
+++ b/arm9/asm/unk_0207D5BC.s
@@ -330,7 +330,7 @@ FUN_0207D768: ; 0x0207D768
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0xc1
add r0, r5, #0x0
add r1, r5, r4
@@ -346,7 +346,7 @@ _0207D7CA:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _0207D7FC ; =0x00050600
add r0, r5, #0x0
add r1, r5, r4
@@ -390,7 +390,7 @@ FUN_0207D800: ; 0x0207D800
ldr r0, _0207D894 ; =0x00000674
mov r1, #0x3
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x0
add r4, r0, #0x0
add r2, r6, #0x0
@@ -410,9 +410,9 @@ FUN_0207D800: ; 0x0207D800
ldr r0, [r5, r1]
add r1, r1, #0x4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x0
mov r2, #0x1a
str r1, [sp, #0x0]
@@ -456,16 +456,16 @@ FUN_0207D8A0: ; 0x0207D8A0
ldr r0, _0207D920 ; =0x00000674
mov r1, #0x5
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0x0
ldr r1, _0207D91C ; =0x0000067C
add r2, r4, #0x0
ldr r0, [r5, r1]
add r1, r1, #0x4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
b _0207D8F2
_0207D8E4:
ldr r2, _0207D920 ; =0x00000674
@@ -473,7 +473,7 @@ _0207D8E4:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0207D8F2:
mov r2, #0x81
lsl r2, r2, #0x2
@@ -633,7 +633,7 @@ FUN_0207DA1C: ; 0x0207DA1C
add r3, #0xc
add r1, r2, #0x0
ldr r2, [r5, r3]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r2, r5, #0x4
lsl r1, r4, #0x4
add r1, r2, r1
@@ -654,7 +654,7 @@ FUN_0207DA48: ; 0x0207DA48
add r6, r2, #0x0
ldr r0, [r5, r0]
add r7, r3, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0x0
add r0, sp, #0x10
ldrb r0, [r0, #0x10]
@@ -672,9 +672,9 @@ FUN_0207DA48: ; 0x0207DA48
ldr r0, [r5, r1]
add r1, r1, #0x4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r3-r7, pc}
.balign 4
@@ -696,7 +696,7 @@ FUN_0207DA94: ; 0x0207DA94
add r3, #0xc
add r1, r2, #0x0
ldr r2, [r4, r3]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x1a
lsl r1, r1, #0x6
mov r0, #0x0
@@ -951,7 +951,7 @@ FUN_0207DB78: ; 0x0207DB78
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x2
str r0, [sp, #0x0]
mov r2, #0xff
@@ -1204,7 +1204,7 @@ _0207DEFE:
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0207DF0C:
mov r1, #0x2a
lsl r1, r1, #0x4
@@ -1760,16 +1760,16 @@ FUN_0207E200: ; 0x0207E200
ldr r0, _0207E498 ; =0x00000674
mov r1, #0x7d
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
ldr r1, _0207E494 ; =0x0000067C
add r2, r5, #0x0
ldr r0, [r4, r1]
add r1, r1, #0x4
ldr r1, [r4, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -1789,7 +1789,7 @@ FUN_0207E200: ; 0x0207E200
ldrb r1, [r4, r1]
ldr r2, [r4, r2]
add r5, r0, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0x0
bl DestroyMsgData
mov r1, #0x91
@@ -1881,7 +1881,7 @@ _0207E4C6:
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -1897,7 +1897,7 @@ _0207E4C6:
add r2, #0xc
ldr r2, [r4, r2]
add r1, #0xa6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0xff
@@ -1935,7 +1935,7 @@ _0207E4C6:
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -2220,7 +2220,7 @@ _0207E7BC:
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -2236,7 +2236,7 @@ _0207E7BC:
add r2, #0xc
ldr r2, [r4, r2]
add r1, #0xa6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0xff
@@ -2282,7 +2282,7 @@ FUN_0207E840: ; 0x0207E840
ldr r0, _0207E994 ; =0x00000674
mov r1, #0xba
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x0
add r4, r0, #0x0
ldr r2, _0207E998 ; =0x0000067C
@@ -2299,9 +2299,9 @@ FUN_0207E840: ; 0x0207E840
ldr r0, [r5, r1]
add r1, r1, #0x4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x1a
lsl r1, r1, #0x6
mov r0, #0x0
@@ -2333,7 +2333,7 @@ FUN_0207E840: ; 0x0207E840
ldr r0, _0207E994 ; =0x00000674
mov r1, #0xb9
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
mov r0, #0x0
add r1, r6, #0x0
@@ -2359,11 +2359,11 @@ FUN_0207E840: ; 0x0207E840
add r0, #0x10
bl FUN_0201BDE0
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0207E994 ; =0x00000674
mov r1, #0xb8
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x0
ldr r2, _0207E998 ; =0x0000067C
add r6, r0, #0x0
@@ -2386,9 +2386,9 @@ FUN_0207E840: ; 0x0207E840
ldr r0, [r5, r1]
add r1, r1, #0x4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0x1a
lsl r1, r1, #0x6
mov r0, #0x0
@@ -2452,7 +2452,7 @@ FUN_0207E9A0: ; 0x0207E9A0
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -2473,7 +2473,7 @@ FUN_0207E9A0: ; 0x0207E9A0
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r4, r1]
@@ -2541,7 +2541,7 @@ _0207EA88:
ldr r0, [r5, r2]
sub r2, #0x8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x2
str r0, [sp, #0x0]
mov r0, #0xff
@@ -2564,7 +2564,7 @@ _0207EA88:
add r2, #0xc
ldr r2, [r5, r2]
mov r1, #0x87
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0x10
mov r2, #0x1a
str r3, [sp, #0x0]
@@ -2604,7 +2604,7 @@ _0207EB10:
add r2, #0xc
ldr r2, [r5, r2]
mov r1, #0x99
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x1a
lsl r1, r1, #0x6
mov r0, #0x0
@@ -2683,7 +2683,7 @@ FUN_0207EB64: ; 0x0207EB64
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0207EBE0
_0207EBD2:
mov r0, #0x1
@@ -2711,7 +2711,7 @@ _0207EBE0:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0207EC1C
_0207EC0E:
mov r0, #0x1
@@ -2739,7 +2739,7 @@ _0207EC1C:
ldr r2, [r5, r2]
add r1, r4, #0x0
add r6, r0, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x91
lsl r1, r1, #0x2
ldr r1, [r5, r1]
@@ -2952,7 +2952,7 @@ _0207EDF6:
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _0207EE28 ; =0x00010200
add r0, r5, #0x0
add r1, r4, #0x0
@@ -2993,7 +2993,7 @@ FUN_0207EE2C: ; 0x0207EE2C
ldr r2, [r5, r2]
add r1, r4, #0x0
add r6, r0, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
mov r2, #0x1a
str r1, [sp, #0x0]
@@ -3104,7 +3104,7 @@ _0207EF10:
ldr r0, [r4, r2]
add r2, #0xc
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0x0
mov r2, #0x1a
str r3, [sp, #0x0]
diff --git a/arm9/asm/unk_0207FD00.s b/arm9/asm/unk_0207FD00.s
index 1f17ee0a..9e7642aa 100644
--- a/arm9/asm/unk_0207FD00.s
+++ b/arm9/asm/unk_0207FD00.s
@@ -478,13 +478,13 @@ FUN_020800E0: ; 0x020800E0
bgt _02080106
ldr r1, [r5, #0x0]
mov r0, #0x48
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x18]
add r4, #0x18
ldr r0, [r5, #0x4]
ldr r2, [r5, #0x18]
add r1, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02080106:
pop {r3-r5, pc}
@@ -497,17 +497,17 @@ FUN_02080108: ; 0x02080108
mov r0, #0x9
ldr r1, [r5, #0x0]
lsl r0, r0, #0x6
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
mov r0, #0x9
ldr r1, [r5, #0x0]
lsl r0, r0, #0x6
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x20]
ldr r0, [r5, #0x4]
add r1, r6, #0x0
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0xc]
mov r1, #0x94
mov r2, #0x0
@@ -606,9 +606,9 @@ FUN_02080108: ; 0x02080108
ldr r0, [r5, #0x8]
ldr r1, [r5, #0x20]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r4-r6, pc}
@@ -621,17 +621,17 @@ FUN_02080228: ; 0x02080228
mov r0, #0x12
ldr r1, [r4, #0x0]
lsl r0, r0, #0x4
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0x0
mov r0, #0x12
ldr r1, [r4, #0x0]
lsl r0, r0, #0x4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x20]
ldr r0, [r4, #0x4]
add r1, r6, #0x0
add r2, r5, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0xc]
mov r1, #0x94
mov r2, #0x0
@@ -764,9 +764,9 @@ _0208036E:
ldr r0, [r4, #0x8]
ldr r1, [r4, #0x20]
add r2, r5, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r4-r6, pc}
.balign 4
@@ -781,17 +781,17 @@ FUN_02080384: ; 0x02080384
ldr r1, [r5, #0x0]
lsl r0, r0, #0x2
add r6, r2, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
mov r0, #0x5a
ldr r1, [r5, #0x0]
lsl r0, r0, #0x2
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x20]
ldr r0, [r5, #0x4]
add r1, r7, #0x0
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
cmp r6, #0x0
ldr r0, [r5, #0xc]
bne _02080418
@@ -881,9 +881,9 @@ _02080478:
ldr r0, [r5, #0x8]
ldr r1, [r5, #0x20]
add r2, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r3-r7, pc}
@@ -894,7 +894,7 @@ FUN_0208048C: ; 0x0208048C
add r4, r0, #0x0
ldr r1, [r4, #0x0]
mov r0, #0x48
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x28]
ldr r0, [r4, #0xc]
mov r1, #0x46
@@ -1152,7 +1152,7 @@ _02080654:
ldrh r1, [r2, r1]
ldr r0, [r4, #0x4]
ldr r2, [r4, #0x28]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add sp, #0x10
pop {r3-r7, pc}
.balign 4
@@ -1164,7 +1164,7 @@ FUN_02080678: ; 0x02080678
add r5, r0, #0x0
ldr r1, [r5, #0x0]
mov r0, #0x48
- bl FUN_020219F4
+ bl String_ctor
mov r6, #0x0
str r0, [r5, #0x30]
add r4, r6, #0x0
@@ -1184,7 +1184,7 @@ _02080698:
ldrh r1, [r1, r2]
ldr r0, [r5, #0x4]
ldr r2, [r5, #0x30]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r4-r6, pc}
nop
_020806B0: .word UNK_020FBB48
@@ -1201,7 +1201,7 @@ FUN_020806B4: ; 0x020806B4
mov r0, #0x12
ldr r1, [r5, #0x0]
lsl r0, r0, #0x4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x38]
cmp r4, #0x5
bgt _020806D8
@@ -1222,7 +1222,7 @@ _020806E8:
_020806EA:
ldr r0, [r5, #0x4]
ldr r2, [r5, #0x38]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r3-r5, pc}
thumb_func_start FUN_020806F4
@@ -1733,7 +1733,7 @@ FUN_02080AE4: ; 0x02080AE4
add r2, r4, #0x0
bl SetBoxMonData
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x8
pop {r4-r6, pc}
diff --git a/arm9/asm/unk_02080C38.s b/arm9/asm/unk_02080C38.s
index a5d57357..e61283e8 100644
--- a/arm9/asm/unk_02080C38.s
+++ b/arm9/asm/unk_02080C38.s
@@ -137,7 +137,7 @@ _02080CB4:
bl FUN_02081214
str r0, [r4, #0x0]
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x0]
bl FUN_02081DC4
ldr r0, [r4, #0x4]
@@ -933,7 +933,7 @@ _02081304:
bl FUN_02069B88
mov r0, #0x8
mov r1, #0x14
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0x0
add r1, #0xe8
str r0, [r1, #0x0]
@@ -941,7 +941,7 @@ _02081304:
add r0, #0xe8
ldr r0, [r0, #0x0]
ldr r1, [r6, #0xc]
- bl FUN_02021A74
+ bl StringCopy
ldr r0, [r6, #0x10]
bl FUN_020239CC
mov r1, #0x42
@@ -1073,7 +1073,7 @@ _0208143C:
bne _02081454
add r0, r7, #0x0
mov r1, #0x14
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0x0
add r1, #0xe8
str r0, [r1, #0x0]
@@ -1173,7 +1173,7 @@ _020814FE:
add r0, r5, #0x0
add r0, #0xe8
ldr r0, [r0, #0x0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
add r0, #0xf8
ldr r0, [r0, #0x0]
@@ -1787,7 +1787,7 @@ _020819A2:
add r0, r6, #0x0
add r0, #0xe8
ldr r0, [r0, #0x0]
- bl FUN_02021A4C
+ bl StringSetEmpty
add r1, r6, #0x0
add r1, #0xe8
ldr r1, [r1, #0x0]
diff --git a/arm9/asm/unk_020828BC.s b/arm9/asm/unk_020828BC.s
index 46ed9c3c..3c10063d 100644
--- a/arm9/asm/unk_020828BC.s
+++ b/arm9/asm/unk_020828BC.s
@@ -801,11 +801,11 @@ _02082D9A:
bl NewMsgDataFromNarc
ldrh r1, [r7, #0x16]
add r4, r0, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0x0
ldrh r1, [r7, #0x18]
add r0, r4, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
add r0, r6, #0x0
mov r1, #0x76
@@ -816,9 +816,9 @@ _02082D9A:
mov r1, #0x90
bl SetMonData
add r0, r5, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0x0
bl DestroyMsgData
add r2, sp, #0x1c
diff --git a/arm9/asm/unk_020834D0.s b/arm9/asm/unk_020834D0.s
index ec1b74b2..6b8df55d 100644
--- a/arm9/asm/unk_020834D0.s
+++ b/arm9/asm/unk_020834D0.s
@@ -547,7 +547,7 @@ FUN_02083888: ; 0x02083888
add r4, #0xe8
lsl r7, r0, #0x2
ldr r0, [r4, r7]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r0, [r4, r7]
add r1, r5, #0x4
bl FUN_02021E28
diff --git a/arm9/asm/unk_020854E0.s b/arm9/asm/unk_020854E0.s
index b2b33741..bb8ca455 100644
--- a/arm9/asm/unk_020854E0.s
+++ b/arm9/asm/unk_020854E0.s
@@ -296,7 +296,7 @@ FUN_020856F0: ; 0x020856F0
str r0, [r6, #0x8]
mov r0, #0x8
add r1, r5, #0x0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0x10]
add r0, r4, #0x0
bl FUN_020257C4
@@ -355,7 +355,7 @@ FUN_0208578C: ; 0x0208578C
ldr r0, [r4, #0x10]
cmp r0, #0x0
beq _0208579A
- bl FUN_02021A20
+ bl String_dtor
_0208579A:
add r0, r4, #0x0
bl FreeToHeap
diff --git a/arm9/asm/unk_02086414.s b/arm9/asm/unk_02086414.s
index ef50db3f..d479cde5 100644
--- a/arm9/asm/unk_02086414.s
+++ b/arm9/asm/unk_02086414.s
@@ -579,11 +579,11 @@ FUN_020867EC: ; 0x020867EC
add r5, r0, #0x0
add r0, r7, #0x0
add r1, r4, #0x0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
mov r0, #0xff
mov r1, #0x47
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
ldr r0, [sp, #0x10]
bl FUN_020690E4
@@ -594,7 +594,7 @@ FUN_020867EC: ; 0x020867EC
ldr r2, [sp, #0x14]
add r0, r5, #0x0
add r1, r4, #0x0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0x0
str r3, [sp, #0x0]
str r6, [sp, #0x4]
@@ -607,9 +607,9 @@ FUN_020867EC: ; 0x020867EC
add r0, r7, #0x0
bl DestroyMsgData
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0x0
bl FUN_0200AB18
add r0, r6, #0x0
@@ -670,14 +670,14 @@ FUN_02086878: ; 0x02086878
_020868DE:
add r0, r7, #0x0
add r1, r4, #0x2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0x0
ldr r0, [r5, #0x44]
add r1, r6, #0x0
add r2, r4, #0x0
bl FUN_020128A0
add r0, r6, #0x0
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #0x1
cmp r4, #0x2
blt _020868DE
diff --git a/arm9/asm/unk_02089498.s b/arm9/asm/unk_02089498.s
index 46c25eab..2eb6f36e 100644
--- a/arm9/asm/unk_02089498.s
+++ b/arm9/asm/unk_02089498.s
@@ -549,12 +549,12 @@ _020898B8:
mov r0, #0x1
ldr r1, [r5, #0x0]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x10]
ldr r0, [r5, #0x18]
ldr r2, [r5, #0x10]
add r1, r7, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r3, r6, #0x0
str r3, [sp, #0x0]
str r4, [sp, #0x4]
@@ -568,7 +568,7 @@ _020898B8:
cmp r4, #0x0
bne _02089918
ldr r0, [r5, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x8]
add r0, r0, #0x1
str r0, [r5, #0x8]
@@ -585,7 +585,7 @@ _02089920:
cmp r0, #0x0
bne _02089950
ldr r0, [r5, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x8]
add r0, r0, #0x1
str r0, [r5, #0x8]
diff --git a/arm9/asm/unk_02089960.s b/arm9/asm/unk_02089960.s
index 1b59c6dc..95a710e9 100644
--- a/arm9/asm/unk_02089960.s
+++ b/arm9/asm/unk_02089960.s
@@ -476,12 +476,12 @@ _02089CE8:
mov r0, #0x1
ldr r1, [r5, #0x0]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x14]
ldr r0, [r5, #0x1c]
ldr r2, [r5, #0x14]
add r1, r7, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r3, r6, #0x0
str r3, [sp, #0x0]
str r4, [sp, #0x4]
@@ -495,7 +495,7 @@ _02089CE8:
cmp r4, #0x0
bne _02089D48
ldr r0, [r5, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0xc]
add r0, r0, #0x1
str r0, [r5, #0xc]
@@ -512,7 +512,7 @@ _02089D50:
cmp r0, #0x0
bne _02089D80
ldr r0, [r5, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0xc]
add r0, r0, #0x1
str r0, [r5, #0xc]
diff --git a/arm9/asm/unk_02089D90.s b/arm9/asm/unk_02089D90.s
index e1f4f7cb..b4903516 100644
--- a/arm9/asm/unk_02089D90.s
+++ b/arm9/asm/unk_02089D90.s
@@ -122,7 +122,7 @@ FUN_02089D90: ; 0x02089D90
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
bl FUN_0201BD5C
ldr r2, _02089F20 ; =UNK_020FF3E4
@@ -146,7 +146,7 @@ FUN_02089D90: ; 0x02089D90
add r0, r6, #0x0
mov r1, #0x0
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -156,7 +156,7 @@ FUN_02089D90: ; 0x02089D90
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
diff --git a/arm9/asm/unk_02089F24.s b/arm9/asm/unk_02089F24.s
index 0990f54b..5ab705d4 100644
--- a/arm9/asm/unk_02089F24.s
+++ b/arm9/asm/unk_02089F24.s
@@ -126,7 +126,7 @@ FUN_02089F24: ; 0x02089F24
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
bl FUN_0201BD5C
ldr r2, _0208A0B4 ; =UNK_020FF3E4
@@ -150,7 +150,7 @@ FUN_02089F24: ; 0x02089F24
add r0, r6, #0x0
mov r1, #0x1
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -160,7 +160,7 @@ FUN_02089F24: ; 0x02089F24
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
@@ -295,7 +295,7 @@ _0208A0C8:
mov r0, #0x6
lsl r0, r0, #0x6
add r1, r4, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
bl FUN_0201BD5C
ldr r2, _0208A254 ; =UNK_020FF440
@@ -319,7 +319,7 @@ _0208A0C8:
add r0, r7, #0x0
add r1, r6, #0x0
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -329,7 +329,7 @@ _0208A0C8:
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
diff --git a/arm9/asm/unk_0208A338.s b/arm9/asm/unk_0208A338.s
index 548990da..3c3bfb6c 100644
--- a/arm9/asm/unk_0208A338.s
+++ b/arm9/asm/unk_0208A338.s
@@ -19,12 +19,12 @@ FUN_0208A338: ; 0x0208A338
str r5, [r4, #0x0]
lsl r0, r0, #0x4
mov r1, #0x20
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x4]
mov r0, #0x19
lsl r0, r0, #0x4
mov r1, #0x20
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x8]
mov r0, #0x20
bl FUN_0200AA80
@@ -75,9 +75,9 @@ FUN_0208A3C8: ; 0x0208A3C8
ldr r0, [r4, #0x14]
bl FUN_020136C0
ldr r0, [r4, #0x4]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x8]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0xc]
bl FUN_0200AB18
ldr r0, [r4, #0x10]
@@ -444,15 +444,15 @@ FUN_0208A6D4: ; 0x0208A6D4
ldr r0, [r5, #0x10]
beq _0208A6F4
ldr r2, [r5, #0x4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0xc]
ldr r1, [r5, #0x8]
ldr r2, [r5, #0x4]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _0208A6FA
_0208A6F4:
ldr r2, [r5, #0x8]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0208A6FA:
add r0, r4, #0x0
bl FUN_02019048
@@ -564,7 +564,7 @@ _0208A7D2:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x8]
add r1, #0x9
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp, #0x0]
mov r0, #0xff
str r0, [sp, #0x4]
@@ -652,7 +652,7 @@ _0208A882:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x8]
add r1, #0xe
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp, #0x0]
mov r0, #0xff
str r0, [sp, #0x4]
diff --git a/arm9/asm/unk_0208A998.s b/arm9/asm/unk_0208A998.s
index f4bc14ea..2c02879a 100644
--- a/arm9/asm/unk_0208A998.s
+++ b/arm9/asm/unk_0208A998.s
@@ -177,7 +177,7 @@ _0208A9C6:
mov r0, #0x6
lsl r0, r0, #0x6
mov r1, #0x0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0x0
bl FUN_0201BD5C
ldr r0, [sp, #0x10]
@@ -201,7 +201,7 @@ _0208A9C6:
ldr r0, [sp, #0xc]
mov r1, #0x3
add r2, r4, #0x0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x0
str r1, [sp, #0x0]
str r1, [sp, #0x4]
@@ -211,7 +211,7 @@ _0208A9C6:
str r1, [sp, #0x8]
bl FUN_0201BD84
add r0, r4, #0x0
- bl FUN_02021A20
+ bl String_dtor
bl FUN_0201E788
mov r0, #0x0
bl FUN_0200E394
diff --git a/arm9/global.inc b/arm9/global.inc
index 91b0ca46..80a7aa6a 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -524,18 +524,18 @@
.extern FUN_0200A2AC
.extern FUN_0200A318
.extern FUN_0200A344
-.extern FUN_0200A648
-.extern FUN_0200A738
+.extern ReadMsgData_NewNarc_ExistingString
+.extern ReadMsgData_NewNarc_NewString
.extern NewMsgDataFromNarc
.extern DestroyMsgData
-.extern FUN_0200A8E0
-.extern FUN_0200A914
-.extern FUN_0200A940
-.extern DecryptCopyString
+.extern ReadMsgDataIntoString
+.extern NewString_ReadMsgData
+.extern MsgDataGetCount
+.extern ReadMsgDataIntoU16Array
+.extern GetSpeciesNameIntoArray
+.extern ReadMsgData_ExpandPlaceholders
+.extern GetMoveName
.extern GetSpeciesName
-.extern FUN_0200A9C4
-.extern FUN_0200AA14
-.extern FUN_0200AA50
.extern FUN_0200AA80
.extern FUN_0200AA90
.extern FUN_0200AB18
@@ -596,7 +596,7 @@
.extern FUN_0200B708
.extern FUN_0200B764
.extern FUN_0200B7A8
-.extern FUN_0200B7B8
+.extern StringExpandPlaceholders
.extern FUN_0200B84C
.extern FUN_0200B870
.extern FUN_0200B990
@@ -1388,11 +1388,11 @@
.extern FUN_020218D8
.extern FUN_02021934
.extern FUN_0202199C
-.extern FUN_020219F4
-.extern FUN_02021A20
-.extern FUN_02021A4C
-.extern FUN_02021A74
-.extern FUN_02021ACC
+.extern String_ctor
+.extern String_dtor
+.extern StringSetEmpty
+.extern StringCopy
+.extern StringDup
.extern FUN_02021B04
.extern FUN_02021C38
.extern FUN_02021CE0
@@ -1402,7 +1402,7 @@
.extern FUN_02021E28
.extern FUN_02021E8C
.extern FUN_02021EF0
-.extern FUN_02021F2C
+.extern String_c_str
.extern FUN_02021F4C
.extern FUN_02021FB0
.extern FUN_02021FF8
@@ -7596,8 +7596,8 @@
.extern SetupBytecodeScript
.extern SetupNativeScript
.extern StopScript
-.extern StringCopy
-.extern StringCopyN
+.extern CopyU16StringArray
+.extern CopyU16StringArrayN
.extern StringFillEOS
.extern StringLength
.extern StringNotEqual
diff --git a/arm9/lib/include/MI_memory.h b/arm9/lib/include/MI_memory.h
index e1e5fe11..c39c7895 100644
--- a/arm9/lib/include/MI_memory.h
+++ b/arm9/lib/include/MI_memory.h
@@ -22,6 +22,11 @@ static inline void MI_CpuClear32(void *dest, u32 size)
MI_CpuFill32(dest, 0, size);
}
+static inline void MI_CpuCopy16(const void *src, void *dest, u32 size)
+{
+ MIi_CpuCopy16(src, dest, size);
+}
+
void MIi_CpuClearFast(u32 data, void *destp, u32 size);
#endif //NITRO_MI_MEMORY_H_
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index c9e94636..602dd5eb 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -21540,7 +21540,7 @@ _021E1BBA:
_021E1BD4:
add r0, r7, #0
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x1c]
add r5, r5, #1
add r4, r4, #4
@@ -21725,14 +21725,14 @@ MOD05_021E1D38: ; 0x021E1D38
mov r0, #0x50
mov r1, #4
add r6, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
add r1, r7, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r1, #0x9b
ldrb r1, [r1]
@@ -21743,7 +21743,7 @@ MOD05_021E1D38: ; 0x021E1D38
ldr r0, [r0]
ldr r1, [r1, #0x1c]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x9b
ldrb r2, [r0]
@@ -21755,7 +21755,7 @@ MOD05_021E1D38: ; 0x021E1D38
add r0, #0xb4
str r1, [r0]
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x9b
ldrb r0, [r0]
@@ -21953,7 +21953,7 @@ MOD05_021E1ECC: ; 0x021E1ECC
add r5, r6, #0
_021E1EFC:
ldr r0, [r5, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0x1c
@@ -22167,14 +22167,14 @@ MOD05_021E2094: ; 0x021E2094
mov r1, #4
add r7, r2, #0
add r4, r3, #0
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
ldr r1, [sp]
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r1, #0x9b
ldrb r1, [r1]
@@ -22185,7 +22185,7 @@ MOD05_021E2094: ; 0x021E2094
ldr r0, [r0]
ldr r1, [r1, #0x1c]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x9b
ldrb r1, [r0]
@@ -22198,7 +22198,7 @@ MOD05_021E2094: ; 0x021E2094
lsl r1, r1, #2
str r0, [r2, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
cmp r4, #0xfa
bne _021E2104
add r0, r5, #0
@@ -22550,7 +22550,7 @@ MOD05_021E2368: ; 0x021E2368
add r5, r6, #0
_021E2398:
ldr r0, [r5, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0x1c
@@ -22584,11 +22584,11 @@ MOD05_021E23D0: ; 0x021E23D0
mov r0, #0x50
mov r1, #4
add r7, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x50
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, [r5, #0x18]
mov r1, #0xf
@@ -22598,13 +22598,13 @@ MOD05_021E23D0: ; 0x021E23D0
ldr r0, [r0]
ldr r1, [sp, #0xc]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
add r0, #0x90
ldr r0, [r0]
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
str r7, [sp, #4]
@@ -22614,9 +22614,9 @@ MOD05_021E23D0: ; 0x021E23D0
add r2, r6, #0
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -22759,24 +22759,24 @@ MOD05_021E2540: ; 0x021E2540
mov r1, #4
str r2, [sp, #0x10]
add r7, r3, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x50
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
ldr r1, [sp, #0xc]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
add r0, #0x90
ldr r0, [r0]
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
str r7, [sp]
mov r0, #0xff
str r0, [sp, #4]
@@ -22788,9 +22788,9 @@ MOD05_021E2540: ; 0x021E2540
add r2, r6, #0
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.balign 4, 0
@@ -22819,7 +22819,7 @@ MOD05_021E25A4: ; 0x021E25A4
add r5, r6, #0
_021E25D0:
ldr r0, [r5, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0x1c
@@ -23162,7 +23162,7 @@ MOD05_021E27E8: ; 0x021E27E8
bl NewMsgDataFromNarc
mov r1, #0x12
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -23176,7 +23176,7 @@ MOD05_021E27E8: ; 0x021E27E8
add r0, r7, #0
bl DestroyMsgData
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r1, r4, #0
bl MOD05_021E28A0
@@ -23223,11 +23223,11 @@ MOD05_021E28A0: ; 0x021E28A0
add r6, r0, #0
mov r0, #0x10
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [sp, #0xc]
mov r1, #0x13
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
ldr r0, [r7, #0xc]
bl FUN_020238F4
@@ -23243,7 +23243,7 @@ MOD05_021E28A0: ; 0x021E28A0
ldr r2, [sp, #0x10]
add r0, r6, #0
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -23260,9 +23260,9 @@ MOD05_021E28A0: ; 0x021E28A0
str r1, [sp, #8]
bl FUN_0201BD84
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FUN_0200AB18
ldr r0, [sp, #0xc]
@@ -23351,11 +23351,11 @@ MOD05_021E29C8: ; 0x021E29C8
add r5, r0, #0
mov r0, #0x10
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r7, #0
mov r1, #0xc5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
ldr r0, [r6, #0xc]
bl FUN_0202390C
@@ -23371,7 +23371,7 @@ MOD05_021E29C8: ; 0x021E29C8
ldr r2, [sp, #0x10]
add r0, r5, #0
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -23387,9 +23387,9 @@ MOD05_021E29C8: ; 0x021E29C8
str r1, [sp, #8]
bl FUN_0201BD84
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_0200AB18
add r0, r7, #0
@@ -23469,11 +23469,11 @@ MOD05_021E2AD4: ; 0x021E2AD4
add r5, r0, #0
mov r0, #0x10
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r7, #0
mov r1, #0xe6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
ldr r0, [r6, #0xc]
bl FUN_0202A8D8
@@ -23491,7 +23491,7 @@ MOD05_021E2AD4: ; 0x021E2AD4
ldr r2, [sp, #0x10]
add r0, r5, #0
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -23507,9 +23507,9 @@ MOD05_021E2AD4: ; 0x021E2AD4
str r1, [sp, #8]
bl FUN_0201BD84
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_0200AB18
add r0, r7, #0
@@ -23825,11 +23825,11 @@ MOD05_021E2DD4: ; 0x021E2DD4
add r0, r1, #0
add r1, r2, #0
ldr r2, [r4, #4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #8]
ldr r1, [r4]
ldr r2, [r4, #4]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
pop {r4, pc}
.balign 4, 0
@@ -23862,9 +23862,9 @@ MOD05_021E2DF0: ; 0x021E2DF0
add r4, r0, #0
ldr r0, [r5]
add r1, r4, #0
- bl FUN_02021A74
+ bl StringCopy
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
@@ -24378,7 +24378,7 @@ MOD05_021E320C: ; 0x021E320C
add r4, r0, #0
mov r0, #0x16
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x40]
add r0, r4, #0
add r1, r5, #0
@@ -24406,7 +24406,7 @@ MOD05_021E3248: ; 0x021E3248
add r0, #0x20
bl FUN_02019178
ldr r0, [r4, #0x40]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x38]
bl FreeToHeap
add r0, r4, #0
@@ -35168,7 +35168,7 @@ MOD05_021E8410: ; 0x021E8410
ldr r1, [r5, #0x18]
ldr r3, [r5, #4]
add r2, r4, #0
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r1, r4, #0
add r6, r0, #0
str r1, [sp]
@@ -35180,7 +35180,7 @@ MOD05_021E8410: ; 0x021E8410
add r3, r1, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
str r0, [sp, #0x10]
ldr r0, _021E84EC ; =0x021F78D4
@@ -35198,7 +35198,7 @@ _021E846E:
ldr r0, [sp, #0x14]
add r4, r4, r0
ldr r0, [r5, #0x18]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r1, #0
str r4, [sp]
@@ -35211,13 +35211,13 @@ _021E846E:
add r3, r1, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
sub r2, r7, #4
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [r2]
ldr r3, [r5, #4]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r6, r0, #0
mov r0, #0
mov r1, #2
@@ -35238,7 +35238,7 @@ _021E846E:
add r2, r6, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_021E84D6:
ldr r0, [sp, #0xc]
add r7, r7, #4
@@ -44453,14 +44453,14 @@ _021ECF7E:
bl SetMonData
ldr r0, _021ED008 ; =0x000001EE
mov r1, #4
- bl FUN_0200AA50
+ bl GetSpeciesName
add r6, r0, #0
add r0, r5, #0
mov r1, #0x76
add r2, r6, #0
bl SetMonData
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x40]
cmp r0, #4
bne _021ECFEE
@@ -44487,7 +44487,7 @@ _021ECF7E:
add r2, sp, #0x18
bl SetMonData
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_021ECFEE:
mov r0, #0
str r0, [sp]
@@ -44578,14 +44578,14 @@ _021ED05E:
bl SetMonData
ldr r0, _021ED0C8 ; =0x000001EE
mov r1, #4
- bl FUN_0200AA50
+ bl GetSpeciesName
add r4, r0, #0
add r0, r7, #0
mov r1, #0x76
add r2, r4, #0
bl SetMonData
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
@@ -45308,7 +45308,7 @@ MOD05_021ED650: ; 0x021ED650
add r4, r0, #0
add r5, r1, #0
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
add r0, r5, #0
bl AllocMonZeroed
@@ -45623,7 +45623,7 @@ _021ED7CE:
add r1, r4, #0
bl FUN_02069B88
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FreeToHeap
add sp, #0x3c
@@ -45658,7 +45658,7 @@ MOD05_021ED940: ; 0x021ED940
lsr r0, r0, #0x10
add r1, r5, #0
add r2, sp, #4
- bl GetSpeciesName
+ bl GetSpeciesNameIntoArray
add r0, r4, #0
mov r1, #0x74
add r2, sp, #4
@@ -50987,11 +50987,11 @@ _021F0204:
ldr r0, [r4, #0x3c]
ldr r2, [r4, #8]
add r1, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x38]
ldr r1, [r4, #0xc]
ldr r2, [r4, #8]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0x30]
add r1, r4, #0
ldr r0, [r0, #8]
@@ -51036,11 +51036,11 @@ MOD05_021F0254: ; 0x021F0254
str r0, [r4, #0x3c]
mov r0, #0x6e
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0xc]
mov r0, #0x6e
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #8]
pop {r4, pc}
.balign 4, 0
@@ -51055,9 +51055,9 @@ MOD05_021F0290: ; 0x021F0290
ldr r0, [r4, #0x38]
bl FUN_0200AB18
ldr r0, [r4, #0xc]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #8]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add r0, #0x10
bl FUN_02019048
@@ -63500,12 +63500,12 @@ MOD05_021F60C4: ; 0x021F60C4
mov r0, #1
lsl r0, r0, #0xa
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x2c]
mov r0, #1
lsl r0, r0, #0xa
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x30]
mov r0, #8
mov r1, #0x40
@@ -63521,9 +63521,9 @@ MOD05_021F60FC: ; 0x021F60FC
ldr r0, [r4, #0x34]
bl FUN_0200AB18
ldr r0, [r4, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x30]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x48]
bl DestroyMsgData
pop {r4, pc}
@@ -63557,11 +63557,11 @@ MOD05_021F6140: ; 0x021F6140
ldr r2, [r5, #0x30]
add r1, r6, #0
ldr r4, [r5, #0x20]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x34]
ldr r1, [r5, #0x2c]
ldr r2, [r5, #0x30]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0xc]
bl LoadPlayerDataAddress
add r2, r0, #0
diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s
index 6819127d..43fd9cac 100644
--- a/arm9/modules/06/asm/module_06.s
+++ b/arm9/modules/06/asm/module_06.s
@@ -8054,7 +8054,7 @@ MOD06_0223D3D0: ; 0x0223D3D0
mov r1, #0xb
str r0, [r4]
mov r0, #0x60
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x23
lsl r1, r1, #4
str r0, [r4, r1]
@@ -8596,7 +8596,7 @@ _0223D804:
mov r0, #0x23
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0223D910 ; =0x00000241
ldrb r0, [r4, r0]
cmp r0, #0
@@ -9099,7 +9099,7 @@ _0223DC52:
bl MOD06_0223DBD0
add r1, r0, #0
ldr r0, [sp]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r2, #0x8a
lsl r2, r2, #2
@@ -9109,7 +9109,7 @@ _0223DC52:
add r1, r7, #0
bl FUN_020128A0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x8b
lsl r0, r0, #2
ldrb r0, [r5, r0]
@@ -9192,7 +9192,7 @@ _0223DD0C:
bne _0223DD3C
mov r0, #0x82
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
lsl r1, r5, #0x10
lsr r1, r1, #0x10
mov r2, #0xb
@@ -9210,7 +9210,7 @@ _0223DD3C:
add r1, r5, #0
add r7, r0, #0
add r1, #0x8a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r7, #0
bl DestroyMsgData
@@ -9227,7 +9227,7 @@ _0223DD60:
bl FUN_02086060
add r1, r0, #0
add r0, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r7, #0
bl DestroyMsgData
@@ -9245,7 +9245,7 @@ _0223DD86:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
lsl r1, r5, #0x10
add r0, r4, #0
lsr r1, r1, #0x10
@@ -9330,13 +9330,13 @@ MOD06_0223DE34: ; 0x0223DE34
str r0, [sp, #0x10]
mov r0, #0xc
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #1
str r0, [sp]
@@ -9353,7 +9353,7 @@ MOD06_0223DE34: ; 0x0223DE34
ldr r0, [r0]
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -9373,9 +9373,9 @@ MOD06_0223DE34: ; 0x0223DE34
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_0223DEC6:
add sp, #0x14
pop {r4, r5, r6, r7, pc}
@@ -9402,7 +9402,7 @@ MOD06_0223DED0: ; 0x0223DED0
add r0, #0x88
ldr r0, [r0]
mov r1, #0x12
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -9415,7 +9415,7 @@ MOD06_0223DED0: ; 0x0223DED0
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _0223DF30
_0223DF1C:
mov r0, #0x50
@@ -9430,13 +9430,13 @@ _0223DF1C:
_0223DF30:
mov r0, #0x10
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
mov r1, #0x13
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #0x83
lsl r0, r0, #2
@@ -9457,7 +9457,7 @@ _0223DF30:
ldr r0, [r0]
add r1, r4, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -9476,9 +9476,9 @@ _0223DF30:
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r5, #0x28
add r0, r5, #0
bl FUN_02019220
@@ -9605,7 +9605,7 @@ _0223E034:
add r0, #0x88
ldr r0, [r0]
mov r1, #3
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
mov r1, #0x23
@@ -9614,9 +9614,9 @@ _0223E034:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -9660,7 +9660,7 @@ _0223E124:
add r0, #0x88
ldr r0, [r0]
mov r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
mov r1, #0x23
@@ -9669,9 +9669,9 @@ _0223E124:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -9776,13 +9776,13 @@ _0223E214:
bl FUN_0200CCA4
mov r0, #0x18
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
mov r1, #0x14
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #1
str r0, [sp]
@@ -9799,7 +9799,7 @@ _0223E214:
ldr r0, [r0]
add r1, r6, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -9811,9 +9811,9 @@ _0223E214:
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r5, #0x48
add r0, r5, #0
bl FUN_02019220
@@ -9979,7 +9979,7 @@ _0223E3D2:
add r0, #0x88
ldr r0, [r0]
mov r1, #7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _0223E418
_0223E3F6:
@@ -9989,7 +9989,7 @@ _0223E3F6:
add r0, #0x88
ldr r0, [r0]
mov r1, #0xc
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _0223E418
_0223E40A:
@@ -9997,7 +9997,7 @@ _0223E40A:
add r0, #0x88
ldr r0, [r0]
mov r1, #0xe
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
_0223E418:
add r0, r4, #0
@@ -10007,9 +10007,9 @@ _0223E418:
ldr r0, [r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r4, r2]
@@ -10063,7 +10063,7 @@ _0223E450:
add r0, #0x88
ldr r0, [r0]
mov r1, #5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #0x23
@@ -10072,9 +10072,9 @@ _0223E450:
ldr r0, [r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r4, r2]
@@ -10114,13 +10114,13 @@ MOD06_0223E4E8: ; 0x0223E4E8
_0223E50A:
mov r0, #0x18
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
mov r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r3, #2
add r6, r0, #0
mov r2, #0x91
@@ -10139,7 +10139,7 @@ _0223E50A:
ldr r0, [r0]
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #8
str r0, [sp]
mov r0, #0xff
@@ -10152,12 +10152,12 @@ _0223E50A:
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #1
str r0, [sp]
@@ -10179,7 +10179,7 @@ _0223E50A:
ldr r0, [r0]
add r1, r4, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -10198,9 +10198,9 @@ _0223E50A:
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r5, #0x38
add r0, r5, #0
bl FUN_02019220
@@ -10263,7 +10263,7 @@ _0223E63A:
add r0, #0x88
ldr r0, [r0]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r2, #0x91
lsl r2, r2, #2
add r4, r0, #0
@@ -10311,7 +10311,7 @@ _0223E698:
add r0, #0x88
ldr r0, [r0]
mov r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
b _0223E704
_0223E6B8:
@@ -10348,7 +10348,7 @@ _0223E6F6:
add r0, #0x88
ldr r0, [r0]
mov r1, #0xd
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
_0223E704:
add r0, r5, #0
@@ -10358,9 +10358,9 @@ _0223E704:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x58
mov r1, #0xf
@@ -10564,7 +10564,7 @@ _0223E88A:
add r0, #0x88
ldr r0, [r0]
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
mov r1, #0x23
@@ -10573,9 +10573,9 @@ _0223E88A:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x58
mov r1, #0xf
@@ -10806,7 +10806,7 @@ _0223EA74:
add r0, #0x88
ldr r0, [r0]
mov r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
mov r1, #0x23
@@ -10815,9 +10815,9 @@ _0223EA74:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -10867,7 +10867,7 @@ MOD06_0223EB2C: ; 0x0223EB2C
add r0, #0x88
ldr r0, [r0]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r4, #0
mov r1, #0x23
@@ -10876,9 +10876,9 @@ MOD06_0223EB2C: ; 0x0223EB2C
ldr r0, [r0]
ldr r1, [r4, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r1, r4, #0
ldr r0, [r5, #8]
add r1, #0x18
@@ -11149,7 +11149,7 @@ _0223ED66:
add r0, #0x88
ldr r0, [r0]
mov r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
mov r1, #0x23
@@ -11158,9 +11158,9 @@ _0223ED66:
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -11201,13 +11201,13 @@ _0223EDE6:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0x10]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223EE70 ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x58]
ldr r1, [r2, #0x14]
ldr r2, [r2, #0x10]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _0223EE16
_0223EE08:
ldr r0, _0223EE70 ; =0x02252420
@@ -11215,7 +11215,7 @@ _0223EE08:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0x14]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0223EE16:
ldr r0, _0223EE70 ; =0x02252420
ldr r0, [r0]
@@ -11432,7 +11432,7 @@ _0223EFCA:
_0223EFDE:
add r0, r7, #0
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
ldr r1, [r6]
add r5, r5, #1
str r0, [r1, r4]
@@ -11453,7 +11453,7 @@ MOD06_0223EFFC: ; 0x0223EFFC
_0223F004:
ldr r0, [r6]
ldr r0, [r0, r5]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #8
@@ -11648,12 +11648,12 @@ _0223F11A:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F26C ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldmia r2!, {r1, r2}
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F26C ; =0x02252420
mov r1, #0
ldr r2, [r0]
@@ -11687,13 +11687,13 @@ _0223F11A:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0xc]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F26C ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldr r1, [r2, #8]
ldr r2, [r2, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F26C ; =0x02252420
mov r1, #0
ldr r2, [r0]
@@ -11724,12 +11724,12 @@ _0223F21C:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F26C ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldmia r2!, {r1, r2}
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F26C ; =0x02252420
mov r1, #0
ldr r2, [r0]
@@ -11876,13 +11876,13 @@ MOD06_0223F344: ; 0x0223F344
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0x18]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F3B4 ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x54]
ldr r1, [r2, #0x1c]
ldr r2, [r2, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F3B4 ; =0x02252420
mov r3, #2
ldr r2, [r0]
@@ -11932,11 +11932,11 @@ _0223F3E0:
mov r1, #0x32
ldr r0, [r2, #0x74]
ldr r2, [r2, #4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r4]
ldr r0, [r2, #0x50]
ldmia r2!, {r1, r2}
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r4]
mov r2, #0
ldr r0, [r1, #0x64]
@@ -12410,12 +12410,12 @@ _0223F7E0:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #4]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F898 ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldmia r2!, {r1, r2}
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F898 ; =0x02252420
lsl r4, r4, #4
ldr r2, [r0]
@@ -12447,13 +12447,13 @@ _0223F7E0:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0xc]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223F898 ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldr r1, [r2, #8]
ldr r2, [r2, #0xc]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223F898 ; =0x02252420
mov r1, #0
ldr r2, [r0]
@@ -12668,13 +12668,13 @@ _0223FA02:
ldr r2, [r0]
ldr r0, [r2, #0x74]
ldr r2, [r2, #0x1c]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0223FA5C ; =0x02252420
ldr r2, [r0]
ldr r0, [r2, #0x54]
ldr r1, [r2, #0x18]
ldr r2, [r2, #0x1c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0223FA5C ; =0x02252420
mov r3, #2
ldr r2, [r0]
@@ -14431,11 +14431,11 @@ _022408A6:
ldr r0, [r5, #0x68]
ldr r2, [r5, #0x14]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x64]
ldr r1, [r5, #0x18]
ldr r2, [r5, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r5, #0x10]
ldr r0, [r0, #0xc]
bl LoadPlayerDataAddress
@@ -14552,11 +14552,11 @@ _02240998:
ldr r0, [r5, #0x68]
ldr r2, [r5, #0x1c]
add r1, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x64]
ldr r1, [r5, #0x20]
ldr r2, [r5, #0x1c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r5, #8]
ldr r1, [r5, #0x20]
add r2, r4, #0
@@ -14893,11 +14893,11 @@ MOD06_02240C58: ; 0x02240C58
str r0, [sp, #0x30]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x2c]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x28]
ldr r0, [sp, #0x14]
mov r2, #3
@@ -14937,11 +14937,11 @@ MOD06_02240C58: ; 0x02240C58
ldr r0, [sp, #0x30]
ldr r2, [sp, #0x2c]
mov r1, #0x51
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [sp, #0x28]
ldr r2, [sp, #0x2c]
add r0, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -14959,7 +14959,7 @@ _02240CFE:
ldr r0, [sp, #0x30]
ldr r2, [sp, #0x2c]
add r1, #0x3d
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp]
str r7, [sp, #4]
mov r0, #0
@@ -15154,11 +15154,11 @@ _02240E8C:
ldr r0, [sp, #0x30]
ldr r2, [sp, #0x2c]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [sp, #0x28]
ldr r2, [sp, #0x2c]
add r0, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [sp, #0x28]
add r2, r0, #0
@@ -15191,9 +15191,9 @@ _02240E8C:
b _02240D34
_02240EE0:
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x30]
bl DestroyMsgData
ldr r0, [sp, #0x24]
@@ -15490,13 +15490,13 @@ _0224113A:
ldr r0, [r4, #0x68]
bl DestroyMsgData
ldr r0, [r4, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x6c]
bl FUN_0206BB74
add r0, r4, #0
@@ -15539,19 +15539,19 @@ MOD06_02241188: ; 0x02241188
str r0, [r4, #0x68]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x14]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x1c]
mov r0, #0xb4
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x20]
mov r0, #0xb
bl FUN_0206BB5C
@@ -18909,7 +18909,7 @@ _02242CAA:
_02242CC2:
add r0, r6, #0
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x24]
add r4, r4, #1
add r5, r5, #4
@@ -18983,7 +18983,7 @@ MOD06_02242D48: ; 0x02242D48
lsl r2, r2, #2
add r2, r5, r2
ldr r2, [r2, #0x24]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
add r0, #0x5e
ldrb r2, [r0]
@@ -19384,7 +19384,7 @@ MOD06_02243024: ; 0x02243024
add r5, r6, #0
_02243060:
ldr r0, [r5, #0x24]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0xc
@@ -19406,11 +19406,11 @@ MOD06_02243080: ; 0x02243080
mov r0, #0x40
mov r1, #4
add r7, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x40
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r5, #0
add r0, #0x14
@@ -19419,11 +19419,11 @@ MOD06_02243080: ; 0x02243080
ldr r0, [r5, #0x54]
ldr r1, [sp, #0xc]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x58]
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
add r5, #0x14
@@ -19434,9 +19434,9 @@ MOD06_02243080: ; 0x02243080
str r3, [sp, #8]
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -21721,11 +21721,11 @@ MOD06_02244210: ; 0x02244210
mov r1, #4
str r3, [sp, #0xc]
ldr r5, [sp, #0x38]
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #2
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x1c]
add r0, r4, #0
bl FUN_02024DA0
@@ -21760,7 +21760,7 @@ _02244264:
ldr r0, [sp, #0x10]
add r1, r7, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0xc]
add r2, r6, #0
str r0, [sp]
@@ -21783,9 +21783,9 @@ _0224429E:
ldr r0, [sp, #0x10]
bl DestroyMsgData
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
@@ -22047,14 +22047,14 @@ _022443D4:
add r4, r0, #0
lsl r1, r1, #0x15
lsr r1, r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
add r0, r5, #0
mov r1, #0x76
add r2, r7, #0
bl SetMonData
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
b _02244508
@@ -22493,14 +22493,14 @@ MOD06_02244820: ; 0x02244820
add r1, r4, #0
strh r0, [r5, #4]
add r0, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, #8
add r4, r0, #0
add r1, r5, #0
mov r2, #8
bl FUN_02021EF0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add r0, r6, #0
@@ -22713,7 +22713,7 @@ _022449F2:
lsl r0, r0, #0x15
lsr r0, r0, #0x15
add r2, r5, #0
- bl GetSpeciesName
+ bl GetSpeciesNameIntoArray
add r0, r7, #0
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
@@ -23143,7 +23143,7 @@ MOD06_02244D04: ; 0x02244D04
add r1, r5, #0
add r0, r0, r4
add r1, #8
- bl StringCopy
+ bl CopyU16StringArray
add r0, r7, r4
ldrh r1, [r5, #0x20]
add r0, #0x4c
@@ -30946,7 +30946,7 @@ _0224886C:
mov r2, #0x80
bl FUN_02021EF0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #8]
add r1, sp, #4
bl FUN_0202395C
@@ -31081,7 +31081,7 @@ MOD06_022489AC: ; 0x022489AC
bl NewMsgDataFromNarc
add r5, r0, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
bl DestroyMsgData
@@ -31116,7 +31116,7 @@ MOD06_022489D4: ; 0x022489D4
add r2, r7, #0
bl SetMonData
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #1
add r0, sp, #0x10
strb r1, [r0]
@@ -31192,7 +31192,7 @@ MOD06_022489D4: ; 0x022489D4
add r2, r6, #0
bl SetMonData
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r2, r4, #0
add r0, r5, #0
mov r1, #0x9c
@@ -31249,12 +31249,12 @@ MOD06_02248B20: ; 0x02248B20
thumb_func_start MOD06_02248B24
MOD06_02248B24: ; 0x02248B24
- ldr r3, _02248B2C ; =StringCopyN
+ ldr r3, _02248B2C ; =CopyU16StringArrayN
add r0, r0, #4
mov r2, #8
bx r3
.align 2, 0
-_02248B2C: .word StringCopyN
+_02248B2C: .word CopyU16StringArrayN
thumb_func_start MOD06_02248B30
MOD06_02248B30: ; 0x02248B30
@@ -40829,11 +40829,11 @@ MOD06_0224D46C: ; 0x0224D46C
bl FUN_02019620
mov r0, #0x64
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, [r4, #0x10]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldr r0, [sp, #0x1c]
bl FUN_020238F4
@@ -40844,7 +40844,7 @@ MOD06_0224D46C: ; 0x0224D46C
ldr r0, [r4, #0x14]
add r1, r6, #0
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
mov r1, #0
mov r2, #1
@@ -40860,10 +40860,10 @@ MOD06_0224D46C: ; 0x0224D46C
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x10]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
mov r2, #1
mov r3, #0x78
@@ -40880,14 +40880,14 @@ MOD06_0224D46C: ; 0x0224D46C
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
ldr r5, _0224D698 ; =0x02251FAC
str r0, [sp, #0x24]
_0224D576:
ldr r0, [r4, #0x10]
ldr r1, [r5]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r3, #4
mov r1, #0
ldrsh r3, [r5, r3]
@@ -40907,7 +40907,7 @@ _0224D576:
add r0, r4, #0
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x24]
add r5, #8
add r0, r0, #1
@@ -40920,7 +40920,7 @@ _0224D576:
_0224D5BE:
ldr r0, [r4, #0x10]
ldr r1, [r5]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r3, #4
ldrsh r3, [r5, r3]
mov r1, #0
@@ -40940,7 +40940,7 @@ _0224D5BE:
add r0, r4, #0
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
add r5, #8
add r0, r0, #1
@@ -40962,7 +40962,7 @@ _0224D60C:
str r0, [sp, #0x28]
ldr r0, [r4, #0x10]
ldr r1, [r5]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x2c]
mov r0, #1
str r0, [sp]
@@ -40975,7 +40975,7 @@ _0224D60C:
ldr r0, [r4, #0x14]
ldr r2, [sp, #0x2c]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #4
ldrsh r3, [r5, r3]
add r0, r6, #0
@@ -40995,7 +40995,7 @@ _0224D60C:
add r0, r4, #0
bl FUN_0201BD84
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add r7, r7, #1
add r5, #8
cmp r7, #4
@@ -41009,7 +41009,7 @@ _0224D60C:
cmp r0, #5
blt _0224D608
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_020191D0
add r0, r4, #0
@@ -41181,7 +41181,7 @@ _0224D7D0:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41190,7 +41190,7 @@ _0224D7D0:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #1
@@ -41207,7 +41207,7 @@ _0224D80E:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41216,7 +41216,7 @@ _0224D80E:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #0xc
@@ -41277,7 +41277,7 @@ _0224D8A6:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41286,7 +41286,7 @@ _0224D8A6:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xa
str r0, [r4]
mov r0, #4
@@ -41350,7 +41350,7 @@ _0224D94C:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41359,7 +41359,7 @@ _0224D94C:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #0xc
@@ -41397,7 +41397,7 @@ _0224D992:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41406,7 +41406,7 @@ _0224D992:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #3
@@ -41429,7 +41429,7 @@ _0224D9EA:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41438,7 +41438,7 @@ _0224D9EA:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb9
lsl r0, r0, #2
add r0, r4, r0
@@ -41453,7 +41453,7 @@ _0224DA32:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41462,7 +41462,7 @@ _0224DA32:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb9
lsl r0, r0, #2
add r0, r4, r0
@@ -41530,7 +41530,7 @@ _0224DAD2:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0xd
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41539,7 +41539,7 @@ _0224DAD2:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #9
@@ -41550,7 +41550,7 @@ _0224DAFE:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #0x55
lsl r0, r0, #2
@@ -41559,7 +41559,7 @@ _0224DAFE:
add r1, r5, #0
bl MOD06_0224DCD8
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb
str r0, [r4]
mov r0, #0xc
@@ -41796,7 +41796,7 @@ _0224DCEC:
bl FUN_02019620
add r0, r4, #0
add r1, r6, #0
- bl FUN_02021ACC
+ bl StringDup
str r0, [r5, #0x10]
mov r3, #0
str r3, [sp]
@@ -41830,7 +41830,7 @@ MOD06_0224DD28: ; 0x0224DD28
ldr r0, [r4, #0x10]
cmp r0, #0
beq _0224DD48
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
str r0, [r4, #0x10]
_0224DD48:
@@ -41853,11 +41853,11 @@ MOD06_0224DD50: ; 0x0224DD50
add r6, r0, #0
mov r0, #0xc8
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0xc]
add r0, r4, #0
mov r1, #7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [sp, #0x28]
str r0, [sp, #0x10]
add r4, r1, #0
@@ -41885,7 +41885,7 @@ MOD06_0224DD50: ; 0x0224DD50
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x10]
add r0, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #8]
ldr r1, [sp, #0xc]
add r2, r7, #0
@@ -41893,9 +41893,9 @@ MOD06_0224DD50: ; 0x0224DD50
add r0, r6, #0
bl FUN_0200AB18
ldr r0, [sp, #0xc]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -41913,11 +41913,11 @@ MOD06_0224DDD8: ; 0x0224DDD8
add r6, r0, #0
mov r0, #0xc8
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0xc]
add r0, r4, #0
mov r1, #0xc
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [sp, #0x28]
str r0, [sp, #0x10]
add r4, r1, #0
@@ -41945,7 +41945,7 @@ MOD06_0224DDD8: ; 0x0224DDD8
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x10]
add r0, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #8]
ldr r1, [sp, #0xc]
add r2, r7, #0
@@ -41953,9 +41953,9 @@ MOD06_0224DDD8: ; 0x0224DDD8
add r0, r6, #0
bl FUN_0200AB18
ldr r0, [sp, #0xc]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -41999,7 +41999,7 @@ _0224DEA8:
add r1, r4, #0
add r0, r7, #0
add r1, #0x10
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x10]
add r4, r4, #1
add r5, r5, #4
@@ -42007,7 +42007,7 @@ _0224DEA8:
blt _0224DEA8
ldr r1, [sp, #0x14]
mov r0, #0x20
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0xc]
ldr r0, [r6, #4]
mov r1, #0xf
@@ -42030,13 +42030,13 @@ MOD06_0224DED8: ; 0x0224DED8
add r5, r6, #0
_0224DEE6:
ldr r0, [r5, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #3
blt _0224DEE6
ldr r0, [r6, #0xc]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #8]
bl FUN_0200AB18
ldr r0, [r6, #4]
@@ -42090,7 +42090,7 @@ _0224DF64:
ldr r0, [r5, #8]
ldr r1, [r5, #0xc]
ldr r2, [r6, #0x10]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r4, [sp]
mov r0, #0xff
@@ -42172,13 +42172,13 @@ _0224DFC0:
str r0, [r5, r1]
ldr r1, [sp, #0x14]
mov r0, #0x20
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x4a
lsl r1, r1, #2
str r0, [r5, r1]
ldr r0, [sp, #0x7c]
mov r1, #0x10
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
ldr r0, [sp, #0x78]
mov r7, #0
@@ -42201,12 +42201,12 @@ _0224E034:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
ldr r2, [sp, #0x1c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x4a
lsl r0, r0, #2
ldr r0, [r5, r0]
ldr r1, [sp, #0x14]
- bl FUN_02021ACC
+ bl StringDup
add r1, r6, #0
add r1, #0xc4
str r0, [r1]
@@ -42231,7 +42231,7 @@ _0224E084:
ldr r0, [sp, #0x7c]
add r4, #0xc4
mov r1, #0x13
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4, r6]
ldr r0, [sp, #0x78]
lsl r1, r0, #3
@@ -42247,9 +42247,9 @@ _0224E084:
mov r0, #0x4a
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r3, [sp, #0x14]
ldr r0, [r5, #4]
ldr r1, _0224E168 ; =0x022523A0
@@ -42369,7 +42369,7 @@ _0224E1AC:
add r0, r4, #0
add r0, #0xc4
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, r7]
add r5, r5, #1
add r4, r4, #4
diff --git a/arm9/modules/07/asm/module_07.s b/arm9/modules/07/asm/module_07.s
index 8b0751c8..5723ce56 100644
--- a/arm9/modules/07/asm/module_07.s
+++ b/arm9/modules/07/asm/module_07.s
@@ -4500,7 +4500,7 @@ _022142BE:
add r1, r4, #0
ldr r0, [sp, #0x10]
add r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r0, [sp, #0x18]
bl FUN_020690E4
@@ -4511,9 +4511,9 @@ _022142BE:
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x20]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4540,7 +4540,7 @@ _022142BE:
ldr r0, [sp, #0x10]
mov r1, #0x1b
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4562,7 +4562,7 @@ _02214344:
ldr r0, [sp, #0x10]
mov r1, #0x1c
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4606,7 +4606,7 @@ MOD07_0221437C: ; 0x0221437C
ldr r1, [sp, #0x2c]
add r0, r7, #0
add r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r7, r0, #0
ldr r3, [sp, #0x2c]
@@ -4625,9 +4625,9 @@ MOD07_0221437C: ; 0x0221437C
ldr r0, [sp, #0x10]
ldr r1, [sp, #0x28]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4662,7 +4662,7 @@ MOD07_022143FC: ; 0x022143FC
str r3, [sp, #0x18]
ldr r4, [sp, #0x40]
add r7, #0x10
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
mov r0, #0x18
mul r0, r5
@@ -4682,9 +4682,9 @@ MOD07_022143FC: ; 0x022143FC
ldr r0, [sp, #0x18]
ldr r2, [sp, #0x20]
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -4707,7 +4707,7 @@ MOD07_022143FC: ; 0x022143FC
ldr r0, [sp, #0x14]
mov r1, #0x1a
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4728,7 +4728,7 @@ MOD07_022143FC: ; 0x022143FC
add r5, #0xe
ldr r0, [sp, #0x14]
add r1, r5, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldr r3, [sp, #0x10]
ldr r2, [sp, #0x1c]
@@ -4746,9 +4746,9 @@ MOD07_022143FC: ; 0x022143FC
ldr r0, [sp, #0x18]
add r1, r4, #0
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0
ldr r3, [sp, #0x24]
str r1, [sp]
@@ -4981,7 +4981,7 @@ MOD07_0221469C: ; 0x0221469C
str r0, [sp, #8]
ldr r1, [r1, #0x24]
mov r0, #0x20
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
mov r4, #0
add r5, r6, #0
@@ -5004,7 +5004,7 @@ _022146F6:
cmp r4, #6
blo _022146DC
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
ldr r0, [sp, #0xc]
diff --git a/arm9/modules/09/asm/module_09.s b/arm9/modules/09/asm/module_09.s
index abb23468..174cdc6a 100644
--- a/arm9/modules/09/asm/module_09.s
+++ b/arm9/modules/09/asm/module_09.s
@@ -606,7 +606,7 @@ _0221233A:
ldr r0, [r5, r2]
add r2, #8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02216314
ldr r0, [r5]
@@ -1328,7 +1328,7 @@ _0221290E:
ldr r0, [r4, r2]
add r2, #8
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0
bl MOD09_02216314
ldr r0, [r4]
@@ -2380,7 +2380,7 @@ MOD09_02213138: ; 0x02213138
mov r0, #2
ldr r1, [r1, #0xc]
lsl r0, r0, #8
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0221318C ; =0x00001FB0
str r0, [r4, r1]
pop {r4, pc}
@@ -2405,7 +2405,7 @@ MOD09_02213190: ; 0x02213190
bl FUN_0200AB18
ldr r0, _022131C4 ; =0x00001FB0
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
nop
_022131B8: .word 0x00001FA8
@@ -3460,7 +3460,7 @@ MOD09_022139D4: ; 0x022139D4
ldr r0, _02213B70 ; =0x00001FA8
mov r1, #0x50
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
add r4, r0, #0
ldr r0, [r1, #8]
@@ -3480,9 +3480,9 @@ MOD09_022139D4: ; 0x022139D4
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213A30:
@@ -3492,7 +3492,7 @@ _02213A30:
ldr r0, _02213B70 ; =0x00001FA8
mov r1, #0x4d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r4]
bl FUN_020690E4
@@ -3506,9 +3506,9 @@ _02213A30:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213A6C:
@@ -3527,7 +3527,7 @@ _02213A82:
ldr r0, _02213B70 ; =0x00001FA8
mov r1, #0x4c
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r4]
bl FUN_020690E4
@@ -3541,9 +3541,9 @@ _02213A82:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213AB8:
@@ -3556,7 +3556,7 @@ _02213AB8:
ldr r0, [r5, r2]
add r2, #8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213AD4:
@@ -3573,7 +3573,7 @@ _02213AD4:
ldr r0, _02213B70 ; =0x00001FA8
mov r1, #0x5d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x50
mul r0, r4
@@ -3590,9 +3590,9 @@ _02213AD4:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213B24:
@@ -3608,7 +3608,7 @@ _02213B24:
mul r6, r0
ldr r0, [r5, r1]
mov r1, #0x4e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldr r0, [r4, r6]
bl FUN_020690E4
@@ -3622,9 +3622,9 @@ _02213B24:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
_02213B6C:
@@ -4071,7 +4071,7 @@ MOD09_02213E84: ; 0x02213E84
ldr r1, [r1, #0xc]
mov r0, #0xc
str r2, [sp, #0x10]
- bl FUN_020219F4
+ bl String_ctor
ldr r1, [sp, #0x14]
str r0, [sp, #0x1c]
ldr r0, _02214018 ; =0x00001FA8
@@ -4079,7 +4079,7 @@ MOD09_02213E84: ; 0x02213E84
ldr r1, _0221401C ; =0x0221B090
ldr r0, [r6, r0]
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
ldr r0, [sp, #0x24]
ldr r0, [r7, r0]
@@ -4093,7 +4093,7 @@ MOD09_02213E84: ; 0x02213E84
ldr r1, [sp, #0x1c]
ldr r0, [r6, r0]
ldr r2, [sp, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x10]
add r3, sp, #0x38
cmp r0, #0
@@ -4128,9 +4128,9 @@ _02213F06:
bl FUN_0201BDE0
_02213F22:
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
ldrb r0, [r0, #0x16]
lsl r0, r0, #0x18
@@ -4147,7 +4147,7 @@ _02213F22:
ldr r0, _02214018 ; =0x00001FA8
mov r1, #0x10
ldr r0, [r6, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, r4
bl FUN_0201AB0C
@@ -4185,7 +4185,7 @@ _02213F8A:
bl FUN_0201BDE0
_02213F9E:
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
b _02214008
_02213FA6:
cmp r0, #1
@@ -4193,7 +4193,7 @@ _02213FA6:
ldr r0, _02214018 ; =0x00001FA8
mov r1, #0x11
ldr r0, [r6, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, r4
bl FUN_0201AB0C
@@ -4232,7 +4232,7 @@ _02213FEE:
bl FUN_0201BDE0
_02214002:
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_02214008:
add r0, r5, r4
bl FUN_02019220
@@ -4467,12 +4467,12 @@ MOD09_022141D8: ; 0x022141D8
mov r0, #0x10
ldr r1, [r1, #0xc]
add r7, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, _02214250 ; =0x00001FA8
mov r1, #8
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r2, #0x50
mul r2, r7
str r0, [sp, #0x10]
@@ -4486,7 +4486,7 @@ MOD09_022141D8: ; 0x022141D8
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -4502,9 +4502,9 @@ MOD09_022141D8: ; 0x022141D8
add r3, r1, #0
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0221425C ; =0x00002070
ldr r0, [r5, r0]
add r0, r0, r4
@@ -4533,19 +4533,19 @@ MOD09_02214260: ; 0x02214260
ldr r0, _022142EC ; =0x00001FA8
mov r1, #0x14
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _022142BA
_02214284:
ldr r1, [r4]
mov r0, #0x12
ldr r1, [r1, #0xc]
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, _022142EC ; =0x00001FA8
mov r1, #9
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
ldr r0, _022142F0 ; =0x00001FAC
ldrh r2, [r5, #0x1a]
@@ -4556,9 +4556,9 @@ _02214284:
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
_022142BA:
mov r1, #0
str r1, [sp]
@@ -4575,7 +4575,7 @@ _022142BA:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022142F8 ; =0x00002070
ldr r0, [r4, r0]
add r0, r0, r5
@@ -4601,12 +4601,12 @@ MOD09_022142FC: ; 0x022142FC
mov r0, #0x10
str r3, [sp, #0x14]
lsl r6, r2, #4
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r0, _02214398 ; =0x00001FA8
ldr r1, [sp, #0x14]
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
ldr r0, _0221439C ; =0x00001FAC
ldr r2, [sp, #0x10]
@@ -4617,7 +4617,7 @@ MOD09_022142FC: ; 0x022142FC
ldr r2, [sp, #0x18]
ldr r0, [r5, r0]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, sp, #0x20
ldrh r0, [r0, #0x10]
cmp r0, #2
@@ -4651,9 +4651,9 @@ _02214362:
add r0, r4, r6
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x1c
@@ -4674,7 +4674,7 @@ MOD09_022143A0: ; 0x022143A0
ldr r0, [r4, r0]
add r6, r3, #0
mov r1, #0xe
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
str r6, [sp]
mov r0, #0xff
@@ -4691,7 +4691,7 @@ MOD09_022143A0: ; 0x022143A0
add r2, r7, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022143F4 ; =0x00002070
ldr r0, [r4, r0]
add r0, r0, r5
@@ -4722,7 +4722,7 @@ MOD09_022143F8: ; 0x022143F8
ldr r0, _02214454 ; =0x00001FA8
add r1, r5, #0
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r3, #0
str r3, [sp]
@@ -4737,7 +4737,7 @@ MOD09_022143F8: ; 0x022143F8
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214450 ; =0x00002050
add r0, r4, r0
bl FUN_02019220
@@ -4758,7 +4758,7 @@ MOD09_0221445C: ; 0x0221445C
sub r3, #0xc8
ldr r0, [r0, r3]
add r1, r2, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #2
add r1, r7, #0
@@ -4784,7 +4784,7 @@ MOD09_0221445C: ; 0x0221445C
lsr r3, r3, #1
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -4811,7 +4811,7 @@ MOD09_022144C0: ; 0x022144C0
lsr r6, r0, #0x10
ldr r0, [r5, r1]
mov r1, #0x17
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -4828,16 +4828,16 @@ MOD09_022144C0: ; 0x022144C0
add r2, r7, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214688 ; =0x00001FA8
mov r1, #0x18
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x18]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
str r0, [sp, #0x1c]
str r1, [sp]
@@ -4854,7 +4854,7 @@ MOD09_022144C0: ; 0x022144C0
ldr r1, [sp, #0x1c]
ldr r0, [r5, r0]
ldr r2, [sp, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
add r0, r6, #0
add r0, #0xb
@@ -4872,13 +4872,13 @@ MOD09_022144C0: ; 0x022144C0
add r0, r0, r7
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214688 ; =0x00001FA8
mov r1, #0x19
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r0, [sp, #0x20]
str r1, [sp]
@@ -4895,16 +4895,16 @@ MOD09_022144C0: ; 0x022144C0
ldr r2, [sp, #0x20]
bl FUN_0201BDE0
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214688 ; =0x00001FA8
mov r1, #0x1a
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x14]
ldr r1, [r1, #0xc]
mov r0, #0xe
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
ldrb r0, [r4, #0x16]
lsl r0, r0, #0x19
@@ -4938,7 +4938,7 @@ _022145F4:
ldr r1, [sp, #0x10]
ldr r0, [r5, r0]
ldr r2, [sp, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02214684 ; =0x00002070
add r6, #0xc
ldr r0, [r5, r0]
@@ -4967,9 +4967,9 @@ _022145F4:
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214684 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #0x13
@@ -5015,7 +5015,7 @@ MOD09_02214694: ; 0x02214694
lsr r4, r0, #0x10
ldr r0, [r5, r1]
mov r1, #0x20
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5031,16 +5031,16 @@ MOD09_02214694: ; 0x02214694
add r0, #0xe0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214784 ; =0x00001FA8
mov r1, #0x21
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x10]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
mov r2, #0x50
add r6, r0, #0
@@ -5058,7 +5058,7 @@ MOD09_02214694: ; 0x02214694
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r6, #0
add r2, r0, #0
@@ -5088,9 +5088,9 @@ MOD09_02214694: ; 0x02214694
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214780 ; =0x00002070
ldr r0, [r5, r0]
add r0, #0xe0
@@ -5124,7 +5124,7 @@ MOD09_02214790: ; 0x02214790
lsr r4, r0, #0x10
ldr r0, [r5, r1]
mov r1, #0x22
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5140,16 +5140,16 @@ MOD09_02214790: ; 0x02214790
add r0, #0xf0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214880 ; =0x00001FA8
mov r1, #0x23
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x10]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
mov r2, #0x50
add r6, r0, #0
@@ -5167,7 +5167,7 @@ MOD09_02214790: ; 0x02214790
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r6, #0
add r2, r0, #0
@@ -5197,9 +5197,9 @@ MOD09_02214790: ; 0x02214790
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0221487C ; =0x00002070
ldr r0, [r5, r0]
add r0, #0xf0
@@ -5233,7 +5233,7 @@ MOD09_0221488C: ; 0x0221488C
lsr r4, r0, #0x10
ldr r0, [r5, r1]
mov r1, #0x28
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5250,16 +5250,16 @@ MOD09_0221488C: ; 0x0221488C
add r2, r6, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214980 ; =0x00001FA8
mov r1, #0x29
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x10]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
mov r2, #0x50
add r6, r0, #0
@@ -5277,7 +5277,7 @@ MOD09_0221488C: ; 0x0221488C
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r6, #0
add r2, r0, #0
@@ -5307,9 +5307,9 @@ MOD09_0221488C: ; 0x0221488C
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0221497C ; =0x00002070
ldr r1, [r5, r0]
mov r0, #1
@@ -5345,7 +5345,7 @@ MOD09_0221498C: ; 0x0221498C
lsr r5, r0, #0x10
ldr r0, [r4, r1]
mov r1, #0x24
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5362,16 +5362,16 @@ MOD09_0221498C: ; 0x0221498C
add r2, r6, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214A80 ; =0x00001FA8
mov r1, #0x25
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r4]
str r0, [sp, #0x10]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
mov r2, #0x50
add r6, r0, #0
@@ -5389,7 +5389,7 @@ MOD09_0221498C: ; 0x0221498C
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r6, #0
add r2, r0, #0
@@ -5419,9 +5419,9 @@ MOD09_0221498C: ; 0x0221498C
add r0, r0, r5
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214A7C ; =0x00002070
ldr r1, [r4, r0]
mov r0, #0x11
@@ -5457,7 +5457,7 @@ MOD09_02214A8C: ; 0x02214A8C
lsr r5, r0, #0x10
ldr r0, [r4, r1]
mov r1, #0x26
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5474,16 +5474,16 @@ MOD09_02214A8C: ; 0x02214A8C
add r2, r6, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214B80 ; =0x00001FA8
mov r1, #0x27
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r4]
str r0, [sp, #0x10]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
mov r2, #0x50
add r6, r0, #0
@@ -5501,7 +5501,7 @@ MOD09_02214A8C: ; 0x02214A8C
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r6, #0
add r2, r0, #0
@@ -5531,9 +5531,9 @@ MOD09_02214A8C: ; 0x02214A8C
add r0, r0, r5
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214B7C ; =0x00002070
ldr r1, [r4, r0]
mov r0, #0x12
@@ -5572,7 +5572,7 @@ MOD09_02214B8C: ; 0x02214B8C
lsr r4, r0, #0x10
ldr r0, [r5, r1]
mov r1, #0x1c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5588,11 +5588,11 @@ MOD09_02214B8C: ; 0x02214B8C
add r0, #0xd0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214D18 ; =0x00001FA8
mov r1, #0x1f
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
mov r0, #0
ldr r1, [sp, #0x10]
@@ -5624,16 +5624,16 @@ MOD09_02214B8C: ; 0x02214B8C
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214D18 ; =0x00001FA8
mov r1, #0x1d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x18]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x1c]
mov r1, #0
str r1, [sp]
@@ -5648,7 +5648,7 @@ MOD09_02214B8C: ; 0x02214B8C
ldr r1, [sp, #0x1c]
ldr r0, [r5, r0]
ldr r2, [sp, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [sp, #0x1c]
add r2, r0, #0
@@ -5668,18 +5668,18 @@ MOD09_02214B8C: ; 0x02214B8C
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214D18 ; =0x00001FA8
mov r1, #0x1e
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x20]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
str r0, [sp, #0x24]
str r1, [sp]
@@ -5694,7 +5694,7 @@ MOD09_02214B8C: ; 0x02214B8C
ldr r1, [sp, #0x24]
ldr r0, [r5, r0]
ldr r2, [sp, #0x20]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
ldr r3, [sp, #0x14]
str r1, [sp]
@@ -5710,9 +5710,9 @@ MOD09_02214B8C: ; 0x02214B8C
add r0, r0, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02214D14 ; =0x00002070
ldr r0, [r5, r0]
add r0, #0xd0
@@ -5753,7 +5753,7 @@ MOD09_02214D24: ; 0x02214D24
add r1, r5, r1
ldrh r1, [r1, #0x1c]
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r1, #0
add r0, r4, #2
@@ -5771,7 +5771,7 @@ MOD09_02214D24: ; 0x02214D24
add r0, r0, r4
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
ldr r0, _02214D9C ; =0x00002070
@@ -5796,7 +5796,7 @@ MOD09_02214DA0: ; 0x02214DA0
sub r2, #0xc8
ldr r0, [r0, r2]
mov r1, #0x33
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5810,7 +5810,7 @@ MOD09_02214DA0: ; 0x02214DA0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -5834,7 +5834,7 @@ MOD09_02214DE8: ; 0x02214DE8
sub r2, #0xc8
ldr r0, [r5, r2]
mov r1, #0x32
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #0
add r1, r7, #0
@@ -5859,18 +5859,18 @@ MOD09_02214DE8: ; 0x02214DE8
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
b _02214EB8
_02214E42:
sub r2, #0xc8
ldr r0, [r5, r2]
mov r1, #0x34
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x14]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -5885,7 +5885,7 @@ _02214E42:
ldr r2, [sp, #0x14]
ldr r0, [r5, r0]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r7, #0
add r2, r0, #0
@@ -5909,9 +5909,9 @@ _02214E42:
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
_02214EB8:
add r0, r4, r6
bl FUN_02019220
@@ -5932,7 +5932,7 @@ MOD09_02214ED0: ; 0x02214ED0
sub r2, #0xc8
ldr r0, [r0, r2]
mov r1, #0x30
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -5946,7 +5946,7 @@ MOD09_02214ED0: ; 0x02214ED0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -5970,7 +5970,7 @@ MOD09_02214F18: ; 0x02214F18
sub r2, #0xc8
ldr r0, [r5, r2]
mov r1, #0x32
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #0
add r1, r7, #0
@@ -5995,18 +5995,18 @@ MOD09_02214F18: ; 0x02214F18
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
b _02214FE8
_02214F72:
sub r2, #0xc8
ldr r0, [r5, r2]
mov r1, #0x31
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x14]
ldr r1, [r1, #0xc]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -6021,7 +6021,7 @@ _02214F72:
ldr r2, [sp, #0x14]
ldr r0, [r5, r0]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r7, #0
add r2, r0, #0
@@ -6045,9 +6045,9 @@ _02214F72:
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
_02214FE8:
add r0, r4, r6
bl FUN_02019220
@@ -6075,7 +6075,7 @@ MOD09_02215000: ; 0x02215000
bl NewMsgDataFromNarc
add r1, r6, #0
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -6089,7 +6089,7 @@ MOD09_02215000: ; 0x02215000
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add r0, r5, r4
@@ -6122,7 +6122,7 @@ MOD09_02215060: ; 0x02215060
bl NewMsgDataFromNarc
add r1, r7, #0
str r0, [sp, #0x10]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -6136,7 +6136,7 @@ MOD09_02215060: ; 0x02215060
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r5, r4
@@ -6157,7 +6157,7 @@ MOD09_022150C8: ; 0x022150C8
sub r2, #0xc8
ldr r0, [r0, r2]
mov r1, #0x35
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #0
add r1, r7, #0
@@ -6184,7 +6184,7 @@ MOD09_022150C8: ; 0x022150C8
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -6211,21 +6211,21 @@ _02215144:
sub r3, #0xc8
ldr r0, [r0, r3]
mov r1, #0x36
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _0221516C
_02215152:
sub r3, #0xc8
ldr r0, [r0, r3]
mov r1, #0x38
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _0221516C
_02215160:
sub r3, #0xc8
ldr r0, [r0, r3]
mov r1, #0x37
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
_0221516C:
mov r0, #0
@@ -6245,7 +6245,7 @@ _0221516C:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -6267,7 +6267,7 @@ MOD09_022151A8: ; 0x022151A8
mov r1, #0x2e
str r2, [sp, #0x10]
str r3, [sp, #0x14]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
mov r0, #0
ldr r1, [sp, #0x18]
@@ -6292,16 +6292,16 @@ MOD09_022151A8: ; 0x022151A8
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022152D4 ; =0x00001FA8
mov r1, #0x2c
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x20]
ldr r1, [r1, #0xc]
mov r0, #6
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
str r0, [sp, #0x24]
str r1, [sp]
@@ -6316,7 +6316,7 @@ MOD09_022151A8: ; 0x022151A8
ldr r1, [sp, #0x24]
ldr r0, [r5, r0]
ldr r2, [sp, #0x20]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [sp, #0x24]
add r2, r0, #0
@@ -6334,18 +6334,18 @@ MOD09_022151A8: ; 0x022151A8
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022152D4 ; =0x00001FA8
mov r1, #0x2d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [r5]
str r0, [sp, #0x28]
ldr r1, [r1, #0xc]
mov r0, #6
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
str r0, [sp, #0x2c]
str r1, [sp]
@@ -6360,7 +6360,7 @@ MOD09_022151A8: ; 0x022151A8
ldr r1, [sp, #0x2c]
ldr r0, [r5, r0]
ldr r2, [sp, #0x28]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
ldr r3, [sp, #0x1c]
str r1, [sp]
@@ -6374,9 +6374,9 @@ MOD09_022151A8: ; 0x022151A8
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x30
@@ -6402,13 +6402,13 @@ MOD09_022152DC: ; 0x022152DC
sub r2, #0xc8
ldr r0, [r0, r2]
mov r1, #0x3b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _02215306
_022152FC:
sub r2, #0xc8
ldr r0, [r0, r2]
mov r1, #0x3a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_02215306:
add r6, r0, #0
mov r0, #2
@@ -6432,7 +6432,7 @@ _02215306:
lsr r3, r3, #1
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x10
@@ -6465,7 +6465,7 @@ _02215368:
ldr r0, _022153A8 ; =0x00001FA8
mov r1, #0x3c
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -6479,7 +6479,7 @@ _02215368:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_02019220
add sp, #0x10
@@ -6501,12 +6501,12 @@ MOD09_022153B0: ; 0x022153B0
ldr r4, [r5, r0]
mov r0, #6
lsl r6, r2, #4
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r0, _022154F0 ; =0x00001FA8
mov r1, #0x2b
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
mov r0, #0x18
str r0, [sp]
@@ -6521,11 +6521,11 @@ MOD09_022153B0: ; 0x022153B0
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022154F0 ; =0x00001FA8
mov r1, #0x2e
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
mov r0, #0
ldr r1, [sp, #0x18]
@@ -6545,11 +6545,11 @@ MOD09_022153B0: ; 0x022153B0
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022154F0 ; =0x00001FA8
mov r1, #0x2d
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r0, [sp, #0x20]
str r1, [sp]
@@ -6565,7 +6565,7 @@ MOD09_022153B0: ; 0x022153B0
ldr r2, [sp, #0x20]
ldr r0, [r5, r0]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x18
str r0, [sp]
mov r0, #0xff
@@ -6581,11 +6581,11 @@ MOD09_022153B0: ; 0x022153B0
str r3, [sp, #0x1c]
bl FUN_0201BDE0
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022154F0 ; =0x00001FA8
mov r1, #0x2c
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r0, [sp, #0x24]
str r1, [sp]
@@ -6601,7 +6601,7 @@ MOD09_022153B0: ; 0x022153B0
ldr r2, [sp, #0x24]
ldr r0, [r5, r0]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r7, #0
add r2, r0, #0
@@ -6621,9 +6621,9 @@ MOD09_022153B0: ; 0x022153B0
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x28
@@ -6646,12 +6646,12 @@ MOD09_022154FC: ; 0x022154FC
ldr r4, [r5, r0]
mov r0, #6
lsl r6, r2, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x14]
ldr r0, _022155C4 ; =0x00001FA8
mov r1, #0x2b
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
mov r0, #0
ldr r1, [sp, #0x18]
@@ -6659,7 +6659,7 @@ MOD09_022154FC: ; 0x022154FC
bl FUN_02002E14
add r7, r0, #0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add r7, #0x28
mov r0, #0x50
sub r0, r0, r7
@@ -6677,7 +6677,7 @@ MOD09_022154FC: ; 0x022154FC
ldr r0, _022155C4 ; =0x00001FA8
mov r1, #0x2c
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -6693,7 +6693,7 @@ MOD09_022154FC: ; 0x022154FC
ldr r1, [sp, #0x14]
ldr r0, [r5, r0]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [sp, #0x14]
add r2, r0, #0
@@ -6713,9 +6713,9 @@ MOD09_022154FC: ; 0x022154FC
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
add sp, #0x1c
@@ -6957,14 +6957,14 @@ MOD09_02215784: ; 0x02215784
str r0, [sp, #0x14]
ldr r1, [r1, #0xc]
mov r0, #0xc
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
ldr r0, _022158D4 ; =0x00001FA8
ldr r1, _022158D8 ; =0x0221B090
lsl r2, r6, #2
ldr r0, [r4, r0]
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r5, r7]
bl FUN_020690E4
@@ -6977,9 +6977,9 @@ MOD09_02215784: ; 0x02215784
ldr r1, [sp, #0x10]
ldr r0, [r4, r0]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
mov r5, #0
ldrb r0, [r0, #0x16]
@@ -6997,7 +6997,7 @@ MOD09_02215784: ; 0x02215784
ldr r0, _022158D4 ; =0x00001FA8
mov r1, #0x10
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _02215818
_02215808:
@@ -7006,7 +7006,7 @@ _02215808:
ldr r0, _022158D4 ; =0x00001FA8
mov r1, #0x11
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
_02215818:
ldr r1, [sp, #0x10]
@@ -7053,7 +7053,7 @@ _02215840:
add r3, r7, #0
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
cmp r5, #0
beq _022158C6
ldr r0, [sp, #0x14]
@@ -7091,7 +7091,7 @@ _022158A4:
bl FUN_0201BDE0
_022158C0:
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_022158C6:
ldr r0, [sp, #0x18]
bl FUN_02019220
@@ -8159,7 +8159,7 @@ MOD09_022161B0: ; 0x022161B0
ldr r0, _02216308 ; =0x00001FA8
mov r1, #0x39
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #0
add r1, r4, #0
@@ -8180,7 +8180,7 @@ MOD09_022161B0: ; 0x022161B0
add r0, #0x40
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02216304 ; =0x00002070
ldr r0, [r5, r0]
add r0, #0x40
@@ -8425,7 +8425,7 @@ _02216444:
ldr r0, _022166C8 ; =0x00001FA8
mov r1, #0x58
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8439,9 +8439,9 @@ _02216444:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_0221648E:
ldr r0, [sp, #8]
@@ -8450,7 +8450,7 @@ _0221648E:
ldr r0, _022166C8 ; =0x00001FA8
mov r1, #0x52
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8480,9 +8480,9 @@ _0221648E:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_022164EA:
add r0, r6, #0
@@ -8501,7 +8501,7 @@ _02216502:
ldr r0, [r5, r2]
add r2, #8
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022166BE
_02216512:
cmp r4, #1
@@ -8509,7 +8509,7 @@ _02216512:
bne _0221654A
ldr r0, [r5, r0]
mov r1, #0x5c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8523,16 +8523,16 @@ _02216512:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_0221654A:
cmp r4, #2
bne _02216580
ldr r0, [r5, r0]
mov r1, #0x53
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8546,16 +8546,16 @@ _0221654A:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_02216580:
cmp r4, #4
bne _022165B6
ldr r0, [r5, r0]
mov r1, #0x55
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8569,16 +8569,16 @@ _02216580:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_022165B6:
cmp r4, #8
bne _022165EC
ldr r0, [r5, r0]
mov r1, #0x56
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8592,16 +8592,16 @@ _022165B6:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_022165EC:
cmp r4, #0x10
bne _02216622
ldr r0, [r5, r0]
mov r1, #0x54
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8615,16 +8615,16 @@ _022165EC:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_02216622:
cmp r4, #0x20
bne _02216658
ldr r0, [r5, r0]
mov r1, #0x5a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8638,16 +8638,16 @@ _02216622:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_02216658:
cmp r4, #0x40
bne _0221668E
ldr r0, [r5, r0]
mov r1, #0x5b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8661,14 +8661,14 @@ _02216658:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _022166BE
_0221668E:
ldr r0, [r5, r0]
mov r1, #0x59
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r7, #0
bl FUN_020690E4
@@ -8682,9 +8682,9 @@ _0221668E:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_022166BE:
add r0, r6, #0
bl FreeToHeap
@@ -8710,7 +8710,7 @@ MOD09_022166D0: ; 0x022166D0
ldr r0, _02216728 ; =0x00001FA8
mov r1, #0x5f
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r6, #0
bl FUN_020690E4
@@ -8729,9 +8729,9 @@ MOD09_022166D0: ; 0x022166D0
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
.align 2, 0
_02216728: .word 0x00001FA8
@@ -13344,7 +13344,7 @@ _02218C68:
add r6, r0, #0
ldr r0, [r5, #0x10]
mov r1, #0x2e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r6, #0
bl FUN_020690E4
@@ -13359,9 +13359,9 @@ _02218C68:
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -13411,7 +13411,7 @@ _02218D22:
bl NewMsgDataFromNarc
mov r1, #0x24
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r5, #0x14]
ldr r2, [r4, #4]
@@ -13420,9 +13420,9 @@ _02218D22:
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add r0, r5, #0
@@ -13436,7 +13436,7 @@ _02218D68:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x18]
mov r1, #0x22
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -13455,7 +13455,7 @@ _02218D82:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x18]
mov r1, #0x2c
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -13472,7 +13472,7 @@ _02218DAA:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x18]
mov r1, #0x2f
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -13489,7 +13489,7 @@ _02218DCE:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x18]
mov r1, #0x30
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -13516,7 +13516,7 @@ _02218DF2:
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x18]
mov r1, #0x2d
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
bl MOD09_02219BE0
ldr r0, _02218E40 ; =0x0000114B
@@ -14105,7 +14105,7 @@ MOD09_022192A4: ; 0x022192A4
mov r0, #2
ldr r1, [r1, #0xc]
lsl r0, r0, #8
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
pop {r4, pc}
.align 2, 0
@@ -14121,7 +14121,7 @@ MOD09_022192E4: ; 0x022192E4
ldr r0, [r4, #0x14]
bl FUN_0200AB18
ldr r0, [r4, #0x18]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
@@ -14442,7 +14442,7 @@ MOD09_02219560: ; 0x02219560
ldr r0, [r0, #0x10]
add r1, r2, #0
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
ldr r1, [sp, #0x10]
add r0, r6, #0
@@ -14467,7 +14467,7 @@ MOD09_02219560: ; 0x02219560
add r0, r5, r4
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x14
@@ -14551,7 +14551,7 @@ _022195C4:
beq _0221968A
ldr r0, [r5, #0x10]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #6
str r0, [sp]
@@ -14567,7 +14567,7 @@ _022195C4:
add r2, r4, #0
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x2c]
add r0, #0x40
bl FUN_02019220
@@ -14604,7 +14604,7 @@ MOD09_02219694: ; 0x02219694
lsl r2, r1, #3
ldr r1, _02219734 ; =0x0221BC7C
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r2, _02219730 ; =0x0000114D
str r0, [sp, #0x14]
ldrb r3, [r5, r2]
@@ -14619,7 +14619,7 @@ MOD09_02219694: ; 0x02219694
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x30]
ldr r1, [r5, #0x18]
mov r2, #0
@@ -14643,7 +14643,7 @@ MOD09_02219694: ; 0x02219694
add r0, r4, r6
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
_02219726:
add r0, r4, r6
bl FUN_02019220
@@ -14680,7 +14680,7 @@ MOD09_02219738: ; 0x02219738
lsl r2, r1, #3
ldr r1, _022197C8 ; =0x0221BC80
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r0, [sp, #0x14]
str r1, [sp]
@@ -14699,7 +14699,7 @@ MOD09_02219738: ; 0x02219738
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x34]
mov r3, #0
str r0, [sp]
@@ -14713,7 +14713,7 @@ MOD09_02219738: ; 0x02219738
add r0, r4, r7
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
_022197BA:
add r0, r4, r7
bl FUN_02019220
@@ -14831,7 +14831,7 @@ MOD09_02219884: ; 0x02219884
ldr r0, [r5, #0x10]
mov r1, #0x1c
ldr r4, [r5, #0x2c]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
mov r0, #0
ldr r1, [sp, #0x10]
@@ -14860,10 +14860,10 @@ MOD09_02219884: ; 0x02219884
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x10]
mov r1, #0x1d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r0, [sp, #0x14]
ldr r3, _022199B0 ; =0x0000114D
@@ -14882,7 +14882,7 @@ MOD09_02219884: ; 0x02219884
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #4
str r0, [sp]
mov r0, #0xff
@@ -14898,10 +14898,10 @@ MOD09_02219884: ; 0x02219884
add r3, r6, r7
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x10]
mov r1, #0x1e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -14920,7 +14920,7 @@ MOD09_02219884: ; 0x02219884
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [r5, #0x18]
add r2, r0, #0
@@ -14941,7 +14941,7 @@ MOD09_02219884: ; 0x02219884
sub r3, r6, r3
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x19
lsl r0, r0, #4
add r0, r4, r0
@@ -15070,7 +15070,7 @@ MOD09_02219A8C: ; 0x02219A8C
add r6, r1, #0
mov r1, #9
ldr r4, [r5, #0x2c]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r2, _02219AF4 ; =0x0000114D
add r7, r0, #0
ldrb r3, [r5, r2]
@@ -15086,7 +15086,7 @@ MOD09_02219A8C: ; 0x02219A8C
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
mov r1, #0
bl FUN_02019620
@@ -15102,7 +15102,7 @@ MOD09_02219A8C: ; 0x02219A8C
add r0, r4, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_02019220
add sp, #0x10
@@ -15122,7 +15122,7 @@ MOD09_02219AFC: ; 0x02219AFC
ldr r1, [r1, #0xc]
mov r0, #0x82
add r4, #0x20
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02219B58 ; =0x0000114D
add r7, r0, #0
ldrb r2, [r5, r1]
@@ -15149,7 +15149,7 @@ MOD09_02219AFC: ; 0x02219AFC
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_02019220
add sp, #0x10
diff --git a/arm9/modules/11/asm/module_11.s b/arm9/modules/11/asm/module_11.s
index 719fca68..9fdabf6b 100644
--- a/arm9/modules/11/asm/module_11.s
+++ b/arm9/modules/11/asm/module_11.s
@@ -907,7 +907,7 @@ _0222DC42:
mov r0, #5
lsl r0, r0, #6
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
ldr r0, [r4, #0x28]
mov r1, #0
@@ -3591,12 +3591,12 @@ _0222F30E:
mov r0, #1
lsl r0, r0, #8
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r1, _0222F4D4 ; =0x0000039B
add r0, r4, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
str r3, [sp, #4]
@@ -3606,7 +3606,7 @@ _0222F30E:
add r2, r6, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
ldr r0, _0222F4D8 ; =MOD11_0222F0D4
@@ -8256,7 +8256,7 @@ _022316CC:
bl FUN_0201BD84
add r5, r0, #0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _02231778
_022316F6:
cmp r7, #0x64
@@ -8277,7 +8277,7 @@ _02231708:
bl NewMsgDataFromNarc
add r1, r4, #0
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r6, #0
mov r1, #0xff
@@ -8294,7 +8294,7 @@ _02231708:
bl FUN_0201BD84
add r5, r0, #0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
b _02231778
@@ -9608,14 +9608,14 @@ MOD11_022321EC: ; 0x022321EC
add r5, r0, #0
add r0, r1, #0
ldrh r1, [r2, #2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
pop {r3, r4, r5, pc}
thumb_func_start MOD11_0223220C
@@ -31446,7 +31446,7 @@ _0223CF30:
mov r1, #0x3b
ldr r0, [sp, #0x28]
lsl r1, r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _0223CF5C
_0223CF42:
@@ -31454,13 +31454,13 @@ _0223CF42:
bne _0223CF52
ldr r0, [sp, #0x28]
ldr r1, _0223D05C ; =0x000003B1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _0223CF5C
_0223CF52:
ldr r0, [sp, #0x28]
ldr r1, _0223D060 ; =0x000003B2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
_0223CF5C:
ldr r0, [sp, #0x18]
@@ -31484,9 +31484,9 @@ _0223CF5C:
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x20]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, sp, #0x68
bl FUN_0201901C
mov r0, #0
@@ -85839,12 +85839,12 @@ MOD11_022574F0: ; 0x022574F0
add r4, r0, #0
mov r0, #0x16
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0xf1
str r0, [sp, #0x18]
add r0, r7, #0
lsl r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r1, r5, #0
add r2, r5, #0
add r1, #0x24
@@ -85862,7 +85862,7 @@ MOD11_022574F0: ; 0x022574F0
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x1c]
add r0, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
str r0, [sp]
mov r0, #0xf
@@ -85961,9 +85961,9 @@ MOD11_022574F0: ; 0x022574F0
add r0, sp, #0x24
bl FUN_02019178
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x34
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -86429,11 +86429,11 @@ MOD11_022579F8: ; 0x022579F8
tst r2, r1
beq _02257A20
sub r1, #0x4a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _02257A26
_02257A20:
add r1, #0xc4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_02257A26:
add r7, r0, #0
mov r0, #0
@@ -86507,7 +86507,7 @@ _02257A26:
add r0, sp, #0x18
bl FUN_02019178
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x28
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -86530,7 +86530,7 @@ MOD11_02257AD4: ; 0x02257AD4
add r7, r0, #0
mov r0, #0x1e
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
mov r1, #1
add r6, r0, #0
lsl r1, r1, #0xa
@@ -86539,13 +86539,13 @@ MOD11_02257AD4: ; 0x02257AD4
beq _02257B14
ldr r0, [sp, #0x20]
sub r1, #0x49
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
b _02257B1E
_02257B14:
ldr r0, [sp, #0x20]
add r1, #0xc5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
_02257B1E:
mov r0, #1
@@ -86561,7 +86561,7 @@ _02257B1E:
ldr r2, [sp, #0x18]
add r0, r7, #0
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
str r0, [sp]
mov r0, #0xf
@@ -86632,9 +86632,9 @@ _02257B1E:
add r0, sp, #0x24
bl FUN_02019178
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x34
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -89532,16 +89532,16 @@ MOD11_02259284: ; 0x02259284
beq _022592CA
ldr r1, _02259488 ; =0x000003A3
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xe9
str r0, [sp, #0x24]
add r0, r4, #0
lsl r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r1, _0225948C ; =0x000003A5
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
b _0225931A
_022592CA:
@@ -89553,31 +89553,31 @@ _022592CA:
beq _022592FA
ldr r1, _02259490 ; =0x000004C7
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xe9
str r0, [sp, #0x24]
add r0, r4, #0
lsl r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r1, _0225948C ; =0x000003A5
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
b _0225931A
_022592FA:
mov r1, #0xe7
add r0, r4, #0
lsl r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x24]
ldr r1, _02259494 ; =0x0000039D
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r1, _02259498 ; =0x0000039E
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
_0225931A:
ldr r0, [r5]
@@ -89591,14 +89591,14 @@ _0225931A:
mov r1, #0x3a
add r0, r4, #0
lsl r1, r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r1, #1
b _0225934A
_0225933E:
ldr r1, _0225949C ; =0x0000039F
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r1, #0
_0225934A:
@@ -89682,13 +89682,13 @@ _0225934A:
add r2, r4, #0
bl MOD11_0225A458
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5]
bl MOD11_0222FF74
mov r1, #0x22
@@ -90074,7 +90074,7 @@ _02259748:
blt _022596BE
ldr r0, [sp, #0x1c]
ldr r1, _02259874 ; =0x000003A1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, _02259878 ; =0x000A0B0C
ldr r1, _0225987C ; =0x0000051C
@@ -90096,7 +90096,7 @@ _02259748:
add r2, r4, #0
bl MOD11_0225A458
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r4, #0
mov r7, #3
b _022597B0
@@ -90223,11 +90223,11 @@ MOD11_02259898: ; 0x02259898
mov r1, #0xeb
lsl r1, r1, #2
add r6, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r1, _0225991C ; =0x000003AD
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, _02259920 ; =0x00010203
ldr r1, _02259924 ; =0x000004CC
@@ -90269,9 +90269,9 @@ MOD11_02259898: ; 0x02259898
add r2, r6, #0
bl MOD11_0225A458
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
.align 2, 0
@@ -90290,11 +90290,11 @@ MOD11_02259930: ; 0x02259930
bl MOD11_022300C4
ldr r1, _022599B4 ; =0x0000049D
add r6, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r1, _022599B8 ; =0x0000049E
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, _022599BC ; =0x00010203
ldr r1, _022599C0 ; =0x000004CC
@@ -90336,9 +90336,9 @@ MOD11_02259930: ; 0x02259930
add r2, r6, #0
bl MOD11_0225A458
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
nop
@@ -90362,19 +90362,19 @@ MOD11_022599CC: ; 0x022599CC
add r4, r0, #0
ldr r1, _02259A98 ; =0x000004A2
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
ldr r1, _02259A9C ; =0x000004A3
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldrh r2, [r5, #0x18]
add r0, r4, #0
@@ -90383,11 +90383,11 @@ MOD11_022599CC: ; 0x022599CC
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r2, [sp, #0x20]
add r0, r4, #0
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02259AA0 ; =0x00010203
ldr r1, _02259AA4 ; =0x000004CC
str r0, [sp]
@@ -90428,13 +90428,13 @@ MOD11_022599CC: ; 0x022599CC
add r2, r7, #0
bl MOD11_0225A458
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x24
pop {r4, r5, r6, r7, pc}
nop
@@ -90458,19 +90458,19 @@ MOD11_02259AB0: ; 0x02259AB0
add r4, r0, #0
ldr r1, _02259B7C ; =0x000004C1
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
ldr r1, _02259B80 ; =0x000004C2
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldrh r2, [r5, #0x18]
add r0, r4, #0
@@ -90479,11 +90479,11 @@ MOD11_02259AB0: ; 0x02259AB0
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r2, [sp, #0x20]
add r0, r4, #0
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02259B84 ; =0x00010203
ldr r1, _02259B88 ; =0x000004CC
str r0, [sp]
@@ -90524,13 +90524,13 @@ MOD11_02259AB0: ; 0x02259AB0
add r2, r7, #0
bl MOD11_0225A458
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x24
pop {r4, r5, r6, r7, pc}
nop
@@ -90554,20 +90554,20 @@ MOD11_02259B94: ; 0x02259B94
add r4, r0, #0
ldr r1, _02259C60 ; =0x000004BF
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x13
str r0, [sp, #0x1c]
add r0, r6, #0
lsl r1, r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #0x64
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldrh r2, [r5, #0x18]
add r0, r4, #0
@@ -90576,11 +90576,11 @@ MOD11_02259B94: ; 0x02259B94
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r2, [sp, #0x20]
add r0, r4, #0
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02259C64 ; =0x00010203
ldr r1, _02259C68 ; =0x000004CC
str r0, [sp]
@@ -90621,13 +90621,13 @@ MOD11_02259B94: ; 0x02259B94
add r2, r7, #0
bl MOD11_0225A458
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x24
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -90678,7 +90678,7 @@ MOD11_02259C74: ; 0x02259C74
bl MOD11_022314E0
mov r0, #0x18
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x28]
ldr r0, _02259E38 ; =0x000004CC
mov r4, #0
@@ -90705,7 +90705,7 @@ _02259CE0:
bne _02259D0E
ldr r0, [sp, #0x2c]
ldr r1, _02259E3C ; =0x000003C2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x24]
b _02259D2A
_02259D0E:
@@ -90713,14 +90713,14 @@ _02259D0E:
bne _02259D1E
ldr r0, [sp, #0x2c]
ldr r1, _02259E40 ; =0x000003C3
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x24]
b _02259D2A
_02259D1E:
mov r1, #0xf1
ldr r0, [sp, #0x2c]
lsl r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x24]
_02259D2A:
lsl r2, r6, #3
@@ -90737,7 +90737,7 @@ _02259D2A:
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x28]
ldr r2, [sp, #0x24]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #1
tst r0, r4
beq _02259D5A
@@ -90773,7 +90773,7 @@ _02259D5C:
add r0, r5, #0
bl MOD11_0225A458
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
cmp r4, #1
beq _02259DA2
cmp r4, #3
@@ -90823,10 +90823,10 @@ _02259DEC:
b _02259CE0
_02259DF2:
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x2c]
ldr r1, _02259E54 ; =0x000003A2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, _02259E58 ; =0x000A0B0C
mov r3, #2
@@ -90849,7 +90849,7 @@ _02259DF2:
add r1, r5, r1
bl MOD11_0225A458
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x44
pop {r4, r5, r6, r7, pc}
nop
@@ -92051,18 +92051,18 @@ MOD11_0225A760: ; 0x0225A760
str r0, [sp, #0xc]
ldr r1, _0225A95C ; =0x000003AA
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x28]
ldr r0, [r7]
bl MOD11_02230138
str r0, [sp, #0x24]
mov r0, #0x10
mov r1, #5
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x30]
ldr r1, _0225A960 ; =0x000003A9
add r0, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r4, [sp, #0x38]
str r0, [sp, #0x2c]
mov r0, #0
@@ -92125,7 +92125,7 @@ _0225A814:
_0225A826:
ldrh r0, [r5]
mov r1, #5
- bl FUN_0200AA14
+ bl GetMoveName
str r0, [sp, #0x48]
ldr r0, _0225A964 ; =0x00070809
ldr r1, [sp, #0x48]
@@ -92135,7 +92135,7 @@ _0225A826:
mov r2, #2
bl MOD11_0225A968
ldr r0, [sp, #0x48]
- bl FUN_02021A20
+ bl String_dtor
_0225A846:
add r0, r6, #0
add r0, #0x84
@@ -92183,7 +92183,7 @@ _0225A876:
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x30]
ldr r2, [sp, #0x2c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldrh r0, [r5, #8]
ldrh r1, [r5, #0x10]
bl MOD11_0225B3D4
@@ -92255,11 +92255,11 @@ _0225A906:
b _0225A7CE
_0225A930:
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x30]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xc
_0225A944:
ldr r1, [sp, #8]
diff --git a/arm9/modules/12/asm/module_12.s b/arm9/modules/12/asm/module_12.s
index d7aca4f9..5ecb5cbd 100644
--- a/arm9/modules/12/asm/module_12.s
+++ b/arm9/modules/12/asm/module_12.s
@@ -192,7 +192,7 @@ MOD12_0222D5C0: ; 0x0222D5C0
mov r0, #0x1e
lsl r0, r0, #4
mov r1, #0x15
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x58]
add r0, r4, #0
bl MOD12_0222DFC4
@@ -496,7 +496,7 @@ MOD12_0222D9B0: ; 0x0222D9B0
ldr r0, [r4, #0x5c]
bl FUN_02002FEC
ldr r0, [r4, #0x58]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x54]
bl FUN_0200AB18
ldr r0, [r4, #0x44]
@@ -3291,7 +3291,7 @@ MOD12_0222EF04: ; 0x0222EF04
mov r0, #5
lsl r0, r0, #6
mov r1, #0x16
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x4c]
add r0, r5, #0
bl MOD12_0222F834
@@ -3669,7 +3669,7 @@ _0222F3AE:
ldr r0, [r4, #0x48]
bl FUN_0200AB18
ldr r0, [r4, #0x4c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x44]
bl DestroyMsgData
ldr r0, [r4, #0x30]
@@ -5163,7 +5163,7 @@ MOD12_0222FE4C: ; 0x0222FE4C
mov r0, #5
lsl r0, r0, #6
mov r1, #0x17
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0
add r1, #0xa0
str r0, [r1]
@@ -5507,7 +5507,7 @@ _02230296:
add r0, r4, #0
add r0, #0xa0
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add r0, #0x9c
ldr r0, [r0]
@@ -7698,7 +7698,7 @@ MOD12_022314A8: ; 0x022314A8
bl NewMsgDataFromNarc
add r5, r0, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
bl DestroyMsgData
@@ -8847,12 +8847,12 @@ MOD12_02231D5C: ; 0x02231D5C
ldr r0, [r5, #4]
add r1, r4, #0
ldr r0, [r0, #0x38]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [r5, #4]
add r1, r6, #0
ldr r0, [r0, #0x38]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, _02231E2C ; =0x00010200
add r1, r5, #0
@@ -8891,9 +8891,9 @@ MOD12_02231D5C: ; 0x02231D5C
str r3, [sp, #0x18]
bl MOD12_022322C0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r2, [r5, #4]
mov r0, #1
str r0, [sp]
@@ -9290,7 +9290,7 @@ _0223210E:
ldr r0, [r5, #4]
mov r1, #0x35
ldr r0, [r0, #0x38]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, _0223216C ; =0x0001090A
ldr r1, _02232174 ; =0x000080F0
@@ -9315,7 +9315,7 @@ _0223210E:
mov r3, #2
bl MOD12_022322C0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r2, [r5, #4]
ldr r0, [r2, #0x18]
ldr r1, [r2, #0x1c]
@@ -10781,7 +10781,7 @@ _02232C52:
_02232C62:
ldrh r0, [r7]
mov r1, #0x15
- bl FUN_0200AA14
+ bl GetMoveName
str r0, [sp, #0x24]
ldr r0, _02232D6C ; =0x00010708
ldr r1, [sp, #0x24]
@@ -10791,7 +10791,7 @@ _02232C62:
mov r2, #2
bl MOD12_02232D7C
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x4b
lsl r0, r0, #2
ldrb r0, [r4, r0]
@@ -10801,12 +10801,12 @@ _02232C62:
ldr r0, [r5, #4]
ldr r1, [sp, #0x34]
ldr r0, [r0, #0x40]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x28]
ldr r0, [r5, #4]
ldr r1, [sp, #0x30]
ldr r0, [r0, #0x40]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, _02232D70 ; =0x00010200
ldr r1, [sp, #0x28]
@@ -10823,9 +10823,9 @@ _02232C62:
mov r2, #0
bl MOD12_02232D7C
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
add r7, r7, #2
add r0, #0x14
@@ -10861,7 +10861,7 @@ _02232CF8:
add r3, r6, #0
bl MOD12_02232D7C
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add r7, r7, #1
add r4, #8
add r6, #0x14
@@ -15261,7 +15261,7 @@ _02234F40:
_02234F42:
add r0, r6, #0
add r1, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x28]
@@ -15271,7 +15271,7 @@ _02234F42:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
@@ -15300,7 +15300,7 @@ _02234F96:
mov r1, #1
bl FUN_02017B48
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -15387,7 +15387,7 @@ MOD12_02235038: ; 0x02235038
add r4, r1, #0
mov r0, #0xc
mov r1, #0x15
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x30]
lsl r0, r4, #2
ldr r1, [r5, #0xc]
@@ -15462,7 +15462,7 @@ _0223506A:
mov r0, #0x15
bl MOD12_02231380
ldr r0, [sp, #0x30]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x34
pop {r4, r5, r6, r7, pc}
nop
@@ -25505,7 +25505,7 @@ _02239AF2:
_02239AF4:
add r0, r6, #0
add r1, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x28]
@@ -25514,7 +25514,7 @@ _02239AF4:
ldr r0, [r5, #0x48]
ldr r1, [r5, #0x4c]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
@@ -25531,7 +25531,7 @@ _02239AF4:
add r5, #0xd0
strb r0, [r5]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -29444,11 +29444,11 @@ MOD12_0223B940: ; 0x0223B940
add r7, r0, #0
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r4, #0
add r1, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldr r0, _0223B9F8 ; =0x00010200
add r1, r5, #0
@@ -29485,9 +29485,9 @@ MOD12_0223B940: ; 0x0223B940
add r2, r7, #0
bl MOD12_0223BCD8
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
add sp, #0x18
@@ -29525,25 +29525,25 @@ MOD12_0223BA0C: ; 0x0223BA0C
bne _0223BA36
add r0, r5, #0
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _0223BA3E
_0223BA36:
add r0, r5, #0
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_0223BA3E:
add r4, r0, #0
add r0, r5, #0
mov r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, #0
mov r1, #3
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
add r0, r5, #0
mov r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldr r0, _0223BB18 ; =0x0001010B
add r2, r4, #0
@@ -29619,13 +29619,13 @@ _0223BA3E:
str r1, [sp, #0x18]
bl MOD12_0223BCD8
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x1c
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -31252,19 +31252,19 @@ MOD12_0223C734: ; 0x0223C734
add r0, #0x84
ldr r0, [r0]
mov r1, #5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x38]
add r0, r5, #0
add r0, #0x84
ldr r0, [r0]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x34]
add r0, r5, #0
add r0, #0x84
ldr r0, [r0]
mov r1, #7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x30]
mov r0, #0
ldr r1, _0223C868 ; =0x000009E8
@@ -31382,11 +31382,11 @@ _0223C778:
cmp r0, #3
blt _0223C778
ldr r0, [sp, #0x38]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x34]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x30]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -34750,7 +34750,7 @@ _0223E20E:
_0223E210:
add r0, r6, #0
add r1, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x28]
@@ -34763,7 +34763,7 @@ _0223E210:
ldr r0, [r0]
ldr r1, [r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x78
mov r1, #0xff
@@ -34782,7 +34782,7 @@ _0223E210:
ldr r1, _0223E270 ; =0x00000AB8
strb r0, [r5, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -35086,7 +35086,7 @@ _0223E49A:
lsl r4, r4, #2
ldrh r1, [r1, r4]
ldr r0, [r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _0223E524 ; =0x02246226
add r6, r0, #0
ldrb r1, [r1, r4]
@@ -35100,7 +35100,7 @@ _0223E49A:
ldr r0, [r0]
ldr r1, [r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x88
mov r1, #0xff
@@ -35117,7 +35117,7 @@ _0223E49A:
mov r1, #1
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0223E51C ; =0x00001BF1
mov r1, #1
strb r1, [r5, r0]
@@ -41234,7 +41234,7 @@ MOD12_02241210: ; 0x02241210
mov r0, #5
lsl r0, r0, #6
mov r1, #0x18
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0
add r1, #0xcc
str r0, [r1]
@@ -41542,7 +41542,7 @@ _022415D4:
add r0, r4, #0
add r0, #0xcc
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add r0, #0xc8
ldr r0, [r0]
@@ -43537,7 +43537,7 @@ _02242616:
_02242618:
add r0, r6, #0
add r1, r7, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x28]
@@ -43550,7 +43550,7 @@ _02242618:
ldr r0, [r0]
ldr r1, [r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
@@ -43570,7 +43570,7 @@ _02242618:
lsl r1, r1, #2
strb r0, [r5, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -43872,7 +43872,7 @@ MOD12_02242804: ; 0x02242804
bl FUN_020030E8
mov r0, #0xc
mov r1, #0x18
- bl FUN_020219F4
+ bl String_ctor
add r4, r6, #0
add r7, r0, #0
mov r5, #0
@@ -43937,7 +43937,7 @@ _022428E6:
cmp r5, #4
blt _022428E6
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r2, #1
lsl r2, r2, #0x1a
ldr r1, [r2]
diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s
index 17079687..a471bab6 100644
--- a/arm9/modules/14/asm/module_14.s
+++ b/arm9/modules/14/asm/module_14.s
@@ -7820,7 +7820,7 @@ MOD14_021DB49C: ; 0x021DB49C
strb r0, [r4]
mov r0, #0x14
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #4]
add r0, r5, #0
add r1, r4, #0
@@ -7829,11 +7829,11 @@ MOD14_021DB49C: ; 0x021DB49C
thumb_func_start MOD14_021DB4BC
MOD14_021DB4BC: ; 0x021DB4BC
- ldr r3, _021DB4C4 ; =FUN_02021A20
+ ldr r3, _021DB4C4 ; =String_dtor
ldr r0, [r0, #4]
bx r3
nop
-_021DB4C4: .word FUN_02021A20
+_021DB4C4: .word String_dtor
thumb_func_start MOD14_021DB4C8
MOD14_021DB4C8: ; 0x021DB4C8
@@ -7841,23 +7841,23 @@ MOD14_021DB4C8: ; 0x021DB4C8
add r4, r0, #0
mov r0, #0xc
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x14]
mov r0, #0xc
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
mov r0, #0x12
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x1c]
mov r0, #0xc
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x20]
mov r0, #0x10
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x24]
pop {r4, pc}
@@ -7866,15 +7866,15 @@ MOD14_021DB500: ; 0x021DB500
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x24]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
thumb_func_start MOD14_021DB524
@@ -7892,11 +7892,11 @@ _021DB534:
strb r7, [r0, #2]
mov r0, #0xc
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x30]
mov r0, #0xc
mov r1, #9
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x34]
add r4, r4, #1
add r5, #0x30
@@ -7912,9 +7912,9 @@ MOD14_021DB558: ; 0x021DB558
mov r4, #0
_021DB55E:
ldr r0, [r5, #0x30]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x34]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, #0x30
cmp r4, #2
@@ -9277,14 +9277,14 @@ _021DBF6C:
ldrh r1, [r4, #4]
ldr r0, [r6, r0]
ldr r2, [r4, #0x18]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021DBF9A
_021DBF8C:
ldr r0, [r4, #0x18]
ldr r1, [r4, #0x14]
- bl FUN_02021A74
+ bl StringCopy
ldr r0, [r4, #0x14]
- bl FUN_02021A4C
+ bl StringSetEmpty
_021DBF9A:
ldrh r1, [r4, #6]
cmp r1, #0
@@ -9299,7 +9299,7 @@ _021DBFAA:
ldr r0, [r6, r0]
ldr r2, [r4, #0x1c]
mov r1, #0x14
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021DBFB8:
add r0, r5, #0
bl GetBoxMonNature
@@ -9308,7 +9308,7 @@ _021DBFB8:
lsl r0, r0, #2
ldr r0, [r6, r0]
ldr r2, [r4, #0x20]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
mov r1, #0xa
mov r2, #0
@@ -9318,7 +9318,7 @@ _021DBFB8:
lsl r0, r0, #2
ldr r0, [r6, r0]
ldr r2, [r4, #0x24]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
bl FreeMonPersonal
ldr r1, [sp]
@@ -9354,15 +9354,15 @@ MOD14_021DBFF4: ; 0x021DBFF4
ldr r0, [r4, #0x28]
beq _021DC02E
ldr r1, [r6, #0x18]
- bl FUN_02021A74
+ bl StringCopy
b _021DC034
_021DC02E:
ldr r1, [r6, #0x14]
- bl FUN_02021A74
+ bl StringCopy
_021DC034:
ldr r0, [r4, #0x2c]
ldr r1, [r6, #0x20]
- bl FUN_02021A74
+ bl StringCopy
mov r1, #0x1a
lsl r1, r1, #4
ldr r0, [sp]
@@ -9596,7 +9596,7 @@ _021DC20A:
ldr r0, [r6, r0]
ldr r2, [r4, #0x1c]
mov r1, #0x14
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021DC218:
add r0, r5, #0
bl MOD14_021DC3CC
@@ -9724,7 +9724,7 @@ MOD14_021DC2E4: ; 0x021DC2E4
ldr r0, [r4, r0]
ldr r2, [r2, #0x1c]
mov r1, #0x14
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
mov r1, #0
add r2, r4, #0
@@ -19456,11 +19456,11 @@ _021E0DAC:
str r0, [r5, #0x30]
ldr r0, [sp, #0x1c]
mov r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x44]
ldr r0, [sp, #0x1c]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x48]
bl FUN_0206E12C
add r4, r0, #0
@@ -19526,12 +19526,12 @@ _021E0E86:
ldr r0, [r5, #0x44]
cmp r0, #0
beq _021E0E90
- bl FUN_02021A20
+ bl String_dtor
_021E0E90:
ldr r0, [r5, #0x48]
cmp r0, #0
beq _021E0E9A
- bl FUN_02021A20
+ bl String_dtor
_021E0E9A:
ldr r0, [r5, #0x24]
cmp r0, #0
@@ -20662,11 +20662,11 @@ MOD14_021E1750: ; 0x021E1750
str r0, [r4, #0x14]
mov r0, #0x40
mov r1, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x30]
mov r0, #0x40
mov r1, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x34]
mov r0, #0
strh r0, [r4, #0x1c]
@@ -20729,12 +20729,12 @@ _021E17F6:
ldr r0, [r5, #0x30]
cmp r0, #0
beq _021E1800
- bl FUN_02021A20
+ bl String_dtor
_021E1800:
ldr r0, [r5, #0x34]
cmp r0, #0
beq _021E180A
- bl FUN_02021A20
+ bl String_dtor
_021E180A:
ldr r0, [r5, #0x18]
bl FreeToHeap
@@ -20832,11 +20832,11 @@ MOD14_021E189C: ; 0x021E189C
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x30]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x2c]
ldr r1, [r5, #0x34]
ldr r2, [r5, #0x30]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -21006,7 +21006,7 @@ _021E1A26:
ldr r0, [r5, #0x14]
ldr r2, [r5, #0x30]
add r1, r3, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r7, [sp]
mov r0, #0xff
str r0, [sp, #4]
@@ -21560,7 +21560,7 @@ _021E1DBC:
mov r0, #0x7d
lsl r0, r0, #2
mov r1, #0xa
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021E1EE0 ; =0x00004BFC
ldr r2, _021E1EE4 ; =0x00000157
str r0, [r5, r1]
@@ -21693,7 +21693,7 @@ _021E1F62:
ldr r0, [r5, r0]
cmp r0, #0
beq _021E1F6E
- bl FUN_02021A20
+ bl String_dtor
_021E1F6E:
ldr r0, [r5, #0x10]
cmp r0, #0
@@ -22704,7 +22704,7 @@ MOD14_021E26E4: ; 0x021E26E4
ldr r0, [r5, r2]
add r2, r2, #4
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -24404,7 +24404,7 @@ _021E33E4:
mov r0, #0
str r0, [r4, #0x14]
mov r0, #0x20
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0
add r1, #0x84
str r0, [r1]
@@ -24553,7 +24553,7 @@ _021E3518:
ldr r0, [r0]
cmp r0, #0
beq _021E3526
- bl FUN_02021A20
+ bl String_dtor
_021E3526:
mov r4, #0
add r5, r6, #0
@@ -28217,7 +28217,7 @@ _021E5064:
str r0, [r4, #0x70]
mov r0, #0x20
mov r1, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x74]
mov r0, #0xe
mov r1, #0
@@ -28252,7 +28252,7 @@ MOD14_021E50EC: ; 0x021E50EC
add r0, r4, #0
bl MOD14_021E5474
ldr r0, [r4, #0x74]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FreeToHeap
_021E5124:
@@ -29049,7 +29049,7 @@ _021E5742:
ldrh r1, [r6]
ldr r0, [r5, #0x6c]
ldr r2, [r5, #0x74]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r5, #0x74]
add r2, r0, #0
@@ -29081,7 +29081,7 @@ _021E5786:
ldr r0, [r5, #0x6c]
ldr r2, [r5, #0x74]
mov r1, #0x2b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r5, #0x74]
add r2, r0, #0
@@ -29230,7 +29230,7 @@ _021E58BA:
ldr r0, [r5, #0x6c]
ldr r2, [r5, #0x74]
mov r1, #0x2c
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r7, #0
add r6, r7, #0
_021E58C8:
@@ -29324,7 +29324,7 @@ _021E5970:
beq _021E59A8
ldr r0, [r5, #0x70]
ldr r2, [r5, #0x74]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r5, #0x74]
add r2, r0, #0
@@ -29357,7 +29357,7 @@ _021E59B8:
ldr r0, [r5, #0x6c]
ldr r2, [r5, #0x74]
mov r1, #0x2c
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r7, #0
mov r6, #4
_021E59C6:
diff --git a/arm9/modules/15/asm/module_15.s b/arm9/modules/15/asm/module_15.s
index f63c7b7a..b343df75 100644
--- a/arm9/modules/15/asm/module_15.s
+++ b/arm9/modules/15/asm/module_15.s
@@ -4336,7 +4336,7 @@ MOD15_021D95E8: ; 0x021D95E8
str r0, [r4, #0x44]
mov r0, #0x80
mov r1, #0x23
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x4c]
ldr r2, _021D9630 ; =0x00000182
mov r0, #0
@@ -4384,7 +4384,7 @@ _021D966A:
ldr r0, [r4, #0x4c]
cmp r0, #0
beq _021D9674
- bl FUN_02021A20
+ bl String_dtor
_021D9674:
add r0, r4, #0
add r0, #0xc
@@ -4933,7 +4933,7 @@ _021D9ADE:
str r0, [sp, #0x10]
bl MOD15_021D9B30
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
add sp, #0x28
pop {r3, r4, r5, r6, r7, pc}
@@ -4949,7 +4949,7 @@ MOD15_021D9B04: ; 0x021D9B04
mov r1, #0x23
bl MOD15_021D8720
str r0, [r4]
- bl FUN_02021F2C
+ bl String_c_str
str r0, [r4, #4]
ldrh r1, [r0]
ldr r0, _021D9B2C ; =0x0000FFFE
@@ -4967,11 +4967,11 @@ _021D9B2C: .word 0x0000FFFE
thumb_func_start MOD15_021D9B30
MOD15_021D9B30: ; 0x021D9B30
- ldr r3, _021D9B38 ; =FUN_02021A20
+ ldr r3, _021D9B38 ; =String_dtor
ldr r0, [r0]
bx r3
nop
-_021D9B38: .word FUN_02021A20
+_021D9B38: .word String_dtor
thumb_func_start MOD15_021D9B3C
MOD15_021D9B3C: ; 0x021D9B3C
@@ -5217,7 +5217,7 @@ _021D9CDC:
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
add r6, r0, #0
add r0, r5, #0
@@ -5228,11 +5228,11 @@ _021D9CDC:
add r1, r0, #0
ldr r0, [r4, #0x48]
ldr r2, [r4, #0x4c]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [r4, #0x4c]
add r0, r5, #0
add r1, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -5246,7 +5246,7 @@ _021D9CDC:
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_0200AB18
b _021D9DB0
@@ -5254,7 +5254,7 @@ _021D9D40:
ldr r0, [r4, #0x48]
ldr r2, [r4, #0x4c]
mov r1, #6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -5272,7 +5272,7 @@ _021D9D66:
ldr r0, [r4, #0x48]
ldr r2, [r4, #0x4c]
mov r1, #7
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -5290,7 +5290,7 @@ _021D9D8C:
ldr r0, [r4, #0x48]
ldr r2, [r4, #0x4c]
mov r1, #8
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -5466,7 +5466,7 @@ MOD15_021D9ECC: ; 0x021D9ECC
ldr r0, [r5, #0x48]
ldr r2, [r5, #0x4c]
mov r1, #9
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -5482,7 +5482,7 @@ MOD15_021D9ECC: ; 0x021D9ECC
ldr r0, [r5, #0x48]
ldr r2, [r5, #0x4c]
mov r1, #0xa
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x10
str r0, [sp]
mov r0, #0xff
@@ -5655,7 +5655,7 @@ MOD15_021DA044: ; 0x021DA044
mov r0, #0x1a
add r2, r4, #0
mov r3, #0x23
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r4, r0, #0
mov r0, #0
add r1, r4, #0
@@ -5678,7 +5678,7 @@ MOD15_021DA044: ; 0x021DA044
add r0, sp, #0x10
bl FUN_02019548
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, sp, #0x10
bl FUN_02019178
add sp, #0x20
@@ -5982,7 +5982,7 @@ _021DA2E4:
beq _021DA302
ldr r0, [sp, #0x20]
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldr r0, _021DA3A8 ; =0x0001020F
str r0, [sp, #0x1c]
@@ -5990,7 +5990,7 @@ _021DA2E4:
_021DA302:
ldr r0, [sp, #0x20]
mov r1, #0xc
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldr r0, _021DA3AC ; =0x0003040F
str r0, [sp, #0x1c]
@@ -6046,7 +6046,7 @@ _021DA31A:
add r0, sp, #0x28
bl FUN_02019548
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, sp, #0x28
bl FUN_02019178
add r4, r4, #1
@@ -6098,7 +6098,7 @@ _021DA3CC:
bl FUN_02019064
mov r0, #4
mov r1, #0x23
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, sp, #0x20
mov r1, #0xf
@@ -6147,7 +6147,7 @@ _021DA452:
add r0, sp, #0x20
bl FUN_02019270
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, sp, #0x20
bl FUN_02019178
ldr r0, [sp, #0x14]
@@ -6173,7 +6173,7 @@ MOD15_021DA480: ; 0x021DA480
bl NewMsgDataFromNarc
mov r1, #0xd
str r0, [sp, #0x20]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x1c]
mov r0, #0
ldr r1, [sp, #0x1c]
@@ -6241,7 +6241,7 @@ _021DA4C2:
cmp r7, #2
blo _021DA4B6
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
bl DestroyMsgData
add r0, r5, #0
@@ -6667,7 +6667,7 @@ MOD15_021DA828: ; 0x021DA828
str r0, [r4, #0xc]
mov r0, #0x20
mov r1, #0x23
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x3c]
mov r0, #0
str r0, [sp]
@@ -6730,7 +6730,7 @@ _021DA8C6:
ldr r0, [r4, #0x3c]
cmp r0, #0
beq _021DA8D0
- bl FUN_02021A20
+ bl String_dtor
_021DA8D0:
add r0, r4, #0
add r0, #0x20
@@ -7649,25 +7649,25 @@ MOD15_021DAFF8: ; 0x021DAFF8
mov r0, #0x1a
mov r2, #0xb
mov r3, #0x23
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
str r0, [sp, #4]
ldr r1, _021DB0F8 ; =0x00000182
mov r0, #0x1a
mov r2, #0xc
mov r3, #0x23
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r7, r0, #0
ldr r1, _021DB0F8 ; =0x00000182
mov r0, #0x1a
mov r2, #0xd
mov r3, #0x23
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r6, r0, #0
ldr r1, _021DB0F8 ; =0x00000182
mov r0, #0x1a
mov r2, #0xe
mov r3, #0x23
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r4, r0, #0
mov r0, #0x23
str r0, [sp]
@@ -7737,13 +7737,13 @@ MOD15_021DAFF8: ; 0x021DAFF8
bl FreeToHeap
_021DB0D4:
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #4]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #2
bl FUN_02002CF8
add sp, #0x20
diff --git a/arm9/modules/16/asm/module_16.s b/arm9/modules/16/asm/module_16.s
index 8fa63c8c..cd5819b5 100644
--- a/arm9/modules/16/asm/module_16.s
+++ b/arm9/modules/16/asm/module_16.s
@@ -1160,7 +1160,7 @@ MOD16_021D7D9C: ; 0x021D7D9C
add r1, r3, #0
add r7, r2, #0
str r3, [sp, #0x10]
- bl FUN_020219F4
+ bl String_ctor
mov r1, #1
str r1, [sp]
add r1, r6, #0
@@ -1198,7 +1198,7 @@ MOD16_021D7D9C: ; 0x021D7D9C
mov r3, #0x31
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl MOD16_021DBBAC
add sp, #0x14
@@ -1799,7 +1799,7 @@ MOD16_021D8270: ; 0x021D8270
bl NewMsgDataFromNarc
add r5, r0, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
bl DestroyMsgData
@@ -4694,7 +4694,7 @@ MOD16_021D98B0: ; 0x021D98B0
add r4, r0, #0
ldr r0, _021D98D4 ; =0x00001754
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D98D8 ; =0x00001748
ldr r0, [r4, r0]
bl FUN_02087B0C
@@ -8477,7 +8477,7 @@ MOD16_021DB3C8: ; 0x021DB3C8
_021DB3E4:
add r0, r5, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x24]
ldr r3, [sp, #0x20]
@@ -8498,7 +8498,7 @@ _021DB3E4:
bl FUN_02002E14
add r6, r0, #0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl DestroyMsgData
add r0, r6, #0
@@ -9663,10 +9663,10 @@ _021DBBA8:
thumb_func_start MOD16_021DBBAC
MOD16_021DBBAC: ; 0x021DBBAC
- ldr r3, _021DBBB0 ; =FUN_02021A20
+ ldr r3, _021DBBB0 ; =String_dtor
bx r3
.align 2, 0
-_021DBBB0: .word FUN_02021A20
+_021DBBB0: .word String_dtor
thumb_func_end MOD16_021DBBAC
thumb_func_start MOD16_021DBBB4
@@ -9697,7 +9697,7 @@ MOD16_021DBBC8: ; 0x021DBBC8
bne _021DBBEE
add r0, r5, #0
add r1, r4, #0
- bl FUN_0200AA50
+ bl GetSpeciesName
add sp, #0x10
pop {r3, r4, r5, pc}
_021DBBEE:
@@ -9813,13 +9813,13 @@ MOD16_021DBCA0: ; 0x021DBCA0
mov r0, #1
lsl r0, r0, #8
add r1, r5, #0
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
beq _021DBCD0
add r0, r4, #0
add r1, r6, #0
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021DBCD0:
add r0, r4, #0
bl DestroyMsgData
@@ -11508,7 +11508,7 @@ MOD16_021DC958: ; 0x021DC958
add r6, r1, #0
add r7, r2, #0
str r3, [sp, #0x10]
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021DCA24 ; =0x00000266
mov r0, #0
@@ -11518,7 +11518,7 @@ MOD16_021DC958: ; 0x021DC958
mov r1, #0
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x98
str r0, [sp]
mov r1, #0
@@ -11533,7 +11533,7 @@ MOD16_021DC958: ; 0x021DC958
add r0, r6, #0
mov r1, #1
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x98
str r0, [sp]
mov r1, #0
@@ -11582,7 +11582,7 @@ MOD16_021DC958: ; 0x021DC958
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
ldr r0, [r5]
@@ -11603,7 +11603,7 @@ MOD16_021DCA2C: ; 0x021DCA2C
mov r0, #0x20
add r6, r1, #0
add r7, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021DCAAC ; =0x00000266
mov r0, #0
@@ -11613,7 +11613,7 @@ MOD16_021DCA2C: ; 0x021DCA2C
mov r1, #0x6c
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x98
str r0, [sp]
mov r1, #0
@@ -11644,7 +11644,7 @@ MOD16_021DCA2C: ; 0x021DCA2C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
ldr r0, [r5]
@@ -12784,7 +12784,7 @@ MOD16_021DD370: ; 0x021DD370
mov r0, #0x20
add r1, r4, #0
add r6, r3, #0
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r2, _021DD444 ; =0x00000266
mov r0, #0
@@ -12836,7 +12836,7 @@ MOD16_021DD370: ; 0x021DD370
ldr r0, [sp, #0x14]
mov r1, #0x63
add r2, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -12866,7 +12866,7 @@ _021DD420:
add r0, r5, #0
bl MOD16_021DB3BC
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
bl DestroyMsgData
add sp, #0x40
@@ -17094,7 +17094,7 @@ _021DF394:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -17146,7 +17146,7 @@ MOD16_021DF3E4: ; 0x021DF3E4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -17391,7 +17391,7 @@ MOD16_021DF5D0: ; 0x021DF5D0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
nop
@@ -17485,7 +17485,7 @@ _021DF698:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -17612,7 +17612,7 @@ _021DF774:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -17880,7 +17880,7 @@ MOD16_021DF970: ; 0x021DF970
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
mov r1, #0
bl FUN_020178BC
@@ -29757,7 +29757,7 @@ MOD16_021E5064: ; 0x021E5064
add r1, r6, #0
str r3, [sp, #0x14]
ldr r4, [sp, #0x30]
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r2, _021E5100 ; =0x00000266
mov r0, #0
@@ -29767,7 +29767,7 @@ MOD16_021E5064: ; 0x021E5064
mov r1, #9
add r2, r7, #0
str r0, [sp, #0x18]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x58
str r0, [sp]
mov r1, #0
@@ -29781,7 +29781,7 @@ MOD16_021E5064: ; 0x021E5064
ldr r0, [sp, #0x18]
mov r1, #0xa
add r2, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x68
str r0, [sp]
mov r1, #0
@@ -29793,7 +29793,7 @@ MOD16_021E5064: ; 0x021E5064
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
bl DestroyMsgData
ldr r2, [sp, #0x10]
@@ -29827,7 +29827,7 @@ MOD16_021E5104: ; 0x021E5104
add r6, r1, #0
str r2, [sp, #0x10]
add r5, r3, #0
- bl FUN_020219F4
+ bl String_ctor
mov r2, #0x9b
add r4, r0, #0
mov r0, #0
@@ -29838,7 +29838,7 @@ MOD16_021E5104: ; 0x021E5104
ldr r1, [sp, #0x10]
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x58
str r0, [sp]
mov r1, #0
@@ -29850,7 +29850,7 @@ MOD16_021E5104: ; 0x021E5104
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0x14
@@ -29867,7 +29867,7 @@ MOD16_021E5158: ; 0x021E5158
add r6, r1, #0
str r2, [sp, #0x10]
add r5, r3, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021E51A8 ; =0x0000026B
mov r0, #0
@@ -29877,7 +29877,7 @@ MOD16_021E5158: ; 0x021E5158
ldr r1, [sp, #0x10]
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x68
str r0, [sp]
mov r1, #0
@@ -29889,7 +29889,7 @@ MOD16_021E5158: ; 0x021E5158
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0x14
@@ -34435,7 +34435,7 @@ MOD16_021E72E4: ; 0x021E72E4
str r2, [sp, #0x10]
mov r0, #0x40
add r1, r2, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x18]
ldr r2, _021E7394 ; =0x00000266
ldr r3, [sp, #0x10]
@@ -34458,7 +34458,7 @@ _021E731E:
add r1, r0, #0
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x18]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [sp, #0x18]
add r2, r0, #0
@@ -34481,7 +34481,7 @@ _021E731E:
sub r3, r3, r6
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
bl DestroyMsgData
ldr r0, [r4, #0x1c]
@@ -45793,7 +45793,7 @@ MOD16_021EC7E8: ; 0x021EC7E8
add r5, r0, #0
mov r0, #0x20
add r6, r1, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021EC890 ; =0x00000266
mov r0, #0
@@ -45803,7 +45803,7 @@ MOD16_021EC7E8: ; 0x021EC7E8
mov r1, #0x2b
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
mov r3, #1
add r1, r4, #0
@@ -45825,7 +45825,7 @@ MOD16_021EC7E8: ; 0x021EC7E8
add r0, r6, #0
mov r1, #9
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xa8
str r0, [sp]
mov r1, #0
@@ -45841,7 +45841,7 @@ MOD16_021EC7E8: ; 0x021EC7E8
add r0, r6, #0
mov r1, #9
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xa8
str r0, [sp]
mov r1, #0
@@ -45855,7 +45855,7 @@ MOD16_021EC7E8: ; 0x021EC7E8
mov r3, #0x98
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0x10
@@ -45874,7 +45874,7 @@ MOD16_021EC898: ; 0x021EC898
add r6, r1, #0
mov r0, #0x20
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
mov r2, #0x9b
add r4, r0, #0
mov r0, #0
@@ -45887,7 +45887,7 @@ MOD16_021EC898: ; 0x021EC898
bl MOD16_021D9DE8
add r1, r7, #0
str r0, [sp, #0x14]
- bl FUN_0200AA50
+ bl GetSpeciesName
str r0, [sp, #0x18]
mov r0, #0x98
str r0, [sp]
@@ -45904,7 +45904,7 @@ MOD16_021EC898: ; 0x021EC898
ldr r0, [sp, #0x10]
ldr r1, [sp, #0x14]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -45923,7 +45923,7 @@ MOD16_021EC898: ; 0x021EC898
add r0, r0, #4
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
ldr r2, _021EC9AC ; =0x00000266
@@ -45953,13 +45953,13 @@ MOD16_021EC898: ; 0x021EC898
add r0, r7, #0
mov r1, #0x5f
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021EC970
_021EC966:
add r0, r7, #0
mov r1, #0x60
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021EC970:
mov r0, #0
add r1, r4, #0
@@ -45979,7 +45979,7 @@ _021EC970:
add r0, r0, #4
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add sp, #0x1c
@@ -48773,7 +48773,7 @@ MOD16_021EDEC8: ; 0x021EDEC8
add r5, r0, #0
mov r0, #0x20
add r6, r1, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021EDF70 ; =0x00000266
mov r0, #0
@@ -48783,7 +48783,7 @@ MOD16_021EDEC8: ; 0x021EDEC8
mov r1, #0x2c
add r2, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
mov r3, #1
add r1, r4, #0
@@ -48805,7 +48805,7 @@ MOD16_021EDEC8: ; 0x021EDEC8
add r0, r6, #0
mov r1, #0xa
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xa8
str r0, [sp]
mov r1, #0
@@ -48821,7 +48821,7 @@ MOD16_021EDEC8: ; 0x021EDEC8
add r0, r6, #0
mov r1, #0xa
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xa8
str r0, [sp]
mov r1, #0
@@ -48835,7 +48835,7 @@ MOD16_021EDEC8: ; 0x021EDEC8
mov r3, #0x98
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0x10
@@ -48854,7 +48854,7 @@ MOD16_021EDF78: ; 0x021EDF78
add r6, r1, #0
mov r0, #0x20
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r2, _021EE084 ; =0x0000026B
mov r0, #0
@@ -48866,7 +48866,7 @@ MOD16_021EDF78: ; 0x021EDF78
bl MOD16_021D9DE8
add r1, r7, #0
str r0, [sp, #0x14]
- bl FUN_0200AA50
+ bl GetSpeciesName
str r0, [sp, #0x18]
mov r0, #0x98
str r0, [sp]
@@ -48883,7 +48883,7 @@ MOD16_021EDF78: ; 0x021EDF78
ldr r0, [sp, #0x10]
ldr r1, [sp, #0x14]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -48902,7 +48902,7 @@ MOD16_021EDF78: ; 0x021EDF78
add r0, r0, #4
bl FUN_0201BDE0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
ldr r2, _021EE08C ; =0x00000266
@@ -48932,13 +48932,13 @@ MOD16_021EDF78: ; 0x021EDF78
add r0, r7, #0
mov r1, #0x61
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021EE04E
_021EE044:
add r0, r7, #0
mov r1, #0x62
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021EE04E:
mov r0, #0
add r1, r4, #0
@@ -48958,7 +48958,7 @@ _021EE04E:
add r0, r0, #4
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add sp, #0x1c
@@ -52400,7 +52400,7 @@ MOD16_021EFA6C: ; 0x021EFA6C
add r6, r0, #0
mov r0, #0x40
add r4, r1, #0
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
ldr r2, _021EFABC ; =0x00000266
mov r0, #0
@@ -52410,7 +52410,7 @@ MOD16_021EFA6C: ; 0x021EFA6C
mov r1, #0x6d
add r2, r5, #0
add r4, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xc1
@@ -52423,7 +52423,7 @@ MOD16_021EFA6C: ; 0x021EFA6C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
add sp, #0x10
diff --git a/arm9/modules/17/asm/module_17.s b/arm9/modules/17/asm/module_17.s
index a45d8d7f..b02c0773 100644
--- a/arm9/modules/17/asm/module_17.s
+++ b/arm9/modules/17/asm/module_17.s
@@ -4260,7 +4260,7 @@ MOD17_021D95AC: ; 0x021D95AC
add r1, r5, #0
bl FUN_020274F0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_021D95EC:
ldr r0, [sp]
mov r5, #0
@@ -4347,7 +4347,7 @@ MOD17_021D964C: ; 0x021D964C
add r1, r5, #0
bl FUN_02027A58
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_021D969A:
ldr r1, [sp]
add r0, r6, #0
@@ -4715,7 +4715,7 @@ MOD17_021D9918: ; 0x021D9918
bl NewMsgDataFromNarc
ldr r1, [sp, #0x14]
add r6, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r3, #0
str r3, [sp]
@@ -4729,7 +4729,7 @@ MOD17_021D9918: ; 0x021D9918
add r2, r4, #0
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
ldr r0, _021D99D4 ; =0x000006A8
@@ -4761,18 +4761,18 @@ MOD17_021D99E0: ; 0x021D99E0
bl NewMsgDataFromNarc
add r1, r4, #0
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #1
lsl r0, r0, #8
mov r1, #0xd
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, _021D9A60 ; =0x000006D4
add r1, r4, #0
ldr r0, [r5, r0]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
ldr r0, _021D9A64 ; =0x0001020F
@@ -4785,9 +4785,9 @@ MOD17_021D99E0: ; 0x021D99E0
add r2, r4, #0
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
ldr r0, _021D9A58 ; =0x000006A8
@@ -4826,12 +4826,12 @@ _021D9A7E:
bl NewMsgDataFromNarc
add r1, r4, #0
add r7, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #1
lsl r0, r0, #8
mov r1, #0xd
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x6d
lsl r1, r1, #4
str r0, [r5, r1]
@@ -4839,7 +4839,7 @@ _021D9A7E:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _021D9B10 ; =0x000006C4
ldr r1, [r5, r0]
ldrb r1, [r1, #0x16]
@@ -4866,7 +4866,7 @@ _021D9AD0:
bl FUN_0201BDE0
add r6, r0, #0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
ldr r0, _021D9B08 ; =0x000006A8
@@ -4889,7 +4889,7 @@ MOD17_021D9B18: ; 0x021D9B18
mov r0, #0x6d
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x6d
mov r1, #0
lsl r0, r0, #4
@@ -11261,7 +11261,7 @@ MOD17_021DC880: ; 0x021DC880
_021DC898:
add r0, r6, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #0xe
mov r1, #1
@@ -11292,7 +11292,7 @@ _021DC898:
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add r0, r4, #0
@@ -11681,7 +11681,7 @@ MOD17_021DCBC0: ; 0x021DCBC0
mov r0, #0x51
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x51
mov r1, #0
lsl r0, r0, #2
@@ -11940,7 +11940,7 @@ MOD17_021DCD80: ; 0x021DCD80
_021DCD98:
add r0, r5, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x24]
ldr r3, [sp, #0x20]
@@ -11957,7 +11957,7 @@ _021DCD98:
bl FUN_0201BDE0
add r6, r0, #0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl DestroyMsgData
add r0, r6, #0
@@ -11991,7 +11991,7 @@ _021DCDEC:
_021DCE00:
ldr r1, [sp, #0x10]
add r0, r5, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4]
ldr r0, [sp, #0x2c]
ldr r3, [sp, #0x28]
@@ -14369,7 +14369,7 @@ _021DDFF8:
bl FUN_02020044
mov r0, #0xc
mov r1, #0xd
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r0, [r5]
add r1, r7, #0
@@ -14397,7 +14397,7 @@ _021DDFF8:
sub r3, r3, r4
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5]
bl FUN_0202769C
add r2, r0, #0
@@ -14406,16 +14406,16 @@ _021DDFF8:
bl FUN_0200B518
mov r0, #0xc8
mov r1, #0xd
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [sp, #0x10]
mov r1, #0x2d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
add r0, r6, #0
add r1, r4, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -14439,9 +14439,9 @@ _021DDFF8:
sub r3, r3, r5
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r6, #0
@@ -14471,7 +14471,7 @@ MOD17_021DE0F4: ; 0x021DE0F4
add r7, r0, #0
mov r0, #0xc8
mov r1, #0xd
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [r5, #8]
bl FUN_02083298
@@ -14526,14 +14526,14 @@ MOD17_021DE0F4: ; 0x021DE0F4
_021DE1A0:
ldr r0, [sp, #0x10]
mov r1, #0x2b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r7, #0
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -14558,14 +14558,14 @@ _021DE1A0:
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
mov r1, #0x2c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r7, #0
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -14589,7 +14589,7 @@ _021DE1A0:
sub r3, r3, r5
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r7, #0
diff --git a/arm9/modules/18/asm/module_18.s b/arm9/modules/18/asm/module_18.s
index d233da89..fe6f1433 100644
--- a/arm9/modules/18/asm/module_18.s
+++ b/arm9/modules/18/asm/module_18.s
@@ -7692,7 +7692,7 @@ _0223D212:
add r5, r0, #0
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
ldr r2, _0223D290 ; =0x02251384
add r6, r0, #0
ldr r2, [r2]
@@ -7709,11 +7709,11 @@ _0223D212:
bl MOD18_0224DBB4
mov r1, #0x5f
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [sp]
add r0, r5, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, _0223D290 ; =0x02251384
mov r0, #0
ldr r1, [r1]
@@ -7731,7 +7731,7 @@ _0223D276:
cmp r6, #0
beq _0223D280
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_0223D280:
cmp r5, #0
beq _0223D28A
@@ -8134,7 +8134,7 @@ _0223D5AC:
ldr r0, [r0]
cmp r0, #0
beq _0223D5BC
- bl FUN_02021A20
+ bl String_dtor
_0223D5BC:
add r4, r4, #1
add r5, r5, #4
@@ -8307,7 +8307,7 @@ MOD18_0223D6D8: ; 0x0223D6D8
add r4, r0, #0
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
add r0, r4, #0
mov r1, #0
@@ -8321,13 +8321,13 @@ MOD18_0223D6D8: ; 0x0223D6D8
bl MOD18_0224DBB4
ldr r1, [sp]
add r2, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [sp, #4]
add r0, r4, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_0200AB18
add sp, #8
@@ -8354,7 +8354,7 @@ MOD18_0223D744: ; 0x0223D744
add r4, r0, #0
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r4, #0
add r1, r7, #0
@@ -8364,13 +8364,13 @@ MOD18_0223D744: ; 0x0223D744
bl MOD18_0224DBB4
ldr r1, [sp]
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [sp, #4]
add r0, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_0200AB18
add sp, #8
@@ -8479,13 +8479,13 @@ _0223D84E:
cmp r1, #0
beq _0223D886
add r0, r6, #0
- bl FUN_02021A74
+ bl StringCopy
ldr r0, _0223D8A0 ; =0x02251388
ldr r0, [r0]
add r0, r0, r4
add r0, #0xdc
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0223D8A0 ; =0x02251388
mov r1, #0
ldr r0, [r0]
@@ -10113,7 +10113,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
bne _0223E54E
mov r0, #0x64
mov r1, #0xf
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0223E550 ; =0x02251388
ldr r1, [r1]
add r1, r1, r4
@@ -10124,7 +10124,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
add r6, r0, #0
mov r0, #0x64
mov r1, #0xb
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
add r0, r5, #0
bl FUN_0202DFA4
@@ -10136,7 +10136,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
bl MOD18_0224DBB4
mov r1, #0x73
add r2, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, _0223E550 ; =0x02251388
add r0, r6, #0
ldr r1, [r1]
@@ -10144,9 +10144,9 @@ MOD18_0223E4D4: ; 0x0223E4D4
add r1, r1, r4
add r1, #0xdc
ldr r1, [r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FUN_0200AB18
_0223E54E:
@@ -23398,7 +23398,7 @@ MOD18_02244B28: ; 0x02244B28
_02244B32:
add r0, r7, #0
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r6, #1
stmia r4!, {r0}
cmp r6, #0x20
@@ -23412,7 +23412,7 @@ _02244B32:
str r1, [r0]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0
add r1, #0x80
str r0, [r1]
@@ -23422,7 +23422,7 @@ _02244B32:
_02244B64:
add r0, r6, #0
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0
add r1, #0x84
add r4, r4, #1
@@ -23441,7 +23441,7 @@ MOD18_02244B7C: ; 0x02244B7C
add r4, r5, #0
_02244B84:
ldr r0, [r4]
- bl FUN_02021A20
+ bl String_dtor
add r6, r6, #1
add r4, r4, #4
cmp r6, #0x20
@@ -23449,13 +23449,13 @@ _02244B84:
add r0, r5, #0
add r0, #0x80
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
mov r4, #0
_02244B9E:
add r0, r5, #0
add r0, #0x84
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #2
@@ -23512,7 +23512,7 @@ _02244C02:
add r5, #0x84
ldr r0, [r5]
ldr r1, [sp]
- bl FUN_02021A74
+ bl StringCopy
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_02244C14:
@@ -23588,7 +23588,7 @@ _02244C8A:
add r1, #0x84
ldr r0, [r5, r0]
ldr r1, [r1]
- bl FUN_02021A74
+ bl StringCopy
ldr r0, [r7]
add r0, r0, #1
str r0, [r7]
@@ -32872,11 +32872,11 @@ MOD18_022494C8: ; 0x022494C8
strb r1, [r4, r0]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x68]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
bl FUN_0200AA80
@@ -32971,7 +32971,7 @@ _022495BA:
add r1, r7, #0
bl FUN_020128A0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
b _022495EE
_022495E2:
ldr r0, [r5, #0x40]
@@ -34235,11 +34235,11 @@ _0224A002:
bl MOD18_0224DBB4
ldr r2, [r5, #0x6c]
mov r1, #0x80
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x70]
ldr r1, [r5, #0x68]
ldr r2, [r5, #0x6c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r5, #0x40]
ldr r1, [r5, #0x68]
add r2, r4, #0
@@ -35161,11 +35161,11 @@ MOD18_0224A7C8: ; 0x0224A7C8
strb r1, [r4, r0]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x68]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
bl FUN_0200AA80
@@ -35263,9 +35263,9 @@ MOD18_0224A8AC: ; 0x0224A8AC
bl FUN_020021EC
_0224A8C0:
ldr r0, [r5, #0x68]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x6c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x70]
bl FUN_0200AB18
bl MOD18_0223D648
@@ -35921,12 +35921,12 @@ _0224AE34:
ldr r0, [r5, #0x68]
cmp r0, #0
beq _0224AE3E
- bl FUN_02021A20
+ bl String_dtor
_0224AE3E:
ldr r0, [r5, #0x6c]
cmp r0, #0
beq _0224AE48
- bl FUN_02021A20
+ bl String_dtor
_0224AE48:
ldr r0, [r5, #0x70]
cmp r0, #0
@@ -36068,11 +36068,11 @@ MOD18_0224AF28: ; 0x0224AF28
str r2, [r4, #0x60]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x68]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
bl FUN_0200AA80
@@ -37350,9 +37350,9 @@ MOD18_0224B980: ; 0x0224B980
add r4, r1, #0
add r5, r0, #0
ldr r0, [r4, #0x68]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x6c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x70]
bl FUN_0200AB18
mov r0, #0x7f
@@ -37813,11 +37813,11 @@ MOD18_0224BD54: ; 0x0224BD54
strb r1, [r4, r0]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x68]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
bl FUN_0200AA80
@@ -38633,7 +38633,7 @@ _0224C434:
ldr r2, [r4, #0x68]
ldrb r1, [r4, r1]
add r1, #0x17
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #1
add r0, r4, #0
str r3, [sp]
@@ -38667,11 +38667,11 @@ _0224C434:
bl MOD18_0224DBB4
ldr r2, [r4, #0x68]
mov r1, #0x19
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x70]
ldr r1, [r4, #0x6c]
ldr r2, [r4, #0x68]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x11
str r0, [sp]
mov r1, #0
@@ -38942,7 +38942,7 @@ _0224C6C4:
ldr r2, [r4, #0x68]
ldrb r1, [r4, r1]
add r1, #0x17
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #1
add r0, r4, #0
str r3, [sp]
@@ -38974,11 +38974,11 @@ _0224C6C4:
bl MOD18_0224DBB4
ldr r2, [r4, #0x68]
mov r1, #0x19
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x70]
ldr r1, [r4, #0x6c]
ldr r2, [r4, #0x68]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x11
str r0, [sp]
mov r1, #0
@@ -39001,7 +39001,7 @@ _0224C74E:
bl MOD18_0224DBB4
ldr r2, [r4, #0x68]
mov r1, #0x1a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x11
str r0, [sp]
mov r1, #0
@@ -39354,9 +39354,9 @@ MOD18_0224CA34: ; 0x0224CA34
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x68]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x6c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x70]
bl FUN_0200AB18
add r0, r4, #0
@@ -39523,7 +39523,7 @@ MOD18_0224CB34: ; 0x0224CB34
bl MOD18_0224DBB4
ldr r2, [r5, #0x68]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #1
add r0, r5, #0
str r3, [sp]
@@ -40345,11 +40345,11 @@ MOD18_0224D1F8: ; 0x0224D1F8
str r1, [r6, r0]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0x68]
mov r0, #0x64
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0x6c]
mov r0, #4
bl FUN_0200AA80
@@ -40494,16 +40494,16 @@ MOD18_0224D364: ; 0x0224D364
str r0, [sp, #0x1c]
mov r0, #0x1e
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x1e
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x18]
ldr r0, [sp, #0xc]
mov r1, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -40517,7 +40517,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #1
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x11
str r0, [sp]
mov r0, #0xff
@@ -40531,7 +40531,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #3
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -40545,7 +40545,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #2
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -40559,7 +40559,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #3
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x11
str r0, [sp]
mov r0, #0xff
@@ -40584,11 +40584,11 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #5
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -40606,11 +40606,11 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
mov r1, #4
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -40627,7 +40627,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0xc]
add r1, #0x14
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x11
str r0, [sp]
mov r0, #0xff
@@ -40644,7 +40644,7 @@ _0224D4D0:
ldr r0, [sp, #0xc]
add r1, r5, #6
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r6, [sp]
mov r0, #0xff
str r0, [sp, #4]
@@ -40678,11 +40678,11 @@ _0224D500:
ldr r0, [sp, #0xc]
mov r1, #0xd
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
str r5, [sp]
mov r0, #0xff
str r0, [sp, #4]
@@ -40701,9 +40701,9 @@ _0224D500:
cmp r0, #7
blt _0224D500
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
bl FUN_0200AB18
add sp, #0x20
@@ -41062,11 +41062,11 @@ MOD18_0224D814: ; 0x0224D814
add r7, r0, #0
mov r0, #0x28
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x28
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
add r0, r7, #0
mov r1, #1
@@ -41075,11 +41075,11 @@ MOD18_0224D814: ; 0x0224D814
ldr r0, [sp, #0x10]
mov r1, #0xc
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -41093,7 +41093,7 @@ MOD18_0224D814: ; 0x0224D814
ldr r0, [sp, #0x10]
mov r1, #0xd
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x12
str r0, [sp]
mov r0, #0xff
@@ -41117,11 +41117,11 @@ MOD18_0224D814: ; 0x0224D814
ldr r0, [sp, #0x10]
mov r1, #0xe
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x12
str r0, [sp]
mov r0, #0xff
@@ -41135,7 +41135,7 @@ MOD18_0224D814: ; 0x0224D814
ldr r0, [sp, #0x10]
mov r1, #0xf
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x34
str r0, [sp]
mov r0, #0xff
@@ -41163,11 +41163,11 @@ _0224D8FA:
ldr r0, [sp, #0x10]
mov r1, #0x10
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
str r0, [sp, #0x1c]
add r0, #0x45
@@ -41196,11 +41196,11 @@ _0224D8FA:
ldr r0, [sp, #0x10]
mov r1, #0x11
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x1c]
mov r1, #0
str r0, [sp]
@@ -41219,7 +41219,7 @@ _0224D994:
ldr r0, [sp, #0x10]
mov r1, #0x33
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
str r0, [sp, #0x18]
add r0, #0x45
@@ -41237,7 +41237,7 @@ _0224D994:
ldr r0, [sp, #0x10]
mov r1, #0x34
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #0x18]
mov r1, #0
str r0, [sp]
@@ -41257,9 +41257,9 @@ _0224D9DE:
cmp r0, #5
blt _0224D8FA
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl FUN_0200AB18
add sp, #0x28
@@ -41398,11 +41398,11 @@ MOD18_0224DAE0: ; 0x0224DAE0
_0224DB08:
add r0, r6, #0
add r1, r5, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4]
add r0, r6, #0
add r1, r5, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #4]
add r0, r5, #0
bl FUN_0200AA80
@@ -41440,9 +41440,9 @@ MOD18_0224DB5C: ; 0x0224DB5C
push {r4, lr}
add r4, r0, #0
ldr r0, [r4]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #4]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x28]
bl FUN_0200AB18
ldr r0, [r4, #0x24]
@@ -41527,7 +41527,7 @@ MOD18_0224DBE4: ; 0x0224DBE4
beq _0224DC04
ldr r0, [r4, #0x28]
ldr r1, [r4, #4]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r4, #0x40]
mov r0, #2
ldr r2, [r4, #4]
@@ -41629,7 +41629,7 @@ MOD18_0224DCB8: ; 0x0224DCB8
ldr r0, [r5, #0x24]
ldr r2, [r5]
add r6, r3, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r5, #0
add r1, r4, #0
add r2, r6, #0
@@ -41662,7 +41662,7 @@ MOD18_0224DCF0: ; 0x0224DCF0
ldr r0, [r5, #0x24]
ldr r2, [r5]
add r6, r3, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r3, [sp, #0x10]
add r0, r5, #0
add r1, r4, #0
@@ -42332,7 +42332,7 @@ MOD18_0224E0CC: ; 0x0224E0CC
bl FUN_02019620
add r0, r7, #0
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -42345,7 +42345,7 @@ MOD18_0224E0CC: ; 0x0224E0CC
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r6, #0
add r4, sp, #0x14
_0224E186:
@@ -42791,15 +42791,15 @@ _0224E454:
bl FUN_02019620
ldr r0, [sp, #0x24]
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x28]
ldr r0, [sp, #0x24]
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x2c]
mov r0, #6
mov r1, #4
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -42835,7 +42835,7 @@ _0224E454:
ldr r2, [sp, #0x2c]
add r0, r6, #0
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x10
str r0, [sp]
mov r0, #0xff
@@ -42850,11 +42850,11 @@ _0224E454:
add r0, r6, #0
bl FUN_0200AB18
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x24]
bl DestroyMsgData
ldr r0, [sp, #0x20]
diff --git a/arm9/modules/38/asm/module_38.s b/arm9/modules/38/asm/module_38.s
index a9a94ebe..85a18fda 100644
--- a/arm9/modules/38/asm/module_38.s
+++ b/arm9/modules/38/asm/module_38.s
@@ -541,7 +541,7 @@ MOD38_02254BC4: ; 0x02254BC4
str r0, [r1]
mov r0, #0x80
mov r1, #8
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0
add r1, #0xbc
str r0, [r1]
@@ -671,7 +671,7 @@ MOD38_02254D04: ; 0x02254D04
beq _02254D32
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add r0, #0xb4
ldr r0, [r0]
@@ -1068,7 +1068,7 @@ MOD38_0225500C: ; 0x0225500C
ldr r0, [r0]
ldr r2, [r2]
mov r1, #6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _02255048
_02255036:
add r0, r5, #0
@@ -1078,7 +1078,7 @@ _02255036:
ldr r0, [r0]
ldr r2, [r2]
add r1, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02255048:
add r1, r5, #0
add r1, #0xbc
@@ -1126,7 +1126,7 @@ MOD38_02255084: ; 0x02255084
ldr r0, [r0]
ldr r2, [r2]
add r1, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xff
diff --git a/arm9/modules/43/asm/module_43.s b/arm9/modules/43/asm/module_43.s
index b8533f00..517cdaac 100644
--- a/arm9/modules/43/asm/module_43.s
+++ b/arm9/modules/43/asm/module_43.s
@@ -645,7 +645,7 @@ MOD43_02254CD0: ; 0x02254CD0
lsl r1, r1, #2
mov r2, #0
mov r3, #8
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r6, r0, #0
beq _02254D44
mov r0, #0x14
@@ -685,7 +685,7 @@ MOD43_02254CD0: ; 0x02254CD0
add r0, sp, #0x14
bl FUN_02019178
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_02254D44:
add sp, #0x24
pop {r3, r4, r5, r6, pc}
diff --git a/arm9/modules/47/asm/module_47.s b/arm9/modules/47/asm/module_47.s
index cdfaa3dc..159d2c30 100644
--- a/arm9/modules/47/asm/module_47.s
+++ b/arm9/modules/47/asm/module_47.s
@@ -716,7 +716,7 @@ MOD47_02254D14: ; 0x02254D14
str r0, [r4, #0x58]
mov r0, #0x60
mov r1, #8
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x5c]
add r0, r4, #0
add r1, r5, #0
@@ -737,7 +737,7 @@ MOD47_02254D6C: ; 0x02254D6C
add r4, r0, #0
beq _02254D8A
ldr r0, [r4, #0x5c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x58]
bl DestroyMsgData
add r0, r4, #0
@@ -1178,7 +1178,7 @@ MOD47_022550FC: ; 0x022550FC
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1201,7 +1201,7 @@ MOD47_022550FC: ; 0x022550FC
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #0xa
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1241,7 +1241,7 @@ MOD47_02255184: ; 0x02255184
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1281,7 +1281,7 @@ MOD47_022551D8: ; 0x022551D8
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #2
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1304,7 +1304,7 @@ MOD47_022551D8: ; 0x022551D8
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #3
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x18
str r0, [sp]
mov r0, #0xff
@@ -1338,7 +1338,7 @@ MOD47_02255250: ; 0x02255250
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #2
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1361,7 +1361,7 @@ MOD47_02255250: ; 0x02255250
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #4
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x5c]
add r2, r0, #0
@@ -1402,7 +1402,7 @@ MOD47_022552D8: ; 0x022552D8
ldr r0, [r5, #0x58]
ldr r2, [r5, #0x5c]
mov r1, #5
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r5, #0x5c]
add r2, r0, #0
@@ -1434,7 +1434,7 @@ _0225532C:
ldrb r1, [r6]
ldr r0, [r5, #0x58]
ldr r2, [r5, #0x5c]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
str r4, [sp]
mov r0, #0xff
str r0, [sp, #4]
diff --git a/arm9/modules/49/asm/module_49.s b/arm9/modules/49/asm/module_49.s
index f61d8633..79f8fd7d 100644
--- a/arm9/modules/49/asm/module_49.s
+++ b/arm9/modules/49/asm/module_49.s
@@ -440,7 +440,7 @@ MOD49_02254AD4: ; 0x02254AD4
mov r0, #0x1a
mov r2, #0
mov r3, #8
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r4, r0, #0
beq _02254B94
mov r0, #0
@@ -464,7 +464,7 @@ MOD49_02254AD4: ; 0x02254AD4
add r0, sp, #0x1c
bl FUN_02019548
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_02254B94:
add r0, sp, #0x1c
bl FUN_02019178
diff --git a/arm9/modules/51/asm/module_51.s b/arm9/modules/51/asm/module_51.s
index 8df998df..288995ef 100644
--- a/arm9/modules/51/asm/module_51.s
+++ b/arm9/modules/51/asm/module_51.s
@@ -1562,7 +1562,7 @@ _0225548C:
sub r5, r4, #2
mov r0, #0xa
mov r1, #0x59
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r6, #0
add r1, r5, #0
@@ -1581,13 +1581,13 @@ _0225548C:
add r3, r1, #0
bl FUN_0200ABB4
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_022554CA:
ldr r1, [sp, #8]
add r0, r7, #0
mov r2, #0xce
mov r3, #0x59
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0xc]
_022554D8:
ldr r0, [sp, #0xc]
@@ -1629,7 +1629,7 @@ _0225550A:
ldr r0, [r0, #4]
cmp r0, #0
beq _0225551E
- bl FUN_02021A20
+ bl String_dtor
_0225551E:
ldr r1, [r5]
mov r0, #0x1c
@@ -1638,7 +1638,7 @@ _0225551E:
ldr r0, [r0, #8]
cmp r0, #0
beq _02255530
- bl FUN_02021A20
+ bl String_dtor
_02255530:
ldr r0, [sp, #8]
bl FUN_0202398C
diff --git a/arm9/modules/53/asm/module_53.s b/arm9/modules/53/asm/module_53.s
index 883995c8..baab1cad 100644
--- a/arm9/modules/53/asm/module_53.s
+++ b/arm9/modules/53/asm/module_53.s
@@ -604,7 +604,7 @@ MOD53_021D79F8: ; 0x021D79F8
_021D7A0E:
mov r0, #8
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0x14]
ldrb r1, [r4]
ldr r0, [sp, #4]
@@ -628,11 +628,11 @@ _021D7A0E:
blt _021D7A0E
mov r0, #0xa
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x28]
mov r0, #0x50
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x2c]
ldr r0, _021D7AD4 ; =0x00004376
mov r2, #0
@@ -671,7 +671,7 @@ _021D7A0E:
ldr r0, [r7, #0x10]
ldr r2, [r7, #0x28]
mov r1, #7
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0xf
mov r0, #0x27
lsl r1, r1, #0xa
@@ -712,15 +712,15 @@ MOD53_021D7AE8: ; 0x021D7AE8
add r5, r6, #0
_021D7B00:
ldr r0, [r5, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #5
blt _021D7B00
ldr r0, [r6, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x28]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
.align 2, 0
_021D7B1C: .word 0x000043C8
@@ -3617,18 +3617,18 @@ MOD53_021D91C8: ; 0x021D91C8
mov r0, #0x50
mov r1, #0x27
add r4, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, [r5, #0x10]
add r1, r7, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0xc]
ldr r1, [r5, #0x2c]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb6
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/54/asm/module_54.s b/arm9/modules/54/asm/module_54.s
index 144c730b..30987170 100644
--- a/arm9/modules/54/asm/module_54.s
+++ b/arm9/modules/54/asm/module_54.s
@@ -564,7 +564,7 @@ MOD54_021D799C: ; 0x021D799C
_021D79A6:
mov r0, #8
mov r1, #0x33
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x2c]
mov r0, #0xd9
mov r1, #0
@@ -582,11 +582,11 @@ _021D79A6:
blt _021D79A6
mov r0, #0xb4
mov r1, #0x33
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x44]
mov r0, #0x28
mov r1, #0x33
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x48]
mov r0, #0xd1
mov r1, #0
@@ -595,7 +595,7 @@ _021D79A6:
ldr r0, [r7, #0x28]
ldr r2, [r7, #0x48]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r7, #0
bl MOD54_021D8E64
mov r0, #0x33
@@ -643,15 +643,15 @@ MOD54_021D7A34: ; 0x021D7A34
add r5, r6, #0
_021D7A50:
ldr r0, [r5, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #5
blt _021D7A50
ldr r0, [r6, #0x48]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x44]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
thumb_func_end MOD54_021D7A34
@@ -1898,7 +1898,7 @@ MOD54_021D844C: ; 0x021D844C
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x48]
mov r1, #0x12
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xc2
lsl r0, r0, #2
ldr r1, [r4, #0x48]
@@ -2822,7 +2822,7 @@ _021D8B2A:
ldr r1, [r1, #0x28]
mov r2, #1
mov r3, #0x33
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x18]
ldr r1, [sp, #0x1c]
ldr r0, [sp, #0x20]
@@ -2879,7 +2879,7 @@ _021D8BAC:
bl FUN_0201BDE0
_021D8BDE:
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
_021D8BE4:
ldr r0, [sp, #0x20]
add r7, #8
@@ -2997,18 +2997,18 @@ MOD54_021D8C90: ; 0x021D8C90
mov r0, #0xb4
mov r1, #0x33
add r6, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [r5, #0x28]
add r1, r7, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x24]
ldr r1, [r5, #0x44]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xba
lsl r0, r0, #2
add r0, r5, r0
@@ -3745,7 +3745,7 @@ _021D91DC:
add r0, r5, #0
add r0, #8
mov r2, #8
- bl StringCopyN
+ bl CopyU16StringArrayN
add r3, r5, #0
ldr r6, [sp]
add r3, #0x18
diff --git a/arm9/modules/55/asm/module_55.s b/arm9/modules/55/asm/module_55.s
index f4fcee0b..5bc1ff69 100644
--- a/arm9/modules/55/asm/module_55.s
+++ b/arm9/modules/55/asm/module_55.s
@@ -576,7 +576,7 @@ MOD55_021D7994: ; 0x021D7994
_021D79B4:
add r0, r7, #0
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x38]
add r4, r4, #1
add r5, r5, #4
@@ -584,19 +584,19 @@ _021D79B4:
blt _021D79B4
mov r0, #0x10
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r1, #0xd4
str r0, [r1]
mov r0, #0x1a
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r1, #0xd8
str r0, [r1]
mov r0, #0xb4
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r1, #0xbc
str r0, [r1]
@@ -606,7 +606,7 @@ _021D79B4:
_021D79F6:
add r0, r7, #0
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0
add r1, #0xc4
add r5, r5, #1
@@ -616,13 +616,13 @@ _021D79F6:
blt _021D79F6
mov r0, #0xb4
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r1, #0xb8
str r0, [r1]
mov r0, #0x28
mov r1, #0x34
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r1, #0xc0
str r0, [r1]
@@ -647,7 +647,7 @@ MOD55_021D7A38: ; 0x021D7A38
add r5, r6, #0
_021D7A4C:
ldr r0, [r5, #0x38]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0x20
@@ -655,22 +655,22 @@ _021D7A4C:
add r0, r6, #0
add r0, #0xb8
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
add r0, #0xc0
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
mov r5, #0
add r4, r6, #0
_021D7A7C:
add r0, r4, #0
add r0, #0xc4
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r5, r5, #1
add r4, r4, #4
cmp r5, #4
@@ -678,10 +678,10 @@ _021D7A7C:
add r0, r6, #0
add r0, #0xd4
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r6, #0xd8
ldr r0, [r6]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
.align 2, 0
thumb_func_end MOD55_021D7A38
@@ -1244,7 +1244,7 @@ _021D7F02:
ldr r0, [r5, #0x10]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #4
str r0, [sp]
mov r0, #0xff
@@ -1319,7 +1319,7 @@ _021D7F86:
ldr r0, [r5, #0x10]
ldr r2, [r2]
add r1, r6, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r7, #0
add r2, r5, #0
add r1, #0xc4
@@ -1327,7 +1327,7 @@ _021D7F86:
ldr r0, [r5, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _021D8002
_021D7FF4:
add r2, r7, #0
@@ -1335,7 +1335,7 @@ _021D7FF4:
ldr r0, [r5, #0x10]
ldr r2, [r2]
add r1, r6, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021D8002:
ldr r0, _021D8040 ; =0x00010200
add r1, r7, #0
@@ -1818,7 +1818,7 @@ MOD55_021D8370: ; 0x021D8370
add r0, #0xd4
ldr r0, [r0]
ldr r1, [r1, #0x18]
- bl FUN_02021A74
+ bl StringCopy
mov r1, #0xa
b _021D83F0
_021D83A8:
@@ -1914,7 +1914,7 @@ MOD55_021D8440: ; 0x021D8440
add r0, #0xd8
ldr r0, [r0]
ldr r1, [r1, #0x18]
- bl FUN_02021A74
+ bl StringCopy
ldr r0, [r5]
bl FUN_02077AC4
mov r0, #0
@@ -1979,7 +1979,7 @@ MOD55_021D84C8: ; 0x021D84C8
add r0, r5, #0
add r0, #0xd4
ldr r0, [r0]
- bl FUN_02021F2C
+ bl String_c_str
add r1, r0, #0
add r0, r4, #0
bl FUN_0202395C
@@ -2678,7 +2678,7 @@ MOD55_021D8A28: ; 0x021D8A28
add r4, r6, #0
_021D8A46:
ldr r0, [r5, #0x38]
- bl FUN_02021A4C
+ bl StringSetEmpty
add r0, r7, #0
add r1, r4, #0
bl FUN_0202842C
@@ -2781,7 +2781,7 @@ _021D8AEE:
ldr r0, [r5, #0x10]
ldr r2, [r2]
mov r1, #5
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #4
str r0, [sp]
mov r0, #0xff
@@ -2840,7 +2840,7 @@ _021D8B6C:
ldr r0, [r5, #0x10]
ldr r2, [r2]
mov r1, #7
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
add r2, r5, #0
str r1, [sp]
@@ -3617,7 +3617,7 @@ _021D91D6:
ldr r0, [r5, #0x10]
ldr r2, [r2]
mov r1, #0x16
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r2, r5, #0
add r1, #0xc0
@@ -3625,7 +3625,7 @@ _021D91D6:
ldr r0, [r5, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #4
str r0, [sp]
mov r0, #0xff
@@ -3689,14 +3689,14 @@ _021D9278:
add r2, #0xbc
ldr r2, [r2]
mov r1, #0x18
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D92CE
_021D92C2:
add r2, r5, #0
add r2, #0xbc
ldr r2, [r2]
mov r1, #0x17
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021D92CE:
add r1, r5, #0
add r1, #0xbc
@@ -3768,7 +3768,7 @@ _021D9338:
ldr r0, [r5, #0x10]
ldr r2, [r2]
mov r1, #0x1b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r2, r5, #0
add r1, #0xbc
@@ -3776,7 +3776,7 @@ _021D9338:
ldr r0, [r5, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0xe2
lsl r0, r0, #2
add r0, r5, r0
@@ -4183,7 +4183,7 @@ _021D969A:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0xd
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc0
@@ -4191,7 +4191,7 @@ _021D969A:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #4
str r0, [sp]
mov r0, #0xff
@@ -4253,7 +4253,7 @@ _021D974E:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc0
@@ -4261,7 +4261,7 @@ _021D974E:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _021D9A54 ; =0x000F0E00
add r1, r4, #0
str r0, [sp]
@@ -4388,7 +4388,7 @@ _021D987C:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0xe
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #2
str r0, [sp]
mov r0, #0xff
@@ -4425,7 +4425,7 @@ _021D987C:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x2a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc4
@@ -4433,7 +4433,7 @@ _021D987C:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0
add r1, #0xc4
mov r0, #0
@@ -4462,7 +4462,7 @@ _021D987C:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0xf
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x18
str r0, [sp]
mov r0, #0xff
@@ -4496,7 +4496,7 @@ _021D987C:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x10
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc0
@@ -4504,7 +4504,7 @@ _021D987C:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0
add r1, #0xc0
mov r0, #0
@@ -4545,7 +4545,7 @@ _021D987C:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc0
@@ -4553,7 +4553,7 @@ _021D987C:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0
add r1, #0xc0
mov r0, #0
@@ -4590,7 +4590,7 @@ _021D9A64:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x12
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x4a
str r0, [sp]
mov r0, #0xff
@@ -4627,14 +4627,14 @@ _021D9A64:
add r2, #0xb8
ldr r2, [r2]
mov r1, #0x13
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D9AE8
_021D9ADC:
add r2, r4, #0
add r2, #0xb8
ldr r2, [r2]
mov r1, #0x2b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021D9AE8:
add r1, r4, #0
add r2, r4, #0
@@ -4643,7 +4643,7 @@ _021D9AE8:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0
add r1, #0xc0
mov r0, #0
@@ -4672,7 +4672,7 @@ _021D9AE8:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x14
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x71
str r0, [sp]
mov r0, #0xff
@@ -4739,7 +4739,7 @@ _021D9AE8:
ldr r0, [r4, #0x10]
ldr r2, [r2]
mov r1, #0x15
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
add r2, r4, #0
add r1, #0xc0
@@ -4747,7 +4747,7 @@ _021D9AE8:
ldr r0, [r4, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r1, r4, #0
add r1, #0xc0
mov r0, #0
@@ -5094,7 +5094,7 @@ MOD55_021D9E40: ; 0x021D9E40
b _021D9EBE
_021D9EB8:
ldr r0, [r0, #0x18]
- bl FUN_02021A4C
+ bl StringSetEmpty
_021D9EBE:
add r0, r6, #0
add sp, #4
@@ -5127,7 +5127,7 @@ MOD55_021D9EC8: ; 0x021D9EC8
add r0, #0xd4
ldr r0, [r0]
ldr r1, [r1, #0x18]
- bl FUN_02021A74
+ bl StringCopy
ldr r0, [r5, #8]
bl FUN_020286EC
mov r1, #0xf2
@@ -5384,7 +5384,7 @@ _021DA0D0:
ldr r0, [r5, #0x10]
ldr r2, [r2]
add r1, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r2, r5, #0
add r1, #0xbc
@@ -5392,7 +5392,7 @@ _021DA0D0:
ldr r0, [r5, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0xce
lsl r0, r0, #2
add r0, r5, r0
@@ -5465,7 +5465,7 @@ _021DA17C:
ldr r0, [r5, #0x10]
ldr r2, [r2]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r5, #0
add r2, r5, #0
add r1, #0xbc
@@ -5473,7 +5473,7 @@ _021DA17C:
ldr r0, [r5, #0xc]
ldr r1, [r1]
ldr r2, [r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0xce
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/56/asm/module_56.s b/arm9/modules/56/asm/module_56.s
index ee020bca..c3b1d0d9 100644
--- a/arm9/modules/56/asm/module_56.s
+++ b/arm9/modules/56/asm/module_56.s
@@ -784,7 +784,7 @@ MOD56_0221244C: ; 0x0221244C
_02212456:
add r0, r7, #0
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
add r1, r5, #0
add r1, #0xd4
str r0, [r1]
@@ -803,14 +803,14 @@ _02212456:
mov r0, #0x5f
lsl r0, r0, #2
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x57
lsl r1, r1, #2
str r0, [r6, r1]
add r1, #0x20
add r0, r1, #0
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x5d
lsl r1, r1, #2
add r7, r1, #0
@@ -822,7 +822,7 @@ _022124A8:
mov r0, #0x5f
lsl r0, r0, #2
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, r7]
add r5, r5, #1
add r4, r4, #4
@@ -831,13 +831,13 @@ _022124A8:
mov r0, #0x5f
lsl r0, r0, #2
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x56
lsl r1, r1, #2
str r0, [r6, r1]
mov r0, #0xb4
mov r1, #0x36
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x16
lsl r1, r1, #4
str r0, [r6, r1]
@@ -858,7 +858,7 @@ _022124EC:
add r0, r5, #0
add r0, #0xd4
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0x20
@@ -866,22 +866,22 @@ _022124EC:
mov r0, #0x16
lsl r0, r0, #4
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x5d
lsl r0, r0, #2
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r6, #0x59
mov r5, #0
add r4, r7, #0
lsl r6, r6, #2
_02212524:
ldr r0, [r4, r6]
- bl FUN_02021A20
+ bl String_dtor
add r5, r5, #1
add r4, r4, #4
cmp r5, #4
@@ -889,7 +889,7 @@ _02212524:
mov r0, #0x56
lsl r0, r0, #2
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end MOD56_022124E4
@@ -1350,7 +1350,7 @@ _022128CE:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x16
lsl r1, r1, #4
ldr r1, [r4, r1]
@@ -2778,7 +2778,7 @@ MOD56_0221341C: ; 0x0221341C
cmp r0, #0
bne _0221344C
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
_0221344C:
@@ -2801,7 +2801,7 @@ _0221344C:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #4]
ldrb r0, [r0, #0x1b]
cmp r0, #0x10
@@ -2846,7 +2846,7 @@ _022134B2:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x1a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_022134D4:
bl MOD04_021D853C
@@ -2882,7 +2882,7 @@ _0221350C:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x17
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r5, _0221361C ; =0x00020E00
b _022135DC
_02213522:
@@ -2893,7 +2893,7 @@ _02213522:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_02213536:
add r0, r4, #0
@@ -2903,7 +2903,7 @@ _02213536:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3c
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_0221354A:
add r0, r4, #0
@@ -2913,7 +2913,7 @@ _0221354A:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_0221355E:
add r0, r4, #0
@@ -2923,7 +2923,7 @@ _0221355E:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3e
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_02213572:
add r0, r4, #0
@@ -2933,7 +2933,7 @@ _02213572:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3f
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_02213586:
add r0, r4, #0
@@ -2943,7 +2943,7 @@ _02213586:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x3d
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_0221359A:
add r0, r4, #0
@@ -2953,7 +2953,7 @@ _0221359A:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x19
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r5, _0221361C ; =0x00020E00
b _022135DC
_022135B0:
@@ -2964,7 +2964,7 @@ _022135B0:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x18
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_022135C4:
add r0, r4, #0
@@ -2974,7 +2974,7 @@ _022135C4:
ldr r0, [r0]
ldr r2, [r4, r2]
mov r1, #0x2d
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _022135DC
_022135D8:
add sp, #0x10
@@ -3113,7 +3113,7 @@ _022136B8:
lsl r2, r2, #2
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0x56
lsl r1, r1, #2
mov r0, #0
@@ -3720,7 +3720,7 @@ _02213B2C:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x12
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r2, #0xff
@@ -7042,7 +7042,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x20
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x16
add r0, r5, #0
lsl r2, r2, #4
@@ -7051,7 +7051,7 @@ _02215532:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r2, #0xff
@@ -7081,7 +7081,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x21
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x10
str r0, [sp]
mov r2, #0xff
@@ -7121,7 +7121,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x4e
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x16
add r0, r5, #0
lsl r2, r2, #4
@@ -7130,7 +7130,7 @@ _02215532:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0x16
lsl r1, r1, #4
mov r0, #0
@@ -7160,7 +7160,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x22
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x20
str r0, [sp]
mov r2, #0xff
@@ -7197,7 +7197,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x23
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x16
add r0, r5, #0
lsl r2, r2, #4
@@ -7206,7 +7206,7 @@ _02215532:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x30
str r0, [sp]
mov r2, #0xff
@@ -7243,7 +7243,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x24
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x16
add r0, r5, #0
lsl r2, r2, #4
@@ -7252,7 +7252,7 @@ _02215532:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0x16
lsl r1, r1, #4
mov r0, #0
@@ -7283,7 +7283,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x25
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x40
str r0, [sp]
mov r2, #0xff
@@ -7323,7 +7323,7 @@ _02215532:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x26
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _02215822
_02215810:
add r0, r5, #0
@@ -7333,7 +7333,7 @@ _02215810:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x4f
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02215822:
mov r2, #0x16
add r0, r5, #0
@@ -7343,7 +7343,7 @@ _02215822:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0x16
lsl r1, r1, #4
mov r0, #0
@@ -7374,7 +7374,7 @@ _02215822:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x27
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x50
str r0, [sp]
mov r2, #0xff
@@ -7436,7 +7436,7 @@ _02215822:
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x28
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x16
add r0, r5, #0
lsl r2, r2, #4
@@ -7445,7 +7445,7 @@ _02215822:
sub r2, #8
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0x16
lsl r1, r1, #4
mov r0, #0
@@ -7577,7 +7577,7 @@ MOD56_022159B0: ; 0x022159B0
ldr r0, [r0]
ldr r2, [r5, r2]
mov r1, #0x12
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r2, #0xff
@@ -8247,7 +8247,7 @@ _02215F30:
ldr r0, [r0]
ldr r2, [r5, r2]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _02215F82
_02215F70:
add r0, r5, #0
@@ -8257,7 +8257,7 @@ _02215F70:
ldr r0, [r0]
ldr r2, [r5, r2]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02215F82:
mov r2, #0x57
add r0, r5, #0
@@ -8267,7 +8267,7 @@ _02215F82:
sub r2, r2, #4
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0xcf
lsl r0, r0, #2
add r0, r5, r0
@@ -8374,7 +8374,7 @@ _02216048:
ldr r0, [r0]
ldr r2, [r5, r2]
add r1, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x57
add r0, r5, #0
lsl r2, r2, #2
@@ -8383,7 +8383,7 @@ _02216048:
sub r2, r2, #4
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0xdb
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/57/asm/module_57.s b/arm9/modules/57/asm/module_57.s
index 1996a814..c4cdf391 100644
--- a/arm9/modules/57/asm/module_57.s
+++ b/arm9/modules/57/asm/module_57.s
@@ -579,12 +579,12 @@ MOD57_021D79AC: ; 0x021D79AC
add r5, r0, #0
mov r0, #4
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021D79E8 ; =0x00003308
str r0, [r5, r1]
mov r0, #5
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021D79EC ; =0x0000330C
ldr r2, _021D79F0 ; =0x0000022D
str r0, [r5, r1]
@@ -596,7 +596,7 @@ MOD57_021D79AC: ; 0x021D79AC
add r4, r0, #0
ldr r2, [r5, r2]
mov r1, #0xb
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0
bl DestroyMsgData
pop {r3, r4, r5, pc}
@@ -612,10 +612,10 @@ MOD57_021D79F4: ; 0x021D79F4
add r4, r0, #0
ldr r0, _021D7A0C ; =0x00003308
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D7A10 ; =0x0000330C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
nop
_021D7A0C: .word 0x00003308
@@ -2758,7 +2758,7 @@ MOD57_021D89F0: ; 0x021D89F0
str r0, [sp, #0x14]
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
mov r4, #0
_021D8AA8:
@@ -2775,7 +2775,7 @@ _021D8AB6:
ldr r1, [r1, r2]
ldr r0, [sp, #0x14]
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -2797,7 +2797,7 @@ _021D8AE0:
blo _021D8AA8
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
mov r0, #6
mov r1, #0x20
@@ -2839,11 +2839,11 @@ _021D8AE0:
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0xe
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x10]
add r0, r4, #0
add r1, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r5, #0
add r2, r0, #0
@@ -2917,7 +2917,7 @@ _021D8BA4:
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0x10
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D8C32
_021D8C02:
mov r0, #1
@@ -2940,12 +2940,12 @@ _021D8C02:
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0xf
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021D8C32:
ldr r2, [sp, #0x10]
add r0, r4, #0
add r1, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r5, #0
add r2, r0, #0
@@ -2990,11 +2990,11 @@ _021D8C32:
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x10]
add r0, r4, #0
add r1, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r5, #0
add r2, r0, #0
@@ -3012,11 +3012,11 @@ _021D8C32:
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_0200AB18
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
bl DestroyMsgData
add sp, #0x18
@@ -3081,7 +3081,7 @@ MOD57_021D8CF8: ; 0x021D8CF8
add r7, r0, #0
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
mov r4, #7
_021D8D72:
@@ -3090,7 +3090,7 @@ _021D8D72:
ldr r1, [r1, r2]
add r0, r7, #0
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -3111,7 +3111,7 @@ _021D8D72:
blo _021D8D72
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x14]
mov r0, #5
mov r1, #0x20
@@ -3169,17 +3169,17 @@ _021D8D72:
ldr r2, [sp, #0x14]
add r0, r7, #0
mov r1, #0x11
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x14]
add r0, r4, #0
add r1, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
b _021D8E74
_021D8E3C:
ldr r2, [sp, #0x14]
add r0, r7, #0
mov r1, #0xc
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #2
@@ -3199,7 +3199,7 @@ _021D8E3C:
add r0, r7, #0
mov r1, #0x14
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021D8E74:
mov r0, #0
add r1, r5, #0
@@ -3220,11 +3220,11 @@ _021D8E74:
ldr r2, [sp, #0x14]
add r0, r7, #0
mov r1, #0xf
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x14]
add r0, r4, #0
add r1, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r5, #0
add r2, r0, #0
@@ -3259,7 +3259,7 @@ _021D8E74:
add r0, r7, #0
mov r1, #0x12
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
ldr r0, _021D8FB4 ; =0x00010200
@@ -3288,7 +3288,7 @@ _021D8E74:
add r0, r7, #0
mov r1, #0x13
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
ldr r0, _021D8FB4 ; =0x00010200
@@ -3329,11 +3329,11 @@ _021D8E74:
add r3, r2, #0
bl MOD57_021D8FD8
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_0200AB18
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
add sp, #0x18
@@ -3464,11 +3464,11 @@ _021D906E:
str r0, [sp, #0x10]
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x20
mov r1, #0x19
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x14]
mov r0, #2
mov r1, #0x20
@@ -3497,11 +3497,11 @@ _021D906E:
ldr r0, [sp, #0x10]
ldr r2, [sp, #0x14]
mov r1, #0x10
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, [sp, #0x14]
add r0, r6, #0
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r4, #0
add r2, r0, #0
@@ -3521,9 +3521,9 @@ _021D906E:
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FUN_0200AB18
add sp, #0x18
diff --git a/arm9/modules/58/asm/module_58.s b/arm9/modules/58/asm/module_58.s
index 4c10cb07..540bb752 100644
--- a/arm9/modules/58/asm/module_58.s
+++ b/arm9/modules/58/asm/module_58.s
@@ -454,7 +454,7 @@ MOD58_021D9E04: ; 0x021D9E04
_021D9E14:
mov r0, #8
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
ldrb r1, [r5]
ldr r0, [sp]
@@ -470,15 +470,15 @@ _021D9E14:
blt _021D9E14
mov r0, #0x14
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x2c]
mov r0, #0x28
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x30]
mov r0, #0x50
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
str r0, [r7, #0x34]
ldr r0, _021D9E98 ; =0x0000431A
mov r1, #0
@@ -490,11 +490,11 @@ _021D9E14:
ldr r0, [r7, #0x14]
ldr r2, [r7, #0x2c]
mov r1, #0xc
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r7, #0x14]
ldr r2, [r7, #0x30]
mov r1, #9
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x27
bl FUN_02014590
ldr r1, _021D9E9C ; =0x00005C9C
@@ -523,17 +523,17 @@ MOD58_021D9EA0: ; 0x021D9EA0
add r5, r6, #0
_021D9EB0:
ldr r0, [r5, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #5
blt _021D9EB0
ldr r0, [r6, #0x34]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x30]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
nop
_021D9ED4: .word 0x00005C9C
@@ -2201,18 +2201,18 @@ MOD58_021DAB94: ; 0x021DAB94
add r6, r1, #0
mov r0, #0x50
mov r1, #0x27
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [r5, #0x14]
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x10]
ldr r1, [r5, #0x34]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/59/asm/module_59.s b/arm9/modules/59/asm/module_59.s
index 70b11d2d..a53da97a 100644
--- a/arm9/modules/59/asm/module_59.s
+++ b/arm9/modules/59/asm/module_59.s
@@ -960,17 +960,17 @@ _021D7C5E:
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x5c]
ldr r0, [r5, #0x4c]
add r1, r7, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
mov r0, #2
@@ -995,9 +995,9 @@ _021D7C5E:
ldr r0, [r5, #0x64]
ldr r1, [r5, #0x5c]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #8]
bl FUN_02024FF4
add r3, r4, #0
@@ -1021,7 +1021,7 @@ _021D7D1C:
cmp r0, #0
bne _021D7D54
ldr r0, [r5, #0x5c]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #2
str r0, [r5, #0x50]
b _021D7D54
@@ -1258,12 +1258,12 @@ _021D7EFA:
mov r0, #1
ldr r1, [r4]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x5c]
ldr r0, [r4, #0x4c]
ldr r1, [sp, #0x10]
ldr r2, [r4, #0x5c]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
cmp r6, #1
add r0, sp, #0x14
bne _021D7F7C
@@ -1350,7 +1350,7 @@ _021D7F7C:
bl FUN_0201BDE0
_021D7FCC:
ldr r0, [r4, #0x5c]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
str r0, [r4, #0x54]
b _021D803C
@@ -4008,7 +4008,7 @@ _021D9532:
_021D953C:
ldr r0, [r4, #0x70]
ldr r0, [r0, #0x18]
- bl FUN_02021A4C
+ bl StringSetEmpty
mov r0, #0x3f
str r0, [r4, #0x10]
mov r0, #0x51
@@ -4155,14 +4155,14 @@ _021D964C:
_021D9652:
ldr r1, [r0, r1]
ldr r0, [r4, #0x4c]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r4, #0x74]
add r1, r6, #0
ldr r0, [r0, #0x18]
- bl FUN_02021A74
+ bl StringCopy
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x5b
str r0, [r4, #0xc]
b _021D985C
@@ -4257,7 +4257,7 @@ _021D971C:
_021D972A:
ldr r0, [r4, #0x74]
ldr r0, [r0, #0x18]
- bl FUN_02021A4C
+ bl StringSetEmpty
mov r0, #0x58
str r0, [r4, #0xc]
b _021D985C
@@ -4923,12 +4923,12 @@ _021D9C9A:
mov r0, #1
ldr r1, [r4]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, [r4, #8]
ldr r1, [sp, #0x10]
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r1, r4, #0
ldr r0, [r4, #4]
ldr r2, _021D9D6C ; =0x021DA04C
@@ -4964,7 +4964,7 @@ _021D9C9A:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add r0, #0x10
bl FUN_020191D0
diff --git a/arm9/modules/60/asm/module_60.s b/arm9/modules/60/asm/module_60.s
index f6dc106a..24eba9ee 100644
--- a/arm9/modules/60/asm/module_60.s
+++ b/arm9/modules/60/asm/module_60.s
@@ -525,7 +525,7 @@ _021D7906:
add r5, r6, #0
_021D7914:
ldr r0, [r5, #0x60]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
add r0, #0x5c
ldrh r0, [r0]
@@ -1000,12 +1000,12 @@ MOD60_021D7D18: ; 0x021D7D18
add r6, r0, #0
ldr r1, [r6]
mov r0, #0x28
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
ldr r0, [r6, #0x20]
mov r1, #0
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #2
str r3, [sp]
mov r1, #0
@@ -1018,13 +1018,13 @@ MOD60_021D7D18: ; 0x021D7D18
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r1, _021D7DF0 ; =gGameVersion
ldr r0, [r6, #0x20]
ldrb r1, [r1]
add r2, r5, #0
sub r1, #9
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
ldr r0, _021D7DF4 ; =0x0001020F
@@ -1042,11 +1042,11 @@ MOD60_021D7D18: ; 0x021D7D18
add r7, #0x3c
_021D7D7E:
add r0, r5, #0
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r0, [r6, #0x20]
add r1, r4, #3
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
lsl r0, r4, #4
str r0, [sp]
mov r0, #0xff
@@ -1085,7 +1085,7 @@ _021D7DB6:
add r0, r6, #0
bl FUN_020191D0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -1123,7 +1123,7 @@ _021D7E1E:
lsr r5, r0, #0x10
ldr r0, [r6, #0x20]
add r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [sp]
lsl r2, r4, #2
add r1, r1, r2
diff --git a/arm9/modules/61/asm/module_61.s b/arm9/modules/61/asm/module_61.s
index a79053c3..adffaa91 100644
--- a/arm9/modules/61/asm/module_61.s
+++ b/arm9/modules/61/asm/module_61.s
@@ -308,12 +308,12 @@ _021D7702:
bl FUN_02019620
ldr r1, [r5]
mov r0, #0x4c
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [r5, #0x20]
mov r1, #2
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
ldr r0, _021D7788 ; =0x0001020F
@@ -326,7 +326,7 @@ _021D7702:
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
b _021D777C
_021D774E:
ldr r0, _021D778C ; =0x021C48B8
@@ -435,12 +435,12 @@ _021D77F2:
bl FUN_02019620
ldr r1, [r5]
mov r0, #0x4c
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, [r5, #0x20]
mov r1, #3
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
ldrb r0, [r5, #0x10]
@@ -455,7 +455,7 @@ _021D77F2:
bl FUN_0201BDE0
strb r0, [r5, #0xf]
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0
ldr r0, _021D78CC ; =0x00007FFF
str r1, [sp]
@@ -1559,7 +1559,7 @@ _021D8122:
mov r3, #0
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FUN_020191D0
_021D8164:
@@ -1579,7 +1579,7 @@ _021D8164:
str r0, [r4, #0x20]
ldr r1, [r4]
mov r0, #0x10
- bl FUN_020219F4
+ bl String_ctor
add r5, r0, #0
add r0, r4, #0
str r0, [sp, #0x18]
@@ -1588,11 +1588,11 @@ _021D8164:
str r0, [sp, #0x18]
_021D8196:
add r0, r5, #0
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r0, [r4, #0x20]
add r1, r6, #0
add r2, r5, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
add r1, r5, #0
mov r2, #0
@@ -1627,7 +1627,7 @@ _021D8196:
cmp r6, #2
blt _021D8196
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x1c
pop {r4, r5, r6, r7, pc}
_021D81F8:
diff --git a/arm9/modules/62/asm/module_62.s b/arm9/modules/62/asm/module_62.s
index b187276b..ce0a1c8a 100644
--- a/arm9/modules/62/asm/module_62.s
+++ b/arm9/modules/62/asm/module_62.s
@@ -1160,7 +1160,7 @@ MOD62_0222DE00: ; 0x0222DE00
bl NewMsgDataFromNarc
add r1, r4, #5
str r0, [sp, #0x14]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
add r0, sp, #0x1c
bl FUN_0201901C
@@ -1245,7 +1245,7 @@ MOD62_0222DE00: ; 0x0222DE00
ldr r1, [sp, #0x70]
bl FUN_02011AC0
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
bl DestroyMsgData
add r0, sp, #0x1c
@@ -1989,7 +1989,7 @@ _0222E49A:
lsl r2, r1, #3
ldr r1, _0222E538 ; =0x02231358
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r2, [r5]
add r4, r0, #0
lsl r3, r2, #3
@@ -2003,7 +2003,7 @@ _0222E49A:
add r1, r4, #0
bl FUN_020128A0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r6, r6, #1
add r5, r5, #4
cmp r6, r7
@@ -3275,7 +3275,7 @@ _0222EE96:
bl NewMsgDataFromNarc
add r1, r5, #0
add r6, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #0xf
@@ -3291,7 +3291,7 @@ _0222EE96:
add r0, r4, #0
bl FUN_020191D0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0xc
@@ -3573,7 +3573,7 @@ _0222F0FE:
bl FUN_02019620
mov r0, #0x64
mov r1, #0x35
- bl FUN_020219F4
+ bl String_ctor
ldr r1, [sp, #0x10]
add r4, r0, #0
ldr r0, [r7, #0x64]
@@ -3602,7 +3602,7 @@ _0222F0FE:
add r0, r5, #0
bl FUN_020191D0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_0222F152:
add r6, r6, #1
add r5, #0x10
@@ -3643,7 +3643,7 @@ _0222F194:
bl FUN_02019620
mov r0, #0x64
mov r1, #0x35
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x10]
ldr r0, [r6, #0x64]
sub r1, r7, #1
@@ -3668,7 +3668,7 @@ _0222F194:
add r0, r5, r4
bl FUN_020191D0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3717,7 +3717,7 @@ _0222F226:
bl NewMsgDataFromNarc
add r1, r5, #0
add r6, r0, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #0xf
@@ -3733,7 +3733,7 @@ _0222F226:
add r0, r4, #0
bl FUN_020191D0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl DestroyMsgData
add sp, #0xc
diff --git a/arm9/modules/63/asm/module_63.s b/arm9/modules/63/asm/module_63.s
index 70c6dc91..a177b545 100644
--- a/arm9/modules/63/asm/module_63.s
+++ b/arm9/modules/63/asm/module_63.s
@@ -2048,7 +2048,7 @@ _021D844C:
add r7, r0, #0
mov r0, #0x40
add r1, r4, #0
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r4, r0, #0
ldr r2, _021D85D0 ; =0x021DB9A0
@@ -2068,7 +2068,7 @@ _021D844C:
add r0, r7, #0
mov r1, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r3, r6, #0
add r3, #0xb3
ldrb r3, [r3]
@@ -2092,7 +2092,7 @@ _021D844C:
str r1, [sp, #0x14]
bl FUN_0201BE3C
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl DestroyMsgData
mov r1, #0x15
diff --git a/arm9/modules/64/asm/module_64.s b/arm9/modules/64/asm/module_64.s
index 229ab02a..d3177bd8 100644
--- a/arm9/modules/64/asm/module_64.s
+++ b/arm9/modules/64/asm/module_64.s
@@ -2314,7 +2314,7 @@ MOD64_021D86DC: ; 0x021D86DC
_021D86F8:
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, #0
mov r1, #0xf
@@ -2338,7 +2338,7 @@ _021D86F8:
add r3, r1, #0
bl FUN_0200D0BC
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
add r0, r7, #0
@@ -2371,7 +2371,7 @@ _021D875C:
_021D8770:
ldr r1, [sp, #0x10]
add r0, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4]
add r0, r5, #0
mov r1, #0xf
@@ -2408,7 +2408,7 @@ MOD64_021D87B8: ; 0x021D87B8
add r4, r0, #0
add r0, #0xac
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
add r4, #0xac
str r0, [r4]
@@ -3505,7 +3505,7 @@ MOD64_021D8FD0: ; 0x021D8FD0
_021D8FEC:
add r0, r4, #0
add r1, r6, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [sp, #0x20]
add r6, r0, #0
lsl r1, r1, #0x18
@@ -3524,7 +3524,7 @@ _021D8FEC:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
add sp, #0x10
diff --git a/arm9/modules/65/asm/module_65.s b/arm9/modules/65/asm/module_65.s
index 10af9dcd..1c53ad66 100644
--- a/arm9/modules/65/asm/module_65.s
+++ b/arm9/modules/65/asm/module_65.s
@@ -1055,31 +1055,31 @@ MOD65_021D7CC8: ; 0x021D7CC8
str r0, [r5, #0x30]
ldr r1, [r5]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x34]
ldr r0, [r5, #0x2c]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x38]
ldr r0, [r5, #0x2c]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x3c]
ldr r0, [r5, #0x2c]
mov r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x40]
ldr r0, [r5, #0x2c]
mov r1, #7
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x44]
ldr r0, [r5, #0x2c]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x48]
ldr r0, [r5, #0x2c]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x4c]
mov r4, #0
add r6, r5, #0
@@ -1087,14 +1087,14 @@ _021D7D42:
add r1, r4, #0
ldr r0, [r5, #0x2c]
add r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, #0x50]
cmp r4, #5
bge _021D7D66
add r1, r4, #0
ldr r0, [r5, #0x2c]
add r1, #0x11
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, #0x68]
add r4, r4, #1
add r6, r6, #4
@@ -1117,30 +1117,30 @@ MOD65_021D7D74: ; 0x021D7D74
add r5, r6, #0
_021D7D7C:
ldr r0, [r5, #0x50]
- bl FUN_02021A20
+ bl String_dtor
cmp r4, #5
bge _021D7D94
ldr r0, [r5, #0x68]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #6
blt _021D7D7C
_021D7D94:
ldr r0, [r6, #0x4c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x48]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x44]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x40]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x3c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x38]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x34]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x30]
bl FUN_0200AB18
ldr r0, [r6, #0x28]
@@ -1579,7 +1579,7 @@ _021D80EE:
ldr r0, [r5, #0x30]
ldr r1, [r5, #0x34]
ldr r2, [r5, #0x3c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
add r0, #0xcc
ldrb r2, [r6, #5]
@@ -2165,7 +2165,7 @@ _021D85B4:
add r1, r1, r5
bl MOD65_021D847C
ldr r0, [r4, #0x34]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r0, [r4, #0x20]
add r0, r0, r5
ldrb r2, [r0, #0x1f]
@@ -2183,7 +2183,7 @@ _021D85D4:
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x40]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
ldr r0, _021D8630 ; =0x00010200
@@ -2339,7 +2339,7 @@ MOD65_021D8718: ; 0x021D8718
sub sp, #8
add r4, r0, #0
ldr r0, [r4, #0x34]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldrb r1, [r4, #0x1a]
ldr r2, [r4, #0x20]
ldr r0, [r4, #0x28]
@@ -2358,7 +2358,7 @@ MOD65_021D8718: ; 0x021D8718
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x44]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
ldr r1, [r4, #0x34]
add r4, #0x7c
@@ -2376,7 +2376,7 @@ MOD65_021D8764: ; 0x021D8764
sub sp, #8
add r4, r0, #0
ldr r0, [r4, #0x34]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldrb r1, [r4, #0x1a]
ldr r2, [r4, #0x20]
ldr r0, [r4, #0x28]
@@ -2395,7 +2395,7 @@ MOD65_021D8764: ; 0x021D8764
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x48]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
ldr r1, [r4, #0x34]
add r4, #0x7c
@@ -3320,14 +3320,14 @@ MOD65_021D8EC4: ; 0x021D8EC4
str r0, [r6, #0x1c]
ldr r1, [r6]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
str r0, [r6, #0x20]
mov r4, #0
add r5, r6, #0
_021D8EF0:
ldr r0, [r6, #0x18]
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x24]
add r4, r4, #1
add r5, r5, #4
@@ -3346,13 +3346,13 @@ MOD65_021D8F08: ; 0x021D8F08
add r5, r6, #0
_021D8F10:
ldr r0, [r5, #0x24]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #3
blt _021D8F10
ldr r0, [r6, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x1c]
bl FUN_0200AB18
ldr r0, [r6, #0x18]
@@ -3396,7 +3396,7 @@ MOD65_021D8F34: ; 0x021D8F34
strb r1, [r0]
ldr r1, [r4]
mov r0, #0xc
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x3c]
ldr r0, [r4, #0x10]
ldr r2, [r4, #0x3c]
@@ -3416,11 +3416,11 @@ MOD65_021D8F34: ; 0x021D8F34
thumb_func_start MOD65_021D8FA4
MOD65_021D8FA4: ; 0x021D8FA4
- ldr r3, _021D8FAC ; =FUN_02021A20
+ ldr r3, _021D8FAC ; =String_dtor
ldr r0, [r0, #0x3c]
bx r3
nop
-_021D8FAC: .word FUN_02021A20
+_021D8FAC: .word String_dtor
thumb_func_end MOD65_021D8FA4
thumb_func_start MOD65_021D8FB0
@@ -3844,7 +3844,7 @@ MOD65_021D92C4: ; 0x021D92C4
mov r1, #0xff
bl FUN_02019620
ldr r0, [r4, #0x20]
- bl FUN_02021A4C
+ bl StringSetEmpty
mov r0, #1
str r0, [sp]
mov r3, #2
@@ -3861,7 +3861,7 @@ MOD65_021D92C4: ; 0x021D92C4
lsl r2, r2, #2
add r2, r4, r2
ldr r2, [r2, #0x24]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
ldr r0, [r4, #0x10]
diff --git a/arm9/modules/66/asm/module_66.s b/arm9/modules/66/asm/module_66.s
index a556a870..ec44c798 100644
--- a/arm9/modules/66/asm/module_66.s
+++ b/arm9/modules/66/asm/module_66.s
@@ -254,7 +254,7 @@ _021D7694:
str r0, [r1]
ldr r1, [r4, #4]
mov r0, #0x16
- bl FUN_020219F4
+ bl String_ctor
add r1, r4, #0
add r1, #0x88
str r0, [r1]
@@ -349,7 +349,7 @@ _021D7782:
add r0, r5, #0
add r0, #0x88
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x84
ldr r0, [r0]
@@ -1299,7 +1299,7 @@ _021D7EF8:
add r0, r6, #0
add r0, #0x88
ldr r0, [r0]
- bl FUN_02021A4C
+ bl StringSetEmpty
ldr r2, [r4, #0x18]
ldr r3, [r4, #0x1c]
add r0, r6, #0
@@ -1717,7 +1717,7 @@ MOD66_021D820C: ; 0x021D820C
ldr r6, [r5, #0x34]
add r7, r2, #0
str r3, [sp, #0x10]
- bl FUN_02021A4C
+ bl StringSetEmpty
add r0, r4, #0
mov r1, #0
bl FUN_02019620
@@ -1766,7 +1766,7 @@ _021D8278:
add r5, #0x84
ldr r0, [r5]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
mov r0, #6
str r0, [sp]
@@ -1781,7 +1781,7 @@ _021D8278:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_021D82AA:
add r0, r4, #0
bl FUN_020191D0
@@ -1830,7 +1830,7 @@ _021D8300:
add r0, r5, #0
add r0, #0x84
ldr r0, [r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #0xe]
mov r1, #0
@@ -1845,7 +1845,7 @@ _021D8300:
add r0, r6, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
_021D832C:
ldrh r1, [r4, #0xa]
ldr r0, _021D8378 ; =0x0000FFFF
@@ -1864,7 +1864,7 @@ _021D832C:
_021D8348:
add r5, #0x84
ldr r0, [r5]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
ldrh r0, [r4, #0x12]
mov r1, #0
@@ -1879,7 +1879,7 @@ _021D8348:
add r0, r6, #0
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_021D8372:
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -2094,7 +2094,7 @@ MOD66_021D84C8: ; 0x021D84C8
add r4, #0x84
ldr r0, [r4]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0
add r1, r6, #0
@@ -2119,7 +2119,7 @@ MOD66_021D84C8: ; 0x021D84C8
add r0, r5, #0
bl FUN_020191D0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
nop
diff --git a/arm9/modules/67/asm/module_67.s b/arm9/modules/67/asm/module_67.s
index 03dbe420..b60f3d12 100644
--- a/arm9/modules/67/asm/module_67.s
+++ b/arm9/modules/67/asm/module_67.s
@@ -445,7 +445,7 @@ MOD67_021D7880: ; 0x021D7880
str r0, [r4, #0x54]
mov r0, #0x80
mov r1, #0x2a
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x58]
pop {r4, pc}
nop
@@ -461,7 +461,7 @@ MOD67_021D78AC: ; 0x021D78AC
ldr r0, [r4, #0x54]
bl FUN_0200AB18
ldr r0, [r4, #0x58]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
thumb_func_end MOD67_021D78AC
@@ -1181,7 +1181,7 @@ MOD67_021D7E00: ; 0x021D7E00
_021D7E32:
ldr r0, [r5, #0x50]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r2, [sp, #0x14]
add r4, r0, #0
lsl r2, r2, #0x15
@@ -1202,9 +1202,9 @@ _021D7E32:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -1226,7 +1226,7 @@ _021D7E32:
lsr r1, r1, #0x1d
ldr r0, [r5, #0x50]
add r1, r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r1, #0
add r4, #0xc
@@ -1241,10 +1241,10 @@ _021D7E32:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x50]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x14]
lsr r0, r0, #0x13
@@ -1256,7 +1256,7 @@ _021D7E32:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -1269,7 +1269,7 @@ _021D7E32:
ldr r2, [r5, #0x58]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
@@ -1690,12 +1690,12 @@ _021D822A:
ldr r1, _021D8338 ; =0x0000017E
mov r0, #0x1a
mov r3, #0x2a
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r6, r0, #0
bl FUN_02021D3C
add r5, r0, #0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, sp, #0x10
ldrh r0, [r0]
mov r1, #1
@@ -1706,7 +1706,7 @@ _021D822A:
bne _021D828A
ldr r0, [r4, #0x50]
mov r1, #0x38
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r0, [r4, #0x54]
ldr r2, [r4, #0x4c]
@@ -1715,12 +1715,12 @@ _021D822A:
ldr r0, [r4, #0x54]
ldr r1, [r4, #0x58]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0x58]
bl FUN_02021D3C
add r5, r5, r0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
b _021D82BA
_021D828A:
add r2, sp, #0x10
@@ -1730,12 +1730,12 @@ _021D828A:
lsl r2, r2, #0x10
lsr r2, r2, #0x11
mov r3, #0x2a
- bl FUN_0200A738
+ bl ReadMsgData_NewNarc_NewString
add r6, r0, #0
bl FUN_02021D3C
add r5, r5, r0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r2, sp, #0x10
ldrh r2, [r2]
ldr r0, [r4, #0x54]
@@ -1748,7 +1748,7 @@ _021D82BA:
bhi _021D82CA
ldr r0, [r4, #0x50]
mov r1, #0x34
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _021D82F2
_021D82CA:
@@ -1756,7 +1756,7 @@ _021D82CA:
bhi _021D82DA
ldr r0, [r4, #0x50]
mov r1, #0x35
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _021D82F2
_021D82DA:
@@ -1764,12 +1764,12 @@ _021D82DA:
ldr r0, [r4, #0x50]
bhi _021D82EA
mov r1, #0x36
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
b _021D82F2
_021D82EA:
mov r1, #0x37
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
_021D82F2:
add r0, sp, #0x10
@@ -1782,7 +1782,7 @@ _021D82F2:
ldr r0, [r4, #0x54]
ldr r1, [r4, #0x58]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x60
str r0, [sp]
mov r0, #0xff
@@ -1796,7 +1796,7 @@ _021D82F2:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
_021D832E:
add sp, #0x14
pop {r4, r5, r6, r7, pc}
@@ -2002,7 +2002,7 @@ MOD67_021D84A8: ; 0x021D84A8
add r6, r1, #0
add r5, r3, #0
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2018,7 +2018,7 @@ MOD67_021D84A8: ; 0x021D84A8
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2033,7 +2033,7 @@ MOD67_021D84E4: ; 0x021D84E4
add r6, r1, #0
add r5, r3, #0
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2049,7 +2049,7 @@ MOD67_021D84E4: ; 0x021D84E4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2064,7 +2064,7 @@ MOD67_021D8520: ; 0x021D8520
add r6, r1, #0
add r5, r3, #0
mov r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2080,7 +2080,7 @@ MOD67_021D8520: ; 0x021D8520
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2095,7 +2095,7 @@ MOD67_021D855C: ; 0x021D855C
add r6, r1, #0
add r5, r3, #0
mov r1, #0xc
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2111,7 +2111,7 @@ MOD67_021D855C: ; 0x021D855C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2126,7 +2126,7 @@ MOD67_021D8598: ; 0x021D8598
add r6, r1, #0
add r5, r3, #0
mov r1, #0xd
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2142,7 +2142,7 @@ MOD67_021D8598: ; 0x021D8598
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2157,7 +2157,7 @@ MOD67_021D85D4: ; 0x021D85D4
add r6, r1, #0
add r5, r3, #0
mov r1, #0xe
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2173,7 +2173,7 @@ MOD67_021D85D4: ; 0x021D85D4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2188,7 +2188,7 @@ MOD67_021D8610: ; 0x021D8610
add r6, r1, #0
add r5, r3, #0
mov r1, #0xf
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2204,7 +2204,7 @@ MOD67_021D8610: ; 0x021D8610
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2219,7 +2219,7 @@ MOD67_021D864C: ; 0x021D864C
add r6, r1, #0
add r5, r3, #0
mov r1, #0x10
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2235,7 +2235,7 @@ MOD67_021D864C: ; 0x021D864C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2252,7 +2252,7 @@ MOD67_021D8688: ; 0x021D8688
add r4, r2, #0
mov r1, #0x11
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r2, [r4, #2]
ldr r0, [r5, #0x54]
@@ -2261,7 +2261,7 @@ MOD67_021D8688: ; 0x021D8688
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2276,7 +2276,7 @@ MOD67_021D8688: ; 0x021D8688
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2293,7 +2293,7 @@ MOD67_021D86DC: ; 0x021D86DC
add r4, r2, #0
mov r1, #0x12
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r2, [r4, #2]
ldr r0, [r5, #0x54]
@@ -2306,7 +2306,7 @@ MOD67_021D86DC: ; 0x021D86DC
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2321,7 +2321,7 @@ MOD67_021D86DC: ; 0x021D86DC
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2338,7 +2338,7 @@ MOD67_021D873C: ; 0x021D873C
add r4, r2, #0
mov r1, #0x13
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r2, [r4, #4]
ldr r0, [r5, #0x54]
@@ -2347,7 +2347,7 @@ MOD67_021D873C: ; 0x021D873C
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2362,7 +2362,7 @@ MOD67_021D873C: ; 0x021D873C
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2379,7 +2379,7 @@ MOD67_021D8790: ; 0x021D8790
add r4, r2, #0
mov r1, #0x14
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r2, [r4, #4]
ldr r0, [r5, #0x54]
@@ -2388,7 +2388,7 @@ MOD67_021D8790: ; 0x021D8790
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2403,7 +2403,7 @@ MOD67_021D8790: ; 0x021D8790
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2420,7 +2420,7 @@ MOD67_021D87E4: ; 0x021D87E4
add r4, r2, #0
mov r1, #0x15
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2431,7 +2431,7 @@ MOD67_021D87E4: ; 0x021D87E4
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2446,7 +2446,7 @@ MOD67_021D87E4: ; 0x021D87E4
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2470,13 +2470,13 @@ MOD67_021D8840: ; 0x021D8840
_021D8858:
ldr r0, [r5, #0x50]
mov r1, #0x17
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D886E
_021D8864:
ldr r0, [r5, #0x50]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D886E:
ldr r0, [r5, #0x54]
@@ -2486,7 +2486,7 @@ _021D886E:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2501,7 +2501,7 @@ _021D886E:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2522,11 +2522,11 @@ MOD67_021D88AC: ; 0x021D88AC
ldr r0, [r5, #0x50]
bne _021D88CC
mov r1, #0x17
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _021D88D2
_021D88CC:
mov r1, #0x18
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_021D88D2:
add r6, r0, #0
ldr r0, [r5, #0x54]
@@ -2536,7 +2536,7 @@ _021D88D2:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r4, #4
add r0, #0x10
str r0, [sp]
@@ -2551,7 +2551,7 @@ _021D88D2:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2566,7 +2566,7 @@ MOD67_021D8914: ; 0x021D8914
add r6, r1, #0
add r5, r3, #0
mov r1, #0x19
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2582,7 +2582,7 @@ MOD67_021D8914: ; 0x021D8914
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2597,7 +2597,7 @@ MOD67_021D8950: ; 0x021D8950
add r6, r1, #0
add r5, r3, #0
mov r1, #0x1a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -2613,7 +2613,7 @@ MOD67_021D8950: ; 0x021D8950
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -2630,7 +2630,7 @@ MOD67_021D898C: ; 0x021D898C
add r4, r2, #0
mov r1, #0x1d
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r2, [r4, #6]
ldr r0, [r5, #0x54]
@@ -2639,7 +2639,7 @@ MOD67_021D898C: ; 0x021D898C
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2654,7 +2654,7 @@ MOD67_021D898C: ; 0x021D898C
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2671,7 +2671,7 @@ MOD67_021D89E0: ; 0x021D89E0
add r4, r2, #0
mov r1, #0x23
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2682,7 +2682,7 @@ MOD67_021D89E0: ; 0x021D89E0
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2697,7 +2697,7 @@ MOD67_021D89E0: ; 0x021D89E0
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2714,7 +2714,7 @@ MOD67_021D8A3C: ; 0x021D8A3C
add r4, r2, #0
mov r1, #0x1e
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2725,7 +2725,7 @@ MOD67_021D8A3C: ; 0x021D8A3C
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2740,7 +2740,7 @@ MOD67_021D8A3C: ; 0x021D8A3C
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2757,7 +2757,7 @@ MOD67_021D8A98: ; 0x021D8A98
add r4, r2, #0
mov r1, #0x1f
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2768,7 +2768,7 @@ MOD67_021D8A98: ; 0x021D8A98
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2783,7 +2783,7 @@ MOD67_021D8A98: ; 0x021D8A98
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2800,7 +2800,7 @@ MOD67_021D8AF4: ; 0x021D8AF4
add r4, r2, #0
mov r1, #0x26
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2811,7 +2811,7 @@ MOD67_021D8AF4: ; 0x021D8AF4
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2826,7 +2826,7 @@ MOD67_021D8AF4: ; 0x021D8AF4
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2843,7 +2843,7 @@ MOD67_021D8B50: ; 0x021D8B50
add r4, r2, #0
mov r1, #0x21
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2854,7 +2854,7 @@ MOD67_021D8B50: ; 0x021D8B50
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2869,7 +2869,7 @@ MOD67_021D8B50: ; 0x021D8B50
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2886,7 +2886,7 @@ MOD67_021D8BAC: ; 0x021D8BAC
add r4, r2, #0
mov r1, #0x20
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2897,7 +2897,7 @@ MOD67_021D8BAC: ; 0x021D8BAC
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2912,7 +2912,7 @@ MOD67_021D8BAC: ; 0x021D8BAC
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2929,7 +2929,7 @@ MOD67_021D8C08: ; 0x021D8C08
add r4, r2, #0
mov r1, #0x25
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2940,7 +2940,7 @@ MOD67_021D8C08: ; 0x021D8C08
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2955,7 +2955,7 @@ MOD67_021D8C08: ; 0x021D8C08
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -2972,7 +2972,7 @@ MOD67_021D8C64: ; 0x021D8C64
add r4, r2, #0
mov r1, #0x24
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -2983,7 +2983,7 @@ MOD67_021D8C64: ; 0x021D8C64
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -2998,7 +2998,7 @@ MOD67_021D8C64: ; 0x021D8C64
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3015,7 +3015,7 @@ MOD67_021D8CC0: ; 0x021D8CC0
add r4, r2, #0
mov r1, #0x22
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -3026,7 +3026,7 @@ MOD67_021D8CC0: ; 0x021D8CC0
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -3041,7 +3041,7 @@ MOD67_021D8CC0: ; 0x021D8CC0
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3058,7 +3058,7 @@ MOD67_021D8D1C: ; 0x021D8D1C
add r4, r2, #0
mov r1, #0x29
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -3069,7 +3069,7 @@ MOD67_021D8D1C: ; 0x021D8D1C
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -3084,7 +3084,7 @@ MOD67_021D8D1C: ; 0x021D8D1C
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3101,7 +3101,7 @@ MOD67_021D8D78: ; 0x021D8D78
add r4, r2, #0
mov r1, #0x27
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
ldrh r0, [r4, #2]
bl FUN_02034824
@@ -3112,7 +3112,7 @@ MOD67_021D8D78: ; 0x021D8D78
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x10
str r0, [sp]
@@ -3127,7 +3127,7 @@ MOD67_021D8D78: ; 0x021D8D78
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3142,7 +3142,7 @@ MOD67_021D8DD4: ; 0x021D8DD4
add r6, r1, #0
add r5, r3, #0
mov r1, #0x28
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -3158,7 +3158,7 @@ MOD67_021D8DD4: ; 0x021D8DD4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -3173,7 +3173,7 @@ MOD67_021D8E10: ; 0x021D8E10
add r6, r1, #0
add r5, r3, #0
mov r1, #0x2a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -3189,7 +3189,7 @@ MOD67_021D8E10: ; 0x021D8E10
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -3204,7 +3204,7 @@ MOD67_021D8E4C: ; 0x021D8E4C
add r6, r1, #0
add r5, r3, #0
mov r1, #0x2b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -3220,7 +3220,7 @@ MOD67_021D8E4C: ; 0x021D8E4C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -3235,7 +3235,7 @@ MOD67_021D8E88: ; 0x021D8E88
add r6, r1, #0
add r5, r3, #0
mov r1, #0x1b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -3251,7 +3251,7 @@ MOD67_021D8E88: ; 0x021D8E88
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -3266,7 +3266,7 @@ MOD67_021D8EC4: ; 0x021D8EC4
add r6, r1, #0
add r5, r3, #0
mov r1, #0x1c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x10
@@ -3282,7 +3282,7 @@ MOD67_021D8EC4: ; 0x021D8EC4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -3337,13 +3337,13 @@ MOD67_021D8F40: ; 0x021D8F40
_021D8F58:
ldr r0, [r5, #0x50]
mov r1, #0x2c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D8F9A
_021D8F64:
ldr r0, [r5, #0x50]
mov r1, #0x2d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D8F9A
_021D8F70:
@@ -3352,7 +3352,7 @@ _021D8F70:
bne _021D8F82
ldr r0, [r5, #0x50]
mov r1, #0x2e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D8F9A
_021D8F82:
@@ -3360,12 +3360,12 @@ _021D8F82:
ldr r0, [r5, #0x50]
bne _021D8F92
mov r1, #0x2f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D8F9A
_021D8F92:
mov r1, #0x2c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
_021D8F9A:
ldrb r2, [r4, #1]
@@ -3384,7 +3384,7 @@ _021D8F9A:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x50
str r0, [sp]
mov r0, #0xff
@@ -3398,7 +3398,7 @@ _021D8F9A:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -3422,13 +3422,13 @@ MOD67_021D8FEC: ; 0x021D8FEC
_021D9004:
ldr r0, [r5, #0x50]
mov r1, #0x30
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D9046
_021D9010:
ldr r0, [r5, #0x50]
mov r1, #0x31
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D9046
_021D901C:
@@ -3437,7 +3437,7 @@ _021D901C:
bne _021D902E
ldr r0, [r5, #0x50]
mov r1, #0x32
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D9046
_021D902E:
@@ -3445,12 +3445,12 @@ _021D902E:
ldr r0, [r5, #0x50]
bne _021D903E
mov r1, #0x33
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
b _021D9046
_021D903E:
mov r1, #0x30
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
_021D9046:
ldrb r2, [r4, #1]
@@ -3469,7 +3469,7 @@ _021D9046:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x50
str r0, [sp]
mov r0, #0xff
@@ -3483,7 +3483,7 @@ _021D9046:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -3500,7 +3500,7 @@ MOD67_021D9098: ; 0x021D9098
mov r1, #0x2a
add r7, r2, #0
str r3, [sp, #8]
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
add r4, r0, #0
bl FUN_02021E28
@@ -3514,7 +3514,7 @@ MOD67_021D9098: ; 0x021D9098
add r3, r7, #0
bl FUN_0200ABB4
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3540,19 +3540,19 @@ MOD67_021D90D4: ; 0x021D90D4
_021D90F2:
ldr r0, [r5, #0x50]
mov r1, #0x39
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9114
_021D90FE:
ldr r0, [r5, #0x50]
mov r1, #0x3a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9114
_021D910A:
ldr r0, [r5, #0x50]
mov r1, #0x3b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D9114:
ldrb r2, [r4, #1]
@@ -3565,7 +3565,7 @@ _021D9114:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3580,7 +3580,7 @@ _021D9114:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3607,19 +3607,19 @@ MOD67_021D9158: ; 0x021D9158
_021D9176:
ldr r0, [r5, #0x50]
mov r1, #0x3c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9198
_021D9182:
ldr r0, [r5, #0x50]
mov r1, #0x3d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9198
_021D918E:
ldr r0, [r5, #0x50]
mov r1, #0x3e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D9198:
ldrb r2, [r4, #1]
@@ -3632,7 +3632,7 @@ _021D9198:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3647,7 +3647,7 @@ _021D9198:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3674,19 +3674,19 @@ MOD67_021D91DC: ; 0x021D91DC
_021D91FA:
ldr r0, [r5, #0x50]
mov r1, #0x3f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D921C
_021D9206:
ldr r0, [r5, #0x50]
mov r1, #0x40
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D921C
_021D9212:
ldr r0, [r5, #0x50]
mov r1, #0x41
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D921C:
ldrb r2, [r4, #1]
@@ -3707,7 +3707,7 @@ _021D921C:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3722,7 +3722,7 @@ _021D921C:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3749,19 +3749,19 @@ MOD67_021D9274: ; 0x021D9274
_021D9292:
ldr r0, [r5, #0x50]
mov r1, #0x42
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D92B4
_021D929E:
ldr r0, [r5, #0x50]
mov r1, #0x43
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D92B4
_021D92AA:
ldr r0, [r5, #0x50]
mov r1, #0x44
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D92B4:
ldrb r2, [r4, #1]
@@ -3774,7 +3774,7 @@ _021D92B4:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3789,7 +3789,7 @@ _021D92B4:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3816,19 +3816,19 @@ MOD67_021D92F8: ; 0x021D92F8
_021D9316:
ldr r0, [r5, #0x50]
mov r1, #0x45
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9338
_021D9322:
ldr r0, [r5, #0x50]
mov r1, #0x46
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D9338
_021D932E:
ldr r0, [r5, #0x50]
mov r1, #0x47
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D9338:
ldrb r2, [r4, #1]
@@ -3849,7 +3849,7 @@ _021D9338:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3864,7 +3864,7 @@ _021D9338:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3881,7 +3881,7 @@ MOD67_021D9390: ; 0x021D9390
add r4, r2, #0
mov r1, #0x48
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldrb r2, [r4, #1]
add r7, r0, #0
add r0, r5, #0
@@ -3893,7 +3893,7 @@ MOD67_021D9390: ; 0x021D9390
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3908,7 +3908,7 @@ MOD67_021D9390: ; 0x021D9390
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -3925,7 +3925,7 @@ MOD67_021D93EC: ; 0x021D93EC
add r4, r2, #0
mov r1, #0x49
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldrb r2, [r4, #1]
add r7, r0, #0
add r0, r5, #0
@@ -3945,7 +3945,7 @@ MOD67_021D93EC: ; 0x021D93EC
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -3960,7 +3960,7 @@ MOD67_021D93EC: ; 0x021D93EC
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -3975,7 +3975,7 @@ MOD67_021D9458: ; 0x021D9458
add r6, r1, #0
add r5, r3, #0
mov r1, #0x4a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x70
@@ -3991,7 +3991,7 @@ MOD67_021D9458: ; 0x021D9458
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -4008,7 +4008,7 @@ MOD67_021D9494: ; 0x021D9494
add r4, r2, #0
mov r1, #0x4b
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldrb r2, [r4, #1]
add r1, r4, #0
add r7, r0, #0
@@ -4021,7 +4021,7 @@ MOD67_021D9494: ; 0x021D9494
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -4036,7 +4036,7 @@ MOD67_021D9494: ; 0x021D9494
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -4051,7 +4051,7 @@ MOD67_021D94F0: ; 0x021D94F0
add r6, r1, #0
add r5, r3, #0
mov r1, #0x4c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x70
@@ -4067,7 +4067,7 @@ MOD67_021D94F0: ; 0x021D94F0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -4094,19 +4094,19 @@ MOD67_021D952C: ; 0x021D952C
_021D954A:
ldr r0, [r5, #0x50]
mov r1, #0x4d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D956C
_021D9556:
ldr r0, [r5, #0x50]
mov r1, #0x4e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
b _021D956C
_021D9562:
ldr r0, [r5, #0x50]
mov r1, #0x4f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
_021D956C:
ldrb r2, [r4, #1]
@@ -4119,7 +4119,7 @@ _021D956C:
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -4134,7 +4134,7 @@ _021D956C:
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -4149,7 +4149,7 @@ MOD67_021D95B0: ; 0x021D95B0
add r6, r1, #0
add r5, r3, #0
mov r1, #0x50
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x70
@@ -4165,7 +4165,7 @@ MOD67_021D95B0: ; 0x021D95B0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -4182,7 +4182,7 @@ MOD67_021D95EC: ; 0x021D95EC
mov r1, #0x51
add r4, r2, #0
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
str r1, [sp]
mov r3, #1
@@ -4196,7 +4196,7 @@ MOD67_021D95EC: ; 0x021D95EC
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -4211,7 +4211,7 @@ MOD67_021D95EC: ; 0x021D95EC
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
@@ -4226,7 +4226,7 @@ MOD67_021D964C: ; 0x021D964C
add r6, r1, #0
add r5, r3, #0
mov r1, #0x52
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x70
@@ -4242,7 +4242,7 @@ MOD67_021D964C: ; 0x021D964C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -4259,7 +4259,7 @@ MOD67_021D9688: ; 0x021D9688
add r4, r2, #0
mov r1, #0x53
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldrb r2, [r4, #1]
add r7, r0, #0
add r0, r5, #0
@@ -4279,7 +4279,7 @@ MOD67_021D9688: ; 0x021D9688
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
lsl r0, r6, #4
add r0, #0x70
str r0, [sp]
@@ -4294,7 +4294,7 @@ MOD67_021D9688: ; 0x021D9688
add r3, r1, #0
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -4309,7 +4309,7 @@ MOD67_021D96F4: ; 0x021D96F4
add r6, r1, #0
add r5, r3, #0
mov r1, #0x54
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
lsl r0, r5, #4
add r0, #0x70
@@ -4325,7 +4325,7 @@ MOD67_021D96F4: ; 0x021D96F4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
diff --git a/arm9/modules/68/asm/module_68.s b/arm9/modules/68/asm/module_68.s
index fb926299..6c2c3772 100644
--- a/arm9/modules/68/asm/module_68.s
+++ b/arm9/modules/68/asm/module_68.s
@@ -519,7 +519,7 @@ MOD68_021D7904: ; 0x021D7904
ldr r0, [r0]
add r1, r2, #0
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
mov r0, #0
ldr r1, [sp, #0x10]
@@ -542,7 +542,7 @@ MOD68_021D7904: ; 0x021D7904
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, r4
bl FUN_02019220
add sp, #0x14
@@ -674,11 +674,11 @@ MOD68_021D7A18: ; 0x021D7A18
add r0, #0xc4
ldr r0, [r0]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #6
mov r1, #0x24
- bl FUN_020219F4
+ bl String_ctor
mov r3, #2
add r6, r0, #0
mov r2, #0x7e
@@ -699,7 +699,7 @@ MOD68_021D7A18: ; 0x021D7A18
ldr r0, [r0]
add r1, r6, #0
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -712,9 +712,9 @@ MOD68_021D7A18: ; 0x021D7A18
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x7e
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -734,7 +734,7 @@ MOD68_021D7A18: ; 0x021D7A18
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_02019220
add sp, #0x10
@@ -772,7 +772,7 @@ MOD68_021D7AE4: ; 0x021D7AE4
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_02019220
add sp, #0x10
@@ -794,7 +794,7 @@ MOD68_021D7B34: ; 0x021D7B34
add r4, #0xc4
ldr r0, [r4]
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -808,7 +808,7 @@ MOD68_021D7B34: ; 0x021D7B34
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_02019220
add sp, #0x10
@@ -839,7 +839,7 @@ _021D7BA4:
add r4, #0xc4
ldr r0, [r4]
add r1, #0xb
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -853,7 +853,7 @@ _021D7BA4:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_02019220
add sp, #0x10
@@ -875,7 +875,7 @@ MOD68_021D7BDC: ; 0x021D7BDC
add r4, #0xc4
ldr r0, [r4]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -889,7 +889,7 @@ MOD68_021D7BDC: ; 0x021D7BDC
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_02019220
add sp, #0x10
@@ -927,11 +927,11 @@ MOD68_021D7C28: ; 0x021D7C28
add r0, #0xc4
ldr r0, [r0]
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x10]
mov r0, #0x20
mov r1, #0x24
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r7, #0
mov r1, #0xa
@@ -963,7 +963,7 @@ MOD68_021D7C28: ; 0x021D7C28
ldr r0, [r5]
ldr r2, [sp, #0x10]
add r1, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -976,9 +976,9 @@ MOD68_021D7C28: ; 0x021D7C28
str r1, [sp, #0xc]
bl FUN_0201BDE0
ldr r0, [sp, #0x10]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
bl FUN_02019220
add sp, #0x14
diff --git a/arm9/modules/69/asm/module_69.s b/arm9/modules/69/asm/module_69.s
index a5103ad4..834a3a96 100644
--- a/arm9/modules/69/asm/module_69.s
+++ b/arm9/modules/69/asm/module_69.s
@@ -33,13 +33,13 @@ MOD69_0222D5C0: ; 0x0222D5C0
mov r0, #0x7d
lsl r0, r0, #2
mov r1, #0x3f
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222D714 ; =0x00001B54
str r0, [r4, r1]
mov r0, #0x7d
lsl r0, r0, #2
mov r1, #0x3f
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222D718 ; =0x00001B58
str r0, [r4, r1]
mov r0, #0x3f
@@ -203,10 +203,10 @@ _0222D762:
bl FUN_0200AB18
ldr r0, _0222D7E8 ; =0x00001B54
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222D7EC ; =0x00001B58
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222D7F0 ; =0x00001B5C
ldr r0, [r4, r0]
bl DestroyMsgData
@@ -2381,24 +2381,24 @@ _0222E93C:
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x18]
mov r1, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0222E95E
_0222E948:
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x18]
mov r1, #2
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _0222E95E
_0222E954:
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x18]
mov r1, #3
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0222E95E:
ldr r0, [r4, #0x14]
ldr r1, [r4, #0x1c]
ldr r2, [r4, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add sp, #8
pop {r4, pc}
@@ -2427,11 +2427,11 @@ _0222E996:
ldr r0, [r5, #0x20]
ldr r2, [r5, #0x18]
add r1, r4, #5
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x1c]
ldr r2, [r5, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
pop {r3, r4, r5, pc}
thumb_func_start MOD69_0222E9AC
@@ -2464,7 +2464,7 @@ _0222E9D8:
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x1c]
mov r1, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0
mov r1, #0x18
bl MOD69_0222E89C
@@ -2507,11 +2507,11 @@ _0222EA2E:
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x18]
mov r1, #4
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r4, #0x14]
ldr r1, [r4, #0x1c]
ldr r2, [r4, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
mov r1, #0x78
bl MOD69_0222E89C
@@ -2641,7 +2641,7 @@ MOD69_0222EB4C: ; 0x0222EB4C
sub r2, #8
ldr r2, [r4, r2]
mov r1, #0xc
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, _0222EC54 ; =0x00001B54
mov r0, #0
ldr r1, [r4, r1]
@@ -2712,14 +2712,14 @@ MOD69_0222EB4C: ; 0x0222EB4C
ldr r0, [r4, r2]
sub r2, r2, #4
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r2, _0222EC5C ; =0x00001B50
add r1, r2, #4
ldr r0, [r4, r2]
add r2, #8
ldr r1, [r4, r1]
ldr r2, [r4, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, _0222EC54 ; =0x00001B54
mov r0, #0
ldr r1, [r4, r1]
diff --git a/arm9/modules/70/asm/module_70.s b/arm9/modules/70/asm/module_70.s
index 6ab711fd..f009f72f 100644
--- a/arm9/modules/70/asm/module_70.s
+++ b/arm9/modules/70/asm/module_70.s
@@ -313,11 +313,11 @@ MOD70_021D7724: ; 0x021D7724
_021D7734:
add r0, r6, #0
add r1, r7, #0
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x20]
mov r0, #8
mov r1, #0x3c
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x24]
add r4, r4, #1
add r5, #0x1c
@@ -339,9 +339,9 @@ MOD70_021D7760: ; 0x021D7760
mov r4, #0
_021D7766:
ldr r0, [r5, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x24]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, #0x1c
cmp r4, #6
@@ -457,14 +457,14 @@ MOD70_021D77CC: ; 0x021D77CC
sub r1, #0x8c
add r0, r1, #0
mov r1, #0x3d
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x19
lsl r1, r1, #4
str r0, [r4, r1]
sub r1, #0x90
add r0, r1, #0
mov r1, #0x3d
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0x65
lsl r1, r1, #2
str r0, [r4, r1]
@@ -501,11 +501,11 @@ MOD70_021D78A0: ; 0x021D78A0
mov r0, #0x65
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x19
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -1090,7 +1090,7 @@ MOD70_021D7CE8: ; 0x021D7CE8
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0x63
lsl r2, r2, #2
add r1, r2, #0
@@ -1099,7 +1099,7 @@ MOD70_021D7CE8: ; 0x021D7CE8
add r2, r2, #4
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
mov r1, #0xf
bl FUN_02019620
@@ -1161,7 +1161,7 @@ _021D7DC8:
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #5
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r2, #0xff
@@ -1178,7 +1178,7 @@ _021D7DC8:
add r2, #0xc
ldrh r1, [r7, #0x10]
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r2, #0xff
@@ -1204,7 +1204,7 @@ _021D7E3A:
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #3
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D7E68
_021D7E4C:
mov r2, #6
@@ -1213,13 +1213,13 @@ _021D7E4C:
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #4
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D7E68
_021D7E5E:
mov r0, #0x19
lsl r0, r0, #4
ldr r0, [r5, r0]
- bl FUN_02021A4C
+ bl StringSetEmpty
_021D7E68:
mov r1, #0
str r1, [sp]
@@ -1237,7 +1237,7 @@ _021D7E68:
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
@@ -1256,7 +1256,7 @@ _021D7E68:
add r2, r2, #4
ldr r1, [r5, r1]
ldr r2, [r5, r2]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r2, #0xff
@@ -1273,7 +1273,7 @@ _021D7E68:
add r2, #0x10
ldr r2, [r5, r2]
mov r1, #2
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x10
str r0, [sp]
mov r2, #0xff
@@ -1314,7 +1314,7 @@ _021D7F1E:
lsl r2, r2, #4
ldr r0, [r5, r0]
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
lsr r0, r4, #0x1f
add r0, r4, r0
asr r0, r0, #1
diff --git a/arm9/modules/71/asm/module_71.s b/arm9/modules/71/asm/module_71.s
index 425cfc0b..fae14c7d 100644
--- a/arm9/modules/71/asm/module_71.s
+++ b/arm9/modules/71/asm/module_71.s
@@ -217,7 +217,7 @@ MOD71_0222D780: ; 0x0222D780
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x30
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r7, r0, #0
mov r0, #1
str r0, [sp]
@@ -247,11 +247,11 @@ MOD71_0222D780: ; 0x0222D780
mov r3, #0
bl MOD71_02230EFC
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -685,7 +685,7 @@ _0222DBB0:
ldr r1, [sp, #0xc]
add r2, r7, r4
mov r3, #0x1a
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r6, r0, #0
mov r0, #1
str r0, [sp]
@@ -697,7 +697,7 @@ _0222DBB0:
mov r3, #0
bl MOD71_02230EFC
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
add r5, #0x10
add r4, r4, #1
@@ -1733,7 +1733,7 @@ MOD71_0222E438: ; 0x0222E438
mov r0, #0x19
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222E4D4 ; =0x0000221C
ldr r0, [r4, r0]
bl FreeToHeap
@@ -1770,7 +1770,7 @@ MOD71_0222E438: ; 0x0222E438
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl FUN_0200627C
mov r0, #0
@@ -2167,7 +2167,7 @@ MOD71_0222E76C: ; 0x0222E76C
sub r1, #8
ldr r0, [r5, r1]
mov r1, #0x28
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x19
lsl r1, r1, #4
str r0, [r5, r1]
@@ -2690,7 +2690,7 @@ MOD71_0222EC5C: ; 0x0222EC5C
mov r0, #0x14
mov r1, #0x1a
str r3, [sp, #8]
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r6, #0
add r1, r7, #0
@@ -2711,7 +2711,7 @@ MOD71_0222EC5C: ; 0x0222EC5C
mov r3, #0
bl MOD71_02230EFC
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r4, r5, r6, r7, pc}
thumb_func_end MOD71_0222EC5C
@@ -2902,7 +2902,7 @@ _0222EE14:
bne _0222EE9A
mov r0, #0xa
mov r1, #0x1a
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
add r0, r5, #0
add r0, #0x1c
@@ -2916,7 +2916,7 @@ _0222EE14:
ldr r0, [r4, r0]
mov r1, #0x27
add r2, r7, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #6
str r0, [sp]
mov r0, #0
@@ -2951,7 +2951,7 @@ _0222EE14:
str r3, [sp, #4]
bl MOD71_02230EFC
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
b _0222EEA6
_0222EE9A:
add r0, r5, #0
@@ -2988,7 +2988,7 @@ _0222EEA6:
bl FUN_02019620
mov r0, #0x14
mov r1, #0x1a
- bl FUN_020219F4
+ bl String_ctor
add r1, r7, #0
mov r2, #0x1a
add r5, r0, #0
@@ -3002,7 +3002,7 @@ _0222EEA6:
str r3, [sp, #4]
bl MOD71_02230EFC
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x38
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -3746,7 +3746,7 @@ MOD71_0222F4BC: ; 0x0222F4BC
bl FUN_0202398C
add r1, r0, #0
add r0, r4, #0
- bl StringCopy
+ bl CopyU16StringArray
add r0, r6, #0
bl FUN_020239BC
str r0, [r4, #0x10]
@@ -4417,7 +4417,7 @@ MOD71_0222FA38: ; 0x0222FA38
str r0, [r5, r1]
mov r0, #0x64
mov r1, #0x1a
- bl FUN_020219F4
+ bl String_ctor
ldr r7, _0222FACC ; =0x00003694
add r6, r0, #0
mov r4, #0
@@ -4452,7 +4452,7 @@ _0222FA8A:
sub r3, #0xd
bl FUN_02012880
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r2, _0222FAD0 ; =0x0000367C
mov r3, #0x5d
lsl r3, r3, #2
@@ -6976,7 +6976,7 @@ MOD71_02230F40: ; 0x02230F40
ldr r0, [sp, #0x20]
add r2, r6, #0
mov r3, #0x1a
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r6, r0, #0
cmp r4, #1
bne _02230F6A
@@ -7008,7 +7008,7 @@ _02230F76:
bl FUN_0201BDE0
add r4, r0, #0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
add sp, #0x10
pop {r4, r5, r6, pc}
diff --git a/arm9/modules/73/asm/module_73.s b/arm9/modules/73/asm/module_73.s
index 030457b3..a0e8fc84 100644
--- a/arm9/modules/73/asm/module_73.s
+++ b/arm9/modules/73/asm/module_73.s
@@ -2836,74 +2836,74 @@ MOD73_021D8BDC: ; 0x021D8BDC
str r0, [r5, r1]
ldr r1, [r5]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021D8CEC ; =0x0000157C
str r0, [r5, r1]
sub r1, #8
ldr r0, [r5, r1]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x56
lsl r1, r1, #6
str r0, [r5, r1]
sub r1, #0xc
ldr r0, [r5, r1]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8CF0 ; =0x00001584
str r0, [r5, r1]
sub r1, #0x10
ldr r0, [r5, r1]
mov r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8CF4 ; =0x00001588
str r0, [r5, r1]
sub r1, #0x14
ldr r0, [r5, r1]
mov r1, #0x14
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8CF8 ; =0x0000158C
str r0, [r5, r1]
sub r1, #0x18
ldr r0, [r5, r1]
mov r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8CFC ; =0x00001590
str r0, [r5, r1]
sub r1, #0x1c
ldr r0, [r5, r1]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D00 ; =0x00001594
str r0, [r5, r1]
sub r1, #0x20
ldr r0, [r5, r1]
mov r1, #0x17
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D04 ; =0x00001598
str r0, [r5, r1]
sub r1, #0x24
ldr r0, [r5, r1]
mov r1, #0x18
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D08 ; =0x0000159C
str r0, [r5, r1]
sub r1, #0x28
ldr r0, [r5, r1]
mov r1, #0x19
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D0C ; =0x000015A0
str r0, [r5, r1]
sub r1, #0x2c
ldr r0, [r5, r1]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D10 ; =0x000015A4
str r0, [r5, r1]
sub r1, #0x30
ldr r0, [r5, r1]
mov r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _021D8D14 ; =0x000015A8
mov r4, #0
str r0, [r5, r1]
@@ -2913,7 +2913,7 @@ _021D8CAC:
ldr r0, _021D8CE4 ; =0x00001574
add r1, r4, #3
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, r7]
add r4, r4, #1
add r6, r6, #4
@@ -2928,7 +2928,7 @@ _021D8CC8:
add r1, r4, #0
ldr r0, [r5, r0]
add r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r6, r7]
add r4, r4, #1
add r6, r6, #4
@@ -2958,44 +2958,44 @@ MOD73_021D8D18: ; 0x021D8D18
add r6, r0, #0
ldr r0, _021D8DBC ; =0x000015A8
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DC0 ; =0x000015A4
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DC4 ; =0x00001594
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DC8 ; =0x00001590
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DCC ; =0x0000158C
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DD0 ; =0x00001588
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DD4 ; =0x00001584
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x56
lsl r0, r0, #6
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DD8 ; =0x00001598
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DDC ; =0x0000159C
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DE0 ; =0x000015A0
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r7, _021D8DE4 ; =0x000015AC
mov r4, #0
add r5, r6, #0
_021D8D7C:
ldr r0, [r5, r7]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #5
@@ -3006,14 +3006,14 @@ _021D8D7C:
lsl r7, r7, #6
_021D8D92:
ldr r0, [r4, r7]
- bl FUN_02021A20
+ bl String_dtor
add r5, r5, #1
add r4, r4, #4
cmp r5, #0xa
blt _021D8D92
ldr r0, _021D8DE8 ; =0x0000157C
ldr r0, [r6, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8DEC ; =0x00001578
ldr r0, [r6, r0]
bl FUN_0200AB18
@@ -4909,7 +4909,7 @@ _021D9B02:
ldr r0, [r2, #4]
ldr r1, [r2, #8]
ldr r2, [r2, #0x14]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r1, [r5, #0x18]
lsl r0, r6, #3
ldr r1, [r1, #8]
@@ -6272,7 +6272,7 @@ MOD73_021DA550: ; 0x021DA550
ldr r0, [r2, #4]
ldr r1, [r2, #8]
ldr r2, [r2, #0x50]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x18
str r0, [sp]
mov r1, #0
@@ -6322,7 +6322,7 @@ _021DA61A:
ldr r0, [r3, #4]
ldr r1, [r3, #8]
ldr r2, [r2, #0x4c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x30
str r0, [sp]
mov r1, #0
@@ -6372,7 +6372,7 @@ _021DA682:
ldr r0, [r3, #4]
ldr r1, [r3, #8]
ldr r2, [r2, #0x4c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x44
str r0, [sp]
mov r1, #0
@@ -6428,7 +6428,7 @@ MOD73_021DA6BC: ; 0x021DA6BC
ldr r0, [r2, #4]
ldr r1, [r2, #8]
ldr r2, [r2, #0x68]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x18
str r0, [sp]
mov r1, #0
@@ -6528,7 +6528,7 @@ _021DA79E:
ldr r0, [r2, #4]
ldr r1, [r2, #8]
ldr r2, [r2, #0x18]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4, #0x1c]
ldr r5, [r0, #8]
b _021DA7EC
diff --git a/arm9/modules/74/asm/module_74.s b/arm9/modules/74/asm/module_74.s
index 46afe454..bc177b23 100644
--- a/arm9/modules/74/asm/module_74.s
+++ b/arm9/modules/74/asm/module_74.s
@@ -854,7 +854,7 @@ MOD74_021D7B20: ; 0x021D7B20
str r0, [r5, #0x2c]
ldr r1, [r5]
mov r0, #0x4c
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, #0x30]
mov r6, #0
add r4, r5, #0
@@ -862,7 +862,7 @@ _021D7B4C:
add r1, r6, #0
ldr r0, [r5, #0x28]
add r1, #9
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r4, #0x4c]
add r6, r6, #1
add r4, r4, #4
@@ -870,35 +870,35 @@ _021D7B4C:
blt _021D7B4C
ldr r0, [r5, #0x28]
mov r1, #0xf
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x38]
ldr r0, [r5, #0x28]
mov r1, #0x11
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x3c]
ldr r0, [r5, #0x28]
mov r1, #0x12
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x34]
ldr r0, [r5, #0x28]
mov r1, #0x13
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x40]
ldr r0, [r5, #0x28]
mov r1, #0x14
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x44]
ldr r0, [r5, #0x28]
mov r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x48]
ldr r0, [r5, #0x28]
mov r1, #0x16
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x64]
ldr r0, [r5, #0x28]
mov r1, #0x17
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [r5, #0x68]
pop {r4, r5, r6, pc}
.align 2, 0
@@ -909,32 +909,32 @@ MOD74_021D7BB4: ; 0x021D7BB4
push {r4, r5, r6, lr}
add r6, r0, #0
ldr r0, [r6, #0x68]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x64]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x48]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x44]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x40]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x34]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x3c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x38]
- bl FUN_02021A20
+ bl String_dtor
mov r4, #0
add r5, r6, #0
_021D7BEC:
ldr r0, [r5, #0x4c]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #6
blt _021D7BEC
ldr r0, [r6, #0x30]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r6, #0x2c]
bl FUN_0200AB18
ldr r0, [r6, #0x28]
@@ -996,7 +996,7 @@ MOD74_021D7C10: ; 0x021D7C10
ldr r0, [r5, #0x2c]
ldr r1, [r5, #0x30]
ldr r2, [r5, #0x5c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [r5, #0x30]
add r2, r0, #0
@@ -1041,7 +1041,7 @@ MOD74_021D7C10: ; 0x021D7C10
ldr r0, [r5, #0x2c]
ldr r1, [r5, #0x30]
ldr r2, [r5, #0x5c]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [r5, #0x30]
add r2, r0, #0
@@ -1074,7 +1074,7 @@ MOD74_021D7D1C: ; 0x021D7D1C
ldrb r1, [r4, #0xa]
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x30]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x30]
add r2, r0, #0
@@ -1099,7 +1099,7 @@ MOD74_021D7D1C: ; 0x021D7D1C
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x30]
add r1, r1, #3
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r0, #0xc1
@@ -1116,7 +1116,7 @@ MOD74_021D7D1C: ; 0x021D7D1C
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x30]
add r1, r1, #6
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #3
str r0, [sp]
mov r1, #0
@@ -1179,7 +1179,7 @@ _021D7E04:
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x30]
mov r1, #0xc
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0xa
str r0, [sp]
mov r1, #0
@@ -1207,7 +1207,7 @@ _021D7E04:
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x60]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [r4, #0x30]
add r2, r0, #0
@@ -1284,7 +1284,7 @@ _021D7EB8:
bl MI_CpuCopy8
ldr r1, [r7]
mov r0, #8
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4]
ldrb r0, [r4, #7]
cmp r0, #0
@@ -1294,7 +1294,7 @@ _021D7EB8:
lsl r1, r1, #2
add r1, r7, r1
ldr r1, [r1, #0x64]
- bl FUN_02021A74
+ bl StringCopy
b _021D7F0C
_021D7F06:
add r1, r6, #0
@@ -1324,7 +1324,7 @@ _021D7F2E:
add r0, r5, #0
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, #0x10
cmp r4, #0x1e
@@ -1443,7 +1443,7 @@ MOD74_021D8008: ; 0x021D8008
add r1, sp, #0x10
bl FUN_0202A864
ldr r0, [r4, #0x30]
- bl FUN_02021A4C
+ bl StringSetEmpty
mov r1, #0
str r1, [sp]
mov r0, #1
@@ -1465,7 +1465,7 @@ MOD74_021D8008: ; 0x021D8008
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x38]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
ldr r1, [r4, #0x30]
add r2, r0, #0
@@ -1491,7 +1491,7 @@ MOD74_021D8008: ; 0x021D8008
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x30]
add r1, #0x10
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r4, #0x30]
add r2, r0, #0
@@ -1566,7 +1566,7 @@ _021D8108:
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x44]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #4
str r0, [sp]
mov r1, #0
@@ -1591,7 +1591,7 @@ _021D813C:
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x40]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #4
str r0, [sp]
mov r1, #0
@@ -1651,7 +1651,7 @@ MOD74_021D818C: ; 0x021D818C
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, pc}
nop
diff --git a/arm9/modules/75/asm/module_75.s b/arm9/modules/75/asm/module_75.s
index 1aa36886..ba070e07 100644
--- a/arm9/modules/75/asm/module_75.s
+++ b/arm9/modules/75/asm/module_75.s
@@ -430,7 +430,7 @@ MOD75_021E6F00: ; 0x021E6F00
mov r0, #0xfe
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x12
lsl r0, r0, #4
ldr r0, [r4, r0]
@@ -975,7 +975,7 @@ MOD75_021E737C: ; 0x021E737C
sub r1, #0x20
add r0, r1, #0
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0xfe
lsl r1, r1, #2
str r0, [r4, r1]
@@ -1045,10 +1045,10 @@ MOD75_021E7448: ; 0x021E7448
add r3, r1, #0
add r1, r2, #0
add r2, r3, #0
- ldr r3, _021E7454 ; =FUN_0200A8E0
+ ldr r3, _021E7454 ; =ReadMsgDataIntoString
bx r3
nop
-_021E7454: .word FUN_0200A8E0
+_021E7454: .word ReadMsgDataIntoString
thumb_func_end MOD75_021E7448
thumb_func_start MOD75_021E7458
@@ -1061,7 +1061,7 @@ MOD75_021E7458: ; 0x021E7458
add r1, r0, #0
add r0, r5, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
pop {r3, r4, r5, pc}
thumb_func_end MOD75_021E7458
@@ -1432,7 +1432,7 @@ MOD75_021E771C: ; 0x021E771C
_021E7728:
add r0, r7, #0
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, r6]
add r4, r4, #1
add r5, r5, #4
@@ -1450,7 +1450,7 @@ MOD75_021E773C: ; 0x021E773C
lsl r6, r6, #2
_021E7746:
ldr r0, [r5, r6]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0xa5
@@ -4671,7 +4671,7 @@ _021E8FFA:
ldr r0, [r4, r0]
ldr r2, [r4, r2]
mov r1, #0x3b
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021E9046
_021E9034:
mov r0, #0x45
@@ -4681,7 +4681,7 @@ _021E9034:
ldr r0, [r4, r0]
ldr r2, [r4, r2]
mov r1, #0x3a
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_021E9046:
add r0, r4, #0
add r0, #0x64
@@ -4721,7 +4721,7 @@ _021E908E:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x3c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
add r0, #0x64
@@ -4734,9 +4734,9 @@ _021E908E:
ldr r0, [r4, r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl MOD75_021EB660
ldr r1, _021E91AC ; =0x00000426
@@ -4879,7 +4879,7 @@ MOD75_021E91B8: ; 0x021E91B8
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x40
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #1
@@ -4895,7 +4895,7 @@ _021E9200:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x3f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #2
@@ -4928,9 +4928,9 @@ _021E923E:
ldr r0, [r4, r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
pop {r3, r4, r5, pc}
nop
@@ -4953,7 +4953,7 @@ MOD75_021E9260: ; 0x021E9260
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x3e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
pop {r3, r4, r5, pc}
_021E9286:
add r0, r5, #0
@@ -4975,7 +4975,7 @@ _021E9286:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x3d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
pop {r3, r4, r5, pc}
.align 2, 0
_021E92B8: .word 0x00000488
@@ -5420,7 +5420,7 @@ _021E9636:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x35
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, _021E9714 ; =0x00000488
ldrsh r0, [r5, r0]
@@ -5467,9 +5467,9 @@ _021E967A:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
@@ -5732,7 +5732,7 @@ _021E9872:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x2e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #0x46
mov r1, #0xfe
@@ -5741,9 +5741,9 @@ _021E9872:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E992C ; =0x00000426
@@ -5913,7 +5913,7 @@ _021E9A38:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #0x46
mov r1, #0xfe
@@ -5922,9 +5922,9 @@ _021E9A38:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E9B44 ; =0x00000426
@@ -5961,7 +5961,7 @@ _021E9A6E:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r4, r0, #0
str r1, [sp]
@@ -5984,9 +5984,9 @@ _021E9A6E:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E9B44 ; =0x00000426
@@ -5999,7 +5999,7 @@ _021E9AF4:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
mov r0, #0x46
mov r1, #0xfe
@@ -6008,9 +6008,9 @@ _021E9AF4:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E9B44 ; =0x00000426
@@ -6105,7 +6105,7 @@ _021E9BAC:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x4c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r5, r0, #0
str r1, [sp]
@@ -6128,9 +6128,9 @@ _021E9BAC:
ldr r0, [r4, r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl MOD75_021EB660
ldr r1, _021E9D58 ; =0x00000426
@@ -6200,7 +6200,7 @@ _021E9C80:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x4c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r5, r0, #0
str r1, [sp]
@@ -6223,9 +6223,9 @@ _021E9C80:
ldr r0, [r4, r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl MOD75_021EB660
ldr r1, _021E9D58 ; =0x00000426
@@ -6349,7 +6349,7 @@ _021E9DE6:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, _021E9ED8 ; =0x00000488
ldrsh r0, [r5, r0]
@@ -6399,9 +6399,9 @@ _021E9E2A:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
@@ -7630,7 +7630,7 @@ MOD75_021EA7BC: ; 0x021EA7BC
_021EA7D4:
add r0, r6, #0
add r1, r4, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
lsl r1, r4, #2
add r1, r5, r1
str r0, [r1, r7]
@@ -7656,7 +7656,7 @@ _021EA800:
lsl r0, r4, #2
add r0, r5, r0
ldr r0, [r0, r6]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
@@ -8048,7 +8048,7 @@ MOD75_021EAAE8: ; 0x021EAAE8
beq _021EAB0A
mov r0, #0x82
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
mov r2, #6
add r4, r0, #0
@@ -8059,7 +8059,7 @@ _021EAB0A:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x5e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
_021EAB18:
mov r1, #0
@@ -8075,7 +8075,7 @@ _021EAB18:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -8097,7 +8097,7 @@ MOD75_021EAB44: ; 0x021EAB44
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x62
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -8111,12 +8111,12 @@ MOD75_021EAB44: ; 0x021EAB44
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x56
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x10
str r0, [sp]
@@ -8131,12 +8131,12 @@ MOD75_021EAB44: ; 0x021EAB44
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x59
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r1, #0
str r1, [sp]
@@ -8150,12 +8150,12 @@ MOD75_021EAB44: ; 0x021EAB44
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x57
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x10
str r0, [sp]
@@ -8170,12 +8170,12 @@ MOD75_021EAB44: ; 0x021EAB44
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x58
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x20
str r0, [sp]
@@ -8190,7 +8190,7 @@ MOD75_021EAB44: ; 0x021EAB44
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x10]
mov r1, #0
bl WazaGetMaxPp
@@ -8199,7 +8199,7 @@ MOD75_021EAB44: ; 0x021EAB44
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x5a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #1
str r0, [sp]
@@ -8218,9 +8218,9 @@ MOD75_021EAB44: ; 0x021EAB44
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x10
str r0, [sp]
mov r0, #0xff
@@ -8246,14 +8246,14 @@ MOD75_021EAB44: ; 0x021EAB44
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x18
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _021EACC6
_021EACBA:
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x5b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_021EACC6:
mov r1, #0
add r6, r0, #0
@@ -8273,9 +8273,9 @@ _021EACC6:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x10
str r0, [sp]
mov r0, #0xff
@@ -8300,14 +8300,14 @@ _021EACC6:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x18
- bl FUN_0200A914
+ bl NewString_ReadMsgData
b _021EAD3C
_021EAD30:
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x5b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
_021EAD3C:
mov r1, #0
add r6, r0, #0
@@ -8327,9 +8327,9 @@ _021EAD3C:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x20
str r0, [sp]
mov r0, #0xff
@@ -8358,7 +8358,7 @@ MOD75_021EAD94: ; 0x021EAD94
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x26
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xff
lsl r1, r1, #2
str r0, [r4, r1]
@@ -8366,7 +8366,7 @@ MOD75_021EAD94: ; 0x021EAD94
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0x25
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #1
lsl r1, r1, #0xa
str r0, [r4, r1]
@@ -8381,11 +8381,11 @@ MOD75_021EADC0: ; 0x021EADC0
mov r0, #0xff
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
lsl r0, r0, #0xa
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
thumb_func_end MOD75_021EADC0
@@ -8435,7 +8435,7 @@ _021EAE18:
_021EAE2E:
mov r0, #0xa
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0
add r7, r0, #0
str r1, [sp]
@@ -8454,7 +8454,7 @@ _021EAE2E:
ldr r0, [r5, r0]
ldr r2, [r5, r2]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0
add r1, r7, #0
add r2, r0, #0
@@ -8472,7 +8472,7 @@ _021EAE2E:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -8635,7 +8635,7 @@ MOD75_021EAFB0: ; 0x021EAFB0
add r4, r1, #0
ldr r0, [r5, r0]
mov r1, #0x29
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x88
str r0, [sp]
@@ -8659,7 +8659,7 @@ MOD75_021EAFB0: ; 0x021EAFB0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
nop
@@ -8709,84 +8709,84 @@ MOD75_021EB048: ; 0x021EB048
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x49
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x10
ldr r0, [r4, r1]
mov r1, #6
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x4a
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x14
ldr r0, [r4, r1]
mov r1, #0x10
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x4b
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x5f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x13
lsl r1, r1, #4
str r0, [r4, r1]
sub r1, #0x1c
ldr r0, [r4, r1]
mov r1, #0x60
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x4d
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x20
ldr r0, [r4, r1]
mov r1, #1
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x4e
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x24
ldr r0, [r4, r1]
mov r1, #2
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x4f
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x28
ldr r0, [r4, r1]
mov r1, #0x12
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #5
lsl r1, r1, #6
str r0, [r4, r1]
sub r1, #0x2c
ldr r0, [r4, r1]
mov r1, #3
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x51
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x30
ldr r0, [r4, r1]
mov r1, #4
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x52
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x34
ldr r0, [r4, r1]
mov r1, #5
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x53
lsl r1, r1, #2
str r0, [r4, r1]
sub r1, #0x38
ldr r0, [r4, r1]
mov r1, #8
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0x15
lsl r1, r1, #4
str r0, [r4, r1]
@@ -8804,7 +8804,7 @@ _021EB11A:
lsl r0, r4, #2
add r0, r5, r0
ldr r0, [r0, r6]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
@@ -9006,11 +9006,11 @@ _021EB298:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x2a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x18]
mov r0, #0x38
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
add r0, r5, #0
add r0, #0xc4
@@ -9033,7 +9033,7 @@ _021EB298:
ldr r0, [r5, r0]
ldr r2, [sp, #0x18]
add r1, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -9044,9 +9044,9 @@ _021EB298:
str r3, [sp, #8]
bl FUN_0201BD84
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, r6
bl FUN_02019220
_021EB31E:
@@ -9149,11 +9149,11 @@ MOD75_021EB3D8: ; 0x021EB3D8
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x2d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x82
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021EB44C ; =0x0000047B
add r4, r0, #0
ldrb r1, [r5, r1]
@@ -9166,7 +9166,7 @@ MOD75_021EB3D8: ; 0x021EB3D8
ldr r0, [r5, r0]
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -9183,9 +9183,9 @@ MOD75_021EB3D8: ; 0x021EB3D8
add r0, r5, #0
bl FUN_02019220
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -9219,11 +9219,11 @@ MOD75_021EB454: ; 0x021EB454
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x34
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #0x38
mov r1, #6
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r5, #0
add r0, #0xc4
@@ -9246,7 +9246,7 @@ MOD75_021EB454: ; 0x021EB454
ldr r0, [r5, r0]
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -9261,9 +9261,9 @@ MOD75_021EB454: ; 0x021EB454
add r0, r5, #0
bl FUN_02019220
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
nop
@@ -9285,7 +9285,7 @@ MOD75_021EB504: ; 0x021EB504
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x54
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #2
str r0, [sp]
@@ -9306,7 +9306,7 @@ MOD75_021EB504: ; 0x021EB504
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #8
str r0, [sp]
mov r0, #0xff
@@ -9322,7 +9322,7 @@ MOD75_021EB504: ; 0x021EB504
add r0, r4, #0
bl FUN_02019220
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
nop
@@ -9370,7 +9370,7 @@ MOD75_021EB5B0: ; 0x021EB5B0
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x36
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r5, #0
add r0, #0xc4
@@ -9420,9 +9420,9 @@ _021EB616:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021EB65C ; =0x00000426
@@ -9548,7 +9548,7 @@ _021EB722:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x50
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r3, #2
add r6, r0, #0
str r3, [sp]
@@ -9568,7 +9568,7 @@ _021EB722:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #8
str r0, [sp]
mov r0, #0xff
@@ -9582,12 +9582,12 @@ _021EB722:
add r3, r1, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x51
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r0, #1
str r0, [sp]
@@ -9610,7 +9610,7 @@ _021EB722:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0xfe
lsl r1, r1, #2
mov r0, #0
@@ -9634,7 +9634,7 @@ _021EB722:
add r0, r4, #0
bl FUN_02019220
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
.align 2, 0
@@ -9664,7 +9664,7 @@ MOD75_021EB808: ; 0x021EB808
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -9676,7 +9676,7 @@ MOD75_021EB808: ; 0x021EB808
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
b _021EB866
_021EB854:
mov r0, #0x50
@@ -9692,7 +9692,7 @@ _021EB866:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x4f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, #0
add r0, #0xcc
@@ -9715,7 +9715,7 @@ _021EB866:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0xfe
lsl r1, r1, #2
mov r0, #0
@@ -9739,7 +9739,7 @@ _021EB866:
add r0, r4, #0
bl FUN_02019220
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
nop
@@ -9765,7 +9765,7 @@ MOD75_021EB8E8: ; 0x021EB8E8
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x6c
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0
add r6, r0, #0
str r1, [sp]
@@ -9777,12 +9777,12 @@ MOD75_021EB8E8: ; 0x021EB8E8
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0x6d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, #0
add r0, #0xc4
@@ -9807,9 +9807,9 @@ MOD75_021EB8E8: ; 0x021EB8E8
ldr r0, [r5, r0]
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #0xfe
lsl r1, r1, #2
mov r0, #0
diff --git a/arm9/modules/76/asm/module_76.s b/arm9/modules/76/asm/module_76.s
index 7ebae410..9bf83338 100644
--- a/arm9/modules/76/asm/module_76.s
+++ b/arm9/modules/76/asm/module_76.s
@@ -526,7 +526,7 @@ MOD76_021D7900: ; 0x021D7900
mov r0, #1
lsl r0, r0, #8
mov r1, #0x43
- bl FUN_020219F4
+ bl String_ctor
mov r1, #1
lsl r1, r1, #8
str r0, [r4, r1]
@@ -549,7 +549,7 @@ MOD76_021D7938: ; 0x021D7938
mov r0, #1
lsl r0, r0, #8
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
thumb_func_end MOD76_021D7938
@@ -1077,7 +1077,7 @@ MOD76_021D7D60: ; 0x021D7D60
ldr r0, [r0]
add r6, r2, #0
add r7, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, sp, #0x10
ldrb r0, [r0, #0x10]
@@ -1098,9 +1098,9 @@ MOD76_021D7D60: ; 0x021D7D60
ldr r0, [r0]
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -1117,7 +1117,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe6
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #2
mov r1, #0
str r0, [sp]
@@ -1132,7 +1132,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe4
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #2
str r0, [sp]
ldr r3, _021D7E9C ; =0x000F0E00
@@ -1147,7 +1147,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xea
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0
ldr r3, _021D7E9C ; =0x000F0E00
add r0, r4, #0
@@ -1161,7 +1161,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe9
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0
ldr r3, _021D7E9C ; =0x000F0E00
add r0, r4, #0
@@ -1175,7 +1175,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe8
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0
ldr r3, _021D7E9C ; =0x000F0E00
add r0, r4, #0
@@ -1189,7 +1189,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe7
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0
ldr r3, _021D7EA0 ; =0x00010200
add r0, r4, #0
@@ -1203,7 +1203,7 @@ MOD76_021D7DAC: ; 0x021D7DAC
add r2, #0xe5
ldr r0, [r0]
ldr r2, [r4, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #2
str r0, [sp]
ldr r3, _021D7E9C ; =0x000F0E00
@@ -1455,7 +1455,7 @@ _021D8050:
add r2, #0xdf
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D8080
_021D8072:
mov r0, #1
@@ -1484,7 +1484,7 @@ _021D8080:
add r2, #0xdf
ldr r0, [r0]
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
b _021D80BE
_021D80B0:
mov r0, #1
@@ -1529,7 +1529,7 @@ _021D80BE:
ldr r2, [r5, r2]
add r1, r4, #0
add r6, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r2, #0
ldr r3, _021D81A4 ; =0x00010200
add r0, r5, #0
@@ -1621,7 +1621,7 @@ MOD76_021D81AC: ; 0x021D81AC
ldr r2, [r5, r2]
add r1, r6, #0
add r7, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0
str r1, [sp]
mov r2, #0xff
@@ -1991,7 +1991,7 @@ _021D84D8:
add r1, r1, r3
ldr r0, [r0]
ldr r1, [r2, r1]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r5, r0, #0
add r0, r4, #0
mov r1, #1
@@ -2000,9 +2000,9 @@ _021D84D8:
ldr r0, [r0]
ldr r1, [r4, r1]
add r2, r5, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
pop {r3, r4, r5, pc}
.align 2, 0
_021D8510: .word 0x021D8F6C
diff --git a/arm9/modules/77/asm/module_77.s b/arm9/modules/77/asm/module_77.s
index 71771dfb..0347430f 100644
--- a/arm9/modules/77/asm/module_77.s
+++ b/arm9/modules/77/asm/module_77.s
@@ -1514,7 +1514,7 @@ MOD77_021D7FAC: ; 0x021D7FAC
bl FUN_02017FE4
ldr r1, [r5]
mov r0, #0x10
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r1, [r5]
mov r0, #2
@@ -1570,7 +1570,7 @@ MOD77_021D7FAC: ; 0x021D7FAC
mov r1, #0xc
ldr r0, [r5, r0]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #2
add r1, r4, #0
mov r2, #0
@@ -1588,7 +1588,7 @@ MOD77_021D7FAC: ; 0x021D7FAC
add r2, r4, #0
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #2
bl FUN_02002CF8
add sp, #0x18
@@ -1675,7 +1675,7 @@ _021D82B0:
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
ldr r2, _021D834C ; =0x0000C06C
add r1, r6, #0
str r0, [r5, r2]
@@ -1683,7 +1683,7 @@ _021D82B0:
sub r0, #0xc
ldr r0, [r5, r0]
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #8]
bl FUN_02024FF4
add r3, r4, #0
@@ -1712,7 +1712,7 @@ _021D830A:
bne _021D8340
ldr r0, _021D834C ; =0x0000C06C
ldr r0, [r5, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8348 ; =0x0000C064
mov r1, #2
str r1, [r5, r0]
@@ -1956,12 +1956,12 @@ MOD77_021D8510: ; 0x021D8510
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021D85C4 ; =0x0000C010
add r6, r0, #0
ldr r0, [r5, r1]
@@ -2003,12 +2003,12 @@ MOD77_021D8510: ; 0x021D8510
mov r1, #0xd
ldr r0, [r5, r0]
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _021D85D4 ; =0x0000C070
add r1, r4, #0
ldr r0, [r5, r0]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r1, #0
ldr r0, _021D85CC ; =0x0000C044
str r1, [sp]
@@ -2019,9 +2019,9 @@ MOD77_021D8510: ; 0x021D8510
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D85CC ; =0x0000C044
add r0, r5, r0
bl FUN_020191D0
@@ -2046,11 +2046,11 @@ MOD77_021D85E0: ; 0x021D85E0
ldr r1, [r5]
mov r0, #0x40
add r4, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r1, [r5]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _021D8688 ; =0x0000C010
add r6, r0, #0
ldr r0, [r5, r1]
@@ -2105,9 +2105,9 @@ _021D865C:
str r1, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _021D8690 ; =0x0000C044
add r0, r5, r0
bl FUN_020191D0
@@ -2148,7 +2148,7 @@ MOD77_021D86B4: ; 0x021D86B4
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0xd8
str r0, [sp]
@@ -2164,7 +2164,7 @@ MOD77_021D86B4: ; 0x021D86B4
mov r1, #0xe
ldr r0, [r5, r0]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
ldr r0, _021D880C ; =0x0000C014
str r3, [sp]
@@ -2175,7 +2175,7 @@ MOD77_021D86B4: ; 0x021D86B4
str r3, [sp, #8]
bl FUN_0201BD84
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
_021D870E:
@@ -2230,11 +2230,11 @@ _021D8748:
beq _021D87EC
ldr r1, [r5]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
add r7, r0, #0
ldr r1, [r5]
mov r0, #0x40
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
mov r0, #0xd8
str r0, [sp]
@@ -2280,9 +2280,9 @@ _021D87C8:
mov r3, #0
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r1, #1
_021D87EC:
ldr r0, [sp, #0x1c]
@@ -3165,7 +3165,7 @@ MOD77_021D8E9C: ; 0x021D8E9C
str r0, [sp, #8]
add r1, r5, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [sp, #8]
bl DestroyMsgData
cmp r4, #0
@@ -3187,7 +3187,7 @@ _021D8EDC:
ldr r1, [sp]
ldr r2, [sp, #4]
add r4, r0, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
add r0, r4, #0
bl DestroyMsgData
add r0, r5, #0
diff --git a/arm9/modules/80/asm/module_80.s b/arm9/modules/80/asm/module_80.s
index 1af82a16..088090b7 100644
--- a/arm9/modules/80/asm/module_80.s
+++ b/arm9/modules/80/asm/module_80.s
@@ -3087,13 +3087,13 @@ MOD80_0222EDE0: ; 0x0222EDE0
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222EE04 ; =0x00000B4C
str r0, [r4, r1]
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x27
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -3108,11 +3108,11 @@ MOD80_0222EE08: ; 0x0222EE08
add r4, r0, #0
ldr r0, _0222EE20 ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
_0222EE20: .word 0x00000B4C
@@ -3674,7 +3674,7 @@ MOD80_0222F250: ; 0x0222F250
ldr r0, [r5, r2]
add r2, #0x18
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0222F2A0 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -3716,7 +3716,7 @@ MOD80_0222F2A8: ; 0x0222F2A8
ldr r0, [r5, r2]
add r2, #0x18
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _0222F2F8 ; =0x00000FB8
mov r1, #0xf
add r0, r5, r0
@@ -3756,7 +3756,7 @@ MOD80_0222F300: ; 0x0222F300
add r0, r1, #0
add r4, r3, #0
add r1, r2, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
lsl r1, r4, #0x18
add r6, r0, #0
add r0, r5, #0
@@ -3771,7 +3771,7 @@ MOD80_0222F300: ; 0x0222F300
str r3, [sp, #8]
bl FUN_0201BD84
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
thumb_func_end MOD80_0222F300
@@ -4355,13 +4355,13 @@ MOD80_0222F7F0: ; 0x0222F7F0
add r5, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222F82C ; =0x00000B4C
str r0, [r5, r1]
sub r1, #0x18
ldr r0, [r5, r1]
mov r1, #0x27
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r5, r1]
@@ -4371,7 +4371,7 @@ MOD80_0222F7F0: ; 0x0222F7F0
_0222F816:
add r0, r7, #0
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
str r0, [r5, r6]
add r4, r4, #1
add r5, r5, #4
@@ -4391,18 +4391,18 @@ MOD80_0222F830: ; 0x0222F830
add r5, r7, #0
_0222F83A:
ldr r0, [r5, r6]
- bl FUN_02021A20
+ bl String_dtor
add r4, r4, #1
add r5, r5, #4
cmp r4, #0xa
blt _0222F83A
ldr r0, _0222F860 ; =0x00000B4C
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r7, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
_0222F85C: .word 0x00000B54
@@ -4793,7 +4793,7 @@ MOD80_0222FB3C: ; 0x0222FB3C
ldr r0, _0222FBB4 ; =0x00000B34
add r1, r6, #0
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb3
add r6, r0, #0
lsl r1, r1, #4
@@ -4801,7 +4801,7 @@ MOD80_0222FB3C: ; 0x0222FB3C
add r1, #0x1c
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _0222FBB8 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -4826,7 +4826,7 @@ MOD80_0222FB3C: ; 0x0222FB3C
lsl r1, r1, #6
str r0, [r5, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
.align 2, 0
@@ -4846,11 +4846,11 @@ MOD80_0222FBC0: ; 0x0222FBC0
add r7, r2, #0
add r6, r3, #0
ldr r4, [sp, #0x4c]
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x1c]
mov r0, #0x12
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x18]
ldr r0, [sp, #0x48]
ldr r2, [sp, #0x1c]
@@ -4870,7 +4870,7 @@ MOD80_0222FBC0: ; 0x0222FBC0
str r0, [sp, #0x30]
add r0, r5, #0
mov r1, #0x46
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
ldr r0, [sp, #0x14]
ldr r2, _0222FD1C ; =0x022373C0
@@ -4879,7 +4879,7 @@ MOD80_0222FBC0: ; 0x0222FBC0
ldr r1, [sp, #0xc]
add r0, r5, #0
ldr r1, [r2, r1]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x28]
mov r0, #0
str r0, [sp]
@@ -4894,11 +4894,11 @@ MOD80_0222FBC0: ; 0x0222FBC0
add r1, r5, #0
mov r2, #0x66
mov r3, #0x3e
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x24]
ldr r0, [sp, #8]
ldr r1, [sp, #0x10]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, [sp, #0x30]
str r0, [sp, #0x2c]
lsl r1, r1, #0x10
@@ -4977,17 +4977,17 @@ _0222FCA2:
add r3, r2, #0
bl MOD80_02236D50
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x24]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x28]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x2c]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x34
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -5005,11 +5005,11 @@ MOD80_0222FD28: ; 0x0222FD28
mov r0, #0x10
mov r1, #0x3e
add r7, r2, #0
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
add r0, r6, #0
mov r1, #0x30
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r0, r4, #0
add r1, r7, #0
@@ -5032,9 +5032,9 @@ MOD80_0222FD28: ; 0x0222FD28
add r3, r2, #0
bl MOD80_02236D50
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -5619,7 +5619,7 @@ MOD80_0223022C: ; 0x0223022C
add r4, r2, r1
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _022302B0 ; =0x00000B4C
str r0, [r5, r1]
sub r1, #0x1c
@@ -5654,7 +5654,7 @@ _02230280:
ldr r1, [r5, r1]
mov r2, #0x4f
mov r3, #0x3e
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
ldr r1, _022302BC ; =0x00000B54
mov r2, #0x50
str r0, [r5, r1]
@@ -5664,7 +5664,7 @@ _02230280:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
mov r3, #0x3e
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
ldr r1, _022302C0 ; =0x00000B58
str r0, [r5, r1]
pop {r3, r4, r5, pc}
@@ -5682,13 +5682,13 @@ MOD80_022302C4: ; 0x022302C4
add r4, r0, #0
ldr r0, _022302E4 ; =0x00000B54
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022302E8 ; =0x00000B58
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022302EC ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
nop
_022302E4: .word 0x00000B54
@@ -5979,7 +5979,7 @@ MOD80_022304F8: ; 0x022304F8
ldr r0, [r5, r2]
add r2, #0x18
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _02230548 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -6018,11 +6018,11 @@ MOD80_02230550: ; 0x02230550
add r5, r1, #0
add r6, r0, #0
mov r1, #0x4a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r0, r6, #0
mov r1, #0x4e
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r2, #0
ldr r0, _022305A4 ; =0x000F0200
@@ -6043,9 +6043,9 @@ MOD80_02230550: ; 0x02230550
mov r3, #2
bl MOD80_02236D50
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r4, r5, r6, pc}
nop
@@ -6675,13 +6675,13 @@ MOD80_02230AC0: ; 0x02230AC0
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02230B28 ; =0x00000B4C
str r0, [r4, r1]
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x29
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -6740,11 +6740,11 @@ MOD80_02230B2C: ; 0x02230B2C
bl FreeToHeap
ldr r0, _02230B68 ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
nop
_02230B68: .word 0x00000B4C
@@ -8373,7 +8373,7 @@ MOD80_0223187C: ; 0x0223187C
ldr r0, [r5, r2]
add r2, #0x18
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, _022318CC ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -8413,7 +8413,7 @@ MOD80_022318D4: ; 0x022318D4
add r5, r0, #0
add r0, r4, #0
mov r1, #0x3b
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r2, #0
ldr r0, _022319B8 ; =0x000F0200
@@ -8424,10 +8424,10 @@ MOD80_022318D4: ; 0x022318D4
add r3, r2, #0
bl MOD80_02236D50
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
mov r1, #0x3d
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r2, #0
ldr r0, _022319B8 ; =0x000F0200
@@ -8439,10 +8439,10 @@ MOD80_022318D4: ; 0x022318D4
add r3, r2, #0
bl MOD80_02236D50
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
mov r1, #0x3f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
mov r2, #0
ldr r0, _022319B8 ; =0x000F0200
@@ -8454,10 +8454,10 @@ MOD80_022318D4: ; 0x022318D4
add r3, r2, #0
bl MOD80_02236D50
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
mov r1, #0x41
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
add r3, r5, #0
add r3, #0x67
@@ -8477,10 +8477,10 @@ MOD80_022318D4: ; 0x022318D4
add r1, r6, #0
bl MOD80_02236D50
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
mov r1, #0x42
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
add r3, r5, #0
add r3, #0x77
@@ -8500,7 +8500,7 @@ MOD80_022318D4: ; 0x022318D4
add r1, r4, #0
bl MOD80_02236D50
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #8
pop {r4, r5, r6, pc}
nop
@@ -9293,12 +9293,12 @@ MOD80_0223205C: ; 0x0223205C
add r4, r0, #0
mov r0, #0x12
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _022320D4 ; =0x00000B44
str r0, [r4, r1]
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _022320D8 ; =0x00000B4C
str r0, [r4, r1]
ldr r0, [r4, #0x24]
@@ -9307,7 +9307,7 @@ MOD80_0223205C: ; 0x0223205C
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x15
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -9318,7 +9318,7 @@ _02232090:
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x11
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -9326,7 +9326,7 @@ _022320A4:
ldr r0, _022320DC ; =0x00000B34
mov r1, #0x67
ldr r0, [r4, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _022320E0 ; =0x00000B48
str r0, [r4, r1]
add r0, r4, #0
@@ -9362,17 +9362,17 @@ MOD80_022320E8: ; 0x022320E8
bl FreeToHeap
ldr r0, _0223211C ; =0x00000B44
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02232120 ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02232124 ; =0x00000B48
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
_02232118: .word 0x00001004
@@ -10659,7 +10659,7 @@ MOD80_02232B34: ; 0x02232B34
ldr r0, _02232B9C ; =0x00000B34
add r6, r2, #0
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb3
add r7, r0, #0
lsl r1, r1, #4
@@ -10667,7 +10667,7 @@ MOD80_02232B34: ; 0x02232B34
add r1, #0x1c
ldr r1, [r5, r1]
add r2, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [sp, #0x24]
cmp r0, #0
bne _02232B60
@@ -10698,7 +10698,7 @@ _02232B62:
lsl r1, r1, #6
str r0, [r5, r1]
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -11139,7 +11139,7 @@ _02232F14:
ldr r0, [r5, r2]
add r2, #0x10
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_02232F22:
ldr r0, [sp, #0x1c]
bl NARC_dtor
@@ -11645,7 +11645,7 @@ MOD80_022332EC: ; 0x022332EC
ldr r0, _0223334C ; =0x00000B34
add r4, r2, #0
ldr r0, [r5, r0]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb3
add r6, r0, #0
lsl r1, r1, #4
@@ -11653,7 +11653,7 @@ MOD80_022332EC: ; 0x022332EC
add r1, #0x1c
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02233350 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -11678,7 +11678,7 @@ MOD80_022332EC: ; 0x022332EC
lsl r1, r1, #6
str r0, [r5, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
.align 2, 0
@@ -12022,13 +12022,13 @@ MOD80_02233618: ; 0x02233618
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02233680 ; =0x00000B4C
str r0, [r4, r1]
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0x5a
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -12087,11 +12087,11 @@ MOD80_02233684: ; 0x02233684
bl FreeToHeap
ldr r0, _022336C0 ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
nop
_022336C0: .word 0x00000B4C
@@ -13071,7 +13071,7 @@ MOD80_02233EA4: ; 0x02233EA4
beq _02233ED2
add r0, r1, #0
add r1, r2, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x1c]
str r5, [sp]
@@ -13082,7 +13082,7 @@ MOD80_02233EA4: ; 0x02233EA4
mov r2, #0
bl MOD80_02236D50
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_02233ED2:
add sp, #8
pop {r4, r5, r6, pc}
@@ -13123,7 +13123,7 @@ _02233F04:
ldr r1, _02233F58 ; =0x022373C0
lsl r2, r5, #2
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x1c]
cmp r0, #3
@@ -13154,7 +13154,7 @@ _02233F34:
bl MOD80_02236D50
_02233F4E:
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_02233F54:
add sp, #8
pop {r4, r5, r6, pc}
@@ -13176,7 +13176,7 @@ MOD80_02233F5C: ; 0x02233F5C
ldr r1, _02233F98 ; =0x02237494
lsl r2, r2, #3
ldr r1, [r1, r2]
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r4, r0, #0
ldr r0, [sp, #0x1c]
str r5, [sp]
@@ -13187,7 +13187,7 @@ MOD80_02233F5C: ; 0x02233F5C
add r1, r4, #0
bl MOD80_02236D50
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
_02233F92:
add sp, #8
pop {r4, r5, r6, pc}
@@ -13218,7 +13218,7 @@ MOD80_02233FB4: ; 0x02233FB4
mov r1, #0x61
str r0, [sp, #0xc]
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
mov r2, #0
ldr r0, _02234044 ; =0x000F0200
@@ -13275,7 +13275,7 @@ _02234022:
mov r3, #2
bl MOD80_02233F9C
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -13290,7 +13290,7 @@ MOD80_02234048: ; 0x02234048
mov r1, #0x61
str r0, [sp, #0xc]
add r6, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x14]
mov r2, #0
ldr r0, _022340D8 ; =0x000F0200
@@ -13347,7 +13347,7 @@ _022340B6:
mov r3, #2
bl MOD80_02233F9C
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -13365,11 +13365,11 @@ MOD80_022340DC: ; 0x022340DC
str r2, [sp, #8]
str r3, [sp, #0xc]
ldr r7, [sp, #0x38]
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x18]
mov r0, #0xb
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
str r0, [sp, #0x14]
ldr r0, [sp, #0xc]
ldr r2, [sp, #0x18]
@@ -13385,7 +13385,7 @@ MOD80_022340DC: ; 0x022340DC
str r0, [sp, #0x10]
add r0, r4, #0
mov r1, #0x64
- bl FUN_0200A914
+ bl NewString_ReadMsgData
str r0, [sp, #0x20]
mov r0, #0
str r0, [sp]
@@ -13400,7 +13400,7 @@ MOD80_022340DC: ; 0x022340DC
add r1, r4, #0
mov r2, #0x66
mov r3, #0x3e
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x1c]
cmp r6, #3
beq _0223415A
@@ -13409,7 +13409,7 @@ MOD80_022340DC: ; 0x022340DC
ldr r1, [r1, r2]
ldr r2, [sp, #0x14]
add r0, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
_0223415A:
ldr r5, [sp, #8]
mov r4, #0
@@ -13473,13 +13473,13 @@ _022341CA:
strb r6, [r7, #2]
strb r0, [r7, #3]
ldr r0, [sp, #0x1c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x24
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -13593,7 +13593,7 @@ _022342BC:
lsl r0, r0, #2
add r0, r5, r0
mov r2, #8
- bl StringCopyN
+ bl CopyU16StringArrayN
ldr r0, [r4]
ldr r0, [r0, #0x1c]
bl FUN_020239C0
@@ -14473,7 +14473,7 @@ MOD80_022349A4: ; 0x022349A4
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _022349B8 ; =0x00000B4C
str r0, [r4, r1]
pop {r4, pc}
@@ -14484,12 +14484,12 @@ _022349B8: .word 0x00000B4C
thumb_func_start MOD80_022349BC
MOD80_022349BC: ; 0x022349BC
ldr r1, _022349C4 ; =0x00000B4C
- ldr r3, _022349C8 ; =FUN_02021A20
+ ldr r3, _022349C8 ; =String_dtor
ldr r0, [r0, r1]
bx r3
.align 2, 0
_022349C4: .word 0x00000B4C
-_022349C8: .word FUN_02021A20
+_022349C8: .word String_dtor
thumb_func_end MOD80_022349BC
thumb_func_start MOD80_022349CC
@@ -18216,19 +18216,19 @@ MOD80_02236664: ; 0x02236664
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02236694 ; =0x00000B4C
str r0, [r4, r1]
mov r0, #1
lsl r0, r0, #8
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02236698 ; =0x00000B7C
str r0, [r4, r1]
sub r1, #0x48
ldr r0, [r4, r1]
mov r1, #0x1f
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb5
lsl r1, r1, #4
str r0, [r4, r1]
@@ -18245,13 +18245,13 @@ MOD80_0223669C: ; 0x0223669C
mov r0, #0xb5
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022366BC ; =0x00000B7C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _022366C0 ; =0x00000B4C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
_022366BC: .word 0x00000B7C
@@ -19037,7 +19037,7 @@ MOD80_02236C70: ; 0x02236C70
add r0, r1, #0
add r1, r2, #0
add r4, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
mov r1, #0xb3
add r6, r0, #0
lsl r1, r1, #4
@@ -19045,9 +19045,9 @@ MOD80_02236C70: ; 0x02236C70
add r1, #0x1c
ldr r1, [r5, r1]
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02236CD8 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
@@ -19188,21 +19188,21 @@ MOD80_02236D8C: ; 0x02236D8C
add r6, r1, #0
lsl r0, r0, #8
mov r1, #0x3e
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #0x2d
lsl r0, r0, #6
ldr r0, [r5, r0]
add r1, r6, #0
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r1, #0xb3
lsl r1, r1, #4
ldr r0, [r5, r1]
add r1, #0x4c
ldr r1, [r5, r1]
add r2, r4, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, _02236DFC ; =0x00000EC8
mov r1, #0xf
add r0, r5, r0
@@ -19227,7 +19227,7 @@ MOD80_02236D8C: ; 0x02236D8C
lsl r1, r1, #6
str r0, [r5, r1]
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
.align 2, 0
diff --git a/arm9/modules/81/asm/module_81.s b/arm9/modules/81/asm/module_81.s
index e6f22ba3..fc632752 100644
--- a/arm9/modules/81/asm/module_81.s
+++ b/arm9/modules/81/asm/module_81.s
@@ -46,7 +46,7 @@ _02237E84:
mov r0, #0x19
lsl r0, r0, #4
mov r1, #0x39
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x14]
ldr r2, _02237FD4 ; =0x00000137
mov r0, #0
@@ -228,7 +228,7 @@ MOD81_02238004: ; 0x02238004
ldr r0, [r4, #0x10]
bl DestroyMsgData
ldr r0, [r4, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #8]
bl FreeToHeap
ldr r0, [r4, #0x18]
@@ -2026,12 +2026,12 @@ MOD81_02238D18: ; 0x02238D18
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0x3a
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x54]
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0x3a
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x58]
mov r0, #0
str r0, [r4, #0x64]
@@ -2052,9 +2052,9 @@ MOD81_02238D64: ; 0x02238D64
add r0, r4, #0
bl MOD81_02239498
ldr r0, [r4, #0x54]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x58]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x5c]
bl MOD81_0223890C
ldr r0, [r4, #0x40]
@@ -2463,11 +2463,11 @@ _022390F0:
_022390F4:
ldr r0, [sp, #0xc]
ldr r2, [r4, #0x54]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0x58]
ldr r2, [r4, #0x54]
add r0, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -2505,11 +2505,11 @@ _02239138:
ldr r2, [r4, #0x54]
add r0, r6, #0
mov r1, #1
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0x58]
ldr r2, [r4, #0x54]
add r0, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
ldr r0, [r4]
bl MOD81_02238818
mov r1, #0x4c
@@ -9081,12 +9081,12 @@ MOD81_0223C530: ; 0x0223C530
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0x3a
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x58]
mov r0, #0x4b
lsl r0, r0, #2
mov r1, #0x3a
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x5c]
mov r0, #0
str r0, [r4, #0x68]
@@ -9109,9 +9109,9 @@ MOD81_0223C580: ; 0x0223C580
ldr r0, [r4, #0x6c]
bl MOD81_0223CDE0
ldr r0, [r4, #0x58]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x5c]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x60]
cmp r0, #0
beq _0223C5AC
@@ -9587,11 +9587,11 @@ _0223C97E:
_0223C982:
ldr r0, [sp, #0xc]
ldr r2, [r4, #0x58]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0x5c]
ldr r2, [r4, #0x58]
add r0, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -9632,11 +9632,11 @@ _0223C9D0:
ldr r2, [r4, #0x58]
add r0, r6, #0
mov r1, #3
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r4, #0x5c]
ldr r2, [r4, #0x58]
add r0, r7, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
add r0, r4, #0
add r0, #0x48
mov r1, #0xf
diff --git a/arm9/modules/82/asm/module_82.s b/arm9/modules/82/asm/module_82.s
index c1a907de..7d44f80c 100644
--- a/arm9/modules/82/asm/module_82.s
+++ b/arm9/modules/82/asm/module_82.s
@@ -1883,30 +1883,30 @@ MOD82_0222E4AC: ; 0x0222E4AC
add r4, r0, #0
mov r0, #0xb4
mov r1, #0x44
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222E4F4 ; =0x00000B88
str r0, [r4, r1]
mov r0, #4
mov r1, #0x44
- bl FUN_020219F4
+ bl String_ctor
mov r1, #0xb9
lsl r1, r1, #4
str r0, [r4, r1]
mov r0, #3
mov r1, #0x44
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222E4F8 ; =0x00000B94
str r0, [r4, r1]
sub r1, #0x18
ldr r0, [r4, r1]
mov r1, #0xa
- bl FUN_0200A914
+ bl NewString_ReadMsgData
ldr r1, _0222E4FC ; =0x00000B8C
str r0, [r4, r1]
mov r0, #1
lsl r0, r0, #8
mov r1, #0x44
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _0222E500 ; =0x00000B98
str r0, [r4, r1]
pop {r4, pc}
@@ -1923,20 +1923,20 @@ MOD82_0222E504: ; 0x0222E504
add r4, r0, #0
ldr r0, _0222E534 ; =0x00000B98
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222E538 ; =0x00000B8C
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222E53C ; =0x00000B94
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xb9
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _0222E540 ; =0x00000B88
ldr r0, [r4, r0]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, pc}
.align 2, 0
_0222E534: .word 0x00000B98
@@ -4025,14 +4025,14 @@ MOD82_0222F4D8: ; 0x0222F4D8
add r0, r1, #0
add r1, r2, #0
add r4, r3, #0
- bl FUN_0200A914
+ bl NewString_ReadMsgData
add r6, r0, #0
ldr r1, _0222F53C ; =0x00000B78
add r2, r6, #0
ldr r0, [r5, r1]
add r1, #0x10
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x36
lsl r0, r0, #6
add r0, r5, r0
@@ -4059,7 +4059,7 @@ MOD82_0222F4D8: ; 0x0222F4D8
ldr r1, _0222F544 ; =0x00000B9C
str r0, [r5, r1]
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
nop
@@ -4127,7 +4127,7 @@ MOD82_0222F59C: ; 0x0222F59C
ldr r2, _0222F5EC ; =0x00000B88
add r4, r3, #0
ldr r2, [r5, r2]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x36
lsl r0, r0, #6
add r0, r5, r0
@@ -4358,19 +4358,19 @@ MOD82_0222F740: ; 0x0222F740
add r6, r1, #0
lsl r0, r0, #8
mov r1, #0x44
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
ldr r0, _0222F7B0 ; =0x00000B84
add r1, r6, #0
ldr r0, [r5, r0]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, _0222F7B4 ; =0x00000B78
add r2, r4, #0
ldr r0, [r5, r1]
add r1, #0x20
ldr r1, [r5, r1]
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x37
lsl r0, r0, #6
add r0, r5, r0
@@ -4397,7 +4397,7 @@ MOD82_0222F740: ; 0x0222F740
ldr r1, _0222F7BC ; =0x00000B9C
str r0, [r5, r1]
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0xc
pop {r3, r4, r5, r6, pc}
.align 2, 0
diff --git a/arm9/modules/83/asm/module_83.s b/arm9/modules/83/asm/module_83.s
index 2aa02a59..cf34dfb1 100644
--- a/arm9/modules/83/asm/module_83.s
+++ b/arm9/modules/83/asm/module_83.s
@@ -896,7 +896,7 @@ MOD83_0222DCA0: ; 0x0222DCA0
add r7, r3, #0
ldr r2, [sp, #0x28]
mov r3, #0x51
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r5, r0, #0
mov r0, #0
mov r1, #2
@@ -922,7 +922,7 @@ MOD83_0222DCA0: ; 0x0222DCA0
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r5, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end MOD83_0222DCA0
@@ -1013,7 +1013,7 @@ _0222DD88:
ldr r1, [sp, #0x24]
ldr r2, [r4]
mov r3, #0x51
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0
str r5, [sp]
mov r0, #0xff
@@ -1029,7 +1029,7 @@ _0222DD88:
mov r3, #0x20
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
_0222DDB8:
add r6, r6, #1
add r4, r4, #4
@@ -3355,7 +3355,7 @@ MOD83_0222F074: ; 0x0222F074
add r1, r6, #0
mov r2, #0x4c
str r0, [sp]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
mov r1, #0x41
lsl r1, r1, #2
add r7, r0, #0
@@ -3363,7 +3363,7 @@ MOD83_0222F074: ; 0x0222F074
mov r2, #0x24
bl FUN_02021EF0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xc
bl MOD83_02238EF4
add r7, r0, #0
@@ -3412,7 +3412,7 @@ MOD83_0222F074: ; 0x0222F074
ldr r3, [r5]
add r1, r6, #0
mov r2, #0x4b
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0
mov r1, #0x55
lsl r1, r1, #2
@@ -3420,7 +3420,7 @@ MOD83_0222F074: ; 0x0222F074
mov r2, #0xfa
bl FUN_02021EF0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0xd2
lsl r0, r0, #2
mov r1, #0
@@ -6000,7 +6000,7 @@ MOD83_0223050C: ; 0x0223050C
ldr r1, [r4, #0x10]
add r2, r7, #0
mov r3, #0x56
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r6, r0, #0
_02230554:
mov r3, #0
@@ -6019,7 +6019,7 @@ _02230554:
cmp r0, #0
bne _0223057A
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_0223057A:
add r0, r5, #0
mov r1, #0
@@ -6048,7 +6048,7 @@ MOD83_022305A4: ; 0x022305A4
bl FUN_02006278
mov r0, #0x25
mov r1, #0x56
- bl FUN_020219F4
+ bl String_ctor
add r1, r6, #0
mov r2, #0x24
add r4, r0, #0
@@ -6076,7 +6076,7 @@ MOD83_022305A4: ; 0x022305A4
mov r3, #3
bl FUN_0200CCA4
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -6430,7 +6430,7 @@ MOD83_0223089C: ; 0x0223089C
add r2, r5, #0
mov r3, #0x56
str r0, [sp, #8]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [r4, #0x14]
mov r0, #1
str r0, [r4, #0x68]
@@ -6453,7 +6453,7 @@ _022308F8:
cmp r0, #0
bne _02230918
ldr r0, [r4, #0x14]
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
str r0, [r4, #0x14]
str r0, [r4, #0x68]
@@ -8242,7 +8242,7 @@ MOD83_022317A8: ; 0x022317A8
add r1, r4, #0
add r2, r7, #0
mov r3, #0x57
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0
mov r3, #0
str r3, [sp]
@@ -8258,7 +8258,7 @@ MOD83_022317A8: ; 0x022317A8
add r0, r5, #0
bl FUN_020191D0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl DestroyMsgData
add r0, r6, #0
@@ -8545,7 +8545,7 @@ MOD83_02231A4C: ; 0x02231A4C
ldr r1, [r5]
mov r0, #0x25
add r4, r2, #0
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02231A9C ; =0x00002B60
add r6, r0, #0
ldr r2, [r5, r1]
@@ -8569,7 +8569,7 @@ MOD83_02231A4C: ; 0x02231A4C
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -8618,7 +8618,7 @@ _02231ADE:
ldr r0, [r4, r1]
add r1, r1, #4
ldr r1, [r4, r1]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r4, r0, #0
mov r3, #0
str r3, [sp]
@@ -8631,7 +8631,7 @@ _02231ADE:
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #1
add sp, #0x10
pop {r4, r5, r6, pc}
@@ -8701,7 +8701,7 @@ MOD83_02231B84: ; 0x02231B84
mov r0, #0xfb
mov r1, #0x57
add r4, r2, #0
- bl FUN_020219F4
+ bl String_ctor
ldr r1, _02231BD4 ; =0x00002B60
add r6, r0, #0
ldr r2, [r5, r1]
@@ -8725,7 +8725,7 @@ MOD83_02231B84: ; 0x02231B84
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -8757,7 +8757,7 @@ MOD83_02231BD8: ; 0x02231BD8
add r1, r1, #4
ldr r1, [r3, r1]
mov r3, #0x57
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r4, r0, #0
mov r3, #0
str r3, [sp]
@@ -8770,7 +8770,7 @@ MOD83_02231BD8: ; 0x02231BD8
str r3, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
mov r0, #0
pop {r4, r5, r6, pc}
@@ -9142,7 +9142,7 @@ _02231EBE:
ldr r0, [r5, r0]
ldr r1, [r5, r1]
ldr r3, [r5]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x30]
ldr r0, [r4, #0x2c]
ldr r2, [sp, #0x30]
@@ -9158,7 +9158,7 @@ _02231EBE:
add r0, r6, #0
bl FUN_0201BDE0
ldr r0, [sp, #0x30]
- bl FUN_02021A20
+ bl String_dtor
_02231F20:
add r0, r6, #0
bl FUN_020191D0
@@ -9281,7 +9281,7 @@ _02231FFE:
ldr r0, [r5, r1]
add r1, r1, #4
ldr r1, [r5, r1]
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x14]
mov r3, #0
str r3, [sp]
@@ -9295,7 +9295,7 @@ _02231FFE:
add r0, r6, #0
bl FUN_0201BDE0
ldr r0, [sp, #0x14]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02232090 ; =0x000029A4
ldr r0, [r5, r0]
bl DestroyMsgData
@@ -11108,7 +11108,7 @@ _02232EE6:
add r0, r4, #0
mov r2, #0x35
mov r3, #0x57
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x20]
add r0, r7, #0
bl FUN_020239CC
@@ -11142,7 +11142,7 @@ _02232F30:
bl FUN_0201BDE0
_02232F4A:
ldr r0, [sp, #0x20]
- bl FUN_02021A20
+ bl String_dtor
add r0, r7, #0
bl FUN_020239BC
add r2, r0, #0
@@ -11160,7 +11160,7 @@ _02232F4A:
add r0, r4, #0
mov r2, #0x36
mov r3, #0x57
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0
str r5, [sp]
mov r0, #0xff
@@ -11175,7 +11175,7 @@ _02232F4A:
mov r3, #0x50
bl FUN_0201BDE0
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
add r5, #0x18
_02232F9E:
ldr r0, [sp, #0x18]
@@ -11245,7 +11245,7 @@ MOD83_02232FE4: ; 0x02232FE4
add r1, r1, #4
ldr r1, [r5, r1]
mov r3, #0x57
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r6, r0, #0
mov r3, #0
str r3, [sp]
@@ -11261,7 +11261,7 @@ MOD83_02232FE4: ; 0x02232FE4
add r0, r4, #0
bl FUN_020191D0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, _02233078 ; =0x000029A4
ldr r0, [r5, r0]
bl DestroyMsgData
@@ -15530,7 +15530,7 @@ _02234FB2:
ldr r2, [r5, #0x34]
add r0, r7, #0
mov r3, #0x4e
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
str r0, [sp, #0x18]
ldr r1, [sp, #0x18]
add r0, r5, #0
@@ -15550,7 +15550,7 @@ _02234FB2:
bl FUN_0201BDE0
str r0, [r5, #0x48]
ldr r0, [sp, #0x18]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x40]
cmp r0, #0
bne _02234FF8
@@ -15568,7 +15568,7 @@ _02235004:
beq _0223504C
mov r0, #0x40
mov r1, #0x4e
- bl FUN_020219F4
+ bl String_ctor
ldr r1, [r5, #0x38]
add r7, r0, #0
mov r2, #0x40
@@ -15591,7 +15591,7 @@ _02235004:
bl FUN_0201BDE0
str r0, [r5, #0x48]
add r0, r7, #0
- bl FUN_02021A20
+ bl String_dtor
mov r0, #0
str r0, [r5, #0x38]
_0223504C:
@@ -17248,7 +17248,7 @@ _02235CCA:
bl MOD83_02234F2C
mov r0, #0x40
mov r1, #0x4e
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r2, _02235E00 ; =0x0000016A
mov r0, #1
@@ -17265,7 +17265,7 @@ _02235CCA:
ldr r1, [sp, #4]
add r0, r7, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
mvn r0, r0
str r0, [sp, #0x60]
@@ -17280,7 +17280,7 @@ _02235CCA:
add r0, r7, #0
bl DestroyMsgData
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
mov r1, #0xc
mov r2, #0
@@ -17293,7 +17293,7 @@ _02235CCA:
add r7, r0, #0
mov r0, #0x40
mov r1, #0x4e
- bl FUN_020219F4
+ bl String_ctor
lsl r1, r7, #0x10
lsr r1, r1, #0x10
mov r2, #0x4e
@@ -17312,14 +17312,14 @@ _02235CCA:
str r6, [sp, #0x68]
bl MOD83_02234F2C
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
_02235DAC:
add r0, r4, #0
bl MOD83_02237EDC
add r6, r0, #0
mov r0, #0xa
mov r1, #0x4e
- bl FUN_020219F4
+ bl String_ctor
mov r3, #1
add r1, r6, #0
mov r2, #3
@@ -17339,7 +17339,7 @@ _02235DAC:
str r4, [sp, #0x68]
bl MOD83_02234F2C
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [sp, #4]
lsl r0, r0, #0x10
lsr r0, r0, #0x10
@@ -18157,7 +18157,7 @@ MOD83_02236484: ; 0x02236484
add r4, r0, #0
mov r0, #8
mov r1, #0x4e
- bl FUN_020219F4
+ bl String_ctor
add r1, sp, #8
add r6, r0, #0
bl FUN_02021E28
@@ -18187,7 +18187,7 @@ MOD83_02236484: ; 0x02236484
add r1, r5, r1
bl MOD83_02234F2C
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
add r0, r4, #0
bl FUN_0200AB18
add r0, r5, #0
@@ -23095,7 +23095,7 @@ _0223899C:
ldr r2, [r5, #0x4c]
ldr r3, [r4, #4]
add r0, r6, #0
- bl FUN_0200A9C4
+ bl ReadMsgData_ExpandPlaceholders
add r4, r0, #0
ldr r0, [r5, #0xc]
cmp r0, #0
@@ -23147,7 +23147,7 @@ _022389D0:
str r0, [r5, #0xc]
_02238A12:
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #0x14]
cmp r0, #0
bne _02238A24
diff --git a/arm9/modules/84/asm/module_84.s b/arm9/modules/84/asm/module_84.s
index 8fd1ddbe..846d8d8a 100644
--- a/arm9/modules/84/asm/module_84.s
+++ b/arm9/modules/84/asm/module_84.s
@@ -1963,7 +1963,7 @@ MOD84_021D84F8: ; 0x021D84F8
mov r0, #1
lsl r0, r0, #8
mov r1, #0x4b
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x30]
mov r0, #0x4b
mov r1, #1
@@ -2032,7 +2032,7 @@ MOD84_021D85B8: ; 0x021D85B8
bl FUN_0200CAB4
_021D85C6:
ldr r0, [r4, #0x30]
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r4, #0x24]
bl FUN_02019178
ldr r0, [r4, #0x28]
@@ -2076,7 +2076,7 @@ _021D8600:
ldr r0, [r5, #0x2c]
ldrh r1, [r2, r1]
ldr r2, [r5, #0x30]
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r1, [r5, #0xc]
mov r0, #6
add r2, r1, #0
@@ -2297,7 +2297,7 @@ _021D87D0:
ldr r0, [r5, #0x2c]
ldr r2, [r5, #0x30]
mov r1, #0xd7
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0
ldr r1, [r5, #0x30]
add r2, r0, #0
diff --git a/arm9/modules/85/asm/module_85.s b/arm9/modules/85/asm/module_85.s
index aeaa3704..0d084362 100644
--- a/arm9/modules/85/asm/module_85.s
+++ b/arm9/modules/85/asm/module_85.s
@@ -794,7 +794,7 @@ MOD85_021D7B28: ; 0x021D7B28
mov r0, #1
lsl r0, r0, #8
mov r1, #0x4f
- bl FUN_020219F4
+ bl String_ctor
str r0, [r4, #0x18]
add sp, #8
pop {r3, r4, r5, pc}
@@ -824,7 +824,7 @@ MOD85_021D7BB8: ; 0x021D7BB8
ldr r0, [r4, #4]
bl FUN_0200AB18
ldr r0, [r4, #0x18]
- bl FUN_02021A20
+ bl String_dtor
pop {r4, r5, r6, pc}
nop
_021D7BE8: .word 0x00000408
@@ -852,7 +852,7 @@ MOD85_021D7BEC: ; 0x021D7BEC
ldr r2, [r4, #0x18]
ldr r0, [r5, r0]
add r1, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0
str r3, [sp]
mov r0, #0xff
diff --git a/arm9/modules/86/asm/module_86.s b/arm9/modules/86/asm/module_86.s
index 2f636fb7..7be44d49 100644
--- a/arm9/modules/86/asm/module_86.s
+++ b/arm9/modules/86/asm/module_86.s
@@ -798,17 +798,17 @@ MOD86_021D7B80: ; 0x021D7B80
mov r0, #2
ldr r1, [r5]
lsl r0, r0, #8
- bl FUN_020219F4
+ bl String_ctor
add r4, r0, #0
mov r0, #2
ldr r1, [r5]
lsl r0, r0, #8
- bl FUN_020219F4
+ bl String_ctor
add r6, r0, #0
ldr r0, [r5, #0x34]
mov r1, #0
add r2, r6, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
ldr r0, [r5, #0x38]
ldr r2, [r5, #0xc]
mov r1, #0
@@ -816,7 +816,7 @@ MOD86_021D7B80: ; 0x021D7B80
ldr r0, [r5, #0x38]
add r1, r4, #0
add r2, r6, #0
- bl FUN_0200B7B8
+ bl StringExpandPlaceholders
mov r0, #0x20
str r0, [sp]
mov r1, #0
@@ -842,7 +842,7 @@ MOD86_021D7B80: ; 0x021D7B80
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r6, #0
- bl FUN_02021A20
+ bl String_dtor
ldr r0, [r5, #4]
cmp r0, #0
bne _021D7C00
@@ -853,7 +853,7 @@ _021D7C00:
_021D7C02:
ldr r0, [r5, #0x34]
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r3, #0x40
str r3, [sp]
mov r1, #0
@@ -879,7 +879,7 @@ _021D7C02:
ldr r0, [r5, #0x34]
mov r1, #3
add r2, r4, #0
- bl FUN_0200A8E0
+ bl ReadMsgDataIntoString
mov r0, #0x90
str r0, [sp]
mov r1, #0
@@ -905,7 +905,7 @@ _021D7C02:
str r1, [sp, #0xc]
bl FUN_0201BDE0
add r0, r4, #0
- bl FUN_02021A20
+ bl String_dtor
add sp, #0x10
pop {r4, r5, r6, pc}
nop
diff --git a/arm9/src/msgdata.c b/arm9/src/msgdata.c
new file mode 100644
index 00000000..ae33e0f5
--- /dev/null
+++ b/arm9/src/msgdata.c
@@ -0,0 +1,400 @@
+#include "global.h"
+#include "filesystem.h"
+#include "msgdata.h"
+#include "heap.h"
+#include "MI_memory.h"
+#include "string16.h"
+#include "proto.h"
+
+#pragma thumb on
+
+static void * LoadSingleElementFromNarc(NarcId narc_id, s32 file_id, u32 heap_id);
+static void FreeMsgDataRawData(void * data);
+static void ReadMsgData_ExistingTable_ExistingArray(struct MsgDataTable * table, u32 num, u16 * dest);
+static void ReadMsgData_NewNarc_ExistingArray(NarcId narc_id, u32 group, u32 num, u32 heap_id, u16 * dest);
+static void CopyEncryptedMessage16(u16 * dest, const u16 * src, struct MsgDataAlloc * param);
+static void ReadMsgData_ExistingTable_ExistingString(struct MsgDataTable * table, u32 num, struct String * dest);
+static struct String * ReadMsgData_ExistingTable_NewString(struct MsgDataTable * table, u32 num, u32 heap_id);
+static void ReadMsgData_ExistingNarc_ExistingString(NARC * narc, u32 group, u32 num, u32 heap_id, struct String * dest);
+static struct String * ReadMsgData_ExistingNarc_NewString(NARC * narc, u32 group, u32 num, u32 heap_id);
+static u16 GetMsgCount_ExistingTable(struct MsgDataTable * tbl);
+static u16 GetMsgCount_TableFromNarc(NarcId narc_id, s32 file_id);
+
+static void * LoadSingleElementFromNarc(NarcId narc_id, s32 file_id, u32 heap_id)
+{
+ return AllocAndReadWholeNarcMemberByIdPair(narc_id, file_id, heap_id);
+}
+
+static void FreeMsgDataRawData(void * data)
+{
+ FreeToHeap(data);
+}
+
+inline static void Decrypt1(struct MsgDataAlloc * arg0, u32 arg1, u32 seed)
+{
+ seed = seed * 765 * (arg1 + 1) & 0xffff;
+ seed |= seed << 16;
+ arg0->offset ^= seed;
+ arg0->length ^= seed;
+}
+
+inline static void Decrypt2(u16 * arg0, u32 count, u32 arg2)
+{
+ u16 seed = (u16)((arg2 + 1) * 596947);
+
+ while (count-- > 0)
+ {
+ *arg0 ^= seed;
+ arg0++;
+ seed += 18749;
+ }
+}
+
+static void ReadMsgData_ExistingTable_ExistingArray(struct MsgDataTable * table, u32 num, u16 * dest)
+{
+ struct MsgDataAlloc sp0;
+
+ if (num < table->count)
+ {
+ sp0 = table->alloc[num];
+ Decrypt1(&sp0, num, table->key);
+
+ CopyEncryptedMessage16(dest, (const u16 *)((u8 *)table + sp0.offset), &sp0);
+ Decrypt2(dest, sp0.length, num);
+ }
+ else
+ {
+ GF_ASSERT(0);
+ }
+}
+
+static void ReadMsgData_NewNarc_ExistingArray(NarcId narc_id, u32 group, u32 num, u32 heap_id, u16 * dest)
+{
+ NARC * narc = NARC_ctor(narc_id, heap_id);
+ u16 header[2];
+ struct MsgDataAlloc alloc;
+ if (narc != NULL)
+ {
+ NARC_ReadFromMember(narc, group, 0, 4, header);
+ NARC_ReadFromMember(narc, group, 8 * num + 4, 8, &alloc);
+ Decrypt1(&alloc, num, header[1]);
+ NARC_ReadFromMember(narc, group, alloc.offset, 2 * alloc.length, dest);
+ Decrypt2(dest, alloc.length, num);
+ NARC_dtor(narc);
+ }
+}
+
+static void CopyEncryptedMessage16(u16 * dest, const u16 * src, struct MsgDataAlloc * param)
+{
+ MI_CpuCopy16(src, dest, 2 * param->length);
+}
+
+static void ReadMsgData_ExistingTable_ExistingString(struct MsgDataTable * table, u32 num, struct String * dest)
+{
+ struct MsgDataAlloc alloc;
+ u16 * buf;
+ if (num < table->count)
+ {
+ alloc = table->alloc[num];
+ Decrypt1(&alloc, num, table->key);
+ buf = AllocFromHeapAtEnd(0, 2 * alloc.length);
+ if (buf != NULL)
+ {
+ MI_CpuCopy16((char *)table + alloc.offset, buf, 2 * alloc.length);
+ Decrypt2(buf, alloc.length, num);
+ FUN_02021E8C(dest, buf, alloc.length);
+ FreeToHeap(buf);
+ }
+ }
+ else
+ {
+ GF_ASSERT(0);
+ StringSetEmpty(dest);
+ }
+}
+
+static struct String * ReadMsgData_ExistingTable_NewString(struct MsgDataTable * table, u32 num, u32 heap_id)
+{
+ struct MsgDataAlloc alloc;
+ u16 * buf;
+ struct String * dest;
+ if (num < table->count)
+ {
+ alloc = table->alloc[num];
+ Decrypt1(&alloc, num, table->key);
+ buf = AllocFromHeapAtEnd(heap_id, 2 * alloc.length);
+ if (buf != NULL)
+ {
+ MI_CpuCopy16((char *)table + alloc.offset, buf, 2 * alloc.length);
+ Decrypt2(buf, alloc.length, num);
+ dest = String_ctor(alloc.length, heap_id);
+ if (dest != NULL)
+ FUN_02021E8C(dest, buf, alloc.length);
+ FreeToHeap(buf);
+ return dest;
+ }
+ else
+ {
+ return NULL;
+ }
+ }
+ else
+ {
+ GF_ASSERT(0);
+ return String_ctor(4, heap_id);
+ }
+}
+
+void ReadMsgData_NewNarc_ExistingString(NarcId narc_id, u32 group, u32 num, u32 heap_id, struct String * dest)
+{
+ NARC * narc = NARC_ctor(narc_id, heap_id);
+ if (narc != NULL)
+ {
+ ReadMsgData_ExistingNarc_ExistingString(narc, group, num, heap_id, dest);
+ NARC_dtor(narc);
+ }
+}
+
+static void ReadMsgData_ExistingNarc_ExistingString(NARC * narc, u32 group, u32 num, u32 heap_id, struct String * dest)
+{
+ u16 * buf;
+ u32 size;
+ u16 sp10[2];
+ struct MsgDataAlloc alloc;
+
+ NARC_ReadFromMember(narc, group, 0, 4, sp10);
+ if (num < sp10[0])
+ {
+ NARC_ReadFromMember(narc, group, 8 * num + 4, 8, &alloc);
+ Decrypt1(&alloc, num, sp10[1]);
+ size = alloc.length * 2;
+ buf = AllocFromHeapAtEnd(heap_id, size);
+ if (buf != NULL)
+ {
+ NARC_ReadFromMember(narc, group, alloc.offset, size, buf);
+ Decrypt2(buf, alloc.length, num);
+ FUN_02021E8C(dest, buf, alloc.length);
+ FreeToHeap(buf);
+ return;
+ }
+ }
+ else
+ {
+ GF_ASSERT(0);
+ StringSetEmpty(dest);
+ }
+}
+
+struct String * ReadMsgData_NewNarc_NewString(NarcId narc_id, u32 group, u32 num, u32 heap_id)
+{
+ NARC * narc = NARC_ctor(narc_id, heap_id);
+ struct String * string;
+ if (narc != NULL)
+ {
+ string = ReadMsgData_ExistingNarc_NewString(narc, group, num, heap_id);
+ NARC_dtor(narc);
+ }
+ else
+ {
+ string = String_ctor(4, heap_id);
+ }
+ return string;
+}
+
+static struct String * ReadMsgData_ExistingNarc_NewString(NARC * narc, u32 group, u32 num, u32 heap_id)
+{
+ struct String * dest;
+ u16 * buf;
+ u32 size;
+ u16 sp10[2];
+ struct MsgDataAlloc alloc;
+
+ NARC_ReadFromMember(narc, group, 0, 4, sp10);
+ if (num < sp10[0])
+ {
+ NARC_ReadFromMember(narc, group, 8 * num + 4, 8, &alloc);
+ Decrypt1(&alloc, num, sp10[1]);
+ dest = String_ctor(alloc.length, heap_id);
+ if (dest != NULL)
+ {
+ size = alloc.length * 2;
+ buf = AllocFromHeapAtEnd(heap_id, size);
+ if (buf != NULL)
+ {
+ NARC_ReadFromMember(narc, group, alloc.offset, size, buf);
+ Decrypt2(buf, alloc.length, num);
+ FUN_02021E8C(dest, buf, alloc.length);
+ FreeToHeap(buf);
+ }
+ }
+ return dest;
+ }
+ else
+ {
+ GF_ASSERT(0);
+ return String_ctor(4, heap_id);
+ }
+}
+
+static u16 GetMsgCount_ExistingTable(struct MsgDataTable * tbl)
+{
+ return tbl->count;
+}
+
+static u16 GetMsgCount_TableFromNarc(NarcId narc_id, s32 file_id)
+{
+ u16 n[2];
+ ReadFromNarcMemberByIdPair(&n, narc_id, file_id, 0, 4);
+ return n[0];
+}
+
+struct MsgData * NewMsgDataFromNarc(u32 type, NarcId narc_id, s32 file_id, u32 heap_id)
+{
+ struct MsgData * msgData = AllocFromHeapAtEnd(heap_id, sizeof(struct MsgData));
+ if (msgData != NULL)
+ {
+ if (type == 0)
+ {
+ msgData->data.raw = LoadSingleElementFromNarc(narc_id, file_id, heap_id);
+ if (msgData->data.raw == NULL)
+ {
+ FreeToHeap(msgData);
+ return NULL;
+ }
+ }
+ else
+ {
+ msgData->data.narc = NARC_ctor(narc_id, heap_id);
+ }
+ msgData->type = (u16)type;
+ msgData->narc_id = (u16)narc_id;
+ msgData->file_id = (u16)file_id;
+ msgData->heap_id = (u16)heap_id;
+ }
+ return msgData;
+}
+
+void DestroyMsgData(struct MsgData * msgData)
+{
+ if (msgData != NULL)
+ {
+ switch (msgData->type)
+ {
+ case 0:
+ FreeMsgDataRawData(msgData->data.raw);
+ break;
+ case 1:
+ NARC_dtor(msgData->data.narc);
+ break;
+ }
+ FreeToHeap(msgData);
+ }
+}
+
+void ReadMsgDataIntoString(struct MsgData * msgData, u32 msg_no, struct String * dest)
+{
+ switch (msgData->type)
+ {
+ case 0:
+ ReadMsgData_ExistingTable_ExistingString(msgData->data.raw, msg_no, dest);
+ break;
+ case 1:
+ ReadMsgData_ExistingNarc_ExistingString(msgData->data.narc, msgData->file_id, msg_no, msgData->heap_id, dest);
+ break;
+ }
+}
+
+struct String * NewString_ReadMsgData(struct MsgData * msgData, u32 msg_no)
+{
+ switch (msgData->type)
+ {
+ case 0:
+ return ReadMsgData_ExistingTable_NewString(msgData->data.raw, msg_no, msgData->heap_id);
+ case 1:
+ return ReadMsgData_ExistingNarc_NewString(msgData->data.narc, msgData->file_id, msg_no, msgData->heap_id);
+ default:
+ return NULL;
+ }
+}
+
+u16 MsgDataGetCount(struct MsgData * msgData)
+{
+ switch (msgData->type)
+ {
+ case 0:
+ return GetMsgCount_ExistingTable(msgData->data.raw);
+ case 1:
+ return GetMsgCount_TableFromNarc((NarcId)msgData->narc_id, msgData->file_id);
+ default:
+ return 0;
+ }
+}
+
+void ReadMsgDataIntoU16Array(struct MsgData * msgData, u32 msg_no, u16 * dest)
+{
+ switch (msgData->type)
+ {
+ case 0:
+ ReadMsgData_ExistingTable_ExistingArray(msgData->data.raw, msg_no, dest);
+ break;
+ case 1:
+ ReadMsgData_NewNarc_ExistingArray((NarcId)msgData->narc_id, msgData->file_id, msg_no, msgData->heap_id, dest);
+ break;
+ }
+}
+
+void GetSpeciesNameIntoArray(u16 species, u32 heap_id, u16 * dest)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 362, heap_id);
+ ReadMsgDataIntoU16Array(msgData, species, dest);
+ DestroyMsgData(msgData);
+}
+
+struct String * ReadMsgData_ExpandPlaceholders(u32 * a0, struct MsgData * msgData, u32 msgno, u32 a3)
+{
+ struct String * ret = NULL;
+ struct String * r4 = String_ctor(1024, 0);
+ struct String * r5;
+ if (r4 != NULL)
+ {
+ r5 = NewString_ReadMsgData(msgData, msgno);
+ if (r5 != NULL)
+ {
+ StringExpandPlaceholders(a0, r4, r5);
+ ret = StringDup(r4, a3);
+ String_dtor(r5);
+ }
+ String_dtor(r4);
+ }
+ return ret;
+}
+
+struct String * GetMoveName(u32 move, u32 heapno)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 588, heapno);
+ struct String * ret;
+ if (msgData != NULL)
+ {
+ ret = String_ctor(16, heapno);
+ if (ret != NULL)
+ {
+ ReadMsgDataIntoString(msgData, move, ret);
+ }
+ DestroyMsgData(msgData);
+ return ret;
+ }
+ return NULL;
+}
+
+struct String * GetSpeciesName(u16 species, u32 heap_id)
+{
+ struct String * ret;
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 362, heap_id);
+ if (msgData != NULL)
+ {
+ ret = NewString_ReadMsgData(msgData, species);
+ DestroyMsgData(msgData);
+ return ret;
+ }
+ return NULL;
+}
diff --git a/arm9/src/nutdata.c b/arm9/src/nutdata.c
index 09542052..a8f916e2 100644
--- a/arm9/src/nutdata.c
+++ b/arm9/src/nutdata.c
@@ -1,7 +1,7 @@
#include "global.h"
#include "filesystem.h"
#include "itemtool.h"
-#include "msg_data.h"
+#include "msgdata.h"
#pragma thumb on
@@ -20,12 +20,12 @@ void CloseNutsDataNarc(NARC * narc)
NARC_dtor(narc);
}
-struct NutData * LoadNutDataSingle(u32 berry_idx, u32 heap_id)
+struct NutData * LoadNutDataSingle(s32 berry_idx, u32 heap_id)
{
return AllocAndReadWholeNarcMemberByIdPair(NARC_ITEMTOOL_ITEMDATA_NUTS_DATA, berry_idx, heap_id);
}
-struct NutData * LoadNutDataSingleByItemId(u32 item_id, u32 heap_id)
+struct NutData * LoadNutDataSingleByItemId(s32 item_id, u32 heap_id)
{
return LoadNutDataSingle(item_id - FIRST_BERRY_IDX, heap_id);
}
@@ -61,18 +61,18 @@ u32 GetNutAttr(struct NutData * nut, u32 attr)
}
}
-u16 * GetNutName(u32 berry_idx, u32 heap_id)
+struct String * GetNutName(u32 berry_idx, u32 heap_id)
{
struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 373, heap_id);
- u16 * ret = FUN_0200A914(msgData, berry_idx);
+ struct String * ret = NewString_ReadMsgData(msgData, berry_idx);
DestroyMsgData(msgData);
return ret;
}
-u16 * GetNutDesc(u32 berry_idx, u32 heap_id)
+struct String * GetNutDesc(u32 berry_idx, u32 heap_id)
{
struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 372, heap_id);
- u16 * ret = FUN_0200A914(msgData, berry_idx);
+ struct String * ret = NewString_ReadMsgData(msgData, berry_idx);
DestroyMsgData(msgData);
return ret;
}
diff --git a/arm9/src/pokemon.c b/arm9/src/pokemon.c
index 8df597a6..a15d20c1 100644
--- a/arm9/src/pokemon.c
+++ b/arm9/src/pokemon.c
@@ -10,6 +10,7 @@
#include "move_data.h"
#include "string_util.h"
#include "text.h"
+#include "msgdata.h"
#include "constants/abilities.h"
#include "constants/items.h"
#include "constants/moves.h"
@@ -843,7 +844,7 @@ u32 GetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * dest)
break;
case MON_DATA_NICKNAME:
if (boxmon->checksum_fail)
- GetSpeciesName(SPECIES_MANAPHY_EGG, 0, dest);
+ GetSpeciesNameIntoArray(SPECIES_MANAPHY_EGG, 0, dest);
else
{
u16 * dest16 = (u16 *)dest;
@@ -860,9 +861,9 @@ u32 GetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * dest)
case MON_DATA_NICKNAME_3:
if (boxmon->checksum_fail)
{
- u16 * buffer = FUN_0200AA50(SPECIES_MANAPHY_EGG, 0);
- FUN_02021A74(dest, buffer);
- FUN_02021A20(buffer);
+ struct String * buffer = GetSpeciesName(SPECIES_MANAPHY_EGG, 0);
+ StringCopy(dest, buffer);
+ String_dtor(buffer);
}
else
{
@@ -978,7 +979,7 @@ u32 GetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * dest)
}
break;
case MON_DATA_SPECIES_NAME:
- GetSpeciesName(blockA->species, 0, dest);
+ GetSpeciesNameIntoArray(blockA->species, 0, dest);
break;
}
return ret;
@@ -1090,7 +1091,7 @@ void SetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * value)
u16 namebuf[POKEMON_NAME_LENGTH + 1];
u16 namebuf2[POKEMON_NAME_LENGTH + 1];
u16 namebuf3[POKEMON_NAME_LENGTH + 1];
- u16 * speciesName;
+ struct String * speciesName;
PokemonDataBlockA *blockA = &GetSubstruct(boxmon, boxmon->pid, 0)->blockA;
PokemonDataBlockB *blockB = &GetSubstruct(boxmon, boxmon->pid, 1)->blockB;
@@ -1309,7 +1310,7 @@ void SetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * value)
blockB->Unused = VALUE(u16);
break;
case MON_DATA_NICKNAME_2:
- GetSpeciesName(blockA->species, 0, namebuf);
+ GetSpeciesNameIntoArray(blockA->species, 0, namebuf);
blockB->isNicknamed = StringNotEqual(namebuf, value);
// fallthrough
case MON_DATA_NICKNAME:
@@ -1319,7 +1320,7 @@ void SetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * value)
}
break;
case MON_DATA_NICKNAME_4:
- GetSpeciesName(blockA->species, 0, namebuf2);
+ GetSpeciesNameIntoArray(blockA->species, 0, namebuf2);
FUN_02021EF0(value, namebuf3, POKEMON_NAME_LENGTH + 1);
blockB->isNicknamed = StringNotEqual(namebuf2, namebuf3);
// fallthrough
@@ -1420,9 +1421,9 @@ void SetBoxMonDataInternal(struct BoxPokemon * boxmon, int attr, void * value)
blockB->spdefIV = (VALUE(u32) >> 25) & 0x1F;
break;
case MON_DATA_SPECIES_NAME:
- speciesName = FUN_0200AA50(blockA->species, 0);
+ speciesName = GetSpeciesName(blockA->species, 0);
FUN_02021EF0(speciesName, blockC->nickname, POKEMON_NAME_LENGTH + 1);
- FUN_02021A20(speciesName);
+ String_dtor(speciesName);
break;
}
#undef VALUE
@@ -3682,13 +3683,13 @@ BOOL FUN_0206A9AC(struct BoxPokemon * boxmon, struct SaveBlock2 * sb2, u32 heap_
u32 myGender = FUN_020239CC(sb2);
u32 otGender = GetBoxMonData(boxmon, MON_DATA_MET_GENDER, NULL);
struct String * r7 = FUN_020239A0(sb2, heap_id);
- struct String * r6 = FUN_020219F4(OT_NAME_LENGTH + 1, heap_id);
+ struct String * r6 = String_ctor(OT_NAME_LENGTH + 1, heap_id);
BOOL ret = FALSE;
GetBoxMonData(boxmon, MON_DATA_OT_NAME_2, r6);
if (myId == otId && myGender == otGender && FUN_02021CE0(r7, r6) == 0)
ret = TRUE;
- FUN_02021A20(r6);
- FUN_02021A20(r7);
+ String_dtor(r6);
+ String_dtor(r7);
return ret;
}
diff --git a/arm9/src/string_util.c b/arm9/src/string_util.c
index 54ad61fc..19ed5fa3 100644
--- a/arm9/src/string_util.c
+++ b/arm9/src/string_util.c
@@ -32,7 +32,7 @@ const s32 gPowersOfTen[] = {
1000000000,
};
-THUMB_FUNC void StringCopy(u16 *dest, const u16 *src)
+THUMB_FUNC void CopyU16StringArray(u16 *dest, const u16 *src)
{
u16 c = *src;
while (c != EOS) {
@@ -44,7 +44,7 @@ THUMB_FUNC void StringCopy(u16 *dest, const u16 *src)
*dest = EOS;
}
-THUMB_FUNC u16 *StringCopyN(u16 *dest, const u16 *src, u32 num)
+THUMB_FUNC u16 *CopyU16StringArrayN(u16 *dest, const u16 *src, u32 num)
{
u32 copied = 0;
if (num > copied) {
diff --git a/arm9/src/unk_0201B8B8.c b/arm9/src/unk_0201B8B8.c
new file mode 100644
index 00000000..abb92067
--- /dev/null
+++ b/arm9/src/unk_0201B8B8.c
@@ -0,0 +1,33 @@
+#include "global.h"
+#include "unk_0201B8B88.h"
+
+#pragma thumb on
+
+const u16 * FUN_0201B8B8(const u16 * r4)
+{
+ GF_ASSERT(*r4 == 0xFFFE);
+ if (*r4 == 0xFFFE) {
+ u16 r0 = r4[2];
+ r4 += 3;
+ r4 += r0;
+ }
+ return r4;
+}
+
+u16 FUN_0201B8E0(const u16 * r4)
+{
+ GF_ASSERT(*r4 == 0xFFFE);
+ return r4[1];
+}
+
+BOOL FUN_0201B8F8(const u16 * r4)
+{
+ return (FUN_0201B8E0(r4) & 0xFF00) == 0x100;
+}
+
+u16 FUN_0201B914(const u16 * r5, u32 r4)
+{
+ GF_ASSERT(*r5 == 0xFFFE);
+ GF_ASSERT(r4 < r5[2]);
+ return r5[3 + r4];
+}
diff --git a/files/wazaeffect/we.arc b/files/wazaeffect/we.arc
deleted file mode 100644
index 6642630a..00000000
--- a/files/wazaeffect/we.arc
+++ /dev/null
Binary files differ
diff --git a/include/itemtool.h b/include/itemtool.h
index 525e68f9..d8419c2b 100644
--- a/include/itemtool.h
+++ b/include/itemtool.h
@@ -21,4 +21,13 @@ struct NutData
u8 unkB;
};
+NARC * OpenNutsDataNarc(u32 heap_id);
+struct NutData * ReadNutDataFromNarc(NARC * narc, u32 berry_idx, u32 heap_id);
+void CloseNutsDataNarc(NARC * narc);
+struct NutData * LoadNutDataSingle(s32 berry_idx, u32 heap_id);
+struct NutData * LoadNutDataSingleByItemId(s32 item_id, u32 heap_id);
+u32 GetNutAttr(struct NutData * nut, u32 attr);
+struct String * GetNutName(u32 berry_idx, u32 heap_id);
+struct String * GetNutDesc(u32 berry_idx, u32 heap_id);
+
#endif //POKEDIAMOND_ITEMTOOL_H
diff --git a/include/msg_data.h b/include/msg_data.h
deleted file mode 100644
index debacc79..00000000
--- a/include/msg_data.h
+++ /dev/null
@@ -1,20 +0,0 @@
-#ifndef POKEDIAMOND_MSG_DATA_H
-#define POKEDIAMOND_MSG_DATA_H
-
-struct MsgData
-{
- u16 unk0;
- u16 unk2;
- u16 unk4;
- u16 unk6;
- union {
- u16 * raw;
- NARC * narc;
- } data;
-};
-
-struct MsgData * NewMsgDataFromNarc(u32 type, u32 narcId, u32 msgId, u32 heapno);
-u16 * FUN_0200A914(struct MsgData *, u32);
-void DestroyMsgData(struct MsgData *);
-
-#endif //POKEDIAMOND_MSG_DATA_H
diff --git a/include/msgdata.h b/include/msgdata.h
new file mode 100644
index 00000000..fae8ca78
--- /dev/null
+++ b/include/msgdata.h
@@ -0,0 +1,44 @@
+#ifndef POKEDIAMOND_MSG_DATA_H
+#define POKEDIAMOND_MSG_DATA_H
+
+#include "string16.h"
+
+struct MsgDataAlloc
+{
+ u32 offset;
+ u32 length;
+};
+
+struct MsgDataTable
+{
+ u16 count;
+ u16 key;
+ struct MsgDataAlloc alloc[1];
+};
+
+struct MsgData
+{
+ u16 type;
+ u16 heap_id;
+ u16 narc_id;
+ u16 file_id;
+ union {
+ struct MsgDataTable * raw;
+ NARC * narc;
+ } data;
+};
+
+void ReadMsgData_NewNarc_ExistingString(NarcId narc_id, u32 group, u32 num, u32 heap_id, struct String * dest);
+struct MsgData * NewMsgDataFromNarc(u32 type, NarcId narcId, s32 msgId, u32 heapno);
+void DestroyMsgData(struct MsgData *);
+struct String * ReadMsgData_NewNarc_NewString(NarcId narc_id, u32 group, u32 num, u32 heap_id);
+void ReadMsgDataIntoString(struct MsgData * msgData, u32 msg_no, struct String * dest);
+struct String * NewString_ReadMsgData(struct MsgData *, u32);
+u16 MsgDataGetCount(struct MsgData * msgData);
+void ReadMsgDataIntoU16Array(struct MsgData * msgData, u32 msg_no, u16 * dest);
+void GetSpeciesNameIntoArray(u16 species, u32 heap_id, u16 * dest);
+struct String * ReadMsgData_ExpandPlaceholders(u32 * a0, struct MsgData * msgData, u32 msgno, u32 heap_id);
+struct String * GetMoveName(u32 move, u32 heapno);
+struct String * GetSpeciesName(u16 species, u32 heap_id);
+
+#endif //POKEDIAMOND_MSG_DATA_H
diff --git a/include/proto.h b/include/proto.h
index 2e7d19b3..4a0012d3 100644
--- a/include/proto.h
+++ b/include/proto.h
@@ -4,12 +4,12 @@
// For homeless function declarations
#include "pokemon.h" // for struct definitions
+#include "string16.h" // for struct definitions
-u16 * FUN_0200AA50(u16 species, u32 heap_id);
-void FUN_02021A74(u16 * dest, u16 * src);
-void FUN_02021A20(void * ptr);
+void StringCopy(u16 * dest, struct String * src);
+void String_dtor(void * ptr);
void FUN_02021E28(u16 * dest, u16 * src);
-void FUN_02021EF0(const u16 * src, u16 * dest, u32 count);
+void FUN_02021EF0(const struct String * src, u16 * dest, u32 count);
u32 FUN_0206E7B8(u16 item, u32 a1, u32 a2);
int FUN_02014C3C(u8);
void FUN_02014C54(int, int, struct UnkStruct_02069038 *, u8);
@@ -20,5 +20,6 @@ void FUN_02005E90(int, int, int, int);
void FUN_020056AC(int, int, int, int, int);
void FUN_020808AC(struct BoxPokemon *, int, int, int, int);
void * FUN_02022610(void *, int);
+void StringExpandPlaceholders(u32 *, struct String *, struct String *);
#endif //POKEDIAMOND_PROTO_H
diff --git a/include/string16.h b/include/string16.h
index 7092c641..91888a7b 100644
--- a/include/string16.h
+++ b/include/string16.h
@@ -10,8 +10,11 @@ struct String
u16 data[1];
};
-struct String * FUN_020219F4(u32 count, u32 heap_id);
+struct String * String_ctor(u32 count, u32 heap_id);
int FUN_02021CE0(struct String *, struct String *);
int FUN_0206AE00(int x);
+void FUN_02021E8C(struct String *, u16 *, u32); // copy
+void StringSetEmpty(struct String *); // set empty
+struct String * StringDup(struct String *, u32 heap_id);
#endif //POKEDIAMOND_STRING16_H
diff --git a/include/string_util.h b/include/string_util.h
index e9079229..52168ace 100644
--- a/include/string_util.h
+++ b/include/string_util.h
@@ -16,8 +16,8 @@ enum PrintingMode {
PAD_ZEROES
};
-void StringCopy(u16 *dest, const u16 *src);
-u16 *StringCopyN(u16 *dest, const u16 *src, u32 num);
+void CopyU16StringArray(u16 *dest, const u16 *src);
+u16 *CopyU16StringArrayN(u16 *dest, const u16 *src, u32 num);
u32 StringLength(const u16 *s);
BOOL StringNotEqual(const u16 *s1, const u16 *s2);
BOOL StringNotEqualN(const u16 *s1, const u16 *s2, u32 num);
diff --git a/include/text.h b/include/text.h
index cec36a30..8b7fe896 100644
--- a/include/text.h
+++ b/include/text.h
@@ -1,6 +1,6 @@
#ifndef POKEDIAMOND_TEXT_H
#define POKEDIAMOND_TEXT_H
-void GetSpeciesName(u16 species, u32 heap_id, u16 * dest);
+void GetSpeciesNameIntoArray(u16 species, u32 heap_id, u16 * dest);
#endif //POKEDIAMOND_TEXT_H
diff --git a/include/unk_0201B8B88.h b/include/unk_0201B8B88.h
new file mode 100644
index 00000000..95eab968
--- /dev/null
+++ b/include/unk_0201B8B88.h
@@ -0,0 +1,9 @@
+#ifndef POKEDIAMOND_UNK_0201B8B88_H
+#define POKEDIAMOND_UNK_0201B8B88_H
+
+const u16 * FUN_0201B8B8(const u16 * r4);
+u16 FUN_0201B8E0(const u16 * r4);
+BOOL FUN_0201B8F8(const u16 * r4);
+u16 FUN_0201B914(const u16 * r5, u32 r4);
+
+#endif //POKEDIAMOND_UNK_0201B8B88_H
diff --git a/tools/csv2bin/.gitignore b/tools/csv2bin/.gitignore
new file mode 100644
index 00000000..acf9f588
--- /dev/null
+++ b/tools/csv2bin/.gitignore
@@ -0,0 +1 @@
+csv2bin
diff --git a/tools/msgenc/Makefile b/tools/msgenc/Makefile
new file mode 100644
index 00000000..da455633
--- /dev/null
+++ b/tools/msgenc/Makefile
@@ -0,0 +1,13 @@
+CC := gcc
+CFLAGS := -O2
+
+.PHONY: all clean
+
+all: msgenc
+ @:
+
+clean:
+ $(RM) msgenc msgenc.exe
+
+msgenc: msgenc.c
+ $(CC) $(CFLAGS) -o $@ $^
diff --git a/tools/msgenc/msgenc.c b/tools/msgenc/msgenc.c
new file mode 100644
index 00000000..f3d8ce5e
--- /dev/null
+++ b/tools/msgenc/msgenc.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+
+int main(int argc, char ** argv)
+{
+ printf("Hello, world!\n");
+ return 0;
+}