pokediamond/arm9/asm/scrcmd_asm.s
2023-06-21 04:29:41 +01:00

5087 lines
89 KiB
ArmAsm

.include "asm/macros.inc"
.include "global.inc"
.extern UNK_020F34FC
.extern UNK_020F3538
.extern gSystem
.extern sub_0203BB90
.extern sub_0203BC04
.text
thumb_func_start ScrCmd_Unk013D
ScrCmd_Unk013D: ; 0x0203D448
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_0208881C
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk013E
ScrCmd_Unk013E: ; 0x0203D458
push {r4, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x7c]
bl sub_02052F74
bl sub_02031B50
ldr r1, _0203D478 ; =sub_0203D47C
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
nop
_0203D478: .word sub_0203D47C
thumb_func_start sub_0203D47C
sub_0203D47C: ; 0x0203D47C
push {r3, lr}
bl sub_02030F20
cmp r0, #0x2
bge _0203D48A
mov r0, #0x1
pop {r3, pc}
_0203D48A:
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk013F
ScrCmd_Unk013F: ; 0x0203D490
push {r3-r7, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xa
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
str r0, [sp, #0x0]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xf
bl FieldSysGetAttrAddr
add r7, r0, #0x0
ldr r0, [r4, #0x0]
bl MapObject_GetID
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
ldr r2, [sp, #0x0]
ldr r0, [r0, #0x78]
ldr r3, [r7, #0x0]
bl sub_02052A10
strh r0, [r6, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk02BA
ScrCmd_Unk02BA: ; 0x0203D4E8
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x78]
bl sub_020527A8
strh r0, [r4, #0x0]
ldrh r0, [r4, #0x0]
cmp r0, #0x0
beq _0203D522
add r5, #0x80
ldr r0, [r5, #0x0]
mov r1, #0x13
bl FieldSysGetAttrAddr
ldr r0, [r0, #0x0]
bl FreeToHeap
_0203D522:
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0140
ScrCmd_Unk0140: ; 0x0203D528
push {r4-r6, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r5, [r0, #0x0]
mov r1, #0xa
add r0, r5, #0x0
bl FieldSysGetAttrAddr
add r6, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r6, #0x0]
bl MapObject_GetID
add r1, r0, #0x0
ldr r0, [r5, #0x78]
bl sub_020524CC
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0146
ScrCmd_Unk0146: ; 0x0203D560
push {r3-r7, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r5, [r0, #0x0]
mov r1, #0xa
add r0, r5, #0x0
bl FieldSysGetAttrAddr
add r6, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r6, #0x0]
bl MapObject_GetID
add r1, r0, #0x0
ldr r0, [r5, #0x78]
add r2, r7, #0x0
bl sub_02052544
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0141
ScrCmd_Unk0141: ; 0x0203D5B0
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
str r0, [r4, #0x64]
ldr r1, _0203D5C8 ; =sub_0203D5CC
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
nop
_0203D5C8: .word sub_0203D5CC
thumb_func_start sub_0203D5CC
sub_0203D5CC: ; 0x0203D5CC
push {r4-r6, lr}
add r6, r0, #0x0
add r0, #0x80
ldr r5, [r0, #0x0]
ldr r0, [r5, #0x78]
bl sub_02052604
ldr r1, [r6, #0x64]
add r4, r0, #0x0
lsl r1, r1, #0x10
add r0, r5, #0x0
lsr r1, r1, #0x10
bl GetVarPointer
cmp r4, #0x0
bne _0203D5F0
mov r0, #0x0
pop {r4-r6, pc}
_0203D5F0:
strh r4, [r0, #0x0]
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0142
ScrCmd_Unk0142: ; 0x0203D5F8
push {r3, lr}
add r0, #0x80
ldr r1, [r0, #0x0]
ldr r0, [r1, #0x34]
ldr r1, [r1, #0x7c]
bl sub_020534DC
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk013A
ScrCmd_Unk013A: ; 0x0203D60C
push {r3, lr}
mov r0, #0x4
bl sub_02052B74
bl sub_02031C2C
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk013B
ScrCmd_Unk013B: ; 0x0203D61C
push {r3, lr}
bl sub_02031C64
bl sub_02031B50
mov r0, #0x0
bl sub_02052B74
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk0143
ScrCmd_Unk0143: ; 0x0203D630
push {r4-r6, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r2, r0, #0x0
ldr r0, [r4, #0x78]
add r1, r6, #0x0
bl sub_0205265C
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0144
ScrCmd_Unk0144: ; 0x0203D66C
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
str r0, [r4, #0x64]
ldr r1, _0203D684 ; =sub_0203D688
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
nop
_0203D684: .word sub_0203D688
thumb_func_start sub_0203D688
sub_0203D688: ; 0x0203D688
push {r3-r5, lr}
add r5, r0, #0x0
ldr r1, [r5, #0x64]
add r0, #0x80
lsl r1, r1, #0x10
ldr r0, [r0, #0x0]
lsr r1, r1, #0x10
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x78]
bl sub_02052608
cmp r0, #0x1
blo _0203D6BC
add r5, #0x80
strh r0, [r4, #0x0]
ldr r0, [r5, #0x0]
ldr r0, [r0, #0x78]
bl sub_02052E10
mov r0, #0x1
pop {r3-r5, pc}
_0203D6BC:
mov r0, #0x0
strh r0, [r4, #0x0]
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0145
ScrCmd_Unk0145: ; 0x0203D6C4
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
str r0, [r4, #0x64]
ldr r1, _0203D6DC ; =sub_0203D6E0
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
nop
_0203D6DC: .word sub_0203D6E0
thumb_func_start sub_0203D6E0
sub_0203D6E0: ; 0x0203D6E0
push {r3-r5, lr}
add r5, r0, #0x0
ldr r1, [r5, #0x64]
add r0, #0x80
lsl r1, r1, #0x10
ldr r0, [r0, #0x0]
lsr r1, r1, #0x10
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x78]
bl sub_02052648
ldr r1, _0203D724 ; =gSystem
ldr r2, [r1, #0x48]
mov r1, #0x2
tst r1, r2
beq _0203D716
add r5, #0x80
ldr r0, [r5, #0x0]
mov r1, #0x8
ldr r0, [r0, #0x78]
bl sub_02052718
_0203D716:
cmp r0, #0x0
beq _0203D720
strh r0, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
_0203D720:
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
_0203D724: .word gSystem
thumb_func_start ScrCmd_Unk0153
ScrCmd_Unk0153: ; 0x0203D728
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x10]
bl sub_02049EA4
mov r0, #0x1
pop {r3, pc}
thumb_func_start ScrCmd_Unk0154
ScrCmd_Unk0154: ; 0x0203D738
push {r4-r6, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
mov r1, #0xf
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerID
add r6, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerGender
add r1, r0, #0x0
ldr r2, [r4, #0x0]
add r0, r6, #0x0
bl sub_0205363C
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0155
ScrCmd_Unk0155: ; 0x0203D774
push {r3-r7, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerID
add r6, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerGender
add r1, r0, #0x0
add r0, r6, #0x0
add r2, r7, #0x0
bl sub_02053678
strh r0, [r4, #0x0]
add r0, r5, #0x0
bl PlayerProfile_GetTrainerGender
ldrh r1, [r4, #0x0]
mov r2, #0x2
bl sub_020536D0
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk029C
ScrCmd_Unk029C: ; 0x0203D7DC
push {r3-r7, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerID
add r6, r0, #0x0
add r0, r5, #0x0
bl PlayerProfile_GetTrainerGender
add r1, r0, #0x0
add r0, r6, #0x0
add r2, r7, #0x0
bl sub_02053678
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0156
ScrCmd_Unk0156: ; 0x0203D834
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r1, r0, #0x0
lsl r1, r1, #0x18
add r0, r4, #0x0
lsr r1, r1, #0x18
bl PlayerProfile_SetAvatar
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk014B
ScrCmd_Unk014B: ; 0x0203D868
push {r3, lr}
ldr r0, [r0, #0x74]
bl sub_02048498
mov r0, #0x1
pop {r3, pc}
thumb_func_start ScrCmd_Unk014C
ScrCmd_Unk014C: ; 0x0203D874
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_LocalFieldData_Get
add r1, r4, #0x0
bl sub_02034E04
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_GetPlayerGender
ScrCmd_GetPlayerGender: ; 0x0203D8A0
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl PlayerProfile_GetTrainerGender
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_HealParty
ScrCmd_HealParty: ; 0x0203D8D0
push {r3, lr}
ldr r0, [r0, #0x74]
bl sub_02046528
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
bl HealParty
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk014F
ScrCmd_Unk014F: ; 0x0203D8E8
mov r0, #0x0
bx lr
thumb_func_start ScrCmd_Unk0150
ScrCmd_Unk0150: ; 0x0203D8EC
push {r4, lr}
add r4, r0, #0x0
bl sub_02050024
ldr r1, _0203D900 ; =sub_0203D904
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
.balign 4
_0203D900: .word sub_0203D904
thumb_func_start sub_0203D904
sub_0203D904: ; 0x0203D904
push {r3, lr}
bl sub_02031810
cmp r0, #0x1
beq _0203D91A
bl sub_0202EDF8
cmp r0, #0x1
beq _0203D91A
mov r0, #0x1
pop {r3, pc}
_0203D91A:
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk02BB
ScrCmd_Unk02BB: ; 0x0203D920
push {r4, lr}
add r4, r0, #0x0
bl sub_02050048
ldr r1, _0203D934 ; =sub_0203D904
add r0, r4, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4, pc}
.balign 4
_0203D934: .word sub_0203D904
thumb_func_start ScrCmd_Unk0151
ScrCmd_Unk0151: ; 0x0203D938
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_0204FF5C
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0152
ScrCmd_Unk0152: ; 0x0203D948
push {r3, lr}
bl ScriptReadHalfword
bl sub_0204F6DC
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk017A
ScrCmd_Unk017A: ; 0x0203D958
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_Bag_Get
add r1, r6, #0x0
bl Bag_PocketNotEmpty
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0186
ScrCmd_Unk0186: ; 0x0203D998
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r3, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
add r2, r6, #0x0
bl sub_02034B74
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0187
ScrCmd_Unk0187: ; 0x0203D9E8
push {r4-r7, lr}
sub sp, #0xc
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x4]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x8]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r6, #0x0
ldr r0, [r0, #0x34]
bl sub_02058060
ldr r2, [sp, #0x4]
ldr r3, [sp, #0x8]
add r5, r0, #0x0
add r1, r7, #0x0
str r4, [sp, #0x0]
bl sub_02058E28
add r0, r5, #0x0
bl sub_02059D1C
mov r0, #0x0
add sp, #0xc
pop {r4-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0188
ScrCmd_Unk0188: ; 0x0203DA78
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r2, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
bl sub_02034BDC
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0189
ScrCmd_Unk0189: ; 0x0203DAB0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r2, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
bl sub_02034BAC
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk018A
ScrCmd_Unk018A: ; 0x0203DAE8
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r3, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
add r2, r6, #0x0
bl sub_02034C0C
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk018B
ScrCmd_Unk018B: ; 0x0203DB38
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r3, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
add r2, r6, #0x0
bl sub_02034C34
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk018C
ScrCmd_Unk018C: ; 0x0203DB88
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r6, #0x0
ldr r0, [r0, #0x34]
bl sub_02058060
add r5, r0, #0x0
bne _0203DBC6
bl GF_AssertFail
_0203DBC6:
add r0, r5, #0x0
add r1, r4, #0x0
bl ov05_021F1EC0
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk018F
ScrCmd_Unk018F: ; 0x0203DBD4
push {r3-r5, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xc
bl FieldSysGetAttrAddr
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
ldr r1, [r5, #0x0]
cmp r1, #0x0
beq _0203DBFC
strh r0, [r1, #0x0]
_0203DBFC:
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0168
ScrCmd_Unk0168: ; 0x0203DC00
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
lsl r1, r4, #0x5
ldr r3, [r5, #0x8]
add r2, r0, #0x0
add r0, r3, #0x1
str r0, [r5, #0x8]
add r5, #0x80
lsl r4, r6, #0x5
ldrb r3, [r3, #0x0]
ldr r0, [r5, #0x0]
add r1, r7, r1
add r2, r2, r4
bl ov05_021DAE40
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0169
ScrCmd_Unk0169: ; 0x0203DC58
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
bl ov05_021DAF78
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk016A
ScrCmd_Unk016A: ; 0x0203DC70
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
bl ov05_021DAF98
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk016B
ScrCmd_Unk016B: ; 0x0203DC88
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
bl ov05_021DAED4
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk016C
ScrCmd_Unk016C: ; 0x0203DCA0
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
bl ov05_021DAF28
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk016F
ScrCmd_Unk016F: ; 0x0203DCB8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02064CA8
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0170
ScrCmd_Unk0170: ; 0x0203DCC8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl ov06_02241230
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0171
ScrCmd_Unk0171: ; 0x0203DCD8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02064CC8
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0172
ScrCmd_Unk0172: ; 0x0203DCE8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl ov06_02241914
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0173
ScrCmd_Unk0173: ; 0x0203DCF8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02064D10
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0174
ScrCmd_Unk0174: ; 0x0203DD08
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02064D4C
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0175
ScrCmd_Unk0175: ; 0x0203DD18
push {r3, lr}
add r1, r0, #0x0
add r1, #0x80
ldr r2, [r0, #0x8]
ldr r3, [r1, #0x0]
add r1, r2, #0x1
str r1, [r0, #0x8]
ldrb r1, [r2, #0x0]
add r0, r3, #0x0
bl sub_02064D88
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0176
ScrCmd_Unk0176: ; 0x0203DD34
push {r3, lr}
add r1, r0, #0x0
add r1, #0x80
ldr r2, [r0, #0x8]
ldr r3, [r1, #0x0]
add r1, r2, #0x1
str r1, [r0, #0x8]
ldrb r1, [r2, #0x0]
add r0, r3, #0x0
bl ov06_02242A38
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk01AC
ScrCmd_Unk01AC: ; 0x0203DD50
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_020388B4
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk019E
ScrCmd_Unk019E: ; 0x0203DD60
push {r3-r7, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xa
bl FieldSysGetAttrAddr
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
str r0, [r5, #0x64]
ldr r0, [r6, #0x0]
bl MapObject_GetID
add r1, r5, #0x0
add r1, #0x80
add r2, r0, #0x0
ldr r1, [r1, #0x0]
add r0, r7, #0x0
bl ov18_0224CA54
str r0, [r4, #0x0]
ldr r1, _0203DDBC ; =sub_0203DDC0
add r0, r5, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
_0203DDBC: .word sub_0203DDC0
thumb_func_start sub_0203DDC0
sub_0203DDC0: ; 0x0203DDC0
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
ldr r1, [r5, #0x64]
add r0, #0x80
lsl r1, r1, #0x10
ldr r0, [r0, #0x0]
lsr r1, r1, #0x10
bl GetVarPointer
add r5, r0, #0x0
ldr r0, [r4, #0x0]
bl ov18_0224CA2C
strh r0, [r5, #0x0]
ldrh r1, [r5, #0x0]
ldr r0, _0203DDFC ; =0x0000FFFE
cmp r1, r0
beq _0203DDF6
mov r0, #0x1
pop {r3-r5, pc}
_0203DDF6:
mov r0, #0x0
pop {r3-r5, pc}
nop
_0203DDFC: .word 0x0000FFFE
thumb_func_start ScrCmd_Unk019F
ScrCmd_Unk019F: ; 0x0203DE00
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x3
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
bl ov18_0224CA58
strb r0, [r4, #0x0]
ldr r1, _0203DE34 ; =sub_0203DE38
add r0, r5, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
_0203DE34: .word sub_0203DE38
thumb_func_start sub_0203DE38
sub_0203DE38: ; 0x0203DE38
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x3
bl FieldSysGetAttrAddr
ldrb r0, [r0, #0x0]
bl sub_020546C8
pop {r3, pc}
thumb_func_start ScrCmd_Unk01A0
ScrCmd_Unk01A0: ; 0x0203DE4C
push {r3, lr}
bl ov11_0224CA94
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk01A1
ScrCmd_Unk01A1: ; 0x0203DE58
push {r3-r5, lr}
add r4, r0, #0x0
ldr r2, [r4, #0x8]
add r1, r2, #0x1
str r1, [r4, #0x8]
ldrb r5, [r2, #0x0]
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r1, r0, #0x0
add r0, r5, #0x0
bl ov18_0224CAA0
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk01A2
ScrCmd_Unk01A2: ; 0x0203DE80
push {r3-r5, lr}
add r4, r0, #0x0
ldr r2, [r4, #0x8]
add r1, r2, #0x1
str r1, [r4, #0x8]
ldrb r5, [r2, #0x0]
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r1, r0, #0x0
add r0, r5, #0x0
bl ov18_0224CAB4
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk003F
ScrCmd_Unk003F: ; 0x0203DEA8
push {r3, lr}
sub sp, #0x8
mov r3, #0x0
str r3, [sp, #0x0]
str r3, [sp, #0x4]
mov r1, #0x1
ldr r0, [r0, #0x74]
add r2, r1, #0x0
bl ov06_02242BE0
mov r0, #0x1
add sp, #0x8
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk01B1
ScrCmd_Unk01B1: ; 0x0203DEC4
push {r3-r5, lr}
add r4, r0, #0x0
add r1, r4, #0x0
add r1, #0x80
ldr r5, [r1, #0x0]
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r1, r0, #0x0
ldr r0, [r5, #0x34]
bl sub_02058060
add r4, r0, #0x0
bne _0203DEEC
bl GF_AssertFail
_0203DEEC:
add r0, r4, #0x0
mov r1, #0x0
bl sub_0205889C
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01B2
ScrCmd_Unk01B2: ; 0x0203DEF8
push {r3-r5, lr}
add r4, r0, #0x0
add r1, r4, #0x0
add r1, #0x80
ldr r5, [r1, #0x0]
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r1, r0, #0x0
ldr r0, [r5, #0x34]
bl sub_02058060
add r4, r0, #0x0
bne _0203DF20
bl GF_AssertFail
_0203DF20:
add r0, r4, #0x0
mov r1, #0x1
bl sub_0205889C
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01B3
ScrCmd_Unk01B3: ; 0x0203DF2C
push {r3, lr}
ldr r0, [r0, #0x74]
bl sub_02066818
mov r0, #0x1
pop {r3, pc}
thumb_func_start ScrCmd_Unk01B4
ScrCmd_Unk01B4: ; 0x0203DF38
push {r3-r5, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
ldr r0, [r4, #0xc]
bl Save_Mailbox_Get
mov r1, #0x0
bl Mailbox_CountMessages
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01B5
ScrCmd_Unk01B5: ; 0x0203DF64
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r1, r0, #0x0
ldr r0, [r4, #0x74]
bl sub_02063650
mov r0, #0x1
pop {r4, pc}
thumb_func_start ScrCmd_Unk01B6
ScrCmd_Unk01B6: ; 0x0203DF84
push {r3-r5, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
bl Script_GetTimeOfDay
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01B7
ScrCmd_Unk01B7: ; 0x0203DFA8
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r5, r0, #0x0
bl LCRandom
add r1, r5, #0x0
bl _s32_div_f
strh r1, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01B8
ScrCmd_Unk01B8: ; 0x0203DFE0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r5, r0, #0x0
bl LCRandom
add r1, r5, #0x0
bl _s32_div_f
strh r1, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01C1
ScrCmd_Unk01C1: ; 0x0203E018
push {r4-r6, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r1, r0, #0x0
add r0, r4, #0x0
bl ov05_021F3A18
strh r0, [r6, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk01C2
ScrCmd_Unk01C2: ; 0x0203E054
push {r3-r5, lr}
add r4, r0, #0x0
add r1, r4, #0x0
add r1, #0x80
ldr r5, [r1, #0x0]
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r1, r0, #0x0
add r0, r5, #0x0
bl ov05_021F3AB4
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01C3
ScrCmd_Unk01C3: ; 0x0203E078
push {r3-r7, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
lsl r1, r6, #0x18
lsl r2, r7, #0x18
add r3, r0, #0x0
add r0, r4, #0x0
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl ov05_021F3B7C
mov r0, #0x0
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk01C4
ScrCmd_Unk01C4: ; 0x0203E0CC
push {r3-r7, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
lsl r1, r6, #0x18
lsl r2, r7, #0x18
add r3, r0, #0x0
add r0, r4, #0x0
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl ov05_021F3B4C
mov r0, #0x0
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk01C5
ScrCmd_Unk01C5: ; 0x0203E120
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
mov r1, #0x82
lsl r1, r1, #0x8
bl sub_0205F3F8
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk01CC
ScrCmd_Unk01CC: ; 0x0203E138
push {r4, lr}
add r0, #0x80
ldr r4, [r0, #0x0]
ldr r0, [r4, #0xc]
bl SaveArray_Flags_Get
mov r1, #0x1
bl sub_0205F2D4
ldr r0, [r4, #0xc]
bl sub_020289A4
mov r1, #0x1
bl sub_020289B0
add r1, r4, #0x0
add r1, #0x98
str r0, [r1, #0x0]
add r0, r4, #0x0
bl sub_02048C58
mov r0, #0x0
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk01CD
ScrCmd_Unk01CD: ; 0x0203E168
push {r3-r7, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x0]
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r5, r0, #0x0
add r0, r7, #0x0
sub r0, #0x10
cmp r0, #0xa
bhi _0203E23A
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #0x6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0203E1EA: ; jump table (using 16-bit offset)
.short _0203E200 - _0203E1EA - 2; case 0
.short _0203E20C - _0203E1EA - 2; case 1
.short _0203E218 - _0203E1EA - 2; case 2
.short _0203E226 - _0203E1EA - 2; case 3
.short _0203E23A - _0203E1EA - 2; case 4
.short _0203E226 - _0203E1EA - 2; case 5
.short _0203E226 - _0203E1EA - 2; case 6
.short _0203E226 - _0203E1EA - 2; case 7
.short _0203E226 - _0203E1EA - 2; case 8
.short _0203E226 - _0203E1EA - 2; case 9
.short _0203E226 - _0203E1EA - 2; case 10
_0203E200:
mov r0, #0x4
mov r6, #0x1
bl sub_02029120
str r0, [r5, #0x0]
b _0203E23E
_0203E20C:
mov r0, #0x4
mov r6, #0x1
bl sub_0202912C
str r0, [r5, #0x0]
b _0203E23E
_0203E218:
ldr r0, [sp, #0x0]
mov r1, #0x4
mov r6, #0x1
bl sub_02029138
str r0, [r5, #0x0]
b _0203E23E
_0203E226:
sub r7, #0x13
lsl r0, r7, #0x18
ldr r1, [sp, #0x0]
lsr r0, r0, #0x18
mov r2, #0x4
mov r6, #0x1
bl sub_0202914C
str r0, [r5, #0x0]
b _0203E23E
_0203E23A:
mov r0, #0x1
pop {r3-r7, pc}
_0203E23E:
add r4, #0x80
ldr r0, [r4, #0x0]
ldr r1, [r5, #0x0]
add r0, #0x98
ldr r0, [r0, #0x0]
add r2, r6, #0x0
bl sub_02028AD4
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk01CE
ScrCmd_Unk01CE: ; 0x0203E254
mov r0, #0x0
bx lr
thumb_func_start ScrCmd_Unk01D2
ScrCmd_Unk01D2: ; 0x0203E258
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r4, #0x0
add r2, r6, #0x0
bl sub_020271A4
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk01D3
ScrCmd_Unk01D3: ; 0x0203E29C
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r6, #0x0
add r2, r7, #0x0
bl sub_020270D8
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk01D4
ScrCmd_Unk01D4: ; 0x0203E2F8
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r7, #0x0
bl sub_02027114
cmp r6, r0
bhi _0203E352
mov r0, #0x1
b _0203E354
_0203E352:
mov r0, #0x0
_0203E354:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk01D5
ScrCmd_Unk01D5: ; 0x0203E35C
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r4, #0x0
bl sub_02027264
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk01D6
ScrCmd_Unk01D6: ; 0x0203E38C
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r6, #0x0
bl sub_02027100
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk01E8
ScrCmd_Unk01E8: ; 0x0203E3D0
push {r3-r5, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
mov r0, #0x0
strh r0, [r4, #0x0]
add r0, r5, #0x0
bl Pokedex_HasCompletedSinnohDex
cmp r0, #0x1
bne _0203E404
mov r0, #0x1
strh r0, [r4, #0x0]
_0203E404:
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01E9
ScrCmd_Unk01E9: ; 0x0203E408
push {r3-r5, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
mov r0, #0x0
strh r0, [r4, #0x0]
add r0, r5, #0x0
bl Pokedex_HasCompletedNationalDex
cmp r0, #0x1
bne _0203E43C
mov r0, #0x1
strh r0, [r4, #0x0]
_0203E43C:
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk01EA
ScrCmd_Unk01EA: ; 0x0203E440
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x13
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x20
mov r2, #0x0
bl sub_02038AF4
str r0, [r4, #0x0]
ldr r1, _0203E46C ; =sub_0203BB90
add r0, r5, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
_0203E46C: .word sub_0203BB90
thumb_func_start ScrCmd_Unk01EB
ScrCmd_Unk01EB: ; 0x0203E470
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x13
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x20
mov r2, #0x1
bl sub_02038AF4
str r0, [r4, #0x0]
ldr r1, _0203E49C ; =sub_0203BB90
add r0, r5, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
_0203E49C: .word sub_0203BB90
thumb_func_start ScrCmd_Unk01EC
ScrCmd_Unk01EC: ; 0x0203E4A0
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl ov06_0224CBB0
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk01ED
ScrCmd_Unk01ED: ; 0x0203E4B0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl ov06_0224CC24
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk01EF
ScrCmd_Unk01EF: ; 0x0203E4D8
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
mov r0, #0x0
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk01E5
ScrCmd_Unk01E5: ; 0x0203E4F0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r4, #0x0
bl GameStats_Inc
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk01E6
ScrCmd_Unk01E6: ; 0x0203E510
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r6, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
add r1, r4, #0x0
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
add r1, r6, #0x0
bl GetVarPointer
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r7, #0x0
bl GameStats_GetCapped
ldr r1, _0203E564 ; =0xFFFF0000
and r1, r0
lsr r1, r1, #0x10
strh r1, [r4, #0x0]
strh r0, [r6, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
_0203E564: .word 0xFFFF0000
thumb_func_start ScrCmd_Unk01E7
ScrCmd_Unk01E7: ; 0x0203E568
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
ldr r1, [r5, #0x8]
add r2, r1, #0x1
str r2, [r5, #0x8]
lsl r2, r4, #0x10
add r4, r2, #0x0
orr r4, r0
ldrb r0, [r1, #0x0]
cmp r0, #0x0
beq _0203E59C
cmp r0, #0x1
beq _0203E5B0
cmp r0, #0x2
beq _0203E5C4
b _0203E5D6
_0203E59C:
add r5, #0x80
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r6, #0x0
add r2, r4, #0x0
bl GameStats_Add
b _0203E5D6
_0203E5B0:
add r5, #0x80
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r6, #0x0
add r2, r4, #0x0
bl GameStats_SetCapped
b _0203E5D6
_0203E5C4:
add r5, #0x80
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r6, #0x0
add r2, r4, #0x0
bl GameStats_UpdateBounded
_0203E5D6:
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0202
ScrCmd_Unk0202: ; 0x0203E5DC
push {r3-r7, lr}
sub sp, #0x8
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_LocalFieldData_Get
add r7, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
str r0, [sp, #0x0]
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl sub_02022504
ldr r1, [r5, #0x8]
str r0, [sp, #0x4]
add r0, r1, #0x1
str r0, [r5, #0x8]
ldrb r4, [r1, #0x0]
add r0, r7, #0x0
bl sub_02034E24
add r6, r0, #0x0
add r0, r7, #0x0
bl sub_02034E28
add r7, r0, #0x0
cmp r4, #0x0
beq _0203E62C
cmp r4, #0x1
beq _0203E642
b _0203E66E
_0203E62C:
ldr r0, [sp, #0x0]
bl sub_0205F1F4
ldr r0, [sp, #0x4]
bl sub_02060FD0
mov r0, #0x1e
strh r0, [r6, #0x0]
mov r0, #0x0
strh r0, [r7, #0x0]
b _0203E66E
_0203E642:
ldr r0, [sp, #0x0]
bl sub_0205F204
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02061574
mov r0, #0x4
bl sub_0202912C
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
mov r2, #0x1
add r0, #0x98
ldr r0, [r0, #0x0]
bl sub_02028AD4
mov r0, #0x0
strh r0, [r6, #0x0]
strh r0, [r7, #0x0]
_0203E66E:
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk0206
ScrCmd_Unk0206: ; 0x0203E674
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_0206015C
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk020D
ScrCmd_Unk020D: ; 0x0203E684
push {r4-r6, lr}
add r5, r0, #0x0
ldr r2, [r5, #0x8]
add r1, r2, #0x1
str r1, [r5, #0x8]
ldrb r4, [r2, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r4, #0x0
bl ov06_022456E8
strh r0, [r6, #0x0]
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk020E
ScrCmd_Unk020E: ; 0x0203E6B4
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02064E20
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk020F
ScrCmd_Unk020F: ; 0x0203E6C4
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
mov r1, #0x0
add r6, r0, #0x0
mov r0, #0x41
add r2, r1, #0x0
bl sub_0200433C
add r5, #0x80
ldrh r1, [r4, #0x0]
ldr r0, [r5, #0x0]
add r2, r6, #0x0
bl ov06_0224525C
mov r0, #0x1
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0210
ScrCmd_Unk0210: ; 0x0203E6FC
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
add r1, r6, #0x0
bl ov06_02245340
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0211
ScrCmd_Unk0211: ; 0x0203E72C
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldr r0, [r0, #0x0]
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x38]
bl sub_02055560
mov r0, #0x1
pop {r3, pc}
thumb_func_start ScrCmd_Unk0214
ScrCmd_Unk0214: ; 0x0203E744
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_0205F688
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0218
ScrCmd_Unk0218: ; 0x0203E774
push {r3-r7, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
str r0, [sp, #0x0]
add r0, r7, #0x0
bl Pokedex_CountSinnohDexSeen
add r4, r0, #0x0
bl LCRandom
add r1, r4, #0x0
bl _s32_div_f
lsl r0, r1, #0x10
lsr r6, r0, #0x10
ldr r0, [sp, #0x0]
mov r1, #0x19
strh r1, [r0, #0x0]
mov r4, #0x1
mov r5, #0x0
_0203E7B6:
add r0, r7, #0x0
add r1, r4, #0x0
bl Pokedex_CheckMonSeenFlag
cmp r0, #0x1
bne _0203E7DC
add r0, r4, #0x0
bl SpeciesToSinnohDexNo
cmp r0, #0x0
beq _0203E7DC
cmp r5, r6
bne _0203E7D6
ldr r0, [sp, #0x0]
strh r4, [r0, #0x0]
b _0203E7E8
_0203E7D6:
add r0, r5, #0x1
lsl r0, r0, #0x10
lsr r5, r0, #0x10
_0203E7DC:
add r0, r4, #0x1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
ldr r0, _0203E7EC ; =0x000001ED
cmp r4, r0
bls _0203E7B6
_0203E7E8:
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
_0203E7EC: .word 0x000001ED
thumb_func_start ScrCmd_Unk0219
ScrCmd_Unk0219: ; 0x0203E7F0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r1, r4, #0x0
bl sub_0205F5A4
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk021A
ScrCmd_Unk021A: ; 0x0203E81C
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
bl sub_0205F594
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk021B
ScrCmd_Unk021B: ; 0x0203E848
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl sub_0202AA00
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk021C
ScrCmd_Unk021C: ; 0x0203E858
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldr r0, [r0, #0x0]
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0xc]
bl sub_02060490
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk0226
ScrCmd_Unk0226: ; 0x0203E870
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
ldr r1, [r5, #0x8]
add r4, r0, #0x0
add r0, r1, #0x1
str r0, [r5, #0x8]
ldrb r1, [r1, #0x0]
mov r0, #0xb
bl ov06_0224884C
str r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0227
ScrCmd_Unk0227: ; 0x0203E894
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
ldr r0, [r4, #0x0]
bl ov06_022488EC
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0228
ScrCmd_Unk0228: ; 0x0203E8C4
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
ldr r0, [r4, #0x0]
bl ov06_022488F4
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0229
ScrCmd_Unk0229: ; 0x0203E8F4
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r2, r0, #0x0
ldr r0, [r5, #0x74]
ldr r1, [r4, #0x0]
mov r3, #0xb
bl sub_02060790
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk022A
ScrCmd_Unk022A: ; 0x0203E928
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x14
bl FieldSysGetAttrAddr
ldr r0, [r0, #0x0]
bl ov06_022488CC
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk022B
ScrCmd_Unk022B: ; 0x0203E940
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
bl sub_02024D4C
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk022C
ScrCmd_Unk022C: ; 0x0203E954
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
bl sub_02024CE0
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk022D
ScrCmd_Unk022D: ; 0x0203E968
push {r4-r6, lr}
add r5, r0, #0x0
ldr r2, [r5, #0x8]
add r1, r2, #0x1
str r1, [r5, #0x8]
ldrb r4, [r2, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
mov r0, #0x0
strh r0, [r6, #0x0]
cmp r4, #0x1
bne _0203E9AE
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
bl Pokedex_SetNatDexFlag
add r5, #0x80
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_PlayerData_GetProfileAddr
bl PlayerProfile_SetNatDexFlag
b _0203E9C8
_0203E9AE:
cmp r4, #0x2
bne _0203E9C4
add r5, #0x80
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
bl Pokedex_GetNatDexFlag
strh r0, [r6, #0x0]
b _0203E9C8
_0203E9C4:
bl GF_AssertFail
_0203E9C8:
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0233
ScrCmd_Unk0233: ; 0x0203E9CC
push {r4-r7, lr}
sub sp, #0xc
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
str r0, [sp, #0x0]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
add r1, r4, #0x0
bl GetPartyMonByIndex
add r5, r0, #0x0
mov r1, #0xd
mov r2, #0x0
bl GetMonData
add r4, r0, #0x0
add r0, r5, #0x0
mov r1, #0xe
mov r2, #0x0
bl GetMonData
add r6, r0, #0x0
add r0, r5, #0x0
mov r1, #0xf
mov r2, #0x0
bl GetMonData
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x10
mov r2, #0x0
bl GetMonData
str r0, [sp, #0x4]
add r0, r5, #0x0
mov r1, #0x11
mov r2, #0x0
bl GetMonData
str r0, [sp, #0x8]
add r0, r5, #0x0
mov r1, #0x12
mov r2, #0x0
bl GetMonData
add r1, r4, r6
add r2, r7, r1
ldr r1, [sp, #0x4]
add r2, r1, r2
ldr r1, [sp, #0x8]
add r1, r1, r2
add r1, r0, r1
ldr r0, [sp, #0x0]
strh r1, [r0, #0x0]
mov r0, #0x0
add sp, #0xc
pop {r4-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0234
ScrCmd_Unk0234: ; 0x0203EA68
push {r4, lr}
sub sp, #0x10
add r4, r0, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, sp, #0x0
bl GF_RTC_CopyDate
ldr r0, [sp, #0xc]
strh r0, [r4, #0x0]
mov r0, #0x0
add sp, #0x10
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk0239
ScrCmd_Unk0239: ; 0x0203EA90
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r1, r0, #0x0
ldr r0, [r4, #0x74]
bl ov06_022411F4
mov r0, #0x1
pop {r4, pc}
thumb_func_start ScrCmd_Unk023A
ScrCmd_Unk023A: ; 0x0203EAB0
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r7, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
add r1, r7, #0x0
bl GetPartyMonByIndex
mov r1, #0x5
mov r2, #0x0
bl GetMonData
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r5, #0x0
bl ov05_021F61E8
strh r0, [r4, #0x0]
add r0, r5, #0x0
bl ov05_021F61DC
strh r0, [r6, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk023B
ScrCmd_Unk023B: ; 0x0203EB20
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r1, r0, #0x0
add r4, #0x80
lsl r1, r1, #0x18
ldr r0, [r4, #0x0]
lsr r1, r1, #0x18
bl ov06_0224C27C
mov r0, #0x1
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk023C
ScrCmd_Unk023C: ; 0x0203EB48
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r2, r0, #0x0
add r5, #0x80
lsl r1, r4, #0x18
lsl r2, r2, #0x18
ldr r0, [r5, #0x0]
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl ov06_0224C520
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk023D
ScrCmd_Unk023D: ; 0x0203EB88
push {r4-r7, lr}
sub sp, #0xc
add r5, r0, #0x0
ldr r1, [r5, #0x8]
add r2, r1, #0x1
str r2, [r5, #0x8]
ldrb r6, [r1, #0x0]
add r1, r2, #0x1
str r1, [r5, #0x8]
ldrb r4, [r2, #0x0]
bl ScriptReadHalfword
str r0, [sp, #0x8]
add r0, r5, #0x0
bl ScriptReadHalfword
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
str r7, [sp, #0x0]
add r5, #0x80
str r0, [sp, #0x4]
ldr r0, [r5, #0x0]
ldr r3, [sp, #0x8]
add r1, r6, #0x0
add r2, r4, #0x0
bl sub_020607D4
mov r0, #0x1
add sp, #0xc
pop {r4-r7, pc}
thumb_func_start ScrCmd_GameVersion
ScrCmd_GameVersion: ; 0x0203EBC8
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
mov r1, #GAME_VERSION
strh r1, [r0, #0x0]
mov r0, #0x0
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_GiveWallpaper
ScrCmd_GiveWallpaper: ; 0x0203EBE4
push {r3-r7, lr}
sub sp, #0x10
add r5, r0, #0x0
add r0, #0x80
ldr r6, [r0, #0x0]
add r0, r6, #0x0
bl ScriptEnvironment_GetSavePtr
bl Save_PlayerData_GetProfileAddr
str r0, [sp, #0x4]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
ldr r0, [r6, #0xc]
bl GetStoragePCPointer
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x8]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0xc]
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
str r0, [sp, #0x0]
ldr r0, [sp, #0x4]
ldr r2, [sp, #0x8]
ldr r3, [sp, #0xc]
add r1, r7, #0x0
bl ov06_0224D14C
add r5, r0, #0x0
mov r0, #0x0
mvn r0, r0
cmp r5, r0
beq _0203EC7E
cmp r5, #0x7
ble _0203EC88
_0203EC7E:
mov r0, #0xff
strh r0, [r4, #0x0]
add sp, #0x10
mov r0, #0x0
pop {r3-r7, pc}
_0203EC88:
add r0, r6, #0x0
add r1, r5, #0x0
bl PCStorage_IsBonusWallpaperUnlocked
cmp r0, #0x0
beq _0203EC98
mov r0, #0x0
b _0203ECA2
_0203EC98:
add r0, r6, #0x0
add r1, r5, #0x0
bl PCStorage_UnlockBonusWallpaper
add r0, r5, #0x1
_0203ECA2:
strh r0, [r4, #0x0]
mov r0, #0x0
add sp, #0x10
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk024A
ScrCmd_Unk024A: ; 0x0203ECAC
push {r3-r5, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r1, [r1, #0x0]
ldr r4, [r1, #0xc]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_02026CB4
bl sub_020269CC
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk024B
ScrCmd_Unk024B: ; 0x0203ECD8
push {r3, lr}
add r1, r0, #0x0
add r1, #0x80
ldr r2, [r0, #0x8]
ldr r3, [r1, #0x0]
add r1, r2, #0x1
str r1, [r0, #0x8]
ldrb r1, [r2, #0x0]
add r0, r3, #0x0
bl ov06_0224C678
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk024C
ScrCmd_Unk024C: ; 0x0203ECF4
push {r3, lr}
add r1, r0, #0x0
add r1, #0x80
ldr r2, [r0, #0x8]
ldr r3, [r1, #0x0]
add r1, r2, #0x1
str r1, [r0, #0x8]
ldrb r1, [r2, #0x0]
add r0, r3, #0x0
bl ov06_0224C6E8
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk024D
ScrCmd_Unk024D: ; 0x0203ED10
push {r3, lr}
add r1, r0, #0x0
add r1, #0x80
ldr r2, [r0, #0x8]
ldr r3, [r1, #0x0]
add r1, r2, #0x1
str r1, [r0, #0x8]
ldrb r1, [r2, #0x0]
add r0, r3, #0x0
bl ov06_0224C6F4
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start Script_SetMonSeenFlagBySpecies
Script_SetMonSeenFlagBySpecies: ; 0x0203ED2C
push {r4-r6, lr}
sub sp, #0x10
ldr r0, [r0, #0xc]
add r5, r1, #0x0
bl Save_Pokedex_Get
add r6, r0, #0x0
mov r0, #0x20
bl AllocMonZeroed
add r4, r0, #0x0
bl ZeroMonData
mov r0, #0x0
str r0, [sp, #0x0]
str r0, [sp, #0x4]
str r0, [sp, #0x8]
str r0, [sp, #0xc]
add r0, r4, #0x0
add r1, r5, #0x0
mov r2, #0x32
mov r3, #0x20
bl CreateMon
add r0, r6, #0x0
add r1, r4, #0x0
bl Pokedex_SetMonSeenFlag
add r0, r4, #0x0
bl FreeToHeap
add sp, #0x10
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_PCFreeSpace
ScrCmd_PCFreeSpace: ; 0x0203ED70
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl GetStoragePCPointer
bl PCStorage_CountMonsAndEggsInAllBoxes
lsl r0, r0, #0x10
lsr r1, r0, #0x10
mov r0, #0x87
lsl r0, r0, #0x2
sub r0, r0, r1
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0258
ScrCmd_Unk0258: ; 0x0203EDA4
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x16
bl FieldSysGetAttrAddr
add r4, r0, #0x0
mov r0, #0x0
add r5, #0x80
str r0, [r4, #0x0]
ldr r0, [r5, #0x0]
bl ov05_021E7184
str r0, [r4, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0259
ScrCmd_Unk0259: ; 0x0203EDC8
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x16
bl FieldSysGetAttrAddr
ldr r0, [r0, #0x0]
bl ov05_021E71E8
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk025A
ScrCmd_Unk025A: ; 0x0203EDE0
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r1, r0, #0x0
add r4, #0x80
lsl r1, r1, #0x18
ldr r0, [r4, #0x0]
lsr r1, r1, #0x18
bl ov06_0224E554
mov r0, #0x1
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk025B
ScrCmd_Unk025B: ; 0x0203EE08
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_0206486C
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk025C
ScrCmd_Unk025C: ; 0x0203EE18
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_020649D4
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk025D
ScrCmd_Unk025D: ; 0x0203EE28
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
bl sub_020649B0
cmp r0, #0x0
beq _0203EE4E
mov r0, #0x1
b _0203EE50
_0203EE4E:
mov r0, #0x0
_0203EE50:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk025E
ScrCmd_Unk025E: ; 0x0203EE58
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl ov06_0224E764
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk025F
ScrCmd_Unk025F: ; 0x0203EE68
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl ov06_0224E7C4
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0260
ScrCmd_Unk0260: ; 0x0203EE78
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_GameStats_Get
add r1, r4, #0x0
bl GameStats_AddSpecial
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0262
ScrCmd_Unk0262: ; 0x0203EE98
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
add r1, r6, #0x0
bl PartyHasMon
strh r0, [r4, #0x0]
mov r0, #0x1
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0263
ScrCmd_Unk0263: ; 0x0203EED8
push {r3-r7, lr}
sub sp, #0x8
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r1, sp, #0x4
strh r0, [r1, #0x0]
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
str r0, [sp, #0x0]
bl GetPartyCount
add r4, #0x80
add r6, r0, #0x0
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
add r7, r0, #0x0
mov r5, #0x0
cmp r6, #0x0
ble _0203EF4E
_0203EF18:
ldr r0, [sp, #0x0]
add r1, r5, #0x0
bl GetPartyMonByIndex
mov r1, #0x5
mov r2, #0x0
add r4, r0, #0x0
bl GetMonData
ldr r1, _0203EF54 ; =0x00000182
cmp r0, r1
bne _0203EF48
add r0, r4, #0x0
mov r1, #0x70
add r2, sp, #0x4
bl SetMonData
add r0, r4, #0x0
bl CalcMonLevelAndStats
add r0, r7, #0x0
add r1, r4, #0x0
bl Pokedex_SetMonCaughtFlag
_0203EF48:
add r5, r5, #0x1
cmp r5, r6
blt _0203EF18
_0203EF4E:
mov r0, #0x1
add sp, #0x8
pop {r3-r7, pc}
.balign 4
_0203EF54: .word 0x00000182
thumb_func_start ScrCmd_Unk0264
ScrCmd_Unk0264: ; 0x0203EF58
push {r3-r7, lr}
sub sp, #0x30
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
str r0, [sp, #0x0]
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_PlayerParty_Get
str r0, [sp, #0xc]
bl GetPartyCount
add r2, sp, #0x18
mov r4, #0x0
ldr r3, _0203F008 ; =UNK_020F34FC
str r0, [sp, #0x8]
add r7, r2, #0x0
ldmia r3!, {r0-r1}
stmia r2!, {r0-r1}
ldmia r3!, {r0-r1}
stmia r2!, {r0-r1}
ldmia r3!, {r0-r1}
stmia r2!, {r0-r1}
ldr r0, [sp, #0x8]
str r4, [sp, #0x4]
cmp r0, #0x0
ble _0203EFFC
mov r5, #0x1
str r7, [sp, #0x14]
_0203EFA2:
ldr r0, [sp, #0xc]
add r1, r4, #0x0
bl GetPartyMonByIndex
add r6, r0, #0x0
mov r1, #0x5
mov r2, #0x0
bl GetMonData
str r0, [sp, #0x10]
add r0, r6, #0x0
mov r1, #0x70
mov r2, #0x0
bl GetMonData
add r3, r0, #0x0
mov r0, #0x67
ldr r1, [sp, #0x10]
lsl r0, r0, #0x2
cmp r1, r0
bne _0203EFF2
mov r2, #0x0
add r1, r2, #0x0
str r3, [r7, #0x0]
cmp r4, #0x0
ble _0203EFE8
ldr r6, [sp, #0x14]
_0203EFD8:
ldr r0, [r6, #0x0]
cmp r3, r0
bne _0203EFE0
add r2, r5, #0x0
_0203EFE0:
add r1, r1, #0x1
add r6, r6, #0x4
cmp r1, r4
blt _0203EFD8
_0203EFE8:
cmp r2, #0x0
bne _0203EFF2
ldr r0, [sp, #0x4]
add r0, r0, #0x1
str r0, [sp, #0x4]
_0203EFF2:
ldr r0, [sp, #0x8]
add r4, r4, #0x1
add r7, r7, #0x4
cmp r4, r0
blt _0203EFA2
_0203EFFC:
ldr r1, [sp, #0x4]
ldr r0, [sp, #0x0]
strh r1, [r0, #0x0]
mov r0, #0x1
add sp, #0x30
pop {r3-r7, pc}
.balign 4
_0203F008: .word UNK_020F34FC
thumb_func_start ScrCmd_Unk0265
ScrCmd_Unk0265: ; 0x0203F00C
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
bl sub_0205F1C4
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk0266
ScrCmd_Unk0266: ; 0x0203F020
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
bl sub_0205F1D4
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk0267
ScrCmd_Unk0267: ; 0x0203F034
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
ldr r0, [r0, #0x10]
bl sub_020389CC
mov r0, #0x1
pop {r4, pc}
thumb_func_start ScrCmd_Unk0268
ScrCmd_Unk0268: ; 0x0203F058
push {r3-r5, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
bl Script_GetHour
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0269
ScrCmd_Unk0269: ; 0x0203F07C
push {r3-r7, lr}
sub sp, #0x10
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0xc]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x8]
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
add r1, r7, #0x0
ldr r0, [r0, #0x34]
bl sub_02058060
add r7, r0, #0x0
bne _0203F0FA
bl GF_AssertFail
_0203F0FA:
str r6, [sp, #0x0]
str r4, [sp, #0x4]
ldr r0, [r5, #0x74]
ldr r2, [sp, #0xc]
ldr r3, [sp, #0x8]
add r1, r7, #0x0
bl sub_02054F50
mov r0, #0x1
add sp, #0x10
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk026A
ScrCmd_Unk026A: ; 0x0203F110
push {r3-r7, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
add r1, r5, #0x0
ldr r0, [r0, #0x34]
bl sub_02058060
add r5, r0, #0x0
bne _0203F164
bl GF_AssertFail
_0203F164:
ldr r0, [r4, #0x74]
add r1, r5, #0x0
add r2, r7, #0x0
add r3, r6, #0x0
bl sub_0205502C
mov r0, #0x1
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk026B
ScrCmd_Unk026B: ; 0x0203F174
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_02054E30
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk026C
ScrCmd_Unk026C: ; 0x0203F19C
push {r4-r7, lr}
sub sp, #0x24
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
str r0, [sp, #0x0]
ldr r0, [r4, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
mov r6, #0x0
add r7, r0, #0x0
add r4, r6, #0x0
add r5, sp, #0x4
_0203F1CA:
add r1, r4, #0x0
add r0, r7, #0x0
add r1, #0x22
mov r2, #0x1
bl sub_020270D8
cmp r0, #0x1
bne _0203F1E0
mov r0, #0x1
strh r0, [r5, #0x0]
add r6, r6, #0x1
_0203F1E0:
add r4, r4, #0x1
add r5, r5, #0x2
cmp r4, #0x10
blt _0203F1CA
cmp r6, #0x0
bne _0203F1F8
ldr r0, [sp, #0x0]
ldr r1, _0203F230 ; =0x0000FFFF
add sp, #0x24
strh r1, [r0, #0x0]
mov r0, #0x0
pop {r4-r7, pc}
_0203F1F8:
bl LCRandom
add r1, r6, #0x0
bl _s32_div_f
mov r4, #0x0
add r2, sp, #0x4
_0203F206:
ldrh r0, [r2, #0x0]
cmp r0, #0x1
bne _0203F212
cmp r1, #0x0
beq _0203F21A
sub r1, r1, #0x1
_0203F212:
add r4, r4, #0x1
add r2, r2, #0x2
cmp r4, #0x10
blt _0203F206
_0203F21A:
cmp r4, #0x10
blt _0203F222
bl GF_AssertFail
_0203F222:
ldr r0, [sp, #0x0]
add r4, #0x22
strh r4, [r0, #0x0]
mov r0, #0x0
add sp, #0x24
pop {r4-r7, pc}
nop
_0203F230: .word 0x0000FFFF
thumb_func_start ScrCmd_Unk026E
ScrCmd_Unk026E: ; 0x0203F234
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
ldr r1, _0203F250 ; =gSystem + 0x60
ldrb r1, [r1, #0x6]
strh r1, [r0, #0x0]
mov r0, #0x1
pop {r4, pc}
.balign 4
_0203F250: .word gSystem + 0x60
thumb_func_start ScrCmd_Unk026F
ScrCmd_Unk026F: ; 0x0203F254
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
mov r1, #0x0
bl sub_0205F698
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk0270
ScrCmd_Unk0270: ; 0x0203F26C
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
ldr r1, [r5, #0x8]
add r6, r0, #0x0
add r0, r1, #0x1
str r0, [r5, #0x8]
add r5, #0x80
ldr r0, [r5, #0x0]
ldrb r4, [r1, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
cmp r4, #0x0
beq _0203F2A0
add r1, r6, #0x0
bl sub_0205F4E4
b _0203F2A6
_0203F2A0:
add r1, r6, #0x0
bl sub_0205F50C
_0203F2A6:
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0273
ScrCmd_Unk0273: ; 0x0203F2AC
push {r4-r6, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xf
bl FieldSysGetAttrAddr
ldr r1, [r5, #0x8]
add r6, r0, #0x0
add r0, r1, #0x1
str r0, [r5, #0x8]
add r0, r5, #0x0
ldrb r4, [r1, #0x0]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl VarGet
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
bl BufferContestBackgroundName
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
thumb_func_start ScrCmd_Unk0275
ScrCmd_Unk0275: ; 0x0203F2E4
push {r3-r5, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl sub_0205F6C8
cmp r0, #0xa
blo _0203F314
mov r0, #0x1
b _0203F316
_0203F314:
mov r0, #0x0
_0203F316:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0277
ScrCmd_Unk0277: ; 0x0203F31C
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
bl sub_0205F648
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0279
ScrCmd_Unk0279: ; 0x0203F348
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_FashionData_Get
bl sub_0202708C
add r1, r4, #0x0
add r2, r6, #0x0
bl sub_02027210
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk027A
ScrCmd_Unk027A: ; 0x0203F38C
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02046030
mov r0, #0x1
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk027B
ScrCmd_Unk027B: ; 0x0203F39C
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl sub_0205F668
mov r0, #0x0
pop {r3, pc}
thumb_func_start ScrCmd_Unk027D
ScrCmd_Unk027D: ; 0x0203F3AC
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0xf
bl FieldSysGetAttrAddr
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_EasyChat_Get
bl sub_02013B74
cmp r0, #0x20
bne _0203F3FE
ldr r0, _0203F414 ; =0x0000FFFF
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r7, pc}
_0203F3FE:
strh r0, [r4, #0x0]
bl sub_02013BE4
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r7, #0x0
bl BufferECWord
mov r0, #0x0
pop {r3-r7, pc}
nop
_0203F414: .word 0x0000FFFF
thumb_func_start ScrCmd_Unk027F
ScrCmd_Unk027F: ; 0x0203F418
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_EasyChat_Get
bl sub_02013BC8
cmp r0, #0x1
bne _0203F444
mov r0, #0x1
b _0203F446
_0203F444:
mov r0, #0x0
_0203F446:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk027E
ScrCmd_Unk027E: ; 0x0203F44C
push {r3-r5, lr}
add r4, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r5, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
bl sub_0205F710
cmp r0, #0x5
blo _0203F47C
mov r0, #0x1
b _0203F47E
_0203F47C:
mov r0, #0x0
_0203F47E:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk0282
ScrCmd_Unk0282: ; 0x0203F484
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
ldr r5, [r5, #0x0]
add r4, r0, #0x0
ldr r0, [r5, #0xc]
bl Save_SysInfo_Get
add r7, r0, #0x0
bl Save_SysInfo_GetBirthMonth
add r6, r0, #0x0
add r0, r5, #0x0
bl Script_GetMonth
cmp r6, r0
bne _0203F4CE
add r0, r7, #0x0
bl Save_SysInfo_GetBirthDay
add r6, r0, #0x0
add r0, r5, #0x0
bl Script_GetDay
cmp r6, r0
bne _0203F4CE
mov r0, #0x1
strh r0, [r4, #0x0]
b _0203F4D2
_0203F4CE:
mov r0, #0x0
strh r0, [r4, #0x0]
_0203F4D2:
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
thumb_func_start ScrCmd_Unk0284
ScrCmd_Unk0284: ; 0x0203F4D8
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_Pokedex_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl Pokedex_CountSeenUnown
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0285
ScrCmd_Unk0285: ; 0x0203F508
push {r3-r7, lr}
add r6, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r6, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r7, r0, #0x0
add r0, r6, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r6, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r1, r6, #0x0
add r1, #0x80
ldr r1, [r1, #0x0]
ldr r2, [r1, #0x1c]
ldr r1, [r2, #0x8]
lsl r1, r1, #0x10
lsr r5, r1, #0x10
ldr r1, [r2, #0xc]
lsl r1, r1, #0x10
lsr r4, r1, #0x10
cmp r7, #0x3
blo _0203F54C
ldr r7, _0203F5C8 ; =0x0000010E
b _0203F582
_0203F54C:
cmp r0, #0x1e
blo _0203F556
mov r7, #0x43
lsl r7, r7, #0x2
b _0203F582
_0203F556:
bl LCRandom
mov r1, #0x64
bl _s32_div_f
cmp r1, #0x19
bge _0203F568
ldr r7, _0203F5CC ; =0x0000010D
b _0203F582
_0203F568:
bl LCRandom
mov r1, #0x6
bl _s32_div_f
lsl r0, r1, #0x10
lsr r1, r0, #0x10
mov r0, #0x6
mul r0, r7
add r0, r1, r0
lsl r1, r0, #0x1
ldr r0, _0203F5D0 ; =UNK_020F3538
ldrh r7, [r0, r1]
_0203F582:
cmp r5, #0xb
bne _0203F59A
cmp r4, #0x1
bne _0203F58E
mov r4, #0x0
b _0203F5A4
_0203F58E:
cmp r4, #0x14
bne _0203F596
mov r4, #0x2
b _0203F5A4
_0203F596:
mov r4, #0x5
b _0203F5A4
_0203F59A:
cmp r5, #0x14
bne _0203F5A2
mov r4, #0x1
b _0203F5A4
_0203F5A2:
mov r4, #0x3
_0203F5A4:
mov r5, #0x0
_0203F5A6:
cmp r5, r4
beq _0203F5B8
add r0, r6, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
add r1, r5, #0x0
add r2, r7, #0x0
bl sub_02034C24
_0203F5B8:
add r0, r5, #0x1
lsl r0, r0, #0x18
lsr r5, r0, #0x18
cmp r5, #0x4
blo _0203F5A6
mov r0, #0x0
pop {r3-r7, pc}
nop
_0203F5C8: .word 0x0000010E
_0203F5CC: .word 0x0000010D
_0203F5D0: .word UNK_020F3538
thumb_func_start ScrCmd_Unk0286
ScrCmd_Unk0286: ; 0x0203F5D4
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_0205F720
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0287
ScrCmd_Unk0287: ; 0x0203F604
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_0205F740
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0288
ScrCmd_Unk0288: ; 0x0203F634
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_0205F760
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0289
ScrCmd_Unk0289: ; 0x0203F664
push {r3-r7, lr}
sub sp, #0x8
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, r0, #0x0
add r0, r5, #0x0
mov r2, #0x0
add r3, sp, #0x0
add r0, #0x8
_0203F684:
ldr r6, [r0, #0x0]
ldr r1, [r5, #0x8]
add r6, r6, #0x1
str r6, [r0, #0x0]
ldrb r1, [r1, #0x0]
add r2, r2, #0x1
strb r1, [r3, #0x0]
add r3, r3, #0x1
cmp r2, #0x5
blt _0203F684
ldr r1, [r0, #0x0]
ldr r2, [r5, #0x8]
add r1, r1, #0x1
str r1, [r0, #0x0]
ldrb r6, [r2, #0x0]
mov r0, #0x4
bl sub_02027E5C
add r1, sp, #0x0
add r2, r6, #0x0
mov r3, #0x0
add r7, r0, #0x0
bl sub_02027F04
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_02028048
add r1, r7, #0x0
bl sub_02028094
add r5, r0, #0x0
add r0, r7, #0x0
bl FreeToHeap
ldr r0, _0203F6E0 ; =0x0000FFFF
cmp r5, r0
bne _0203F6D8
strh r0, [r4, #0x0]
b _0203F6DA
_0203F6D8:
strh r6, [r4, #0x0]
_0203F6DA:
mov r0, #0x0
add sp, #0x8
pop {r3-r7, pc}
.balign 4
_0203F6E0: .word 0x0000FFFF
thumb_func_start ScrCmd_Unk028A
ScrCmd_Unk028A: ; 0x0203F6E4
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_02028048
bl sub_02028074
ldr r1, _0203F71C ; =0x0000FFFF
cmp r0, r1
bne _0203F712
mov r0, #0x0
b _0203F714
_0203F712:
mov r0, #0x1
_0203F714:
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
nop
_0203F71C: .word 0x0000FFFF
thumb_func_start ScrCmd_Unk028B
ScrCmd_Unk028B: ; 0x0203F720
push {r4-r6, lr}
add r5, r0, #0x0
ldr r2, [r5, #0x8]
add r1, r2, #0x1
str r1, [r5, #0x8]
ldrb r4, [r2, #0x0]
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r6, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r5, r0, #0x0
cmp r4, #0x3
bls _0203F752
bl GF_AssertFail
_0203F752:
add r0, r5, #0x0
add r1, r4, #0x0
bl sub_0205F4A0
strh r0, [r6, #0x0]
mov r0, #0x0
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk028F
ScrCmd_Unk028F: ; 0x0203F760
push {r3-r5, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
mov r1, #0x20
ldr r0, [r0, #0xc]
add r2, sp, #0x0
bl LoadHallOfFame
ldr r1, [sp, #0x0]
add r4, r0, #0x0
cmp r1, #0x0
bne _0203F798
mov r1, #0x0
strh r1, [r5, #0x0]
bl FreeToHeap
mov r0, #0x1
pop {r3-r5, pc}
_0203F798:
cmp r1, #0x1
bne _0203F7AE
mov r1, #0x0
bl Save_HOF_TranslateRecordIdx
strh r0, [r5, #0x0]
add r0, r4, #0x0
bl FreeToHeap
mov r0, #0x1
pop {r3-r5, pc}
_0203F7AE:
cmp r1, #0x2
bne _0203F7BE
mov r1, #0x0
strh r1, [r5, #0x0]
bl FreeToHeap
mov r0, #0x1
pop {r3-r5, pc}
_0203F7BE:
mov r0, #0x0
strh r0, [r5, #0x0]
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0290
ScrCmd_Unk0290: ; 0x0203F7C8
push {r4-r6, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
mov r1, #0x13
bl FieldSysGetAttrAddr
add r1, r5, #0x0
add r1, #0x80
add r4, r0, #0x0
ldr r1, [r1, #0x0]
mov r0, #0x20
add r2, r6, #0x0
bl sub_02037A48
str r0, [r4, #0x0]
ldr r1, _0203F808 ; =sub_0203BC04
add r0, r5, #0x0
bl SetupNativeScript
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
_0203F808: .word sub_0203BC04
thumb_func_start ScrCmd_Unk0291
ScrCmd_Unk0291: ; 0x0203F80C
push {r4-r6, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r4, #0x80
add r5, r0, #0x0
ldr r0, [r4, #0x0]
mov r1, #0x13
bl FieldSysGetAttrAddr
add r4, r0, #0x0
ldr r0, [r4, #0x0]
cmp r0, #0x0
bne _0203F84C
bl GF_AssertFail
_0203F84C:
ldr r0, [r4, #0x0]
bl sub_02037A40
strh r0, [r6, #0x0]
ldrh r0, [r6, #0x0]
cmp r0, #0x7
bne _0203F85E
mov r0, #0xff
strh r0, [r6, #0x0]
_0203F85E:
ldr r0, [r4, #0x0]
bl sub_02037A70
strh r0, [r5, #0x0]
ldrh r0, [r5, #0x0]
cmp r0, #0x1
bne _0203F870
mov r0, #0x1
b _0203F872
_0203F870:
mov r0, #0x0
_0203F872:
strh r0, [r5, #0x0]
ldr r0, [r4, #0x0]
bl FreeToHeap
mov r0, #0x0
str r0, [r4, #0x0]
pop {r4-r6, pc}
thumb_func_start ScrCmd_Unk0292
ScrCmd_Unk0292: ; 0x0203F880
push {r3-r5, lr}
add r5, r0, #0x0
ldr r2, [r5, #0x8]
add r1, r2, #0x1
str r1, [r5, #0x8]
ldrb r4, [r2, #0x0]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
cmp r4, #0x64
bls _0203F8A2
mov r4, #0x64
_0203F8A2:
bl LCRandom
mov r1, #0x65
bl _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
cmp r0, r4
bgt _0203F8B8
mov r0, #0x1
b _0203F8BA
_0203F8B8:
mov r0, #0x0
_0203F8BA:
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk029E
ScrCmd_Unk029E: ; 0x0203F8C0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
cmp r4, #0x0
beq _0203F8FC
cmp r4, #0x1
beq _0203F906
cmp r4, #0x2
beq _0203F910
b _0203F91A
_0203F8FC:
mov r2, #0x0
mov r3, #0x20
bl ov06_0224F12C
b _0203F91E
_0203F906:
mov r2, #0x1
mov r3, #0x20
bl ov06_0224F12C
b _0203F91E
_0203F910:
mov r2, #0x2
mov r3, #0x20
bl ov06_0224F12C
b _0203F91E
_0203F91A:
bl GF_AssertFail
_0203F91E:
mov r0, #0x1
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk0293
ScrCmd_Unk0293: ; 0x0203F924
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl SaveArray_Flags_Get
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_0205F6A8
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk029F
ScrCmd_Unk029F: ; 0x0203F954
push {r4, lr}
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
cmp r0, #0x0
bne _0203F978
add r4, #0x80
ldr r0, [r4, #0x0]
ldr r0, [r0, #0x10]
bl ov06_02239944
b _0203F982
_0203F978:
add r4, #0x80
ldr r0, [r4, #0x0]
ldr r0, [r0, #0x10]
bl ov06_02239AAC
_0203F982:
mov r0, #0x1
pop {r4, pc}
.balign 4
thumb_func_start ScrCmd_Unk02A3
ScrCmd_Unk02A3: ; 0x0203F988
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_0203384C
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02A4
ScrCmd_Unk02A4: ; 0x0203F9B0
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_020286EC
bl sub_02028448
strh r0, [r4, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02A2
ScrCmd_Unk02A2: ; 0x0203F9DC
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r4, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl sub_02026CC4
ldr r1, _0203FA10 ; =0x0000FF79
add r1, r4, r1
lsl r1, r1, #0x10
lsr r1, r1, #0x10
cmp r1, #0x1
bhi _0203FA0C
bl sub_02025C30
_0203FA0C:
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
_0203FA10: .word 0x0000FF79
thumb_func_start ScrCmd_Unk02A7
ScrCmd_Unk02A7: ; 0x0203FA14
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
mov r1, #0x0
strh r1, [r0, #0x0]
ldr r1, _0203FA54 ; =0x0000012A
cmp r4, r1
blo _0203FA4E
add r1, #0xf
cmp r4, r1
bhi _0203FA4E
mov r1, #0x1
strh r1, [r0, #0x0]
_0203FA4E:
mov r0, #0x0
pop {r3-r5, pc}
nop
_0203FA54: .word 0x0000012A
thumb_func_start ScrCmd_Unk02AA
ScrCmd_Unk02AA: ; 0x0203FA58
push {r3-r7, lr}
sub sp, #0x10
add r4, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl GetVarPointer
add r6, r0, #0x0
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x4]
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0x8]
add r0, r4, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r4, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
str r0, [sp, #0xc]
add r0, r4, #0x0
bl ScriptReadHalfword
add r4, #0x80
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl VarGet
add r7, r0, #0x0
mov r0, #0x20
bl MessageFormat_New
add r4, r0, #0x0
ldr r2, _0203FB48 ; =0x00000147
mov r0, #0x0
mov r1, #0x1a
mov r3, #0x20
bl NewMsgDataFromNarc
add r5, r0, #0x0
ldr r2, [sp, #0x4]
add r0, r4, #0x0
mov r1, #0x0
bl BufferECWord
ldr r2, [sp, #0x8]
add r0, r4, #0x0
mov r1, #0x1
bl BufferECWord
ldr r2, [sp, #0xc]
add r0, r4, #0x0
mov r1, #0x2
bl BufferECWord
add r0, r4, #0x0
mov r1, #0x3
add r2, r7, #0x0
bl BufferECWord
add r0, r4, #0x0
add r1, r5, #0x0
mov r2, #0x1
mov r3, #0x20
bl ReadMsgData_ExpandPlaceholders
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x0
bl NewString_ReadMsgData
str r0, [sp, #0x0]
ldr r1, [sp, #0x0]
add r0, r7, #0x0
bl StringCompare
cmp r0, #0x0
bne _0203FB24
mov r0, #0x1
b _0203FB26
_0203FB24:
mov r0, #0x0
_0203FB26:
strh r0, [r6, #0x0]
add r0, r7, #0x0
bl String_Delete
ldr r0, [sp, #0x0]
bl String_Delete
add r0, r5, #0x0
bl DestroyMsgData
add r0, r4, #0x0
bl MessageFormat_Delete
mov r0, #0x0
add sp, #0x10
pop {r3-r7, pc}
nop
_0203FB48: .word 0x00000147
thumb_func_start ScrCmd_Unk02AC
ScrCmd_Unk02AC: ; 0x0203FB4C
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r0, [r0, #0xc]
bl Save_SysInfo_Get
mov r1, #0x1
bl sub_02023828
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk02AF
ScrCmd_Unk02AF: ; 0x0203FB64
push {r3-r5, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
mov r1, #0xf
bl FieldSysGetAttrAddr
ldr r0, [r0, #0x0]
bl sub_0205296C
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02B0
ScrCmd_Unk02B0: ; 0x0203FB94
push {r3, lr}
bl sub_02033E74
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk02B1
ScrCmd_Unk02B1: ; 0x0203FBA0
push {r3, lr}
bl sub_02033ED0
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk02B2
ScrCmd_Unk02B2: ; 0x0203FBAC
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0x0]
bl sub_02034E48
mov r0, #0x0
pop {r3, pc}
.balign 4
thumb_func_start ScrCmd_Unk02B5
ScrCmd_Unk02B5: ; 0x0203FBBC
push {r3-r7, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r4, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r6, r0, #0x0
add r0, r5, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
add r5, #0x80
add r7, r0, #0x0
ldr r0, [r5, #0x0]
ldr r0, [r0, #0xc]
bl Save_LocalFieldData_Get
bl sub_02034DCC
str r4, [r0, #0x0]
str r6, [r0, #0x8]
mov r1, #0x0
str r7, [r0, #0xc]
mvn r1, r1
str r1, [r0, #0x4]
mov r1, #0x1
str r1, [r0, #0x10]
mov r0, #0x0
pop {r3-r7, pc}
thumb_func_start ScrCmd_Unk02B6
ScrCmd_Unk02B6: ; 0x0203FC1C
push {r3-r5, lr}
add r5, r0, #0x0
bl ScriptReadHalfword
add r1, r0, #0x0
add r0, r5, #0x0
add r0, #0x80
ldr r0, [r0, #0x0]
bl VarGet
ldr r2, [r5, #0x8]
add r1, r0, #0x0
add r0, r2, #0x1
str r0, [r5, #0x8]
add r5, #0x80
ldr r0, [r5, #0x0]
ldrb r4, [r2, #0x0]
ldr r0, [r0, #0x34]
bl sub_02058060
add r5, r0, #0x0
bne _0203FC4C
bl GF_AssertFail
_0203FC4C:
add r0, r5, #0x0
add r1, r4, #0x0
bl sub_020588B8
mov r0, #0x0
pop {r3-r5, pc}
thumb_func_start ScrCmd_Unk02BE
ScrCmd_Unk02BE: ; 0x0203FC58
push {r3-r5, lr}
add r5, r0, #0x0
add r1, r5, #0x0
add r1, #0x80
ldr r4, [r1, #0x0]
bl ScriptReadHalfword
add r5, #0x80
add r1, r0, #0x0
ldr r0, [r5, #0x0]
bl GetVarPointer
add r5, r0, #0x0
add r0, r4, #0x0
bl sub_02065078
strh r0, [r5, #0x0]
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02C1
ScrCmd_Unk02C1: ; 0x0203FC80
push {r3-r5, lr}
add r0, #0x80
ldr r5, [r0, #0x0]
mov r1, #0x28
add r0, r5, #0x0
bl FieldSysGetAttrAddr
add r4, r0, #0x0
ldr r0, [r5, #0xc]
bl Save_FileDoesNotBelongToPlayer
cmp r0, #0x0
bne _0203FCAA
add r0, r5, #0x0
mov r1, #0x4
mov r2, #0x3
bl ov05_021E8588
str r0, [r4, #0x0]
bl ov05_021E84F4
_0203FCAA:
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02C2
ScrCmd_Unk02C2: ; 0x0203FCB0
push {r3-r5, lr}
add r0, #0x80
ldr r5, [r0, #0x0]
mov r1, #0x28
add r0, r5, #0x0
bl FieldSysGetAttrAddr
add r4, r0, #0x0
ldr r0, [r5, #0xc]
bl Save_FileDoesNotBelongToPlayer
cmp r0, #0x0
bne _0203FCD6
ldr r0, [r4, #0x0]
bl ov05_021E856C
ldr r0, [r4, #0x0]
bl ov05_021E85E4
_0203FCD6:
mov r0, #0x0
pop {r3-r5, pc}
.balign 4
thumb_func_start ScrCmd_Unk02C3
ScrCmd_Unk02C3: ; 0x0203FCDC
push {r3, lr}
ldr r2, [r0, #0x8]
add r1, r2, #0x1
str r1, [r0, #0x8]
add r0, #0x80
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
bl sub_0206367C
mov r0, #0x0
pop {r3, pc}
.balign 4