pmd-sky/asm/overlay_21.s
2025-10-22 21:15:44 -04:00

3240 lines
72 KiB
ArmAsm

.include "asm/macros.inc"
.include "overlay_21.inc"
.text
arm_func_start SwapShopDialogueManager
SwapShopDialogueManager: ; 0x0238A140
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
sub sp, sp, #0x180
ldr r4, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r4]
str r0, [r1]
ldr r0, [r4]
ldr r1, [r0]
cmp r1, #0x42
addls pc, pc, r1, lsl #2
b _0238B7B8
_0238A168: ; jump table
b _0238A274 ; case 0
b _0238A378 ; case 1
b _0238A3E0 ; case 2
b _0238A594 ; case 3
b _0238A844 ; case 4
b _0238A668 ; case 5
b _0238A6DC ; case 6
b _0238A750 ; case 7
b _0238A7D0 ; case 8
b _0238A854 ; case 9
b _0238A8D4 ; case 10
b _0238A950 ; case 11
b _0238A98C ; case 12
b _0238A9A8 ; case 13
b _0238A9E8 ; case 14
b _0238AA1C ; case 15
b _0238AAC0 ; case 16
b _0238AF50 ; case 17
b _0238AC38 ; case 18
b _0238AC7C ; case 19
b _0238ACC0 ; case 20
b _0238AEF4 ; case 21
b _0238AE94 ; case 22
b _0238AE08 ; case 23
b _0238AD64 ; case 24
b _0238AD04 ; case 25
b _0238B7B8 ; case 26
b _0238A32C ; case 27
b _0238B7B8 ; case 28
b _0238B7B8 ; case 29
b _0238ABDC ; case 30
b _0238B7B8 ; case 31
b _0238A4EC ; case 32
b _0238A44C ; case 33
b _0238A478 ; case 34
b _0238A520 ; case 35
b _0238B204 ; case 36
b _0238B228 ; case 37
b _0238B260 ; case 38
b _0238B7B8 ; case 39
b _0238B28C ; case 40
b _0238B7B8 ; case 41
b _0238B2BC ; case 42
b _0238B7B8 ; case 43
b _0238B2EC ; case 44
b _0238B7B8 ; case 45
b _0238B318 ; case 46
b _0238B7B8 ; case 47
b _0238B344 ; case 48
b _0238B3B8 ; case 49
b _0238B7B8 ; case 50
b _0238B408 ; case 51
b _0238B434 ; case 52
b _0238B4CC ; case 53
b _0238B538 ; case 54
b _0238B5A4 ; case 55
b _0238A5FC ; case 56
b _0238B5D0 ; case 57
b _0238B640 ; case 58
b _0238B684 ; case 59
b _0238B7B8 ; case 60
b _0238B7B8 ; case 61
b _0238B6F8 ; case 62
b _0238B724 ; case 63
b _0238B68C ; case 64
b _0238B7B8 ; case 65
b _0238B7B8 ; case 66
_0238A274:
ldr r0, _0238B090 ; =SWAP_SHOP_TALK_WELCOME_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r2, #0x96
mov r0, #0
str r2, [r1, #0x54]
bl CreateDialogueBox
mov r3, r4
ldr r4, [r3]
ldr r1, _0238B094 ; =0x00003008
strb r0, [r4, #0x80]
ldr r3, [r3]
ldr r2, _0238B098 ; =0x000003B2
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
mov r0, #0
mov r1, #3
mov r2, #1
bl CreatePortraitBox
ldr r2, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, _0238B09C ; =0x000001EF
ldr r3, [r2]
strb r0, [r3, #0x81]
ldr r0, [r2]
add r0, r0, #0xc8
bl InitPortraitParamsWithMonsterId
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0
ldr r0, [r0]
add r0, r0, #0xc8
bl SetPortraitLayout
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
add r0, r1, #0xc8
ldr r1, [r1, #0x28]
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
b _0238B7B8
_0238A32C:
ldr r0, _0238B0A0 ; =SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING
bl Debug_Print0
ldr r0, _0238B0A4 ; =SWAP_SHOP_WINDOW_PARAMS_1
ldr r1, _0238B0A8 ; =SwapShopPrintCurrentGold
bl CreateTextBox
mov r2, r4
ldr r2, [r2]
ldr r1, _0238B0AC ; =0x00300013
strb r0, [r2, #0x84]
mov r4, #4
ldr r3, _0238B0B0 ; =SWAP_SHOP_MAIN_MENU_ITEMS_2
ldr r0, _0238B0B4 ; =SWAP_SHOP_WINDOW_PARAMS_5
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238A378:
ldr r0, _0238B0B8 ; =SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B094 ; =0x00003008
ldrsb r0, [r3, #0x80]
ldr r2, _0238B0BC ; =0x000003B3
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A3E0:
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #0x21
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B094 ; =0x00003008
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C620 ; =0x000032AF
#else
mov r2, #0x3d0
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A44C:
ldr r0, _0238B0C0 ; =SWAP_SHOP_WINDOW_PARAMS_7
mov r4, #3
ldr r1, _0238B0AC ; =0x00300013
ldr r3, _0238B0C4 ; =SWAP_SHOP_SUBMENU_ITEMS_2
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238A478:
ldr r0, _0238B0C8 ; =SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #0x20
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
add r2, r1, #0x28c
#else
ldr r2, _0238B0D0 ; =0x000003C5
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A4EC:
ldr r0, _0238B0C8 ; =SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r2, [r0]
#ifdef JAPAN
mov r3, #2
str r3, [r2, #4]
#else
mov r4, #2
str r4, [r2, #4]
#endif
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C634 ; =0x000032A5
#else
add r2, r4, #0x3c4
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A520:
ldr r0, _0238B0C8 ; =SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #2
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B0D4 ; =0x000003C7
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A594:
ldr r0, _0238B0D8 ; =SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r2, #4
str r2, [r1, #4]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C640 ; =0x000032A7
#else
mov r2, #0x3c8
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A5FC:
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #1
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B0DC ; =0x000003B7
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A668:
ldr r0, _0238B0E0 ; =SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #1
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B0E4 ; =0x000003B6
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A6DC:
ldr r0, _0238B0E8 ; =SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #1
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C654 ; =0x00003293
#else
mov r2, #0x3b4
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A750:
ldr r0, _0238B0EC ; =SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r2, #0x96
str r2, [r1, #0x54]
ldr r1, [r0]
mov r3, #1
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
add r2, r1, #0x27c
#else
ldr r2, _0238B0F0 ; =0x000003B5
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A7D0:
ldr r0, _0238B0F4 ; =SWAP_SHOP_UNK_8_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #0xd
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C660 ; =0x000032A3
#else
mov r2, #0x3c4
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A844:
ldr r0, _0238B0F8 ; =SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING
bl Debug_Print0
bl ov11_022DC504
b _0238B7B8
_0238A854:
ldr r0, _0238B0FC ; =SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r2, #0xb
str r2, [r1, #4]
ldr r1, [r0]
mov r3, #0x1a
str r3, [r1]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C66C ; =0x00003297
#else
mov r2, #0x3b8
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A8D4:
ldr r0, _0238B100 ; =SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r2, #0xd
str r2, [r1, #4]
ldr r1, [r0]
mov r3, #0x1a
str r3, [r1]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B094 ; =0x00003008
ldrsb r0, [r3, #0x80]
ldr r2, _0238B104 ; =0x000003C2
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238A950:
ldr r0, _0238B108 ; =SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238B7B8
_0238A98C:
ldr r0, _0238B10C ; =SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING
bl Debug_Print0
bl ov11_0230C910
mov r0, #0
mov r1, r0
bl SwapShopInventoryManager
b _0238B7B8
_0238A9A8:
ldr r0, _0238B110 ; =SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
bl ov11_0230BB98
b _0238B7B8
_0238A9E8:
ldr r0, _0238B114 ; =SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING
bl Debug_Print0
mov r4, #3
ldr r0, _0238B118 ; =SWAP_SHOP_WINDOW_PARAMS_6
ldr r1, _0238B11C ; =0x00400013
ldr r3, _0238B120 ; =SWAP_SHOP_MAIN_MENU_ITEMS_1
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238AA1C:
ldr r0, _0238B124 ; =SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r5, [r0]
ldr r2, _0238B128 ; =SWAP_SHOP_ITEM_ZERO_STRING
ldrsh r4, [r5, #0xe]
ldr r3, _0238B12C ; =0x0000C402
mov r1, #0x400
str r4, [r5, #0x40]
ldr r5, [r0]
ldrh r4, [r5, #0x10]
str r4, [r5, #0x54]
ldr r0, [r0]
add r4, r0, #0x30
add r0, r0, #0x86
str r4, [sp]
bl PreprocessString
add r0, sp, #0x18
bl InitPreprocessorArgs
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
add r1, sp, #0x18
ldr r3, [r0]
ldr r0, _0238B130 ; =SWAP_SHOP_WINDOW_PARAMS_8
add r2, r3, #0x86
str r2, [sp, #0x50]
str r1, [sp]
ldrsh r2, [r3, #0xe]
add r3, r3, #0x30
ldr r1, _0238B134 ; =0x00001013
#if defined(EUROPE)
add r2, r2, #0xd3
add r2, r2, #0x2900
#elif defined(JAPAN)
add r2, r2, #0xce
add r2, r2, #0x4100
#else
add r2, r2, #0xd1
add r2, r2, #0x2900
#endif
mov r2, r2, lsl #0x10
mov r2, r2, lsr #0x10
stmib sp, {r2, r3}
ldr r3, _0238B138 ; =0x0000033E
mov r2, #0
bl CreateScrollBoxSingle
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x85]
b _0238B7B8
_0238AAC0:
ldr r0, _0238B13C ; =SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r3, #0x96
str r3, [r1, #0x54]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r1, [r0]
mov r3, #0x1c
str r3, [r1]
ldr r1, [r0]
mov r2, #0x1e
str r2, [r1, #4]
ldr r0, [r0]
ldrsh r0, [r0, #0xe]
bl GetFirstExclusivePrerequisite
mov r1, r4
ldr r4, [r1]
add r3, r0, #1
add r2, r0, #2
str r0, [r4, #0x44]
ldr r0, [r1]
str r3, [r0, #0x48]
ldr r0, [r1]
str r2, [r0, #0x4c]
ldr r2, [r1]
ldrh r0, [r2, #0xd8]
str r0, [r2, #0x58]
ldr r3, [r1]
ldrh r0, [r3, #0xd8]
cmp r0, #0
beq _0238AB90
#ifdef JAPAN
ldr r1, _0238B094 ; =0x00003008
ldrsb r0, [r3, #0x80]
add r2, r1, #0x294
#else
ldrsb r0, [r3, #0x80]
ldr r1, _0238B094 ; =0x00003008
ldr r2, _0238B140 ; =0x000003BD
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238AB90:
ldrsh r0, [r3, #0xe]
bl ov11_0230C068
cmp r0, #3
ldr r1, _0238B094 ; =0x00003008
bne _0238ABC0
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
#ifdef JAPAN
ldr r2, _0238C6B0 ; =0x0000329B
#else
mov r2, #0x3bc
#endif
ldr r3, [r0]
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238ABC0:
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r2, _0238B144 ; =0x000003BB
ldr r3, [r0]
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238ABDC:
ldr r0, _0238B148 ; =SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING
bl Debug_Print0
mov r1, r4
ldr r2, [r1]
mov r3, #0x96
ldr r0, _0238B0A4 ; =SWAP_SHOP_WINDOW_PARAMS_1
ldr r1, _0238B0A8 ; =SwapShopPrintCurrentGold
str r3, [r2, #0x54]
bl CreateTextBox
mov r2, r4
ldr r2, [r2]
ldr r1, _0238B0AC ; =0x00300013
strb r0, [r2, #0x84]
mov r4, #2
ldr r3, _0238B14C ; =SWAP_SHOP_MENU_ITEMS_CONFIRM
ldr r0, _0238B0C0 ; =SWAP_SHOP_WINDOW_PARAMS_7
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238AC38:
ldr r0, _0238B150 ; =SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r3, #6
str r3, [r1, #0x2c]
ldr r1, [r0]
mov r2, #0x15
str r2, [r1, #4]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238B7B8
_0238AC7C:
ldr r0, _0238B154 ; =SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r3, #7
str r3, [r1, #0x2c]
ldr r1, [r0]
mov r2, #0x16
str r2, [r1, #4]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238B7B8
_0238ACC0:
ldr r0, _0238B158 ; =SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING
bl Debug_Print0
mov r0, r4
ldr r1, [r0]
mov r3, #8
str r3, [r1, #0x2c]
ldr r1, [r0]
mov r2, #0x17
str r2, [r1, #4]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238B7B8
_0238AD04:
mov r1, #1
str r1, [r0, #4]
#ifdef JAPAN
ldr r3, [r4]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238C660 ; =0x000032A3
add r3, r3, #0x30
#else
ldr r2, [r4]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r2, #0x80]
add r3, r2, #0x30
mov r2, #0x3c4
#endif
bl ShowStringIdInDialogueBox
mov r0, r4
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
b _0238B7B8
_0238AD64:
ldrsh r0, [r0, #0xe]
bl ov11_0230C068
cmp r0, #3
mov r0, r4
bne _0238ADB0
ldr r1, [r0]
mov r3, #9
str r3, [r1, #0x58]
#ifdef JAPAN
ldr r3, [r0]
ldr r2, _0238C6CC ; =0x000032A2
ldrsb r0, [r3, #0x80]
mov r1, #0x18
#else
rsb r2, r3, #0x3cc
ldr r3, [r0]
mov r1, #0x18
ldrsb r0, [r3, #0x80]
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238ADE4
_0238ADB0:
ldr r1, [r0]
mov r3, #4
str r3, [r1, #0x58]
ldr r3, [r0]
ldr r2, _0238B15C ; =0x000003C1
ldrsb r0, [r3, #0x80]
mov r1, #0x18
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
_0238ADE4:
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
ldrb r0, [r1, #0xc]
cmp r0, #0
movne r0, #0x19
strne r0, [r1, #4]
moveq r0, #1
streq r0, [r1, #4]
b _0238B7B8
_0238AE08:
mov r1, #0x18
str r1, [r0, #4]
ldr r0, [r4]
ldrsh r0, [r0, #0xe]
bl ov11_0230C068
cmp r0, #3
mov r0, r4
ldr r1, _0238B0CC ; =0x00003018
ldr r3, [r0]
bne _0238AE44
ldrsb r0, [r3, #0x80]
ldr r2, _0238B104 ; =0x000003C2
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238AE54
_0238AE44:
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238C6D4 ; =0x0000329F
#else
mov r2, #0x3c0
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
_0238AE54:
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
b _0238B7B8
_0238AE94:
mov r1, #0x14
str r1, [r0, #4]
ldr r3, [r4]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B160 ; =0x000003BA
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
mov r0, r4
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
b _0238B7B8
_0238AEF4:
ldr r0, _0238B164 ; =SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING
bl Debug_Print0
mov r0, r4
#ifdef JAPAN
mov r3, #0x13
ldr r1, [r0]
add r2, r3, #0x1dc
str r3, [r1, #4]
ldr r1, [r0]
ldr r3, _0238B168 ; =0x00001311
str r2, [r1, #0x30]
ldr r1, [r0]
ldr r2, _0238C6E4 ; =0x0000329E
str r3, [r1, #0x54]
#else
mov r2, #0x13
ldr r1, [r0]
add r3, r2, #0x1dc
str r2, [r1, #4]
ldr r1, [r0]
ldr r4, _0238B168 ; =0x00001311
str r3, [r1, #0x30]
ldr r3, [r0]
add r2, r2, #0x3ac
str r4, [r3, #0x54]
#endif
ldr r3, [r0]
mov r1, #8
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
#ifdef JAPAN
mov r0, r4
#else
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
#endif
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238B7B8
_0238AF50:
ldr r0, _0238B16C ; =SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING
bl Debug_Print0
mvn r0, #0x95
bl AddMoneyCarried
ldr r1, [r4]
ldrh r0, [r1, #0xd8]
cmp r0, #0
beq _0238AFE8
mov r5, #0
b _0238AF88
_0238AF78:
add r0, r1, r5, lsl #1
ldrsh r0, [r0, #0xdc]
bl RemoveItem
add r5, r5, #1
_0238AF88:
ldr r1, [r4]
ldrh r0, [r1, #0xda]
cmp r5, r0
blt _0238AF78
mov r5, #0
ldr r4, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
b _0238AFB8
_0238AFA4:
add r0, r1, r5, lsl #1
add r0, r0, #0x100
ldrsh r0, [r0, #0x42]
bl RemoveItemAtIdxInStorage
add r5, r5, #1
_0238AFB8:
ldr r1, [r4]
add r0, r1, #0x100
ldrh r0, [r0, #0x40]
cmp r5, r0
blt _0238AFA4
bl RemoveEmptyItemsInBag
bl sub_0201007C
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsh r0, [r0, #0xe]
bl sub_02013150
b _0238B064
_0238AFE8:
ldrsh r0, [r1, #0xe]
bl ov11_0230C068
cmp r0, #3
moveq r5, #3
mov r4, #0
movne r5, #2
add r8, sp, #0x12
mov sl, r4
mov sb, #1
add r7, sp, #0xc
ldr r6, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
b _0238B05C
_0238B018:
ldr r0, [r6]
ldrsh r0, [r0, #0xe]
bl GetFirstExclusivePrerequisite
add r2, r4, r0
mov r0, r8
mov r1, r7
strh r2, [sp, #0x10]
strh sl, [sp, #0xe]
strb sb, [sp, #0xc]
bl ItemToBulkItem
mov r0, r8
bl RemoveItemByIdAndStackNoHole
cmp r0, #0
bne _0238B058
mov r0, r8
bl RemoveBulkItemInStorage
_0238B058:
add r4, r4, #1
_0238B05C:
cmp r4, r5
blt _0238B018
_0238B064:
bl IsBagFull
cmp r0, #0
beq _0238B170
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl AddBulkItemToStorage
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #1
b _0238B188
.align 2, 0
#ifdef JAPAN
#define OV21_238A140_OFFSET 0x2EDF
#else
#define OV21_238A140_OFFSET 0
#endif
_0238B08C: .word SWAP_SHOP_MENU_DATA_PTR
_0238B090: .word SWAP_SHOP_TALK_WELCOME_DEBUG_STRING
_0238B094: .word 0x00003008
_0238B098: .word 0x000003B2 + OV21_238A140_OFFSET
_0238B09C: .word 0x000001EF
_0238B0A0: .word SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING
_0238B0A4: .word SWAP_SHOP_WINDOW_PARAMS_1
_0238B0A8: .word SwapShopPrintCurrentGold
_0238B0AC: .word 0x00300013
_0238B0B0: .word SWAP_SHOP_MAIN_MENU_ITEMS_2
_0238B0B4: .word SWAP_SHOP_WINDOW_PARAMS_5
_0238B0B8: .word SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING
_0238B0BC: .word 0x000003B3 + OV21_238A140_OFFSET
#ifdef JAPAN
_0238C620: .word 0x000032AF
#endif
_0238B0C0: .word SWAP_SHOP_WINDOW_PARAMS_7
_0238B0C4: .word SWAP_SHOP_SUBMENU_ITEMS_2
_0238B0C8: .word SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING
_0238B0CC: .word 0x00003018
#ifdef JAPAN
_0238C634: .word 0x000032A5
#else
_0238B0D0: .word 0x000003C5
#endif
_0238B0D4: .word 0x000003C7 + OV21_238A140_OFFSET
_0238B0D8: .word SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING
#ifdef JAPAN
_0238C640: .word 0x000032A7
#endif
_0238B0DC: .word 0x000003B7 + OV21_238A140_OFFSET
_0238B0E0: .word SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING
_0238B0E4: .word 0x000003B6 + OV21_238A140_OFFSET
_0238B0E8: .word SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING
#ifdef JAPAN
_0238C654: .word 0x00003293
_0238B0EC: .word SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING
_0238B0F4: .word SWAP_SHOP_UNK_8_DEBUG_STRING
_0238C660: .word 0x000032A3
#else
_0238B0EC: .word SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING
_0238B0F0: .word 0x000003B5
_0238B0F4: .word SWAP_SHOP_UNK_8_DEBUG_STRING
#endif
_0238B0F8: .word SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING
_0238B0FC: .word SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING
#ifdef JAPAN
_0238C66C: .word 0x00003297
#endif
_0238B100: .word SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING
_0238B104: .word 0x000003C2 + OV21_238A140_OFFSET
_0238B108: .word SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING
_0238B10C: .word SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING
_0238B110: .word SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING
_0238B114: .word SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING
_0238B118: .word SWAP_SHOP_WINDOW_PARAMS_6
_0238B11C: .word 0x00400013
_0238B120: .word SWAP_SHOP_MAIN_MENU_ITEMS_1
_0238B124: .word SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING
_0238B128: .word SWAP_SHOP_ITEM_ZERO_STRING
_0238B12C: .word 0x0000C402
_0238B130: .word SWAP_SHOP_WINDOW_PARAMS_8
_0238B134: .word 0x00001013
#ifdef JAPAN
_0238B138: .word 0x00003203
_0238B13C: .word SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING
_0238C6B0: .word 0x0000329B
#else
_0238B138: .word 0x0000033E
_0238B13C: .word SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING
_0238B140: .word 0x000003BD
#endif
_0238B144: .word 0x000003BB + OV21_238A140_OFFSET
_0238B148: .word SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING
_0238B14C: .word SWAP_SHOP_MENU_ITEMS_CONFIRM
_0238B150: .word SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING
_0238B154: .word SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING
_0238B158: .word SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING
#ifdef JAPAN
_0238C6CC: .word 0x000032A2
_0238B15C: .word 0x000032A0
_0238C6D4: .word 0x0000329F
_0238B160: .word 0x00003299
#else
_0238B15C: .word 0x000003C1
_0238B160: .word 0x000003BA
#endif
_0238B164: .word SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING
_0238B168: .word 0x00001311
#ifdef JAPAN
_0238C6E4: .word 0x0000329E
#endif
_0238B16C: .word SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING
_0238B170:
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl SpecialProcAddItemToBag
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0
_0238B188:
ldr r0, [r0]
mov r2, #0x12
strb r1, [r0, #0xc]
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
str r2, [r1, #4]
ldr r2, [r0]
ldrsh r1, [r2, #0xe]
str r1, [r2, #0x44]
ldr r2, [r0]
ldrh r1, [r2, #0x10]
str r1, [r2, #0x58]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, _0238B0CC ; =0x00003018
ldr r3, [r0]
ldr r2, _0238B7C0 ; =0x000003BE
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B204:
mov r1, #0x25
str r1, [r0, #4]
ldr r3, [r4]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B7C4 ; =0x000003CA
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B228:
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
mov r0, #0xc
mov r1, #0
bl sub_02039C2C
b _0238B7B8
_0238B260:
ldr r0, _0238B7C8 ; =SWAP_SHOP_WINDOW_PARAMS_9
mov r4, #5
ldr r3, _0238B7CC ; =SWAP_SHOP_SUBMENU_ITEMS_3
mov r1, #0x13
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238B28C:
ldr r1, [r0, #0x914]
add r0, sp, #0x68
mov r1, r1, lsl #0x10
mov r1, r1, asr #0x10
bl sub_0205B028
add r0, sp, #0x68
mov r1, #3
bl sub_0203F150
mov r1, r4
ldr r1, [r1]
strb r0, [r1, #0x85]
b _0238B7B8
_0238B2BC:
ldr r0, [r0, #0x914]
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bl sub_0203FA64
mov r1, #0
mov r2, r1
mov r0, #9
bl sub_0204018C
mov r1, r4
ldr r1, [r1]
strb r0, [r1, #0x82]
b _0238B7B8
_0238B2EC:
add r1, r0, #0x900
ldrsh r2, [r1, #0x18]
add r0, r0, #0x1a
add r0, r0, #0x900
mov r1, #4
mov r3, #1
bl sub_020417A8
mov r1, r4
ldr r1, [r1]
strb r0, [r1, #0x85]
b _0238B7B8
_0238B318:
ldr r0, [r0, #0x914]
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bl GetTeamMember
mov r1, r0
ldrsh r0, [r1, #4]
ldrsh r2, [r1, #8]
add r1, r1, #0x14
mov r3, #0
bl PrintIqSkillsMenu
b _0238B7B8
_0238B344:
mov r1, #0x31
str r1, [r0, #4]
ldr r2, [r4]
mov r1, #0
ldr r0, [r2, #0x914]
orr r0, r0, #0x20000
str r0, [r2, #0x30]
ldr r0, [r4]
str r1, [r0, #0x28]
ldr r0, [r4]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
ldr r2, _0238B7D0 ; =0x000003CB
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
bl ov11_0230C910
b _0238B7B8
_0238B3B8:
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
mov r0, r4
ldr r0, [r0]
ldr r0, [r0, #0x914]
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bl GetTeamMember
ldrsh r1, [r0, #4]
mov r0, #2
bl SwapShopInventoryManager
b _0238B7B8
_0238B408:
ldr r0, _0238B118 ; =SWAP_SHOP_WINDOW_PARAMS_6
mov r4, #2
ldr r3, _0238B7D4 ; =SWAP_SHOP_SUBMENU_ITEMS_1
mov r1, #0x13
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238B434:
ldrsh r1, [r0, #0xe]
ldr r2, _0238B128 ; =SWAP_SHOP_ITEM_ZERO_STRING
ldr r3, _0238B12C ; =0x0000C402
str r1, [r0, #0x40]
ldr r5, [r4]
mov r1, #0x400
ldrh r0, [r5, #0x10]
str r0, [r5, #0x54]
ldr r0, [r4]
add r4, r0, #0x30
add r0, r0, #0x86
str r4, [sp]
bl PreprocessString
add r0, sp, #0xe0
bl InitPreprocessorArgs
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
add r1, sp, #0xe0
ldr r4, [r0]
ldr r0, _0238B130 ; =SWAP_SHOP_WINDOW_PARAMS_8
add r2, r4, #0x86
str r2, [sp, #0x118]
str r1, [sp]
ldrsh r2, [r4, #0xe]
ldr r1, _0238B134 ; =0x00001013
ldr r3, _0238B138 ; =0x0000033E
#if defined(EUROPE)
add r2, r2, #0xd3
add r2, r2, #0x2900
#elif defined(JAPAN)
add r2, r2, #0xce
add r2, r2, #0x4100
#else
add r2, r2, #0xd1
add r2, r2, #0x2900
#endif
mov r2, r2, lsl #0x10
mov r2, r2, lsr #0x10
str r2, [sp, #4]
add r4, r4, #0x30
mov r2, #0
str r4, [sp, #8]
bl CreateScrollBoxSingle
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x85]
b _0238B7B8
_0238B4CC:
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #0x36
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
add r2, r1, #0x280
#else
ldr r2, _0238B7D8 ; =0x000003B9
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B538:
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #0x37
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B094 ; =0x00003008
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
ldr r2, _0238CD54 ; =0x000032AB
#else
mov r2, #0x3cc
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B5A4:
ldr r0, _0238B0C0 ; =SWAP_SHOP_WINDOW_PARAMS_7
mov r4, #2
ldr r1, _0238B0AC ; =0x00300013
ldr r3, _0238B14C ; =SWAP_SHOP_MENU_ITEMS_CONFIRM
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238B5D0:
mov r1, #0x3a
str r1, [r0, #4]
ldr r2, [r4]
mov r1, #0
ldr r0, [r2, #0x914]
orr r0, r0, #0x20000
str r0, [r2, #0x30]
ldr r0, [r4]
str r1, [r0, #0x28]
ldr r0, [r4]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
add r2, r1, #0x290
#else
ldr r2, _0238B7DC ; =0x000003C9
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B640:
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
mov r0, r4
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
bl ov11_0230C910
mov r1, r4
ldr r1, [r1]
mov r0, #3
ldrh r1, [r1, #0xd8]
bl SwapShopInventoryManager
b _0238B7B8
_0238B684:
bl ov11_0230BB98
b _0238B7B8
_0238B68C:
bl CloseTextboxAndSimpleMenu
mov r0, r4
ldr r1, [r0]
mov r3, #1
str r3, [r1, #4]
ldr r1, [r0]
mov r2, #0
str r2, [r1, #0x28]
ldr r0, [r0]
ldr r1, [r0, #0x28]
add r0, r0, #0xc8
mov r1, r1, lsl #0x18
mov r1, r1, asr #0x18
bl SetPortraitEmotion
mov r0, r4
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
mov r0, r4
ldr r3, [r0]
ldr r1, _0238B0CC ; =0x00003018
ldrsb r0, [r3, #0x80]
#ifdef JAPAN
add r2, r1, #0x280
#else
ldr r2, _0238B7D8 ; =0x000003B9
#endif
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238B7B8
_0238B6F8:
ldr r0, _0238B118 ; =SWAP_SHOP_WINDOW_PARAMS_6
mov r4, #2
ldr r3, _0238B7D4 ; =SWAP_SHOP_SUBMENU_ITEMS_1
mov r1, #0x13
mov r2, #0
str r4, [sp]
bl CreateSimpleMenuFromStringIds
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x83]
b _0238B7B8
_0238B724:
ldrsh r1, [r0, #0x18]
ldr r2, _0238B128 ; =SWAP_SHOP_ITEM_ZERO_STRING
ldr r3, _0238B12C ; =0x0000C402
str r1, [r0, #0x40]
ldr r5, [r4]
mov r1, #0x400
ldrh r0, [r5, #0x1a]
str r0, [r5, #0x54]
ldr r0, [r4]
add r4, r0, #0x30
add r0, r0, #0x86
str r4, [sp]
bl PreprocessString
add r0, sp, #0x130
bl InitPreprocessorArgs
ldr r0, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
add r1, sp, #0x130
ldr r4, [r0]
ldr r0, _0238B130 ; =SWAP_SHOP_WINDOW_PARAMS_8
add r2, r4, #0x86
str r2, [sp, #0x168]
str r1, [sp]
ldrsh r2, [r4, #0x18]
ldr r1, _0238B134 ; =0x00001013
ldr r3, _0238B138 ; =0x0000033E
#if defined(EUROPE)
add r2, r2, #0xd3
add r2, r2, #0x2900
#elif defined(JAPAN)
add r2, r2, #0xce
add r2, r2, #0x4100
#else
add r2, r2, #0xd1
add r2, r2, #0x2900
#endif
mov r2, r2, lsl #0x10
mov r2, r2, lsr #0x10
str r2, [sp, #4]
add r4, r4, #0x30
mov r2, #0
str r4, [sp, #8]
bl CreateScrollBoxSingle
ldr r1, _0238B08C ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
strb r0, [r1, #0x85]
_0238B7B8:
add sp, sp, #0x180
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
_0238B7C0: .word 0x000003BE + OV21_238A140_OFFSET
_0238B7C4: .word 0x000003CA + OV21_238A140_OFFSET
_0238B7C8: .word SWAP_SHOP_WINDOW_PARAMS_9
_0238B7CC: .word SWAP_SHOP_SUBMENU_ITEMS_3
_0238B7D0: .word 0x000003CB + OV21_238A140_OFFSET
_0238B7D4: .word SWAP_SHOP_SUBMENU_ITEMS_1
#ifdef JAPAN
_0238CD54: .word 0x000032AB
#else
_0238B7D8: .word 0x000003B9
_0238B7DC: .word 0x000003C9
#endif
arm_func_end SwapShopDialogueManager
arm_func_start GetFirstExclusivePrerequisite
GetFirstExclusivePrerequisite: ; 0x0238B7E0
cmp r0, #0x1bc
blt _0238B7F8
ldr r1, _0238B834 ; =0x000001C3
cmp r0, r1
ldrle r0, _0238B838 ; =0x000002FE
bxle lr
_0238B7F8:
cmp r0, #0x1c4
blt _0238B810
ldr r1, _0238B83C ; =0x000001C7
cmp r0, r1
ldrle r0, _0238B840 ; =0x00000336
bxle lr
_0238B810:
ldr r1, _0238B844 ; =0xFFFFFE06
add r1, r0, r1
mov r0, r1, asr #1
add r0, r1, r0, lsr #30
mov r0, r0, asr #2
mov r0, r0, lsl #2
add r0, r0, #0xfa
add r0, r0, #0x100
bx lr
.align 2, 0
_0238B834: .word 0x000001C3
_0238B838: .word 0x000002FE
_0238B83C: .word 0x000001C7
_0238B840: .word 0x00000336
_0238B844: .word 0xFFFFFE06
arm_func_end GetFirstExclusivePrerequisite
arm_func_start SwapShopEntryPoint
SwapShopEntryPoint: ; 0x0238B848
stmdb sp!, {r3, lr}
ldr r0, _0238B8F0 ; =0x0000093C
mov r1, #6
bl MemAlloc
ldr r1, _0238B8F4 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0
str r0, [r1]
str r3, [r0, #0x1c]
ldr r0, [r1]
sub r2, r3, #2
str r3, [r0, #0x20]
ldr r0, [r1]
str r3, [r0, #0x24]
ldr r0, [r1]
strb r2, [r0, #0x84]
ldr r0, [r1]
strb r2, [r0, #0x82]
ldr r0, [r1]
strb r2, [r0, #0x83]
ldr r0, [r1]
str r3, [r0, #0x2c]
ldr r0, [r1]
add r0, r0, #0x30
bl InitPreprocessorArgs
ldr r0, _0238B8F4 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r3, _0238B8F8 ; =0x000001EF
ldr r2, [r0]
mov r1, #0
str r3, [r2, #0x7c]
ldr r2, [r0]
str r3, [r2, #0x30]
ldr r0, [r0]
str r1, [r0, #8]
bl ov11_0230C910
ldr r0, _0238B8F4 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
mov r0, #0x41
str r2, [r1, #0x28]
bl SwapShopDialogueManager
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
_0238B8F0: .word 0x0000093C
_0238B8F4: .word SWAP_SHOP_MENU_DATA_PTR
_0238B8F8: .word 0x000001EF
arm_func_end SwapShopEntryPoint
arm_func_start SwapShopDestructor
SwapShopDestructor: ; 0x0238B8FC
stmdb sp!, {r3, lr}
ldr r0, _0238B924 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
cmp r0, #0
ldmeqia sp!, {r3, pc}
bl MemFree
ldr r0, _0238B924 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0
str r1, [r0]
ldmia sp!, {r3, pc}
.align 2, 0
_0238B924: .word SWAP_SHOP_MENU_DATA_PTR
arm_func_end SwapShopDestructor
arm_func_start SwapShopMainManager
SwapShopMainManager: ; 0x0238B928
stmdb sp!, {lr}
sub sp, sp, #0xc
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r3, [r0]
ldr r1, [r3, #0x2c]
cmp r1, #8
addls pc, pc, r1, lsl #2
b _0238C914
_0238B948: ; jump table
b _0238B96C ; case 0
b _0238B97C ; case 1
b _0238C830 ; case 2
b _0238C904 ; case 3
b _0238C8E8 ; case 4
b _0238C914 ; case 5
b _0238C858 ; case 6
b _0238C880 ; case 7
b _0238C8A8 ; case 8
_0238B96C:
mov r0, #4
str r0, [r3, #0x2c]
bl ov11_022E6E68
b _0238C914
_0238B97C:
ldr r2, [r3]
cmp r2, #0x43
addls pc, pc, r2, lsl #2
b _0238C7B4
_0238B98C: ; jump table
b _0238BA9C ; case 0
b _0238BA9C ; case 1
b _0238C7B4 ; case 2
b _0238C7B4 ; case 3
b _0238BE08 ; case 4
b _0238C7B4 ; case 5
b _0238C7B4 ; case 6
b _0238C7B4 ; case 7
b _0238C7B4 ; case 8
b _0238C7B4 ; case 9
b _0238C7B4 ; case 10
b _0238BAC8 ; case 11
b _0238BAE4 ; case 12
b _0238BAE4 ; case 13
b _0238BBA8 ; case 14
b _0238BD40 ; case 15
b _0238BD7C ; case 16
b _0238C7B4 ; case 17
b _0238C7A8 ; case 18
b _0238C7A8 ; case 19
b _0238C7A8 ; case 20
b _0238C7B4 ; case 21
b _0238C7B4 ; case 22
b _0238C7B4 ; case 23
b _0238C7B4 ; case 24
b _0238C7B4 ; case 25
b _0238BE10 ; case 26
b _0238BE60 ; case 27
b _0238C7B4 ; case 28
b _0238C7B4 ; case 29
b _0238BD7C ; case 30
b _0238BF08 ; case 31
b _0238C7B4 ; case 32
b _0238C3C0 ; case 33
b _0238C7B4 ; case 34
b _0238C7B4 ; case 35
b _0238C7B4 ; case 36
b _0238BF80 ; case 37
b _0238C034 ; case 38
b _0238C5E4 ; case 39
b _0238C124 ; case 40
b _0238C5E4 ; case 41
b _0238C150 ; case 42
b _0238C5E4 ; case 43
b _0238C1D8 ; case 44
b _0238C5E4 ; case 45
b _0238C204 ; case 46
b _0238C5E4 ; case 47
b _0238C7B4 ; case 48
b _0238C230 ; case 49
b _0238C5E4 ; case 50
b _0238C2E8 ; case 51
b _0238C340 ; case 52
b _0238C7B4 ; case 53
b _0238C7B4 ; case 54
b _0238C37C ; case 55
b _0238C7B4 ; case 56
b _0238C7B4 ; case 57
b _0238C42C ; case 58
b _0238C42C ; case 59
b _0238C5E4 ; case 60
b _0238C5E4 ; case 61
b _0238C550 ; case 62
b _0238C5A8 ; case 63
b _0238C7B4 ; case 64
b _0238C724 ; case 65
b _0238C788 ; case 66
b _0238C5E4 ; case 67
_0238BA9C:
ldrsb r0, [r3, #0x80]
bl IsDialogueBoxActive
cmp r0, #0
bne _0238C7E4
mov r0, #0x1b
bl SwapShopDialogueManager
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
b _0238C7E4
_0238BAC8:
bl ov11_0230D220
cmp r0, #0
bne _0238C7E4
bl ov11_02310C2C
mov r0, #0xc
bl SwapShopDialogueManager
b _0238C7E4
_0238BAE4:
bl ov11_0230BA64
cmp r0, #2
beq _0238BAFC
cmp r0, #3
beq _0238BB28
b _0238BB44
_0238BAFC:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
mov r3, #0x1f
str r2, [r1, #8]
ldr r2, [r0]
mov r1, #1
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BB28:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl ov11_0230B8C0
mov r0, #0xe
bl SwapShopDialogueManager
b _0238C7E4
_0238BB44:
bl ov11_0230BD28
cmp r0, #0
beq _0238C7E4
add r1, sp, #0
mov r0, #0
bl GetPressedButtons
ldrh r0, [sp]
tst r0, #8
beq _0238C7E4
ldr r0, _0238C8D4 ; =0x00003F02
mov r1, #0x100
bl sub_02017C74
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl ov11_0230B8C0
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0xf
ldr r2, [r0]
mov r1, #0x43
str r3, [r2, #4]
ldr r0, [r0]
str r1, [r0]
b _0238C7E4
_0238BBA8:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
beq _0238BD24
cmp r0, #6
beq _0238BD00
cmp r0, #7
bne _0238C7E4
bl GetMoneyCarried
cmp r0, #0
bne _0238BC00
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
mov r3, #0x1f
str r2, [r1, #8]
ldr r2, [r0]
mov r1, #6
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BC00:
bl GetMoneyCarried
cmp r0, #0x96
bge _0238BC38
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
mov r3, #0x1f
str r2, [r1, #8]
ldr r2, [r0]
mov r1, #7
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BC38:
bl ov11_0230B914
cmp r0, #0
bne _0238BC78
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov ip, #0
ldr r1, [r0]
mov r3, #0x1f
strh ip, [r1, #0xd8]
ldr r2, [r0]
mov r1, #0x10
str ip, [r2, #8]
ldr r2, [r0]
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BC78:
add r0, sp, #4
add r1, sp, #2
bl ov11_0230C050
bl ov11_0230B958
ldrh r2, [sp, #4]
ldrh r1, [sp, #2]
add r1, r2, r1
cmp r1, r0
bge _0238BCC8
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
mov r3, #0x1f
str r2, [r1, #8]
ldr r2, [r0]
mov r1, #5
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BCC8:
bl ov11_0230B958
ldr r1, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov ip, #0
ldr r2, [r1]
mov r3, #0x1f
strh r0, [r2, #0xd8]
ldr r0, [r1]
mov r2, #0x39
str ip, [r0, #8]
ldr r0, [r1]
str r3, [r0]
ldr r0, [r1]
str r2, [r0, #4]
b _0238C7E4
_0238BD00:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0xf
ldr r2, [r0]
mov r1, #0x43
str r3, [r2, #4]
ldr r0, [r0]
str r1, [r0]
b _0238C7E4
_0238BD24:
bl CloseTextboxAndSimpleMenu
bl ov11_0230BCF8
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0xd
ldr r0, [r0]
str r1, [r0]
b _0238C7E4
_0238BD40:
ldrsb r0, [r3, #0x85]
bl IsScrollBoxActive
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x85]
bl CloseScrollBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r2, #1
ldr r1, [r0]
mov r0, #0xd
strb r2, [r1, #0x85]
bl SwapShopDialogueManager
b _0238C7E4
_0238BD7C:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
beq _0238BDB8
cmp r0, #4
beq _0238BDA0
cmp r0, #5
beq _0238BDB8
b _0238C7E4
_0238BDA0:
bl CloseTextboxAndSimpleMenu
mov r0, #0x11
bl SwapShopDialogueManager
ldr r0, _0238C8D8 ; =0x00001308
bl PlaySeByIdVolumeWrapper
b _0238C7E4
_0238BDB8:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x1a
ldr r1, [r0]
mov r2, #0xb
str r3, [r1]
ldr r1, [r0]
str r2, [r1, #4]
ldr r1, [r0]
ldrsb r0, [r1, #0x81]
add r1, r1, #0xc8
bl ShowPortraitInPortraitBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, _0238C8DC ; =0x00003018
ldr r3, [r0]
#ifdef JAPAN
add r2, r1, #0x280
#else
ldr r2, _0238C8E0 ; =0x000003B9
#endif
ldrsb r0, [r3, #0x80]
add r3, r3, #0x30
bl ShowStringIdInDialogueBox
b _0238C7E4
_0238BE08:
mov r0, #3
b _0238C7E8
_0238BE10:
ldrsb r0, [r3, #0x80]
bl IsDialogueBoxActive
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0x44
ldr r1, [r0]
str r2, [r1]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
b _0238C7E4
_0238BE60:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
ldrne r1, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldrne r1, [r1]
strne r0, [r1, #0x1c]
cmp r0, #8
addls pc, pc, r0, lsl #2
b _0238C7E4
_0238BE84: ; jump table
b _0238C7E4 ; case 0
b _0238BEF8 ; case 1
b _0238C7E4 ; case 2
b _0238C7E4 ; case 3
b _0238C7E4 ; case 4
b _0238C7E4 ; case 5
b _0238BEE8 ; case 6
b _0238BEA8 ; case 7
b _0238BED8 ; case 8
_0238BEA8:
ldr r0, _0238C8E4 ; =OVERLAY21_JP_STRING
bl Debug_Print0
bl CloseTextboxAndSimpleMenu
bl ov11_0230B694
cmp r0, #0
bne _0238BECC
mov r0, #0x38
bl SwapShopDialogueManager
b _0238C7E4
_0238BECC:
mov r0, #9
bl SwapShopDialogueManager
b _0238C7E4
_0238BED8:
bl CloseTextboxAndSimpleMenu
mov r0, #0x24
bl SwapShopDialogueManager
b _0238C7E4
_0238BEE8:
bl CloseTextboxAndSimpleMenu
mov r0, #2
bl SwapShopDialogueManager
b _0238C7E4
_0238BEF8:
bl CloseTextboxAndSimpleMenu
mov r0, #3
bl SwapShopDialogueManager
b _0238C7E4
_0238BF08:
ldr r0, [r3, #8]
cmp r0, #0
beq _0238BF20
cmp r0, #1
beq _0238BF50
b _0238C7E4
_0238BF20:
bl ov11_0230D220
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r0]
ldr r0, [r1, #8]
add r0, r0, #1
str r0, [r1, #8]
bl ov11_0230D92C
bl CloseTextboxAndSimpleMenu
bl ov11_0230B9BC
b _0238C7E4
_0238BF50:
bl ov11_0230D220
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldr r0, [r0, #4]
bl SwapShopDialogueManager
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0
ldr r0, [r0]
str r1, [r0, #8]
b _0238C7E4
_0238BF80:
bl sub_0203A5A8
cmp r0, #0
beq _0238BFEC
bl sub_0203A9EC
cmp r0, #0
beq _0238C7E4
add r1, sp, #6
mov r0, #0
bl GetPressedButtons
ldrh r0, [sp, #6]
tst r0, #8
beq _0238C7E4
mov r0, #0
bl PlaySeVolumeWrapper
bl sub_0203AAB0
ldr r1, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
str r0, [r1, #0x914]
bl sub_0203A5F0
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #0x28
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238BFEC:
bl sub_0203AA20
mvn r1, #0
cmp r0, r1
beq _0238C014
ldr r1, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
str r0, [r1, #0x914]
mov r0, #0x26
bl SwapShopDialogueManager
b _0238C7E4
_0238C014:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #1
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C034:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #0xb
addls pc, pc, r0, lsl #2
b _0238C7E4
_0238C048: ; jump table
b _0238C7E4 ; case 0
b _0238C108 ; case 1
b _0238C7E4 ; case 2
b _0238C7E4 ; case 3
b _0238C7E4 ; case 4
b _0238C7E4 ; case 5
b _0238C7E4 ; case 6
b _0238C7E4 ; case 7
b _0238C078 ; case 8
b _0238C09C ; case 9
b _0238C0C0 ; case 10
b _0238C0E4 ; case 11
_0238C078:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #0x30
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C09C:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #0x28
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C0C0:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #0x2a
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C0E4:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x27
ldr r2, [r0]
mov r1, #0x2e
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C108:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0x25
ldr r0, [r0]
str r1, [r0]
bl sub_0203A638
b _0238C7E4
_0238C124:
bl sub_0203F398
cmp r0, #1
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x29
ldr r2, [r0]
mov r1, #0x25
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C150:
bl sub_020407EC
cmp r0, #1
bne _0238C17C
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x2b
ldr r2, [r0]
mov r1, #0x25
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C17C:
cmp r0, #2
cmpne r0, #7
bne _0238C7E4
bl sub_0203FD38
ldr r2, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, r0
ldr r0, [r2]
mov r2, #0x20
add r0, r0, #0x1a
add r0, r0, #0x900
bl MemcpySimple
bl sub_02041094
ldr r2, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov ip, #0x2b
ldr r1, [r2]
mov r3, #0x2c
add r1, r1, #0x900
strh r0, [r1, #0x18]
ldr r0, [r2]
str ip, [r0]
ldr r0, [r2]
str r3, [r0, #4]
b _0238C7E4
_0238C1D8:
bl sub_02041A18
cmp r0, #1
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x2d
ldr r2, [r0]
mov r1, #0x2a
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C204:
bl sub_02041B7C
cmp r0, #1
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x2f
ldr r2, [r0]
mov r1, #0x25
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C230:
bl ov11_0230BA64
cmp r0, #2
beq _0238C248
cmp r0, #3
beq _0238C268
b _0238C284
_0238C248:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x32
ldr r2, [r0]
mov r1, #0x35
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C268:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl ov11_0230B8C0
mov r0, #0x33
bl SwapShopDialogueManager
b _0238C7E4
_0238C284:
bl ov11_0230BD28
cmp r0, #0
beq _0238C7E4
add r1, sp, #8
mov r0, #0
bl GetPressedButtons
ldrh r0, [sp, #8]
tst r0, #8
beq _0238C7E4
ldr r0, _0238C8D4 ; =0x00003F02
mov r1, #0x100
bl sub_02017C74
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0xe
bl ov11_0230B8C0
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x34
ldr r2, [r0]
mov r1, #0x32
str r3, [r2, #4]
ldr r0, [r0]
str r1, [r0]
b _0238C7E4
_0238C2E8:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
beq _0238C324
cmp r0, #6
bne _0238C7E4
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x32
ldr r2, [r0]
mov r1, #0x34
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C324:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0x31
ldr r0, [r0]
str r1, [r0]
bl ov11_0230BCF8
b _0238C7E4
_0238C340:
ldrsb r0, [r3, #0x85]
bl IsScrollBoxActive
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x85]
bl CloseScrollBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r2, #1
ldr r1, [r0]
mov r0, #0x31
strb r2, [r1, #0x85]
bl SwapShopDialogueManager
b _0238C7E4
_0238C37C:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
beq _0238C3B0
cmp r0, #4
beq _0238C3A0
cmp r0, #5
beq _0238C3B0
b _0238C7E4
_0238C3A0:
bl CloseTextboxAndSimpleMenu
mov r0, #0x24
bl SwapShopDialogueManager
b _0238C7E4
_0238C3B0:
bl CloseTextboxAndSimpleMenu
mov r0, #1
bl SwapShopDialogueManager
b _0238C7E4
_0238C3C0:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #0xc
bgt _0238C3F0
bge _0238C3FC
cmp r0, #5
bgt _0238C7E4
cmp r0, #1
blt _0238C7E4
cmpne r0, #5
beq _0238C41C
b _0238C7E4
_0238C3F0:
cmp r0, #0xd
beq _0238C40C
b _0238C7E4
_0238C3FC:
bl CloseTextboxAndSimpleMenu
mov r0, #0x22
bl SwapShopDialogueManager
b _0238C7E4
_0238C40C:
bl CloseTextboxAndSimpleMenu
mov r0, #0x23
bl SwapShopDialogueManager
b _0238C7E4
_0238C41C:
bl CloseTextboxAndSimpleMenu
mov r0, #1
bl SwapShopDialogueManager
b _0238C7E4
_0238C42C:
bl ov11_0230BA64
cmp r0, #2
beq _0238C444
cmp r0, #3
beq _0238C464
b _0238C4EC
_0238C444:
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x3c
ldr r2, [r0]
mov r1, #0x40
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C464:
bl ov11_0230B874
ldr r1, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r1, [r1]
ldrh r1, [r1, #0xd8]
cmp r0, r1
bge _0238C4A0
mov r0, #0
bl PlaySeVolumeWrapper
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0x18
bl ov11_0230B8C0
mov r0, #0x3e
bl SwapShopDialogueManager
b _0238C7E4
_0238C4A0:
bne _0238C7E4
mov r0, #0
bl PlaySeVolumeWrapper
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r2, [r0]
add r3, r2, #0x42
add r0, r2, #0xda
add r1, r2, #0xdc
add r2, r2, #0x140
add r3, r3, #0x100
bl ov11_0230C118
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x3c
ldr r2, [r0]
mov r1, #0x10
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C4EC:
bl ov11_0230BD28
cmp r0, #0
beq _0238C7E4
add r1, sp, #0xa
mov r0, #0
bl GetPressedButtons
ldrh r0, [sp, #0xa]
tst r0, #8
beq _0238C7E4
ldr r0, _0238C8D4 ; =0x00003F02
mov r1, #0x100
bl sub_02017C74
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
add r0, r0, #0x18
bl ov11_0230B8C0
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x3f
ldr r2, [r0]
mov r1, #0x3d
str r3, [r2, #4]
ldr r0, [r0]
str r1, [r0]
b _0238C7E4
_0238C550:
ldrsb r0, [r3, #0x83]
bl GetSimpleMenuResult__0202B870
cmp r0, #1
beq _0238C58C
cmp r0, #6
bne _0238C7E4
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r3, #0x3d
ldr r2, [r0]
mov r1, #0x3f
str r3, [r2]
ldr r0, [r0]
str r1, [r0, #4]
b _0238C7E4
_0238C58C:
bl CloseTextboxAndSimpleMenu
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0x3a
ldr r0, [r0]
str r1, [r0]
bl ov11_0230BCF8
b _0238C7E4
_0238C5A8:
ldrsb r0, [r3, #0x85]
bl IsScrollBoxActive
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x85]
bl CloseScrollBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r2, #1
ldr r1, [r0]
mov r0, #0x3b
strb r2, [r1, #0x85]
bl SwapShopDialogueManager
b _0238C7E4
_0238C5E4:
ldr r1, [r3, #8]
add r1, r1, #1
str r1, [r3, #8]
ldr r1, [r0]
ldr r0, [r1, #8]
cmp r0, #1
beq _0238C60C
cmp r0, #3
beq _0238C708
b _0238C7E4
_0238C60C:
cmp r2, #0x3c
bgt _0238C658
bge _0238C6F8
sub r0, r2, #0x27
cmp r0, #0xb
addls pc, pc, r0, lsl #2
b _0238C7E4
_0238C628: ; jump table
b _0238C674 ; case 0
b _0238C7E4 ; case 1
b _0238C67C ; case 2
b _0238C7E4 ; case 3
b _0238C694 ; case 4
b _0238C7E4 ; case 5
b _0238C6C4 ; case 6
b _0238C7E4 ; case 7
b _0238C6EC ; case 8
b _0238C7E4 ; case 9
b _0238C7E4 ; case 10
b _0238C6F8 ; case 11
_0238C658:
cmp r2, #0x3d
bgt _0238C668
beq _0238C700
b _0238C7E4
_0238C668:
cmp r2, #0x43
beq _0238C700
b _0238C7E4
_0238C674:
bl sub_0203A51C
b _0238C7E4
_0238C67C:
bl sub_0203F990
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
strb r1, [r0, #0x85]
b _0238C7E4
_0238C694:
ldr r0, [r1, #0x914]
bl sub_0203FD80
bl sub_020407C0
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x82]
bl CloseAdvancedTextBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
strb r1, [r0, #0x82]
b _0238C7E4
_0238C6C4:
bl sub_02041A00
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x85]
bl CloseScrollBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
strb r1, [r0, #0x85]
b _0238C7E4
_0238C6EC:
bl sub_020420F4
bl sub_020572EC
b _0238C7E4
_0238C6F8:
bl ov11_0230B9BC
b _0238C7E4
_0238C700:
bl ov11_0230BB1C
b _0238C7E4
_0238C708:
ldr r0, [r1, #4]
bl SwapShopDialogueManager
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #0
ldr r0, [r0]
str r1, [r0, #8]
b _0238C7E4
_0238C724:
bl ov11_0230D220
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r2, [r0]
ldr r1, [r2, #8]
add r1, r1, #1
str r1, [r2, #8]
ldr r0, [r0]
ldr r0, [r0, #8]
cmp r0, #1
bne _0238C7E4
mov r0, #0x42
bl SwapShopDialogueManager
mvn r0, #0
mov r1, #0
bl InitRandomNpcJobs
bl ov11_0230D92C
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #0
ldr r1, [r0]
str r2, [r1, #4]
ldr r0, [r0]
str r2, [r0, #8]
b _0238C7E4
_0238C788:
bl ov11_0230D220
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldr r0, [r0, #4]
bl SwapShopDialogueManager
b _0238C7E4
_0238C7A8:
ldr r0, [r3, #4]
bl SwapShopDialogueManager
b _0238C7E4
_0238C7B4:
ldrsb r0, [r3, #0x80]
bl IsDialogueBoxActive
cmp r0, #0
bne _0238C7E4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl ShowDialogueBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldr r0, [r0, #4]
bl SwapShopDialogueManager
_0238C7E4:
mov r0, #0
_0238C7E8:
cmp r0, #3
bne _0238C914
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r2, #2
ldr r1, [r0]
str r2, [r1, #0x2c]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202F2C4
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl HidePortraitBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl sub_0202836C
b _0238C914
_0238C830:
mov r1, #3
str r1, [r3, #0x2c]
ldr r0, [r0]
ldrsb r0, [r0, #0x80]
bl CloseDialogueBox
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x81]
bl ClosePortraitBox
b _0238C914
_0238C858:
bl ov11_022E6EC8
cmp r0, #0
beq _0238C914
mov r0, #1
bl ov11_022E6E8C
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #4
ldr r0, [r0]
str r1, [r0, #0x2c]
b _0238C914
_0238C880:
bl ov11_022E6EC8
cmp r0, #0
beq _0238C914
mov r0, #2
bl ov11_022E6E8C
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #4
ldr r0, [r0]
str r1, [r0, #0x2c]
b _0238C914
_0238C8A8:
bl ov11_022E6EC8
cmp r0, #0
beq _0238C914
mov r0, #3
bl ov11_022E6E8C
ldr r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
mov r1, #4
ldr r0, [r0]
str r1, [r0, #0x2c]
b _0238C914
.align 2, 0
_0238C8D0: .word SWAP_SHOP_MENU_DATA_PTR
_0238C8D4: .word 0x00003F02
_0238C8D8: .word 0x00001308
_0238C8DC: .word 0x00003018
#ifndef JAPAN
_0238C8E0: .word 0x000003B9
#endif
_0238C8E4: .word OVERLAY21_JP_STRING
_0238C8E8:
bl ov11_022E6EC8
cmp r0, #0
ldrne r0, _0238C8D0 ; =SWAP_SHOP_MENU_DATA_PTR
movne r1, #1
ldrne r0, [r0]
strne r1, [r0, #0x2c]
b _0238C914
_0238C904:
mvn r0, #0
bl ov11_022E6E8C
mov r0, #4
b _0238C918
_0238C914:
mov r0, #1
_0238C918:
add sp, sp, #0xc
ldmia sp!, {pc}
arm_func_end SwapShopMainManager
arm_func_start CloseTextboxAndSimpleMenu
CloseTextboxAndSimpleMenu: ; 0x0238C920
stmdb sp!, {r3, lr}
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
ldrsb r0, [r0, #0x84]
cmp r0, r1
beq _0238C960
bl sub_0202836C
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x84]
bl CloseTextBox
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
strb r1, [r0, #0x84]
_0238C960:
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
ldrsb r0, [r0, #0x83]
cmp r0, r1
ldmeqia sp!, {r3, pc}
bl sub_0202836C
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
ldr r0, [r0]
ldrsb r0, [r0, #0x83]
bl CloseSimpleMenu
ldr r0, _0238C9A0 ; =SWAP_SHOP_MENU_DATA_PTR
mvn r1, #1
ldr r0, [r0]
strb r1, [r0, #0x83]
ldmia sp!, {r3, pc}
.align 2, 0
_0238C9A0: .word SWAP_SHOP_MENU_DATA_PTR
arm_func_end CloseTextboxAndSimpleMenu
arm_func_start SwapShopPrintCurrentGold
SwapShopPrintCurrentGold: ; 0x0238C9A4
stmdb sp!, {r3, r4, lr}
sub sp, sp, #0x54
sub sp, sp, #0x400
mov r4, r0
bl sub_02027B1C
bl GetMoneyCarried
add ip, sp, #0x400
str r0, [sp, #0x428]
add ip, ip, #4
ldr r2, _0238CA1C ; =SWAP_SHOP_GOLD_STRING
ldr r3, _0238CA20 ; =0x0000C402
add r0, sp, #4
mov r1, #0x100
str ip, [sp]
bl PreprocessString
#ifdef JAPAN
mov r1, #4
mov r0, r4
mov r2, #2
rsb r3, r1, #0x430
#else
ldr r3, _0238CA24 ; =0x00000225
mov r0, r4
mov r1, #4
mov r2, #2
#endif
bl sub_02026268
mov r0, r4
mov r1, #0x16
mov r2, #0x10
add r3, sp, #4
bl DrawTextInWindow
mov r0, r4
bl UpdateWindow
add sp, sp, #0x54
add sp, sp, #0x400
ldmia sp!, {r3, r4, pc}
.align 2, 0
_0238CA1C: .word SWAP_SHOP_GOLD_STRING
_0238CA20: .word 0x0000C402
#ifndef JAPAN
_0238CA24: .word 0x00000225
#endif
arm_func_end SwapShopPrintCurrentGold
; 0x0238CA28
.rodata
.global SWAP_SHOP_WINDOW_PARAMS_1
SWAP_SHOP_WINDOW_PARAMS_1:
#ifdef JAPAN
#define OV21_DATA_OFFSET 0x2EDF
#define OV21_DATA_OFFSET_2 0x2D00
#else
#define OV21_DATA_OFFSET 0
#define OV21_DATA_OFFSET_2 0
#endif
.byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x04, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_MENU_ITEMS_CONFIRM
SWAP_SHOP_MENU_ITEMS_CONFIRM:
.word 0x3AB + OV21_DATA_OFFSET
.byte 0x04, 0x00, 0x00, 0x00
.word 0x3AC + OV21_DATA_OFFSET
.byte 0x05, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.global SWAP_SHOP_SUBMENU_ITEMS_1
SWAP_SHOP_SUBMENU_ITEMS_1:
.word 0x3B0 + OV21_DATA_OFFSET
.byte 0x06, 0x00, 0x00, 0x00
.word 0x3AD + OV21_DATA_OFFSET
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.global SWAP_SHOP_SUBMENU_ITEMS_2
SWAP_SHOP_SUBMENU_ITEMS_2:
.word 0x3CD + OV21_DATA_OFFSET
.byte 0x0C, 0x00, 0x00, 0x00
.word 0x3CE + OV21_DATA_OFFSET
.byte 0x0D, 0x00, 0x00, 0x00
.word 0x3CF + OV21_DATA_OFFSET
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.global SWAP_SHOP_MAIN_MENU_ITEMS_1
SWAP_SHOP_MAIN_MENU_ITEMS_1:
.word 0x3AE + OV21_DATA_OFFSET
.byte 0x07, 0x00, 0x00, 0x00
.word 0x3B0 + OV21_DATA_OFFSET
.byte 0x06, 0x00, 0x00, 0x00
.word 0x3B1 + OV21_DATA_OFFSET
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.global SWAP_SHOP_MAIN_MENU_ITEMS_2
SWAP_SHOP_MAIN_MENU_ITEMS_2:
.word 0x3AE + OV21_DATA_OFFSET
.byte 0x07, 0x00, 0x00, 0x00
.word 0x3AF + OV21_DATA_OFFSET
.byte 0x08, 0x00, 0x00, 0x00
.word 0x3B0 + OV21_DATA_OFFSET
.byte 0x06, 0x00, 0x00, 0x00
.word 0x3AD + OV21_DATA_OFFSET
.byte 0x01, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.global SWAP_SHOP_SUBMENU_ITEMS_3
SWAP_SHOP_SUBMENU_ITEMS_3:
.word 0x3AF + OV21_DATA_OFFSET
.byte 0x08, 0x00, 0x00, 0x00
.word 0x2ED + OV21_DATA_OFFSET_2
.byte 0x09, 0x00, 0x00, 0x00
.word 0x2EE + OV21_DATA_OFFSET_2
.byte 0x0A, 0x00, 0x00, 0x00
.word 0x2EF + OV21_DATA_OFFSET_2
.byte 0x0B, 0x00, 0x00, 0x00
.word 0x3B1 + OV21_DATA_OFFSET
.byte 0x01, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
.hword 0x3B2 + OV21_DATA_OFFSET, 0x3B3 + OV21_DATA_OFFSET, 0x3C5 + OV21_DATA_OFFSET, 0x3C8 + OV21_DATA_OFFSET
.hword 0x3B6 + OV21_DATA_OFFSET, 0x3B9 + OV21_DATA_OFFSET, 0x3B4 + OV21_DATA_OFFSET, 0x3B5 + OV21_DATA_OFFSET, 0x3BB + OV21_DATA_OFFSET, 0x3BC + OV21_DATA_OFFSET, 0x3B8 + OV21_DATA_OFFSET, 0x3BE + OV21_DATA_OFFSET
.hword 0x3C2 + OV21_DATA_OFFSET, 0x3C3 + OV21_DATA_OFFSET, 0x3BF + OV21_DATA_OFFSET, 0x3C0 + OV21_DATA_OFFSET, 0x3C1 + OV21_DATA_OFFSET, 0x3BA + OV21_DATA_OFFSET, 0x3C4 + OV21_DATA_OFFSET, 0x3C6 + OV21_DATA_OFFSET
.hword 0x3CA + OV21_DATA_OFFSET, 0x3CB + OV21_DATA_OFFSET, 0x3CC + OV21_DATA_OFFSET, 0x3B7 + OV21_DATA_OFFSET, 0x3BD + OV21_DATA_OFFSET, 0x3D0 + OV21_DATA_OFFSET, 0x3C7 + OV21_DATA_OFFSET
.byte 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x10, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x0A, 0x08, 0x03, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x0F, 0x08, 0x03, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_WINDOW_PARAMS_5
SWAP_SHOP_WINDOW_PARAMS_5:
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_WINDOW_PARAMS_6
SWAP_SHOP_WINDOW_PARAMS_6:
.byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_WINDOW_PARAMS_7
SWAP_SHOP_WINDOW_PARAMS_7:
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_WINDOW_PARAMS_8
SWAP_SHOP_WINDOW_PARAMS_8:
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x18, 0x13, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_WINDOW_PARAMS_9
SWAP_SHOP_WINDOW_PARAMS_9:
.byte 0x00, 0x00, 0x00, 0x00, 0x14, 0x02, 0x0A, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_WELCOME_DEBUG_STRING
SWAP_SHOP_TALK_WELCOME_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x54, 0x41, 0x52, 0x54, 0x3A, 0x0A, 0x00
.global SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING
SWAP_SHOP_MAIN_MENU_OPTIONS_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55
.byte 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F
.byte 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x4D, 0x45, 0x4E, 0x55, 0x3A, 0x0A, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING
SWAP_SHOP_TALK_CONTINUE_SWAP_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x3A, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING
SWAP_SHOP_TALK_SUBINFO_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x45, 0x58, 0x50, 0x4C, 0x41, 0x4E, 0x41, 0x54, 0x49, 0x4F, 0x4E, 0x3A
.byte 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING
SWAP_SHOP_TALK_COME_AGAIN_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x3A, 0x0A
.byte 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING
SWAP_SHOP_TALK_LACKING_SWAP_ITEMS_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x49, 0x54, 0x45, 0x4D, 0x5F, 0x4E, 0x4F, 0x4E
.byte 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING
SWAP_SHOP_TALK_SWAP_BROKE_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x47, 0x4F, 0x4C, 0x44, 0x5F, 0x4E, 0x4F, 0x4E
.byte 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING
SWAP_SHOP_TALK_SWAP_POOR_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x47, 0x4F, 0x4C, 0x44, 0x81, 0x51, 0x4E, 0x4F, 0x5F, 0x43, 0x48, 0x41, 0x52
.byte 0x47, 0x45, 0x3A, 0x0A, 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_UNK_8_DEBUG_STRING
SWAP_SHOP_UNK_8_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E
.byte 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45
.byte 0x43, 0x54, 0x5F, 0x46, 0x55, 0x4C, 0x4C, 0x3A, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING
SWAP_SHOP_CLOSE_SHOP_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55
.byte 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F
.byte 0x51, 0x55, 0x49, 0x54, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING
SWAP_SHOP_TALK_WHAT_ITEMS_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E
.byte 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45
.byte 0x43, 0x54, 0x5F, 0x53, 0x54, 0x41, 0x52, 0x54, 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING
SWAP_SHOP_TALK_VALUABLE_SWAP_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55
.byte 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F
.byte 0x5F, 0x52, 0x45, 0x53, 0x54, 0x41, 0x52, 0x54, 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING
SWAP_SHOP_INIT_SWAP_ITEMS_MENU_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55
.byte 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F
.byte 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x49, 0x4E, 0x49, 0x54, 0x3A, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING
SWAP_SHOP_SWAP_ITEMS_MENU_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43
.byte 0x54, 0x3A, 0x0A, 0x00
.global SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING
SWAP_SHOP_RETURN_SWAP_ITEMS_MENU_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x52
.byte 0x45, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x3A, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING
SWAP_SHOP_SELECT_SWAP_ITEM_OPTIONS_DEBUG_STRING:
.byte 0x09, 0x4D, 0x45, 0x4E
.byte 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45
.byte 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x53, 0x55, 0x42, 0x5F, 0x4D, 0x45, 0x4E, 0x55
.byte 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING
SWAP_SHOP_SWAP_ITEM_GET_INFO_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x45
.byte 0x58, 0x50, 0x4C, 0x41, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_ITEM_ZERO_STRING
SWAP_SHOP_ITEM_ZERO_STRING:
.byte 0x5B, 0x69, 0x74, 0x65, 0x6D, 0x3A, 0x30, 0x5D
.byte 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING
SWAP_SHOP_TALK_CONFIRM_SWAP_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x43
.byte 0x4F, 0x4E, 0x46, 0x49, 0x52, 0x4D, 0x5F, 0x31, 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING
SWAP_SHOP_CONFIRM_CHOICE_DEBUG_STRING:
.byte 0x5F, 0x53, 0x45, 0x4C
.byte 0x4C, 0x5F, 0x43, 0x4F, 0x4E, 0x46, 0x49, 0x52, 0x4D, 0x20, 0x4E, 0x45, 0x57, 0x5F, 0x31, 0x0A
.byte 0x00, 0x00, 0x00, 0x00
.global SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING
SWAP_SHOP_INIT_SCRIPT_ACTION_1_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53
.byte 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x54
.byte 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x5F, 0x41, 0x43, 0x54, 0x49, 0x4F, 0x4E, 0x3A, 0x0A, 0x00, 0x00
.global SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING
SWAP_SHOP_INIT_SCRIPT_ACTION_2_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B
.byte 0x53, 0x5F, 0x41, 0x43, 0x54, 0x49, 0x4F, 0x4E, 0x32, 0x3A, 0x0A, 0x00
.global SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING
SWAP_SHOP_INIT_SCRIPT_ACTION_3_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55
.byte 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F
.byte 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x5F, 0x41, 0x43
.byte 0x54, 0x49, 0x4F, 0x4E, 0x33, 0x3A, 0x0A, 0x00
.global SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING
SWAP_SHOP_TEXT_PUT_IN_CAULDRON_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E
.byte 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D, 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45
.byte 0x43, 0x54, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B, 0x53, 0x5F, 0x31, 0x3A, 0x0A, 0x00, 0x00, 0x00
.global SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING
SWAP_SHOP_DO_SWAP_THEN_TALK_DEBUG_STRING:
.byte 0x4D, 0x45, 0x4E, 0x55, 0x5F, 0x53, 0x59, 0x4E, 0x54, 0x48, 0x45, 0x53, 0x49, 0x53, 0x5F, 0x4D
.byte 0x4F, 0x44, 0x45, 0x5F, 0x53, 0x45, 0x4C, 0x45, 0x43, 0x54, 0x5F, 0x54, 0x48, 0x41, 0x4E, 0x4B
.byte 0x53, 0x3A, 0x0A, 0x00
.global OVERLAY21_JP_STRING
OVERLAY21_JP_STRING:
.byte 0x8D, 0x87, 0x90, 0xAC, 0x81, 0x46, 0x00, 0x00
.global SWAP_SHOP_GOLD_STRING
SWAP_SHOP_GOLD_STRING:
.byte 0x5B, 0x43, 0x53, 0x3A
.byte 0x56, 0x5D, 0x5B, 0x67, 0x6F, 0x6C, 0x64, 0x3A, 0x30, 0x5D, 0x5B, 0x43, 0x52, 0x5D, 0x00, 0x00
.data
.global SWAP_SHOP_MENU_DATA_PTR
SWAP_SHOP_MENU_DATA_PTR:
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00