diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/battle_2.s | 909 | 
1 files changed, 0 insertions, 909 deletions
| diff --git a/asm/battle_2.s b/asm/battle_2.s index 8cd1e2926..c388077af 100644 --- a/asm/battle_2.s +++ b/asm/battle_2.s @@ -6,915 +6,6 @@  	.text -	thumb_func_start sub_8011B00 -sub_8011B00: @ 8011B00 -	push {r4-r7,lr} -	mov r7, r9 -	mov r6, r8 -	push {r6,r7} -	sub sp, 0x8 -	movs r0, 0 -	mov r9, r0 -	ldr r0, _08011B44 @ =gUnknown_02024A64 -	ldr r0, [r0] -	cmp r0, 0 -	beq _08011B18 -	b _08011D6E -_08011B18: -	ldr r0, _08011B48 @ =0x02000000 -	ldr r1, _08011B4C @ =0x00016058 -	adds r0, r1 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _08011BA2 -	movs r5, 0 -	ldr r1, _08011B50 @ =gUnknown_02024A68 -	adds r3, r1, 0 -	ldrb r2, [r1] -	cmp r5, r2 -	bge _08011B3E -	ldr r2, _08011B54 @ =gUnknown_02024A7A -_08011B32: -	adds r0, r5, r2 -	strb r5, [r0] -	adds r5, 0x1 -	ldrb r0, [r1] -	cmp r5, r0 -	blt _08011B32 -_08011B3E: -	movs r5, 0 -	b _08011B98 -	.align 2, 0 -_08011B44: .4byte gUnknown_02024A64 -_08011B48: .4byte 0x02000000 -_08011B4C: .4byte 0x00016058 -_08011B50: .4byte gUnknown_02024A68 -_08011B54: .4byte gUnknown_02024A7A -_08011B58: -	adds r4, r5, 0x1 -	mov r8, r4 -	ldrb r1, [r1] -	cmp r8, r1 -	bge _08011B96 -	ldr r6, _08011BC8 @ =gUnknown_02024A7A -	ldr r3, _08011BCC @ =gUnknown_02024A68 -	lsls r7, r5, 24 -_08011B68: -	adds r0, r5, r6 -	ldrb r0, [r0] -	adds r1, r4, r6 -	ldrb r1, [r1] -	movs r2, 0x1 -	str r3, [sp, 0x4] -	bl b_first_side -	lsls r0, 24 -	ldr r3, [sp, 0x4] -	cmp r0, 0 -	beq _08011B8C -	lsls r1, r4, 24 -	lsrs r1, 24 -	lsrs r0, r7, 24 -	bl sub_8012FBC -	ldr r3, [sp, 0x4] -_08011B8C: -	adds r4, 0x1 -	ldr r0, _08011BCC @ =gUnknown_02024A68 -	ldrb r0, [r0] -	cmp r4, r0 -	blt _08011B68 -_08011B96: -	mov r5, r8 -_08011B98: -	adds r1, r3, 0 -	ldrb r0, [r3] -	subs r0, 0x1 -	cmp r5, r0 -	blt _08011B58 -_08011BA2: -	ldr r0, _08011BD0 @ =0x02000000 -	ldr r1, _08011BD4 @ =0x000160e6 -	adds r4, r0, r1 -	ldrb r0, [r4] -	cmp r0, 0 -	bne _08011BD8 -	str r0, [sp] -	movs r0, 0 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0xFF -	bl sub_8018324 -	lsls r0, 24 -	cmp r0, 0 -	beq _08011BD8 -	movs r0, 0x1 -	strb r0, [r4] -	b _08011D6E -	.align 2, 0 -_08011BC8: .4byte gUnknown_02024A7A -_08011BCC: .4byte gUnknown_02024A68 -_08011BD0: .4byte 0x02000000 -_08011BD4: .4byte 0x000160e6 -_08011BD8: -	ldr r0, _08011D7C @ =0x02000000 -	ldr r3, _08011D80 @ =0x00016058 -	adds r2, r0, r3 -	ldr r1, _08011D84 @ =gUnknown_02024A68 -	ldrb r0, [r2] -	ldrb r1, [r1] -	cmp r0, r1 -	bcs _08011C28 -	ldr r5, _08011D88 @ =gUnknown_02024A7A -	adds r4, r2, 0 -_08011BEC: -	ldrb r0, [r4] -	adds r0, r5 -	ldrb r1, [r0] -	movs r0, 0 -	str r0, [sp] -	movs r2, 0 -	movs r3, 0 -	bl sub_8018324 -	lsls r0, 24 -	cmp r0, 0 -	beq _08011C0E -	mov r0, r9 -	adds r0, 0x1 -	lsls r0, 24 -	lsrs r0, 24 -	mov r9, r0 -_08011C0E: -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	mov r1, r9 -	cmp r1, 0 -	beq _08011C1C -	b _08011D6E -_08011C1C: -	ldr r1, _08011D84 @ =gUnknown_02024A68 -	lsls r0, 24 -	lsrs r0, 24 -	ldrb r1, [r1] -	cmp r0, r1 -	bcc _08011BEC -_08011C28: -	movs r0, 0 -	str r0, [sp] -	movs r0, 0x9 -	movs r1, 0 -	movs r2, 0 -	movs r3, 0 -	bl sub_8018324 -	lsls r0, 24 -	lsrs r0, 24 -	cmp r0, 0 -	beq _08011C42 -	b _08011D6E -_08011C42: -	str r0, [sp] -	movs r0, 0xB -	movs r1, 0 -	movs r2, 0 -	movs r3, 0 -	bl sub_8018324 -	lsls r0, 24 -	cmp r0, 0 -	beq _08011C58 -	b _08011D6E -_08011C58: -	ldr r0, _08011D7C @ =0x02000000 -	ldr r3, _08011D8C @ =0x000160f9 -	adds r2, r0, r3 -	ldr r0, _08011D84 @ =gUnknown_02024A68 -	ldrb r1, [r2] -	adds r3, r0, 0 -	ldrb r0, [r3] -	cmp r1, r0 -	bcs _08011CA8 -	ldr r5, _08011D88 @ =gUnknown_02024A7A -	adds r4, r2, 0 -_08011C6E: -	ldrb r0, [r4] -	adds r0, r5 -	ldrb r1, [r0] -	movs r0, 0 -	movs r2, 0 -	str r3, [sp, 0x4] -	bl sub_801A02C -	lsls r0, 24 -	ldr r3, [sp, 0x4] -	cmp r0, 0 -	beq _08011C90 -	mov r0, r9 -	adds r0, 0x1 -	lsls r0, 24 -	lsrs r0, 24 -	mov r9, r0 -_08011C90: -	ldrb r0, [r4] -	adds r0, 0x1 -	strb r0, [r4] -	mov r1, r9 -	cmp r1, 0 -	bne _08011D6E -	ldr r1, _08011D84 @ =gUnknown_02024A68 -	lsls r0, 24 -	lsrs r0, 24 -	ldrb r1, [r1] -	cmp r0, r1 -	bcc _08011C6E -_08011CA8: -	ldrb r0, [r3] -	cmp r0, 0 -	beq _08011CB6 -	adds r5, r0, 0 -_08011CB0: -	subs r5, 0x1 -	cmp r5, 0 -	bne _08011CB0 -_08011CB6: -	movs r5, 0 -	ldr r0, _08011D7C @ =0x02000000 -	mov r8, r5 -	ldr r3, _08011D90 @ =gUnknown_02024C60 -	ldr r1, _08011D94 @ =0x00016068 -	adds r2, r0, r1 -	movs r7, 0x6 -	ldr r6, _08011D98 @ =gUnknown_02024C18 -	movs r4, 0xFF -_08011CC8: -	strb r7, [r2] -	adds r1, r5, r6 -	ldrb r0, [r1] -	orrs r0, r4 -	strb r0, [r1] -	mov r0, r8 -	strh r0, [r3] -	adds r3, 0x2 -	adds r2, 0x1 -	adds r5, 0x1 -	cmp r5, 0x3 -	ble _08011CC8 -	movs r0, 0 -	bl sub_801365C -	bl sub_801377C -	ldr r0, _08011D7C @ =0x02000000 -	ldr r1, _08011D9C @ =gUnknown_02024C0C -	ldrb r1, [r1] -	ldr r2, _08011DA0 @ =0x000160a6 -	adds r0, r2 -	strb r1, [r0] -	ldr r1, _08011DA4 @ =gUnknown_030042D4 -	ldr r0, _08011DA8 @ =sub_8012324 -	str r0, [r1] -	bl sub_80156DC -	ldr r1, _08011DAC @ =gUnknown_02024D1E -	movs r2, 0 -	adds r0, r1, 0x7 -_08011D06: -	strb r2, [r0] -	subs r0, 0x1 -	cmp r0, r1 -	bge _08011D06 -	movs r5, 0 -	ldr r3, _08011D84 @ =gUnknown_02024A68 -	ldr r2, _08011D7C @ =0x02000000 -	ldr r6, _08011DB0 @ =gBattleMoveFlags -	ldrb r0, [r3] -	cmp r5, r0 -	bge _08011D36 -	ldr r0, _08011DB4 @ =gBattleMons -	movs r4, 0x9 -	negs r4, r4 -	adds r1, r0, 0 -	adds r1, 0x50 -_08011D26: -	ldr r0, [r1] -	ands r0, r4 -	str r0, [r1] -	adds r1, 0x58 -	adds r5, 0x1 -	ldrb r0, [r3] -	cmp r5, r0 -	blt _08011D26 -_08011D36: -	movs r1, 0xB0 -	lsls r1, 9 -	adds r0, r2, r1 -	movs r1, 0 -	strb r1, [r0] -	ldr r3, _08011DB8 @ =0x00016001 -	adds r0, r2, r3 -	strb r1, [r0] -	ldr r3, _08011DBC @ =0x00016110 -	adds r0, r2, r3 -	strb r1, [r0] -	adds r3, 0x1 -	adds r0, r2, r3 -	strb r1, [r0] -	ldr r3, _08011DC0 @ =0x0001600c -	adds r0, r2, r3 -	strb r1, [r0] -	adds r3, 0x4D -	adds r0, r2, r3 -	strb r1, [r0] -	subs r3, 0x4B -	adds r0, r2, r3 -	strb r1, [r0] -	strb r1, [r6] -	bl Random -	ldr r1, _08011DC4 @ =gUnknown_02024D1C -	strh r0, [r1] -_08011D6E: -	add sp, 0x8 -	pop {r3,r4} -	mov r8, r3 -	mov r9, r4 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08011D7C: .4byte 0x02000000 -_08011D80: .4byte 0x00016058 -_08011D84: .4byte gUnknown_02024A68 -_08011D88: .4byte gUnknown_02024A7A -_08011D8C: .4byte 0x000160f9 -_08011D90: .4byte gUnknown_02024C60 -_08011D94: .4byte 0x00016068 -_08011D98: .4byte gUnknown_02024C18 -_08011D9C: .4byte gUnknown_02024C0C -_08011DA0: .4byte 0x000160a6 -_08011DA4: .4byte gUnknown_030042D4 -_08011DA8: .4byte sub_8012324 -_08011DAC: .4byte gUnknown_02024D1E -_08011DB0: .4byte gBattleMoveFlags -_08011DB4: .4byte gBattleMons -_08011DB8: .4byte 0x00016001 -_08011DBC: .4byte 0x00016110 -_08011DC0: .4byte 0x0001600c -_08011DC4: .4byte gUnknown_02024D1C -	thumb_func_end sub_8011B00 - -	thumb_func_start bc_8013B1C -bc_8013B1C: @ 8011DC8 -	push {r4-r6,lr} -	ldr r0, _08011E60 @ =gUnknown_02024A64 -	ldr r0, [r0] -	cmp r0, 0 -	bne _08011E5A -	ldr r1, _08011E64 @ =gUnknown_030042D4 -	ldr r0, _08011E68 @ =sub_8011E8C -	str r0, [r1] -	ldr r3, _08011E6C @ =gUnknown_02024A68 -	ldr r1, _08011E70 @ =gUnknown_02024D1E -	movs r2, 0 -	adds r0, r1, 0x7 -_08011DE0: -	strb r2, [r0] -	subs r0, 0x1 -	cmp r0, r1 -	bge _08011DE0 -	movs r4, 0 -	ldrb r3, [r3] -	cmp r4, r3 -	bge _08011E32 -	ldr r5, _08011E74 @ =gBattleMons -	adds r6, r5, 0 -	adds r6, 0x4C -_08011DF6: -	movs r0, 0x58 -	adds r2, r4, 0 -	muls r2, r0 -	adds r1, r5, 0 -	adds r1, 0x50 -	adds r1, r2, r1 -	ldr r3, [r1] -	subs r0, 0x61 -	ands r3, r0 -	str r3, [r1] -	adds r2, r6 -	ldr r0, [r2] -	movs r1, 0x7 -	ands r0, r1 -	cmp r0, 0 -	beq _08011E28 -	movs r0, 0x80 -	lsls r0, 5 -	ands r3, r0 -	cmp r3, 0 -	beq _08011E28 -	lsls r0, r4, 24 -	lsrs r0, 24 -	bl b_cancel_multi_turn_move_maybe -_08011E28: -	adds r4, 0x1 -	ldr r0, _08011E6C @ =gUnknown_02024A68 -	ldrb r0, [r0] -	cmp r4, r0 -	blt _08011DF6 -_08011E32: -	ldr r0, _08011E78 @ =0x02000000 -	movs r2, 0xB0 -	lsls r2, 9 -	adds r1, r0, r2 -	movs r2, 0 -	strb r2, [r1] -	ldr r3, _08011E7C @ =0x00016001 -	adds r1, r0, r3 -	strb r2, [r1] -	ldr r3, _08011E80 @ =0x00016110 -	adds r1, r0, r3 -	strb r2, [r1] -	adds r3, 0x1 -	adds r1, r0, r3 -	strb r2, [r1] -	ldr r1, _08011E84 @ =0x0001600e -	adds r0, r1 -	strb r2, [r0] -	ldr r0, _08011E88 @ =gBattleMoveFlags -	strb r2, [r0] -_08011E5A: -	pop {r4-r6} -	pop {r0} -	bx r0 -	.align 2, 0 -_08011E60: .4byte gUnknown_02024A64 -_08011E64: .4byte gUnknown_030042D4 -_08011E68: .4byte sub_8011E8C -_08011E6C: .4byte gUnknown_02024A68 -_08011E70: .4byte gUnknown_02024D1E -_08011E74: .4byte gBattleMons -_08011E78: .4byte 0x02000000 -_08011E7C: .4byte 0x00016001 -_08011E80: .4byte 0x00016110 -_08011E84: .4byte 0x0001600e -_08011E88: .4byte gBattleMoveFlags -	thumb_func_end bc_8013B1C - -	thumb_func_start sub_8011E8C -sub_8011E8C: @ 8011E8C -	push {r4-r7,lr} -	mov r7, r10 -	mov r6, r9 -	mov r5, r8 -	push {r5-r7} -	movs r0, 0x1 -	bl sub_801365C -	ldr r0, _08011F3C @ =gUnknown_02024D26 -	ldrb r0, [r0] -	cmp r0, 0 -	bne _08011EBC -	bl sub_8015DFC -	lsls r0, 24 -	cmp r0, 0 -	beq _08011EB0 -	b _08011FEE -_08011EB0: -	bl sub_8016558 -	lsls r0, 24 -	cmp r0, 0 -	beq _08011EBC -	b _08011FEE -_08011EBC: -	bl sub_80173A4 -	lsls r0, 24 -	lsrs r1, r0, 24 -	cmp r1, 0 -	beq _08011ECA -	b _08011FEE -_08011ECA: -	ldr r5, _08011F40 @ =0x02000000 -	ldr r2, _08011F44 @ =0x00016059 -	adds r0, r5, r2 -	strb r1, [r0] -	bl sub_80170DC -	lsls r0, 24 -	lsrs r4, r0, 24 -	cmp r4, 0 -	beq _08011EE0 -	b _08011FEE -_08011EE0: -	movs r0, 0 -	bl sub_801365C -	ldr r2, _08011F48 @ =gUnknown_02024C6C -	ldr r0, [r2] -	ldr r1, _08011F4C @ =0xfffffdff -	ands r0, r1 -	ldr r1, _08011F50 @ =0xfff7ffff -	ands r0, r1 -	ldr r1, _08011F54 @ =0xffbfffff -	ands r0, r1 -	ldr r1, _08011F58 @ =0xffefffff -	ands r0, r1 -	str r0, [r2] -	ldr r3, _08011F5C @ =0x00016002 -	adds r0, r5, r3 -	strb r4, [r0] -	ldr r1, _08011F60 @ =0x000160a1 -	adds r0, r5, r1 -	strb r4, [r0] -	ldr r2, _08011F64 @ =0x0001600c -	adds r0, r5, r2 -	strb r4, [r0] -	ldr r0, _08011F68 @ =gBattleMoveDamage -	str r4, [r0] -	ldr r0, _08011F6C @ =gBattleMoveFlags -	strb r4, [r0] -	ldr r1, _08011F70 @ =gUnknown_02024D1E -	movs r2, 0 -	adds r0, r1, 0x4 -_08011F1C: -	strb r2, [r0] -	subs r0, 0x1 -	cmp r0, r1 -	bge _08011F1C -	ldr r0, _08011F3C @ =gUnknown_02024D26 -	ldrb r0, [r0] -	cmp r0, 0 -	beq _08011F80 -	ldr r1, _08011F74 @ =gUnknown_02024A7F -	movs r0, 0xC -	strb r0, [r1] -	ldr r1, _08011F78 @ =gUnknown_030042D4 -	ldr r0, _08011F7C @ =sub_80138F0 -	str r0, [r1] -	b _08011FEE -	.align 2, 0 -_08011F3C: .4byte gUnknown_02024D26 -_08011F40: .4byte 0x02000000 -_08011F44: .4byte 0x00016059 -_08011F48: .4byte gUnknown_02024C6C -_08011F4C: .4byte 0xfffffdff -_08011F50: .4byte 0xfff7ffff -_08011F54: .4byte 0xffbfffff -_08011F58: .4byte 0xffefffff -_08011F5C: .4byte 0x00016002 -_08011F60: .4byte 0x000160a1 -_08011F64: .4byte 0x0001600c -_08011F68: .4byte gBattleMoveDamage -_08011F6C: .4byte gBattleMoveFlags -_08011F70: .4byte gUnknown_02024D1E -_08011F74: .4byte gUnknown_02024A7F -_08011F78: .4byte gUnknown_030042D4 -_08011F7C: .4byte sub_80138F0 -_08011F80: -	ldr r1, _08011FFC @ =gUnknown_030042E0 -	ldrb r0, [r1, 0x13] -	cmp r0, 0xFE -	bhi _08011F8C -	adds r0, 0x1 -	strb r0, [r1, 0x13] -_08011F8C: -	movs r2, 0 -	ldr r4, _08012000 @ =gUnknown_02024A68 -	ldr r3, _08012004 @ =0x02000000 -	mov r9, r3 -	ldr r0, _08012008 @ =gUnknown_030042D4 -	mov r10, r0 -	ldr r1, _0801200C @ =gUnknown_02024C0C -	mov r12, r1 -	ldr r3, _08012010 @ =sub_8012324 -	mov r8, r3 -	ldrb r0, [r4] -	cmp r2, r0 -	bge _08011FC2 -	ldr r7, _08012014 @ =gUnknown_02024C18 -	movs r6, 0xFF -	movs r5, 0 -	ldr r3, _08012018 @ =gUnknown_02024C60 -_08011FAE: -	adds r1, r2, r7 -	ldrb r0, [r1] -	orrs r0, r6 -	strb r0, [r1] -	strh r5, [r3] -	adds r3, 0x2 -	adds r2, 0x1 -	ldrb r1, [r4] -	cmp r2, r1 -	blt _08011FAE -_08011FC2: -	ldr r0, _08012004 @ =0x02000000 -	movs r1, 0x6 -	movs r2, 0x3 -	ldr r3, _0801201C @ =0x0001606b -	adds r0, r3 -_08011FCC: -	strb r1, [r0] -	subs r0, 0x1 -	subs r2, 0x1 -	cmp r2, 0 -	bge _08011FCC -	mov r0, r12 -	ldrb r1, [r0] -	ldr r0, _08012020 @ =0x000160a6 -	add r0, r9 -	strb r1, [r0] -	mov r1, r8 -	mov r2, r10 -	str r1, [r2] -	bl Random -	ldr r1, _08012024 @ =gUnknown_02024D1C -	strh r0, [r1] -_08011FEE: -	pop {r3-r5} -	mov r8, r3 -	mov r9, r4 -	mov r10, r5 -	pop {r4-r7} -	pop {r0} -	bx r0 -	.align 2, 0 -_08011FFC: .4byte gUnknown_030042E0 -_08012000: .4byte gUnknown_02024A68 -_08012004: .4byte 0x02000000 -_08012008: .4byte gUnknown_030042D4 -_0801200C: .4byte gUnknown_02024C0C -_08012010: .4byte sub_8012324 -_08012014: .4byte gUnknown_02024C18 -_08012018: .4byte gUnknown_02024C60 -_0801201C: .4byte 0x0001606b -_08012020: .4byte 0x000160a6 -_08012024: .4byte gUnknown_02024D1C -	thumb_func_end sub_8011E8C - -	thumb_func_start sub_8012028 -sub_8012028: @ 8012028 -	push {r4-r7,lr} -	sub sp, 0x4 -	ldr r1, _0801204C @ =gBattleMons -	ldr r0, _08012050 @ =gUnknown_02024A60 -	ldrb r2, [r0] -	movs r0, 0x58 -	muls r0, r2 -	adds r1, r0, r1 -	ldrh r0, [r1, 0x2E] -	cmp r0, 0xAF -	bne _08012058 -	ldr r1, _08012054 @ =gEnigmaBerries -	lsls r0, r2, 3 -	subs r0, r2 -	lsls r0, 2 -	adds r0, r1 -	ldrb r2, [r0, 0x7] -	b _08012062 -	.align 2, 0 -_0801204C: .4byte gBattleMons -_08012050: .4byte gUnknown_02024A60 -_08012054: .4byte gEnigmaBerries -_08012058: -	ldrh r0, [r1, 0x2E] -	bl ItemId_GetHoldEffect -	lsls r0, 24 -	lsrs r2, r0, 24 -_08012062: -	ldr r1, _0801217C @ =gUnknown_02024C0B -	ldr r3, _08012180 @ =gUnknown_02024A60 -	ldrb r0, [r3] -	strb r0, [r1] -	cmp r2, 0x25 -	bne _08012070 -	b _080121F4 -_08012070: -	ldr r0, _08012184 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x2 -	ands r0, r1 -	cmp r0, 0 -	beq _0801207E -	b _080121F4 -_0801207E: -	ldr r1, _08012188 @ =gBattleMons -	ldrb r2, [r3] -	movs r0, 0x58 -	muls r0, r2 -	adds r0, r1 -	adds r0, 0x20 -	ldrb r0, [r0] -	cmp r0, 0x32 -	bne _08012092 -	b _080121F4 -_08012092: -	adds r0, r2, 0 -	bl battle_side_get_owner -	lsls r0, 24 -	lsrs r6, r0, 24 -	movs r5, 0 -	ldr r0, _0801218C @ =gUnknown_02024A68 -	ldrb r0, [r0] -	cmp r5, r0 -	bge _08012126 -	movs r7, 0 -_080120A8: -	lsrs r4, r7, 24 -	adds r0, r4, 0 -	bl battle_side_get_owner -	lsls r0, 24 -	lsrs r0, 24 -	cmp r6, r0 -	beq _080120CC -	ldr r1, _08012188 @ =gBattleMons -	movs r0, 0x58 -	muls r0, r5 -	adds r0, r1 -	adds r2, r0, 0 -	adds r2, 0x20 -	ldrb r0, [r2] -	cmp r0, 0x17 -	bne _080120CC -	b _080121FC -_080120CC: -	adds r0, r4, 0 -	bl battle_side_get_owner -	lsls r0, 24 -	lsrs r0, 24 -	cmp r6, r0 -	beq _08012116 -	ldr r3, _08012188 @ =gBattleMons -	ldr r0, _08012180 @ =gUnknown_02024A60 -	ldrb r0, [r0] -	movs r2, 0x58 -	muls r0, r2 -	adds r1, r0, r3 -	adds r0, r1, 0 -	adds r0, 0x20 -	ldrb r0, [r0] -	cmp r0, 0x1A -	beq _08012116 -	adds r0, r1, 0 -	adds r0, 0x21 -	ldrb r0, [r0] -	cmp r0, 0x2 -	beq _08012116 -	adds r0, r1, 0 -	adds r0, 0x22 -	ldrb r0, [r0] -	cmp r0, 0x2 -	beq _08012116 -	adds r0, r5, 0 -	muls r0, r2 -	adds r0, r3 -	adds r2, r0, 0 -	adds r2, 0x20 -	ldrb r0, [r2] -	cmp r0, 0x47 -	bne _08012116 -	b _08012220 -_08012116: -	movs r0, 0x80 -	lsls r0, 17 -	adds r7, r0 -	adds r5, 0x1 -	ldr r0, _0801218C @ =gUnknown_02024A68 -	ldrb r0, [r0] -	cmp r5, r0 -	blt _080120A8 -_08012126: -	ldr r4, _08012180 @ =gUnknown_02024A60 -	ldrb r1, [r4] -	movs r0, 0 -	str r0, [sp] -	movs r0, 0xF -	movs r2, 0x2A -	movs r3, 0 -	bl sub_8018324 -	lsls r0, 24 -	lsrs r5, r0, 24 -	cmp r5, 0 -	beq _080121A0 -	ldr r6, _08012188 @ =gBattleMons -	ldrb r0, [r4] -	movs r3, 0x58 -	muls r0, r3 -	adds r1, r0, r6 -	adds r0, r1, 0 -	adds r0, 0x21 -	ldrb r0, [r0] -	cmp r0, 0x8 -	beq _0801215E -	adds r0, r1, 0 -	adds r0, 0x22 -	ldrb r0, [r0] -	cmp r0, 0x8 -	bne _080121A0 -_0801215E: -	ldr r0, _08012190 @ =0x02000000 -	subs r1, r5, 0x1 -	ldr r2, _08012194 @ =0x00016003 -	adds r0, r2 -	strb r1, [r0] -	ldr r2, _08012198 @ =byte_2024C06 -	adds r0, r1, 0 -	muls r0, r3 -	adds r0, r6 -	adds r0, 0x20 -	ldrb r0, [r0] -	strb r0, [r2] -	ldr r1, _0801219C @ =gUnknown_02024D1E -	movs r0, 0x2 -	b _08012248 -	.align 2, 0 -_0801217C: .4byte gUnknown_02024C0B -_08012180: .4byte gUnknown_02024A60 -_08012184: .4byte gBattleTypeFlags -_08012188: .4byte gBattleMons -_0801218C: .4byte gUnknown_02024A68 -_08012190: .4byte 0x02000000 -_08012194: .4byte 0x00016003 -_08012198: .4byte byte_2024C06 -_0801219C: .4byte gUnknown_02024D1E -_080121A0: -	ldr r1, _080121D4 @ =gBattleMons -	ldr r0, _080121D8 @ =gUnknown_02024A60 -	ldrb r2, [r0] -	movs r0, 0x58 -	muls r0, r2 -	adds r1, 0x50 -	adds r0, r1 -	ldr r0, [r0] -	ldr r1, _080121DC @ =0x0400e000 -	ands r0, r1 -	cmp r0, 0 -	bne _080121CA -	ldr r1, _080121E0 @ =gUnknown_02024C98 -	lsls r0, r2, 2 -	adds r0, r1 -	ldr r0, [r0] -	movs r1, 0x80 -	lsls r1, 3 -	ands r0, r1 -	cmp r0, 0 -	beq _080121E8 -_080121CA: -	ldr r1, _080121E4 @ =gUnknown_02024D1E -	movs r0, 0 -	strb r0, [r1, 0x5] -	movs r0, 0x1 -	b _0801224A -	.align 2, 0 -_080121D4: .4byte gBattleMons -_080121D8: .4byte gUnknown_02024A60 -_080121DC: .4byte 0x0400e000 -_080121E0: .4byte gUnknown_02024C98 -_080121E4: .4byte gUnknown_02024D1E -_080121E8: -	ldr r0, _080121F8 @ =gBattleTypeFlags -	ldrh r1, [r0] -	movs r0, 0x10 -	ands r0, r1 -	cmp r0, 0 -	bne _08012244 -_080121F4: -	movs r0, 0 -	b _0801224A -	.align 2, 0 -_080121F8: .4byte gBattleTypeFlags -_080121FC: -	ldr r0, _08012210 @ =0x02000000 -	ldr r1, _08012214 @ =0x00016003 -	adds r0, r1 -	strb r5, [r0] -	ldr r1, _08012218 @ =byte_2024C06 -	ldrb r0, [r2] -	strb r0, [r1] -	ldr r1, _0801221C @ =gUnknown_02024D1E -	movs r0, 0x2 -	b _08012248 -	.align 2, 0 -_08012210: .4byte 0x02000000 -_08012214: .4byte 0x00016003 -_08012218: .4byte byte_2024C06 -_0801221C: .4byte gUnknown_02024D1E -_08012220: -	ldr r0, _08012234 @ =0x02000000 -	ldr r1, _08012238 @ =0x00016003 -	adds r0, r1 -	strb r5, [r0] -	ldr r1, _0801223C @ =byte_2024C06 -	ldrb r0, [r2] -	strb r0, [r1] -	ldr r1, _08012240 @ =gUnknown_02024D1E -	movs r0, 0x2 -	b _08012248 -	.align 2, 0 -_08012234: .4byte 0x02000000 -_08012238: .4byte 0x00016003 -_0801223C: .4byte byte_2024C06 -_08012240: .4byte gUnknown_02024D1E -_08012244: -	ldr r1, _08012254 @ =gUnknown_02024D1E -	movs r0, 0x1 -_08012248: -	strb r0, [r1, 0x5] -_0801224A: -	add sp, 0x4 -	pop {r4-r7} -	pop {r1} -	bx r1 -	.align 2, 0 -_08012254: .4byte gUnknown_02024D1E -	thumb_func_end sub_8012028 -  	thumb_func_start sub_8012258  sub_8012258: @ 8012258  	push {r4-r7,lr} | 
