summaryrefslogtreecommitdiff
path: root/asm/code.s
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2020-10-04 13:07:14 -0500
committerSeth Barberee <seth.barberee@gmail.com>2020-10-04 13:07:14 -0500
commit10459f86c092bc5b0d90bea1273d6d09f21e3e51 (patch)
tree3f8e32bcbd295521a51a862c1e0de7766f01ee8f /asm/code.s
parent182a67807186f30ca0d7de51f117d2f65f46e755 (diff)
split arm funcs to separate file
Diffstat (limited to 'asm/code.s')
-rw-r--r--asm/code.s2025
1 files changed, 0 insertions, 2025 deletions
diff --git a/asm/code.s b/asm/code.s
index aa33268..d94e8b6 100644
--- a/asm/code.s
+++ b/asm/code.s
@@ -19,2029 +19,4 @@ sub_80001E0:
_080001E4: .4byte gUnknown_3004000
thumb_func_end sub_80001E0
- arm_func_start sub_80001E8
-sub_80001E8:
- stmdb sp!, {r4-r11}
- mov r12, 0x4000000
- ldr r11, _08000224
- add r10, r11, 0x40
- mov r9, 0x1
- mov r8, 0
- strb r8, [r12, 0x208]
- ldmia r10, {r0-r7}
- stmia r10!, {r4-r7}
- stmia r10!, {r0-r3}
- ldr r0, [r11, 0x4]
- str r8, [r11, 0x4]
- strb r9, [r12, 0x208]
- ldmia sp!, {r4-r11}
- bx lr
- .align 2, 0
-_08000224: .4byte gUnknown_202DCF8
- arm_func_end sub_80001E8
-
- arm_func_start sub_8000228
-sub_8000228:
- mov r12, 0x4000000
- add r12, r12, 0x120
- ldmia r12, {r0,r1}
- stmdb sp!, {r7-r11}
- ldr r11, _08000340
- mov r9, 0xFE
- add r9, r9, 0xFE00
- ldrh r3, [r12, 0x8]
- and r3, r3, 0x40
- strb r3, [r11, 0x9]
- ldr r10, [r11, 0x14]
- adds r3, r10, 0x1
- blt _08000284
- bne _08000278
- strh r9, [r12, 0xA]
- add r8, r11, 0x28
- ldmia r8, {r2,r3}
- mov r7, r2
- stmia r8, {r3,r7}
- b _08000284
-_08000278:
- ldr r3, [r11, 0x2C]
- ldr r2, [r3, r10, lsl 1]
- strh r2, [r12, 0xA]
-_08000284:
- cmp r10, 0xB
- addlt r10, r10, 0x1
- strlt r10, [r11, 0x14]
- stmdb sp!, {r0,r1,r5,r6}
- mov r6, 0x3
-_08000298:
- add r8, r11, 0x18
- add r8, r8, r6, lsl 2
- ldr r10, [r8]
- mov r3, r6, lsl 1
- ldrh r5, [sp, r3]
- cmp r5, r9
- bne _080002C8
- cmp r10, 0x9
- ble _080002C8
- mov r0, 0x1
- sub r10, r0, 0x2
- b _080002F4
-_080002C8:
- ldr r0, [r8, 0x18]
- mov r3, r10, lsl 1
- strh r5, [r0, r3]
- cmp r10, 0x9
- bne _080002F4
- ldr r1, [r8, 0x28]
- str r0, [r8, 0x28]
- str r1, [r8, 0x18]
- add r3, r11, 0x4
- mov r0, 0x1
- strb r0, [r3, r6]
-_080002F4:
- cmp r10, 0xB
- addlt r10, r10, 0x1
- str r10, [r8]
- subs r6, r6, 0x1
- bge _08000298
- ldrb r0, [r11]
- cmp r0, 0
- beq _08000334
- ldr r7, _08000344
- mov r0, 0
- strh r0, [r7]
- ldrh r0, [r12, 0x8]
- orr r0, r0, 0x80
- strh r0, [r12, 0x8]
- mov r0, 0xC0
- strh r0, [r7]
-_08000334:
- add sp, sp, 0x8
- ldmia sp!, {r5-r11}
- bx lr
- .align 2, 0
-_08000340: .4byte gUnknown_202DCF8
-_08000344: .4byte 0x0400010e
- arm_func_end sub_8000228
-
- thumb_func_start GameLoop
-GameLoop:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0x1
- mov r9, r0
- bl InitHeap
- bl NDS_DebugInit
- bl sub_801180C
- bl NDS_LoadOverlay_GroundMain
- bl sub_8014144
- bl LoadMonsterParameters
- bl sub_8097670
- bl sub_8094F88
- bl sub_8094980
- bl sub_8094C14
- bl sub_8097F5C
- bl sub_80923A0
- bl sub_8090998
- bl sub_809207C
- bl LoadWazaParameters
- bl sub_80950BC
- bl sub_80958E8
- movs r0, 0x80
- lsls r0, 8
- movs r1, 0
- bl sub_800CD64
- bl sub_8012284
- movs r0, 0x1
- bl sub_8094998
- ldr r0, _08000498
- bl SetWindowTitle
- bl sub_800DAAC
- movs r0, 0
- bl SetSavingIconCoords
- movs r0, 0
- str r0, [sp]
- mov r0, sp
- bl sub_8011DAC
- cmp r0, 0
- beq _080003D2
- bl sub_800135C
-_080003D2:
- movs r0, 0xE
- bl xxx_script_related_8001334
- movs r0, 0xF
- bl xxx_script_related_8001334
- movs r0, 0
- movs r1, 0x39
- bl sub_80015C0
- movs r0, 0x10
- bl xxx_script_related_8001334
- movs r0, 0
- movs r1, 0x39
- bl sub_8001658
- cmp r0, 0
- bne _080003FE
- movs r0, 0x11
- bl xxx_script_related_8001334
-_080003FE:
- movs r1, 0
- mov r10, r1
- ldr r2, _0800049C
- mov r8, r2
-_08000406:
- ldr r0, _080004A0
- mov r1, r10
- str r1, [r0]
- movs r0, 0x2
- bl sub_800A8F8
- movs r0, 0x1
- bl ResetSprites
- movs r0, 0
- bl xxx_update_some_bg_tiles
- bl sub_80097B0
- movs r0, 0x2
- bl sub_800CDA8
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r1, _080004A4
- movs r2, 0x80
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_8000634
- movs r0, 0
- movs r1, 0
- bl sub_800CCA0
- movs r0, 0
- movs r1, 0
- bl sub_800CCAC
- mov r0, r10
- mov r1, r8
- str r0, [r1]
-_08000456:
- mov r2, r8
- ldr r0, [r2]
- adds r0, 0x1
- str r0, [r2]
- movs r4, 0
-_08000460:
- ldr r0, _080004A8
- ldr r0, [r0]
- lsls r2, r4, 2
- ldr r1, [r0, 0x4]
- adds r1, r2
- mov r0, r8
- ldr r2, [r0]
- adds r0, r4, 0
- movs r3, 0
- bl SetBGPaletteBufferColorRGB
- adds r4, 0x1
- cmp r4, 0xEF
- ble _08000460
- movs r0, 0
- bl xxx_update_stuff
- mov r1, r8
- ldr r0, [r1]
- cmp r0, 0x1F
- ble _08000456
- mov r2, r9
- cmp r2, 0
- beq _080004C0
- bl sub_8012468
- b _080004B2
- .align 2, 0
-_08000498: .4byte gUnknown_80B69BC
-_0800049C: .4byte gUnknown_2000A80
-_080004A0: .4byte gUnknown_203B03C
-_080004A4: .4byte gUnknown_2026E4E
-_080004A8: .4byte gUnknown_203B038
-_080004AC:
- movs r0, 0
- bl xxx_update_stuff
-_080004B2:
- bl sub_8012484
- lsls r0, 24
- cmp r0, 0
- bne _080004AC
- bl sub_8012558
-_080004C0:
- movs r0, 0x1
- mov r9, r0
- movs r0, 0x8
- bl sub_800BDFC
- movs r4, 0x1
- movs r0, 0
- movs r1, 0x14
- bl sub_80095CC
- bl InitMainMenu
-_080004D8:
- bl sub_80363E0
- lsls r0, 24
- cmp r0, 0
- beq _08000522
- ldr r3, _080004FC
- ldrh r1, [r3, 0x2]
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08000500
- movs r4, 0
- movs r0, 0x13
- bl SetBGOBJEnableFlags
- b _08000516
- .align 2, 0
-_080004FC: .4byte gUnknown_20255F0
-_08000500:
- cmp r4, 0
- bne _08000522
- ldrh r1, [r3]
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _08000516
- movs r4, 0x1
- movs r0, 0
- bl SetBGOBJEnableFlags
-_08000516:
- cmp r4, 0
- bne _08000522
- movs r0, 0
- bl xxx_update_stuff
- b _080004D8
-_08000522:
- bl SetUpMenu
- movs r0, 0
- bl xxx_update_stuff
- bl UpdateMenu
- adds r5, r0, 0
- bl CleanUpMenu
- cmp r5, 0x2
- beq _08000542
- cmp r5, 0x4
- beq _08000542
- cmp r5, 0x3
- bne _080004D8
-_08000542:
- bl sub_80357D0
- mov r1, r8
- ldr r0, [r1]
- cmp r0, 0
- ble _08000580
- ldr r7, _08000598
- adds r6, r7, 0
-_08000552:
- ldr r0, [r6]
- subs r0, 0x1
- str r0, [r6]
- movs r4, 0
-_0800055A:
- ldr r0, _0800059C
- ldr r0, [r0]
- lsls r2, r4, 2
- ldr r1, [r0, 0x4]
- adds r1, r2
- ldr r2, [r6]
- adds r0, r4, 0
- movs r3, 0
- bl SetBGPaletteBufferColorRGB
- adds r4, 0x1
- cmp r4, 0xEF
- ble _0800055A
- movs r0, 0
- bl xxx_update_stuff
- ldr r0, [r7]
- cmp r0, 0
- bgt _08000552
-_08000580:
- ldr r0, _0800059C
- ldr r0, [r0]
- bl CloseFile
- cmp r5, 0x3
- beq _080005CA
- cmp r5, 0x3
- bhi _080005A0
- cmp r5, 0x2
- beq _080005A6
- b _08000406
- .align 2, 0
-_08000598: .4byte gUnknown_2000A80
-_0800059C: .4byte gUnknown_203B038
-_080005A0:
- cmp r5, 0x4
- beq _080005C6
- b _08000406
-_080005A6:
- movs r0, 0x7
- bl sub_80953D4
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _080005C2
- lsls r0, r1, 24
- lsrs r0, 24
- bl sub_8095240
- movs r0, 0x2
- b _080005D4
-_080005C2:
- movs r0, 0x1
- b _080005D4
-_080005C6:
- movs r0, 0x3
- b _080005D4
-_080005CA:
- bl sub_80122A8
- bl nullsub_33
- movs r0, 0
-_080005D4:
- bl sub_80009D0
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- b _08000406
- thumb_func_end GameLoop
-
- thumb_func_start xxx_update_stuff
-xxx_update_stuff:
- push {lr}
- bl xxx_draw_string_80144C4
- movs r0, 0
- movs r1, 0
- bl sub_8005838
- ldr r0, _08000630
- ldr r0, [r0]
- ldrb r0, [r0, 0xA]
- bl nullsub_8
- bl sub_8005180
- bl sub_80060EC
- bl sub_8011860
- bl sub_800CB20
- bl sub_800485C
- bl CopySpritesToOam
- bl sub_8005304
- bl TransferBGPaletteBuffer
- bl xxx_call_update_bg_vram
- bl sub_8009908
- bl xxx_call_update_bg_sound_input
- movs r0, 0
- bl ResetSprites
- pop {r0}
- bx r0
- .align 2, 0
-_08000630: .4byte gUnknown_203B46C
- thumb_func_end xxx_update_stuff
-
- thumb_func_start sub_8000634
-sub_8000634:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x18
- mov r1, sp
- ldr r0, _08000708
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- add r5, sp, 0xC
- adds r1, r5, 0
- ldr r0, _0800070C
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldr r0, _08000710
- movs r1, 0
- bl MemoryAlloc
- adds r7, r0, 0
- movs r0, 0x3
- bl RandomCapped
- adds r4, r0, 0
- lsls r4, 2
- adds r5, r4
- ldr r0, [r5]
- ldr r5, _08000714
- adds r1, r5, 0
- bl OpenFileAndGetFileDataPtr
- ldr r1, _08000718
- str r0, [r1]
- mov r1, sp
- adds r0, r1, r4
- ldr r0, [r0]
- adds r1, r5, 0
- bl OpenFileAndGetFileDataPtr
- mov r8, r0
- adds r0, r7, 0
- movs r1, 0
- mov r2, r8
- bl sub_800AAA8
- movs r2, 0
- ldr r0, _0800071C
- movs r3, 0xC0
- lsls r3, 5
- adds r3, r0
- mov r9, r3
- movs r4, 0x80
- lsls r4, 5
- adds r4, r0
- mov r12, r4
-_080006A0:
- movs r5, 0
- lsls r1, r2, 6
- adds r6, r2, 0x1
- mov r0, r9
- adds r4, r1, r0
- mov r2, r12
- adds r3, r1, r2
- movs r2, 0x80
- lsls r2, 4
- adds r0, r7, r2
- adds r2, r1, r0
- adds r1, r7
-_080006B8:
- ldrh r0, [r1]
- strh r0, [r3]
- ldrh r0, [r2]
- strh r0, [r4]
- adds r4, 0x2
- adds r3, 0x2
- adds r2, 0x2
- adds r1, 0x2
- adds r5, 0x1
- cmp r5, 0x1F
- ble _080006B8
- adds r2, r6, 0
- cmp r2, 0x1F
- ble _080006A0
- movs r0, 0x2
- bl sub_80098F8
- movs r0, 0x3
- bl sub_80098F8
- ldr r0, _08000720
- movs r3, 0x80
- lsls r3, 5
- adds r1, r7, r3
- ldr r2, _08000724
- bl CpuCopy
- mov r0, r8
- bl CloseFile
- adds r0, r7, 0
- bl MemoryFree
- add sp, 0x18
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08000708: .4byte gUnknown_80B69F8
-_0800070C: .4byte gUnknown_80B6A28
-_08000710: .4byte 0x00005b20
-_08000714: .4byte gUnknown_8380000
-_08000718: .4byte gUnknown_203B038
-_0800071C: .4byte gUnknown_202B038
-_08000720: .4byte 0x06008000
-_08000724: .4byte 0x00004b20
- thumb_func_end sub_8000634
-
- thumb_func_start sub_8000728
-sub_8000728:
- ldr r0, _08000730
- ldr r0, [r0]
- bx lr
- .align 2, 0
-_08000730: .4byte gUnknown_203B03C
- thumb_func_end sub_8000728
-
- thumb_func_start QuickSave
-QuickSave:
- push {r4-r6,lr}
- sub sp, 0xC
- adds r5, r0, 0
- movs r4, 0
- movs r6, 0
- movs r0, 0
- bl xxx_update_some_bg_tiles
- bl sub_8014144
- bl sub_80097B0
- movs r0, 0x2
- bl sub_800CDA8
- movs r0, 0
- movs r1, 0x14
- bl sub_80095CC
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0
- movs r1, 0x14
- bl sub_8009408
- ldr r0, _080007AC
- movs r2, 0x80
- lsls r2, 5
- adds r1, r2, 0
- strh r1, [r0]
- bl sub_8099648
- bl sub_8094C14
- movs r0, 0
- bl sub_8099690
- bl sub_8099744
- bl sub_8099750
- movs r0, 0x3
- bl sub_80063D8
- movs r0, 0
- movs r1, 0
- bl sub_8005838
- bl sub_80060EC
- ldr r0, _080007B0
- movs r1, 0
- movs r2, 0
- movs r3, 0x20
- bl sub_80141B4
- b _08000892
- .align 2, 0
-_080007AC: .4byte gUnknown_2026E4E
-_080007B0: .4byte gUnknown_80B6A34
-_080007B4:
- cmp r4, 0x1
- beq _0800086C
- cmp r4, 0x1
- bgt _080007C2
- cmp r4, 0
- beq _080007CC
- b _0800088E
-_080007C2:
- cmp r4, 0x2
- beq _08000884
- cmp r4, 0x3
- beq _08000892
- b _0800088E
-_080007CC:
- str r4, [sp, 0x4]
- movs r0, 0x3F
- str r0, [sp]
- mov r0, sp
- bl sub_8097688
- bl sub_80140DC
- cmp r5, 0x3
- bhi _080007EC
- add r0, sp, 0x4
- movs r1, 0x1
- bl sub_801203C
- adds r4, r0, 0
- b _080007EE
-_080007EC:
- movs r4, 0x2
-_080007EE:
- cmp r4, 0
- bne _080007FA
- ldr r0, _08000818
- bl sub_80121E0
- adds r4, r0, 0
-_080007FA:
- bl sub_8014114
- cmp r4, 0
- bne _0800083C
- cmp r5, 0x1
- beq _08000812
- cmp r5, 0x1
- bcc _08000820
- cmp r5, 0x2
- beq _08000820
- cmp r5, 0x3
- bne _08000820
-_08000812:
- ldr r0, _0800081C
- b _08000822
- .align 2, 0
-_08000818: .4byte 0x000f1206
-_0800081C: .4byte gUnknown_80B6A7C
-_08000820:
- ldr r0, _08000834
-_08000822:
- movs r1, 0
- movs r2, 0
- ldr r3, _08000838
- bl sub_80141B4
- movs r6, 0x3C
- movs r4, 0x1
- b _08000892
- .align 2, 0
-_08000834: .4byte gUnknown_80B6AA0
-_08000838: .4byte 0x00000321
-_0800083C:
- cmp r4, 0x1
- bne _08000854
- ldr r0, _08000850
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl sub_80141B4
- movs r4, 0x3
- b _08000892
- .align 2, 0
-_08000850: .4byte gUnknown_80B6B14
-_08000854:
- ldr r0, _08000864
- movs r1, 0
- movs r2, 0
- ldr r3, _08000868
- bl sub_80141B4
-_08000860:
- movs r4, 0x2
- b _08000892
- .align 2, 0
-_08000864: .4byte gUnknown_80B6B78
-_08000868: .4byte 0x00000301
-_0800086C:
- cmp r6, 0
- ble _08000860
- ldr r0, _08000880
- ldrh r1, [r0, 0x2]
- subs r6, 0x1
- movs r0, 0x3
- ands r1, r0
- cmp r1, 0
- beq _08000892
- b _08000860
- .align 2, 0
-_08000880: .4byte gUnknown_20255F0
-_08000884:
- add r0, sp, 0x8
- bl sub_80144A4
- cmp r0, 0
- bne _08000892
-_0800088E:
- movs r4, 0x1
- negs r4, r4
-_08000892:
- movs r0, 0
- bl xxx_update_stuff
- cmp r4, 0
- bge _080007B4
- bl sub_8014490
- movs r0, 0
- bl xxx_update_stuff
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0
- bl xxx_update_stuff
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end QuickSave
-
- thumb_func_start sub_80008C0
-sub_80008C0:
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- movs r4, 0
- movs r6, 0
- movs r0, 0
- bl xxx_update_some_bg_tiles
- bl sub_8014144
- bl sub_80097B0
- movs r0, 0x2
- bl sub_800CDA8
- movs r0, 0
- movs r1, 0x14
- bl sub_80095CC
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0
- movs r1, 0x14
- bl sub_8009408
- ldr r1, _08000930
- movs r2, 0x80
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_8099648
- bl sub_8094C14
- movs r0, 0
- bl sub_8099690
- bl sub_8099744
- bl sub_8099750
- movs r0, 0x3
- bl sub_80063D8
- cmp r5, 0x1
- beq _08000948
- cmp r5, 0x1
- bcc _08000934
- cmp r5, 0x2
- beq _08000950
- cmp r5, 0x3
- beq _08000950
- b _080009A2
- .align 2, 0
-_08000930: .4byte gUnknown_2026E4E
-_08000934:
- ldr r0, _08000944
- movs r1, 0
- movs r2, 0
- movs r3, 0x20
- bl sub_80141B4
- movs r4, 0x2
- b _080009A2
- .align 2, 0
-_08000944: .4byte gUnknown_80B6B88
-_08000948:
- ldr r0, _0800094C
- b _08000952
- .align 2, 0
-_0800094C: .4byte gUnknown_80B6BDC
-_08000950:
- ldr r0, _08000960
-_08000952:
- ldr r3, _08000964
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
-_0800095C:
- movs r4, 0x1
- b _080009A2
- .align 2, 0
-_08000960: .4byte gUnknown_80B6CB8
-_08000964: .4byte 0x00000301
-_08000968:
- cmp r4, 0x1
- beq _08000994
- cmp r4, 0x1
- bgt _08000976
- cmp r4, 0
- beq _0800097C
- b _0800099E
-_08000976:
- cmp r4, 0x2
- beq _080009A2
- b _0800099E
-_0800097C:
- cmp r6, 0
- ble _0800095C
- ldr r0, _08000990
- ldrh r1, [r0, 0x2]
- subs r6, 0x1
- movs r0, 0x3
- ands r1, r0
- cmp r1, 0
- beq _080009A2
- b _0800095C
- .align 2, 0
-_08000990: .4byte gUnknown_20255F0
-_08000994:
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _080009A2
-_0800099E:
- movs r4, 0x1
- negs r4, r4
-_080009A2:
- movs r0, 0
- bl xxx_update_stuff
- cmp r4, 0
- bge _08000968
- bl sub_8014490
- movs r0, 0
- bl xxx_update_stuff
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0
- bl xxx_update_stuff
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80008C0
-
- thumb_func_start sub_80009D0
-sub_80009D0:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, _08000A04
- add sp, r4
- adds r4, r0, 0
- movs r0, 0
- movs r1, 0x18
- bl sub_8001658
- adds r7, r0, 0
- movs r0, 0
- mov r10, r0
- bl sub_801180C
- movs r0, 0x10
- bl sub_80118C4
- cmp r7, 0x7
- bne _08000A30
- cmp r4, 0x2
- bne _08000A08
- movs r7, 0x8
- b _08000A3A
- .align 2, 0
-_08000A04: .4byte 0xfffffdd4
-_08000A08:
- cmp r4, 0x3
- bne _08000A3A
- movs r7, 0xB
- movs r0, 0
- movs r1, 0x18
- movs r2, 0xB
- bl sub_80018D8
- bl sub_8096BD0
- movs r0, 0x3
- bl QuickSave
- b _08000A3A
-_08000A24:
- movs r3, 0x1
- mov r10, r3
- b _08000EC6
-_08000A2A:
- movs r0, 0x1
- mov r10, r0
- b _08000EC6
-_08000A30:
- cmp r7, 0
- beq _08000A3A
- cmp r7, 0xB
- beq _08000A3A
- movs r7, 0x1
-_08000A3A:
- movs r0, 0
- movs r1, 0x41
- bl sub_80015C0
-_08000A42:
- cmp r7, 0x4
- bne _08000AB6
- movs r0, 0
- movs r1, 0xD
- bl sub_8001658
- lsls r0, 16
- asrs r0, 16
- bl sub_8002658
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08000A9C
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [sp, 0x8]
- mov r0, sp
- strb r4, [r0, 0x4]
- movs r0, 0x9
- bl sub_80023E4
- mov r1, sp
- strb r0, [r1, 0x5]
- mov r0, sp
- bl sub_800F990
- ldr r0, [sp, 0x8]
- bl MemoryFree
- mov r0, sp
- ldrb r0, [r0, 0xC]
- cmp r0, 0x3A
- beq _08000B70
- mov r0, sp
- ldrb r0, [r0, 0xC]
- cmp r0, 0
- beq _08000AA0
- bl sub_8002694
- lsls r0, 16
- asrs r2, r0, 16
- b _08000AA2
- .align 2, 0
-_08000A9C: .4byte 0x00004e30
-_08000AA0:
- movs r2, 0x9
-_08000AA2:
- movs r0, 0
- movs r1, 0xD
- bl sub_80018D8
- movs r0, 0
- movs r1, 0xE
- movs r2, 0
- bl sub_80018D8
- b _08000B70
-_08000AB6:
- cmp r7, 0x5
- bne _08000B9C
- movs r0, 0
- movs r1, 0x12
- bl sub_8001658
- lsls r0, 16
- asrs r0, 16
- mov r8, r0
- bl sub_80A2740
- lsls r0, 24
- lsrs r6, r0, 24
- movs r4, 0
- ldr r5, _08000B18
- add r5, sp
-_08000AD6:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80A28F0
- adds r1, r5, r4
- strb r0, [r1]
- adds r4, 0x1
- cmp r4, 0x3E
- ble _08000AD6
- cmp r6, 0x63
- beq _08000B70
- add r4, sp, 0xB8
- movs r0, 0x3F
- strb r0, [r4, 0x4]
- add r0, sp, 0xC0
- adds r1, r6, 0
- bl sub_80011CC
- ldrb r1, [r4, 0xD]
- add r0, sp, 0x128
- strb r1, [r0]
- mov r0, r8
- bl sub_80A2750
- lsls r0, 16
- asrs r0, 16
- adds r5, r4, 0
- cmp r0, 0x1
- beq _08000B1C
- cmp r0, 0x2
- beq _08000B3C
- b _08000B50
- .align 2, 0
-_08000B18: .4byte 0x00000129
-_08000B1C:
- add r4, sp, 0x170
- add r0, sp, 0x174
- mov r1, r8
- bl sub_80990EC
- lsls r0, 24
- cmp r0, 0
- beq _08000B50
- ldrb r0, [r4, 0x10]
- strb r0, [r5, 0x14]
- add r0, sp, 0xD0
- add r1, sp, 0x18C
- movs r2, 0x58
- bl memcpy
- b _08000B50
-_08000B3C:
- ldrb r0, [r5, 0x8]
- add r1, sp, 0xD0
- bl sub_8096A08
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08000B4E
- movs r0, 0x1
-_08000B4E:
- strb r0, [r5, 0x14]
-_08000B50:
- ldr r0, _08000B74
- movs r1, 0x8
- bl MemoryAlloc
- add r4, sp, 0x168
- str r0, [r4]
- adds r0, r5, 0
- bl sub_8010268
- ldr r0, [r4]
- bl MemoryFree
- add r0, sp, 0x16C
- ldrb r0, [r0]
- cmp r0, 0
- bne _08000B78
-_08000B70:
- movs r7, 0x2
- b _08000A42
- .align 2, 0
-_08000B74: .4byte 0x00006474
-_08000B78:
- movs r0, 0
- movs r1, 0x13
- mov r2, r8
- bl sub_80018D8
- ldr r1, _08000B98
- movs r0, 0x2
- str r0, [r1]
- movs r0, 0x4
- bl sub_800A8F8
- movs r0, 0x5
- bl xxx_script_related_8001334
- adds r5, r0, 0
- b _08000BEC
- .align 2, 0
-_08000B98: .4byte gUnknown_203B03C
-_08000B9C:
- cmp r7, 0x8
- bne _08000BA4
- movs r5, 0
- b _08000BEC
-_08000BA4:
- cmp r7, 0x7
- bne _08000BAC
- movs r5, 0x2
- b _08000BEC
-_08000BAC:
- cmp r7, 0xB
- bne _08000BB6
- bl sub_80012C0
- b _08000BBE
-_08000BB6:
- cmp r7, 0xC
- bne _08000BBE
- bl sub_8001248
-_08000BBE:
- ldr r1, _08000BE0
- movs r0, 0x2
- str r0, [r1]
- movs r0, 0x4
- bl sub_800A8F8
- adds r0, r7, 0
- bl xxx_script_related_8001334
- adds r5, r0, 0
- cmp r5, 0xE
- bne _08000BD8
- b _08000EC6
-_08000BD8:
- cmp r5, 0x5
- bne _08000BE4
- movs r7, 0x4
- b _08000A42
- .align 2, 0
-_08000BE0: .4byte gUnknown_203B03C
-_08000BE4:
- cmp r5, 0x6
- bne _08000BEC
- movs r7, 0x5
- b _08000A42
-_08000BEC:
- add r6, sp, 0x170
- movs r4, 0
- strb r4, [r6, 0x11]
- strb r4, [r6, 0x10]
- movs r3, 0xC6
- lsls r3, 1
- add r3, sp
- mov r8, r3
- mov r0, r8
- movs r1, 0
- movs r2, 0x58
- bl MemoryFill8
- movs r0, 0
- mov r9, r0
- strh r4, [r6, 0x24]
- cmp r5, 0x7
- beq _08000C3C
- cmp r5, 0x8
- bne _08000C38
- add r0, sp, 0x174
- add r1, sp, 0x228
- bl sub_80991E0
- lsls r0, 24
- cmp r0, 0
- beq _08000C4C
- ldrb r0, [r6, 0x4]
- mov r1, r8
- bl sub_8096A08
- lsls r0, 24
- cmp r0, 0
- bne _08000C32
- b _08000D98
-_08000C32:
- movs r0, 0x1
- strb r0, [r6, 0x10]
- b _08000D98
-_08000C38:
- cmp r5, 0xA
- bne _08000C52
-_08000C3C:
- add r0, sp, 0x174
- add r1, sp, 0x228
- bl sub_80991E0
- lsls r0, 24
- cmp r0, 0
- beq _08000C4C
- b _08000D98
-_08000C4C:
- movs r5, 0xD
- movs r7, 0x9
- b _08000D98
-_08000C52:
- cmp r5, 0x9
- bne _08000C6C
- add r0, sp, 0x174
- add r1, sp, 0x228
- bl sub_80991E0
- lsls r0, 24
- cmp r0, 0
- beq _08000C66
- b _08000D98
-_08000C66:
- movs r5, 0xB
- movs r7, 0xC
- b _08000D98
-_08000C6C:
- cmp r5, 0
- bne _08000D04
- bl sub_8011FA8
- adds r1, r0, 0
- ldr r0, _08000CA0
- cmp r1, r0
- bne _08000CC8
- movs r2, 0x1
- strb r2, [r6, 0x11]
- strb r2, [r6, 0x8]
- mov r3, r9
- strb r3, [r6, 0xF]
- ldr r0, _08000CA4
- ldr r1, [r0]
- movs r3, 0xC
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _08000CA8
- strb r2, [r6, 0x10]
- adds r1, 0x4
- mov r0, r8
- movs r2, 0x58
- bl memcpy
- b _08000CAC
- .align 2, 0
-_08000CA0: .4byte 0x000f1207
-_08000CA4: .4byte gUnknown_203B484
-_08000CA8:
- mov r0, r9
- strb r0, [r6, 0x10]
-_08000CAC:
- ldr r4, _08000CC4
- ldr r0, [r4]
- adds r0, 0x4
- movs r1, 0
- movs r2, 0x58
- bl MemoryFill8
- ldr r1, [r4]
- movs r0, 0
- strh r0, [r1, 0xC]
- b _08000CE4
- .align 2, 0
-_08000CC4: .4byte gUnknown_203B484
-_08000CC8:
- ldr r0, _08000CD8
- cmp r1, r0
- bne _08000CDC
- movs r5, 0x1
- movs r7, 0xB
- bl sub_8096BD0
- b _08000CE4
- .align 2, 0
-_08000CD8: .4byte 0x000f1208
-_08000CDC:
- movs r5, 0x1
- movs r7, 0xB
- bl sub_8096BD0
-_08000CE4:
- cmp r5, 0x1
- bne _08000D98
- ldr r4, _08000D00
- ldr r0, [r4]
- adds r0, 0x4
- movs r1, 0
- movs r2, 0x58
- bl MemoryFill8
- ldr r1, [r4]
- movs r0, 0
- strh r0, [r1, 0xC]
- b _08000D98
- .align 2, 0
-_08000D00: .4byte gUnknown_203B484
-_08000D04:
- cmp r5, 0x2
- bne _08000D98
- bl sub_8011C1C
- cmp r0, 0x2
- bne _08000D34
- bl sub_8011FA8
- adds r1, r0, 0
- movs r0, 0x1
- strb r0, [r6, 0x8]
- mov r3, r9
- strb r3, [r6, 0x11]
- ldr r0, _08000D30
- cmp r1, r0
- beq _08000D36
- adds r0, 0x1
- movs r5, 0x1
- movs r7, 0xB
- bl sub_8096BD0
- b _08000D36
- .align 2, 0
-_08000D30: .4byte 0x000f1207
-_08000D34:
- movs r5, 0x3
-_08000D36:
- cmp r5, 0x3
- bne _08000D7A
- bl sub_8001170
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0x1
- movs r7, 0xB
- bl sub_8096BD0
- cmp r4, 0x3F
- beq _08000D70
- cmp r4, 0x63
- beq _08000D70
- adds r0, r4, 0
- bl GetSaveBeforeEntering
- lsls r0, 24
- cmp r0, 0
- beq _08000D70
- bl sub_8011C1C
- cmp r0, 0x2
- bne _08000D6C
- movs r5, 0x3
- movs r7, 0x7
- b _08000D70
-_08000D6C:
- movs r5, 0xC
- movs r7, 0xA
-_08000D70:
- cmp r5, 0x1
- bne _08000D98
- bl sub_8011C1C
- b _08000D98
-_08000D7A:
- cmp r5, 0x4
- bne _08000D8E
- movs r5, 0x1
- movs r7, 0xB
- bl sub_8096BD0
- movs r0, 0x1
- bl sub_80008C0
- b _08000D98
-_08000D8E:
- cmp r5, 0x1
- bne _08000D98
- movs r7, 0xB
- bl sub_8096BD0
-_08000D98:
- subs r0, r5, 0x7
- cmp r0, 0x3
- bls _08000DAC
- cmp r5, 0
- beq _08000E1E
- cmp r5, 0x2
- beq _08000DAC
- cmp r5, 0x3
- beq _08000DAC
- b _08000A42
-_08000DAC:
- cmp r5, 0
- beq _08000E1E
- cmp r5, 0x2
- beq _08000E1E
- cmp r5, 0x3
- beq _08000E1E
- bl sub_8001170
- lsls r0, 24
- lsrs r6, r0, 24
- bl sub_8097758
- cmp r5, 0x9
- bne _08000E00
- ldr r4, _08000DF4
- add r4, sp
- adds r0, r4, 0
- bl sub_8099394
- lsls r0, 24
- cmp r0, 0
- beq _08000E00
- ldrb r0, [r4]
- bl sub_8095228
- adds r2, r0, 0
- adds r0, 0x2C
- ldrb r1, [r0]
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x1
- ble _08000DF8
- subs r1, 0x1
- b _08000DFA
- .align 2, 0
-_08000DF4: .4byte 0x0000022a
-_08000DF8:
- movs r1, 0
-_08000DFA:
- adds r0, r2, 0
- adds r0, 0x2C
- strb r1, [r0]
-_08000E00:
- cmp r6, 0x3F
- bne _08000E0C
- movs r0, 0
- bl QuickSave
- b _08000E1E
-_08000E0C:
- adds r0, r6, 0
- bl GetSaveBeforeEntering
- lsls r0, 24
- cmp r0, 0
- bne _08000E1E
- movs r0, 0
- bl QuickSave
-_08000E1E:
- ldr r0, _08000E70
- movs r4, 0x1
- str r4, [r0]
- movs r0, 0x3
- bl sub_800A8F8
- add r5, sp, 0x170
- str r4, [r5]
- add r0, sp, 0x174
- bl sub_80011E8
- adds r0, r5, 0
- bl sub_8000EDC
- add r4, sp, 0x1EC
- movs r0, 0
- ldrsh r1, [r4, r0]
- cmp r1, 0x3
- bne _08000E46
- b _08000A24
-_08000E46:
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- bne _08000E50
- b _08000A2A
-_08000E50:
- movs r0, 0
- movs r1, 0x41
- bl sub_80015C0
- ldrh r0, [r4]
- adds r0, 0x1
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- bhi _08000EBE
- lsls r0, 2
- ldr r1, _08000E74
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08000E70: .4byte gUnknown_203B03C
-_08000E74: .4byte _08000E78
- .align 2, 0
-_08000E78:
- .4byte _08000EB6
- .4byte _08000EBE
- .4byte _08000E94
- .4byte _08000EB2
- .4byte _08000EBE
- .4byte _08000E94
- .4byte _08000EBE
-_08000E94:
- movs r7, 0x9
- movs r0, 0xF7
- lsls r0, 1
- add r0, sp
- ldrb r0, [r0]
- movs r3, 0x1
- cmp r0, 0
- beq _08000EA6
- movs r3, 0x2
-_08000EA6:
- movs r0, 0
- movs r1, 0x41
- movs r2, 0
- bl sub_800199C
- b _08000A42
-_08000EB2:
- movs r7, 0xA
- b _08000A42
-_08000EB6:
- movs r7, 0xC
- bl sub_8096BD0
- b _08000A42
-_08000EBE:
- movs r7, 0xB
- bl sub_8096BD0
- b _08000A42
-_08000EC6:
- mov r0, r10
- movs r3, 0x8B
- lsls r3, 2
- add sp, r3
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80009D0
-
- thumb_func_start sub_8000EDC
-sub_8000EDC:
- push {r4-r7,lr}
- sub sp, 0x8
- adds r4, r0, 0
- movs r5, 0x1
- ldr r0, _08000F24
- str r5, [r0]
- movs r0, 0x3
- bl sub_800A8F8
- bl sub_8014144
- add r1, sp, 0x4
- mov r0, sp
- bl sub_8043D50
- ldr r0, [sp]
- movs r1, 0x7
- bl MemoryAlloc
- str r0, [r4, 0x74]
- ldr r0, [sp, 0x4]
- movs r1, 0x7
- bl MemoryAlloc
- str r0, [r4, 0x78]
- ldrb r0, [r4, 0x8]
- cmp r0, 0
- beq _08000F68
- ldr r0, [r4, 0x74]
- ldr r1, [sp]
- bl sub_801277C
- adds r7, r4, 0
- adds r7, 0x7C
- b _08000F2E
- .align 2, 0
-_08000F24: .4byte gUnknown_203B03C
-_08000F28:
- movs r0, 0
- bl xxx_update_stuff
-_08000F2E:
- bl sub_80127A8
- lsls r0, 24
- cmp r0, 0
- bne _08000F28
- bl sub_8012828
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_8012834
- bl sub_8011830
- cmp r5, 0
- beq _08000F58
- ldr r0, _08000F54
- bl sub_80121E0
- b _08000F5E
- .align 2, 0
-_08000F54: .4byte 0x000f1208
-_08000F58:
- ldr r0, _08000F64
- bl sub_80121E0
-_08000F5E:
- bl sub_8011854
- b _08000F78
- .align 2, 0
-_08000F64: .4byte 0x000f1209
-_08000F68:
- bl sub_809674C
- bl sub_80961B4
- bl sub_808ED00
- adds r7, r4, 0
- adds r7, 0x7C
-_08000F78:
- cmp r5, 0
- beq _08000F92
- adds r0, r4, 0
- bl xxx_dungeon_8001340
- bl sub_8099648
- bl sub_8094C14
- movs r0, 0
- bl sub_8099690
- b _08000F96
-_08000F92:
- movs r0, 0x5
- strh r0, [r7]
-_08000F96:
- adds r5, r7, 0
- movs r1, 0
- ldrsh r0, [r5, r1]
- movs r6, 0x2
- negs r6, r6
- cmp r0, r6
- bne _08000FAC
- adds r0, r4, 0
- adds r0, 0x84
- bl sub_809542C
-_08000FAC:
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0x3
- beq _08000FB8
- cmp r0, r6
- bne _0800100C
-_08000FB8:
- adds r0, r4, 0
- adds r0, 0x80
- bl sub_8097688
- bl sub_8011924
- movs r1, 0
- ldrsh r0, [r7, r1]
- cmp r0, r6
- bne _08000FD8
- ldr r0, [r4, 0x74]
- ldr r1, [sp]
- movs r2, 0x1
- bl sub_8012850
- b _08000FFA
-_08000FD8:
- ldr r0, [r4, 0x74]
- ldr r1, [sp]
- movs r2, 0
- bl sub_8012850
- b _08000FFA
-_08000FE4:
- cmp r0, 0x1
- bne _08000FF4
- ldr r0, [r4, 0x78]
- bl MemoryFree
- ldr r0, [r4, 0x74]
- bl MemoryFree
-_08000FF4:
- movs r0, 0
- bl xxx_update_stuff
-_08000FFA:
- bl sub_80128B0
- cmp r0, 0x2
- beq _08001006
- cmp r0, 0x3
- bne _08000FE4
-_08001006:
- bl sub_80129FC
- b _0800101C
-_0800100C:
- bl sub_808ED00
- ldr r0, [r4, 0x78]
- bl MemoryFree
- ldr r0, [r4, 0x74]
- bl MemoryFree
-_0800101C:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8000EDC
-
- thumb_func_start sub_8001024
-sub_8001024:
- push {r4,lr}
- ldr r1, _08001040
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- ldm r1!, {r2-r4}
- stm r0!, {r2-r4}
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08001040: .4byte gUnknown_203B040
- thumb_func_end sub_8001024
-
- thumb_func_start sub_8001044
-sub_8001044:
- push {r4,lr}
- ldr r1, _08001060
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08001060: .4byte gUnknown_203B040
- thumb_func_end sub_8001044
-
- thumb_func_start sub_8001064
-sub_8001064:
- push {r4,r5,lr}
- sub sp, 0x28
- bl sub_808D33C
- cmp r0, 0
- bne _080010AE
- ldr r5, _0800109C
- ldrb r0, [r5, 0x8]
- cmp r0, 0
- bne _080010A0
- add r4, sp, 0x14
- movs r0, 0x4
- ldrsh r1, [r5, r0]
- adds r0, r4, 0
- bl sub_808D8BC
- mov r0, sp
- adds r1, r4, 0
- bl sub_80922F4
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- movs r1, 0x1
- mov r2, sp
- bl sub_808CE74
- b _080010AE
- .align 2, 0
-_0800109C: .4byte gUnknown_203B040
-_080010A0:
- movs r4, 0x4
- ldrsh r0, [r5, r4]
- adds r2, r5, 0
- adds r2, 0x8
- movs r1, 0x1
- bl sub_808CE74
-_080010AE:
- bl sub_808D378
- cmp r0, 0
- bne _080010F2
- ldr r5, _080010E0
- ldrb r0, [r5, 0x1C]
- cmp r0, 0
- bne _080010E4
- add r4, sp, 0x14
- movs r0, 0x6
- ldrsh r1, [r5, r0]
- adds r0, r4, 0
- bl sub_808D8BC
- mov r0, sp
- adds r1, r4, 0
- bl sub_80922F4
- movs r1, 0x6
- ldrsh r0, [r5, r1]
- movs r1, 0
- mov r2, sp
- bl sub_808CE74
- b _080010F2
- .align 2, 0
-_080010E0: .4byte gUnknown_203B040
-_080010E4:
- movs r4, 0x6
- ldrsh r0, [r5, r4]
- adds r2, r5, 0
- adds r2, 0x1C
- movs r1, 0
- bl sub_808CE74
-_080010F2:
- ldr r3, _08001164
- movs r0, 0x4
- ldrsh r1, [r3, r0]
- cmp r1, 0
- beq _08001126
- ldr r2, _08001168
- movs r4, 0x4
- ldrsh r0, [r2, r4]
- cmp r0, 0
- beq _0800111C
- cmp r1, r0
- beq _0800111C
-_0800110A:
- adds r2, 0x8
- movs r0, 0x4
- ldrsh r1, [r2, r0]
- cmp r1, 0
- beq _0800111C
- movs r4, 0x4
- ldrsh r0, [r3, r4]
- cmp r0, r1
- bne _0800110A
-_0800111C:
- ldr r2, [r2]
- movs r0, 0
- movs r1, 0x27
- bl sub_80018D8
-_08001126:
- ldr r3, _08001164
- movs r0, 0x6
- ldrsh r1, [r3, r0]
- cmp r1, 0
- beq _0800115A
- ldr r2, _0800116C
- movs r4, 0x4
- ldrsh r0, [r2, r4]
- cmp r0, 0
- beq _08001150
- cmp r1, r0
- beq _08001150
-_0800113E:
- adds r2, 0x8
- movs r0, 0x4
- ldrsh r1, [r2, r0]
- cmp r1, 0
- beq _08001150
- movs r4, 0x6
- ldrsh r0, [r3, r4]
- cmp r0, r1
- bne _0800113E
-_08001150:
- ldr r2, [r2]
- movs r0, 0
- movs r1, 0x26
- bl sub_80018D8
-_0800115A:
- add sp, 0x28
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08001164: .4byte gUnknown_203B040
-_08001168: .4byte gUnknown_80B690C
-_0800116C: .4byte gUnknown_80B6994
- thumb_func_end sub_8001064
-
- thumb_func_start sub_8001170
-sub_8001170:
- push {r4,lr}
- sub sp, 0x8
- add r4, sp, 0x4
- movs r0, 0x63
- strb r0, [r4]
- mov r1, sp
- adds r1, 0x2
- mov r0, sp
- bl sub_80992E0
- lsls r0, 24
- cmp r0, 0
- beq _08001196
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- bl sub_80A2740
- b _080011BE
-_08001196:
- adds r0, r4, 0
- bl sub_8099328
- lsls r0, 24
- cmp r0, 0
- bne _080011C0
- adds r0, r4, 0
- bl sub_8099360
- lsls r0, 24
- cmp r0, 0
- bne _080011C0
- mov r0, sp
- adds r0, 0x5
- bl sub_8099394
- lsls r0, 24
- cmp r0, 0
- beq _080011C0
- movs r0, 0x3F
-_080011BE:
- strb r0, [r4]
-_080011C0:
- ldrb r0, [r4]
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8001170
-
- thumb_func_start sub_80011CC
-sub_80011CC:
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r5, 0
- strb r1, [r4]
- strb r5, [r4, 0x1]
- bl sub_80011E8
- strb r5, [r4, 0xB]
- strb r5, [r4, 0x4]
- strb r5, [r4, 0xC]
- strb r5, [r4, 0xD]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80011CC
-
- thumb_func_start sub_80011E8
-sub_80011E8:
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x8
- bl sub_80023E4
- strb r0, [r4, 0x5]
- movs r0, 0x3
- bl sub_80023E4
- strb r0, [r4, 0x6]
- movs r0, 0x7
- bl sub_80023E4
- strb r0, [r4, 0x8]
- movs r0, 0
- bl sub_80023E4
- strb r0, [r4, 0x9]
- movs r0, 0x5
- bl sub_80023E4
- strb r0, [r4, 0xA]
- movs r0, 0x18
- bl sub_80023E4
- lsls r0, 24
- cmp r0, 0
- beq _0800123C
- movs r0, 0x19
- bl sub_80023E4
- lsls r0, 24
- cmp r0, 0
- beq _0800123C
- movs r0, 0x1A
- bl sub_80023E4
- lsls r0, 24
- cmp r0, 0
- beq _0800123C
- movs r0, 0x1
- b _0800123E
-_0800123C:
- movs r0, 0
-_0800123E:
- strb r0, [r4, 0x7]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80011E8
-
- thumb_func_start sub_8001248
-sub_8001248:
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0
-_0800124E:
- movs r0, 0x64
- bl RandomCapped
- cmp r0, 0x31
- bgt _08001266
- lsls r0, r4, 2
- ldr r1, _080012B8
- ldr r1, [r1]
- adds r0, r1
- strb r5, [r0, 0x2]
- strb r5, [r0, 0x1]
- strb r5, [r0]
-_08001266:
- adds r4, 0x1
- cmp r4, 0x13
- ble _0800124E
- bl sub_80910B4
- movs r4, 0
- ldr r5, _080012BC
- movs r3, 0x1
-_08001276:
- movs r0, 0x58
- adds r1, r4, 0
- muls r1, r0
- ldr r0, [r5]
- adds r1, r0, r1
- ldrh r2, [r1]
- adds r0, r3, 0
- ands r0, r2
- cmp r0, 0
- beq _08001298
- lsrs r0, r2, 1
- ands r0, r3
- cmp r0, 0
- beq _08001298
- adds r1, 0x28
- movs r0, 0
- strb r0, [r1]
-_08001298:
- adds r4, 0x1
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- ble _08001276
- ldr r0, _080012B8
- ldr r0, [r0]
- movs r1, 0x98
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080012B8: .4byte gUnknown_203B460
-_080012BC: .4byte gUnknown_203B45C
- thumb_func_end sub_8001248
-
- thumb_func_start sub_80012C0
-sub_80012C0:
- push {r4,r5,lr}
- movs r3, 0
- ldr r4, _08001324
- movs r2, 0
-_080012C8:
- lsls r1, r3, 2
- ldr r0, [r4]
- adds r1, r0
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x1]
- strb r2, [r1]
- adds r3, 0x1
- cmp r3, 0x13
- ble _080012C8
- bl sub_80910B4
- movs r3, 0
- ldr r5, _08001328
- movs r4, 0x1
-_080012E4:
- movs r0, 0x58
- adds r1, r3, 0
- muls r1, r0
- ldr r0, [r5]
- adds r1, r0, r1
- ldrh r2, [r1]
- adds r0, r4, 0
- ands r0, r2
- cmp r0, 0
- beq _08001306
- lsrs r0, r2, 1
- ands r0, r4
- cmp r0, 0
- beq _08001306
- adds r1, 0x28
- movs r0, 0
- strb r0, [r1]
-_08001306:
- adds r3, 0x1
- movs r0, 0xCE
- lsls r0, 1
- cmp r3, r0
- ble _080012E4
- ldr r0, _08001324
- ldr r0, [r0]
- movs r1, 0x98
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08001324: .4byte gUnknown_203B460
-_08001328: .4byte gUnknown_203B45C
- thumb_func_end sub_80012C0
-
.align 2, 0 @ Don't pad with nop.