summaryrefslogtreecommitdiff
path: root/asm/contest.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/contest.s')
-rw-r--r--asm/contest.s8290
1 files changed, 0 insertions, 8290 deletions
diff --git a/asm/contest.s b/asm/contest.s
deleted file mode 100644
index a9abd9430..000000000
--- a/asm/contest.s
+++ /dev/null
@@ -1,8290 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80DB884
-sub_80DB884: @ 80DB884
- push {r4,lr}
- movs r4, 0
-_080DB888:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DB798
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DB888
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DB884
-
- thumb_func_start sub_80DB89C
-sub_80DB89C: @ 80DB89C
- push {lr}
- movs r0, 0x4
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x4
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl Contest_SetBgCopyFlags
- pop {r0}
- bx r0
- thumb_func_end sub_80DB89C
-
- thumb_func_start sub_80DB8B8
-sub_80DB8B8: @ 80DB8B8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- adds r0, r4, 0
- bl Contest_IsMonsTurnDisabled
- lsls r0, 24
- cmp r0, 0
- beq _080DB8D0
- movs r0, 0
- b _080DB90A
-_080DB8D0:
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- cmp r4, r0
- beq _080DB8F4
- adds r0, r4, 0
- bl ContestAI_ResetAI
- bl ContestAI_GetActionToUse
- lsls r0, 24
- ldr r2, =gContestMons
- lsrs r0, 23
- lsls r1, r4, 6
- b _080DB902
- .pool
-_080DB8F4:
- ldr r2, =gContestMons
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 1
- lsls r1, r5, 6
-_080DB902:
- adds r0, r1
- adds r2, 0x1E
- adds r0, r2
- ldrh r0, [r0]
-_080DB90A:
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DB8B8
-
- thumb_func_start sub_80DB918
-sub_80DB918: @ 80DB918
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0
-_080DB91E:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DB8B8
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r1, [r1, 0x4]
- adds r1, r5, r1
- strh r0, [r1, 0x6]
- adds r5, 0x1C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DB91E
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DB918
-
- thumb_func_start sub_80DB944
-sub_80DB944: @ 80DB944
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- ldr r5, =gContestResources
- mov r4, sp
- movs r3, 0
- movs r6, 0x3
-_080DB956:
- ldr r2, [r5]
- ldr r1, [r2, 0x4]
- adds r1, r3, r1
- ldrh r0, [r1, 0x2]
- ldrh r7, [r1, 0x4]
- adds r0, r7
- strh r0, [r1, 0x4]
- ldr r0, [r2, 0x4]
- adds r0, r3, r0
- ldrh r0, [r0, 0x4]
- strh r0, [r4]
- adds r4, 0x2
- adds r3, 0x1C
- subs r6, 0x1
- cmp r6, 0
- bge _080DB956
- movs r6, 0
-_080DB978:
- movs r4, 0x3
- cmp r4, r6
- ble _080DB9A4
-_080DB97E:
- subs r5, r4, 0x1
- lsls r0, r5, 1
- mov r1, sp
- adds r3, r1, r0
- lsls r0, r4, 1
- adds r2, r1, r0
- ldrh r4, [r3]
- movs r7, 0
- ldrsh r1, [r3, r7]
- movs r7, 0
- ldrsh r0, [r2, r7]
- cmp r1, r0
- bge _080DB99E
- ldrh r0, [r2]
- strh r4, [r2]
- strh r0, [r3]
-_080DB99E:
- adds r4, r5, 0
- cmp r4, r6
- bgt _080DB97E
-_080DB9A4:
- adds r6, 0x1
- cmp r6, 0x2
- ble _080DB978
- movs r6, 0
- movs r0, 0x4
- negs r0, r0
- mov r9, r0
- ldr r1, =gContestResources
- mov r8, r1
- movs r7, 0x3
- mov r12, r7
-_080DB9BA:
- movs r4, 0
- lsls r0, r6, 3
- adds r7, r6, 0x1
- subs r0, r6
- lsls r5, r0, 2
- mov r3, sp
-_080DB9C6:
- mov r1, r8
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r2, r5, r0
- movs r6, 0x4
- ldrsh r1, [r2, r6]
- movs r6, 0
- ldrsh r0, [r3, r6]
- cmp r1, r0
- bne _080DB9F0
- mov r0, r12
- ands r4, r0
- ldrb r1, [r2, 0xB]
- mov r0, r9
- ands r0, r1
- orrs r0, r4
- strb r0, [r2, 0xB]
- b _080DB9F8
- .pool
-_080DB9F0:
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DB9C6
-_080DB9F8:
- adds r6, r7, 0
- cmp r6, 0x3
- ble _080DB9BA
- movs r0, 0x1
- bl sub_80DCE58
- bl sub_80DD590
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80DB944
-
- thumb_func_start sub_80DBA18
-sub_80DBA18: @ 80DBA18
- push {r4,r5,lr}
- ldr r4, =gContestResources
- movs r2, 0
- movs r3, 0x3
-_080DBA20:
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- adds r1, r2, r0
- ldrh r0, [r1, 0x6]
- cmp r0, 0
- bne _080DBA34
- movs r1, 0x5
- b _080DBA52
- .pool
-_080DBA34:
- movs r5, 0x2
- ldrsh r0, [r1, r5]
- movs r1, 0
- cmp r0, 0
- ble _080DBA52
- movs r1, 0x1
- cmp r0, 0x1D
- ble _080DBA52
- movs r1, 0x2
- cmp r0, 0x3B
- ble _080DBA52
- movs r1, 0x4
- cmp r0, 0x4F
- bgt _080DBA52
- movs r1, 0x3
-_080DBA52:
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- adds r0, r2, r0
- strb r1, [r0, 0x1A]
- adds r2, 0x1C
- subs r3, 0x1
- cmp r3, 0
- bge _080DBA20
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80DBA18
-
- thumb_func_start sub_80DBA68
-sub_80DBA68: @ 80DBA68
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r2, [r1, 0x4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r1, [r2, 0xC]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- bne _080DBA90
- ldrb r1, [r2, 0xB]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080DBA98
-_080DBA90:
- movs r0, 0
- b _080DBA9A
- .pool
-_080DBA98:
- movs r0, 0x1
-_080DBA9A:
- pop {r1}
- bx r1
- thumb_func_end sub_80DBA68
-
- thumb_func_start sub_80DBAA0
-sub_80DBAA0: @ 80DBAA0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r5, =gContestResources
- movs r0, 0
- mov r8, r0
- movs r1, 0x7
- negs r1, r1
- mov r10, r1
- movs r0, 0x2
- negs r0, r0
- mov r9, r0
- movs r4, 0
- movs r6, 0x3
-_080DBAC0:
- ldr r1, [r5]
- ldr r0, [r1, 0x4]
- adds r0, r4, r0
- movs r2, 0
- strh r2, [r0, 0x2]
- ldr r0, [r1, 0x4]
- adds r0, r4, r0
- strh r2, [r0]
- ldr r0, [r1, 0x4]
- adds r0, r4, r0
- mov r1, r8
- strb r1, [r0, 0x12]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r3, r4, r0
- ldrb r2, [r3, 0xC]
- movs r0, 0x6
- ands r0, r2
- cmp r0, 0
- beq _080DBAFC
- lsls r0, r2, 29
- lsrs r0, 30
- subs r0, 0x1
- movs r1, 0x3
- ands r0, r1
- lsls r0, 1
- mov r1, r10
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0xC]
-_080DBAFC:
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- mov r1, r8
- strb r1, [r0, 0xE]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x10]
- mov r0, r9
- ands r0, r2
- strb r0, [r1, 0x10]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- mov r1, r8
- strb r1, [r0, 0xF]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x10]
- movs r0, 0x3
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x10]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x10]
- movs r7, 0x5
- negs r7, r7
- adds r0, r7, 0
- ands r0, r2
- strb r0, [r1, 0x10]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x10]
- movs r0, 0x9
- negs r0, r0
- mov r12, r0
- ands r0, r2
- strb r0, [r1, 0x10]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0xC]
- mov r0, r9
- ands r0, r2
- strb r0, [r1, 0xC]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- movs r1, 0xFF
- strb r1, [r0, 0x13]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- movs r1, 0x1
- negs r1, r1
- strb r1, [r0, 0x14]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x10]
- movs r0, 0x31
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x10]
- ldr r0, [r5]
- ldr r2, [r0, 0x4]
- adds r2, r4, r2
- ldrb r3, [r2, 0x15]
- lsls r1, r3, 31
- lsrs r1, 31
- lsls r1, 2
- adds r0, r7, 0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2, 0x15]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x15]
- mov r0, r9
- ands r0, r2
- strb r0, [r1, 0x15]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x11]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x11]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x11]
- movs r0, 0x21
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x11]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r2, r4, r0
- ldrb r1, [r2, 0x11]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080DBBF4
- ldrb r1, [r2, 0xC]
- mov r0, r10
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x11]
- adds r0, r7, 0
- ands r0, r2
- strb r0, [r1, 0x11]
-_080DBBF4:
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r2, r4, r0
- ldrb r1, [r2, 0x11]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080DBC1A
- ldrb r0, [r2, 0xB]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0xB]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x11]
- mov r0, r12
- ands r0, r2
- strb r0, [r1, 0x11]
-_080DBC1A:
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x11]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x11]
- adds r4, 0x1C
- subs r6, 0x1
- cmp r6, 0
- blt _080DBC34
- b _080DBAC0
-_080DBC34:
- movs r6, 0
- ldr r5, =gContestResources
- movs r7, 0
- movs r4, 0
-_080DBC3C:
- ldr r3, [r5]
- ldr r0, [r3, 0x4]
- adds r0, r4, r0
- ldrh r1, [r0, 0x6]
- strh r1, [r0, 0x8]
- ldr r2, [r3]
- lsls r1, r6, 1
- ldrb r0, [r2, 0x1]
- lsls r0, 3
- adds r1, r0
- adds r2, 0x1C
- adds r2, r1
- ldr r0, [r3, 0x4]
- adds r0, r4, r0
- ldrh r0, [r0, 0x6]
- strh r0, [r2]
- ldr r0, [r3, 0x4]
- adds r0, r4, r0
- ldrh r0, [r0, 0x6]
- bl Contest_GetMoveExcitement
- ldr r1, [r5]
- ldr r2, [r1]
- ldrb r1, [r2, 0x1]
- lsls r1, 2
- adds r1, r6, r1
- adds r2, 0x44
- adds r2, r1
- strb r0, [r2]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- strh r7, [r0, 0x6]
- adds r4, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _080DBC3C
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0, 0x10]
- ldrb r1, [r2, 0x1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DBAA0
-
- thumb_func_start Contest_IsMonsTurnDisabled
-Contest_IsMonsTurnDisabled: @ 80DBCA8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r2, [r1, 0x4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r1, [r2, 0xC]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- bne _080DBCD0
- ldrb r1, [r2, 0xB]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080DBCD8
-_080DBCD0:
- movs r0, 0x1
- b _080DBCDA
- .pool
-_080DBCD8:
- movs r0, 0
-_080DBCDA:
- pop {r1}
- bx r1
- thumb_func_end Contest_IsMonsTurnDisabled
-
- thumb_func_start sub_80DBCE0
-sub_80DBCE0: @ 80DBCE0
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80DBD34
- ldr r1, =gUnknown_02039F18
- lsls r4, 1
- adds r1, r4, r1
- strh r0, [r1]
- ldr r2, =gUnknown_02039F08
- adds r2, r4, r2
- ldr r1, =gContestMonConditions
- adds r4, r1
- ldrh r4, [r4]
- adds r0, r4
- strh r0, [r2]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DBCE0
-
- thumb_func_start sub_80DBD18
-sub_80DBD18: @ 80DBD18
- push {r4,lr}
- movs r4, 0
-_080DBD1C:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DBCE0
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DBD1C
- bl sub_80DBD4C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DBD18
-
- thumb_func_start sub_80DBD34
-sub_80DBD34: @ 80DBD34
- lsls r0, 24
- ldr r1, =gUnknown_02039F10
- lsrs r0, 23
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- lsls r0, 17
- asrs r0, 16
- bx lr
- .pool
- thumb_func_end sub_80DBD34
-
- thumb_func_start sub_80DBD4C
-sub_80DBD4C: @ 80DBD4C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x70
- mov r0, sp
- movs r1, 0
- movs r2, 0x8
- bl memset
- movs r0, 0
- mov r9, r0
- mov r1, sp
- adds r1, 0x8
- str r1, [sp, 0x64]
- mov r3, sp
- adds r3, 0xC
- str r3, [sp, 0x68]
- mov r6, sp
- adds r6, 0x14
- str r6, [sp, 0x6C]
- mov r4, sp
-_080DBD7A:
- bl Random
- strh r0, [r4]
- movs r2, 0
- cmp r2, r9
- bge _080DBDB8
- mov r1, sp
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bne _080DBD9C
- subs r4, 0x2
- movs r7, 0x1
- negs r7, r7
- add r9, r7
- b _080DBDB8
-_080DBD9C:
- adds r2, 0x1
- cmp r2, r9
- bge _080DBDB8
- lsls r0, r2, 1
- mov r3, sp
- adds r1, r3, r0
- ldrh r0, [r4]
- ldrh r1, [r1]
- cmp r0, r1
- bne _080DBD9C
- subs r4, 0x2
- movs r6, 0x1
- negs r6, r6
- add r9, r6
-_080DBDB8:
- adds r4, 0x2
- movs r7, 0x1
- add r9, r7
- mov r0, r9
- cmp r0, 0x3
- ble _080DBD7A
- movs r1, 0
- mov r9, r1
- mov r4, sp
- ldr r6, =gUnknown_02039F08
- ldr r2, [sp, 0x64]
- ldr r5, =gContestMonConditions
- ldr r3, [sp, 0x68]
-_080DBDD2:
- mov r7, r9
- lsls r1, r7, 4
- movs r7, 0
- ldrsh r0, [r6, r7]
- str r0, [r2]
- movs r7, 0
- ldrsh r0, [r5, r7]
- str r0, [r3]
- ldrh r0, [r4]
- str r0, [r2, 0x8]
- ldr r0, [sp, 0x6C]
- adds r1, r0, r1
- mov r7, r9
- str r7, [r1]
- adds r4, 0x2
- adds r6, 0x2
- adds r2, 0x10
- adds r5, 0x2
- adds r3, 0x10
- movs r0, 0x1
- add r9, r0
- mov r1, r9
- cmp r1, 0x3
- ble _080DBDD2
- movs r3, 0
- mov r9, r3
-_080DBE06:
- movs r4, 0x3
- cmp r4, r9
- ble _080DBE90
- add r7, sp, 0x48
- ldr r6, [sp, 0x68]
- str r6, [sp, 0x58]
- ldr r0, [sp, 0x64]
- adds r0, 0x8
- str r0, [sp, 0x5C]
- ldr r1, [sp, 0x6C]
- str r1, [sp, 0x60]
-_080DBE1C:
- subs r3, r4, 0x1
- mov r10, r3
- mov r0, r10
- adds r1, r4, 0
- ldr r2, [sp, 0x64]
- bl sub_80DBF30
- lsls r0, 24
- cmp r0, 0
- beq _080DBE8A
- mov r6, r10
- lsls r2, r6, 4
- ldr r0, [sp, 0x64]
- adds r3, r0, r2
- ldr r0, [r3]
- str r0, [sp, 0x48]
- ldr r1, [sp, 0x58]
- adds r6, r1, r2
- ldr r0, [r6]
- str r0, [r7, 0x4]
- ldr r0, [sp, 0x5C]
- adds r0, r2
- mov r8, r0
- ldr r0, [r0]
- str r0, [r7, 0x8]
- ldr r1, [sp, 0x60]
- adds r2, r1, r2
- ldr r0, [r2]
- str r0, [r7, 0xC]
- lsls r1, r4, 4
- ldr r0, [sp, 0x64]
- adds r5, r0, r1
- ldr r0, [r5]
- str r0, [r3]
- ldr r3, [sp, 0x58]
- adds r4, r3, r1
- ldr r0, [r4]
- str r0, [r6]
- ldr r6, [sp, 0x5C]
- adds r3, r6, r1
- ldr r0, [r3]
- mov r6, r8
- str r0, [r6]
- ldr r0, [sp, 0x60]
- adds r1, r0, r1
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, [sp, 0x48]
- str r0, [r5]
- ldr r0, [r7, 0x4]
- str r0, [r4]
- ldr r0, [r7, 0x8]
- str r0, [r3]
- ldr r0, [r7, 0xC]
- str r0, [r1]
-_080DBE8A:
- mov r4, r10
- cmp r4, r9
- bgt _080DBE1C
-_080DBE90:
- movs r1, 0x1
- add r9, r1
- mov r3, r9
- cmp r3, 0x2
- ble _080DBE06
- movs r6, 0
- mov r9, r6
- ldr r2, =gContestFinalStandings
- ldr r1, [sp, 0x6C]
-_080DBEA2:
- ldr r0, [r1]
- adds r0, r2
- mov r7, r9
- strb r7, [r0]
- adds r1, 0x10
- movs r0, 0x1
- add r9, r0
- mov r3, r9
- cmp r3, 0x3
- ble _080DBEA2
- add sp, 0x70
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DBD4C
-
- thumb_func_start sub_80DBED4
-sub_80DBED4: @ 80DBED4
- push {lr}
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080DBF0E
- ldr r0, =gSaveBlock2Ptr
- ldr r2, [r0]
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r1, 1
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- lsls r0, 3
- adds r1, r0
- ldr r0, =0x00000624
- adds r2, r0
- adds r2, r1
- ldrh r0, [r2]
- adds r0, 0x1
- ldr r1, =0x0000270f
- cmp r0, r1
- ble _080DBF0C
- adds r0, r1, 0
-_080DBF0C:
- strh r0, [r2]
-_080DBF0E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DBED4
-
- thumb_func_start sub_80DBF30
-sub_80DBF30: @ 80DBF30
- push {lr}
- lsls r0, 4
- adds r0, r2
- lsls r1, 4
- adds r3, r1, r2
- ldr r2, [r0]
- ldr r1, [r3]
- cmp r2, r1
- blt _080DBF60
- cmp r2, r1
- bgt _080DBF52
- ldr r2, [r0, 0x4]
- ldr r1, [r3, 0x4]
- cmp r2, r1
- blt _080DBF60
- cmp r2, r1
- ble _080DBF56
-_080DBF52:
- movs r2, 0
- b _080DBF62
-_080DBF56:
- ldr r1, [r0, 0x8]
- ldr r0, [r3, 0x8]
- movs r2, 0
- cmp r1, r0
- bge _080DBF62
-_080DBF60:
- movs r2, 0x1
-_080DBF62:
- adds r0, r2, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80DBF30
-
- thumb_func_start sub_80DBF68
-sub_80DBF68: @ 80DBF68
- push {lr}
- ldr r0, =gBattle_BG0_Y
- movs r1, 0
- strh r1, [r0]
- ldr r0, =gBattle_BG2_Y
- strh r1, [r0]
- bl sub_80DB89C
- ldr r0, =gUnknown_0827E8DA
- movs r1, 0
- bl Contest_StartTextPrinter
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DBF68
-
- thumb_func_start sub_80DBF90
-sub_80DBF90: @ 80DBF90
- push {r4,r5,lr}
- sub sp, 0xC
- movs r5, 0x80
- lsls r5, 18
- movs r4, 0x3
-_080DBF9A:
- lsrs r3, r5, 24
- movs r0, 0x8
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0x16
- bl ContestBG_FillBoxWithTile
- movs r0, 0xA0
- lsls r0, 19
- adds r5, r0
- subs r4, 0x1
- cmp r4, 0
- bge _080DBF9A
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80DBF90
-
- thumb_func_start sub_80DBFC8
-sub_80DBFC8: @ 80DBFC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =0x00005011
- cmp r0, 0
- beq _080DBFE2
- ldr r1, =0x00006011
- cmp r0, 0x1
- beq _080DBFE2
- ldr r1, =0x00008011
- cmp r0, 0x2
- bne _080DBFE2
- ldr r1, =0x00007011
-_080DBFE2:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DBFC8
-
- thumb_func_start sub_80DBFFC
-sub_80DBFFC: @ 80DBFFC
- push {lr}
- lsls r0, 16
- asrs r0, 16
- movs r1, 0xA
- bl __divsi3
- lsls r0, 24
- lsrs r1, r0, 24
- asrs r2, r0, 24
- cmp r2, 0x10
- ble _080DC016
- movs r1, 0x10
- b _080DC020
-_080DC016:
- movs r0, 0x10
- negs r0, r0
- cmp r2, r0
- bge _080DC020
- movs r1, 0xF0
-_080DC020:
- lsls r0, r1, 24
- asrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80DBFFC
-
- thumb_func_start sub_80DC028
-sub_80DC028: @ 80DC028
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- adds r6, r1, 0
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x14]
- lsls r1, r2, 2
- adds r1, r0
- ldrb r0, [r1, 0x2]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1, 0x2]
- ldr r0, =sub_80DC0F4
- movs r1, 0x14
- bl CreateTask
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r5, 16
- asrs r5, 16
- adds r0, r5, 0
- bl sub_80DBFFC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r6, 16
- asrs r6, 16
- adds r5, r6
- lsls r5, 16
- asrs r5, 16
- adds r0, r5, 0
- bl sub_80DBFFC
- lsls r4, 24
- asrs r4, 24
- subs r0, r4
- lsls r0, 24
- lsrs r5, r0, 24
- mov r0, r8
- bl sub_80DBFC8
- ldr r2, =gTasks
- lsls r3, r7, 2
- adds r0, r3, r7
- lsls r0, 3
- adds r1, r0, r2
- adds r0, r4, 0
- cmp r4, 0
- bge _080DC0A0
- negs r0, r4
-_080DC0A0:
- strh r0, [r1, 0x8]
- lsls r0, r5, 24
- asrs r0, 24
- strh r0, [r1, 0xA]
- cmp r4, 0
- bgt _080DC0B4
- cmp r4, 0
- bne _080DC0C8
- cmp r0, 0
- ble _080DC0C8
-_080DC0B4:
- movs r0, 0x1
- strh r0, [r1, 0xC]
- b _080DC0D6
- .pool
-_080DC0C8:
- ldr r2, =gTasks
- lsls r3, r7, 2
- adds r0, r3, r7
- lsls r0, 3
- adds r0, r2
- ldr r1, =0x0000ffff
- strh r1, [r0, 0xC]
-_080DC0D6:
- adds r0, r3, r7
- lsls r0, 3
- adds r0, r2
- mov r1, r8
- strh r1, [r0, 0xE]
- adds r0, r7, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DC028
-
- thumb_func_start sub_80DC0F4
-sub_80DC0F4: @ 80DC0F4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r4, r0, r1
- ldrb r0, [r4, 0xE]
- mov r9, r0
- ldrh r3, [r4, 0x8]
- ldrh r1, [r4, 0xA]
- ldrh r0, [r4, 0x1C]
- adds r0, 0x1
- strh r0, [r4, 0x1C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xE
- bgt _080DC126
- b _080DC2A8
-_080DC126:
- movs r0, 0
- strh r0, [r4, 0x1C]
- ldrh r2, [r4, 0xA]
- movs r5, 0xA
- ldrsh r0, [r4, r5]
- cmp r0, 0
- bne _080DC15C
- adds r0, r7, 0
- bl DestroyTask
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x14]
- mov r2, r9
- lsls r1, r2, 2
- adds r1, r0
- ldrb r2, [r1, 0x2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x2]
- b _080DC2A8
- .pool
-_080DC15C:
- cmp r3, 0
- bne _080DC1A4
- lsls r0, r1, 16
- mov r8, r0
- cmp r0, 0
- bge _080DC17A
- mov r0, r9
- bl sub_80DBFC8
- adds r0, 0x2
- lsls r0, 16
- lsrs r6, r0, 16
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- b _080DC188
-_080DC17A:
- mov r0, r9
- bl sub_80DBFC8
- lsls r0, 16
- lsrs r6, r0, 16
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
-_080DC188:
- strh r0, [r4, 0xA]
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x8]
- adds r2, r1, 0x1
- strh r2, [r0, 0x8]
- lsls r1, 24
- lsrs r5, r1, 24
- b _080DC210
- .pool
-_080DC1A4:
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- cmp r0, 0
- bge _080DC1DE
- lsls r0, r1, 16
- mov r8, r0
- cmp r0, 0
- bge _080DC1CC
- ldrh r0, [r4, 0x8]
- adds r1, r0, 0x1
- strh r1, [r4, 0x8]
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r2, 0x1
- strh r0, [r4, 0xA]
- mov r0, r9
- bl sub_80DBFC8
- adds r0, 0x2
- b _080DC20C
-_080DC1CC:
- ldrh r0, [r4, 0x8]
- subs r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- subs r0, r2, 0x1
- strh r0, [r4, 0xA]
- b _080DC210
-_080DC1DE:
- lsls r0, r1, 16
- mov r8, r0
- cmp r0, 0
- bge _080DC1F8
- ldrh r0, [r4, 0x8]
- subs r0, 0x1
- strh r0, [r4, 0x8]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- adds r0, r2, 0x1
- strh r0, [r4, 0xA]
- b _080DC210
-_080DC1F8:
- ldrh r0, [r4, 0x8]
- adds r1, r0, 0x1
- strh r1, [r4, 0x8]
- lsls r0, 24
- lsrs r5, r0, 24
- subs r0, r2, 0x1
- strh r0, [r4, 0xA]
- mov r0, r9
- bl sub_80DBFC8
-_080DC20C:
- lsls r0, 16
- lsrs r6, r0, 16
-_080DC210:
- str r5, [sp, 0xC]
- movs r0, 0
- mov r10, r0
- cmp r5, 0x7
- bls _080DC226
- movs r2, 0x1
- mov r10, r2
- adds r0, r5, 0
- subs r0, 0x8
- lsls r0, 24
- lsrs r5, r0, 24
-_080DC226:
- adds r2, r5, 0
- adds r2, 0x16
- lsls r2, 24
- lsrs r2, 24
- ldr r0, =gUnknown_02039F26
- add r0, r9
- ldrb r0, [r0]
- lsls r3, r0, 2
- adds r3, r0
- adds r3, 0x2
- add r3, r10
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x1
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- adds r1, r6, 0
- bl ContestBG_FillBoxWithTile
- mov r3, r8
- cmp r3, 0
- ble _080DC284
- movs r0, 0x60
- bl PlaySE
- ldr r4, =gMPlayInfo_SE1
- adds r0, r4, 0
- bl m4aMPlayImmInit
- ldr r1, =0x0000ffff
- ldr r0, [sp, 0xC]
- lsls r2, r0, 24
- asrs r2, 16
- adds r0, r4, 0
- bl m4aMPlayPitchControl
- b _080DC28A
- .pool
-_080DC284:
- movs r0, 0x16
- bl PlaySE
-_080DC28A:
- mov r2, r10
- cmp r2, 0
- bne _080DC2A8
- cmp r5, 0
- bne _080DC2A8
- cmp r6, 0
- bne _080DC2A8
- ldr r0, =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0xC]
- negs r0, r0
- strh r0, [r1, 0xC]
-_080DC2A8:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC0F4
-
- thumb_func_start sub_80DC2BC
-sub_80DC2BC: @ 80DC2BC
- push {r4,r5,lr}
- ldr r0, =gUnknown_08587A74
- bl LoadSpriteSheet
- movs r4, 0
- ldr r5, =gUnknown_08587A6C
-_080DC2C8:
- ldr r0, =gUnknown_02039F26
- adds r0, r4, r0
- ldrb r0, [r0]
- adds r0, r5
- ldrb r2, [r0]
- ldr r0, =gSpriteTemplate_8587AD0
- movs r1, 0xB4
- movs r3, 0x1
- bl CreateSprite
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r2, [r1, 0x14]
- lsls r1, r4, 2
- adds r1, r2
- strb r0, [r1]
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DC2C8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC2BC
-
- thumb_func_start sub_80DC308
-sub_80DC308: @ 80DC308
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r2, [r0, 0x14]
- lsls r3, r6, 2
- adds r2, r3, r2
- ldrb r0, [r2, 0x2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x2]
- ldr r1, [r4]
- ldr r0, [r1, 0x14]
- adds r3, r0
- ldrb r7, [r3]
- ldr r1, [r1, 0x4]
- lsls r0, r6, 3
- subs r0, r6
- lsls r0, 2
- adds r0, r1
- movs r1, 0x4
- ldrsh r0, [r0, r1]
- movs r1, 0xA
- bl __divsi3
- lsls r0, 17
- lsrs r5, r0, 16
- asrs r0, 16
- cmp r0, 0x38
- ble _080DC350
- movs r5, 0x38
- b _080DC356
- .pool
-_080DC350:
- cmp r0, 0
- bge _080DC356
- movs r5, 0
-_080DC356:
- ldr r2, =gSprites
- lsls r3, r7, 4
- adds r0, r3, r7
- lsls r0, 2
- adds r4, r0, r2
- movs r0, 0x3E
- adds r0, r4
- mov r12, r0
- ldrb r1, [r0]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- mov r1, r12
- strb r0, [r1]
- strh r6, [r4, 0x2E]
- strh r5, [r4, 0x30]
- lsls r0, r5, 16
- asrs r0, 16
- movs r5, 0x24
- ldrsh r1, [r4, r5]
- cmp r0, r1
- ble _080DC38C
- movs r0, 0x1
- b _080DC38E
- .pool
-_080DC38C:
- ldr r0, =0x0000ffff
-_080DC38E:
- strh r0, [r4, 0x32]
- adds r0, r3, r7
- lsls r0, 2
- adds r1, r2, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, =sub_80DC408
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC308
-
- thumb_func_start sub_80DC3AC
-sub_80DC3AC: @ 80DC3AC
- push {r4,lr}
- movs r4, 0
-_080DC3B0:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DC308
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DC3B0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DC3AC
-
- thumb_func_start sub_80DC3C4
-sub_80DC3C4: @ 80DC3C4
- push {r4,lr}
- movs r2, 0
- ldr r3, =gContestResources
- ldr r0, [r3]
- ldr r0, [r0, 0x14]
- ldrb r1, [r0, 0x2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080DC3F2
- movs r4, 0x1
-_080DC3DA:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080DC3F2
- ldr r0, [r3]
- ldr r1, [r0, 0x14]
- lsls r0, r2, 2
- adds r0, r1
- ldrb r1, [r0, 0x2]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _080DC3DA
-_080DC3F2:
- cmp r2, 0x4
- beq _080DC400
- movs r0, 0
- b _080DC402
- .pool
-_080DC400:
- movs r0, 0x1
-_080DC402:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80DC3C4
-
- thumb_func_start sub_80DC408
-sub_80DC408: @ 80DC408
- push {r4,lr}
- adds r3, r0, 0
- ldrh r2, [r3, 0x24]
- movs r0, 0x24
- ldrsh r1, [r3, r0]
- movs r4, 0x30
- ldrsh r0, [r3, r4]
- cmp r1, r0
- bne _080DC440
- ldr r0, =gContestResources
- ldr r0, [r0]
- movs r2, 0x2E
- ldrsh r1, [r3, r2]
- ldr r0, [r0, 0x14]
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1, 0x2]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x2]
- ldr r0, =SpriteCallbackDummy
- str r0, [r3, 0x1C]
- b _080DC446
- .pool
-_080DC440:
- ldrh r0, [r3, 0x32]
- adds r0, r2, r0
- strh r0, [r3, 0x24]
-_080DC446:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DC408
-
- thumb_func_start sub_80DC44C
-sub_80DC44C: @ 80DC44C
- push {r4-r6,lr}
- movs r2, 0
- ldr r6, =gSprites
- ldr r5, =gContestResources
- ldr r4, =gUnknown_08587A6C
- ldr r3, =gUnknown_02039F26
-_080DC458:
- ldr r0, [r5]
- ldr r1, [r0, 0x14]
- lsls r0, r2, 2
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r0, r2, r3
- ldrb r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- strh r0, [r1, 0x22]
- adds r2, 0x1
- cmp r2, 0x3
- ble _080DC458
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC44C
-
- thumb_func_start sub_80DC490
-sub_80DC490: @ 80DC490
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r3, 0
- ldr r7, =gUnknown_02039F26
- ldr r5, =gSprites
- ldr r4, =gContestResources
- movs r2, 0
-_080DC4A0:
- adds r0, r3, r7
- ldrb r0, [r0]
- cmp r0, 0x1
- bls _080DC4E2
- cmp r6, 0
- bne _080DC4CC
- ldr r0, [r4]
- ldr r0, [r0, 0x14]
- adds r0, r2, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0xB4
- b _080DC4E0
- .pool
-_080DC4CC:
- ldr r0, [r4]
- ldr r0, [r0, 0x14]
- adds r0, r2, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x80
- lsls r1, 1
-_080DC4E0:
- strh r1, [r0, 0x20]
-_080DC4E2:
- adds r2, 0x4
- adds r3, 0x1
- cmp r3, 0x3
- ble _080DC4A0
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80DC490
-
- thumb_func_start sub_80DC4F0
-sub_80DC4F0: @ 80DC4F0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, =gUnknown_08587B08
- bl LoadSpritePalette
- movs r5, 0
- ldr r7, =gContestResources
- ldr r0, =gSprites
- mov r8, r0
- movs r6, 0
-_080DC506:
- lsls r0, r5, 3
- ldr r1, =gUnknown_08587AE8
- adds r0, r1
- bl LoadCompressedSpriteSheet
- ldr r0, =gSpriteTemplate_8587B18
- adds r0, r6, r0
- ldr r2, =gUnknown_08587A70
- ldr r1, =gUnknown_02039F26
- adds r1, r5, r1
- ldrb r1, [r1]
- adds r1, r2
- ldrb r2, [r1]
- movs r1, 0xCC
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- ldr r1, [r1, 0x14]
- lsls r4, r5, 2
- adds r1, r4, r1
- strb r0, [r1, 0x1]
- ldr r0, [r7]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0, 0x1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldr r1, =gSubspriteTables_8587B80
- bl SetSubspriteTables
- ldr r0, [r7]
- ldr r0, [r0, 0x14]
- adds r4, r0
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- adds r6, 0x18
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DC506
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC4F0
-
- thumb_func_start sub_80DC594
-sub_80DC594: @ 80DC594
- push {lr}
- ldr r0, =gUnknown_08587BB0
- bl LoadCompressedSpriteSheet
- ldr r0, =gUnknown_08587BB8
- bl LoadSpritePalette
- ldr r0, =gSpriteTemplate_8587BC8
- movs r1, 0x1E
- movs r2, 0x2C
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r3, 0x4
- orrs r2, r3
- strb r2, [r1]
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r1, [r1]
- adds r1, 0x58
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC594
-
- thumb_func_start sub_80DC5E8
-sub_80DC5E8: @ 80DC5E8
- push {r4,lr}
- ldr r0, =sub_80DC728
- movs r1, 0x1E
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r1, [r1]
- strb r0, [r1, 0xD]
- movs r2, 0
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r4, =gTasks + 0x8
- movs r3, 0xFF
-_080DC60A:
- lsls r0, r2, 3
- adds r0, r1
- adds r0, r4
- strh r3, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _080DC60A
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC5E8
-
- thumb_func_start sub_80DC630
-sub_80DC630: @ 80DC630
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- ldr r1, =gContestResources
- ldr r5, [r1]
- ldr r1, [r5]
- ldrb r2, [r1, 0xD]
- lsls r1, r2, 2
- adds r1, r2
- adds r1, r0
- lsls r1, 3
- adds r3, 0x8
- adds r1, r3
- movs r4, 0
- strh r4, [r1]
- lsls r0, 2
- adds r0, 0x1
- lsls r0, 1
- ldr r1, [r5]
- ldrb r2, [r1, 0xD]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r0, r1
- adds r0, r3
- strh r4, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC630
-
- thumb_func_start sub_80DC674
-sub_80DC674: @ 80DC674
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =sub_80DC6A4
- movs r1, 0x1F
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC674
-
- thumb_func_start sub_80DC6A4
-sub_80DC6A4: @ 80DC6A4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0, 0
- ldr r2, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x8]
- adds r5, r0, 0
- ldr r0, =gContestResources
- ldr r4, [r0]
- ldr r0, [r4]
- ldrb r1, [r0, 0xD]
- lsls r0, r1, 2
- adds r0, r1
- adds r0, r5
- lsls r0, 3
- adds r7, r2, 0
- adds r7, 0x8
- adds r1, r0, r7
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _080DC6DC
- cmp r0, 0xFF
- bne _080DC716
-_080DC6DC:
- movs r3, 0
- movs r0, 0xFF
- strh r0, [r1]
- lsls r1, r5, 2
- adds r1, 0x1
- lsls r1, 1
- ldr r0, [r4]
- ldrb r2, [r0, 0xD]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, r7
- strh r3, [r1]
- ldr r0, [r4]
- adds r0, 0x14
- adds r0, r5
- ldrb r0, [r0]
- adds r0, 0x5
- lsls r0, 4
- adds r0, 0x6
- ldr r3, =0x00004bff
- movs r1, 0x2
- movs r2, 0
- bl BlendPalette
- adds r0, r6, 0
- bl DestroyTask
-_080DC716:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC6A4
-
- thumb_func_start sub_80DC728
-sub_80DC728: @ 80DC728
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0
- lsls r1, r0, 2
- adds r1, r0
- mov r9, r1
- lsls r7, r1, 3
- ldr r0, =gTasks + 0x8
- mov r8, r0
- movs r1, 0x8
- negs r1, r1
- add r1, r8
- mov r10, r1
-_080DC74C:
- lsls r0, r6, 26
- lsrs r3, r0, 24
- lsls r0, r3, 1
- adds r0, r7
- mov r4, r8
- adds r2, r0, r4
- ldrh r4, [r2]
- movs r5, 0
- ldrsh r0, [r2, r5]
- cmp r0, 0xFF
- beq _080DC7CA
- adds r0, r3, 0x1
- lsls r1, r0, 1
- adds r1, r7
- add r1, r8
- movs r5, 0
- ldrsh r1, [r1, r5]
- adds r5, r0, 0
- cmp r1, 0
- bne _080DC77C
- adds r0, r4, 0x1
- b _080DC77E
- .pool
-_080DC77C:
- subs r0, r4, 0x1
-_080DC77E:
- strh r0, [r2]
- lsls r1, r3, 1
- mov r0, r9
- lsls r2, r0, 3
- adds r0, r1, r2
- mov r3, r10
- adds r3, 0x8
- adds r0, r3
- movs r4, 0
- ldrsh r0, [r0, r4]
- adds r4, r1, 0
- cmp r0, 0x10
- beq _080DC79C
- cmp r0, 0
- bne _080DC7AA
-_080DC79C:
- lsls r0, r5, 1
- adds r0, r2
- adds r0, r3
- ldrh r1, [r0]
- movs r2, 0x1
- eors r1, r2
- strh r1, [r0]
-_080DC7AA:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0x14
- adds r0, r6
- ldrb r0, [r0]
- adds r0, 0x5
- lsls r0, 4
- adds r0, 0x6
- adds r1, r4, r7
- add r1, r8
- ldrb r2, [r1]
- movs r1, 0x2
- ldr r3, =0x00004bff
- bl BlendPalette
-_080DC7CA:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _080DC74C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC728
-
- thumb_func_start sub_80DC7EC
-sub_80DC7EC: @ 80DC7EC
- push {r4,lr}
- ldr r0, =sub_80DC8D0
- movs r1, 0x1E
- bl CreateTask
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r1, [r1]
- strb r0, [r1, 0xE]
- movs r4, 0
-_080DC800:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DC81C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DC800
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC7EC
-
- thumb_func_start sub_80DC81C
-sub_80DC81C: @ 80DC81C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =gTasks
- ldr r1, =gContestResources
- ldr r4, [r1]
- ldr r1, [r4]
- ldrb r2, [r1, 0xE]
- lsls r1, r2, 2
- adds r1, r2
- adds r1, r0
- lsls r1, 3
- adds r3, 0x8
- adds r1, r3
- movs r5, 0
- movs r2, 0xFF
- strh r2, [r1]
- lsls r0, 2
- adds r0, 0x1
- lsls r0, 1
- ldr r1, [r4]
- ldrb r2, [r1, 0xE]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r0, r1
- adds r0, r3
- strh r5, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC81C
-
- thumb_func_start sub_80DC864
-sub_80DC864: @ 80DC864
- push {r4,lr}
- movs r4, 0
-_080DC868:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80DC87C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DC868
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DC864
-
- thumb_func_start sub_80DC87C
-sub_80DC87C: @ 80DC87C
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_80DC81C
- adds r0, r4, 0x5
- lsls r2, r0, 5
- ldr r3, =gPlttBufferUnfaded + 0x14
- adds r6, r2, r3
- ldr r5, =gPlttBufferFaded + 0x14
- adds r2, r5
- ldr r1, =0x040000d4
- str r6, [r1]
- str r2, [r1, 0x4]
- ldr r2, =0x80000001
- str r2, [r1, 0x8]
- ldr r6, [r1, 0x8]
- lsls r0, 4
- adds r4, 0xC
- adds r0, r4
- lsls r0, 1
- subs r3, 0x14
- adds r3, r0, r3
- subs r5, 0x14
- adds r0, r5
- str r3, [r1]
- str r0, [r1, 0x4]
- str r2, [r1, 0x8]
- ldr r0, [r1, 0x8]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC87C
-
- thumb_func_start sub_80DC8D0
-sub_80DC8D0: @ 80DC8D0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- movs r7, 0
- lsls r1, r0, 2
- adds r1, r0
- mov r9, r1
- lsls r6, r1, 3
- ldr r0, =gTasks + 0x8
- mov r8, r0
- ldr r1, =0x00004bff
- mov r10, r1
-_080DC8F0:
- lsls r0, r7, 26
- lsrs r3, r0, 24
- lsls r0, r3, 1
- adds r0, r6
- mov r4, r8
- adds r2, r0, r4
- movs r5, 0
- ldrsh r0, [r2, r5]
- cmp r0, 0xFF
- beq _080DC996
- adds r0, r3, 0x2
- lsls r0, 1
- adds r0, r6
- adds r1, r0, r4
- ldrh r0, [r1]
- adds r0, 0x1
- movs r4, 0
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2
- ble _080DC996
- strh r4, [r1]
- adds r0, r3, 0x1
- lsls r1, r0, 1
- adds r1, r6
- add r1, r8
- movs r4, 0
- ldrsh r1, [r1, r4]
- adds r4, r0, 0
- cmp r1, 0
- bne _080DC940
- ldrh r0, [r2]
- adds r0, 0x1
- b _080DC944
- .pool
-_080DC940:
- ldrh r0, [r2]
- subs r0, 0x1
-_080DC944:
- strh r0, [r2]
- lsls r1, r3, 1
- mov r5, r9
- lsls r2, r5, 3
- adds r0, r1, r2
- ldr r3, =gTasks
- adds r3, 0x8
- adds r0, r3
- movs r5, 0
- ldrsh r0, [r0, r5]
- adds r5, r1, 0
- cmp r0, 0x10
- beq _080DC962
- cmp r0, 0
- bne _080DC970
-_080DC962:
- lsls r0, r4, 1
- adds r0, r2
- adds r0, r3
- ldrh r1, [r0]
- movs r2, 0x1
- eors r1, r2
- strh r1, [r0]
-_080DC970:
- adds r4, r7, 0x5
- lsls r4, 4
- adds r0, r4, 0
- adds r0, 0xA
- adds r5, r6
- add r5, r8
- ldrb r2, [r5]
- movs r1, 0x1
- mov r3, r10
- bl BlendPalette
- adds r4, 0xC
- adds r4, r7
- ldrb r2, [r5]
- adds r0, r4, 0
- movs r1, 0x1
- mov r3, r10
- bl BlendPalette
-_080DC996:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _080DC8F0
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DC8D0
-
- thumb_func_start sub_80DC9B4
-sub_80DC9B4: @ 80DC9B4
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x15]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080DC9E0
- adds r0, r2, 0
- bl sub_80DC630
- b _080DC9E6
- .pool
-_080DC9E0:
- adds r0, r2, 0
- bl sub_80DC674
-_080DC9E6:
- pop {r0}
- bx r0
- thumb_func_end sub_80DC9B4
-
- thumb_func_start sub_80DC9EC
-sub_80DC9EC: @ 80DC9EC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- ldr r6, =gUnknown_02039F26
- adds r6, r0, r6
- ldrb r0, [r6]
- lsls r5, r0, 2
- adds r5, r0
- lsls r5, 27
- movs r0, 0x80
- lsls r0, 22
- adds r5, r0
- lsrs r5, 24
- ldr r1, [sp, 0xC]
- lsls r4, r1, 3
- ldr r0, =gUnknown_08589904
- adds r0, r4, r0
- bl LoadCompressedSpriteSheet
- ldr r0, =gUnknown_08589924
- adds r4, r0
- adds r0, r4, 0
- bl LoadSpritePalette
- ldr r2, [sp, 0xC]
- lsls r4, r2, 1
- adds r4, r2
- lsls r4, 3
- ldr r0, =gSpriteTemplate_858998C
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB8
- adds r2, r5, 0
- movs r3, 0x1D
- bl CreateSprite
- mov r9, r0
- mov r3, r9
- lsls r3, 24
- lsrs r3, 24
- mov r9, r3
- adds r0, r4, 0
- movs r1, 0xF8
- adds r2, r5, 0
- movs r3, 0x1D
- bl CreateSprite
- mov r8, r0
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r5, r0, 4
- add r5, r8
- lsls r5, 2
- ldr r1, =gSprites
- adds r5, r1
- ldrh r2, [r5, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- adds r1, 0x40
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r1, r0
- ldr r0, =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- movs r4, 0xC0
- lsls r4, 19
- ldrb r0, [r6]
- lsls r3, r0, 2
- adds r3, r0
- lsls r3, 6
- ldr r0, =0x0600e026
- adds r3, r0
- ldr r7, =gContestResources
- ldr r0, [r7]
- ldr r0, [r0, 0x34]
- str r0, [sp]
- movs r0, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl CopySpriteTiles
- ldrb r0, [r6]
- lsls r3, r0, 2
- adds r3, r0
- lsls r3, 6
- ldr r1, =0x0600e036
- adds r3, r1
- ldr r0, [r7]
- ldr r0, [r0, 0x38]
- str r0, [sp]
- movs r0, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl CopySpriteTiles
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r0, [r7]
- ldr r1, [r0, 0x34]
- movs r6, 0xA0
- lsls r6, 3
- adds r1, r6
- ldr r2, =0x050000c0
- mov r10, r2
- add r0, sp, 0x4
- bl CpuSet
- str r4, [sp, 0x8]
- add r0, sp, 0x8
- ldr r1, [r7]
- ldr r1, [r1, 0x38]
- adds r1, r6
- mov r2, r10
- bl CpuSet
- ldr r0, [r7]
- ldr r0, [r0, 0x34]
- mov r3, r9
- lsls r4, r3, 4
- add r4, r9
- lsls r4, 2
- ldr r1, =gSprites
- adds r4, r1
- ldrh r1, [r4, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r6, =0x06010000
- adds r1, r6
- movs r2, 0x80
- lsls r2, 4
- mov r10, r2
- movs r3, 0x1
- bl RequestDma3Copy
- ldr r0, [r7]
- ldr r0, [r0, 0x38]
- ldrh r1, [r5, 0x4]
- lsls r1, 22
- lsrs r1, 17
- adds r1, r6
- mov r2, r10
- movs r3, 0x1
- bl RequestDma3Copy
- mov r3, r8
- strh r3, [r4, 0x2E]
- mov r0, r9
- strh r0, [r5, 0x2E]
- mov r1, sp
- ldrh r1, [r1, 0xC]
- strh r1, [r4, 0x30]
- mov r2, sp
- ldrh r2, [r2, 0xC]
- strh r2, [r5, 0x30]
- mov r0, r9
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DC9EC
-
- thumb_func_start sub_80DCB78
-sub_80DCB78: @ 80DCB78
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gSprites
- lsls r5, r0, 4
- adds r5, r0
- lsls r5, 2
- adds r5, r1
- ldrh r0, [r5, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- adds r4, r1
- adds r0, r4, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- adds r0, r5, 0
- bl DestroySpriteAndFreeResources
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCB78
-
- thumb_func_start sub_80DCBB4
-sub_80DCBB4: @ 80DCBB4
- push {lr}
- movs r1, 0xFD
- lsls r1, 6
- movs r0, 0x50
- bl SetGpuReg
- ldr r1, =0x00000907
- movs r0, 0x52
- bl SetGpuReg
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCBB4
-
- thumb_func_start sub_80DCBD0
-sub_80DCBD0: @ 80DCBD0
- push {lr}
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- pop {r0}
- bx r0
- thumb_func_end sub_80DCBD0
-
- thumb_func_start sub_80DCBE8
-sub_80DCBE8: @ 80DCBE8
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- adds r4, r0, 0
- mov r9, r1
- lsls r4, 24
- lsrs r4, 24
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- bl sub_80DCBB4
- ldr r0, =gContestResources
- ldr r1, [r0]
- ldr r2, =gSprites
- mov r8, r2
- lsls r6, r4, 4
- adds r6, r4
- lsls r6, 2
- adds r0, r6, r2
- movs r3, 0x30
- ldrsh r2, [r0, r3]
- ldr r1, [r1, 0x14]
- lsls r2, 2
- adds r2, r1
- ldrb r1, [r2, 0x2]
- movs r3, 0x2
- orrs r1, r3
- strb r1, [r2, 0x2]
- ldrh r5, [r0, 0x2E]
- lsls r5, 24
- lsrs r5, 24
- movs r1, 0x1
- bl StartSpriteAffineAnim
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- mov r1, r8
- adds r0, r4, r1
- movs r1, 0x1
- bl StartSpriteAffineAnim
- movs r2, 0x1C
- add r8, r2
- add r6, r8
- ldr r0, =sub_80DCC84
- str r0, [r6]
- add r4, r8
- ldr r0, =SpriteCallbackDummy
- str r0, [r4]
- mov r3, r9
- cmp r3, 0
- bne _080DCC70
- movs r0, 0x65
- bl PlaySE
- b _080DCC76
- .pool
-_080DCC70:
- movs r0, 0x2
- bl PlaySE
-_080DCC76:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80DCBE8
-
- thumb_func_start sub_80DCC84
-sub_80DCC84: @ 80DCC84
- push {lr}
- mov r12, r0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080DCCCC
- mov r0, r12
- ldrh r1, [r0, 0x2E]
- lsls r1, 24
- lsrs r1, 24
- ldr r2, =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 26
- cmp r0, 0
- bge _080DCCCC
- mov r3, r12
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r3]
- adds r1, 0x3E
- ldrb r0, [r1]
- orrs r0, r2
- strb r0, [r1]
- ldr r0, =sub_80DCCD8
- mov r1, r12
- str r0, [r1, 0x1C]
-_080DCCCC:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCC84
-
- thumb_func_start sub_80DCCD8
-sub_80DCCD8: @ 80DCCD8
- push {lr}
- ldr r1, =gContestResources
- ldr r1, [r1]
- movs r3, 0x30
- ldrsh r2, [r0, r3]
- ldr r1, [r1, 0x14]
- lsls r2, 2
- adds r2, r1
- ldrb r3, [r2, 0x2]
- movs r1, 0x3
- negs r1, r1
- ands r1, r3
- strb r1, [r2, 0x2]
- ldrh r0, [r0, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80DCB78
- bl sub_80DCBD0
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCCD8
-
- thumb_func_start sub_80DCD08
-sub_80DCD08: @ 80DCD08
- push {lr}
- ldr r0, =gHeap
- movs r1, 0xD0
- lsls r1, 9
- adds r2, r0, r1
- ldrb r1, [r2]
- adds r3, r0, 0
- cmp r1, 0x1
- bne _080DCD24
- movs r0, 0
- b _080DCD26
- .pool
-_080DCD24:
- movs r0, 0x1
-_080DCD26:
- strb r0, [r2]
- movs r1, 0xD0
- lsls r1, 9
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DCD3E
- bl sub_80DAEA4
- bl sub_80DB2BC
- b _080DCD42
-_080DCD3E:
- bl sub_80DCD48
-_080DCD42:
- pop {r0}
- bx r0
- thumb_func_end sub_80DCD08
-
- thumb_func_start sub_80DCD48
-sub_80DCD48: @ 80DCD48
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r0, =gUnknown_020322D5
- ldrb r0, [r0]
- cmp r0, 0
- beq _080DCE44
- ldr r0, =gHeap
- movs r1, 0xD0
- lsls r1, 9
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080DCE44
- cmp r0, 0
- blt _080DCD7C
- cmp r0, 0x3
- bgt _080DCD7C
- cmp r0, 0x2
- blt _080DCD7C
- bl sub_80DF750
- b _080DCE44
- .pool
-_080DCD7C:
- movs r5, 0
-_080DCD7E:
- adds r0, r5, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _080DCD7E
- movs r5, 0
-_080DCD92:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- add r2, sp, 0x4
- ldrh r4, [r0, 0x4]
- movs r1, 0x4
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080DCDBC
- negs r0, r0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r2, 0
- ldr r1, =gText_OneDash
- bl StringCopy
- adds r2, r0, 0
-_080DCDBC:
- lsls r1, r4, 16
- asrs r1, 16
- adds r0, r2, 0
- movs r2, 0
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- ldr r0, =gUnknown_02039F26
- adds r0, r5, r0
- ldrb r0, [r0]
- movs r1, 0x7
- str r1, [sp]
- add r1, sp, 0x4
- movs r2, 0x37
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _080DCD92
- movs r5, 0
-_080DCDEA:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- add r2, sp, 0x4
- ldrh r4, [r0, 0x2]
- movs r1, 0x2
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080DCE14
- negs r0, r0
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r2, 0
- ldr r1, =gText_OneDash
- bl StringCopy
- adds r2, r0, 0
-_080DCE14:
- lsls r1, r4, 16
- asrs r1, 16
- adds r0, r2, 0
- movs r2, 0
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- ldr r0, =gUnknown_02039F26
- adds r0, r5, r0
- ldrb r0, [r0]
- movs r1, 0x7
- str r1, [sp]
- add r1, sp, 0x4
- movs r2, 0x5
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _080DCDEA
- bl sub_80DB2BC
-_080DCE44:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCD48
-
- thumb_func_start sub_80DCE58
-sub_80DCE58: @ 80DCE58
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- add r4, sp, 0x4
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x8
- bl memset
- movs r5, 0
- add r4, sp, 0x4
- adds r6, r4, 0
- movs r7, 0
-_080DCE7E:
- bl Random
- adds r1, r0, 0
- mov r0, sp
- adds r0, r7
- adds r0, 0x4
- strh r1, [r0]
- movs r2, 0
- cmp r2, r5
- bge _080DCEB6
- lsls r0, r1, 16
- lsrs r0, 16
- mov r1, sp
- ldrh r1, [r1, 0x4]
- cmp r0, r1
- beq _080DCEB0
-_080DCE9E:
- adds r2, 0x1
- cmp r2, r5
- bge _080DCEB6
- lsls r0, r2, 1
- adds r0, r4, r0
- ldrh r1, [r6]
- ldrh r0, [r0]
- cmp r1, r0
- bne _080DCE9E
-_080DCEB0:
- subs r6, 0x2
- subs r7, 0x2
- subs r5, 0x1
-_080DCEB6:
- adds r6, 0x2
- adds r7, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DCE7E
- mov r2, r8
- cmp r2, 0
- bne _080DCF80
- movs r5, 0
- ldr r3, =gUnknown_02039F26
- mov r8, r3
-_080DCECC:
- mov r6, r8
- strb r5, [r6]
- movs r4, 0
- cmp r4, r5
- bge _080DCF48
- ldr r7, =gContestMonConditions
- mov r9, r7
- lsls r0, r5, 1
- adds r1, r0, 0
- add r1, r9
- mov r12, r1
- mov r2, sp
- adds r2, 0x4
- str r2, [sp, 0xC]
- add r0, sp
- adds r0, 0x4
- str r0, [sp, 0x10]
- ldr r3, =gUnknown_02039F26
- adds r6, r3, 0
- mov r10, r6
-_080DCEF4:
- ldrb r0, [r3]
- lsls r2, r0, 1
- mov r7, r9
- adds r0, r2, r7
- movs r6, 0
- ldrsh r1, [r0, r6]
- mov r7, r12
- movs r6, 0
- ldrsh r0, [r7, r6]
- cmp r1, r0
- blt _080DCF1C
- cmp r1, r0
- bne _080DCF40
- ldr r7, [sp, 0xC]
- adds r0, r7, r2
- ldrh r0, [r0]
- ldr r1, [sp, 0x10]
- ldrh r1, [r1]
- cmp r0, r1
- bcs _080DCF40
-_080DCF1C:
- adds r2, r5, 0
- cmp r5, r4
- ble _080DCF34
- subs r0, r5, 0x1
- mov r6, r10
- adds r1, r0, r6
-_080DCF28:
- ldrb r0, [r1]
- strb r0, [r1, 0x1]
- subs r1, 0x1
- subs r2, 0x1
- cmp r2, r4
- bgt _080DCF28
-_080DCF34:
- strb r5, [r3]
- b _080DCF48
- .pool
-_080DCF40:
- adds r3, 0x1
- adds r4, 0x1
- cmp r4, r5
- blt _080DCEF4
-_080DCF48:
- cmp r4, r5
- bne _080DCF50
- mov r7, r8
- strb r5, [r7]
-_080DCF50:
- movs r0, 0x1
- add r8, r0
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DCECC
- ldr r4, =gUnknown_02039F26
- mov r0, sp
- adds r1, r4, 0
- movs r2, 0x4
- bl memcpy
- movs r5, 0
-_080DCF68:
- mov r1, sp
- adds r0, r1, r5
- ldrb r0, [r0]
- adds r0, r4
- strb r5, [r0]
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DCF68
- b _080DD034
- .pool
-_080DCF80:
- mov r0, sp
- movs r1, 0xFF
- movs r2, 0x4
- bl memset
- movs r5, 0
- ldr r3, =gUnknown_02039F26
- movs r6, 0
-_080DCF90:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- adds r0, r6, r0
- ldrb r0, [r0, 0xB]
- lsls r0, 30
- lsrs r2, r0, 30
- mov r7, sp
- adds r1, r7, r2
- b _080DCFB6
- .pool
-_080DCFAC:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- mov r0, sp
- adds r1, r0, r2
-_080DCFB6:
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _080DCFAC
- strb r5, [r1]
- strb r2, [r3]
- adds r3, 0x1
- adds r6, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DCF90
- movs r5, 0
-_080DCFCC:
- movs r4, 0x3
- adds r1, r5, 0x1
- mov r10, r1
- cmp r4, r5
- ble _080DD02E
- mov r9, r4
- ldr r2, =gUnknown_02039F26
- mov r8, r2
- add r3, sp, 0x4
- mov r12, r3
-_080DCFE0:
- ldr r6, =gContestResources
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- adds r0, r1
- adds r1, r0, 0
- subs r1, 0x1C
- ldrb r2, [r1, 0xB]
- ldrb r3, [r0, 0xB]
- mov r1, r9
- ands r1, r2
- mov r0, r9
- ands r0, r3
- subs r3, r4, 0x1
- cmp r1, r0
- bne _080DD028
- mov r0, r8
- adds r7, r3, r0
- adds r2, r4, r0
- ldrb r6, [r7]
- ldrb r1, [r2]
- cmp r6, r1
- bcs _080DD028
- lsls r0, r3, 1
- add r0, r12
- lsls r1, r4, 1
- add r1, r12
- ldrh r0, [r0]
- ldrh r1, [r1]
- cmp r0, r1
- bcs _080DD028
- ldrb r0, [r2]
- strb r6, [r2]
- strb r0, [r7]
-_080DD028:
- adds r4, r3, 0
- cmp r4, r5
- bgt _080DCFE0
-_080DD02E:
- mov r5, r10
- cmp r5, 0x2
- ble _080DCFCC
-_080DD034:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DCE58
-
- thumb_func_start sub_80DD04C
-sub_80DD04C: @ 80DD04C
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0xA0
-_080DD052:
- ldr r0, =gHeap+0x1A004
- adds r0, r5, r0
- ldr r1, =gUnknown_02039F26
- adds r1, r4, r1
- ldrb r1, [r1]
- adds r1, 0x5
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- adds r5, 0x20
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DD052
- bl sub_80DAEA4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD04C
-
- thumb_func_start sub_80DD080
-sub_80DD080: @ 80DD080
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, =gContestResources
- ldr r3, [r4]
- ldr r1, [r3, 0x4]
- lsls r7, r6, 3
- subs r0, r7, r6
- lsls r5, r0, 2
- adds r1, r5, r1
- movs r2, 0
- strh r2, [r1, 0x2]
- ldr r0, [r3, 0x4]
- adds r0, r5, r0
- strh r2, [r0]
- adds r0, r6, 0
- bl sub_80DBA68
- lsls r0, 24
- mov r8, r4
- cmp r0, 0
- bne _080DD0B4
- b _080DD3C4
-_080DD0B4:
- ldr r0, [r4]
- ldr r1, [r0, 0x4]
- adds r1, r5, r1
- ldrh r0, [r1, 0x6]
- ldr r2, =gContestMoves
- lsls r0, 3
- adds r0, r2
- ldrb r2, [r0]
- mov r9, r2
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- lsrs r0, 29
- strb r0, [r1, 0xA]
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- adds r2, r5, r0
- ldrh r0, [r2, 0x6]
- ldrh r1, [r2, 0x8]
- cmp r0, r1
- bne _080DD110
- cmp r0, 0
- beq _080DD110
- ldrb r0, [r2, 0x15]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x15]
- ldr r0, [r4]
- ldr r2, [r0, 0x4]
- adds r2, r5, r2
- ldrb r3, [r2, 0xB]
- lsls r1, r3, 25
- lsrs r1, 29
- adds r1, 0x1
- movs r0, 0x7
- ands r1, r0
- lsls r1, 4
- movs r0, 0x71
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2, 0xB]
- b _080DD12C
- .pool
-_080DD110:
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- lsls r3, r6, 3
- subs r1, r3, r6
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1, 0xB]
- movs r0, 0x71
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0xB]
- mov r8, r4
- adds r7, r3, 0
-_080DD12C:
- mov r2, r8
- ldr r4, [r2]
- ldr r2, [r4, 0x4]
- subs r0, r7, r6
- lsls r0, 2
- adds r2, r0, r2
- ldr r3, =gContestEffects
- mov r1, r9
- lsls r5, r1, 2
- adds r3, r5, r3
- ldrb r1, [r3, 0x1]
- strh r1, [r2]
- ldr r1, [r4, 0x4]
- adds r0, r1
- ldrh r1, [r0]
- strh r1, [r0, 0x2]
- ldr r1, [r4, 0x8]
- ldrb r0, [r3, 0x2]
- strh r0, [r1, 0x4]
- ldr r1, [r4, 0x8]
- ldrh r0, [r1, 0x4]
- strh r0, [r1, 0x6]
- ldr r0, [r4, 0x8]
- strb r6, [r0, 0x11]
- movs r2, 0
- mov r9, r5
- mov r4, r8
- movs r3, 0
- movs r1, 0
-_080DD166:
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- adds r0, r1, r0
- strb r3, [r0, 0xE]
- ldr r0, [r4]
- ldr r0, [r0, 0x8]
- adds r0, 0xD
- adds r0, r2
- strb r3, [r0]
- adds r1, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- ble _080DD166
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r4, r0, 2
- adds r2, r4, r1
- ldrb r1, [r2, 0x15]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080DD1B4
- ldrh r0, [r2, 0x8]
- ldrh r1, [r2, 0x6]
- bl AreMovesContestCombo
- lsls r0, 24
- cmp r0, 0
- bne _080DD1B4
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x15]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x15]
-_080DD1B4:
- ldr r0, =gContestEffectFuncs
- add r0, r9
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r0, 2
- adds r2, r0, r1
- ldrb r1, [r2, 0x10]
- movs r0, 0x30
- ands r0, r1
- cmp r0, 0x10
- bne _080DD1EC
- ldrh r1, [r2, 0x2]
- subs r1, 0xA
- movs r0, 0xD
- ldrsb r0, [r2, r0]
- b _080DD206
- .pool
-_080DD1EC:
- ldrb r1, [r2, 0x11]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080DD200
- movs r1, 0xD
- ldrsb r1, [r2, r1]
- lsls r0, r1, 1
- adds r0, r1
- b _080DD204
-_080DD200:
- movs r0, 0xD
- ldrsb r0, [r2, r0]
-_080DD204:
- ldrh r1, [r2, 0x2]
-_080DD206:
- adds r0, r1
- strh r0, [r2, 0x2]
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r4, r0, 2
- adds r1, r4, r1
- movs r0, 0
- strb r0, [r1, 0x16]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x15]
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x15]
- adds r0, r6, 0
- bl sub_80DE1E8
- lsls r0, 24
- cmp r0, 0
- beq _080DD2E2
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrh r0, [r1, 0x8]
- ldrh r1, [r1, 0x6]
- bl AreMovesContestCombo
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _080DD29C
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r2, r4, r0
- ldrb r1, [r2, 0x15]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080DD29C
- strb r3, [r2, 0x16]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r0, [r1, 0x15]
- movs r2, 0x40
- orrs r0, r2
- strb r0, [r1, 0x15]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r2, [r1, 0x15]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x15]
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- movs r1, 0
- ldrsh r2, [r0, r1]
- ldrb r1, [r0, 0x16]
- muls r1, r2
- strb r1, [r0, 0x17]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r0, [r1, 0x15]
- movs r2, 0x8
- b _080DD2C8
- .pool
-_080DD29C:
- ldr r2, =gContestMoves
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r4, r0, 2
- adds r3, r4, r1
- ldrh r0, [r3, 0x6]
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x2]
- cmp r0, 0
- beq _080DD2D8
- ldrb r0, [r3, 0x15]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r3, 0x15]
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- adds r1, r4, r1
- ldrb r0, [r1, 0x15]
- movs r2, 0x40
-_080DD2C8:
- orrs r0, r2
- strb r0, [r1, 0x15]
- b _080DD2E2
- .pool
-_080DD2D8:
- ldrb r1, [r3, 0x15]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
- strb r0, [r3, 0x15]
-_080DD2E2:
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r4, r0, 2
- adds r2, r4, r1
- ldrb r1, [r2, 0x15]
- movs r0, 0x1
- mov r8, r0
- ands r0, r1
- cmp r0, 0
- beq _080DD30A
- ldrb r0, [r2, 0xB]
- lsls r0, 25
- lsrs r0, 29
- adds r0, 0x1
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 1
- strb r1, [r2, 0x18]
-_080DD30A:
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r2, r4, r0
- ldrb r1, [r2, 0xC]
- mov r0, r8
- ands r0, r1
- cmp r0, 0
- beq _080DD334
- ldrb r1, [r2, 0x15]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x15]
- ldr r2, [r5]
- ldr r0, [r2, 0x4]
- adds r0, r4, r0
- movs r1, 0
- strh r1, [r0, 0x2]
- ldr r0, [r2, 0x4]
- adds r0, r4, r0
- strh r1, [r0]
-_080DD334:
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- adds r0, r4, r0
- ldrh r0, [r0, 0x6]
- bl Contest_GetMoveExcitement
- ldr r1, [r5]
- ldr r1, [r1, 0x10]
- strb r0, [r1]
- ldr r2, [r5]
- ldr r0, [r2, 0x4]
- adds r0, r4, r0
- ldrb r1, [r0, 0x11]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080DD35C
- ldr r0, [r2, 0x10]
- mov r1, r8
- strb r1, [r0]
-_080DD35C:
- ldr r1, [r5]
- ldr r3, [r1, 0x10]
- movs r0, 0
- ldrsb r0, [r3, r0]
- cmp r0, 0
- ble _080DD388
- ldr r0, [r1]
- ldrb r0, [r0, 0x13]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0
- ldrsb r1, [r3, r1]
- adds r0, r1
- cmp r0, 0x4
- ble _080DD384
- movs r0, 0x3C
- b _080DD38A
- .pool
-_080DD384:
- movs r0, 0xA
- b _080DD38A
-_080DD388:
- movs r0, 0
-_080DD38A:
- strb r0, [r3, 0x2]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0
- b _080DD3AE
-_080DD3A2:
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
-_080DD3A8:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080DD3B6
-_080DD3AE:
- cmp r2, r6
- beq _080DD3A8
- cmp r0, 0
- bne _080DD3A2
-_080DD3B6:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- subs r0, r7, r6
- lsls r0, 2
- adds r0, r1
- strb r2, [r0, 0x1B]
-_080DD3C4:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD080
-
- thumb_func_start SetContestantEffectStringID
-SetContestantEffectStringID: @ 80DD3D4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gContestResources
- ldr r2, [r2]
- ldr r3, [r2, 0x4]
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- adds r2, r3
- strb r1, [r2, 0x13]
- bx lr
- .pool
- thumb_func_end SetContestantEffectStringID
-
- thumb_func_start SetContestantEffectStringID2
-SetContestantEffectStringID2: @ 80DD3F0
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gContestResources
- ldr r2, [r2]
- ldr r3, [r2, 0x4]
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- adds r2, r3
- strb r1, [r2, 0x14]
- bx lr
- .pool
- thumb_func_end SetContestantEffectStringID2
-
- thumb_func_start SetStartledString
-SetStartledString: @ 80DD40C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r3, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- cmp r1, 0x3B
- bls _080DD426
- movs r1, 0x35
- bl SetContestantEffectStringID
- b _080DD456
-_080DD426:
- cmp r1, 0x27
- bls _080DD432
- movs r1, 0x34
- bl SetContestantEffectStringID
- b _080DD456
-_080DD432:
- cmp r1, 0x1D
- bls _080DD43E
- movs r1, 0x33
- bl SetContestantEffectStringID
- b _080DD456
-_080DD43E:
- cmp r1, 0x13
- bls _080DD44A
- movs r1, 0x32
- bl SetContestantEffectStringID
- b _080DD456
-_080DD44A:
- cmp r2, 0x9
- bls _080DD456
- adds r0, r3, 0
- movs r1, 0x31
- bl SetContestantEffectStringID
-_080DD456:
- pop {r0}
- bx r0
- thumb_func_end SetStartledString
-
- thumb_func_start sub_80DD45C
-sub_80DD45C: @ 80DD45C
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- lsrs r6, r1, 24
- ldr r0, =gStringVar1
- lsls r1, r4, 6
- ldr r2, =gContestMons + 2
- adds r1, r2
- bl StringCopy
- ldr r0, =gStringVar2
- ldr r5, =gContestResources
- ldr r1, [r5]
- ldr r2, [r1, 0x4]
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r2
- ldrh r2, [r1, 0x6]
- movs r1, 0xD
- muls r1, r2
- ldr r2, =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r3, =gContestMoves
- ldr r1, [r5]
- ldr r0, [r1, 0x8]
- ldrb r2, [r0, 0x11]
- ldr r1, [r1, 0x4]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x6]
- lsls r0, 3
- adds r0, r3
- ldrb r0, [r0, 0x1]
- lsls r1, r0, 29
- cmp r1, 0
- bne _080DD4DC
- ldr r0, =gStringVar3
- ldr r1, =gText_0827E837
- bl StringCopy
- b _080DD52C
- .pool
-_080DD4DC:
- lsrs r0, r1, 29
- cmp r0, 0x1
- bne _080DD4F4
- ldr r0, =gStringVar3
- ldr r1, =gText_0827E83F
- bl StringCopy
- b _080DD52C
- .pool
-_080DD4F4:
- lsrs r0, r1, 29
- cmp r0, 0x2
- bne _080DD50C
- ldr r0, =gStringVar3
- ldr r1, =gText_0827E847
- bl StringCopy
- b _080DD52C
- .pool
-_080DD50C:
- lsrs r0, r1, 29
- cmp r0, 0x3
- bne _080DD524
- ldr r0, =gStringVar3
- ldr r1, =gText_0827E850
- bl StringCopy
- b _080DD52C
- .pool
-_080DD524:
- ldr r0, =gStringVar3
- ldr r1, =gText_0827E85A
- bl StringCopy
-_080DD52C:
- ldr r4, =gStringVar4
- ldr r1, =gUnknown_08587E10
- lsls r0, r6, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringExpandPlaceholders
- bl sub_80DB89C
- adds r0, r4, 0
- movs r1, 0x1
- bl Contest_StartTextPrinter
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD45C
-
- thumb_func_start MakeContestantNervous
-MakeContestantNervous: @ 80DD560
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, =gContestResources
- ldr r1, [r4]
- ldr r3, [r1, 0x4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r3, r1, r3
- ldrb r0, [r3, 0xC]
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r3, 0xC]
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x6]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end MakeContestantNervous
-
- thumb_func_start sub_80DD590
-sub_80DD590: @ 80DD590
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- movs r0, 0
- mov r12, r0
- movs r4, 0
- ldr r1, =gUnknown_02039F26
- mov r9, r1
- add r2, sp, 0x4
- mov r6, r9
- movs r5, 0
- adds r3, r2, 0
-_080DD5AC:
- mov r0, sp
- adds r1, r0, r4
- adds r0, r4, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r3, r4
- strb r5, [r0]
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DD5AC
- movs r4, 0
- ldr r7, =gContestResources
- ldr r1, [r7]
- mov r8, r1
- adds r5, r2, 0
-_080DD5CA:
- movs r2, 0
- mov r0, r8
- ldr r1, [r0, 0x4]
-_080DD5D0:
- ldrb r0, [r1, 0x19]
- cmp r0, r4
- beq _080DD604
- adds r1, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- ble _080DD5D0
-_080DD5DE:
- cmp r2, 0x4
- bne _080DD684
- movs r2, 0
- ldrb r0, [r5]
- cmp r0, 0
- bne _080DD612
- ldr r0, [r7]
- ldr r0, [r0, 0x4]
- ldrb r0, [r0, 0x19]
- cmp r0, 0xFF
- bne _080DD612
- mov r12, r2
- movs r2, 0x1
- b _080DD63A
- .pool
-_080DD604:
- mov r1, sp
- adds r0, r1, r2
- strb r4, [r0]
- adds r1, r5, r2
- movs r0, 0x1
- strb r0, [r1]
- b _080DD5DE
-_080DD612:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080DD676
- adds r0, r5, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DD612
- ldr r0, [r7]
- ldr r1, [r0, 0x4]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x19]
- cmp r0, 0xFF
- bne _080DD612
- lsls r0, r2, 24
- lsrs r0, 24
- mov r12, r0
- adds r2, 0x1
-_080DD63A:
- cmp r2, 0x3
- bgt _080DD676
- ldr r6, =gUnknown_02039F26
- lsls r0, r2, 3
- subs r0, r2
- lsls r3, r0, 2
-_080DD646:
- adds r0, r5, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DD66E
- ldr r0, [r7]
- ldr r0, [r0, 0x4]
- adds r0, r3, r0
- ldrb r0, [r0, 0x19]
- cmp r0, 0xFF
- bne _080DD66E
- mov r1, r12
- adds r0, r1, r6
- adds r1, r2, r6
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080DD66E
- lsls r0, r2, 24
- lsrs r0, 24
- mov r12, r0
-_080DD66E:
- adds r3, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- ble _080DD646
-_080DD676:
- mov r0, sp
- add r0, r12
- strb r4, [r0]
- mov r0, r12
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080DD684:
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DD5CA
- movs r4, 0
- ldr r6, =gContestResources
- movs r5, 0
-_080DD690:
- ldr r0, [r6]
- ldr r1, [r0, 0x8]
- adds r1, r4
- mov r0, sp
- adds r3, r0, r4
- ldrb r0, [r3]
- strb r0, [r1]
- ldr r0, [r6]
- ldr r0, [r0, 0x4]
- adds r0, r5, r0
- movs r1, 0xFF
- strb r1, [r0, 0x19]
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- adds r1, r5, r1
- ldrb r2, [r1, 0x10]
- movs r0, 0x3F
- ands r0, r2
- strb r0, [r1, 0x10]
- mov r0, r9
- adds r1, r4, r0
- ldrb r0, [r3]
- strb r0, [r1]
- adds r5, 0x1C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DD690
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD590
-
- thumb_func_start sub_80DD6DC
-sub_80DD6DC: @ 80DD6DC
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x30]
- adds r1, r0, 0x1
- strh r1, [r2, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x54
- ble _080DD712
- movs r0, 0
- strh r0, [r2, 0x30]
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r3]
- ldr r0, =SpriteCallbackDummy
- str r0, [r2, 0x1C]
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r1, [r2, 0x6]
- movs r0, 0x11
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x6]
-_080DD712:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD6DC
-
- thumb_func_start sub_80DD720
-sub_80DD720: @ 80DD720
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r5, [r0, 0x12]
- cmp r1, 0x8
- bls _080DD734
- b _080DD8D4
-_080DD734:
- lsls r0, r1, 2
- ldr r1, =_080DD748
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080DD748:
- .4byte _080DD76C
- .4byte _080DD76C
- .4byte _080DD79C
- .4byte _080DD7D0
- .4byte _080DD804
- .4byte _080DD838
- .4byte _080DD86C
- .4byte _080DD8D4
- .4byte _080DD8A0
-_080DD76C:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x2E]
- ldr r2, =0x000003ff
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x20
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD79C:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0x4
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x1F
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD7D0:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0x8
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x1F
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD804:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0xC
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x2D
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD838:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0xC
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x2D
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD86C:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0x10
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x2D
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD8A0:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0x18
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0xC3
- bl PlaySE
- b _080DD8F8
- .pool
-_080DD8D4:
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x2E]
- adds r2, 0x14
- ldr r3, =0x000003ff
- adds r0, r3, 0
- ands r2, r0
- ldrh r3, [r1, 0x4]
- ldr r0, =0xfffffc00
- ands r0, r3
- orrs r0, r2
- strh r0, [r1, 0x4]
- movs r0, 0x2D
- bl PlaySE
-_080DD8F8:
- adds r2, r4, 0
- ldr r4, =gSprites
- adds r2, r5
- lsls r2, 2
- adds r1, r2, r4
- movs r0, 0
- strh r0, [r1, 0x30]
- adds r1, 0x3E
- ldrb r3, [r1]
- subs r0, 0x5
- ands r0, r3
- strb r0, [r1]
- adds r4, 0x1C
- adds r2, r4
- ldr r0, =sub_80DD6DC
- str r0, [r2]
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x6]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0x6]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD720
-
- thumb_func_start sub_80DD940
-sub_80DD940: @ 80DD940
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r5, 0
- ldr r6, =gContestResources
- ldr r0, =gSprites
- mov r9, r0
- ldr r0, =0x06010000
- mov r8, r0
- ldr r7, =0x04000008
-_080DD956:
- ldr r0, [r6]
- ldr r1, [r0]
- movs r0, 0x13
- ldrsb r0, [r1, r0]
- ldr r4, =gContestApplauseMeterGfx
- cmp r5, r0
- bge _080DD966
- adds r4, 0x40
-_080DD966:
- adds r0, r1, 0
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r9
- ldrh r1, [r0, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r0, r5, 0
- adds r0, 0x11
- adds r1, r0
- lsls r1, 5
- add r1, r8
- adds r0, r4, 0
- adds r2, r7, 0
- bl CpuSet
- adds r0, r4, 0
- adds r0, 0x20
- ldr r1, [r6]
- ldr r1, [r1]
- adds r1, 0x58
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- add r1, r9
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 22
- adds r2, r5, 0
- adds r2, 0x19
- adds r1, r2
- lsls r1, 5
- add r1, r8
- adds r2, r7, 0
- bl CpuSet
- ldr r0, [r6]
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x4
- ble _080DD9C8
- bl sub_80DDA20
-_080DD9C8:
- adds r5, 0x1
- cmp r5, 0x4
- ble _080DD956
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DD940
-
- thumb_func_start Contest_GetMoveExcitement
-Contest_GetMoveExcitement: @ 80DD9F0
- lsls r0, 16
- ldr r3, =gUnknown_085899EC
- ldr r1, =gContestMoves
- lsrs r0, 13
- adds r0, r1
- ldrb r1, [r0, 0x1]
- lsls r1, 29
- lsrs r1, 29
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r2, [r0]
- lsls r0, r2, 2
- adds r0, r2
- adds r1, r0
- adds r1, r3
- movs r0, 0
- ldrsb r0, [r1, r0]
- bx lr
- .pool
- thumb_func_end Contest_GetMoveExcitement
-
- thumb_func_start sub_80DDA20
-sub_80DDA20: @ 80DDA20
- push {r4,r5,lr}
- ldr r0, =c3_08130B10
- movs r1, 0xA
- bl CreateTask
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- movs r0, 0x1
- strh r0, [r4, 0xA]
- ldr r0, =0x0000abe2
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xC]
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DDA20
-
- thumb_func_start c3_08130B10
-c3_08130B10: @ 80DDA60
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r1
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bne _080DDAFE
- movs r0, 0
- strh r0, [r2, 0x8]
- movs r3, 0xE
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _080DDA94
- ldrh r0, [r2, 0x10]
- adds r0, 0x1
- b _080DDA98
- .pool
-_080DDA94:
- ldrh r0, [r2, 0x10]
- subs r0, 0x1
-_080DDA98:
- strh r0, [r2, 0x10]
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0xC
- ldrsh r0, [r4, r1]
- lsls r0, 4
- movs r3, 0x84
- lsls r3, 1
- adds r6, r3, 0
- adds r0, r6
- lsls r0, 16
- lsrs r0, 16
- ldrb r2, [r4, 0x10]
- ldr r3, =0x00007fff
- movs r1, 0x1
- bl BlendPalette
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080DDACA
- cmp r0, 0x10
- bne _080DDAFE
-_080DDACA:
- ldrh r0, [r4, 0xE]
- movs r1, 0x1
- eors r0, r1
- strh r0, [r4, 0xE]
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x4
- bgt _080DDAFE
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- lsls r0, 4
- adds r0, r6
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- movs r2, 0
- movs r3, 0x1F
- bl BlendPalette
- adds r0, r5, 0
- bl DestroyTask
-_080DDAFE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end c3_08130B10
-
- thumb_func_start sub_80DDB0C
-sub_80DDB0C: @ 80DDB0C
- push {r4,lr}
- ldr r0, =sub_80DDB6C
- movs r1, 0xA
- bl CreateTask
- ldr r3, =gSprites
- ldr r4, =gContestResources
- ldr r2, [r4]
- ldr r0, [r2]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldr r1, =0x0000ffba
- strh r1, [r0, 0x24]
- ldr r0, [r2]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r0, [r4]
- ldr r2, [r0]
- ldrb r0, [r2, 0x6]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0x6]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDB0C
-
- thumb_func_start sub_80DDB6C
-sub_80DDB6C: @ 80DDB6C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r3, r0, 0
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r0, [r0]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r2, r0, r1
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- movs r5, 0xD0
- lsls r5, 3
- adds r0, r5, 0
- ldrh r5, [r1, 0x1C]
- adds r0, r5
- strh r0, [r1, 0x1C]
- lsls r0, 16
- asrs r0, 24
- ldrh r5, [r2, 0x24]
- adds r0, r5
- strh r0, [r2, 0x24]
- ldrb r0, [r1, 0x1C]
- strh r0, [r1, 0x1C]
- movs r1, 0x24
- ldrsh r0, [r2, r1]
- cmp r0, 0
- ble _080DDBB8
- movs r0, 0
- strh r0, [r2, 0x24]
-_080DDBB8:
- movs r5, 0x24
- ldrsh r0, [r2, r5]
- cmp r0, 0
- bne _080DDBD4
- ldr r0, [r4]
- ldr r2, [r0]
- ldrb r1, [r2, 0x6]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x6]
- adds r0, r3, 0
- bl DestroyTask
-_080DDBD4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDB6C
-
- thumb_func_start sub_80DDBE8
-sub_80DDBE8: @ 80DDBE8
- push {r4,r5,lr}
- ldr r5, =gSprites
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _080DDC1C
- ldrb r1, [r2, 0x6]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- b _080DDC40
- .pool
-_080DDC1C:
- ldr r0, =task08_080CD1CC
- movs r1, 0xA
- bl CreateTask
- ldr r2, [r4]
- ldr r0, [r2]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0
- strh r1, [r0, 0x24]
- ldr r2, [r2]
- ldrb r0, [r2, 0x6]
- movs r1, 0x40
- orrs r0, r1
-_080DDC40:
- strb r0, [r2, 0x6]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDBE8
-
- thumb_func_start task08_080CD1CC
-task08_080CD1CC: @ 80DDC4C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r0, [r0]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r3, r0, r1
- ldr r0, =gTasks
- lsls r2, r4, 2
- adds r2, r4
- lsls r2, 3
- adds r2, r0
- movs r1, 0xD0
- lsls r1, 3
- adds r0, r1, 0
- ldrh r1, [r2, 0x1C]
- adds r0, r1
- strh r0, [r2, 0x1C]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r3, 0x24]
- subs r1, r0
- strh r1, [r3, 0x24]
- ldrb r0, [r2, 0x1C]
- strh r0, [r2, 0x1C]
- movs r2, 0x24
- ldrsh r0, [r3, r2]
- movs r1, 0x46
- negs r1, r1
- cmp r0, r1
- bge _080DDC9C
- ldr r0, =0x0000ffba
- strh r0, [r3, 0x24]
-_080DDC9C:
- movs r2, 0x24
- ldrsh r0, [r3, r2]
- cmp r0, r1
- bne _080DDCC4
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, [r5]
- ldr r2, [r0]
- ldrb r1, [r2, 0x6]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x6]
- adds r0, r4, 0
- bl DestroyTask
-_080DDCC4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task08_080CD1CC
-
- thumb_func_start sub_80DDCDC
-sub_80DDCDC: @ 80DDCDC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =sub_80DDD20
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0x8]
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x6]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2, 0x6]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDCDC
-
- thumb_func_start sub_80DDD20
-sub_80DDD20: @ 80DDD20
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x1C
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080DDD54
- cmp r0, 0x1
- bgt _080DDD48
- cmp r0, 0
- beq _080DDD4E
- b _080DDD9C
- .pool
-_080DDD48:
- cmp r0, 0x2
- beq _080DDD70
- b _080DDD9C
-_080DDD4E:
- bl sub_80DDB0C
- b _080DDD64
-_080DDD54:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r1, [r0, 0x6]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _080DDD9C
-_080DDD64:
- ldrh r0, [r4, 0x1C]
- adds r0, 0x1
- strh r0, [r4, 0x1C]
- b _080DDD9C
- .pool
-_080DDD70:
- ldrh r0, [r4, 0x1E]
- adds r1, r0, 0x1
- strh r1, [r4, 0x1E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- ble _080DDD9C
- movs r0, 0
- strh r0, [r4, 0x1E]
- bl sub_80DD940
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r1, [r2, 0x6]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x6]
- adds r0, r5, 0
- bl DestroyTask
-_080DDD9C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDD20
-
- thumb_func_start sub_80DDDA8
-sub_80DDDA8: @ 80DDDA8
- ldr r3, =gSprites
- ldr r0, =gContestResources
- ldr r2, [r0]
- ldr r0, [r2]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x24]
- ldr r0, [r2]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80DDDA8
-
- thumb_func_start sub_80DDDE4
-sub_80DDDE4: @ 80DDDE4
- ldr r2, =gSprites
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0x58
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80DDDE4
-
- thumb_func_start sub_80DDE0C
-sub_80DDE0C: @ 80DDE0C
- push {lr}
- ldr r0, =sub_80DDE30
- movs r1, 0xF
- bl CreateTask
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x6]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x6]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDE0C
-
- thumb_func_start sub_80DDE30
-sub_80DDE30: @ 80DDE30
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x1C]
- adds r1, r0, 0x1
- strh r1, [r4, 0x1C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- ble _080DDEBA
- movs r0, 0
- strh r0, [r4, 0x1C]
- movs r1, 0x1E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080DDE78
- ldr r0, =gHeap+0x19000
- ldr r1, =0x06002000
- movs r2, 0x80
- lsls r2, 5
- movs r3, 0x1
- bl RequestDma3Copy
- b _080DDE8C
- .pool
-_080DDE78:
- ldr r0, =gHeap+0x18000
- ldr r1, =0x06002000
- movs r2, 0x80
- lsls r2, 5
- movs r3, 0x1
- bl RequestDma3Copy
- ldrh r0, [r4, 0x20]
- adds r0, 0x1
- strh r0, [r4, 0x20]
-_080DDE8C:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x1E]
- movs r2, 0x1
- eors r1, r2
- strh r1, [r0, 0x1E]
- movs r1, 0x20
- ldrsh r0, [r0, r1]
- cmp r0, 0x9
- bne _080DDEBA
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r1, [r2, 0x6]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x6]
- adds r0, r5, 0
- bl DestroyTask
-_080DDEBA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDE30
-
- thumb_func_start sub_80DDED0
-sub_80DDED0: @ 80DDED0
- push {r4-r7,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, =sub_80DDF80
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r4, 24
- cmp r4, 0
- ble _080DDF38
- ldr r7, =0x0000237e
- lsls r0, r5, 24
- adds r4, r0, 0
- cmp r4, 0
- ble _080DDF1C
- movs r5, 0
- ldr r2, =gContestResources
- ldr r0, [r2]
- ldr r0, [r0]
- movs r1, 0x13
- ldrsb r1, [r0, r1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r3, r0, 24
- b _080DDF4E
- .pool
-_080DDF1C:
- ldr r2, =gContestResources
- ldr r0, [r2]
- ldr r0, [r0]
- movs r1, 0x13
- ldrsb r1, [r0, r1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- movs r3, 0
- b _080DDF4E
- .pool
-_080DDF38:
- movs r7, 0
- lsls r0, r5, 24
- adds r4, r0, 0
- cmp r4, 0
- ble _080DDF48
- movs r5, 0
- movs r3, 0xC
- b _080DDF4C
-_080DDF48:
- movs r5, 0xC
- movs r3, 0
-_080DDF4C:
- ldr r2, =gContestResources
-_080DDF4E:
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- strh r7, [r0, 0x8]
- strh r5, [r0, 0xA]
- asrs r1, r4, 24
- strh r1, [r0, 0xC]
- strh r3, [r0, 0xE]
- ldr r0, [r2]
- ldr r2, [r0]
- ldrb r1, [r2, 0x7]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x7]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDED0
-
- thumb_func_start sub_80DDF80
-sub_80DDF80: @ 80DDF80
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r3, r0, r2
- ldrh r0, [r3, 0x1C]
- adds r1, r0, 0x1
- strh r1, [r3, 0x1C]
- lsls r0, 16
- cmp r0, 0
- blt _080DDFFC
- movs r0, 0
- strh r0, [r3, 0x1C]
- movs r1, 0xC
- ldrsh r0, [r3, r1]
- cmp r0, 0
- ble _080DDFB4
- ldrh r0, [r3, 0xA]
- adds r0, 0x1
- b _080DDFB8
- .pool
-_080DDFB4:
- ldrh r0, [r3, 0xA]
- subs r0, 0x1
-_080DDFB8:
- strh r0, [r3, 0xA]
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r2
- ldrb r2, [r4, 0xA]
- ldrh r3, [r4, 0x8]
- movs r0, 0x11
- movs r1, 0x1
- bl BlendPalette
- ldrb r2, [r4, 0xA]
- ldrh r3, [r4, 0x8]
- movs r0, 0x1A
- movs r1, 0x1
- bl BlendPalette
- movs r2, 0xA
- ldrsh r1, [r4, r2]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080DDFFC
- adds r0, r5, 0
- bl DestroyTask
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r1, [r2, 0x7]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x7]
-_080DDFFC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DDF80
-
- thumb_func_start sub_80DE008
-sub_80DE008: @ 80DE008
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- movs r5, 0
- ldr r0, =gContestResources
- mov r9, r0
- mov r8, r9
- ldr r6, =gSprites
- movs r4, 0
- movs r7, 0
-_080DE026:
- mov r1, r8
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r0, r7, r0
- ldrb r1, [r0, 0x10]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0
- beq _080DE0BC
- mov r2, r10
- cmp r2, 0
- beq _080DE0BC
- lsls r0, r5, 24
- lsrs r0, 24
- bl sub_80DE0F0
- mov r3, r8
- ldr r1, [r3]
- ldr r1, [r1, 0x14]
- adds r1, r4, r1
- ldrb r2, [r1, 0x1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r6
- ldrh r1, [r1, 0x4]
- lsls r1, 22
- lsrs r1, 17
- ldr r2, =0x060100c0
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- mov r0, r8
- ldr r3, [r0]
- ldr r0, [r3, 0x14]
- adds r0, r4, r0
- ldrb r0, [r0, 0x1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldr r2, =gUnknown_08587A70
- ldr r0, =gUnknown_02039F26
- adds r0, r5, r0
- ldrb r0, [r0]
- adds r0, r2
- ldrb r0, [r0]
- strh r0, [r1, 0x22]
- ldr r0, [r3, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0, 0x1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r3, 0x5
- negs r3, r3
- adds r2, r3, 0
- ands r1, r2
- b _080DE0D6
- .pool
-_080DE0BC:
- mov r1, r9
- ldr r0, [r1]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0, 0x1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
-_080DE0D6:
- strb r1, [r0]
- adds r4, 0x4
- adds r7, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DE026
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80DE008
-
- thumb_func_start sub_80DE0F0
-sub_80DE0F0: @ 80DE0F0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r2, [r1, 0x4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r1, [r2, 0x10]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0x40
- bne _080DE120
- ldrb r0, [r2, 0x19]
- lsls r0, 5
- ldr r1, =gUnknown_08D8E9B4
- adds r0, r1
- b _080DE122
- .pool
-_080DE120:
- ldr r0, =gUnknown_08D8EA34
-_080DE122:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DE0F0
-
- thumb_func_start sub_80DE12C
-sub_80DE12C: @ 80DE12C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- movs r7, 0
- movs r0, 0x2
- mov r10, r0
- movs r0, 0x1
- mov r8, r0
- movs r0, 0x11
- mov r9, r0
-_080DE146:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- adds r0, 0xD
- adds r0, r7
- ldrb r0, [r0]
- cmp r0, 0
- beq _080DE1CA
- lsls r0, r7, 24
- lsrs r0, 24
- bl Contest_IsMonsTurnDisabled
- lsls r0, 24
- cmp r0, 0
- bne _080DE1CA
- ldr r0, =gUnknown_02039F26
- adds r0, r7, r0
- ldrb r0, [r0]
- lsls r5, r0, 2
- adds r5, r0
- adds r6, r5, 0x2
- movs r0, 0x3
- bl sub_80DB748
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r6, 24
- lsrs r6, 24
- mov r0, r10
- str r0, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- mov r0, r9
- str r0, [sp, 0x8]
- mov r0, r8
- str r0, [sp, 0xC]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x14
- adds r3, r6, 0
- bl ContestBG_FillBoxWithIncrementingTile
- adds r4, 0x10
- lsls r4, 16
- lsrs r4, 16
- adds r5, 0x3
- lsls r5, 24
- lsrs r5, 24
- mov r0, r10
- str r0, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- mov r0, r9
- str r0, [sp, 0x8]
- mov r0, r8
- str r0, [sp, 0xC]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x14
- adds r3, r5, 0
- bl ContestBG_FillBoxWithIncrementingTile
- movs r0, 0x63
- bl PlaySE
-_080DE1CA:
- adds r7, 0x1
- cmp r7, 0x3
- ble _080DE146
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE12C
-
- thumb_func_start sub_80DE1E8
-sub_80DE1E8: @ 80DE1E8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r2, [r1, 0x4]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r1, [r2, 0x15]
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _080DE212
- ldrb r1, [r2, 0xC]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _080DE21C
-_080DE212:
- movs r0, 0
- b _080DE21E
- .pool
-_080DE21C:
- movs r0, 0x1
-_080DE21E:
- pop {r1}
- bx r1
- thumb_func_end sub_80DE1E8
-
- thumb_func_start sub_80DE224
-sub_80DE224: @ 80DE224
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- movs r0, 0xA
- bl GetGpuReg
- mov r1, sp
- strh r0, [r1]
- mov r2, sp
- ldrb r1, [r2]
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- strb r0, [r2]
- ldrb r1, [r2, 0x1]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x1]
- ldrb r1, [r2, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1]
- ldrb r1, [r2]
- movs r0, 0xD
- negs r0, r0
- mov r8, r0
- ands r0, r1
- strb r0, [r2]
- mov r0, sp
- ldrh r1, [r0]
- movs r0, 0xA
- bl SetGpuReg
- movs r0, 0x8
- bl GetGpuReg
- mov r6, sp
- adds r6, 0x2
- strh r0, [r6]
- movs r0, 0xC
- bl GetGpuReg
- add r5, sp, 0x4
- strh r0, [r5]
- ldrb r1, [r6]
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r6]
- ldrb r0, [r5]
- ands r4, r0
- orrs r4, r1
- strb r4, [r5]
- ldrh r1, [r6]
- movs r0, 0x8
- bl SetGpuReg
- ldrh r1, [r5]
- movs r0, 0xC
- bl SetGpuReg
- ldr r1, =gBattle_BG1_X
- movs r0, 0xF0
- strh r0, [r1]
- ldr r4, =gBattle_BG1_Y
- movs r0, 0xA0
- strh r0, [r4]
- movs r0, 0x14
- movs r1, 0xF0
- bl SetGpuReg
- ldrh r1, [r4]
- movs r0, 0x16
- bl SetGpuReg
- movs r0, 0
- str r0, [sp, 0x8]
- add r0, sp, 0x8
- ldr r4, =gContestResources
- ldr r1, [r4]
- ldr r1, [r1, 0x28]
- ldr r2, =0x05000400
- bl CpuSet
- ldr r1, =gUnknown_08C17980
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- movs r0, 0x1
- bl Contest_SetBgCopyFlags
- movs r5, 0
- ldr r7, =gSprites
- movs r6, 0x4
-_080DE2F0:
- ldr r0, [r4]
- ldr r0, [r0, 0x14]
- lsls r3, r5, 2
- adds r0, r3, r0
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- ldrb r2, [r1, 0x5]
- mov r0, r8
- ands r0, r2
- orrs r0, r6
- strb r0, [r1, 0x5]
- ldr r0, [r4]
- ldr r0, [r0, 0x14]
- adds r3, r0
- ldrb r0, [r3, 0x1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- ldrb r2, [r1, 0x5]
- mov r0, r8
- ands r0, r2
- orrs r0, r6
- strb r0, [r1, 0x5]
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DE2F0
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE224
-
- thumb_func_start sub_80DE350
-sub_80DE350: @ 80DE350
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r1, =0x06008000
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- movs r3, 0x1
- bl RequestDma3Fill
- movs r5, 0
- str r5, [sp]
- ldr r6, =gContestResources
- ldr r0, [r6]
- ldr r1, [r0, 0x28]
- ldr r2, =0x05000400
- mov r0, sp
- bl CpuSet
- movs r0, 0x1
- bl Contest_SetBgCopyFlags
- movs r0, 0xA
- bl GetGpuReg
- add r3, sp, 0x4
- strh r0, [r3]
- ldrb r1, [r3]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r3]
- mov r1, sp
- adds r1, 0x5
- ldrb r2, [r1]
- movs r0, 0x3F
- ands r0, r2
- strb r0, [r1]
- ldrb r2, [r1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- ldrb r1, [r3]
- movs r4, 0xD
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r3]
- ldrh r1, [r3]
- movs r0, 0xA
- bl SetGpuReg
- ldr r0, =gBattle_BG1_X
- strh r5, [r0]
- ldr r0, =gBattle_BG1_Y
- strh r5, [r0]
- ldr r7, =gSprites
-_080DE3CA:
- ldr r0, [r6]
- ldr r0, [r0, 0x14]
- lsls r3, r5, 2
- adds r0, r3, r0
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- ldrb r2, [r1, 0x5]
- adds r0, r4, 0
- ands r0, r2
- strb r0, [r1, 0x5]
- ldr r0, [r6]
- ldr r0, [r0, 0x14]
- adds r3, r0
- ldrb r0, [r3, 0x1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r7
- ldrb r2, [r1, 0x5]
- adds r0, r4, 0
- ands r0, r2
- strb r0, [r1, 0x5]
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DE3CA
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE350
-
- thumb_func_start sub_80DE424
-sub_80DE424: @ 80DE424
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, =gBattle_BG1_X
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gBattle_BG1_Y
- movs r0, 0xA0
- strh r0, [r1]
- movs r0, 0x62
- movs r1, 0
- bl PlaySE12WithPanning
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80DE464
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE424
-
- thumb_func_start sub_80DE464
-sub_80DE464: @ 80DE464
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, =gBattle_BG1_Y
- ldrh r0, [r1]
- subs r0, 0x7
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bge _080DE47C
- movs r0, 0
- strh r0, [r1]
-_080DE47C:
- ldrh r2, [r1]
- cmp r2, 0
- bne _080DE496
- ldr r0, =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- strh r2, [r1, 0x8]
- strh r2, [r1, 0xA]
- strh r2, [r1, 0xC]
- ldr r0, =sub_80DE4A8
- str r0, [r1]
-_080DE496:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE464
-
- thumb_func_start sub_80DE4A8
-sub_80DE4A8: @ 80DE4A8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gTasks
- lsls r3, r4, 2
- adds r0, r3, r4
- lsls r0, 3
- adds r5, r0, r1
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- cmp r1, 0x1
- beq _080DE52C
- cmp r1, 0x1
- bgt _080DE4D0
- cmp r1, 0
- beq _080DE4DA
- b _080DE5B4
- .pool
-_080DE4D0:
- cmp r1, 0x2
- beq _080DE58A
- cmp r1, 0x3
- beq _080DE5A4
- b _080DE5B4
-_080DE4DA:
- movs r2, 0
- adds r6, r3, 0
- ldr r5, =gContestResources
- ldr r3, =gUnknown_02039F26
-_080DE4E2:
- ldr r0, [r5]
- ldr r1, [r0]
- adds r1, 0x14
- adds r1, r2
- adds r0, r2, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, 0x3
- ble _080DE4E2
- bl sub_80DBF90
- bl sub_80DC864
- bl sub_80DB69C
- bl sub_80DD04C
- movs r0, 0x1
- bl sub_80DE008
- bl sub_80DC44C
- ldr r0, =gTasks
- adds r1, r6, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x8]
- b _080DE5B4
- .pool
-_080DE52C:
- ldr r0, =gIsLinkContest
- ldrb r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _080DE584
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x7]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2, 0x7]
- bl sub_80DA8A4
- lsls r0, 24
- cmp r0, 0
- beq _080DE552
- bl sub_80DBAA0
-_080DE552:
- ldr r4, =sub_80FCC88
- adds r0, r4, 0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =sub_80DA110
- adds r1, r4, 0
- bl SetTaskFuncWithFollowupFunc
- bl sub_80DBF68
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _080DE5B4
- .pool
-_080DE584:
- bl sub_80DBAA0
- b _080DE59A
-_080DE58A:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r1, [r0, 0x7]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080DE5B4
-_080DE59A:
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _080DE5B4
- .pool
-_080DE5A4:
- bl sub_80DB884
- bl sub_80DB2BC
- movs r0, 0
- strh r0, [r5, 0x8]
- ldr r0, =sub_80DE5F4
- str r0, [r5]
-_080DE5B4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE4A8
-
- thumb_func_start sub_80DE5C0
-sub_80DE5C0: @ 80DE5C0
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gBattle_BG1_Y
- ldrh r0, [r1]
- adds r0, 0x7
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA0
- ble _080DE5E4
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80DA4F4
- str r0, [r1]
-_080DE5E4:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE5C0
-
- thumb_func_start sub_80DE5F4
-sub_80DE5F4: @ 80DE5F4
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrh r2, [r1, 0xC]
- movs r3, 0xC
- ldrsh r0, [r1, r3]
- cmp r0, 0x9
- bgt _080DE618
- adds r0, r2, 0x1
- strh r0, [r1, 0xC]
- b _080DE654
- .pool
-_080DE618:
- ldrh r3, [r1, 0xA]
- movs r4, 0xA
- ldrsh r0, [r1, r4]
- cmp r0, 0
- bne _080DE636
- ldrh r2, [r1, 0x8]
- movs r4, 0x8
- ldrsh r0, [r1, r4]
- cmp r0, 0x10
- bne _080DE632
- adds r0, r3, 0x1
- strh r0, [r1, 0xA]
- b _080DE654
-_080DE632:
- adds r0, r2, 0x1
- b _080DE652
-_080DE636:
- ldrh r0, [r1, 0x8]
- movs r3, 0x8
- ldrsh r2, [r1, r3]
- cmp r2, 0
- bne _080DE650
- strh r2, [r1, 0xA]
- strh r2, [r1, 0xC]
- ldr r0, =sub_80DE65C
- str r0, [r1]
- b _080DE654
- .pool
-_080DE650:
- subs r0, 0x1
-_080DE652:
- strh r0, [r1, 0x8]
-_080DE654:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DE5F4
-
- thumb_func_start sub_80DE65C
-sub_80DE65C: @ 80DE65C
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r1, [r4, 0xC]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0x9
- bgt _080DE680
- adds r0, r1, 0x1
- strh r0, [r4, 0xC]
- b _080DE690
- .pool
-_080DE680:
- movs r0, 0
- strh r0, [r4, 0xC]
- movs r0, 0x61
- movs r1, 0
- bl PlaySE12WithPanning
- ldr r0, =sub_80DE5C0
- str r0, [r4]
-_080DE690:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE65C
-
- thumb_func_start sub_80DE69C
-sub_80DE69C: @ 80DE69C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r7, 0
- ldr r6, =gSprites
- ldr r5, =gContestResources
-_080DE6AE:
- bl AllocOamMatrix
- ldr r1, [r5]
- ldr r1, [r1, 0x14]
- lsls r4, r7, 2
- adds r1, r4, r1
- ldrb r1, [r1]
- lsls r3, r1, 4
- adds r3, r1
- lsls r3, 2
- adds r3, r6
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1F
- ands r0, r1
- lsls r0, 1
- ldrb r1, [r3, 0x3]
- movs r2, 0x3F
- negs r2, r2
- mov r12, r2
- mov r2, r12
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x3]
- ldr r0, [r5]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r2, [r0, 0x1]
- movs r3, 0x4
- negs r3, r3
- adds r1, r3, 0
- ands r2, r1
- movs r1, 0x1
- orrs r2, r1
- strb r2, [r0, 0x1]
- ldr r0, [r5]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r8
- bl StartSpriteAffineAnim
- mov r0, r8
- cmp r0, 0x2
- bne _080DE74C
- ldr r0, [r5]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl AnimateSprite
- ldr r0, [r5]
- ldr r0, [r0, 0x14]
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r3, 0x5
- negs r3, r3
- adds r2, r3, 0
- ands r1, r2
- strb r1, [r0]
-_080DE74C:
- adds r7, 0x1
- cmp r7, 0x3
- ble _080DE6AE
- ldr r0, =sub_80DE794
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- mov r0, r8
- strh r0, [r1, 0x8]
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r2, [r0]
- ldrb r0, [r2, 0x7]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x7]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE69C
-
- thumb_func_start sub_80DE794
-sub_80DE794: @ 80DE794
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r2, =gSprites
- ldr r3, =gContestResources
- ldr r0, [r3]
- ldr r0, [r0, 0x14]
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 26
- cmp r0, 0
- bge _080DE822
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldrb r0, [r1, 0x8]
- cmp r0, 0x1
- bne _080DE7EC
- movs r4, 0
- adds r5, r2, 0
- movs r2, 0x4
-_080DE7CC:
- ldr r0, [r3]
- ldr r1, [r0, 0x14]
- lsls r0, r4, 2
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DE7CC
-_080DE7EC:
- movs r4, 0
-_080DE7EE:
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r1, [r0, 0x14]
- lsls r0, r4, 2
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl FreeSpriteOamMatrix
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DE7EE
- ldr r0, [r5]
- ldr r2, [r0]
- ldrb r1, [r2, 0x7]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x7]
- adds r0, r6, 0
- bl DestroyTask
-_080DE822:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE794
-
- thumb_func_start sub_80DE834
-sub_80DE834: @ 80DE834
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bls _080DE844
- movs r1, 0x1
-_080DE844:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80DE834
-
- thumb_func_start sub_80DE84C
-sub_80DE84C: @ 80DE84C
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, =0x0000019b
- cmp r1, r0
- bls _080DE85A
- movs r1, 0
-_080DE85A:
- adds r0, r1, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DE84C
-
- thumb_func_start sub_80DE864
-sub_80DE864: @ 80DE864
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r1, [r0, 0x4]
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x6]
- bl sub_80DE834
- lsls r0, 16
- lsrs r5, r0, 16
- ldr r1, =gContestMons
- lsls r0, r7, 6
- adds r0, r1
- ldrh r0, [r0]
- bl sub_80DE84C
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, [r4]
- ldr r0, [r0, 0x18]
- movs r1, 0
- movs r2, 0x14
- bl memset
- bl ClearBattleAnimationVars
- ldr r1, =gBattleMonForms
- movs r2, 0
- adds r0, r1, 0x3
-_080DE8A8:
- strb r2, [r0]
- subs r0, 0x1
- cmp r0, r1
- bge _080DE8A8
- cmp r5, 0x90
- beq _080DE920
- cmp r5, 0x90
- bgt _080DE8DE
- cmp r5, 0x4C
- beq _080DE978
- cmp r5, 0x4C
- bgt _080DE8D4
- cmp r5, 0xD
- beq _080DE978
- b _080DE9A2
- .pool
-_080DE8D4:
- cmp r5, 0x82
- beq _080DE978
- cmp r5, 0x8F
- beq _080DE978
- b _080DE9A2
-_080DE8DE:
- cmp r5, 0xD8
- beq _080DE960
- cmp r5, 0xD8
- bgt _080DE8EC
- cmp r5, 0xAE
- beq _080DE8FA
- b _080DE9A2
-_080DE8EC:
- cmp r5, 0xDA
- beq _080DE96C
- movs r0, 0x88
- lsls r0, 1
- cmp r5, r0
- beq _080DE920
- b _080DE9A2
-_080DE8FA:
- ldr r0, =gBaseStats
- lsls r1, r6, 3
- subs r1, r6
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x6]
- cmp r0, 0x7
- beq _080DE910
- ldrb r0, [r1, 0x7]
- cmp r0, 0x7
- bne _080DE99C
-_080DE910:
- ldr r1, =gAnimMoveTurn
- movs r0, 0
- b _080DE9A0
- .pool
-_080DE920:
- ldr r6, =gContestResources
- ldr r0, [r6]
- ldr r1, [r0, 0x4]
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrb r4, [r0, 0x1B]
- ldr r5, =gContestMons
- lsls r4, 6
- adds r0, r4, r5
- ldrh r0, [r0]
- bl sub_80DE84C
- ldr r2, [r6]
- ldr r1, [r2, 0x18]
- strh r0, [r1, 0x2]
- ldr r2, [r2, 0x18]
- adds r5, 0x38
- adds r4, r5
- ldr r0, [r4]
- str r0, [r2, 0x10]
- ldrb r0, [r2, 0x4]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x4]
- b _080DE9A2
- .pool
-_080DE960:
- ldr r1, =gAnimFriendship
- movs r0, 0xFF
- b _080DE9A0
- .pool
-_080DE96C:
- ldr r1, =gAnimFriendship
- movs r0, 0
- b _080DE9A0
- .pool
-_080DE978:
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0]
- adds r2, r0, 0
- adds r2, 0x5A
- ldrb r1, [r2]
- cmp r1, 0
- bne _080DE99C
- movs r0, 0x2
- strb r0, [r2]
- ldr r0, =gAnimMoveTurn
- strb r1, [r0]
- b _080DE9A2
- .pool
-_080DE99C:
- ldr r1, =gAnimMoveTurn
- movs r0, 0x1
-_080DE9A0:
- strb r0, [r1]
-_080DE9A2:
- bl sub_80DEA5C
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE864
-
- thumb_func_start sub_80DE9B0
-sub_80DE9B0: @ 80DE9B0
- push {r4,lr}
- ldr r4, =gContestResources
- ldr r0, [r4]
- ldr r0, [r0, 0x18]
- movs r1, 0
- movs r2, 0x14
- bl memset
- ldr r0, [r4]
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x5A
- ldrb r0, [r1]
- cmp r0, 0
- beq _080DE9D2
- subs r0, 0x1
- strb r0, [r1]
-_080DE9D2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE9B0
-
- thumb_func_start sub_80DE9DC
-sub_80DE9DC: @ 80DE9DC
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r6, =gContestResources
- ldr r0, [r6]
- ldr r0, [r0, 0x18]
- strb r4, [r0, 0x5]
- ldr r5, =gContestMons
- lsls r4, 6
- adds r0, r4, r5
- ldrh r0, [r0]
- bl sub_80DE84C
- ldr r2, [r6]
- ldr r1, [r2, 0x18]
- strh r0, [r1]
- ldr r1, [r2, 0x18]
- adds r0, r5, 0
- adds r0, 0x38
- adds r0, r4, r0
- ldr r0, [r0]
- str r0, [r1, 0x8]
- adds r5, 0x3C
- adds r4, r5
- ldr r0, [r4]
- str r0, [r1, 0xC]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DE9DC
-
- thumb_func_start sub_80DEA20
-sub_80DEA20: @ 80DEA20
- push {lr}
- ldr r0, =SpriteCallbackDummy
- bl CreateInvisibleSpriteWithCallback
- ldr r1, =gBattlerSpriteIds
- strb r0, [r1, 0x3]
- ldr r0, =gBattlerTarget
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- bl InitSpriteAffineAnim
- bl sub_80DEA5C
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DEA20
-
- thumb_func_start sub_80DEA5C
-sub_80DEA5C: @ 80DEA5C
- push {r4,lr}
- ldr r0, =gBattlerSpriteIds
- ldrb r0, [r0, 0x3]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- movs r0, 0x3
- movs r1, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x20]
- movs r0, 0x3
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x22]
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DEA5C
-
- thumb_func_start sub_80DEAA8
-sub_80DEAA8: @ 80DEAA8
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- ldr r2, =gBattleMoves
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x6]
- cmp r0, 0x20
- bhi _080DEB60
- lsls r0, 2
- ldr r1, =_080DEAD0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080DEAD0:
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB54
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB54
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
- .4byte _080DEB60
-_080DEB54:
- ldr r1, =gBattlerTarget
- movs r0, 0x2
- b _080DEB64
- .pool
-_080DEB60:
- ldr r1, =gBattlerTarget
- movs r0, 0x3
-_080DEB64:
- strb r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DEAA8
-
- thumb_func_start Contest_PrintTextToBg0WindowStd
-Contest_PrintTextToBg0WindowStd: @ 80DEB70
- push {r4,lr}
- sub sp, 0x10
- adds r4, r0, 0
- str r1, [sp]
- mov r0, sp
- movs r2, 0
- strb r4, [r0, 0x4]
- movs r1, 0x1
- strb r1, [r0, 0x5]
- strb r2, [r0, 0x6]
- strb r1, [r0, 0x7]
- strb r2, [r0, 0x8]
- strb r1, [r0, 0x9]
- strb r2, [r0, 0xA]
- strb r2, [r0, 0xB]
- mov r3, sp
- ldrb r2, [r3, 0xC]
- subs r1, 0x11
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0xC]
- mov r2, sp
- movs r0, 0xF0
- strb r0, [r2, 0xC]
- ldrb r0, [r2, 0xD]
- ands r1, r0
- strb r1, [r2, 0xD]
- mov r1, sp
- movs r0, 0x80
- strb r0, [r1, 0xD]
- mov r0, sp
- movs r1, 0
- movs r2, 0
- bl AddTextPrinter
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl PutWindowTilemap
- movs r0, 0
- bl Contest_SetBgCopyFlags
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end Contest_PrintTextToBg0WindowStd
-
- thumb_func_start Contest_PrintTextToBg0WindowAt
-Contest_PrintTextToBg0WindowAt: @ 80DEBD0
- push {r4,r5,lr}
- sub sp, 0x10
- adds r5, r0, 0
- ldr r4, [sp, 0x1C]
- str r1, [sp]
- mov r0, sp
- movs r1, 0
- strb r5, [r0, 0x4]
- strb r4, [r0, 0x5]
- strb r2, [r0, 0x6]
- strb r3, [r0, 0x7]
- strb r2, [r0, 0x8]
- strb r3, [r0, 0x9]
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r3, sp
- ldrb r2, [r3, 0xC]
- subs r1, 0x10
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0xC]
- mov r2, sp
- movs r0, 0xF0
- strb r0, [r2, 0xC]
- ldrb r0, [r2, 0xD]
- ands r1, r0
- strb r1, [r2, 0xD]
- mov r1, sp
- movs r0, 0x80
- strb r0, [r1, 0xD]
- mov r0, sp
- movs r1, 0
- movs r2, 0
- bl AddTextPrinter
- lsls r5, 24
- lsrs r5, 24
- adds r0, r5, 0
- bl PutWindowTilemap
- movs r0, 0
- bl Contest_SetBgCopyFlags
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end Contest_PrintTextToBg0WindowAt
-
- thumb_func_start Contest_StartTextPrinter
-Contest_StartTextPrinter: @ 80DEC30
- push {r4,r5,lr}
- sub sp, 0x10
- str r0, [sp]
- mov r2, sp
- movs r3, 0
- movs r0, 0x4
- strb r0, [r2, 0x4]
- mov r0, sp
- movs r5, 0x1
- strb r5, [r0, 0x5]
- strb r3, [r0, 0x6]
- strb r5, [r0, 0x7]
- strb r3, [r0, 0x8]
- strb r5, [r0, 0x9]
- strb r3, [r0, 0xA]
- strb r3, [r0, 0xB]
- mov r4, sp
- ldrb r3, [r4, 0xC]
- movs r2, 0x10
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r4, 0xC]
- mov r3, sp
- movs r0, 0x10
- strb r0, [r3, 0xC]
- ldrb r0, [r3, 0xD]
- ands r2, r0
- strb r2, [r3, 0xD]
- mov r2, sp
- movs r0, 0x80
- strb r0, [r2, 0xD]
- cmp r1, 0
- bne _080DEC80
- mov r0, sp
- movs r1, 0
- movs r2, 0
- bl AddTextPrinter
- b _080DECA4
-_080DEC80:
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _080DEC94
- movs r1, 0x4
- b _080DEC9C
- .pool
-_080DEC94:
- bl GetPlayerTextSpeedDelay
- lsls r0, 24
- lsrs r1, r0, 24
-_080DEC9C:
- mov r0, sp
- movs r2, 0
- bl AddTextPrinter
-_080DECA4:
- movs r0, 0x4
- bl PutWindowTilemap
- movs r0, 0
- bl Contest_SetBgCopyFlags
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end Contest_StartTextPrinter
-
- thumb_func_start ContestBG_FillBoxWithIncrementingTile
-ContestBG_FillBoxWithIncrementingTile: @ 80DECB8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- mov r8, r0
- ldr r0, [sp, 0x28]
- ldr r4, [sp, 0x2C]
- ldr r5, [sp, 0x30]
- ldr r6, [sp, 0x34]
- mov r7, r8
- lsls r7, 24
- lsrs r7, 24
- mov r8, r7
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- str r0, [sp]
- str r4, [sp, 0x4]
- str r5, [sp, 0x8]
- lsls r6, 16
- asrs r6, 16
- str r6, [sp, 0xC]
- mov r0, r8
- bl WriteSequenceToBgTilemapBuffer
- mov r0, r8
- bl Contest_SetBgCopyFlags
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestBG_FillBoxWithIncrementingTile
-
- thumb_func_start ContestBG_FillBoxWithTile
-ContestBG_FillBoxWithTile: @ 80DED10
- push {r4-r6,lr}
- sub sp, 0x10
- ldr r4, [sp, 0x20]
- ldr r5, [sp, 0x24]
- ldr r6, [sp, 0x28]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- str r4, [sp]
- str r5, [sp, 0x4]
- str r6, [sp, 0x8]
- movs r4, 0
- str r4, [sp, 0xC]
- bl ContestBG_FillBoxWithIncrementingTile
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ContestBG_FillBoxWithTile
-
- thumb_func_start Contest_RunTextPrinters
-Contest_RunTextPrinters: @ 80DED4C
- push {lr}
- bl RunTextPrinters
- movs r0, 0x4
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end Contest_RunTextPrinters
-
- thumb_func_start Contest_SetBgCopyFlags
-Contest_SetBgCopyFlags: @ 80DED60
- ldr r2, =sContestBgCopyFlags
- movs r1, 0x1
- lsls r1, r0
- ldrb r0, [r2]
- orrs r1, r0
- strb r1, [r2]
- bx lr
- .pool
- thumb_func_end Contest_SetBgCopyFlags
-
- thumb_func_start ResetContestLinkResults
-ResetContestLinkResults: @ 80DED74
- push {r4-r6,lr}
- movs r0, 0
- ldr r6, =gSaveBlock2Ptr
- ldr r5, =0x00000624
- movs r4, 0
-_080DED7E:
- adds r3, r0, 0x1
- lsls r1, r0, 3
- movs r2, 0x3
-_080DED84:
- ldr r0, [r6]
- adds r0, r5
- adds r0, r1
- strh r4, [r0]
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _080DED84
- adds r0, r3, 0
- cmp r0, 0x4
- ble _080DED7E
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ResetContestLinkResults
-
- thumb_func_start sub_80DEDA8
-sub_80DEDA8: @ 80DEDA8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r5, 0
- ldr r1, =gContestFinalStandings
- ldrb r0, [r1]
- cmp r0, 0
- beq _080DEDE6
-_080DEDD8:
- adds r5, 0x1
- cmp r5, 0x2
- bgt _080DEDE6
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DEDD8
-_080DEDE6:
- ldr r0, [sp]
- cmp r0, 0xFF
- bne _080DEE00
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- cmp r5, r0
- beq _080DEE00
- movs r0, 0
- b _080DEF90
- .pool
-_080DEE00:
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _080DEE4C
- lsls r0, 2
- ldr r1, =_080DEE1C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080DEE1C:
- .4byte _080DEE4C
- .4byte _080DEE30
- .4byte _080DEE36
- .4byte _080DEE3C
- .4byte _080DEE42
-_080DEE30:
- mov r0, r8
- adds r0, 0x3
- b _080DEE46
-_080DEE36:
- mov r0, r8
- adds r0, 0x6
- b _080DEE46
-_080DEE3C:
- mov r0, r8
- adds r0, 0x9
- b _080DEE46
-_080DEE42:
- mov r0, r8
- adds r0, 0xC
-_080DEE46:
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
-_080DEE4C:
- ldr r1, [sp]
- cmp r1, 0xFE
- bne _080DEE54
- b _080DEF50
-_080DEE54:
- adds r0, r1, 0
- movs r1, 0x1
- bl sub_80DEFA8
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r2, =gSaveBlock1Ptr
- mov r10, r2
- ldr r0, [r2]
- mov r3, r9
- lsls r7, r3, 5
- ldr r6, =0x00002e90
- adds r2, r0, r6
- adds r2, r7
- ldr r4, =gContestMons
- lsls r5, 6
- adds r1, r4, 0
- adds r1, 0x38
- adds r1, r5, r1
- ldr r1, [r1]
- str r1, [r2]
- adds r1, r0, r7
- adds r2, r5, r4
- ldrh r2, [r2]
- ldr r3, =0x00002e98
- adds r1, r3
- strh r2, [r1]
- ldr r1, =0x00002e94
- adds r2, r0, r1
- adds r2, r7
- adds r1, r4, 0
- adds r1, 0x3C
- adds r1, r5, r1
- ldr r1, [r1]
- str r1, [r2]
- adds r6, r7, r6
- adds r0, r6
- adds r0, 0xB
- adds r1, r4, 0x2
- adds r1, r5, r1
- bl StringCopy
- mov r2, r10
- ldr r0, [r2]
- adds r0, r6
- adds r0, 0x16
- adds r4, 0xD
- adds r5, r4
- adds r1, r5, 0
- bl StringCopy
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080DEEF4
- mov r3, r10
- ldr r0, [r3]
- adds r0, r7
- ldr r1, =0x00002eae
- adds r0, r1
- movs r1, 0x4
- b _080DEF02
- .pool
-_080DEEF4:
- mov r2, r10
- ldr r0, [r2]
- adds r0, r7
- ldr r1, =gSpecialVar_ContestRank
- ldrh r1, [r1]
- ldr r3, =0x00002eae
- adds r0, r3
-_080DEF02:
- strb r1, [r0]
- ldr r0, [sp]
- cmp r0, 0xFF
- beq _080DEF34
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- mov r2, r9
- lsls r1, r2, 5
- adds r0, r1
- ldr r1, =gSpecialVar_ContestCategory
- ldrh r1, [r1]
- ldr r3, =0x00002e9a
- adds r0, r3
- strb r1, [r0]
- b _080DEF8E
- .pool
-_080DEF34:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- mov r2, r9
- lsls r1, r2, 5
- adds r0, r1
- ldr r3, =0x00002e9a
- adds r0, r3
- mov r1, r8
- strb r1, [r0]
- b _080DEF8E
- .pool
-_080DEF50:
- ldr r6, =gUnknown_02039F3C
- ldr r4, =gContestMons
- lsls r5, 6
- adds r0, r4, 0
- adds r0, 0x38
- adds r0, r5, r0
- ldr r0, [r0]
- str r0, [r6]
- adds r0, r4, 0
- adds r0, 0x3C
- adds r0, r5, r0
- ldr r0, [r0]
- str r0, [r6, 0x4]
- adds r0, r5, r4
- ldrh r0, [r0]
- strh r0, [r6, 0x8]
- adds r0, r6, 0
- adds r0, 0xB
- adds r1, r4, 0x2
- adds r1, r5, r1
- bl StringCopy
- adds r0, r6, 0
- adds r0, 0x16
- adds r4, 0xD
- adds r5, r4
- adds r1, r5, 0
- bl StringCopy
- mov r2, r8
- strb r2, [r6, 0xA]
-_080DEF8E:
- movs r0, 0x1
-_080DEF90:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80DEDA8
-
- thumb_func_start sub_80DEFA8
-sub_80DEFA8: @ 80DEFA8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r0, 0x3
- bgt _080DEFF8
- cmp r0, 0
- blt _080DEFF8
- cmp r1, 0
- beq _080DEFE6
- movs r2, 0x5
- ldr r0, =gSaveBlock1Ptr
- mov r12, r0
- ldr r4, =0x00002e90
- ldr r3, =0x00002e70
-_080DEFC8:
- mov r1, r12
- ldr r0, [r1]
- lsls r1, r2, 5
- adds r1, r0
- adds r0, r1, r4
- adds r1, r3
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5,r6}
- stm r0!, {r5,r6}
- subs r2, 0x1
- cmp r2, 0
- bgt _080DEFC8
-_080DEFE6:
- movs r0, 0
- b _080DF03A
- .pool
-_080DEFF8:
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _080DF038
- lsls r0, 2
- ldr r1, =_080DF014
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080DF014:
- .4byte _080DF028
- .4byte _080DF02C
- .4byte _080DF030
- .4byte _080DF034
- .4byte _080DF038
-_080DF028:
- movs r0, 0x8
- b _080DF03A
-_080DF02C:
- movs r0, 0x9
- b _080DF03A
-_080DF030:
- movs r0, 0xA
- b _080DF03A
-_080DF034:
- movs r0, 0xB
- b _080DF03A
-_080DF038:
- movs r0, 0xC
-_080DF03A:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80DEFA8
-
- thumb_func_start ClearContestWinnerPicsInContestHall
-ClearContestWinnerPicsInContestHall: @ 80DF040
- push {r4-r7,lr}
- movs r2, 0
- ldr r0, =gSaveBlock1Ptr
- mov r12, r0
- ldr r4, =0x00002e90
- ldr r3, =gUnknown_08587FA4
-_080DF04C:
- mov r1, r12
- ldr r0, [r1]
- lsls r1, r2, 5
- adds r0, r1
- adds r0, r4
- adds r1, r3, 0
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5,r6}
- stm r0!, {r5,r6}
- adds r3, 0x20
- adds r2, 0x1
- cmp r2, 0x7
- ble _080DF04C
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearContestWinnerPicsInContestHall
-
- thumb_func_start sub_80DF080
-sub_80DF080: @ 80DF080
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, =gContestResources
- ldr r3, [r2]
- ldr r5, [r3, 0x10]
- ldrb r1, [r5, 0x1]
- movs r7, 0x1
- adds r0, r7, 0
- ands r0, r1
- adds r6, r2, 0
- cmp r0, 0
- bne _080DF0D2
- movs r0, 0
- ldrsb r0, [r5, r0]
- cmp r0, 0
- ble _080DF0D2
- ldr r1, [r3, 0x4]
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x15]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- bne _080DF0D2
- ldr r1, [r3, 0x1C]
- lsls r2, r4, 4
- adds r1, r2, r1
- ldrb r3, [r1, 0xC]
- movs r0, 0x1
- orrs r0, r3
- strb r0, [r1, 0xC]
- ldr r0, [r6]
- ldr r0, [r0, 0x1C]
- adds r2, r0
- ldrb r0, [r2, 0xE]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0xE]
-_080DF0D2:
- ldr r3, [r6]
- ldr r1, [r3, 0x4]
- lsls r2, r4, 3
- subs r0, r2, r4
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0xC]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- adds r7, r2, 0
- cmp r0, 0
- beq _080DF0FA
- ldr r0, [r3, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xC]
- movs r0, 0x2
- orrs r0, r2
- strb r0, [r1, 0xC]
-_080DF0FA:
- ldr r3, [r6]
- ldr r2, [r3, 0x10]
- ldrb r1, [r2, 0x1]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- bne _080DF126
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, 0
- beq _080DF126
- movs r0, 0x2
- ldrsb r0, [r2, r0]
- cmp r0, 0x3C
- bne _080DF126
- ldr r0, [r3, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xC]
- movs r0, 0x4
- orrs r0, r2
- strb r0, [r1, 0xC]
-_080DF126:
- ldr r3, [r6]
- ldr r1, [r3, 0x4]
- subs r0, r7, r4
- lsls r0, 2
- adds r2, r0, r1
- ldrb r1, [r2, 0x15]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080DF14E
- ldrb r0, [r2, 0x16]
- cmp r0, 0
- beq _080DF14E
- ldr r0, [r3, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xC]
- movs r0, 0x8
- orrs r0, r2
- strb r0, [r1, 0xC]
-_080DF14E:
- movs r3, 0
- movs r5, 0
-_080DF152:
- cmp r3, r4
- beq _080DF180
- ldr r1, [r6]
- ldr r0, [r1, 0x4]
- adds r0, r5, r0
- ldrb r0, [r0, 0xE]
- cmp r0, 0
- beq _080DF180
- ldr r0, [r1, 0x1C]
- lsls r2, r4, 4
- adds r2, r0
- ldrb r0, [r2, 0xC]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldr r0, [r6]
- ldr r0, [r0, 0x1C]
- lsls r2, r3, 4
- adds r2, r0
- ldrb r0, [r2, 0xC]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0xC]
-_080DF180:
- adds r5, 0x1C
- adds r3, 0x1
- cmp r3, 0x3
- ble _080DF152
- ldr r2, [r6]
- ldr r1, [r2, 0x4]
- subs r0, r7, r4
- lsls r5, r0, 2
- adds r1, r5, r1
- ldrb r3, [r1, 0xC]
- movs r0, 0x6
- ands r0, r3
- cmp r0, 0
- bne _080DF1A6
- ldrb r1, [r1, 0xB]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080DF1BC
-_080DF1A6:
- ldr r0, [r2, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xC]
- movs r0, 0x20
- orrs r0, r2
- strb r0, [r1, 0xC]
- b _080DF1F6
- .pool
-_080DF1BC:
- movs r0, 0x1
- ands r0, r3
- cmp r0, 0
- bne _080DF1F6
- ldr r2, [r2, 0x1C]
- lsls r3, r4, 4
- adds r2, r3, r2
- ldrb r0, [r2, 0xC]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldr r0, [r6]
- ldr r1, [r0, 0x1C]
- adds r1, r3, r1
- ldrb r0, [r1, 0xE]
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r1, 0xE]
- ldr r1, [r6]
- ldr r0, [r1, 0x1C]
- adds r3, r0
- ldr r0, [r1]
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- adds r3, r0
- ldr r0, [r1, 0x4]
- adds r0, r5, r0
- ldrh r0, [r0, 0x6]
- strh r0, [r3]
-_080DF1F6:
- ldr r2, [r6]
- ldr r1, [r2, 0x4]
- subs r0, r7, r4
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x15]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _080DF21A
- ldr r0, [r2, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xD]
- movs r0, 0x2
- orrs r0, r2
- strb r0, [r1, 0xD]
-_080DF21A:
- ldr r2, [r6]
- ldr r0, [r2]
- ldrb r0, [r0, 0x13]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x4
- bne _080DF24A
- ldr r3, [r2, 0x10]
- ldrb r1, [r3, 0x1]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- bne _080DF24A
- movs r0, 0
- ldrsb r0, [r3, r0]
- cmp r0, 0
- bge _080DF24A
- ldr r0, [r2, 0x1C]
- lsls r1, r4, 4
- adds r1, r0
- ldrb r2, [r1, 0xD]
- movs r0, 0x20
- orrs r0, r2
- strb r0, [r1, 0xD]
-_080DF24A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80DF080
-
- thumb_func_start sub_80DF250
-sub_80DF250: @ 80DF250
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x38
- movs r1, 0
- movs r0, 0
- str r0, [sp, 0x20]
- movs r4, 0
- ldr r6, =gContestResources
- mov r2, sp
- adds r2, 0xC
- str r2, [sp, 0x28]
- mov r3, sp
- adds r3, 0x14
- str r3, [sp, 0x2C]
- mov r7, sp
- adds r7, 0x2
- str r7, [sp, 0x24]
- ldr r5, =gContestFinalStandings
- movs r2, 0
- movs r3, 0x80
- lsls r3, 17
-_080DF280:
- adds r0, r4, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DF298
- lsrs r0, r2, 24
- str r0, [sp, 0x20]
- b _080DF29E
- .pool
-_080DF298:
- cmp r0, 0x3
- bne _080DF29E
- lsrs r1, r2, 24
-_080DF29E:
- adds r2, r3
- adds r4, 0x1
- cmp r4, 0x3
- ble _080DF280
- ldr r0, [r6]
- ldr r0, [r0, 0x1C]
- lsls r1, 4
- adds r1, r0
- ldrb r2, [r1, 0xD]
- movs r0, 0x1
- orrs r0, r2
- strb r0, [r1, 0xD]
- movs r4, 0
- ldr r1, [sp, 0x20]
- lsls r1, 4
- str r1, [sp, 0x30]
- mov r9, r4
- mov r10, r4
-_080DF2C2:
- ldr r2, [sp, 0x20]
- cmp r4, r2
- beq _080DF2EE
- ldr r1, =gUnknown_02039F08
- lsls r0, r2, 1
- adds r0, r1
- movs r3, 0
- ldrsh r2, [r0, r3]
- add r1, r10
- movs r6, 0
- ldrsh r0, [r1, r6]
- subs r2, r0
- cmp r2, 0x32
- bgt _080DF2EE
- ldr r7, =gContestResources
- ldr r0, [r7]
- ldr r2, [r0, 0x1C]
- add r2, r9
- ldrb r0, [r2, 0xD]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2, 0xD]
-_080DF2EE:
- ldr r1, =gContestResources
- ldr r0, [r1]
- ldr r0, [r0, 0x1C]
- mov r3, r9
- adds r2, r3, r0
- ldrb r1, [r2, 0xE]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080DF30A
- ldrb r0, [r2, 0xD]
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r2, 0xD]
-_080DF30A:
- movs r5, 0
- ldr r2, =gContestMonConditions
- add r2, r10
- movs r6, 0
- ldrsh r1, [r2, r6]
- ldr r7, =gContestMonConditions
- movs r3, 0
- ldrsh r0, [r7, r3]
- cmp r1, r0
- blt _080DF336
- adds r3, r2, 0
- adds r2, r7, 0
-_080DF322:
- adds r2, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- bgt _080DF336
- movs r6, 0
- ldrsh r1, [r3, r6]
- movs r7, 0
- ldrsh r0, [r2, r7]
- cmp r1, r0
- bge _080DF322
-_080DF336:
- cmp r5, 0x4
- bne _080DF354
- ldr r1, =gContestFinalStandings
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080DF354
- ldr r2, =gContestResources
- ldr r0, [r2]
- ldr r2, [r0, 0x1C]
- add r2, r9
- ldrb r0, [r2, 0xD]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0xD]
-_080DF354:
- movs r3, 0
- mov r12, r3
- mov r8, r3
- movs r5, 0
- ldr r0, =gContestMonConditions
- add r0, r10
- movs r7, 0
- ldrsh r6, [r0, r7]
- str r6, [sp, 0x34]
- ldr r2, =gContestMonConditions
- ldr r0, =gUnknown_02039F18
- mov r1, r10
- adds r6, r1, r0
- adds r3, r0, 0
-_080DF370:
- movs r7, 0
- ldrsh r0, [r2, r7]
- ldr r1, [sp, 0x34]
- cmp r1, r0
- ble _080DF37E
- movs r7, 0x1
- mov r12, r7
-_080DF37E:
- movs r0, 0
- ldrsh r1, [r6, r0]
- movs r7, 0
- ldrsh r0, [r3, r7]
- cmp r1, r0
- ble _080DF38E
- movs r0, 0x1
- mov r8, r0
-_080DF38E:
- adds r2, 0x2
- adds r3, 0x2
- adds r5, 0x1
- cmp r5, 0x3
- ble _080DF370
- mov r1, r12
- cmp r1, 0
- bne _080DF3B4
- mov r2, r8
- cmp r2, 0
- bne _080DF3B4
- ldr r3, =gContestResources
- ldr r0, [r3]
- ldr r2, [r0, 0x1C]
- add r2, r9
- ldrb r0, [r2, 0xD]
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0xD]
-_080DF3B4:
- ldr r6, =gContestResources
- ldr r0, [r6]
- ldr r0, [r0, 0x1C]
- mov r7, r9
- adds r2, r7, r0
- ldrb r1, [r2, 0xE]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080DF3D0
- ldrb r0, [r2, 0xD]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0xD]
-_080DF3D0:
- movs r0, 0x10
- add r9, r0
- movs r1, 0x2
- add r10, r1
- adds r4, 0x1
- cmp r4, 0x3
- bgt _080DF3E0
- b _080DF2C2
-_080DF3E0:
- movs r4, 0
- movs r5, 0
- movs r3, 0
- ldr r2, [sp, 0x28]
- mov r1, sp
-_080DF3EA:
- strh r3, [r1]
- adds r0, r2, r4
- strb r5, [r0]
- adds r1, 0x2
- adds r4, 0x1
- cmp r4, 0x4
- ble _080DF3EA
- mov r1, sp
- ldr r0, =0x0000ffff
- strh r0, [r1, 0xA]
- movs r0, 0
- ldr r2, [sp, 0x28]
- strb r0, [r2, 0x5]
- movs r4, 0
- ldr r0, =gContestResources
- ldr r0, [r0]
- mov r8, r0
- ldr r7, [sp, 0x30]
-_080DF40E:
- mov r3, r8
- ldr r0, [r3, 0x1C]
- adds r0, r7, r0
- lsls r1, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- adds r4, 0x1
- mov r12, r4
- cmp r0, 0
- beq _080DF450
- ldr r0, =gContestResources
- ldr r6, [r0]
- ldr r3, [sp, 0x28]
- mov r4, sp
- movs r5, 0x4
-_080DF42C:
- ldr r0, [r6, 0x1C]
- adds r0, r7, r0
- adds r0, r1
- ldrh r0, [r0]
- ldrh r2, [r4]
- cmp r0, r2
- beq _080DF440
- cmp r2, 0
- bne _080DF446
- strh r0, [r4]
-_080DF440:
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
-_080DF446:
- adds r3, 0x1
- adds r4, 0x2
- subs r5, 0x1
- cmp r5, 0
- bge _080DF42C
-_080DF450:
- mov r4, r12
- cmp r4, 0x4
- ble _080DF40E
- mov r0, sp
- ldrh r0, [r0]
- ldr r6, [sp, 0x2C]
- strh r0, [r6]
- ldr r7, [sp, 0x28]
- ldrb r3, [r7]
- movs r6, 0
- movs r4, 0x1
- ldr r1, [sp, 0x24]
- ldrh r0, [r1]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _080DF4C0
- ldr r5, [sp, 0x2C]
- adds r7, r1, 0
- mov r2, sp
- adds r2, 0x2
-_080DF478:
- ldr r0, [sp, 0x28]
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r3, r0
- bcs _080DF4A4
- ldrh r0, [r2]
- strh r0, [r5]
- ldrb r3, [r1]
- movs r6, 0x1
- b _080DF4B6
- .pool
-_080DF4A4:
- cmp r3, r0
- bne _080DF4B6
- lsls r0, r6, 1
- adds r0, r5, r0
- ldrh r1, [r2]
- strh r1, [r0]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_080DF4B6:
- adds r2, 0x2
- adds r4, 0x1
- ldrh r0, [r2]
- cmp r0, r7
- bne _080DF478
-_080DF4C0:
- bl Random
- ldr r1, =gContestResources
- ldr r1, [r1]
- ldr r4, [r1, 0x1C]
- ldr r1, [sp, 0x30]
- adds r4, r1, r4
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __modsi3
- lsls r0, 1
- ldr r2, [sp, 0x2C]
- adds r0, r2, r0
- ldrh r0, [r0]
- strh r0, [r4, 0xA]
- add sp, 0x38
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DF250
-
- thumb_func_start sub_80DF4F8
-sub_80DF4F8: @ 80DF4F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080DF514
- b _080DF6EE
-_080DF514:
- movs r7, 0
- movs r3, 0
- ldr r0, =gContestResources
- mov r12, r0
-_080DF51C:
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DF528
- lsls r0, r3, 24
- lsrs r7, r0, 24
-_080DF528:
- adds r3, 0x1
- cmp r3, 0x3
- ble _080DF51C
- movs r1, 0
- mov r9, r1
- mov r10, r1
- movs r3, 0
- lsls r2, r7, 1
- lsls r4, r7, 4
- mov r8, r4
- ldr r1, =gContestMonConditions
- adds r0, r2, r1
- movs r6, 0
- ldrsh r5, [r0, r6]
- str r5, [sp, 0x8]
- adds r5, r1, 0
- ldr r0, =gUnknown_02039F18
- adds r2, r0
- adds r4, r0, 0
-_080DF54E:
- movs r1, 0
- ldrsh r0, [r5, r1]
- ldr r6, [sp, 0x8]
- cmp r6, r0
- bge _080DF562
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_080DF562:
- movs r0, 0
- ldrsh r1, [r2, r0]
- movs r6, 0
- ldrsh r0, [r4, r6]
- cmp r1, r0
- bge _080DF578
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
-_080DF578:
- adds r5, 0x2
- adds r4, 0x2
- adds r3, 0x1
- cmp r3, 0x3
- ble _080DF54E
- mov r1, r12
- ldr r0, [r1]
- ldr r0, [r0, 0x1C]
- add r0, r8
- ldrb r1, [r0, 0xC]
- movs r4, 0
- movs r2, 0x1
- movs r3, 0x7
-_080DF592:
- adds r0, r1, 0
- ands r0, r2
- cmp r0, 0
- beq _080DF5A0
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080DF5A0:
- lsrs r1, 1
- subs r3, 0x1
- cmp r3, 0
- bge _080DF592
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl __modsi3
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x1C]
- add r0, r8
- ldrb r1, [r0, 0xC]
- movs r4, 0
- movs r2, 0
- movs r3, 0
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080DF5DC
- cmp r5, 0
- beq _080DF5F6
-_080DF5D6:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080DF5DC:
- lsrs r1, 1
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, 0x1
- cmp r3, 0x7
- bgt _080DF5F6
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080DF5DC
- cmp r5, r4
- bne _080DF5D6
-_080DF5F6:
- movs r1, 0x1
- adds r0, r1, 0
- lsls r0, r2
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r7, 0
- bne _080DF628
- mov r0, sp
- strb r1, [r0]
- ldr r1, =gContestResources
- ldr r0, [r1]
- ldr r0, [r0, 0x1C]
- ldrb r4, [r0, 0x1D]
- movs r3, 0x2
- b _080DF638
- .pool
-_080DF628:
- mov r1, sp
- movs r0, 0
- strb r0, [r1]
- ldr r1, =gContestResources
- ldr r0, [r1]
- ldr r0, [r0, 0x1C]
- ldrb r4, [r0, 0xD]
- movs r3, 0x1
-_080DF638:
- mov r12, r1
- movs r5, 0x1
- lsls r2, 24
- str r2, [sp, 0x4]
- cmp r3, 0x3
- bgt _080DF682
-_080DF644:
- cmp r3, r7
- beq _080DF67C
- mov r6, r12
- ldr r2, [r6]
- ldr r0, [r2, 0x1C]
- lsls r1, r3, 4
- adds r0, r1, r0
- ldrb r0, [r0, 0xD]
- cmp r4, r0
- bcs _080DF66C
- mov r0, sp
- strb r3, [r0]
- ldr r0, [r2, 0x1C]
- adds r0, r1, r0
- ldrb r4, [r0, 0xD]
- movs r5, 0x1
- b _080DF67C
- .pool
-_080DF66C:
- cmp r4, r0
- bne _080DF67C
- mov r1, sp
- adds r0, r1, r5
- strb r3, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_080DF67C:
- adds r3, 0x1
- cmp r3, 0x3
- ble _080DF644
-_080DF682:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r5, 0
- bl __modsi3
- add r0, sp
- ldrb r6, [r0]
- movs r2, 0x80
- movs r3, 0
- ldr r5, =gContestResources
- ldr r0, [r5]
- ldr r0, [r0, 0x1C]
- lsls r1, r6, 4
- adds r0, r1, r0
- ldrb r0, [r0, 0xD]
- ands r0, r2
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080DF6C4
-_080DF6AE:
- lsrs r2, 1
- adds r3, 0x1
- cmp r3, 0x7
- bgt _080DF6C4
- ldr r0, [r5]
- ldr r0, [r0, 0x1C]
- adds r0, r1, r0
- ldrb r4, [r0, 0xD]
- ands r4, r2
- cmp r4, 0
- beq _080DF6AE
-_080DF6C4:
- mov r0, r9
- bl ContestLiveUpdates_BeforeInterview_1
- mov r0, r10
- bl ContestLiveUpdates_BeforeInterview_2
- ldr r5, [sp, 0x4]
- lsrs r0, r5, 24
- bl ContestLiveUpdates_BeforeInterview_3
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r0, [r0, 0x1C]
- add r0, r8
- ldrh r0, [r0, 0xA]
- bl ContestLiveUpdates_BeforeInterview_4
- adds r0, r4, 0
- adds r1, r6, 0
- bl ContestLiveUpdates_BeforeInterview_5
-_080DF6EE:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DF4F8
-
- thumb_func_start sub_80DF704
-sub_80DF704: @ 80DF704
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, =gHeap
- movs r1, 0xD0
- lsls r1, 9
- adds r2, r0, r1
- ldrb r1, [r2]
- adds r4, r0, 0
- cmp r1, 0
- bne _080DF72C
- cmp r3, 0
- bne _080DF728
- movs r0, 0x2
- b _080DF72E
- .pool
-_080DF728:
- movs r0, 0x3
- b _080DF72E
-_080DF72C:
- movs r0, 0
-_080DF72E:
- strb r0, [r2]
- movs r1, 0xD0
- lsls r1, 9
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DF746
- bl sub_80DAEA4
- bl sub_80DB2BC
- b _080DF74A
-_080DF746:
- bl sub_80DF750
-_080DF74A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DF704
-
- thumb_func_start sub_80DF750
-sub_80DF750: @ 80DF750
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x34
- ldr r0, =gUnknown_020322D5
- ldrb r0, [r0]
- cmp r0, 0
- bne _080DF766
- b _080DF924
-_080DF766:
- ldr r0, =gHeap
- movs r1, 0xD0
- lsls r1, 9
- adds r0, r1
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _080DF77C
- b _080DF924
-_080DF77C:
- movs r7, 0
- mov r2, sp
- adds r2, 0x18
- str r2, [sp, 0x30]
-_080DF784:
- adds r0, r7, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _080DF784
- ldr r0, =gHeap
- movs r1, 0xD0
- lsls r1, 9
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _080DF874
- movs r7, 0
- movs r2, 0x7
- mov r10, r2
- ldr r0, [sp, 0x30]
- mov r9, r0
-_080DF7AE:
- add r0, sp, 0x4
- ldr r1, =gText_CDot
- bl StringCopy
- adds r5, r0, 0
- ldr r0, =gUnknown_02039F26
- adds r0, r7, r0
- ldrb r0, [r0]
- mov r1, r10
- str r1, [sp]
- add r1, sp, 0x4
- movs r2, 0x5
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x1C]
- lsls r0, r7, 4
- adds r0, r1
- ldrb r4, [r0, 0xC]
- movs r6, 0x7
- adds r2, r7, 0x1
- mov r8, r2
-_080DF7DE:
- movs r1, 0x1
- ands r1, r4
- adds r0, r5, 0
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- adds r5, r0, 0
- lsrs r4, 1
- lsls r0, r6, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r6, r0, 24
- asrs r0, 24
- movs r2, 0x1
- negs r2, r2
- cmp r0, r2
- bgt _080DF7DE
- movs r6, 0
- ldr r4, =gUnknown_02039F26
- ldr r3, [sp, 0x30]
-_080DF80A:
- lsls r0, r6, 24
- asrs r0, 24
- adds r2, r3, r0
- mov r1, sp
- adds r1, r0
- adds r1, 0x4
- ldrb r1, [r1]
- strb r1, [r2]
- adds r0, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- asrs r5, r0, 24
- cmp r5, 0x4
- ble _080DF80A
- mov r0, r9
- adds r1, r0, r5
- movs r0, 0xFF
- strb r0, [r1]
- adds r4, r7, r4
- ldrb r0, [r4]
- mov r1, r10
- str r1, [sp]
- mov r1, r9
- movs r2, 0x5
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- ldrb r0, [r4]
- mov r1, sp
- adds r1, r5
- adds r1, 0x4
- mov r2, r10
- str r2, [sp]
- movs r2, 0x37
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- mov r1, r8
- lsls r0, r1, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _080DF7AE
- b _080DF920
- .pool
-_080DF874:
- movs r7, 0
- mov r2, sp
- adds r2, 0x6
- str r2, [sp, 0x2C]
- ldr r0, [sp, 0x30]
- mov r9, r0
- movs r1, 0x7
- mov r10, r1
-_080DF884:
- add r0, sp, 0x4
- ldr r1, =gText_BDot
- bl StringCopy
- ldr r0, =gContestResources
- ldr r0, [r0]
- ldr r1, [r0, 0x1C]
- lsls r0, r7, 4
- adds r0, r1
- ldrb r4, [r0, 0xD]
- ldr r5, [sp, 0x2C]
- movs r6, 0x7
- adds r2, r7, 0x1
- mov r8, r2
-_080DF8A0:
- movs r1, 0x1
- ands r1, r4
- adds r0, r5, 0
- movs r2, 0
- movs r3, 0x1
- bl ConvertIntToDecimalStringN
- adds r5, r0, 0
- lsrs r4, 1
- lsls r0, r6, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r6, r0, 24
- asrs r0, 24
- movs r2, 0x1
- negs r2, r2
- cmp r0, r2
- bgt _080DF8A0
- movs r6, 0
- ldr r4, =gUnknown_02039F26
- ldr r3, [sp, 0x30]
-_080DF8CC:
- lsls r0, r6, 24
- asrs r0, 24
- adds r2, r3, r0
- mov r1, sp
- adds r1, r0
- adds r1, 0x4
- ldrb r1, [r1]
- strb r1, [r2]
- adds r0, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- asrs r5, r0, 24
- cmp r5, 0x4
- ble _080DF8CC
- mov r0, r9
- adds r1, r0, r5
- movs r0, 0xFF
- strb r0, [r1]
- adds r4, r7, r4
- ldrb r0, [r4]
- mov r1, r10
- str r1, [sp]
- mov r1, r9
- movs r2, 0x5
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- ldrb r0, [r4]
- mov r1, sp
- adds r1, r5
- adds r1, 0x4
- mov r2, r10
- str r2, [sp]
- movs r2, 0x37
- movs r3, 0x1
- bl Contest_PrintTextToBg0WindowAt
- mov r1, r8
- lsls r0, r1, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _080DF884
-_080DF920:
- bl sub_80DB2BC
-_080DF924:
- add sp, 0x34
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80DF750
-
- thumb_func_start sub_80DF940
-sub_80DF940: @ 80DF940
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r5, 0x2
- ldrb r0, [r4]
- cmp r0, 0xFC
- bne _080DF956
- ldrb r0, [r4, 0x1]
- cmp r0, 0x15
- bne _080DF956
- movs r0, 0x2
- b _080DF9CC
-_080DF956:
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5
- bhi _080DF9CA
- ldrb r0, [r4]
- cmp r0, 0xFF
- beq _080DF9CA
-_080DF96A:
- ldrb r1, [r4]
- adds r0, r1, 0
- adds r0, 0x45
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x33
- bls _080DF9BE
- adds r0, r1, 0
- adds r0, 0x5F
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9
- bls _080DF9BE
- adds r0, r1, 0
- cmp r0, 0
- beq _080DF9BE
- cmp r0, 0xAD
- beq _080DF9BE
- cmp r0, 0xB8
- beq _080DF9BE
- cmp r0, 0xAB
- beq _080DF9BE
- cmp r0, 0xAC
- beq _080DF9BE
- cmp r0, 0xB5
- beq _080DF9BE
- cmp r0, 0xB6
- beq _080DF9BE
- cmp r0, 0xBA
- beq _080DF9BE
- cmp r0, 0xAE
- beq _080DF9BE
- cmp r0, 0xB0
- beq _080DF9BE
- cmp r0, 0xB1
- beq _080DF9BE
- cmp r0, 0xB2
- beq _080DF9BE
- cmp r0, 0xB3
- beq _080DF9BE
- cmp r0, 0xB1
- bne _080DF9C8
-_080DF9BE:
- adds r4, 0x1
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _080DF96A
- b _080DF9CA
-_080DF9C8:
- movs r5, 0x1
-_080DF9CA:
- adds r0, r5, 0
-_080DF9CC:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80DF940
-
- thumb_func_start sub_80DF9D4
-sub_80DF9D4: @ 80DF9D4
- ldrb r2, [r0, 0x5]
- movs r1, 0xFF
- strb r1, [r0, 0x5]
- strb r2, [r0, 0x7]
- bx lr
- thumb_func_end sub_80DF9D4
-
- thumb_func_start sub_80DF9E0
-sub_80DF9E0: @ 80DF9E0
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- bl StripExtCtrlCodes
- cmp r4, 0x1
- bne _080DF9F8
- movs r0, 0xFF
- strb r0, [r5, 0x5]
- movs r0, 0xFC
- strb r0, [r5, 0xA]
- b _080DFA00
-_080DF9F8:
- ldrb r1, [r5, 0x5]
- movs r0, 0xFF
- strb r0, [r5, 0x5]
- strb r1, [r5, 0xA]
-_080DFA00:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80DF9E0
-
- thumb_func_start sub_80DFA08
-sub_80DFA08: @ 80DFA08
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- adds r4, r5, 0x2
- cmp r6, 0x1
- bne _080DFA28
- adds r0, r4, 0
- bl sub_80DF940
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl ConvertInternationalString
- b _080DFA3E
-_080DFA28:
- ldrb r0, [r4, 0xA]
- cmp r0, 0xFC
- bne _080DFA38
- adds r0, r4, 0
- movs r1, 0x1
- bl ConvertInternationalString
- b _080DFA3E
-_080DFA38:
- strb r0, [r4, 0x5]
- movs r0, 0xFF
- strb r0, [r4, 0xA]
-_080DFA3E:
- adds r4, r5, 0
- adds r4, 0xD
- cmp r6, 0x1
- bne _080DFA68
- movs r0, 0xFF
- strb r0, [r4, 0x7]
- ldrb r0, [r4, 0x4]
- strb r0, [r4, 0x6]
- ldrb r0, [r4, 0x3]
- strb r0, [r4, 0x5]
- ldrb r0, [r4, 0x2]
- strb r0, [r4, 0x4]
- ldrb r0, [r4, 0x1]
- strb r0, [r4, 0x3]
- ldrb r0, [r5, 0xD]
- strb r0, [r4, 0x2]
- movs r0, 0x15
- strb r0, [r4, 0x1]
- movs r0, 0xFC
- strb r0, [r5, 0xD]
- b _080DFA70
-_080DFA68:
- ldrb r0, [r4, 0x7]
- strb r0, [r4, 0x5]
- movs r0, 0xFF
- strb r0, [r4, 0x7]
-_080DFA70:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80DFA08
-
- .align 2, 0 @ Don't pad with nop.