pokediamond/arm9/asm/unk_02073DA8.s

2879 lines
54 KiB
ArmAsm

.include "asm/macros.inc"
.include "global.inc"
.extern gSystem
.section .rodata
.global UNK_020F9CAC
UNK_020F9CAC: ; 0x020F9CAC
.word sub_02074480, sub_020750C4, sub_02073DF4, sub_02073EB8
.word sub_02073EEC, sub_020740AC, sub_02074170, sub_020741A4
.word sub_020743AC, 0xFFFFFFFE, 0xFFFFFFFE, sub_02074E74
.word sub_02074FAC, sub_02075090, sub_020750F8, sub_02075244
.word sub_020752D4, sub_0207528C, sub_02075274, sub_020752A4
.word sub_0207525C, sub_020752EC, sub_020752BC, sub_02075304
.word sub_0207531C, sub_02075334, sub_0207534C, sub_02075364
.word sub_0207537C, sub_02075398, 0xFFFFFFFE
.text
thumb_func_start sub_02073DA8
sub_02073DA8: ; 0x02073DA8
lsl r1, r0, #0x2
ldr r0, _02073DB0 ; =UNK_020F9CAC
ldr r0, [r0, r1]
bx lr
.balign 4
_02073DB0: .word UNK_020F9CAC
thumb_func_start sub_02073DB4
sub_02073DB4: ; 0x02073DB4
push {r4, lr}
add r4, r0, #0x0
mov r0, #0x95
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow1
mov r0, #0x95
lsl r0, r0, #0x2
add r0, r4, r0
bl ClearWindowTilemapAndScheduleTransfer
ldr r0, _02073DEC ; =0x000006FC
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_02001C5C
ldr r0, _02073DF0 ; =0x000006F8
ldr r0, [r4, r0]
bl ListMenuItems_Delete
mov r0, #0x95
lsl r0, r0, #0x2
add r0, r4, r0
bl RemoveWindow
pop {r4, pc}
.balign 4
_02073DEC: .word 0x000006FC
_02073DF0: .word 0x000006F8
thumb_func_start sub_02073DF4
sub_02073DF4: ; 0x02073DF4
push {r3-r6, lr}
sub sp, #0x14
add r5, r0, #0x0
add r4, r1, #0x0
bl sub_02073DB4
add r0, r5, #0x0
mov r1, #0x26
mov r2, #0x0
bl sub_020731D4
mov r0, #0x3
mov r1, #0xc
bl ListMenuItems_New
ldr r1, _02073EB0 ; =0x000006F8
str r0, [r5, r1]
mov r0, #0x3
bl sub_02073DA8
ldr r1, _02073EB0 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x40
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
mov r0, #0x4
bl sub_02073DA8
ldr r1, _02073EB0 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x3c
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
mov r0, #0x9
bl sub_02073DA8
ldr r1, _02073EB0 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x28
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
ldr r0, _02073EB0 ; =0x000006F8
mov r1, #0x0
ldr r0, [r5, r0]
add r2, sp, #0x8
str r0, [sp, #0x8]
mov r0, #0x8d
lsl r0, r0, #0x2
add r0, r5, r0
str r0, [sp, #0xc]
strb r1, [r2, #0x8]
mov r1, #0x1
strb r1, [r2, #0x9]
mov r3, #0x3
strb r3, [r2, #0xa]
ldrb r6, [r2, #0xb]
mov r3, #0xf
bic r6, r3
strb r6, [r2, #0xb]
ldrb r6, [r2, #0xb]
mov r3, #0x30
bic r6, r3
strb r6, [r2, #0xb]
ldrb r6, [r2, #0xb]
mov r3, #0xc0
bic r6, r3
strb r6, [r2, #0xb]
add r2, r1, #0x0
mov r3, #0xe
bl DrawFrameAndWindow1
mov r0, #0xc
str r0, [sp, #0x0]
mov r0, #0x2
mov r2, #0x0
str r0, [sp, #0x4]
add r0, sp, #0x8
mov r1, #0x8
add r3, r2, #0x0
bl sub_02001C14
ldr r1, _02073EB4 ; =0x000006FC
str r0, [r5, r1]
mov r0, #0xd
str r0, [r4, #0x0]
add sp, #0x14
pop {r3-r6, pc}
nop
_02073EB0: .word 0x000006F8
_02073EB4: .word 0x000006FC
thumb_func_start sub_02073EB8
sub_02073EB8: ; 0x02073EB8
push {r3-r5, lr}
add r5, r0, #0x0
ldr r0, _02073EE0 ; =0x000006FC
add r4, r1, #0x0
ldr r0, [r5, r0]
mov r1, #0x0
bl sub_02001C5C
ldr r0, _02073EE4 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
ldr r0, _02073EE8 ; =0x000005A4
mov r1, #0x3
ldr r0, [r5, r0]
add r0, #0x23
strb r1, [r0, #0x0]
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
.balign 4
_02073EE0: .word 0x000006FC
_02073EE4: .word 0x000006F8
_02073EE8: .word 0x000005A4
thumb_func_start sub_02073EEC
sub_02073EEC: ; 0x02073EEC
push {r3-r6, lr}
sub sp, #0x4
add r5, r0, #0x0
mov r0, #0x8d
lsl r0, r0, #0x2
add r4, r1, #0x0
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow1
ldr r0, _02074044 ; =0x000006FC
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_02001C5C
ldr r0, _02074048 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
ldr r0, _0207404C ; =0x00000B25
ldrb r1, [r5, r0]
mov r0, #0x2c
mul r0, r1
add r2, r5, r0
ldr r0, _02074050 ; =0x0000070C
ldrh r2, [r2, r0]
ldr r0, _02074054 ; =0x000005A4
cmp r2, #0x0
bne _02073F66
ldr r0, [r5, r0]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
ldr r2, _02074058 ; =0x0000069C
add r6, r0, #0x0
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
mov r1, #0x51
bl ReadMsgDataIntoString
add r0, r6, #0x0
bl sub_020690E4
add r2, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
ldr r0, [r5, r2]
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
bl StringExpandPlaceholders
b _02074018
_02073F66:
ldr r0, [r5, r0]
add r1, r2, #0x0
ldr r0, [r0, #0x4]
mov r2, #0x1
mov r3, #0xc
bl Bag_AddItem
cmp r0, #0x1
bne _0207400A
ldr r0, _02074054 ; =0x000005A4
ldr r1, _0207404C ; =0x00000B25
ldr r0, [r5, r0]
ldrb r1, [r5, r1]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
mov r1, #0x0
str r1, [sp, #0x0]
add r6, r0, #0x0
mov r1, #0x6
add r2, sp, #0x0
bl SetMonData
add r0, r6, #0x0
bl Pokemon_UpdateArceusForm
ldr r2, _02074058 ; =0x0000069C
mov r1, #0x52
ldr r0, [r5, r2]
add r2, #0xc
ldr r2, [r5, r2]
bl ReadMsgDataIntoString
add r0, r6, #0x0
bl sub_020690E4
add r2, r0, #0x0
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
bl BufferBoxMonNickname
ldr r2, _0207404C ; =0x00000B25
mov r3, #0x6a
ldrb r6, [r5, r2]
mov r2, #0x2c
lsl r3, r3, #0x4
mul r2, r6
ldr r0, [r5, r3]
add r2, r5, r2
add r3, #0x6c
ldrh r2, [r2, r3]
mov r1, #0x1
bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
ldr r0, [r5, r2]
add r2, #0x8
ldr r1, [r5, r1]
ldr r2, [r5, r2]
bl StringExpandPlaceholders
ldr r1, _0207404C ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r5, r1]
mov r0, #0x0
add r6, r3, #0x0
mul r6, r2
ldr r3, _02074050 ; =0x0000070C
add r6, r5, r6
strh r0, [r6, r3]
ldrb r1, [r5, r1]
add r0, r5, #0x0
mul r2, r1
add r2, r5, r2
ldrh r2, [r2, r3]
bl sub_02073A78
b _02074018
_0207400A:
ldr r2, _02074058 ; =0x0000069C
mov r1, #0x53
ldr r0, [r5, r2]
add r2, #0x8
ldr r2, [r5, r2]
bl ReadMsgDataIntoString
_02074018:
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x1
mov r2, #0xa
mov r3, #0xf
bl DrawFrameAndWindow2
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xf
bl FillWindowPixelBuffer
add r0, r5, #0x0
bl sub_0207322C
mov r0, #0xf
str r0, [r4, #0x0]
add sp, #0x4
pop {r3-r6, pc}
nop
_02074044: .word 0x000006FC
_02074048: .word 0x000006F8
_0207404C: .word 0x00000B25
_02074050: .word 0x0000070C
_02074054: .word 0x000005A4
_02074058: .word 0x0000069C
thumb_func_start sub_0207405C
sub_0207405C: ; 0x0207405C
push {r4, lr}
add r4, r0, #0x0
ldr r0, _020740A0 ; =0x00000B24
ldrb r0, [r4, r0]
bl sub_0201BD70
cmp r0, #0x0
bne _0207409A
ldr r0, _020740A4 ; =gSystem
ldr r1, [r0, #0x48]
mov r0, #0x3
tst r0, r1
beq _0207409A
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _020740A8 ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
pop {r4, pc}
_0207409A:
mov r0, #0xf
pop {r4, pc}
nop
_020740A0: .word 0x00000B24
_020740A4: .word gSystem
_020740A8: .word 0x000005C8
thumb_func_start sub_020740AC
sub_020740AC: ; 0x020740AC
push {r3-r6, lr}
sub sp, #0x14
add r5, r0, #0x0
add r4, r1, #0x0
bl sub_02073DB4
add r0, r5, #0x0
mov r1, #0x27
mov r2, #0x0
bl sub_020731D4
mov r0, #0x3
mov r1, #0xc
bl ListMenuItems_New
ldr r1, _02074168 ; =0x000006F8
str r0, [r5, r1]
mov r0, #0x6
bl sub_02073DA8
ldr r1, _02074168 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x34
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
mov r0, #0x7
bl sub_02073DA8
ldr r1, _02074168 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x30
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
mov r0, #0x9
bl sub_02073DA8
ldr r1, _02074168 ; =0x000006F8
add r2, r0, #0x0
ldr r0, [r5, r1]
sub r1, #0x28
ldr r1, [r5, r1]
bl ListMenuItems_AddItem
ldr r0, _02074168 ; =0x000006F8
mov r1, #0x0
ldr r0, [r5, r0]
add r2, sp, #0x8
str r0, [sp, #0x8]
mov r0, #0x8d
lsl r0, r0, #0x2
add r0, r5, r0
str r0, [sp, #0xc]
strb r1, [r2, #0x8]
mov r1, #0x1
strb r1, [r2, #0x9]
mov r3, #0x3
strb r3, [r2, #0xa]
ldrb r6, [r2, #0xb]
mov r3, #0xf
bic r6, r3
strb r6, [r2, #0xb]
ldrb r6, [r2, #0xb]
mov r3, #0x30
bic r6, r3
strb r6, [r2, #0xb]
ldrb r6, [r2, #0xb]
mov r3, #0xc0
bic r6, r3
strb r6, [r2, #0xb]
add r2, r1, #0x0
mov r3, #0xe
bl DrawFrameAndWindow1
mov r0, #0xc
str r0, [sp, #0x0]
mov r0, #0x2
mov r2, #0x0
str r0, [sp, #0x4]
add r0, sp, #0x8
mov r1, #0x8
add r3, r2, #0x0
bl sub_02001C14
ldr r1, _0207416C ; =0x000006FC
str r0, [r5, r1]
mov r0, #0xd
str r0, [r4, #0x0]
add sp, #0x14
pop {r3-r6, pc}
nop
_02074168: .word 0x000006F8
_0207416C: .word 0x000006FC
thumb_func_start sub_02074170
sub_02074170: ; 0x02074170
push {r3-r5, lr}
add r5, r0, #0x0
ldr r0, _02074198 ; =0x000006FC
add r4, r1, #0x0
ldr r0, [r5, r0]
mov r1, #0x0
bl sub_02001C5C
ldr r0, _0207419C ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
ldr r0, _020741A0 ; =0x000005A4
mov r1, #0x7
ldr r0, [r5, r0]
add r0, #0x23
strb r1, [r0, #0x0]
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
.balign 4
_02074198: .word 0x000006FC
_0207419C: .word 0x000006F8
_020741A0: .word 0x000005A4
thumb_func_start sub_020741A4
sub_020741A4: ; 0x020741A4
push {r3-r5, lr}
add r5, r0, #0x0
mov r0, #0x8d
lsl r0, r0, #0x2
add r4, r1, #0x0
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow1
ldr r0, _020741EC ; =0x000006FC
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_02001C5C
ldr r0, _020741F0 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
add r0, r5, #0x0
mov r1, #0x2b
mov r2, #0x1
bl sub_020731E8
ldr r0, _020741F4 ; =sub_02074200
ldr r1, _020741F8 ; =0x00000B18
ldr r2, _020741FC ; =sub_02074278
str r0, [r5, r1]
add r0, r1, #0x4
str r2, [r5, r0]
mov r0, #0x16
add r1, #0xa
strb r0, [r5, r1]
mov r0, #0x14
str r0, [r4, #0x0]
pop {r3-r5, pc}
nop
_020741EC: .word 0x000006FC
_020741F0: .word 0x000006F8
_020741F4: .word sub_02074200
_020741F8: .word 0x00000B18
_020741FC: .word sub_02074278
thumb_func_start sub_02074200
sub_02074200: ; 0x02074200
push {r3-r5, lr}
add r4, r0, #0x0
ldr r0, _02074268 ; =0x000005A4
ldr r1, _0207426C ; =0x00000B25
ldr r0, [r4, r0]
ldrb r1, [r4, r1]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
add r1, r0, #0x0
ldr r0, _02074268 ; =0x000005A4
mov r2, #0xc
ldr r0, [r4, r0]
ldr r0, [r0, #0x8]
bl sub_02085644
mov r1, #0x0
mvn r1, r1
cmp r0, r1
beq _02074254
ldr r1, _0207426C ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r4, r1]
mov r0, #0x0
add r5, r3, #0x0
mul r5, r2
ldr r3, _02074270 ; =0x0000070C
add r5, r4, r5
strh r0, [r5, r3]
ldrb r1, [r4, r1]
add r0, r4, #0x0
mul r2, r1
add r2, r4, r2
ldrh r2, [r2, r3]
bl sub_02073A78
add r0, r4, #0x0
mov r1, #0x2e
mov r2, #0x0
bl sub_020731E8
b _0207425E
_02074254:
add r0, r4, #0x0
mov r1, #0x32
mov r2, #0x0
bl sub_020731E8
_0207425E:
ldr r0, _02074274 ; =0x00000B22
mov r1, #0x10
strb r1, [r4, r0]
mov r0, #0x14
pop {r3-r5, pc}
.balign 4
_02074268: .word 0x000005A4
_0207426C: .word 0x00000B25
_02074270: .word 0x0000070C
_02074274: .word 0x00000B22
thumb_func_start sub_02074278
sub_02074278: ; 0x02074278
push {r4, lr}
mov r1, #0x2f
mov r2, #0x0
add r4, r0, #0x0
bl sub_020731E8
ldr r0, _0207429C ; =sub_020742A8
ldr r1, _020742A0 ; =0x00000B18
ldr r2, _020742A4 ; =sub_02074340
str r0, [r4, r1]
add r0, r1, #0x4
str r2, [r4, r0]
mov r0, #0x16
add r1, #0xa
strb r0, [r4, r1]
mov r0, #0x14
pop {r4, pc}
nop
_0207429C: .word sub_020742A8
_020742A0: .word 0x00000B18
_020742A4: .word sub_02074340
thumb_func_start sub_020742A8
sub_020742A8: ; 0x020742A8
push {r3-r5, lr}
ldr r1, _02074330 ; =0x00000B25
add r4, r0, #0x0
ldrb r2, [r4, r1]
mov r1, #0x2c
ldr r0, _02074334 ; =0x000005A4
mul r1, r2
add r2, r4, r1
ldr r1, _02074338 ; =0x0000070C
ldr r0, [r4, r0]
ldrh r1, [r2, r1]
ldr r0, [r0, #0x4]
mov r2, #0x1
mov r3, #0xc
bl Bag_AddItem
cmp r0, #0x1
bne _0207431A
ldr r0, _02074334 ; =0x000005A4
ldr r1, _02074330 ; =0x00000B25
ldr r0, [r4, r0]
ldrb r1, [r4, r1]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
mov r1, #0x0
str r1, [sp, #0x0]
add r5, r0, #0x0
mov r1, #0x6
add r2, sp, #0x0
bl SetMonData
add r0, r5, #0x0
bl Pokemon_UpdateArceusForm
ldr r1, _02074330 ; =0x00000B25
mov r2, #0x2c
ldrb r3, [r4, r1]
mov r0, #0x0
add r5, r3, #0x0
mul r5, r2
ldr r3, _02074338 ; =0x0000070C
add r5, r4, r5
strh r0, [r5, r3]
ldrb r1, [r4, r1]
add r0, r4, #0x0
mul r2, r1
add r2, r4, r2
ldrh r2, [r2, r3]
bl sub_02073A78
add r0, r4, #0x0
mov r1, #0x33
mov r2, #0x0
bl sub_020731E8
b _02074324
_0207431A:
add r0, r4, #0x0
mov r1, #0x53
mov r2, #0x0
bl sub_020731E8
_02074324:
ldr r0, _0207433C ; =0x00000B22
mov r1, #0x10
strb r1, [r4, r0]
mov r0, #0x14
pop {r3-r5, pc}
nop
_02074330: .word 0x00000B25
_02074334: .word 0x000005A4
_02074338: .word 0x0000070C
_0207433C: .word 0x00000B22
thumb_func_start sub_02074340
sub_02074340: ; 0x02074340
push {r4, lr}
add r4, r0, #0x0
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _02074368 ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
pop {r4, pc}
.balign 4
_02074368: .word 0x000005C8
thumb_func_start sub_0207436C
sub_0207436C: ; 0x0207436C
push {r4, lr}
add r4, r0, #0x0
ldr r0, _020743A4 ; =gSystem
ldr r1, [r0, #0x48]
mov r0, #0x3
tst r0, r1
beq _0207439E
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _020743A8 ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
pop {r4, pc}
_0207439E:
mov r0, #0x10
pop {r4, pc}
nop
_020743A4: .word gSystem
_020743A8: .word 0x000005C8
thumb_func_start sub_020743AC
sub_020743AC: ; 0x020743AC
push {r3-r5, lr}
add r4, r1, #0x0
ldr r1, _0207440C ; =0x00000B25
add r5, r0, #0x0
ldrb r2, [r5, r1]
mov r1, #0x2c
mul r1, r2
add r2, r5, r1
ldr r1, _02074410 ; =0x00000712
ldrh r2, [r2, r1]
cmp r2, #0x0
bne _020743E6
sub r1, #0x16
ldr r0, [r5, r1]
mov r1, #0x0
bl sub_02001C5C
ldr r0, _02074414 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
ldr r0, _02074418 ; =0x000005A4
mov r1, #0x0
ldr r0, [r5, r0]
add r0, #0x23
strb r1, [r0, #0x0]
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
_020743E6:
bl sub_02073DB4
add r0, r5, #0x0
mov r1, #0xc3
mov r2, #0x1
bl sub_020731E8
ldr r0, _0207441C ; =sub_02074428
ldr r1, _02074420 ; =0x00000B18
ldr r2, _02074424 ; =sub_02074454
str r0, [r5, r1]
add r0, r1, #0x4
str r2, [r5, r0]
mov r0, #0x16
add r1, #0xa
strb r0, [r5, r1]
mov r0, #0x14
str r0, [r4, #0x0]
pop {r3-r5, pc}
.balign 4
_0207440C: .word 0x00000B25
_02074410: .word 0x00000712
_02074414: .word 0x000006F8
_02074418: .word 0x000005A4
_0207441C: .word sub_02074428
_02074420: .word 0x00000B18
_02074424: .word sub_02074454
thumb_func_start sub_02074428
sub_02074428: ; 0x02074428
push {r4, lr}
add r4, r0, #0x0
ldr r0, _0207444C ; =0x000005A4
ldr r1, _02074450 ; =0x00000B25
ldr r0, [r4, r0]
ldrb r1, [r4, r1]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
bl Pokemon_RemoveCapsule
ldr r0, _0207444C ; =0x000005A4
mov r1, #0x0
ldr r0, [r4, r0]
add r0, #0x23
strb r1, [r0, #0x0]
mov r0, #0x1b
pop {r4, pc}
.balign 4
_0207444C: .word 0x000005A4
_02074450: .word 0x00000B25
thumb_func_start sub_02074454
sub_02074454: ; 0x02074454
push {r4, lr}
add r4, r0, #0x0
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _0207447C ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
pop {r4, pc}
.balign 4
_0207447C: .word 0x000005C8
thumb_func_start sub_02074480
sub_02074480: ; 0x02074480
push {r3-r5, lr}
add r5, r0, #0x0
ldr r0, _02074528 ; =0x00000B23
add r4, r1, #0x0
ldrb r2, [r5, r0]
mov r1, #0x40
orr r1, r2
strb r1, [r5, r0]
ldrb r1, [r5, r0]
mov r2, #0x3f
bic r1, r2
add r2, r0, #0x2
ldrb r3, [r5, r2]
mov r2, #0x3f
and r2, r3
orr r1, r2
strb r1, [r5, r0]
ldr r0, _0207452C ; =0x000005C8
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_0200C664
ldr r0, _0207452C ; =0x000005C8
add r1, sp, #0x0
ldr r0, [r5, r0]
add r1, #0x2
add r2, sp, #0x0
bl sub_0200C75C
ldr r0, _02074530 ; =0x000005CC
add r3, sp, #0x0
mov r1, #0x2
mov r2, #0x0
ldrsh r1, [r3, r1]
ldrsh r2, [r3, r2]
ldr r0, [r5, r0]
bl sub_0200C6E4
ldr r0, _02074534 ; =0x000005A4
ldr r1, _02074528 ; =0x00000B23
ldr r0, [r5, r0]
ldrb r1, [r5, r1]
add r0, #0x21
ldrb r0, [r0, #0x0]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020714BC
add r1, r0, #0x0
ldr r0, _02074530 ; =0x000005CC
add r1, r1, #0x2
ldr r0, [r5, r0]
bl sub_02020130
ldr r0, _02074530 ; =0x000005CC
mov r1, #0x1
ldr r0, [r5, r0]
bl sub_020200A0
ldr r1, _02074528 ; =0x00000B23
add r0, r5, #0x0
ldrb r1, [r5, r1]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020709FC
mov r0, #0x85
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r5, #0x0
bl sub_02073DB4
add r0, r5, #0x0
mov r1, #0x1e
mov r2, #0x1
bl sub_020731C0
mov r0, #0x18
str r0, [r4, #0x0]
pop {r3-r5, pc}
nop
_02074528: .word 0x00000B23
_0207452C: .word 0x000005C8
_02074530: .word 0x000005CC
_02074534: .word 0x000005A4
thumb_func_start sub_02074538
sub_02074538: ; 0x02074538
push {r4, lr}
ldr r1, _02074578 ; =0x00000B23
add r4, r0, #0x0
ldrb r2, [r4, r1]
mov r0, #0x40
bic r2, r0
strb r2, [r4, r1]
ldr r0, _0207457C ; =0x000005CC
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_020200A0
ldr r0, _02074580 ; =0x00000B25
ldrb r1, [r4, r0]
cmp r1, #0x6
bhs _0207455E
add r0, r4, #0x0
bl sub_020709FC
_0207455E:
ldr r1, _02074578 ; =0x00000B23
add r0, r4, #0x0
ldrb r1, [r4, r1]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020709FC
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
pop {r4, pc}
.balign 4
_02074578: .word 0x00000B23
_0207457C: .word 0x000005CC
_02074580: .word 0x00000B25
thumb_func_start sub_02074584
sub_02074584: ; 0x02074584
push {r3-r7, lr}
sub sp, #0x28
ldr r2, _020746AC ; =0x00000B25
add r6, r0, #0x0
ldrb r1, [r6, r2]
add r0, r2, #0x0
sub r0, #0x19
strb r1, [r6, r0]
sub r0, r2, #0x2
ldrb r0, [r6, r0]
add r3, r2, #0x0
sub r3, #0x13
lsl r0, r0, #0x1a
lsr r1, r0, #0x1a
add r0, r2, #0x0
sub r0, #0x18
strb r1, [r6, r0]
add r0, r2, #0x0
mov r1, #0x1
sub r0, #0x15
strb r1, [r6, r0]
mov r0, #0x0
strb r0, [r6, r3]
add r3, r2, #0x0
sub r3, #0x14
strb r0, [r6, r3]
add r3, r2, #0x0
sub r3, #0x19
ldrb r3, [r6, r3]
tst r3, r1
beq _020745C8
sub r2, #0x17
strb r1, [r6, r2]
b _020745CC
_020745C8:
sub r2, #0x17
strb r0, [r6, r2]
_020745CC:
ldr r0, _020746B0 ; =0x00000B0D
mov r1, #0x1
ldrb r2, [r6, r0]
tst r2, r1
beq _020745D8
b _020745DA
_020745D8:
mov r1, #0x0
_020745DA:
add r0, r0, #0x2
strb r1, [r6, r0]
ldr r0, [r6, #0x0]
mov r1, #0x2
bl GetBgTilemapBuffer
str r0, [sp, #0x14]
ldr r0, [r6, #0x0]
mov r1, #0x1
bl GetBgTilemapBuffer
ldr r1, _020746B4 ; =0x00000B0C
str r0, [sp, #0x10]
ldrb r3, [r6, r1]
add r1, r1, #0x1
mov r2, #0x2c
add r0, r3, #0x0
ldrb r3, [r6, r1]
mul r0, r2
mov r4, #0x0
add r1, r3, #0x0
add r3, r6, r0
ldr r0, _020746B8 ; =0x00000715
mul r1, r2
ldrsb r2, [r3, r0]
str r2, [sp, #0xc]
sub r2, r0, #0x1
ldrsb r2, [r3, r2]
str r2, [sp, #0x8]
add r2, r6, r1
ldrsb r1, [r2, r0]
sub r0, r0, #0x1
ldrsb r0, [r2, r0]
str r1, [sp, #0x4]
str r0, [sp, #0x0]
ldr r0, _020746BC ; =0x0000080C
add r0, r6, r0
str r0, [sp, #0x18]
ldr r0, _020746C0 ; =0x0000098C
add r0, r6, r0
str r0, [sp, #0x1c]
ldr r0, _020746C4 ; =0x000008CC
add r0, r6, r0
str r0, [sp, #0x20]
ldr r0, _020746C8 ; =0x00000A4C
add r0, r6, r0
str r0, [sp, #0x24]
_02074638:
ldr r0, [sp, #0xc]
lsl r5, r4, #0x5
add r0, r0, r4
lsl r1, r0, #0x5
ldr r0, [sp, #0x8]
mov r2, #0x20
add r0, r0, r1
lsl r7, r0, #0x1
ldr r0, [sp, #0x18]
ldr r1, [sp, #0x14]
add r0, r0, r5
add r1, r1, r7
bl memcpy
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x10]
add r0, r0, r5
add r1, r1, r7
mov r2, #0x20
bl memcpy
ldr r0, [sp, #0x4]
mov r2, #0x20
add r0, r0, r4
lsl r1, r0, #0x5
ldr r0, [sp, #0x0]
add r0, r0, r1
lsl r7, r0, #0x1
ldr r0, [sp, #0x20]
ldr r1, [sp, #0x14]
add r0, r0, r5
add r1, r1, r7
bl memcpy
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x10]
add r0, r0, r5
add r1, r1, r7
mov r2, #0x20
bl memcpy
add r0, r4, #0x1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r4, #0x6
blo _02074638
ldr r0, _020746CC ; =0x000005C8
mov r1, #0x0
ldr r0, [r6, r0]
bl sub_020200A0
ldr r0, _020746D0 ; =0x000005CC
mov r1, #0x0
ldr r0, [r6, r0]
bl sub_020200A0
add sp, #0x28
pop {r3-r7, pc}
.balign 4
_020746AC: .word 0x00000B25
_020746B0: .word 0x00000B0D
_020746B4: .word 0x00000B0C
_020746B8: .word 0x00000715
_020746BC: .word 0x0000080C
_020746C0: .word 0x0000098C
_020746C4: .word 0x000008CC
_020746C8: .word 0x00000A4C
_020746CC: .word 0x000005C8
_020746D0: .word 0x000005CC
thumb_func_start sub_020746D4
sub_020746D4: ; 0x020746D4
push {r3-r5, lr}
ldr r1, _02074828 ; =0x0000080C
add r5, r0, #0x0
ldr r2, _0207482C ; =0x00000305
add r4, r5, r1
ldrb r1, [r4, r2]
cmp r1, #0x4
bls _020746E6
b _02074822
_020746E6:
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #0x6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_020746F2: ; jump table (using 16-bit offset)
.short _020746FC - _020746F2 - 2; case 0
.short _0207470C - _020746F2 - 2; case 1
.short _0207475C - _020746F2 - 2; case 2
.short _02074770 - _020746F2 - 2; case 3
.short _020747CE - _020746F2 - 2; case 4
_020746FC:
mov r0, #0x6a
lsl r0, r0, #0x4
bl PlaySE
ldr r0, _0207482C ; =0x00000305
mov r1, #0x1
strb r1, [r4, r0]
b _02074822
_0207470C:
add r1, r2, #0x1
ldrb r1, [r4, r1]
add r3, r1, #0x1
add r1, r2, #0x1
strb r3, [r4, r1]
mov r1, #0x0
bl sub_02074848
add r0, r5, #0x0
mov r1, #0x1
bl sub_02074848
ldr r2, _02074830 ; =0x00000302
add r0, r5, #0x0
ldrb r2, [r4, r2]
mov r1, #0x0
bl sub_0207499C
ldr r2, _02074834 ; =0x00000303
add r0, r5, #0x0
ldrb r2, [r4, r2]
mov r1, #0x1
bl sub_0207499C
ldr r0, [r5, #0x0]
mov r1, #0x2
bl ScheduleBgTilemapBufferTransfer
ldr r0, [r5, #0x0]
mov r1, #0x1
bl ScheduleBgTilemapBufferTransfer
ldr r0, _02074838 ; =0x00000306
ldrb r1, [r4, r0]
cmp r1, #0x10
bne _02074822
mov r1, #0x2
sub r0, r0, #0x1
strb r1, [r4, r0]
b _02074822
_0207475C:
bl sub_02074AF4
mov r0, #0x6a
lsl r0, r0, #0x4
bl PlaySE
ldr r0, _0207482C ; =0x00000305
mov r1, #0x3
strb r1, [r4, r0]
b _02074822
_02074770:
add r1, r2, #0x1
ldrb r1, [r4, r1]
sub r3, r1, #0x1
add r1, r2, #0x1
strb r3, [r4, r1]
mov r1, #0x0
bl sub_02074848
add r0, r5, #0x0
mov r1, #0x1
bl sub_02074848
ldr r2, _02074830 ; =0x00000302
add r0, r5, #0x0
ldrb r3, [r4, r2]
mov r2, #0x1
mov r1, #0x0
eor r2, r3
lsl r2, r2, #0x18
lsr r2, r2, #0x18
bl sub_0207499C
ldr r2, _02074834 ; =0x00000303
mov r1, #0x1
ldrb r2, [r4, r2]
add r0, r5, #0x0
eor r2, r1
lsl r2, r2, #0x18
lsr r2, r2, #0x18
bl sub_0207499C
ldr r0, [r5, #0x0]
mov r1, #0x2
bl ScheduleBgTilemapBufferTransfer
ldr r0, [r5, #0x0]
mov r1, #0x1
bl ScheduleBgTilemapBufferTransfer
ldr r0, _02074838 ; =0x00000306
ldrb r1, [r4, r0]
cmp r1, #0x0
bne _02074822
mov r1, #0x4
sub r0, r0, #0x1
strb r1, [r4, r0]
b _02074822
_020747CE:
ldr r0, _0207483C ; =0x000005A4
sub r1, r2, #0x5
ldr r0, [r5, r0]
sub r2, r2, #0x4
ldrb r1, [r4, r1]
ldrb r2, [r4, r2]
ldr r0, [r0, #0x0]
bl SwapSlotsInParty
ldr r0, _02074840 ; =0x000005C8
mov r1, #0x1
ldr r0, [r5, r0]
bl sub_020200A0
mov r0, #0xc1
mov r1, #0x0
lsl r0, r0, #0x2
strb r1, [r4, r0]
ldr r1, _02074844 ; =0x00000B23
mov r0, #0x40
ldrb r2, [r5, r1]
bic r2, r0
strb r2, [r5, r1]
add r1, r1, #0x2
ldrb r1, [r5, r1]
add r0, r5, #0x0
bl sub_020709FC
ldr r1, _02074844 ; =0x00000B23
add r0, r5, #0x0
ldrb r1, [r5, r1]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020709FC
add r0, r5, #0x0
mov r1, #0x1d
mov r2, #0x0
bl sub_020731C0
mov r0, #0x1
pop {r3-r5, pc}
_02074822:
mov r0, #0x0
pop {r3-r5, pc}
nop
_02074828: .word 0x0000080C
_0207482C: .word 0x00000305
_02074830: .word 0x00000302
_02074834: .word 0x00000303
_02074838: .word 0x00000306
_0207483C: .word 0x000005A4
_02074840: .word 0x000005C8
_02074844: .word 0x00000B23
thumb_func_start sub_02074848
sub_02074848: ; 0x02074848
push {r3-r7, lr}
sub sp, #0x28
add r5, r0, #0x0
ldr r0, _02074990 ; =0x0000080C
str r1, [sp, #0x1c]
ldr r1, [sp, #0x1c]
add r4, r5, r0
add r2, r4, r1
mov r1, #0x3
lsl r1, r1, #0x8
ldrb r2, [r2, r1]
mov r1, #0x2c
mul r1, r2
add r2, r5, r1
add r1, r0, #0x0
sub r1, #0xf8
ldrsb r7, [r2, r1]
sub r0, #0xf7
ldrb r6, [r2, r0]
lsl r0, r7, #0x18
lsr r0, r0, #0x18
str r0, [sp, #0x20]
str r6, [sp, #0x0]
mov r1, #0x10
str r1, [sp, #0x4]
mov r0, #0x6
str r0, [sp, #0x8]
str r1, [sp, #0xc]
ldr r0, [r5, #0x0]
ldr r3, [sp, #0x20]
mov r1, #0x2
mov r2, #0x0
bl FillBgTilemapRect
str r6, [sp, #0x0]
mov r1, #0x10
str r1, [sp, #0x4]
mov r0, #0x6
str r0, [sp, #0x8]
str r1, [sp, #0xc]
ldr r0, [r5, #0x0]
ldr r3, [sp, #0x20]
mov r1, #0x1
mov r2, #0x0
bl FillBgTilemapRect
ldr r0, [sp, #0x1c]
add r1, r4, r0
ldr r0, _02074994 ; =0x00000302
ldrb r1, [r1, r0]
cmp r1, #0x0
bne _02074918
add r0, r0, #0x4
ldrb r2, [r4, r0]
ldr r0, [sp, #0x1c]
mov r3, #0x10
add r7, r0, #0x0
sub r0, r3, r2
lsl r0, r0, #0x18
mov r1, #0xc0
lsr r0, r0, #0x18
mul r7, r1
str r0, [sp, #0x0]
mov r1, #0x6
str r1, [sp, #0x4]
add r0, r4, r7
str r0, [sp, #0x8]
str r2, [sp, #0xc]
mov r0, #0x0
str r0, [sp, #0x10]
str r3, [sp, #0x14]
str r1, [sp, #0x18]
ldr r0, [r5, #0x0]
ldr r2, [sp, #0x20]
mov r1, #0x2
add r3, r6, #0x0
bl CopyToBgTilemapRect
ldr r0, _02074998 ; =0x00000306
mov r3, #0x10
ldrb r2, [r4, r0]
mov r1, #0x6
sub r0, r3, r2
lsl r0, r0, #0x18
lsr r0, r0, #0x18
str r0, [sp, #0x0]
lsl r0, r1, #0x6
add r0, r4, r0
str r1, [sp, #0x4]
add r0, r0, r7
str r0, [sp, #0x8]
str r2, [sp, #0xc]
mov r0, #0x0
str r0, [sp, #0x10]
str r3, [sp, #0x14]
str r1, [sp, #0x18]
ldr r0, [r5, #0x0]
ldr r2, [sp, #0x20]
mov r1, #0x1
add r3, r6, #0x0
bl CopyToBgTilemapRect
add sp, #0x28
pop {r3-r7, pc}
_02074918:
ldr r1, [sp, #0x1c]
mov r2, #0xc0
mul r2, r1
str r2, [sp, #0x24]
add r0, r0, #0x4
ldrb r2, [r4, r0]
mov r3, #0x10
ldr r1, [sp, #0x24]
sub r0, r3, r2
lsl r0, r0, #0x18
lsr r0, r0, #0x18
str r0, [sp, #0x0]
mov r0, #0x6
str r0, [sp, #0x4]
add r1, r4, r1
str r1, [sp, #0x8]
mov r1, #0x0
str r1, [sp, #0xc]
str r1, [sp, #0x10]
str r3, [sp, #0x14]
add r2, r7, r2
str r0, [sp, #0x18]
lsl r2, r2, #0x18
ldr r0, [r5, #0x0]
mov r1, #0x2
lsr r2, r2, #0x18
add r3, r6, #0x0
bl CopyToBgTilemapRect
ldr r0, _02074998 ; =0x00000306
ldrb r2, [r4, r0]
mov r0, #0x10
sub r0, r0, r2
lsl r0, r0, #0x18
lsr r0, r0, #0x18
str r0, [sp, #0x0]
mov r0, #0x6
lsl r1, r0, #0x6
add r3, r4, r1
ldr r1, [sp, #0x24]
add r2, r7, r2
add r1, r3, r1
str r0, [sp, #0x4]
str r1, [sp, #0x8]
mov r1, #0x0
str r1, [sp, #0xc]
str r1, [sp, #0x10]
mov r1, #0x10
str r1, [sp, #0x14]
str r0, [sp, #0x18]
lsl r2, r2, #0x18
ldr r0, [r5, #0x0]
mov r1, #0x1
lsr r2, r2, #0x18
add r3, r6, #0x0
bl CopyToBgTilemapRect
add sp, #0x28
pop {r3-r7, pc}
nop
_02074990: .word 0x0000080C
_02074994: .word 0x00000302
_02074998: .word 0x00000306
thumb_func_start sub_0207499C
sub_0207499C: ; 0x0207499C
push {r3-r7, lr}
add r5, r0, #0x0
ldr r0, _02074AE0 ; =0x0000080C
add r4, r1, #0x0
add r1, r5, r0
mov r0, #0x3
lsl r0, r0, #0x8
add r6, r1, r0
ldrb r0, [r6, r4]
add r7, r2, #0x0
add r2, sp, #0x0
lsl r0, r0, #0x2
add r1, r5, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r1, r0]
add r1, sp, #0x0
add r1, #0x2
bl sub_0200C75C
cmp r7, #0x0
ldr r0, _02074AE4 ; =0x00000716
bne _02074A04
ldrb r3, [r6, r4]
mov r7, #0x2c
add r2, r5, r0
add r1, r3, #0x0
mul r1, r7
ldrsh r3, [r2, r1]
sub r3, #0x8
strh r3, [r2, r1]
ldrb r3, [r6, r4]
add r1, r0, #0x4
add r2, r5, r1
add r1, r3, #0x0
mul r1, r7
ldrsh r3, [r2, r1]
add r0, #0x8
add r0, r5, r0
sub r3, #0x8
strh r3, [r2, r1]
ldrb r1, [r6, r4]
add r2, r1, #0x0
mul r2, r7
ldrsh r1, [r0, r2]
sub r1, #0x8
strh r1, [r0, r2]
add r1, sp, #0x0
mov r0, #0x2
ldrsh r0, [r1, r0]
sub r0, #0x8
b _02074A3C
_02074A04:
ldrb r3, [r6, r4]
mov r7, #0x2c
add r2, r5, r0
add r1, r3, #0x0
mul r1, r7
ldrsh r3, [r2, r1]
add r3, #0x8
strh r3, [r2, r1]
ldrb r3, [r6, r4]
add r1, r0, #0x4
add r2, r5, r1
add r1, r3, #0x0
mul r1, r7
ldrsh r3, [r2, r1]
add r0, #0x8
add r0, r5, r0
add r3, #0x8
strh r3, [r2, r1]
ldrb r1, [r6, r4]
add r2, r1, #0x0
mul r2, r7
ldrsh r1, [r0, r2]
add r1, #0x8
strh r1, [r0, r2]
add r1, sp, #0x0
mov r0, #0x2
ldrsh r0, [r1, r0]
add r0, #0x8
_02074A3C:
strh r0, [r1, #0x2]
ldrb r1, [r6, r4]
mov r0, #0x2c
ldr r2, _02074AE8 ; =0x00000724
mul r0, r1
add r3, r5, r0
add r1, r2, #0x0
ldr r0, [r3, r2]
sub r1, #0xe
sub r2, #0xc
ldrsh r1, [r3, r1]
ldrsh r2, [r3, r2]
bl sub_0200C6E4
ldrb r2, [r6, r4]
mov r0, #0x2c
ldr r3, _02074AEC ; =0x0000071A
add r1, r2, #0x0
add r2, #0xa
mul r1, r0
lsl r0, r2, #0x2
add r2, r5, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r2, r0]
add r2, r5, r1
ldrsh r1, [r2, r3]
add r3, r3, #0x2
ldrsh r2, [r2, r3]
bl sub_0200C6E4
ldrb r2, [r6, r4]
mov r0, #0x2c
ldr r3, _02074AF0 ; =0x0000071E
add r1, r2, #0x0
add r2, #0x10
mul r1, r0
lsl r0, r2, #0x2
add r2, r5, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r2, r0]
add r2, r5, r1
ldrsh r1, [r2, r3]
add r3, r3, #0x2
ldrsh r2, [r2, r3]
bl sub_0200C6E4
ldrb r2, [r6, r4]
mov r0, #0x2c
ldr r3, _02074AF0 ; =0x0000071E
add r1, r2, #0x0
add r2, #0x16
mul r1, r0
lsl r0, r2, #0x2
add r2, r5, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r2, r0]
add r2, r5, r1
ldrsh r1, [r2, r3]
add r3, r3, #0x2
ldrsh r2, [r2, r3]
add r1, #0x8
lsl r1, r1, #0x10
asr r1, r1, #0x10
bl sub_0200C6E4
ldrb r0, [r6, r4]
add r3, sp, #0x0
mov r2, #0x0
lsl r0, r0, #0x2
add r1, r5, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r1, r0]
mov r1, #0x2
ldrsh r1, [r3, r1]
ldrsh r2, [r3, r2]
bl sub_0200C6E4
pop {r3-r7, pc}
.balign 4
_02074AE0: .word 0x0000080C
_02074AE4: .word 0x00000716
_02074AE8: .word 0x00000724
_02074AEC: .word 0x0000071A
_02074AF0: .word 0x0000071E
thumb_func_start sub_02074AF4
sub_02074AF4: ; 0x02074AF4
push {r4-r7, lr}
sub sp, #0x1c
add r5, r0, #0x0
ldr r0, _02074DD0 ; =0x0000080C
mov r1, #0x2c
add r4, r5, r0
mov r0, #0xc
bl Heap_Alloc
add r7, r0, #0x0
mov r0, #0x3
lsl r0, r0, #0x8
ldrb r1, [r4, r0]
mov r0, #0x2c
add r3, r7, #0x0
mul r0, r1
add r1, r5, r0
mov r0, #0x7
lsl r0, r0, #0x8
add r6, r1, r0
mov r2, #0x5
_02074B1E:
ldmia r6!, {r0-r1}
stmia r3!, {r0-r1}
sub r2, r2, #0x1
bne _02074B1E
ldr r0, [r6, #0x0]
mov r1, #0x3
lsl r1, r1, #0x8
str r0, [r3, #0x0]
ldrb r0, [r4, r1]
add r1, r1, #0x1
ldrb r1, [r4, r1]
mov r2, #0x2c
add r3, r0, #0x0
mul r3, r2
mul r2, r1
mov r1, #0x7
add r0, r5, r3
lsl r1, r1, #0x8
add r2, r5, r2
add r6, r2, r1
add r3, r0, r1
mov r2, #0x5
_02074B4A:
ldmia r6!, {r0-r1}
stmia r3!, {r0-r1}
sub r2, r2, #0x1
bne _02074B4A
ldr r0, [r6, #0x0]
add r6, r7, #0x0
str r0, [r3, #0x0]
ldr r0, _02074DD4 ; =0x00000301
mov r2, #0x5
ldrb r1, [r4, r0]
mov r0, #0x2c
mul r0, r1
add r1, r5, r0
mov r0, #0x7
lsl r0, r0, #0x8
add r3, r1, r0
_02074B6A:
ldmia r6!, {r0-r1}
stmia r3!, {r0-r1}
sub r2, r2, #0x1
bne _02074B6A
ldr r0, [r6, #0x0]
add r1, r7, #0x0
str r0, [r3, #0x0]
mov r0, #0xc
bl Heap_FreeExplicit
mov r1, #0x3
lsl r1, r1, #0x8
ldrb r3, [r4, r1]
ldr r0, _02074DD8 ; =0x00000716
add r2, r5, r0
mov r0, #0x2c
add r7, r3, #0x0
mul r7, r0
ldrsh r3, [r2, r7]
str r3, [sp, #0x0]
add r3, r1, #0x1
ldrb r3, [r4, r3]
add r6, r3, #0x0
mul r6, r0
ldr r3, _02074DD8 ; =0x00000716
add r6, r5, r6
ldrsh r3, [r6, r3]
strh r3, [r2, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r6, r5, r3
ldr r3, [sp, #0x0]
ldr r2, _02074DD8 ; =0x00000716
strh r3, [r6, r2]
add r2, r2, #0x2
add r3, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsh r2, [r3, r7]
str r2, [sp, #0x4]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r6, r2, #0x0
mul r6, r0
add r2, r5, r6
ldr r6, _02074DD8 ; =0x00000716
add r6, r6, #0x2
ldrsh r2, [r2, r6]
strh r2, [r3, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
add r6, r3, #0x2
ldr r3, [sp, #0x4]
strh r3, [r2, r6]
ldr r2, _02074DD8 ; =0x00000716
add r2, r2, #0x4
add r3, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsh r2, [r3, r7]
str r2, [sp, #0x8]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r6, r2, #0x0
mul r6, r0
add r2, r5, r6
ldr r6, _02074DD8 ; =0x00000716
add r6, r6, #0x4
ldrsh r2, [r2, r6]
strh r2, [r3, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
add r6, r3, #0x4
ldr r3, [sp, #0x8]
strh r3, [r2, r6]
ldr r2, _02074DD8 ; =0x00000716
add r2, r2, #0x6
add r3, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsh r2, [r3, r7]
str r2, [sp, #0xc]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r6, r2, #0x0
mul r6, r0
add r2, r5, r6
ldr r6, _02074DD8 ; =0x00000716
add r6, r6, #0x6
ldrsh r2, [r2, r6]
strh r2, [r3, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
add r6, r3, #0x6
ldr r3, [sp, #0xc]
strh r3, [r2, r6]
ldr r2, _02074DD8 ; =0x00000716
add r2, #0x8
add r6, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsh r2, [r6, r7]
str r2, [sp, #0x10]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
add r3, #0x8
ldrsh r2, [r2, r3]
strh r2, [r6, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r6, r5, r3
ldr r3, _02074DD8 ; =0x00000716
ldr r2, [sp, #0x10]
add r3, #0x8
strh r2, [r6, r3]
ldr r2, _02074DD8 ; =0x00000716
add r2, #0xa
add r6, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsh r2, [r6, r7]
str r2, [sp, #0x14]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
add r3, #0xa
ldrsh r2, [r2, r3]
strh r2, [r6, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r6, r5, r3
ldr r3, _02074DD8 ; =0x00000716
ldr r2, [sp, #0x14]
add r3, #0xa
strh r2, [r6, r3]
ldr r2, _02074DD8 ; =0x00000716
sub r2, r2, #0x2
add r3, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsb r2, [r3, r7]
str r2, [sp, #0x18]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r6, r2, #0x0
mul r6, r0
add r2, r5, r6
ldr r6, _02074DD8 ; =0x00000716
sub r6, r6, #0x2
ldrsb r2, [r2, r6]
strb r2, [r3, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
mul r3, r0
add r2, r5, r3
ldr r3, _02074DD8 ; =0x00000716
sub r6, r3, #0x2
ldr r3, [sp, #0x18]
strb r3, [r2, r6]
ldr r2, _02074DD8 ; =0x00000716
sub r2, r2, #0x1
add r6, r5, r2
ldrb r2, [r4, r1]
add r7, r2, #0x0
mul r7, r0
ldrsb r2, [r6, r7]
mov r12, r2
add r2, r1, #0x1
ldrb r2, [r4, r2]
add r3, r2, #0x0
ldr r2, _02074DD8 ; =0x00000716
mul r3, r0
add r3, r5, r3
sub r2, r2, #0x1
ldrsb r2, [r3, r2]
strb r2, [r6, r7]
add r2, r1, #0x1
ldrb r2, [r4, r2]
mul r0, r2
ldr r2, _02074DD8 ; =0x00000716
add r0, r5, r0
sub r3, r2, #0x1
mov r2, r12
strb r2, [r0, r3]
ldrb r1, [r4, r1]
add r0, r5, #0x0
bl sub_02072D1C
ldr r1, _02074DD4 ; =0x00000301
add r0, r5, #0x0
ldrb r1, [r4, r1]
bl sub_02072D1C
mov r1, #0x3
lsl r1, r1, #0x8
ldrb r1, [r4, r1]
add r0, r5, #0x0
bl sub_02072E14
ldr r1, _02074DD4 ; =0x00000301
add r0, r5, #0x0
ldrb r1, [r4, r1]
bl sub_02072E14
add r0, r5, #0x0
mov r1, #0x0
bl sub_02074DE4
add r0, r5, #0x0
mov r1, #0x1
bl sub_02074DE4
mov r0, #0x3
lsl r0, r0, #0x8
ldrb r1, [r4, r0]
mov r2, #0x2c
add r0, r5, #0x0
mul r2, r1
add r3, r5, r2
ldr r2, _02074DDC ; =0x0000070E
ldrh r2, [r3, r2]
lsl r2, r2, #0x14
lsr r2, r2, #0x14
lsl r2, r2, #0x18
lsr r2, r2, #0x18
bl sub_02073A4C
ldr r0, _02074DD4 ; =0x00000301
mov r2, #0x2c
ldrb r1, [r4, r0]
add r0, r5, #0x0
mul r2, r1
add r3, r5, r2
ldr r2, _02074DDC ; =0x0000070E
ldrh r2, [r3, r2]
lsl r2, r2, #0x14
lsr r2, r2, #0x14
lsl r2, r2, #0x18
lsr r2, r2, #0x18
bl sub_02073A4C
mov r0, #0x3
lsl r0, r0, #0x8
ldrb r1, [r4, r0]
mov r2, #0x2c
add r0, r5, #0x0
mul r2, r1
add r3, r5, r2
ldr r2, _02074DE0 ; =0x0000070C
ldrh r2, [r3, r2]
bl sub_02073A78
ldr r0, _02074DD4 ; =0x00000301
mov r2, #0x2c
ldrb r1, [r4, r0]
add r0, r5, #0x0
mul r2, r1
add r3, r5, r2
ldr r2, _02074DE0 ; =0x0000070C
ldrh r2, [r3, r2]
bl sub_02073A78
mov r1, #0x3
lsl r1, r1, #0x8
ldrb r1, [r4, r1]
add r0, r5, #0x0
bl sub_02073B3C
ldr r1, _02074DD4 ; =0x00000301
add r0, r5, #0x0
ldrb r1, [r4, r1]
bl sub_02073B3C
add sp, #0x1c
pop {r4-r7, pc}
.balign 4
_02074DD0: .word 0x0000080C
_02074DD4: .word 0x00000301
_02074DD8: .word 0x00000716
_02074DDC: .word 0x0000070E
_02074DE0: .word 0x0000070C
thumb_func_start sub_02074DE4
sub_02074DE4: ; 0x02074DE4
push {r3-r7, lr}
add r7, r1, #0x0
ldr r1, _02074E6C ; =0x0000080C
add r6, r0, #0x0
add r4, r6, r1
mov r1, #0xc0
mul r1, r7
add r5, r4, r1
bl sub_020703BC
add r3, r0, #0x0
mov r0, #0x3
add r1, r4, r7
lsl r0, r0, #0x8
ldrb r1, [r1, r0]
mov r0, #0x2c
mul r0, r1
add r1, r6, r0
mov r0, #0x71
lsl r0, r0, #0x4
ldrb r0, [r1, r0]
cmp r0, #0x1
bne _02074E3C
mov r3, #0xf
mov r1, #0x0
lsl r3, r3, #0xc
mov r4, #0x17
_02074E1A:
lsl r0, r1, #0x1
add r2, r5, r0
add r2, #0x6c
ldrh r2, [r2, #0x0]
add r0, r5, r0
add r0, #0x6c
and r2, r3
lsl r2, r2, #0x10
lsr r2, r2, #0x10
orr r2, r4
strh r2, [r0, #0x0]
add r0, r1, #0x1
lsl r0, r0, #0x10
lsr r1, r0, #0x10
cmp r1, #0x9
blo _02074E1A
pop {r3-r7, pc}
_02074E3C:
mov r6, #0xf
ldr r0, _02074E70 ; =0x00000FFF
mov r4, #0x0
lsl r6, r6, #0xc
_02074E44:
lsl r2, r4, #0x1
add r1, r5, r2
add r1, #0x6c
ldrh r1, [r1, #0x0]
ldrh r7, [r3, r2]
and r1, r6
lsl r1, r1, #0x10
lsr r1, r1, #0x10
and r7, r0
orr r7, r1
add r1, r5, r2
add r1, #0x6c
strh r7, [r1, #0x0]
add r1, r4, #0x1
lsl r1, r1, #0x10
lsr r4, r1, #0x10
cmp r4, #0x9
blo _02074E44
pop {r3-r7, pc}
nop
_02074E6C: .word 0x0000080C
_02074E70: .word 0x00000FFF
thumb_func_start sub_02074E74
sub_02074E74: ; 0x02074E74
push {r4-r6, lr}
add r5, r0, #0x0
mov r0, #0x85
lsl r0, r0, #0x2
add r6, r1, #0x0
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r5, #0x0
bl sub_02073DB4
ldr r0, _02074F5C ; =0x000005A4
mov r4, #0x0
ldr r0, [r5, r0]
add r1, r0, #0x0
add r1, #0x32
ldrb r1, [r1, #0x0]
lsl r1, r1, #0x18
lsr r1, r1, #0x1c
beq _02074EFA
_02074E9E:
add r2, r0, r4
add r2, #0x2c
ldrb r2, [r2, #0x0]
cmp r2, #0x0
bne _02074EF0
ldr r1, _02074F60 ; =0x00000B25
add r0, r0, r4
ldrb r2, [r5, r1]
add r0, #0x2c
add r2, r2, #0x1
strb r2, [r0, #0x0]
ldrb r1, [r5, r1]
add r0, r5, #0x0
bl sub_02073024
add r0, r5, #0x0
mov r1, #0x22
mov r2, #0x1
bl sub_020731C0
ldr r0, _02074F64 ; =0x000005C8
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_0200C664
ldr r0, _02074F5C ; =0x000005A4
ldr r0, [r5, r0]
add r0, #0x32
ldrb r0, [r0, #0x0]
lsl r0, r0, #0x18
lsr r0, r0, #0x1c
sub r0, r0, #0x1
cmp r4, r0
bne _02074EEA
add r0, r5, #0x0
mov r1, #0x6
bl sub_02070E60
_02074EEA:
mov r0, #0x1
str r0, [r6, #0x0]
pop {r4-r6, pc}
_02074EF0:
add r2, r4, #0x1
lsl r2, r2, #0x18
lsr r4, r2, #0x18
cmp r4, r1
blo _02074E9E
_02074EFA:
cmp r1, #0x5
bhi _02074F50
add r0, r1, r1
add r0, pc
ldrh r0, [r0, #0x6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_02074F0A: ; jump table (using 16-bit offset)
.short _02074F50 - _02074F0A - 2; case 0
.short _02074F16 - _02074F0A - 2; case 1
.short _02074F22 - _02074F0A - 2; case 2
.short _02074F2E - _02074F0A - 2; case 3
.short _02074F3A - _02074F0A - 2; case 4
.short _02074F46 - _02074F0A - 2; case 5
_02074F16:
add r0, r5, #0x0
mov r1, #0x7b
mov r2, #0x1
bl sub_020731E8
b _02074F50
_02074F22:
add r0, r5, #0x0
mov r1, #0x64
mov r2, #0x1
bl sub_020731E8
b _02074F50
_02074F2E:
add r0, r5, #0x0
mov r1, #0x7c
mov r2, #0x1
bl sub_020731E8
b _02074F50
_02074F3A:
add r0, r5, #0x0
mov r1, #0x7d
mov r2, #0x1
bl sub_020731E8
b _02074F50
_02074F46:
add r0, r5, #0x0
mov r1, #0x7e
mov r2, #0x1
bl sub_020731E8
_02074F50:
ldr r0, _02074F68 ; =0x00000B22
mov r1, #0x13
strb r1, [r5, r0]
mov r0, #0x14
str r0, [r6, #0x0]
pop {r4-r6, pc}
.balign 4
_02074F5C: .word 0x000005A4
_02074F60: .word 0x00000B25
_02074F64: .word 0x000005C8
_02074F68: .word 0x00000B22
thumb_func_start sub_02074F6C
sub_02074F6C: ; 0x02074F6C
push {r4, lr}
add r4, r0, #0x0
ldr r0, _02074FA4 ; =gSystem
ldr r1, [r0, #0x48]
mov r0, #0x3
tst r0, r1
beq _02074F9E
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x22
mov r2, #0x1
bl sub_020731C0
ldr r0, _02074FA8 ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
pop {r4, pc}
_02074F9E:
mov r0, #0x13
pop {r4, pc}
nop
_02074FA4: .word gSystem
_02074FA8: .word 0x000005C8
thumb_func_start sub_02074FAC
sub_02074FAC: ; 0x02074FAC
push {r3-r7, lr}
add r5, r0, #0x0
ldr r0, _02075080 ; =0x000005A4
str r1, [sp, #0x0]
ldr r1, [r5, r0]
mov r4, #0x0
add r0, r1, #0x0
add r0, #0x32
ldrb r0, [r0, #0x0]
lsl r0, r0, #0x18
lsr r2, r0, #0x1c
beq _0207502C
ldr r0, _02075084 ; =0x00000B25
ldrb r0, [r5, r0]
add r0, r0, #0x1
_02074FCA:
add r3, r1, r4
add r3, #0x2c
ldrb r3, [r3, #0x0]
cmp r0, r3
bne _02075022
add r0, r1, r4
mov r2, #0x0
add r0, #0x2c
strb r2, [r0, #0x0]
ldr r0, _02075080 ; =0x000005A4
ldr r6, [r5, r0]
add r0, r6, #0x0
add r0, #0x32
ldrb r0, [r0, #0x0]
lsl r0, r0, #0x18
lsr r0, r0, #0x1c
sub r0, r0, #0x1
cmp r4, r0
bge _0207502C
ldr r0, _02075080 ; =0x000005A4
add r1, r0, #0x0
_02074FF4:
add r3, r6, r4
add r3, #0x2d
ldrb r3, [r3, #0x0]
add r6, r6, r4
add r6, #0x2c
strb r3, [r6, #0x0]
ldr r3, [r5, r0]
add r3, r3, r4
add r3, #0x2d
strb r2, [r3, #0x0]
add r3, r4, #0x1
lsl r3, r3, #0x18
ldr r6, [r5, r1]
lsr r4, r3, #0x18
add r3, r6, #0x0
add r3, #0x32
ldrb r3, [r3, #0x0]
lsl r3, r3, #0x18
lsr r3, r3, #0x1c
sub r3, r3, #0x1
cmp r4, r3
blt _02074FF4
b _0207502C
_02075022:
add r3, r4, #0x1
lsl r3, r3, #0x18
lsr r4, r3, #0x18
cmp r4, r2
blo _02074FCA
_0207502C:
ldr r6, _02075088 ; =0x00000729
mov r4, #0x0
mov r7, #0x2c
_02075032:
add r0, r4, #0x0
mul r0, r7
add r0, r5, r0
ldrb r0, [r0, r6]
cmp r0, #0x0
beq _02075046
add r0, r5, #0x0
add r1, r4, #0x0
bl sub_02073024
_02075046:
add r0, r4, #0x1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, #0x6
blo _02075032
mov r0, #0x85
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r5, #0x0
bl sub_02073DB4
add r0, r5, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _0207508C ; =0x000005C8
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_0200C664
ldr r0, [sp, #0x0]
mov r1, #0x1
str r1, [r0, #0x0]
pop {r3-r7, pc}
nop
_02075080: .word 0x000005A4
_02075084: .word 0x00000B25
_02075088: .word 0x00000729
_0207508C: .word 0x000005C8
thumb_func_start sub_02075090
sub_02075090: ; 0x02075090
push {r3-r5, lr}
add r5, r0, #0x0
ldr r0, _020750B8 ; =0x000005A4
add r4, r1, #0x0
ldr r0, [r5, r0]
mov r1, #0x0
add r0, #0x23
strb r1, [r0, #0x0]
ldr r0, _020750BC ; =0x000006FC
ldr r0, [r5, r0]
bl sub_02001C5C
ldr r0, _020750C0 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
nop
_020750B8: .word 0x000005A4
_020750BC: .word 0x000006FC
_020750C0: .word 0x000006F8
thumb_func_start sub_020750C4
sub_020750C4: ; 0x020750C4
push {r3-r5, lr}
add r5, r0, #0x0
ldr r0, _020750EC ; =0x000005A4
add r4, r1, #0x0
ldr r0, [r5, r0]
mov r1, #0x1
add r0, #0x23
strb r1, [r0, #0x0]
ldr r0, _020750F0 ; =0x000006FC
mov r1, #0x0
ldr r0, [r5, r0]
bl sub_02001C5C
ldr r0, _020750F4 ; =0x000006F8
ldr r0, [r5, r0]
bl ListMenuItems_Delete
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
.balign 4
_020750EC: .word 0x000005A4
_020750F0: .word 0x000006FC
_020750F4: .word 0x000006F8
thumb_func_start sub_020750F8
sub_020750F8: ; 0x020750F8
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
bl sub_02073DB4
mov r0, #0x85
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r5, #0x0
bl sub_02075118
str r0, [r4, #0x0]
pop {r3-r5, pc}
thumb_func_start sub_02075118
sub_02075118: ; 0x02075118
push {r4, lr}
add r4, r0, #0x0
ldr r0, _02075190 ; =0x000005A4
ldr r1, _02075194 ; =0x00000B25
ldr r0, [r4, r0]
ldrb r1, [r4, r1]
ldr r0, [r0, #0x0]
bl Party_GetMonByIndex
mov r1, #0xa1
mov r2, #0x0
bl GetMonData
cmp r0, #0x0
ldr r2, _02075198 ; =0x0000069C
bne _0207515C
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
mov r1, #0x81
bl ReadMsgDataIntoString
ldr r0, _02075194 ; =0x00000B25
ldrb r0, [r4, r0]
add r0, #0x16
lsl r0, r0, #0x2
add r1, r4, r0
mov r0, #0x5b
lsl r0, r0, #0x4
ldr r0, [r1, r0]
mov r1, #0x1
bl sub_020200A0
b _0207516E
_0207515C:
ldr r0, [r4, r2]
add r2, #0x8
ldr r2, [r4, r2]
mov r1, #0x82
bl ReadMsgDataIntoString
ldr r0, _02075194 ; =0x00000B25
mov r1, #0x7
strb r1, [r4, r0]
_0207516E:
mov r1, #0x0
add r0, r4, #0x0
mvn r1, r1
mov r2, #0x1
bl sub_020731E8
ldr r0, _02075190 ; =0x000005A4
mov r1, #0x0
ldr r0, [r4, r0]
add r0, #0x23
strb r1, [r0, #0x0]
ldr r0, _0207519C ; =0x00000B22
mov r1, #0x15
strb r1, [r4, r0]
mov r0, #0x14
pop {r4, pc}
nop
_02075190: .word 0x000005A4
_02075194: .word 0x00000B25
_02075198: .word 0x0000069C
_0207519C: .word 0x00000B22
thumb_func_start sub_020751A0
sub_020751A0: ; 0x020751A0
push {r4-r6, lr}
add r6, r1, #0x0
add r4, r0, #0x0
ldr r1, _02075234 ; =0x000005A4
mov r0, #0x1
ldr r1, [r4, r1]
add r1, #0x23
ldrb r1, [r1, #0x0]
sub r1, #0xb
lsl r1, r1, #0x10
lsr r1, r1, #0x10
bl FieldMove_GetMoveFunc
add r1, r0, #0x0
beq _020751C8
ldr r0, _02075234 ; =0x000005A4
ldr r0, [r4, r0]
ldr r0, [r0, #0x18]
blx r1
b _020751CA
_020751C8:
mov r0, #0x1
_020751CA:
cmp r0, #0x4
bhi _0207520A
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #0x6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_020751DA: ; jump table (using 16-bit offset)
.short _020751E4 - _020751DA - 2; case 0
.short _020751FC - _020751DA - 2; case 1
.short _02075200 - _020751DA - 2; case 2
.short _02075204 - _020751DA - 2; case 3
.short _02075208 - _020751DA - 2; case 4
_020751E4:
ldr r0, _02075238 ; =0x000006FC
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_02001C5C
ldr r0, _0207523C ; =0x000006F8
ldr r0, [r4, r0]
bl ListMenuItems_Delete
mov r0, #0x1b
str r0, [r6, #0x0]
pop {r4-r6, pc}
_020751FC:
mov r5, #0x68
b _0207520A
_02075200:
mov r5, #0x4c
b _0207520A
_02075204:
mov r5, #0xc4
b _0207520A
_02075208:
mov r5, #0x66
_0207520A:
mov r0, #0x85
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
bl sub_02073DB4
add r0, r4, #0x0
add r1, r5, #0x0
mov r2, #0x1
bl sub_020731E8
ldr r0, _02075240 ; =0x00000B22
mov r1, #0x3
strb r1, [r4, r0]
mov r0, #0x14
str r0, [r6, #0x0]
pop {r4-r6, pc}
nop
_02075234: .word 0x000005A4
_02075238: .word 0x000006FC
_0207523C: .word 0x000006F8
_02075240: .word 0x00000B22
thumb_func_start sub_02075244
sub_02075244: ; 0x02075244
ldr r2, _02075254 ; =0x000005A4
mov r3, #0xb
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075258 ; =sub_020751A0
bx r3
nop
_02075254: .word 0x000005A4
_02075258: .word sub_020751A0
thumb_func_start sub_0207525C
sub_0207525C: ; 0x0207525C
ldr r2, _0207526C ; =0x000005A4
mov r3, #0x10
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075270 ; =sub_020751A0
bx r3
nop
_0207526C: .word 0x000005A4
_02075270: .word sub_020751A0
thumb_func_start sub_02075274
sub_02075274: ; 0x02075274
ldr r2, _02075284 ; =0x000005A4
mov r3, #0xe
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075288 ; =sub_020751A0
bx r3
nop
_02075284: .word 0x000005A4
_02075288: .word sub_020751A0
thumb_func_start sub_0207528C
sub_0207528C: ; 0x0207528C
ldr r2, _0207529C ; =0x000005A4
mov r3, #0xd
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _020752A0 ; =sub_020751A0
bx r3
nop
_0207529C: .word 0x000005A4
_020752A0: .word sub_020751A0
thumb_func_start sub_020752A4
sub_020752A4: ; 0x020752A4
ldr r2, _020752B4 ; =0x000005A4
mov r3, #0xf
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _020752B8 ; =sub_020751A0
bx r3
nop
_020752B4: .word 0x000005A4
_020752B8: .word sub_020751A0
thumb_func_start sub_020752BC
sub_020752BC: ; 0x020752BC
ldr r2, _020752CC ; =0x000005A4
mov r3, #0x12
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _020752D0 ; =sub_020751A0
bx r3
nop
_020752CC: .word 0x000005A4
_020752D0: .word sub_020751A0
thumb_func_start sub_020752D4
sub_020752D4: ; 0x020752D4
ldr r2, _020752E4 ; =0x000005A4
mov r3, #0xc
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _020752E8 ; =sub_020751A0
bx r3
nop
_020752E4: .word 0x000005A4
_020752E8: .word sub_020751A0
thumb_func_start sub_020752EC
sub_020752EC: ; 0x020752EC
ldr r2, _020752FC ; =0x000005A4
mov r3, #0x11
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075300 ; =sub_020751A0
bx r3
nop
_020752FC: .word 0x000005A4
_02075300: .word sub_020751A0
thumb_func_start sub_02075304
sub_02075304: ; 0x02075304
ldr r2, _02075314 ; =0x000005A4
mov r3, #0x13
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075318 ; =sub_020751A0
bx r3
nop
_02075314: .word 0x000005A4
_02075318: .word sub_020751A0
thumb_func_start sub_0207531C
sub_0207531C: ; 0x0207531C
ldr r2, _0207532C ; =0x000005A4
mov r3, #0x14
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075330 ; =sub_020751A0
bx r3
nop
_0207532C: .word 0x000005A4
_02075330: .word sub_020751A0
thumb_func_start sub_02075334
sub_02075334: ; 0x02075334
ldr r2, _02075344 ; =0x000005A4
mov r3, #0x15
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075348 ; =sub_020751A0
bx r3
nop
_02075344: .word 0x000005A4
_02075348: .word sub_020751A0
thumb_func_start sub_0207534C
sub_0207534C: ; 0x0207534C
ldr r2, _0207535C ; =0x000005A4
mov r3, #0x16
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075360 ; =sub_020751A0
bx r3
nop
_0207535C: .word 0x000005A4
_02075360: .word sub_020751A0
thumb_func_start sub_02075364
sub_02075364: ; 0x02075364
ldr r2, _02075374 ; =0x000005A4
mov r3, #0x17
ldr r2, [r0, r2]
add r2, #0x23
strb r3, [r2, #0x0]
ldr r3, _02075378 ; =sub_020751A0
bx r3
nop
_02075374: .word 0x000005A4
_02075378: .word sub_020751A0
thumb_func_start sub_0207537C
sub_0207537C: ; 0x0207537C
push {r3-r5, lr}
add r4, r0, #0x0
add r5, r1, #0x0
bl sub_020753B4
str r0, [r5, #0x0]
cmp r0, #0x1a
bne _02075392
ldr r0, _02075394 ; =0x00000B2E
mov r1, #0xd
strh r1, [r4, r0]
_02075392:
pop {r3-r5, pc}
.balign 4
_02075394: .word 0x00000B2E
thumb_func_start sub_02075398
sub_02075398: ; 0x02075398
push {r3-r5, lr}
add r4, r0, #0x0
add r5, r1, #0x0
bl sub_020753B4
str r0, [r5, #0x0]
cmp r0, #0x1a
bne _020753AE
ldr r0, _020753B0 ; =0x00000B2E
mov r1, #0xe
strh r1, [r4, r0]
_020753AE:
pop {r3-r5, pc}
.balign 4
_020753B0: .word 0x00000B2E
thumb_func_start sub_020753B4
sub_020753B4: ; 0x020753B4
push {r3-r4, lr}
sub sp, #0x4
add r4, r0, #0x0
mov r0, #0x85
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
bl sub_02073DB4
ldr r0, _020754A8 ; =0x00000B25
ldrb r1, [r4, r0]
mov r0, #0x2c
mul r0, r1
add r1, r4, r0
ldr r0, _020754AC ; =0x00000708
ldrh r0, [r1, r0]
mov r1, #0x5
bl _s32_div_f
ldr r1, _020754B0 ; =0x00000B28
strh r0, [r4, r1]
sub r0, r1, #0x3
ldrb r2, [r4, r0]
mov r0, #0x2c
mul r0, r2
add r2, r4, r0
ldr r0, _020754B4 ; =0x00000706
ldrh r2, [r2, r0]
ldrh r0, [r4, r1]
cmp r2, r0
bhi _0207540E
add r0, r4, #0x0
mov r1, #0x8a
mov r2, #0x1
bl sub_020731E8
ldr r0, _020754B8 ; =0x00000B22
mov r1, #0x3
strb r1, [r4, r0]
add sp, #0x4
mov r0, #0x14
pop {r3-r4, pc}
_0207540E:
sub r0, r1, #0x5
ldrb r2, [r4, r0]
mov r0, #0x40
orr r2, r0
sub r0, r1, #0x5
strb r2, [r4, r0]
ldrb r0, [r4, r0]
mov r2, #0x3f
bic r0, r2
sub r2, r1, #0x3
ldrb r3, [r4, r2]
mov r2, #0x3f
and r2, r3
orr r2, r0
sub r0, r1, #0x5
strb r2, [r4, r0]
ldr r0, _020754BC ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
ldr r0, _020754BC ; =0x000005C8
add r1, sp, #0x0
ldr r0, [r4, r0]
add r1, #0x2
add r2, sp, #0x0
bl sub_0200C75C
ldr r0, _020754C0 ; =0x000005CC
add r3, sp, #0x0
mov r1, #0x2
mov r2, #0x0
ldrsh r1, [r3, r1]
ldrsh r2, [r3, r2]
ldr r0, [r4, r0]
bl sub_0200C6E4
ldr r0, _020754C4 ; =0x000005A4
ldr r1, _020754C8 ; =0x00000B23
ldr r0, [r4, r0]
ldrb r1, [r4, r1]
add r0, #0x21
ldrb r0, [r0, #0x0]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020714BC
add r1, r0, #0x0
ldr r0, _020754C0 ; =0x000005CC
add r1, r1, #0x2
ldr r0, [r4, r0]
bl sub_02020130
ldr r0, _020754C0 ; =0x000005CC
mov r1, #0x1
ldr r0, [r4, r0]
bl sub_020200A0
ldr r1, _020754C8 ; =0x00000B23
add r0, r4, #0x0
ldrb r1, [r4, r1]
lsl r1, r1, #0x1a
lsr r1, r1, #0x1a
bl sub_020709FC
add r0, r4, #0x0
mov r1, #0x24
mov r2, #0x1
bl sub_020731C0
ldr r0, _020754CC ; =0x00000B2A
mov r1, #0x0
strh r1, [r4, r0]
mov r0, #0x1a
add sp, #0x4
pop {r3-r4, pc}
nop
_020754A8: .word 0x00000B25
_020754AC: .word 0x00000708
_020754B0: .word 0x00000B28
_020754B4: .word 0x00000706
_020754B8: .word 0x00000B22
_020754BC: .word 0x000005C8
_020754C0: .word 0x000005CC
_020754C4: .word 0x000005A4
_020754C8: .word 0x00000B23
_020754CC: .word 0x00000B2A
thumb_func_start sub_020754D0
sub_020754D0: ; 0x020754D0
push {r4, lr}
add r4, r0, #0x0
ldr r0, _02075504 ; =gSystem
ldr r1, [r0, #0x48]
mov r0, #0x3
tst r1, r0
beq _02075500
mov r0, #0x89
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
bl ClearFrameAndWindow2
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
bl sub_020731C0
ldr r0, _02075508 ; =0x000005C8
mov r1, #0x0
ldr r0, [r4, r0]
bl sub_0200C664
mov r0, #0x1
_02075500:
pop {r4, pc}
nop
_02075504: .word gSystem
_02075508: .word 0x000005C8