diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/clear_save_data_screen.s | 6 | ||||
| -rw-r--r-- | asm/overworld.s | 18 | ||||
| -rw-r--r-- | asm/slot_machine.s | 4794 | ||||
| -rw-r--r-- | asm/tileset_anims.s | 667 | ||||
| -rw-r--r-- | asm/title_screen.s | 2310 | 
5 files changed, 12 insertions, 7783 deletions
| diff --git a/asm/clear_save_data_screen.s b/asm/clear_save_data_screen.s index f6cd11410..5d9d2ac03 100644 --- a/asm/clear_save_data_screen.s +++ b/asm/clear_save_data_screen.s @@ -26,8 +26,8 @@ sub_80F558C: @ 80F558C  	bx r0  	thumb_func_end sub_80F558C -	thumb_func_start sub_80F55A0 -sub_80F55A0: @ 80F55A0 +	thumb_func_start CB2_SaveClearScreen_Init +CB2_SaveClearScreen_Init: @ 80F55A0  	push {r4,lr}  	ldr r4, _080F55D0 @ =gUnknown_203AB54  	movs r0, 0x4 @@ -52,7 +52,7 @@ sub_80F55A0: @ 80F55A0  _080F55D0: .4byte gUnknown_203AB54  _080F55D4: .4byte sub_80F55DC  _080F55D8: .4byte sub_80F5574 -	thumb_func_end sub_80F55A0 +	thumb_func_end CB2_SaveClearScreen_Init  	thumb_func_start sub_80F55DC  sub_80F55DC: @ 80F55DC diff --git a/asm/overworld.s b/asm/overworld.s index 56c253477..b2bce4b48 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -701,7 +701,7 @@ mapdata_load_assets_to_gpu_and_full_redraw: @ 8055148  	ldr r0, [r4]  	bl apply_map_tileset1_tileset2_palette  	bl DrawWholeMapView -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	pop {r4}  	pop {r0}  	bx r0 @@ -1732,7 +1732,7 @@ _080558D4:  	adds r4, 0x1  	cmp r4, 0xC  	ble _080558D4 -	bl sub_806FFB0 +	bl InitSecondaryTilesetAnimation  	bl UpdateLocationHistoryForRoamer  	bl RoamerMove  	bl sub_8110920 @@ -3392,7 +3392,7 @@ sub_8056578: @ 8056578  	bl UpdateCameraPanning  	bl BuildOamBuffer  	bl UpdatePaletteFade -	bl sub_806FFBC +	bl UpdateTilesetAnimations  	bl DoScheduledBgTilemapCopiesToVram  	pop {r0}  	bx r0 @@ -4051,7 +4051,7 @@ _08056B30:  	bl DrawWholeMapView  	b _08056B62  _08056B36: -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	b _08056B62  _08056B3C:  	ldr r0, _08056B54 @ =gWirelessCommType @@ -4193,7 +4193,7 @@ _08056C6C:  	bl DrawWholeMapView  	b _08056CCA  _08056C72: -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	b _08056CCA  _08056C78:  	bl sub_80561B4 @@ -4382,7 +4382,7 @@ _08056E0C:  	bl DrawWholeMapView  	b _08056E3E  _08056E12: -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	b _08056E3E  _08056E18:  	ldr r0, _08056E30 @ =gWirelessCommType @@ -5093,7 +5093,7 @@ _08057404:  	bl DrawWholeMapView  	b _08057412  _0805740A: -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	bl sub_815A540  _08057412:  	ldrb r0, [r4] @@ -5176,7 +5176,7 @@ _080574B8:  	bl UpdateCameraPanning  	bl BuildOamBuffer  	bl UpdatePaletteFade -	bl sub_806FFBC +	bl UpdateTilesetAnimations  	bl DoScheduledBgTilemapCopiesToVram  	cmp r4, 0  	beq _080574E0 @@ -5442,7 +5442,7 @@ _0805770C:  	bl DrawWholeMapView  	b _0805772A  _08057712: -	bl cur_mapheader_run_tileset_funcs_after_some_cpuset +	bl InitTilesetAnimations  	ldr r2, _08057734 @ =gPaletteFade  	ldrb r1, [r2, 0x8]  	movs r0, 0x7F diff --git a/asm/slot_machine.s b/asm/slot_machine.s deleted file mode 100644 index c5f6d2b72..000000000 --- a/asm/slot_machine.s +++ /dev/null @@ -1,4794 +0,0 @@ -	.include "asm/macros.inc" -	.include "constants/constants.inc" - -	.syntax unified - -	.text - -	thumb_func_start PlaySlotMachine -PlaySlotMachine: @ 813F804 -	push {r4-r6,lr} -	adds r6, r1, 0 -	lsls r0, 16 -	lsrs r5, r0, 16 -	bl ResetTasks -	ldr r4, _0813F828 @ =gUnknown_203F3A0 -	movs r0, 0x54 -	bl Alloc -	str r0, [r4] -	cmp r0, 0 -	bne _0813F82C -	adds r0, r6, 0 -	bl SetMainCallback2 -	b _0813F840 -	.align 2, 0 -_0813F828: .4byte gUnknown_203F3A0 -_0813F82C: -	cmp r5, 0x5 -	bls _0813F832 -	movs r5, 0 -_0813F832: -	strh r5, [r0, 0x4] -	str r6, [r0] -	bl sub_813F84C -	ldr r0, _0813F848 @ =sub_813F898 -	bl SetMainCallback2 -_0813F840: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813F848: .4byte sub_813F898 -	thumb_func_end PlaySlotMachine - -	thumb_func_start sub_813F84C -sub_813F84C: @ 813F84C -	push {r4-r6,lr} -	movs r1, 0 -	strh r1, [r0, 0x6] -	strh r1, [r0, 0xE] -	adds r0, 0x50 -	strh r1, [r0] -	movs r3, 0 -	ldr r6, _0813F894 @ =gUnknown_203F3A0 -	movs r4, 0 -	movs r5, 0x15 -_0813F860: -	ldr r2, [r6] -	lsls r1, r3, 2 -	adds r0, r2, 0 -	adds r0, 0x14 -	adds r0, r1 -	str r4, [r0] -	lsls r1, r3, 1 -	adds r0, r2, 0 -	adds r0, 0x20 -	adds r0, r1 -	strh r4, [r0] -	adds r0, r2, 0 -	adds r0, 0x26 -	adds r0, r1 -	strh r4, [r0] -	adds r0, r2, 0 -	adds r0, 0x2C -	adds r0, r1 -	strh r5, [r0] -	adds r3, 0x1 -	cmp r3, 0x2 -	ble _0813F860 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813F894: .4byte gUnknown_203F3A0 -	thumb_func_end sub_813F84C - -	thumb_func_start sub_813F898 -sub_813F898: @ 813F898 -	push {r4,lr} -	bl RunTasks -	bl AnimateSprites -	bl BuildOamBuffer -	ldr r0, _0813F8BC @ =gMain -	movs r1, 0x87 -	lsls r1, 3 -	adds r4, r0, r1 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _0813F8C0 -	cmp r0, 0x1 -	beq _0813F8EC -	b _0813F916 -	.align 2, 0 -_0813F8BC: .4byte gMain -_0813F8C0: -	bl sub_814104C -	cmp r0, 0 -	beq _0813F8DC -	ldr r0, _0813F8D8 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldr r0, [r0] -	bl SetMainCallback2 -	bl sub_813F92C -	b _0813F916 -	.align 2, 0 -_0813F8D8: .4byte gUnknown_203F3A0 -_0813F8DC: -	movs r0, 0 -	movs r1, 0 -	bl sub_8141148 -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _0813F916 -_0813F8EC: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813F916 -	ldr r0, _0813F91C @ =sub_813F964 -	movs r1, 0 -	bl CreateTask -	ldr r4, _0813F920 @ =gUnknown_203F3A0 -	ldr r1, [r4] -	strb r0, [r1, 0x10] -	ldr r0, _0813F924 @ =sub_8140060 -	movs r1, 0x1 -	bl CreateTask -	ldr r1, [r4] -	strb r0, [r1, 0x11] -	ldr r0, _0813F928 @ =sub_813F94C -	bl SetMainCallback2 -_0813F916: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813F91C: .4byte sub_813F964 -_0813F920: .4byte gUnknown_203F3A0 -_0813F924: .4byte sub_8140060 -_0813F928: .4byte sub_813F94C -	thumb_func_end sub_813F898 - -	thumb_func_start sub_813F92C -sub_813F92C: @ 813F92C -	push {r4,lr} -	bl sub_8141094 -	ldr r4, _0813F948 @ =gUnknown_203F3A0 -	ldr r0, [r4] -	cmp r0, 0 -	beq _0813F942 -	bl Free -	movs r0, 0 -	str r0, [r4] -_0813F942: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813F948: .4byte gUnknown_203F3A0 -	thumb_func_end sub_813F92C - -	thumb_func_start sub_813F94C -sub_813F94C: @ 813F94C -	push {lr} -	bl RunTasks -	bl AnimateSprites -	bl BuildOamBuffer -	bl UpdatePaletteFade -	pop {r0} -	bx r0 -	thumb_func_end sub_813F94C - -	thumb_func_start sub_813F964 -sub_813F964: @ 813F964 -	push {r4-r7,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813F988 @ =gTasks+0x8 -	adds r6, r1, r0 -	movs r1, 0 -	ldrsh r0, [r6, r1] -	cmp r0, 0x4 -	bls _0813F97E -	b _0813FBB8 -_0813F97E: -	lsls r0, 2 -	ldr r1, _0813F98C @ =_0813F990 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0813F988: .4byte gTasks+0x8 -_0813F98C: .4byte _0813F990 -	.align 2, 0 -_0813F990: -	.4byte _0813F9A4 -	.4byte _0813FAA8 -	.4byte _0813FAE4 -	.4byte _0813FB08 -	.4byte _0813FB48 -_0813F9A4: -	bl GetCoins -	lsls r0, 16 -	cmp r0, 0 -	bne _0813F9BC -	ldr r0, _0813F9B8 @ =sub_813FBC0 -	bl sub_8140030 -	b _0813FBB8 -	.align 2, 0 -_0813F9B8: .4byte sub_813FBC0 -_0813F9BC: -	ldr r1, _0813F9F4 @ =gMain -	ldrh r2, [r1, 0x2E] -	movs r0, 0x80 -	ands r0, r2 -	cmp r0, 0 -	beq _0813F9FC -	ldr r0, _0813F9F8 @ =gUnknown_203F3A0 -	ldr r1, [r0] -	ldrh r0, [r1, 0xE] -	adds r0, 0x1 -	strh r0, [r1, 0xE] -	movs r0, 0x1 -	bl TakeCoins -	movs r0, 0x58 -	bl PlaySE -	movs r0, 0x8 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x2 -	movs r1, 0x1 -	bl sub_8141148 -	movs r0, 0x1 -	b _0813FBB6 -	.align 2, 0 -_0813F9F4: .4byte gMain -_0813F9F8: .4byte gUnknown_203F3A0 -_0813F9FC: -	movs r0, 0x80 -	lsls r0, 1 -	ands r0, r2 -	cmp r0, 0 -	beq _0813FA5C -	ldr r5, _0813FA2C @ =gUnknown_203F3A0 -	ldr r0, [r5] -	ldrh r0, [r0, 0xE] -	movs r7, 0x3 -	subs r4, r7, r0 -	bl GetCoins -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, r4 -	blt _0813FA30 -	ldr r0, [r5] -	strh r7, [r0, 0xE] -	lsls r0, r4, 16 -	lsrs r0, 16 -	bl TakeCoins -	b _0813FA42 -	.align 2, 0 -_0813FA2C: .4byte gUnknown_203F3A0 -_0813FA30: -	bl GetCoins -	ldr r1, [r5] -	ldrh r2, [r1, 0xE] -	adds r0, r2 -	strh r0, [r1, 0xE] -	movs r0, 0 -	bl SetCoins -_0813FA42: -	movs r0, 0x58 -	bl PlaySE -	movs r0, 0x8 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x2 -	movs r1, 0x1 -	bl sub_8141148 -	movs r0, 0x1 -	b _0813FBB6 -_0813FA5C: -	movs r0, 0x1 -	ands r0, r2 -	cmp r0, 0 -	beq _0813FA78 -	ldr r0, _0813FA74 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0xE] -	cmp r0, 0 -	beq _0813FA78 -	movs r0, 0x2 -	b _0813FBB6 -	.align 2, 0 -_0813FA74: .4byte gUnknown_203F3A0 -_0813FA78: -	ldrh r1, [r1, 0x2E] -	movs r0, 0x2 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FA90 -	ldr r0, _0813FA8C @ =sub_813FCAC -	bl sub_8140030 -	b _0813FBB8 -	.align 2, 0 -_0813FA8C: .4byte sub_813FCAC -_0813FA90: -	movs r0, 0x10 -	ands r0, r1 -	cmp r0, 0 -	bne _0813FA9A -	b _0813FBB8 -_0813FA9A: -	ldr r0, _0813FAA4 @ =sub_813FC2C -	bl sub_8140030 -	b _0813FBB8 -	.align 2, 0 -_0813FAA4: .4byte sub_813FC2C -_0813FAA8: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	beq _0813FAB4 -	b _0813FBB8 -_0813FAB4: -	movs r0, 0x1 -	bl sub_8141180 -	adds r4, r0, 0 -	cmp r4, 0 -	beq _0813FAC2 -	b _0813FBB8 -_0813FAC2: -	ldr r0, _0813FADC @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0xE] -	cmp r0, 0x3 -	beq _0813FAD6 -	bl GetCoins -	lsls r0, 16 -	cmp r0, 0 -	bne _0813FAE0 -_0813FAD6: -	movs r0, 0x2 -	b _0813FBB6 -	.align 2, 0 -_0813FADC: .4byte gUnknown_203F3A0 -_0813FAE0: -	strh r4, [r6] -	b _0813FBB8 -_0813FAE4: -	bl sub_811539C -	bl sub_81409B4 -	bl sub_8140148 -	ldr r0, _0813FB04 @ =gUnknown_203F3A0 -	ldr r1, [r0] -	movs r0, 0 -	strh r0, [r1, 0x6] -	movs r0, 0x3 -	movs r1, 0 -	bl sub_8141148 -	b _0813FBB4 -	.align 2, 0 -_0813FB04: .4byte gUnknown_203F3A0 -_0813FB08: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FBB8 -	ldr r0, _0813FB40 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FBB8 -	movs r0, 0x18 -	bl PlaySE -	ldr r4, _0813FB44 @ =gUnknown_203F3A0 -	ldr r0, [r4] -	ldrh r1, [r0, 0x6] -	adds r0, r1, 0 -	bl sub_814016C -	ldr r0, [r4] -	ldrb r0, [r0, 0x6] -	movs r1, 0 -	bl sub_8141C30 -	movs r0, 0x4 -	b _0813FBB6 -	.align 2, 0 -_0813FB40: .4byte gMain -_0813FB44: .4byte gUnknown_203F3A0 -_0813FB48: -	ldr r5, _0813FB90 @ =gUnknown_203F3A0 -	ldr r0, [r5] -	ldrh r0, [r0, 0x6] -	bl sub_81401A0 -	cmp r0, 0 -	bne _0813FBB8 -	movs r0, 0 -	bl sub_8141180 -	adds r4, r0, 0 -	cmp r4, 0 -	bne _0813FBB8 -	ldr r1, [r5] -	ldrh r0, [r1, 0x6] -	adds r0, 0x1 -	strh r0, [r1, 0x6] -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0x2 -	bls _0813FBB4 -	bl sub_8140A80 -	ldr r1, [r5] -	strh r0, [r1, 0xA] -	strh r4, [r1, 0xE] -	strh r4, [r1, 0x6] -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0 -	bne _0813FB98 -	ldr r0, _0813FB94 @ =sub_813FD84 -	bl sub_8140030 -	b _0813FBB8 -	.align 2, 0 -_0813FB90: .4byte gUnknown_203F3A0 -_0813FB94: .4byte sub_813FD84 -_0813FB98: -	cmp r0, 0x6 -	bne _0813FBA2 -	movs r0, 0x1C -	bl IncrementGameStat -_0813FBA2: -	bl sub_8140A70 -	ldr r0, _0813FBB0 @ =sub_813FE1C -	bl sub_8140030 -	b _0813FBB8 -	.align 2, 0 -_0813FBB0: .4byte sub_813FE1C -_0813FBB4: -	movs r0, 0x3 -_0813FBB6: -	strh r0, [r6] -_0813FBB8: -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_813F964 - -	thumb_func_start sub_813FBC0 -sub_813FBC0: @ 813FBC0 -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FBE4 @ =gTasks+0x8 -	adds r4, r1, r0 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0x1 -	beq _0813FBF8 -	cmp r0, 0x1 -	bgt _0813FBE8 -	cmp r0, 0 -	beq _0813FBEE -	b _0813FC1C -	.align 2, 0 -_0813FBE4: .4byte gTasks+0x8 -_0813FBE8: -	cmp r0, 0x2 -	beq _0813FC0A -	b _0813FC1C -_0813FBEE: -	movs r0, 0x9 -	movs r1, 0 -	bl sub_8141148 -	b _0813FC02 -_0813FBF8: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FC1C -_0813FC02: -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	b _0813FC1C -_0813FC0A: -	ldr r0, _0813FC24 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0xF3 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FC1C -	ldr r0, _0813FC28 @ =sub_813FFD8 -	bl sub_8140030 -_0813FC1C: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813FC24: .4byte gMain -_0813FC28: .4byte sub_813FFD8 -	thumb_func_end sub_813FBC0 - -	thumb_func_start sub_813FC2C -sub_813FC2C: @ 813FC2C -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FC50 @ =gTasks+0x8 -	adds r4, r1, r0 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0x1 -	beq _0813FC62 -	cmp r0, 0x1 -	bgt _0813FC54 -	cmp r0, 0 -	beq _0813FC5E -	b _0813FCA0 -	.align 2, 0 -_0813FC50: .4byte gTasks+0x8 -_0813FC54: -	cmp r0, 0x2 -	beq _0813FC6E -	cmp r0, 0x3 -	beq _0813FC90 -	b _0813FCA0 -_0813FC5E: -	movs r0, 0xE -	b _0813FC7C -_0813FC62: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FCA0 -	b _0813FC82 -_0813FC6E: -	ldr r0, _0813FC8C @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x20 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FCA0 -	movs r0, 0xF -_0813FC7C: -	movs r1, 0 -	bl sub_8141148 -_0813FC82: -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	b _0813FCA0 -	.align 2, 0 -_0813FC8C: .4byte gMain -_0813FC90: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FCA0 -	ldr r0, _0813FCA8 @ =sub_813F964 -	bl sub_8140030 -_0813FCA0: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813FCA8: .4byte sub_813F964 -	thumb_func_end sub_813FC2C - -	thumb_func_start sub_813FCAC -sub_813FCAC: @ 813FCAC -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FCD0 @ =gTasks+0x8 -	adds r4, r1, r0 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0x4 -	bhi _0813FD78 -	lsls r0, 2 -	ldr r1, _0813FCD4 @ =_0813FCD8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0813FCD0: .4byte gTasks+0x8 -_0813FCD4: .4byte _0813FCD8 -	.align 2, 0 -_0813FCD8: -	.4byte _0813FCEC -	.4byte _0813FCF6 -	.4byte _0813FD08 -	.4byte _0813FD52 -	.4byte _0813FD68 -_0813FCEC: -	movs r0, 0xA -	movs r1, 0 -	bl sub_8141148 -	b _0813FD00 -_0813FCF6: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FD78 -_0813FD00: -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	b _0813FD78 -_0813FD08: -	bl Menu_ProcessInputNoWrapClearOnChoose -	lsls r0, 24 -	asrs r1, r0, 24 -	cmp r1, 0 -	beq _0813FD28 -	cmp r1, 0 -	bgt _0813FD22 -	movs r0, 0x1 -	negs r0, r0 -	cmp r1, r0 -	beq _0813FD44 -	b _0813FD78 -_0813FD22: -	cmp r1, 0x1 -	beq _0813FD44 -	b _0813FD78 -_0813FD28: -	ldr r0, _0813FD40 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0xE] -	bl GiveCoins -	movs r0, 0x8 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x3 -	strh r0, [r4] -	b _0813FD78 -	.align 2, 0 -_0813FD40: .4byte gUnknown_203F3A0 -_0813FD44: -	movs r0, 0xB -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x4 -	strh r0, [r4] -	b _0813FD78 -_0813FD52: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FD78 -	ldr r0, _0813FD64 @ =sub_813FFD8 -	bl sub_8140030 -	b _0813FD78 -	.align 2, 0 -_0813FD64: .4byte sub_813FFD8 -_0813FD68: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FD78 -	ldr r0, _0813FD80 @ =sub_813F964 -	bl sub_8140030 -_0813FD78: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813FD80: .4byte sub_813F964 -	thumb_func_end sub_813FCAC - -	thumb_func_start sub_813FD84 -sub_813FD84: @ 813FD84 -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FDA8 @ =gTasks+0x8 -	adds r5, r1, r0 -	movs r0, 0 -	ldrsh r4, [r5, r0] -	cmp r4, 0x1 -	beq _0813FDBE -	cmp r4, 0x1 -	bgt _0813FDAC -	cmp r4, 0 -	beq _0813FDB2 -	b _0813FE10 -	.align 2, 0 -_0813FDA8: .4byte gTasks+0x8 -_0813FDAC: -	cmp r4, 0x2 -	beq _0813FDEC -	b _0813FE10 -_0813FDB2: -	movs r0, 0x6 -	movs r1, 0 -	bl sub_8141148 -	strh r4, [r5, 0x2] -	b _0813FDE4 -_0813FDBE: -	ldrh r0, [r5, 0x2] -	adds r0, 0x1 -	strh r0, [r5, 0x2] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x3C -	ble _0813FE10 -	movs r0, 0x7 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x2 -	movs r1, 0x1 -	bl sub_8141148 -	movs r0, 0xD -	movs r1, 0x2 -	bl sub_8141148 -_0813FDE4: -	ldrh r0, [r5] -	adds r0, 0x1 -	strh r0, [r5] -	b _0813FE10 -_0813FDEC: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FE10 -	movs r0, 0x1 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FE10 -	movs r0, 0x2 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FE10 -	ldr r0, _0813FE18 @ =sub_813F964 -	bl sub_8140030 -_0813FE10: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813FE18: .4byte sub_813F964 -	thumb_func_end sub_813FD84 - -	thumb_func_start sub_813FE1C -sub_813FE1C: @ 813FE1C -	push {r4-r6,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FE40 @ =gTasks+0x8 -	adds r5, r1, r0 -	movs r1, 0 -	ldrsh r0, [r5, r1] -	cmp r0, 0x5 -	bls _0813FE36 -	b _0813FFCE -_0813FE36: -	lsls r0, 2 -	ldr r1, _0813FE44 @ =_0813FE48 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0813FE40: .4byte gTasks+0x8 -_0813FE44: .4byte _0813FE48 -	.align 2, 0 -_0813FE48: -	.4byte _0813FE60 -	.4byte _0813FEA0 -	.4byte _0813FECC -	.4byte _0813FF78 -	.4byte _0813FF92 -	.4byte _0813FFB4 -_0813FE60: -	ldr r0, _0813FE7C @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0xA] -	subs r0, 0x5 -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0x1 -	bhi _0813FE80 -	movs r0, 0x86 -	lsls r0, 1 -	bl PlayFanfare -	b _0813FE86 -	.align 2, 0 -_0813FE7C: .4byte gUnknown_203F3A0 -_0813FE80: -	ldr r0, _0813FE9C @ =0x0000010d -	bl PlayFanfare -_0813FE86: -	movs r0, 0x8 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0x4 -	movs r1, 0x1 -	bl sub_8141148 -	movs r0, 0x8 -	strh r0, [r5, 0x2] -	b _0813FFAC -	.align 2, 0 -_0813FE9C: .4byte 0x0000010d -_0813FEA0: -	ldrh r0, [r5, 0x2] -	adds r0, 0x1 -	strh r0, [r5, 0x2] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x78 -	bgt _0813FEB0 -	b _0813FFCE -_0813FEB0: -	movs r0, 0x8 -	strh r0, [r5, 0x2] -	ldr r0, _0813FEC8 @ =gMain -	ldrh r1, [r0, 0x2C] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FFAC -	movs r0, 0x2 -	strh r0, [r5, 0x2] -	b _0813FFAC -	.align 2, 0 -_0813FEC8: .4byte gMain -_0813FECC: -	movs r0, 0 -	bl sub_8141180 -	adds r6, r0, 0 -	cmp r6, 0 -	bne _0813FFCE -	bl IsFanfareTaskInactive -	lsls r0, 24 -	cmp r0, 0 -	beq _0813FF0C -	ldr r0, _0813FF04 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x8 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FF0C -	ldr r4, _0813FF08 @ =gUnknown_203F3A0 -	ldr r0, [r4] -	adds r0, 0x50 -	ldrh r0, [r0] -	bl GiveCoins -	ldr r0, [r4] -	adds r0, 0x50 -	strh r6, [r0] -	b _0813FF58 -	.align 2, 0 -_0813FF04: .4byte gMain -_0813FF08: .4byte gUnknown_203F3A0 -_0813FF0C: -	ldrh r0, [r5, 0x2] -	subs r0, 0x1 -	strh r0, [r5, 0x2] -	lsls r0, 16 -	cmp r0, 0 -	bne _0813FF58 -	bl IsFanfareTaskInactive -	lsls r0, 24 -	cmp r0, 0 -	beq _0813FF28 -	movs r0, 0x15 -	bl PlaySE -_0813FF28: -	ldr r4, _0813FF70 @ =gUnknown_203F3A0 -	ldr r0, [r4] -	adds r0, 0x50 -	ldrh r0, [r0] -	cmp r0, 0 -	beq _0813FF44 -	movs r0, 0x1 -	bl GiveCoins -	ldr r1, [r4] -	adds r1, 0x50 -	ldrh r0, [r1] -	subs r0, 0x1 -	strh r0, [r1] -_0813FF44: -	movs r0, 0x8 -	strh r0, [r5, 0x2] -	ldr r0, _0813FF74 @ =gMain -	ldrh r1, [r0, 0x2C] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _0813FF58 -	movs r0, 0x2 -	strh r0, [r5, 0x2] -_0813FF58: -	movs r0, 0x8 -	movs r1, 0 -	bl sub_8141148 -	ldr r0, _0813FF70 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	adds r0, 0x50 -	ldrh r0, [r0] -	cmp r0, 0 -	bne _0813FFCE -	b _0813FFAC -	.align 2, 0 -_0813FF70: .4byte gUnknown_203F3A0 -_0813FF74: .4byte gMain -_0813FF78: -	bl IsFanfareTaskInactive -	lsls r0, 24 -	cmp r0, 0 -	beq _0813FFCE -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FFCE -	movs r0, 0x5 -	movs r1, 0 -	b _0813FFA8 -_0813FF92: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FFCE -	movs r0, 0x2 -	movs r1, 0 -	bl sub_8141148 -	movs r0, 0xD -	movs r1, 0x1 -_0813FFA8: -	bl sub_8141148 -_0813FFAC: -	ldrh r0, [r5] -	adds r0, 0x1 -	strh r0, [r5] -	b _0813FFCE -_0813FFB4: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FFCE -	movs r0, 0x1 -	bl sub_8141180 -	cmp r0, 0 -	bne _0813FFCE -	ldr r0, _0813FFD4 @ =sub_813F964 -	bl sub_8140030 -_0813FFCE: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0813FFD4: .4byte sub_813F964 -	thumb_func_end sub_813FE1C - -	thumb_func_start sub_813FFD8 -sub_813FFD8: @ 813FFD8 -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _0813FFF8 @ =gTasks+0x8 -	adds r4, r1, r0 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0 -	beq _0813FFFC -	cmp r0, 0x1 -	beq _0814000C -	b _08140024 -	.align 2, 0 -_0813FFF8: .4byte gTasks+0x8 -_0813FFFC: -	movs r0, 0x1 -	movs r1, 0 -	bl sub_8141148 -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	b _08140024 -_0814000C: -	movs r0, 0 -	bl sub_8141180 -	cmp r0, 0 -	bne _08140024 -	ldr r0, _0814002C @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldr r0, [r0] -	bl SetMainCallback2 -	bl sub_813F92C -_08140024: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0814002C: .4byte gUnknown_203F3A0 -	thumb_func_end sub_813FFD8 - -	thumb_func_start sub_8140030 -sub_8140030: @ 8140030 -	push {r4,lr} -	ldr r4, _08140058 @ =gTasks -	ldr r1, _0814005C @ =gUnknown_203F3A0 -	ldr r3, [r1] -	ldrb r2, [r3, 0x10] -	lsls r1, r2, 2 -	adds r1, r2 -	lsls r1, 3 -	adds r1, r4 -	str r0, [r1] -	ldrb r1, [r3, 0x10] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r4 -	movs r1, 0 -	strh r1, [r0, 0x8] -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140058: .4byte gTasks -_0814005C: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140030 - -	thumb_func_start sub_8140060 -sub_8140060: @ 8140060 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	movs r0, 0 -	mov r12, r0 -	ldr r1, _08140144 @ =gUnknown_203F3A0 -	mov r10, r1 -	mov r8, r10 -	mov r9, r0 -	movs r6, 0 -	movs r7, 0 -_0814007A: -	mov r2, r8 -	ldr r3, [r2] -	adds r0, r3, 0 -	adds r0, 0x14 -	adds r0, r7 -	ldr r0, [r0] -	mov r1, r12 -	lsls r4, r1, 1 -	cmp r0, 0 -	bne _0814009C -	adds r0, r3, 0 -	adds r0, 0x26 -	adds r0, r6 -	movs r2, 0 -	ldrsh r0, [r0, r2] -	cmp r0, 0 -	beq _0814011A -_0814009C: -	adds r0, r3, 0 -	adds r0, 0x26 -	adds r2, r0, r6 -	ldrh r5, [r2] -	movs r1, 0 -	ldrsh r0, [r2, r1] -	cmp r0, 0 -	bne _081400C4 -	adds r1, r3, 0 -	adds r1, 0x20 -	adds r1, r4 -	adds r0, r3, 0 -	adds r0, 0x2C -	adds r0, r4 -	movs r4, 0 -	ldrsh r1, [r1, r4] -	movs r4, 0 -	ldrsh r0, [r0, r4] -	cmp r1, r0 -	beq _08140104 -_081400C4: -	adds r0, r5, 0x1 -	movs r1, 0 -	strh r0, [r2] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x2 -	ble _081400EA -	strh r1, [r2] -	adds r0, r3, 0 -	adds r0, 0x20 -	adds r1, r0, r6 -	ldrh r0, [r1] -	subs r0, 0x1 -	strh r0, [r1] -	lsls r0, 16 -	cmp r0, 0 -	bge _081400EA -	movs r0, 0x14 -	strh r0, [r1] -_081400EA: -	mov r1, r8 -	ldr r0, [r1] -	adds r1, r0, 0 -	adds r1, 0x20 -	adds r1, r6 -	adds r0, 0x2C -	adds r0, r6 -	movs r2, 0 -	ldrsh r1, [r1, r2] -	movs r4, 0 -	ldrsh r0, [r0, r4] -	cmp r1, r0 -	bne _0814011A -_08140104: -	mov r1, r8 -	ldr r0, [r1] -	adds r1, r0, 0 -	adds r1, 0x2C -	adds r1, r6 -	movs r2, 0x15 -	strh r2, [r1] -	adds r0, 0x14 -	adds r0, r7 -	mov r2, r9 -	str r2, [r0] -_0814011A: -	adds r6, 0x2 -	adds r7, 0x4 -	movs r4, 0x1 -	add r12, r4 -	mov r0, r12 -	cmp r0, 0x2 -	ble _0814007A -	mov r2, r10 -	ldr r1, [r2] -	adds r0, r1, 0 -	adds r0, 0x20 -	adds r1, 0x26 -	bl sub_8140D7C -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140144: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140060 - -	thumb_func_start sub_8140148 -sub_8140148: @ 8140148 -	push {r4,lr} -	movs r2, 0 -	ldr r4, _08140168 @ =gUnknown_203F3A0 -	movs r3, 0x1 -_08140150: -	ldr r0, [r4] -	lsls r1, r2, 2 -	adds r0, 0x14 -	adds r0, r1 -	str r3, [r0] -	adds r2, 0x1 -	cmp r2, 0x2 -	ble _08140150 -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140168: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140148 - -	thumb_func_start sub_814016C -sub_814016C: @ 814016C -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	lsls r1, 16 -	lsrs r1, 16 -	adds r2, r1, 0 -	cmp r1, 0x1 -	beq _08140192 -	cmp r1, 0x1 -	bgt _08140186 -	cmp r1, 0 -	beq _0814018C -	b _0814019C -_08140186: -	cmp r2, 0x2 -	beq _08140198 -	b _0814019C -_0814018C: -	bl sub_81401F0 -	b _0814019C -_08140192: -	bl sub_81403BC -	b _0814019C -_08140198: -	bl sub_81404B8 -_0814019C: -	pop {r0} -	bx r0 -	thumb_func_end sub_814016C - -	thumb_func_start sub_81401A0 -sub_81401A0: @ 81401A0 -	lsls r0, 16 -	ldr r1, _081401B0 @ =gUnknown_203F3A0 -	ldr r1, [r1] -	lsrs r0, 14 -	adds r1, 0x14 -	adds r1, r0 -	ldr r0, [r1] -	bx lr -	.align 2, 0 -_081401B0: .4byte gUnknown_203F3A0 -	thumb_func_end sub_81401A0 - -	thumb_func_start sub_81401B4 -sub_81401B4: @ 81401B4 -	push {lr} -	lsls r0, 16 -	ldr r1, _081401E8 @ =gUnknown_203F3A0 -	ldr r2, [r1] -	lsrs r0, 15 -	adds r1, r2, 0 -	adds r1, 0x20 -	adds r1, r0 -	ldrh r1, [r1] -	adds r2, 0x26 -	adds r2, r0 -	movs r3, 0 -	ldrsh r0, [r2, r3] -	cmp r0, 0 -	beq _081401E0 -	lsls r0, r1, 16 -	ldr r1, _081401EC @ =0xffff0000 -	adds r0, r1 -	lsrs r1, r0, 16 -	cmp r0, 0 -	bge _081401E0 -	movs r1, 0x14 -_081401E0: -	lsls r0, r1, 16 -	asrs r0, 16 -	pop {r1} -	bx r1 -	.align 2, 0 -_081401E8: .4byte gUnknown_203F3A0 -_081401EC: .4byte 0xffff0000 -	thumb_func_end sub_81401B4 - -	thumb_func_start sub_81401F0 -sub_81401F0: @ 81401F0 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x10 -	lsls r0, 16 -	lsrs r0, 16 -	mov r9, r0 -	bl sub_81401B4 -	lsls r0, 16 -	lsrs r1, r0, 16 -	movs r0, 0 -	mov r8, r0 -	ldr r0, _0814023C @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0x8] -	cmp r0, 0 -	bne _08140294 -	mov r2, r9 -	cmp r2, 0 -	bne _08140294 -	movs r7, 0 -	lsls r1, 16 -	str r1, [sp, 0xC] -	movs r0, 0 -	str r0, [sp, 0x8] -	mov r10, r0 -_0814022A: -	movs r6, 0 -	ldr r1, [sp, 0xC] -	asrs r0, r1, 16 -	subs r0, r7 -	adds r0, 0x1 -	lsls r0, 16 -	lsrs r2, r0, 16 -	adds r5, r7, 0x1 -	b _08140248 -	.align 2, 0 -_0814023C: .4byte gUnknown_203F3A0 -_08140240: -	adds r6, 0x1 -	adds r0, r4, 0x1 -	lsls r0, 16 -	lsrs r2, r0, 16 -_08140248: -	cmp r6, 0x2 -	bgt _0814026E -	lsls r0, r2, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	ble _08140256 -	movs r2, 0 -_08140256: -	lsls r0, r2, 16 -	asrs r4, r0, 16 -	mov r2, r10 -	adds r0, r4, r2 -	ldr r1, _08140284 @ =gUnknown_8464926 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x1 -	bl sub_81408F4 -	cmp r0, 0 -	beq _08140240 -_0814026E: -	cmp r6, 0x3 -	bne _0814027C -	mov r0, sp -	add r0, r8 -	strb r7, [r0] -	movs r2, 0x1 -	add r8, r2 -_0814027C: -	adds r7, r5, 0 -	cmp r7, 0x4 -	ble _0814022A -	b _08140348 -	.align 2, 0 -_08140284: .4byte gUnknown_8464926 -_08140288: -	mov r1, sp -	movs r0, 0 -	strb r0, [r1] -	movs r0, 0x1 -	mov r8, r0 -	b _081402FE -_08140294: -	ldr r0, _08140364 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0x8] -	cmp r0, 0x1 -	bne _081402AE -	lsls r2, r1, 16 -	str r2, [sp, 0xC] -	mov r0, r9 -	lsls r0, 1 -	str r0, [sp, 0x8] -	mov r2, r9 -	cmp r2, 0 -	bne _08140348 -_081402AE: -	movs r7, 0 -	lsls r1, 16 -	movs r2, 0x80 -	lsls r2, 9 -	adds r0, r1, r2 -	lsrs r2, r0, 16 -	str r1, [sp, 0xC] -	mov r0, r9 -	lsls r6, r0, 2 -	lsls r0, 1 -	str r0, [sp, 0x8] -	ldr r1, _08140368 @ =gUnknown_8464926 -	mov r10, r1 -	mov r1, r9 -	adds r0, r6, r1 -	lsls r0, 2 -	adds r5, r0, r1 -_081402D0: -	lsls r0, r2, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	ble _081402DA -	movs r2, 0 -_081402DA: -	ldr r0, _08140364 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0x8] -	lsls r1, r2, 16 -	asrs r4, r1, 16 -	adds r1, r4, r5 -	add r1, r10 -	ldrb r1, [r1] -	bl sub_81408F4 -	cmp r0, 0 -	bne _08140288 -	adds r7, 0x1 -	adds r0, r4, 0x1 -	lsls r0, 16 -	lsrs r2, r0, 16 -	cmp r7, 0x2 -	ble _081402D0 -_081402FE: -	movs r7, 0 -	ldr r0, [sp, 0xC] -	lsrs r2, r0, 16 -	ldr r1, _08140368 @ =gUnknown_8464926 -	mov r10, r1 -	mov r1, r9 -	adds r0, r6, r1 -	lsls r0, 2 -	adds r6, r0, r1 -_08140310: -	lsls r0, r2, 16 -	cmp r0, 0 -	bge _08140318 -	movs r2, 0x14 -_08140318: -	ldr r0, _08140364 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r0, [r0, 0x8] -	lsls r1, r2, 16 -	asrs r4, r1, 16 -	adds r1, r4, r6 -	add r1, r10 -	ldrb r1, [r1] -	bl sub_81408F4 -	adds r5, r7, 0x1 -	cmp r0, 0 -	beq _0814033C -	mov r0, sp -	add r0, r8 -	strb r5, [r0] -	movs r2, 0x1 -	add r8, r2 -_0814033C: -	adds r7, r5, 0 -	subs r0, r4, 0x1 -	lsls r0, 16 -	lsrs r2, r0, 16 -	cmp r7, 0x3 -	ble _08140310 -_08140348: -	mov r0, r8 -	cmp r0, 0 -	bne _0814036C -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x5 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r2, r0, 16 -	b _0814037E -	.align 2, 0 -_08140364: .4byte gUnknown_203F3A0 -_08140368: .4byte gUnknown_8464926 -_0814036C: -	bl Random -	lsls r0, 16 -	lsrs r0, 16 -	mov r1, r8 -	bl __modsi3 -	add r0, sp -	ldrb r2, [r0] -_0814037E: -	ldr r0, [sp, 0xC] -	asrs r1, r0, 16 -	lsls r0, r2, 16 -	asrs r0, 16 -	subs r1, r0 -	lsls r1, 16 -	lsrs r2, r1, 16 -	asrs r0, r1, 16 -	cmp r0, 0 -	bge _08140398 -	adds r0, 0x15 -	lsls r0, 16 -	lsrs r2, r0, 16 -_08140398: -	ldr r0, _081403B8 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	mov r1, r9 -	strh r1, [r0, 0x32] -	adds r0, 0x2C -	ldr r1, [sp, 0x8] -	adds r0, r1 -	strh r2, [r0] -	add sp, 0x10 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_081403B8: .4byte gUnknown_203F3A0 -	thumb_func_end sub_81401F0 - -	thumb_func_start sub_81403BC -sub_81403BC: @ 81403BC -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x14 -	lsls r0, 16 -	lsrs r0, 16 -	mov r8, r0 -	ldr r0, _08140470 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r1, [r0, 0x32] -	lsls r7, r1, 16 -	asrs r1, r7, 15 -	adds r0, 0x20 -	adds r0, r1 -	ldrh r0, [r0] -	adds r0, 0x1 -	lsls r0, 16 -	lsrs r4, r0, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	ble _081403EC -	movs r4, 0 -_081403EC: -	mov r0, r8 -	bl sub_81401B4 -	lsls r1, r0, 16 -	movs r2, 0x80 -	lsls r2, 9 -	adds r0, r1, r2 -	lsrs r2, r0, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	ble _08140404 -	movs r2, 0 -_08140404: -	movs r6, 0 -	movs r5, 0 -	mov r10, r7 -	lsls r4, 16 -	mov r9, r4 -	str r1, [sp, 0x10] -	mov r0, r8 -	lsls r0, 1 -	str r0, [sp, 0xC] -_08140416: -	lsls r0, r2, 16 -	asrs r4, r0, 16 -	ldr r7, _08140470 @ =gUnknown_203F3A0 -	ldr r0, [r7] -	ldrh r0, [r0, 0x8] -	str r0, [sp] -	mov r1, r10 -	asrs r0, r1, 16 -	mov r2, r9 -	asrs r1, r2, 16 -	mov r2, r8 -	adds r3, r4, 0 -	bl sub_814054C -	cmp r0, 0 -	beq _08140440 -	mov r0, sp -	adds r0, r6 -	adds r0, 0x4 -	strb r5, [r0] -	adds r6, 0x1 -_08140440: -	subs r0, r4, 0x1 -	lsls r0, 16 -	lsrs r2, r0, 16 -	cmp r0, 0 -	bge _0814044C -	movs r2, 0x14 -_0814044C: -	adds r5, 0x1 -	cmp r5, 0x4 -	ble _08140416 -	cmp r6, 0 -	bne _08140474 -	ldr r0, [r7] -	str r6, [r0, 0x38] -	ldrh r0, [r0, 0x8] -	subs r0, 0x5 -	lsls r0, 16 -	lsrs r0, 16 -	movs r2, 0 -	adds r3, r7, 0 -	cmp r0, 0x1 -	bhi _08140480 -	movs r2, 0x4 -	b _08140480 -	.align 2, 0 -_08140470: .4byte gUnknown_203F3A0 -_08140474: -	ldr r0, [r7] -	movs r1, 0x1 -	str r1, [r0, 0x38] -	add r0, sp, 0x4 -	ldrb r2, [r0] -	adds r3, r7, 0 -_08140480: -	ldr r0, [sp, 0x10] -	asrs r1, r0, 16 -	lsls r0, r2, 16 -	asrs r0, 16 -	subs r1, r0 -	lsls r1, 16 -	lsrs r2, r1, 16 -	asrs r0, r1, 16 -	cmp r0, 0 -	bge _0814049A -	adds r0, 0x15 -	lsls r0, 16 -	lsrs r2, r0, 16 -_0814049A: -	ldr r0, [r3] -	mov r1, r8 -	strh r1, [r0, 0x34] -	adds r0, 0x2C -	ldr r1, [sp, 0xC] -	adds r0, r1 -	strh r2, [r0] -	add sp, 0x14 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_81403BC - -	thumb_func_start sub_81404B8 -sub_81404B8: @ 81404B8 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x8 -	lsls r0, 16 -	lsrs r0, 16 -	mov r8, r0 -	bl sub_81401B4 -	lsls r0, 16 -	asrs r0, 16 -	mov r9, r0 -	mov r4, r9 -	movs r6, 0 -	movs r5, 0 -_081404D8: -	ldr r7, _0814051C @ =gUnknown_203F3A0 -	ldr r0, [r7] -	ldrh r2, [r0, 0x8] -	mov r0, r8 -	adds r1, r4, 0 -	bl sub_81406E8 -	cmp r0, 0 -	beq _081404F2 -	mov r1, sp -	adds r0, r1, r6 -	strb r5, [r0] -	adds r6, 0x1 -_081404F2: -	subs r4, 0x1 -	cmp r4, 0 -	bge _081404FA -	movs r4, 0x14 -_081404FA: -	adds r5, 0x1 -	cmp r5, 0x4 -	ble _081404D8 -	cmp r6, 0 -	bne _08140520 -	ldr r0, [r7] -	ldrh r0, [r0, 0x8] -	subs r0, 0x5 -	lsls r0, 16 -	lsrs r0, 16 -	movs r2, 0 -	adds r1, r7, 0 -	cmp r0, 0x1 -	bhi _08140526 -	movs r2, 0x4 -	b _08140526 -	.align 2, 0 -_0814051C: .4byte gUnknown_203F3A0 -_08140520: -	mov r0, sp -	ldrb r2, [r0] -	adds r1, r7, 0 -_08140526: -	mov r3, r9 -	subs r2, r3, r2 -	cmp r2, 0 -	bge _08140530 -	adds r2, 0x15 -_08140530: -	ldr r0, [r1] -	mov r3, r8 -	lsls r1, r3, 1 -	adds r0, 0x2C -	adds r0, r1 -	strh r2, [r0] -	add sp, 0x8 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_81404B8 - -	thumb_func_start sub_814054C -sub_814054C: @ 814054C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x14 -	adds r7, r0, 0 -	adds r6, r1, 0 -	mov r8, r2 -	adds r5, r3, 0 -	ldr r0, [sp, 0x34] -	mov r9, r0 -	mov r0, sp -	movs r1, 0 -	movs r2, 0x9 -	bl memset -	movs r1, 0x7 -	add r0, sp, 0x8 -_08140572: -	strb r1, [r0] -	subs r0, 0x1 -	cmp r0, sp -	bge _08140572 -	movs r4, 0 -	lsls r2, r7, 1 -	lsls r0, r7, 2 -	mov r1, r8 -	lsls r1, 1 -	str r1, [sp, 0x10] -	mov r3, r8 -	lsls r1, r3, 2 -	ldr r3, _081405E8 @ =gUnknown_8464926 -	mov r12, r3 -	adds r0, r7 -	lsls r0, 2 -	adds r0, r7 -	mov r10, r0 -	adds r2, r7 -	add r2, sp -	ldr r3, [sp, 0x10] -	add r3, r8 -	add r1, r8 -	lsls r1, 2 -	add r1, r8 -	str r1, [sp, 0xC] -	add r3, sp -_081405A8: -	mov r1, r10 -	adds r0, r6, r1 -	add r0, r12 -	ldrb r0, [r0] -	strb r0, [r2] -	ldr r1, [sp, 0xC] -	adds r0, r5, r1 -	add r0, r12 -	ldrb r0, [r0] -	strb r0, [r3] -	adds r6, 0x1 -	cmp r6, 0x14 -	ble _081405C4 -	movs r6, 0 -_081405C4: -	adds r5, 0x1 -	cmp r5, 0x14 -	ble _081405CC -	movs r5, 0 -_081405CC: -	adds r2, 0x1 -	adds r3, 0x1 -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _081405A8 -	mov r3, r9 -	cmp r3, 0x1 -	beq _08140630 -	cmp r3, 0x1 -	bgt _081405EC -	cmp r3, 0 -	beq _081405F4 -	b _081406A8 -	.align 2, 0 -_081405E8: .4byte gUnknown_8464926 -_081405EC: -	mov r5, r9 -	cmp r5, 0x2 -	beq _08140680 -	b _081406A8 -_081405F4: -	movs r4, 0 -_081405F6: -	mov r1, sp -	adds r0, r1, r4 -	ldrb r1, [r0] -	movs r0, 0x1 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081406D2 -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _081405F6 -	movs r4, 0 -	ldr r3, _0814062C @ =gUnknown_8464890 -_08140610: -	ldrb r0, [r3] -	mov r5, sp -	adds r2, r5, r0 -	ldrb r0, [r3, 0x1] -	adds r1, r5, r0 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	beq _081406A4 -	adds r3, 0x2 -	adds r4, 0x1 -	cmp r4, 0xE -	ble _08140610 -	b _081406D2 -	.align 2, 0 -_0814062C: .4byte gUnknown_8464890 -_08140630: -	cmp r7, 0 -	beq _0814063A -	mov r0, r8 -	cmp r0, 0 -	bne _081406A4 -_0814063A: -	cmp r7, 0x1 -	beq _08140644 -	mov r1, r8 -	cmp r1, 0x1 -	bne _08140662 -_08140644: -	movs r4, 0 -	ldr r3, _0814067C @ =gUnknown_8464890 -_08140648: -	ldrb r0, [r3] -	mov r5, sp -	adds r2, r5, r0 -	ldrb r0, [r3, 0x1] -	adds r1, r5, r0 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	beq _081406D2 -	adds r3, 0x6 -	adds r4, 0x3 -	cmp r4, 0xE -	ble _08140648 -_08140662: -	movs r4, 0 -_08140664: -	mov r1, sp -	adds r0, r1, r4 -	ldrb r1, [r0] -	mov r0, r9 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081406A4 -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _08140664 -	b _081406D2 -	.align 2, 0 -_0814067C: .4byte gUnknown_8464890 -_08140680: -	cmp r7, 0x2 -	beq _0814068A -	mov r3, r8 -	cmp r3, 0x2 -	bne _081406A8 -_0814068A: -	movs r4, 0 -_0814068C: -	mov r5, sp -	adds r0, r5, r4 -	ldrb r1, [r0] -	mov r0, r9 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081406A4 -	adds r4, 0x1 -	cmp r4, 0x8 -	ble _0814068C -	b _081406D2 -_081406A4: -	movs r0, 0x1 -	b _081406D4 -_081406A8: -	movs r4, 0 -	ldr r5, _081406E4 @ =gUnknown_8464890 -_081406AC: -	ldrb r0, [r5] -	mov r1, sp -	adds r2, r1, r0 -	ldrb r0, [r5, 0x1] -	adds r1, r0 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	bne _081406CA -	adds r1, r0, 0 -	mov r0, r9 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081406A4 -_081406CA: -	adds r5, 0x2 -	adds r4, 0x1 -	cmp r4, 0xE -	ble _081406AC -_081406D2: -	movs r0, 0 -_081406D4: -	add sp, 0x14 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_081406E4: .4byte gUnknown_8464890 -	thumb_func_end sub_814054C - -	thumb_func_start sub_81406E8 -sub_81406E8: @ 81406E8 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x10 -	adds r7, r0, 0 -	adds r5, r1, 0 -	mov r8, r2 -	ldr r0, _081407C8 @ =gUnknown_203F3A0 -	ldr r2, [r0] -	movs r1, 0x32 -	ldrsh r0, [r2, r1] -	lsls r0, 1 -	adds r1, r2, 0 -	adds r1, 0x20 -	adds r0, r1, r0 -	movs r3, 0 -	ldrsh r0, [r0, r3] -	adds r6, r0, 0x1 -	movs r3, 0x34 -	ldrsh r0, [r2, r3] -	lsls r0, 1 -	adds r1, r0 -	movs r3, 0 -	ldrsh r0, [r1, r3] -	adds r3, r0, 0x1 -	adds r5, 0x1 -	cmp r6, 0x14 -	ble _08140726 -	movs r6, 0 -_08140726: -	cmp r3, 0x14 -	ble _0814072C -	movs r3, 0 -_0814072C: -	cmp r5, 0x14 -	ble _08140732 -	movs r5, 0 -_08140732: -	movs r4, 0 -	lsls r1, r7, 1 -	lsls r0, r7, 2 -	mov r9, r2 -	ldr r2, _081407CC @ =gUnknown_8464926 -	mov r10, r2 -	adds r1, r7 -	add r1, sp -	mov r12, r1 -	adds r0, r7 -	lsls r0, 2 -	adds r0, r7 -	str r0, [sp, 0xC] -_0814074C: -	mov r7, r9 -	movs r0, 0x32 -	ldrsh r1, [r7, r0] -	lsls r0, r1, 1 -	adds r0, r1 -	adds r0, r4 -	mov r7, sp -	adds r2, r7, r0 -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r1 -	adds r0, r6, r0 -	add r0, r10 -	ldrb r0, [r0] -	strb r0, [r2] -	mov r0, r9 -	movs r2, 0x34 -	ldrsh r1, [r0, r2] -	lsls r0, r1, 1 -	adds r0, r1 -	adds r0, r4 -	adds r2, r7, r0 -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r1 -	adds r0, r3, r0 -	add r0, r10 -	ldrb r0, [r0] -	strb r0, [r2] -	ldr r7, [sp, 0xC] -	adds r0, r5, r7 -	add r0, r10 -	ldrb r0, [r0] -	mov r1, r12 -	strb r0, [r1] -	adds r6, 0x1 -	cmp r6, 0x14 -	ble _0814079E -	movs r6, 0 -_0814079E: -	adds r3, 0x1 -	cmp r3, 0x14 -	ble _081407A6 -	movs r3, 0 -_081407A6: -	adds r5, 0x1 -	cmp r5, 0x14 -	ble _081407AE -	movs r5, 0 -_081407AE: -	movs r2, 0x1 -	add r12, r2 -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _0814074C -	mov r3, r8 -	cmp r3, 0x1 -	beq _08140828 -	cmp r3, 0x1 -	bgt _081407D0 -	cmp r3, 0 -	beq _081407D8 -	b _081408A0 -	.align 2, 0 -_081407C8: .4byte gUnknown_203F3A0 -_081407CC: .4byte gUnknown_8464926 -_081407D0: -	mov r6, r8 -	cmp r6, 0x2 -	beq _08140870 -	b _081408A0 -_081407D8: -	movs r4, 0 -_081407DA: -	mov r7, sp -	adds r0, r7, r4 -	ldrb r1, [r0] -	movs r0, 0x1 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081408DC -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _081407DA -	movs r4, 0 -	ldr r2, _08140824 @ =gUnknown_84648AE -	movs r3, 0 -	adds r5, r2, 0x2 -_081407F8: -	ldrb r0, [r2] -	mov r6, sp -	adds r1, r6, r0 -	ldrb r0, [r2, 0x1] -	add r0, sp -	ldrb r1, [r1] -	ldrb r0, [r0] -	cmp r1, r0 -	bne _08140816 -	adds r0, r3, r5 -	ldrb r0, [r0] -	add r0, sp -	ldrb r0, [r0] -	cmp r1, r0 -	beq _081408DC -_08140816: -	adds r2, 0x3 -	adds r3, 0x3 -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _081407F8 -_08140820: -	movs r0, 0x1 -	b _081408DE -	.align 2, 0 -_08140824: .4byte gUnknown_84648AE -_08140828: -	movs r4, 0 -	ldr r5, _0814086C @ =gUnknown_84648AE -_0814082C: -	ldrb r0, [r5] -	mov r7, sp -	adds r2, r7, r0 -	ldrb r0, [r5, 0x1] -	adds r1, r7, r0 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	bne _0814084A -	adds r1, r0, 0 -	mov r0, r8 -	bl sub_81408F4 -	cmp r0, 0 -	bne _081408DC -_0814084A: -	adds r5, 0x3 -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _0814082C -	movs r4, 0 -_08140854: -	mov r1, sp -	adds r0, r1, r4 -	ldrb r1, [r0] -	mov r0, r8 -	bl sub_81408F4 -	cmp r0, 0 -	bne _08140820 -	adds r4, 0x1 -	cmp r4, 0x2 -	ble _08140854 -	b _081408DC -	.align 2, 0 -_0814086C: .4byte gUnknown_84648AE -_08140870: -	movs r4, 0 -	ldr r5, _0814089C @ =gUnknown_84648AE -_08140874: -	ldrb r0, [r5] -	mov r3, sp -	adds r2, r3, r0 -	ldrb r0, [r5, 0x1] -	adds r1, r3, r0 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	bne _08140892 -	adds r1, r0, 0 -	mov r0, r8 -	bl sub_81408F4 -	cmp r0, 0 -	bne _08140820 -_08140892: -	adds r5, 0x3 -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _08140874 -	b _081408DC -	.align 2, 0 -_0814089C: .4byte gUnknown_84648AE -_081408A0: -	movs r4, 0 -	ldr r5, _081408F0 @ =gUnknown_84648AE -	adds r7, r5, 0 -	movs r6, 0 -_081408A8: -	ldrb r0, [r5] -	mov r1, sp -	adds r2, r1, r0 -	adds r0, r7, 0x1 -	adds r0, r6, r0 -	ldrb r0, [r0] -	add r0, sp -	ldrb r1, [r2] -	ldrb r0, [r0] -	cmp r1, r0 -	bne _081408D2 -	ldrb r0, [r5, 0x2] -	add r0, sp -	ldrb r0, [r0] -	cmp r1, r0 -	bne _081408D2 -	mov r0, r8 -	bl sub_81408F4 -	cmp r0, 0 -	bne _08140820 -_081408D2: -	adds r5, 0x3 -	adds r6, 0x3 -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _081408A8 -_081408DC: -	movs r0, 0 -_081408DE: -	add sp, 0x10 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_081408F0: .4byte gUnknown_84648AE -	thumb_func_end sub_81406E8 - -	thumb_func_start sub_81408F4 -sub_81408F4: @ 81408F4 -	push {lr} -	adds r2, r1, 0 -	cmp r0, 0x6 -	bhi _08140966 -	lsls r0, 2 -	ldr r1, _08140908 @ =_0814090C -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_08140908: .4byte _0814090C -	.align 2, 0 -_0814090C: -	.4byte _08140928 -	.4byte _08140934 -	.4byte _08140934 -	.4byte _0814093E -	.4byte _08140944 -	.4byte _08140952 -	.4byte _0814095C -_08140928: -	movs r1, 0x4 -	eors r1, r2 -	negs r0, r1 -	orrs r0, r1 -	lsrs r0, 31 -	b _08140968 -_08140934: -	movs r0, 0 -	cmp r2, 0x4 -	bne _08140968 -	movs r0, 0x1 -	b _08140968 -_0814093E: -	movs r1, 0 -	subs r0, r2, 0x5 -	b _08140948 -_08140944: -	movs r1, 0 -	subs r0, r2, 0x2 -_08140948: -	cmp r0, 0x1 -	bhi _0814094E -	movs r1, 0x1 -_0814094E: -	adds r0, r1, 0 -	b _08140968 -_08140952: -	movs r0, 0 -	cmp r2, 0x1 -	bne _08140968 -	movs r0, 0x1 -	b _08140968 -_0814095C: -	movs r0, 0 -	cmp r2, 0 -	bne _08140968 -	movs r0, 0x1 -	b _08140968 -_08140966: -	movs r0, 0 -_08140968: -	pop {r1} -	bx r1 -	thumb_func_end sub_81408F4 - -	thumb_func_start sub_814096C -sub_814096C: @ 814096C -	push {lr} -	cmp r0, 0x6 -	bhi _0814099C -	lsls r0, 2 -	ldr r1, _0814097C @ =_08140980 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0814097C: .4byte _08140980 -	.align 2, 0 -_08140980: -	.4byte _081409AC -	.4byte _081409A8 -	.4byte _081409A4 -	.4byte _081409A4 -	.4byte _0814099C -	.4byte _081409A0 -	.4byte _081409A0 -_0814099C: -	movs r0, 0x1 -	b _081409AE -_081409A0: -	movs r0, 0x3 -	b _081409AE -_081409A4: -	movs r0, 0x4 -	b _081409AE -_081409A8: -	movs r0, 0x5 -	b _081409AE -_081409AC: -	movs r0, 0x6 -_081409AE: -	pop {r1} -	bx r1 -	thumb_func_end sub_814096C - -	thumb_func_start sub_81409B4 -sub_81409B4: @ 81409B4 -	push {r4-r6,lr} -	bl Random -	lsls r0, 16 -	lsrs r2, r0, 18 -	ldr r0, _08140A60 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrh r1, [r0, 0x4] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 1 -	ldr r1, _08140A64 @ =gUnknown_84648D2 -	adds r4, r0, r1 -	movs r5, 0 -	ldrh r0, [r4] -	cmp r2, r0 -	bcc _081409E6 -	adds r0, r4, 0 -_081409D8: -	adds r0, 0x2 -	adds r5, 0x1 -	cmp r5, 0x5 -	bgt _081409E6 -	ldrh r1, [r0] -	cmp r2, r1 -	bcs _081409D8 -_081409E6: -	ldr r6, _08140A60 @ =gUnknown_203F3A0 -	ldr r1, [r6] -	ldrh r0, [r1, 0x8] -	cmp r0, 0x4 -	bhi _08140A5A -	ldrh r0, [r1, 0xC] -	cmp r0, 0 -	bne _08140A22 -	bl Random -	ldr r1, _08140A68 @ =0x00003fff -	ands r1, r0 -	ldrh r4, [r4, 0xC] -	cmp r1, r4 -	bcs _08140A18 -	ldr r4, [r6] -	bl Random -	movs r1, 0x1 -	ands r1, r0 -	movs r0, 0x3C -	cmp r1, 0 -	beq _08140A16 -	movs r0, 0x5 -_08140A16: -	strh r0, [r4, 0xC] -_08140A18: -	ldr r0, _08140A60 @ =gUnknown_203F3A0 -	ldr r1, [r0] -	ldrh r1, [r1, 0xC] -	cmp r1, 0 -	beq _08140A56 -_08140A22: -	cmp r5, 0 -	bne _08140A4A -	bl Random -	ldr r1, _08140A68 @ =0x00003fff -	ands r1, r0 -	ldr r0, _08140A6C @ =0x00002ccb -	cmp r1, r0 -	bhi _08140A4A -	ldr r0, _08140A60 @ =gUnknown_203F3A0 -	ldr r4, [r0] -	bl Random -	movs r1, 0x1 -	ands r1, r0 -	movs r0, 0x3C -	cmp r1, 0 -	beq _08140A48 -	movs r0, 0x5 -_08140A48: -	strh r0, [r4, 0xC] -_08140A4A: -	ldr r2, _08140A60 @ =gUnknown_203F3A0 -	ldr r1, [r2] -	ldrh r0, [r1, 0xC] -	subs r0, 0x1 -	strh r0, [r1, 0xC] -	adds r0, r2, 0 -_08140A56: -	ldr r0, [r0] -	strh r5, [r0, 0x8] -_08140A5A: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140A60: .4byte gUnknown_203F3A0 -_08140A64: .4byte gUnknown_84648D2 -_08140A68: .4byte 0x00003fff -_08140A6C: .4byte 0x00002ccb -	thumb_func_end sub_81409B4 - -	thumb_func_start sub_8140A70 -sub_8140A70: @ 8140A70 -	ldr r0, _08140A7C @ =gUnknown_203F3A0 -	ldr r1, [r0] -	movs r0, 0 -	strh r0, [r1, 0x8] -	bx lr -	.align 2, 0 -_08140A7C: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140A70 - -	thumb_func_start sub_8140A80 -sub_8140A80: @ 8140A80 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0xC -	mov r0, sp -	movs r1, 0 -	movs r2, 0x9 -	bl memset -	movs r5, 0 -	ldr r2, _08140B58 @ =gUnknown_203F3A0 -	movs r3, 0 -	adds r4, r2, 0 -_08140A9C: -	ldr r0, [r2] -	lsls r1, r5, 2 -	adds r0, 0x3C -	adds r0, r1 -	str r3, [r0] -	adds r5, 0x1 -	cmp r5, 0x4 -	ble _08140A9C -	movs r0, 0 -	mov r9, r0 -	ldr r0, [r4] -	movs r1, 0x20 -	ldrsh r4, [r0, r1] -	movs r7, 0x22 -	ldrsh r3, [r0, r7] -	movs r1, 0x24 -	ldrsh r2, [r0, r1] -	ldr r6, _08140B5C @ =gUnknown_8464926 -	movs r7, 0x2A -	adds r7, r6 -	mov r8, r7 -	mov r1, sp -	movs r0, 0x15 -	adds r0, r6 -	mov r12, r0 -	movs r5, 0x2 -_08140AD0: -	adds r4, 0x1 -	cmp r4, 0x14 -	ble _08140AD8 -	movs r4, 0 -_08140AD8: -	adds r3, 0x1 -	cmp r3, 0x14 -	ble _08140AE0 -	movs r3, 0 -_08140AE0: -	adds r2, 0x1 -	cmp r2, 0x14 -	ble _08140AE8 -	movs r2, 0 -_08140AE8: -	adds r0, r4, r6 -	ldrb r0, [r0] -	strb r0, [r1] -	mov r7, r12 -	adds r0, r3, r7 -	ldrb r0, [r0] -	strb r0, [r1, 0x3] -	mov r7, r8 -	adds r0, r2, r7 -	ldrb r0, [r0] -	strb r0, [r1, 0x6] -	adds r1, 0x1 -	subs r5, 0x1 -	cmp r5, 0 -	bge _08140AD0 -	ldr r0, _08140B58 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	adds r0, 0x50 -	movs r1, 0 -	strh r1, [r0] -	ldr r7, _08140B60 @ =gUnknown_84648BD -	mov r8, r7 -	movs r6, 0 -	movs r5, 0x4 -_08140B18: -	ldr r0, _08140B58 @ =gUnknown_203F3A0 -	ldr r1, [r0] -	mov r0, r8 -	adds r0, 0x3 -	adds r0, r6, r0 -	ldrh r1, [r1, 0xE] -	ldrb r0, [r0] -	cmp r1, r0 -	bcc _08140BB6 -	ldrb r0, [r7] -	mov r1, sp -	adds r4, r1, r0 -	ldrb r1, [r4] -	movs r0, 0x1 -	bl sub_81408F4 -	cmp r0, 0 -	beq _08140B64 -	mov r0, r8 -	adds r0, 0x1 -	adds r0, r6, r0 -	ldrb r0, [r0] -	add r0, sp -	ldrb r1, [r0] -	movs r0, 0x2 -	bl sub_81408F4 -	movs r3, 0x1 -	cmp r0, 0 -	beq _08140B8E -	movs r3, 0x2 -	b _08140B92 -	.align 2, 0 -_08140B58: .4byte gUnknown_203F3A0 -_08140B5C: .4byte gUnknown_8464926 -_08140B60: .4byte gUnknown_84648BD -_08140B64: -	mov r0, r8 -	adds r0, 0x1 -	adds r0, r6, r0 -	ldrb r0, [r0] -	add r0, sp -	ldrb r1, [r4] -	ldrb r0, [r0] -	cmp r1, r0 -	bne _08140B8C -	ldrb r0, [r7, 0x2] -	add r0, sp -	ldrb r0, [r0] -	cmp r1, r0 -	bne _08140B8C -	adds r0, r1, 0 -	bl sub_814096C -	lsls r0, 24 -	lsrs r3, r0, 24 -	b _08140B8E -_08140B8C: -	movs r3, 0 -_08140B8E: -	cmp r3, 0 -	beq _08140BB0 -_08140B92: -	ldr r0, _08140BD4 @ =gUnknown_203F3A0 -	ldr r2, [r0] -	adds r0, r2, 0 -	adds r0, 0x3C -	adds r0, r6 -	movs r1, 0x1 -	str r1, [r0] -	adds r2, 0x50 -	ldr r1, _08140BD8 @ =gUnknown_8464966 -	lsls r0, r3, 1 -	adds r0, r1 -	ldrh r0, [r0] -	ldrh r1, [r2] -	adds r0, r1 -	strh r0, [r2] -_08140BB0: -	cmp r3, r9 -	ble _08140BB6 -	mov r9, r3 -_08140BB6: -	adds r7, 0x4 -	adds r6, 0x4 -	subs r5, 0x1 -	cmp r5, 0 -	bge _08140B18 -	mov r7, r9 -	lsls r0, r7, 16 -	lsrs r0, 16 -	add sp, 0xC -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_08140BD4: .4byte gUnknown_203F3A0 -_08140BD8: .4byte gUnknown_8464966 -	thumb_func_end sub_8140A80 - -	thumb_func_start sub_8140BDC -sub_8140BDC: @ 8140BDC -	ldr r0, _08140BE8 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	adds r0, 0x50 -	ldrh r0, [r0] -	bx lr -	.align 2, 0 -_08140BE8: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140BDC - -	thumb_func_start sub_8140BEC -sub_8140BEC: @ 8140BEC -	ldr r0, _08140BF4 @ =gUnknown_203F3A0 -	ldr r0, [r0] -	ldrb r0, [r0, 0xE] -	bx lr -	.align 2, 0 -_08140BF4: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140BEC - -	thumb_func_start sub_8140BF8 -sub_8140BF8: @ 8140BF8 -	ldr r1, _08140C08 @ =gUnknown_203F3A0 -	ldr r1, [r1] -	lsls r0, 2 -	adds r1, 0x3C -	adds r1, r0 -	ldr r0, [r1] -	bx lr -	.align 2, 0 -_08140C08: .4byte gUnknown_203F3A0 -	thumb_func_end sub_8140BF8 - -	thumb_func_start sub_8140C0C -sub_8140C0C: @ 8140C0C -	push {r4,r5,lr} -	movs r5, 0 -	ldr r4, _08140C3C @ =gUnknown_84655B0 -_08140C12: -	adds r0, r4, 0 -	bl LoadCompressedSpriteSheet -	adds r4, 0x8 -	adds r5, 0x1 -	cmp r5, 0x2 -	bls _08140C12 -	ldr r0, _08140C40 @ =gUnknown_84655C8 -	bl LoadSpritePalettes -	ldr r4, _08140C44 @ =gUnknown_203F3A4 -	movs r0, 0x74 -	bl Alloc -	str r0, [r4] -	cmp r0, 0 -	beq _08140C48 -	bl sub_8140C6C -	movs r0, 0x1 -	b _08140C4A -	.align 2, 0 -_08140C3C: .4byte gUnknown_84655B0 -_08140C40: .4byte gUnknown_84655C8 -_08140C44: .4byte gUnknown_203F3A4 -_08140C48: -	movs r0, 0 -_08140C4A: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_8140C0C - -	thumb_func_start sub_8140C50 -sub_8140C50: @ 8140C50 -	push {r4,lr} -	ldr r4, _08140C68 @ =gUnknown_203F3A4 -	ldr r0, [r4] -	cmp r0, 0 -	beq _08140C62 -	bl Free -	movs r0, 0 -	str r0, [r4] -_08140C62: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140C68: .4byte gUnknown_203F3A4 -	thumb_func_end sub_8140C50 - -	thumb_func_start sub_8140C6C -sub_8140C6C: @ 8140C6C -	push {r4-r6,lr} -	adds r4, r0, 0 -	movs r2, 0 -	movs r5, 0 -	adds r6, r4, 0 -	adds r6, 0xC -_08140C78: -	lsls r0, r2, 2 -	adds r1, r4, r0 -	str r5, [r1] -	adds r3, r2, 0x1 -	adds r0, r2 -	lsls r0, 2 -	movs r1, 0x4 -	adds r0, r6 -	adds r0, 0x10 -_08140C8A: -	str r5, [r0] -	subs r0, 0x4 -	subs r1, 0x1 -	cmp r1, 0 -	bge _08140C8A -	adds r2, r3, 0 -	cmp r2, 0x2 -	ble _08140C78 -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end sub_8140C6C - -	thumb_func_start sub_8140CA0 -sub_8140CA0: @ 8140CA0 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	movs r7, 0 -_08140CAE: -	movs r6, 0 -	lsls r0, r7, 2 -	adds r1, r7, 0x1 -	str r1, [sp] -	adds r0, r7 -	mov r10, r0 -	mov r2, r10 -	lsls r2, 2 -	mov r8, r2 -	movs r3, 0xB0 -	lsls r3, 14 -	mov r9, r3 -_08140CC6: -	mov r0, r10 -	lsls r1, r0, 19 -	movs r2, 0xA0 -	lsls r2, 15 -	adds r1, r2 -	mov r3, r9 -	asrs r2, r3, 16 -	ldr r0, _08140D64 @ =gUnknown_84657E4 -	asrs r1, 16 -	movs r3, 0x2 -	bl CreateSprite -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _08140D68 @ =gUnknown_8464926 -	mov r3, r8 -	adds r1, r3, r7 -	adds r1, r6, r1 -	adds r1, r2 -	ldrb r4, [r1] -	lsls r5, r0, 4 -	adds r5, r0 -	lsls r5, 2 -	ldr r0, _08140D6C @ =gSprites -	adds r5, r0 -	adds r0, r5, 0 -	adds r1, r4, 0 -	bl StartSpriteAnim -	ldr r0, _08140D70 @ =gUnknown_8465608 -	lsls r4, 1 -	adds r4, r0 -	ldrh r0, [r4] -	bl IndexOfSpritePaletteTag -	lsls r0, 4 -	ldrb r2, [r5, 0x5] -	movs r1, 0xF -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r5, 0x5] -	movs r0, 0 -	strh r7, [r5, 0x2E] -	strh r6, [r5, 0x30] -	strh r6, [r5, 0x32] -	strh r0, [r5, 0x34] -	ldrb r0, [r5, 0x3] -	movs r2, 0x3F -	negs r2, r2 -	adds r1, r2, 0 -	ands r0, r1 -	strb r0, [r5, 0x3] -	ldr r0, _08140D74 @ =gUnknown_203F3A4 -	ldr r2, [r0] -	lsls r1, r6, 2 -	add r1, r8 -	adds r0, r2, 0 -	adds r0, 0xC -	adds r0, r1 -	str r5, [r0] -	ldr r0, _08140D78 @ =0x07000006 -	str r0, [r2, 0x70] -	movs r3, 0xC0 -	lsls r3, 13 -	add r9, r3 -	adds r6, 0x1 -	cmp r6, 0x4 -	ble _08140CC6 -	ldr r7, [sp] -	cmp r7, 0x2 -	ble _08140CAE -	add sp, 0x4 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140D64: .4byte gUnknown_84657E4 -_08140D68: .4byte gUnknown_8464926 -_08140D6C: .4byte gSprites -_08140D70: .4byte gUnknown_8465608 -_08140D74: .4byte gUnknown_203F3A4 -_08140D78: .4byte 0x07000006 -	thumb_func_end sub_8140CA0 - -	thumb_func_start sub_8140D7C -sub_8140D7C: @ 8140D7C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0xC -	adds r3, r0, 0 -	movs r2, 0 -	ldr r0, _08140E34 @ =gUnknown_203F3A4 -	mov r8, r0 -_08140D90: -	movs r4, 0 -	ldrsh r6, [r3, r4] -	movs r4, 0 -	ldrsh r0, [r1, r4] -	lsls r0, 3 -	mov r10, r0 -	lsls r0, r2, 2 -	adds r3, 0x2 -	str r3, [sp] -	adds r1, 0x2 -	str r1, [sp, 0x4] -	adds r1, r2, 0x1 -	str r1, [sp, 0x8] -	adds r0, r2 -	lsls r0, 2 -	adds r2, r0 -	mov r9, r2 -	adds r5, r0, 0 -	movs r7, 0x4 -_08140DB6: -	mov r2, r8 -	ldr r1, [r2] -	adds r1, 0xC -	adds r1, r5 -	ldr r0, [r1] -	mov r3, r10 -	strh r3, [r0, 0x26] -	ldr r2, _08140E38 @ =gUnknown_8464926 -	mov r4, r9 -	adds r0, r6, r4 -	adds r0, r2 -	ldrb r4, [r0] -	ldr r0, [r1] -	adds r1, r4, 0 -	bl StartSpriteAnim -	mov r1, r8 -	ldr r0, [r1] -	adds r0, 0xC -	adds r0, r5 -	ldr r0, [r0] -	adds r1, r4, 0 -	bl StartSpriteAnim -	ldr r0, _08140E3C @ =gUnknown_8465608 -	lsls r4, 1 -	adds r4, r0 -	ldrh r0, [r4] -	bl IndexOfSpritePaletteTag -	mov r2, r8 -	ldr r1, [r2] -	adds r1, 0xC -	adds r1, r5 -	ldr r3, [r1] -	lsls r0, 4 -	ldrb r2, [r3, 0x5] -	movs r1, 0xF -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x5] -	adds r6, 0x1 -	cmp r6, 0x14 -	ble _08140E10 -	movs r6, 0 -_08140E10: -	adds r5, 0x4 -	subs r7, 0x1 -	cmp r7, 0 -	bge _08140DB6 -	ldr r3, [sp] -	ldr r1, [sp, 0x4] -	ldr r2, [sp, 0x8] -	cmp r2, 0x2 -	ble _08140D90 -	add sp, 0xC -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140E34: .4byte gUnknown_203F3A4 -_08140E38: .4byte gUnknown_8464926 -_08140E3C: .4byte gUnknown_8465608 -	thumb_func_end sub_8140D7C - -	thumb_func_start sub_8140E40 -sub_8140E40: @ 8140E40 -	push {lr} -	ldr r0, _08140E68 @ =0x04000006 -	ldrh r0, [r0] -	adds r3, r0, 0 -	subs r3, 0x2B -	cmp r3, 0x53 -	bhi _08140E7C -	ldr r0, _08140E6C @ =gUnknown_203F3A4 -	ldr r0, [r0] -	ldr r2, [r0, 0x70] -	ldr r1, _08140E70 @ =gUnknown_8465616 -	lsls r0, r3, 1 -	adds r0, r1 -	ldrh r0, [r0] -	strh r0, [r2] -	ldr r1, _08140E74 @ =0x04000054 -	ldr r0, _08140E78 @ =gUnknown_84656D6 -	adds r0, r3, r0 -	ldrb r0, [r0] -	b _08140E8E -	.align 2, 0 -_08140E68: .4byte 0x04000006 -_08140E6C: .4byte gUnknown_203F3A4 -_08140E70: .4byte gUnknown_8465616 -_08140E74: .4byte 0x04000054 -_08140E78: .4byte gUnknown_84656D6 -_08140E7C: -	ldr r0, _08140E94 @ =gUnknown_203F3A4 -	ldr r0, [r0] -	ldr r1, [r0, 0x70] -	movs r2, 0x80 -	lsls r2, 1 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r1, _08140E98 @ =0x04000054 -	movs r0, 0 -_08140E8E: -	strh r0, [r1] -	pop {r0} -	bx r0 -	.align 2, 0 -_08140E94: .4byte gUnknown_203F3A4 -_08140E98: .4byte 0x04000054 -	thumb_func_end sub_8140E40 - -	thumb_func_start sub_8140E9C -sub_8140E9C: @ 8140E9C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	movs r5, 0 -	ldr r0, _08140F20 @ =gUnknown_846587C -	mov r10, r0 -	ldr r0, _08140F24 @ =gUnknown_203F3A4 -	mov r9, r0 -	ldr r0, _08140F28 @ =gSprites -	mov r8, r0 -	movs r7, 0x85 -	lsls r7, 16 -	movs r6, 0xAA -	lsls r6, 15 -_08140EBC: -	asrs r1, r6, 16 -	mov r0, r10 -	movs r2, 0x1E -	movs r3, 0 -	bl CreateSprite -	lsls r0, 24 -	lsrs r2, r0, 24 -	mov r0, r9 -	ldr r1, [r0] -	lsls r4, r5, 2 -	adds r1, 0x48 -	adds r1, r4 -	lsls r0, r2, 4 -	adds r0, r2 -	lsls r0, 2 -	add r0, r8 -	str r0, [r1] -	asrs r1, r7, 16 -	mov r0, r10 -	movs r2, 0x1E -	movs r3, 0 -	bl CreateSprite -	lsls r0, 24 -	lsrs r2, r0, 24 -	mov r0, r9 -	ldr r1, [r0] -	adds r1, 0x58 -	adds r1, r4 -	lsls r0, r2, 4 -	adds r0, r2 -	lsls r0, 2 -	add r0, r8 -	str r0, [r1] -	movs r0, 0xE0 -	lsls r0, 11 -	adds r7, r0 -	adds r6, r0 -	adds r5, 0x1 -	cmp r5, 0x3 -	ble _08140EBC -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140F20: .4byte gUnknown_846587C -_08140F24: .4byte gUnknown_203F3A4 -_08140F28: .4byte gSprites -	thumb_func_end sub_8140E9C - -	thumb_func_start sub_8140F2C -sub_8140F2C: @ 8140F2C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	bl GetCoins -	lsls r0, 16 -	lsrs r0, 16 -	mov r9, r0 -	bl sub_8140BDC -	lsls r0, 16 -	lsrs r0, 16 -	mov r8, r0 -	movs r6, 0xFA -	lsls r6, 2 -	movs r7, 0 -	ldr r0, _08140FC0 @ =gUnknown_203F3A4 -	mov r10, r0 -_08140F54: -	mov r0, r9 -	adds r1, r6, 0 -	bl __divsi3 -	adds r4, r0, 0 -	mov r1, r10 -	ldr r0, [r1] -	lsls r5, r7, 2 -	adds r0, 0x48 -	adds r0, r5 -	ldr r0, [r0] -	lsls r1, r4, 24 -	lsrs r1, 24 -	bl StartSpriteAnim -	adds r0, r4, 0 -	muls r0, r6 -	mov r1, r9 -	subs r1, r0 -	mov r9, r1 -	mov r0, r8 -	adds r1, r6, 0 -	bl __divsi3 -	adds r4, r0, 0 -	mov r1, r10 -	ldr r0, [r1] -	adds r0, 0x58 -	adds r0, r5 -	ldr r0, [r0] -	lsls r1, r4, 24 -	lsrs r1, 24 -	bl StartSpriteAnim -	adds r0, r4, 0 -	muls r0, r6 -	mov r1, r8 -	subs r1, r0 -	mov r8, r1 -	adds r0, r6, 0 -	movs r1, 0xA -	bl __divsi3 -	adds r6, r0, 0 -	adds r7, 0x1 -	cmp r7, 0x3 -	ble _08140F54 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08140FC0: .4byte gUnknown_203F3A4 -	thumb_func_end sub_8140F2C - -	thumb_func_start sub_8140FC4 -sub_8140FC4: @ 8140FC4 -	push {r4-r6,lr} -	ldr r6, _08141014 @ =gUnknown_84658D8 -	adds r0, r6, 0 -	movs r1, 0x10 -	movs r2, 0x88 -	movs r3, 0x1 -	bl CreateSprite -	lsls r0, 24 -	lsrs r2, r0, 24 -	ldr r5, _08141018 @ =gUnknown_203F3A4 -	ldr r1, [r5] -	lsls r0, r2, 4 -	adds r0, r2 -	lsls r0, 2 -	ldr r4, _0814101C @ =gSprites -	adds r0, r4 -	str r0, [r1, 0x68] -	adds r0, r6, 0 -	movs r1, 0xE0 -	movs r2, 0x88 -	movs r3, 0x1 -	bl CreateSprite -	lsls r0, 24 -	lsrs r2, r0, 24 -	ldr r1, [r5] -	lsls r0, r2, 4 -	adds r0, r2 -	lsls r0, 2 -	adds r0, r4 -	str r0, [r1, 0x6C] -	adds r0, 0x3F -	ldrb r1, [r0] -	movs r2, 0x1 -	orrs r1, r2 -	strb r1, [r0] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141014: .4byte gUnknown_84658D8 -_08141018: .4byte gUnknown_203F3A4 -_0814101C: .4byte gSprites -	thumb_func_end sub_8140FC4 - -	thumb_func_start sub_8141020 -sub_8141020: @ 8141020 -	push {r4-r6,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	movs r4, 0 -	ldr r6, _08141048 @ =gUnknown_203F3A4 -_0814102A: -	ldr r0, [r6] -	lsls r1, r4, 2 -	adds r0, 0x68 -	adds r0, r1 -	ldr r0, [r0] -	adds r1, r5, 0 -	bl StartSpriteAnim -	adds r4, 0x1 -	cmp r4, 0x1 -	ble _0814102A -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141048: .4byte gUnknown_203F3A4 -	thumb_func_end sub_8141020 - -	thumb_func_start sub_814104C -sub_814104C: @ 814104C -	push {r4,lr} -	ldr r0, _0814108C @ =0x0000285c -	bl Alloc -	adds r4, r0, 0 -	cmp r4, 0 -	beq _08141082 -	ldr r2, _08141090 @ =sub_81410CC -	movs r1, 0 -	adds r0, r4, 0 -	adds r0, 0x1C -_08141062: -	strb r1, [r0, 0x3] -	subs r0, 0x4 -	cmp r0, r4 -	bge _08141062 -	movs r0, 0 -	str r0, [r4, 0x28] -	adds r0, r2, 0 -	movs r1, 0x2 -	bl CreateTask -	lsls r0, 24 -	lsrs r0, 24 -	movs r1, 0 -	adds r2, r4, 0 -	bl SetWordTaskArg -_08141082: -	movs r0, 0 -	pop {r4} -	pop {r1} -	bx r1 -	.align 2, 0 -_0814108C: .4byte 0x0000285c -_08141090: .4byte sub_81410CC -	thumb_func_end sub_814104C - -	thumb_func_start sub_8141094 -sub_8141094: @ 8141094 -	push {r4,lr} -	ldr r4, _081410C8 @ =sub_81410CC -	adds r0, r4, 0 -	bl FuncIsActiveTask -	lsls r0, 24 -	cmp r0, 0 -	beq _081410BA -	bl sub_814112C -	bl Free -	adds r0, r4, 0 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -_081410BA: -	bl sub_8140C50 -	bl FreeAllWindowBuffers -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_081410C8: .4byte sub_81410CC -	thumb_func_end sub_8141094 - -	thumb_func_start sub_81410CC -sub_81410CC: @ 81410CC -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	lsls r0, 24 -	lsrs r0, 24 -	movs r1, 0 -	bl GetWordTaskArg -	adds r6, r0, 0 -	ldr r0, _08141114 @ =gUnknown_84658F0 -	mov r8, r0 -	adds r4, r6, 0x2 -	adds r5, r6, 0 -	movs r7, 0x7 -_081410E8: -	ldrb r0, [r4, 0x1] -	cmp r0, 0 -	beq _08141100 -	ldrh r0, [r5] -	lsls r0, 2 -	add r0, r8 -	ldr r2, [r0] -	adds r0, r4, 0 -	adds r1, r6, 0 -	bl _call_via_r2 -	strb r0, [r4, 0x1] -_08141100: -	adds r4, 0x4 -	adds r5, 0x4 -	subs r7, 0x1 -	cmp r7, 0 -	bge _081410E8 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141114: .4byte gUnknown_84658F0 -	thumb_func_end sub_81410CC - -	thumb_func_start sub_8141118 -sub_8141118: @ 8141118 -	push {lr} -	bl TransferPlttBuffer -	bl LoadOam -	bl ProcessSpriteCopyRequests -	pop {r0} -	bx r0 -	thumb_func_end sub_8141118 - -	thumb_func_start sub_814112C -sub_814112C: @ 814112C -	push {lr} -	ldr r0, _08141144 @ =sub_81410CC -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	movs r1, 0 -	bl GetWordTaskArg -	pop {r1} -	bx r1 -	.align 2, 0 -_08141144: .4byte sub_81410CC -	thumb_func_end sub_814112C - -	thumb_func_start sub_8141148 -sub_8141148: @ 8141148 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	lsls r4, 16 -	lsrs r4, 16 -	lsls r5, 24 -	lsrs r5, 24 -	bl sub_814112C -	adds r1, r0, 0 -	lsls r5, 2 -	adds r5, r1, r5 -	movs r0, 0 -	strh r4, [r5] -	strb r0, [r5, 0x2] -	ldr r0, _0814117C @ =gUnknown_84658F0 -	lsls r4, 2 -	adds r4, r0 -	adds r0, r5, 0x2 -	ldr r2, [r4] -	bl _call_via_r2 -	strb r0, [r5, 0x3] -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_0814117C: .4byte gUnknown_84658F0 -	thumb_func_end sub_8141148 - -	thumb_func_start sub_8141180 -sub_8141180: @ 8141180 -	push {r4,lr} -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	bl sub_814112C -	lsls r4, 2 -	adds r0, r4 -	ldrb r0, [r0, 0x3] -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141180 - -	thumb_func_start sub_8141198 -sub_8141198: @ 8141198 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	sub sp, 0x14 -	adds r7, r0, 0 -	mov r8, r1 -	ldrb r6, [r7] -	cmp r6, 0x1 -	beq _081411D0 -	cmp r6, 0x1 -	bgt _081411B4 -	cmp r6, 0 -	beq _081411C2 -	b _08141450 -_081411B4: -	cmp r6, 0x2 -	bne _081411BA -	b _081413E4 -_081411BA: -	cmp r6, 0x3 -	bne _081411C0 -	b _08141436 -_081411C0: -	b _08141450 -_081411C2: -	movs r0, 0x1 -	negs r0, r0 -	movs r1, 0x10 -	movs r2, 0 -	bl BlendPalettes -	b _0814142E -_081411D0: -	movs r0, 0 -	bl SetVBlankCallback -	bl ResetSpriteData -	bl FreeAllSpritePalettes -	movs r1, 0xE0 -	lsls r1, 19 -	movs r2, 0x80 -	lsls r2, 3 -	movs r0, 0 -	movs r3, 0x1 -	bl RequestDma3Fill -	movs r1, 0xC0 -	lsls r1, 19 -	movs r0, 0 -	movs r2, 0x20 -	movs r3, 0x1 -	bl RequestDma3Fill -	ldr r1, _0814139C @ =0x0600c000 -	movs r0, 0 -	movs r2, 0x20 -	movs r3, 0x1 -	bl RequestDma3Fill -	movs r0, 0 -	movs r1, 0 -	bl SetGpuReg -	bl ResetBgPositions -	movs r0, 0 -	bl ResetBgsAndClearDma3BusyFlags -	ldr r1, _081413A0 @ =gUnknown_8466B10 -	movs r0, 0 -	movs r2, 0x4 -	bl InitBgsFromTemplates -	ldr r0, _081413A4 @ =gUnknown_8466B20 -	bl InitWindows -	ldr r1, _081413A8 @ =0x0000205c -	add r1, r8 -	movs r0, 0x3 -	bl SetBgTilemapBuffer -	movs r4, 0x20 -	str r4, [sp] -	str r4, [sp, 0x4] -	movs r0, 0x3 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0 -	bl FillBgTilemapBufferRect_Palette0 -	movs r0, 0x3 -	bl CopyBgTilemapBufferToVram -	bl ResetTempTileDataBuffers -	ldr r1, _081413AC @ =gUnknown_84659D0 -	movs r5, 0 -	str r5, [sp] -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _081413B0 @ =gUnknown_846653C -	str r5, [sp] -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0xC0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _081413B4 @ =0x0000185c -	add r1, r8 -	movs r0, 0x2 -	bl SetBgTilemapBuffer -	ldr r1, _081413B8 @ =gUnknown_84661D4 -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	ldr r0, _081413BC @ =gUnknown_8465930 -	movs r1, 0 -	movs r2, 0xA0 -	bl LoadPalette -	ldr r0, _081413C0 @ =gUnknown_84664BC -	movs r1, 0x50 -	movs r2, 0x20 -	bl LoadPalette -	ldr r0, _081413C4 @ =gUnknown_84665C0 -	movs r1, 0x70 -	movs r2, 0x60 -	bl LoadPalette -	ldr r1, _081413C8 @ =0x00007fde -	add r0, sp, 0xC -	strh r1, [r0] -	movs r1, 0 -	movs r2, 0x2 -	bl LoadPalette -	movs r0, 0 -	movs r1, 0xA -	movs r2, 0xD0 -	bl LoadUserWindowBorderGfx -	movs r0, 0 -	movs r1, 0x1 -	movs r2, 0xF0 -	bl sub_814FDA0 -	ldr r1, _081413CC @ =0x0000085c -	add r1, r8 -	movs r0, 0 -	bl SetBgTilemapBuffer -	str r4, [sp] -	movs r0, 0x1E -	str r0, [sp, 0x4] -	movs r0, 0 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0x2 -	bl FillBgTilemapBufferRect_Palette0 -	ldr r1, _081413D0 @ =gUnknown_8466620 -	str r5, [sp] -	movs r0, 0x1 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _081413D4 @ =gUnknown_8466998 -	str r6, [sp] -	movs r0, 0x1 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	movs r0, 0x1 -	bl CopyBgTilemapBufferToVram -	movs r0, 0x2 -	bl stdpal_get -	movs r1, 0xE0 -	movs r2, 0x20 -	bl LoadPalette -	movs r0, 0x1 -	movs r1, 0xFF -	bl FillWindowPixelBuffer -	movs r0, 0x1 -	bl PutWindowTilemap -	ldr r4, _081413D8 @ =gUnknown_841B779 -	movs r0, 0 -	adds r1, r4, 0 -	movs r2, 0 -	bl GetStringWidth -	movs r2, 0xEC -	subs r2, r0 -	add r1, sp, 0x10 -	movs r0, 0xF -	strb r0, [r1] -	strb r6, [r1, 0x1] -	movs r0, 0x2 -	strb r0, [r1, 0x2] -	lsls r2, 24 -	lsrs r2, 24 -	str r1, [sp] -	str r5, [sp, 0x4] -	str r4, [sp, 0x8] -	movs r0, 0x1 -	movs r1, 0 -	movs r3, 0 -	bl AddTextPrinterParameterized3 -	movs r0, 0 -	bl CopyBgTilemapBufferToVram -	movs r1, 0x83 -	lsls r1, 5 -	movs r0, 0 -	bl SetGpuRegBits -	movs r0, 0x50 -	movs r1, 0xF8 -	bl SetGpuReg -	bl sub_8140C0C -	bl sub_8140CA0 -	bl sub_8140E9C -	bl sub_8140FC4 -	bl sub_8140F2C -	movs r0, 0x1 -	negs r0, r0 -	movs r1, 0x10 -	movs r2, 0 -	bl BlendPalettes -	ldr r0, _081413DC @ =sub_8141118 -	bl SetVBlankCallback -	ldr r0, _081413E0 @ =sub_8140E40 -	bl SetHBlankCallback -	b _0814142E -	.align 2, 0 -_0814139C: .4byte 0x0600c000 -_081413A0: .4byte gUnknown_8466B10 -_081413A4: .4byte gUnknown_8466B20 -_081413A8: .4byte 0x0000205c -_081413AC: .4byte gUnknown_84659D0 -_081413B0: .4byte gUnknown_846653C -_081413B4: .4byte 0x0000185c -_081413B8: .4byte gUnknown_84661D4 -_081413BC: .4byte gUnknown_8465930 -_081413C0: .4byte gUnknown_84664BC -_081413C4: .4byte gUnknown_84665C0 -_081413C8: .4byte 0x00007fde -_081413CC: .4byte 0x0000085c -_081413D0: .4byte gUnknown_8466620 -_081413D4: .4byte gUnknown_8466998 -_081413D8: .4byte gUnknown_841B779 -_081413DC: .4byte sub_8141118 -_081413E0: .4byte sub_8140E40 -_081413E4: -	bl FreeTempTileDataBuffersIfPossible -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0 -	bne _08141450 -	movs r0, 0 -	bl ShowBg -	movs r0, 0x3 -	bl ShowBg -	movs r0, 0x2 -	bl ShowBg -	movs r0, 0x1 -	bl HideBg -	bl sub_8141B34 -	movs r4, 0x1 -	negs r4, r4 -	adds r0, r4, 0 -	movs r1, 0x10 -	movs r2, 0 -	bl BlendPalettes -	str r5, [sp] -	adds r0, r4, 0 -	adds r1, r4, 0 -	movs r2, 0x10 -	movs r3, 0 -	bl BeginNormalPaletteFade -	movs r0, 0x3 -	bl EnableInterrupts -_0814142E: -	ldrb r0, [r7] -	adds r0, 0x1 -	strb r0, [r7] -	b _08141450 -_08141436: -	bl UpdatePaletteFade -	ldr r0, _0814144C @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _08141450 -	movs r0, 0 -	b _08141452 -	.align 2, 0 -_0814144C: .4byte gPaletteFade -_08141450: -	movs r0, 0x1 -_08141452: -	add sp, 0x14 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141198 - -	thumb_func_start sub_8141460 -sub_8141460: @ 8141460 -	push {r4,lr} -	sub sp, 0x4 -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _08141472 -	cmp r0, 0x1 -	beq _0814148A -	b _081414A0 -_08141472: -	movs r1, 0x1 -	negs r1, r1 -	str r0, [sp] -	adds r0, r1, 0 -	movs r2, 0 -	movs r3, 0x10 -	bl BeginNormalPaletteFade -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _081414A0 -_0814148A: -	ldr r0, _0814149C @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _081414A0 -	movs r0, 0 -	b _081414A2 -	.align 2, 0 -_0814149C: .4byte gPaletteFade -_081414A0: -	movs r0, 0x1 -_081414A2: -	add sp, 0x4 -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141460 - -	thumb_func_start sub_81414AC -sub_81414AC: @ 81414AC -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _081414BC -	cmp r0, 0x1 -	beq _081414D4 -	b _081414E2 -_081414BC: -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	bl sub_8141834 -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _081414E2 -_081414D4: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _081414E2 -	movs r0, 0 -	b _081414E4 -_081414E2: -	movs r0, 0x1 -_081414E4: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_81414AC - -	thumb_func_start sub_81414EC -sub_81414EC: @ 81414EC -	push {lr} -	movs r0, 0x1 -	bl sub_8141020 -	movs r0, 0 -	pop {r1} -	bx r1 -	thumb_func_end sub_81414EC - -	thumb_func_start sub_81414FC -sub_81414FC: @ 81414FC -	push {lr} -	movs r0, 0x2 -	bl sub_8141020 -	ldr r0, _08141514 @ =sub_814191C -	movs r1, 0x3 -	bl CreateTask -	movs r0, 0 -	pop {r1} -	bx r1 -	.align 2, 0 -_08141514: .4byte sub_814191C -	thumb_func_end sub_81414FC - -	thumb_func_start sub_8141518 -sub_8141518: @ 8141518 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _08141528 -	cmp r0, 0x1 -	beq _08141534 -	b _08141550 -_08141528: -	bl sub_8141AB0 -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _08141550 -_08141534: -	ldr r0, _0814154C @ =sub_814191C -	bl FuncIsActiveTask -	lsls r0, 24 -	cmp r0, 0 -	bne _08141550 -	movs r0, 0 -	bl sub_8141020 -	movs r0, 0 -	b _08141552 -	.align 2, 0 -_0814154C: .4byte sub_814191C -_08141550: -	movs r0, 0x1 -_08141552: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141518 - -	thumb_func_start sub_8141558 -sub_8141558: @ 8141558 -	push {lr} -	movs r0, 0x3 -	bl sub_8141020 -	movs r0, 0 -	pop {r1} -	bx r1 -	thumb_func_end sub_8141558 - -	thumb_func_start sub_8141568 -sub_8141568: @ 8141568 -	push {lr} -	movs r0, 0 -	bl sub_8141020 -	movs r0, 0 -	pop {r1} -	bx r1 -	thumb_func_end sub_8141568 - -	thumb_func_start sub_8141578 -sub_8141578: @ 8141578 -	push {lr} -	bl sub_8140F2C -	movs r0, 0 -	pop {r1} -	bx r1 -	thumb_func_end sub_8141578 - -	thumb_func_start sub_8141584 -sub_8141584: @ 8141584 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _08141594 -	cmp r0, 0x1 -	beq _081415B0 -	b _081415BE -_08141594: -	ldr r0, _081415AC @ =gUnknown_841B747 -	bl sub_81417E4 -	movs r0, 0 -	movs r1, 0x3 -	bl CopyWindowToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _081415BE -	.align 2, 0 -_081415AC: .4byte gUnknown_841B747 -_081415B0: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _081415BE -	movs r0, 0 -	b _081415C0 -_081415BE: -	movs r0, 0x1 -_081415C0: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141584 - -	thumb_func_start sub_81415C8 -sub_81415C8: @ 81415C8 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _081415D8 -	cmp r0, 0x1 -	beq _081415F8 -	b _08141606 -_081415D8: -	ldr r0, _081415F4 @ =gUnknown_841B76B -	bl sub_81417E4 -	movs r0, 0 -	bl sub_8141AD8 -	movs r0, 0 -	movs r1, 0x3 -	bl CopyWindowToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _08141606 -	.align 2, 0 -_081415F4: .4byte gUnknown_841B76B -_081415F8: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _08141606 -	movs r0, 0 -	b _08141608 -_08141606: -	movs r0, 0x1 -_08141608: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_81415C8 - -	thumb_func_start sub_8141610 -sub_8141610: @ 8141610 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _08141620 -	cmp r0, 0x1 -	beq _08141638 -	b _08141646 -_08141620: -	bl sub_8141828 -	bl sub_8141B18 -	movs r0, 0 -	movs r1, 0x3 -	bl CopyWindowToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _08141646 -_08141638: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _08141646 -	movs r0, 0 -	b _08141648 -_08141646: -	movs r0, 0x1 -_08141648: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141610 - -	thumb_func_start sub_8141650 -sub_8141650: @ 8141650 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r2, [r4] -	cmp r2, 0 -	beq _08141660 -	cmp r2, 0x1 -	beq _08141678 -	b _08141686 -_08141660: -	adds r0, r1, 0 -	adds r0, 0x20 -	ldrb r0, [r0] -	bl sub_8141BA0 -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _08141686 -_08141678: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _08141686 -	movs r0, 0 -	b _08141688 -_08141686: -	movs r0, 0x1 -_08141688: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141650 - -	thumb_func_start sub_8141690 -sub_8141690: @ 8141690 -	push {r4,lr} -	adds r4, r0, 0 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _081416A0 -	cmp r0, 0x1 -	beq _081416B2 -	b _081416C0 -_081416A0: -	bl sub_8141BE4 -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _081416C0 -_081416B2: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _081416C0 -	movs r0, 0 -	b _081416C2 -_081416C0: -	movs r0, 0x1 -_081416C2: -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141690 - -	thumb_func_start sub_81416C8 -sub_81416C8: @ 81416C8 -	push {r4-r6,lr} -	adds r6, r0, 0 -	adds r5, r1, 0 -	ldrb r4, [r6] -	cmp r4, 0x1 -	beq _08141724 -	cmp r4, 0x1 -	bgt _081416DE -	cmp r4, 0 -	beq _081416E4 -	b _0814175A -_081416DE: -	cmp r4, 0x2 -	beq _08141756 -	b _0814175A -_081416E4: -	movs r1, 0x80 -	lsls r1, 6 -	movs r0, 0 -	bl SetGpuRegBits -	movs r0, 0x48 -	movs r1, 0x3F -	bl SetGpuReg -	movs r0, 0x4A -	movs r1, 0x3D -	bl SetGpuReg -	movs r0, 0x40 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x42 -	movs r1, 0xA0 -	bl SetGpuReg -	movs r0, 0x1 -	bl ShowBg -	movs r0, 0x6 -	bl PlaySE -	str r4, [r5, 0x24] -	ldrb r0, [r6] -	adds r0, 0x1 -	strb r0, [r6] -	b _0814175A -_08141724: -	ldr r0, [r5, 0x24] -	adds r0, 0x10 -	str r0, [r5, 0x24] -	cmp r0, 0xFF -	ble _0814173A -	movs r0, 0x80 -	lsls r0, 1 -	str r0, [r5, 0x24] -	ldrb r0, [r6] -	adds r0, 0x1 -	strb r0, [r6] -_0814173A: -	ldr r0, [r5, 0x24] -	movs r1, 0x80 -	lsls r1, 1 -	subs r1, r0 -	lsls r1, 8 -	movs r0, 0x1 -	movs r2, 0 -	bl ChangeBgX -	ldrh r1, [r5, 0x24] -	movs r0, 0x40 -	bl SetGpuReg -	b _0814175A -_08141756: -	movs r0, 0 -	b _0814175C -_0814175A: -	movs r0, 0x1 -_0814175C: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_81416C8 - -	thumb_func_start sub_8141764 -sub_8141764: @ 8141764 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	ldrb r0, [r4] -	cmp r0, 0x1 -	beq _08141790 -	cmp r0, 0x1 -	bgt _0814177A -	cmp r0, 0 -	beq _08141784 -	b _081417DC -_0814177A: -	cmp r0, 0x2 -	beq _081417C0 -	cmp r0, 0x3 -	beq _081417D8 -	b _081417DC -_08141784: -	movs r0, 0x6 -	bl PlaySE -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -_08141790: -	ldr r0, [r5, 0x24] -	subs r0, 0x10 -	str r0, [r5, 0x24] -	cmp r0, 0 -	bgt _081417A4 -	movs r0, 0 -	str r0, [r5, 0x24] -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -_081417A4: -	ldr r0, [r5, 0x24] -	movs r1, 0x80 -	lsls r1, 1 -	subs r1, r0 -	lsls r1, 8 -	movs r0, 0x1 -	movs r2, 0 -	bl ChangeBgX -	ldrh r1, [r5, 0x24] -	movs r0, 0x40 -	bl SetGpuReg -	b _081417DC -_081417C0: -	movs r0, 0x1 -	bl HideBg -	movs r1, 0x80 -	lsls r1, 6 -	movs r0, 0 -	bl ClearGpuRegBits -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	b _081417DC -_081417D8: -	movs r0, 0 -	b _081417DE -_081417DC: -	movs r0, 0x1 -_081417DE: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_8141764 - -	thumb_func_start sub_81417E4 -sub_81417E4: @ 81417E4 -	push {r4,lr} -	sub sp, 0x14 -	adds r4, r0, 0 -	movs r0, 0 -	movs r1, 0x11 -	bl FillWindowPixelBuffer -	movs r0, 0 -	bl PutWindowTilemap -	movs r0, 0 -	movs r1, 0x1 -	movs r2, 0xF -	bl DrawTextBorderOuter -	movs r1, 0x2 -	str r1, [sp] -	movs r0, 0xFF -	str r0, [sp, 0x4] -	movs r0, 0 -	str r0, [sp, 0x8] -	movs r0, 0x1 -	str r0, [sp, 0xC] -	str r1, [sp, 0x10] -	movs r0, 0 -	adds r2, r4, 0 -	movs r3, 0x1 -	bl AddTextPrinterParameterized5 -	add sp, 0x14 -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_81417E4 - -	thumb_func_start sub_8141828 -sub_8141828: @ 8141828 -	push {lr} -	movs r0, 0 -	bl rbox_fill_rectangle -	pop {r0} -	bx r0 -	thumb_func_end sub_8141828 - -	thumb_func_start sub_8141834 -sub_8141834: @ 8141834 -	push {r4,lr} -	adds r4, r0, 0 -	bl sub_8140BEC -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	beq _081418B4 -	cmp r0, 0x1 -	bgt _0814184E -	cmp r0, 0 -	beq _08141858 -	b _081418BE -_0814184E: -	cmp r0, 0x2 -	beq _081418A0 -	cmp r0, 0x3 -	beq _0814188C -	b _081418BE -_08141858: -	adds r0, r4, 0 -	movs r1, 0 -	movs r2, 0x4 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x1 -	movs r2, 0x4 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x2 -	movs r2, 0x4 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x3 -	movs r2, 0x4 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x4 -	movs r2, 0x4 -	bl sub_81418C4 -	b _081418BE -_0814188C: -	adds r0, r4, 0 -	movs r1, 0 -	movs r2, 0x5 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x4 -	movs r2, 0x5 -	bl sub_81418C4 -_081418A0: -	adds r0, r4, 0 -	movs r1, 0x1 -	movs r2, 0x5 -	bl sub_81418C4 -	adds r0, r4, 0 -	movs r1, 0x3 -	movs r2, 0x5 -	bl sub_81418C4 -_081418B4: -	adds r0, r4, 0 -	movs r1, 0x2 -	movs r2, 0x5 -	bl sub_81418C4 -_081418BE: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_8141834 - -	thumb_func_start sub_81418C4 -sub_81418C4: @ 81418C4 -	push {r4-r7,lr} -	adds r6, r0, 0 -	lsls r1, 16 -	ldr r3, _08141914 @ =gUnknown_8466C0C -	lsrs r1, 13 -	adds r0, r1, r3 -	ldr r4, [r0] -	lsls r2, 28 -	lsrs r7, r2, 16 -	movs r5, 0 -	adds r3, 0x4 -	adds r1, r3 -	ldr r1, [r1] -	cmp r5, r1 -	bcs _0814190C -	ldr r0, _08141918 @ =0x00000fff -	mov r12, r0 -	adds r3, r1, 0 -_081418E8: -	ldrh r1, [r4] -	lsls r1, 1 -	adds r1, r6 -	ldrh r2, [r1] -	mov r0, r12 -	ands r0, r2 -	strh r0, [r1] -	ldrh r1, [r4] -	lsls r1, 1 -	adds r1, r6 -	ldrh r2, [r1] -	adds r0, r7, 0 -	orrs r0, r2 -	strh r0, [r1] -	adds r4, 0x2 -	adds r5, 0x1 -	cmp r5, r3 -	bcc _081418E8 -_0814190C: -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141914: .4byte gUnknown_8466C0C -_08141918: .4byte 0x00000fff -	thumb_func_end sub_81418C4 - -	thumb_func_start sub_814191C -sub_814191C: @ 814191C -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r4, r0, 24 -	lsls r0, r4, 2 -	adds r0, r4 -	lsls r0, 3 -	ldr r1, _08141940 @ =gTasks+0x8 -	adds r5, r0, r1 -	movs r1, 0 -	ldrsh r0, [r5, r1] -	cmp r0, 0x1 -	beq _08141984 -	cmp r0, 0x1 -	bgt _08141944 -	cmp r0, 0 -	beq _08141952 -	b _08141AA8 -	.align 2, 0 -_08141940: .4byte gTasks+0x8 -_08141944: -	cmp r0, 0x2 -	bne _0814194A -	b _08141A58 -_0814194A: -	cmp r0, 0x3 -	bne _08141950 -	b _08141A98 -_08141950: -	b _08141AA8 -_08141952: -	ldr r0, _08141980 @ =gUnknown_84664BC -	movs r1, 0x60 -	movs r2, 0x20 -	bl LoadPalette -	movs r4, 0 -_0814195E: -	adds r0, r4, 0 -	bl sub_8140BF8 -	cmp r0, 0 -	beq _08141978 -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	lsls r1, r4, 16 -	lsrs r1, 16 -	movs r2, 0x6 -	bl sub_81418C4 -_08141978: -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _0814195E -	b _08141A84 -	.align 2, 0 -_08141980: .4byte gUnknown_84664BC -_08141984: -	ldrh r1, [r5, 0x2] -	movs r2, 0x2 -	ldrsh r0, [r5, r2] -	cmp r0, 0 -	bne _081419C4 -	ldr r1, _081419BC @ =gSineTable -	movs r2, 0x4 -	ldrsh r0, [r5, r2] -	lsls r0, 1 -	adds r0, r1 -	ldrh r0, [r0] -	lsls r0, 16 -	asrs r0, 23 -	lsls r0, 16 -	lsrs r0, 11 -	ldr r1, _081419C0 @ =gUnknown_84664DC -	adds r0, r1 -	movs r1, 0x10 -	movs r2, 0x20 -	bl LoadPalette -	ldrh r0, [r5, 0x4] -	adds r0, 0x20 -	movs r1, 0x7F -	ands r0, r1 -	strh r0, [r5, 0x4] -	movs r0, 0x8 -	b _081419C6 -	.align 2, 0 -_081419BC: .4byte gSineTable -_081419C0: .4byte gUnknown_84664DC -_081419C4: -	subs r0, r1, 0x1 -_081419C6: -	strh r0, [r5, 0x2] -	movs r1, 0x6 -	ldrsh r0, [r5, r1] -	cmp r0, 0 -	bne _08141A00 -	ldrh r0, [r5, 0x8] -	adds r0, 0x8 -	movs r1, 0x7F -	ands r0, r1 -	strh r0, [r5, 0x8] -	ldr r1, _081419FC @ =gSineTable -	movs r2, 0x8 -	ldrsh r0, [r5, r2] -	lsls r0, 1 -	adds r0, r1 -	ldrh r1, [r0] -	lsls r1, 16 -	asrs r1, 21 -	strh r1, [r5, 0xA] -	lsls r1, 24 -	lsrs r1, 24 -	movs r0, 0x40 -	movs r2, 0 -	bl BlendPalettes -	b _08141A2C -	.align 2, 0 -_081419FC: .4byte gSineTable -_08141A00: -	ldrh r0, [r5, 0x8] -	adds r0, 0x1 -	strh r0, [r5, 0x8] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x1 -	ble _08141A2C -	movs r0, 0 -	strh r0, [r5, 0x8] -	ldrh r0, [r5, 0xA] -	adds r0, 0x1 -	movs r1, 0x1 -	ands r0, r1 -	strh r0, [r5, 0xA] -	movs r0, 0xA -	ldrsh r1, [r5, r0] -	lsls r1, 27 -	lsrs r1, 24 -	movs r0, 0x40 -	movs r2, 0 -	bl BlendPalettes -_08141A2C: -	movs r4, 0 -	ldr r5, _08141A4C @ =gPlttBufferFaded -	ldr r3, _08141A50 @ =gUnknown_8466C34 -	ldr r2, _08141A54 @ =gPlttBufferUnfaded -_08141A34: -	adds r0, r4, r3 -	ldrb r0, [r0] -	adds r0, 0x60 -	lsls r0, 1 -	adds r1, r0, r5 -	adds r0, r2 -	ldrh r0, [r0] -	strh r0, [r1] -	adds r4, 0x1 -	cmp r4, 0x1 -	bls _08141A34 -	b _08141AA8 -	.align 2, 0 -_08141A4C: .4byte gPlttBufferFaded -_08141A50: .4byte gUnknown_8466C34 -_08141A54: .4byte gPlttBufferUnfaded -_08141A58: -	movs r4, 0 -_08141A5A: -	adds r0, r4, 0 -	bl sub_8140BF8 -	cmp r0, 0 -	beq _08141A74 -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	lsls r1, r4, 16 -	lsrs r1, 16 -	movs r2, 0x4 -	bl sub_81418C4 -_08141A74: -	adds r4, 0x1 -	cmp r4, 0x4 -	ble _08141A5A -	ldr r0, _08141A94 @ =gUnknown_8465950 -	movs r1, 0x10 -	movs r2, 0x20 -	bl LoadPalette -_08141A84: -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	ldrh r0, [r5] -	adds r0, 0x1 -	strh r0, [r5] -	b _08141AA8 -	.align 2, 0 -_08141A94: .4byte gUnknown_8465950 -_08141A98: -	bl IsDma3ManagerBusyWithBgCopy -	lsls r0, 24 -	cmp r0, 0 -	bne _08141AA8 -	adds r0, r4, 0 -	bl DestroyTask -_08141AA8: -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end sub_814191C - -	thumb_func_start sub_8141AB0 -sub_8141AB0: @ 8141AB0 -	push {lr} -	ldr r0, _08141AD0 @ =sub_814191C -	bl FindTaskIdByFunc -	ldr r2, _08141AD4 @ =gTasks -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	movs r0, 0x2 -	strh r0, [r1, 0x8] -	pop {r0} -	bx r0 -	.align 2, 0 -_08141AD0: .4byte sub_814191C -_08141AD4: .4byte gTasks -	thumb_func_end sub_8141AB0 - -	thumb_func_start sub_8141AD8 -sub_8141AD8: @ 8141AD8 -	push {r4,lr} -	sub sp, 0xC -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	ldr r0, _08141B14 @ =gUnknown_8466C38 -	movs r1, 0xA -	str r1, [sp] -	movs r1, 0xD -	str r1, [sp, 0x4] -	str r4, [sp, 0x8] -	movs r1, 0x2 -	movs r2, 0 -	movs r3, 0x2 -	bl CreateYesNoMenu -	lsls r4, 24 -	asrs r4, 24 -	adds r0, r4, 0 -	bl Menu_MoveCursorNoWrapAround -	bl sub_814112C -	movs r1, 0x1 -	str r1, [r0, 0x28] -	add sp, 0xC -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141B14: .4byte gUnknown_8466C38 -	thumb_func_end sub_8141AD8 - -	thumb_func_start sub_8141B18 -sub_8141B18: @ 8141B18 -	push {r4,lr} -	bl sub_814112C -	adds r4, r0, 0 -	ldr r0, [r4, 0x28] -	cmp r0, 0 -	beq _08141B2E -	bl DestroyYesNoMenu -	movs r0, 0 -	str r0, [r4, 0x28] -_08141B2E: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_8141B18 - -	thumb_func_start sub_8141B34 -sub_8141B34: @ 8141B34 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	bl sub_814112C -	adds r4, r0, 0 -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	mov r12, r0 -	movs r1, 0 -	movs r0, 0x44 -	adds r0, r4 -	mov r8, r0 -	adds r7, r4, 0 -	adds r7, 0x2C -	ldr r0, _08141B9C @ =gUnknown_8466C40 -	mov r9, r0 -_08141B5A: -	movs r5, 0 -	lsls r0, r1, 3 -	adds r6, r1, 0x1 -	mov r1, r8 -	adds r4, r0, r1 -	mov r1, r9 -	adds r3, r0, r1 -	adds r2, r0, 0 -_08141B6A: -	ldrh r0, [r3] -	lsls r0, 1 -	add r0, r12 -	ldrh r0, [r0] -	strh r0, [r4] -	adds r1, r7, r2 -	adds r0, r5, 0 -	adds r0, 0xC0 -	strh r0, [r1] -	adds r4, 0x2 -	adds r3, 0x2 -	adds r2, 0x2 -	adds r5, 0x1 -	cmp r5, 0x3 -	ble _08141B6A -	adds r1, r6, 0 -	cmp r1, 0x2 -	ble _08141B5A -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141B9C: .4byte gUnknown_8466C40 -	thumb_func_end sub_8141B34 - -	thumb_func_start sub_8141BA0 -sub_8141BA0: @ 8141BA0 -	push {r4-r6,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0x2 -	bhi _08141BD8 -	bl sub_814112C -	adds r4, r0, 0 -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	adds r6, r0, 0 -	lsls r0, r5, 3 -	ldr r1, _08141BE0 @ =gUnknown_8466C40 -	adds r4, 0x2C -	adds r3, r0, r4 -	adds r2, r0, r1 -	movs r4, 0x3 -_08141BC4: -	ldrh r0, [r2] -	lsls r0, 1 -	adds r0, r6 -	ldrh r1, [r3] -	strh r1, [r0] -	adds r3, 0x2 -	adds r2, 0x2 -	subs r4, 0x1 -	cmp r4, 0 -	bge _08141BC4 -_08141BD8: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141BE0: .4byte gUnknown_8466C40 -	thumb_func_end sub_8141BA0 - -	thumb_func_start sub_8141BE4 -sub_8141BE4: @ 8141BE4 -	push {r4-r7,lr} -	bl sub_814112C -	adds r4, r0, 0 -	movs r0, 0x2 -	bl GetBgTilemapBuffer -	adds r6, r0, 0 -	movs r1, 0 -	adds r7, r4, 0 -	adds r7, 0x44 -	ldr r0, _08141C2C @ =gUnknown_8466C40 -	mov r12, r0 -_08141BFE: -	lsls r0, r1, 3 -	adds r5, r1, 0x1 -	adds r3, r0, r7 -	mov r1, r12 -	adds r2, r0, r1 -	movs r4, 0x3 -_08141C0A: -	ldrh r0, [r2] -	lsls r0, 1 -	adds r0, r6 -	ldrh r1, [r3] -	strh r1, [r0] -	adds r3, 0x2 -	adds r2, 0x2 -	subs r4, 0x1 -	cmp r4, 0 -	bge _08141C0A -	adds r1, r5, 0 -	cmp r1, 0x2 -	ble _08141BFE -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08141C2C: .4byte gUnknown_8466C40 -	thumb_func_end sub_8141BE4 - -	thumb_func_start sub_8141C30 -sub_8141C30: @ 8141C30 -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r5, 24 -	lsrs r5, 24 -	bl sub_814112C -	adds r0, 0x20 -	strb r4, [r0] -	movs r0, 0xC -	adds r1, r5, 0 -	bl sub_8141148 -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end sub_8141C30 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/tileset_anims.s b/asm/tileset_anims.s deleted file mode 100644 index 693962d39..000000000 --- a/asm/tileset_anims.s +++ /dev/null @@ -1,667 +0,0 @@ -	.include "asm/macros.inc" -	.include "constants/constants.inc" - -	.syntax unified - -	.text - -	thumb_func_start ResetTilesetAnimBuffer -ResetTilesetAnimBuffer: @ 806FED8 -	push {lr} -	sub sp, 0x4 -	ldr r1, _0806FEF8 @ =gUnknown_3000FAC -	movs r0, 0 -	strb r0, [r1] -	movs r0, 0 -	str r0, [sp] -	ldr r1, _0806FEFC @ =gUnknown_2037108 -	ldr r2, _0806FF00 @ =0x0500003c -	mov r0, sp -	bl CpuSet -	add sp, 0x4 -	pop {r0} -	bx r0 -	.align 2, 0 -_0806FEF8: .4byte gUnknown_3000FAC -_0806FEFC: .4byte gUnknown_2037108 -_0806FF00: .4byte 0x0500003c -	thumb_func_end ResetTilesetAnimBuffer - -	thumb_func_start AppendTilesetAnimToBuffer -AppendTilesetAnimToBuffer: @ 806FF04 -	push {r4-r6,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	lsls r2, 16 -	lsrs r6, r2, 16 -	ldr r3, _0806FF4C @ =gUnknown_3000FAC -	ldrb r0, [r3] -	cmp r0, 0x13 -	bhi _0806FF44 -	ldr r2, _0806FF50 @ =gUnknown_2037108 -	adds r1, r0, 0 -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r2 -	str r4, [r0] -	ldrb r1, [r3] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r2, 0x4 -	adds r0, r1 -	str r5, [r0] -	ldrb r1, [r3] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r2 -	strh r6, [r0, 0x8] -	ldrb r0, [r3] -	adds r0, 0x1 -	strb r0, [r3] -_0806FF44: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806FF4C: .4byte gUnknown_3000FAC -_0806FF50: .4byte gUnknown_2037108 -	thumb_func_end AppendTilesetAnimToBuffer - -	thumb_func_start TransferTilesetAnimsBuffer -TransferTilesetAnimsBuffer: @ 806FF54 -	push {r4-r6,lr} -	movs r3, 0 -	ldr r4, _0806FF90 @ =gUnknown_3000FAC -	adds r6, r4, 0 -	ldrb r0, [r4] -	cmp r3, r0 -	bge _0806FF86 -	ldr r2, _0806FF94 @ =0x040000d4 -	ldr r1, _0806FF98 @ =gUnknown_2037108 -	movs r5, 0x80 -	lsls r5, 24 -_0806FF6A: -	ldr r0, [r1] -	str r0, [r2] -	ldr r0, [r1, 0x4] -	str r0, [r2, 0x4] -	ldrh r0, [r1, 0x8] -	lsrs r0, 1 -	orrs r0, r5 -	str r0, [r2, 0x8] -	ldr r0, [r2, 0x8] -	adds r1, 0xC -	adds r3, 0x1 -	ldrb r0, [r4] -	cmp r3, r0 -	blt _0806FF6A -_0806FF86: -	movs r0, 0 -	strb r0, [r6] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806FF90: .4byte gUnknown_3000FAC -_0806FF94: .4byte 0x040000d4 -_0806FF98: .4byte gUnknown_2037108 -	thumb_func_end TransferTilesetAnimsBuffer - -	thumb_func_start cur_mapheader_run_tileset_funcs_after_some_cpuset -cur_mapheader_run_tileset_funcs_after_some_cpuset: @ 806FF9C -	push {lr} -	bl ResetTilesetAnimBuffer -	bl cur_mapheader_run_tileset1_func -	bl cur_mapheader_run_tileset2_func -	pop {r0} -	bx r0 -	thumb_func_end cur_mapheader_run_tileset_funcs_after_some_cpuset - -	thumb_func_start sub_806FFB0 -sub_806FFB0: @ 806FFB0 -	push {lr} -	bl cur_mapheader_run_tileset2_func -	pop {r0} -	bx r0 -	thumb_func_end sub_806FFB0 - -	thumb_func_start sub_806FFBC -sub_806FFBC: @ 806FFBC -	push {r4,lr} -	bl ResetTilesetAnimBuffer -	ldr r2, _08070014 @ =sPrimaryTilesetCBCounter -	ldrh r0, [r2] -	adds r0, 0x1 -	strh r0, [r2] -	ldr r1, _08070018 @ =sPrimaryTilesetCBBufferSize -	lsls r0, 16 -	lsrs r0, 16 -	ldrh r1, [r1] -	cmp r0, r1 -	bcc _0806FFDA -	movs r0, 0 -	strh r0, [r2] -_0806FFDA: -	ldr r4, _0807001C @ =sSecondaryTilesetCBCounter -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	ldr r1, _08070020 @ =sSecondaryTilesetCBBufferSize -	lsls r0, 16 -	lsrs r0, 16 -	ldrh r1, [r1] -	cmp r0, r1 -	bcc _0806FFF2 -	movs r0, 0 -	strh r0, [r4] -_0806FFF2: -	ldr r0, _08070024 @ =sPrimaryTilesetCB -	ldr r1, [r0] -	cmp r1, 0 -	beq _08070000 -	ldrh r0, [r2] -	bl _call_via_r1 -_08070000: -	ldr r0, _08070028 @ =sSecondaryTilesetCB -	ldr r1, [r0] -	cmp r1, 0 -	beq _0807000E -	ldrh r0, [r4] -	bl _call_via_r1 -_0807000E: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08070014: .4byte sPrimaryTilesetCBCounter -_08070018: .4byte sPrimaryTilesetCBBufferSize -_0807001C: .4byte sSecondaryTilesetCBCounter -_08070020: .4byte sSecondaryTilesetCBBufferSize -_08070024: .4byte sPrimaryTilesetCB -_08070028: .4byte sSecondaryTilesetCB -	thumb_func_end sub_806FFBC - -	thumb_func_start cur_mapheader_run_tileset1_func -cur_mapheader_run_tileset1_func: @ 807002C -	push {lr} -	ldr r0, _08070058 @ =sPrimaryTilesetCBCounter -	movs r1, 0 -	strh r1, [r0] -	ldr r0, _0807005C @ =sPrimaryTilesetCBBufferSize -	strh r1, [r0] -	ldr r1, _08070060 @ =sPrimaryTilesetCB -	movs r0, 0 -	str r0, [r1] -	ldr r0, _08070064 @ =gMapHeader -	ldr r0, [r0] -	ldr r0, [r0, 0x10] -	cmp r0, 0 -	beq _08070052 -	ldr r0, [r0, 0x10] -	cmp r0, 0 -	beq _08070052 -	bl _call_via_r0 -_08070052: -	pop {r0} -	bx r0 -	.align 2, 0 -_08070058: .4byte sPrimaryTilesetCBCounter -_0807005C: .4byte sPrimaryTilesetCBBufferSize -_08070060: .4byte sPrimaryTilesetCB -_08070064: .4byte gMapHeader -	thumb_func_end cur_mapheader_run_tileset1_func - -	thumb_func_start cur_mapheader_run_tileset2_func -cur_mapheader_run_tileset2_func: @ 8070068 -	push {lr} -	ldr r0, _08070094 @ =sSecondaryTilesetCBCounter -	movs r1, 0 -	strh r1, [r0] -	ldr r0, _08070098 @ =sSecondaryTilesetCBBufferSize -	strh r1, [r0] -	ldr r1, _0807009C @ =sSecondaryTilesetCB -	movs r0, 0 -	str r0, [r1] -	ldr r0, _080700A0 @ =gMapHeader -	ldr r0, [r0] -	ldr r0, [r0, 0x14] -	cmp r0, 0 -	beq _0807008E -	ldr r0, [r0, 0x10] -	cmp r0, 0 -	beq _0807008E -	bl _call_via_r0 -_0807008E: -	pop {r0} -	bx r0 -	.align 2, 0 -_08070094: .4byte sSecondaryTilesetCBCounter -_08070098: .4byte sSecondaryTilesetCBBufferSize -_0807009C: .4byte sSecondaryTilesetCB -_080700A0: .4byte gMapHeader -	thumb_func_end cur_mapheader_run_tileset2_func - -	thumb_func_start sub_80700A4 -sub_80700A4: @ 80700A4 -	push {r4,lr} -	lsls r0, 16 -	lsrs r0, 16 -	ldr r4, _080700C8 @ =gUnknown_83A7660 -	movs r1, 0x5 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r0, 14 -	adds r0, r4 -	ldr r0, [r0] -	ldr r1, _080700CC @ =0x06003f80 -	movs r2, 0x80 -	bl AppendTilesetAnimToBuffer -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_080700C8: .4byte gUnknown_83A7660 -_080700CC: .4byte 0x06003f80 -	thumb_func_end sub_80700A4 - -	thumb_func_start sub_80700D0 -sub_80700D0: @ 80700D0 -	push {lr} -	lsls r0, 16 -	ldr r2, _080700F0 @ =gUnknown_83AA654 -	movs r1, 0xE0 -	lsls r1, 11 -	ands r1, r0 -	lsrs r1, 14 -	adds r1, r2 -	ldr r0, [r1] -	ldr r1, _080700F4 @ =0x06003400 -	movs r2, 0xC0 -	lsls r2, 3 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_080700F0: .4byte gUnknown_83AA654 -_080700F4: .4byte 0x06003400 -	thumb_func_end sub_80700D0 - -	thumb_func_start sub_80700F8 -sub_80700F8: @ 80700F8 -	push {lr} -	lsls r0, 16 -	ldr r2, _08070118 @ =gUnknown_83AB874 -	movs r1, 0xE0 -	lsls r1, 11 -	ands r1, r0 -	lsrs r1, 14 -	adds r1, r2 -	ldr r0, [r1] -	ldr r1, _0807011C @ =0x06003a00 -	movs r2, 0x90 -	lsls r2, 2 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_08070118: .4byte gUnknown_83AB874 -_0807011C: .4byte 0x06003a00 -	thumb_func_end sub_80700F8 - -	thumb_func_start sub_8070120 -sub_8070120: @ 8070120 -	push {r4-r6,lr} -	lsls r5, r0, 16 -	lsrs r6, r5, 16 -	movs r0, 0x7 -	ands r0, r6 -	cmp r0, 0 -	bne _08070134 -	lsrs r0, r5, 19 -	bl sub_80700F8 -_08070134: -	movs r4, 0xF -	ands r4, r6 -	cmp r4, 0x1 -	bne _08070142 -	lsrs r0, r5, 20 -	bl sub_80700D0 -_08070142: -	cmp r4, 0x2 -	bne _0807014C -	lsrs r0, r5, 20 -	bl sub_80700A4 -_0807014C: -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end sub_8070120 - -	thumb_func_start sub_8070154 -sub_8070154: @ 8070154 -	ldr r1, _0807016C @ =sPrimaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _08070170 @ =sPrimaryTilesetCBBufferSize -	movs r2, 0xA0 -	lsls r2, 2 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r1, _08070174 @ =sPrimaryTilesetCB -	ldr r0, _08070178 @ =sub_8070120 -	str r0, [r1] -	bx lr -	.align 2, 0 -_0807016C: .4byte sPrimaryTilesetCBCounter -_08070170: .4byte sPrimaryTilesetCBBufferSize -_08070174: .4byte sPrimaryTilesetCB -_08070178: .4byte sub_8070120 -	thumb_func_end sub_8070154 - -	thumb_func_start sub_807017C -sub_807017C: @ 807017C -	push {r4,lr} -	lsls r0, 16 -	lsrs r0, 16 -	ldr r4, _080701A4 @ =gUnknown_83ABDB4 -	movs r1, 0x5 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r0, 14 -	adds r0, r4 -	ldr r0, [r0] -	ldr r1, _080701A8 @ =0x06005d00 -	movs r2, 0x80 -	lsls r2, 1 -	bl AppendTilesetAnimToBuffer -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_080701A4: .4byte gUnknown_83ABDB4 -_080701A8: .4byte 0x06005d00 -	thumb_func_end sub_807017C - -	thumb_func_start sub_80701AC -sub_80701AC: @ 80701AC -	push {r4,lr} -	lsls r0, 16 -	lsrs r4, r0, 16 -	adds r0, r4, 0 -	movs r1, 0xC -	bl __umodsi3 -	lsls r0, 16 -	cmp r0, 0 -	bne _080701D0 -	adds r0, r4, 0 -	movs r1, 0xC -	bl __udivsi3 -	lsls r0, 16 -	lsrs r0, 16 -	bl sub_807017C -_080701D0: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_80701AC - -	thumb_func_start sub_80701D8 -sub_80701D8: @ 80701D8 -	ldr r1, _080701EC @ =sSecondaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _080701F0 @ =sSecondaryTilesetCBBufferSize -	movs r0, 0x78 -	strh r0, [r1] -	ldr r1, _080701F4 @ =sSecondaryTilesetCB -	ldr r0, _080701F8 @ =sub_80701AC -	str r0, [r1] -	bx lr -	.align 2, 0 -_080701EC: .4byte sSecondaryTilesetCBCounter -_080701F0: .4byte sSecondaryTilesetCBBufferSize -_080701F4: .4byte sSecondaryTilesetCB -_080701F8: .4byte sub_80701AC -	thumb_func_end sub_80701D8 - -	thumb_func_start sub_80701FC -sub_80701FC: @ 80701FC -	push {lr} -	lsls r0, 16 -	ldr r2, _0807021C @ =gUnknown_83AC1E8 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r0 -	lsrs r1, 14 -	adds r1, r2 -	ldr r0, [r1] -	ldr r1, _08070220 @ =0x06007a00 -	movs r2, 0x80 -	lsls r2, 1 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_0807021C: .4byte gUnknown_83AC1E8 -_08070220: .4byte 0x06007a00 -	thumb_func_end sub_80701FC - -	thumb_func_start sub_8070224 -sub_8070224: @ 8070224 -	push {r4,lr} -	lsls r0, 16 -	lsrs r4, r0, 16 -	adds r0, r4, 0 -	movs r1, 0xA -	bl __umodsi3 -	lsls r0, 16 -	cmp r0, 0 -	bne _08070248 -	adds r0, r4, 0 -	movs r1, 0xA -	bl __udivsi3 -	lsls r0, 16 -	lsrs r0, 16 -	bl sub_80701FC -_08070248: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_8070224 - -	thumb_func_start sub_8070250 -sub_8070250: @ 8070250 -	ldr r1, _08070264 @ =sSecondaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _08070268 @ =sSecondaryTilesetCBBufferSize -	movs r0, 0xA0 -	strh r0, [r1] -	ldr r1, _0807026C @ =sSecondaryTilesetCB -	ldr r0, _08070270 @ =sub_8070224 -	str r0, [r1] -	bx lr -	.align 2, 0 -_08070264: .4byte sSecondaryTilesetCBCounter -_08070268: .4byte sSecondaryTilesetCBBufferSize -_0807026C: .4byte sSecondaryTilesetCB -_08070270: .4byte sub_8070224 -	thumb_func_end sub_8070250 - -	thumb_func_start sub_8070274 -sub_8070274: @ 8070274 -	push {lr} -	lsls r0, 16 -	ldr r2, _08070294 @ =gUnknown_83AC5F8 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r0 -	lsrs r1, 14 -	adds r1, r2 -	ldr r0, [r1] -	ldr r1, _08070298 @ =0x06007000 -	movs r2, 0x80 -	lsls r2, 1 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_08070294: .4byte gUnknown_83AC5F8 -_08070298: .4byte 0x06007000 -	thumb_func_end sub_8070274 - -	thumb_func_start sub_807029C -sub_807029C: @ 807029C -	push {lr} -	lsls r1, r0, 16 -	movs r0, 0xF0 -	lsls r0, 12 -	ands r0, r1 -	cmp r0, 0 -	bne _080702B0 -	lsrs r0, r1, 20 -	bl sub_8070274 -_080702B0: -	pop {r0} -	bx r0 -	thumb_func_end sub_807029C - -	thumb_func_start sub_80702B4 -sub_80702B4: @ 80702B4 -	ldr r1, _080702CC @ =sSecondaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _080702D0 @ =sSecondaryTilesetCBBufferSize -	movs r2, 0x80 -	lsls r2, 1 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r1, _080702D4 @ =sSecondaryTilesetCB -	ldr r0, _080702D8 @ =sub_807029C -	str r0, [r1] -	bx lr -	.align 2, 0 -_080702CC: .4byte sSecondaryTilesetCBCounter -_080702D0: .4byte sSecondaryTilesetCBBufferSize -_080702D4: .4byte sSecondaryTilesetCB -_080702D8: .4byte sub_807029C -	thumb_func_end sub_80702B4 - -	thumb_func_start sub_80702DC -sub_80702DC: @ 80702DC -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x1 -	ands r0, r1 -	ldr r1, _080702FC @ =gUnknown_83AC7C8 -	lsls r0, 2 -	adds r0, r1 -	ldr r0, [r0] -	ldr r1, _08070300 @ =0x06006e00 -	movs r2, 0xE0 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_080702FC: .4byte gUnknown_83AC7C8 -_08070300: .4byte 0x06006e00 -	thumb_func_end sub_80702DC - -	thumb_func_start sub_8070304 -sub_8070304: @ 8070304 -	push {lr} -	lsls r2, r0, 16 -	lsrs r0, r2, 16 -	movs r1, 0x1 -	ands r0, r1 -	cmp r0, 0 -	bne _08070318 -	lsrs r0, r2, 17 -	bl sub_80702DC -_08070318: -	pop {r0} -	bx r0 -	thumb_func_end sub_8070304 - -	thumb_func_start sub_807031C -sub_807031C: @ 807031C -	ldr r1, _08070330 @ =sSecondaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _08070334 @ =sSecondaryTilesetCBBufferSize -	movs r0, 0xF0 -	strh r0, [r1] -	ldr r1, _08070338 @ =sSecondaryTilesetCB -	ldr r0, _0807033C @ =sub_8070304 -	str r0, [r1] -	bx lr -	.align 2, 0 -_08070330: .4byte sSecondaryTilesetCBCounter -_08070334: .4byte sSecondaryTilesetCBBufferSize -_08070338: .4byte sSecondaryTilesetCB -_0807033C: .4byte sub_8070304 -	thumb_func_end sub_807031C - -	thumb_func_start sub_8070340 -sub_8070340: @ 8070340 -	push {lr} -	lsls r0, 16 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r0 -	ldr r0, _08070360 @ =gUnknown_83AC950 -	lsrs r1, 14 -	adds r1, r0 -	ldr r0, [r1] -	ldr r1, _08070364 @ =0x06005c60 -	movs r2, 0x80 -	bl AppendTilesetAnimToBuffer -	pop {r0} -	bx r0 -	.align 2, 0 -_08070360: .4byte gUnknown_83AC950 -_08070364: .4byte 0x06005c60 -	thumb_func_end sub_8070340 - -	thumb_func_start sub_8070368 -sub_8070368: @ 8070368 -	push {lr} -	lsls r1, r0, 16 -	movs r0, 0xF0 -	lsls r0, 12 -	ands r0, r1 -	cmp r0, 0 -	bne _0807037C -	lsrs r0, r1, 20 -	bl sub_8070340 -_0807037C: -	pop {r0} -	bx r0 -	thumb_func_end sub_8070368 - -	thumb_func_start sub_8070380 -sub_8070380: @ 8070380 -	ldr r1, _08070398 @ =sSecondaryTilesetCBCounter -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _0807039C @ =sSecondaryTilesetCBBufferSize -	movs r2, 0x80 -	lsls r2, 1 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r1, _080703A0 @ =sSecondaryTilesetCB -	ldr r0, _080703A4 @ =sub_8070368 -	str r0, [r1] -	bx lr -	.align 2, 0 -_08070398: .4byte sSecondaryTilesetCBCounter -_0807039C: .4byte sSecondaryTilesetCBBufferSize -_080703A0: .4byte sSecondaryTilesetCB -_080703A4: .4byte sub_8070368 -	thumb_func_end sub_8070380 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/title_screen.s b/asm/title_screen.s deleted file mode 100644 index e62cc9a9f..000000000 --- a/asm/title_screen.s +++ /dev/null @@ -1,2310 +0,0 @@ -	.include "asm/macros.inc" -	.include "constants/constants.inc" - -	.syntax unified - -	.text - -	thumb_func_start CB2_InitTitleScreen -CB2_InitTitleScreen: @ 8078914 -	push {r4-r6,lr} -	sub sp, 0xC -	ldr r0, _08078930 @ =gMain -	movs r1, 0x87 -	lsls r1, 3 -	adds r0, r1 -	ldrb r6, [r0] -	cmp r6, 0x1 -	beq _080789F0 -	cmp r6, 0x1 -	bgt _08078934 -	cmp r6, 0 -	beq _08078946 -	b _0807893A -	.align 2, 0 -_08078930: .4byte gMain -_08078934: -	cmp r6, 0x2 -	bne _0807893A -	b _08078AC0 -_0807893A: -	ldr r0, _080789D0 @ =gMain -	movs r1, 0x87 -	lsls r1, 3 -	adds r0, r1 -	movs r1, 0 -	strb r1, [r0] -_08078946: -	movs r0, 0 -	bl SetVBlankCallback -	bl StartTimer1 -	ldr r0, _080789D4 @ =gHeap -	movs r1, 0xE0 -	lsls r1, 9 -	bl InitHeap -	bl ResetTasks -	bl ResetSpriteData -	bl FreeAllSpritePalettes -	bl ResetPaletteFade -	bl sub_8078B34 -	add r1, sp, 0x4 -	movs r0, 0 -	strh r0, [r1] -	ldr r1, _080789D8 @ =0x040000d4 -	add r0, sp, 0x4 -	str r0, [r1] -	movs r0, 0xC0 -	lsls r0, 19 -	str r0, [r1, 0x4] -	ldr r0, _080789DC @ =0x8100c000 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	movs r2, 0 -	str r2, [sp, 0x8] -	add r0, sp, 0x8 -	str r0, [r1] -	movs r0, 0xE0 -	lsls r0, 19 -	str r0, [r1, 0x4] -	ldr r0, _080789E0 @ =0x85000100 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	add r0, sp, 0x4 -	strh r2, [r0] -	str r0, [r1] -	movs r0, 0xA0 -	lsls r0, 19 -	str r0, [r1, 0x4] -	ldr r0, _080789E4 @ =0x81000200 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	movs r0, 0 -	bl ResetBgsAndClearDma3BusyFlags -	ldr r1, _080789E8 @ =gUnknown_83BFB74 -	movs r0, 0 -	movs r2, 0x4 -	bl InitBgsFromTemplates -	movs r1, 0x82 -	lsls r1, 5 -	movs r0, 0 -	bl SetGpuRegBits -	ldr r1, _080789EC @ =gUnknown_2037F30 -	movs r0, 0xFF -	strb r0, [r1] -	b _08078B18 -	.align 2, 0 -_080789D0: .4byte gMain -_080789D4: .4byte gHeap -_080789D8: .4byte 0x040000d4 -_080789DC: .4byte 0x8100c000 -_080789E0: .4byte 0x85000100 -_080789E4: .4byte 0x81000200 -_080789E8: .4byte gUnknown_83BFB74 -_080789EC: .4byte gUnknown_2037F30 -_080789F0: -	ldr r0, _08078A94 @ =gUnknown_8EAB6C4 -	movs r2, 0xD0 -	lsls r2, 1 -	movs r1, 0 -	bl LoadPalette -	ldr r1, _08078A98 @ =gUnknown_8EAB8C4 -	movs r4, 0 -	str r4, [sp] -	movs r0, 0 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _08078A9C @ =gUnknown_8EAD390 -	str r6, [sp] -	movs r0, 0 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r0, _08078AA0 @ =gUnknown_8EAD5E8 -	movs r1, 0xD0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r1, _08078AA4 @ =gUnknown_8EAD608 -	str r4, [sp] -	movs r0, 0x1 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _08078AA8 @ =gUnknown_8EADEE4 -	str r6, [sp] -	movs r0, 0x1 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r5, _08078AAC @ =gUnknown_8EAE094 -	adds r0, r5, 0 -	movs r1, 0xF0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r1, _08078AB0 @ =gUnknown_8EAE0B4 -	str r4, [sp] -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _08078AB4 @ =gUnknown_8EAE374 -	str r6, [sp] -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	adds r0, r5, 0 -	movs r1, 0xE0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r1, _08078AB8 @ =gUnknown_83BF58C -	str r4, [sp] -	movs r0, 0x3 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	ldr r1, _08078ABC @ =gUnknown_83BF5A8 -	str r6, [sp] -	movs r0, 0x3 -	movs r2, 0 -	movs r3, 0 -	bl DecompressAndCopyTileDataToVram -	bl sub_8079708 -	b _08078B18 -	.align 2, 0 -_08078A94: .4byte gUnknown_8EAB6C4 -_08078A98: .4byte gUnknown_8EAB8C4 -_08078A9C: .4byte gUnknown_8EAD390 -_08078AA0: .4byte gUnknown_8EAD5E8 -_08078AA4: .4byte gUnknown_8EAD608 -_08078AA8: .4byte gUnknown_8EADEE4 -_08078AAC: .4byte gUnknown_8EAE094 -_08078AB0: .4byte gUnknown_8EAE0B4 -_08078AB4: .4byte gUnknown_8EAE374 -_08078AB8: .4byte gUnknown_83BF58C -_08078ABC: .4byte gUnknown_83BF5A8 -_08078AC0: -	bl FreeTempTileDataBuffersIfPossible -	lsls r0, 24 -	cmp r0, 0 -	bne _08078B26 -	ldr r0, _08078B00 @ =0x0000ffff -	movs r1, 0x10 -	movs r2, 0 -	bl BlendPalettes -	ldr r0, _08078B04 @ =sub_8078C24 -	movs r1, 0x4 -	bl CreateTask -	ldr r0, _08078B08 @ =sub_8078BEC -	movs r1, 0x2 -	bl CreateTask -	ldr r1, _08078B0C @ =gUnknown_2037F30 -	strb r0, [r1] -	ldr r0, _08078B10 @ =sub_8078BB4 -	bl SetVBlankCallback -	ldr r0, _08078B14 @ =sub_8078B9C -	bl SetMainCallback2 -	movs r0, 0x8B -	lsls r0, 1 -	bl m4aSongNumStart -	b _08078B26 -	.align 2, 0 -_08078B00: .4byte 0x0000ffff -_08078B04: .4byte sub_8078C24 -_08078B08: .4byte sub_8078BEC -_08078B0C: .4byte gUnknown_2037F30 -_08078B10: .4byte sub_8078BB4 -_08078B14: .4byte sub_8078B9C -_08078B18: -	ldr r1, _08078B30 @ =gMain -	movs r0, 0x87 -	lsls r0, 3 -	adds r1, r0 -	ldrb r0, [r1] -	adds r0, 0x1 -	strb r0, [r1] -_08078B26: -	add sp, 0xC -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08078B30: .4byte gMain -	thumb_func_end CB2_InitTitleScreen - -	thumb_func_start sub_8078B34 -sub_8078B34: @ 8078B34 -	push {lr} -	movs r0, 0 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x50 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x52 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x10 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x12 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x14 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x16 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x18 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x1A -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x1C -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x1E -	movs r1, 0 -	bl SetGpuReg -	pop {r0} -	bx r0 -	thumb_func_end sub_8078B34 - -	thumb_func_start sub_8078B9C -sub_8078B9C: @ 8078B9C -	push {lr} -	bl RunTasks -	bl AnimateSprites -	bl BuildOamBuffer -	bl UpdatePaletteFade -	pop {r0} -	bx r0 -	thumb_func_end sub_8078B9C - -	thumb_func_start sub_8078BB4 -sub_8078BB4: @ 8078BB4 -	push {lr} -	bl LoadOam -	bl ProcessSpriteCopyRequests -	bl TransferPlttBuffer -	bl ScanlineEffect_InitHBlankDmaTransfer -	ldr r1, _08078BE4 @ =gUnknown_2037F30 -	ldrb r0, [r1] -	cmp r0, 0xFF -	beq _08078BE0 -	ldr r2, _08078BE8 @ =gTasks -	adds r1, r0, 0 -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrh r1, [r0, 0x8] -	adds r1, 0x1 -	strh r1, [r0, 0x8] -_08078BE0: -	pop {r0} -	bx r0 -	.align 2, 0 -_08078BE4: .4byte gUnknown_2037F30 -_08078BE8: .4byte gTasks -	thumb_func_end sub_8078BB4 - -	thumb_func_start sub_8078BEC -sub_8078BEC: @ 8078BEC -	push {lr} -	lsls r0, 24 -	lsrs r2, r0, 24 -	lsls r0, r2, 2 -	adds r0, r2 -	lsls r0, 3 -	ldr r1, _08078C18 @ =gTasks+0x8 -	adds r0, r1 -	movs r3, 0 -	ldrsh r1, [r0, r3] -	ldr r0, _08078C1C @ =0x00000a8b -	cmp r1, r0 -	ble _08078C12 -	ldr r1, _08078C20 @ =gUnknown_2037F30 -	movs r0, 0xFF -	strb r0, [r1] -	adds r0, r2, 0 -	bl DestroyTask -_08078C12: -	pop {r0} -	bx r0 -	.align 2, 0 -_08078C18: .4byte gTasks+0x8 -_08078C1C: .4byte 0x00000a8b -_08078C20: .4byte gUnknown_2037F30 -	thumb_func_end sub_8078BEC - -	thumb_func_start sub_8078C24 -sub_8078C24: @ 8078C24 -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	ldr r0, _08078C6C @ =gTasks+0x8 -	adds r4, r1, r0 -	ldr r0, _08078C70 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0xB -	ands r0, r1 -	cmp r0, 0 -	beq _08078C74 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0x3 -	beq _08078C74 -	cmp r0, 0x4 -	beq _08078C74 -	cmp r0, 0x5 -	beq _08078C74 -	bl sub_8079620 -	bl sub_8079648 -	movs r2, 0xA -	ldrsh r0, [r4, r2] -	bl sub_8079A10 -	adds r0, r4, 0 -	movs r1, 0x3 -	bl sub_8078C90 -	b _08078C86 -	.align 2, 0 -_08078C6C: .4byte gTasks+0x8 -_08078C70: .4byte gMain -_08078C74: -	ldr r0, _08078C8C @ =gUnknown_83BFB84 -	movs r2, 0 -	ldrsh r1, [r4, r2] -	lsls r1, 2 -	adds r1, r0 -	ldr r1, [r1] -	adds r0, r4, 0 -	bl _call_via_r1 -_08078C86: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08078C8C: .4byte gUnknown_83BFB84 -	thumb_func_end sub_8078C24 - -	thumb_func_start sub_8078C90 -sub_8078C90: @ 8078C90 -	lsls r1, 24 -	lsrs r1, 24 -	movs r2, 0 -	strh r2, [r0, 0x2] -	strh r1, [r0] -	bx lr -	thumb_func_end sub_8078C90 - -	thumb_func_start sub_8078C9C -sub_8078C9C: @ 8078C9C -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	sub sp, 0x10 -	mov r8, r0 -	movs r0, 0 -	bl HideBg -	movs r0, 0x1 -	bl ShowBg -	movs r0, 0x2 -	bl ShowBg -	movs r0, 0x3 -	bl ShowBg -	ldr r0, _08078D14 @ =0x04000054 -	str r0, [sp] -	ldr r0, _08078D18 @ =0xa2600001 -	str r0, [sp, 0x4] -	mov r1, sp -	movs r5, 0 -	movs r0, 0x1 -	strb r0, [r1, 0x8] -	mov r0, sp -	strb r5, [r0, 0x9] -	add r0, sp, 0xC -	strh r5, [r0] -	ldr r4, _08078D1C @ =gScanlineEffectRegBuffers -	ldr r6, _08078D20 @ =0x010000a0 -	adds r1, r4, 0 -	adds r2, r6, 0 -	bl CpuSet -	mov r0, sp -	adds r0, 0xE -	strh r5, [r0] -	movs r1, 0xF0 -	lsls r1, 3 -	adds r4, r1 -	adds r1, r4, 0 -	adds r2, r6, 0 -	bl CpuSet -	ldr r0, [sp] -	ldr r1, [sp, 0x4] -	ldr r2, [sp, 0x8] -	bl ScanlineEffect_SetParams -	mov r0, r8 -	movs r1, 0x1 -	bl sub_8078C90 -	add sp, 0x10 -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08078D14: .4byte 0x04000054 -_08078D18: .4byte 0xa2600001 -_08078D1C: .4byte gScanlineEffectRegBuffers -_08078D20: .4byte 0x010000a0 -	thumb_func_end sub_8078C9C - -	thumb_func_start sub_8078D24 -sub_8078D24: @ 8078D24 -	push {r4,lr} -	adds r4, r0, 0 -	movs r1, 0x2 -	ldrsh r0, [r4, r1] -	cmp r0, 0x1 -	beq _08078D5C -	cmp r0, 0x1 -	bgt _08078D3A -	cmp r0, 0 -	beq _08078D40 -	b _08078D9C -_08078D3A: -	cmp r0, 0x2 -	beq _08078D84 -	b _08078D9C -_08078D40: -	movs r0, 0x50 -	movs r1, 0x82 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x80 -	strh r0, [r4, 0x4] -	movs r0, 0x80 -	bl sub_8079550 -	b _08078D78 -_08078D5C: -	ldrh r0, [r4, 0x4] -	subs r0, 0x4 -	strh r0, [r4, 0x4] -	movs r1, 0x4 -	ldrsh r0, [r4, r1] -	bl sub_8079550 -	movs r1, 0x4 -	ldrsh r0, [r4, r1] -	cmp r0, 0 -	bge _08078D9C -	ldr r1, _08078D80 @ =gScanlineEffect -	movs r0, 0x3 -	strb r0, [r1, 0x15] -_08078D78: -	ldrh r0, [r4, 0x2] -	adds r0, 0x1 -	strh r0, [r4, 0x2] -	b _08078D9C -	.align 2, 0 -_08078D80: .4byte gScanlineEffect -_08078D84: -	movs r0, 0x50 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0 -	bl SetGpuReg -	adds r0, r4, 0 -	movs r1, 0x2 -	bl sub_8078C90 -_08078D9C: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_8078D24 - -	thumb_func_start sub_8078DA4 -sub_8078DA4: @ 8078DA4 -	push {r4-r7,lr} -	sub sp, 0xC -	adds r6, r0, 0 -	movs r1, 0x2 -	ldrsh r0, [r6, r1] -	cmp r0, 0x9 -	bls _08078DB4 -	b _08078FB6 -_08078DB4: -	lsls r0, 2 -	ldr r1, _08078DC0 @ =_08078DC4 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_08078DC0: .4byte _08078DC4 -	.align 2, 0 -_08078DC4: -	.4byte _08078DEC -	.4byte _08078DF2 -	.4byte _08078E24 -	.4byte _08078E40 -	.4byte _08078E80 -	.4byte _08078EA4 -	.4byte _08078ED4 -	.4byte _08078EF8 -	.4byte _08078F24 -	.4byte _08078F98 -_08078DEC: -	movs r0, 0 -	strh r0, [r6, 0x4] -	b _08078F80 -_08078DF2: -	ldrh r0, [r6, 0x4] -	adds r0, 0x1 -	strh r0, [r6, 0x4] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0xA -	bgt _08078E02 -	b _08078FB6 -_08078E02: -	ldr r0, _08078E20 @ =gPlttBufferUnfaded + 0x1A0 -	movs r1, 0x10 -	bl TintPalette_GrayScale2 -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0 -	str r1, [sp] -	movs r1, 0x9 -	movs r2, 0x10 -	movs r3, 0 -	bl BeginNormalPaletteFade -	b _08078F80 -	.align 2, 0 -_08078E20: .4byte gPlttBufferUnfaded + 0x1A0 -_08078E24: -	ldr r0, _08078E3C @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0 -	beq _08078E36 -	b _08078FB6 -_08078E36: -	strh r0, [r6, 0x4] -	b _08078F80 -	.align 2, 0 -_08078E3C: .4byte gPaletteFade -_08078E40: -	ldrh r0, [r6, 0x4] -	adds r0, 0x1 -	strh r0, [r6, 0x4] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x24 -	bgt _08078E50 -	b _08078FB6 -_08078E50: -	ldr r0, _08078E78 @ =sub_80792C8 -	movs r1, 0x3 -	bl CreateTask -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0x4 -	negs r1, r1 -	ldr r2, _08078E7C @ =0x00007fde -	str r2, [sp] -	movs r4, 0 -	str r4, [sp, 0x4] -	str r4, [sp, 0x8] -	movs r2, 0x1 -	movs r3, 0x10 -	bl sub_80717A8 -	strh r4, [r6, 0x4] -	b _08078F80 -	.align 2, 0 -_08078E78: .4byte sub_80792C8 -_08078E7C: .4byte 0x00007fde -_08078E80: -	movs r0, 0 -	bl sub_807185C -	adds r3, r0, 0 -	cmp r3, 0 -	beq _08078E8E -	b _08078FB6 -_08078E8E: -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0x4 -	negs r1, r1 -	ldr r2, _08078EA0 @ =0x00007fde -	str r2, [sp] -	str r3, [sp, 0x4] -	str r3, [sp, 0x8] -	b _08078F78 -	.align 2, 0 -_08078EA0: .4byte 0x00007fde -_08078EA4: -	ldrh r0, [r6, 0x4] -	adds r0, 0x1 -	strh r0, [r6, 0x4] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	bgt _08078EB4 -	b _08078FB6 -_08078EB4: -	movs r0, 0 -	strh r0, [r6, 0x4] -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0x4 -	negs r1, r1 -	ldr r2, _08078ED0 @ =0x00007fde -	str r2, [sp] -	movs r2, 0 -	str r2, [sp, 0x4] -	str r2, [sp, 0x8] -	movs r2, 0x1 -	movs r3, 0x10 -	b _08078F7C -	.align 2, 0 -_08078ED0: .4byte 0x00007fde -_08078ED4: -	movs r0, 0 -	bl sub_807185C -	adds r3, r0, 0 -	cmp r3, 0 -	bne _08078FB6 -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0x4 -	negs r1, r1 -	ldr r2, _08078EF4 @ =0x00007fde -	str r2, [sp] -	str r3, [sp, 0x4] -	str r3, [sp, 0x8] -	b _08078F78 -	.align 2, 0 -_08078EF4: .4byte 0x00007fde -_08078EF8: -	ldrh r0, [r6, 0x4] -	adds r0, 0x1 -	strh r0, [r6, 0x4] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x14 -	ble _08078FB6 -	movs r0, 0 -	strh r0, [r6, 0x4] -	movs r0, 0x80 -	lsls r0, 6 -	movs r1, 0x3 -	negs r1, r1 -	ldr r2, _08078F20 @ =0x00007fde -	str r2, [sp] -	movs r2, 0 -	str r2, [sp, 0x4] -	str r2, [sp, 0x8] -	movs r3, 0x10 -	b _08078F7C -	.align 2, 0 -_08078F20: .4byte 0x00007fde -_08078F24: -	movs r0, 0 -	bl sub_807185C -	adds r7, r0, 0 -	cmp r7, 0 -	bne _08078FB6 -	movs r0, 0x1 -	strh r0, [r6, 0xA] -	bl sub_80799F0 -	movs r4, 0x80 -	lsls r4, 9 -	lsls r4, r0 -	ldr r0, _08078F88 @ =0x00001fff -	orrs r4, r0 -	ldr r5, _08078F8C @ =0x00007fde -	adds r0, r4, 0 -	movs r1, 0x10 -	adds r2, r5, 0 -	bl BlendPalettes -	str r5, [sp] -	adds r0, r4, 0 -	movs r1, 0x1 -	movs r2, 0x10 -	movs r3, 0 -	bl BeginNormalPaletteFade -	movs r0, 0 -	bl ShowBg -	ldr r0, _08078F90 @ =gUnknown_8EAD5E8 -	ldr r1, _08078F94 @ =gPlttBufferUnfaded + 0x1A0 -	movs r2, 0x10 -	bl CpuSet -	movs r0, 0x80 -	lsls r0, 6 -	str r5, [sp] -	str r7, [sp, 0x4] -	str r7, [sp, 0x8] -	movs r1, 0x1 -_08078F78: -	movs r2, 0xF -	movs r3, 0 -_08078F7C: -	bl sub_80717A8 -_08078F80: -	ldrh r0, [r6, 0x2] -	adds r0, 0x1 -	strh r0, [r6, 0x2] -	b _08078FB6 -	.align 2, 0 -_08078F88: .4byte 0x00001fff -_08078F8C: .4byte 0x00007fde -_08078F90: .4byte gUnknown_8EAD5E8 -_08078F94: .4byte gPlttBufferUnfaded + 0x1A0 -_08078F98: -	movs r0, 0 -	bl sub_807185C -	cmp r0, 0 -	bne _08078FB6 -	ldr r0, _08078FC0 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _08078FB6 -	adds r0, r6, 0 -	movs r1, 0x3 -	bl sub_8078C90 -_08078FB6: -	add sp, 0xC -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08078FC0: .4byte gPaletteFade -	thumb_func_end sub_8078DA4 - -	thumb_func_start sub_8078FC4 -sub_8078FC4: @ 8078FC4 -	push {r4,lr} -	adds r4, r0, 0 -	movs r1, 0x2 -	ldrsh r0, [r4, r1] -	cmp r0, 0 -	beq _08078FD6 -	cmp r0, 0x1 -	beq _08079004 -	b _08079094 -_08078FD6: -	movs r0, 0x1 -	bl HelpSystem_SetSomeVariable2 -	ldr r0, _0807902C @ =sub_807941C -	movs r1, 0 -	bl CreateTask -	ldr r0, _08079030 @ =sub_8079840 -	movs r1, 0x5 -	bl CreateTask -	bl sub_80790A0 -	bl sub_8079A40 -	lsls r0, 24 -	lsrs r0, 24 -	strh r0, [r4, 0xC] -	bl sub_812B484 -	ldrh r0, [r4, 0x2] -	adds r0, 0x1 -	strh r0, [r4, 0x2] -_08079004: -	ldr r2, _08079034 @ =gMain -	ldrh r1, [r2, 0x2C] -	movs r0, 0x46 -	ands r0, r1 -	cmp r0, 0x46 -	bne _08079040 -	ldrb r0, [r4, 0xC] -	bl sub_8079A88 -	ldr r0, _08079038 @ =sub_8078C24 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -	ldr r0, _0807903C @ =sub_80796CC -	bl SetMainCallback2 -	b _08079094 -	.align 2, 0 -_0807902C: .4byte sub_807941C -_08079030: .4byte sub_8079840 -_08079034: .4byte gMain -_08079038: .4byte sub_8078C24 -_0807903C: .4byte sub_80796CC -_08079040: -	movs r0, 0x6 -	ands r0, r1 -	cmp r0, 0x6 -	bne _0807906C -	ldrb r0, [r4, 0xC] -	bl sub_8079A88 -	ldr r0, _08079064 @ =sub_8078C24 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -	ldr r0, _08079068 @ =sub_80796E8 -	bl SetMainCallback2 -	b _08079094 -	.align 2, 0 -_08079064: .4byte sub_8078C24 -_08079068: .4byte sub_80796E8 -_0807906C: -	ldrh r1, [r2, 0x2E] -	movs r0, 0x9 -	ands r0, r1 -	cmp r0, 0 -	beq _08079080 -	adds r0, r4, 0 -	movs r1, 0x5 -	bl sub_8078C90 -	b _08079094 -_08079080: -	ldr r0, _0807909C @ =sub_8078BEC -	bl FuncIsActiveTask -	lsls r0, 24 -	cmp r0, 0 -	bne _08079094 -	adds r0, r4, 0 -	movs r1, 0x4 -	bl sub_8078C90 -_08079094: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0807909C: .4byte sub_8078BEC -	thumb_func_end sub_8078FC4 - -	thumb_func_start sub_80790A0 -sub_80790A0: @ 80790A0 -	push {lr} -	movs r1, 0x80 -	lsls r1, 8 -	movs r0, 0 -	bl SetGpuRegBits -	ldr r1, _080790C8 @ =0x00003f1f -	movs r0, 0x4A -	bl SetGpuReg -	movs r0, 0x50 -	movs r1, 0x81 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0xD -	bl SetGpuReg -	pop {r0} -	bx r0 -	.align 2, 0 -_080790C8: .4byte 0x00003f1f -	thumb_func_end sub_80790A0 - -	thumb_func_start sub_80790CC -sub_80790CC: @ 80790CC -	push {r4,r5,lr} -	sub sp, 0x4 -	adds r4, r0, 0 -	movs r1, 0x2 -	ldrsh r0, [r4, r1] -	cmp r0, 0x4 -	bhi _080791B0 -	lsls r0, 2 -	ldr r1, _080790E4 @ =_080790E8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_080790E4: .4byte _080790E8 -	.align 2, 0 -_080790E8: -	.4byte _080790FC -	.4byte _08079104 -	.4byte _0807913C -	.4byte _08079170 -	.4byte _08079198 -_080790FC: -	ldrb r0, [r4, 0xC] -	bl sub_8079A88 -	b _0807918C -_08079104: -	ldr r0, _08079138 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _080791B0 -	ldrb r0, [r4, 0xC] -	bl sub_8079AA8 -	adds r5, r0, 0 -	cmp r5, 0 -	bne _080791B0 -	movs r0, 0xA -	bl FadeOutMapMusic -	movs r0, 0x1 -	negs r0, r0 -	str r5, [sp] -	movs r1, 0x3 -	movs r2, 0 -	movs r3, 0x10 -	bl BeginNormalPaletteFade -	bl sub_8079528 -	b _0807918C -	.align 2, 0 -_08079138: .4byte gPaletteFade -_0807913C: -	bl IsNotWaitingForBGMStop -	lsls r0, 24 -	cmp r0, 0 -	beq _080791B0 -	ldr r0, _08079168 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0 -	bne _080791B0 -	ldr r0, _0807916C @ =sub_807941C -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -	strh r5, [r4, 0x4] -	b _0807918C -	.align 2, 0 -_08079168: .4byte gPaletteFade -_0807916C: .4byte sub_807941C -_08079170: -	ldrh r0, [r4, 0x4] -	adds r0, 0x1 -	strh r0, [r4, 0x4] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x13 -	ble _080791B0 -	ldr r0, _08079194 @ =sub_807941C -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -_0807918C: -	ldrh r0, [r4, 0x2] -	adds r0, 0x1 -	strh r0, [r4, 0x2] -	b _080791B0 -	.align 2, 0 -_08079194: .4byte sub_807941C -_08079198: -	bl sub_812B478 -	ldr r0, _080791B8 @ =sub_8078C24 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -	ldr r0, _080791BC @ =sub_80EC864 -	bl SetMainCallback2 -_080791B0: -	add sp, 0x4 -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_080791B8: .4byte sub_8078C24 -_080791BC: .4byte sub_80EC864 -	thumb_func_end sub_80790CC - -	thumb_func_start sub_80791C0 -sub_80791C0: @ 80791C0 -	push {r4,r5,lr} -	sub sp, 0x4 -	adds r4, r0, 0 -	movs r1, 0x2 -	ldrsh r0, [r4, r1] -	cmp r0, 0x1 -	beq _08079204 -	cmp r0, 0x1 -	bgt _080791D8 -	cmp r0, 0 -	beq _080791DE -	b _080792A6 -_080791D8: -	cmp r0, 0x2 -	beq _08079248 -	b _080792A6 -_080791DE: -	ldr r0, _08079200 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0 -	bne _080792A6 -	.ifdef FIRERED -	movs r0, 0x6 @ CHARIZARD -	.else -	movs r0, 0x3 @ VENUSAUR -	.endif -	movs r1, 0 -	bl PlayCry1 -	ldrb r0, [r4, 0xC] -	bl sub_8079A88 -	strh r5, [r4, 0x4] -	b _08079238 -	.align 2, 0 -_08079200: .4byte gPaletteFade -_08079204: -	ldrh r1, [r4, 0x4] -	movs r2, 0x4 -	ldrsh r0, [r4, r2] -	cmp r0, 0x59 -	bgt _08079214 -	adds r0, r1, 0x1 -	strh r0, [r4, 0x4] -	b _080792A6 -_08079214: -	ldrb r0, [r4, 0xC] -	bl sub_8079AA8 -	cmp r0, 0 -	bne _080792A6 -	ldr r0, _08079240 @ =0x0fffffff -	ldr r1, _08079244 @ =0x00007fff -	str r1, [sp] -	movs r1, 0 -	movs r2, 0 -	movs r3, 0x10 -	bl BeginNormalPaletteFade -	bl sub_8079528 -	movs r0, 0x4 -	bl FadeOutBGM -_08079238: -	ldrh r0, [r4, 0x2] -	adds r0, 0x1 -	strh r0, [r4, 0x2] -	b _080792A6 -	.align 2, 0 -_08079240: .4byte 0x0fffffff -_08079244: .4byte 0x00007fff -_08079248: -	ldr r0, _080792B0 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _080792A6 -	bl SeedRngAndSetTrainerId -	bl SetSaveBlocksPointers -	bl ResetMenuAndMonGlobals -	bl Save_ResetSaveCounters -	movs r0, 0 -	bl Save_LoadGameData -	ldr r0, _080792B4 @ =gSaveFileStatus -	ldrh r0, [r0] -	cmp r0, 0 -	beq _08079276 -	cmp r0, 0x2 -	bne _0807927A -_08079276: -	bl Sav2_ClearSetDefault -_0807927A: -	ldr r0, _080792B8 @ =gSaveBlock2Ptr -	ldr r0, [r0] -	ldrb r0, [r0, 0x15] -	lsls r0, 31 -	lsrs r0, 31 -	bl SetPokemonCryStereo -	ldr r0, _080792BC @ =gHeap -	movs r1, 0xE0 -	lsls r1, 9 -	bl InitHeap -	ldr r0, _080792C0 @ =sub_800C300 -	bl SetMainCallback2 -	ldr r0, _080792C4 @ =sub_8078C24 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	bl DestroyTask -_080792A6: -	add sp, 0x4 -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_080792B0: .4byte gPaletteFade -_080792B4: .4byte gSaveFileStatus -_080792B8: .4byte gSaveBlock2Ptr -_080792BC: .4byte gHeap -_080792C0: .4byte sub_800C300 -_080792C4: .4byte sub_8078C24 -	thumb_func_end sub_80791C0 - -	thumb_func_start sub_80792C8 -sub_80792C8: @ 80792C8 -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r5, r0, 24 -	lsls r0, r5, 2 -	adds r0, r5 -	lsls r0, 3 -	ldr r1, _080792EC @ =gTasks+0x8 -	adds r4, r0, r1 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0x5 -	bls _080792E2 -	b _08079414 -_080792E2: -	lsls r0, 2 -	ldr r1, _080792F0 @ =_080792F4 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_080792EC: .4byte gTasks+0x8 -_080792F0: .4byte _080792F4 -	.align 2, 0 -_080792F4: -	.4byte _0807930C -	.4byte _08079344 -	.4byte _08079368 -	.4byte _0807937C -	.4byte _080793BC -	.4byte _08079404 -_0807930C: -	movs r1, 0x80 -	lsls r1, 6 -	movs r0, 0 -	bl SetGpuRegBits -	movs r0, 0x48 -	movs r1, 0x3F -	bl SetGpuReg -	movs r0, 0x4A -	movs r1, 0x37 -	bl SetGpuReg -	movs r0, 0x44 -	movs r1, 0xA0 -	bl SetGpuReg -	movs r0, 0x40 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x80 -	lsls r0, 7 -	movs r1, 0 -	movs r2, 0 -	bl BlendPalettes -	b _080793AA -_08079344: -	movs r1, 0xC0 -	lsls r1, 1 -	adds r0, r1, 0 -	ldrh r1, [r4, 0x2] -	adds r0, r1 -	strh r0, [r4, 0x2] -	lsls r0, 16 -	asrs r0, 20 -	strh r0, [r4, 0x4] -	cmp r0, 0xEF -	ble _08079364 -	movs r0, 0xF0 -	strh r0, [r4, 0x4] -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -_08079364: -	ldrh r1, [r4, 0x4] -	b _080793F6 -_08079368: -	ldrh r0, [r4, 0x6] -	adds r0, 0x1 -	strh r0, [r4, 0x6] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x9 -	ble _08079414 -	movs r0, 0 -	strh r0, [r4, 0x6] -	b _080793AA -_0807937C: -	movs r0, 0x4A -	movs r1, 0x3B -	bl SetGpuReg -	ldr r1, _080793B4 @ =0x0000f0f0 -	movs r0, 0x40 -	bl SetGpuReg -	ldr r1, _080793B8 @ =0xffff1000 -	movs r0, 0x2 -	movs r2, 0 -	bl ChangeBgX -	movs r0, 0x80 -	lsls r0, 8 -	movs r1, 0 -	movs r2, 0 -	bl BlendPalettes -	movs r1, 0xF0 -	lsls r1, 4 -	adds r0, r1, 0 -	strh r0, [r4, 0x2] -_080793AA: -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	b _08079414 -	.align 2, 0 -_080793B4: .4byte 0x0000f0f0 -_080793B8: .4byte 0xffff1000 -_080793BC: -	ldr r1, _08079400 @ =0xfffffe80 -	adds r0, r1, 0 -	ldrh r1, [r4, 0x2] -	adds r0, r1 -	strh r0, [r4, 0x2] -	lsls r0, 16 -	asrs r0, 20 -	strh r0, [r4, 0x4] -	cmp r0, 0 -	bgt _080793DA -	movs r0, 0 -	strh r0, [r4, 0x4] -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -_080793DA: -	movs r0, 0x4 -	ldrsh r1, [r4, r0] -	negs r1, r1 -	lsls r1, 8 -	movs r0, 0x2 -	movs r2, 0 -	bl ChangeBgX -	ldrh r1, [r4, 0x4] -	lsls r1, 8 -	movs r0, 0xF0 -	orrs r1, r0 -	lsls r1, 16 -	lsrs r1, 16 -_080793F6: -	movs r0, 0x40 -	bl SetGpuReg -	b _08079414 -	.align 2, 0 -_08079400: .4byte 0xfffffe80 -_08079404: -	movs r1, 0x80 -	lsls r1, 6 -	movs r0, 0 -	bl ClearGpuRegBits -	adds r0, r5, 0 -	bl DestroyTask -_08079414: -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end sub_80792C8 - -	thumb_func_start sub_807941C -sub_807941C: @ 807941C -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r2, r0, 24 -	lsls r0, r2, 2 -	adds r0, r2 -	lsls r0, 3 -	ldr r1, _08079460 @ =gTasks+0x8 -	adds r5, r0, r1 -	movs r1, 0x1E -	ldrsh r0, [r5, r1] -	cmp r0, 0 -	beq _08079444 -	ldr r0, _08079464 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	beq _08079444 -	movs r0, 0x1 -	strh r0, [r5, 0x1C] -_08079444: -	movs r3, 0x1C -	ldrsh r0, [r5, r3] -	cmp r0, 0 -	beq _08079468 -	ldr r0, _08079464 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _08079468 -	adds r0, r2, 0 -	bl DestroyTask -	b _08079510 -	.align 2, 0 -_08079460: .4byte gTasks+0x8 -_08079464: .4byte gPaletteFade -_08079468: -	movs r1, 0x2 -	ldrsh r0, [r5, r1] -	ldrh r2, [r5, 0x2] -	cmp r0, 0 -	bne _08079476 -	movs r0, 0x3C -	b _08079478 -_08079476: -	movs r0, 0x1E -_08079478: -	strh r0, [r5, 0x4] -	ldrh r0, [r5] -	adds r0, 0x1 -	strh r0, [r5] -	lsls r0, 16 -	asrs r0, 16 -	movs r3, 0x4 -	ldrsh r1, [r5, r3] -	cmp r0, r1 -	blt _08079510 -	movs r0, 0 -	strh r0, [r5] -	movs r0, 0x1 -	eors r0, r2 -	strh r0, [r5, 0x2] -	lsls r0, 16 -	cmp r0, 0 -	beq _080794CC -	ldr r2, _080794C0 @ =gPlttBufferUnfaded -	ldr r4, _080794C4 @ =gUnknown_8EAE094 -	ldr r1, _080794C8 @ =gPlttBufferFaded -	movs r0, 0xF1 -	lsls r0, 1 -	adds r1, r0 -	adds r2, r0 -	movs r3, 0x4 -_080794AC: -	ldrh r0, [r4, 0xC] -	strh r0, [r2] -	ldrh r0, [r4, 0xC] -	strh r0, [r1] -	adds r1, 0x2 -	adds r2, 0x2 -	subs r3, 0x1 -	cmp r3, 0 -	bge _080794AC -	b _080794F2 -	.align 2, 0 -_080794C0: .4byte gPlttBufferUnfaded -_080794C4: .4byte gUnknown_8EAE094 -_080794C8: .4byte gPlttBufferFaded -_080794CC: -	movs r3, 0 -	ldr r2, _08079518 @ =gPlttBufferUnfaded -	ldr r0, _0807951C @ =gUnknown_8EAE094 -	ldr r1, _08079520 @ =gPlttBufferFaded -	adds r4, r0, 0x2 -	movs r0, 0xF1 -	lsls r0, 1 -	adds r1, r0 -	adds r2, r0 -_080794DE: -	ldrh r0, [r4] -	strh r0, [r2] -	ldrh r0, [r4] -	strh r0, [r1] -	adds r4, 0x2 -	adds r1, 0x2 -	adds r2, 0x2 -	adds r3, 0x1 -	cmp r3, 0x4 -	ble _080794DE -_080794F2: -	movs r1, 0x1C -	ldrsh r0, [r5, r1] -	cmp r0, 0 -	beq _08079510 -	movs r0, 0x80 -	lsls r0, 8 -	ldr r2, _08079524 @ =gPaletteFade -	ldrh r1, [r2, 0x4] -	lsls r1, 21 -	lsrs r1, 27 -	ldrh r2, [r2, 0x6] -	lsls r2, 17 -	lsrs r2, 17 -	bl BlendPalettes -_08079510: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_08079518: .4byte gPlttBufferUnfaded -_0807951C: .4byte gUnknown_8EAE094 -_08079520: .4byte gPlttBufferFaded -_08079524: .4byte gPaletteFade -	thumb_func_end sub_807941C - -	thumb_func_start sub_8079528 -sub_8079528: @ 8079528 -	push {lr} -	ldr r0, _08079548 @ =sub_807941C -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0807954C @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	movs r0, 0x1 -	strh r0, [r1, 0x26] -	pop {r0} -	bx r0 -	.align 2, 0 -_08079548: .4byte sub_807941C -_0807954C: .4byte gTasks -	thumb_func_end sub_8079528 - -	thumb_func_start sub_8079550 -sub_8079550: @ 8079550 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	lsls r5, r0, 16 -	asrs r4, r5, 16 -	cmp r4, 0 -	blt _08079574 -	ldr r3, _08079618 @ =gScanlineEffectRegBuffers -	lsls r2, r4, 1 -	ldr r0, _0807961C @ =gScanlineEffect -	ldrb r1, [r0, 0x14] -	lsls r0, r1, 4 -	subs r0, r1 -	lsls r0, 7 -	adds r2, r0 -	adds r2, r3 -	movs r0, 0x10 -	strh r0, [r2] -_08079574: -	movs r3, 0 -	mov r8, r5 -	adds r6, r4, 0 -	ldr r0, _08079618 @ =gScanlineEffectRegBuffers -	mov r12, r0 -	ldr r7, _0807961C @ =gScanlineEffect -	movs r5, 0xF -	lsls r2, r6, 1 -	adds r4, r2, 0 -_08079586: -	adds r0, r6, r3 -	cmp r0, 0 -	blt _0807959A -	ldrb r1, [r7, 0x14] -	lsls r0, r1, 4 -	subs r0, r1 -	lsls r0, 7 -	adds r0, r4, r0 -	add r0, r12 -	strh r5, [r0] -_0807959A: -	subs r0, r6, r3 -	cmp r0, 0 -	blt _080795AE -	ldrb r1, [r7, 0x14] -	lsls r0, r1, 4 -	subs r0, r1 -	lsls r0, 7 -	adds r0, r2, r0 -	add r0, r12 -	strh r5, [r0] -_080795AE: -	subs r5, 0x1 -	subs r2, 0x2 -	adds r4, 0x2 -	adds r3, 0x1 -	cmp r3, 0xF -	ble _08079586 -	mov r1, r8 -	asrs r0, r1, 16 -	adds r3, r0, 0 -	adds r3, 0x10 -	cmp r3, 0x9F -	bgt _080795E6 -	ldr r6, _08079618 @ =gScanlineEffectRegBuffers -	ldr r5, _0807961C @ =gScanlineEffect -	movs r4, 0 -_080795CC: -	cmp r3, 0 -	blt _080795E0 -	lsls r2, r3, 1 -	ldrb r1, [r5, 0x14] -	lsls r0, r1, 4 -	subs r0, r1 -	lsls r0, 7 -	adds r2, r0 -	adds r2, r6 -	strh r4, [r2] -_080795E0: -	adds r3, 0x1 -	cmp r3, 0x9F -	ble _080795CC -_080795E6: -	mov r1, r8 -	asrs r0, r1, 16 -	adds r3, r0, 0 -	subs r3, 0x10 -	cmp r3, 0 -	blt _0807960E -	ldr r6, _08079618 @ =gScanlineEffectRegBuffers -	ldr r5, _0807961C @ =gScanlineEffect -	movs r4, 0 -_080795F8: -	lsls r2, r3, 1 -	ldrb r1, [r5, 0x14] -	lsls r0, r1, 4 -	subs r0, r1 -	lsls r0, 7 -	adds r2, r0 -	adds r2, r6 -	strh r4, [r2] -	subs r3, 0x1 -	cmp r3, 0 -	bge _080795F8 -_0807960E: -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08079618: .4byte gScanlineEffectRegBuffers -_0807961C: .4byte gScanlineEffect -	thumb_func_end sub_8079550 - -	thumb_func_start sub_8079620 -sub_8079620: @ 8079620 -	push {lr} -	ldr r1, _08079644 @ =gScanlineEffect -	ldrb r0, [r1, 0x15] -	cmp r0, 0 -	beq _0807962E -	movs r0, 0x3 -	strb r0, [r1, 0x15] -_0807962E: -	movs r0, 0x50 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0 -	bl SetGpuReg -	pop {r0} -	bx r0 -	.align 2, 0 -_08079644: .4byte gScanlineEffect -	thumb_func_end sub_8079620 - -	thumb_func_start sub_8079648 -sub_8079648: @ 8079648 -	push {r4,lr} -	ldr r0, _080796BC @ =sub_80792C8 -	bl FindTaskIdByFunc -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0xFF -	beq _0807965C -	bl DestroyTask -_0807965C: -	bl sub_8071898 -	bl ResetPaletteFadeControl -	ldr r0, _080796C0 @ =gUnknown_8EAB6C4 -	movs r2, 0xD0 -	lsls r2, 1 -	movs r1, 0 -	bl LoadPalette -	ldr r0, _080796C4 @ =gUnknown_8EAD5E8 -	movs r1, 0xD0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r4, _080796C8 @ =gUnknown_8EAE094 -	adds r0, r4, 0 -	movs r1, 0xF0 -	movs r2, 0x20 -	bl LoadPalette -	adds r0, r4, 0 -	movs r1, 0xE0 -	movs r2, 0x20 -	bl LoadPalette -	bl ResetBgPositions -	movs r1, 0xE0 -	lsls r1, 8 -	movs r0, 0 -	bl ClearGpuRegBits -	movs r0, 0x1 -	bl ShowBg -	movs r0, 0x2 -	bl ShowBg -	movs r0, 0 -	bl ShowBg -	movs r0, 0x3 -	bl ShowBg -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_080796BC: .4byte sub_80792C8 -_080796C0: .4byte gUnknown_8EAB6C4 -_080796C4: .4byte gUnknown_8EAD5E8 -_080796C8: .4byte gUnknown_8EAE094 -	thumb_func_end sub_8079648 - -	thumb_func_start sub_80796CC -sub_80796CC: @ 80796CC -	push {lr} -	bl UpdatePaletteFade -	lsls r0, 24 -	cmp r0, 0 -	bne _080796DE -	ldr r0, _080796E4 @ =sub_80F55A0 -	bl SetMainCallback2 -_080796DE: -	pop {r0} -	bx r0 -	.align 2, 0 -_080796E4: .4byte sub_80F55A0 -	thumb_func_end sub_80796CC - -	thumb_func_start sub_80796E8 -sub_80796E8: @ 80796E8 -	push {lr} -	bl UpdatePaletteFade -	lsls r0, 24 -	cmp r0, 0 -	bne _080796FE -	bl m4aMPlayAllStop -	ldr r0, _08079704 @ =mb_berry_fix_serve -	bl SetMainCallback2 -_080796FE: -	pop {r0} -	bx r0 -	.align 2, 0 -_08079704: .4byte mb_berry_fix_serve -	thumb_func_end sub_80796E8 - -	thumb_func_start sub_8079708 -sub_8079708: @ 8079708 -	push {r4,r5,lr} -	movs r5, 0 -	ldr r4, _08079728 @ =gUnknown_83BFB9C -_0807970E: -	adds r0, r4, 0 -	bl LoadCompressedSpriteSheet -	adds r4, 0x8 -	adds r5, 0x1 -	cmp r5, 0x3 -	bls _0807970E -	ldr r0, _0807972C @ =gUnknown_83BFBBC -	bl LoadSpritePalettes -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_08079728: .4byte gUnknown_83BFB9C -_0807972C: .4byte gUnknown_83BFBBC -	thumb_func_end sub_8079708 - -	thumb_func_start sub_8079730 -sub_8079730: @ 8079730 -	push {r4,lr} -	adds r4, r0, 0 -	adds r2, r4, 0 -	adds r2, 0x2E -	ldrh r0, [r4, 0x2E] -	ldrh r1, [r2, 0x2] -	subs r0, r1 -	strh r0, [r4, 0x2E] -	lsls r0, 16 -	asrs r0, 20 -	strh r0, [r4, 0x20] -	movs r1, 0x8 -	negs r1, r1 -	cmp r0, r1 -	blt _08079774 -	ldrh r0, [r2, 0x6] -	ldrh r1, [r2, 0x4] -	adds r0, r1 -	strh r0, [r2, 0x4] -	lsls r0, 16 -	asrs r0, 20 -	strh r0, [r4, 0x22] -	subs r0, 0x10 -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0xB8 -	bhi _08079774 -	adds r0, r4, 0 -	adds r0, 0x3F -	ldrb r1, [r0] -	movs r0, 0x10 -	ands r0, r1 -	cmp r0, 0 -	beq _0807977C -_08079774: -	adds r0, r4, 0 -	bl DestroySprite -	b _080797A6 -_0807977C: -	ldrh r1, [r2, 0xE] -	movs r3, 0xE -	ldrsh r0, [r2, r3] -	cmp r0, 0 -	beq _080797A6 -	subs r0, r1, 0x1 -	strh r0, [r2, 0xE] -	lsls r0, 16 -	cmp r0, 0 -	bne _080797A6 -	adds r0, r4, 0 -	movs r1, 0 -	bl StartSpriteAnim -	adds r2, r4, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -_080797A6: -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end sub_8079730 - -	thumb_func_start sub_80797AC -sub_80797AC: @ 80797AC -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	adds r4, r0, 0 -	adds r5, r1, 0 -	mov r8, r2 -	adds r7, r3, 0 -	ldr r0, [sp, 0x18] -	cmp r0, 0 -	beq _080797C8 -	ldr r0, _080797C4 @ =gUnknown_83BFB04 -	b _080797CA -	.align 2, 0 -_080797C4: .4byte gUnknown_83BFB04 -_080797C8: -	ldr r0, _08079828 @ =gUnknown_83BFB1C -_080797CA: -	lsls r1, r4, 16 -	asrs r1, 16 -	lsls r2, r5, 16 -	asrs r2, 16 -	movs r3, 0 -	bl CreateSprite -	lsls r0, 24 -	lsrs r1, r0, 24 -	cmp r1, 0x40 -	beq _08079834 -	ldr r0, _0807982C @ =gSprites -	mov r12, r0 -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r6, r0, 2 -	mov r1, r12 -	adds r2, r6, r1 -	lsls r0, r4, 4 -	movs r1, 0 -	strh r0, [r2, 0x2E] -	mov r0, r8 -	strh r0, [r2, 0x30] -	lsls r0, r5, 4 -	strh r0, [r2, 0x32] -	strh r7, [r2, 0x34] -	strh r1, [r2, 0x36] -	mov r3, r8 -	muls r3, r7 -	adds r0, r3, 0 -	cmp r3, 0 -	bge _0807980C -	adds r0, 0xF -_0807980C: -	asrs r0, 4 -	lsls r0, 4 -	subs r0, r3, r0 -	strh r0, [r2, 0x38] -	mov r1, sp -	ldrh r1, [r1, 0x18] -	strh r1, [r2, 0x3A] -	mov r0, r12 -	adds r0, 0x1C -	adds r0, r6, r0 -	ldr r1, _08079830 @ =sub_8079730 -	str r1, [r0] -	movs r0, 0x1 -	b _08079836 -	.align 2, 0 -_08079828: .4byte gUnknown_83BFB1C -_0807982C: .4byte gSprites -_08079830: .4byte sub_8079730 -_08079834: -	movs r0, 0 -_08079836: -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_80797AC - -	thumb_func_start sub_8079840 -sub_8079840: @ 8079840 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x4 -	lsls r0, 24 -	lsrs r5, r0, 24 -	lsls r0, r5, 2 -	adds r0, r5 -	lsls r0, 3 -	ldr r1, _08079868 @ =gTasks+0x8 -	adds r6, r0, r1 -	movs r1, 0 -	ldrsh r0, [r6, r1] -	cmp r0, 0 -	beq _0807986C -	cmp r0, 0x1 -	beq _08079884 -	b _0807998A -	.align 2, 0 -_08079868: .4byte gTasks+0x8 -_0807986C: -	ldr r2, _08079880 @ =0x00007878 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_807999C -	ldrh r0, [r6] -	adds r0, 0x1 -	strh r0, [r6] -	b _0807998A -	.align 2, 0 -_08079880: .4byte 0x00007878 -_08079884: -	ldrh r0, [r6, 0x2] -	adds r0, 0x1 -	strh r0, [r6, 0x2] -	lsls r0, 16 -	asrs r0, 16 -	movs r2, 0x4 -	ldrsh r1, [r6, r2] -	cmp r0, r1 -	blt _0807998A -	movs r0, 0 -	strh r0, [r6, 0x2] -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	movs r0, 0x12 -	strh r0, [r6, 0x4] -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r0 -	lsrs r1, 16 -	subs r1, 0x2 -	mov r8, r1 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	movs r1, 0xE0 -	lsls r1, 11 -	ands r1, r0 -	lsrs r1, 16 -	adds r7, r1, 0 -	subs r7, 0x10 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x3 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r0, 16 -	adds r0, 0x74 -	mov r9, r0 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0xF0 -	bl __umodsi3 -	lsls r0, 16 -	lsrs r4, r0, 16 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	movs r2, 0 -	lsls r0, 16 -	movs r1, 0xF0 -	lsls r1, 12 -	ands r1, r0 -	lsrs r1, 16 -	cmp r1, 0x7 -	bls _0807991C -	movs r2, 0x1 -_0807991C: -	str r2, [sp] -	adds r0, r4, 0 -	mov r1, r9 -	mov r2, r8 -	adds r3, r7, 0 -	bl sub_80797AC -	movs r4, 0 -_0807992C: -	ldr r1, _08079998 @ =gUnknown_83BFBD4 -	adds r1, r4, r1 -	movs r2, 0xA -	ldrsh r0, [r6, r2] -	ldrb r1, [r1] -	adds r0, r1 -	movs r1, 0x1 -	str r1, [sp] -	mov r1, r9 -	mov r2, r8 -	adds r3, r7, 0 -	bl sub_80797AC -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r0 -	lsrs r1, 16 -	subs r1, 0x2 -	mov r8, r1 -	adds r0, r5, 0 -	movs r1, 0x3 -	bl sub_80799B4 -	lsls r0, 16 -	movs r1, 0xE0 -	lsls r1, 11 -	ands r1, r0 -	lsrs r1, 16 -	adds r7, r1, 0 -	subs r7, 0x10 -	adds r4, 0x1 -	cmp r4, 0xE -	ble _0807992C -	ldrh r0, [r6, 0xA] -	adds r0, 0x1 -	strh r0, [r6, 0xA] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x3 -	ble _0807998A -	movs r0, 0 -	strh r0, [r6, 0xA] -_0807998A: -	add sp, 0x4 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08079998: .4byte gUnknown_83BFBD4 -	thumb_func_end sub_8079840 - -	thumb_func_start sub_807999C -sub_807999C: @ 807999C -	push {lr} -	lsls r0, 24 -	lsrs r0, 24 -	lsls r1, 24 -	lsrs r1, 24 -	lsls r2, 16 -	lsrs r2, 16 -	bl SetWordTaskArg -	pop {r0} -	bx r0 -	thumb_func_end sub_807999C - -	thumb_func_start sub_80799B4 -sub_80799B4: @ 80799B4 -	push {r4-r6,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r5, 24 -	lsrs r5, 24 -	adds r0, r4, 0 -	adds r1, r5, 0 -	bl GetWordTaskArg -	adds r6, r0, 0 -	ldr r0, _080799E8 @ =0x41c64e6d -	muls r0, r6 -	ldr r1, _080799EC @ =0x00006073 -	adds r6, r0, r1 -	adds r0, r4, 0 -	adds r1, r5, 0 -	adds r2, r6, 0 -	bl SetWordTaskArg -	lsrs r0, r6, 16 -	pop {r4-r6} -	pop {r1} -	bx r1 -	.align 2, 0 -_080799E8: .4byte 0x41c64e6d -_080799EC: .4byte 0x00006073 -	thumb_func_end sub_80799B4 - -	thumb_func_start sub_80799F0 -sub_80799F0: @ 80799F0 -	push {lr} -	ldr r0, _08079A0C @ =gUnknown_83BFB3C -	movs r1, 0x18 -	movs r2, 0x90 -	movs r3, 0 -	bl CreateSprite -	movs r0, 0x2 -	bl IndexOfSpritePaletteTag -	lsls r0, 24 -	lsrs r0, 24 -	pop {r1} -	bx r1 -	.align 2, 0 -_08079A0C: .4byte gUnknown_83BFB3C -	thumb_func_end sub_80799F0 - -	thumb_func_start sub_8079A10 -sub_8079A10: @ 8079A10 -	push {lr} -	cmp r0, 0 -	beq _08079A38 -	movs r0, 0x2 -	bl IndexOfSpritePaletteTag -	adds r1, r0, 0 -	lsls r1, 24 -	ldr r0, _08079A34 @ =gUnknown_8EAE488 -	lsrs r1, 4 -	movs r2, 0x80 -	lsls r2, 17 -	adds r1, r2 -	lsrs r1, 16 -	movs r2, 0x20 -	bl LoadPalette -	b _08079A3C -	.align 2, 0 -_08079A34: .4byte gUnknown_8EAE488 -_08079A38: -	bl sub_80799F0 -_08079A3C: -	pop {r0} -	bx r0 -	thumb_func_end sub_8079A10 - -	thumb_func_start sub_8079A40 -sub_8079A40: @ 8079A40 -	push {r4,lr} -	ldr r0, _08079A7C @ =gUnknown_83BFB5C -	movs r1, 0x20 -	negs r1, r1 -	movs r2, 0x1B -	movs r3, 0x1 -	bl CreateSprite -	lsls r0, 24 -	lsrs r1, r0, 24 -	adds r4, r1, 0 -	cmp r1, 0x40 -	beq _08079A74 -	ldr r3, _08079A80 @ =gSprites -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r3, 0 -	adds r1, 0x1C -	adds r1, r0, r1 -	ldr r2, _08079A84 @ =sub_8079AD8 -	str r2, [r1] -	adds r0, r3 -	movs r1, 0x87 -	lsls r1, 2 -	strh r1, [r0, 0x30] -_08079A74: -	adds r0, r4, 0 -	pop {r4} -	pop {r1} -	bx r1 -	.align 2, 0 -_08079A7C: .4byte gUnknown_83BFB5C -_08079A80: .4byte gSprites -_08079A84: .4byte sub_8079AD8 -	thumb_func_end sub_8079A40 - -	thumb_func_start sub_8079A88 -sub_8079A88: @ 8079A88 -	push {lr} -	lsls r0, 24 -	lsrs r2, r0, 24 -	cmp r2, 0x40 -	beq _08079AA0 -	ldr r0, _08079AA4 @ =gSprites -	lsls r1, r2, 4 -	adds r1, r2 -	lsls r1, 2 -	adds r1, r0 -	movs r0, 0x1 -	strh r0, [r1, 0x32] -_08079AA0: -	pop {r0} -	bx r0 -	.align 2, 0 -_08079AA4: .4byte gSprites -	thumb_func_end sub_8079A88 - -	thumb_func_start sub_8079AA8 -sub_8079AA8: @ 8079AA8 -	push {lr} -	lsls r0, 24 -	lsrs r2, r0, 24 -	cmp r2, 0x40 -	bne _08079AB6 -	movs r0, 0 -	b _08079ACE -_08079AB6: -	ldr r1, _08079AD4 @ =gSprites -	lsls r0, r2, 4 -	adds r0, r2 -	lsls r0, 2 -	adds r0, r1 -	movs r2, 0x2E -	ldrsh r1, [r0, r2] -	movs r0, 0x2 -	eors r1, r0 -	negs r0, r1 -	orrs r0, r1 -	lsrs r0, 31 -_08079ACE: -	pop {r1} -	bx r1 -	.align 2, 0 -_08079AD4: .4byte gSprites -	thumb_func_end sub_8079AA8 - -	thumb_func_start sub_8079AD8 -sub_8079AD8: @ 8079AD8 -	push {lr} -	adds r2, r0, 0 -	movs r1, 0x2E -	ldrsh r0, [r2, r1] -	cmp r0, 0x1 -	beq _08079B24 -	cmp r0, 0x1 -	bgt _08079B74 -	cmp r0, 0 -	bne _08079B74 -	movs r1, 0x32 -	ldrsh r0, [r2, r1] -	cmp r0, 0 -	beq _08079B04 -	adds r3, r2, 0 -	adds r3, 0x3E -	ldrb r0, [r3] -	movs r1, 0x4 -	orrs r0, r1 -	strb r0, [r3] -	movs r0, 0x2 -	strh r0, [r2, 0x2E] -_08079B04: -	ldrh r0, [r2, 0x30] -	subs r0, 0x1 -	strh r0, [r2, 0x30] -	lsls r0, 16 -	cmp r0, 0 -	bne _08079B74 -	adds r3, r2, 0 -	adds r3, 0x3E -	ldrb r0, [r3] -	movs r1, 0x5 -	negs r1, r1 -	ands r1, r0 -	strb r1, [r3] -	movs r0, 0x1 -	strh r0, [r2, 0x2E] -	b _08079B74 -_08079B24: -	ldrh r0, [r2, 0x20] -	adds r0, 0x9 -	strh r0, [r2, 0x20] -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0x43 -	bne _08079B38 -	ldrh r0, [r2, 0x22] -	subs r0, 0x7 -	strh r0, [r2, 0x22] -_08079B38: -	movs r0, 0x20 -	ldrsh r1, [r2, r0] -	cmp r1, 0x94 -	bne _08079B46 -	ldrh r0, [r2, 0x22] -	adds r0, 0x7 -	strh r0, [r2, 0x22] -_08079B46: -	movs r0, 0x88 -	lsls r0, 1 -	cmp r1, r0 -	ble _08079B74 -	adds r3, r2, 0 -	adds r3, 0x3E -	ldrb r0, [r3] -	movs r1, 0x4 -	orrs r0, r1 -	strb r0, [r3] -	movs r0, 0x32 -	ldrsh r1, [r2, r0] -	cmp r1, 0 -	beq _08079B68 -	movs r0, 0x2 -	strh r0, [r2, 0x2E] -	b _08079B74 -_08079B68: -	ldr r0, _08079B78 @ =0x0000ffe0 -	strh r0, [r2, 0x20] -	movs r0, 0x87 -	lsls r0, 2 -	strh r0, [r2, 0x30] -	strh r1, [r2, 0x2E] -_08079B74: -	pop {r0} -	bx r0 -	.align 2, 0 -_08079B78: .4byte 0x0000ffe0 -	thumb_func_end sub_8079AD8 - -	.align 2, 0 @ Don't pad with nop. | 
