diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/battle_1.s | 3065 | ||||
| -rw-r--r-- | asm/overworld.s | 6 | ||||
| -rw-r--r-- | asm/rom_8034C54.s | 1312 | ||||
| -rw-r--r-- | asm/trade.s | 6 | 
4 files changed, 1318 insertions, 3071 deletions
| diff --git a/asm/battle_1.s b/asm/battle_1.s deleted file mode 100644 index 379f38515..000000000 --- a/asm/battle_1.s +++ /dev/null @@ -1,3065 +0,0 @@ -	.include "asm/macros.inc" -	.include "constants/constants.inc" - -	.syntax unified - -	.text - -	thumb_func_start sub_8034C54 -sub_8034C54: @ 8034C54 -	push {r4-r7,lr} -	adds r4, r0, 0 -	ldr r5, =gUnknown_02022E10 -	ldr r0, [r5] -	cmp r0, 0 -	beq _08034C64 -	bl sub_8034CC8 -_08034C64: -	movs r0, 0x8 -	bl Alloc -	str r0, [r5] -	cmp r0, 0 -	bne _08034C78 -	movs r0, 0 -	b _08034CC0 -	.pool -_08034C78: -	lsls r0, r4, 3 -	subs r0, r4 -	lsls r0, 2 -	bl Alloc -	ldr r1, [r5] -	str r0, [r1, 0x4] -	cmp r0, 0 -	bne _08034C94 -	adds r0, r1, 0 -	bl Free -	movs r0, 0 -	b _08034CC0 -_08034C94: -	str r4, [r1] -	movs r3, 0 -	cmp r3, r4 -	bcs _08034CBE -	movs r7, 0 -	movs r6, 0xFF -	movs r2, 0 -_08034CA2: -	ldr r0, [r5] -	ldr r0, [r0, 0x4] -	adds r0, r2, r0 -	strb r7, [r0] -	ldr r0, [r5] -	ldr r1, [r0, 0x4] -	adds r1, r2, r1 -	ldrb r0, [r1, 0x1] -	orrs r0, r6 -	strb r0, [r1, 0x1] -	adds r2, 0x1C -	adds r3, 0x1 -	cmp r3, r4 -	bcc _08034CA2 -_08034CBE: -	movs r0, 0x1 -_08034CC0: -	pop {r4-r7} -	pop {r1} -	bx r1 -	thumb_func_end sub_8034C54 - -	thumb_func_start sub_8034CC8 -sub_8034CC8: @ 8034CC8 -	push {r4,r5,lr} -	ldr r2, =gUnknown_02022E10 -	ldr r1, [r2] -	cmp r1, 0 -	beq _08034D08 -	ldr r0, [r1, 0x4] -	cmp r0, 0 -	beq _08034CFC -	movs r4, 0 -	ldr r0, [r1] -	cmp r4, r0 -	bcs _08034CF2 -	adds r5, r2, 0 -_08034CE2: -	adds r0, r4, 0 -	bl sub_80353DC -	adds r4, 0x1 -	ldr r0, [r5] -	ldr r0, [r0] -	cmp r4, r0 -	bcc _08034CE2 -_08034CF2: -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r0, [r0, 0x4] -	bl Free -_08034CFC: -	ldr r4, =gUnknown_02022E10 -	ldr r0, [r4] -	bl Free -	movs r0, 0 -	str r0, [r4] -_08034D08: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_8034CC8 - -	thumb_func_start sub_8034D14 -sub_8034D14: @ 8034D14 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x8 -	mov r8, r0 -	mov r10, r1 -	adds r5, r2, 0 -	ldr r6, =gUnknown_02022E10 -	ldr r0, [r6] -	cmp r0, 0 -	beq _08034DD4 -	ldr r1, [r0, 0x4] -	mov r0, r8 -	lsls r2, r0, 3 -	subs r0, r2, r0 -	lsls r4, r0, 2 -	adds r1, r4, r1 -	ldrb r0, [r1] -	mov r9, r2 -	cmp r0, 0 -	bne _08034DD4 -	ldrb r0, [r5, 0x1] -	bl sub_8035518 -	ldr r1, [r6] -	ldr r1, [r1, 0x4] -	adds r1, r4, r1 -	strb r0, [r1, 0x1] -	ldr r0, [r6] -	ldr r0, [r0, 0x4] -	adds r0, r4, r0 -	ldrb r0, [r0, 0x1] -	cmp r0, 0xFF -	beq _08034DD4 -	ldr r0, [r5, 0x8] -	ldrh r0, [r0, 0x6] -	bl GetSpriteTileStartByTag -	ldr r2, [r6] -	ldr r1, [r2, 0x4] -	adds r1, r4, r1 -	strh r0, [r1, 0xA] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	ldrh r1, [r0, 0xA] -	ldr r7, =0xffff0000 -	lsrs r0, r7, 16 -	cmp r1, r0 -	bne _08034DE0 -	ldr r2, [r5, 0x8] -	ldrh r0, [r2, 0x4] -	adds r1, r2, 0 -	cmp r0, 0 -	beq _08034D94 -	adds r0, r1, 0 -	bl LoadSpriteSheet -	b _08034DB4 -	.pool -_08034D94: -	ldr r0, [r2] -	ldr r1, [r2, 0x4] -	str r0, [sp] -	str r1, [sp, 0x4] -	ldr r0, [r2] -	bl sub_8034974 -	lsls r0, 16 -	lsrs r0, 16 -	ldr r1, [sp, 0x4] -	ands r1, r7 -	orrs r1, r0 -	str r1, [sp, 0x4] -	mov r0, sp -	bl LoadCompressedObjectPic -_08034DB4: -	ldr r1, [r6] -	ldr r1, [r1, 0x4] -	adds r1, r4, r1 -	strh r0, [r1, 0xA] -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r1, [r0, 0x4] -	mov r2, r9 -	mov r3, r8 -	subs r0, r2, r3 -	lsls r0, 2 -	adds r0, r1 -	ldrh r1, [r0, 0xA] -	ldr r0, =0x0000ffff -	cmp r1, r0 -	bne _08034DE0 -_08034DD4: -	movs r0, 0 -	b _08034EE8 -	.pool -_08034DE0: -	ldr r0, [r5, 0xC] -	ldrh r0, [r0, 0x4] -	bl IndexOfSpritePaletteTag -	ldr r6, =gUnknown_02022E10 -	ldr r1, [r6] -	ldr r1, [r1, 0x4] -	mov r4, r9 -	mov r3, r8 -	subs r2, r4, r3 -	lsls r4, r2, 2 -	adds r1, r4, r1 -	strb r0, [r1, 0x4] -	ldr r0, [r6] -	ldr r0, [r0, 0x4] -	adds r0, r4, r0 -	ldrb r0, [r0, 0x4] -	cmp r0, 0xFF -	bne _08034E14 -	ldr r0, [r5, 0xC] -	bl LoadSpritePalette -	ldr r1, [r6] -	ldr r1, [r1, 0x4] -	adds r1, r4, r1 -	strb r0, [r1, 0x4] -_08034E14: -	ldr r0, [r6] -	ldr r1, [r0, 0x4] -	adds r1, r4, r1 -	ldrb r0, [r5] -	lsls r0, 30 -	lsrs r0, 30 -	strb r0, [r1, 0x2] -	ldr r0, [r6] -	ldr r0, [r0, 0x4] -	adds r0, r4, r0 -	ldrb r1, [r5, 0x1] -	strb r1, [r0, 0x3] -	ldr r2, [r6] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	ldrh r1, [r5, 0x4] -	strh r1, [r0, 0xC] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	ldrh r1, [r5, 0x6] -	strh r1, [r0, 0xE] -	ldr r1, [r2, 0x4] -	adds r1, r4, r1 -	ldrb r0, [r5] -	lsls r0, 28 -	lsrs r0, 30 -	strb r0, [r1, 0x6] -	ldr r0, [r6] -	ldr r1, [r0, 0x4] -	adds r1, r4, r1 -	ldrb r0, [r5] -	lsls r0, 26 -	lsrs r0, 30 -	strb r0, [r1, 0x5] -	ldr r0, [r6] -	ldr r1, [r0, 0x4] -	adds r1, r4, r1 -	ldrb r0, [r5] -	lsrs r0, 6 -	strb r0, [r1, 0x7] -	ldr r0, [r6] -	ldr r0, [r0, 0x4] -	adds r0, r4, r0 -	ldrb r1, [r5, 0x2] -	strb r1, [r0, 0x8] -	ldrb r1, [r5] -	lsls r0, r1, 28 -	lsrs r0, 30 -	lsls r1, 26 -	lsrs r1, 30 -	bl sub_80355F8 -	ldr r1, [r6] -	ldr r1, [r1, 0x4] -	adds r1, r4, r1 -	strb r0, [r1, 0x9] -	ldr r2, [r6] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	ldr r1, [r5, 0x8] -	ldrh r1, [r1, 0x6] -	strh r1, [r0, 0x10] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	ldr r1, [r5, 0xC] -	ldrh r1, [r1, 0x4] -	strh r1, [r0, 0x12] -	ldr r0, [r2, 0x4] -	adds r0, r4, r0 -	movs r1, 0x1 -	strb r1, [r0] -	ldr r0, [r6] -	ldr r0, [r0, 0x4] -	adds r0, r4, r0 -	str r1, [r0, 0x14] -	movs r3, 0x1 -	ldrb r0, [r5, 0x1] -	cmp r3, r0 -	bcs _08034ECA -_08034EB2: -	ldr r0, [r6] -	ldr r2, [r0, 0x4] -	adds r2, r4, r2 -	ldr r1, [r2, 0x14] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 1 -	str r0, [r2, 0x14] -	adds r3, 0x1 -	ldrb r2, [r5, 0x1] -	cmp r3, r2 -	bcc _08034EB2 -_08034ECA: -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	mov r3, r9 -	mov r4, r8 -	subs r1, r3, r4 -	lsls r1, 2 -	ldr r0, [r0, 0x4] -	adds r0, r1 -	bl sub_8034EFC -	mov r0, r8 -	mov r1, r10 -	bl sub_8035044 -	movs r0, 0x1 -_08034EE8: -	add sp, 0x8 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.pool -	thumb_func_end sub_8034D14 - -	thumb_func_start sub_8034EFC -sub_8034EFC: @ 8034EFC -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	adds r4, r0, 0 -	ldrb r5, [r4, 0x1] -	movs r0, 0xC -	ldrsh r7, [r4, r0] -	ldrb r0, [r4, 0x3] -	adds r0, 0x1 -	mov r8, r0 -	mov r1, sp -	movs r0, 0 -	strh r0, [r1] -	lsls r1, r5, 3 -	ldr r2, =gUnknown_030022F8 -	mov r9, r2 -	add r1, r9 -	mov r0, r8 -	lsls r2, r0, 2 -	movs r0, 0x80 -	lsls r0, 17 -	orrs r2, r0 -	mov r0, sp -	bl CpuSet -	movs r6, 0 -	ldrb r5, [r4, 0x1] -	cmp r6, r8 -	bcs _08034FCE -	movs r1, 0x3F -	mov r10, r1 -	movs r2, 0xD -	negs r2, r2 -	mov r9, r2 -_08034F46: -	lsls r0, r5, 3 -	ldr r1, =gMain -	adds r3, r0, r1 -	ldrh r1, [r4, 0xE] -	adds r0, r3, 0 -	adds r0, 0x38 -	strb r1, [r0] -	ldr r2, =0x000001ff -	adds r0, r2, 0 -	adds r1, r7, 0 -	ands r1, r0 -	ldrh r2, [r3, 0x3A] -	ldr r0, =0xfffffe00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r3, 0x3A] -	ldrb r1, [r4, 0x6] -	movs r0, 0x39 -	adds r0, r3 -	mov r12, r0 -	lsls r1, 6 -	ldrb r2, [r0] -	mov r0, r10 -	ands r0, r2 -	orrs r0, r1 -	mov r1, r12 -	strb r0, [r1] -	ldrb r1, [r4, 0x5] -	movs r2, 0x3B -	adds r2, r3 -	mov r12, r2 -	lsls r1, 6 -	ldrb r2, [r2] -	mov r0, r10 -	ands r0, r2 -	orrs r0, r1 -	mov r1, r12 -	strb r0, [r1] -	ldrh r0, [r4, 0xA] -	ldr r1, =0x000003ff -	ands r1, r0 -	ldrh r2, [r3, 0x3C] -	ldr r0, =0xfffffc00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r3, 0x3C] -	adds r3, 0x3D -	movs r0, 0x3 -	ldrb r1, [r4, 0x7] -	ands r1, r0 -	lsls r1, 2 -	ldrb r2, [r3] -	mov r0, r9 -	ands r0, r2 -	orrs r0, r1 -	strb r0, [r3] -	ldrb r2, [r4, 0x4] -	lsls r2, 4 -	movs r1, 0xF -	ands r0, r1 -	orrs r0, r2 -	strb r0, [r3] -	ldrb r0, [r4, 0x8] -	adds r7, r0 -	adds r6, 0x1 -	adds r5, 0x1 -	cmp r6, r8 -	bcc _08034F46 -_08034FCE: -	subs r5, 0x1 -	ldr r0, =gMain -	lsls r3, r5, 3 -	adds r3, r0 -	movs r2, 0xC -	ldrsh r1, [r4, r2] -	ldrb r0, [r4, 0x8] -	subs r1, r0 -	ldr r2, =0x000001ff -	adds r0, r2, 0 -	ands r1, r0 -	ldrh r2, [r3, 0x3A] -	ldr r0, =0xfffffe00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r3, 0x3A] -	adds r2, r3, 0 -	adds r2, 0x39 -	ldrb r1, [r2] -	movs r0, 0x4 -	negs r0, r0 -	ands r0, r1 -	movs r1, 0x2 -	orrs r0, r1 -	strb r0, [r2] -	ldrb r0, [r4, 0x9] -	lsls r1, r0, 2 -	adds r1, r0 -	lsls r1, 1 -	ldrh r4, [r4, 0xA] -	adds r1, r4 -	ldr r2, =0x000003ff -	adds r0, r2, 0 -	ands r1, r0 -	ldrh r2, [r3, 0x3C] -	ldr r0, =0xfffffc00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r3, 0x3C] -	add sp, 0x4 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_8034EFC - -	thumb_func_start sub_8035044 -sub_8035044: @ 8035044 -	push {r4-r6,lr} -	adds r3, r0, 0 -	adds r4, r1, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r1, [r0] -	adds r6, r0, 0 -	cmp r1, 0 -	beq _080350A8 -	ldr r2, [r1, 0x4] -	lsls r1, r3, 3 -	subs r0, r1, r3 -	lsls r0, 2 -	adds r2, r0, r2 -	ldrb r0, [r2] -	adds r5, r1, 0 -	cmp r0, 0 -	beq _080350A8 -	str r4, [r2, 0x18] -	cmp r4, 0 -	bge _08035078 -	movs r2, 0x1 -	negs r4, r4 -	b _0803507A -	.pool -_08035078: -	movs r2, 0 -_0803507A: -	ldr r0, [r6] -	ldr r1, [r0, 0x4] -	subs r0, r5, r3 -	lsls r0, 2 -	adds r0, r1 -	ldrb r3, [r0, 0x2] -	cmp r3, 0x1 -	beq _0803509A -	cmp r3, 0x1 -	ble _08035092 -	cmp r3, 0x2 -	beq _080350A2 -_08035092: -	adds r1, r4, 0 -	bl sub_80350B0 -	b _080350A8 -_0803509A: -	adds r1, r4, 0 -	bl sub_8035164 -	b _080350A8 -_080350A2: -	adds r1, r4, 0 -	bl sub_80352C0 -_080350A8: -	pop {r4-r6} -	pop {r0} -	bx r0 -	thumb_func_end sub_8035044 - -	thumb_func_start sub_80350B0 -sub_80350B0: @ 80350B0 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	mov r8, r0 -	mov r9, r1 -	str r2, [sp] -	ldr r5, [r0, 0x14] -	ldrb r7, [r0, 0x1] -	ldr r0, =gMain -	mov r10, r0 -	cmp r5, 0 -	beq _0803511A -	lsls r0, r7, 3 -	adds r0, 0x3C -	mov r1, r10 -	adds r6, r0, r1 -_080350D6: -	mov r0, r9 -	adds r1, r5, 0 -	bl __udivsi3 -	adds r4, r0, 0 -	adds r0, r4, 0 -	muls r0, r5 -	mov r2, r9 -	subs r2, r0 -	mov r9, r2 -	adds r0, r5, 0 -	movs r1, 0xA -	bl __udivsi3 -	adds r5, r0, 0 -	mov r1, r8 -	ldrb r0, [r1, 0x9] -	adds r1, r4, 0 -	muls r1, r0 -	mov r2, r8 -	ldrh r2, [r2, 0xA] -	adds r1, r2 -	ldr r2, =0x000003ff -	adds r0, r2, 0 -	ands r1, r0 -	ldrh r0, [r6] -	ldr r2, =0xfffffc00 -	ands r0, r2 -	orrs r0, r1 -	strh r0, [r6] -	adds r6, 0x8 -	adds r7, 0x1 -	cmp r5, 0 -	bne _080350D6 -_0803511A: -	ldr r0, [sp] -	cmp r0, 0 -	beq _08035140 -	lsls r0, r7, 3 -	add r0, r10 -	adds r0, 0x39 -	ldrb r2, [r0] -	movs r1, 0x4 -	negs r1, r1 -	ands r1, r2 -	strb r1, [r0] -	b _08035154 -	.pool -_08035140: -	lsls r2, r7, 3 -	add r2, r10 -	adds r2, 0x39 -	ldrb r1, [r2] -	movs r0, 0x4 -	negs r0, r0 -	ands r0, r1 -	movs r1, 0x2 -	orrs r0, r1 -	strb r0, [r2] -_08035154: -	add sp, 0x4 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_80350B0 - -	thumb_func_start sub_8035164 -sub_8035164: @ 8035164 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0x4 -	adds r6, r0, 0 -	mov r8, r1 -	str r2, [sp] -	ldr r5, [r6, 0x14] -	ldr r3, =gUnknown_03000DD4 -	ldrb r0, [r6, 0x1] -	str r0, [r3] -	ldr r2, =gUnknown_03000DD8 -	movs r0, 0 -	str r0, [r2] -	ldr r1, =gUnknown_03000DDC -	subs r0, 0x1 -	str r0, [r1] -	adds r7, r3, 0 -	mov r10, r1 -	ldr r0, =gMain -	mov r9, r0 -	cmp r5, 0 -	beq _0803524C -_08035196: -	mov r0, r8 -	adds r1, r5, 0 -	bl __udivsi3 -	adds r4, r0, 0 -	adds r0, r4, 0 -	muls r0, r5 -	mov r1, r8 -	subs r1, r0 -	mov r8, r1 -	adds r0, r5, 0 -	movs r1, 0xA -	bl __udivsi3 -	adds r5, r0, 0 -	cmp r4, 0 -	bne _080351C8 -	mov r2, r10 -	ldr r1, [r2] -	movs r0, 0x1 -	negs r0, r0 -	cmp r1, r0 -	bne _080351C8 -	cmp r5, 0 -	bne _08035224 -_080351C8: -	ldr r2, [r7] -	lsls r2, 3 -	add r2, r9 -	ldrb r0, [r6, 0x9] -	adds r3, r4, 0 -	muls r3, r0 -	ldrh r4, [r6, 0xA] -	adds r3, r4 -	ldr r1, =0x000003ff -	adds r0, r1, 0 -	ands r3, r0 -	ldrh r0, [r2, 0x3C] -	ldr r4, =0xfffffc00 -	adds r1, r4, 0 -	ands r0, r1 -	orrs r0, r3 -	strh r0, [r2, 0x3C] -	adds r2, 0x39 -	ldrb r0, [r2] -	movs r1, 0x4 -	negs r1, r1 -	ands r0, r1 -	strb r0, [r2] -	mov r2, r10 -	ldr r1, [r2] -	movs r0, 0x1 -	negs r0, r0 -	cmp r1, r0 -	bne _0803523A -	ldr r4, =gUnknown_03000DD8 -	ldr r0, [r4] -	str r0, [r2] -	b _0803523A -	.pool -_08035224: -	ldr r0, [r7] -	lsls r0, 3 -	add r0, r9 -	adds r0, 0x39 -	ldrb r1, [r0] -	movs r2, 0x4 -	negs r2, r2 -	ands r1, r2 -	movs r2, 0x2 -	orrs r1, r2 -	strb r1, [r0] -_0803523A: -	ldr r0, [r7] -	adds r0, 0x1 -	str r0, [r7] -	ldr r4, =gUnknown_03000DD8 -	ldr r0, [r4] -	adds r0, 0x1 -	str r0, [r4] -	cmp r5, 0 -	bne _08035196 -_0803524C: -	ldr r0, [sp] -	cmp r0, 0 -	beq _08035298 -	ldr r1, [r7] -	lsls r1, 3 -	add r1, r9 -	adds r1, 0x39 -	ldrb r2, [r1] -	movs r0, 0x4 -	negs r0, r0 -	ands r0, r2 -	strb r0, [r1] -	ldr r3, [r7] -	lsls r3, 3 -	add r3, r9 -	movs r1, 0xC -	ldrsh r2, [r6, r1] -	mov r4, r10 -	ldr r0, [r4] -	subs r0, 0x1 -	ldrb r1, [r6, 0x8] -	muls r0, r1 -	adds r2, r0 -	ldr r1, =0x000001ff -	adds r0, r1, 0 -	ands r2, r0 -	ldrh r1, [r3, 0x3A] -	ldr r0, =0xfffffe00 -	ands r0, r1 -	orrs r0, r2 -	strh r0, [r3, 0x3A] -	b _080352AE -	.pool -_08035298: -	ldr r0, [r7] -	lsls r0, 3 -	add r0, r9 -	adds r0, 0x39 -	ldrb r2, [r0] -	movs r1, 0x4 -	negs r1, r1 -	ands r1, r2 -	movs r2, 0x2 -	orrs r1, r2 -	strb r1, [r0] -_080352AE: -	add sp, 0x4 -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	thumb_func_end sub_8035164 - -	thumb_func_start sub_80352C0 -sub_80352C0: @ 80352C0 -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	sub sp, 0xC -	mov r8, r0 -	mov r10, r1 -	str r2, [sp] -	ldr r5, [r0, 0x14] -	ldrb r3, [r0, 0x1] -	movs r0, 0 -	str r0, [sp, 0x4] -	mov r9, r0 -	cmp r5, 0 -	beq _0803535A -_080352E0: -	lsls r0, r3, 3 -	adds r1, r0, 0 -	adds r1, 0x39 -	ldr r2, =gMain -	adds r7, r1, r2 -	adds r0, 0x3C -	adds r6, r0, r2 -_080352EE: -	mov r0, r10 -	adds r1, r5, 0 -	str r3, [sp, 0x8] -	bl __udivsi3 -	adds r4, r0, 0 -	adds r0, r4, 0 -	muls r0, r5 -	mov r1, r10 -	subs r1, r0 -	mov r10, r1 -	adds r0, r5, 0 -	movs r1, 0xA -	bl __udivsi3 -	adds r5, r0, 0 -	ldr r3, [sp, 0x8] -	cmp r4, 0 -	bne _0803531E -	ldr r2, [sp, 0x4] -	cmp r2, 0 -	bne _0803531E -	cmp r5, 0 -	bne _080352E0 -_0803531E: -	movs r0, 0x1 -	str r0, [sp, 0x4] -	mov r1, r8 -	ldrb r0, [r1, 0x9] -	adds r2, r4, 0 -	muls r2, r0 -	ldrh r4, [r1, 0xA] -	adds r2, r4 -	ldr r1, =0x000003ff -	adds r0, r1, 0 -	ands r2, r0 -	ldrh r0, [r6] -	ldr r4, =0xfffffc00 -	adds r1, r4, 0 -	ands r0, r1 -	orrs r0, r2 -	strh r0, [r6] -	ldrb r0, [r7] -	movs r2, 0x4 -	negs r2, r2 -	adds r1, r2, 0 -	ands r0, r1 -	strb r0, [r7] -	adds r7, 0x8 -	adds r6, 0x8 -	adds r3, 0x1 -	movs r4, 0x1 -	add r9, r4 -	cmp r5, 0 -	bne _080352EE -_0803535A: -	mov r0, r8 -	ldrb r0, [r0, 0x3] -	cmp r9, r0 -	bge _0803538A -	ldr r1, =gMain -	movs r5, 0x4 -	negs r5, r5 -	movs r4, 0x2 -	lsls r0, r3, 3 -	adds r0, 0x39 -	adds r2, r0, r1 -_08035370: -	ldrb r1, [r2] -	adds r0, r5, 0 -	ands r0, r1 -	orrs r0, r4 -	strb r0, [r2] -	adds r2, 0x8 -	adds r3, 0x1 -	movs r1, 0x1 -	add r9, r1 -	mov r0, r8 -	ldrb r0, [r0, 0x3] -	cmp r9, r0 -	blt _08035370 -_0803538A: -	ldr r1, [sp] -	cmp r1, 0 -	beq _080353B0 -	lsls r0, r3, 3 -	ldr r2, =gMain -	adds r0, r2 -	adds r0, 0x39 -	ldrb r2, [r0] -	movs r1, 0x4 -	negs r1, r1 -	ands r1, r2 -	strb r1, [r0] -	b _080353C6 -	.pool -_080353B0: -	lsls r2, r3, 3 -	ldr r4, =gMain -	adds r2, r4 -	adds r2, 0x39 -	ldrb r1, [r2] -	movs r0, 0x4 -	negs r0, r0 -	ands r0, r1 -	movs r1, 0x2 -	orrs r0, r1 -	strb r0, [r2] -_080353C6: -	add sp, 0xC -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_80352C0 - -	thumb_func_start sub_80353DC -sub_80353DC: @ 80353DC -	push {r4-r7,lr} -	adds r4, r0, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	cmp r0, 0 -	beq _0803546E -	ldr r2, [r0, 0x4] -	lsls r1, r4, 3 -	subs r0, r1, r4 -	lsls r0, 2 -	adds r2, r0, r2 -	ldrb r0, [r2] -	adds r5, r1, 0 -	cmp r0, 0 -	beq _0803546E -	ldrb r3, [r2, 0x3] -	adds r0, r3, 0x1 -	ldrb r2, [r2, 0x1] -	cmp r0, 0 -	beq _08035426 -	ldr r1, =gMain -	movs r7, 0x4 -	negs r7, r7 -	movs r6, 0x2 -	adds r3, r0, 0 -	lsls r0, r2, 3 -	adds r0, 0x39 -	adds r2, r0, r1 -_08035414: -	ldrb r1, [r2] -	adds r0, r7, 0 -	ands r0, r1 -	orrs r0, r6 -	strb r0, [r2] -	subs r3, 0x1 -	adds r2, 0x8 -	cmp r3, 0 -	bne _08035414 -_08035426: -	adds r0, r4, 0 -	bl sub_8035570 -	cmp r0, 0 -	bne _08035442 -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r1, [r0, 0x4] -	subs r0, r5, r4 -	lsls r0, 2 -	adds r0, r1 -	ldrh r0, [r0, 0x10] -	bl FreeSpriteTilesByTag -_08035442: -	adds r0, r4, 0 -	bl sub_80355B4 -	cmp r0, 0 -	bne _0803545E -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r1, [r0, 0x4] -	subs r0, r5, r4 -	lsls r0, 2 -	adds r0, r1 -	ldrh r0, [r0, 0x12] -	bl FreeSpritePaletteByTag -_0803545E: -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r1, [r0, 0x4] -	subs r0, r5, r4 -	lsls r0, 2 -	adds r0, r1 -	movs r1, 0 -	strb r1, [r0] -_0803546E: -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_80353DC - -	thumb_func_start sub_803547C -sub_803547C: @ 803547C -	push {r4-r7,lr} -	adds r4, r0, 0 -	adds r5, r1, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r1, [r0] -	adds r7, r0, 0 -	cmp r1, 0 -	beq _0803550C -	ldr r2, [r1, 0x4] -	lsls r1, r4, 3 -	subs r0, r1, r4 -	lsls r0, 2 -	adds r2, r0, r2 -	ldrb r0, [r2] -	adds r6, r1, 0 -	cmp r0, 0 -	beq _0803550C -	ldrb r3, [r2, 0x3] -	adds r1, r3, 0x1 -	ldrb r0, [r2, 0x1] -	cmp r5, 0 -	beq _080354D8 -	cmp r1, 0 -	beq _0803550C -	ldr r1, =gMain -	movs r5, 0x4 -	negs r5, r5 -	movs r4, 0x2 -	adds r3, 0x1 -	lsls r0, 3 -	adds r0, 0x39 -	adds r2, r0, r1 -_080354BC: -	ldrb r1, [r2] -	adds r0, r5, 0 -	ands r0, r1 -	orrs r0, r4 -	strb r0, [r2] -	subs r3, 0x1 -	adds r2, 0x8 -	cmp r3, 0 -	bne _080354BC -	b _0803550C -	.pool -_080354D8: -	cmp r1, 0 -	beq _080354FA -	ldr r1, =gMain -	movs r5, 0x4 -	negs r5, r5 -	adds r3, 0x1 -	lsls r0, 3 -	adds r0, 0x39 -	adds r2, r0, r1 -_080354EA: -	ldrb r1, [r2] -	adds r0, r5, 0 -	ands r0, r1 -	strb r0, [r2] -	subs r3, 0x1 -	adds r2, 0x8 -	cmp r3, 0 -	bne _080354EA -_080354FA: -	ldr r0, [r7] -	ldr r1, [r0, 0x4] -	subs r0, r6, r4 -	lsls r0, 2 -	adds r0, r1 -	ldr r1, [r0, 0x18] -	adds r0, r4, 0 -	bl sub_8035044 -_0803550C: -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_803547C - -	thumb_func_start sub_8035518 -sub_8035518: @ 8035518 -	push {r4,r5,lr} -	lsls r0, 24 -	lsrs r4, r0, 24 -	movs r5, 0x40 -	movs r3, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r2, [r0] -	cmp r3, r2 -	bcs _0803555A -	ldr r1, [r0, 0x4] -_0803552E: -	ldrb r0, [r1] -	cmp r0, 0 -	bne _08035548 -	ldrb r0, [r1, 0x1] -	cmp r0, 0xFF -	beq _08035552 -	ldrb r0, [r1, 0x3] -	cmp r0, r4 -	bhi _08035552 -	ldrb r0, [r1, 0x1] -	b _0803556A -	.pool -_08035548: -	adds r0, r5, 0x1 -	ldrb r5, [r1, 0x3] -	adds r0, r5 -	lsls r0, 16 -	lsrs r5, r0, 16 -_08035552: -	adds r1, 0x1C -	adds r3, 0x1 -	cmp r3, r2 -	bcc _0803552E -_0803555A: -	adds r0, r5, r4 -	adds r0, 0x1 -	cmp r0, 0x80 -	bgt _08035568 -	lsls r0, r5, 24 -	lsrs r0, 24 -	b _0803556A -_08035568: -	movs r0, 0xFF -_0803556A: -	pop {r4,r5} -	pop {r1} -	bx r1 -	thumb_func_end sub_8035518 - -	thumb_func_start sub_8035570 -sub_8035570: @ 8035570 -	push {r4-r6,lr} -	adds r3, r0, 0 -	movs r2, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r4, [r0] -	cmp r2, r4 -	bcs _080355AC -	ldr r1, [r0, 0x4] -	lsls r0, r3, 3 -	subs r0, r3 -	lsls r0, 2 -	adds r5, r0, r1 -_0803558A: -	ldrb r0, [r1] -	cmp r0, 0 -	beq _080355A4 -	cmp r2, r3 -	beq _080355A4 -	ldrh r0, [r1, 0x10] -	ldrh r6, [r5, 0x10] -	cmp r0, r6 -	bne _080355A4 -	movs r0, 0x1 -	b _080355AE -	.pool -_080355A4: -	adds r1, 0x1C -	adds r2, 0x1 -	cmp r2, r4 -	bcc _0803558A -_080355AC: -	movs r0, 0 -_080355AE: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_8035570 - -	thumb_func_start sub_80355B4 -sub_80355B4: @ 80355B4 -	push {r4-r6,lr} -	adds r3, r0, 0 -	movs r2, 0 -	ldr r0, =gUnknown_02022E10 -	ldr r0, [r0] -	ldr r4, [r0] -	cmp r2, r4 -	bcs _080355F0 -	ldr r1, [r0, 0x4] -	lsls r0, r3, 3 -	subs r0, r3 -	lsls r0, 2 -	adds r5, r0, r1 -_080355CE: -	ldrb r0, [r1] -	cmp r0, 0 -	beq _080355E8 -	cmp r2, r3 -	beq _080355E8 -	ldrh r0, [r1, 0x12] -	ldrh r6, [r5, 0x12] -	cmp r0, r6 -	bne _080355E8 -	movs r0, 0x1 -	b _080355F2 -	.pool -_080355E8: -	adds r1, 0x1C -	adds r2, 0x1 -	cmp r2, r4 -	bcc _080355CE -_080355F0: -	movs r0, 0 -_080355F2: -	pop {r4-r6} -	pop {r1} -	bx r1 -	thumb_func_end sub_80355B4 - -	thumb_func_start sub_80355F8 -sub_80355F8: @ 80355F8 -	ldr r2, =gUnknown_082FF1C8 -	lsls r0, 2 -	adds r1, r0 -	adds r1, r2 -	ldrb r0, [r1] -	bx lr -	.pool -	thumb_func_end sub_80355F8 - -	thumb_func_start sub_8035608 -sub_8035608: @ 8035608 -	push {lr} -	bl ResetSpriteData -	ldr r0, =gUnknown_0831AC88 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0 -	bl CreateSprite -	lsls r0, 24 -	lsrs r0, 24 -	ldr r2, =gSprites -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r2 -	adds r1, 0x3E -	ldrb r0, [r1] -	movs r2, 0x4 -	orrs r0, r2 -	strb r0, [r1] -	ldr r0, =sub_8035648 -	bl SetMainCallback2 -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_8035608 - -	thumb_func_start sub_8035648 -sub_8035648: @ 8035648 -	push {lr} -	bl AnimateSprites -	bl BuildOamBuffer -	pop {r0} -	bx r0 -	thumb_func_end sub_8035648 - -	thumb_func_start trs_config -trs_config: @ 8035658 -	push {r4,lr} -	movs r0, 0 -	bl ResetBgsAndClearDma3BusyFlags -	ldr r1, =gUnknown_0831AA08 -	movs r0, 0 -	movs r2, 0x4 -	bl InitBgsFromTemplates -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	movs r0, 0x80 -	lsls r0, 11 -	ands r1, r0 -	cmp r1, 0 -	beq _080356A4 -	ldr r0, =gBattleScripting -	adds r0, 0x24 -	movs r1, 0x1 -	strb r1, [r0] -	ldr r4, =gUnknown_02023060 -	ldr r1, [r4] -	movs r0, 0x1 -	bl SetBgTilemapBuffer -	ldr r1, [r4] -	movs r0, 0x2 -	bl SetBgTilemapBuffer -	b _080356AA -	.pool -_080356A4: -	ldr r0, =gBattleScripting -	adds r0, 0x24 -	strb r1, [r0] -_080356AA: -	ldr r1, =gUnknown_0831ABA0 -	ldr r0, =gBattleScripting -	adds r0, 0x24 -	ldrb r0, [r0] -	lsls r0, 2 -	adds r0, r1 -	ldr r0, [r0] -	bl InitWindows -	bl DeactivateAllTextPrinters -	pop {r4} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end trs_config - -	thumb_func_start sub_80356D0 -sub_80356D0: @ 80356D0 -	push {lr} -	movs r0, 0x2 -	bl DisableInterrupts -	movs r0, 0xC5 -	bl EnableInterrupts -	bl trs_config -	movs r0, 0x50 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x52 -	movs r1, 0 -	bl SetGpuReg -	movs r0, 0x54 -	movs r1, 0 -	bl SetGpuReg -	ldr r1, =0x0000b040 -	movs r0, 0 -	bl SetGpuReg -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_80356D0 - -	thumb_func_start ApplyPlayerChosenFrameToBattleMenu -ApplyPlayerChosenFrameToBattleMenu: @ 803570C -	push {lr} -	movs r0, 0x2 -	movs r1, 0x12 -	movs r2, 0x10 -	bl sub_809882C -	movs r0, 0x2 -	movs r1, 0x22 -	movs r2, 0x10 -	bl sub_809882C -	ldr r0, =gUnknown_08D85600 -	movs r1, 0x50 -	movs r2, 0x20 -	bl LoadCompressedPalette -	ldr r0, =gBattleTypeFlags -	ldr r0, [r0] -	movs r1, 0x80 -	lsls r1, 11 -	ands r0, r1 -	cmp r0, 0 -	beq _0803575A -	movs r0, 0x70 -	bl sub_81978B0 -	movs r0, 0 -	movs r1, 0x30 -	movs r2, 0x70 -	bl copy_textbox_border_tile_patterns_to_vram -	ldr r0, =gPlttBufferUnfaded -	adds r0, 0xEC -	movs r1, 0 -	strh r1, [r0] -	ldr r1, =gPlttBufferFaded + 0xEC -	movs r2, 0x1 -	bl CpuSet -_0803575A: -	pop {r0} -	bx r0 -	.pool -	thumb_func_end ApplyPlayerChosenFrameToBattleMenu - -	thumb_func_start DrawMainBattleBackground -DrawMainBattleBackground: @ 8035770 -	push {r4,r5,lr} -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	ldr r0, =0x023f0902 -	ands r0, r1 -	cmp r0, 0 -	beq _080357B0 -	ldr r0, =gBattleTerrainTiles_Building -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7CA28 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gBattleTerrainPalette_Frontier -	b _08035A52 -	.pool -_080357B0: -	movs r0, 0x80 -	lsls r0, 21 -	ands r0, r1 -	cmp r0, 0 -	beq _080357E4 -	ldr r0, =gUnknown_08D7BB14 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7C154 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7DF30 -	b _08035A52 -	.pool -_080357E4: -	movs r0, 0x80 -	lsls r0, 22 -	ands r0, r1 -	cmp r0, 0 -	beq _08035818 -	ldr r0, =gUnknown_08D7A108 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7A720 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7DEF4 -	b _08035A52 -	.pool -_08035818: -	movs r0, 0x80 -	lsls r0, 23 -	ands r0, r1 -	cmp r0, 0 -	beq _0803584C -	ldr r0, =gUnknown_08D7D590 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7DC04 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E234 -	b _08035A52 -	.pool -_0803584C: -	movs r0, 0x8 -	ands r1, r0 -	cmp r1, 0 -	beq _080358C4 -	ldr r2, =gTrainers -	ldr r0, =gTrainerBattleOpponent_A -	ldrh r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x1] -	cmp r0, 0x20 -	bne _08035898 -	ldr r0, =gBattleTerrainTiles_Building -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7CA28 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7DFC4 -	b _08035A52 -	.pool -_08035898: -	cmp r0, 0x26 -	bne _080358C4 -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E1F8 -	b _08035A52 -	.pool -_080358C4: -	bl sav1_map_get_battletype -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x8 -	bhi _08035904 -	lsls r0, 2 -	ldr r1, =_080358E0 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.pool -	.align 2, 0 -_080358E0: -	.4byte _08035904 -	.4byte _08035950 -	.4byte _08035978 -	.4byte _080359A0 -	.4byte _080359C8 -	.4byte _080359F0 -	.4byte _08035A18 -	.4byte _08035A40 -	.4byte _08035A70 -_08035904: -	ldr r4, =gBattleTerrainTable -	ldr r5, =gBattleTerrain -	ldrb r1, [r5] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldr r0, [r0] -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldrb r1, [r5] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r4, 0x4 -	adds r0, r1 -	ldr r0, [r0] -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldrb r1, [r5] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r4, 0x10 -	adds r0, r4 -	ldr r0, [r0] -	b _08035A52 -	.pool -_08035950: -	ldr r0, =gBattleTerrainTiles_Building -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7CA28 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7DF88 -	b _08035A52 -	.pool -_08035978: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E060 -	b _08035A52 -	.pool -_080359A0: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E000 -	b _08035A52 -	.pool -_080359C8: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E0CC -	b _08035A52 -	.pool -_080359F0: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E11C -	b _08035A52 -	.pool -_08035A18: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E164 -	b _08035A52 -	.pool -_08035A40: -	ldr r0, =gUnknown_08D7CCD8 -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7D2E0 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7E1A8 -_08035A52: -	movs r1, 0x20 -	movs r2, 0x60 -	bl LoadCompressedPalette -	b _08035A8A -	.pool -_08035A70: -	ldr r0, =gBattleTerrainTiles_Building -	ldr r1, =0x06008000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7CA28 -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	ldr r0, =gBattleTerrainPalette_Frontier -	movs r1, 0x20 -	movs r2, 0x60 -	bl LoadCompressedPalette -_08035A8A: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end DrawMainBattleBackground - -	thumb_func_start LoadBattleTextboxAndBackground -LoadBattleTextboxAndBackground: @ 8035AA4 -	push {lr} -	ldr r0, =gUnknown_08C00000 -	movs r1, 0xC0 -	lsls r1, 19 -	bl LZDecompressVram -	ldr r1, =gUnknown_08C00524 -	movs r0, 0 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0 -	bl CopyBgTilemapBufferToVram -	ldr r0, =gUnknown_08C004E0 -	movs r1, 0 -	movs r2, 0x40 -	bl LoadCompressedPalette -	bl ApplyPlayerChosenFrameToBattleMenu -	bl DrawMainBattleBackground -	pop {r0} -	bx r0 -	.pool -	thumb_func_end LoadBattleTextboxAndBackground - -	thumb_func_start sub_8035AE4 -sub_8035AE4: @ 8035AE4 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x18 -	ldr r4, [sp, 0x34] -	lsls r0, 24 -	lsrs r6, r0, 24 -	adds r7, r6, 0 -	lsls r1, 24 -	lsrs r5, r1, 24 -	lsls r2, 24 -	lsrs r2, 24 -	mov r8, r2 -	lsls r3, 24 -	lsrs r3, 24 -	mov r12, r3 -	lsls r4, 24 -	lsrs r4, 24 -	mov r9, r4 -	movs r4, 0 -	ldr r0, =gBattleTypeFlags -	ldr r0, [r0] -	movs r1, 0x40 -	ands r0, r1 -	cmp r0, 0 -	beq _08035BCC -	ldr r0, =gTasks -	lsls r1, r6, 2 -	adds r1, r6 -	lsls r1, 3 -	adds r1, r0 -	movs r2, 0x12 -	ldrsh r0, [r1, r2] -	cmp r0, 0 -	beq _08035B56 -	cmp r5, 0x1 -	beq _08035B7E -	cmp r5, 0x1 -	bgt _08035B44 -	cmp r5, 0 -	beq _08035B4E -	b _08035B88 -	.pool -_08035B44: -	cmp r5, 0x2 -	beq _08035B52 -	cmp r5, 0x3 -	beq _08035B72 -	b _08035B88 -_08035B4E: -	ldrh r0, [r1, 0xE] -	b _08035B74 -_08035B52: -	ldrh r1, [r1, 0xE] -	b _08035B80 -_08035B56: -	cmp r5, 0x1 -	beq _08035B72 -	cmp r5, 0x1 -	bgt _08035B64 -	cmp r5, 0 -	beq _08035B6E -	b _08035B88 -_08035B64: -	cmp r5, 0x2 -	beq _08035B7A -	cmp r5, 0x3 -	beq _08035B7E -	b _08035B88 -_08035B6E: -	ldrh r0, [r1, 0xE] -	b _08035B74 -_08035B72: -	ldrh r0, [r1, 0x10] -_08035B74: -	movs r4, 0x3F -	ands r4, r0 -	b _08035B88 -_08035B7A: -	ldrh r1, [r1, 0xE] -	b _08035B80 -_08035B7E: -	ldrh r1, [r1, 0x10] -_08035B80: -	movs r0, 0xFC -	lsls r0, 4 -	ands r0, r1 -	lsrs r4, r0, 6 -_08035B88: -	movs r2, 0 -	movs r6, 0x3 -	ldr r0, =0x00006001 -	adds r5, r0, 0 -	add r3, sp, 0xC -_08035B92: -	lsls r1, r2, 1 -	adds r0, r6, 0 -	lsls r0, r1 -	ands r0, r4 -	asrs r0, r1 -	adds r0, r5 -	strh r0, [r3] -	adds r3, 0x2 -	adds r2, 0x1 -	cmp r2, 0x2 -	ble _08035B92 -	movs r0, 0x3 -	str r0, [sp] -	movs r0, 0x1 -	str r0, [sp, 0x4] -	movs r0, 0x11 -	str r0, [sp, 0x8] -	mov r0, r8 -	add r1, sp, 0xC -	mov r2, r12 -	mov r3, r9 -	bl CopyToBgTilemapBufferRect_ChangePalette -	mov r0, r8 -	bl CopyBgTilemapBufferToVram -	b _08035C36 -	.pool -_08035BCC: -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r0, [r0] -	cmp r5, r0 -	bne _08035BEC -	ldr r1, =gTasks -	lsls r0, r6, 2 -	adds r0, r6 -	lsls r0, 3 -	adds r0, r1 -	ldrh r4, [r0, 0xE] -	b _08035BF8 -	.pool -_08035BEC: -	ldr r1, =gTasks -	lsls r0, r7, 2 -	adds r0, r7 -	lsls r0, 3 -	adds r0, r1 -	ldrh r4, [r0, 0x10] -_08035BF8: -	movs r2, 0 -	movs r6, 0x3 -	ldr r0, =0x00006001 -	adds r5, r0, 0 -	add r3, sp, 0xC -_08035C02: -	lsls r1, r2, 1 -	adds r0, r6, 0 -	lsls r0, r1 -	ands r0, r4 -	asrs r0, r1 -	adds r0, r5 -	strh r0, [r3] -	adds r3, 0x2 -	adds r2, 0x1 -	cmp r2, 0x5 -	ble _08035C02 -	movs r0, 0x6 -	str r0, [sp] -	movs r0, 0x1 -	str r0, [sp, 0x4] -	movs r0, 0x11 -	str r0, [sp, 0x8] -	mov r0, r8 -	add r1, sp, 0xC -	mov r2, r12 -	mov r3, r9 -	bl CopyToBgTilemapBufferRect_ChangePalette -	mov r0, r8 -	bl CopyBgTilemapBufferToVram -_08035C36: -	add sp, 0x18 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_8035AE4 - -	thumb_func_start sub_8035C4C -sub_8035C4C: @ 8035C4C -	push {lr} -	ldr r0, =gBattleOutcome -	ldrb r2, [r0] -	cmp r2, 0x3 -	bne _08035C68 -	ldr r0, =gText_Draw -	movs r1, 0x15 -	bl BattleHandleAddTextPrinter -	b _08035D68 -	.pool -_08035C68: -	ldr r0, =gBattleTypeFlags -	ldr r0, [r0] -	movs r1, 0x40 -	ands r0, r1 -	cmp r0, 0 -	beq _08035CE2 -	cmp r2, 0x1 -	bne _08035CAE -	ldr r2, =gLinkPlayers -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r1, [r0] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 2 -	adds r0, r2 -	ldrh r0, [r0, 0x18] -	cmp r0, 0x1 -	beq _08035CFC -	cmp r0, 0x1 -	bgt _08035CA4 -	cmp r0, 0 -	beq _08035D36 -	b _08035D68 -	.pool -_08035CA4: -	cmp r0, 0x2 -	beq _08035D36 -	cmp r0, 0x3 -	bne _08035D68 -	b _08035CFC -_08035CAE: -	ldr r2, =gLinkPlayers -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r1, [r0] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 2 -	adds r0, r2 -	ldrh r0, [r0, 0x18] -	cmp r0, 0x1 -	beq _08035D36 -	cmp r0, 0x1 -	bgt _08035CD8 -	cmp r0, 0 -	beq _08035CFC -	b _08035D68 -	.pool -_08035CD8: -	cmp r0, 0x2 -	beq _08035CFC -	cmp r0, 0x3 -	bne _08035D68 -	b _08035D36 -_08035CE2: -	cmp r2, 0x1 -	bne _08035D20 -	ldr r2, =gLinkPlayers -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r1, [r0] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 2 -	adds r0, r2 -	ldrh r0, [r0, 0x18] -	cmp r0, 0 -	beq _08035D36 -_08035CFC: -	ldr r0, =gText_Win -	movs r1, 0x17 -	bl BattleHandleAddTextPrinter -	ldr r0, =gText_Loss -	movs r1, 0x16 -	bl BattleHandleAddTextPrinter -	b _08035D68 -	.pool -_08035D20: -	ldr r2, =gLinkPlayers -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r1, [r0] -	lsls r0, r1, 3 -	subs r0, r1 -	lsls r0, 2 -	adds r0, r2 -	ldrh r0, [r0, 0x18] -	cmp r0, 0 -	beq _08035D58 -_08035D36: -	ldr r0, =gText_Win -	movs r1, 0x16 -	bl BattleHandleAddTextPrinter -	ldr r0, =gText_Loss -	movs r1, 0x17 -	bl BattleHandleAddTextPrinter -	b _08035D68 -	.pool -_08035D58: -	ldr r0, =gText_Win -	movs r1, 0x17 -	bl BattleHandleAddTextPrinter -	ldr r0, =gText_Loss -	movs r1, 0x16 -	bl BattleHandleAddTextPrinter -_08035D68: -	pop {r0} -	bx r0 -	.pool -	thumb_func_end sub_8035C4C - -	thumb_func_start task00_0800F6FC -task00_0800F6FC: @ 8035D74 -	push {r4-r7,lr} -	mov r7, r8 -	push {r7} -	sub sp, 0x4 -	lsls r0, 24 -	lsrs r7, r0, 24 -	ldr r1, =gTasks -	lsls r0, r7, 2 -	mov r8, r0 -	adds r0, r7 -	lsls r0, 3 -	adds r5, r0, r1 -	movs r1, 0x8 -	ldrsh r0, [r5, r1] -	cmp r0, 0x1 -	bne _08035D96 -	b _08035EC4 -_08035D96: -	cmp r0, 0x1 -	bgt _08035DA4 -	cmp r0, 0 -	beq _08035DAC -	b _08036138 -	.pool -_08035DA4: -	cmp r0, 0x2 -	bne _08035DAA -	b _08035F64 -_08035DAA: -	b _08036138 -_08035DAC: -	ldr r0, =gBattleTypeFlags -	ldr r0, [r0] -	movs r1, 0x40 -	ands r0, r1 -	cmp r0, 0 -	beq _08035E44 -	movs r5, 0 -	movs r6, 0x3 -_08035DBC: -	ldr r0, =gLinkPlayers + 8 -	adds r1, r5, r0 -	subs r0, 0x8 -	adds r4, r5, r0 -	ldrh r0, [r4, 0x18] -	cmp r0, 0x1 -	beq _08035DF4 -	cmp r0, 0x1 -	bgt _08035DDC -	cmp r0, 0 -	beq _08035DE6 -	b _08035E3A -	.pool -_08035DDC: -	cmp r0, 0x2 -	beq _08035E08 -	cmp r0, 0x3 -	beq _08035E22 -	b _08035E3A -_08035DE6: -	adds r0, r1, 0 -	movs r1, 0x11 -	bl BattleHandleAddTextPrinter -	ldrb r1, [r4, 0x18] -	movs r0, 0x4 -	b _08035E14 -_08035DF4: -	adds r0, r1, 0 -	movs r1, 0x12 -	bl BattleHandleAddTextPrinter -	ldrb r1, [r4, 0x18] -	movs r0, 0x4 -	str r0, [sp] -	adds r0, r7, 0 -	movs r2, 0x2 -	b _08035E1A -_08035E08: -	adds r0, r1, 0 -	movs r1, 0x13 -	bl BattleHandleAddTextPrinter -	ldrb r1, [r4, 0x18] -	movs r0, 0x8 -_08035E14: -	str r0, [sp] -	adds r0, r7, 0 -	movs r2, 0x1 -_08035E1A: -	movs r3, 0x2 -	bl sub_8035AE4 -	b _08035E3A -_08035E22: -	adds r0, r1, 0 -	movs r1, 0x14 -	bl BattleHandleAddTextPrinter -	ldrb r1, [r4, 0x18] -	movs r0, 0x8 -	str r0, [sp] -	adds r0, r7, 0 -	movs r2, 0x2 -	movs r3, 0x2 -	bl sub_8035AE4 -_08035E3A: -	adds r5, 0x1C -	subs r6, 0x1 -	cmp r6, 0 -	bge _08035DBC -	b _08035EA6 -_08035E44: -	ldr r0, =gBattleScripting -	adds r0, 0x25 -	ldrb r5, [r0] -	movs r0, 0x1 -	adds r6, r5, 0 -	eors r6, r0 -	adds r1, r6, 0 -	ldr r4, =gLinkPlayers -	lsls r0, r5, 3 -	subs r0, r5 -	lsls r0, 2 -	adds r0, r4 -	ldrh r0, [r0, 0x18] -	cmp r0, 0 -	beq _08035E66 -	adds r6, r5, 0 -	adds r5, r1, 0 -_08035E66: -	lsls r0, r5, 3 -	subs r0, r5 -	lsls r0, 2 -	adds r4, 0x8 -	adds r1, r0, r4 -	adds r0, r1, 0 -	movs r1, 0xF -	bl BattleHandleAddTextPrinter -	lsls r0, r6, 3 -	subs r0, r6 -	lsls r0, 2 -	adds r1, r0, r4 -	adds r0, r1, 0 -	movs r1, 0x10 -	bl BattleHandleAddTextPrinter -	movs r4, 0x7 -	str r4, [sp] -	adds r0, r7, 0 -	adds r1, r5, 0 -	movs r2, 0x1 -	movs r3, 0x2 -	bl sub_8035AE4 -	str r4, [sp] -	adds r0, r7, 0 -	adds r1, r6, 0 -	movs r2, 0x2 -	movs r3, 0x2 -	bl sub_8035AE4 -_08035EA6: -	ldr r0, =gTasks -	mov r2, r8 -	adds r1, r2, r7 -	lsls r1, 3 -	adds r1, r0 -	ldrh r0, [r1, 0x8] -	adds r0, 0x1 -	strh r0, [r1, 0x8] -	b _08036138 -	.pool -_08035EC4: -	ldr r0, =0x00002710 -	bl AllocSpritePalette -	lsls r0, 24 -	ldr r2, =gPlttBufferUnfaded -	lsrs r0, 19 -	ldr r3, =0x0000021e -	adds r0, r3 -	adds r2, r0, r2 -	ldr r1, =gPlttBufferFaded -	adds r0, r1 -	ldr r1, =0x00007fff -	strh r1, [r0] -	strh r1, [r2] -	ldr r0, =gUnknown_0831A9D0 -	movs r1, 0x6F -	movs r2, 0x50 -	movs r3, 0 -	bl CreateSprite -	ldr r4, =gBattleStruct -	ldr r1, [r4] -	adds r1, 0x7D -	strb r0, [r1] -	ldr r0, =gUnknown_0831A9E8 -	movs r1, 0x81 -	movs r2, 0x50 -	movs r3, 0 -	bl CreateSprite -	ldr r1, [r4] -	adds r1, 0x7E -	strb r0, [r1] -	ldr r3, =gSprites -	ldr r0, [r4] -	adds r0, 0x7D -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	adds r0, 0x3E -	ldrb r1, [r0] -	movs r2, 0x4 -	orrs r1, r2 -	strb r1, [r0] -	ldr r0, [r4] -	adds r0, 0x7E -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r3 -	adds r0, 0x3E -	ldrb r1, [r0] -	orrs r1, r2 -	strb r1, [r0] -	ldrh r0, [r5, 0x8] -	adds r0, 0x1 -	strh r0, [r5, 0x8] -	b _08036138 -	.pool -_08035F64: -	movs r1, 0x12 -	ldrsh r0, [r5, r1] -	cmp r0, 0 -	beq _08035FCC -	ldr r4, =gBattle_BG1_X -	ldrh r0, [r5, 0xA] -	bl Sin2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08035F7E -	adds r0, 0x1F -_08035F7E: -	asrs r1, r0, 5 -	movs r2, 0x14 -	negs r2, r2 -	adds r0, r2, 0 -	subs r0, r1 -	strh r0, [r4] -	ldr r4, =gBattle_BG2_X -	ldrh r0, [r5, 0xC] -	bl Sin2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08035F9C -	adds r0, 0x1F -_08035F9C: -	asrs r1, r0, 5 -	movs r3, 0x8C -	negs r3, r3 -	adds r0, r3, 0 -	subs r0, r1 -	strh r0, [r4] -	ldr r0, =gBattle_BG1_Y -	ldr r2, =0x0000ffdc -	adds r1, r2, 0 -	strh r1, [r0] -	ldr r0, =gBattle_BG2_Y -	strh r1, [r0] -	b _08036038 -	.pool -_08035FCC: -	ldr r4, =gBattle_BG1_X -	ldrh r0, [r5, 0xA] -	bl Sin2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08035FDE -	adds r0, 0x1F -_08035FDE: -	asrs r1, r0, 5 -	movs r3, 0x14 -	negs r3, r3 -	adds r0, r3, 0 -	subs r0, r1 -	strh r0, [r4] -	ldr r4, =gBattle_BG1_Y -	ldrh r0, [r5, 0xA] -	bl Cos2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08035FFC -	adds r0, 0x1F -_08035FFC: -	asrs r0, 5 -	subs r0, 0xA4 -	strh r0, [r4] -	ldr r4, =gBattle_BG2_X -	ldrh r0, [r5, 0xC] -	bl Sin2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08036014 -	adds r0, 0x1F -_08036014: -	asrs r1, r0, 5 -	movs r2, 0x8C -	negs r2, r2 -	adds r0, r2, 0 -	subs r0, r1 -	strh r0, [r4] -	ldr r4, =gBattle_BG2_Y -	ldrh r0, [r5, 0xC] -	bl Cos2 -	lsls r0, 16 -	asrs r0, 16 -	cmp r0, 0 -	bge _08036032 -	adds r0, 0x1F -_08036032: -	asrs r0, 5 -	subs r0, 0xA4 -	strh r0, [r4] -_08036038: -	ldr r1, =gTasks -	lsls r0, r7, 2 -	adds r0, r7 -	lsls r0, 3 -	adds r1, r0, r1 -	ldrh r0, [r1, 0xC] -	movs r2, 0xC -	ldrsh r3, [r1, r2] -	mov r8, r3 -	cmp r3, 0 -	beq _08036070 -	subs r0, 0x2 -	strh r0, [r1, 0xC] -	ldrh r0, [r1, 0xA] -	adds r0, 0x2 -	strh r0, [r1, 0xA] -	b _08036138 -	.pool -_08036070: -	movs r3, 0x12 -	ldrsh r0, [r1, r3] -	cmp r0, 0 -	beq _0803607C -	bl sub_8035C4C -_0803607C: -	movs r0, 0x78 -	bl PlaySE -	adds r0, r7, 0 -	bl DestroyTask -	ldr r4, =gSprites -	ldr r5, =gBattleStruct -	ldr r0, [r5] -	adds r0, 0x7D -	ldrb r0, [r0] -	lsls r1, r0, 4 -	adds r1, r0 -	lsls r1, 2 -	adds r1, r4 -	adds r1, 0x3E -	ldrb r3, [r1] -	movs r2, 0x5 -	negs r2, r2 -	adds r0, r2, 0 -	ands r0, r3 -	strb r0, [r1] -	ldr r0, [r5] -	adds r0, 0x7E -	ldrb r1, [r0] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	adds r0, 0x3E -	ldrb r1, [r0] -	ands r2, r1 -	strb r2, [r0] -	ldr r5, [r5] -	adds r6, r5, 0 -	adds r6, 0x7E -	ldrb r0, [r6] -	lsls r2, r0, 4 -	adds r2, r0 -	lsls r2, 2 -	adds r2, r4 -	ldrh r3, [r2, 0x4] -	lsls r1, r3, 22 -	lsrs r1, 22 -	adds r1, 0x40 -	ldr r7, =0x000003ff -	adds r0, r7, 0 -	ands r1, r0 -	ldr r0, =0xfffffc00 -	ands r0, r3 -	orrs r0, r1 -	strh r0, [r2, 0x4] -	adds r5, 0x7D -	ldrb r1, [r5] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	mov r1, r8 -	strh r1, [r0, 0x2E] -	ldrb r1, [r6] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	movs r1, 0x1 -	strh r1, [r0, 0x2E] -	ldrb r1, [r5] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldrh r1, [r0, 0x20] -	strh r1, [r0, 0x30] -	ldrb r1, [r6] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	ldrh r1, [r0, 0x20] -	strh r1, [r0, 0x30] -	ldrb r1, [r5] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	mov r2, r8 -	strh r2, [r0, 0x32] -	ldrb r1, [r6] -	lsls r0, r1, 4 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r4 -	strh r2, [r0, 0x32] -_08036138: -	add sp, 0x4 -	pop {r3} -	mov r8, r3 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end task00_0800F6FC - -	thumb_func_start LoadBattleEntryBackground -LoadBattleEntryBackground: @ 8036154 -	push {r4,r5,lr} -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	movs r0, 0x2 -	ands r0, r1 -	cmp r0, 0 -	beq _08036208 -	ldr r0, =gUnknown_08D778F0 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D77B0C -	ldr r1, =0x06010000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D77AE4 -	movs r1, 0x60 -	movs r2, 0x20 -	bl LoadCompressedPalette -	movs r0, 0x1 -	movs r1, 0x3 -	movs r2, 0x1 -	bl SetBgAttribute -	ldr r1, =0x00005c04 -	movs r0, 0xA -	bl SetGpuReg -	ldr r4, =gUnknown_08D779D8 -	movs r0, 0x1 -	adds r1, r4, 0 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0x2 -	adds r1, r4, 0 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0x1 -	bl CopyBgTilemapBufferToVram -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	movs r0, 0x48 -	movs r1, 0x36 -	bl SetGpuReg -	movs r0, 0x4A -	movs r1, 0x36 -	bl SetGpuReg -	ldr r0, =gBattle_BG1_Y -	ldr r2, =0x0000ff5c -	adds r1, r2, 0 -	strh r1, [r0] -	ldr r0, =gBattle_BG2_Y -	strh r1, [r0] -	ldr r0, =gUnknown_0831AA00 -	bl LoadCompressedObjectPicUsingHeap -	b _080363AC -	.pool -_08036208: -	ldr r0, =0x023f0902 -	ands r0, r1 -	cmp r0, 0 -	beq _0803628C -	movs r0, 0x80 -	lsls r0, 15 -	ands r1, r0 -	cmp r1, 0 -	beq _08036224 -	ldr r0, =gPartnerTrainerId -	ldrh r1, [r0] -	ldr r0, =0x00000c03 -	cmp r1, r0 -	bne _08036248 -_08036224: -	ldr r0, =gUnknown_08D820D4 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D824E4 -	b _08036382 -	.pool -_08036248: -	movs r0, 0x1 -	movs r1, 0x1 -	movs r2, 0x2 -	bl SetBgAttribute -	movs r0, 0x2 -	movs r1, 0x1 -	movs r2, 0x2 -	bl SetBgAttribute -	ldr r1, =gUnknown_08D857A8 -	movs r0, 0x1 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	ldr r1, =gUnknown_08D85A1C -	movs r0, 0x2 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0x1 -	bl CopyBgTilemapBufferToVram -	movs r0, 0x2 -	bl CopyBgTilemapBufferToVram -	b _080363AC -	.pool -_0803628C: -	movs r0, 0x80 -	lsls r0, 21 -	ands r0, r1 -	cmp r0, 0 -	beq _080362B0 -	ldr r0, =gUnknown_08D81610 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D81E2C -	b _08036382 -	.pool -_080362B0: -	movs r0, 0x80 -	lsls r0, 22 -	ands r0, r1 -	cmp r0, 0 -	beq _080362D4 -	ldr r0, =gUnknown_08D7F9F8 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D7FEC4 -	b _08036382 -	.pool -_080362D4: -	movs r0, 0x80 -	lsls r0, 23 -	ands r0, r1 -	cmp r0, 0 -	beq _080362F8 -	ldr r0, =gUnknown_08D82608 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D82C70 -	b _08036382 -	.pool -_080362F8: -	movs r0, 0x8 -	ands r1, r0 -	cmp r1, 0 -	beq _08036350 -	ldr r2, =gTrainers -	ldr r0, =gTrainerBattleOpponent_A -	ldrh r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x1] -	cmp r0, 0x20 -	bne _08036334 -	ldr r0, =gUnknown_08D820D4 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D824E4 -	b _08036382 -	.pool -_08036334: -	cmp r0, 0x26 -	bne _08036350 -	ldr r0, =gUnknown_08D820D4 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D824E4 -	b _08036382 -	.pool -_08036350: -	bl sav1_map_get_battletype -	lsls r0, 24 -	cmp r0, 0 -	bne _0803639C -	ldr r4, =gBattleTerrainTable -	ldr r5, =gBattleTerrain -	ldrb r1, [r5] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r1, r4, 0 -	adds r1, 0x8 -	adds r0, r1 -	ldr r0, [r0] -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldrb r1, [r5] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r4, 0xC -	adds r0, r4 -	ldr r0, [r0] -_08036382: -	ldr r1, =0x0600e000 -	bl LZDecompressVram -	b _080363AC -	.pool -_0803639C: -	ldr r0, =gUnknown_08D820D4 -	ldr r1, =0x06004000 -	bl LZDecompressVram -	ldr r0, =gUnknown_08D824E4 -	ldr r1, =0x0600e000 -	bl LZDecompressVram -_080363AC: -	pop {r4,r5} -	pop {r0} -	bx r0 -	.pool -	thumb_func_end LoadBattleEntryBackground - -	thumb_func_start LoadChosenBattleElement -LoadChosenBattleElement: @ 80363C4 -	push {r4,lr} -	lsls r0, 24 -	lsrs r0, 24 -	movs r4, 0 -	cmp r0, 0x6 -	bls _080363D2 -	b _08036756 -_080363D2: -	lsls r0, 2 -	ldr r1, =_080363E0 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.pool -	.align 2, 0 -_080363E0: -	.4byte _080363FC -	.4byte _0803640C -	.4byte _08036424 -	.4byte _08036434 -	.4byte _0803652C -	.4byte _08036638 -	.4byte _08036750 -_080363FC: -	ldr r0, =gUnknown_08C00000 -	movs r1, 0xC0 -	lsls r1, 19 -	bl LZDecompressVram -	b _08036758 -	.pool -_0803640C: -	ldr r1, =gUnknown_08C00524 -	movs r0, 0 -	movs r2, 0 -	movs r3, 0 -	bl CopyToBgTilemapBuffer -	movs r0, 0 -	bl CopyBgTilemapBufferToVram -	b _08036758 -	.pool -_08036424: -	ldr r0, =gUnknown_08C004E0 -	movs r1, 0 -	movs r2, 0x40 -	bl LoadCompressedPalette -	b _08036758 -	.pool -_08036434: -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	ldr r0, =0x023f0902 -	ands r0, r1 -	cmp r0, 0 -	bne _08036518 -	movs r0, 0x80 -	lsls r0, 21 -	ands r0, r1 -	cmp r0, 0 -	beq _0803645C -	ldr r0, =gUnknown_08D7BB14 -	b _0803651A -	.pool -_0803645C: -	movs r0, 0x8 -	ands r1, r0 -	cmp r1, 0 -	beq _0803648C -	ldr r2, =gTrainers -	ldr r0, =gTrainerBattleOpponent_A -	ldrh r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x1] -	cmp r0, 0x20 -	beq _08036518 -	cmp r0, 0x26 -	bne _0803648C -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_0803648C: -	bl sav1_map_get_battletype -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x8 -	bhi _080364CC -	lsls r0, 2 -	ldr r1, =_080364A8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.pool -	.align 2, 0 -_080364A8: -	.4byte _080364CC -	.4byte _08036518 -	.4byte _080364E8 -	.4byte _080364F0 -	.4byte _080364F8 -	.4byte _08036500 -	.4byte _08036508 -	.4byte _08036510 -	.4byte _08036518 -_080364CC: -	ldr r2, =gBattleTerrainTable -	ldr r0, =gBattleTerrain -	ldrb r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r0, r2 -	ldr r0, [r0] -	b _0803651A -	.pool -_080364E8: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_080364F0: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_080364F8: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_08036500: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_08036508: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_08036510: -	ldr r0, =gUnknown_08D7CCD8 -	b _0803651A -	.pool -_08036518: -	ldr r0, =gBattleTerrainTiles_Building -_0803651A: -	ldr r1, =0x06008000 -	bl LZDecompressVram -	b _08036758 -	.pool -_0803652C: -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	ldr r0, =0x023f0902 -	ands r0, r1 -	cmp r0, 0 -	beq _0803653A -	b _08036624 -_0803653A: -	movs r0, 0x80 -	lsls r0, 5 -	ands r0, r1 -	cmp r0, 0 -	beq _08036568 -	ldr r0, =gGameVersion -	ldrb r0, [r0] -	cmp r0, 0x2 -	bne _08036560 -	ldr r0, =gUnknown_08D7C154 -	b _08036626 -	.pool -_08036560: -	ldr r0, =gUnknown_08D7A720 -	b _08036626 -	.pool -_08036568: -	movs r0, 0x8 -	ands r1, r0 -	cmp r1, 0 -	beq _08036598 -	ldr r2, =gTrainers -	ldr r0, =gTrainerBattleOpponent_A -	ldrh r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x1] -	cmp r0, 0x20 -	beq _08036624 -	cmp r0, 0x26 -	bne _08036598 -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_08036598: -	bl sav1_map_get_battletype -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x8 -	bhi _080365D8 -	lsls r0, 2 -	ldr r1, =_080365B4 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.pool -	.align 2, 0 -_080365B4: -	.4byte _080365D8 -	.4byte _08036624 -	.4byte _080365F4 -	.4byte _080365FC -	.4byte _08036604 -	.4byte _0803660C -	.4byte _08036614 -	.4byte _0803661C -	.4byte _08036624 -_080365D8: -	ldr r2, =gBattleTerrainTable -	ldr r0, =gBattleTerrain -	ldrb r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r2, 0x4 -	adds r0, r2 -	ldr r0, [r0] -	b _08036626 -	.pool -_080365F4: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_080365FC: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_08036604: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_0803660C: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_08036614: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_0803661C: -	ldr r0, =gUnknown_08D7D2E0 -	b _08036626 -	.pool -_08036624: -	ldr r0, =gUnknown_08D7CA28 -_08036626: -	ldr r1, =0x0600d000 -	bl LZDecompressVram -	b _08036758 -	.pool -_08036638: -	ldr r0, =gBattleTypeFlags -	ldr r1, [r0] -	ldr r0, =0x023f0902 -	ands r0, r1 -	cmp r0, 0 -	beq _08036646 -	b _08036740 -_08036646: -	movs r0, 0x80 -	lsls r0, 5 -	ands r0, r1 -	cmp r0, 0 -	beq _08036674 -	ldr r0, =gGameVersion -	ldrb r0, [r0] -	cmp r0, 0x2 -	bne _0803666C -	ldr r0, =gUnknown_08D7DF30 -	b _08036742 -	.pool -_0803666C: -	ldr r0, =gUnknown_08D7DEF4 -	b _08036742 -	.pool -_08036674: -	movs r0, 0x8 -	ands r1, r0 -	cmp r1, 0 -	beq _080366AC -	ldr r2, =gTrainers -	ldr r0, =gTrainerBattleOpponent_A -	ldrh r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 3 -	adds r0, r2 -	ldrb r0, [r0, 0x1] -	cmp r0, 0x20 -	bne _080366A0 -	ldr r0, =gUnknown_08D7DFC4 -	b _08036742 -	.pool -_080366A0: -	cmp r0, 0x26 -	bne _080366AC -	ldr r0, =gUnknown_08D7E1F8 -	b _08036742 -	.pool -_080366AC: -	bl sav1_map_get_battletype -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0x8 -	bhi _080366EC -	lsls r0, 2 -	ldr r1, =_080366C8 -	adds r0, r1 -	ldr r0, [r0] -	mov pc, r0 -	.pool -	.align 2, 0 -_080366C8: -	.4byte _080366EC -	.4byte _08036708 -	.4byte _08036710 -	.4byte _08036718 -	.4byte _08036720 -	.4byte _08036728 -	.4byte _08036730 -	.4byte _08036738 -	.4byte _08036740 -_080366EC: -	ldr r2, =gBattleTerrainTable -	ldr r0, =gBattleTerrain -	ldrb r1, [r0] -	lsls r0, r1, 2 -	adds r0, r1 -	lsls r0, 2 -	adds r2, 0x10 -	adds r0, r2 -	ldr r0, [r0] -	b _08036742 -	.pool -_08036708: -	ldr r0, =gUnknown_08D7DF88 -	b _08036742 -	.pool -_08036710: -	ldr r0, =gUnknown_08D7E060 -	b _08036742 -	.pool -_08036718: -	ldr r0, =gUnknown_08D7E000 -	b _08036742 -	.pool -_08036720: -	ldr r0, =gUnknown_08D7E0CC -	b _08036742 -	.pool -_08036728: -	ldr r0, =gUnknown_08D7E11C -	b _08036742 -	.pool -_08036730: -	ldr r0, =gUnknown_08D7E164 -	b _08036742 -	.pool -_08036738: -	ldr r0, =gUnknown_08D7E1A8 -	b _08036742 -	.pool -_08036740: -	ldr r0, =gBattleTerrainPalette_Frontier -_08036742: -	movs r1, 0x20 -	movs r2, 0x60 -	bl LoadCompressedPalette -	b _08036758 -	.pool -_08036750: -	bl ApplyPlayerChosenFrameToBattleMenu -	b _08036758 -_08036756: -	movs r4, 0x1 -_08036758: -	adds r0, r4, 0 -	pop {r4} -	pop {r1} -	bx r1 -	thumb_func_end LoadChosenBattleElement - -	.align 2, 0 @ Don't pad with nop. diff --git a/asm/overworld.s b/asm/overworld.s index 739c10ed6..f86097ce9 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -2856,8 +2856,8 @@ sav1_map_get_name: @ 8085C58  	.pool  	thumb_func_end sav1_map_get_name -	thumb_func_start sav1_map_get_battletype -sav1_map_get_battletype: @ 8085C80 +	thumb_func_start GetCurrentMapBattleScene +GetCurrentMapBattleScene: @ 8085C80  	push {lr}  	ldr r0, =gSaveBlock1Ptr  	ldr r1, [r0] @@ -2875,7 +2875,7 @@ sav1_map_get_battletype: @ 8085C80  	pop {r1}  	bx r1  	.pool -	thumb_func_end sav1_map_get_battletype +	thumb_func_end GetCurrentMapBattleScene  	thumb_func_start overworld_bg_setup  @ void overworld_bg_setup() diff --git a/asm/rom_8034C54.s b/asm/rom_8034C54.s new file mode 100644 index 000000000..432b8250e --- /dev/null +++ b/asm/rom_8034C54.s @@ -0,0 +1,1312 @@ +	.include "asm/macros.inc" +	.include "constants/constants.inc" + +	.syntax unified + +	.text + +	thumb_func_start sub_8034C54 +sub_8034C54: @ 8034C54 +	push {r4-r7,lr} +	adds r4, r0, 0 +	ldr r5, =gUnknown_02022E10 +	ldr r0, [r5] +	cmp r0, 0 +	beq _08034C64 +	bl sub_8034CC8 +_08034C64: +	movs r0, 0x8 +	bl Alloc +	str r0, [r5] +	cmp r0, 0 +	bne _08034C78 +	movs r0, 0 +	b _08034CC0 +	.pool +_08034C78: +	lsls r0, r4, 3 +	subs r0, r4 +	lsls r0, 2 +	bl Alloc +	ldr r1, [r5] +	str r0, [r1, 0x4] +	cmp r0, 0 +	bne _08034C94 +	adds r0, r1, 0 +	bl Free +	movs r0, 0 +	b _08034CC0 +_08034C94: +	str r4, [r1] +	movs r3, 0 +	cmp r3, r4 +	bcs _08034CBE +	movs r7, 0 +	movs r6, 0xFF +	movs r2, 0 +_08034CA2: +	ldr r0, [r5] +	ldr r0, [r0, 0x4] +	adds r0, r2, r0 +	strb r7, [r0] +	ldr r0, [r5] +	ldr r1, [r0, 0x4] +	adds r1, r2, r1 +	ldrb r0, [r1, 0x1] +	orrs r0, r6 +	strb r0, [r1, 0x1] +	adds r2, 0x1C +	adds r3, 0x1 +	cmp r3, r4 +	bcc _08034CA2 +_08034CBE: +	movs r0, 0x1 +_08034CC0: +	pop {r4-r7} +	pop {r1} +	bx r1 +	thumb_func_end sub_8034C54 + +	thumb_func_start sub_8034CC8 +sub_8034CC8: @ 8034CC8 +	push {r4,r5,lr} +	ldr r2, =gUnknown_02022E10 +	ldr r1, [r2] +	cmp r1, 0 +	beq _08034D08 +	ldr r0, [r1, 0x4] +	cmp r0, 0 +	beq _08034CFC +	movs r4, 0 +	ldr r0, [r1] +	cmp r4, r0 +	bcs _08034CF2 +	adds r5, r2, 0 +_08034CE2: +	adds r0, r4, 0 +	bl sub_80353DC +	adds r4, 0x1 +	ldr r0, [r5] +	ldr r0, [r0] +	cmp r4, r0 +	bcc _08034CE2 +_08034CF2: +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r0, [r0, 0x4] +	bl Free +_08034CFC: +	ldr r4, =gUnknown_02022E10 +	ldr r0, [r4] +	bl Free +	movs r0, 0 +	str r0, [r4] +_08034D08: +	pop {r4,r5} +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_8034CC8 + +	thumb_func_start sub_8034D14 +sub_8034D14: @ 8034D14 +	push {r4-r7,lr} +	mov r7, r10 +	mov r6, r9 +	mov r5, r8 +	push {r5-r7} +	sub sp, 0x8 +	mov r8, r0 +	mov r10, r1 +	adds r5, r2, 0 +	ldr r6, =gUnknown_02022E10 +	ldr r0, [r6] +	cmp r0, 0 +	beq _08034DD4 +	ldr r1, [r0, 0x4] +	mov r0, r8 +	lsls r2, r0, 3 +	subs r0, r2, r0 +	lsls r4, r0, 2 +	adds r1, r4, r1 +	ldrb r0, [r1] +	mov r9, r2 +	cmp r0, 0 +	bne _08034DD4 +	ldrb r0, [r5, 0x1] +	bl sub_8035518 +	ldr r1, [r6] +	ldr r1, [r1, 0x4] +	adds r1, r4, r1 +	strb r0, [r1, 0x1] +	ldr r0, [r6] +	ldr r0, [r0, 0x4] +	adds r0, r4, r0 +	ldrb r0, [r0, 0x1] +	cmp r0, 0xFF +	beq _08034DD4 +	ldr r0, [r5, 0x8] +	ldrh r0, [r0, 0x6] +	bl GetSpriteTileStartByTag +	ldr r2, [r6] +	ldr r1, [r2, 0x4] +	adds r1, r4, r1 +	strh r0, [r1, 0xA] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	ldrh r1, [r0, 0xA] +	ldr r7, =0xffff0000 +	lsrs r0, r7, 16 +	cmp r1, r0 +	bne _08034DE0 +	ldr r2, [r5, 0x8] +	ldrh r0, [r2, 0x4] +	adds r1, r2, 0 +	cmp r0, 0 +	beq _08034D94 +	adds r0, r1, 0 +	bl LoadSpriteSheet +	b _08034DB4 +	.pool +_08034D94: +	ldr r0, [r2] +	ldr r1, [r2, 0x4] +	str r0, [sp] +	str r1, [sp, 0x4] +	ldr r0, [r2] +	bl sub_8034974 +	lsls r0, 16 +	lsrs r0, 16 +	ldr r1, [sp, 0x4] +	ands r1, r7 +	orrs r1, r0 +	str r1, [sp, 0x4] +	mov r0, sp +	bl LoadCompressedObjectPic +_08034DB4: +	ldr r1, [r6] +	ldr r1, [r1, 0x4] +	adds r1, r4, r1 +	strh r0, [r1, 0xA] +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r1, [r0, 0x4] +	mov r2, r9 +	mov r3, r8 +	subs r0, r2, r3 +	lsls r0, 2 +	adds r0, r1 +	ldrh r1, [r0, 0xA] +	ldr r0, =0x0000ffff +	cmp r1, r0 +	bne _08034DE0 +_08034DD4: +	movs r0, 0 +	b _08034EE8 +	.pool +_08034DE0: +	ldr r0, [r5, 0xC] +	ldrh r0, [r0, 0x4] +	bl IndexOfSpritePaletteTag +	ldr r6, =gUnknown_02022E10 +	ldr r1, [r6] +	ldr r1, [r1, 0x4] +	mov r4, r9 +	mov r3, r8 +	subs r2, r4, r3 +	lsls r4, r2, 2 +	adds r1, r4, r1 +	strb r0, [r1, 0x4] +	ldr r0, [r6] +	ldr r0, [r0, 0x4] +	adds r0, r4, r0 +	ldrb r0, [r0, 0x4] +	cmp r0, 0xFF +	bne _08034E14 +	ldr r0, [r5, 0xC] +	bl LoadSpritePalette +	ldr r1, [r6] +	ldr r1, [r1, 0x4] +	adds r1, r4, r1 +	strb r0, [r1, 0x4] +_08034E14: +	ldr r0, [r6] +	ldr r1, [r0, 0x4] +	adds r1, r4, r1 +	ldrb r0, [r5] +	lsls r0, 30 +	lsrs r0, 30 +	strb r0, [r1, 0x2] +	ldr r0, [r6] +	ldr r0, [r0, 0x4] +	adds r0, r4, r0 +	ldrb r1, [r5, 0x1] +	strb r1, [r0, 0x3] +	ldr r2, [r6] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	ldrh r1, [r5, 0x4] +	strh r1, [r0, 0xC] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	ldrh r1, [r5, 0x6] +	strh r1, [r0, 0xE] +	ldr r1, [r2, 0x4] +	adds r1, r4, r1 +	ldrb r0, [r5] +	lsls r0, 28 +	lsrs r0, 30 +	strb r0, [r1, 0x6] +	ldr r0, [r6] +	ldr r1, [r0, 0x4] +	adds r1, r4, r1 +	ldrb r0, [r5] +	lsls r0, 26 +	lsrs r0, 30 +	strb r0, [r1, 0x5] +	ldr r0, [r6] +	ldr r1, [r0, 0x4] +	adds r1, r4, r1 +	ldrb r0, [r5] +	lsrs r0, 6 +	strb r0, [r1, 0x7] +	ldr r0, [r6] +	ldr r0, [r0, 0x4] +	adds r0, r4, r0 +	ldrb r1, [r5, 0x2] +	strb r1, [r0, 0x8] +	ldrb r1, [r5] +	lsls r0, r1, 28 +	lsrs r0, 30 +	lsls r1, 26 +	lsrs r1, 30 +	bl sub_80355F8 +	ldr r1, [r6] +	ldr r1, [r1, 0x4] +	adds r1, r4, r1 +	strb r0, [r1, 0x9] +	ldr r2, [r6] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	ldr r1, [r5, 0x8] +	ldrh r1, [r1, 0x6] +	strh r1, [r0, 0x10] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	ldr r1, [r5, 0xC] +	ldrh r1, [r1, 0x4] +	strh r1, [r0, 0x12] +	ldr r0, [r2, 0x4] +	adds r0, r4, r0 +	movs r1, 0x1 +	strb r1, [r0] +	ldr r0, [r6] +	ldr r0, [r0, 0x4] +	adds r0, r4, r0 +	str r1, [r0, 0x14] +	movs r3, 0x1 +	ldrb r0, [r5, 0x1] +	cmp r3, r0 +	bcs _08034ECA +_08034EB2: +	ldr r0, [r6] +	ldr r2, [r0, 0x4] +	adds r2, r4, r2 +	ldr r1, [r2, 0x14] +	lsls r0, r1, 2 +	adds r0, r1 +	lsls r0, 1 +	str r0, [r2, 0x14] +	adds r3, 0x1 +	ldrb r2, [r5, 0x1] +	cmp r3, r2 +	bcc _08034EB2 +_08034ECA: +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	mov r3, r9 +	mov r4, r8 +	subs r1, r3, r4 +	lsls r1, 2 +	ldr r0, [r0, 0x4] +	adds r0, r1 +	bl sub_8034EFC +	mov r0, r8 +	mov r1, r10 +	bl sub_8035044 +	movs r0, 0x1 +_08034EE8: +	add sp, 0x8 +	pop {r3-r5} +	mov r8, r3 +	mov r9, r4 +	mov r10, r5 +	pop {r4-r7} +	pop {r1} +	bx r1 +	.pool +	thumb_func_end sub_8034D14 + +	thumb_func_start sub_8034EFC +sub_8034EFC: @ 8034EFC +	push {r4-r7,lr} +	mov r7, r10 +	mov r6, r9 +	mov r5, r8 +	push {r5-r7} +	sub sp, 0x4 +	adds r4, r0, 0 +	ldrb r5, [r4, 0x1] +	movs r0, 0xC +	ldrsh r7, [r4, r0] +	ldrb r0, [r4, 0x3] +	adds r0, 0x1 +	mov r8, r0 +	mov r1, sp +	movs r0, 0 +	strh r0, [r1] +	lsls r1, r5, 3 +	ldr r2, =gUnknown_030022F8 +	mov r9, r2 +	add r1, r9 +	mov r0, r8 +	lsls r2, r0, 2 +	movs r0, 0x80 +	lsls r0, 17 +	orrs r2, r0 +	mov r0, sp +	bl CpuSet +	movs r6, 0 +	ldrb r5, [r4, 0x1] +	cmp r6, r8 +	bcs _08034FCE +	movs r1, 0x3F +	mov r10, r1 +	movs r2, 0xD +	negs r2, r2 +	mov r9, r2 +_08034F46: +	lsls r0, r5, 3 +	ldr r1, =gMain +	adds r3, r0, r1 +	ldrh r1, [r4, 0xE] +	adds r0, r3, 0 +	adds r0, 0x38 +	strb r1, [r0] +	ldr r2, =0x000001ff +	adds r0, r2, 0 +	adds r1, r7, 0 +	ands r1, r0 +	ldrh r2, [r3, 0x3A] +	ldr r0, =0xfffffe00 +	ands r0, r2 +	orrs r0, r1 +	strh r0, [r3, 0x3A] +	ldrb r1, [r4, 0x6] +	movs r0, 0x39 +	adds r0, r3 +	mov r12, r0 +	lsls r1, 6 +	ldrb r2, [r0] +	mov r0, r10 +	ands r0, r2 +	orrs r0, r1 +	mov r1, r12 +	strb r0, [r1] +	ldrb r1, [r4, 0x5] +	movs r2, 0x3B +	adds r2, r3 +	mov r12, r2 +	lsls r1, 6 +	ldrb r2, [r2] +	mov r0, r10 +	ands r0, r2 +	orrs r0, r1 +	mov r1, r12 +	strb r0, [r1] +	ldrh r0, [r4, 0xA] +	ldr r1, =0x000003ff +	ands r1, r0 +	ldrh r2, [r3, 0x3C] +	ldr r0, =0xfffffc00 +	ands r0, r2 +	orrs r0, r1 +	strh r0, [r3, 0x3C] +	adds r3, 0x3D +	movs r0, 0x3 +	ldrb r1, [r4, 0x7] +	ands r1, r0 +	lsls r1, 2 +	ldrb r2, [r3] +	mov r0, r9 +	ands r0, r2 +	orrs r0, r1 +	strb r0, [r3] +	ldrb r2, [r4, 0x4] +	lsls r2, 4 +	movs r1, 0xF +	ands r0, r1 +	orrs r0, r2 +	strb r0, [r3] +	ldrb r0, [r4, 0x8] +	adds r7, r0 +	adds r6, 0x1 +	adds r5, 0x1 +	cmp r6, r8 +	bcc _08034F46 +_08034FCE: +	subs r5, 0x1 +	ldr r0, =gMain +	lsls r3, r5, 3 +	adds r3, r0 +	movs r2, 0xC +	ldrsh r1, [r4, r2] +	ldrb r0, [r4, 0x8] +	subs r1, r0 +	ldr r2, =0x000001ff +	adds r0, r2, 0 +	ands r1, r0 +	ldrh r2, [r3, 0x3A] +	ldr r0, =0xfffffe00 +	ands r0, r2 +	orrs r0, r1 +	strh r0, [r3, 0x3A] +	adds r2, r3, 0 +	adds r2, 0x39 +	ldrb r1, [r2] +	movs r0, 0x4 +	negs r0, r0 +	ands r0, r1 +	movs r1, 0x2 +	orrs r0, r1 +	strb r0, [r2] +	ldrb r0, [r4, 0x9] +	lsls r1, r0, 2 +	adds r1, r0 +	lsls r1, 1 +	ldrh r4, [r4, 0xA] +	adds r1, r4 +	ldr r2, =0x000003ff +	adds r0, r2, 0 +	ands r1, r0 +	ldrh r2, [r3, 0x3C] +	ldr r0, =0xfffffc00 +	ands r0, r2 +	orrs r0, r1 +	strh r0, [r3, 0x3C] +	add sp, 0x4 +	pop {r3-r5} +	mov r8, r3 +	mov r9, r4 +	mov r10, r5 +	pop {r4-r7} +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_8034EFC + +	thumb_func_start sub_8035044 +sub_8035044: @ 8035044 +	push {r4-r6,lr} +	adds r3, r0, 0 +	adds r4, r1, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r1, [r0] +	adds r6, r0, 0 +	cmp r1, 0 +	beq _080350A8 +	ldr r2, [r1, 0x4] +	lsls r1, r3, 3 +	subs r0, r1, r3 +	lsls r0, 2 +	adds r2, r0, r2 +	ldrb r0, [r2] +	adds r5, r1, 0 +	cmp r0, 0 +	beq _080350A8 +	str r4, [r2, 0x18] +	cmp r4, 0 +	bge _08035078 +	movs r2, 0x1 +	negs r4, r4 +	b _0803507A +	.pool +_08035078: +	movs r2, 0 +_0803507A: +	ldr r0, [r6] +	ldr r1, [r0, 0x4] +	subs r0, r5, r3 +	lsls r0, 2 +	adds r0, r1 +	ldrb r3, [r0, 0x2] +	cmp r3, 0x1 +	beq _0803509A +	cmp r3, 0x1 +	ble _08035092 +	cmp r3, 0x2 +	beq _080350A2 +_08035092: +	adds r1, r4, 0 +	bl sub_80350B0 +	b _080350A8 +_0803509A: +	adds r1, r4, 0 +	bl sub_8035164 +	b _080350A8 +_080350A2: +	adds r1, r4, 0 +	bl sub_80352C0 +_080350A8: +	pop {r4-r6} +	pop {r0} +	bx r0 +	thumb_func_end sub_8035044 + +	thumb_func_start sub_80350B0 +sub_80350B0: @ 80350B0 +	push {r4-r7,lr} +	mov r7, r10 +	mov r6, r9 +	mov r5, r8 +	push {r5-r7} +	sub sp, 0x4 +	mov r8, r0 +	mov r9, r1 +	str r2, [sp] +	ldr r5, [r0, 0x14] +	ldrb r7, [r0, 0x1] +	ldr r0, =gMain +	mov r10, r0 +	cmp r5, 0 +	beq _0803511A +	lsls r0, r7, 3 +	adds r0, 0x3C +	mov r1, r10 +	adds r6, r0, r1 +_080350D6: +	mov r0, r9 +	adds r1, r5, 0 +	bl __udivsi3 +	adds r4, r0, 0 +	adds r0, r4, 0 +	muls r0, r5 +	mov r2, r9 +	subs r2, r0 +	mov r9, r2 +	adds r0, r5, 0 +	movs r1, 0xA +	bl __udivsi3 +	adds r5, r0, 0 +	mov r1, r8 +	ldrb r0, [r1, 0x9] +	adds r1, r4, 0 +	muls r1, r0 +	mov r2, r8 +	ldrh r2, [r2, 0xA] +	adds r1, r2 +	ldr r2, =0x000003ff +	adds r0, r2, 0 +	ands r1, r0 +	ldrh r0, [r6] +	ldr r2, =0xfffffc00 +	ands r0, r2 +	orrs r0, r1 +	strh r0, [r6] +	adds r6, 0x8 +	adds r7, 0x1 +	cmp r5, 0 +	bne _080350D6 +_0803511A: +	ldr r0, [sp] +	cmp r0, 0 +	beq _08035140 +	lsls r0, r7, 3 +	add r0, r10 +	adds r0, 0x39 +	ldrb r2, [r0] +	movs r1, 0x4 +	negs r1, r1 +	ands r1, r2 +	strb r1, [r0] +	b _08035154 +	.pool +_08035140: +	lsls r2, r7, 3 +	add r2, r10 +	adds r2, 0x39 +	ldrb r1, [r2] +	movs r0, 0x4 +	negs r0, r0 +	ands r0, r1 +	movs r1, 0x2 +	orrs r0, r1 +	strb r0, [r2] +_08035154: +	add sp, 0x4 +	pop {r3-r5} +	mov r8, r3 +	mov r9, r4 +	mov r10, r5 +	pop {r4-r7} +	pop {r0} +	bx r0 +	thumb_func_end sub_80350B0 + +	thumb_func_start sub_8035164 +sub_8035164: @ 8035164 +	push {r4-r7,lr} +	mov r7, r10 +	mov r6, r9 +	mov r5, r8 +	push {r5-r7} +	sub sp, 0x4 +	adds r6, r0, 0 +	mov r8, r1 +	str r2, [sp] +	ldr r5, [r6, 0x14] +	ldr r3, =gUnknown_03000DD4 +	ldrb r0, [r6, 0x1] +	str r0, [r3] +	ldr r2, =gUnknown_03000DD8 +	movs r0, 0 +	str r0, [r2] +	ldr r1, =gUnknown_03000DDC +	subs r0, 0x1 +	str r0, [r1] +	adds r7, r3, 0 +	mov r10, r1 +	ldr r0, =gMain +	mov r9, r0 +	cmp r5, 0 +	beq _0803524C +_08035196: +	mov r0, r8 +	adds r1, r5, 0 +	bl __udivsi3 +	adds r4, r0, 0 +	adds r0, r4, 0 +	muls r0, r5 +	mov r1, r8 +	subs r1, r0 +	mov r8, r1 +	adds r0, r5, 0 +	movs r1, 0xA +	bl __udivsi3 +	adds r5, r0, 0 +	cmp r4, 0 +	bne _080351C8 +	mov r2, r10 +	ldr r1, [r2] +	movs r0, 0x1 +	negs r0, r0 +	cmp r1, r0 +	bne _080351C8 +	cmp r5, 0 +	bne _08035224 +_080351C8: +	ldr r2, [r7] +	lsls r2, 3 +	add r2, r9 +	ldrb r0, [r6, 0x9] +	adds r3, r4, 0 +	muls r3, r0 +	ldrh r4, [r6, 0xA] +	adds r3, r4 +	ldr r1, =0x000003ff +	adds r0, r1, 0 +	ands r3, r0 +	ldrh r0, [r2, 0x3C] +	ldr r4, =0xfffffc00 +	adds r1, r4, 0 +	ands r0, r1 +	orrs r0, r3 +	strh r0, [r2, 0x3C] +	adds r2, 0x39 +	ldrb r0, [r2] +	movs r1, 0x4 +	negs r1, r1 +	ands r0, r1 +	strb r0, [r2] +	mov r2, r10 +	ldr r1, [r2] +	movs r0, 0x1 +	negs r0, r0 +	cmp r1, r0 +	bne _0803523A +	ldr r4, =gUnknown_03000DD8 +	ldr r0, [r4] +	str r0, [r2] +	b _0803523A +	.pool +_08035224: +	ldr r0, [r7] +	lsls r0, 3 +	add r0, r9 +	adds r0, 0x39 +	ldrb r1, [r0] +	movs r2, 0x4 +	negs r2, r2 +	ands r1, r2 +	movs r2, 0x2 +	orrs r1, r2 +	strb r1, [r0] +_0803523A: +	ldr r0, [r7] +	adds r0, 0x1 +	str r0, [r7] +	ldr r4, =gUnknown_03000DD8 +	ldr r0, [r4] +	adds r0, 0x1 +	str r0, [r4] +	cmp r5, 0 +	bne _08035196 +_0803524C: +	ldr r0, [sp] +	cmp r0, 0 +	beq _08035298 +	ldr r1, [r7] +	lsls r1, 3 +	add r1, r9 +	adds r1, 0x39 +	ldrb r2, [r1] +	movs r0, 0x4 +	negs r0, r0 +	ands r0, r2 +	strb r0, [r1] +	ldr r3, [r7] +	lsls r3, 3 +	add r3, r9 +	movs r1, 0xC +	ldrsh r2, [r6, r1] +	mov r4, r10 +	ldr r0, [r4] +	subs r0, 0x1 +	ldrb r1, [r6, 0x8] +	muls r0, r1 +	adds r2, r0 +	ldr r1, =0x000001ff +	adds r0, r1, 0 +	ands r2, r0 +	ldrh r1, [r3, 0x3A] +	ldr r0, =0xfffffe00 +	ands r0, r1 +	orrs r0, r2 +	strh r0, [r3, 0x3A] +	b _080352AE +	.pool +_08035298: +	ldr r0, [r7] +	lsls r0, 3 +	add r0, r9 +	adds r0, 0x39 +	ldrb r2, [r0] +	movs r1, 0x4 +	negs r1, r1 +	ands r1, r2 +	movs r2, 0x2 +	orrs r1, r2 +	strb r1, [r0] +_080352AE: +	add sp, 0x4 +	pop {r3-r5} +	mov r8, r3 +	mov r9, r4 +	mov r10, r5 +	pop {r4-r7} +	pop {r0} +	bx r0 +	thumb_func_end sub_8035164 + +	thumb_func_start sub_80352C0 +sub_80352C0: @ 80352C0 +	push {r4-r7,lr} +	mov r7, r10 +	mov r6, r9 +	mov r5, r8 +	push {r5-r7} +	sub sp, 0xC +	mov r8, r0 +	mov r10, r1 +	str r2, [sp] +	ldr r5, [r0, 0x14] +	ldrb r3, [r0, 0x1] +	movs r0, 0 +	str r0, [sp, 0x4] +	mov r9, r0 +	cmp r5, 0 +	beq _0803535A +_080352E0: +	lsls r0, r3, 3 +	adds r1, r0, 0 +	adds r1, 0x39 +	ldr r2, =gMain +	adds r7, r1, r2 +	adds r0, 0x3C +	adds r6, r0, r2 +_080352EE: +	mov r0, r10 +	adds r1, r5, 0 +	str r3, [sp, 0x8] +	bl __udivsi3 +	adds r4, r0, 0 +	adds r0, r4, 0 +	muls r0, r5 +	mov r1, r10 +	subs r1, r0 +	mov r10, r1 +	adds r0, r5, 0 +	movs r1, 0xA +	bl __udivsi3 +	adds r5, r0, 0 +	ldr r3, [sp, 0x8] +	cmp r4, 0 +	bne _0803531E +	ldr r2, [sp, 0x4] +	cmp r2, 0 +	bne _0803531E +	cmp r5, 0 +	bne _080352E0 +_0803531E: +	movs r0, 0x1 +	str r0, [sp, 0x4] +	mov r1, r8 +	ldrb r0, [r1, 0x9] +	adds r2, r4, 0 +	muls r2, r0 +	ldrh r4, [r1, 0xA] +	adds r2, r4 +	ldr r1, =0x000003ff +	adds r0, r1, 0 +	ands r2, r0 +	ldrh r0, [r6] +	ldr r4, =0xfffffc00 +	adds r1, r4, 0 +	ands r0, r1 +	orrs r0, r2 +	strh r0, [r6] +	ldrb r0, [r7] +	movs r2, 0x4 +	negs r2, r2 +	adds r1, r2, 0 +	ands r0, r1 +	strb r0, [r7] +	adds r7, 0x8 +	adds r6, 0x8 +	adds r3, 0x1 +	movs r4, 0x1 +	add r9, r4 +	cmp r5, 0 +	bne _080352EE +_0803535A: +	mov r0, r8 +	ldrb r0, [r0, 0x3] +	cmp r9, r0 +	bge _0803538A +	ldr r1, =gMain +	movs r5, 0x4 +	negs r5, r5 +	movs r4, 0x2 +	lsls r0, r3, 3 +	adds r0, 0x39 +	adds r2, r0, r1 +_08035370: +	ldrb r1, [r2] +	adds r0, r5, 0 +	ands r0, r1 +	orrs r0, r4 +	strb r0, [r2] +	adds r2, 0x8 +	adds r3, 0x1 +	movs r1, 0x1 +	add r9, r1 +	mov r0, r8 +	ldrb r0, [r0, 0x3] +	cmp r9, r0 +	blt _08035370 +_0803538A: +	ldr r1, [sp] +	cmp r1, 0 +	beq _080353B0 +	lsls r0, r3, 3 +	ldr r2, =gMain +	adds r0, r2 +	adds r0, 0x39 +	ldrb r2, [r0] +	movs r1, 0x4 +	negs r1, r1 +	ands r1, r2 +	strb r1, [r0] +	b _080353C6 +	.pool +_080353B0: +	lsls r2, r3, 3 +	ldr r4, =gMain +	adds r2, r4 +	adds r2, 0x39 +	ldrb r1, [r2] +	movs r0, 0x4 +	negs r0, r0 +	ands r0, r1 +	movs r1, 0x2 +	orrs r0, r1 +	strb r0, [r2] +_080353C6: +	add sp, 0xC +	pop {r3-r5} +	mov r8, r3 +	mov r9, r4 +	mov r10, r5 +	pop {r4-r7} +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_80352C0 + +	thumb_func_start sub_80353DC +sub_80353DC: @ 80353DC +	push {r4-r7,lr} +	adds r4, r0, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	cmp r0, 0 +	beq _0803546E +	ldr r2, [r0, 0x4] +	lsls r1, r4, 3 +	subs r0, r1, r4 +	lsls r0, 2 +	adds r2, r0, r2 +	ldrb r0, [r2] +	adds r5, r1, 0 +	cmp r0, 0 +	beq _0803546E +	ldrb r3, [r2, 0x3] +	adds r0, r3, 0x1 +	ldrb r2, [r2, 0x1] +	cmp r0, 0 +	beq _08035426 +	ldr r1, =gMain +	movs r7, 0x4 +	negs r7, r7 +	movs r6, 0x2 +	adds r3, r0, 0 +	lsls r0, r2, 3 +	adds r0, 0x39 +	adds r2, r0, r1 +_08035414: +	ldrb r1, [r2] +	adds r0, r7, 0 +	ands r0, r1 +	orrs r0, r6 +	strb r0, [r2] +	subs r3, 0x1 +	adds r2, 0x8 +	cmp r3, 0 +	bne _08035414 +_08035426: +	adds r0, r4, 0 +	bl sub_8035570 +	cmp r0, 0 +	bne _08035442 +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r1, [r0, 0x4] +	subs r0, r5, r4 +	lsls r0, 2 +	adds r0, r1 +	ldrh r0, [r0, 0x10] +	bl FreeSpriteTilesByTag +_08035442: +	adds r0, r4, 0 +	bl sub_80355B4 +	cmp r0, 0 +	bne _0803545E +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r1, [r0, 0x4] +	subs r0, r5, r4 +	lsls r0, 2 +	adds r0, r1 +	ldrh r0, [r0, 0x12] +	bl FreeSpritePaletteByTag +_0803545E: +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r1, [r0, 0x4] +	subs r0, r5, r4 +	lsls r0, 2 +	adds r0, r1 +	movs r1, 0 +	strb r1, [r0] +_0803546E: +	pop {r4-r7} +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_80353DC + +	thumb_func_start sub_803547C +sub_803547C: @ 803547C +	push {r4-r7,lr} +	adds r4, r0, 0 +	adds r5, r1, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r1, [r0] +	adds r7, r0, 0 +	cmp r1, 0 +	beq _0803550C +	ldr r2, [r1, 0x4] +	lsls r1, r4, 3 +	subs r0, r1, r4 +	lsls r0, 2 +	adds r2, r0, r2 +	ldrb r0, [r2] +	adds r6, r1, 0 +	cmp r0, 0 +	beq _0803550C +	ldrb r3, [r2, 0x3] +	adds r1, r3, 0x1 +	ldrb r0, [r2, 0x1] +	cmp r5, 0 +	beq _080354D8 +	cmp r1, 0 +	beq _0803550C +	ldr r1, =gMain +	movs r5, 0x4 +	negs r5, r5 +	movs r4, 0x2 +	adds r3, 0x1 +	lsls r0, 3 +	adds r0, 0x39 +	adds r2, r0, r1 +_080354BC: +	ldrb r1, [r2] +	adds r0, r5, 0 +	ands r0, r1 +	orrs r0, r4 +	strb r0, [r2] +	subs r3, 0x1 +	adds r2, 0x8 +	cmp r3, 0 +	bne _080354BC +	b _0803550C +	.pool +_080354D8: +	cmp r1, 0 +	beq _080354FA +	ldr r1, =gMain +	movs r5, 0x4 +	negs r5, r5 +	adds r3, 0x1 +	lsls r0, 3 +	adds r0, 0x39 +	adds r2, r0, r1 +_080354EA: +	ldrb r1, [r2] +	adds r0, r5, 0 +	ands r0, r1 +	strb r0, [r2] +	subs r3, 0x1 +	adds r2, 0x8 +	cmp r3, 0 +	bne _080354EA +_080354FA: +	ldr r0, [r7] +	ldr r1, [r0, 0x4] +	subs r0, r6, r4 +	lsls r0, 2 +	adds r0, r1 +	ldr r1, [r0, 0x18] +	adds r0, r4, 0 +	bl sub_8035044 +_0803550C: +	pop {r4-r7} +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_803547C + +	thumb_func_start sub_8035518 +sub_8035518: @ 8035518 +	push {r4,r5,lr} +	lsls r0, 24 +	lsrs r4, r0, 24 +	movs r5, 0x40 +	movs r3, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r2, [r0] +	cmp r3, r2 +	bcs _0803555A +	ldr r1, [r0, 0x4] +_0803552E: +	ldrb r0, [r1] +	cmp r0, 0 +	bne _08035548 +	ldrb r0, [r1, 0x1] +	cmp r0, 0xFF +	beq _08035552 +	ldrb r0, [r1, 0x3] +	cmp r0, r4 +	bhi _08035552 +	ldrb r0, [r1, 0x1] +	b _0803556A +	.pool +_08035548: +	adds r0, r5, 0x1 +	ldrb r5, [r1, 0x3] +	adds r0, r5 +	lsls r0, 16 +	lsrs r5, r0, 16 +_08035552: +	adds r1, 0x1C +	adds r3, 0x1 +	cmp r3, r2 +	bcc _0803552E +_0803555A: +	adds r0, r5, r4 +	adds r0, 0x1 +	cmp r0, 0x80 +	bgt _08035568 +	lsls r0, r5, 24 +	lsrs r0, 24 +	b _0803556A +_08035568: +	movs r0, 0xFF +_0803556A: +	pop {r4,r5} +	pop {r1} +	bx r1 +	thumb_func_end sub_8035518 + +	thumb_func_start sub_8035570 +sub_8035570: @ 8035570 +	push {r4-r6,lr} +	adds r3, r0, 0 +	movs r2, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r4, [r0] +	cmp r2, r4 +	bcs _080355AC +	ldr r1, [r0, 0x4] +	lsls r0, r3, 3 +	subs r0, r3 +	lsls r0, 2 +	adds r5, r0, r1 +_0803558A: +	ldrb r0, [r1] +	cmp r0, 0 +	beq _080355A4 +	cmp r2, r3 +	beq _080355A4 +	ldrh r0, [r1, 0x10] +	ldrh r6, [r5, 0x10] +	cmp r0, r6 +	bne _080355A4 +	movs r0, 0x1 +	b _080355AE +	.pool +_080355A4: +	adds r1, 0x1C +	adds r2, 0x1 +	cmp r2, r4 +	bcc _0803558A +_080355AC: +	movs r0, 0 +_080355AE: +	pop {r4-r6} +	pop {r1} +	bx r1 +	thumb_func_end sub_8035570 + +	thumb_func_start sub_80355B4 +sub_80355B4: @ 80355B4 +	push {r4-r6,lr} +	adds r3, r0, 0 +	movs r2, 0 +	ldr r0, =gUnknown_02022E10 +	ldr r0, [r0] +	ldr r4, [r0] +	cmp r2, r4 +	bcs _080355F0 +	ldr r1, [r0, 0x4] +	lsls r0, r3, 3 +	subs r0, r3 +	lsls r0, 2 +	adds r5, r0, r1 +_080355CE: +	ldrb r0, [r1] +	cmp r0, 0 +	beq _080355E8 +	cmp r2, r3 +	beq _080355E8 +	ldrh r0, [r1, 0x12] +	ldrh r6, [r5, 0x12] +	cmp r0, r6 +	bne _080355E8 +	movs r0, 0x1 +	b _080355F2 +	.pool +_080355E8: +	adds r1, 0x1C +	adds r2, 0x1 +	cmp r2, r4 +	bcc _080355CE +_080355F0: +	movs r0, 0 +_080355F2: +	pop {r4-r6} +	pop {r1} +	bx r1 +	thumb_func_end sub_80355B4 + +	thumb_func_start sub_80355F8 +sub_80355F8: @ 80355F8 +	ldr r2, =gUnknown_082FF1C8 +	lsls r0, 2 +	adds r1, r0 +	adds r1, r2 +	ldrb r0, [r1] +	bx lr +	.pool +	thumb_func_end sub_80355F8 + +	thumb_func_start sub_8035608 +sub_8035608: @ 8035608 +	push {lr} +	bl ResetSpriteData +	ldr r0, =gUnknown_0831AC88 +	movs r1, 0 +	movs r2, 0 +	movs r3, 0 +	bl CreateSprite +	lsls r0, 24 +	lsrs r0, 24 +	ldr r2, =gSprites +	lsls r1, r0, 4 +	adds r1, r0 +	lsls r1, 2 +	adds r1, r2 +	adds r1, 0x3E +	ldrb r0, [r1] +	movs r2, 0x4 +	orrs r0, r2 +	strb r0, [r1] +	ldr r0, =sub_8035648 +	bl SetMainCallback2 +	pop {r0} +	bx r0 +	.pool +	thumb_func_end sub_8035608 + +	thumb_func_start sub_8035648 +sub_8035648: @ 8035648 +	push {lr} +	bl AnimateSprites +	bl BuildOamBuffer +	pop {r0} +	bx r0 +	thumb_func_end sub_8035648 + +	.align 2, 0 @ Don't pad with nop. diff --git a/asm/trade.s b/asm/trade.s index 10daff6b9..f576be122 100644 --- a/asm/trade.s +++ b/asm/trade.s @@ -7602,7 +7602,7 @@ sub_807B170: @ 807B170  	movs r0, 0x3  	bl SetBgTilemapBuffer  	bl DeactivateAllTextPrinters -	ldr r0, =gUnknown_08C00000 +	ldr r0, =gBattleTextboxTiles  	mov r10, r0  	movs r0, 0  	mov r9, r0 @@ -7611,7 +7611,7 @@ sub_807B170: @ 807B170  	movs r2, 0  	movs r3, 0  	bl copy_decompressed_tile_data_to_vram_autofree -	ldr r0, =gUnknown_08C00524 +	ldr r0, =gBattleTextboxTilemap  	mov r8, r0  	ldr r4, =0x0201c000  	adds r1, r4, 0 @@ -7621,7 +7621,7 @@ sub_807B170: @ 807B170  	adds r2, r5, 0  	movs r3, 0  	bl CopyToBgTilemapBuffer -	ldr r6, =gUnknown_08C004E0 +	ldr r6, =gBattleTextboxPalette  	adds r0, r6, 0  	movs r1, 0  	movs r2, 0x20 | 
