diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/battle_8.s | 5222 | ||||
| -rw-r--r-- | asm/field_fadetransition.s | 6 | ||||
| -rw-r--r-- | asm/fldeff_flash.s | 753 | ||||
| -rw-r--r-- | asm/m4a_1.s | 2 | ||||
| -rw-r--r-- | asm/macros/event.inc | 4 | ||||
| -rw-r--r-- | asm/mon_markings.s | 1008 | ||||
| -rw-r--r-- | asm/pokemon_icon.s | 788 | ||||
| -rw-r--r-- | asm/reset_rtc_screen.s | 1300 | 
8 files changed, 7 insertions, 9076 deletions
| diff --git a/asm/battle_8.s b/asm/battle_8.s deleted file mode 100644 index 366c503f2..000000000 --- a/asm/battle_8.s +++ /dev/null @@ -1,5222 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text -	 -	thumb_func_start OpponentHandleGetAttributes -OpponentHandleGetAttributes: @ 8033524 -	push {r4-r6,lr} -	sub sp, 0x100 -	movs r6, 0 -	ldr r1, _08033550 @ =gBattleBufferA -	ldr r0, _08033554 @ =gActiveBank -	ldrb r2, [r0] -	lsls r0, r2, 9 -	adds r1, 0x2 -	adds r1, r0, r1 -	ldrb r0, [r1] -	cmp r0, 0 -	bne _0803355C -	ldr r0, _08033558 @ =gBattlePartyID -	lsls r1, r2, 1 -	adds r1, r0 -	ldrb r0, [r1] -	mov r1, sp -	bl sub_8033598 -	adds r6, r0, 0 -	b _0803357E -	.align 2, 0 -_08033550: .4byte gBattleBufferA -_08033554: .4byte gActiveBank -_08033558: .4byte gBattlePartyID -_0803355C: -	ldrb r4, [r1] -	movs r5, 0 -_08033560: -	movs r0, 0x1 -	ands r0, r4 -	cmp r0, 0 -	beq _08033576 -	lsls r0, r5, 24 -	lsrs r0, 24 -	mov r2, sp -	adds r1, r2, r6 -	bl sub_8033598 -	adds r6, r0 -_08033576: -	lsrs r4, 1 -	adds r5, 0x1 -	cmp r5, 0x5 -	ble _08033560 -_0803357E: -	lsls r1, r6, 16 -	lsrs r1, 16 -	movs r0, 0x1 -	mov r2, sp -	bl dp01_build_cmdbuf_x1D_1D_numargs_varargs -	bl OpponentBufferExecCompleted -	add sp, 0x100 -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleGetAttributes - -	thumb_func_start sub_8033598 -sub_8033598: @ 8033598 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x90 -	adds r7, r1, 0 -	lsls r0, 24 -	lsrs r5, r0, 24 -	movs r6, 0 -	ldr r2, _080335CC @ =gBattleBufferA -	ldr r3, _080335D0 @ =gActiveBank -	ldrb r0, [r3] -	lsls r0, 9 -	adds r1, r2, 0x1 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0x3B -	bls _080335C2 -	bl _08033D2E -_080335C2: -	lsls r0, 2 -	ldr r1, _080335D4 @ =_080335D8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_080335CC: .4byte gBattleBufferA -_080335D0: .4byte gActiveBank -_080335D4: .4byte _080335D8 -	.align 2, 0 -_080335D8: -	.4byte _080336C8 -	.4byte _080338EC -	.4byte _080338FC -	.4byte _0803390C -	.4byte _08033974 -	.4byte _08033974 -	.4byte _08033974 -	.4byte _08033974 -	.4byte _08033990 -	.4byte _080339CC -	.4byte _080339CC -	.4byte _080339CC -	.4byte _080339CC -	.4byte _08033D2E -	.4byte _08033D2E -	.4byte _08033D2E -	.4byte _08033D2E -	.4byte _080339E8 -	.4byte _080339F8 -	.4byte _08033A28 -	.4byte _08033A38 -	.4byte _08033A48 -	.4byte _08033A58 -	.4byte _08033A68 -	.4byte _08033A78 -	.4byte _08033A88 -	.4byte _08033A98 -	.4byte _08033AA8 -	.4byte _08033AB8 -	.4byte _08033AC8 -	.4byte _08033AD8 -	.4byte _08033AE8 -	.4byte _08033B38 -	.4byte _08033B48 -	.4byte _08033B58 -	.4byte _08033B68 -	.4byte _08033B78 -	.4byte _08033B88 -	.4byte _08033B98 -	.4byte _08033BA8 -	.4byte _08033BB8 -	.4byte _08033BEC -	.4byte _08033BFC -	.4byte _08033C0C -	.4byte _08033C1C -	.4byte _08033C2C -	.4byte _08033C3C -	.4byte _08033C4C -	.4byte _08033C5C -	.4byte _08033C7C -	.4byte _08033C8C -	.4byte _08033C9C -	.4byte _08033CAC -	.4byte _08033CBC -	.4byte _08033CCC -	.4byte _08033CDC -	.4byte _08033CEC -	.4byte _08033CFC -	.4byte _08033D0C -	.4byte _08033D1C -_080336C8: -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _080338DC @ =gEnemyParty -	adds r4, r0 -	adds r0, r4, 0 -	movs r1, 0xB -	bl GetMonData -	mov r1, sp -	strh r0, [r1] -	adds r0, r4, 0 -	movs r1, 0xC -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x2E] -	movs r6, 0 -	add r0, sp, 0x24 -	mov r9, r0 -	movs r1, 0x3B -	add r1, sp -	mov r10, r1 -	mov r2, sp -	adds r2, 0x2B -	str r2, [sp, 0x80] -	mov r0, sp -	adds r0, 0x2A -	str r0, [sp, 0x7C] -	mov r1, sp -	adds r1, 0x68 -	str r1, [sp, 0x8C] -	adds r2, 0x5 -	str r2, [sp, 0x84] -	adds r0, 0x12 -	str r0, [sp, 0x88] -	mov r8, r4 -	add r4, sp, 0xC -_08033714: -	adds r1, r6, 0 -	adds r1, 0xD -	mov r0, r8 -	bl GetMonData -	strh r0, [r4] -	adds r1, r6, 0 -	adds r1, 0x11 -	mov r0, r8 -	bl GetMonData -	mov r2, r9 -	adds r1, r2, r6 -	strb r0, [r1] -	adds r4, 0x2 -	adds r6, 0x1 -	cmp r6, 0x3 -	ble _08033714 -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _080338DC @ =gEnemyParty -	adds r4, r0 -	adds r0, r4, 0 -	movs r1, 0x15 -	bl GetMonData -	mov r1, r10 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x20 -	bl GetMonData -	ldr r2, [sp, 0x80] -	strb r0, [r2] -	adds r0, r4, 0 -	movs r1, 0x19 -	bl GetMonData -	str r0, [sp, 0x44] -	adds r0, r4, 0 -	movs r1, 0x27 -	bl GetMonData -	mov r3, sp -	movs r5, 0x1F -	ands r0, r5 -	ldrb r2, [r3, 0x14] -	movs r1, 0x20 -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x14] -	adds r0, r4, 0 -	movs r1, 0x28 -	bl GetMonData -	mov r3, sp -	movs r6, 0x1F -	ands r0, r6 -	lsls r0, 5 -	ldrh r2, [r3, 0x14] -	ldr r1, _080338E0 @ =0xfffffc1f -	ands r1, r2 -	orrs r1, r0 -	strh r1, [r3, 0x14] -	adds r0, r4, 0 -	movs r1, 0x29 -	bl GetMonData -	mov r3, sp -	ands r0, r5 -	lsls r0, 2 -	ldrb r2, [r3, 0x15] -	movs r1, 0x7D -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x15] -	adds r0, r4, 0 -	movs r1, 0x2A -	bl GetMonData -	movs r1, 0x1F -	ands r1, r0 -	lsls r1, 15 -	ldr r0, [sp, 0x14] -	ldr r2, _080338E4 @ =0xfff07fff -	ands r0, r2 -	orrs r0, r1 -	str r0, [sp, 0x14] -	adds r0, r4, 0 -	movs r1, 0x2B -	bl GetMonData -	mov r3, sp -	ands r0, r6 -	lsls r0, 4 -	ldrh r2, [r3, 0x16] -	ldr r1, _080338E8 @ =0xfffffe0f -	ands r1, r2 -	orrs r1, r0 -	strh r1, [r3, 0x16] -	adds r0, r4, 0 -	movs r1, 0x2C -	bl GetMonData -	mov r3, sp -	ands r0, r5 -	lsls r0, 1 -	ldrb r2, [r3, 0x17] -	movs r1, 0x3F -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x17] -	adds r0, r4, 0 -	movs r1, 0 -	bl GetMonData -	str r0, [sp, 0x48] -	adds r0, r4, 0 -	movs r1, 0x37 -	bl GetMonData -	str r0, [sp, 0x4C] -	adds r0, r4, 0 -	movs r1, 0x38 -	bl GetMonData -	ldr r1, [sp, 0x7C] -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x39 -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x28] -	adds r0, r4, 0 -	movs r1, 0x3A -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x2C] -	adds r0, r4, 0 -	movs r1, 0x3B -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x2] -	adds r0, r4, 0 -	movs r1, 0x3C -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x4] -	adds r0, r4, 0 -	movs r1, 0x3D -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x6] -	adds r0, r4, 0 -	movs r1, 0x3E -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0x8] -	adds r0, r4, 0 -	movs r1, 0x3F -	bl GetMonData -	mov r1, sp -	strh r0, [r1, 0xA] -	adds r0, r4, 0 -	movs r1, 0x2D -	bl GetMonData -	mov r3, sp -	movs r1, 0x1 -	ands r0, r1 -	lsls r0, 6 -	ldrb r2, [r3, 0x17] -	movs r1, 0x41 -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x17] -	adds r0, r4, 0 -	movs r1, 0x2E -	bl GetMonData -	mov r3, sp -	lsls r0, 7 -	ldrb r2, [r3, 0x17] -	movs r1, 0x7F -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x17] -	adds r0, r4, 0 -	movs r1, 0x1 -	bl GetMonData -	str r0, [sp, 0x54] -	adds r0, r4, 0 -	movs r1, 0x2 -	ldr r2, [sp, 0x8C] -	bl GetMonData -	ldr r0, [sp, 0x84] -	ldr r1, [sp, 0x8C] -	bl StringCopy10 -	adds r0, r4, 0 -	movs r1, 0x7 -	ldr r2, [sp, 0x88] -	bl GetMonData -	mov r2, sp -	movs r6, 0 -_080338CC: -	adds r0, r7, r6 -	adds r1, r2, r6 -	ldrb r1, [r1] -	strb r1, [r0] -	adds r6, 0x1 -	cmp r6, 0x57 -	bls _080338CC -	b _08033D2E -	.align 2, 0 -_080338DC: .4byte gEnemyParty -_080338E0: .4byte 0xfffffc1f -_080338E4: .4byte 0xfff07fff -_080338E8: .4byte 0xfffffe0f -_080338EC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080338F8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0xB -	b _08033C66 -	.align 2, 0 -_080338F8: .4byte gEnemyParty -_080338FC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033908 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0xC -	b _08033C66 -	.align 2, 0 -_08033908: .4byte gEnemyParty -_0803390C: -	movs r6, 0 -	add r2, sp, 0x58 -	mov r9, r2 -	add r0, sp, 0x60 -	mov r10, r0 -	movs r0, 0x64 -	adds r1, r5, 0 -	muls r1, r0 -	ldr r0, _08033970 @ =gEnemyParty -	adds r4, r1, r0 -	mov r8, r9 -_08033922: -	adds r1, r6, 0 -	adds r1, 0xD -	adds r0, r4, 0 -	bl GetMonData -	mov r1, r8 -	strh r0, [r1] -	adds r1, r6, 0 -	adds r1, 0x11 -	adds r0, r4, 0 -	bl GetMonData -	mov r2, r10 -	adds r1, r2, r6 -	strb r0, [r1] -	movs r0, 0x2 -	add r8, r0 -	adds r6, 0x1 -	cmp r6, 0x3 -	ble _08033922 -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033970 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x15 -	bl GetMonData -	mov r1, r9 -	strb r0, [r1, 0xC] -	mov r2, r9 -	movs r6, 0 -_08033960: -	adds r0, r7, r6 -	adds r1, r2, r6 -	ldrb r1, [r1] -	strb r1, [r0] -	adds r6, 0x1 -	cmp r6, 0xF -	bls _08033960 -	b _08033D2E -	.align 2, 0 -_08033970: .4byte gEnemyParty -_08033974: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803398C @ =gEnemyParty -	adds r0, r1 -	ldrb r1, [r3] -	lsls r1, 9 -	adds r2, 0x1 -	adds r1, r2 -	ldrb r1, [r1] -	adds r1, 0x9 -	b _08033C66 -	.align 2, 0 -_0803398C: .4byte gEnemyParty -_08033990: -	movs r6, 0 -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r2, _080339C8 @ =gEnemyParty -	mov r8, r2 -_0803399C: -	adds r1, r6, 0 -	adds r1, 0x11 -	mov r2, r8 -	adds r0, r4, r2 -	bl GetMonData -	adds r1, r7, r6 -	strb r0, [r1] -	adds r6, 0x1 -	cmp r6, 0x3 -	ble _0803399C -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080339C8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x15 -	bl GetMonData -	adds r1, r7, r6 -	strb r0, [r1] -	adds r6, 0x1 -	b _08033D2E -	.align 2, 0 -_080339C8: .4byte gEnemyParty -_080339CC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080339E4 @ =gEnemyParty -	adds r0, r1 -	ldrb r1, [r3] -	lsls r1, 9 -	adds r2, 0x1 -	adds r1, r2 -	ldrb r1, [r1] -	adds r1, 0x8 -	b _08033D26 -	.align 2, 0 -_080339E4: .4byte gEnemyParty -_080339E8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080339F4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1 -	b _08033A02 -	.align 2, 0 -_080339F4: .4byte gEnemyParty -_080339F8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A24 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x19 -_08033A02: -	bl GetMonData -	adds r1, r0, 0 -	strb r1, [r7] -	movs r0, 0xFF -	lsls r0, 8 -	ands r0, r1 -	lsrs r0, 8 -	strb r0, [r7, 0x1] -	movs r0, 0xFF -	lsls r0, 16 -	ands r0, r1 -	lsrs r0, 16 -	strb r0, [r7, 0x2] -	movs r6, 0x3 -	b _08033D2E -	.align 2, 0 -_08033A24: .4byte gEnemyParty -_08033A28: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A34 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1A -	b _08033D26 -	.align 2, 0 -_08033A34: .4byte gEnemyParty -_08033A38: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A44 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1B -	b _08033D26 -	.align 2, 0 -_08033A44: .4byte gEnemyParty -_08033A48: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A54 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1C -	b _08033D26 -	.align 2, 0 -_08033A54: .4byte gEnemyParty -_08033A58: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A64 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1D -	b _08033D26 -	.align 2, 0 -_08033A64: .4byte gEnemyParty -_08033A68: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A74 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1E -	b _08033D26 -	.align 2, 0 -_08033A74: .4byte gEnemyParty -_08033A78: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A84 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x1F -	b _08033D26 -	.align 2, 0 -_08033A84: .4byte gEnemyParty -_08033A88: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033A94 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x20 -	b _08033D26 -	.align 2, 0 -_08033A94: .4byte gEnemyParty -_08033A98: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033AA4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x22 -	b _08033D26 -	.align 2, 0 -_08033AA4: .4byte gEnemyParty -_08033AA8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033AB4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x23 -	b _08033D26 -	.align 2, 0 -_08033AB4: .4byte gEnemyParty -_08033AB8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033AC4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x24 -	b _08033D26 -	.align 2, 0 -_08033AC4: .4byte gEnemyParty -_08033AC8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033AD4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x25 -	b _08033D26 -	.align 2, 0 -_08033AD4: .4byte gEnemyParty -_08033AD8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033AE4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x26 -	b _08033D26 -	.align 2, 0 -_08033AE4: .4byte gEnemyParty -_08033AE8: -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _08033B34 @ =gEnemyParty -	adds r4, r0 -	adds r0, r4, 0 -	movs r1, 0x27 -	bl GetMonData -	strb r0, [r7] -	adds r0, r4, 0 -	movs r1, 0x28 -	bl GetMonData -	strb r0, [r7, 0x1] -	adds r0, r4, 0 -	movs r1, 0x29 -	bl GetMonData -	strb r0, [r7, 0x2] -	adds r0, r4, 0 -	movs r1, 0x2A -	bl GetMonData -	strb r0, [r7, 0x3] -	adds r0, r4, 0 -	movs r1, 0x2B -	bl GetMonData -	strb r0, [r7, 0x4] -	adds r0, r4, 0 -	movs r1, 0x2C -	bl GetMonData -	strb r0, [r7, 0x5] -	movs r6, 0x6 -	b _08033D2E -	.align 2, 0 -_08033B34: .4byte gEnemyParty -_08033B38: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B44 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x27 -	b _08033D26 -	.align 2, 0 -_08033B44: .4byte gEnemyParty -_08033B48: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B54 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x28 -	b _08033D26 -	.align 2, 0 -_08033B54: .4byte gEnemyParty -_08033B58: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B64 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x29 -	b _08033D26 -	.align 2, 0 -_08033B64: .4byte gEnemyParty -_08033B68: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B74 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x2A -	b _08033D26 -	.align 2, 0 -_08033B74: .4byte gEnemyParty -_08033B78: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B84 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x2B -	b _08033D26 -	.align 2, 0 -_08033B84: .4byte gEnemyParty -_08033B88: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033B94 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x2C -	b _08033D26 -	.align 2, 0 -_08033B94: .4byte gEnemyParty -_08033B98: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033BA4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0 -	b _08033BC2 -	.align 2, 0 -_08033BA4: .4byte gEnemyParty -_08033BA8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033BB4 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x9 -	b _08033C66 -	.align 2, 0 -_08033BB4: .4byte gEnemyParty -_08033BB8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033BE8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x37 -_08033BC2: -	bl GetMonData -	adds r1, r0, 0 -	strb r1, [r7] -	movs r0, 0xFF -	lsls r0, 8 -	ands r0, r1 -	lsrs r0, 8 -	strb r0, [r7, 0x1] -	movs r0, 0xFF -	lsls r0, 16 -	ands r0, r1 -	lsrs r0, 16 -	strb r0, [r7, 0x2] -	lsrs r0, r1, 24 -	strb r0, [r7, 0x3] -	movs r6, 0x4 -	b _08033D2E -	.align 2, 0 -_08033BE8: .4byte gEnemyParty -_08033BEC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033BF8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x38 -	b _08033D26 -	.align 2, 0 -_08033BF8: .4byte gEnemyParty -_08033BFC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C08 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x39 -	b _08033C66 -	.align 2, 0 -_08033C08: .4byte gEnemyParty -_08033C0C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C18 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3A -	b _08033C66 -	.align 2, 0 -_08033C18: .4byte gEnemyParty -_08033C1C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C28 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3B -	b _08033C66 -	.align 2, 0 -_08033C28: .4byte gEnemyParty -_08033C2C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C38 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3C -	b _08033C66 -	.align 2, 0 -_08033C38: .4byte gEnemyParty -_08033C3C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C48 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3D -	b _08033C66 -	.align 2, 0 -_08033C48: .4byte gEnemyParty -_08033C4C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C58 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3E -	b _08033C66 -	.align 2, 0 -_08033C58: .4byte gEnemyParty -_08033C5C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C78 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3F -_08033C66: -	bl GetMonData -	lsls r0, 16 -	lsrs r0, 16 -	strb r0, [r7] -	lsrs r0, 8 -	strb r0, [r7, 0x1] -	movs r6, 0x2 -	b _08033D2E -	.align 2, 0 -_08033C78: .4byte gEnemyParty -_08033C7C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C88 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x16 -	b _08033D26 -	.align 2, 0 -_08033C88: .4byte gEnemyParty -_08033C8C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033C98 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x17 -	b _08033D26 -	.align 2, 0 -_08033C98: .4byte gEnemyParty -_08033C9C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CA8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x18 -	b _08033D26 -	.align 2, 0 -_08033CA8: .4byte gEnemyParty -_08033CAC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CB8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x21 -	b _08033D26 -	.align 2, 0 -_08033CB8: .4byte gEnemyParty -_08033CBC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CC8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x2F -	b _08033D26 -	.align 2, 0 -_08033CC8: .4byte gEnemyParty -_08033CCC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CD8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x30 -	b _08033D26 -	.align 2, 0 -_08033CD8: .4byte gEnemyParty -_08033CDC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CE8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x32 -	b _08033D26 -	.align 2, 0 -_08033CE8: .4byte gEnemyParty -_08033CEC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033CF8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x33 -	b _08033D26 -	.align 2, 0 -_08033CF8: .4byte gEnemyParty -_08033CFC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033D08 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x34 -	b _08033D26 -	.align 2, 0 -_08033D08: .4byte gEnemyParty -_08033D0C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033D18 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x35 -	b _08033D26 -	.align 2, 0 -_08033D18: .4byte gEnemyParty -_08033D1C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08033D40 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x36 -_08033D26: -	bl GetMonData -	strb r0, [r7] -	movs r6, 0x1 -_08033D2E: -	adds r0, r6, 0 -	add sp, 0x90 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_08033D40: .4byte gEnemyParty -	thumb_func_end sub_8033598 - -	thumb_func_start dp01t_01_2_read_pokmon_data_slice -dp01t_01_2_read_pokmon_data_slice: @ 8033D44 -	push {r4-r7,lr} -	sub sp, 0x58 -	ldr r2, _08033DBC @ =gBattlePartyID -	ldr r5, _08033DC0 @ =gActiveBank -	ldrb r1, [r5] -	lsls r0, r1, 1 -	adds r0, r2 -	ldrh r2, [r0] -	movs r0, 0x64 -	adds r4, r2, 0 -	muls r4, r0 -	ldr r3, _08033DC4 @ =gBattleBufferA -	lsls r1, 9 -	adds r0, r3, 0x1 -	adds r0, r1, r0 -	ldrb r2, [r0] -	ldr r0, _08033DC8 @ =gEnemyParty -	adds r0, r2, r0 -	adds r6, r4, r0 -	mov r0, sp -	adds r4, r0, r2 -	movs r2, 0 -	adds r0, r3, 0x2 -	adds r1, r0 -	adds r7, r5, 0 -	mov r12, r3 -	ldrb r1, [r1] -	cmp r2, r1 -	bcs _08033D9A -	adds r3, r0, 0 -_08033D80: -	adds r1, r4, r2 -	adds r0, r6, r2 -	ldrb r0, [r0] -	strb r0, [r1] -	adds r0, r2, 0x1 -	lsls r0, 24 -	lsrs r2, r0, 24 -	ldrb r0, [r5] -	lsls r0, 9 -	adds r0, r3 -	ldrb r0, [r0] -	cmp r2, r0 -	bcc _08033D80 -_08033D9A: -	ldrb r0, [r7] -	lsls r0, 9 -	mov r1, r12 -	adds r1, 0x2 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x1 -	adds r2, r4, 0 -	bl dp01_build_cmdbuf_x1D_1D_numargs_varargs -	bl OpponentBufferExecCompleted -	add sp, 0x58 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08033DBC: .4byte gBattlePartyID -_08033DC0: .4byte gActiveBank -_08033DC4: .4byte gBattleBufferA -_08033DC8: .4byte gEnemyParty -	thumb_func_end dp01t_01_2_read_pokmon_data_slice - -	thumb_func_start OpponentHandleSetAttributes -OpponentHandleSetAttributes: @ 8033DCC -	push {r4,r5,lr} -	ldr r1, _08033DF0 @ =gBattleBufferA -	ldr r0, _08033DF4 @ =gActiveBank -	ldrb r2, [r0] -	lsls r0, r2, 9 -	adds r1, 0x2 -	adds r1, r0, r1 -	ldrb r0, [r1] -	cmp r0, 0 -	bne _08033DFC -	ldr r0, _08033DF8 @ =gBattlePartyID -	lsls r1, r2, 1 -	adds r1, r0 -	ldrb r0, [r1] -	bl sub_8033E24 -	b _08033E1A -	.align 2, 0 -_08033DF0: .4byte gBattleBufferA -_08033DF4: .4byte gActiveBank -_08033DF8: .4byte gBattlePartyID -_08033DFC: -	ldrb r4, [r1] -	movs r5, 0 -_08033E00: -	movs r0, 0x1 -	ands r0, r4 -	cmp r0, 0 -	beq _08033E0E -	adds r0, r5, 0 -	bl sub_8033E24 -_08033E0E: -	lsrs r4, 1 -	adds r0, r5, 0x1 -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0x5 -	bls _08033E00 -_08033E1A: -	bl OpponentBufferExecCompleted -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleSetAttributes - -	thumb_func_start sub_8033E24 -sub_8033E24: @ 8033E24 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x38 -	lsls r0, 24 -	lsrs r5, r0, 24 -	ldr r3, _08033E5C @ =gActiveBank -	ldrb r0, [r3] -	lsls r0, 9 -	ldr r2, _08033E60 @ =gUnknown_02023A63 -	adds r4, r0, r2 -	adds r7, r4, 0 -	subs r1, r2, 0x2 -	adds r0, r1 -	ldrb r0, [r0] -	adds r6, r3, 0 -	adds r3, r2, 0 -	cmp r0, 0x3B -	bls _08033E52 -	bl _08034730 -_08033E52: -	lsls r0, 2 -	ldr r1, _08033E64 @ =_08033E68 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_08033E5C: .4byte gActiveBank -_08033E60: .4byte gUnknown_02023A63 -_08033E64: .4byte _08033E68 -	.align 2, 0 -_08033E68: -	.4byte _08033F58 -	.4byte _080340F0 -	.4byte _0803410C -	.4byte _08034128 -	.4byte _0803417C -	.4byte _0803417C -	.4byte _0803417C -	.4byte _0803417C -	.4byte _0803419C -	.4byte _08034204 -	.4byte _08034204 -	.4byte _08034204 -	.4byte _08034204 -	.4byte _08034730 -	.4byte _08034730 -	.4byte _08034730 -	.4byte _08034730 -	.4byte _0803422C -	.4byte _08034248 -	.4byte _08034264 -	.4byte _08034280 -	.4byte _0803429C -	.4byte _080342B8 -	.4byte _080342D4 -	.4byte _080342F0 -	.4byte _0803430C -	.4byte _08034328 -	.4byte _08034344 -	.4byte _08034360 -	.4byte _0803437C -	.4byte _08034398 -	.4byte _080343B4 -	.4byte _08034428 -	.4byte _08034444 -	.4byte _08034460 -	.4byte _0803447C -	.4byte _08034498 -	.4byte _080344B4 -	.4byte _080344D0 -	.4byte _080344EC -	.4byte _08034508 -	.4byte _08034524 -	.4byte _08034540 -	.4byte _0803455C -	.4byte _08034578 -	.4byte _08034594 -	.4byte _080345B0 -	.4byte _080345CC -	.4byte _080345E8 -	.4byte _08034604 -	.4byte _08034620 -	.4byte _0803463C -	.4byte _08034658 -	.4byte _08034674 -	.4byte _08034690 -	.4byte _080346AC -	.4byte _080346C8 -	.4byte _080346E4 -	.4byte _08034700 -	.4byte _0803471C -_08033F58: -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _080340EC @ =gEnemyParty -	adds r4, r0 -	adds r0, r4, 0 -	movs r1, 0xB -	adds r2, r7, 0 -	bl SetMonData -	adds r2, r7, 0 -	adds r2, 0x2E -	adds r0, r4, 0 -	movs r1, 0xC -	bl SetMonData -	movs r0, 0 -	mov r8, r0 -	movs r0, 0x3B -	adds r0, r7 -	mov r10, r0 -	adds r0, r7, 0 -	adds r0, 0x2B -	str r0, [sp, 0x20] -	adds r0, 0x19 -	str r0, [sp, 0x28] -	adds r0, 0x4 -	str r0, [sp, 0x2C] -	adds r0, 0x4 -	str r0, [sp, 0x30] -	subs r0, 0x22 -	str r0, [sp, 0x1C] -	subs r0, 0x2 -	str r0, [sp, 0x18] -	adds r0, 0x4 -	str r0, [sp, 0x24] -	adds r0, r7, 0x2 -	str r0, [sp, 0x4] -	adds r0, r7, 0x4 -	str r0, [sp, 0x8] -	adds r0, r7, 0x6 -	str r0, [sp, 0xC] -	adds r0, 0x2 -	str r0, [sp, 0x10] -	adds r0, 0x2 -	str r0, [sp, 0x14] -	mov r9, r4 -	adds r6, r7, 0 -	adds r6, 0x24 -	adds r4, r7, 0 -	adds r4, 0xC -_08033FBE: -	mov r1, r8 -	adds r1, 0xD -	mov r0, r9 -	adds r2, r4, 0 -	bl SetMonData -	mov r1, r8 -	adds r1, 0x11 -	mov r0, r9 -	adds r2, r6, 0 -	bl SetMonData -	adds r6, 0x1 -	adds r4, 0x2 -	movs r0, 0x1 -	add r8, r0 -	mov r0, r8 -	cmp r0, 0x3 -	ble _08033FBE -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _080340EC @ =gEnemyParty -	adds r4, r0 -	adds r0, r4, 0 -	movs r1, 0x15 -	mov r2, r10 -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x20 -	ldr r2, [sp, 0x20] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x19 -	ldr r2, [sp, 0x28] -	bl SetMonData -	ldrb r0, [r7, 0x14] -	lsls r0, 27 -	lsrs r0, 27 -	mov r1, sp -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x27 -	mov r2, sp -	bl SetMonData -	mov r1, sp -	ldrh r0, [r7, 0x14] -	lsls r0, 22 -	lsrs r0, 27 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x28 -	mov r2, sp -	bl SetMonData -	mov r1, sp -	ldrb r0, [r7, 0x15] -	lsls r0, 25 -	lsrs r0, 27 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x29 -	mov r2, sp -	bl SetMonData -	mov r1, sp -	ldr r0, [r7, 0x14] -	lsls r0, 12 -	lsrs r0, 27 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x2A -	mov r2, sp -	bl SetMonData -	mov r1, sp -	ldrh r0, [r7, 0x16] -	lsls r0, 23 -	lsrs r0, 27 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x2B -	mov r2, sp -	bl SetMonData -	mov r1, sp -	ldrb r0, [r7, 0x17] -	lsls r0, 26 -	lsrs r0, 27 -	strb r0, [r1] -	adds r0, r4, 0 -	movs r1, 0x2C -	mov r2, sp -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0 -	ldr r2, [sp, 0x2C] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x37 -	ldr r2, [sp, 0x30] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x38 -	ldr r2, [sp, 0x1C] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x39 -	ldr r2, [sp, 0x18] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3A -	ldr r2, [sp, 0x24] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3B -	ldr r2, [sp, 0x4] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3C -	ldr r2, [sp, 0x8] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3D -	ldr r2, [sp, 0xC] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3E -	ldr r2, [sp, 0x10] -	bl SetMonData -	adds r0, r4, 0 -	movs r1, 0x3F -	ldr r2, [sp, 0x14] -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080340EC: .4byte gEnemyParty -_080340F0: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034108 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0xB -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034108: .4byte gEnemyParty -_0803410C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034124 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0xC -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034124: .4byte gEnemyParty -_08034128: -	movs r0, 0 -	mov r8, r0 -	movs r0, 0xC -	adds r0, r4 -	mov r9, r0 -	movs r0, 0x64 -	adds r1, r5, 0 -	muls r1, r0 -	ldr r0, _08034178 @ =gEnemyParty -	adds r7, r1, r0 -	adds r6, r4, 0 -	adds r6, 0x8 -_08034140: -	mov r1, r8 -	adds r1, 0xD -	adds r0, r7, 0 -	adds r2, r4, 0 -	bl SetMonData -	mov r1, r8 -	adds r1, 0x11 -	adds r0, r7, 0 -	adds r2, r6, 0 -	bl SetMonData -	adds r6, 0x1 -	adds r4, 0x2 -	movs r0, 0x1 -	add r8, r0 -	mov r0, r8 -	cmp r0, 0x3 -	ble _08034140 -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034178 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x15 -	mov r2, r9 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034178: .4byte gEnemyParty -_0803417C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034194 @ =gEnemyParty -	adds r0, r1 -	ldr r3, _08034198 @ =gBattleBufferA -	ldrb r2, [r6] -	lsls r2, 9 -	adds r1, r3, 0x1 -	adds r1, r2, r1 -	ldrb r1, [r1] -	adds r1, 0x9 -	b _0803421A -	.align 2, 0 -_08034194: .4byte gEnemyParty -_08034198: .4byte gBattleBufferA -_0803419C: -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _08034200 @ =gEnemyParty -	adds r4, r0 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	adds r0, r4, 0 -	movs r1, 0x11 -	str r3, [sp, 0x34] -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x1 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x12 -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x2 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x13 -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x3 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x14 -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x4 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x15 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034200: .4byte gEnemyParty -_08034204: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034224 @ =gEnemyParty -	adds r0, r1 -	ldr r3, _08034228 @ =gBattleBufferA -	ldrb r2, [r6] -	lsls r2, 9 -	adds r1, r3, 0x1 -	adds r1, r2, r1 -	ldrb r1, [r1] -	adds r1, 0x8 -_0803421A: -	adds r3, 0x3 -	adds r2, r3 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034224: .4byte gEnemyParty -_08034228: .4byte gBattleBufferA -_0803422C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034244 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034244: .4byte gEnemyParty -_08034248: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034260 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x19 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034260: .4byte gEnemyParty -_08034264: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803427C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1A -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803427C: .4byte gEnemyParty -_08034280: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034298 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1B -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034298: .4byte gEnemyParty -_0803429C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080342B4 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1C -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080342B4: .4byte gEnemyParty -_080342B8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080342D0 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1D -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080342D0: .4byte gEnemyParty -_080342D4: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080342EC @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1E -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080342EC: .4byte gEnemyParty -_080342F0: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034308 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x1F -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034308: .4byte gEnemyParty -_0803430C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034324 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x20 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034324: .4byte gEnemyParty -_08034328: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034340 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x22 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034340: .4byte gEnemyParty -_08034344: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803435C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x23 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803435C: .4byte gEnemyParty -_08034360: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034378 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x24 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034378: .4byte gEnemyParty -_0803437C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034394 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x25 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034394: .4byte gEnemyParty -_08034398: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080343B0 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x26 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080343B0: .4byte gEnemyParty -_080343B4: -	movs r0, 0x64 -	adds r4, r5, 0 -	muls r4, r0 -	ldr r0, _08034424 @ =gEnemyParty -	adds r4, r0 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	adds r0, r4, 0 -	movs r1, 0x27 -	str r3, [sp, 0x34] -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x1 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x28 -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x2 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x29 -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x3 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x2A -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x4 -	adds r2, r0 -	adds r0, r4, 0 -	movs r1, 0x2B -	bl SetMonData -	ldrb r2, [r6] -	lsls r2, 9 -	ldr r3, [sp, 0x34] -	adds r0, r3, 0x5 -	adds r2, r0 -	adds r0, r4, 0 -	b _080344C2 -	.align 2, 0 -_08034424: .4byte gEnemyParty -_08034428: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034440 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x27 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034440: .4byte gEnemyParty -_08034444: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803445C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x28 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803445C: .4byte gEnemyParty -_08034460: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034478 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x29 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034478: .4byte gEnemyParty -_0803447C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034494 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x2A -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034494: .4byte gEnemyParty -_08034498: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080344B0 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x2B -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080344B0: .4byte gEnemyParty -_080344B4: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080344CC @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -_080344C2: -	movs r1, 0x2C -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080344CC: .4byte gEnemyParty -_080344D0: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080344E8 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080344E8: .4byte gEnemyParty -_080344EC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034504 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x9 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034504: .4byte gEnemyParty -_08034508: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034520 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x37 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034520: .4byte gEnemyParty -_08034524: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803453C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x38 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803453C: .4byte gEnemyParty -_08034540: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034558 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x39 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034558: .4byte gEnemyParty -_0803455C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034574 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3A -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034574: .4byte gEnemyParty -_08034578: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034590 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3B -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034590: .4byte gEnemyParty -_08034594: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080345AC @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3C -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080345AC: .4byte gEnemyParty -_080345B0: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080345C8 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3D -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080345C8: .4byte gEnemyParty -_080345CC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080345E4 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3E -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080345E4: .4byte gEnemyParty -_080345E8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034600 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x3F -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034600: .4byte gEnemyParty -_08034604: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803461C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x16 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803461C: .4byte gEnemyParty -_08034620: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034638 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x17 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034638: .4byte gEnemyParty -_0803463C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034654 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x18 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034654: .4byte gEnemyParty -_08034658: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034670 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x21 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034670: .4byte gEnemyParty -_08034674: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _0803468C @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x2F -	bl SetMonData -	b _08034730 -	.align 2, 0 -_0803468C: .4byte gEnemyParty -_08034690: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080346A8 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x30 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080346A8: .4byte gEnemyParty -_080346AC: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080346C4 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x32 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080346C4: .4byte gEnemyParty -_080346C8: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080346E0 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x33 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080346E0: .4byte gEnemyParty -_080346E4: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _080346FC @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x34 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_080346FC: .4byte gEnemyParty -_08034700: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034718 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x35 -	bl SetMonData -	b _08034730 -	.align 2, 0 -_08034718: .4byte gEnemyParty -_0803471C: -	movs r0, 0x64 -	muls r0, r5 -	ldr r1, _08034740 @ =gEnemyParty -	adds r0, r1 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r2, r3 -	movs r1, 0x36 -	bl SetMonData -_08034730: -	add sp, 0x38 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034740: .4byte gEnemyParty -	thumb_func_end sub_8033E24 - -	thumb_func_start sub_8034744 -sub_8034744: @ 8034744 -	push {r4-r7,lr} -	ldr r1, _080347A8 @ =gBattlePartyID -	ldr r7, _080347AC @ =gActiveBank -	ldrb r2, [r7] -	lsls r0, r2, 1 -	adds r0, r1 -	ldrh r1, [r0] -	movs r0, 0x64 -	adds r3, r1, 0 -	muls r3, r0 -	ldr r4, _080347B0 @ =gBattleBufferA -	lsls r2, 9 -	adds r0, r4, 0x1 -	adds r0, r2, r0 -	ldrb r0, [r0] -	ldr r1, _080347B4 @ =gEnemyParty -	adds r0, r1 -	adds r5, r3, r0 -	movs r3, 0 -	adds r0, r4, 0x2 -	adds r2, r0 -	ldrb r2, [r2] -	cmp r3, r2 -	bcs _0803479C -	adds r6, r4, 0 -	adds r2, r7, 0 -	adds r4, r0, 0 -_0803477A: -	adds r1, r5, r3 -	ldrb r0, [r2] -	lsls r0, 9 -	adds r0, 0x3 -	adds r0, r3, r0 -	adds r0, r6 -	ldrb r0, [r0] -	strb r0, [r1] -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	ldrb r0, [r2] -	lsls r0, 9 -	adds r0, r4 -	ldrb r0, [r0] -	cmp r3, r0 -	bcc _0803477A -_0803479C: -	bl OpponentBufferExecCompleted -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_080347A8: .4byte gBattlePartyID -_080347AC: .4byte gActiveBank -_080347B0: .4byte gBattleBufferA -_080347B4: .4byte gEnemyParty -	thumb_func_end sub_8034744 - -	thumb_func_start OpponentHandleLoadPokeSprite -OpponentHandleLoadPokeSprite: @ 80347B8 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	ldr r6, _080348E8 @ =gActiveBank -	ldrb r0, [r6] -	lsls r0, 1 -	ldr r1, _080348EC @ =gBattlePartyID -	adds r0, r1 -	ldrh r0, [r0] -	movs r7, 0x64 -	muls r0, r7 -	ldr r2, _080348F0 @ =gEnemyParty -	mov r10, r2 -	add r0, r10 -	movs r1, 0xB -	bl GetMonData -	mov r8, r0 -	lsls r0, 16 -	lsrs r0, 16 -	mov r8, r0 -	ldrb r1, [r6] -	lsls r0, r1, 1 -	ldr r2, _080348EC @ =gBattlePartyID -	adds r0, r2 -	ldrh r0, [r0] -	muls r0, r7 -	add r0, r10 -	bl sub_8031794 -	ldrb r0, [r6] -	bl GetBankIdentity -	adds r1, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	mov r0, r8 -	bl GetMonSpriteTemplate_803C56C -	ldr r0, _080348F4 @ =gUnknown_02024E8C -	mov r9, r0 -	ldrb r0, [r6] -	movs r1, 0x2 -	bl sub_8077ABC -	adds r5, r0, 0 -	lsls r5, 24 -	lsrs r5, 24 -	ldrb r0, [r6] -	bl sub_8077F68 -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	ldrb r0, [r6] -	bl sub_8079E90 -	adds r3, r0, 0 -	lsls r3, 24 -	lsrs r3, 24 -	mov r0, r9 -	adds r1, r5, 0 -	adds r2, r4, 0 -	bl CreateSprite -	ldr r4, _080348F8 @ =gObjectBankIDs -	ldrb r1, [r6] -	adds r1, r4 -	strb r0, [r1] -	ldr r5, _080348FC @ =gSprites -	ldrb r0, [r6] -	adds r0, r4 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldr r1, _08034900 @ =0x0000ff10 -	strh r1, [r0, 0x24] -	ldrb r2, [r6] -	adds r0, r2, r4 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	strh r2, [r0, 0x2E] -	ldrb r0, [r6] -	adds r0, r4 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	mov r1, r8 -	strh r1, [r0, 0x32] -	ldrb r3, [r6] -	adds r0, r3, r4 -	ldrb r0, [r0] -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r5 -	lsls r3, 4 -	ldrb r2, [r1, 0x5] -	movs r0, 0xF -	ands r0, r2 -	orrs r0, r3 -	strb r0, [r1, 0x5] -	ldrb r2, [r6] -	adds r4, r2, r4 -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldr r1, _08034904 @ =gBattleMonForms -	adds r2, r1 -	ldrb r1, [r2] -	bl StartSpriteAnim -	ldrb r4, [r6] -	lsls r0, r4, 1 -	ldr r2, _080348EC @ =gBattlePartyID -	adds r0, r2 -	ldrh r0, [r0] -	muls r0, r7 -	add r0, r10 -	movs r1, 0xB -	bl GetMonData -	adds r1, r0, 0 -	lsls r1, 16 -	lsrs r1, 16 -	adds r0, r4, 0 -	bl sub_8032984 -	ldr r1, _08034908 @ =gBattleBankFunc -	ldrb r0, [r6] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _0803490C @ =sub_8033018 -	str r1, [r0] -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_080348E8: .4byte gActiveBank -_080348EC: .4byte gBattlePartyID -_080348F0: .4byte gEnemyParty -_080348F4: .4byte gUnknown_02024E8C -_080348F8: .4byte gObjectBankIDs -_080348FC: .4byte gSprites -_08034900: .4byte 0x0000ff10 -_08034904: .4byte gBattleMonForms -_08034908: .4byte gBattleBankFunc -_0803490C: .4byte sub_8033018 -	thumb_func_end OpponentHandleLoadPokeSprite - -	thumb_func_start OpponentHandleSendOutPoke -OpponentHandleSendOutPoke: @ 8034910 -	push {r4,lr} -	ldr r1, _08034948 @ =gBattlePartyID -	ldr r4, _0803494C @ =gActiveBank -	ldrb r0, [r4] -	lsls r2, r0, 1 -	adds r2, r1 -	ldr r3, _08034950 @ =gBattleBufferA -	lsls r0, 9 -	adds r1, r3, 0x1 -	adds r0, r1 -	ldrb r0, [r0] -	strh r0, [r2] -	ldrb r0, [r4] -	lsls r1, r0, 9 -	adds r3, 0x2 -	adds r1, r3 -	ldrb r1, [r1] -	bl sub_803495C -	ldr r1, _08034954 @ =gBattleBankFunc -	ldrb r0, [r4] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08034958 @ =sub_80333D4 -	str r1, [r0] -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034948: .4byte gBattlePartyID -_0803494C: .4byte gActiveBank -_08034950: .4byte gBattleBufferA -_08034954: .4byte gBattleBankFunc -_08034958: .4byte sub_80333D4 -	thumb_func_end OpponentHandleSendOutPoke - -	thumb_func_start sub_803495C -sub_803495C: @ 803495C -	push {r4-r6,lr} -	mov r6, r10 -	mov r5, r9 -	mov r4, r8 -	push {r4-r6} -	adds r6, r0, 0 -	lsls r6, 24 -	lsrs r6, 24 -	lsls r1, 24 -	lsrs r1, 24 -	adds r0, r6, 0 -	bl sub_8032AA8 -	ldr r0, _08034AB8 @ =gBattlePartyID -	lsls r4, r6, 1 -	adds r4, r0 -	ldr r0, _08034ABC @ =gBattleBufferA -	lsls r1, r6, 9 -	adds r0, 0x1 -	adds r1, r0 -	ldrb r0, [r1] -	strh r0, [r4] -	ldrh r0, [r4] -	movs r1, 0x64 -	mov r9, r1 -	mov r1, r9 -	muls r1, r0 -	adds r0, r1, 0 -	ldr r5, _08034AC0 @ =gEnemyParty -	adds r0, r5 -	movs r1, 0xB -	bl GetMonData -	mov r8, r0 -	lsls r0, 16 -	lsrs r0, 16 -	mov r8, r0 -	ldr r0, _08034AC4 @ =sub_80312F0 -	bl CreateInvisibleSpriteWithCallback -	ldr r1, _08034AC8 @ =gUnknown_0300434C -	mov r10, r1 -	add r10, r6 -	mov r1, r10 -	strb r0, [r1] -	ldrh r0, [r4] -	mov r1, r9 -	muls r1, r0 -	adds r0, r1, 0 -	adds r0, r5 -	adds r1, r6, 0 -	bl sub_8031794 -	adds r0, r6, 0 -	bl GetBankIdentity -	adds r1, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	mov r0, r8 -	bl GetMonSpriteTemplate_803C56C -	ldr r0, _08034ACC @ =gUnknown_02024E8C -	mov r9, r0 -	adds r0, r6, 0 -	movs r1, 0x2 -	bl sub_8077ABC -	adds r5, r0, 0 -	lsls r5, 24 -	lsrs r5, 24 -	adds r0, r6, 0 -	bl sub_8077F68 -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	adds r0, r6, 0 -	bl sub_8079E90 -	adds r3, r0, 0 -	lsls r3, 24 -	lsrs r3, 24 -	mov r0, r9 -	adds r1, r5, 0 -	adds r2, r4, 0 -	bl CreateSprite -	ldr r4, _08034AD0 @ =gObjectBankIDs -	adds r4, r6, r4 -	strb r0, [r4] -	ldr r5, _08034AD4 @ =gSprites -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	strh r6, [r0, 0x2E] -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	mov r1, r8 -	strh r1, [r0, 0x32] -	mov r0, r10 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldrb r1, [r4] -	strh r1, [r0, 0x30] -	ldrb r0, [r4] -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r5 -	lsls r3, r6, 4 -	ldrb r2, [r1, 0x5] -	movs r0, 0xF -	ands r0, r2 -	orrs r0, r3 -	strb r0, [r1, 0x5] -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldr r1, _08034AD8 @ =gBattleMonForms -	adds r6, r1 -	ldrb r1, [r6] -	bl StartSpriteAnim -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	adds r0, 0x3E -	ldrb r1, [r0] -	movs r2, 0x4 -	orrs r1, r2 -	strb r1, [r0] -	ldrb r1, [r4] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r5, 0 -	adds r1, 0x1C -	adds r0, r1 -	ldr r1, _08034ADC @ =SpriteCallbackDummy -	str r1, [r0] -	movs r0, 0 -	movs r1, 0xFE -	bl sub_8046400 -	mov r1, r10 -	ldrb r2, [r1] -	lsls r1, r2, 4 -	adds r1, r2 -	lsls r1, 2 -	adds r1, r5 -	lsls r0, 24 -	lsrs r0, 24 -	strh r0, [r1, 0x2E] -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034AB8: .4byte gBattlePartyID -_08034ABC: .4byte gBattleBufferA -_08034AC0: .4byte gEnemyParty -_08034AC4: .4byte sub_80312F0 -_08034AC8: .4byte gUnknown_0300434C -_08034ACC: .4byte gUnknown_02024E8C -_08034AD0: .4byte gObjectBankIDs -_08034AD4: .4byte gSprites -_08034AD8: .4byte gBattleMonForms -_08034ADC: .4byte SpriteCallbackDummy -	thumb_func_end sub_803495C - -	thumb_func_start OpponentHandleReturnPokeToBall -OpponentHandleReturnPokeToBall: @ 8034AE0 -	push {r4-r6,lr} -	ldr r1, _08034B10 @ =gBattleBufferA -	ldr r6, _08034B14 @ =gActiveBank -	ldrb r2, [r6] -	lsls r0, r2, 9 -	adds r1, 0x1 -	adds r0, r1 -	ldrb r3, [r0] -	cmp r3, 0 -	bne _08034B24 -	lsls r0, r2, 1 -	adds r0, r2 -	lsls r0, 2 -	ldr r1, _08034B18 @ =0x02017810 -	adds r0, r1 -	strb r3, [r0, 0x4] -	ldr r1, _08034B1C @ =gBattleBankFunc -	ldrb r0, [r6] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08034B20 @ =sub_8034B74 -	str r1, [r0] -	b _08034B60 -	.align 2, 0 -_08034B10: .4byte gBattleBufferA -_08034B14: .4byte gActiveBank -_08034B18: .4byte 0x02017810 -_08034B1C: .4byte gBattleBankFunc -_08034B20: .4byte sub_8034B74 -_08034B24: -	ldr r5, _08034B68 @ =gObjectBankIDs -	adds r0, r2, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	ldr r4, _08034B6C @ =gSprites -	adds r0, r4 -	bl FreeSpriteOamMatrix -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	bl DestroySprite -	ldrb r0, [r6] -	bl sub_8032A08 -	ldr r1, _08034B70 @ =gHealthboxIDs -	ldrb r0, [r6] -	adds r0, r1 -	ldrb r0, [r0] -	bl sub_8043DB0 -	bl OpponentBufferExecCompleted -_08034B60: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034B68: .4byte gObjectBankIDs -_08034B6C: .4byte gSprites -_08034B70: .4byte gHealthboxIDs -	thumb_func_end OpponentHandleReturnPokeToBall - -	thumb_func_start sub_8034B74 -sub_8034B74: @ 8034B74 -	push {r4,r5,lr} -	ldr r5, _08034B90 @ =gActiveBank -	ldrb r2, [r5] -	lsls r0, r2, 1 -	adds r0, r2 -	lsls r0, 2 -	ldr r4, _08034B94 @ =0x02017810 -	adds r3, r0, r4 -	ldrb r0, [r3, 0x4] -	cmp r0, 0 -	beq _08034B98 -	cmp r0, 0x1 -	beq _08034BC4 -	b _08034BEC -	.align 2, 0 -_08034B90: .4byte gActiveBank -_08034B94: .4byte 0x02017810 -_08034B98: -	lsls r0, r2, 2 -	adds r1, r4, 0 -	subs r1, 0x10 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x4 -	ands r0, r1 -	cmp r0, 0 -	beq _08034BB4 -	adds r0, r2, 0 -	adds r1, r2, 0 -	movs r3, 0x5 -	bl move_anim_start_t4 -_08034BB4: -	ldrb r0, [r5] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r4 -	movs r0, 0x1 -	strb r0, [r1, 0x4] -	b _08034BEC -_08034BC4: -	ldrb r1, [r3] -	movs r0, 0x40 -	ands r0, r1 -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0 -	bne _08034BEC -	strb r0, [r3, 0x4] -	ldrb r2, [r5] -	adds r0, r2, 0 -	adds r1, r2, 0 -	movs r3, 0x2 -	bl move_anim_start_t4 -	ldr r1, _08034BF4 @ =gBattleBankFunc -	ldrb r0, [r5] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08034BF8 @ =sub_8033160 -	str r1, [r0] -_08034BEC: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034BF4: .4byte gBattleBankFunc -_08034BF8: .4byte sub_8033160 -	thumb_func_end sub_8034B74 - -	thumb_func_start OpponentHandleTrainerThrow -OpponentHandleTrainerThrow: @ 8034BFC -	push {r4-r6,lr} -	mov r6, r9 -	mov r5, r8 -	push {r5,r6} -	ldr r3, _08034C18 @ =gTrainerBattleOpponent -	ldrh r1, [r3] -	movs r0, 0x80 -	lsls r0, 3 -	cmp r1, r0 -	bne _08034C1C -	bl GetSecretBaseTrainerPicIndex -	b _08034C42 -	.align 2, 0 -_08034C18: .4byte gTrainerBattleOpponent -_08034C1C: -	ldr r0, _08034C30 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x80 -	lsls r0, 1 -	ands r0, r1 -	cmp r0, 0 -	beq _08034C34 -	bl get_trainer_class_pic_index -	b _08034C42 -	.align 2, 0 -_08034C30: .4byte gBattleTypeFlags -_08034C34: -	movs r0, 0x80 -	lsls r0, 4 -	ands r0, r1 -	cmp r0, 0 -	beq _08034C48 -	bl sub_8135FBC -_08034C42: -	lsls r0, 24 -	lsrs r0, 24 -	b _08034C56 -_08034C48: -	ldr r2, _08034D88 @ =gTrainers -	ldrh r1, [r3] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x3] -_08034C56: -	mov r9, r0 -	ldr r0, _08034D8C @ =gActiveBank -	mov r8, r0 -	ldrb r1, [r0] -	mov r0, r9 -	bl sub_8031A6C -	mov r1, r8 -	ldrb r0, [r1] -	bl GetBankIdentity -	adds r1, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	mov r0, r9 -	bl GetMonSpriteTemplate_803C5A0 -	ldr r5, _08034D90 @ =gUnknown_02024E8C -	ldr r1, _08034D94 @ =gTrainerFrontPicCoords -	mov r2, r9 -	lsls r0, r2, 2 -	adds r0, r1 -	ldrb r0, [r0] -	movs r4, 0x8 -	subs r4, r0 -	lsls r4, 18 -	movs r0, 0xA0 -	lsls r0, 14 -	adds r4, r0 -	asrs r4, 16 -	mov r1, r8 -	ldrb r0, [r1] -	bl sub_8079E90 -	adds r3, r0, 0 -	lsls r3, 24 -	lsrs r3, 24 -	adds r0, r5, 0 -	movs r1, 0xB0 -	adds r2, r4, 0 -	bl CreateSprite -	ldr r5, _08034D98 @ =gObjectBankIDs -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	strb r0, [r1] -	ldr r4, _08034D9C @ =gSprites -	ldrb r0, [r2] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldr r1, _08034DA0 @ =0x0000ff10 -	strh r1, [r0, 0x24] -	ldrb r0, [r2] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	movs r1, 0x2 -	strh r1, [r0, 0x2E] -	ldr r0, _08034DA4 @ =gTrainerFrontPicPaletteTable -	mov r1, r9 -	lsls r6, r1, 3 -	adds r0, r6, r0 -	ldrh r0, [r0, 0x4] -	bl IndexOfSpritePaletteTag -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	ldrb r1, [r1] -	lsls r2, r1, 4 -	adds r2, r1 -	lsls r2, 2 -	adds r2, r4 -	lsls r0, 4 -	ldrb r3, [r2, 0x5] -	movs r1, 0xF -	ands r1, r3 -	orrs r1, r0 -	strb r1, [r2, 0x5] -	mov r1, r8 -	ldrb r0, [r1] -	adds r0, r5 -	ldrb r0, [r0] -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r4 -	ldrh r0, [r1, 0x4] -	lsls r0, 22 -	lsrs r0, 22 -	strh r0, [r1, 0x38] -	ldr r0, _08034DA8 @ =gTrainerFrontPicTable -	adds r6, r0 -	ldrh r0, [r6, 0x6] -	bl GetSpriteTileStartByTag -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	ldrb r2, [r1] -	lsls r1, r2, 4 -	adds r1, r2 -	lsls r1, 2 -	adds r1, r4 -	ldr r2, _08034DAC @ =0x000003ff -	ands r2, r0 -	ldrh r3, [r1, 0x4] -	ldr r0, _08034DB0 @ =0xfffffc00 -	ands r0, r3 -	orrs r0, r2 -	strh r0, [r1, 0x4] -	mov r1, r8 -	ldrb r0, [r1] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	mov r2, r9 -	strh r2, [r0, 0x6] -	mov r1, r8 -	ldrb r0, [r1] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r4, 0x1C -	adds r0, r4 -	ldr r1, _08034DB4 @ =sub_80313A0 -	str r1, [r0] -	ldr r1, _08034DB8 @ =gBattleBankFunc -	mov r2, r8 -	ldrb r0, [r2] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08034DBC @ =sub_8032B4C -	str r1, [r0] -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034D88: .4byte gTrainers -_08034D8C: .4byte gActiveBank -_08034D90: .4byte gUnknown_02024E8C -_08034D94: .4byte gTrainerFrontPicCoords -_08034D98: .4byte gObjectBankIDs -_08034D9C: .4byte gSprites -_08034DA0: .4byte 0x0000ff10 -_08034DA4: .4byte gTrainerFrontPicPaletteTable -_08034DA8: .4byte gTrainerFrontPicTable -_08034DAC: .4byte 0x000003ff -_08034DB0: .4byte 0xfffffc00 -_08034DB4: .4byte sub_80313A0 -_08034DB8: .4byte gBattleBankFunc -_08034DBC: .4byte sub_8032B4C -	thumb_func_end OpponentHandleTrainerThrow - -	thumb_func_start OpponentHandleTrainerSlide -OpponentHandleTrainerSlide: @ 8034DC0 -	push {r4-r6,lr} -	mov r6, r9 -	mov r5, r8 -	push {r5,r6} -	ldr r3, _08034DDC @ =gTrainerBattleOpponent -	ldrh r1, [r3] -	movs r0, 0x80 -	lsls r0, 3 -	cmp r1, r0 -	bne _08034DE0 -	bl GetSecretBaseTrainerPicIndex -	b _08034E06 -	.align 2, 0 -_08034DDC: .4byte gTrainerBattleOpponent -_08034DE0: -	ldr r0, _08034DF4 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x80 -	lsls r0, 1 -	ands r0, r1 -	cmp r0, 0 -	beq _08034DF8 -	bl get_trainer_class_pic_index -	b _08034E06 -	.align 2, 0 -_08034DF4: .4byte gBattleTypeFlags -_08034DF8: -	movs r0, 0x80 -	lsls r0, 4 -	ands r0, r1 -	cmp r0, 0 -	beq _08034E0C -	bl sub_8135FBC -_08034E06: -	lsls r0, 24 -	lsrs r0, 24 -	b _08034E1A -_08034E0C: -	ldr r2, _08034F4C @ =gTrainers -	ldrh r1, [r3] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x3] -_08034E1A: -	mov r9, r0 -	ldr r0, _08034F50 @ =gActiveBank -	mov r8, r0 -	ldrb r1, [r0] -	mov r0, r9 -	bl sub_8031A6C -	mov r1, r8 -	ldrb r0, [r1] -	bl GetBankIdentity -	adds r1, r0, 0 -	lsls r1, 24 -	lsrs r1, 24 -	mov r0, r9 -	bl GetMonSpriteTemplate_803C5A0 -	ldr r0, _08034F54 @ =gUnknown_02024E8C -	ldr r2, _08034F58 @ =gTrainerFrontPicCoords -	mov r3, r9 -	lsls r1, r3, 2 -	adds r1, r2 -	ldrb r1, [r1] -	movs r2, 0x8 -	subs r2, r1 -	lsls r2, 18 -	movs r1, 0xA0 -	lsls r1, 14 -	adds r2, r1 -	asrs r2, 16 -	movs r1, 0xB0 -	movs r3, 0x1E -	bl CreateSprite -	ldr r5, _08034F5C @ =gObjectBankIDs -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	strb r0, [r1] -	ldr r4, _08034F60 @ =gSprites -	ldrb r0, [r2] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	movs r1, 0x60 -	strh r1, [r0, 0x24] -	ldrb r0, [r2] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldrh r1, [r0, 0x20] -	adds r1, 0x20 -	strh r1, [r0, 0x20] -	ldrb r0, [r2] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldr r1, _08034F64 @ =0x0000fffe -	strh r1, [r0, 0x2E] -	ldr r0, _08034F68 @ =gTrainerFrontPicPaletteTable -	mov r3, r9 -	lsls r6, r3, 3 -	adds r0, r6, r0 -	ldrh r0, [r0, 0x4] -	bl IndexOfSpritePaletteTag -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	ldrb r1, [r1] -	lsls r2, r1, 4 -	adds r2, r1 -	lsls r2, 2 -	adds r2, r4 -	lsls r0, 4 -	ldrb r3, [r2, 0x5] -	movs r1, 0xF -	ands r1, r3 -	orrs r1, r0 -	strb r1, [r2, 0x5] -	mov r3, r8 -	ldrb r0, [r3] -	adds r0, r5 -	ldrb r0, [r0] -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r4 -	ldrh r0, [r1, 0x4] -	lsls r0, 22 -	lsrs r0, 22 -	strh r0, [r1, 0x38] -	ldr r0, _08034F6C @ =gTrainerFrontPicTable -	adds r6, r0 -	ldrh r0, [r6, 0x6] -	bl GetSpriteTileStartByTag -	mov r2, r8 -	ldrb r1, [r2] -	adds r1, r5 -	ldrb r2, [r1] -	lsls r1, r2, 4 -	adds r1, r2 -	lsls r1, 2 -	adds r1, r4 -	ldr r2, _08034F70 @ =0x000003ff -	ands r2, r0 -	ldrh r3, [r1, 0x4] -	ldr r0, _08034F74 @ =0xfffffc00 -	ands r0, r3 -	orrs r0, r2 -	strh r0, [r1, 0x4] -	mov r3, r8 -	ldrb r0, [r3] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	mov r1, r9 -	strh r1, [r0, 0x6] -	ldrb r0, [r3] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r4, 0x1C -	adds r0, r4 -	ldr r1, _08034F78 @ =sub_80313A0 -	str r1, [r0] -	ldr r1, _08034F7C @ =gBattleBankFunc -	ldrb r0, [r3] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08034F80 @ =sub_8032B84 -	str r1, [r0] -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08034F4C: .4byte gTrainers -_08034F50: .4byte gActiveBank -_08034F54: .4byte gUnknown_02024E8C -_08034F58: .4byte gTrainerFrontPicCoords -_08034F5C: .4byte gObjectBankIDs -_08034F60: .4byte gSprites -_08034F64: .4byte 0x0000fffe -_08034F68: .4byte gTrainerFrontPicPaletteTable -_08034F6C: .4byte gTrainerFrontPicTable -_08034F70: .4byte 0x000003ff -_08034F74: .4byte 0xfffffc00 -_08034F78: .4byte sub_80313A0 -_08034F7C: .4byte gBattleBankFunc -_08034F80: .4byte sub_8032B84 -	thumb_func_end OpponentHandleTrainerSlide - -	thumb_func_start OpponentHandleTrainerSlideBack -OpponentHandleTrainerSlideBack: @ 8034F84 -	push {r4-r6,lr} -	ldr r6, _08035014 @ =gObjectBankIDs -	ldr r4, _08035018 @ =gActiveBank -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	ldr r5, _0803501C @ =gSprites -	adds r0, r5 -	bl oamt_add_pos2_onto_pos1 -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	movs r1, 0x23 -	strh r1, [r0, 0x2E] -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	movs r1, 0x8C -	lsls r1, 1 -	strh r1, [r0, 0x32] -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldrh r1, [r0, 0x22] -	strh r1, [r0, 0x36] -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r5, 0 -	adds r1, 0x1C -	adds r0, r1 -	ldr r1, _08035020 @ =sub_8078B34 -	str r1, [r0] -	ldrb r0, [r4] -	adds r0, r6 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r5 -	ldr r1, _08035024 @ =SpriteCallbackDummy -	bl oamt_set_x3A_32 -	ldr r1, _08035028 @ =gBattleBankFunc -	ldrb r0, [r4] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _0803502C @ =sub_8032BBC -	str r1, [r0] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035014: .4byte gObjectBankIDs -_08035018: .4byte gActiveBank -_0803501C: .4byte gSprites -_08035020: .4byte sub_8078B34 -_08035024: .4byte SpriteCallbackDummy -_08035028: .4byte gBattleBankFunc -_0803502C: .4byte sub_8032BBC -	thumb_func_end OpponentHandleTrainerSlideBack - -	thumb_func_start sub_8035030 -sub_8035030: @ 8035030 -	push {r4,r5,lr} -	ldr r5, _08035074 @ =gActiveBank -	ldrb r2, [r5] -	lsls r0, r2, 1 -	adds r0, r2 -	lsls r0, 2 -	ldr r4, _08035078 @ =0x02017810 -	adds r3, r0, r4 -	ldrb r0, [r3, 0x4] -	cmp r0, 0 -	bne _0803507C -	lsls r0, r2, 2 -	adds r1, r4, 0 -	subs r1, 0x10 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x4 -	ands r0, r1 -	cmp r0, 0 -	beq _08035062 -	adds r0, r2, 0 -	adds r1, r2, 0 -	movs r3, 0x5 -	bl move_anim_start_t4 -_08035062: -	ldrb r0, [r5] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r4 -	ldrb r0, [r1, 0x4] -	adds r0, 0x1 -	strb r0, [r1, 0x4] -	b _080350B8 -	.align 2, 0 -_08035074: .4byte gActiveBank -_08035078: .4byte 0x02017810 -_0803507C: -	ldrb r1, [r3] -	movs r0, 0x40 -	ands r0, r1 -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0 -	bne _080350B8 -	strb r0, [r3, 0x4] -	movs r0, 0x10 -	movs r1, 0x3F -	bl PlaySE12WithPanning -	ldr r2, _080350C0 @ =gSprites -	ldr r1, _080350C4 @ =gObjectBankIDs -	ldrb r0, [r5] -	adds r0, r1 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r2, 0x1C -	adds r0, r2 -	ldr r1, _080350C8 @ =sub_8010384 -	str r1, [r0] -	ldr r1, _080350CC @ =gBattleBankFunc -	ldrb r0, [r5] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _080350D0 @ =sub_803311C -	str r1, [r0] -_080350B8: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_080350C0: .4byte gSprites -_080350C4: .4byte gObjectBankIDs -_080350C8: .4byte sub_8010384 -_080350CC: .4byte gBattleBankFunc -_080350D0: .4byte sub_803311C -	thumb_func_end sub_8035030 - -	thumb_func_start sub_80350D4 -sub_80350D4: @ 80350D4 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80350D4 - -	thumb_func_start sub_80350E0 -sub_80350E0: @ 80350E0 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80350E0 - -	thumb_func_start OpponentHandleBallThrow -OpponentHandleBallThrow: @ 80350EC -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleBallThrow - -	thumb_func_start OpponentHandlePause -OpponentHandlePause: @ 80350F8 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandlePause - -	thumb_func_start OpponentHandleMoveAnimation -OpponentHandleMoveAnimation: @ 8035104 -	push {r4-r6,lr} -	ldr r6, _080351E8 @ =gActiveBank -	ldrb r0, [r6] -	bl mplay_80342A4 -	lsls r0, 24 -	cmp r0, 0 -	beq _08035116 -	b _08035226 -_08035116: -	ldr r0, _080351EC @ =gBattleBufferA -	mov r12, r0 -	ldrb r2, [r6] -	lsls r2, 9 -	adds r0, 0x1 -	adds r0, r2, r0 -	ldrb r0, [r0] -	mov r1, r12 -	adds r1, 0x2 -	adds r1, r2, r1 -	ldrb r1, [r1] -	lsls r1, 8 -	orrs r0, r1 -	ldr r5, _080351F0 @ =gUnknown_0202F7C4 -	mov r1, r12 -	adds r1, 0x3 -	adds r2, r1 -	ldrb r1, [r2] -	strb r1, [r5] -	ldr r4, _080351F4 @ =gMovePowerMoveAnim -	ldrb r2, [r6] -	lsls r2, 9 -	mov r1, r12 -	adds r1, 0x4 -	adds r1, r2, r1 -	ldrb r3, [r1] -	mov r1, r12 -	adds r1, 0x5 -	adds r2, r1 -	ldrb r1, [r2] -	lsls r1, 8 -	orrs r3, r1 -	strh r3, [r4] -	ldr r4, _080351F8 @ =gMoveDmgMoveAnim -	ldrb r2, [r6] -	lsls r2, 9 -	mov r1, r12 -	adds r1, 0x6 -	adds r1, r2, r1 -	ldrb r3, [r1] -	mov r1, r12 -	adds r1, 0x7 -	adds r1, r2, r1 -	ldrb r1, [r1] -	lsls r1, 8 -	orrs r3, r1 -	mov r1, r12 -	adds r1, 0x8 -	adds r1, r2, r1 -	ldrb r1, [r1] -	lsls r1, 16 -	orrs r3, r1 -	mov r1, r12 -	adds r1, 0x9 -	adds r2, r1 -	ldrb r1, [r2] -	lsls r1, 24 -	orrs r3, r1 -	str r3, [r4] -	ldr r3, _080351FC @ =gHappinessMoveAnim -	ldrb r1, [r6] -	lsls r1, 9 -	mov r2, r12 -	adds r2, 0xA -	adds r1, r2 -	ldrb r1, [r1] -	strb r1, [r3] -	ldr r4, _08035200 @ =gWeatherMoveAnim -	ldrb r2, [r6] -	lsls r2, 9 -	mov r1, r12 -	adds r1, 0xC -	adds r1, r2, r1 -	ldrb r3, [r1] -	mov r1, r12 -	adds r1, 0xD -	adds r2, r1 -	ldrb r1, [r2] -	lsls r1, 8 -	orrs r3, r1 -	strh r3, [r4] -	ldr r3, _08035204 @ =gDisableStructMoveAnim -	ldrb r2, [r6] -	lsls r2, 9 -	mov r1, r12 -	adds r1, 0x10 -	adds r2, r1 -	str r2, [r3] -	ldr r3, _08035208 @ =gPID_perBank -	ldrb r1, [r6] -	lsls r1, 2 -	adds r1, r3 -	ldr r2, [r2] -	str r2, [r1] -	ldrb r1, [r5] -	bl sub_8031720 -	lsls r0, 24 -	lsrs r2, r0, 24 -	cmp r2, 0 -	beq _0803520C -	bl OpponentBufferExecCompleted -	b _08035226 -	.align 2, 0 -_080351E8: .4byte gActiveBank -_080351EC: .4byte gBattleBufferA -_080351F0: .4byte gUnknown_0202F7C4 -_080351F4: .4byte gMovePowerMoveAnim -_080351F8: .4byte gMoveDmgMoveAnim -_080351FC: .4byte gHappinessMoveAnim -_08035200: .4byte gWeatherMoveAnim -_08035204: .4byte gDisableStructMoveAnim -_08035208: .4byte gPID_perBank -_0803520C: -	ldrb r1, [r6] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	ldr r1, _0803522C @ =0x02017810 -	adds r0, r1 -	strb r2, [r0, 0x4] -	ldr r1, _08035230 @ =gBattleBankFunc -	ldrb r0, [r6] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08035234 @ =sub_8035238 -	str r1, [r0] -_08035226: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0803522C: .4byte 0x02017810 -_08035230: .4byte gBattleBankFunc -_08035234: .4byte sub_8035238 -	thumb_func_end OpponentHandleMoveAnimation - -	thumb_func_start sub_8035238 -sub_8035238: @ 8035238 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	ldr r2, _0803527C @ =gBattleBufferA -	ldr r5, _08035280 @ =gActiveBank -	ldrb r3, [r5] -	lsls r1, r3, 9 -	adds r0, r2, 0x1 -	mov r9, r0 -	adds r0, r1, r0 -	ldrb r4, [r0] -	adds r6, r2, 0x2 -	mov r8, r6 -	adds r0, r1, r6 -	ldrb r0, [r0] -	lsls r0, 8 -	orrs r4, r0 -	adds r2, 0xB -	adds r1, r2 -	ldrb r7, [r1] -	lsls r0, r3, 1 -	adds r0, r3 -	lsls r0, 2 -	ldr r6, _08035284 @ =0x02017810 -	adds r0, r6 -	ldrb r2, [r0, 0x4] -	cmp r2, 0x1 -	beq _080352C6 -	cmp r2, 0x1 -	bgt _08035288 -	cmp r2, 0 -	beq _08035292 -	b _08035390 -	.align 2, 0 -_0803527C: .4byte gBattleBufferA -_08035280: .4byte gActiveBank -_08035284: .4byte 0x02017810 -_08035288: -	cmp r2, 0x2 -	beq _080352EC -	cmp r2, 0x3 -	beq _08035358 -	b _08035390 -_08035292: -	lsls r1, r3, 2 -	adds r0, r6, 0 -	subs r0, 0x10 -	adds r1, r0 -	ldrb r2, [r1] -	movs r0, 0xC -	ands r0, r2 -	cmp r0, 0x4 -	bne _080352B6 -	movs r0, 0x8 -	orrs r0, r2 -	strb r0, [r1] -	ldrb r2, [r5] -	adds r0, r2, 0 -	adds r1, r2, 0 -	movs r3, 0x5 -	bl move_anim_start_t4 -_080352B6: -	ldrb r0, [r5] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r6 -	movs r0, 0x1 -	strb r0, [r1, 0x4] -	b _08035390 -_080352C6: -	ldrb r1, [r0] -	movs r0, 0x40 -	ands r0, r1 -	cmp r0, 0 -	bne _08035390 -	movs r0, 0 -	bl sub_80326EC -	adds r0, r4, 0 -	bl ExecuteMoveAnim -	ldrb r0, [r5] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r6 -	movs r0, 0x2 -	strb r0, [r1, 0x4] -	b _08035390 -_080352EC: -	ldr r0, _08035348 @ =gAnimScriptCallback -	ldr r0, [r0] -	bl _call_via_r0 -	ldr r0, _0803534C @ =gAnimScriptActive -	ldrb r0, [r0] -	cmp r0, 0 -	bne _08035390 -	movs r0, 0x1 -	bl sub_80326EC -	ldrb r2, [r5] -	lsls r0, r2, 2 -	adds r4, r6, 0 -	subs r4, 0x10 -	adds r0, r4 -	ldrb r1, [r0] -	movs r0, 0x4 -	ands r0, r1 -	cmp r0, 0 -	beq _08035334 -	cmp r7, 0x1 -	bhi _08035334 -	adds r0, r2, 0 -	adds r1, r2, 0 -	movs r3, 0x6 -	bl move_anim_start_t4 -	ldrb r0, [r5] -	lsls r0, 2 -	adds r0, r4 -	ldrb r2, [r0] -	movs r1, 0x9 -	negs r1, r1 -	ands r1, r2 -	strb r1, [r0] -_08035334: -	ldr r0, _08035350 @ =gActiveBank -	ldrb r1, [r0] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	ldr r1, _08035354 @ =0x02017810 -	adds r0, r1 -	movs r1, 0x3 -	strb r1, [r0, 0x4] -	b _08035390 -	.align 2, 0 -_08035348: .4byte gAnimScriptCallback -_0803534C: .4byte gAnimScriptActive -_08035350: .4byte gActiveBank -_08035354: .4byte 0x02017810 -_08035358: -	ldrb r1, [r0] -	movs r0, 0x40 -	ands r0, r1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0 -	bne _08035390 -	bl sub_8031F24 -	ldrb r0, [r5] -	lsls r2, r0, 9 -	mov r3, r9 -	adds r1, r2, r3 -	ldrb r1, [r1] -	add r2, r8 -	ldrb r2, [r2] -	lsls r2, 8 -	orrs r1, r2 -	bl sub_80324BC -	ldrb r1, [r5] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r6 -	strb r4, [r0, 0x4] -	bl OpponentBufferExecCompleted -_08035390: -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_8035238 - -	thumb_func_start OpponentHandlePrintString -OpponentHandlePrintString: @ 803539C -	push {r4,lr} -	sub sp, 0x4 -	ldr r0, _080353E0 @ =gUnknown_030042A4 -	movs r1, 0 -	strh r1, [r0] -	ldr r0, _080353E4 @ =gUnknown_030042A0 -	strh r1, [r0] -	ldr r4, _080353E8 @ =gActiveBank -	ldrb r0, [r4] -	lsls r0, 9 -	ldr r1, _080353EC @ =gUnknown_02023A62 -	adds r0, r1 -	ldrh r0, [r0] -	bl BufferStringBattle -	ldr r0, _080353F0 @ =gUnknown_03004210 -	ldr r1, _080353F4 @ =gDisplayedStringBattle -	movs r2, 0xF -	str r2, [sp] -	movs r2, 0x90 -	movs r3, 0x2 -	bl sub_8002EB0 -	ldr r1, _080353F8 @ =gBattleBankFunc -	ldrb r0, [r4] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _080353FC @ =sub_80331D0 -	str r1, [r0] -	add sp, 0x4 -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_080353E0: .4byte gUnknown_030042A4 -_080353E4: .4byte gUnknown_030042A0 -_080353E8: .4byte gActiveBank -_080353EC: .4byte gUnknown_02023A62 -_080353F0: .4byte gUnknown_03004210 -_080353F4: .4byte gDisplayedStringBattle -_080353F8: .4byte gBattleBankFunc -_080353FC: .4byte sub_80331D0 -	thumb_func_end OpponentHandlePrintString - -	thumb_func_start OpponentHandlePrintStringPlayerOnly -OpponentHandlePrintStringPlayerOnly: @ 8035400 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandlePrintStringPlayerOnly - -	thumb_func_start sub_803540C -sub_803540C: @ 803540C -	push {lr} -	bl sub_8036B0C -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_803540C - -	thumb_func_start sub_803541C -sub_803541C: @ 803541C -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_803541C - -	thumb_func_start sub_8035428 -sub_8035428: @ 8035428 -	push {r4-r6,lr} -	ldr r6, _0803545C @ =gActiveBank -	ldrb r0, [r6] -	lsls r0, 9 -	ldr r1, _08035460 @ =gUnknown_02023A64 -	adds r5, r0, r1 -	ldr r0, _08035464 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x93 -	lsls r0, 3 -	ands r0, r1 -	cmp r0, 0 -	beq _080354F8 -	bl BattleAI_SetupAIData -	bl BattleAI_GetAIActionToUse -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0x4 -	beq _08035468 -	cmp r4, 0x5 -	bne _08035474 -	movs r0, 0x1 -	movs r1, 0x4 -	b _0803546C -	.align 2, 0 -_0803545C: .4byte gActiveBank -_08035460: .4byte gUnknown_02023A64 -_08035464: .4byte gBattleTypeFlags -_08035468: -	movs r0, 0x1 -	movs r1, 0x3 -_0803546C: -	movs r2, 0 -	bl dp01_build_cmdbuf_x21_a_bb -	b _080354E0 -_08035474: -	ldr r3, _080354E8 @ =gBattleMoves -	lsls r0, r4, 1 -	adds r2, r5, r0 -	ldrh r1, [r2] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	ldrb r1, [r0, 0x6] -	movs r0, 0x12 -	ands r0, r1 -	cmp r0, 0 -	beq _08035494 -	ldr r1, _080354EC @ =gBankTarget -	ldrb r0, [r6] -	strb r0, [r1] -_08035494: -	ldrh r1, [r2] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	ldrb r1, [r0, 0x6] -	movs r0, 0x8 -	ands r0, r1 -	cmp r0, 0 -	beq _080354CE -	movs r0, 0 -	bl GetBankByPlayerAI -	ldr r5, _080354EC @ =gBankTarget -	strb r0, [r5] -	ldr r0, _080354F0 @ =gAbsentBankFlags -	ldrb r1, [r0] -	ldr r2, _080354F4 @ =gBitTable -	ldrb r0, [r5] -	lsls r0, 2 -	adds r0, r2 -	ldr r0, [r0] -	ands r1, r0 -	cmp r1, 0 -	beq _080354CE -	movs r0, 0x2 -	bl GetBankByPlayerAI -	strb r0, [r5] -_080354CE: -	ldr r0, _080354EC @ =gBankTarget -	ldrb r0, [r0] -	lsls r0, 8 -	orrs r4, r0 -	movs r0, 0x1 -	movs r1, 0xA -	adds r2, r4, 0 -	bl dp01_build_cmdbuf_x21_a_bb -_080354E0: -	bl OpponentBufferExecCompleted -	b _0803558A -	.align 2, 0 -_080354E8: .4byte gBattleMoves -_080354EC: .4byte gBankTarget -_080354F0: .4byte gAbsentBankFlags -_080354F4: .4byte gBitTable -_080354F8: -	movs r6, 0x3 -_080354FA: -	bl Random -	adds r4, r0, 0 -	ands r4, r6 -	lsls r0, r4, 1 -	adds r0, r5, r0 -	ldrh r2, [r0] -	cmp r2, 0 -	beq _080354FA -	ldr r1, _08035534 @ =gBattleMoves -	lsls r0, r2, 1 -	adds r0, r2 -	lsls r0, 2 -	adds r0, r1 -	ldrb r1, [r0, 0x6] -	movs r0, 0x12 -	ands r0, r1 -	cmp r0, 0 -	beq _0803553C -	ldr r0, _08035538 @ =gActiveBank -	ldrb r0, [r0] -	lsls r0, 8 -	orrs r4, r0 -	movs r0, 0x1 -	movs r1, 0xA -	adds r2, r4, 0 -	bl dp01_build_cmdbuf_x21_a_bb -	b _08035586 -	.align 2, 0 -_08035534: .4byte gBattleMoves -_08035538: .4byte gActiveBank -_0803553C: -	ldr r0, _0803556C @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _08035570 -	bl Random -	movs r1, 0x2 -	ands r1, r0 -	lsls r1, 24 -	lsrs r1, 24 -	adds r0, r1, 0 -	bl GetBankByPlayerAI -	adds r2, r0, 0 -	lsls r2, 24 -	lsrs r2, 16 -	orrs r2, r4 -	movs r0, 0x1 -	movs r1, 0xA -	bl dp01_build_cmdbuf_x21_a_bb -	b _08035586 -	.align 2, 0 -_0803556C: .4byte gBattleTypeFlags -_08035570: -	movs r0, 0 -	bl GetBankByPlayerAI -	adds r2, r0, 0 -	lsls r2, 24 -	lsrs r2, 16 -	orrs r2, r4 -	movs r0, 0x1 -	movs r1, 0xA -	bl dp01_build_cmdbuf_x21_a_bb -_08035586: -	bl OpponentBufferExecCompleted -_0803558A: -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end sub_8035428 - -	thumb_func_start sub_8035590 -sub_8035590: @ 8035590 -	push {lr} -	ldr r1, _080355B4 @ =0x02000000 -	ldr r0, _080355B8 @ =gActiveBank -	ldrb r0, [r0] -	lsrs r0, 1 -	lsls r0, 1 -	ldr r2, _080355BC @ =0x000160d4 -	adds r0, r2 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x1 -	bl dp01_build_cmdbuf_x23_aa_0 -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_080355B4: .4byte 0x02000000 -_080355B8: .4byte gActiveBank -_080355BC: .4byte 0x000160d4 -	thumb_func_end sub_8035590 - -	thumb_func_start sub_80355C0 -sub_80355C0: @ 80355C0 -	push {r4-r6,lr} -	ldr r6, _08035604 @ =0x02000000 -	ldr r5, _08035608 @ =gActiveBank -	ldrb r0, [r5] -	bl GetBankIdentity -	lsls r0, 24 -	lsrs r0, 25 -	ldr r1, _0803560C @ =0x000160c8 -	adds r0, r1 -	adds r0, r6 -	ldrb r0, [r0] -	cmp r0, 0x6 -	bne _08035664 -	bl sub_8036CD4 -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0x6 -	bne _0803568A -	ldr r0, _08035610 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	bne _08035614 -	movs r0, 0x1 -	bl GetBankByPlayerAI -	lsls r0, 24 -	lsrs r5, r0, 24 -	adds r6, r5, 0 -	b _08035628 -	.align 2, 0 -_08035604: .4byte 0x02000000 -_08035608: .4byte gActiveBank -_0803560C: .4byte 0x000160c8 -_08035610: .4byte gBattleTypeFlags -_08035614: -	movs r0, 0x1 -	bl GetBankByPlayerAI -	lsls r0, 24 -	lsrs r6, r0, 24 -	movs r0, 0x3 -	bl GetBankByPlayerAI -	lsls r0, 24 -	lsrs r5, r0, 24 -_08035628: -	movs r4, 0 -	b _0803562E -_0803562C: -	adds r4, 0x1 -_0803562E: -	cmp r4, 0x5 -	bgt _0803568A -	movs r0, 0x64 -	muls r0, r4 -	ldr r1, _0803565C @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x39 -	bl GetMonData -	cmp r0, 0 -	beq _0803562C -	ldr r1, _08035660 @ =gBattlePartyID -	lsls r0, r6, 1 -	adds r0, r1 -	ldrh r0, [r0] -	cmp r4, r0 -	beq _0803562C -	lsls r0, r5, 1 -	adds r0, r1 -	ldrh r0, [r0] -	cmp r4, r0 -	beq _0803562C -	b _0803568A -	.align 2, 0 -_0803565C: .4byte gEnemyParty -_08035660: .4byte gBattlePartyID -_08035664: -	ldrb r0, [r5] -	bl GetBankIdentity -	lsls r0, 24 -	lsrs r0, 25 -	ldr r2, _080356B0 @ =0x000160c8 -	adds r0, r2 -	adds r0, r6 -	ldrb r4, [r0] -	ldrb r0, [r5] -	bl GetBankIdentity -	lsls r0, 24 -	lsrs r0, 25 -	ldr r1, _080356B0 @ =0x000160c8 -	adds r0, r1 -	adds r0, r6 -	movs r1, 0x6 -	strb r1, [r0] -_0803568A: -	ldr r1, _080356B4 @ =0x02000000 -	ldr r0, _080356B8 @ =gActiveBank -	ldrb r0, [r0] -	ldr r2, _080356BC @ =0x00016068 -	adds r0, r2 -	adds r0, r1 -	strb r4, [r0] -	lsls r1, r4, 24 -	lsrs r1, 24 -	movs r0, 0x1 -	movs r2, 0 -	bl dp01_build_cmdbuf_x22_a_three_bytes -	bl OpponentBufferExecCompleted -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_080356B0: .4byte 0x000160c8 -_080356B4: .4byte 0x02000000 -_080356B8: .4byte gActiveBank -_080356BC: .4byte 0x00016068 -	thumb_func_end sub_80355C0 - -	thumb_func_start sub_80356C0 -sub_80356C0: @ 80356C0 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80356C0 - -	thumb_func_start OpponentHandleHealthBarUpdate -OpponentHandleHealthBarUpdate: @ 80356CC -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x4 -	movs r0, 0 -	bl load_gfxc_health_bar -	ldr r3, _08035744 @ =gBattleBufferA -	ldr r0, _08035748 @ =gActiveBank -	mov r9, r0 -	ldrb r4, [r0] -	lsls r2, r4, 9 -	adds r0, r3, 0x3 -	adds r0, r2, r0 -	ldrb r1, [r0] -	lsls r1, 8 -	adds r3, 0x2 -	adds r2, r3 -	ldrb r0, [r2] -	orrs r0, r1 -	lsls r0, 16 -	asrs r7, r0, 16 -	ldr r0, _0803574C @ =0x00007fff -	cmp r7, r0 -	beq _0803575C -	ldr r6, _08035750 @ =gBattlePartyID -	lsls r0, r4, 1 -	adds r0, r6 -	ldrh r0, [r0] -	movs r5, 0x64 -	muls r0, r5 -	ldr r4, _08035754 @ =gEnemyParty -	adds r0, r4 -	movs r1, 0x3A -	bl GetMonData -	mov r8, r0 -	mov r1, r9 -	ldrb r0, [r1] -	lsls r0, 1 -	adds r0, r6 -	ldrh r0, [r0] -	muls r0, r5 -	adds r0, r4 -	movs r1, 0x39 -	bl GetMonData -	adds r3, r0, 0 -	mov r1, r9 -	ldrb r0, [r1] -	ldr r1, _08035758 @ =gHealthboxIDs -	adds r1, r0, r1 -	ldrb r1, [r1] -	str r7, [sp] -	mov r2, r8 -	bl sub_8043D84 -	b _08035786 -	.align 2, 0 -_08035744: .4byte gBattleBufferA -_08035748: .4byte gActiveBank -_0803574C: .4byte 0x00007fff -_08035750: .4byte gBattlePartyID -_08035754: .4byte gEnemyParty -_08035758: .4byte gHealthboxIDs -_0803575C: -	ldr r1, _080357A4 @ =gBattlePartyID -	lsls r0, r4, 1 -	adds r0, r1 -	ldrh r1, [r0] -	movs r0, 0x64 -	muls r0, r1 -	ldr r1, _080357A8 @ =gEnemyParty -	adds r0, r1 -	movs r1, 0x3A -	bl GetMonData -	adds r2, r0, 0 -	mov r1, r9 -	ldrb r0, [r1] -	ldr r1, _080357AC @ =gHealthboxIDs -	adds r1, r0, r1 -	ldrb r1, [r1] -	str r7, [sp] -	movs r3, 0 -	bl sub_8043D84 -_08035786: -	ldr r1, _080357B0 @ =gBattleBankFunc -	ldr r0, _080357B4 @ =gActiveBank -	ldrb r0, [r0] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _080357B8 @ =sub_80330C8 -	str r1, [r0] -	add sp, 0x4 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_080357A4: .4byte gBattlePartyID -_080357A8: .4byte gEnemyParty -_080357AC: .4byte gHealthboxIDs -_080357B0: .4byte gBattleBankFunc -_080357B4: .4byte gActiveBank -_080357B8: .4byte sub_80330C8 -	thumb_func_end OpponentHandleHealthBarUpdate - -	thumb_func_start OpponentHandleExpBarUpdate -OpponentHandleExpBarUpdate: @ 80357BC -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleExpBarUpdate - -	thumb_func_start OpponentHandleStatusIconUpdate -OpponentHandleStatusIconUpdate: @ 80357C8 -	push {r4,lr} -	ldr r4, _08035820 @ =gActiveBank -	ldrb r0, [r4] -	bl mplay_80342A4 -	lsls r0, 24 -	cmp r0, 0 -	bne _08035818 -	ldr r0, _08035824 @ =gHealthboxIDs -	ldrb r1, [r4] -	adds r0, r1, r0 -	ldrb r0, [r0] -	ldr r2, _08035828 @ =gBattlePartyID -	lsls r1, 1 -	adds r1, r2 -	ldrh r2, [r1] -	movs r1, 0x64 -	muls r1, r2 -	ldr r2, _0803582C @ =gEnemyParty -	adds r1, r2 -	movs r2, 0x9 -	bl sub_8045A5C -	ldrb r0, [r4] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	ldr r0, _08035830 @ =0x02017810 -	adds r1, r0 -	ldrb r2, [r1] -	movs r0, 0x11 -	negs r0, r0 -	ands r0, r2 -	strb r0, [r1] -	ldr r1, _08035834 @ =gBattleBankFunc -	ldrb r0, [r4] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08035838 @ =sub_8033494 -	str r1, [r0] -_08035818: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035820: .4byte gActiveBank -_08035824: .4byte gHealthboxIDs -_08035828: .4byte gBattlePartyID -_0803582C: .4byte gEnemyParty -_08035830: .4byte 0x02017810 -_08035834: .4byte gBattleBankFunc -_08035838: .4byte sub_8033494 -	thumb_func_end OpponentHandleStatusIconUpdate - -	thumb_func_start OpponentHandleStatusAnimation -OpponentHandleStatusAnimation: @ 803583C -	push {r4,r5,lr} -	ldr r5, _08035894 @ =gActiveBank -	ldrb r0, [r5] -	bl mplay_80342A4 -	lsls r0, 24 -	cmp r0, 0 -	bne _0803588C -	ldr r4, _08035898 @ =gBattleBufferA -	ldrb r3, [r5] -	lsls r3, 9 -	adds r0, r4, 0x1 -	adds r0, r3, r0 -	ldrb r0, [r0] -	adds r1, r4, 0x2 -	adds r1, r3, r1 -	ldrb r1, [r1] -	adds r2, r4, 0x3 -	adds r2, r3, r2 -	ldrb r2, [r2] -	lsls r2, 8 -	orrs r1, r2 -	adds r2, r4, 0x4 -	adds r2, r3, r2 -	ldrb r2, [r2] -	lsls r2, 16 -	orrs r1, r2 -	adds r4, 0x5 -	adds r3, r4 -	ldrb r2, [r3] -	lsls r2, 24 -	orrs r1, r2 -	bl move_anim_start_t2_for_situation -	ldr r1, _0803589C @ =gBattleBankFunc -	ldrb r0, [r5] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _080358A0 @ =sub_8033494 -	str r1, [r0] -_0803588C: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035894: .4byte gActiveBank -_08035898: .4byte gBattleBufferA -_0803589C: .4byte gBattleBankFunc -_080358A0: .4byte sub_8033494 -	thumb_func_end OpponentHandleStatusAnimation - -	thumb_func_start OpponentHandleStatusXor -OpponentHandleStatusXor: @ 80358A4 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleStatusXor - -	thumb_func_start sub_80358B0 -sub_80358B0: @ 80358B0 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358B0 - -	thumb_func_start OpponentHandleDMATransfer -OpponentHandleDMATransfer: @ 80358BC -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleDMATransfer - -	thumb_func_start sub_80358C8 -sub_80358C8: @ 80358C8 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358C8 - -	thumb_func_start sub_80358D4 -sub_80358D4: @ 80358D4 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358D4 - -	thumb_func_start sub_80358E0 -sub_80358E0: @ 80358E0 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358E0 - -	thumb_func_start sub_80358EC -sub_80358EC: @ 80358EC -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358EC - -	thumb_func_start sub_80358F8 -sub_80358F8: @ 80358F8 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_80358F8 - -	thumb_func_start sub_8035904 -sub_8035904: @ 8035904 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_8035904 - -	thumb_func_start sub_8035910 -sub_8035910: @ 8035910 -	push {lr} -	ldr r2, _08035928 @ =gUnknown_020238C8 -	ldrb r1, [r2] -	movs r0, 0x80 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035928: .4byte gUnknown_020238C8 -	thumb_func_end sub_8035910 - -	thumb_func_start sub_803592C -sub_803592C: @ 803592C -	push {lr} -	ldr r3, _08035958 @ =gUnknown_020238C8 -	ldr r1, _0803595C @ =gBattleBufferA -	ldr r0, _08035960 @ =gActiveBank -	ldrb r0, [r0] -	lsls r0, 9 -	adds r1, 0x1 -	adds r0, r1 -	ldrb r0, [r0] -	movs r1, 0x7F -	ands r1, r0 -	ldrb r2, [r3] -	movs r0, 0x80 -	negs r0, r0 -	ands r0, r2 -	orrs r0, r1 -	strb r0, [r3] -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035958: .4byte gUnknown_020238C8 -_0803595C: .4byte gBattleBufferA -_08035960: .4byte gActiveBank -	thumb_func_end sub_803592C - -	thumb_func_start sub_8035964 -sub_8035964: @ 8035964 -	push {lr} -	ldr r2, _08035978 @ =gUnknown_020238C8 -	ldrb r1, [r2] -	movs r0, 0x7F -	ands r0, r1 -	strb r0, [r2] -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035978: .4byte gUnknown_020238C8 -	thumb_func_end sub_8035964 - -	thumb_func_start sub_803597C -sub_803597C: @ 803597C -	push {lr} -	ldr r3, _080359A0 @ =gUnknown_020238C8 -	ldr r1, [r3] -	lsls r1, 24 -	lsrs r1, 31 -	movs r0, 0x1 -	eors r1, r0 -	lsls r1, 7 -	ldrb r2, [r3] -	movs r0, 0x7F -	ands r0, r2 -	orrs r0, r1 -	strb r0, [r3] -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_080359A0: .4byte gUnknown_020238C8 -	thumb_func_end sub_803597C - -	thumb_func_start OpponentHandleHitAnimation -OpponentHandleHitAnimation: @ 80359A4 -	push {r4,lr} -	ldr r3, _080359CC @ =gSprites -	ldr r2, _080359D0 @ =gObjectBankIDs -	ldr r4, _080359D4 @ =gActiveBank -	ldrb r0, [r4] -	adds r0, r2 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	adds r0, 0x3E -	ldrb r0, [r0] -	lsls r0, 29 -	cmp r0, 0 -	bge _080359D8 -	bl OpponentBufferExecCompleted -	b _08035A02 -	.align 2, 0 -_080359CC: .4byte gSprites -_080359D0: .4byte gObjectBankIDs -_080359D4: .4byte gActiveBank -_080359D8: -	ldr r1, _08035A08 @ =gDoingBattleAnim -	movs r0, 0x1 -	strb r0, [r1] -	ldrb r0, [r4] -	adds r0, r2 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	movs r1, 0 -	strh r1, [r0, 0x30] -	ldrb r0, [r4] -	bl sub_8047858 -	ldr r1, _08035A0C @ =gBattleBankFunc -	ldrb r0, [r4] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08035A10 @ =bx_blink_t7 -	str r1, [r0] -_08035A02: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035A08: .4byte gDoingBattleAnim -_08035A0C: .4byte gBattleBankFunc -_08035A10: .4byte bx_blink_t7 -	thumb_func_end OpponentHandleHitAnimation - -	thumb_func_start sub_8035A14 -sub_8035A14: @ 8035A14 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_8035A14 - -	thumb_func_start OpponentHandleEffectivenessSound -OpponentHandleEffectivenessSound: @ 8035A20 -	push {r4,lr} -	ldr r4, _08035A5C @ =gActiveBank -	ldrb r0, [r4] -	bl GetBankSide -	lsls r0, 24 -	movs r3, 0x3F -	cmp r0, 0 -	bne _08035A34 -	movs r3, 0xC0 -_08035A34: -	ldr r2, _08035A60 @ =gBattleBufferA -	ldrb r1, [r4] -	lsls r1, 9 -	adds r0, r2, 0x1 -	adds r0, r1, r0 -	ldrb r0, [r0] -	adds r2, 0x2 -	adds r1, r2 -	ldrb r1, [r1] -	lsls r1, 8 -	orrs r0, r1 -	lsls r1, r3, 24 -	asrs r1, 24 -	bl PlaySE12WithPanning -	bl OpponentBufferExecCompleted -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035A5C: .4byte gActiveBank -_08035A60: .4byte gBattleBufferA -	thumb_func_end OpponentHandleEffectivenessSound - -	thumb_func_start sub_8035A64 -sub_8035A64: @ 8035A64 -	push {lr} -	ldr r2, _08035A8C @ =gBattleBufferA -	ldr r0, _08035A90 @ =gActiveBank -	ldrb r1, [r0] -	lsls r1, 9 -	adds r0, r2, 0x1 -	adds r0, r1, r0 -	ldrb r0, [r0] -	adds r2, 0x2 -	adds r1, r2 -	ldrb r1, [r1] -	lsls r1, 8 -	orrs r0, r1 -	bl PlayFanfare -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035A8C: .4byte gBattleBufferA -_08035A90: .4byte gActiveBank -	thumb_func_end sub_8035A64 - -	thumb_func_start OpponentHandleFaintingCry -OpponentHandleFaintingCry: @ 8035A94 -	push {lr} -	ldr r1, _08035AC4 @ =gBattlePartyID -	ldr r0, _08035AC8 @ =gActiveBank -	ldrb r0, [r0] -	lsls r0, 1 -	adds r0, r1 -	ldrh r1, [r0] -	movs r0, 0x64 -	muls r0, r1 -	ldr r1, _08035ACC @ =gEnemyParty -	adds r0, r1 -	movs r1, 0xB -	bl GetMonData -	lsls r0, 16 -	lsrs r0, 16 -	movs r1, 0x19 -	movs r2, 0x5 -	bl PlayCry3 -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035AC4: .4byte gBattlePartyID -_08035AC8: .4byte gActiveBank -_08035ACC: .4byte gEnemyParty -	thumb_func_end OpponentHandleFaintingCry - -	thumb_func_start dp01t_2E_7_battle_intro -dp01t_2E_7_battle_intro: @ 8035AD0 -	push {lr} -	ldr r1, _08035AF8 @ =gBattleBufferA -	ldr r0, _08035AFC @ =gActiveBank -	ldrb r0, [r0] -	lsls r0, 9 -	adds r1, 0x1 -	adds r0, r1 -	ldrb r0, [r0] -	bl sub_80E43C0 -	ldr r2, _08035B00 @ =gUnknown_02024DE8 -	ldrh r0, [r2] -	movs r1, 0x1 -	orrs r0, r1 -	strh r0, [r2] -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035AF8: .4byte gBattleBufferA -_08035AFC: .4byte gActiveBank -_08035B00: .4byte gUnknown_02024DE8 -	thumb_func_end dp01t_2E_7_battle_intro - -	thumb_func_start sub_8035B04 -sub_8035B04: @ 8035B04 -	push {r4-r6,lr} -	ldr r5, _08035BE0 @ =gObjectBankIDs -	ldr r6, _08035BE4 @ =gActiveBank -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	ldr r4, _08035BE8 @ =gSprites -	adds r0, r4 -	bl oamt_add_pos2_onto_pos1 -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	movs r1, 0x23 -	strh r1, [r0, 0x2E] -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	movs r1, 0x8C -	lsls r1, 1 -	strh r1, [r0, 0x32] -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldrh r1, [r0, 0x22] -	strh r1, [r0, 0x36] -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r4, 0 -	adds r1, 0x1C -	adds r0, r1 -	ldr r1, _08035BEC @ =sub_8078B34 -	str r1, [r0] -	ldrb r0, [r6] -	adds r0, r5 -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldr r1, _08035BF0 @ =sub_8035C10 -	bl oamt_set_x3A_32 -	ldr r0, _08035BF4 @ =sub_8035C44 -	movs r1, 0x5 -	bl CreateTask -	lsls r0, 24 -	lsrs r0, 24 -	ldr r4, _08035BF8 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r4 -	ldrb r0, [r6] -	strh r0, [r1, 0x8] -	ldrb r3, [r6] -	lsls r0, r3, 1 -	adds r0, r3 -	lsls r0, 2 -	ldr r2, _08035BFC @ =0x02017810 -	adds r0, r2 -	ldrb r1, [r0] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _08035BC2 -	ldr r0, _08035C00 @ =gUnknown_02024E68 -	adds r0, r3, r0 -	ldrb r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r4 -	ldr r1, _08035C04 @ =sub_8044CA0 -	str r1, [r0] -_08035BC2: -	adds r2, 0x30 -	ldrb r0, [r2, 0x9] -	movs r1, 0x1 -	orrs r0, r1 -	strb r0, [r2, 0x9] -	ldr r1, _08035C08 @ =gBattleBankFunc -	ldrb r0, [r6] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08035C0C @ =nullsub_45 -	str r1, [r0] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035BE0: .4byte gObjectBankIDs -_08035BE4: .4byte gActiveBank -_08035BE8: .4byte gSprites -_08035BEC: .4byte sub_8078B34 -_08035BF0: .4byte sub_8035C10 -_08035BF4: .4byte sub_8035C44 -_08035BF8: .4byte gTasks -_08035BFC: .4byte 0x02017810 -_08035C00: .4byte gUnknown_02024E68 -_08035C04: .4byte sub_8044CA0 -_08035C08: .4byte gBattleBankFunc -_08035C0C: .4byte nullsub_45 -	thumb_func_end sub_8035B04 - -	thumb_func_start sub_8035C10 -sub_8035C10: @ 8035C10 -	push {r4,lr} -	adds r4, r0, 0 -	ldrh r0, [r4, 0x6] -	bl sub_8031B74 -	ldrh r0, [r4, 0x38] -	ldr r1, _08035C3C @ =0x000003ff -	ands r1, r0 -	ldrh r2, [r4, 0x4] -	ldr r0, _08035C40 @ =0xfffffc00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r4, 0x4] -	adds r0, r4, 0 -	bl FreeSpriteOamMatrix -	adds r0, r4, 0 -	bl DestroySprite -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035C3C: .4byte 0x000003ff -_08035C40: .4byte 0xfffffc00 -	thumb_func_end sub_8035C10 - -	thumb_func_start sub_8035C44 -sub_8035C44: @ 8035C44 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	lsls r0, 24 -	lsrs r0, 24 -	mov r8, r0 -	ldr r7, _08035C9C @ =gActiveBank -	ldrb r0, [r7] -	mov r9, r0 -	ldr r1, _08035CA0 @ =gTasks -	mov r2, r8 -	lsls r0, r2, 2 -	add r0, r8 -	lsls r0, 3 -	adds r0, r1 -	ldrh r0, [r0, 0x8] -	strb r0, [r7] -	bl IsDoubleBattle -	lsls r0, 24 -	cmp r0, 0 -	beq _08035C7E -	ldr r0, _08035CA4 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x40 -	ands r0, r1 -	cmp r0, 0 -	beq _08035CB0 -_08035C7E: -	ldr r0, _08035CA8 @ =gBattleBufferA -	ldrb r1, [r7] -	lsls r2, r1, 9 -	adds r0, 0x1 -	adds r2, r0 -	ldr r0, _08035CAC @ =gBattlePartyID -	lsls r1, 1 -	adds r1, r0 -	ldrh r0, [r1] -	strb r0, [r2] -	ldrb r0, [r7] -	movs r1, 0 -	bl sub_803495C -	b _08035CF0 -	.align 2, 0 -_08035C9C: .4byte gActiveBank -_08035CA0: .4byte gTasks -_08035CA4: .4byte gBattleTypeFlags -_08035CA8: .4byte gBattleBufferA -_08035CAC: .4byte gBattlePartyID -_08035CB0: -	ldr r4, _08035D14 @ =gBattleBufferA -	ldrb r0, [r7] -	lsls r1, r0, 9 -	adds r4, 0x1 -	adds r1, r4 -	ldr r6, _08035D18 @ =gBattlePartyID -	lsls r0, 1 -	adds r0, r6 -	ldrh r0, [r0] -	strb r0, [r1] -	ldrb r0, [r7] -	movs r1, 0 -	bl sub_803495C -	ldrb r0, [r7] -	movs r5, 0x2 -	eors r0, r5 -	strb r0, [r7] -	ldrb r0, [r7] -	lsls r1, r0, 9 -	adds r1, r4 -	lsls r0, 1 -	adds r0, r6 -	ldrh r0, [r0] -	strb r0, [r1] -	ldrb r0, [r7] -	movs r1, 0 -	bl sub_803495C -	ldrb r0, [r7] -	eors r0, r5 -	strb r0, [r7] -_08035CF0: -	ldr r1, _08035D1C @ =gBattleBankFunc -	ldr r2, _08035D20 @ =gActiveBank -	ldrb r0, [r2] -	lsls r0, 2 -	adds r0, r1 -	ldr r1, _08035D24 @ =sub_8032E2C -	str r1, [r0] -	mov r0, r9 -	strb r0, [r2] -	mov r0, r8 -	bl DestroyTask -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035D14: .4byte gBattleBufferA -_08035D18: .4byte gBattlePartyID -_08035D1C: .4byte gBattleBankFunc -_08035D20: .4byte gActiveBank -_08035D24: .4byte sub_8032E2C -	thumb_func_end sub_8035C44 - -	thumb_func_start dp01t_30_7_0803D67C -dp01t_30_7_0803D67C: @ 8035D28 -	push {r4-r6,lr} -	ldr r1, _08035D50 @ =gBattleBufferA -	ldr r0, _08035D54 @ =gActiveBank -	ldrb r2, [r0] -	lsls r0, r2, 9 -	adds r1, 0x1 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0 -	beq _08035D58 -	adds r0, r2, 0 -	bl GetBankSide -	lsls r0, 24 -	cmp r0, 0 -	bne _08035D58 -	bl OpponentBufferExecCompleted -	b _08035E12 -	.align 2, 0 -_08035D50: .4byte gBattleBufferA -_08035D54: .4byte gActiveBank -_08035D58: -	ldr r3, _08035DA8 @ =gActiveBank -	ldrb r1, [r3] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	ldr r4, _08035DAC @ =0x02017810 -	adds r0, r4 -	ldrb r1, [r0] -	movs r2, 0x1 -	orrs r1, r2 -	strb r1, [r0] -	ldr r1, _08035DB0 @ =gBattleBufferA -	ldrb r2, [r3] -	lsls r0, r2, 9 -	adds r1, 0x2 -	adds r0, r1 -	ldrb r0, [r0] -	adds r6, r3, 0 -	cmp r0, 0 -	beq _08035DBC -	lsls r0, r2, 1 -	adds r0, r2 -	lsls r0, 2 -	adds r3, r0, r4 -	ldrb r2, [r3, 0x1] -	lsls r1, r2, 26 -	lsrs r0, r1, 27 -	cmp r0, 0x1 -	bhi _08035DB4 -	adds r0, 0x1 -	movs r1, 0x1F -	ands r0, r1 -	lsls r0, 1 -	movs r1, 0x3F -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r3, 0x1] -	b _08035E12 -	.align 2, 0 -_08035DA8: .4byte gActiveBank -_08035DAC: .4byte 0x02017810 -_08035DB0: .4byte gBattleBufferA -_08035DB4: -	movs r0, 0x3F -	negs r0, r0 -	ands r0, r2 -	strb r0, [r3, 0x1] -_08035DBC: -	adds r5, r6, 0 -	ldrb r0, [r5] -	lsls r3, r0, 9 -	ldr r4, _08035E18 @ =gUnknown_02023A64 -	adds r1, r3, r4 -	subs r2, r4, 0x3 -	adds r2, r3, r2 -	ldrb r2, [r2] -	subs r4, 0x2 -	adds r3, r4 -	ldrb r3, [r3] -	bl sub_8044804 -	ldr r2, _08035E1C @ =gUnknown_02024E68 -	ldrb r1, [r5] -	adds r1, r2 -	movs r2, 0 -	strb r0, [r1] -	ldrb r1, [r5] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	ldr r3, _08035E20 @ =0x02017810 -	adds r0, r3 -	strb r2, [r0, 0x5] -	ldrb r1, [r5] -	lsls r0, r1, 9 -	adds r0, r4 -	ldrb r0, [r0] -	cmp r0, 0 -	beq _08035E06 -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	movs r1, 0x5D -	strb r1, [r0, 0x5] -_08035E06: -	ldr r0, _08035E24 @ =gBattleBankFunc -	ldrb r1, [r6] -	lsls r1, 2 -	adds r1, r0 -	ldr r0, _08035E28 @ =sub_8035E2C -	str r0, [r1] -_08035E12: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035E18: .4byte gUnknown_02023A64 -_08035E1C: .4byte gUnknown_02024E68 -_08035E20: .4byte 0x02017810 -_08035E24: .4byte gBattleBankFunc -_08035E28: .4byte sub_8035E2C -	thumb_func_end dp01t_30_7_0803D67C - -	thumb_func_start sub_8035E2C -sub_8035E2C: @ 8035E2C -	push {r4,lr} -	ldr r4, _08035E64 @ =gActiveBank -	ldrb r1, [r4] -	lsls r0, r1, 1 -	adds r0, r1 -	lsls r0, 2 -	ldr r3, _08035E68 @ =0x02017810 -	adds r0, r3 -	ldrb r1, [r0, 0x5] -	adds r2, r1, 0x1 -	strb r2, [r0, 0x5] -	lsls r1, 24 -	lsrs r1, 24 -	cmp r1, 0x5C -	bls _08035E5C -	ldrb r0, [r4] -	lsls r1, r0, 1 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r3 -	movs r0, 0 -	strb r0, [r1, 0x5] -	bl OpponentBufferExecCompleted -_08035E5C: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035E64: .4byte gActiveBank -_08035E68: .4byte 0x02017810 -	thumb_func_end sub_8035E2C - -	thumb_func_start sub_8035E6C -sub_8035E6C: @ 8035E6C -	push {lr} -	ldr r0, _08035EA4 @ =gActiveBank -	ldrb r3, [r0] -	lsls r0, r3, 1 -	adds r0, r3 -	lsls r0, 2 -	ldr r1, _08035EA8 @ =0x02017810 -	adds r0, r1 -	ldrb r1, [r0] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _08035E9A -	ldr r2, _08035EAC @ =gTasks -	ldr r0, _08035EB0 @ =gUnknown_02024E68 -	adds r0, r3, r0 -	ldrb r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldr r1, _08035EB4 @ =sub_8044CA0 -	str r1, [r0] -_08035E9A: -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035EA4: .4byte gActiveBank -_08035EA8: .4byte 0x02017810 -_08035EAC: .4byte gTasks -_08035EB0: .4byte gUnknown_02024E68 -_08035EB4: .4byte sub_8044CA0 -	thumb_func_end sub_8035E6C - -	thumb_func_start sub_8035EB8 -sub_8035EB8: @ 8035EB8 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end sub_8035EB8 - -	thumb_func_start OpponentHandleSpriteInvisibility -OpponentHandleSpriteInvisibility: @ 8035EC4 -	push {r4,lr} -	ldr r4, _08035F14 @ =gActiveBank -	ldrb r0, [r4] -	bl sub_8078874 -	lsls r0, 24 -	cmp r0, 0 -	beq _08035F0A -	ldr r3, _08035F18 @ =gSprites -	ldr r0, _08035F1C @ =gObjectBankIDs -	ldrb r1, [r4] -	adds r0, r1, r0 -	ldrb r0, [r0] -	lsls r2, r0, 4 -	adds r2, r0 -	lsls r2, 2 -	adds r2, r3 -	ldr r0, _08035F20 @ =gBattleBufferA -	lsls r1, 9 -	adds r0, 0x1 -	adds r1, r0 -	adds r2, 0x3E -	movs r0, 0x1 -	ldrb r1, [r1] -	ands r1, r0 -	lsls r1, 2 -	ldrb r3, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r3 -	orrs r0, r1 -	strb r0, [r2] -	ldrb r0, [r4] -	bl sub_8031F88 -_08035F0A: -	bl OpponentBufferExecCompleted -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035F14: .4byte gActiveBank -_08035F18: .4byte gSprites -_08035F1C: .4byte gObjectBankIDs -_08035F20: .4byte gBattleBufferA -	thumb_func_end OpponentHandleSpriteInvisibility - -	thumb_func_start OpponentHandleBattleAnimation -OpponentHandleBattleAnimation: @ 8035F24 -	push {r4-r6,lr} -	sub sp, 0x4 -	ldr r6, _08035F68 @ =gActiveBank -	ldrb r0, [r6] -	bl mplay_80342A4 -	lsls r0, 24 -	cmp r0, 0 -	bne _08035F7C -	ldr r5, _08035F6C @ =gBattleBufferA -	ldrb r2, [r6] -	lsls r1, r2, 9 -	adds r0, r5, 0x1 -	adds r0, r1, r0 -	ldrb r3, [r0] -	adds r0, r5, 0x2 -	adds r0, r1, r0 -	ldrb r4, [r0] -	adds r5, 0x3 -	adds r1, r5 -	ldrb r0, [r1] -	lsls r0, 8 -	orrs r4, r0 -	str r4, [sp] -	adds r0, r2, 0 -	adds r1, r2, 0 -	bl move_anim_start_t3 -	lsls r0, 24 -	cmp r0, 0 -	beq _08035F70 -	bl OpponentBufferExecCompleted -	b _08035F7C -	.align 2, 0 -_08035F68: .4byte gActiveBank -_08035F6C: .4byte gBattleBufferA -_08035F70: -	ldr r0, _08035F84 @ =gBattleBankFunc -	ldrb r1, [r6] -	lsls r1, 2 -	adds r1, r0 -	ldr r0, _08035F88 @ =sub_80334C0 -	str r0, [r1] -_08035F7C: -	add sp, 0x4 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08035F84: .4byte gBattleBankFunc -_08035F88: .4byte sub_80334C0 -	thumb_func_end OpponentHandleBattleAnimation - -	thumb_func_start OpponentHandleLinkStandbyMsg -OpponentHandleLinkStandbyMsg: @ 8035F8C -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleLinkStandbyMsg - -	thumb_func_start OpponentHandleResetActionMoveSelection -OpponentHandleResetActionMoveSelection: @ 8035F98 -	push {lr} -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	thumb_func_end OpponentHandleResetActionMoveSelection - -	thumb_func_start sub_8035FA4 -sub_8035FA4: @ 8035FA4 -	push {lr} -	ldr r0, _08035FD8 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x6 -	ands r0, r1 -	cmp r0, 0x2 -	bne _08035FCE -	ldr r2, _08035FDC @ =gMain -	ldr r0, _08035FE0 @ =0x0000043d -	adds r3, r2, r0 -	ldrb r1, [r3] -	movs r0, 0x3 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r3] -	ldr r0, _08035FE4 @ =gPreBattleCallback1 -	ldr r0, [r0] -	str r0, [r2] -	ldr r0, [r2, 0x8] -	bl SetMainCallback2 -_08035FCE: -	bl OpponentBufferExecCompleted -	pop {r0} -	bx r0 -	.align 2, 0 -_08035FD8: .4byte gBattleTypeFlags -_08035FDC: .4byte gMain -_08035FE0: .4byte 0x0000043d -_08035FE4: .4byte gPreBattleCallback1 -	thumb_func_end sub_8035FA4 - -	thumb_func_start nullsub_46 -nullsub_46: @ 8035FE8 -	bx lr -	thumb_func_end nullsub_46 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/field_fadetransition.s b/asm/field_fadetransition.s index e882e7030..1f489ceb3 100644 --- a/asm/field_fadetransition.s +++ b/asm/field_fadetransition.s @@ -815,8 +815,8 @@ _08081022:  _08081028: .4byte sub_8054588  	thumb_func_end sub_8080FC4 -	thumb_func_start sub_808102C -sub_808102C: @ 808102C +	thumb_func_start DoCableClubWarp +DoCableClubWarp: @ 808102C  	push {lr}  	bl ScriptContext2_Enable  	bl sub_8053FF8 @@ -830,7 +830,7 @@ sub_808102C: @ 808102C  	bx r0  	.align 2, 0  _0808104C: .4byte sub_8080FC4 -	thumb_func_end sub_808102C +	thumb_func_end DoCableClubWarp  	thumb_func_start sub_8081050  sub_8081050: @ 8081050 diff --git a/asm/fldeff_flash.s b/asm/fldeff_flash.s deleted file mode 100644 index dcd485d9f..000000000 --- a/asm/fldeff_flash.s +++ /dev/null @@ -1,753 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text - -	thumb_func_start SetUpFieldMove_Flash -SetUpFieldMove_Flash: @ 810CBB4 -	push {lr} -	ldr r0, _0810CBDC @ =gMapHeader -	ldrb r0, [r0, 0x15] -	cmp r0, 0x1 -	bne _0810CBF4 -	ldr r0, _0810CBE0 @ =0x00000828 -	bl FlagGet -	lsls r0, 24 -	cmp r0, 0 -	bne _0810CBF4 -	ldr r1, _0810CBE4 @ =gFieldCallback -	ldr r0, _0810CBE8 @ =sub_808AB90 -	str r0, [r1] -	ldr r1, _0810CBEC @ =gUnknown_03005CE4 -	ldr r0, _0810CBF0 @ =sub_810CBFC -	str r0, [r1] -	movs r0, 0x1 -	b _0810CBF6 -	.align 2, 0 -_0810CBDC: .4byte gMapHeader -_0810CBE0: .4byte 0x00000828 -_0810CBE4: .4byte gFieldCallback -_0810CBE8: .4byte sub_808AB90 -_0810CBEC: .4byte gUnknown_03005CE4 -_0810CBF0: .4byte sub_810CBFC -_0810CBF4: -	movs r0, 0 -_0810CBF6: -	pop {r1} -	bx r1 -	thumb_func_end SetUpFieldMove_Flash - -	thumb_func_start sub_810CBFC -sub_810CBFC: @ 810CBFC -	push {lr} -	bl oei_task_add -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810CC24 @ =gUnknown_0202FF84 -	ldr r1, _0810CC28 @ =gLastFieldPokeMenuOpened -	ldrb r1, [r1] -	str r1, [r2] -	ldr r2, _0810CC2C @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	ldr r2, _0810CC30 @ =sub_810CC34 -	lsrs r0, r2, 16 -	strh r0, [r1, 0x18] -	strh r2, [r1, 0x1A] -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CC24: .4byte gUnknown_0202FF84 -_0810CC28: .4byte gLastFieldPokeMenuOpened -_0810CC2C: .4byte gTasks -_0810CC30: .4byte sub_810CC34 -	thumb_func_end sub_810CBFC - -	thumb_func_start sub_810CC34 -sub_810CC34: @ 810CC34 -	push {lr} -	movs r0, 0xCF -	bl PlaySE -	ldr r0, _0810CC4C @ =0x00000828 -	bl FlagSet -	ldr r0, _0810CC50 @ =gUnknown_081B694A -	bl ScriptContext1_SetupScript -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CC4C: .4byte 0x00000828 -_0810CC50: .4byte gUnknown_081B694A -	thumb_func_end sub_810CC34 - -	thumb_func_start sub_810CC54 -sub_810CC54: @ 810CC54 -	push {lr} -	bl RunTasks -	bl AnimateSprites -	bl BuildOamBuffer -	bl UpdatePaletteFade -	pop {r0} -	bx r0 -	thumb_func_end sub_810CC54 - -	thumb_func_start sub_810CC6C -sub_810CC6C: @ 810CC6C -	push {lr} -	bl LoadOam -	bl ProcessSpriteCopyRequests -	bl TransferPlttBuffer -	pop {r0} -	bx r0 -	thumb_func_end sub_810CC6C - -	thumb_func_start sub_810CC80 -sub_810CC80: @ 810CC80 -	push {r4,lr} -	sub sp, 0x8 -	movs r0, 0 -	bl SetVBlankCallback -	movs r0, 0x80 -	lsls r0, 19 -	movs r1, 0 -	strh r1, [r0] -	adds r0, 0xC -	strh r1, [r0] -	subs r0, 0x2 -	strh r1, [r0] -	subs r0, 0x2 -	strh r1, [r0] -	adds r0, 0x10 -	strh r1, [r0] -	adds r0, 0x2 -	strh r1, [r0] -	subs r0, 0x6 -	strh r1, [r0] -	adds r0, 0x2 -	strh r1, [r0] -	subs r0, 0x6 -	strh r1, [r0] -	adds r0, 0x2 -	strh r1, [r0] -	mov r0, sp -	strh r1, [r0] -	ldr r1, _0810CD34 @ =0x040000d4 -	str r0, [r1] -	movs r0, 0xC0 -	lsls r0, 19 -	str r0, [r1, 0x4] -	ldr r0, _0810CD38 @ =0x8100c000 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	movs r4, 0 -	str r4, [sp, 0x4] -	add r0, sp, 0x4 -	str r0, [r1] -	movs r0, 0xE0 -	lsls r0, 19 -	str r0, [r1, 0x4] -	ldr r0, _0810CD3C @ =0x85000100 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	mov r0, sp -	strh r4, [r0] -	str r0, [r1] -	ldr r0, _0810CD40 @ =0x05000002 -	str r0, [r1, 0x4] -	ldr r0, _0810CD44 @ =0x810001ff -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	bl ResetPaletteFade -	bl ResetTasks -	bl ResetSpriteData -	ldr r3, _0810CD48 @ =0x04000208 -	ldrh r2, [r3] -	strh r4, [r3] -	ldr r4, _0810CD4C @ =0x04000200 -	ldrh r0, [r4] -	movs r1, 0x1 -	orrs r0, r1 -	strh r0, [r4] -	strh r2, [r3] -	ldr r0, _0810CD50 @ =sub_810CC6C -	bl SetVBlankCallback -	ldr r0, _0810CD54 @ =sub_810CC54 -	bl SetMainCallback2 -	bl sub_810CD5C -	lsls r0, 24 -	cmp r0, 0 -	bne _0810CD2A -	ldr r0, _0810CD58 @ =gMain -	ldr r0, [r0, 0x8] -	bl SetMainCallback2 -_0810CD2A: -	add sp, 0x8 -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CD34: .4byte 0x040000d4 -_0810CD38: .4byte 0x8100c000 -_0810CD3C: .4byte 0x85000100 -_0810CD40: .4byte 0x05000002 -_0810CD44: .4byte 0x810001ff -_0810CD48: .4byte 0x04000208 -_0810CD4C: .4byte 0x04000200 -_0810CD50: .4byte sub_810CC6C -_0810CD54: .4byte sub_810CC54 -_0810CD58: .4byte gMain -	thumb_func_end sub_810CC80 - -	thumb_func_start sub_810CD5C -sub_810CD5C: @ 810CD5C -	push {r4-r7,lr} -	bl get_map_light_from_warp0 -	lsls r0, 24 -	lsrs r6, r0, 24 -	bl sav1_map_get_light_level -	lsls r0, 24 -	lsrs r5, r0, 24 -	movs r3, 0 -	ldr r4, _0810CD9C @ =gUnknown_083F7FC4 -	ldrb r0, [r4] -	cmp r0, 0 -	beq _0810CDB0 -	adds r7, r4, 0 -	adds r0, r4, 0x4 -	mov r12, r0 -_0810CD7E: -	lsls r2, r3, 3 -	adds r1, r2, r7 -	ldrb r0, [r1] -	cmp r0, r6 -	bne _0810CDA0 -	ldrb r0, [r1, 0x1] -	cmp r0, r5 -	bne _0810CDA0 -	mov r1, r12 -	adds r0, r2, r1 -	ldr r0, [r0] -	bl _call_via_r0 -	movs r0, 0x1 -	b _0810CDB2 -	.align 2, 0 -_0810CD9C: .4byte gUnknown_083F7FC4 -_0810CDA0: -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	lsls r0, r3, 3 -	adds r0, r4 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _0810CD7E -_0810CDB0: -	movs r0, 0 -_0810CDB2: -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_810CD5C - -	thumb_func_start sub_810CDB8 -sub_810CDB8: @ 810CDB8 -	push {r4-r6,lr} -	lsls r0, 24 -	lsls r1, 24 -	lsrs r5, r0, 24 -	lsrs r4, r1, 24 -	movs r3, 0 -	ldr r1, _0810CDE4 @ =gUnknown_083F7FC4 -	ldrb r0, [r1] -	cmp r0, 0 -	beq _0810CDF8 -	adds r6, r1, 0 -_0810CDCE: -	lsls r0, r3, 3 -	adds r2, r0, r6 -	ldrb r0, [r2] -	cmp r0, r5 -	bne _0810CDE8 -	ldrb r0, [r2, 0x1] -	cmp r0, r4 -	bne _0810CDE8 -	ldrb r0, [r2, 0x2] -	b _0810CDFA -	.align 2, 0 -_0810CDE4: .4byte gUnknown_083F7FC4 -_0810CDE8: -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	lsls r0, r3, 3 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _0810CDCE -_0810CDF8: -	movs r0, 0 -_0810CDFA: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_810CDB8 - -	thumb_func_start fade_type_for_given_maplight_pair -fade_type_for_given_maplight_pair: @ 810CE00 -	push {r4-r6,lr} -	lsls r0, 24 -	lsls r1, 24 -	lsrs r5, r0, 24 -	lsrs r4, r1, 24 -	movs r3, 0 -	ldr r1, _0810CE2C @ =gUnknown_083F7FC4 -	ldrb r0, [r1] -	cmp r0, 0 -	beq _0810CE40 -	adds r6, r1, 0 -_0810CE16: -	lsls r0, r3, 3 -	adds r2, r0, r6 -	ldrb r0, [r2] -	cmp r0, r5 -	bne _0810CE30 -	ldrb r0, [r2, 0x1] -	cmp r0, r4 -	bne _0810CE30 -	ldrb r0, [r2, 0x3] -	b _0810CE42 -	.align 2, 0 -_0810CE2C: .4byte gUnknown_083F7FC4 -_0810CE30: -	adds r0, r3, 0x1 -	lsls r0, 24 -	lsrs r3, r0, 24 -	lsls r0, r3, 3 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _0810CE16 -_0810CE40: -	movs r0, 0 -_0810CE42: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end fade_type_for_given_maplight_pair - -	thumb_func_start sub_810CE48 -sub_810CE48: @ 810CE48 -	push {lr} -	ldr r0, _0810CE58 @ =sub_810CE5C -	movs r1, 0 -	bl CreateTask -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CE58: .4byte sub_810CE5C -	thumb_func_end sub_810CE48 - -	thumb_func_start sub_810CE5C -sub_810CE5C: @ 810CE5C -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810CE70 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	ldr r0, _0810CE74 @ =sub_810CE78 -	str r0, [r1] -	bx lr -	.align 2, 0 -_0810CE70: .4byte gTasks -_0810CE74: .4byte sub_810CE78 -	thumb_func_end sub_810CE5C - -	thumb_func_start sub_810CE78 -sub_810CE78: @ 810CE78 -	push {r4-r6,lr} -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	movs r6, 0x80 -	lsls r6, 19 -	movs r5, 0 -	strh r5, [r6] -	ldr r0, _0810CEE8 @ =gCaveTransitionTiles -	ldr r1, _0810CEEC @ =0x0600c000 -	bl LZ77UnCompVram -	ldr r0, _0810CEF0 @ =gCaveTransitionTilemap -	ldr r1, _0810CEF4 @ =0x0600f800 -	bl LZ77UnCompVram -	ldr r0, _0810CEF8 @ =gCaveTransitionPalette_White -	movs r1, 0xE0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r0, _0810CEFC @ =gUnknown_083F809C -	movs r1, 0xE0 -	movs r2, 0x10 -	bl LoadPalette -	ldr r1, _0810CF00 @ =REG_BLDCNT -	ldr r2, _0810CF04 @ =0x00003e41 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r0, _0810CF08 @ =REG_BLDALPHA -	strh r5, [r0] -	adds r0, 0x2 -	strh r5, [r0] -	subs r1, 0x48 -	ldr r2, _0810CF0C @ =0x00001f0c -	adds r0, r2, 0 -	strh r0, [r1] -	movs r1, 0x8A -	lsls r1, 5 -	adds r0, r1, 0 -	strh r0, [r6] -	ldr r1, _0810CF10 @ =gTasks -	lsls r0, r4, 2 -	adds r0, r4 -	lsls r0, 3 -	adds r0, r1 -	ldr r1, _0810CF14 @ =sub_810CF18 -	str r1, [r0] -	movs r2, 0 -	movs r1, 0x10 -	strh r1, [r0, 0x8] -	strh r2, [r0, 0xA] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CEE8: .4byte gCaveTransitionTiles -_0810CEEC: .4byte 0x0600c000 -_0810CEF0: .4byte gCaveTransitionTilemap -_0810CEF4: .4byte 0x0600f800 -_0810CEF8: .4byte gCaveTransitionPalette_White -_0810CEFC: .4byte gUnknown_083F809C -_0810CF00: .4byte REG_BLDCNT -_0810CF04: .4byte 0x00003e41 -_0810CF08: .4byte REG_BLDALPHA -_0810CF0C: .4byte 0x00001f0c -_0810CF10: .4byte gTasks -_0810CF14: .4byte sub_810CF18 -	thumb_func_end sub_810CE78 - -	thumb_func_start sub_810CF18 -sub_810CF18: @ 810CF18 -	push {lr} -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810CF44 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r3, r1, r2 -	ldrh r2, [r3, 0xA] -	movs r1, 0x80 -	lsls r1, 5 -	adds r0, r2, r1 -	lsls r0, 16 -	lsrs r0, 16 -	ldr r1, _0810CF48 @ =REG_BLDALPHA -	strh r0, [r1] -	cmp r2, 0x10 -	bhi _0810CF4C -	ldrh r0, [r3, 0xA] -	adds r0, 0x1 -	strh r0, [r3, 0xA] -	b _0810CF54 -	.align 2, 0 -_0810CF44: .4byte gTasks -_0810CF48: .4byte REG_BLDALPHA -_0810CF4C: -	movs r0, 0 -	strh r0, [r3, 0xC] -	ldr r0, _0810CF58 @ =sub_810CF5C -	str r0, [r3] -_0810CF54: -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CF58: .4byte sub_810CF5C -	thumb_func_end sub_810CF18 - -	thumb_func_start sub_810CF5C -sub_810CF5C: @ 810CF5C -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810CF94 @ =REG_BLDALPHA -	ldr r3, _0810CF98 @ =0x00001010 -	adds r1, r3, 0 -	strh r1, [r2] -	ldr r2, _0810CF9C @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r4, r1, r2 -	ldrh r1, [r4, 0xC] -	cmp r1, 0x7 -	bhi _0810CFA4 -	adds r0, r1, 0x1 -	strh r0, [r4, 0xC] -	lsls r1, 1 -	ldr r0, _0810CFA0 @ =gUnknown_083F809C -	adds r0, r1, r0 -	movs r2, 0x10 -	subs r2, r1 -	lsls r2, 16 -	lsrs r2, 16 -	movs r1, 0xE0 -	bl LoadPalette -	b _0810CFB6 -	.align 2, 0 -_0810CF94: .4byte REG_BLDALPHA -_0810CF98: .4byte 0x00001010 -_0810CF9C: .4byte gTasks -_0810CFA0: .4byte gUnknown_083F809C -_0810CFA4: -	ldr r0, _0810CFBC @ =gCaveTransitionPalette_White -	movs r1, 0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r0, _0810CFC0 @ =sub_810CFC4 -	str r0, [r4] -	movs r0, 0x8 -	strh r0, [r4, 0xC] -_0810CFB6: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CFBC: .4byte gCaveTransitionPalette_White -_0810CFC0: .4byte sub_810CFC4 -	thumb_func_end sub_810CF5C - -	thumb_func_start sub_810CFC4 -sub_810CFC4: @ 810CFC4 -	push {lr} -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810CFE4 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	ldrh r2, [r1, 0xC] -	movs r3, 0xC -	ldrsh r0, [r1, r3] -	cmp r0, 0 -	beq _0810CFE8 -	subs r0, r2, 0x1 -	strh r0, [r1, 0xC] -	b _0810CFF0 -	.align 2, 0 -_0810CFE4: .4byte gTasks -_0810CFE8: -	ldr r0, _0810CFF4 @ =gMain -	ldr r0, [r0, 0x8] -	bl SetMainCallback2 -_0810CFF0: -	pop {r0} -	bx r0 -	.align 2, 0 -_0810CFF4: .4byte gMain -	thumb_func_end sub_810CFC4 - -	thumb_func_start sub_810CFF8 -sub_810CFF8: @ 810CFF8 -	push {lr} -	ldr r0, _0810D008 @ =sub_810D00C -	movs r1, 0 -	bl CreateTask -	pop {r0} -	bx r0 -	.align 2, 0 -_0810D008: .4byte sub_810D00C -	thumb_func_end sub_810CFF8 - -	thumb_func_start sub_810D00C -sub_810D00C: @ 810D00C -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810D020 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	ldr r0, _0810D024 @ =sub_810D028 -	str r0, [r1] -	bx lr -	.align 2, 0 -_0810D020: .4byte gTasks -_0810D024: .4byte sub_810D028 -	thumb_func_end sub_810D00C - -	thumb_func_start sub_810D028 -sub_810D028: @ 810D028 -	push {r4-r6,lr} -	adds r5, r0, 0 -	lsls r5, 24 -	lsrs r5, 24 -	movs r6, 0x80 -	lsls r6, 19 -	movs r4, 0 -	strh r4, [r6] -	ldr r0, _0810D098 @ =gCaveTransitionTiles -	ldr r1, _0810D09C @ =0x0600c000 -	bl LZ77UnCompVram -	ldr r0, _0810D0A0 @ =gCaveTransitionTilemap -	ldr r1, _0810D0A4 @ =0x0600f800 -	bl LZ77UnCompVram -	ldr r0, _0810D0A8 @ =REG_BLDCNT -	strh r4, [r0] -	adds r0, 0x2 -	strh r4, [r0] -	adds r0, 0x2 -	strh r4, [r0] -	ldr r1, _0810D0AC @ =REG_BG0CNT -	ldr r2, _0810D0B0 @ =0x00001f0c -	adds r0, r2, 0 -	strh r0, [r1] -	movs r1, 0x8A -	lsls r1, 5 -	adds r0, r1, 0 -	strh r0, [r6] -	ldr r0, _0810D0B4 @ =gCaveTransitionPalette_White -	movs r1, 0xE0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r0, _0810D0B8 @ =gCaveTransitionPalette_Black -	movs r1, 0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r1, _0810D0BC @ =gTasks -	lsls r0, r5, 2 -	adds r0, r5 -	lsls r0, 3 -	adds r0, r1 -	ldr r1, _0810D0C0 @ =sub_810D0C4 -	str r1, [r0] -	movs r2, 0 -	movs r1, 0x10 -	strh r1, [r0, 0x8] -	strh r2, [r0, 0xA] -	strh r2, [r0, 0xC] -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0810D098: .4byte gCaveTransitionTiles -_0810D09C: .4byte 0x0600c000 -_0810D0A0: .4byte gCaveTransitionTilemap -_0810D0A4: .4byte 0x0600f800 -_0810D0A8: .4byte REG_BLDCNT -_0810D0AC: .4byte REG_BG0CNT -_0810D0B0: .4byte 0x00001f0c -_0810D0B4: .4byte gCaveTransitionPalette_White -_0810D0B8: .4byte gCaveTransitionPalette_Black -_0810D0BC: .4byte gTasks -_0810D0C0: .4byte sub_810D0C4 -	thumb_func_end sub_810D028 - -	thumb_func_start sub_810D0C4 -sub_810D0C4: @ 810D0C4 -	push {lr} -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810D0F8 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r3, r1, r2 -	ldrh r1, [r3, 0xC] -	cmp r1, 0xF -	bhi _0810D100 -	adds r2, r1, 0x1 -	adds r0, r2, 0x1 -	strh r0, [r3, 0xC] -	movs r0, 0xF -	subs r0, r1 -	lsls r0, 1 -	ldr r1, _0810D0FC @ =gUnknown_083F808C -	adds r0, r1 -	lsls r2, 17 -	lsrs r2, 16 -	movs r1, 0xE0 -	bl LoadPalette -	b _0810D114 -	.align 2, 0 -_0810D0F8: .4byte gTasks -_0810D0FC: .4byte gUnknown_083F808C -_0810D100: -	ldr r1, _0810D118 @ =REG_BLDALPHA -	ldr r2, _0810D11C @ =0x00001010 -	adds r0, r2, 0 -	strh r0, [r1] -	subs r1, 0x2 -	ldr r2, _0810D120 @ =0x00003e41 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r0, _0810D124 @ =sub_810D128 -	str r0, [r3] -_0810D114: -	pop {r0} -	bx r0 -	.align 2, 0 -_0810D118: .4byte REG_BLDALPHA -_0810D11C: .4byte 0x00001010 -_0810D120: .4byte 0x00003e41 -_0810D124: .4byte sub_810D128 -	thumb_func_end sub_810D0C4 - -	thumb_func_start sub_810D128 -sub_810D128: @ 810D128 -	push {lr} -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0810D158 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r3, r1, r2 -	ldrh r0, [r3, 0xA] -	movs r1, 0x10 -	subs r1, r0 -	lsls r1, 16 -	movs r2, 0x80 -	lsls r2, 21 -	adds r0, r1, r2 -	lsrs r0, 16 -	ldr r2, _0810D15C @ =REG_BLDALPHA -	strh r0, [r2] -	cmp r1, 0 -	beq _0810D160 -	ldrh r0, [r3, 0xA] -	adds r0, 0x1 -	strh r0, [r3, 0xA] -	b _0810D172 -	.align 2, 0 -_0810D158: .4byte gTasks -_0810D15C: .4byte REG_BLDALPHA -_0810D160: -	ldr r0, _0810D178 @ =gCaveTransitionPalette_Black -	movs r1, 0 -	movs r2, 0x20 -	bl LoadPalette -	ldr r0, _0810D17C @ =gMain -	ldr r0, [r0, 0x8] -	bl SetMainCallback2 -_0810D172: -	pop {r0} -	bx r0 -	.align 2, 0 -_0810D178: .4byte gCaveTransitionPalette_Black -_0810D17C: .4byte gMain -	thumb_func_end sub_810D128 -	 -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/m4a_1.s b/asm/m4a_1.s index ffe2ca885..849cf5c2d 100644 --- a/asm/m4a_1.s +++ b/asm/m4a_1.s @@ -4,6 +4,8 @@  	.syntax unified +	.lcomm gUnknown_030007B8, 0x770 +  	.text  	thumb_func_start umul3232H32 diff --git a/asm/macros/event.inc b/asm/macros/event.inc index e3caa0c4f..cd2927c66 100644 --- a/asm/macros/event.inc +++ b/asm/macros/event.inc @@ -241,14 +241,14 @@  	@ Calls a special function; that is, a piece of ASM code designed for use by scripts and listed in a table of pointers.  	.macro special function  	.byte 0x25 -	.2byte \function +	.2byte SPECIAL_\function  	.endm  	@ Calls a special function. That function's output (if any) will be written to the variable you specify.  	.macro specialval output, function  	.byte 0x26  	.2byte \output -	.2byte \function +	.2byte SPECIAL_\function  	.endm  	@ Blocks script execution until a command or ASM code manually unblocks it. Generally used with specific commands and specials. If this command runs, and a subsequent command or piece of ASM does not unblock state, the script will remain blocked indefinitely (essentially a hang). diff --git a/asm/mon_markings.s b/asm/mon_markings.s deleted file mode 100644 index d227b17c1..000000000 --- a/asm/mon_markings.s +++ /dev/null @@ -1,1008 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text - -	thumb_func_start sub_80F727C -sub_80F727C: @ 80F727C -	ldr r1, _080F7288 @ =gUnknown_020388B8 -	str r0, [r1] -	movs r1, 0 -	strb r1, [r0, 0xB] -	bx lr -	.align 2, 0 -_080F7288: .4byte gUnknown_020388B8 -	thumb_func_end sub_80F727C - -	thumb_func_start sub_80F728C -sub_80F728C: @ 80F728C -	push {lr} -	sub sp, 0x4 -	ldr r0, _080F72C4 @ =gSaveBlock2 -	ldrb r0, [r0, 0x14] -	lsrs r0, 3 -	bl GetTextWindowFrameGraphics -	ldr r3, _080F72C8 @ =gUnknown_020388B8 -	ldr r2, [r3] -	ldr r1, [r0] -	str r1, [r2, 0x28] -	ldr r0, [r0, 0x4] -	str r0, [r2, 0x2C] -	ldr r0, _080F72CC @ =0x000010b0 -	adds r2, r0 -	movs r1, 0 -	strb r1, [r2] -	mov r0, sp -	strh r1, [r0] -	ldr r1, [r3] -	adds r1, 0x30 -	ldr r2, _080F72D0 @ =0x01000800 -	bl CpuSet -	add sp, 0x4 -	pop {r0} -	bx r0 -	.align 2, 0 -_080F72C4: .4byte gSaveBlock2 -_080F72C8: .4byte gUnknown_020388B8 -_080F72CC: .4byte 0x000010b0 -_080F72D0: .4byte 0x01000800 -	thumb_func_end sub_80F728C - -	thumb_func_start sub_80F72D4 -sub_80F72D4: @ 80F72D4 -	push {r4-r7,lr} -	ldr r0, _080F72F4 @ =gUnknown_020388B8 -	ldr r1, [r0] -	ldr r2, _080F72F8 @ =0x000010b0 -	adds r0, r1, r2 -	ldrb r2, [r0] -	lsls r0, r2, 8 -	adds r0, 0x30 -	adds r5, r1, r0 -	cmp r2, 0xD -	beq _080F73A4 -	cmp r2, 0xD -	bgt _080F72FC -	cmp r2, 0 -	beq _080F7302 -	b _080F734C -	.align 2, 0 -_080F72F4: .4byte gUnknown_020388B8 -_080F72F8: .4byte 0x000010b0 -_080F72FC: -	cmp r2, 0xE -	beq _080F73F0 -	b _080F734C -_080F7302: -	ldr r0, [r1, 0x28] -	adds r1, r5, 0 -	movs r2, 0x8 -	bl CpuFastSet -	movs r4, 0 -	adds r7, r5, 0 -	adds r7, 0xE0 -_080F7312: -	ldr r6, _080F7344 @ =gUnknown_020388B8 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	adds r0, 0x20 -	adds r4, 0x1 -	lsls r1, r4, 5 -	adds r1, r5, r1 -	movs r2, 0x8 -	bl CpuFastSet -	lsls r4, 16 -	lsrs r4, 16 -	cmp r4, 0x5 -	bls _080F7312 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	adds r0, 0x40 -	adds r1, r7, 0 -	movs r2, 0x8 -	bl CpuFastSet -	ldr r1, [r6] -	ldr r0, _080F7348 @ =0x000010b0 -	adds r1, r0 -	b _080F7392 -	.align 2, 0 -_080F7344: .4byte gUnknown_020388B8 -_080F7348: .4byte 0x000010b0 -_080F734C: -	ldr r0, _080F739C @ =gUnknown_020388B8 -	ldr r0, [r0] -	ldr r0, [r0, 0x28] -	adds r0, 0x60 -	adds r1, r5, 0 -	movs r2, 0x8 -	bl CpuFastSet -	movs r4, 0 -	adds r7, r5, 0 -	adds r7, 0xE0 -_080F7362: -	ldr r6, _080F739C @ =gUnknown_020388B8 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	adds r0, 0x80 -	adds r4, 0x1 -	lsls r1, r4, 5 -	adds r1, r5, r1 -	movs r2, 0x8 -	bl CpuFastSet -	lsls r4, 16 -	lsrs r4, 16 -	cmp r4, 0x5 -	bls _080F7362 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	adds r0, 0xA0 -	adds r1, r7, 0 -	movs r2, 0x8 -	bl CpuFastSet -	ldr r1, [r6] -	ldr r2, _080F73A0 @ =0x000010b0 -	adds r1, r2 -_080F7392: -	ldrb r0, [r1] -	adds r0, 0x1 -	strb r0, [r1] -	b _080F73FC -	.align 2, 0 -_080F739C: .4byte gUnknown_020388B8 -_080F73A0: .4byte 0x000010b0 -_080F73A4: -	ldr r0, [r1, 0x28] -	adds r0, 0xC0 -	adds r1, r5, 0 -	movs r2, 0x8 -	bl CpuFastSet -	movs r4, 0 -	adds r7, r5, 0 -	adds r7, 0xE0 -_080F73B6: -	ldr r6, _080F73F4 @ =gUnknown_020388B8 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	adds r0, 0xE0 -	adds r4, 0x1 -	lsls r1, r4, 5 -	adds r1, r5, r1 -	movs r2, 0x8 -	bl CpuFastSet -	lsls r4, 16 -	lsrs r4, 16 -	cmp r4, 0x5 -	bls _080F73B6 -	ldr r0, [r6] -	ldr r0, [r0, 0x28] -	movs r1, 0x80 -	lsls r1, 1 -	adds r0, r1 -	adds r1, r7, 0 -	movs r2, 0x8 -	bl CpuFastSet -	ldr r1, [r6] -	ldr r2, _080F73F8 @ =0x000010b0 -	adds r1, r2 -	ldrb r0, [r1] -	adds r0, 0x1 -	strb r0, [r1] -_080F73F0: -	movs r0, 0 -	b _080F73FE -	.align 2, 0 -_080F73F4: .4byte gUnknown_020388B8 -_080F73F8: .4byte 0x000010b0 -_080F73FC: -	movs r0, 0x1 -_080F73FE: -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_80F72D4 - -	thumb_func_start sub_80F7404 -sub_80F7404: @ 80F7404 -	push {lr} -	bl sub_80F728C -_080F740A: -	bl sub_80F72D4 -	lsls r0, 24 -	cmp r0, 0 -	bne _080F740A -	pop {r0} -	bx r0 -	thumb_func_end sub_80F7404 - -	thumb_func_start sub_80F7418 -sub_80F7418: @ 80F7418 -	push {r4-r6,lr} -	lsls r1, 16 -	lsrs r5, r1, 16 -	lsls r2, 16 -	lsrs r6, r2, 16 -	ldr r2, _080F746C @ =gUnknown_020388B8 -	ldr r3, [r2] -	movs r1, 0 -	strb r1, [r3, 0x5] -	ldr r1, [r2] -	strb r0, [r1, 0x4] -	movs r3, 0 -	adds r4, r2, 0 -	movs r2, 0x1 -_080F7434: -	ldr r0, [r4] -	adds r1, r0, 0x6 -	adds r1, r3 -	ldrb r0, [r0, 0x4] -	asrs r0, r3 -	ands r0, r2 -	strb r0, [r1] -	adds r0, r3, 0x1 -	lsls r0, 16 -	lsrs r3, r0, 16 -	cmp r3, 0x3 -	bls _080F7434 -	bl DestroyMenuCursor -	lsls r0, r5, 16 -	asrs r0, 16 -	lsls r1, r6, 16 -	asrs r1, 16 -	ldr r2, _080F746C @ =gUnknown_020388B8 -	ldr r3, [r2] -	ldrh r2, [r3] -	ldrh r3, [r3, 0x2] -	bl sub_80F761C -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_080F746C: .4byte gUnknown_020388B8 -	thumb_func_end sub_80F7418 - -	thumb_func_start sub_80F7470 -sub_80F7470: @ 80F7470 -	push {r4,r5,lr} -	movs r4, 0 -	ldr r5, _080F74FC @ =gUnknown_020388B8 -_080F7476: -	ldr r0, [r5] -	ldrh r0, [r0] -	adds r0, r4, r0 -	lsls r0, 16 -	lsrs r0, 16 -	bl FreeSpriteTilesByTag -	adds r0, r4, 0x1 -	lsls r0, 16 -	lsrs r4, r0, 16 -	cmp r4, 0x2 -	bls _080F7476 -	ldr r4, _080F74FC @ =gUnknown_020388B8 -	ldr r0, [r4] -	ldrh r0, [r0, 0x2] -	bl FreeSpritePaletteByTag -	ldr r0, [r4] -	ldrh r0, [r0, 0x2] -	adds r0, 0x1 -	lsls r0, 16 -	lsrs r0, 16 -	bl FreeSpritePaletteByTag -	movs r4, 0 -_080F74A8: -	ldr r0, _080F74FC @ =gUnknown_020388B8 -	ldr r0, [r0] -	lsls r1, r4, 2 -	adds r0, 0xC -	adds r0, r1 -	ldr r0, [r0] -	cmp r0, 0 -	beq _080F74F6 -	bl DestroySprite -	adds r0, r4, 0x1 -	lsls r0, 16 -	lsrs r4, r0, 16 -	cmp r4, 0x1 -	bls _080F74A8 -	movs r4, 0 -_080F74C8: -	ldr r5, _080F74FC @ =gUnknown_020388B8 -	ldr r0, [r5] -	lsls r1, r4, 2 -	adds r0, 0x14 -	adds r0, r1 -	ldr r0, [r0] -	cmp r0, 0 -	beq _080F74F6 -	bl DestroySprite -	adds r0, r4, 0x1 -	lsls r0, 16 -	lsrs r4, r0, 16 -	cmp r4, 0x3 -	bls _080F74C8 -	bl DestroyMenuCursor -	ldr r0, [r5] -	ldr r0, [r0, 0x24] -	cmp r0, 0 -	beq _080F74F6 -	bl DestroySprite -_080F74F6: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_080F74FC: .4byte gUnknown_020388B8 -	thumb_func_end sub_80F7470 - -	thumb_func_start sub_80F7500 -sub_80F7500: @ 80F7500 -	push {r4,r5,lr} -	sub sp, 0x30 -	ldr r4, _080F7580 @ =gUnknown_020388B8 -	ldr r2, [r4] -	adds r0, r2, 0 -	adds r0, 0x30 -	str r0, [sp, 0x18] -	add r1, sp, 0x1C -	movs r5, 0 -	movs r0, 0x80 -	lsls r0, 5 -	strh r0, [r1] -	ldrh r1, [r2] -	mov r0, sp -	adds r0, 0x1E -	strh r1, [r0] -	add r1, sp, 0x20 -	ldr r0, _080F7584 @ =gPokenavConditionMenuMisc_Gfx -	str r0, [sp, 0x20] -	movs r0, 0xA4 -	lsls r0, 3 -	strh r0, [r1, 0x4] -	ldrh r0, [r2] -	adds r0, 0x1 -	strh r0, [r1, 0x6] -	add r0, sp, 0x28 -	movs r1, 0 -	movs r2, 0x8 -	bl memset -	add r1, sp, 0x18 -	mov r0, sp -	movs r2, 0x18 -	bl memcpy -	ldr r0, [r4] -	ldrb r0, [r0, 0xB] -	cmp r0, 0 -	beq _080F7558 -	mov r0, sp -	bl LoadTilesForSpriteSheets -	ldr r0, [r4] -	strb r5, [r0, 0xB] -_080F7558: -	ldr r0, _080F7588 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x40 -	ands r0, r1 -	cmp r0, 0 -	beq _080F758C -	movs r0, 0x5 -	bl PlaySE -	ldr r1, [r4] -	ldrb r0, [r1, 0x5] -	subs r0, 0x1 -	strb r0, [r1, 0x5] -	lsls r0, 24 -	cmp r0, 0 -	bge _080F75FE -	ldr r1, [r4] -	movs r0, 0x5 -	strb r0, [r1, 0x5] -	b _080F75FE -	.align 2, 0 -_080F7580: .4byte gUnknown_020388B8 -_080F7584: .4byte gPokenavConditionMenuMisc_Gfx -_080F7588: .4byte gMain -_080F758C: -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	beq _080F75B0 -	movs r0, 0x5 -	bl PlaySE -	ldr r1, [r4] -	ldrb r0, [r1, 0x5] -	adds r0, 0x1 -	strb r0, [r1, 0x5] -	lsls r0, 24 -	asrs r0, 24 -	cmp r0, 0x5 -	ble _080F75FE -	ldr r0, [r4] -	strb r5, [r0, 0x5] -	b _080F75FE -_080F75B0: -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _080F7602 -	movs r0, 0x5 -	bl PlaySE -	ldr r0, [r4] -	movs r1, 0x5 -	ldrsb r1, [r0, r1] -	cmp r1, 0x4 -	beq _080F75DC -	cmp r1, 0x5 -	beq _080F7610 -	adds r0, 0x6 -	adds r1, r0, r1 -	movs r2, 0 -	ldrb r0, [r1] -	cmp r0, 0 -	bne _080F75FC -	movs r2, 0x1 -	b _080F75FC -_080F75DC: -	strb r5, [r0, 0x4] -	movs r3, 0 -_080F75E0: -	ldr r2, [r4] -	adds r0, r2, 0x6 -	adds r0, r3 -	ldrb r0, [r0] -	lsls r0, r3 -	ldrb r1, [r2, 0x4] -	orrs r0, r1 -	strb r0, [r2, 0x4] -	adds r0, r3, 0x1 -	lsls r0, 16 -	lsrs r3, r0, 16 -	cmp r3, 0x3 -	bls _080F75E0 -	b _080F7610 -_080F75FC: -	strb r2, [r1] -_080F75FE: -	movs r0, 0x1 -	b _080F7612 -_080F7602: -	movs r0, 0x2 -	ands r0, r1 -	cmp r0, 0 -	beq _080F75FE -	movs r0, 0x5 -	bl PlaySE -_080F7610: -	movs r0, 0 -_080F7612: -	add sp, 0x30 -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_80F7500 - -	thumb_func_start sub_80F761C -sub_80F761C: @ 80F761C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x5C -	adds r5, r2, 0 -	lsls r0, 16 -	lsrs r0, 16 -	str r0, [sp, 0x4C] -	lsls r1, 16 -	lsrs r1, 16 -	str r1, [sp, 0x50] -	lsls r5, 16 -	lsrs r5, 16 -	lsls r3, 16 -	lsrs r3, 16 -	str r3, [sp, 0x54] -	ldr r0, _080F7820 @ =gUnknown_020388B8 -	mov r8, r0 -	ldr r0, [r0] -	adds r0, 0x30 -	str r0, [sp, 0x1C] -	add r1, sp, 0x20 -	movs r2, 0 -	mov r9, r2 -	movs r0, 0x80 -	lsls r0, 5 -	strh r0, [r1] -	mov r0, sp -	adds r0, 0x22 -	strh r5, [r0] -	add r1, sp, 0x24 -	ldr r0, _080F7824 @ =gPokenavConditionMenuMisc_Gfx -	str r0, [sp, 0x24] -	movs r0, 0xA4 -	lsls r0, 3 -	strh r0, [r1, 0x4] -	adds r0, r5, 0x1 -	strh r0, [r1, 0x6] -	add r0, sp, 0x2C -	movs r1, 0 -	movs r2, 0x8 -	bl memset -	add r6, sp, 0x1C -	add r0, sp, 0x4 -	adds r1, r6, 0 -	movs r2, 0x18 -	bl memcpy -	mov r3, r8 -	ldr r0, [r3] -	ldr r0, [r0, 0x2C] -	str r0, [sp, 0x34] -	add r0, sp, 0x38 -	add r1, sp, 0x54 -	ldrh r1, [r1] -	strh r1, [r0] -	add r1, sp, 0x3C -	ldr r0, _080F7828 @ =gUnknown_08E966B8 -	str r0, [sp, 0x3C] -	ldr r0, [sp, 0x54] -	adds r0, 0x1 -	strh r0, [r1, 0x4] -	add r0, sp, 0x44 -	movs r1, 0 -	movs r2, 0x8 -	bl memset -	add r4, sp, 0x34 -	adds r0, r6, 0 -	adds r1, r4, 0 -	movs r2, 0x18 -	bl memcpy -	strh r5, [r4] -	add r2, sp, 0x54 -	ldrh r2, [r2] -	strh r2, [r4, 0x2] -	ldr r0, _080F782C @ =gOamData_83E5214 -	str r0, [r4, 0x4] -	ldr r0, _080F7830 @ =gSpriteAnimTable_83E52AC -	str r0, [r4, 0x8] -	mov r3, r9 -	str r3, [r4, 0xC] -	ldr r0, _080F7834 @ =gDummySpriteAffineAnimTable -	str r0, [r4, 0x10] -	ldr r0, _080F7838 @ =nullsub_65 -	str r0, [r4, 0x14] -	mov r0, r8 -	ldr r1, [r0] -	movs r0, 0x1 -	strb r0, [r1, 0xB] -	add r0, sp, 0x4 -	bl AllocTilesForSpriteSheets -	adds r0, r6, 0 -	bl LoadSpritePalettes -	movs r5, 0 -	ldr r1, [sp, 0x4C] -	lsls r0, r1, 16 -	movs r2, 0x80 -	lsls r2, 14 -	adds r2, r0 -	mov r8, r2 -	str r0, [sp, 0x58] -	ldr r3, [sp, 0x50] -	lsls r0, r3, 16 -	movs r1, 0x80 -	lsls r1, 14 -	adds r7, r0, r1 -	mov r9, r0 -_080F7700: -	adds r0, r4, 0 -	mov r2, r8 -	asrs r1, r2, 16 -	asrs r2, r7, 16 -	movs r3, 0x2 -	bl CreateSprite -	lsls r0, 24 -	lsrs r3, r0, 24 -	cmp r3, 0x40 -	bne _080F7718 -	b _080F7850 -_080F7718: -	ldr r6, _080F7820 @ =gUnknown_020388B8 -	ldr r2, [r6] -	lsls r0, r5, 2 -	adds r2, 0xC -	adds r2, r0 -	lsls r0, r3, 4 -	adds r0, r3 -	lsls r0, 2 -	ldr r1, _080F783C @ =gSprites -	adds r0, r1 -	str r0, [r2] -	lsls r1, r5, 24 -	lsrs r1, 24 -	bl StartSpriteAnim -	adds r0, r5, 0x1 -	lsls r0, 16 -	lsrs r5, r0, 16 -	cmp r5, 0x1 -	bls _080F7700 -	ldr r0, [r6] -	ldr r1, [r0, 0x10] -	mov r3, r9 -	asrs r0, r3, 16 -	adds r0, 0x60 -	strh r0, [r1, 0x22] -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -	ldrh r0, [r4, 0x2] -	adds r0, 0x1 -	strh r0, [r4, 0x2] -	ldr r0, _080F7840 @ =gSpriteAnimTable_83E5274 -	str r0, [r4, 0x8] -	ldr r0, _080F7844 @ =sub_80F78CC -	str r0, [r4, 0x14] -	ldr r0, _080F7848 @ =gOamData_83E521C -	str r0, [r4, 0x4] -	movs r5, 0 -	ldr r0, [sp, 0x58] -	movs r1, 0x80 -	lsls r1, 14 -	adds r0, r1 -	mov r10, r0 -_080F7770: -	lsls r2, r5, 4 -	adds r2, 0x10 -	mov r3, r9 -	asrs r3, 16 -	mov r8, r3 -	add r2, r8 -	lsls r2, 16 -	asrs r2, 16 -	adds r0, r4, 0 -	mov r3, r10 -	asrs r1, r3, 16 -	movs r3, 0x1 -	bl CreateSprite -	lsls r0, 24 -	lsrs r3, r0, 24 -	cmp r3, 0x40 -	beq _080F7860 -	ldr r6, _080F7820 @ =gUnknown_020388B8 -	ldr r1, [r6] -	lsls r0, r5, 2 -	adds r1, 0x14 -	adds r1, r0 -	lsls r0, r3, 4 -	adds r0, r3 -	lsls r0, 2 -	ldr r7, _080F783C @ =gSprites -	adds r0, r7 -	str r0, [r1] -	strh r5, [r0, 0x2E] -	adds r0, r5, 0x1 -	lsls r0, 16 -	lsrs r5, r0, 16 -	cmp r5, 0x3 -	bls _080F7770 -	ldr r0, _080F784C @ =SpriteCallbackDummy -	str r0, [r4, 0x14] -	adds r0, r4, 0 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0x1 -	bl CreateSprite -	lsls r0, 24 -	lsrs r3, r0, 24 -	cmp r3, 0x40 -	beq _080F7874 -	ldr r1, [r6] -	lsls r0, r3, 4 -	adds r0, r3 -	lsls r0, 2 -	adds r0, r7 -	str r0, [r1, 0x24] -	ldrb r2, [r0, 0x1] -	movs r1, 0x3F -	ands r1, r2 -	movs r2, 0x40 -	orrs r1, r2 -	strb r1, [r0, 0x1] -	ldr r0, [r6] -	ldr r2, [r0, 0x24] -	ldrb r0, [r2, 0x3] -	movs r1, 0xC0 -	orrs r0, r1 -	strb r0, [r2, 0x3] -	ldr r0, [r6] -	ldr r0, [r0, 0x24] -	movs r1, 0x9 -	bl StartSpriteAnim -	ldr r1, [r6] -	ldr r2, [r1, 0x24] -	ldr r3, [sp, 0x58] -	asrs r0, r3, 16 -.ifdef ENGLISH -	adds r0, 0x20 -.else -	adds r0, 0x18 -.endif -	strh r0, [r2, 0x20] -	ldr r2, [r1, 0x24] -	mov r0, r8 -	adds r0, 0x50 -	strh r0, [r2, 0x22] -	ldr r0, [r1, 0x24] -	movs r1, 0x1 -	movs r2, 0x2 -	movs r3, 0 -	bl CalcCenterToCornerVec -	b _080F787A -	.align 2, 0 -_080F7820: .4byte gUnknown_020388B8 -_080F7824: .4byte gPokenavConditionMenuMisc_Gfx -_080F7828: .4byte gUnknown_08E966B8 -_080F782C: .4byte gOamData_83E5214 -_080F7830: .4byte gSpriteAnimTable_83E52AC -_080F7834: .4byte gDummySpriteAffineAnimTable -_080F7838: .4byte nullsub_65 -_080F783C: .4byte gSprites -_080F7840: .4byte gSpriteAnimTable_83E5274 -_080F7844: .4byte sub_80F78CC -_080F7848: .4byte gOamData_83E521C -_080F784C: .4byte SpriteCallbackDummy -_080F7850: -	ldr r0, _080F785C @ =gUnknown_020388B8 -	ldr r0, [r0] -	lsls r1, r5, 2 -	adds r0, 0xC -	b _080F7868 -	.align 2, 0 -_080F785C: .4byte gUnknown_020388B8 -_080F7860: -	ldr r0, _080F7870 @ =gUnknown_020388B8 -	ldr r0, [r0] -	lsls r1, r5, 2 -	adds r0, 0x14 -_080F7868: -	adds r0, r1 -	movs r1, 0 -	str r1, [r0] -	b _080F78B0 -	.align 2, 0 -_080F7870: .4byte gUnknown_020388B8 -_080F7874: -	ldr r1, [r6] -	movs r0, 0 -	str r0, [r1, 0x24] -_080F787A: -	ldr r4, _080F78C0 @ =gUnknown_020388B8 -	ldr r1, [r4] -	ldr r0, [sp, 0x50] -	adds r0, 0x8 -	strb r0, [r1, 0xA] -	ldr r1, [sp, 0x54] -	adds r1, 0x1 -	lsls r1, 16 -	lsrs r1, 16 -	movs r0, 0x30 -	str r0, [sp] -	movs r0, 0 -	movs r2, 0xF -	movs r3, 0 -	bl sub_814A5C0 -	ldr r0, [sp, 0x4C] -	adds r0, 0x8 -	lsls r0, 24 -	lsrs r0, 24 -	ldr r1, [r4] -	ldrb r1, [r1, 0xA] -	bl sub_814A880 -	ldr r0, _080F78C4 @ =sub_80F7908 -	bl sub_814AABC -_080F78B0: -	add sp, 0x5C -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_080F78C0: .4byte gUnknown_020388B8 -_080F78C4: .4byte sub_80F7908 -	thumb_func_end sub_80F761C - -	thumb_func_start nullsub_65 -nullsub_65: @ 80F78C8 -	bx lr -	thumb_func_end nullsub_65 - -	thumb_func_start sub_80F78CC -sub_80F78CC: @ 80F78CC -	push {lr} -	adds r2, r0, 0 -	ldr r0, _080F78F4 @ =gUnknown_020388B8 -	ldr r0, [r0] -	movs r3, 0x2E -	ldrsh r1, [r2, r3] -	adds r0, 0x6 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0 -	beq _080F78F8 -	lsls r1, 1 -	adds r1, 0x1 -	lsls r1, 24 -	lsrs r1, 24 -	adds r0, r2, 0 -	bl StartSpriteAnim -	b _080F7902 -	.align 2, 0 -_080F78F4: .4byte gUnknown_020388B8 -_080F78F8: -	lsls r1, 25 -	lsrs r1, 24 -	adds r0, r2, 0 -	bl StartSpriteAnim -_080F7902: -	pop {r0} -	bx r0 -	thumb_func_end sub_80F78CC - -	thumb_func_start sub_80F7908 -sub_80F7908: @ 80F7908 -	ldr r1, _080F791C @ =gUnknown_020388B8 -	ldr r2, [r1] -	movs r1, 0x5 -	ldrsb r1, [r2, r1] -	lsls r1, 4 -	ldrb r2, [r2, 0xA] -	adds r1, r2 -	strh r1, [r0, 0x22] -	bx lr -	.align 2, 0 -_080F791C: .4byte gUnknown_020388B8 -	thumb_func_end sub_80F7908 - -	thumb_func_start sub_80F7920 -sub_80F7920: @ 80F7920 -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	lsls r1, 16 -	lsrs r1, 16 -	cmp r2, 0 -	bne _080F7930 -	ldr r2, _080F793C @ =gUnknown_083E49F4 -_080F7930: -	movs r3, 0x10 -	bl sub_80F7960 -	pop {r1} -	bx r1 -	.align 2, 0 -_080F793C: .4byte gUnknown_083E49F4 -	thumb_func_end sub_80F7920 - -	thumb_func_start sub_80F7940 -sub_80F7940: @ 80F7940 -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	lsls r1, 16 -	lsrs r1, 16 -	cmp r2, 0 -	bne _080F7950 -	ldr r2, _080F795C @ =gUnknown_083E49F4 -_080F7950: -	movs r3, 0x1 -	bl sub_80F7960 -	pop {r1} -	bx r1 -	.align 2, 0 -_080F795C: .4byte gUnknown_083E49F4 -	thumb_func_end sub_80F7940 - -	thumb_func_start sub_80F7960 -sub_80F7960: @ 80F7960 -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	sub sp, 0x28 -	lsls r0, 16 -	lsls r1, 16 -	lsrs r1, 16 -	ldr r4, _080F79DC @ =gUnknown_083E4A14 -	str r4, [sp, 0x18] -	movs r4, 0x80 -	add r5, sp, 0x18 -	lsrs r6, r0, 16 -	orrs r0, r4 -	str r0, [r5, 0x4] -	str r2, [sp, 0x20] -	ldr r0, _080F79E0 @ =0xffff0000 -	mov r8, r0 -	add r4, sp, 0x20 -	ldr r0, [r4, 0x4] -	mov r2, r8 -	ands r0, r2 -	orrs r0, r1 -	str r0, [r4, 0x4] -	mov r0, sp -	movs r2, 0 -	strh r6, [r0] -	strh r1, [r0, 0x2] -	ldr r0, _080F79E4 @ =gOamData_83E52B4 -	str r0, [sp, 0x4] -	ldr r0, _080F79E8 @ =gSpriteAnimTable_83E533C -	str r0, [sp, 0x8] -	str r2, [sp, 0xC] -	ldr r0, _080F79EC @ =gDummySpriteAffineAnimTable -	str r0, [sp, 0x10] -	ldr r0, _080F79F0 @ =nullsub_65 -	str r0, [sp, 0x14] -	lsls r3, 23 -	lsrs r3, 16 -	ldr r0, [r5, 0x4] -	mov r1, r8 -	ands r0, r1 -	orrs r0, r3 -	str r0, [r5, 0x4] -	adds r0, r5, 0 -	bl LoadSpriteSheet -	adds r0, r4, 0 -	bl LoadSpritePalette -	mov r0, sp -	movs r1, 0 -	movs r2, 0 -	movs r3, 0 -	bl CreateSprite -	lsls r0, 24 -	lsrs r1, r0, 24 -	cmp r1, 0x40 -	bne _080F79F4 -	movs r0, 0 -	b _080F79FE -	.align 2, 0 -_080F79DC: .4byte gUnknown_083E4A14 -_080F79E0: .4byte 0xffff0000 -_080F79E4: .4byte gOamData_83E52B4 -_080F79E8: .4byte gSpriteAnimTable_83E533C -_080F79EC: .4byte gDummySpriteAffineAnimTable -_080F79F0: .4byte nullsub_65 -_080F79F4: -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	ldr r1, _080F7A0C @ =gSprites -	adds r0, r1 -_080F79FE: -	add sp, 0x28 -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r1} -	bx r1 -	.align 2, 0 -_080F7A0C: .4byte gSprites -	thumb_func_end sub_80F7960 - -	thumb_func_start sub_80F7A10 -sub_80F7A10: @ 80F7A10 -	lsls r0, 24 -	lsrs r0, 17 -	ldr r2, _080F7A28 @ =gUnknown_083E4A14 -	adds r0, r2 -	ldr r2, _080F7A2C @ =0x040000d4 -	str r0, [r2] -	str r1, [r2, 0x4] -	ldr r0, _080F7A30 @ =0x80000040 -	str r0, [r2, 0x8] -	ldr r0, [r2, 0x8] -	bx lr -	.align 2, 0 -_080F7A28: .4byte gUnknown_083E4A14 -_080F7A2C: .4byte 0x040000d4 -_080F7A30: .4byte 0x80000040 -	thumb_func_end sub_80F7A10 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/pokemon_icon.s b/asm/pokemon_icon.s deleted file mode 100644 index 5aa8b5901..000000000 --- a/asm/pokemon_icon.s +++ /dev/null @@ -1,788 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text - -	thumb_func_start unref_sub_809D26C -unref_sub_809D26C: @ 809D26C -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	sub sp, 0x18 -	adds r6, r3, 0 -	ldr r3, [sp, 0x2C] -	lsls r0, 16 -	lsrs r0, 16 -	lsls r3, 24 -	lsrs r3, 24 -	mov r8, sp -	ldr r4, _0809D2E0 @ =gOamData_83BC5E8 -	str r4, [sp] -	ldr r5, _0809D2E4 @ =gMonIconTable -	lsls r4, r0, 2 -	adds r4, r5 -	ldr r4, [r4] -	str r4, [sp, 0x4] -	ldr r4, _0809D2E8 @ =gSpriteAnimTable_83BC62C -	str r4, [sp, 0x8] -	ldr r4, _0809D2EC @ =gSpriteAffineAnimTable_83BC660 -	str r4, [sp, 0xC] -	str r1, [sp, 0x10] -	ldr r1, _0809D2F0 @ =gMonIconPaletteIndices -	adds r0, r1 -	ldr r4, _0809D2F4 @ =0x0000dac0 -	adds r1, r4, 0 -	ldrb r0, [r0] -	adds r1, r0 -	mov r0, r8 -	strh r1, [r0, 0x14] -	lsls r2, 16 -	asrs r2, 16 -	lsls r6, 16 -	asrs r6, 16 -	mov r0, sp -	adds r1, r2, 0 -	adds r2, r6, 0 -	bl CreateMonIconSprite -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r0, r4, 4 -	adds r0, r4 -	lsls r0, 2 -	ldr r1, _0809D2F8 @ =gSprites -	adds r0, r1 -	bl UpdateMonIconFrame -	adds r0, r4, 0 -	add sp, 0x18 -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r1} -	bx r1 -	.align 2, 0 -_0809D2E0: .4byte gOamData_83BC5E8 -_0809D2E4: .4byte gMonIconTable -_0809D2E8: .4byte gSpriteAnimTable_83BC62C -_0809D2EC: .4byte gSpriteAffineAnimTable_83BC660 -_0809D2F0: .4byte gMonIconPaletteIndices -_0809D2F4: .4byte 0x0000dac0 -_0809D2F8: .4byte gSprites -	thumb_func_end unref_sub_809D26C - -	thumb_func_start CreateMonIcon -CreateMonIcon: @ 809D2FC -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	sub sp, 0x30 -	adds r4, r0, 0 -	adds r5, r1, 0 -	ldr r0, [sp, 0x48] -	ldr r1, [sp, 0x4C] -	lsls r4, 16 -	lsrs r4, 16 -	lsls r2, 16 -	lsrs r7, r2, 16 -	lsls r3, 16 -	lsrs r6, r3, 16 -	lsls r0, 24 -	lsrs r0, 24 -	mov r8, r0 -	ldr r0, _0809D38C @ =gOamData_83BC5E8 -	str r0, [sp, 0x18] -	adds r0, r4, 0 -	bl GetMonIconPtr -	str r0, [sp, 0x1C] -	ldr r0, _0809D390 @ =gSpriteAnimTable_83BC62C -	str r0, [sp, 0x20] -	ldr r0, _0809D394 @ =gSpriteAffineAnimTable_83BC660 -	str r0, [sp, 0x24] -	str r5, [sp, 0x28] -	ldr r0, _0809D398 @ =gMonIconPaletteIndices -	adds r0, r4, r0 -	ldr r1, _0809D39C @ =0x0000dac0 -	adds r5, r1, 0 -	ldrb r0, [r0] -	adds r1, r5, r0 -	add r0, sp, 0x2C -	strh r1, [r0] -	add r1, sp, 0x18 -	mov r0, sp -	movs r2, 0x18 -	bl memcpy -	movs r0, 0xCE -	lsls r0, 1 -	cmp r4, r0 -	bls _0809D35A -	mov r0, sp -	strh r5, [r0, 0x14] -_0809D35A: -	lsls r1, r7, 16 -	asrs r1, 16 -	lsls r2, r6, 16 -	asrs r2, 16 -	mov r0, sp -	mov r3, r8 -	bl CreateMonIconSprite -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r0, r4, 4 -	adds r0, r4 -	lsls r0, 2 -	ldr r1, _0809D3A0 @ =gSprites -	adds r0, r1 -	bl UpdateMonIconFrame -	adds r0, r4, 0 -	add sp, 0x30 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_0809D38C: .4byte gOamData_83BC5E8 -_0809D390: .4byte gSpriteAnimTable_83BC62C -_0809D394: .4byte gSpriteAffineAnimTable_83BC660 -_0809D398: .4byte gMonIconPaletteIndices -_0809D39C: .4byte 0x0000dac0 -_0809D3A0: .4byte gSprites -	thumb_func_end CreateMonIcon - -	thumb_func_start sub_809D3A4 -sub_809D3A4: @ 809D3A4 -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	sub sp, 0x18 -	adds r6, r3, 0 -	ldr r3, [sp, 0x2C] -	lsls r0, 16 -	lsrs r0, 16 -	lsls r3, 24 -	lsrs r3, 24 -	mov r8, sp -	ldr r4, _0809D418 @ =gOamData_83BC5E8 -	str r4, [sp] -	ldr r5, _0809D41C @ =gMonIconTable -	lsls r4, r0, 2 -	adds r4, r5 -	ldr r4, [r4] -	str r4, [sp, 0x4] -	ldr r4, _0809D420 @ =gSpriteAnimTable_83BC62C -	str r4, [sp, 0x8] -	ldr r4, _0809D424 @ =gSpriteAffineAnimTable_83BC660 -	str r4, [sp, 0xC] -	str r1, [sp, 0x10] -	ldr r1, _0809D428 @ =gMonIconPaletteIndices -	adds r0, r1 -	ldr r4, _0809D42C @ =0x0000dac0 -	adds r1, r4, 0 -	ldrb r0, [r0] -	adds r1, r0 -	mov r0, r8 -	strh r1, [r0, 0x14] -	lsls r2, 16 -	asrs r2, 16 -	lsls r6, 16 -	asrs r6, 16 -	mov r0, sp -	adds r1, r2, 0 -	adds r2, r6, 0 -	bl CreateMonIconSprite -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r0, r4, 4 -	adds r0, r4 -	lsls r0, 2 -	ldr r1, _0809D430 @ =gSprites -	adds r0, r1 -	bl UpdateMonIconFrame -	adds r0, r4, 0 -	add sp, 0x18 -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r1} -	bx r1 -	.align 2, 0 -_0809D418: .4byte gOamData_83BC5E8 -_0809D41C: .4byte gMonIconTable -_0809D420: .4byte gSpriteAnimTable_83BC62C -_0809D424: .4byte gSpriteAffineAnimTable_83BC660 -_0809D428: .4byte gMonIconPaletteIndices -_0809D42C: .4byte 0x0000dac0 -_0809D430: .4byte gSprites -	thumb_func_end sub_809D3A4 - -	thumb_func_start mon_icon_convert_unown_species_id -mon_icon_convert_unown_species_id: @ 809D434 -	push {lr} -	lsls r0, 16 -	lsrs r2, r0, 16 -	cmp r2, SPECIES_UNOWN -	bne _0809D45E -	adds r0, r1, 0 -	bl GetUnownLetterByPersonality -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, 0 -	bne _0809D450 -	movs r0, SPECIES_UNOWN -	b _0809D45A -_0809D450: -	movs r1, 0xCE -	lsls r1, 1 -	adds r0, r1 -	lsls r0, 16 -	lsrs r0, 16 -_0809D45A: -	adds r1, r0, 0 -	b _0809D46C -_0809D45E: -	movs r0, 0xCE -	lsls r0, 1 -	adds r1, r2, 0 -	cmp r1, r0 -	bls _0809D46C -	movs r1, 0x82 -	lsls r1, 1 -_0809D46C: -	adds r0, r1, 0 -	pop {r1} -	bx r1 -	thumb_func_end mon_icon_convert_unown_species_id - -	thumb_func_start GetUnownLetterByPersonality -GetUnownLetterByPersonality: @ 809D474 -	push {lr} -	adds r2, r0, 0 -	movs r0, 0xC0 -	lsls r0, 18 -	ands r0, r2 -	lsrs r0, 18 -	movs r1, 0xC0 -	lsls r1, 10 -	ands r1, r2 -	lsrs r1, 12 -	orrs r0, r1 -	movs r1, 0xC0 -	lsls r1, 2 -	ands r1, r2 -	lsrs r1, 6 -	orrs r0, r1 -	movs r1, 0x3 -	ands r1, r2 -	orrs r0, r1 -	movs r1, 0x1C -	bl __umodsi3 -	lsls r0, 16 -	lsrs r0, 16 -	pop {r1} -	bx r1 -	thumb_func_end GetUnownLetterByPersonality - -	thumb_func_start sub_809D4A8 -sub_809D4A8: @ 809D4A8 -	push {r4,lr} -	sub sp, 0x4 -	lsls r0, 16 -	lsrs r4, r0, 16 -	adds r0, r4, 0 -	mov r1, sp -	bl MailSpeciesToSpecies -	lsls r0, 16 -	lsrs r0, 16 -	cmp r0, SPECIES_UNOWN -	bne _0809D4DE -	mov r0, sp -	ldrh r0, [r0] -	cmp r0, 0 -	bne _0809D4CE -	mov r1, sp -	adds r0, SPECIES_UNOWN -	b _0809D4D6 -_0809D4CE: -	mov r1, sp -	movs r2, 0xCE -	lsls r2, 1 -	adds r0, r2 -_0809D4D6: -	strh r0, [r1] -	mov r0, sp -	ldrh r0, [r0] -	b _0809D4EA -_0809D4DE: -	adds r0, r4, 0 -	movs r1, 0 -	bl mon_icon_convert_unown_species_id -	lsls r0, 16 -	lsrs r0, 16 -_0809D4EA: -	add sp, 0x4 -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end sub_809D4A8 - -	thumb_func_start GetMonIconPtr -GetMonIconPtr: @ 809D4F4 -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	bl mon_icon_convert_unown_species_id -	lsls r0, 16 -	ldr r1, _0809D50C @ =gMonIconTable -	lsrs r0, 14 -	adds r0, r1 -	ldr r0, [r0] -	pop {r1} -	bx r1 -	.align 2, 0 -_0809D50C: .4byte gMonIconTable -	thumb_func_end GetMonIconPtr - -	thumb_func_start sub_809D510 -sub_809D510: @ 809D510 -	push {lr} -	bl sub_809D7E8 -	pop {r0} -	bx r0 -	thumb_func_end sub_809D510 - -	thumb_func_start sub_809D51C -sub_809D51C: @ 809D51C -	push {r4,r5,lr} -	movs r4, 0 -	ldr r5, _0809D53C @ =gMonIconPaletteTable -_0809D522: -	lsls r0, r4, 3 -	adds r0, r5 -	bl LoadSpritePalette -	adds r0, r4, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0x5 -	bls _0809D522 -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D53C: .4byte gMonIconPaletteTable -	thumb_func_end sub_809D51C - -	thumb_func_start unref_sub_809D540 -unref_sub_809D540: @ 809D540 -	push {r4,lr} -	lsls r0, 16 -	lsrs r1, r0, 16 -	movs r0, 0xCE -	lsls r0, 1 -	cmp r1, r0 -	bls _0809D552 -	movs r1, 0x82 -	lsls r1, 1 -_0809D552: -	ldr r0, _0809D578 @ =gMonIconPaletteIndices -	adds r0, r1, r0 -	ldrb r0, [r0] -	ldr r1, _0809D57C @ =gMonIconPaletteTable -	lsls r0, 3 -	adds r4, r0, r1 -	ldrh r0, [r4, 0x4] -	bl IndexOfSpritePaletteTag -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0xFF -	bne _0809D572 -	adds r0, r4, 0 -	bl LoadSpritePalette -_0809D572: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D578: .4byte gMonIconPaletteIndices -_0809D57C: .4byte gMonIconPaletteTable -	thumb_func_end unref_sub_809D540 - -	thumb_func_start sub_809D580 -sub_809D580: @ 809D580 -	push {r4,lr} -	lsls r0, 16 -	lsrs r0, 16 -	ldr r1, _0809D5AC @ =gMonIconPaletteIndices -	adds r0, r1 -	ldrb r0, [r0] -	ldr r1, _0809D5B0 @ =gMonIconPaletteTable -	lsls r0, 3 -	adds r4, r0, r1 -	ldrh r0, [r4, 0x4] -	bl IndexOfSpritePaletteTag -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0xFF -	bne _0809D5A6 -	adds r0, r4, 0 -	bl LoadSpritePalette -_0809D5A6: -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D5AC: .4byte gMonIconPaletteIndices -_0809D5B0: .4byte gMonIconPaletteTable -	thumb_func_end sub_809D580 - -	thumb_func_start unref_sub_809D5B4 -unref_sub_809D5B4: @ 809D5B4 -	push {r4,r5,lr} -	movs r4, 0 -	ldr r5, _0809D5D4 @ =gMonIconPaletteTable -_0809D5BA: -	lsls r0, r4, 3 -	adds r0, r5 -	ldrh r0, [r0, 0x4] -	bl FreeSpritePaletteByTag -	adds r0, r4, 0x1 -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0x5 -	bls _0809D5BA -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D5D4: .4byte gMonIconPaletteTable -	thumb_func_end unref_sub_809D5B4 - -	thumb_func_start unref_sub_809D5D8 -unref_sub_809D5D8: @ 809D5D8 -	push {lr} -	lsls r0, 16 -	lsrs r1, r0, 16 -	movs r0, 0xCE -	lsls r0, 1 -	cmp r1, r0 -	bls _0809D5EA -	movs r1, 0x82 -	lsls r1, 1 -_0809D5EA: -	ldr r0, _0809D600 @ =gMonIconPaletteIndices -	adds r0, r1, r0 -	ldrb r0, [r0] -	ldr r1, _0809D604 @ =gMonIconPaletteTable -	lsls r0, 3 -	adds r0, r1 -	ldrh r0, [r0, 0x4] -	bl FreeSpritePaletteByTag -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D600: .4byte gMonIconPaletteIndices -_0809D604: .4byte gMonIconPaletteTable -	thumb_func_end unref_sub_809D5D8 - -	thumb_func_start sub_809D608 -sub_809D608: @ 809D608 -	push {lr} -	lsls r0, 16 -	lsrs r0, 16 -	ldr r1, _0809D624 @ =gMonIconPaletteIndices -	adds r0, r1 -	ldrb r0, [r0] -	ldr r1, _0809D628 @ =gMonIconPaletteTable -	lsls r0, 3 -	adds r0, r1 -	ldrh r0, [r0, 0x4] -	bl FreeSpritePaletteByTag -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D624: .4byte gMonIconPaletteIndices -_0809D628: .4byte gMonIconPaletteTable -	thumb_func_end sub_809D608 - -	thumb_func_start sub_809D62C -sub_809D62C: @ 809D62C -	push {lr} -	bl UpdateMonIconFrame -	pop {r0} -	bx r0 -	thumb_func_end sub_809D62C - -	thumb_func_start UpdateMonIconFrame -UpdateMonIconFrame: @ 809D638 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	adds r4, r0, 0 -	movs r7, 0 -	adds r6, r4, 0 -	adds r6, 0x2C -	ldrb r2, [r6] -	movs r0, 0x3F -	mov r9, r0 -	ands r0, r2 -	cmp r0, 0 -	bne _0809D6EC -	movs r1, 0x2A -	adds r1, r4 -	mov r8, r1 -	ldrb r1, [r1] -	ldr r0, [r4, 0x8] -	lsls r1, 2 -	adds r1, r0 -	adds r5, r4, 0 -	adds r5, 0x2B -	ldrb r0, [r5] -	ldr r1, [r1] -	lsls r0, 2 -	adds r0, r1 -	movs r1, 0 -	ldrsh r3, [r0, r1] -	movs r0, 0x2 -	negs r0, r0 -	cmp r3, r0 -	beq _0809D682 -	adds r0, 0x1 -	cmp r3, r0 -	bne _0809D686 -	b _0809D700 -_0809D682: -	strb r7, [r5] -	b _0809D700 -_0809D686: -	ldr r2, _0809D6E4 @ =gSpriteImageSizes -	ldrb r1, [r4, 0x3] -	lsrs r1, 6 -	lsls r1, 1 -	ldrb r0, [r4, 0x1] -	lsrs r0, 6 -	lsls r0, 3 -	adds r1, r0 -	adds r1, r2 -	ldrh r2, [r1] -	adds r1, r2, 0 -	muls r1, r3 -	ldr r0, [r4, 0xC] -	adds r0, r1 -	ldrh r1, [r4, 0x4] -	lsls r1, 22 -	lsrs r1, 17 -	ldr r3, _0809D6E8 @ =0x06010000 -	adds r1, r3 -	bl RequestSpriteCopy -	mov r0, r8 -	ldrb r1, [r0] -	ldr r0, [r4, 0x8] -	lsls r1, 2 -	adds r1, r0 -	ldrb r0, [r5] -	ldr r1, [r1] -	lsls r0, 2 -	adds r0, r1 -	ldr r0, [r0] -	lsls r0, 10 -	lsrs r0, 26 -	mov r1, r9 -	ands r1, r0 -	ldrb r2, [r6] -	movs r0, 0x40 -	negs r0, r0 -	ands r0, r2 -	orrs r0, r1 -	strb r0, [r6] -	ldrb r0, [r5] -	adds r0, 0x1 -	strb r0, [r5] -	ldrb r7, [r5] -	b _0809D700 -	.align 2, 0 -_0809D6E4: .4byte gSpriteImageSizes -_0809D6E8: .4byte 0x06010000 -_0809D6EC: -	lsls r0, r2, 26 -	lsrs r0, 26 -	subs r0, 0x1 -	movs r1, 0x3F -	ands r0, r1 -	movs r1, 0x40 -	negs r1, r1 -	ands r1, r2 -	orrs r1, r0 -	strb r1, [r6] -_0809D700: -	adds r0, r7, 0 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end UpdateMonIconFrame - -	thumb_func_start CreateMonIconSprite -CreateMonIconSprite: @ 809D710 -	push {r4-r6,lr} -	mov r6, r9 -	mov r5, r8 -	push {r5,r6} -	sub sp, 0x38 -	mov r9, r0 -	adds r4, r1, 0 -	adds r5, r2, 0 -	mov r8, r3 -	lsls r4, 16 -	lsrs r4, 16 -	lsls r5, 16 -	lsrs r5, 16 -	mov r0, r8 -	lsls r0, 24 -	lsrs r0, 24 -	mov r8, r0 -	movs r0, 0 -	str r0, [sp, 0x30] -	ldr r2, _0809D7D8 @ =gSpriteImageSizes -	mov r0, r9 -	ldr r6, [r0] -	ldrb r1, [r6, 0x3] -	lsrs r1, 6 -	lsls r1, 1 -	ldrb r0, [r6, 0x1] -	lsrs r0, 6 -	lsls r0, 3 -	adds r1, r0 -	adds r1, r2 -	ldrh r2, [r1] -	ldr r1, _0809D7DC @ =0xffff0000 -	add r3, sp, 0x30 -	ldr r0, [r3, 0x4] -	ands r0, r1 -	orrs r0, r2 -	str r0, [r3, 0x4] -	add r1, sp, 0x18 -	ldr r0, _0809D7E0 @ =0x0000ffff -	strh r0, [r1] -	mov r0, r9 -	ldrh r2, [r0, 0x14] -	mov r0, sp -	adds r0, 0x1A -	strh r2, [r0] -	str r6, [sp, 0x1C] -	mov r2, r9 -	ldr r0, [r2, 0x8] -	str r0, [sp, 0x20] -	str r3, [sp, 0x24] -	ldr r0, [r2, 0xC] -	str r0, [sp, 0x28] -	ldr r0, [r2, 0x10] -	str r0, [sp, 0x2C] -	mov r0, sp -	movs r2, 0x18 -	bl memcpy -	lsls r4, 16 -	asrs r4, 16 -	lsls r5, 16 -	asrs r5, 16 -	mov r0, sp -	adds r1, r4, 0 -	adds r2, r5, 0 -	mov r3, r8 -	bl CreateSprite -	lsls r0, 24 -	lsrs r0, 24 -	ldr r6, _0809D7E4 @ =gSprites -	lsls r3, r0, 4 -	adds r3, r0 -	lsls r3, 2 -	adds r4, r3, r6 -	adds r5, r4, 0 -	adds r5, 0x2C -	ldrb r1, [r5] -	movs r2, 0x40 -	orrs r1, r2 -	strb r1, [r5] -	adds r4, 0x3F -	ldrb r2, [r4] -	movs r1, 0x5 -	negs r1, r1 -	ands r1, r2 -	strb r1, [r4] -	adds r6, 0xC -	adds r3, r6 -	mov r2, r9 -	ldr r1, [r2, 0x4] -	str r1, [r3] -	add sp, 0x38 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r6} -	pop {r1} -	bx r1 -	.align 2, 0 -_0809D7D8: .4byte gSpriteImageSizes -_0809D7DC: .4byte 0xffff0000 -_0809D7E0: .4byte 0x0000ffff -_0809D7E4: .4byte gSprites -	thumb_func_end CreateMonIconSprite - -	thumb_func_start sub_809D7E8 -sub_809D7E8: @ 809D7E8 -	push {lr} -	sub sp, 0x8 -	movs r1, 0 -	str r1, [sp] -	ldr r3, _0809D81C @ =gSpriteImageSizes -	ldrb r2, [r0, 0x3] -	lsrs r2, 6 -	lsls r2, 1 -	ldrb r1, [r0, 0x1] -	lsrs r1, 6 -	lsls r1, 3 -	adds r2, r1 -	adds r2, r3 -	ldrh r3, [r2] -	ldr r2, _0809D820 @ =0xffff0000 -	ldr r1, [sp, 0x4] -	ands r1, r2 -	orrs r1, r3 -	str r1, [sp, 0x4] -	mov r1, sp -	str r1, [r0, 0xC] -	bl DestroySprite -	add sp, 0x8 -	pop {r0} -	bx r0 -	.align 2, 0 -_0809D81C: .4byte gSpriteImageSizes -_0809D820: .4byte 0xffff0000 -	thumb_func_end sub_809D7E8 - -	thumb_func_start sub_809D824 -sub_809D824: @ 809D824 -	mov r12, r0 -	adds r0, 0x2A -	movs r3, 0 -	strb r1, [r0] -	mov r2, r12 -	adds r2, 0x2C -	ldrb r1, [r2] -	movs r0, 0x40 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	mov r0, r12 -	adds r0, 0x2B -	strb r3, [r0] -	bx lr -	thumb_func_end sub_809D824 - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s deleted file mode 100644 index 2fbc559c8..000000000 --- a/asm/reset_rtc_screen.s +++ /dev/null @@ -1,1300 +0,0 @@ -	.include "constants/gba_constants.inc" -	.include "constants/species_constants.inc" -	.include "asm/macros.inc" - -	.syntax unified - -	.text - -	thumb_func_start SpriteCB_ResetRtcCusor0 -SpriteCB_ResetRtcCusor0: @ 806A480 -	push {lr} -	adds r3, r0, 0 -	ldr r2, _0806A4B0 @ =gTasks -	movs r0, 0x2E -	ldrsh r1, [r3, r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	movs r2, 0xC -	ldrsh r1, [r0, r2] -	movs r2, 0x30 -	ldrsh r0, [r3, r2] -	cmp r1, r0 -	beq _0806A596 -	strh r1, [r3, 0x30] -	subs r0, r1, 0x1 -	cmp r0, 0x5 -	bhi _0806A596 -	lsls r0, 2 -	ldr r1, _0806A4B4 @ =_0806A4B8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0806A4B0: .4byte gTasks -_0806A4B4: .4byte _0806A4B8 -	.align 2, 0 -_0806A4B8: -	.4byte _0806A4D0 -	.4byte _0806A4F4 -	.4byte _0806A518 -	.4byte _0806A53C -	.4byte _0806A566 -	.4byte _0806A590 -_0806A4D0: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0x1 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x41 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x35 -	b _0806A55E -_0806A4F4: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0x1 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x41 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x56 -	b _0806A55E -_0806A518: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0x1 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x41 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x6B -	b _0806A55E -_0806A53C: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0x1 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x41 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x80 -_0806A55E: -	strh r0, [r3, 0x20] -	movs r0, 0x44 -	strh r0, [r3, 0x22] -	b _0806A596 -_0806A566: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0x2 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x42 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x9B -	strh r0, [r3, 0x20] -	movs r0, 0x50 -	strh r0, [r3, 0x22] -	b _0806A596 -_0806A590: -	adds r0, r3, 0 -	bl DestroySprite -_0806A596: -	pop {r0} -	bx r0 -	thumb_func_end SpriteCB_ResetRtcCusor0 - -	thumb_func_start SpriteCB_ResetRtcCusor1 -SpriteCB_ResetRtcCusor1: @ 806A59C -	push {lr} -	adds r3, r0, 0 -	ldr r2, _0806A5CC @ =gTasks -	movs r0, 0x2E -	ldrsh r1, [r3, r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	movs r2, 0xC -	ldrsh r1, [r0, r2] -	movs r2, 0x30 -	ldrsh r0, [r3, r2] -	cmp r1, r0 -	beq _0806A696 -	strh r1, [r3, 0x30] -	subs r0, r1, 0x1 -	cmp r0, 0x5 -	bhi _0806A696 -	lsls r0, 2 -	ldr r1, _0806A5D0 @ =_0806A5D4 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0806A5CC: .4byte gTasks -_0806A5D0: .4byte _0806A5D4 -	.align 2, 0 -_0806A5D4: -	.4byte _0806A5EC -	.4byte _0806A610 -	.4byte _0806A634 -	.4byte _0806A658 -	.4byte _0806A682 -	.4byte _0806A690 -_0806A5EC: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x40 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x35 -	b _0806A67A -_0806A610: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x40 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x56 -	b _0806A67A -_0806A634: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x40 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x6B -	b _0806A67A -_0806A658: -	adds r2, r3, 0 -	adds r2, 0x3E -	ldrb r1, [r2] -	movs r0, 0x5 -	negs r0, r0 -	ands r0, r1 -	strb r0, [r2] -	adds r1, r3, 0 -	adds r1, 0x2A -	movs r0, 0 -	strb r0, [r1] -	subs r2, 0x12 -	ldrb r1, [r2] -	subs r0, 0x40 -	ands r0, r1 -	strb r0, [r2] -	movs r0, 0x80 -_0806A67A: -	strh r0, [r3, 0x20] -	movs r0, 0x5C -	strh r0, [r3, 0x22] -	b _0806A696 -_0806A682: -	adds r0, r3, 0 -	adds r0, 0x3E -	ldrb r1, [r0] -	movs r2, 0x4 -	orrs r1, r2 -	strb r1, [r0] -	b _0806A696 -_0806A690: -	adds r0, r3, 0 -	bl DestroySprite -_0806A696: -	pop {r0} -	bx r0 -	thumb_func_end SpriteCB_ResetRtcCusor1 - -	thumb_func_start ResetRtcScreen_CreateCursor -ResetRtcScreen_CreateCursor: @ 806A69C -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	adds r5, r0, 0 -	lsls r5, 24 -	lsrs r5, 24 -	ldr r0, _0806A70C @ =gUnknown_083764BC -	bl LoadSpritePalette -	ldr r0, _0806A710 @ =gSpriteTemplate_83764E8 -	mov r8, r0 -	movs r1, 0x35 -	movs r2, 0x44 -	movs r3, 0 -	bl CreateSpriteAtEnd -	lsls r0, 24 -	lsrs r1, r0, 24 -	ldr r6, _0806A714 @ =gSprites -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r4, r6, 0 -	adds r4, 0x1C -	adds r2, r0, r4 -	ldr r1, _0806A718 @ =SpriteCB_ResetRtcCusor0 -	str r1, [r2] -	adds r0, r6 -	strh r5, [r0, 0x2E] -	ldr r1, _0806A71C @ =0x0000ffff -	strh r1, [r0, 0x30] -	mov r0, r8 -	movs r1, 0x35 -	movs r2, 0x44 -	movs r3, 0 -	bl CreateSpriteAtEnd -	lsls r0, 24 -	lsrs r1, r0, 24 -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r4, r0, r4 -	ldr r1, _0806A720 @ =SpriteCB_ResetRtcCusor1 -	str r1, [r4] -	adds r0, r6 -	strh r5, [r0, 0x2E] -	movs r1, 0x1 -	negs r1, r1 -	strh r1, [r0, 0x30] -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806A70C: .4byte gUnknown_083764BC -_0806A710: .4byte gSpriteTemplate_83764E8 -_0806A714: .4byte gSprites -_0806A718: .4byte SpriteCB_ResetRtcCusor0 -_0806A71C: .4byte 0x0000ffff -_0806A720: .4byte SpriteCB_ResetRtcCusor1 -	thumb_func_end ResetRtcScreen_CreateCursor - -	thumb_func_start ResetRtcScreen_FreeCursorPalette -ResetRtcScreen_FreeCursorPalette: @ 806A724 -	push {lr} -	ldr r0, _0806A734 @ =gUnknown_083764BC -	ldrh r0, [r0, 0x4] -	bl FreeSpritePaletteByTag -	pop {r0} -	bx r0 -	.align 2, 0 -_0806A734: .4byte gUnknown_083764BC -	thumb_func_end ResetRtcScreen_FreeCursorPalette - -	thumb_func_start ResetRtcScreen_HideChooseTimeWindow -ResetRtcScreen_HideChooseTimeWindow: @ 806A738 -	push {lr} -	movs r0, 0x3 -	movs r1, 0x8 -	movs r2, 0x19 -	movs r3, 0xB -	bl MenuZeroFillWindowRect -	pop {r0} -	bx r0 -	thumb_func_end ResetRtcScreen_HideChooseTimeWindow - -	thumb_func_start ResetRtcScreen_PrintTime -ResetRtcScreen_PrintTime: @ 806A74C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	mov r10, r0 -	adds r0, r2, 0 -	adds r4, r3, 0 -	ldr r6, [sp, 0x24] -	ldr r2, [sp, 0x28] -	mov r9, r2 -	mov r2, r10 -	lsls r2, 24 -	lsrs r2, 24 -	mov r10, r2 -	lsls r1, 24 -	lsrs r1, 24 -	str r1, [sp] -	lsls r0, 16 -	lsrs r0, 16 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r6, 24 -	lsrs r6, 24 -	mov r1, r9 -	lsls r1, 24 -	lsrs r1, 24 -	mov r9, r1 -	ldr r7, _0806A83C @ =gStringVar4 -	ldr r1, _0806A840 @ =0x00002710 -	bl __umodsi3 -	adds r5, r0, 0 -	lsls r5, 16 -	lsrs r5, 16 -	adds r0, r4, 0 -	movs r1, 0x18 -	bl __umodsi3 -	mov r8, r0 -	mov r2, r8 -	lsls r2, 24 -	lsrs r2, 24 -	mov r8, r2 -	adds r0, r6, 0 -	movs r1, 0x3C -	bl __umodsi3 -	adds r6, r0, 0 -	lsls r6, 24 -	lsrs r6, 24 -	mov r0, r9 -	movs r1, 0x3C -	bl __umodsi3 -	mov r9, r0 -	lsls r0, 24 -	lsrs r0, 24 -	mov r9, r0 -	ldr r4, _0806A844 @ =gStringVar1 -	adds r0, r4, 0 -	adds r1, r5, 0 -	movs r2, 0x18 -	movs r3, 0x1 -	bl sub_8072C44 -	adds r0, r7, 0 -	adds r1, r4, 0 -	bl StringCopy -	adds r7, r0, 0 -	ldr r1, _0806A848 @ =gOtherText_Day -	bl StringCopy -	adds r7, r0, 0 -	adds r0, r4, 0 -	mov r1, r8 -	movs r2, 0x12 -	movs r3, 0x1 -	bl sub_8072C44 -	adds r0, r7, 0 -	adds r1, r4, 0 -	bl StringCopy -	adds r7, r0, 0 -	ldr r4, _0806A84C @ =gUnknown_08376500 -	adds r1, r4, 0 -	bl StringCopy -	adds r7, r0, 0 -	adds r1, r6, 0 -	movs r2, 0x2 -	movs r3, 0x2 -	bl ConvertIntToDecimalStringN -	adds r7, r0, 0 -	adds r1, r4, 0 -	bl StringCopy -	adds r7, r0, 0 -	mov r1, r9 -	movs r2, 0x2 -	movs r3, 0x2 -	bl ConvertIntToDecimalStringN -	ldr r0, _0806A83C @ =gStringVar4 -	mov r1, r10 -	ldr r2, [sp] -	bl MenuPrint -	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 -_0806A83C: .4byte gStringVar4 -_0806A840: .4byte 0x00002710 -_0806A844: .4byte gStringVar1 -_0806A848: .4byte gOtherText_Day -_0806A84C: .4byte gUnknown_08376500 -	thumb_func_end ResetRtcScreen_PrintTime - -	thumb_func_start ResetRtcScreen_ShowChooseTimeWindow -ResetRtcScreen_ShowChooseTimeWindow: @ 806A850 -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	sub sp, 0x8 -	adds r6, r0, 0 -	mov r8, r1 -	adds r4, r2, 0 -	adds r5, r3, 0 -	lsls r6, 16 -	lsrs r6, 16 -	mov r0, r8 -	lsls r0, 24 -	lsrs r0, 24 -	mov r8, r0 -	lsls r4, 24 -	lsrs r4, 24 -	lsls r5, 24 -	lsrs r5, 24 -	movs r0, 0x3 -	movs r1, 0x8 -	movs r2, 0x19 -	movs r3, 0xB -	bl MenuDrawTextWindow -	ldr r0, _0806A8A8 @ =gOtherText_OK -	movs r1, 0x14 -	movs r2, 0x9 -	bl MenuPrint -	str r4, [sp] -	str r5, [sp, 0x4] -	movs r0, 0x4 -	movs r1, 0x9 -	adds r2, r6, 0 -	mov r3, r8 -	bl ResetRtcScreen_PrintTime -	add sp, 0x8 -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806A8A8: .4byte gOtherText_OK -	thumb_func_end ResetRtcScreen_ShowChooseTimeWindow - -	thumb_func_start ResetRtcScreen_MoveTimeUpDown -ResetRtcScreen_MoveTimeUpDown: @ 806A8AC -	push {r4,r5,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	lsls r3, 16 -	lsrs r3, 16 -	adds r1, r3, 0 -	movs r0, 0x80 -	ands r0, r3 -	cmp r0, 0 -	beq _0806A8C6 -	ldrh r0, [r4] -	subs r0, 0x1 -	b _0806A8E0 -_0806A8C6: -	movs r0, 0x40 -	ands r0, r3 -	cmp r0, 0 -	beq _0806A8D4 -	ldrh r0, [r4] -	adds r0, 0x1 -	b _0806A8FE -_0806A8D4: -	movs r0, 0x20 -	ands r0, r3 -	cmp r0, 0 -	beq _0806A8EE -	ldrh r0, [r4] -	subs r0, 0xA -_0806A8E0: -	strh r0, [r4] -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, r5 -	bge _0806A90A -	strh r2, [r4] -	b _0806A90A -_0806A8EE: -	movs r0, 0x10 -	ands r1, r0 -	cmp r1, 0 -	bne _0806A8FA -	movs r0, 0 -	b _0806A90C -_0806A8FA: -	ldrh r0, [r4] -	adds r0, 0xA -_0806A8FE: -	strh r0, [r4] -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, r2 -	ble _0806A90A -	strh r5, [r4] -_0806A90A: -	movs r0, 0x1 -_0806A90C: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end ResetRtcScreen_MoveTimeUpDown - -	thumb_func_start Task_ResetRtc_3 -Task_ResetRtc_3: @ 806A914 -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, _0806A928 @ =gTasks -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 3 -	adds r1, r2 -	movs r0, 0x1 -	strh r0, [r1, 0x8] -	bx lr -	.align 2, 0 -_0806A928: .4byte gTasks -	thumb_func_end Task_ResetRtc_3 - -	thumb_func_start Task_ResetRtc_2 -Task_ResetRtc_2: @ 806A92C -	push {r4,lr} -	adds r4, r0, 0 -	lsls r4, 24 -	lsrs r4, 24 -	bl ResetRtcScreen_HideChooseTimeWindow -	bl ResetRtcScreen_FreeCursorPalette -	ldr r1, _0806A950 @ =gTasks -	lsls r0, r4, 2 -	adds r0, r4 -	lsls r0, 3 -	adds r0, r1 -	ldr r1, _0806A954 @ =Task_ResetRtc_3 -	str r1, [r0] -	pop {r4} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806A950: .4byte gTasks -_0806A954: .4byte Task_ResetRtc_3 -	thumb_func_end Task_ResetRtc_2 - -	thumb_func_start Task_ResetRtc_1 -Task_ResetRtc_1: @ 806A958 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	sub sp, 0x8 -	lsls r0, 24 -	lsrs r6, r0, 24 -	lsls r0, r6, 2 -	adds r0, r6 -	lsls r7, r0, 3 -	ldr r0, _0806A99C @ =gTasks + 0x8 -	mov r8, r0 -	adds r5, r7, r0 -	ldrb r4, [r5, 0x4] -	lsls r0, r4, 1 -	adds r0, r4 -	lsls r0, 2 -	ldr r1, _0806A9A0 @ =gUnknown_08376420 - 0xC -	adds r2, r0, r1 -	ldr r1, _0806A9A4 @ =gMain -	ldrh r3, [r1, 0x2E] -	movs r0, 0x2 -	ands r0, r3 -	mov r12, r1 -	cmp r0, 0 -	beq _0806A9AC -	mov r0, r8 -	subs r0, 0x8 -	adds r0, r7, r0 -	ldr r1, _0806A9A8 @ =Task_ResetRtc_2 -	str r1, [r0] -	movs r0, 0 -	strh r0, [r5, 0x2] -	movs r0, 0x6 -	b _0806A9CC -	.align 2, 0 -_0806A99C: .4byte gTasks + 0x8 -_0806A9A0: .4byte gUnknown_08376420 - 0xC -_0806A9A4: .4byte gMain -_0806A9A8: .4byte Task_ResetRtc_2 -_0806A9AC: -	movs r0, 0x10 -	ands r0, r3 -	cmp r0, 0 -	beq _0806A9BA -	ldrb r0, [r2, 0x7] -	cmp r0, 0 -	bne _0806A9CC -_0806A9BA: -	mov r3, r12 -	ldrh r1, [r3, 0x2E] -	movs r0, 0x20 -	ands r0, r1 -	cmp r0, 0 -	beq _0806A9D6 -	ldrb r0, [r2, 0x6] -	cmp r0, 0 -	beq _0806A9D6 -_0806A9CC: -	strh r0, [r5, 0x4] -	movs r0, 0x5 -	bl PlaySE -	b _0806AA58 -_0806A9D6: -	cmp r4, 0x5 -	bne _0806AA24 -	mov r0, r12 -	ldrh r1, [r0, 0x2E] -	movs r4, 0x1 -	adds r0, r4, 0 -	ands r0, r1 -	cmp r0, 0 -	beq _0806AA58 -	ldr r1, _0806AA18 @ =gLocalTime -	ldrh r0, [r5, 0x6] -	strh r0, [r1] -	ldrh r0, [r5, 0x8] -	strb r0, [r1, 0x2] -	ldrh r0, [r5, 0xA] -	strb r0, [r1, 0x3] -	ldrh r0, [r5, 0xC] -	strb r0, [r1, 0x4] -	movs r0, 0x5 -	bl PlaySE -	ldr r1, _0806AA1C @ =gTasks -	lsls r0, r6, 2 -	adds r0, r6 -	lsls r0, 3 -	adds r0, r1 -	ldr r1, _0806AA20 @ =Task_ResetRtc_2 -	str r1, [r0] -	strh r4, [r5, 0x2] -	movs r0, 0x6 -	strh r0, [r5, 0x4] -	b _0806AA58 -	.align 2, 0 -_0806AA18: .4byte gLocalTime -_0806AA1C: .4byte gTasks -_0806AA20: .4byte Task_ResetRtc_2 -_0806AA24: -	ldrb r0, [r2] -	lsls r0, 1 -	adds r0, r5, r0 -	ldrh r1, [r2, 0x2] -	ldrh r2, [r2, 0x4] -	mov r3, r12 -	ldrh r4, [r3, 0x30] -	movs r3, 0xC0 -	ands r3, r4 -	bl ResetRtcScreen_MoveTimeUpDown -	cmp r0, 0 -	beq _0806AA58 -	movs r0, 0x5 -	bl PlaySE -	ldrh r2, [r5, 0x6] -	ldrb r3, [r5, 0x8] -	ldrb r0, [r5, 0xA] -	str r0, [sp] -	ldrb r0, [r5, 0xC] -	str r0, [sp, 0x4] -	movs r0, 0x4 -	movs r1, 0x9 -	bl ResetRtcScreen_PrintTime -_0806AA58: -	add sp, 0x8 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end Task_ResetRtc_1 - -	thumb_func_start Task_ResetRtc_0 -Task_ResetRtc_0: @ 806AA64 -	push {r4-r6,lr} -	mov r6, r8 -	push {r6} -	adds r5, r0, 0 -	lsls r5, 24 -	lsrs r5, 24 -	lsls r6, r5, 2 -	adds r6, r5 -	lsls r6, 3 -	ldr r0, _0806AACC @ =gTasks + 0x8 -	mov r8, r0 -	adds r4, r6, r0 -	movs r0, 0 -	strh r0, [r4] -	ldr r3, _0806AAD0 @ =gLocalTime -	ldrh r0, [r3] -	strh r0, [r4, 0x6] -	movs r1, 0x2 -	ldrsb r1, [r3, r1] -	strh r1, [r4, 0x8] -	movs r2, 0x3 -	ldrsb r2, [r3, r2] -	strh r2, [r4, 0xA] -	ldrb r3, [r3, 0x4] -	lsls r3, 24 -	asrs r3, 24 -	strh r3, [r4, 0xC] -	ldrh r0, [r4, 0x6] -	lsls r1, 24 -	lsrs r1, 24 -	lsls r2, 24 -	lsrs r2, 24 -	lsls r3, 24 -	lsrs r3, 24 -	bl ResetRtcScreen_ShowChooseTimeWindow -	adds r0, r5, 0 -	bl ResetRtcScreen_CreateCursor -	movs r0, 0x2 -	strh r0, [r4, 0x4] -	movs r0, 0x8 -	negs r0, r0 -	add r8, r0 -	add r6, r8 -	ldr r0, _0806AAD4 @ =Task_ResetRtc_1 -	str r0, [r6] -	pop {r3} -	mov r8, r3 -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806AACC: .4byte gTasks + 0x8 -_0806AAD0: .4byte gLocalTime -_0806AAD4: .4byte Task_ResetRtc_1 -	thumb_func_end Task_ResetRtc_0 - -	thumb_func_start CB2_InitResetRtcScreen -CB2_InitResetRtcScreen: @ 806AAD8 -	push {r4-r7,lr} -	sub sp, 0x4 -	movs r0, 0x80 -	lsls r0, 19 -	movs r4, 0 -	strh r4, [r0] -	movs r0, 0 -	bl SetVBlankCallback -	movs r2, 0xA0 -	lsls r2, 19 -	mov r0, sp -	strh r4, [r0] -	ldr r1, _0806AB94 @ =0x040000d4 -	str r0, [r1] -	str r2, [r1, 0x4] -	ldr r0, _0806AB98 @ =0x81000200 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	movs r2, 0xC0 -	lsls r2, 19 -	movs r3, 0xC0 -	lsls r3, 9 -	mov r4, sp -	movs r6, 0 -	movs r5, 0x80 -	lsls r5, 5 -	ldr r7, _0806AB9C @ =0x81000800 -	movs r0, 0x81 -	lsls r0, 24 -	mov r12, r0 -_0806AB16: -	strh r6, [r4] -	mov r0, sp -	str r0, [r1] -	str r2, [r1, 0x4] -	str r7, [r1, 0x8] -	ldr r0, [r1, 0x8] -	adds r2, r5 -	subs r3, r5 -	cmp r3, r5 -	bhi _0806AB16 -	strh r6, [r4] -	mov r0, sp -	str r0, [r1] -	str r2, [r1, 0x4] -	lsrs r0, r3, 1 -	mov r2, r12 -	orrs r0, r2 -	str r0, [r1, 0x8] -	ldr r0, [r1, 0x8] -	movs r0, 0 -	movs r1, 0x80 -	bl ResetOamRange -	bl LoadOam -	bl remove_some_task -	bl dp12_8087EA4 -	bl ResetSpriteData -	bl ResetTasks -	bl ResetPaletteFade -	ldr r4, _0806ABA0 @ =gWindowConfig_81E6CE4 -	adds r0, r4, 0 -	bl SetUpWindowConfig -	adds r0, r4, 0 -	bl InitMenuWindow -	movs r1, 0x80 -	lsls r1, 19 -	movs r2, 0x88 -	lsls r2, 5 -	adds r0, r2, 0 -	strh r0, [r1] -	ldr r0, _0806ABA4 @ =VBlankCB_ResetRtcScreen -	bl SetVBlankCallback -	ldr r0, _0806ABA8 @ =CB2_ResetRtcScreen -	bl SetMainCallback2 -	ldr r0, _0806ABAC @ =Task_ResetRtcScreen -	movs r1, 0x50 -	bl CreateTask -	add sp, 0x4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806AB94: .4byte 0x040000d4 -_0806AB98: .4byte 0x81000200 -_0806AB9C: .4byte 0x81000800 -_0806ABA0: .4byte gWindowConfig_81E6CE4 -_0806ABA4: .4byte VBlankCB_ResetRtcScreen -_0806ABA8: .4byte CB2_ResetRtcScreen -_0806ABAC: .4byte Task_ResetRtcScreen -	thumb_func_end CB2_InitResetRtcScreen - -	thumb_func_start CB2_ResetRtcScreen -CB2_ResetRtcScreen: @ 806ABB0 -	push {lr} -	bl RunTasks -	bl AnimateSprites -	bl BuildOamBuffer -	bl UpdatePaletteFade -	pop {r0} -	bx r0 -	thumb_func_end CB2_ResetRtcScreen - -	thumb_func_start VBlankCB_ResetRtcScreen -VBlankCB_ResetRtcScreen: @ 806ABC8 -	push {lr} -	bl ProcessSpriteCopyRequests -	bl LoadOam -	bl TransferPlttBuffer -	pop {r0} -	bx r0 -	thumb_func_end VBlankCB_ResetRtcScreen - -	thumb_func_start ResetRtcScreen_ShowMessage -ResetRtcScreen_ShowMessage: @ 806ABDC -	push {r4,lr} -	adds r4, r0, 0 -	bl MenuDisplayMessageBox -	adds r0, r4, 0 -	movs r1, 0x2 -	movs r2, 0xF -	bl MenuPrint -	pop {r4} -	pop {r0} -	bx r0 -	thumb_func_end ResetRtcScreen_ShowMessage - -	thumb_func_start Task_ShowResetRtcPrompt -Task_ShowResetRtcPrompt: @ 806ABF4 -	push {r4,r5,lr} -	sub sp, 0x8 -	lsls r0, 24 -	lsrs r5, r0, 24 -	lsls r0, r5, 2 -	adds r0, r5 -	lsls r0, 3 -	ldr r1, _0806AC14 @ =gTasks + 0x8 -	adds r4, r0, r1 -	movs r1, 0 -	ldrsh r0, [r4, r1] -	cmp r0, 0 -	beq _0806AC18 -	cmp r0, 0x1 -	beq _0806AC80 -	b _0806ACC4 -	.align 2, 0 -_0806AC14: .4byte gTasks + 0x8 -_0806AC18: -	bl MenuZeroFillScreen -	movs r0, 0 -	movs r1, 0 -	movs r2, 0x14 -	movs r3, 0xA -	bl MenuDrawTextWindow -	ldr r0, _0806AC98 @ =gSystemText_PresentTime -	movs r1, 0x1 -	movs r2, 0x1 -	bl MenuPrint -	ldr r0, _0806AC9C @ =gLocalTime -	ldrh r2, [r0] -	ldrb r3, [r0, 0x2] -	ldrb r1, [r0, 0x3] -	str r1, [sp] -	ldrb r0, [r0, 0x4] -	str r0, [sp, 0x4] -	movs r0, 0x1 -	movs r1, 0x3 -	bl ResetRtcScreen_PrintTime -	ldr r0, _0806ACA0 @ =gSystemText_PreviousTime -	movs r1, 0x1 -	movs r2, 0x5 -	bl MenuPrint -	ldr r1, _0806ACA4 @ =gSaveBlock2 -	adds r0, r1, 0 -	adds r0, 0xA0 -	ldrh r2, [r0] -	adds r0, 0x2 -	ldrb r3, [r0] -	adds r0, 0x1 -	ldrb r0, [r0] -	str r0, [sp] -	adds r0, r1, 0 -	adds r0, 0xA4 -	ldrb r0, [r0] -	str r0, [sp, 0x4] -	movs r0, 0x1 -	movs r1, 0x7 -	bl ResetRtcScreen_PrintTime -	ldr r0, _0806ACA8 @ =gSystemText_ResetRTCPrompt -	bl ResetRtcScreen_ShowMessage -	ldrh r0, [r4] -	adds r0, 0x1 -	strh r0, [r4] -_0806AC80: -	ldr r0, _0806ACAC @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x2 -	ands r0, r1 -	cmp r0, 0 -	beq _0806ACB0 -	adds r0, r5, 0 -	bl DestroyTask -	bl DoSoftReset -	b _0806ACC4 -	.align 2, 0 -_0806AC98: .4byte gSystemText_PresentTime -_0806AC9C: .4byte gLocalTime -_0806ACA0: .4byte gSystemText_PreviousTime -_0806ACA4: .4byte gSaveBlock2 -_0806ACA8: .4byte gSystemText_ResetRTCPrompt -_0806ACAC: .4byte gMain -_0806ACB0: -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _0806ACC4 -	movs r0, 0x5 -	bl PlaySE -	adds r0, r5, 0 -	bl DestroyTask -_0806ACC4: -	add sp, 0x8 -	pop {r4,r5} -	pop {r0} -	bx r0 -	thumb_func_end Task_ShowResetRtcPrompt - -	thumb_func_start Task_ResetRtcScreen -Task_ResetRtcScreen: @ 806ACCC -	push {r4,r5,lr} -	sub sp, 0x4 -	lsls r0, 24 -	lsrs r4, r0, 24 -	lsls r0, r4, 2 -	adds r0, r4 -	lsls r0, 3 -	ldr r1, _0806ACF4 @ =gTasks + 0x8 -	adds r5, r0, r1 -	movs r1, 0 -	ldrsh r0, [r5, r1] -	cmp r0, 0x6 -	bls _0806ACE8 -	b _0806AEC4 -_0806ACE8: -	lsls r0, 2 -	ldr r1, _0806ACF8 @ =_0806ACFC -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.align 2, 0 -_0806ACF4: .4byte gTasks + 0x8 -_0806ACF8: .4byte _0806ACFC -	.align 2, 0 -_0806ACFC: -	.4byte _0806AD18 -	.4byte _0806AD34 -	.4byte _0806AD80 -	.4byte _0806ADD8 -	.4byte _0806AE5C -	.4byte _0806AE8C -	.4byte _0806AEAE -_0806AD18: -	movs r0, 0x1 -	negs r0, r0 -	ldr r1, _0806AD30 @ =0x0000ffff -	str r1, [sp] -	movs r1, 0x1 -	movs r2, 0x10 -	movs r3, 0 -	bl BeginNormalPaletteFade -	movs r0, 0x1 -	strh r0, [r5] -	b _0806AEC4 -	.align 2, 0 -_0806AD30: .4byte 0x0000ffff -_0806AD34: -	ldr r0, _0806AD5C @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	beq _0806AD42 -	b _0806AEC4 -_0806AD42: -	ldr r0, _0806AD60 @ =gSaveFileStatus -	ldrh r0, [r0] -	cmp r0, 0 -	beq _0806AD4E -	cmp r0, 0x2 -	bne _0806AD68 -_0806AD4E: -	ldr r0, _0806AD64 @ =gSystemText_NoSaveFileNoTime -	bl ResetRtcScreen_ShowMessage -	movs r0, 0x5 -	strh r0, [r5] -	b _0806AEC4 -	.align 2, 0 -_0806AD5C: .4byte gPaletteFade -_0806AD60: .4byte gSaveFileStatus -_0806AD64: .4byte gSystemText_NoSaveFileNoTime -_0806AD68: -	bl RtcCalcLocalTime -	ldr r0, _0806AD7C @ =Task_ShowResetRtcPrompt -	movs r1, 0x50 -	bl CreateTask -	lsls r0, 24 -	lsrs r0, 24 -	strh r0, [r5, 0x2] -	b _0806ADFC -	.align 2, 0 -_0806AD7C: .4byte Task_ShowResetRtcPrompt -_0806AD80: -	ldr r2, _0806ADC4 @ =gTasks -	movs r0, 0x2 -	ldrsh r1, [r5, r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x4] -	cmp r0, 0x1 -	bne _0806AD96 -	b _0806AEC4 -_0806AD96: -	bl MenuZeroFillScreen -	ldr r0, _0806ADC8 @ =gSystemText_PleaseResetTime -	bl ResetRtcScreen_ShowMessage -	ldr r2, _0806ADCC @ =gLocalTime -	ldr r0, _0806ADD0 @ =gSaveBlock2 -	adds r0, 0xA0 -	ldr r1, [r0, 0x4] -	ldr r0, [r0] -	str r0, [r2] -	str r1, [r2, 0x4] -	ldr r0, _0806ADD4 @ =Task_ResetRtc_0 -	movs r1, 0x50 -	bl CreateTask -	lsls r0, 24 -	lsrs r0, 24 -	strh r0, [r5, 0x2] -	movs r0, 0x3 -	strh r0, [r5] -	b _0806AEC4 -	.align 2, 0 -_0806ADC4: .4byte gTasks -_0806ADC8: .4byte gSystemText_PleaseResetTime -_0806ADCC: .4byte gLocalTime -_0806ADD0: .4byte gSaveBlock2 -_0806ADD4: .4byte Task_ResetRtc_0 -_0806ADD8: -	ldr r2, _0806AE04 @ =gTasks -	movs r0, 0x2 -	ldrsh r1, [r5, r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r1, r0, r2 -	movs r2, 0x8 -	ldrsh r0, [r1, r2] -	cmp r0, 0 -	beq _0806AEC4 -	movs r2, 0xA -	ldrsh r0, [r1, r2] -	cmp r0, 0 -	bne _0806AE08 -	ldrb r0, [r5, 0x2] -	bl DestroyTask -_0806ADFC: -	movs r0, 0x2 -	strh r0, [r5] -	b _0806AEC4 -	.align 2, 0 -_0806AE04: .4byte gTasks -_0806AE08: -	ldrb r0, [r5, 0x2] -	bl DestroyTask -	bl RtcReset -	ldr r4, _0806AE4C @ =gLocalTime -	movs r1, 0 -	ldrsh r0, [r4, r1] -	movs r1, 0x2 -	ldrsb r1, [r4, r1] -	movs r2, 0x3 -	ldrsb r2, [r4, r2] -	movs r3, 0x4 -	ldrsb r3, [r4, r3] -	bl RtcCalcLocalTimeOffset -	ldr r2, _0806AE50 @ =gSaveBlock2 -	adds r2, 0xA0 -	ldr r0, [r4] -	ldr r1, [r4, 0x4] -	str r0, [r2] -	str r1, [r2, 0x4] -	ldr r0, _0806AE54 @ =0x00004040 -	ldrh r1, [r4] -	bl VarSet -	bl DisableResetRTC -	ldr r0, _0806AE58 @ =gSystemText_ClockResetDataSave -	bl ResetRtcScreen_ShowMessage -	movs r0, 0x4 -	strh r0, [r5] -	b _0806AEC4 -	.align 2, 0 -_0806AE4C: .4byte gLocalTime -_0806AE50: .4byte gSaveBlock2 -_0806AE54: .4byte 0x00004040 -_0806AE58: .4byte gSystemText_ClockResetDataSave -_0806AE5C: -	movs r0, 0 -	bl TrySavingData -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x1 -	bne _0806AE7C -	ldr r0, _0806AE78 @ =gSystemText_SaveCompleted -	bl ResetRtcScreen_ShowMessage -	movs r0, 0x49 -	bl PlaySE -	b _0806AE88 -	.align 2, 0 -_0806AE78: .4byte gSystemText_SaveCompleted -_0806AE7C: -	ldr r0, _0806AECC @ =gSystemText_SaveFailed -	bl ResetRtcScreen_ShowMessage -	movs r0, 0x16 -	bl PlaySE -_0806AE88: -	movs r0, 0x5 -	strh r0, [r5] -_0806AE8C: -	ldr r0, _0806AED0 @ =gMain -	ldrh r1, [r0, 0x2E] -	movs r0, 0x1 -	ands r0, r1 -	cmp r0, 0 -	beq _0806AEC4 -	movs r0, 0x1 -	negs r0, r0 -	ldr r1, _0806AED4 @ =0x0000ffff -	str r1, [sp] -	movs r1, 0x1 -	movs r2, 0 -	movs r3, 0x10 -	bl BeginNormalPaletteFade -	movs r0, 0x6 -	strh r0, [r5] -_0806AEAE: -	ldr r0, _0806AED8 @ =gPaletteFade -	ldrb r1, [r0, 0x7] -	movs r0, 0x80 -	ands r0, r1 -	cmp r0, 0 -	bne _0806AEC4 -	adds r0, r4, 0 -	bl DestroyTask -	bl DoSoftReset -_0806AEC4: -	add sp, 0x4 -	pop {r4,r5} -	pop {r0} -	bx r0 -	.align 2, 0 -_0806AECC: .4byte gSystemText_SaveFailed -_0806AED0: .4byte gMain -_0806AED4: .4byte 0x0000ffff -_0806AED8: .4byte gPaletteFade -	thumb_func_end Task_ResetRtcScreen - -	.align 2, 0 @ Don't pad with nop. | 
