Disassemble all code in main ARM9 program

This commit is contained in:
Aetias
2024-02-26 20:56:29 +01:00
parent 129e246828
commit 5fccd8ebab
+70 -29
View File
@@ -1207,8 +1207,10 @@ _02000f34:
ldmia sp!, {r4, lr}
bx lr
_02000f44:
.byte 0x00, 0x00, 0xe0, 0xe3, 0x02, 0x11, 0xc0, 0xe3, 0x10, 0x40, 0xbd, 0xe8
.byte 0x1e, 0xff, 0x2f, 0xe1
mvn r0, #0
bic r1, r0, #0x80000000
ldmia sp!, {r4, lr}
bx lr
_02000f54:
cmp ip, #0x800
movge lr, #0x80000000
@@ -3176,8 +3178,12 @@ _020029a8:
mov r0, #0
bx lr
_020029b0:
.byte 0x00, 0x00, 0x50, 0xe3, 0x01, 0x30, 0x53, 0xa2, 0x00, 0x00, 0x80, 0xe0, 0xa0, 0x04, 0xa0, 0xe1
.byte 0x83, 0x0b, 0x80, 0xe1, 0x1e, 0xff, 0x2f, 0xe1
cmp r0, #0
subges r3, r3, #1
add r0, r0, r0
mov r0, r0, lsr #9
orr r0, r0, r3, lsl #23
bx lr
_020029c8:
mvn r0, #0x80000000
bx lr
@@ -3192,9 +3198,15 @@ _020029e4:
mvn r0, #0x80000000
bx lr
arm_func_end func_02002774
_020029ec:
.byte 0xf0, 0x58, 0x2d, 0xe9
.byte 0x01, 0x40, 0xa0, 0xe1, 0x01, 0x40, 0x84, 0xe3, 0x03, 0x00, 0x00, 0xea
.global func_020029ec
arm_func_start func_020029ec
func_020029ec: ; 0x020029ec
stmdb sp!, {r4, r5, r6, r7, fp, ip, lr}
mov r4, r1
orr r4, r4, #1
b _02002a0c
arm_func_end func_020029ec
.global func_020029fc
arm_func_start func_020029fc
@@ -3203,6 +3215,7 @@ func_020029fc: ; 0x020029fc
eor r4, r1, r3
mov r4, r4, asr #0x1
mov r4, r4, lsl #0x1
_02002a0c:
orrs r5, r3, r2
bne _02002a1c
ldmia sp!, {r4, r5, r6, r7, fp, ip, lr}
@@ -3305,8 +3318,8 @@ _02002b3c:
mov r1, r1, lsr r5
b _02002b74
_02002b6c:
.byte 0x31, 0x07, 0xa0, 0xe1
.byte 0x00, 0x10, 0xa0, 0xe3
mov r0, r1, lsr r7
mov r1, #0
_02002b74:
cmp r4, #0
blt _02002b84
@@ -11998,9 +12011,10 @@ _02008cf4:
str r1, [sb, #4]
bl func_0200ee60
b _02008c20
arm_func_end func_02008bfc
_02008d04:
.byte 0x04, 0xd0, 0x8d, 0xe2, 0xf8, 0x87, 0xbd, 0xe8
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
arm_func_end func_02008bfc
_02008d0c: .word 0x04000184
_02008d10: .word data_02058e90
@@ -20155,10 +20169,11 @@ _0200e700:
_0200e704:
mov r0, r0
b _0200e704
arm_func_end func_0200e6ac
_0200e70c:
.byte 0x0f, 0x50, 0xbd, 0xe8
.byte 0x0c, 0xd0, 0xa0, 0xe1, 0x1e, 0xff, 0x2f, 0xe1
ldmia sp!, {r0, r1, r2, r3, ip, lr}
mov sp, ip
bx lr
arm_func_end func_0200e6ac
_0200e718: .word data_0205acec
_0200e71c: .word data_02000000
@@ -40922,9 +40937,10 @@ _0201eef0:
ldr ip, [ip, #0x34]
blx ip
b _0201eef0
arm_func_end func_0201eedc
_0201ef50:
.byte 0x08, 0xd0, 0x8d, 0xe2, 0xf8, 0x80, 0xbd, 0xe8
add sp, sp, #8
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end func_0201eedc
_0201ef58: .word data_0205dbd0
.global func_0201ef5c
@@ -54312,9 +54328,9 @@ _02028ad0:
str r7, [sp, #0x20]
str r6, [sp, #0x24]
b _02028a44
arm_func_end func_02028a24
_02028b14:
.byte 0xf0, 0x87, 0xbd, 0xe8
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
arm_func_end func_02028a24
_02028b18: .word data_02056120
.global func_02028b1c
@@ -97266,9 +97282,10 @@ _02045b34:
cmp sb, r4, lsl #1
bhs _02045ac8
b _02045a3c
arm_func_end func_020459e4
_02045b40:
.byte 0x10, 0xd0, 0x8d, 0xe2, 0xf8, 0x8f, 0xbd, 0xe8
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
arm_func_end func_020459e4
.global func_02045b48
arm_func_start func_02045b48
@@ -108160,9 +108177,10 @@ _0204ee24:
movne r0, #0
strne r0, [r8, #8]
b _0204e5a0
arm_func_end func_0204e58c
_0204ee34:
.byte 0xa4, 0xd0, 0x8d, 0xe2, 0xf0, 0x8f, 0xbd, 0xe8
add sp, sp, #0xa4
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
arm_func_end func_0204e58c
.global func_0204ee3c
arm_func_start func_0204ee3c
@@ -108311,13 +108329,36 @@ func_0204f014: ; 0x0204f014
bl func_0204f8bc
b _0204f0a0
_0204f030:
.byte 0x1c, 0x10, 0x8b, 0xe2, 0x01, 0x00, 0x84, 0xe2, 0xec, 0xfb, 0xff, 0xeb, 0x20, 0x10, 0x8b, 0xe2
.byte 0xea, 0xfb, 0xff, 0xeb, 0x24, 0x10, 0x8b, 0xe2, 0xc5, 0xfb, 0xff, 0xeb, 0x28, 0x00, 0x8b, 0xe5
.byte 0x08, 0x00, 0x9b, 0xe5, 0x1c, 0x10, 0x8b, 0xe2, 0xcc, 0xff, 0xff, 0xeb, 0x00, 0x00, 0x50, 0xe3
.byte 0x00, 0x00, 0x00, 0x0a, 0xff, 0x02, 0x00, 0xeb, 0x3c, 0x00, 0x9f, 0xe5, 0x1c, 0x10, 0x8b, 0xe2
.byte 0xc6, 0xff, 0xff, 0xeb, 0x00, 0x00, 0x50, 0xe3, 0x05, 0x00, 0x00, 0x0a, 0x2c, 0x30, 0x9f, 0xe5
.byte 0x2c, 0x00, 0x9f, 0xe5, 0x2c, 0x20, 0x9f, 0xe5, 0x00, 0x10, 0x8b, 0xe2, 0x00, 0x30, 0x8b, 0xe5
.byte 0xe2, 0x02, 0x00, 0xeb, 0x04, 0x00, 0x8b, 0xe2, 0xe9, 0x00, 0x00, 0xeb, 0x18, 0xd0, 0x9b, 0xe5
add r1, fp, #0x1c
add r0, r4, #1
bl func_0204dff0
add r1, fp, #0x20
bl func_0204dff0
add r1, fp, #0x24
bl func_0204df64
str r0, [fp, #0x28]
ldr r0, [fp, #8]
add r1, fp, #0x1c
bl func_0204ef90
cmp r0, #0
beq _0204f068
bl func_0204fc68
_0204f068:
ldr r0, data_0204f0ac ; =data_020588a8
add r1, fp, #0x1c
bl func_0204ef90
cmp r0, #0
beq _0204f094
ldr r3, data_0204f0b0 ; =data_0205889c
ldr r0, data_0204f0b4 ; =data_020588c0
ldr r2, data_0204f0b8 ; =data_0204f0bc
add r1, fp, #0
str r3, [fp]
bl func_0204fc20
_0204f094:
add r0, fp, #4
bl func_0204f444
ldr sp, [fp, #0x18]
_0204f0a0:
bl func_0204f8a4
add sp, fp, #0x2c