summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2020-09-19 23:28:48 -0500
committerSeth Barberee <seth.barberee@gmail.com>2020-09-19 23:28:48 -0500
commitd2279294209edd9ec92e601ccb86388ff9283dbb (patch)
treeaa07d831b3e58e8289d149e3a7040c678324892d /asm
parent1ee2ec16ae0a597b0fb5dfb0b4f7571f58cac349 (diff)
more datadumping and some decomp work
Diffstat (limited to 'asm')
-rw-r--r--asm/code_800D090.s552
-rw-r--r--asm/code_80118A4.s545
2 files changed, 545 insertions, 552 deletions
diff --git a/asm/code_800D090.s b/asm/code_800D090.s
index 4f43b66..b3c63f3 100644
--- a/asm/code_800D090.s
+++ b/asm/code_800D090.s
@@ -9494,556 +9494,4 @@ _0801189C: .4byte gUnknown_202DE22
_080118A0: .4byte gUnknown_202DE24
thumb_func_end sub_8011860
- thumb_func_start sub_80118A4
-sub_80118A4:
- push {lr}
- bl sub_8011924
- ldr r0, _080118BC
- bl sub_801199C
- ldr r0, _080118C0
- bl sub_801199C
- pop {r0}
- bx r0
- .align 2, 0
-_080118BC: .4byte 0x000003e6
-_080118C0: .4byte 0x000003e5
- thumb_func_end sub_80118A4
-
- thumb_func_start sub_80118C4
-sub_80118C4:
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_800BFD0
- ldr r0, _080118E8
- adds r1, r4, 0
- bl sub_800C3F8
- ldr r0, _080118EC
- adds r1, r4, 0
- bl sub_800C3F8
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080118E8: .4byte 0x000003e6
-_080118EC: .4byte 0x000003e5
- thumb_func_end sub_80118C4
-
- thumb_func_start sub_80118F0
-sub_80118F0:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_800BDFC
- pop {r0}
- bx r0
- thumb_func_end sub_80118F0
-
- thumb_func_start sub_8011900
-sub_8011900:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl sub_800BE8C
- pop {r0}
- bx r0
- thumb_func_end sub_8011900
-
- thumb_func_start sub_8011914
-sub_8011914:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_800BF48
- pop {r0}
- bx r0
- thumb_func_end sub_8011914
-
- thumb_func_start sub_8011924
-sub_8011924:
- push {lr}
- bl sub_800BF80
- pop {r0}
- bx r0
- thumb_func_end sub_8011924
-
- thumb_func_start sub_8011930
-sub_8011930:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_800BFD0
- pop {r0}
- bx r0
- thumb_func_end sub_8011930
-
- thumb_func_start sub_8011940
-sub_8011940:
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl sub_800C068
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _08011960
- cmp r4, r0
- bne _08011964
- eors r1, r4
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- b _0801196C
- .align 2, 0
-_08011960: .4byte 0x000003e7
-_08011964:
- movs r0, 0
- cmp r1, r4
- bne _0801196C
- movs r0, 0x1
-_0801196C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8011940
-
- thumb_func_start sub_8011974
-sub_8011974:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl sub_800C074
- pop {r0}
- bx r0
- thumb_func_end sub_8011974
-
- thumb_func_start sub_8011988
-sub_8011988:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x80
- lsls r1, 1
- bl sub_800C074
- pop {r0}
- bx r0
- thumb_func_end sub_8011988
-
- thumb_func_start sub_801199C
-sub_801199C:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_800C298
- pop {r0}
- bx r0
- thumb_func_end sub_801199C
-
- thumb_func_start sub_80119AC
-sub_80119AC:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl sub_800C3F8
- pop {r0}
- bx r0
- thumb_func_end sub_80119AC
-
- thumb_func_start sub_80119C0
-sub_80119C0:
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl sub_800C5D0
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80119C0
-
- thumb_func_start sub_80119D4
-sub_80119D4:
- push {r4,lr}
- adds r2, r0, 0
- ldr r4, _080119FC
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bgt _080119F6
- ldr r1, _08011A00
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x80
- lsls r1, 1
- bl sub_800C074
- movs r0, 0x4
- strh r0, [r4]
-_080119F6:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080119FC: .4byte gUnknown_202DE20
-_08011A00: .4byte gUnknown_80D4144
- thumb_func_end sub_80119D4
-
- thumb_func_start sub_8011A04
-sub_8011A04:
- push {lr}
- ldr r1, _08011A24
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bgt _08011A1E
- movs r0, 0x3
- strh r0, [r1]
- ldr r0, _08011A28
- movs r1, 0x80
- lsls r1, 1
- bl sub_800C074
-_08011A1E:
- pop {r0}
- bx r0
- .align 2, 0
-_08011A24: .4byte gUnknown_202DE22
-_08011A28: .4byte 0x00000131
- thumb_func_end sub_8011A04
-
- thumb_func_start sub_8011A2C
-sub_8011A2C:
- ldr r1, _08011A34
- str r0, [r1]
- bx lr
- .align 2, 0
-_08011A34: .4byte gUnknown_202DE1C
- thumb_func_end sub_8011A2C
-
- thumb_func_start NDS_DebugInit
-NDS_DebugInit:
- push {lr}
- bl nullsub_26
- bl nullsub_27
- bl nullsub_29
- bl nullsub_30
- bl nullsub_31
- bl nullsub_32
- bl nullsub_28
- ldr r1, _08011A60
- movs r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08011A60: .4byte gUnknown_203B14C
- thumb_func_end NDS_DebugInit
-
- thumb_func_start nullsub_25
-nullsub_25:
- bx lr
- thumb_func_end nullsub_25
-
- thumb_func_start nullsub_26
-nullsub_26:
- bx lr
- thumb_func_end nullsub_26
-
- thumb_func_start PrintFuncFileLineOrNotEntry
-PrintFuncFileLineOrNotEntry:
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r0, r1, 0
- cmp r0, 0
- beq _08011A90
- ldr r1, _08011A8C
- ldr r2, [r0, 0x8]
- ldr r3, [r0]
- ldr r0, [r0, 0x4]
- str r0, [sp]
- adds r0, r4, 0
- bl sprintf
- b _08011A98
- .align 2, 0
-_08011A8C: .4byte gUnknown_80D418C
-_08011A90:
- ldr r1, _08011AA0
- adds r0, r4, 0
- bl sprintf
-_08011A98:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08011AA0: .4byte gUnknown_80D41B0
- thumb_func_end PrintFuncFileLineOrNotEntry
-
- thumb_func_start PrintFuncFileLine
-PrintFuncFileLine:
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r5, _08011AC4
- ldr r3, [r1, 0x8]
- ldr r4, [r1]
- str r4, [sp]
- ldr r1, [r1, 0x4]
- str r1, [sp, 0x4]
- adds r1, r5, 0
- bl sprintf
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08011AC4: .4byte gUnknown_80D41C4
- thumb_func_end PrintFuncFileLine
-
- thumb_func_start PrintMessageWithFuncFileLine
-PrintMessageWithFuncFileLine:
- push {r2,r3}
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r1, [sp, 0x10]
- add r2, sp, 0x14
- bl vsprintf
- adds r0, r4, 0
- bl strlen
- adds r4, r0
- ldr r1, _08011AFC
- ldr r2, [r5, 0x8]
- ldr r3, [r5]
- ldr r0, [r5, 0x4]
- str r0, [sp]
- adds r0, r4, 0
- bl sprintf
- add sp, 0x4
- pop {r4,r5}
- pop {r3}
- add sp, 0x8
- bx r3
- .align 2, 0
-_08011AFC: .4byte gUnknown_80D41EC
- thumb_func_end PrintMessageWithFuncFileLine
-
- thumb_func_start nullsub_199
-nullsub_199:
- bx lr
- thumb_func_end nullsub_199
-
- thumb_func_start nullsub_27
-nullsub_27:
- bx lr
- thumb_func_end nullsub_27
-
- thumb_func_start sub_8011B08
-sub_8011B08:
- ldr r1, _08011B10
- movs r0, 0x1
- strb r0, [r1]
- bx lr
- .align 2, 0
-_08011B10: .4byte gUnknown_203B150
- thumb_func_end sub_8011B08
-
- thumb_func_start sub_8011B14
-sub_8011B14:
- ldr r1, _08011B1C
- movs r0, 0
- strb r0, [r1]
- bx lr
- .align 2, 0
-_08011B1C: .4byte gUnknown_203B150
- thumb_func_end sub_8011B14
-
- thumb_func_start sub_8011B20
-sub_8011B20:
- push {lr}
- ldr r1, _08011B38
- movs r2, 0
- ldrb r0, [r1]
- cmp r0, 0
- bne _08011B2E
- movs r2, 0x1
-_08011B2E:
- strb r2, [r1]
- ldrb r0, [r1]
- pop {r1}
- bx r1
- .align 2, 0
-_08011B38: .4byte gUnknown_203B150
- thumb_func_end sub_8011B20
-
- thumb_func_start sub_8011B3C
-sub_8011B3C:
- ldr r0, _08011B44
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_08011B44: .4byte gUnknown_203B150
- thumb_func_end sub_8011B3C
-
- thumb_func_start nullsub_137
-nullsub_137:
- bx lr
- thumb_func_end nullsub_137
-
- thumb_func_start FatalErrorPrintFuncFileLine
-FatalErrorPrintFuncFileLine:
- push {lr}
- sub sp, 0x100
- adds r2, r0, 0
- cmp r2, 0
- beq _08011B5E
- mov r0, sp
- bl PrintFuncFileLine
- b _08011B66
-_08011B5E:
- ldr r2, _08011B6C
- mov r0, sp
- bl PrintFuncFileLine
-_08011B66:
- add sp, 0x100
- pop {r0}
- bx r0
- .align 2, 0
-_08011B6C: .4byte gUnknown_80D421C
- thumb_func_end FatalErrorPrintFuncFileLine
-
- thumb_func_start FatalErrorFormatMessage
-FatalErrorFormatMessage:
- push {r0-r3}
- push {lr}
- sub sp, 0x100
- ldr r1, [sp, 0x104]
- add r2, sp, 0x108
- mov r0, sp
- bl vsprintf
- add sp, 0x100
- pop {r3}
- add sp, 0x10
- bx r3
- thumb_func_end FatalErrorFormatMessage
-
- thumb_func_start sub_8011B88
-sub_8011B88:
- push {r0-r3}
- push {lr}
- sub sp, 0x100
- ldr r1, [sp, 0x104]
- add r2, sp, 0x108
- mov r0, sp
- bl vsprintf
- add sp, 0x100
- pop {r3}
- add sp, 0x10
- bx r3
- thumb_func_end sub_8011B88
-
- thumb_func_start nullsub_28
-nullsub_28:
- bx lr
- thumb_func_end nullsub_28
-
- thumb_func_start sub_8011BA4
-sub_8011BA4:
- movs r0, 0
- bx lr
- thumb_func_end sub_8011BA4
-
- thumb_func_start sub_8011BA8
-sub_8011BA8:
- movs r0, 0
- bx lr
- thumb_func_end sub_8011BA8
-
- thumb_func_start sub_8011BAC
-sub_8011BAC:
- ldr r0, _08011BB0
- bx lr
- .align 2, 0
-_08011BB0: .4byte gUnknown_80D4288
- thumb_func_end sub_8011BAC
-
- thumb_func_start sub_8011BB4
-sub_8011BB4:
- push {lr}
- bl Hang
- pop {r0}
- bx r0
- thumb_func_end sub_8011BB4
-
- thumb_func_start Log
-Log:
- push {r1-r3}
- add sp, 0xC
- bx lr
- thumb_func_end Log
-
- thumb_func_start sub_8011BC8
-sub_8011BC8:
- push {r2,r3}
- add sp, 0x8
- bx lr
- thumb_func_end sub_8011BC8
-
- thumb_func_start nullsub_29
-nullsub_29:
- bx lr
- thumb_func_end nullsub_29
-
- thumb_func_start nullsub_30
-nullsub_30:
- bx lr
- thumb_func_end nullsub_30
-
- thumb_func_start nullsub_31
-nullsub_31:
- bx lr
- thumb_func_end nullsub_31
-
- thumb_func_start nullsub_32
-nullsub_32:
- bx lr
- thumb_func_end nullsub_32
-
- thumb_func_start FatalErrorHang
-FatalErrorHang:
- push {lr}
- bl Hang
- pop {r0}
- bx r0
- thumb_func_end FatalErrorHang
-
- thumb_func_start FatalError
-FatalError:
- push {r1-r3}
- push {r4,lr}
- sub sp, 0x100
- adds r1, r0, 0
- ldr r4, [sp, 0x108]
- ldr r0, _08011C14
- bl FatalErrorPrintFuncFileLine
- add r2, sp, 0x10C
- mov r0, sp
- adds r1, r4, 0
- bl vsprintf
- ldr r0, _08011C18
- mov r1, sp
- bl FatalErrorFormatMessage
- bl FatalErrorHang
- .align 2, 0
-_08011C14: .4byte gUnknown_80D42C0
-_08011C18: .4byte gUnknown_80D42D4
- thumb_func_end FatalError
-
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/code_80118A4.s b/asm/code_80118A4.s
new file mode 100644
index 0000000..139f972
--- /dev/null
+++ b/asm/code_80118A4.s
@@ -0,0 +1,545 @@
+ .include "constants/gba_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_80118C4
+sub_80118C4:
+ push {r4,lr}
+ adds r4, r0, 0
+ lsls r4, 16
+ lsrs r4, 16
+ adds r0, r4, 0
+ bl sub_800BFD0
+ ldr r0, _080118E8
+ adds r1, r4, 0
+ bl sub_800C3F8
+ ldr r0, _080118EC
+ adds r1, r4, 0
+ bl sub_800C3F8
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080118E8: .4byte 0x000003e6
+_080118EC: .4byte 0x000003e5
+ thumb_func_end sub_80118C4
+
+ thumb_func_start sub_80118F0
+sub_80118F0:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ bl sub_800BDFC
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80118F0
+
+ thumb_func_start sub_8011900
+sub_8011900:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ lsls r1, 16
+ lsrs r1, 16
+ bl sub_800BE8C
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011900
+
+ thumb_func_start sub_8011914
+sub_8011914:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ bl sub_800BF48
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011914
+
+ thumb_func_start sub_8011924
+sub_8011924:
+ push {lr}
+ bl sub_800BF80
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011924
+
+ thumb_func_start sub_8011930
+sub_8011930:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ bl sub_800BFD0
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011930
+
+ thumb_func_start sub_8011940
+sub_8011940:
+ push {r4,lr}
+ lsls r0, 16
+ lsrs r4, r0, 16
+ bl sub_800C068
+ lsls r0, 16
+ lsrs r1, r0, 16
+ ldr r0, _08011960
+ cmp r4, r0
+ bne _08011964
+ eors r1, r4
+ negs r0, r1
+ orrs r0, r1
+ lsrs r0, 31
+ b _0801196C
+ .align 2, 0
+_08011960: .4byte 0x000003e7
+_08011964:
+ movs r0, 0
+ cmp r1, r4
+ bne _0801196C
+ movs r0, 0x1
+_0801196C:
+ pop {r4}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8011940
+
+ thumb_func_start sub_8011974
+sub_8011974:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ lsls r1, 16
+ lsrs r1, 16
+ bl sub_800C074
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011974
+
+ thumb_func_start sub_8011988
+sub_8011988:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x80
+ lsls r1, 1
+ bl sub_800C074
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011988
+
+ thumb_func_start sub_801199C
+sub_801199C:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ bl sub_800C298
+ pop {r0}
+ bx r0
+ thumb_func_end sub_801199C
+
+ thumb_func_start sub_80119AC
+sub_80119AC:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ lsls r1, 16
+ lsrs r1, 16
+ bl sub_800C3F8
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80119AC
+
+ thumb_func_start sub_80119C0
+sub_80119C0:
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ bl sub_800C5D0
+ lsls r0, 24
+ lsrs r0, 24
+ pop {r1}
+ bx r1
+ thumb_func_end sub_80119C0
+
+ thumb_func_start sub_80119D4
+sub_80119D4:
+ push {r4,lr}
+ adds r2, r0, 0
+ ldr r4, _080119FC
+ movs r1, 0
+ ldrsh r0, [r4, r1]
+ cmp r0, 0
+ bgt _080119F6
+ ldr r1, _08011A00
+ lsls r0, r2, 1
+ adds r0, r1
+ ldrh r0, [r0]
+ movs r1, 0x80
+ lsls r1, 1
+ bl sub_800C074
+ movs r0, 0x4
+ strh r0, [r4]
+_080119F6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080119FC: .4byte gUnknown_202DE20
+_08011A00: .4byte gUnknown_80D4144
+ thumb_func_end sub_80119D4
+
+ thumb_func_start sub_8011A04
+sub_8011A04:
+ push {lr}
+ ldr r1, _08011A24
+ movs r2, 0
+ ldrsh r0, [r1, r2]
+ cmp r0, 0
+ bgt _08011A1E
+ movs r0, 0x3
+ strh r0, [r1]
+ ldr r0, _08011A28
+ movs r1, 0x80
+ lsls r1, 1
+ bl sub_800C074
+_08011A1E:
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011A24: .4byte gUnknown_202DE22
+_08011A28: .4byte 0x00000131
+ thumb_func_end sub_8011A04
+
+ thumb_func_start sub_8011A2C
+sub_8011A2C:
+ ldr r1, _08011A34
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_08011A34: .4byte gUnknown_202DE1C
+ thumb_func_end sub_8011A2C
+
+ thumb_func_start NDS_DebugInit
+NDS_DebugInit:
+ push {lr}
+ bl nullsub_26
+ bl nullsub_27
+ bl nullsub_29
+ bl nullsub_30
+ bl nullsub_31
+ bl nullsub_32
+ bl nullsub_28
+ ldr r1, _08011A60
+ movs r0, 0x1
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011A60: .4byte gUnknown_203B14C
+ thumb_func_end NDS_DebugInit
+
+ thumb_func_start nullsub_25
+nullsub_25:
+ bx lr
+ thumb_func_end nullsub_25
+
+ thumb_func_start nullsub_26
+nullsub_26:
+ bx lr
+ thumb_func_end nullsub_26
+
+ thumb_func_start PrintFuncFileLineOrNotEntry
+PrintFuncFileLineOrNotEntry:
+ push {r4,lr}
+ sub sp, 0x4
+ adds r4, r0, 0
+ adds r0, r1, 0
+ cmp r0, 0
+ beq _08011A90
+ ldr r1, _08011A8C
+ ldr r2, [r0, 0x8]
+ ldr r3, [r0]
+ ldr r0, [r0, 0x4]
+ str r0, [sp]
+ adds r0, r4, 0
+ bl sprintf
+ b _08011A98
+ .align 2, 0
+_08011A8C: .4byte gUnknown_80D418C
+_08011A90:
+ ldr r1, _08011AA0
+ adds r0, r4, 0
+ bl sprintf
+_08011A98:
+ add sp, 0x4
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011AA0: .4byte gUnknown_80D41B0
+ thumb_func_end PrintFuncFileLineOrNotEntry
+
+ thumb_func_start PrintFuncFileLine
+PrintFuncFileLine:
+ push {r4,r5,lr}
+ sub sp, 0x8
+ ldr r5, _08011AC4
+ ldr r3, [r1, 0x8]
+ ldr r4, [r1]
+ str r4, [sp]
+ ldr r1, [r1, 0x4]
+ str r1, [sp, 0x4]
+ adds r1, r5, 0
+ bl sprintf
+ add sp, 0x8
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011AC4: .4byte gUnknown_80D41C4
+ thumb_func_end PrintFuncFileLine
+
+ thumb_func_start PrintMessageWithFuncFileLine
+PrintMessageWithFuncFileLine:
+ push {r2,r3}
+ push {r4,r5,lr}
+ sub sp, 0x4
+ adds r4, r0, 0
+ adds r5, r1, 0
+ ldr r1, [sp, 0x10]
+ add r2, sp, 0x14
+ bl vsprintf
+ adds r0, r4, 0
+ bl strlen
+ adds r4, r0
+ ldr r1, _08011AFC
+ ldr r2, [r5, 0x8]
+ ldr r3, [r5]
+ ldr r0, [r5, 0x4]
+ str r0, [sp]
+ adds r0, r4, 0
+ bl sprintf
+ add sp, 0x4
+ pop {r4,r5}
+ pop {r3}
+ add sp, 0x8
+ bx r3
+ .align 2, 0
+_08011AFC: .4byte gUnknown_80D41EC
+ thumb_func_end PrintMessageWithFuncFileLine
+
+ thumb_func_start nullsub_199
+nullsub_199:
+ bx lr
+ thumb_func_end nullsub_199
+
+ thumb_func_start nullsub_27
+nullsub_27:
+ bx lr
+ thumb_func_end nullsub_27
+
+ thumb_func_start sub_8011B08
+sub_8011B08:
+ ldr r1, _08011B10
+ movs r0, 0x1
+ strb r0, [r1]
+ bx lr
+ .align 2, 0
+_08011B10: .4byte gUnknown_203B150
+ thumb_func_end sub_8011B08
+
+ thumb_func_start sub_8011B14
+sub_8011B14:
+ ldr r1, _08011B1C
+ movs r0, 0
+ strb r0, [r1]
+ bx lr
+ .align 2, 0
+_08011B1C: .4byte gUnknown_203B150
+ thumb_func_end sub_8011B14
+
+ thumb_func_start sub_8011B20
+sub_8011B20:
+ push {lr}
+ ldr r1, _08011B38
+ movs r2, 0
+ ldrb r0, [r1]
+ cmp r0, 0
+ bne _08011B2E
+ movs r2, 0x1
+_08011B2E:
+ strb r2, [r1]
+ ldrb r0, [r1]
+ pop {r1}
+ bx r1
+ .align 2, 0
+_08011B38: .4byte gUnknown_203B150
+ thumb_func_end sub_8011B20
+
+ thumb_func_start sub_8011B3C
+sub_8011B3C:
+ ldr r0, _08011B44
+ ldrb r0, [r0]
+ bx lr
+ .align 2, 0
+_08011B44: .4byte gUnknown_203B150
+ thumb_func_end sub_8011B3C
+
+ thumb_func_start nullsub_137
+nullsub_137:
+ bx lr
+ thumb_func_end nullsub_137
+
+ thumb_func_start FatalErrorPrintFuncFileLine
+FatalErrorPrintFuncFileLine:
+ push {lr}
+ sub sp, 0x100
+ adds r2, r0, 0
+ cmp r2, 0
+ beq _08011B5E
+ mov r0, sp
+ bl PrintFuncFileLine
+ b _08011B66
+_08011B5E:
+ ldr r2, _08011B6C
+ mov r0, sp
+ bl PrintFuncFileLine
+_08011B66:
+ add sp, 0x100
+ pop {r0}
+ bx r0
+ .align 2, 0
+_08011B6C: .4byte gUnknown_80D421C
+ thumb_func_end FatalErrorPrintFuncFileLine
+
+ thumb_func_start FatalErrorFormatMessage
+FatalErrorFormatMessage:
+ push {r0-r3}
+ push {lr}
+ sub sp, 0x100
+ ldr r1, [sp, 0x104]
+ add r2, sp, 0x108
+ mov r0, sp
+ bl vsprintf
+ add sp, 0x100
+ pop {r3}
+ add sp, 0x10
+ bx r3
+ thumb_func_end FatalErrorFormatMessage
+
+ thumb_func_start sub_8011B88
+sub_8011B88:
+ push {r0-r3}
+ push {lr}
+ sub sp, 0x100
+ ldr r1, [sp, 0x104]
+ add r2, sp, 0x108
+ mov r0, sp
+ bl vsprintf
+ add sp, 0x100
+ pop {r3}
+ add sp, 0x10
+ bx r3
+ thumb_func_end sub_8011B88
+
+ thumb_func_start nullsub_28
+nullsub_28:
+ bx lr
+ thumb_func_end nullsub_28
+
+ thumb_func_start sub_8011BA4
+sub_8011BA4:
+ movs r0, 0
+ bx lr
+ thumb_func_end sub_8011BA4
+
+ thumb_func_start sub_8011BA8
+sub_8011BA8:
+ movs r0, 0
+ bx lr
+ thumb_func_end sub_8011BA8
+
+ thumb_func_start sub_8011BAC
+sub_8011BAC:
+ ldr r0, _08011BB0
+ bx lr
+ .align 2, 0
+_08011BB0: .4byte gUnknown_80D4288
+ thumb_func_end sub_8011BAC
+
+ thumb_func_start sub_8011BB4
+sub_8011BB4:
+ push {lr}
+ bl Hang
+ pop {r0}
+ bx r0
+ thumb_func_end sub_8011BB4
+
+ thumb_func_start Log
+Log:
+ push {r1-r3}
+ add sp, 0xC
+ bx lr
+ thumb_func_end Log
+
+ thumb_func_start sub_8011BC8
+sub_8011BC8:
+ push {r2,r3}
+ add sp, 0x8
+ bx lr
+ thumb_func_end sub_8011BC8
+
+ thumb_func_start nullsub_29
+nullsub_29:
+ bx lr
+ thumb_func_end nullsub_29
+
+ thumb_func_start nullsub_30
+nullsub_30:
+ bx lr
+ thumb_func_end nullsub_30
+
+ thumb_func_start nullsub_31
+nullsub_31:
+ bx lr
+ thumb_func_end nullsub_31
+
+ thumb_func_start nullsub_32
+nullsub_32:
+ bx lr
+ thumb_func_end nullsub_32
+
+ thumb_func_start FatalErrorHang
+FatalErrorHang:
+ push {lr}
+ bl Hang
+ pop {r0}
+ bx r0
+ thumb_func_end FatalErrorHang
+
+ thumb_func_start FatalError
+FatalError:
+ push {r1-r3}
+ push {r4,lr}
+ sub sp, 0x100
+ adds r1, r0, 0
+ ldr r4, [sp, 0x108]
+ ldr r0, _08011C14
+ bl FatalErrorPrintFuncFileLine
+ add r2, sp, 0x10C
+ mov r0, sp
+ adds r1, r4, 0
+ bl vsprintf
+ ldr r0, _08011C18
+ mov r1, sp
+ bl FatalErrorFormatMessage
+ bl FatalErrorHang
+ .align 2, 0
+_08011C14: .4byte gUnknown_80D42C0
+_08011C18: .4byte gUnknown_80D42D4
+ thumb_func_end FatalError
+
+ .align 2,0 @ Don't pad with nop