pokediamond/asm/main.s
ProjectRevoTPP e8cea37829 sub to FUN
2020-04-15 12:09:59 -04:00

173 lines
3.1 KiB
ArmAsm

.include "asm/macros.inc"
.include "global.inc"
.section .text
thumb_func_start NitroMain
NitroMain: ; 0x02000C54
push {r3-r7, lr}
bl FUN_02016014
bl FUN_02016148
bl FUN_020163BC
mov r0, #0x0
bl FUN_02016438
ldr r0, _02000DD0 ; =0x02106FA0
mov r1, #0x0
blx FUN_020D50D8
bl FUN_02022294
bl FUN_0201259C
bl FUN_02000DF4
bl FUN_02002C14
mov r0, #0x0
mov r1, #0x3
bl FUN_02002C50
mov r0, #0x1
mov r1, #0x3
bl FUN_02002C50
mov r0, #0x3
add r1, r0, #0x0
bl FUN_02002C50
mov r1, #0x0
ldr r0, _02000DD4 ; =0x02106FA0
mvn r1, r1
str r1, [r0, #0x18]
bl FUN_0202254C
ldr r1, _02000DD4 ; =0x02106FA0
str r0, [r1, #0x20]
bl FUN_02029EF8
add r4, r0, #0x0
ldr r0, _02000DD4 ; =0x02106FA0
ldr r0, [r0, #0x20]
bl FUN_02023900
add r1, r0, #0x0
add r0, r4, #0x0
bl FUN_02003B98
bl FUN_02020AFC
mov r0, #0x3
bl FUN_020337E8
cmp r0, #0x3
bne _02000CD4
mov r0, #0x3
mov r1, #0x0
bl FUN_02034188
_02000CD4:
ldr r0, _02000DD4 ; =0x02106FA0
ldr r0, [r0, #0x20]
bl FUN_020227FC
cmp r0, #0x0
bne _02000CE8
mov r0, #0x0
bl FUN_02089D90
b _02000D1A
_02000CE8:
ldr r0, _02000DD8 ; =0x027FFC20
ldr r0, [r0, #0x0]
cmp r0, #0x0
beq _02000CF6
cmp r0, #0x1
beq _02000D06
b _02000D16
_02000CF6:
ldr r0, _02000DD4 ; =0x02106FA0
mov r1, #0x0
str r1, [r0, #0x1c]
ldr r0, _02000DDC ; =0x0000003F
ldr r1, _02000DE0 ; =0x021DBE18
bl FUN_02000E7C
b _02000D1A
_02000D06:
ldr r0, _02000DD4 ; =0x02106FA0
mov r1, #0x1
str r1, [r0, #0x1c]
ldr r0, _02000DE4 ; =0x00000034
ldr r1, _02000DE8 ; =0x021D76C8
bl FUN_02000E7C
b _02000D1A
_02000D16:
bl FUN_02020C2C
_02000D1A:
ldr r0, _02000DEC ; =0x021C48B8
mov r1, #0x1
str r1, [r0, #0x6c]
mov r1, #0x0
str r1, [r0, #0x30]
bl FUN_02000FA4
bl FUN_0200A2AC
bl FUN_02015E30
mov r1, #0x0
ldr r0, _02000DD4 ; =0x02106FA0
mov r7, #0xc3
ldr r6, _02000DF0 ; =0x021C4918
ldr r4, _02000DEC ; =0x021C48B8
str r1, [r0, #0x4]
add r5, r1, #0x0
lsl r7, r7, #0x2
_02000D40:
bl FUN_02000EE8
bl FUN_02000FE8
bl FUN_02016464
mov r0, #0xc3
ldr r1, [r4, #0x38]
lsl r0, r0, #0x2
and r0, r1
cmp r0, r7
bne _02000D64
ldrb r0, [r6, #0x8]
cmp r0, #0x0
bne _02000D64
mov r0, #0x0
bl FUN_02000F18
_02000D64:
bl FUN_0202FB80
cmp r0, #0x0
beq _02000D90
bl FUN_02000E0C
ldr r0, [r4, #0x18]
bl FUN_0201B5CC
ldr r0, [r4, #0x24]
bl FUN_0201B5CC
ldr r0, [r4, #0x30]
cmp r0, #0x0
bne _02000D90
mov r0, #0x1
add r1, r0, #0x0
blx FUN_020C9C0C
ldr r0, [r4, #0x2c]
add r0, r0, #0x1
str r0, [r4, #0x2c]
_02000D90:
bl FUN_020125D4
bl FUN_02015E60
bl FUN_020222C4
ldr r0, [r4, #0x24]
bl FUN_0201B5CC
mov r0, #0x1
add r1, r0, #0x0
blx FUN_020C9C0C
ldr r0, [r4, #0x2c]
add r0, r0, #0x1
str r0, [r4, #0x2c]
str r5, [r4, #0x30]
bl FUN_0200A318
bl FUN_0200E2D8
ldr r1, [r4, #0x0]
cmp r1, #0x0
beq _02000DC4
ldr r0, [r4, #0x4]
blx r1
_02000DC4:
bl FUN_02003C10
ldr r0, [r4, #0x20]
bl FUN_0201B5CC
b _02000D40
.balign 4
_02000DD0: .word 0x02106FA0
_02000DD4: .word 0x02106FA0
_02000DD8: .word 0x027FFC20
_02000DDC: .word 0x0000003F
_02000DE0: .word 0x021DBE18
_02000DE4: .word 0x00000034
_02000DE8: .word 0x021D76C8
_02000DEC: .word 0x021C48B8
_02000DF0: .word 0x021C4918