summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/rom_8011DC0.s940
1 files changed, 0 insertions, 940 deletions
diff --git a/asm/rom_8011DC0.s b/asm/rom_8011DC0.s
index 97b27bab9..e811bb428 100644
--- a/asm/rom_8011DC0.s
+++ b/asm/rom_8011DC0.s
@@ -6,947 +6,7 @@
.text
- thumb_func_start sub_8013B8C
-sub_8013B8C: @ 8013B8C
- push {lr}
- lsls r1, 5
- ldr r0, [r0]
- adds r3, r0, r1
- ldr r0, =gUnknown_02022C2C
- ldrb r0, [r0]
- cmp r0, 0x4
- bne _08013BCE
- ldrb r1, [r3, 0x1]
- movs r0, 0x3C
- ands r0, r1
- cmp r0, 0xC
- beq _08013BCE
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x9]
- movs r2, 0x80
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _08013BC4
- movs r0, 0x1
- b _08013BD4
- .pool
-_08013BC4:
- ldrb r1, [r3]
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08013BD2
-_08013BCE:
- movs r0, 0
- b _08013BD4
-_08013BD2:
- movs r0, 0x2
-_08013BD4:
- pop {r1}
- bx r1
- thumb_func_end sub_8013B8C
-
- thumb_func_start sub_8013BD8
-sub_8013BD8: @ 8013BD8
- push {r4,lr}
- adds r4, r0, 0
- strb r1, [r4, 0xF]
- bl sub_800E0E8
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- ldrb r0, [r4, 0xE]
- bl sub_81AE70C
- ldr r0, =gStringVar1
- ldrb r2, [r4, 0xF]
- lsls r2, 5
- ldr r1, [r4]
- adds r1, r2
- bl sub_8018404
- ldr r1, =gUnknown_082F0530
- ldr r0, =gSpecialVar_0x8004
- ldrh r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0
- movs r2, 0x1
- bl sub_8011090
- ldrb r1, [r4, 0xF]
- lsls r1, 5
- ldr r0, [r4]
- adds r0, r1
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl ReadAsU16
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_8011FC8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8013BD8
-
- thumb_func_start sub_8013C40
-sub_8013C40: @ 8013C40
- push {lr}
- ldr r0, =sub_8013C7C
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gUnknown_02022C30
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r2, =gTasks + 0x8
- adds r1, r2
- str r1, [r3]
- movs r2, 0
- strb r2, [r1, 0x8]
- strb r2, [r1, 0x9]
- ldr r2, =gUnknown_03000DA4
- str r1, [r2]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8013C40
-
- thumb_func_start sub_8013C7C
-sub_8013C7C: @ 8013C7C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gUnknown_02022C30
- ldr r4, [r0]
- ldrb r0, [r4, 0x8]
- cmp r0, 0xB
- bhi _08013D80
- lsls r0, 2
- ldr r1, =_08013CA0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08013CA0:
- .4byte _08013CD0
- .4byte _08013D80
- .4byte _08013D04
- .4byte _08013D28
- .4byte _08013D80
- .4byte _08013D80
- .4byte _08013D80
- .4byte _08013D80
- .4byte _08013D80
- .4byte _08013D80
- .4byte _08013D58
- .4byte _08013D76
-_08013CD0:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_8010F84
- bl sub_800B488
- bl OpenLink
- bl sub_8011C5C
- movs r0, 0x1
- bl sub_80111B0
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r4, 0x4]
- movs r0, 0x80
- lsls r0, 2
- bl AllocZeroed
- str r0, [r4]
- movs r0, 0x2
- strb r0, [r4, 0x8]
- b _08013D80
-_08013D04:
- ldr r0, [r4, 0x4]
- movs r1, 0x4
- bl sub_80175EC
- ldr r0, [r4]
- movs r1, 0x10
- bl sub_8017580
- ldr r0, [r4, 0x4]
- movs r1, 0xFF
- bl sub_8016FC0
- movs r1, 0
- strb r0, [r4, 0x11]
- strb r1, [r4, 0xF]
- movs r0, 0x3
- strb r0, [r4, 0x8]
- b _08013D80
-_08013D28:
- bl sub_8013E44
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08013D3A
- movs r0, 0x2
- bl PlaySE
-_08013D3A:
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- movs r2, 0x26
- ldrsh r0, [r1, r2]
- cmp r0, 0xFF
- bne _08013D80
- movs r0, 0xA
- strb r0, [r4, 0x8]
- b _08013D80
- .pool
-_08013D58:
- ldrb r0, [r4, 0x11]
- bl DestroyTask
- ldr r0, [r4]
- bl Free
- ldr r0, [r4, 0x4]
- bl Free
- bl sub_800EDD4
- ldrb r0, [r4, 0x8]
- adds r0, 0x1
- strb r0, [r4, 0x8]
- b _08013D80
-_08013D76:
- bl sub_800EDD4
- adds r0, r5, 0
- bl DestroyTask
-_08013D80:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8013C7C
-
- thumb_func_start sub_8013D88
-sub_8013D88: @ 8013D88
- push {lr}
- adds r2, r0, 0
- cmp r1, 0xFF
- bne _08013D94
-_08013D90:
- movs r0, 0x1
- b _08013DB8
-_08013D94:
- cmp r1, 0x16
- bhi _08013DB6
- ldr r0, =gUnknown_082F04D8
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- b _08013DB0
- .pool
-_08013DA8:
- ldrb r0, [r1]
- cmp r0, r2
- beq _08013D90
- adds r1, 0x1
-_08013DB0:
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08013DA8
-_08013DB6:
- movs r0, 0
-_08013DB8:
- pop {r1}
- bx r1
- thumb_func_end sub_8013D88
- thumb_func_start sub_8013DBC
-sub_8013DBC: @ 8013DBC
- push {lr}
- ldr r0, [r0]
- lsls r1, 5
- adds r1, r0, r1
- ldrb r2, [r1, 0x1A]
- lsls r0, r2, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08013DEE
- ldrb r0, [r1, 0xA]
- lsrs r0, 7
- cmp r0, 0
- beq _08013DDA
- movs r0, 0x3
- b _08013DF0
-_08013DDA:
- lsls r0, r2, 29
- cmp r0, 0
- bge _08013DE4
- movs r0, 0x1
- b _08013DF0
-_08013DE4:
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08013DEE
- movs r0, 0x2
- b _08013DF0
-_08013DEE:
- movs r0, 0
-_08013DF0:
- pop {r1}
- bx r1
- thumb_func_end sub_8013DBC
-
- thumb_func_start sub_8013DF4
-sub_8013DF4: @ 8013DF4
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- ldr r0, =gUnknown_02022C30
- ldr r0, [r0]
- mov r8, r0
- bl sub_8013DBC
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r4, 5
- mov r2, r8
- ldr r3, [r2]
- adds r3, r1
- str r0, [sp]
- lsls r4, 24
- lsrs r4, 24
- str r4, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0x8
- adds r2, r6, 0
- bl sub_80177B8
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8013DF4
-
- thumb_func_start sub_8013E44
-sub_8013E44: @ 8013E44
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r0, =gUnknown_02022C30
- ldr r6, [r0]
- movs r7, 0
- movs r3, 0
-_08013E54:
- ldr r0, [r6]
- lsls r5, r3, 5
- adds r2, r0, r5
- ldrb r0, [r2, 0x1A]
- lsls r0, 30
- mov r8, r5
- cmp r0, 0
- beq _08013F20
- ldr r1, [r6, 0x4]
- adds r0, r2, 0
- str r3, [sp]
- bl sub_80176E4
- adds r4, r0, 0
- ldr r3, [sp]
- cmp r4, 0xFF
- beq _08013EEE
- ldr r0, [r6]
- adds r2, r0, r5
- ldrb r1, [r2, 0x1A]
- lsls r0, r1, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08013ECC
- lsls r0, r4, 3
- subs r0, r4
- lsls r4, r0, 2
- ldr r1, [r6, 0x4]
- adds r1, r4
- adds r0, r2, 0
- bl sub_8017678
- ldr r3, [sp]
- cmp r0, 0
- beq _08013EB0
- ldr r1, [r6]
- ldr r0, [r6, 0x4]
- adds r1, r5
- adds r0, r4
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- b _08013EDA
- .pool
-_08013EB0:
- ldr r0, [r6]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08013EE4
- subs r0, 0x1
- strb r0, [r1, 0x1B]
- ldr r0, [r6]
- adds r0, r5
- ldrb r0, [r0, 0x1B]
- cmp r0, 0
- bne _08013EE4
- movs r7, 0x2
- b _08013EE4
-_08013ECC:
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x1A]
-_08013EDA:
- ldr r0, [r6]
- adds r0, r5
- movs r1, 0x40
- strb r1, [r0, 0x1B]
- movs r7, 0x1
-_08013EE4:
- ldr r0, [r6]
- add r0, r8
- movs r1, 0
- strh r1, [r0, 0x18]
- b _08013F20
-_08013EEE:
- ldr r0, [r6]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x2
- beq _08013F20
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- ldr r0, [r6]
- adds r2, r0, r5
- ldrh r1, [r2, 0x18]
- ldr r0, =0x0000012b
- cmp r1, r0
- bls _08013F20
- ldrb r0, [r2, 0x1A]
- movs r7, 0x4
- negs r7, r7
- adds r1, r7, 0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x1A]
- movs r7, 0x2
-_08013F20:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _08013E54
- movs r5, 0
- movs r4, 0x3
-_08013F2E:
- ldr r0, [r6]
- ldr r1, [r6, 0x4]
- adds r1, r5
- movs r2, 0x10
- bl sub_8017734
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08013F44
- movs r7, 0x1
-_08013F44:
- adds r5, 0x1C
- subs r4, 0x1
- cmp r4, 0
- bge _08013F2E
- adds r0, r7, 0
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8013E44
-
- thumb_func_start sub_8013F60
-sub_8013F60: @ 8013F60
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80773AC
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8013F60
-
- thumb_func_start sub_8013F78
-sub_8013F78: @ 8013F78
- push {lr}
- ldr r0, =sub_8013F60
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8013F78
-
- thumb_func_start sub_8013F90
-sub_8013F90: @ 8013F90
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gUnknown_02022C40
- mov r8, r0
- bl GetMultiplayerId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, r8
- bl sub_8018120
- adds r7, r0, 0
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _08013FFC
- cmp r0, 0x1
- bgt _08013FD4
- cmp r0, 0
- beq _08013FDE
- b _080140BC
- .pool
-_08013FD4:
- cmp r0, 0x2
- beq _08014038
- cmp r0, 0x3
- beq _08014070
- b _080140BC
-_08013FDE:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r1, r0
- movs r0, 0
- movs r2, 0x64
- bl SendBlock
- b _080140BC
- .pool
-_08013FFC:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _080140BC
- bl GetMultiplayerId
- adds r1, r0, 0
- ldr r0, =gEnemyParty
- movs r2, 0x1
- eors r1, r2
- lsls r1, 24
- lsrs r1, 16
- ldr r2, =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x64
- bl memcpy
- movs r0, 0x32
- bl IncrementGameStat
- bl ResetBlockReceivedFlags
- b _0801405A
- .pool
-_08014038:
- ldr r4, =gBlockSendBuffer
- ldr r0, =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, =0x00002be0
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0xDC
- bl memcpy
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0xDC
- bl SendBlock
- lsls r0, 24
- cmp r0, 0
- beq _080140BC
-_0801405A:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _080140BC
- .pool
-_08014070:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _080140BC
- ldr r4, =gUnknown_020321C0
- bl GetMultiplayerId
- adds r1, r0, 0
- movs r0, 0x1
- eors r1, r0
- lsls r1, 24
- lsrs r1, 16
- ldr r0, =gBlockRecvBuffer
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0xD8
- bl memcpy
- bl ResetBlockReceivedFlags
- ldr r1, =gUnknown_02032298
- strb r7, [r1]
- movs r0, 0x6
- strb r0, [r1, 0x1]
- ldr r1, =gMain
- ldr r0, =CB2_ReturnToField
- str r0, [r1, 0x8]
- ldr r0, =sub_807AE50
- bl SetMainCallback2
- mov r0, r8
- bl sub_801807C
- adds r0, r6, 0
- bl DestroyTask
-_080140BC:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8013F90
-
- thumb_func_start sub_80140E0
-sub_80140E0: @ 80140E0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _08014104
- cmp r0, 0x1
- beq _0801411C
- b _0801419E
- .pool
-_08014104:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _08014114
- movs r0, 0x2
- bl sub_800A4D8
-_08014114:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0801419E
-_0801411C:
- bl GetBlockReceivedStatus
- adds r4, r0, 0
- bl sub_800A9D8
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _0801419E
- movs r4, 0
- ldr r5, =gLinkPlayers
- b _08014152
- .pool
-_08014138:
- lsls r1, r4, 8
- ldr r0, =gBlockRecvBuffer
- adds r3, r1, r0
- movs r0, 0x64
- muls r0, r4
- ldr r1, =gTrainerCards
- adds r0, r1
- ldrb r2, [r5]
- adds r1, r3, 0
- bl sub_80C3120
- adds r5, 0x1C
- adds r4, 0x1
-_08014152:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- blt _08014138
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08014190
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 16
- ldr r1, =gBlockRecvBuffer
- adds r3, r0, r1
- adds r0, r3, 0
- adds r0, 0x60
- ldrh r0, [r0]
- bl sub_801B94C
- b _08014194
- .pool
-_08014190:
- bl sub_801B940
-_08014194:
- bl ResetBlockReceivedFlags
- adds r0, r6, 0
- bl DestroyTask
-_0801419E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80140E0
-
- thumb_func_start sub_80141A4
-sub_80141A4: @ 80141A4
- push {r4,lr}
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _080141C0
- cmp r0, 0x1
- beq _080141D4
- b _080141F2
- .pool
-_080141C0:
- ldr r0, =sub_80140E0
- movs r1, 0x5
- bl CreateTask
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _080141F2
- .pool
-_080141D4:
- ldr r0, =sub_80140E0
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080141F2
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =CB2_ReturnToField
- bl sub_80C4E74
-_080141F2:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80141A4
-
- thumb_func_start sub_8014210
-sub_8014210: @ 8014210
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- bl HealPlayerParty
- bl SavePlayerParty
- bl LoadPlayerBag
- ldr r5, =gLinkPlayers
- ldr r0, =0x00002211
- str r0, [r5, 0x14]
- bl GetMultiplayerId
- adds r4, r0, 0
- bl GetMultiplayerId
- lsls r4, 24
- lsrs r4, 24
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r5
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x18]
- bl GetMultiplayerId
- adds r4, r0, 0
- bl GetMultiplayerId
- movs r2, 0x1
- eors r4, r2
- lsls r4, 24
- lsrs r4, 24
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r5
- eors r0, r2
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x18]
- ldr r1, =gMain
- ldr r0, =sub_80B360C
- str r0, [r1, 0x8]
- ldr r0, =gBattleTypeFlags
- str r6, [r0]
- bl PlayBattleBGM
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8014210
-
- thumb_func_start sub_8014290
-sub_8014290: @ 8014290
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r3, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r0, =0x00004087
- adds r1, r3, 0
- bl VarSet
- ldr r6, =gSaveBlock1Ptr
- ldr r1, [r6]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- mov r8, r2
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- str r5, [sp]
- adds r3, r4, 0
- bl Overworld_SetWarpDestination
- ldr r0, [r6]
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- movs r2, 0x5
- ldrsb r2, [r0, r2]
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0
- mov r3, r8
- bl saved_warp2_set_2
- bl warp_in
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8014290
-
- thumb_func_start sub_8014304
-sub_8014304: @ 8014304
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- mov r8, r2
- adds r6, r3, 0
- ldr r1, [sp, 0x18]
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r0, =gSpecialVar_0x8004
- strh r1, [r0]
- ldr r0, =0x00004087
- bl VarSet
- bl GetLinkPlayerCount
- ldr r1, =gFieldLinkPlayerCount
- strb r0, [r1]
- bl GetMultiplayerId
- ldr r1, =gUnknown_03005DB4
- strb r0, [r1]
- bl sub_809D2BC
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- movs r2, 0x1
- negs r2, r2
- mov r0, r8
- lsls r0, 24
- asrs r0, 24
- mov r8, r0
- lsls r6, 24
- asrs r6, 24
- str r6, [sp]
- adds r0, r4, 0
- adds r1, r5, 0
- mov r3, r8
- bl Overworld_SetWarpDestination
- bl warp_in
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8014304
thumb_func_start sub_8014384
sub_8014384: @ 8014384