through sub_81186C8

This commit is contained in:
PikalaxALT
2020-01-20 15:24:36 -05:00
parent ac5bfcf1ce
commit a083f0f57f
4 changed files with 450 additions and 966 deletions
+3 -943
View File
@@ -5,946 +5,6 @@
.text
thumb_func_start MEvent_CreateTask_CardOrNewsWithFriend
MEvent_CreateTask_CardOrNewsWithFriend: @ 8117ED4
push {r4,lr}
adds r4, r0, 0
ldr r0, _08117F0C @ =sub_8117F20
movs r1, 0
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, _08117F10 @ =gUnknown_203B05C
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
ldr r0, _08117F14 @ =gTasks+0x8
adds r1, r0
str r1, [r2]
ldr r0, _08117F18 @ =gUnknown_3002028
str r1, [r0]
movs r2, 0
strb r2, [r1, 0x8]
strb r2, [r1, 0x9]
subs r4, 0x15
strb r4, [r1, 0x12]
ldr r0, _08117F1C @ =gSpecialVar_Result
strh r2, [r0]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08117F0C: .4byte sub_8117F20
_08117F10: .4byte gUnknown_203B05C
_08117F14: .4byte gTasks+0x8
_08117F18: .4byte gUnknown_3002028
_08117F1C: .4byte gSpecialVar_Result
thumb_func_end MEvent_CreateTask_CardOrNewsWithFriend
thumb_func_start sub_8117F20
sub_8117F20: @ 8117F20
push {r4-r7,lr}
sub sp, 0x8
lsls r0, 24
lsrs r6, r0, 24
ldr r0, _08117F40 @ =gUnknown_203B05C
ldr r5, [r0]
ldrb r0, [r5, 0x8]
cmp r0, 0xC
bls _08117F34
b _08118288
_08117F34:
lsls r0, 2
ldr r1, _08117F44 @ =_08117F48
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_08117F40: .4byte gUnknown_203B05C
_08117F44: .4byte _08117F48
.align 2, 0
_08117F48:
.4byte _08117F7C
.4byte _08117FB0
.4byte _08117FC0
.4byte _08118070
.4byte _08118150
.4byte _0811818C
.4byte _081181EC
.4byte _08118248
.4byte _081181EC
.4byte _08118222
.4byte _081181EC
.4byte _0811826C
.4byte _08118278
_08117F7C:
ldrb r0, [r5, 0x12]
adds r0, 0x15
lsls r0, 24
lsrs r0, 24
movs r1, 0
movs r2, 0
bl sub_80FAF58
bl sub_800B1F4
bl OpenLink
bl sub_80FBBD8
movs r0, 0x70
bl AllocZeroed
str r0, [r5, 0x4]
movs r0, 0x80
lsls r0, 2
bl AllocZeroed
str r0, [r5]
movs r0, 0x1
strb r0, [r5, 0x8]
b _08118288
_08117FB0:
ldr r0, _08117FBC @ =gUnknown_8458FE4
bl AddTextPrinterToWindow1
movs r0, 0x2
strb r0, [r5, 0x8]
b _08118288
.align 2, 0
_08117FBC: .4byte gUnknown_8458FE4
_08117FC0:
ldr r0, [r5, 0x4]
movs r1, 0x4
bl sub_811A650
ldr r0, [r5]
movs r1, 0x10
bl sub_811A5E4
ldr r0, [r5, 0x4]
ldrb r1, [r5, 0x12]
adds r1, 0x7
bl sub_811A054
movs r4, 0
strb r0, [r5, 0x11]
ldr r0, _0811805C @ =gUnknown_8456D4C
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
bl GetMysteryGiftBaseBlock
lsls r0, 16
ldr r2, _08118060 @ =0x0000ffff
ldr r1, [sp, 0x4]
ands r1, r2
orrs r1, r0
str r1, [sp, 0x4]
mov r0, sp
bl AddWindow
strb r0, [r5, 0xB]
ldr r0, _08118064 @ =gUnknown_8456D54
bl AddWindow
strb r0, [r5, 0xD]
ldrb r0, [r5, 0xB]
bl MG_DrawTextBorder
ldr r0, _08118068 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, _0811806C @ =gUnknown_8456DDC
ldm r1!, {r3,r6,r7}
stm r2!, {r3,r6,r7}
ldm r1!, {r3,r6,r7}
stm r2!, {r3,r6,r7}
ldrb r1, [r5, 0xB]
strb r1, [r0, 0x10]
movs r1, 0
movs r2, 0
bl ListMenuInit
strb r0, [r5, 0xE]
ldrb r0, [r5, 0xD]
bl MG_DrawTextBorder
ldrb r0, [r5, 0xD]
movs r1, 0x11
bl FillWindowPixelBuffer
ldrb r0, [r5, 0xD]
bl PutWindowTilemap
ldrb r0, [r5, 0xD]
bl sub_8115924
ldrb r0, [r5, 0xD]
movs r1, 0x2
bl CopyWindowToVram
movs r0, 0
bl CopyBgTilemapBufferToVram
strb r4, [r5, 0xF]
movs r0, 0x3
strb r0, [r5, 0x8]
b _08118288
.align 2, 0
_0811805C: .4byte gUnknown_8456D4C
_08118060: .4byte 0x0000ffff
_08118064: .4byte gUnknown_8456D54
_08118068: .4byte gMultiuseListMenuTemplate
_0811806C: .4byte gUnknown_8456DDC
_08118070:
bl sub_8116FE4
lsls r0, 24
lsrs r2, r0, 24
cmp r2, 0
beq _0811808E
cmp r2, 0x1
bne _08118086
movs r0, 0x2
bl PlaySE
_08118086:
ldrb r0, [r5, 0xE]
bl RedrawListMenu
b _08118288
_0811808E:
ldrb r0, [r5, 0xE]
bl ListMenu_ProcessInput
adds r2, r0, 0
ldr r0, _08118128 @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x1
ands r0, r1
cmp r0, 0
beq _08118138
movs r0, 0x1
negs r0, r0
cmp r2, r0
beq _08118138
ldr r0, [r5]
lsls r1, r2, 5
adds r0, r1
ldrb r1, [r0, 0xA]
ldrb r0, [r0, 0x1A]
lsls r0, 30
lsrs r0, 30
cmp r0, 0x1
bne _08118130
lsrs r0, r1, 7
cmp r0, 0
bne _08118130
strb r2, [r5, 0xF]
bl LoadWirelessStatusIndicatorSpriteGfx
movs r0, 0
movs r1, 0
bl CreateWirelessStatusIndicatorSprite
ldrb r0, [r5, 0xE]
bl RedrawListMenu
ldr r4, _0811812C @ =gStringVar1
ldrb r0, [r5, 0xF]
lsls r0, 5
ldr r1, [r5]
adds r1, r0
adds r1, 0x10
adds r0, r4, 0
bl StringCopy
ldr r1, [r5]
ldrb r0, [r5, 0xF]
lsls r0, 5
adds r1, r0
ldrb r1, [r1]
lsls r1, 28
lsrs r1, 28
adds r0, r4, 0
bl ConvertInternationalString
ldrb r1, [r5, 0xF]
lsls r1, 5
ldr r0, [r5]
adds r0, r1
adds r4, r0, 0
adds r4, 0x10
adds r0, 0x2
bl sub_8118658
adds r1, r0, 0
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
bl sub_80FBF54
movs r0, 0x67
bl PlaySE
movs r0, 0x4
strb r0, [r5, 0x8]
b _08118288
.align 2, 0
_08118128: .4byte gMain
_0811812C: .4byte gStringVar1
_08118130:
movs r0, 0x7
bl PlaySE
b _08118288
_08118138:
ldr r0, _0811814C @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x2
ands r0, r1
cmp r0, 0
bne _08118146
b _08118288
_08118146:
movs r0, 0x6
strb r0, [r5, 0x8]
b _08118288
.align 2, 0
_0811814C: .4byte gMain
_08118150:
ldr r0, _08118184 @ =gUnknown_8459238
bl AddTextPrinterToWindow1
ldr r4, _08118188 @ =gStringVar1
ldrb r0, [r5, 0xF]
lsls r0, 5
ldr r1, [r5]
adds r1, r0
adds r1, 0x10
adds r0, r4, 0
bl StringCopy
ldr r1, [r5]
ldrb r0, [r5, 0xF]
lsls r0, 5
adds r1, r0
ldrb r1, [r1]
lsls r1, 28
lsrs r1, 28
adds r0, r4, 0
bl ConvertInternationalString
movs r0, 0x5
strb r0, [r5, 0x8]
b _08118288
.align 2, 0
_08118184: .4byte gUnknown_8459238
_08118188: .4byte gStringVar1
_0811818C:
ldr r0, _081181C4 @ =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _081181AA
ldr r2, _081181C8 @ =gUnknown_203B058
ldr r1, [r5]
ldrb r0, [r5, 0xF]
lsls r0, 5
adds r1, r0
ldrb r0, [r1, 0xA]
lsls r0, 25
lsrs r0, 25
strb r0, [r2]
movs r0, 0xA
strb r0, [r5, 0x8]
_081181AA:
bl sub_80FB9F4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x5
beq _081181D6
cmp r0, 0x5
bgt _081181CC
cmp r0, 0x2
bgt _08118288
cmp r0, 0x1
blt _08118288
b _081181D0
.align 2, 0
_081181C4: .4byte gReceivedRemoteLinkPlayers
_081181C8: .4byte gUnknown_203B058
_081181CC:
cmp r0, 0x6
bne _08118288
_081181D0:
movs r0, 0x8
strb r0, [r5, 0x8]
b _08118288
_081181D6:
ldr r0, _081181E8 @ =gUnknown_84576AC
bl AddTextPrinterToWindow1
movs r0, 0
movs r1, 0
bl sub_80FB9E4
b _08118288
.align 2, 0
_081181E8: .4byte gUnknown_84576AC
_081181EC:
ldrb r0, [r5, 0xE]
movs r1, 0
movs r2, 0
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r5, 0xD]
bl RemoveWindow
ldrb r0, [r5, 0xB]
bl RemoveWindow
ldrb r0, [r5, 0x11]
bl DestroyTask
ldr r0, [r5]
bl Free
ldr r0, [r5, 0x4]
bl Free
ldrb r0, [r5, 0x8]
adds r0, 0x1
strb r0, [r5, 0x8]
b _08118288
_08118222:
adds r5, 0x9
ldr r4, _08118244 @ =gUnknown_8457838
bl sub_80FB9F4
lsls r0, 24
lsrs r0, 22
adds r0, r4
ldr r1, [r0]
adds r0, r5, 0
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
beq _08118288
bl DestroyWirelessStatusIndicatorSprite
b _08118252
.align 2, 0
_08118244: .4byte gUnknown_8457838
_08118248:
bl DestroyWirelessStatusIndicatorSprite
ldr r0, _08118264 @ =gUnknown_84571B8
bl AddTextPrinterToWindow1
_08118252:
adds r0, r6, 0
bl DestroyTask
bl sub_80F8DC0
ldr r1, _08118268 @ =gSpecialVar_Result
movs r0, 0x5
strh r0, [r1]
b _08118288
.align 2, 0
_08118264: .4byte gUnknown_84571B8
_08118268: .4byte gSpecialVar_Result
_0811826C:
ldrb r0, [r5, 0x8]
adds r0, 0x1
strb r0, [r5, 0x8]
bl sub_800AB9C
b _08118288
_08118278:
bl IsLinkTaskFinished
lsls r0, 24
cmp r0, 0
beq _08118288
adds r0, r6, 0
bl DestroyTask
_08118288:
add sp, 0x8
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_8117F20
thumb_func_start MEvent_CreateTask_CardOrNewsOverWireless
MEvent_CreateTask_CardOrNewsOverWireless: @ 8118290
push {r4,lr}
adds r4, r0, 0
ldr r0, _081182C8 @ =sub_81182DC
movs r1, 0
bl CreateTask
lsls r0, 24
lsrs r0, 24
ldr r2, _081182CC @ =gUnknown_203B05C
lsls r1, r0, 2
adds r1, r0
lsls r1, 3
ldr r0, _081182D0 @ =gTasks+0x8
adds r1, r0
str r1, [r2]
ldr r0, _081182D4 @ =gUnknown_3002028
str r1, [r0]
movs r2, 0
strb r2, [r1, 0x8]
strb r2, [r1, 0x9]
subs r4, 0x15
strb r4, [r1, 0x12]
ldr r0, _081182D8 @ =gSpecialVar_Result
strh r2, [r0]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_081182C8: .4byte sub_81182DC
_081182CC: .4byte gUnknown_203B05C
_081182D0: .4byte gTasks+0x8
_081182D4: .4byte gUnknown_3002028
_081182D8: .4byte gSpecialVar_Result
thumb_func_end MEvent_CreateTask_CardOrNewsOverWireless
thumb_func_start sub_81182DC
sub_81182DC: @ 81182DC
push {r4-r6,lr}
sub sp, 0x8
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _081182FC @ =gUnknown_203B05C
ldr r5, [r0]
ldrb r0, [r5, 0x8]
cmp r0, 0xE
bls _081182F0
b _08118604
_081182F0:
lsls r0, 2
ldr r1, _08118300 @ =_08118304
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_081182FC: .4byte gUnknown_203B05C
_08118300: .4byte _08118304
.align 2, 0
_08118304:
.4byte _08118340
.4byte _0811836E
.4byte _08118380
.4byte _08118408
.4byte _081184C8
.4byte _08118504
.4byte _08118564
.4byte _081185A8
.4byte _08118564
.4byte _0811859A
.4byte _08118564
.4byte _081185B4
.4byte _08118564
.4byte _081185E8
.4byte _081185F4
_08118340:
movs r0, 0
movs r1, 0
movs r2, 0
bl sub_80FAF58
bl sub_800B1F4
bl OpenLink
bl sub_80FBBD8
movs r0, 0x70
bl AllocZeroed
str r0, [r5, 0x4]
movs r0, 0x80
lsls r0, 2
bl AllocZeroed
str r0, [r5]
movs r0, 0x1
strb r0, [r5, 0x8]
b _08118604
_0811836E:
ldr r0, _0811837C @ =gUnknown_84591DC
bl AddTextPrinterToWindow1
movs r0, 0x2
strb r0, [r5, 0x8]
b _08118604
.align 2, 0
_0811837C: .4byte gUnknown_84591DC
_08118380:
ldr r0, [r5, 0x4]
movs r1, 0x4
bl sub_811A650
ldr r0, [r5]
movs r1, 0x10
bl sub_811A5E4
ldr r0, [r5, 0x4]
ldrb r1, [r5, 0x12]
adds r1, 0x7
bl sub_811A084
strb r0, [r5, 0x11]
ldrb r0, [r5, 0x13]
cmp r0, 0
beq _081183EC
ldr r0, _081183F8 @ =gUnknown_8456D4C
ldr r1, [r0, 0x4]
ldr r0, [r0]
str r0, [sp]
str r1, [sp, 0x4]
bl GetMysteryGiftBaseBlock
lsls r0, 16
ldr r2, _081183FC @ =0x0000ffff
ldr r1, [sp, 0x4]
ands r1, r2
orrs r1, r0
str r1, [sp, 0x4]
mov r0, sp
bl AddWindow
strb r0, [r5, 0xB]
ldrb r0, [r5, 0xB]
bl MG_DrawTextBorder
ldr r0, _08118400 @ =gMultiuseListMenuTemplate
adds r2, r0, 0
ldr r1, _08118404 @ =gUnknown_8456DDC
ldm r1!, {r3,r4,r6}
stm r2!, {r3,r4,r6}
ldm r1!, {r3,r4,r6}
stm r2!, {r3,r4,r6}
ldrb r1, [r5, 0xB]
strb r1, [r0, 0x10]
movs r1, 0
movs r2, 0
bl ListMenuInit
strb r0, [r5, 0xE]
movs r0, 0
bl CopyBgTilemapBufferToVram
_081183EC:
movs r0, 0
strb r0, [r5, 0xF]
movs r0, 0x3
strb r0, [r5, 0x8]
b _08118604
.align 2, 0
_081183F8: .4byte gUnknown_8456D4C
_081183FC: .4byte 0x0000ffff
_08118400: .4byte gMultiuseListMenuTemplate
_08118404: .4byte gUnknown_8456DDC
_08118408:
bl sub_8116FE4
lsls r0, 24
lsrs r0, 24
cmp r0, 0
beq _0811842E
cmp r0, 0x1
bne _0811841E
movs r0, 0x2
bl PlaySE
_0811841E:
ldrb r0, [r5, 0x13]
cmp r0, 0
bne _08118426
b _08118604
_08118426:
ldrb r0, [r5, 0xE]
bl RedrawListMenu
b _08118604
_0811842E:
ldrb r0, [r5, 0x13]
cmp r0, 0
beq _0811843A
ldrb r0, [r5, 0xE]
bl ListMenu_ProcessInput
_0811843A:
ldrb r0, [r5, 0x14]
cmp r0, 0x78
bls _081184A8
ldr r2, [r5]
ldrb r1, [r2, 0x1A]
movs r0, 0x3
ands r0, r1
cmp r0, 0x1
bne _081184BC
ldrb r1, [r2, 0xA]
movs r0, 0x80
ands r0, r1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0
bne _081184BC
ldrb r1, [r5, 0x12]
adds r1, 0x7
adds r0, r2, 0
bl sub_8119FB0
cmp r0, 0
beq _0811849C
strb r4, [r5, 0xF]
strb r4, [r5, 0x14]
bl LoadWirelessStatusIndicatorSpriteGfx
movs r0, 0
movs r1, 0
bl CreateWirelessStatusIndicatorSprite
ldr r0, [r5]
adds r4, r0, 0
adds r4, 0x10
adds r0, 0x2
bl sub_8118658
adds r1, r0, 0
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
bl sub_80FBF54
movs r0, 0x67
bl PlaySE
movs r0, 0x4
strb r0, [r5, 0x8]
b _081184BC
_0811849C:
movs r0, 0x16
bl PlaySE
movs r0, 0xA
strb r0, [r5, 0x8]
b _081184BC
_081184A8:
ldr r0, _081184C4 @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _081184BC
movs r1, 0
movs r0, 0x6
strb r0, [r5, 0x8]
strb r1, [r5, 0x14]
_081184BC:
ldrb r0, [r5, 0x14]
adds r0, 0x1
strb r0, [r5, 0x14]
b _08118604
.align 2, 0
_081184C4: .4byte gMain
_081184C8:
ldr r0, _081184FC @ =gUnknown_845928C
bl AddTextPrinterToWindow1
ldr r4, _08118500 @ =gStringVar1
ldrb r0, [r5, 0xF]
lsls r0, 5
ldr r1, [r5]
adds r1, r0
adds r1, 0x10
adds r0, r4, 0
bl StringCopy
ldr r1, [r5]
ldrb r0, [r5, 0xF]
lsls r0, 5
adds r1, r0
ldrb r1, [r1]
lsls r1, 28
lsrs r1, 28
adds r0, r4, 0
bl ConvertInternationalString
movs r0, 0x5
strb r0, [r5, 0x8]
b _08118604
.align 2, 0
_081184FC: .4byte gUnknown_845928C
_08118500: .4byte gStringVar1
_08118504:
ldr r0, _0811853C @ =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
beq _08118522
ldr r2, _08118540 @ =gUnknown_203B058
ldr r1, [r5]
ldrb r0, [r5, 0xF]
lsls r0, 5
adds r1, r0
ldrb r0, [r1, 0xA]
lsls r0, 25
lsrs r0, 25
strb r0, [r2]
movs r0, 0xC
strb r0, [r5, 0x8]
_08118522:
bl sub_80FB9F4
lsls r0, 24
lsrs r0, 24
cmp r0, 0x5
beq _0811854E
cmp r0, 0x5
bgt _08118544
cmp r0, 0x2
bgt _08118604
cmp r0, 0x1
blt _08118604
b _08118548
.align 2, 0
_0811853C: .4byte gReceivedRemoteLinkPlayers
_08118540: .4byte gUnknown_203B058
_08118544:
cmp r0, 0x6
bne _08118604
_08118548:
movs r0, 0x8
strb r0, [r5, 0x8]
b _08118604
_0811854E:
ldr r0, _08118560 @ =gUnknown_845777C
bl AddTextPrinterToWindow1
movs r0, 0
movs r1, 0
bl sub_80FB9E4
b _08118604
.align 2, 0
_08118560: .4byte gUnknown_845777C
_08118564:
ldrb r0, [r5, 0x13]
cmp r0, 0
beq _08118580
ldrb r0, [r5, 0xE]
movs r1, 0
movs r2, 0
bl DestroyListMenuTask
movs r0, 0
bl CopyBgTilemapBufferToVram
ldrb r0, [r5, 0xB]
bl RemoveWindow
_08118580:
ldrb r0, [r5, 0x11]
bl DestroyTask
ldr r0, [r5]
bl Free
ldr r0, [r5, 0x4]
bl Free
ldrb r0, [r5, 0x8]
adds r0, 0x1
strb r0, [r5, 0x8]
b _08118604
_0811859A:
adds r0, r5, 0
adds r0, 0x9
ldr r1, _081185A4 @ =gUnknown_84577BC
b _081185C2
.align 2, 0
_081185A4: .4byte gUnknown_84577BC
_081185A8:
adds r0, r5, 0
adds r0, 0x9
ldr r1, _081185B0 @ =gUnknown_84571E0
b _081185C2
.align 2, 0
_081185B0: .4byte gUnknown_84571E0
_081185B4:
adds r0, r5, 0
adds r0, 0x9
ldr r2, _081185E0 @ =gUnknown_845933C
ldrb r1, [r5, 0x12]
lsls r1, 2
adds r1, r2
ldr r1, [r1]
_081185C2:
bl MG_PrintTextOnWindow1AndWaitButton
cmp r0, 0
beq _08118604
bl DestroyWirelessStatusIndicatorSprite
adds r0, r4, 0
bl DestroyTask
bl sub_80F8DC0
ldr r1, _081185E4 @ =gSpecialVar_Result
movs r0, 0x5
strh r0, [r1]
b _08118604
.align 2, 0
_081185E0: .4byte gUnknown_845933C
_081185E4: .4byte gSpecialVar_Result
_081185E8:
ldrb r0, [r5, 0x8]
adds r0, 0x1
strb r0, [r5, 0x8]
bl sub_800AB9C
b _08118604
_081185F4:
bl IsLinkTaskFinished
lsls r0, 24
cmp r0, 0
beq _08118604
adds r0, r4, 0
bl DestroyTask
_08118604:
add sp, 0x8
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_81182DC
thumb_func_start UnionRoomSpecial
UnionRoomSpecial: @ 811860C
push {r4,lr}
bl ClearAndInitHostRFUtgtGname
ldr r0, _08118648 @ =sub_81186E0
movs r1, 0xA
bl CreateTask
ldr r4, _0811864C @ =gUnknown_203B05C
movs r0, 0x96
lsls r0, 2
bl AllocZeroed
str r0, [r4]
ldr r1, _08118650 @ =gUnknown_300202C
str r0, [r1]
movs r1, 0
strb r1, [r0, 0x14]
strb r1, [r0, 0x16]
strh r1, [r0, 0x10]
strh r1, [r0, 0x12]
ldr r0, _08118654 @ =gSpecialVar_Result
strh r1, [r0]
movs r0, 0xD0
movs r1, 0x1
bl sub_8107D38
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08118648: .4byte sub_81186E0
_0811864C: .4byte gUnknown_203B05C
_08118650: .4byte gUnknown_300202C
_08118654: .4byte gSpecialVar_Result
thumb_func_end UnionRoomSpecial
thumb_func_start sub_8118658
sub_8118658: @ 8118658
ldrb r1, [r0, 0x1]
lsls r1, 8
ldrb r0, [r0]
orrs r0, r1
bx lr
thumb_func_end sub_8118658
thumb_func_start sub_8118664
sub_8118664: @ 8118664
push {lr}
adds r3, r1, 0
ldr r1, _08118684 @ =gUnknown_203B05C
ldr r2, [r1]
movs r1, 0x8
strb r1, [r2, 0x14]
strb r0, [r2, 0x15]
ldr r0, _08118688 @ =gStringVar4
cmp r3, r0
beq _0811867E
adds r1, r3, 0
bl StringExpandPlaceholders
_0811867E:
pop {r0}
bx r0
.align 2, 0
_08118684: .4byte gUnknown_203B05C
_08118688: .4byte gStringVar4
thumb_func_end sub_8118664
thumb_func_start sub_811868C
sub_811868C: @ 811868C
push {lr}
adds r2, r0, 0
ldr r0, _081186A8 @ =gUnknown_203B05C
ldr r1, [r0]
movs r0, 0x1A
strb r0, [r1, 0x14]
ldr r0, _081186AC @ =gStringVar4
cmp r2, r0
beq _081186A4
adds r1, r2, 0
bl StringExpandPlaceholders
_081186A4:
pop {r0}
bx r0
.align 2, 0
_081186A8: .4byte gUnknown_203B05C
_081186AC: .4byte gStringVar4
thumb_func_end sub_811868C
thumb_func_start sub_81186B0
sub_81186B0: @ 81186B0
push {lr}
ldr r3, _081186C4 @ =gDecompressionBuffer + 0x3F00
ldr r1, [r0]
movs r2, 0x80
lsls r2, 1
adds r0, r3, 0
bl memcpy
pop {r0}
bx r0
.align 2, 0
_081186C4: .4byte gDecompressionBuffer + 0x3F00
thumb_func_end sub_81186B0
thumb_func_start sub_81186C8
sub_81186C8: @ 81186C8
push {lr}
ldr r0, [r0]
ldr r1, _081186DC @ =gDecompressionBuffer + 0x3F00
movs r2, 0x80
lsls r2, 1
bl memcpy
pop {r0}
bx r0
.align 2, 0
_081186DC: .4byte gDecompressionBuffer + 0x3F00
thumb_func_end sub_81186C8
thumb_func_start sub_81186E0
sub_81186E0: @ 81186E0
push {r4-r7,lr}
@@ -3229,7 +2289,7 @@ _08119ACA:
ldr r0, [r5]
adds r0, r4
adds r0, 0x2
bl sub_8118658
bl ReadAsU16
lsls r0, 16
lsrs r0, 16
mov r1, sp
@@ -5264,7 +4324,7 @@ sub_811AA24: @ 811AA24
bl ConvertInternationalString
adds r4, 0x2
adds r0, r4, 0
bl sub_8118658
bl ReadAsU16
lsls r0, 16
lsrs r0, 16
mov r1, sp
@@ -5302,7 +4362,7 @@ sub_811AA5C: @ 811AA5C
adds r0, r4, 0
bl ConvertInternationalString
adds r0, r5, 0x2
bl sub_8118658
bl ReadAsU16
lsls r0, 16
lsrs r0, 16
adds r1, r4, 0