	.include "asm/macros.inc"
	.include "constants/constants.inc"

	.syntax unified

	.text

	thumb_func_start sub_81562C4
sub_81562C4: @ 81562C4
	push {r4,r5,lr}
	lsls r0, 24
	lsrs r5, r0, 24
	ldr r4, =gUnknown_02039F34
	ldr r0, [r4]
	ldr r0, [r0, 0xC]
	movs r1, 0
	movs r2, 0x44
	bl memset
	movs r1, 0
	movs r3, 0x64
	adds r2, r4, 0
_081562DE:
	ldr r0, [r4]
	ldr r0, [r0, 0xC]
	adds r0, 0x5
	adds r0, r1
	strb r3, [r0]
	adds r1, 0x1
	cmp r1, 0x3
	ble _081562DE
	ldr r0, [r2]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	movs r1, 0
	strb r5, [r0]
	ldr r0, [r2]
	ldr r0, [r0, 0xC]
	adds r0, 0x40
	strb r1, [r0]
	ldr r0, [r2]
	ldr r2, [r0, 0xC]
	ldr r1, =gUnknown_02039E00
	adds r0, r2, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, 0x18
	adds r0, r1
	ldr r0, [r0]
	str r0, [r2, 0x14]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81562C4

	thumb_func_start sub_8156324
sub_8156324: @ 8156324
	push {r4-r6,lr}
	ldr r1, =gUnknown_02039F34
	ldr r0, [r1]
	ldr r0, [r0, 0xC]
	ldr r0, [r0, 0x14]
	cmp r0, 0
	beq _0815636A
	adds r4, r1, 0
	movs r5, 0
_08156336:
	ldr r0, [r4]
	ldr r2, [r0, 0xC]
	ldr r0, [r2, 0x14]
	movs r1, 0x1
	ands r0, r1
	cmp r0, 0
	beq _0815634A
	strb r5, [r2]
	bl sub_81563B0
_0815634A:
	ldr r0, [r4]
	ldr r1, [r0, 0xC]
	ldr r0, [r1, 0x14]
	lsrs r0, 1
	str r0, [r1, 0x14]
	ldrb r0, [r1, 0x10]
	adds r0, 0x1
	strb r0, [r1, 0x10]
	ldr r0, [r4]
	ldr r0, [r0, 0xC]
	strb r5, [r0, 0x4]
	ldr r0, [r4]
	ldr r0, [r0, 0xC]
	ldr r0, [r0, 0x14]
	cmp r0, 0
	bne _08156336
_0815636A:
	movs r6, 0x3
_0815636C:
	bl Random
	adds r5, r0, 0
	ands r5, r6
	ldr r4, =gUnknown_02039F34
	ldr r0, [r4]
	ldr r1, [r0, 0xC]
	adds r0, r1, 0x5
	adds r0, r5
	ldrb r3, [r0]
	movs r2, 0
	ldrb r1, [r1, 0x5]
	cmp r3, r1
	bcc _0815639E
	adds r1, r4, 0
_0815638A:
	adds r2, 0x1
	cmp r2, 0x3
	bgt _0815639E
	ldr r0, [r1]
	ldr r0, [r0, 0xC]
	adds r0, 0x5
	adds r0, r2
	ldrb r0, [r0]
	cmp r3, r0
	bcs _0815638A
_0815639E:
	cmp r2, 0x4
	bne _0815636C
	adds r0, r5, 0
	pop {r4-r6}
	pop {r1}
	bx r1
	.pool
	thumb_func_end sub_8156324

	thumb_func_start sub_81563B0
sub_81563B0: @ 81563B0
	push {r4-r7,lr}
	mov r7, r8
	push {r7}
	ldr r5, =gUnknown_02039F34
	ldr r0, [r5]
	ldr r0, [r0, 0xC]
	ldrb r0, [r0]
	adds r4, r5, 0
	cmp r0, 0x2
	beq _081564A0
	adds r7, r5, 0
	ldr r6, =gAIScriptPtr
	ldr r0, =gUnknown_02039E1E
	mov r8, r0
_081563CC:
	ldr r0, [r7]
	ldr r2, [r0, 0xC]
	ldrb r0, [r2]
	cmp r0, 0x1
	beq _08156426
	cmp r0, 0x1
	bgt _08156496
	cmp r0, 0
	bne _08156496
	ldr r1, =gContestAIs
	ldrb r0, [r2, 0x10]
	lsls r0, 2
	adds r0, r1
	ldr r0, [r0]
	str r0, [r6]
	ldrb r1, [r2, 0x4]
	lsls r1, 1
	adds r0, r2, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	add r1, r8
	ldrh r1, [r1]
	adds r0, r1, 0
	cmp r0, 0
	bne _08156418
	strh r0, [r2, 0x2]
	b _0815641A
	.pool
_08156418:
	strh r1, [r2, 0x2]
_0815641A:
	ldr r0, [r4]
	ldr r1, [r0, 0xC]
	ldrb r0, [r1]
	adds r0, 0x1
	strb r0, [r1]
	b _08156496
_08156426:
	ldrh r1, [r2, 0x2]
	cmp r1, 0
	beq _08156444
	ldr r1, =gUnknown_085CDD00
	ldr r0, [r6]
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r1
	ldr r0, [r0]
	bl _call_via_r0
	b _08156458
	.pool
_08156444:
	adds r0, r2, 0x5
	ldrb r2, [r2, 0x4]
	adds r0, r2
	strb r1, [r0]
	ldr r0, [r7]
	ldr r2, [r0, 0xC]
	ldrb r1, [r2, 0x9]
	movs r0, 0x1
	orrs r0, r1
	strb r0, [r2, 0x9]
_08156458:
	ldr r2, =gUnknown_02039F34
	ldr r0, [r2]
	ldr r3, [r0, 0xC]
	ldrb r1, [r3, 0x9]
	movs r0, 0x1
	ands r0, r1
	adds r4, r2, 0
	cmp r0, 0
	beq _08156496
	ldrb r0, [r3, 0x4]
	adds r0, 0x1
	movs r2, 0
	strb r0, [r3, 0x4]
	ldr r0, [r4]
	ldr r1, [r0, 0xC]
	ldrb r0, [r1, 0x4]
	cmp r0, 0x3
	bhi _08156484
	strb r2, [r1]
	b _0815648A
	.pool
_08156484:
	ldrb r0, [r1]
	adds r0, 0x1
	strb r0, [r1]
_0815648A:
	ldr r0, [r4]
	ldr r2, [r0, 0xC]
	ldrb r1, [r2, 0x9]
	movs r0, 0xFE
	ands r0, r1
	strb r0, [r2, 0x9]
_08156496:
	ldr r0, [r5]
	ldr r0, [r0, 0xC]
	ldrb r0, [r0]
	cmp r0, 0x2
	bne _081563CC
_081564A0:
	pop {r3}
	mov r8, r3
	pop {r4-r7}
	pop {r0}
	bx r0
	thumb_func_end sub_81563B0

	thumb_func_start sub_81564AC
sub_81564AC: @ 81564AC
	push {lr}
	lsls r0, 24
	lsrs r2, r0, 24
	movs r1, 0
	ldr r3, =gUnknown_02039F34
	ldr r0, [r3]
	ldr r0, [r0, 0x8]
	b _081564CC
	.pool
_081564C0:
	adds r1, 0x1
	cmp r1, 0x3
	bgt _081564D2
	ldr r0, [r3]
	ldr r0, [r0, 0x8]
	adds r0, r1
_081564CC:
	ldrb r0, [r0]
	cmp r0, r2
	bne _081564C0
_081564D2:
	lsls r0, r1, 24
	lsrs r0, 24
	pop {r1}
	bx r1
	thumb_func_end sub_81564AC

	thumb_func_start sub_81564DC
sub_81564DC: @ 81564DC
	push {r4,lr}
	ldr r3, =gUnknown_02039F34
	ldr r0, [r3]
	ldr r0, [r0, 0xC]
	adds r1, r0, 0x5
	ldrb r0, [r0, 0x4]
	adds r1, r0
	ldr r2, =gAIScriptPtr
	ldr r0, [r2]
	ldrb r0, [r0, 0x1]
	lsls r0, 24
	asrs r0, 24
	ldrb r1, [r1]
	adds r0, r1
	lsls r0, 16
	lsrs r4, r0, 16
	asrs r0, 16
	cmp r0, 0xFF
	ble _08156510
	movs r4, 0xFF
	b _08156516
	.pool
_08156510:
	cmp r0, 0
	bge _08156516
	movs r4, 0
_08156516:
	ldr r0, [r3]
	ldr r1, [r0, 0xC]
	adds r0, r1, 0x5
	ldrb r1, [r1, 0x4]
	adds r0, r1
	strb r4, [r0]
	ldr r0, [r2]
	adds r0, 0x2
	str r0, [r2]
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_81564DC

	thumb_func_start sub_8156530
sub_8156530: @ 8156530
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r0, [r0]
	ldrb r0, [r0, 0x1]
	strh r0, [r1, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156530

	thumb_func_start sub_8156550
sub_8156550: @ 8156550
	push {lr}
	bl sub_8156530
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _0815658C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156590
	.pool
_0815658C:
	adds r0, r2, 0x5
	str r0, [r3]
_08156590:
	pop {r0}
	bx r0
	thumb_func_end sub_8156550

	thumb_func_start sub_8156594
sub_8156594: @ 8156594
	push {lr}
	bl sub_8156530
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _081565D0
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081565D4
	.pool
_081565D0:
	adds r0, r2, 0x5
	str r0, [r3]
_081565D4:
	pop {r0}
	bx r0
	thumb_func_end sub_8156594

	thumb_func_start sub_81565D8
sub_81565D8: @ 81565D8
	push {lr}
	bl sub_8156530
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08156614
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156618
	.pool
_08156614:
	adds r0, r2, 0x5
	str r0, [r3]
_08156618:
	pop {r0}
	bx r0
	thumb_func_end sub_81565D8

	thumb_func_start sub_815661C
sub_815661C: @ 815661C
	push {lr}
	bl sub_8156530
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08156658
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815665C
	.pool
_08156658:
	adds r0, r2, 0x5
	str r0, [r3]
_0815665C:
	pop {r0}
	bx r0
	thumb_func_end sub_815661C

	thumb_func_start sub_8156660
sub_8156660: @ 8156660
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r0, [r0]
	ldrb r0, [r0, 0x13]
	lsls r0, 24
	asrs r0, 24
	strh r0, [r1, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156660

	thumb_func_start sub_8156684
sub_8156684: @ 8156684
	push {lr}
	bl sub_8156660
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _081566C0
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081566C4
	.pool
_081566C0:
	adds r0, r2, 0x5
	str r0, [r3]
_081566C4:
	pop {r0}
	bx r0
	thumb_func_end sub_8156684

	thumb_func_start sub_81566C8
sub_81566C8: @ 81566C8
	push {lr}
	bl sub_8156660
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08156704
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156708
	.pool
_08156704:
	adds r0, r2, 0x5
	str r0, [r3]
_08156708:
	pop {r0}
	bx r0
	thumb_func_end sub_81566C8

	thumb_func_start sub_815670C
sub_815670C: @ 815670C
	push {lr}
	bl sub_8156660
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08156748
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815674C
	.pool
_08156748:
	adds r0, r2, 0x5
	str r0, [r3]
_0815674C:
	pop {r0}
	bx r0
	thumb_func_end sub_815670C

	thumb_func_start sub_8156750
sub_8156750: @ 8156750
	push {lr}
	bl sub_8156660
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _0815678C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156790
	.pool
_0815678C:
	adds r0, r2, 0x5
	str r0, [r3]
_08156790:
	pop {r0}
	bx r0
	thumb_func_end sub_8156750

	thumb_func_start sub_8156794
sub_8156794: @ 8156794
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r0, [r0, 0x8]
	adds r1, r2, 0
	adds r1, 0x41
	ldrb r1, [r1]
	adds r0, r1
	ldrb r0, [r0]
	strh r0, [r2, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156794

	thumb_func_start sub_81567BC
sub_81567BC: @ 81567BC
	push {lr}
	bl sub_8156794
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _081567F8
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081567FC
	.pool
_081567F8:
	adds r0, r2, 0x5
	str r0, [r3]
_081567FC:
	pop {r0}
	bx r0
	thumb_func_end sub_81567BC

	thumb_func_start sub_8156800
sub_8156800: @ 8156800
	push {lr}
	bl sub_8156794
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _0815683C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156840
	.pool
_0815683C:
	adds r0, r2, 0x5
	str r0, [r3]
_08156840:
	pop {r0}
	bx r0
	thumb_func_end sub_8156800

	thumb_func_start sub_8156844
sub_8156844: @ 8156844
	push {lr}
	bl sub_8156794
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08156880
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156884
	.pool
_08156880:
	adds r0, r2, 0x5
	str r0, [r3]
_08156884:
	pop {r0}
	bx r0
	thumb_func_end sub_8156844

	thumb_func_start sub_8156888
sub_8156888: @ 8156888
	push {lr}
	bl sub_8156794
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _081568C4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081568C8
	.pool
_081568C4:
	adds r0, r2, 0x5
	str r0, [r3]
_081568C8:
	pop {r0}
	bx r0
	thumb_func_end sub_8156888

	thumb_func_start sub_81568CC
sub_81568CC: @ 81568CC
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r4, [r0, 0xC]
	adds r1, r4, 0
	adds r1, 0x41
	ldrb r1, [r1]
	ldr r2, [r0, 0x4]
	lsls r0, r1, 3
	subs r0, r1
	lsls r0, 2
	adds r0, r2
	ldrb r0, [r0, 0xD]
	lsls r0, 24
	asrs r0, 24
	movs r1, 0xA
	bl __divsi3
	lsls r0, 24
	asrs r0, 24
	strh r0, [r4, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81568CC

	thumb_func_start sub_815690C
sub_815690C: @ 815690C
	push {lr}
	bl sub_81568CC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _08156948
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815694C
	.pool
_08156948:
	adds r0, r2, 0x5
	str r0, [r3]
_0815694C:
	pop {r0}
	bx r0
	thumb_func_end sub_815690C

	thumb_func_start sub_8156950
sub_8156950: @ 8156950
	push {lr}
	bl sub_81568CC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _0815698C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156990
	.pool
_0815698C:
	adds r0, r2, 0x5
	str r0, [r3]
_08156990:
	pop {r0}
	bx r0
	thumb_func_end sub_8156950

	thumb_func_start sub_8156994
sub_8156994: @ 8156994
	push {lr}
	bl sub_81568CC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _081569D0
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081569D4
	.pool
_081569D0:
	adds r0, r2, 0x5
	str r0, [r3]
_081569D4:
	pop {r0}
	bx r0
	thumb_func_end sub_8156994

	thumb_func_start sub_81569D8
sub_81569D8: @ 81569D8
	push {lr}
	bl sub_81568CC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08156A14
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156A18
	.pool
_08156A14:
	adds r0, r2, 0x5
	str r0, [r3]
_08156A18:
	pop {r0}
	bx r0
	thumb_func_end sub_81569D8

	thumb_func_start sub_8156A1C
sub_8156A1C: @ 8156A1C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r3, [r0, 0xC]
	adds r1, r3, 0
	adds r1, 0x41
	ldrb r1, [r1]
	ldr r2, [r0, 0x4]
	lsls r0, r1, 3
	subs r0, r1
	lsls r0, 2
	adds r0, r2
	ldrh r0, [r0, 0x4]
	strh r0, [r3, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156A1C

	thumb_func_start sub_8156A48
sub_8156A48: @ 8156A48
	push {r4,r5,lr}
	bl sub_8156A1C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	bge _08156A8C
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156A90
	.pool
_08156A8C:
	adds r0, r3, 0x6
	str r0, [r4]
_08156A90:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156A48

	thumb_func_start sub_8156A98
sub_8156A98: @ 8156A98
	push {r4,r5,lr}
	bl sub_8156A1C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	ble _08156ADC
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156AE0
	.pool
_08156ADC:
	adds r0, r3, 0x6
	str r0, [r4]
_08156AE0:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156A98

	thumb_func_start sub_8156AE8
sub_8156AE8: @ 8156AE8
	push {r4,r5,lr}
	bl sub_8156A1C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	bne _08156B2C
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156B30
	.pool
_08156B2C:
	adds r0, r3, 0x6
	str r0, [r4]
_08156B30:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156AE8

	thumb_func_start sub_8156B38
sub_8156B38: @ 8156B38
	push {r4,r5,lr}
	bl sub_8156A1C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	beq _08156B7C
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156B80
	.pool
_08156B7C:
	adds r0, r3, 0x6
	str r0, [r4]
_08156B80:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156B38

	thumb_func_start sub_8156B88
sub_8156B88: @ 8156B88
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r1, =gUnknown_02039F00
	adds r0, r2, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 1
	adds r0, r1
	ldrh r0, [r0]
	strh r0, [r2, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156B88

	thumb_func_start sub_8156BB4
sub_8156BB4: @ 8156BB4
	push {r4,r5,lr}
	bl sub_8156B88
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	bge _08156BF8
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156BFC
	.pool
_08156BF8:
	adds r0, r3, 0x6
	str r0, [r4]
_08156BFC:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156BB4

	thumb_func_start sub_8156C04
sub_8156C04: @ 8156C04
	push {r4,r5,lr}
	bl sub_8156B88
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	ble _08156C48
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156C4C
	.pool
_08156C48:
	adds r0, r3, 0x6
	str r0, [r4]
_08156C4C:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156C04

	thumb_func_start sub_8156C54
sub_8156C54: @ 8156C54
	push {r4,r5,lr}
	bl sub_8156B88
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	bne _08156C98
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156C9C
	.pool
_08156C98:
	adds r0, r3, 0x6
	str r0, [r4]
_08156C9C:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156C54

	thumb_func_start sub_8156CA4
sub_8156CA4: @ 8156CA4
	push {r4,r5,lr}
	bl sub_8156B88
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3]
	ldrb r0, [r3, 0x1]
	lsls r0, 8
	orrs r1, r0
	movs r5, 0x18
	ldrsh r0, [r2, r5]
	lsls r1, 16
	asrs r1, 16
	cmp r0, r1
	beq _08156CE8
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08156CEC
	.pool
_08156CE8:
	adds r0, r3, 0x6
	str r0, [r4]
_08156CEC:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8156CA4

	thumb_func_start sub_8156CF4
sub_8156CF4: @ 8156CF4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r0, =gUnknown_02039F2C
	ldrh r0, [r0]
	strh r0, [r1, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156CF4

	thumb_func_start sub_8156D18
sub_8156D18: @ 8156D18
	push {lr}
	bl sub_8156CF4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08156D54
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156D58
	.pool
_08156D54:
	adds r0, r2, 0x5
	str r0, [r3]
_08156D58:
	pop {r0}
	bx r0
	thumb_func_end sub_8156D18

	thumb_func_start sub_8156D5C
sub_8156D5C: @ 8156D5C
	push {lr}
	bl sub_8156CF4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08156D98
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156D9C
	.pool
_08156D98:
	adds r0, r2, 0x5
	str r0, [r3]
_08156D9C:
	pop {r0}
	bx r0
	thumb_func_end sub_8156D5C

	thumb_func_start sub_8156DA0
sub_8156DA0: @ 8156DA0
	push {r4,lr}
	ldr r2, =gUnknown_02039E00
	ldr r4, =gUnknown_02039F34
	ldr r0, [r4]
	ldr r0, [r0, 0xC]
	ldrb r1, [r0, 0x4]
	lsls r1, 1
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r0, [r1]
	bl sub_80DD9F0
	ldr r1, [r4]
	ldr r1, [r1, 0xC]
	lsls r0, 24
	asrs r0, 24
	strh r0, [r1, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8156DA0

	thumb_func_start sub_8156DE4
sub_8156DE4: @ 8156DE4
	push {r4,lr}
	bl sub_8156DA0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	movs r4, 0x18
	ldrsh r1, [r0, r4]
	movs r0, 0
	ldrsb r0, [r2, r0]
	cmp r1, r0
	bge _08156E20
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156E24
	.pool
_08156E20:
	adds r0, r2, 0x5
	str r0, [r3]
_08156E24:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_8156DE4

	thumb_func_start sub_8156E2C
sub_8156E2C: @ 8156E2C
	push {r4,lr}
	bl sub_8156DA0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	movs r4, 0x18
	ldrsh r1, [r0, r4]
	movs r0, 0
	ldrsb r0, [r2, r0]
	cmp r1, r0
	ble _08156E68
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156E6C
	.pool
_08156E68:
	adds r0, r2, 0x5
	str r0, [r3]
_08156E6C:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_8156E2C

	thumb_func_start sub_8156E74
sub_8156E74: @ 8156E74
	push {r4,lr}
	bl sub_8156DA0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	movs r4, 0x18
	ldrsh r1, [r0, r4]
	movs r0, 0
	ldrsb r0, [r2, r0]
	cmp r1, r0
	bne _08156EB0
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156EB4
	.pool
_08156EB0:
	adds r0, r2, 0x5
	str r0, [r3]
_08156EB4:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_8156E74

	thumb_func_start sub_8156EBC
sub_8156EBC: @ 8156EBC
	push {r4,lr}
	bl sub_8156DA0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	movs r4, 0x18
	ldrsh r1, [r0, r4]
	movs r0, 0
	ldrsb r0, [r2, r0]
	cmp r1, r0
	beq _08156EF8
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156EFC
	.pool
_08156EF8:
	adds r0, r2, 0x5
	str r0, [r3]
_08156EFC:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_8156EBC

	thumb_func_start sub_8156F04
sub_8156F04: @ 8156F04
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r3, [r0, 0xC]
	ldrb r1, [r3, 0x4]
	lsls r1, 1
	adds r0, r3, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r0, [r1]
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	strh r0, [r3, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156F04

	thumb_func_start sub_8156F44
sub_8156F44: @ 8156F44
	push {lr}
	bl sub_8156F04
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08156F80
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156F84
	.pool
_08156F80:
	adds r0, r2, 0x5
	str r0, [r3]
_08156F84:
	pop {r0}
	bx r0
	thumb_func_end sub_8156F44

	thumb_func_start sub_8156F88
sub_8156F88: @ 8156F88
	push {lr}
	bl sub_8156F04
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08156FC4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08156FC8
	.pool
_08156FC4:
	adds r0, r2, 0x5
	str r0, [r3]
_08156FC8:
	pop {r0}
	bx r0
	thumb_func_end sub_8156F88

	thumb_func_start sub_8156FCC
sub_8156FCC: @ 8156FCC
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r3, [r0, 0xC]
	ldrb r1, [r3, 0x4]
	lsls r1, 1
	adds r0, r3, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r0, [r1]
	ldr r2, =gContestEffects
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r2
	ldrb r0, [r0]
	strh r0, [r3, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	bx lr
	.pool
	thumb_func_end sub_8156FCC

	thumb_func_start sub_8157018
sub_8157018: @ 8157018
	push {lr}
	bl sub_8156FCC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08157054
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157058
	.pool
_08157054:
	adds r0, r2, 0x5
	str r0, [r3]
_08157058:
	pop {r0}
	bx r0
	thumb_func_end sub_8157018

	thumb_func_start sub_815705C
sub_815705C: @ 815705C
	push {lr}
	bl sub_8156FCC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08157098
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815709C
	.pool
_08157098:
	adds r0, r2, 0x5
	str r0, [r3]
_0815709C:
	pop {r0}
	bx r0
	thumb_func_end sub_815705C

	thumb_func_start sub_81570A0
sub_81570A0: @ 81570A0
	push {r4-r7,lr}
	ldr r2, =gUnknown_02039E00
	ldr r5, =gUnknown_02039F34
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	ldrb r0, [r1, 0x4]
	lsls r0, 1
	adds r1, 0x41
	ldrb r1, [r1]
	lsls r1, 6
	adds r0, r1
	adds r2, 0x1E
	adds r0, r2
	ldrh r0, [r0]
	ldr r3, =gContestEffects
	ldr r4, =gContestMoves
	lsls r0, 3
	adds r0, r4
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r3
	ldrb r7, [r0, 0x1]
	movs r6, 0
	ldr r0, =gAIScriptPtr
	mov r12, r0
	adds r1, r2
_081570D4:
	ldrh r0, [r1]
	cmp r0, 0
	beq _081570EA
	lsls r0, 3
	adds r0, r4
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r3
	ldrb r0, [r0, 0x1]
	cmp r7, r0
	bcc _081570F2
_081570EA:
	adds r1, 0x2
	adds r6, 0x1
	cmp r6, 0x3
	ble _081570D4
_081570F2:
	cmp r6, 0x4
	bne _08157114
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	movs r0, 0x1
	b _0815711A
	.pool
_08157114:
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	movs r0, 0
_0815711A:
	strh r0, [r1, 0x18]
	mov r1, r12
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r7}
	pop {r0}
	bx r0
	thumb_func_end sub_81570A0

	thumb_func_start sub_815712C
sub_815712C: @ 815712C
	push {lr}
	bl sub_81570A0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157164
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815716C
	.pool
_08157164:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_0815716C:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_815712C

	thumb_func_start sub_8157174
sub_8157174: @ 8157174
	push {r4-r7,lr}
	ldr r2, =gUnknown_02039E00
	ldr r5, =gUnknown_02039F34
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	ldrb r0, [r1, 0x4]
	lsls r0, 1
	adds r1, 0x41
	ldrb r1, [r1]
	lsls r1, 6
	adds r0, r1
	adds r2, 0x1E
	adds r0, r2
	ldrh r0, [r0]
	ldr r3, =gContestEffects
	ldr r4, =gContestMoves
	lsls r0, 3
	adds r0, r4
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r3
	ldrb r7, [r0, 0x2]
	movs r6, 0
	ldr r0, =gAIScriptPtr
	mov r12, r0
	adds r1, r2
_081571A8:
	ldrh r0, [r1]
	cmp r0, 0
	beq _081571BE
	lsls r0, 3
	adds r0, r4
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r3
	ldrb r0, [r0, 0x2]
	cmp r7, r0
	bcc _081571C6
_081571BE:
	adds r1, 0x2
	adds r6, 0x1
	cmp r6, 0x3
	ble _081571A8
_081571C6:
	cmp r6, 0x4
	bne _081571E8
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	movs r0, 0x1
	b _081571EE
	.pool
_081571E8:
	ldr r0, [r5]
	ldr r1, [r0, 0xC]
	movs r0, 0
_081571EE:
	strh r0, [r1, 0x18]
	mov r1, r12
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r7}
	pop {r0}
	bx r0
	thumb_func_end sub_8157174

	thumb_func_start sub_8157200
sub_8157200: @ 8157200
	push {lr}
	bl sub_8157174
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157238
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157240
	.pool
_08157238:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x5
	str r0, [r1]
_08157240:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157200

	thumb_func_start sub_8157248
sub_8157248: @ 8157248
	push {r4,lr}
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r4, [r0, 0xC]
	ldrb r1, [r4, 0x4]
	lsls r1, 1
	adds r0, r4, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r0, [r1]
	ldr r2, =gContestEffects
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r2
	ldrb r0, [r0, 0x1]
	movs r1, 0xA
	bl __udivsi3
	lsls r0, 24
	lsrs r0, 24
	strh r0, [r4, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157248

	thumb_func_start sub_81572A4
sub_81572A4: @ 81572A4
	push {lr}
	bl sub_8157248
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _081572E0
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081572E4
	.pool
_081572E0:
	adds r0, r2, 0x5
	str r0, [r3]
_081572E4:
	pop {r0}
	bx r0
	thumb_func_end sub_81572A4

	thumb_func_start sub_81572E8
sub_81572E8: @ 81572E8
	push {lr}
	bl sub_8157248
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08157324
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157328
	.pool
_08157324:
	adds r0, r2, 0x5
	str r0, [r3]
_08157328:
	pop {r0}
	bx r0
	thumb_func_end sub_81572E8

	thumb_func_start sub_815732C
sub_815732C: @ 815732C
	push {lr}
	bl sub_8157248
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08157368
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815736C
	.pool
_08157368:
	adds r0, r2, 0x5
	str r0, [r3]
_0815736C:
	pop {r0}
	bx r0
	thumb_func_end sub_815732C

	thumb_func_start sub_8157370
sub_8157370: @ 8157370
	push {lr}
	bl sub_8157248
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _081573AC
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081573B0
	.pool
_081573AC:
	adds r0, r2, 0x5
	str r0, [r3]
_081573B0:
	pop {r0}
	bx r0
	thumb_func_end sub_8157370

	thumb_func_start sub_81573B4
sub_81573B4: @ 81573B4
	push {r4,lr}
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r4, [r0, 0xC]
	ldrb r1, [r4, 0x4]
	lsls r1, 1
	adds r0, r4, 0
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r0, [r1]
	ldr r2, =gContestEffects
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r2
	ldrb r0, [r0, 0x2]
	movs r1, 0xA
	bl __udivsi3
	lsls r0, 24
	lsrs r0, 24
	strh r0, [r4, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81573B4

	thumb_func_start sub_8157410
sub_8157410: @ 8157410
	push {lr}
	bl sub_81573B4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _0815744C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157450
	.pool
_0815744C:
	adds r0, r2, 0x5
	str r0, [r3]
_08157450:
	pop {r0}
	bx r0
	thumb_func_end sub_8157410

	thumb_func_start sub_8157454
sub_8157454: @ 8157454
	push {lr}
	bl sub_81573B4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08157490
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157494
	.pool
_08157490:
	adds r0, r2, 0x5
	str r0, [r3]
_08157494:
	pop {r0}
	bx r0
	thumb_func_end sub_8157454

	thumb_func_start sub_8157498
sub_8157498: @ 8157498
	push {lr}
	bl sub_81573B4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _081574D4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081574D8
	.pool
_081574D4:
	adds r0, r2, 0x5
	str r0, [r3]
_081574D8:
	pop {r0}
	bx r0
	thumb_func_end sub_8157498

	thumb_func_start sub_81574DC
sub_81574DC: @ 81574DC
	push {lr}
	bl sub_81573B4
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08157518
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815751C
	.pool
_08157518:
	adds r0, r2, 0x5
	str r0, [r3]
_0815751C:
	pop {r0}
	bx r0
	thumb_func_end sub_81574DC

	thumb_func_start sub_8157520
sub_8157520: @ 8157520
	push {r4,r5,lr}
	ldr r3, =gUnknown_02039E00
	ldr r5, =gUnknown_02039F34
	ldr r4, [r5]
	ldr r1, [r4, 0xC]
	ldrb r0, [r1, 0x4]
	lsls r0, 1
	adds r1, 0x41
	ldrb r2, [r1]
	lsls r1, r2, 6
	adds r0, r1
	adds r3, 0x1E
	adds r0, r3
	ldrh r3, [r0]
	ldr r1, [r4, 0x4]
	lsls r0, r2, 3
	subs r0, r2
	lsls r0, 2
	adds r0, r1
	ldrh r1, [r0, 0x8]
	cmp r3, r1
	beq _08157558
	movs r1, 0
	b _08157560
	.pool
_08157558:
	ldrb r0, [r0, 0xB]
	lsls r0, 25
	lsrs r0, 29
	adds r1, r0, 0x1
_08157560:
	ldr r0, [r5]
	ldr r0, [r0, 0xC]
	strh r1, [r0, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157520

	thumb_func_start sub_8157578
sub_8157578: @ 8157578
	push {lr}
	bl sub_8157520
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _081575B4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081575B8
	.pool
_081575B4:
	adds r0, r2, 0x5
	str r0, [r3]
_081575B8:
	pop {r0}
	bx r0
	thumb_func_end sub_8157578

	thumb_func_start sub_81575BC
sub_81575BC: @ 81575BC
	push {lr}
	bl sub_8157520
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _081575F8
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081575FC
	.pool
_081575F8:
	adds r0, r2, 0x5
	str r0, [r3]
_081575FC:
	pop {r0}
	bx r0
	thumb_func_end sub_81575BC

	thumb_func_start sub_8157600
sub_8157600: @ 8157600
	push {lr}
	bl sub_8157520
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _0815763C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157640
	.pool
_0815763C:
	adds r0, r2, 0x5
	str r0, [r3]
_08157640:
	pop {r0}
	bx r0
	thumb_func_end sub_8157600

	thumb_func_start sub_8157644
sub_8157644: @ 8157644
	push {lr}
	bl sub_8157520
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08157680
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157684
	.pool
_08157680:
	adds r0, r2, 0x5
	str r0, [r3]
_08157684:
	pop {r0}
	bx r0
	thumb_func_end sub_8157644

	thumb_func_start sub_8157688
sub_8157688: @ 8157688
	push {r4-r6,lr}
	movs r3, 0
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldrb r1, [r0, 0x4]
	lsls r1, 1
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r5, [r1]
	movs r4, 0
	adds r6, r2, 0
_081576AA:
	lsls r1, r4, 1
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r1, r6
	ldrh r0, [r1]
	cmp r0, 0
	beq _081576D2
	adds r1, r0, 0
	adds r0, r5, 0
	bl AreMovesContestCombo
	lsls r0, 24
	lsrs r3, r0, 24
	cmp r3, 0
	bne _081576DC
_081576D2:
	adds r4, 0x1
	cmp r4, 0x3
	ble _081576AA
	cmp r3, 0
	beq _081576DE
_081576DC:
	movs r3, 0x1
_081576DE:
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	strh r3, [r0, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r6}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157688

	thumb_func_start sub_8157700
sub_8157700: @ 8157700
	push {lr}
	bl sub_8157688
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157738
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157740
	.pool
_08157738:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157740:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157700

	thumb_func_start sub_8157748
sub_8157748: @ 8157748
	push {lr}
	bl sub_8157688
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157780
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157788
	.pool
_08157780:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157788:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157748

	thumb_func_start sub_8157790
sub_8157790: @ 8157790
	push {r4-r6,lr}
	movs r3, 0
	ldr r2, =gUnknown_02039E00
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	ldrb r1, [r0, 0x4]
	lsls r1, 1
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r2, 0x1E
	adds r1, r2
	ldrh r5, [r1]
	movs r4, 0
	adds r6, r2, 0
_081577B2:
	lsls r1, r4, 1
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r1, r6
	ldrh r0, [r1]
	cmp r0, 0
	beq _081577D8
	adds r1, r5, 0
	bl AreMovesContestCombo
	lsls r0, 24
	lsrs r3, r0, 24
	cmp r3, 0
	bne _081577E2
_081577D8:
	adds r4, 0x1
	cmp r4, 0x3
	ble _081577B2
	cmp r3, 0
	beq _081577E4
_081577E2:
	movs r3, 0x1
_081577E4:
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	strh r3, [r0, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r6}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157790

	thumb_func_start sub_8157808
sub_8157808: @ 8157808
	push {lr}
	bl sub_8157790
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157840
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157848
	.pool
_08157840:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157848:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157808

	thumb_func_start sub_8157850
sub_8157850: @ 8157850
	push {lr}
	bl sub_8157790
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157888
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157890
	.pool
_08157888:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157890:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157850

	thumb_func_start sub_8157898
sub_8157898: @ 8157898
	push {r4-r6,lr}
	movs r5, 0
	ldr r3, =gUnknown_02039E00
	ldr r6, =gUnknown_02039F34
	ldr r4, [r6]
	ldr r1, [r4, 0xC]
	ldrb r0, [r1, 0x4]
	lsls r0, 1
	adds r1, 0x41
	ldrb r2, [r1]
	lsls r1, r2, 6
	adds r0, r1
	adds r3, 0x1E
	adds r0, r3
	ldrh r3, [r0]
	ldr r1, [r4, 0x4]
	lsls r0, r2, 3
	subs r0, r2
	lsls r0, 2
	adds r1, r0, r1
	ldrh r0, [r1, 0x8]
	cmp r0, 0
	beq _081578D0
	adds r1, r3, 0
	bl AreMovesContestCombo
	lsls r0, 24
	lsrs r5, r0, 24
_081578D0:
	cmp r5, 0
	beq _081578D6
	movs r5, 0x1
_081578D6:
	ldr r0, [r6]
	ldr r0, [r0, 0xC]
	strh r5, [r0, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r6}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157898

	thumb_func_start sub_81578F8
sub_81578F8: @ 81578F8
	push {lr}
	bl sub_8157898
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157930
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157938
	.pool
_08157930:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157938:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81578F8

	thumb_func_start sub_8157940
sub_8157940: @ 8157940
	push {lr}
	bl sub_8157898
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157978
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157980
	.pool
_08157978:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157980:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157940

	thumb_func_start sub_8157988
sub_8157988: @ 8157988
	push {r4,r5,lr}
	ldr r4, =gAIScriptPtr
	ldr r0, [r4]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r0, 24
	ldr r1, =gUnknown_02039F34
	ldr r1, [r1]
	ldr r5, [r1, 0xC]
	ldr r2, [r1, 0x4]
	lsls r1, r0, 3
	subs r1, r0
	lsls r1, 2
	adds r1, r2
	movs r0, 0xD
	ldrsb r0, [r1, r0]
	movs r1, 0xA
	bl __divsi3
	lsls r0, 24
	asrs r0, 24
	strh r0, [r5, 0x18]
	ldr r0, [r4]
	adds r0, 0x2
	str r0, [r4]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157988

	thumb_func_start sub_81579CC
sub_81579CC: @ 81579CC
	push {lr}
	bl sub_8157988
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _08157A08
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157A0C
	.pool
_08157A08:
	adds r0, r2, 0x5
	str r0, [r3]
_08157A0C:
	pop {r0}
	bx r0
	thumb_func_end sub_81579CC

	thumb_func_start sub_8157A10
sub_8157A10: @ 8157A10
	push {lr}
	bl sub_8157988
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08157A4C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157A50
	.pool
_08157A4C:
	adds r0, r2, 0x5
	str r0, [r3]
_08157A50:
	pop {r0}
	bx r0
	thumb_func_end sub_8157A10

	thumb_func_start sub_8157A54
sub_8157A54: @ 8157A54
	push {lr}
	bl sub_8157988
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08157A90
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157A94
	.pool
_08157A90:
	adds r0, r2, 0x5
	str r0, [r3]
_08157A94:
	pop {r0}
	bx r0
	thumb_func_end sub_8157A54

	thumb_func_start sub_8157A98
sub_8157A98: @ 8157A98
	push {lr}
	bl sub_8157988
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08157AD4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157AD8
	.pool
_08157AD4:
	adds r0, r2, 0x5
	str r0, [r3]
_08157AD8:
	pop {r0}
	bx r0
	thumb_func_end sub_8157A98

	thumb_func_start sub_8157ADC
sub_8157ADC: @ 8157ADC
	push {r4-r6,lr}
	movs r6, 0
	ldr r5, =gAIScriptPtr
	ldr r0, [r5]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r4, r0, 24
	adds r0, r4, 0
	bl sub_80DE1E8
	lsls r0, 24
	cmp r0, 0
	beq _08157B18
	ldr r2, =gContestMoves
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0x4]
	lsls r0, r4, 3
	subs r0, r4
	lsls r0, 2
	adds r0, r1
	ldrh r0, [r0, 0x8]
	lsls r0, 3
	adds r0, r2
	ldrb r1, [r0, 0x2]
	negs r0, r1
	orrs r0, r1
	lsrs r6, r0, 31
_08157B18:
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	strh r6, [r0, 0x18]
	ldr r0, [r5]
	adds r0, 0x2
	str r0, [r5]
	pop {r4-r6}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157ADC

	thumb_func_start sub_8157B38
sub_8157B38: @ 8157B38
	push {lr}
	bl sub_8157ADC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _08157B74
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157B78
	.pool
_08157B74:
	adds r0, r2, 0x5
	str r0, [r3]
_08157B78:
	pop {r0}
	bx r0
	thumb_func_end sub_8157B38

	thumb_func_start sub_8157B7C
sub_8157B7C: @ 8157B7C
	push {lr}
	bl sub_8157ADC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08157BB8
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157BBC
	.pool
_08157BB8:
	adds r0, r2, 0x5
	str r0, [r3]
_08157BBC:
	pop {r0}
	bx r0
	thumb_func_end sub_8157B7C

	thumb_func_start sub_8157BC0
sub_8157BC0: @ 8157BC0
	push {lr}
	bl sub_8157ADC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08157BFC
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157C00
	.pool
_08157BFC:
	adds r0, r2, 0x5
	str r0, [r3]
_08157C00:
	pop {r0}
	bx r0
	thumb_func_end sub_8157BC0

	thumb_func_start sub_8157C04
sub_8157C04: @ 8157C04
	push {lr}
	bl sub_8157ADC
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08157C40
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157C44
	.pool
_08157C40:
	adds r0, r2, 0x5
	str r0, [r3]
_08157C44:
	pop {r0}
	bx r0
	thumb_func_end sub_8157C04

	thumb_func_start sub_8157C48
sub_8157C48: @ 8157C48
	push {lr}
	ldr r0, =gAIScriptPtr
	ldr r0, [r0]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r0, 24
	bl sub_80DBCA8
	lsls r0, 24
	cmp r0, 0
	beq _08157C74
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	movs r0, 0
	b _08157C7C
	.pool
_08157C74:
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	movs r0, 0x1
_08157C7C:
	strh r0, [r1, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x2
	str r0, [r1]
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157C48

	thumb_func_start sub_8157C94
sub_8157C94: @ 8157C94
	push {lr}
	bl sub_8157C48
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157CCC
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157CD4
	.pool
_08157CCC:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157CD4:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157C94

	thumb_func_start sub_8157CDC
sub_8157CDC: @ 8157CDC
	push {lr}
	bl sub_8157C48
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157D14
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157D1C
	.pool
_08157D14:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157D1C:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157CDC

	thumb_func_start sub_8157D24
sub_8157D24: @ 8157D24
	push {r4,lr}
	ldr r4, =gAIScriptPtr
	ldr r0, [r4]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r0, 24
	ldr r1, =gUnknown_02039F34
	ldr r1, [r1]
	ldr r3, [r1, 0xC]
	ldr r2, [r1, 0x4]
	lsls r1, r0, 3
	subs r1, r0
	lsls r1, 2
	adds r1, r2
	ldrb r0, [r1, 0x15]
	lsls r0, 28
	lsrs r0, 31
	strh r0, [r3, 0x18]
	ldr r0, [r4]
	adds r0, 0x2
	str r0, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157D24

	thumb_func_start sub_8157D60
sub_8157D60: @ 8157D60
	push {lr}
	bl sub_8157D24
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157D98
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157DA0
	.pool
_08157D98:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157DA0:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157D60

	thumb_func_start sub_8157DA8
sub_8157DA8: @ 8157DA8
	push {lr}
	bl sub_8157D24
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157DE0
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157DE8
	.pool
_08157DE0:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157DE8:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157DA8

	thumb_func_start sub_8157DF0
sub_8157DF0: @ 8157DF0
	push {r4,r5,lr}
	ldr r4, =gAIScriptPtr
	ldr r0, [r4]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r0, 24
	ldr r1, =gUnknown_02039F34
	ldr r1, [r1]
	ldr r5, [r1, 0xC]
	ldr r3, [r1, 0x4]
	lsls r1, r0, 3
	subs r1, r0
	lsls r1, 2
	adds r1, r3
	adds r0, r5, 0
	adds r0, 0x41
	ldrb r2, [r0]
	lsls r0, r2, 3
	subs r0, r2
	lsls r0, 2
	adds r0, r3
	ldrh r1, [r1, 0x4]
	ldrh r0, [r0, 0x4]
	subs r1, r0
	strh r1, [r5, 0x18]
	ldr r0, [r4]
	adds r0, 0x2
	str r0, [r4]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157DF0

	thumb_func_start sub_8157E3C
sub_8157E3C: @ 8157E3C
	push {lr}
	bl sub_8157DF0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bge _08157E74
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157E7C
	.pool
_08157E74:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157E7C:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157E3C

	thumb_func_start sub_8157E84
sub_8157E84: @ 8157E84
	push {lr}
	bl sub_8157DF0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	ble _08157EBC
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157EC4
	.pool
_08157EBC:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157EC4:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157E84

	thumb_func_start sub_8157ECC
sub_8157ECC: @ 8157ECC
	push {lr}
	bl sub_8157DF0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08157F04
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157F0C
	.pool
_08157F04:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157F0C:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157ECC

	thumb_func_start sub_8157F14
sub_8157F14: @ 8157F14
	push {lr}
	bl sub_8157DF0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08157F4C
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157F54
	.pool
_08157F4C:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157F54:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157F14

	thumb_func_start sub_8157F5C
sub_8157F5C: @ 8157F5C
	push {r4,lr}
	ldr r4, =gAIScriptPtr
	ldr r0, [r4]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	ldr r1, =gUnknown_02039F34
	ldr r1, [r1]
	ldr r3, [r1, 0xC]
	ldr r2, =gUnknown_02039F00
	lsrs r0, 23
	adds r0, r2
	adds r1, r3, 0
	adds r1, 0x41
	ldrb r1, [r1]
	lsls r1, 1
	adds r1, r2
	ldrh r0, [r0]
	ldrh r1, [r1]
	subs r0, r1
	strh r0, [r3, 0x18]
	ldr r0, [r4]
	adds r0, 0x2
	str r0, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157F5C

	thumb_func_start sub_8157FA0
sub_8157FA0: @ 8157FA0
	push {lr}
	bl sub_8157F5C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bge _08157FD8
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08157FE0
	.pool
_08157FD8:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08157FE0:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157FA0

	thumb_func_start sub_8157FE8
sub_8157FE8: @ 8157FE8
	push {lr}
	bl sub_8157F5C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	ble _08158020
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158028
	.pool
_08158020:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08158028:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8157FE8

	thumb_func_start sub_8158030
sub_8158030: @ 8158030
	push {lr}
	bl sub_8157F5C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08158068
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158070
	.pool
_08158068:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08158070:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158030

	thumb_func_start sub_8158078
sub_8158078: @ 8158078
	push {lr}
	bl sub_8157F5C
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _081580B0
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081580B8
	.pool
_081580B0:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_081580B8:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158078

	thumb_func_start sub_81580C0
sub_81580C0: @ 81580C0
	push {r4,r5,lr}
	ldr r5, =gAIScriptPtr
	ldr r0, [r5]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	ldr r3, [r5]
	ldrb r2, [r3, 0x2]
	ldr r1, =gUnknown_02039F34
	ldr r4, [r1]
	ldr r1, [r4]
	lsrs r0, 23
	lsls r2, 3
	adds r0, r2
	adds r1, 0x1C
	adds r1, r0
	ldrh r0, [r1]
	ldr r2, [r4, 0xC]
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	strh r0, [r2, 0x18]
	adds r3, 0x3
	str r3, [r5]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81580C0

	thumb_func_start sub_8158108
sub_8158108: @ 8158108
	push {lr}
	bl sub_81580C0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _08158144
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158148
	.pool
_08158144:
	adds r0, r2, 0x5
	str r0, [r3]
_08158148:
	pop {r0}
	bx r0
	thumb_func_end sub_8158108

	thumb_func_start sub_815814C
sub_815814C: @ 815814C
	push {lr}
	bl sub_81580C0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _08158188
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815818C
	.pool
_08158188:
	adds r0, r2, 0x5
	str r0, [r3]
_0815818C:
	pop {r0}
	bx r0
	thumb_func_end sub_815814C

	thumb_func_start sub_8158190
sub_8158190: @ 8158190
	push {lr}
	bl sub_81580C0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _081581CC
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081581D0
	.pool
_081581CC:
	adds r0, r2, 0x5
	str r0, [r3]
_081581D0:
	pop {r0}
	bx r0
	thumb_func_end sub_8158190

	thumb_func_start sub_81581D4
sub_81581D4: @ 81581D4
	push {lr}
	bl sub_81580C0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08158210
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158214
	.pool
_08158210:
	adds r0, r2, 0x5
	str r0, [r3]
_08158214:
	pop {r0}
	bx r0
	thumb_func_end sub_81581D4

	thumb_func_start sub_8158218
sub_8158218: @ 8158218
	push {r4,r5,lr}
	ldr r5, =gAIScriptPtr
	ldr r0, [r5]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	lsrs r0, 24
	ldr r3, [r5]
	ldrb r2, [r3, 0x2]
	ldr r1, =gUnknown_02039F34
	ldr r4, [r1]
	ldr r1, [r4]
	lsls r2, 2
	adds r0, r2
	adds r1, 0x44
	adds r1, r0
	ldr r2, [r4, 0xC]
	movs r0, 0
	ldrsb r0, [r1, r0]
	strh r0, [r2, 0x18]
	adds r3, 0x3
	str r3, [r5]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158218

	thumb_func_start sub_8158254
sub_8158254: @ 8158254
	push {lr}
	bl sub_8158218
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bge _08158290
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158294
	.pool
_08158290:
	adds r0, r2, 0x5
	str r0, [r3]
_08158294:
	pop {r0}
	bx r0
	thumb_func_end sub_8158254

	thumb_func_start sub_8158298
sub_8158298: @ 8158298
	push {lr}
	bl sub_8158218
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	ble _081582D4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081582D8
	.pool
_081582D4:
	adds r0, r2, 0x5
	str r0, [r3]
_081582D8:
	pop {r0}
	bx r0
	thumb_func_end sub_8158298

	thumb_func_start sub_81582DC
sub_81582DC: @ 81582DC
	push {lr}
	bl sub_8158218
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _08158318
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815831C
	.pool
_08158318:
	adds r0, r2, 0x5
	str r0, [r3]
_0815831C:
	pop {r0}
	bx r0
	thumb_func_end sub_81582DC

	thumb_func_start sub_8158320
sub_8158320: @ 8158320
	push {lr}
	bl sub_8158218
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _0815835C
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158360
	.pool
_0815835C:
	adds r0, r2, 0x5
	str r0, [r3]
_08158360:
	pop {r0}
	bx r0
	thumb_func_end sub_8158320

	thumb_func_start sub_8158364
sub_8158364: @ 8158364
	push {r4,r5,lr}
	ldr r5, =gAIScriptPtr
	ldr r0, [r5]
	ldrb r0, [r0, 0x1]
	bl sub_81564AC
	lsls r0, 24
	ldr r3, [r5]
	ldrb r2, [r3, 0x2]
	ldr r1, =gUnknown_02039F34
	ldr r4, [r1]
	ldr r1, [r4]
	lsrs r0, 23
	lsls r2, 3
	adds r0, r2
	adds r1, 0x1C
	adds r1, r0
	ldrh r0, [r1]
	ldr r4, [r4, 0xC]
	ldr r2, =gContestEffects
	ldr r1, =gContestMoves
	lsls r0, 3
	adds r0, r1
	ldrb r0, [r0]
	lsls r0, 2
	adds r0, r2
	ldrb r0, [r0]
	strh r0, [r4, 0x18]
	adds r3, 0x3
	str r3, [r5]
	pop {r4,r5}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158364

	thumb_func_start sub_81583B8
sub_81583B8: @ 81583B8
	push {lr}
	bl sub_8158364
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	bne _081583F4
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081583F8
	.pool
_081583F4:
	adds r0, r2, 0x5
	str r0, [r3]
_081583F8:
	pop {r0}
	bx r0
	thumb_func_end sub_81583B8

	thumb_func_start sub_81583FC
sub_81583FC: @ 81583FC
	push {lr}
	bl sub_8158364
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	cmp r0, r1
	beq _08158438
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _0815843C
	.pool
_08158438:
	adds r0, r2, 0x5
	str r0, [r3]
_0815843C:
	pop {r0}
	bx r0
	thumb_func_end sub_81583FC

	thumb_func_start sub_8158440
sub_8158440: @ 8158440
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r3, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r2, [r4]
	ldrb r0, [r2, 0x1]
	lsls r0, 1
	adds r1, r3, 0
	adds r1, 0x1A
	adds r1, r0
	ldrh r0, [r3, 0x18]
	strh r0, [r1]
	adds r2, 0x2
	str r2, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158440

	thumb_func_start sub_815846C
sub_815846C: @ 815846C
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r3, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r2, [r4]
	ldrb r0, [r2, 0x1]
	lsls r0, 1
	adds r3, 0x1A
	adds r3, r0
	ldrb r1, [r2, 0x2]
	ldrb r0, [r2, 0x3]
	lsls r0, 8
	orrs r1, r0
	strh r1, [r3]
	adds r2, 0x4
	str r2, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_815846C

	thumb_func_start sub_815849C
sub_815849C: @ 815849C
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r2, 0x1A
	adds r2, r0
	movs r1, 0x2
	ldrsb r1, [r3, r1]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrh r0, [r2]
	adds r1, r0
	strh r1, [r2]
	adds r3, 0x4
	str r3, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_815849C

	thumb_func_start sub_81584D4
sub_81584D4: @ 81584D4
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	ldrh r0, [r2]
	ldrh r2, [r1]
	adds r0, r2
	strh r0, [r1]
	adds r3, 0x3
	str r3, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81584D4

	thumb_func_start sub_8158508
sub_8158508: @ 8158508
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	ldrh r0, [r2]
	ldrh r2, [r1]
	adds r0, r2
	strh r0, [r1]
	adds r3, 0x3
	str r3, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158508

	thumb_func_start sub_815853C
sub_815853C: @ 815853C
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r0, 0
	ldrsh r2, [r1, r0]
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	cmp r2, r1
	bge _08158580
	ldrb r1, [r3, 0x4]
	ldrb r0, [r3, 0x5]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x7]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158586
	.pool
_08158580:
	adds r0, r3, 0
	adds r0, 0x8
	str r0, [r4]
_08158586:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_815853C

	thumb_func_start sub_815858C
sub_815858C: @ 815858C
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r0, 0
	ldrsh r2, [r1, r0]
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	cmp r2, r1
	ble _081585D0
	ldrb r1, [r3, 0x4]
	ldrb r0, [r3, 0x5]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x7]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _081585D6
	.pool
_081585D0:
	adds r0, r3, 0
	adds r0, 0x8
	str r0, [r4]
_081585D6:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_815858C

	thumb_func_start sub_81585DC
sub_81585DC: @ 81585DC
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r0, 0
	ldrsh r2, [r1, r0]
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	cmp r2, r1
	bne _08158620
	ldrb r1, [r3, 0x4]
	ldrb r0, [r3, 0x5]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x7]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158626
	.pool
_08158620:
	adds r0, r3, 0
	adds r0, 0x8
	str r0, [r4]
_08158626:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_81585DC

	thumb_func_start sub_815862C
sub_815862C: @ 815862C
	push {r4,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r0, 0
	ldrsh r2, [r1, r0]
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	cmp r2, r1
	beq _08158670
	ldrb r1, [r3, 0x4]
	ldrb r0, [r3, 0x5]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x7]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158676
	.pool
_08158670:
	adds r0, r3, 0
	adds r0, 0x8
	str r0, [r4]
_08158676:
	pop {r4}
	pop {r0}
	bx r0
	thumb_func_end sub_815862C

	thumb_func_start sub_815867C
sub_815867C: @ 815867C
	push {r4,r5,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	movs r0, 0
	ldrsh r1, [r1, r0]
	movs r5, 0
	ldrsh r0, [r2, r5]
	cmp r1, r0
	bge _081586C4
	ldrb r1, [r3, 0x3]
	ldrb r0, [r3, 0x4]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _081586C8
	.pool
_081586C4:
	adds r0, r3, 0x7
	str r0, [r4]
_081586C8:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_815867C

	thumb_func_start sub_81586D0
sub_81586D0: @ 81586D0
	push {r4,r5,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	movs r0, 0
	ldrsh r1, [r1, r0]
	movs r5, 0
	ldrsh r0, [r2, r5]
	cmp r1, r0
	ble _08158718
	ldrb r1, [r3, 0x3]
	ldrb r0, [r3, 0x4]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _0815871C
	.pool
_08158718:
	adds r0, r3, 0x7
	str r0, [r4]
_0815871C:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_81586D0

	thumb_func_start sub_8158724
sub_8158724: @ 8158724
	push {r4,r5,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	movs r0, 0
	ldrsh r1, [r1, r0]
	movs r5, 0
	ldrsh r0, [r2, r5]
	cmp r1, r0
	bne _0815876C
	ldrb r1, [r3, 0x3]
	ldrb r0, [r3, 0x4]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158770
	.pool
_0815876C:
	adds r0, r3, 0x7
	str r0, [r4]
_08158770:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8158724

	thumb_func_start sub_8158778
sub_8158778: @ 8158778
	push {r4,r5,lr}
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r1, [r3, 0x1]
	lsls r1, 1
	adds r2, 0x1A
	adds r1, r2, r1
	ldrb r0, [r3, 0x2]
	lsls r0, 1
	adds r2, r0
	movs r0, 0
	ldrsh r1, [r1, r0]
	movs r5, 0
	ldrsh r0, [r2, r5]
	cmp r1, r0
	beq _081587C0
	ldrb r1, [r3, 0x3]
	ldrb r0, [r3, 0x4]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x6]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _081587C4
	.pool
_081587C0:
	adds r0, r3, 0x7
	str r0, [r4]
_081587C4:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_8158778

	thumb_func_start sub_81587CC
sub_81587CC: @ 81587CC
	push {r4,r5,lr}
	bl Random
	movs r2, 0xFF
	ands r2, r0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r5, 0
	ldrsh r0, [r1, r5]
	cmp r2, r0
	bge _08158810
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158814
	.pool
_08158810:
	adds r0, r3, 0x6
	str r0, [r4]
_08158814:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_81587CC

	thumb_func_start sub_815881C
sub_815881C: @ 815881C
	push {r4,r5,lr}
	bl Random
	movs r2, 0xFF
	ands r2, r0
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r1, [r0, 0xC]
	ldr r4, =gAIScriptPtr
	ldr r3, [r4]
	ldrb r0, [r3, 0x1]
	lsls r0, 1
	adds r1, 0x1A
	adds r1, r0
	movs r5, 0
	ldrsh r0, [r1, r5]
	cmp r2, r0
	ble _08158860
	ldrb r1, [r3, 0x2]
	ldrb r0, [r3, 0x3]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r3, 0x4]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r3, 0x5]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	b _08158864
	.pool
_08158860:
	adds r0, r3, 0x6
	str r0, [r4]
_08158864:
	pop {r4,r5}
	pop {r0}
	bx r0
	thumb_func_end sub_815881C

	thumb_func_start sub_815886C
sub_815886C: @ 815886C
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	bx lr
	.pool
	thumb_func_end sub_815886C

	thumb_func_start dp15_call
dp15_call: @ 815888C
	push {r4,lr}
	ldr r4, =gAIScriptPtr
	ldr r0, [r4]
	adds r0, 0x5
	bl sub_81588E0
	ldr r2, [r4]
	ldrb r1, [r2, 0x1]
	ldrb r0, [r2, 0x2]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x4]
	lsls r0, 24
	orrs r1, r0
	str r1, [r4]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end dp15_call

	thumb_func_start sub_81588BC
sub_81588BC: @ 81588BC
	push {lr}
	bl sub_8158908
	lsls r0, 24
	cmp r0, 0
	bne _081588D6
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r2, [r0, 0xC]
	ldrb r1, [r2, 0x9]
	movs r0, 0x1
	orrs r0, r1
	strb r0, [r2, 0x9]
_081588D6:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81588BC

	thumb_func_start sub_81588E0
sub_81588E0: @ 81588E0
	push {r4,lr}
	ldr r1, =gUnknown_02039F34
	ldr r1, [r1]
	ldr r3, [r1, 0xC]
	adds r4, r3, 0
	adds r4, 0x40
	ldrb r1, [r4]
	adds r2, r1, 0x1
	strb r2, [r4]
	lsls r1, 24
	lsrs r1, 22
	adds r3, 0x20
	adds r3, r1
	str r0, [r3]
	pop {r4}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81588E0

	thumb_func_start sub_8158908
sub_8158908: @ 8158908
	push {lr}
	ldr r3, =gUnknown_02039F34
	ldr r0, [r3]
	ldr r0, [r0, 0xC]
	adds r1, r0, 0
	adds r1, 0x40
	ldrb r0, [r1]
	cmp r0, 0
	bne _08158924
	movs r0, 0
	b _08158940
	.pool
_08158924:
	subs r0, 0x1
	strb r0, [r1]
	ldr r2, =gAIScriptPtr
	ldr r0, [r3]
	ldr r1, [r0, 0xC]
	adds r0, r1, 0
	adds r0, 0x40
	ldrb r0, [r0]
	lsls r0, 2
	adds r1, 0x20
	adds r1, r0
	ldr r0, [r1]
	str r0, [r2]
	movs r0, 0x1
_08158940:
	pop {r1}
	bx r1
	.pool
	thumb_func_end sub_8158908

	thumb_func_start sub_8158948
sub_8158948: @ 8158948
	push {r4-r6,lr}
	movs r5, 0
	movs r4, 0
	ldr r6, =gUnknown_02039E1E
_08158950:
	lsls r1, r4, 1
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	adds r1, r6
	ldrh r0, [r1]
	cmp r0, 0
	beq _08158980
	bl sub_80DD9F0
	lsls r0, 24
	asrs r0, 24
	cmp r0, 0x1
	bne _08158980
	movs r5, 0x1
	b _08158986
	.pool
_08158980:
	adds r4, 0x1
	cmp r4, 0x3
	ble _08158950
_08158986:
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	strh r5, [r0, 0x18]
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x1
	str r0, [r1]
	pop {r4-r6}
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158948

	thumb_func_start sub_81589A4
sub_81589A4: @ 81589A4
	push {lr}
	bl sub_8158948
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _081589DC
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _081589E4
	.pool
_081589DC:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_081589E4:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81589A4

	thumb_func_start sub_81589EC
sub_81589EC: @ 81589EC
	push {lr}
	bl sub_8158948
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08158A24
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158A2C
	.pool
_08158A24:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08158A2C:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_81589EC

	thumb_func_start sub_8158A34
sub_8158A34: @ 8158A34
	push {r4-r6,lr}
	movs r6, 0
	ldr r3, =gAIScriptPtr
	ldr r0, [r3]
	ldrb r5, [r0, 0x1]
	ldrb r0, [r0, 0x2]
	lsls r0, 8
	orrs r5, r0
	movs r4, 0
	ldr r0, =gUnknown_02039E00
	mov r12, r0
	ldr r2, =gUnknown_02039F34
	ldr r0, [r2]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	mov r1, r12
	adds r1, 0x1E
	adds r0, r1
	ldrh r0, [r0]
	b _08158A88
	.pool
_08158A6C:
	adds r4, 0x1
	cmp r4, 0x3
	bgt _08158A8E
	lsls r1, r4, 1
	ldr r0, [r2]
	ldr r0, [r0, 0xC]
	adds r0, 0x41
	ldrb r0, [r0]
	lsls r0, 6
	adds r1, r0
	mov r0, r12
	adds r0, 0x1E
	adds r1, r0
	ldrh r0, [r1]
_08158A88:
	cmp r0, r5
	bne _08158A6C
	movs r6, 0x1
_08158A8E:
	ldr r0, [r2]
	ldr r0, [r0, 0xC]
	strh r6, [r0, 0x18]
	ldr r0, [r3]
	adds r0, 0x3
	str r0, [r3]
	pop {r4-r6}
	pop {r0}
	bx r0
	thumb_func_end sub_8158A34

	thumb_func_start sub_8158AA0
sub_8158AA0: @ 8158AA0
	push {lr}
	bl sub_8158A34
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	beq _08158AD8
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158AE0
	.pool
_08158AD8:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08158AE0:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158AA0

	thumb_func_start sub_8158AE8
sub_8158AE8: @ 8158AE8
	push {lr}
	bl sub_8158A34
	ldr r0, =gUnknown_02039F34
	ldr r0, [r0]
	ldr r0, [r0, 0xC]
	movs r1, 0x18
	ldrsh r0, [r0, r1]
	cmp r0, 0
	bne _08158B20
	ldr r3, =gAIScriptPtr
	ldr r2, [r3]
	ldrb r1, [r2]
	ldrb r0, [r2, 0x1]
	lsls r0, 8
	orrs r1, r0
	ldrb r0, [r2, 0x2]
	lsls r0, 16
	orrs r1, r0
	ldrb r0, [r2, 0x3]
	lsls r0, 24
	orrs r1, r0
	str r1, [r3]
	b _08158B28
	.pool
_08158B20:
	ldr r1, =gAIScriptPtr
	ldr r0, [r1]
	adds r0, 0x4
	str r0, [r1]
_08158B28:
	pop {r0}
	bx r0
	.pool
	thumb_func_end sub_8158AE8

	.align 2, 0 @ Don't pad with nop.
