summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/code_8095014.s484
-rw-r--r--asm/code_80958E8.s676
-rw-r--r--asm/code_8097318.s207
3 files changed, 207 insertions, 1160 deletions
diff --git a/asm/code_8095014.s b/asm/code_8095014.s
index 228811d..d5e9a35 100644
--- a/asm/code_8095014.s
+++ b/asm/code_8095014.s
@@ -452,488 +452,4 @@ sub_8095494:
_080954B0: .4byte gUnknown_203B480
thumb_func_end sub_8095494
- thumb_func_start sub_80954B4
-sub_80954B4:
- push {lr}
- movs r0, 0x3
- bl sub_8095324
- cmp r0, 0
- bne _080954C4
- movs r0, 0
- b _080954C6
-_080954C4:
- movs r0, 0x1
-_080954C6:
- pop {r1}
- bx r1
- thumb_func_end sub_80954B4
-
- thumb_func_start sub_80954CC
-sub_80954CC:
- push {r4-r6,lr}
- sub sp, 0x10
- adds r3, r0, 0
- adds r2, r1, 0
- mov r0, sp
- adds r1, r3, 0
- bl xxx_init_struct_8094924_restore_809485C
- ldr r6, _08095618
- movs r5, 0
- movs r4, 0x1F
-_080954E2:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_8095774
- adds r5, 0x30
- subs r4, 0x1
- cmp r4, 0
- bge _080954E2
- ldr r4, _0809561C
- ldr r1, [r4]
- mov r0, sp
- movs r2, 0x20
- bl RestoreIntegerBits
- ldr r5, [r4]
- adds r4, r5, 0x4
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x58
- bl memset
- mov r0, sp
- adds r1, r4, 0
- movs r2, 0x2
- bl RestoreIntegerBits
- adds r1, r5, 0x6
- mov r0, sp
- movs r2, 0x1
- bl RestoreIntegerBits
- adds r1, r5, 0x7
- mov r0, sp
- movs r2, 0x7
- bl RestoreIntegerBits
- adds r4, 0x4
- mov r0, sp
- adds r1, r4, 0
- bl xxx_restore_poke_sub_4_8090314
- adds r1, r5, 0
- adds r1, 0xC
- mov r0, sp
- movs r2, 0x9
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x10
- mov r0, sp
- bl xxx_restore_poke_sub_c_808F410
- adds r1, r5, 0
- adds r1, 0x14
- mov r0, sp
- bl xxx_restore_poke_sub_c_808F410
- adds r1, r5, 0
- adds r1, 0x18
- mov r0, sp
- movs r2, 0xA
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x1A
- mov r0, sp
- movs r2, 0xA
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x1C
- mov r0, sp
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x1D
- mov r0, sp
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x1E
- mov r0, sp
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x1F
- mov r0, sp
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x20
- mov r0, sp
- movs r2, 0x18
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x24
- mov r0, sp
- movs r2, 0x18
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x28
- mov r0, sp
- movs r2, 0x4
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x2C
- mov r0, sp
- bl RestoreHeldItem
- adds r1, r5, 0
- adds r1, 0x30
- mov r0, sp
- bl RestorePokemonMoves
- adds r1, r5, 0
- adds r1, 0x50
- mov r0, sp
- movs r2, 0x50
- bl RestoreIntegerBits
- ldr r4, _08095620
- ldr r1, [r4]
- mov r0, sp
- movs r2, 0x20
- bl RestoreIntegerBits
- adds r6, r4, 0
- movs r5, 0x4
- movs r4, 0x1F
-_080955F4:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- movs r2, 0x20
- bl RestoreIntegerBits
- adds r5, 0x4
- subs r4, 0x1
- cmp r4, 0
- bge _080955F4
- mov r0, sp
- bl nullsub_102
- ldr r0, [sp, 0x8]
- add sp, 0x10
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08095618: .4byte gUnknown_203B480
-_0809561C: .4byte gUnknown_203B484
-_08095620: .4byte gUnknown_203B48C
- thumb_func_end sub_80954CC
-
- thumb_func_start sub_8095624
-sub_8095624:
- push {r4-r6,lr}
- sub sp, 0x10
- adds r3, r0, 0
- adds r2, r1, 0
- mov r0, sp
- adds r1, r3, 0
- bl xxx_init_struct_8094924_save_809486C
- ldr r6, _08095768
- movs r5, 0
- movs r4, 0x1F
-_0809563A:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_8095824
- adds r5, 0x30
- subs r4, 0x1
- cmp r4, 0
- bge _0809563A
- ldr r4, _0809576C
- ldr r1, [r4]
- mov r0, sp
- movs r2, 0x20
- bl SaveIntegerBits
- ldr r5, [r4]
- adds r4, r5, 0x4
- mov r0, sp
- adds r1, r4, 0
- movs r2, 0x2
- bl SaveIntegerBits
- adds r1, r5, 0x6
- mov r0, sp
- movs r2, 0x1
- bl SaveIntegerBits
- adds r1, r5, 0x7
- mov r0, sp
- movs r2, 0x7
- bl SaveIntegerBits
- adds r4, 0x4
- mov r0, sp
- adds r1, r4, 0
- bl xxx_save_poke_sub_4_80902F4
- adds r1, r5, 0
- adds r1, 0xC
- mov r0, sp
- movs r2, 0x9
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x10
- mov r0, sp
- bl xxx_save_poke_sub_c_808F41C
- adds r1, r5, 0
- adds r1, 0x14
- mov r0, sp
- bl xxx_save_poke_sub_c_808F41C
- adds r1, r5, 0
- adds r1, 0x18
- mov r0, sp
- movs r2, 0xA
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x1A
- mov r0, sp
- movs r2, 0xA
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x1C
- mov r0, sp
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x1D
- mov r0, sp
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x1E
- mov r0, sp
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x1F
- mov r0, sp
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x20
- mov r0, sp
- movs r2, 0x18
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x24
- mov r0, sp
- movs r2, 0x18
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x28
- mov r0, sp
- movs r2, 0x4
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x2C
- mov r0, sp
- bl SaveHeldItem
- adds r1, r5, 0
- adds r1, 0x30
- mov r0, sp
- bl SavePokemonMoves
- adds r1, r5, 0
- adds r1, 0x50
- mov r0, sp
- movs r2, 0x50
- bl SaveIntegerBits
- ldr r4, _08095770
- ldr r1, [r4]
- mov r0, sp
- movs r2, 0x20
- bl SaveIntegerBits
- adds r6, r4, 0
- movs r5, 0x4
- movs r4, 0x1F
-_08095742:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- movs r2, 0x20
- bl SaveIntegerBits
- adds r5, 0x4
- subs r4, 0x1
- cmp r4, 0
- bge _08095742
- mov r0, sp
- bl nullsub_102
- ldr r0, [sp, 0x8]
- add sp, 0x10
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08095768: .4byte gUnknown_203B480
-_0809576C: .4byte gUnknown_203B484
-_08095770: .4byte gUnknown_203B48C
- thumb_func_end sub_8095624
-
- thumb_func_start sub_8095774
-sub_8095774:
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- movs r2, 0x4
- bl RestoreIntegerBits
- adds r1, r5, 0x4
- adds r0, r4, 0
- bl xxx_restore_poke_sub_4_8090314
- adds r1, r5, 0
- adds r1, 0x8
- adds r0, r4, 0
- movs r2, 0x18
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0xC
- adds r0, r4, 0
- movs r2, 0x9
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- movs r2, 0x20
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x14
- adds r0, r4, 0
- movs r2, 0x50
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x20
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x21
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x22
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x24
- adds r0, r4, 0
- movs r2, 0x20
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x28
- adds r0, r4, 0
- movs r2, 0x20
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x2C
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r0, r4, 0
- mov r1, sp
- movs r2, 0x1
- bl RestoreIntegerBits
- mov r0, sp
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- adds r1, r5, 0
- adds r1, 0x2D
- strb r0, [r1]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8095774
-
- thumb_func_start sub_8095824
-sub_8095824:
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r4, r1, 0
- movs r1, 0xFF
- mov r0, sp
- strb r1, [r0]
- mov r6, sp
- adds r6, 0x1
- movs r0, 0
- strb r0, [r6]
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x4
- bl SaveIntegerBits
- adds r1, r4, 0x4
- adds r0, r5, 0
- bl xxx_save_poke_sub_4_80902F4
- adds r1, r4, 0
- adds r1, 0x8
- adds r0, r5, 0
- movs r2, 0x18
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0xC
- adds r0, r5, 0
- movs r2, 0x9
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x10
- adds r0, r5, 0
- movs r2, 0x20
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x14
- adds r0, r5, 0
- movs r2, 0x50
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x20
- adds r0, r5, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x21
- adds r0, r5, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x22
- adds r0, r5, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x24
- adds r0, r5, 0
- movs r2, 0x20
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x28
- adds r0, r5, 0
- movs r2, 0x20
- bl SaveIntegerBits
- adds r1, r4, 0
- adds r1, 0x2C
- adds r0, r5, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r0, r4, 0
- adds r0, 0x2D
- ldrb r0, [r0]
- mov r1, sp
- cmp r0, 0
- bne _080958D2
- adds r1, r6, 0
-_080958D2:
- adds r0, r5, 0
- movs r2, 0x1
- bl SaveIntegerBits
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8095824
-
- thumb_func_start sub_80958E4
-sub_80958E4:
- str r1, [r0]
- bx lr
- thumb_func_end sub_80958E4
-
-
.align 2,0
diff --git a/asm/code_80958E8.s b/asm/code_80958E8.s
index b73e519..e326783 100644
--- a/asm/code_80958E8.s
+++ b/asm/code_80958E8.s
@@ -2816,680 +2816,4 @@ _08096EFE:
_08096F4C: .4byte gUnknown_203B490
thumb_func_end sub_8096EEC
- thumb_func_start sub_8096F50
-sub_8096F50:
- push {r4-r7,lr}
- adds r4, r0, 0
- bl sub_8096EB0
- mov r12, r0
- movs r5, 0
- ldr r0, _08096F8C
- ldr r7, [r0]
- ldrb r6, [r4, 0x4]
- movs r3, 0
-_08096F64:
- movs r1, 0x8C
- lsls r1, 2
- adds r0, r3, r1
- adds r2, r7, r0
- ldrb r0, [r2]
- cmp r0, r6
- bne _08096F90
- ldrb r0, [r2, 0x1]
- ldrb r1, [r4, 0x5]
- cmp r0, r1
- bne _08096F90
- ldr r1, [r2, 0x4]
- ldr r0, [r4, 0x8]
- cmp r1, r0
- bne _08096F90
- ldr r0, [r2, 0x8]
- cmp r0, r12
- bne _08096F90
- movs r0, 0x1
- b _08096F9A
- .align 2, 0
-_08096F8C: .4byte gUnknown_203B490
-_08096F90:
- adds r3, 0xC
- adds r5, 0x1
- cmp r5, 0xF
- ble _08096F64
- movs r0, 0
-_08096F9A:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8096F50
-
- thumb_func_start sub_8096FA0
-sub_8096FA0:
- push {r4-r7,lr}
- sub sp, 0x14
- adds r3, r0, 0
- adds r2, r1, 0
- mov r0, sp
- adds r1, r3, 0
- bl xxx_init_struct_8094924_restore_809485C
- add r7, sp, 0x10
- ldr r6, _08097020
- movs r5, 0
- movs r4, 0x3
-_08096FB8:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_80971EC
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _08096FB8
- ldr r6, _08097020
- movs r5, 0x50
- movs r4, 0x7
-_08096FD0:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_80971EC
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _08096FD0
- ldr r6, _08097020
- movs r5, 0xF0
- movs r4, 0x7
-_08096FE8:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_80971EC
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _08096FE8
- movs r4, 0
- movs r6, 0x1
- ldr r5, _08097020
-_08097000:
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x1
- bl RestoreIntegerBits
- ldr r1, [sp, 0x10]
- ands r1, r6
- cmp r1, 0
- beq _08097024
- ldr r0, [r5]
- movs r1, 0xBC
- lsls r1, 2
- adds r0, r1
- adds r0, r4
- strb r6, [r0]
- b _08097030
- .align 2, 0
-_08097020: .4byte gUnknown_203B490
-_08097024:
- ldr r0, [r5]
- movs r2, 0xBC
- lsls r2, 2
- adds r0, r2
- adds r0, r4
- strb r1, [r0]
-_08097030:
- adds r4, 0x1
- cmp r4, 0x37
- ble _08097000
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x1
- bl RestoreIntegerBits
- ldr r1, [sp, 0x10]
- movs r2, 0x1
- ands r1, r2
- cmp r1, 0
- beq _0809705C
- ldr r0, _08097058
- ldr r0, [r0]
- movs r1, 0xCA
- lsls r1, 2
- adds r0, r1
- strb r2, [r0]
- b _08097068
- .align 2, 0
-_08097058: .4byte gUnknown_203B490
-_0809705C:
- ldr r0, _080970D4
- ldr r0, [r0]
- movs r2, 0xCA
- lsls r2, 2
- adds r0, r2
- strb r1, [r0]
-_08097068:
- ldr r4, _080970D4
- ldr r1, [r4]
- movs r0, 0xC8
- lsls r0, 1
- adds r1, r0
- movs r2, 0xA0
- lsls r2, 1
- mov r0, sp
- bl RestoreIntegerBits
- ldr r1, [r4]
- movs r2, 0xDC
- lsls r2, 1
- adds r1, r2
- movs r2, 0xF0
- lsls r2, 2
- mov r0, sp
- bl RestoreIntegerBits
- adds r6, r4, 0
- movs r5, 0x8C
- lsls r5, 2
- movs r4, 0xF
-_08097096:
- ldr r1, [r6]
- adds r1, r5
- adds r1, 0x8
- mov r0, sp
- movs r2, 0x20
- bl RestoreIntegerBits
- ldr r1, [r6]
- adds r1, r5
- adds r1, 0x4
- mov r0, sp
- movs r2, 0x18
- bl RestoreIntegerBits
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl xxx_restore_poke_sub_4_8090314
- adds r5, 0xC
- subs r4, 0x1
- cmp r4, 0
- bge _08097096
- mov r0, sp
- bl nullsub_102
- ldr r0, [sp, 0x8]
- add sp, 0x14
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080970D4: .4byte gUnknown_203B490
- thumb_func_end sub_8096FA0
-
- thumb_func_start sub_80970D8
-sub_80970D8:
- push {r4-r7,lr}
- sub sp, 0x14
- adds r3, r0, 0
- adds r2, r1, 0
- mov r0, sp
- adds r1, r3, 0
- bl xxx_init_struct_8094924_save_809486C
- add r7, sp, 0x10
- ldr r6, _080971E8
- movs r5, 0
- movs r4, 0x3
-_080970F0:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_8097270
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _080970F0
- ldr r6, _080971E8
- movs r5, 0x50
- movs r4, 0x7
-_08097108:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_8097270
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _08097108
- ldr r6, _080971E8
- movs r5, 0xF0
- movs r4, 0x7
-_08097120:
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl sub_8097270
- adds r5, 0x14
- subs r4, 0x1
- cmp r4, 0
- bge _08097120
- movs r4, 0
-_08097134:
- ldr r0, _080971E8
- ldr r0, [r0]
- movs r1, 0xBC
- lsls r1, 2
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _0809714A
- movs r0, 0x1
- negs r0, r0
-_0809714A:
- str r0, [sp, 0x10]
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x1
- bl SaveIntegerBits
- adds r4, 0x1
- cmp r4, 0x37
- ble _08097134
- ldr r0, _080971E8
- ldr r0, [r0]
- movs r1, 0xCA
- lsls r1, 2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08097170
- movs r0, 0x1
- negs r0, r0
-_08097170:
- str r0, [sp, 0x10]
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x1
- bl SaveIntegerBits
- ldr r4, _080971E8
- ldr r1, [r4]
- movs r0, 0xC8
- lsls r0, 1
- adds r1, r0
- movs r2, 0xA0
- lsls r2, 1
- mov r0, sp
- bl SaveIntegerBits
- ldr r1, [r4]
- movs r0, 0xDC
- lsls r0, 1
- adds r1, r0
- movs r2, 0xF0
- lsls r2, 2
- mov r0, sp
- bl SaveIntegerBits
- adds r6, r4, 0
- movs r5, 0x8C
- lsls r5, 2
- movs r4, 0xF
-_080971AA:
- ldr r1, [r6]
- adds r1, r5
- adds r1, 0x8
- mov r0, sp
- movs r2, 0x20
- bl SaveIntegerBits
- ldr r1, [r6]
- adds r1, r5
- adds r1, 0x4
- mov r0, sp
- movs r2, 0x18
- bl SaveIntegerBits
- ldr r1, [r6]
- adds r1, r5
- mov r0, sp
- bl xxx_save_poke_sub_4_80902F4
- adds r5, 0xC
- subs r4, 0x1
- cmp r4, 0
- bge _080971AA
- mov r0, sp
- bl nullsub_102
- ldr r0, [sp, 0x8]
- add sp, 0x14
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080971E8: .4byte gUnknown_203B490
- thumb_func_end sub_80970D8
-
- thumb_func_start sub_80971EC
-sub_80971EC:
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- movs r2, 0x4
- bl RestoreIntegerBits
- adds r1, r5, 0x1
- adds r0, r4, 0
- movs r2, 0x3
- bl RestoreIntegerBits
- adds r1, r5, 0x2
- adds r0, r4, 0
- movs r2, 0x4
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0xC
- adds r0, r4, 0
- movs r2, 0x9
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0xE
- adds r0, r4, 0
- movs r2, 0x9
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x11
- adds r0, r4, 0
- movs r2, 0x4
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x12
- adds r0, r4, 0
- movs r2, 0x8
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x13
- adds r0, r4, 0
- movs r2, 0x6
- bl RestoreIntegerBits
- adds r1, r5, 0
- adds r1, 0x8
- adds r0, r4, 0
- movs r2, 0x18
- bl RestoreIntegerBits
- adds r1, r5, 0x4
- adds r0, r4, 0
- bl xxx_restore_poke_sub_4_8090314
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80971EC
-
- thumb_func_start sub_8097270
-sub_8097270:
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- movs r2, 0x4
- bl SaveIntegerBits
- adds r1, r5, 0x1
- adds r0, r4, 0
- movs r2, 0x3
- bl SaveIntegerBits
- adds r1, r5, 0x2
- adds r0, r4, 0
- movs r2, 0x4
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0xC
- adds r0, r4, 0
- movs r2, 0x9
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0xE
- adds r0, r4, 0
- movs r2, 0x9
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x11
- adds r0, r4, 0
- movs r2, 0x4
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x12
- adds r0, r4, 0
- movs r2, 0x8
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x13
- adds r0, r4, 0
- movs r2, 0x6
- bl SaveIntegerBits
- adds r1, r5, 0
- adds r1, 0x8
- adds r0, r4, 0
- movs r2, 0x18
- bl SaveIntegerBits
- adds r1, r5, 0x4
- adds r0, r4, 0
- bl xxx_save_poke_sub_4_80902F4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8097270
-
- thumb_func_start sub_80972F4
-sub_80972F4:
- push {lr}
- movs r0, 0
- movs r1, 0x2B
- bl sub_80015C0
- movs r0, 0
- movs r1, 0x2C
- bl sub_80015C0
- movs r0, 0
- movs r1, 0x2D
- bl sub_80015C0
- pop {r0}
- bx r0
- thumb_func_end sub_80972F4
-
- thumb_func_start nullsub_128
-nullsub_128:
- bx lr
- thumb_func_end nullsub_128
-
- thumb_func_start sub_8097318
-sub_8097318:
- push {lr}
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xD
- bne _08097326
- movs r0, 0
- b _08097338
-_08097326:
- lsls r2, r0, 16
- lsrs r2, 16
- movs r0, 0
- movs r1, 0x2B
- bl sub_8001784
- cmp r0, 0
- beq _08097338
- movs r0, 0x1
-_08097338:
- pop {r1}
- bx r1
- thumb_func_end sub_8097318
-
- thumb_func_start sub_809733C
-sub_809733C:
- push {r4-r6,lr}
- lsls r0, 16
- asrs r4, r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- cmp r4, 0xD
- beq _0809737C
- lsls r0, r4, 16
- lsrs r5, r0, 16
- movs r0, 0
- movs r1, 0x2C
- adds r2, r5, 0
- bl sub_8001784
- cmp r0, 0
- bne _0809737C
- movs r0, 0
- movs r1, 0x2B
- adds r2, r5, 0
- adds r3, r6, 0
- bl sub_800199C
- cmp r6, 0
- beq _0809737C
- cmp r4, 0xE
- blt _0809737C
- cmp r4, 0xF
- ble _08097378
- cmp r4, 0x1C
- bne _0809737C
-_08097378:
- bl sub_809674C
-_0809737C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_809733C
-
- thumb_func_start sub_8097384
-sub_8097384:
- push {lr}
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xD
- bne _08097392
- movs r0, 0
- b _080973A4
-_08097392:
- lsls r2, r0, 16
- lsrs r2, 16
- movs r0, 0
- movs r1, 0x2C
- bl sub_8001784
- cmp r0, 0
- beq _080973A4
- movs r0, 0x1
-_080973A4:
- pop {r1}
- bx r1
- thumb_func_end sub_8097384
-
- thumb_func_start sub_80973A8
-sub_80973A8:
- push {r4-r6,lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- cmp r0, 0xD
- beq _080973EE
- lsls r5, r0, 16
- cmp r6, 0
- beq _080973E2
- bl sub_80A26B8
- lsls r0, 16
- asrs r4, r0, 16
- lsrs r2, r5, 16
- movs r0, 0
- movs r1, 0x2B
- movs r3, 0
- bl sub_800199C
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _080973E2
- movs r0, 0
- movs r1, 0x12
- adds r2, r4, 0
- bl sub_80018D8
-_080973E2:
- lsrs r2, r5, 16
- movs r0, 0
- movs r1, 0x2C
- adds r3, r6, 0
- bl sub_800199C
-_080973EE:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80973A8
-
- thumb_func_start sub_80973F4
-sub_80973F4:
- push {lr}
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xD
- bne _08097402
- movs r0, 0
- b _08097414
-_08097402:
- lsls r2, r0, 16
- lsrs r2, 16
- movs r0, 0
- movs r1, 0x2D
- bl sub_8001784
- cmp r0, 0
- beq _08097414
- movs r0, 0x1
-_08097414:
- pop {r1}
- bx r1
- thumb_func_end sub_80973F4
-
- thumb_func_start sub_8097418
-sub_8097418:
- push {r4-r7,lr}
- lsls r0, 16
- asrs r5, r0, 16
- lsls r1, 24
- lsrs r7, r1, 24
- cmp r5, 0xD
- beq _08097470
- lsls r6, r5, 16
- cmp r7, 0
- beq _08097464
- lsrs r2, r6, 16
- movs r0, 0
- movs r1, 0x2C
- movs r3, 0
- bl sub_800199C
- cmp r5, 0x1E
- bgt _08097464
- lsls r0, r5, 3
- ldr r1, _08097478
- adds r4, r0, r1
- ldrb r0, [r4, 0x4]
- cmp r0, 0xFF
- beq _0809744C
- bl sub_8097FA8
-_0809744C:
- ldrb r0, [r4, 0x5]
- cmp r0, 0xFF
- beq _08097456
- bl sub_8097FA8
-_08097456:
- cmp r5, 0x9
- bne _08097460
- movs r0, 0x1F
- bl sub_8097FA8
-_08097460:
- bl sub_8097FF8
-_08097464:
- lsrs r2, r6, 16
- movs r0, 0
- movs r1, 0x2D
- adds r3, r7, 0
- bl sub_800199C
-_08097470:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08097478: .4byte gStoryMissionText
- thumb_func_end sub_8097418
-
.align 2,0
diff --git a/asm/code_8097318.s b/asm/code_8097318.s
new file mode 100644
index 0000000..d8acc07
--- /dev/null
+++ b/asm/code_8097318.s
@@ -0,0 +1,207 @@
+ #include "asm/constants/gba_constants.inc"
+ #include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_8097318
+sub_8097318:
+ push {lr}
+ lsls r0, 16
+ asrs r0, 16
+ cmp r0, 0xD
+ bne _08097326
+ movs r0, 0
+ b _08097338
+_08097326:
+ lsls r2, r0, 16
+ lsrs r2, 16
+ movs r0, 0
+ movs r1, 0x2B
+ bl sub_8001784
+ cmp r0, 0
+ beq _08097338
+ movs r0, 0x1
+_08097338:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8097318
+
+ thumb_func_start sub_809733C
+sub_809733C:
+ push {r4-r6,lr}
+ lsls r0, 16
+ asrs r4, r0, 16
+ lsls r1, 24
+ lsrs r6, r1, 24
+ cmp r4, 0xD
+ beq _0809737C
+ lsls r0, r4, 16
+ lsrs r5, r0, 16
+ movs r0, 0
+ movs r1, 0x2C
+ adds r2, r5, 0
+ bl sub_8001784
+ cmp r0, 0
+ bne _0809737C
+ movs r0, 0
+ movs r1, 0x2B
+ adds r2, r5, 0
+ adds r3, r6, 0
+ bl sub_800199C
+ cmp r6, 0
+ beq _0809737C
+ cmp r4, 0xE
+ blt _0809737C
+ cmp r4, 0xF
+ ble _08097378
+ cmp r4, 0x1C
+ bne _0809737C
+_08097378:
+ bl sub_809674C
+_0809737C:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_809733C
+
+ thumb_func_start sub_8097384
+sub_8097384:
+ push {lr}
+ lsls r0, 16
+ asrs r0, 16
+ cmp r0, 0xD
+ bne _08097392
+ movs r0, 0
+ b _080973A4
+_08097392:
+ lsls r2, r0, 16
+ lsrs r2, 16
+ movs r0, 0
+ movs r1, 0x2C
+ bl sub_8001784
+ cmp r0, 0
+ beq _080973A4
+ movs r0, 0x1
+_080973A4:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8097384
+
+ thumb_func_start sub_80973A8
+sub_80973A8:
+ push {r4-r6,lr}
+ lsls r0, 16
+ asrs r0, 16
+ lsls r1, 24
+ lsrs r6, r1, 24
+ cmp r0, 0xD
+ beq _080973EE
+ lsls r5, r0, 16
+ cmp r6, 0
+ beq _080973E2
+ bl sub_80A26B8
+ lsls r0, 16
+ asrs r4, r0, 16
+ lsrs r2, r5, 16
+ movs r0, 0
+ movs r1, 0x2B
+ movs r3, 0
+ bl sub_800199C
+ movs r0, 0x1
+ negs r0, r0
+ cmp r4, r0
+ beq _080973E2
+ movs r0, 0
+ movs r1, 0x12
+ adds r2, r4, 0
+ bl sub_80018D8
+_080973E2:
+ lsrs r2, r5, 16
+ movs r0, 0
+ movs r1, 0x2C
+ adds r3, r6, 0
+ bl sub_800199C
+_080973EE:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80973A8
+
+ thumb_func_start sub_80973F4
+sub_80973F4:
+ push {lr}
+ lsls r0, 16
+ asrs r0, 16
+ cmp r0, 0xD
+ bne _08097402
+ movs r0, 0
+ b _08097414
+_08097402:
+ lsls r2, r0, 16
+ lsrs r2, 16
+ movs r0, 0
+ movs r1, 0x2D
+ bl sub_8001784
+ cmp r0, 0
+ beq _08097414
+ movs r0, 0x1
+_08097414:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_80973F4
+
+ thumb_func_start sub_8097418
+sub_8097418:
+ push {r4-r7,lr}
+ lsls r0, 16
+ asrs r5, r0, 16
+ lsls r1, 24
+ lsrs r7, r1, 24
+ cmp r5, 0xD
+ beq _08097470
+ lsls r6, r5, 16
+ cmp r7, 0
+ beq _08097464
+ lsrs r2, r6, 16
+ movs r0, 0
+ movs r1, 0x2C
+ movs r3, 0
+ bl sub_800199C
+ cmp r5, 0x1E
+ bgt _08097464
+ lsls r0, r5, 3
+ ldr r1, _08097478
+ adds r4, r0, r1
+ ldrb r0, [r4, 0x4]
+ cmp r0, 0xFF
+ beq _0809744C
+ bl sub_8097FA8
+_0809744C:
+ ldrb r0, [r4, 0x5]
+ cmp r0, 0xFF
+ beq _08097456
+ bl sub_8097FA8
+_08097456:
+ cmp r5, 0x9
+ bne _08097460
+ movs r0, 0x1F
+ bl sub_8097FA8
+_08097460:
+ bl sub_8097FF8
+_08097464:
+ lsrs r2, r6, 16
+ movs r0, 0
+ movs r1, 0x2D
+ adds r3, r7, 0
+ bl sub_800199C
+_08097470:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08097478: .4byte gStoryMissionText
+ thumb_func_end sub_8097418
+
+ .align 2,0