Match several arm9 files, part 2

This commit is contained in:
Nomura
2022-12-27 10:53:34 +01:00
parent 81f2526a0c
commit dcd8163a5f
69 changed files with 8149 additions and 16558 deletions

View File

@@ -1,18 +0,0 @@
.public GF_AssertFail
.public sub_0202CD88
.public sub_0202CF28
.public sub_0202CFEC
.public sub_0203E838
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public sub_02055E00
.public sub_02055E80
.public sub_02055EAC
.public sub_02055F00
.public sub_02055F40
.public sub_02055F64
.public sub_02055F88
.public sub_02055FA8
.public sub_020562AC
.public sub_020562D8

View File

@@ -1,25 +0,0 @@
.public sub_020181C4
.public GF_AssertFail
.public sub_02024420
.public sub_02024440
.public sub_02025E38
.public sub_02027560
.public sub_0202EF04
.public sub_0202F000
.public sub_0202F028
.public sub_0202F180
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150
.public sub_020507E4
.public sub_020562F8
.public sub_02056328
.public sub_020563D0
.public sub_020563E0
.public sub_020563F0
.public sub_0206AE6C
.public sub_0206AE7C
.public sub_02073C74
.public sub_02076B10
.public sub_02079868
.public sub_0209304C

View File

@@ -1,15 +0,0 @@
.public sub_02025E38
.public sub_02025E50
.public sub_0202B5B4
.public sub_0202B5B8
.public sub_0202B5D8
.public sub_0202B5F0
.public sub_0203D174
.public sub_0203E838
.public sub_0203E850
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public ov5_021DD020
.public ov5_021DD084
.public ov5_021DD098

View File

@@ -1,13 +0,0 @@
.public sub_02025E38
.public sub_02025F74
.public sub_02025F94
.public sub_02025FB8
.public sub_0203D174
.public sub_0203E838
.public sub_0203E850
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public ov5_021DCEB0
.public ov5_021DCF58
.public ov5_021DCF6C

View File

@@ -1,21 +0,0 @@
.public sub_020245BC
.public sub_02025E38
.public sub_02026234
.public sub_02026310
.public sub_0203D174
.public sub_0203E838
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public sub_0207A268
.public ov5_021E6358
.public ov5_021E64F8
.public ov5_021E6630
.public ov5_021E6640
.public ov5_021E6B40
.public ov5_021E6EA8
.public ov5_021E72BC
.public ov5_021E7308
.public ov5_021E73A0
.public ov5_021E73C8
.public ov5_021E7420

View File

@@ -1,8 +0,0 @@
.public sub_0201D2E8
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150
.public sub_020507E4
.public sub_0206B218
.public sub_0206B228
.public _s32_div_f

View File

@@ -1,30 +0,0 @@
.public sub_02017070
.public sub_020181C4
.public sub_02024420
.public sub_02025E38
.public sub_02025F20
.public sub_0203A138
.public sub_0203D174
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150
.public sub_020548B0
.public sub_02054988
.public sub_02054B94
.public sub_0205E1B4
.public sub_0206DDB8
.public sub_02073C2C
.public sub_02073C74
.public sub_02074470
.public sub_02074B30
.public sub_02075BCC
.public sub_02077408
.public sub_02079BEC
.public sub_0207A048
.public sub_0207A0F8
.public sub_0207A0FC
.public sub_0207A268
.public sub_0207CFF0
.public sub_020923C0
.public _s32_div_f
.public ov5_021E6CF0

View File

@@ -1,5 +0,0 @@
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150
.public sub_0207D730
.public sub_0207D990

View File

@@ -1,3 +0,0 @@
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150

View File

@@ -1,11 +0,0 @@
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150
.public sub_0205E060
.public sub_0207CFF0
.public sub_0207D55C
.public sub_0207D570
.public sub_0207D60C
.public sub_0207D688
.public sub_0207D730
.public sub_0207D990

View File

@@ -1,8 +0,0 @@
.public sub_0202895C
.public sub_02028984
.public sub_02028CB0
.public sub_02028E84
.public sub_020298B0
.public sub_0203E838
.public sub_0203F118
.public sub_0203F150

View File

@@ -1,22 +0,0 @@
.public sub_02018144
.public sub_020181C4
.public GF_AssertFail
.public sub_02025E38
.public sub_02025E44
.public sub_0203D174
.public sub_0203D6E4
.public sub_0203D750
.public sub_0203E284
.public sub_0203E764
.public sub_0203E838
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public sub_02041D60
.public sub_0204EE90
.public sub_0207A0FC
.public sub_0207A268
.public sub_020997B8
.public sub_020997D0
.public sub_020997D8
.public sub_020998D8

View File

@@ -1 +0,0 @@
.public GF_AssertFail

View File

@@ -1,9 +0,0 @@
.public sub_020300B0
.public sub_020300F4
.public sub_0203068C
.public sub_020306E4
.public sub_0203E838
.public sub_0203F150
.public sub_0205E430
.public sub_0205E488
.public sub_0205E6A8

View File

@@ -1,59 +0,0 @@
.public sub_0200B60C
.public sub_02018144
.public sub_02018184
.public sub_020181C4
.public GF_AssertFail
.public sub_020247C8
.public sub_02025E38
.public sub_02025E44
.public sub_02028430
.public sub_0202CD88
.public sub_0202CF70
.public sub_0202D230
.public sub_0202D750
.public sub_0202D79C
.public sub_02030114
.public sub_0203026C
.public sub_020302B4
.public sub_0203068C
.public sub_02030698
.public sub_020308A0
.public sub_020308BC
.public sub_020359DC
.public sub_0203CD84
.public sub_0203E838
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public sub_0204F268
.public sub_0204F3D0
.public sub_0204F414
.public sub_0204F470
.public sub_0204F4A4
.public sub_0204F50C
.public sub_0204F5D8
.public sub_0204F628
.public sub_0204F6B0
.public sub_0204FA50
.public sub_02050944
.public sub_020509B4
.public sub_02050A60
.public sub_02050A64
.public sub_0205DFC4
.public sub_0205E50C
.public sub_0205E55C
.public sub_0205E6A8
.public sub_02074470
.public sub_02078804
.public sub_0207A0F8
.public sub_0207A0FC
.public sub_0207A268
.public sub_0207A274
.public sub_0207D990
.public sub_0208C324
.public sub_0208D720
.public sub_0208E9C0
.public sub_02099514
.public MIi_CpuClearFast
.public MI_CpuFill8
.public MI_CpuCopy8

View File

@@ -1,6 +0,0 @@
.public sub_02030280
.public sub_0203068C
.public sub_020306E4
.public sub_0203608C
.public sub_0205E50C
.public sub_0205E6A8

View File

@@ -1,50 +0,0 @@
.public sub_02018144
.public sub_02018184
.public sub_020181C4
.public GF_AssertFail
.public sub_02025E38
.public sub_02025E44
.public sub_02028430
.public sub_0202D79C
.public sub_020302DC
.public sub_0203041C
.public sub_02030430
.public sub_02030470
.public sub_0203068C
.public sub_02030698
.public sub_020306E4
.public sub_020359DC
.public sub_0203CD84
.public sub_0203E838
.public sub_0203F098
.public sub_0203F118
.public sub_0203F150
.public sub_02049EC4
.public sub_0204FBEC
.public sub_0204FCF8
.public sub_0204FD38
.public sub_0204FDB4
.public sub_0204FDE8
.public sub_0204FE50
.public sub_0204FF1C
.public sub_0204FF6C
.public sub_0204FFF4
.public sub_02050944
.public sub_020509B4
.public sub_02050A60
.public sub_02050A64
.public sub_0205E5B4
.public sub_0205E5E0
.public sub_0205E630
.public sub_0205E6A8
.public sub_0207A0F8
.public sub_0207A268
.public sub_0207A274
.public sub_0207D990
.public sub_0208C324
.public sub_0208D720
.public sub_0208E9C0
.public sub_02099514
.public MIi_CpuClearFast
.public MI_CpuFill8
.public MI_CpuCopy8

View File

@@ -1,62 +0,0 @@
.public sub_02005748
.public sub_0200D9E8
.public sub_0200DA58
.public sub_02014A9C
.public sub_02017FD4
.public sub_0201807C
.public sub_02018144
.public sub_020181C4
.public GF_AssertFail
.public sub_02023790
.public sub_020237BC
.public sub_020245BC
.public sub_02025F20
.public sub_02025F8C
.public sub_020280E0
.public sub_02036A68
.public sub_02036AA0
.public sub_020509A4
.public sub_0205B770
.public sub_0205B774
.public sub_0205C2C8
.public sub_0205C304
.public sub_0205C340
.public sub_0205C444
.public sub_0205C44C
.public sub_0205C51C
.public sub_0205C680
.public sub_0205C6BC
.public sub_0205C6E0
.public sub_0205C788
.public sub_0205C7BC
.public sub_0205C7E4
.public sub_0205C8DC
.public sub_0205C900
.public sub_0205C924
.public sub_0205C944
.public sub_0205C95C
.public sub_0205C970
.public sub_0205EABC
.public sub_0205EAC8
.public sub_0205EB3C
.public sub_02061AD4
.public sub_0206251C
.public sub_0206296C
.public sub_020629FC
.public sub_02062A04
.public sub_02062D64
.public sub_02062D80
.public sub_02062DB4
.public sub_02062FF0
.public sub_02062FF8
.public sub_02063000
.public sub_02063340
.public sub_020633A8
.public sub_020655F4
.public sub_02065638
.public sub_020656AC
.public sub_0207136C
.public sub_020714F0
.public MIi_CpuClearFast
.public ov5_021F16D4
.public ov5_021F6094

View File

@@ -1,6 +0,0 @@
.public sub_02006F88
.public sub_0200B960
.public sub_02018144
.public sub_020181C4
.public GF_AssertFail
.public sub_0205C9E0

View File

@@ -1,18 +0,0 @@
.public sub_02002AC8
.public sub_02002AE4
.public sub_02002B20
.public sub_02002E7C
.public sub_02002E98
.public sub_0200DD0C
.public sub_0200E060
.public sub_0200E2A4
.public sub_0200E69C
.public sub_0201A7E8
.public sub_0201ADA4
.public sub_0201C290
.public sub_0201D710
.public sub_0201D724
.public sub_0201D738
.public sub_02027AC0
.public sub_02027B50
.public sub_0205D988

View File

@@ -1,196 +0,0 @@
.public sub_02005748
.public GF_AssertFail
.public sub_0202CD88
.public sub_0202CF28
.public sub_02054F94
.public sub_0205507C
.public sub_0205DAD4
.public sub_0205DAEC
.public sub_0205DAF8
.public sub_0205DB04
.public sub_0205DB10
.public sub_0205DB1C
.public sub_0205DB58
.public sub_0205DB6C
.public sub_0205DB78
.public sub_0205DB84
.public sub_0205DB90
.public sub_0205DB9C
.public sub_0205DBA8
.public sub_0205DBB4
.public sub_0205DBC0
.public sub_0205DBCC
.public sub_0205DBD8
.public sub_0205DCE0
.public sub_0205DCF0
.public sub_0205DCFC
.public sub_0205DD44
.public sub_0205DD50
.public sub_0205DD5C
.public sub_0205DD90
.public sub_0205DD9C
.public sub_0205DE5C
.public sub_0205DFAC
.public sub_0205EA78
.public sub_0205EA94
.public sub_0205EAA0
.public sub_0205EABC
.public sub_0205EAC8
.public sub_0205EB08
.public sub_0205EB0C
.public sub_0205EB10
.public sub_0205EB14
.public sub_0205EB3C
.public sub_0205EB74
.public sub_0205EBB8
.public sub_0205EBBC
.public sub_0205EBC0
.public sub_0205EBCC
.public sub_0205EBE0
.public sub_0205EBE8
.public sub_0205EBEC
.public sub_0205EC0C
.public sub_0205EC14
.public sub_0205EC20
.public sub_0205EC40
.public sub_0205EC78
.public sub_0205EC88
.public sub_0205EF40
.public sub_0205EF58
.public sub_0205EF6C
.public sub_0205EF84
.public sub_0205EF98
.public sub_0205EFB0
.public sub_0205EFDC
.public sub_0205EFF0
.public sub_0205F008
.public sub_0205F01C
.public sub_0205F034
.public sub_0205F048
.public sub_0205F054
.public sub_0205F060
.public sub_0205F074
.public sub_0205F08C
.public sub_0205F108
.public sub_0205F158
.public sub_0205F22C
.public sub_0205F350
.public sub_0205F378
.public sub_0205F3B8
.public sub_0205F62C
.public sub_0205F644
.public sub_0205F6A4
.public sub_0205FA6C
.public sub_0205FAB0
.public sub_0205FB10
.public sub_0205FB40
.public sub_0205FB88
.public sub_0205FBE4
.public sub_0205FC48
.public sub_0205FC64
.public sub_0205FC88
.public sub_0205FCBC
.public sub_0205FCC0
.public sub_0205FD20
.public sub_0205FD40
.public sub_0205FDC8
.public sub_0205FECC
.public sub_0206000C
.public sub_020600CC
.public sub_02060150
.public sub_020601D4
.public sub_02060258
.public sub_020602DC
.public sub_02060324
.public sub_02060390
.public sub_020603BC
.public sub_020603EC
.public sub_02060420
.public sub_02060494
.public sub_020604B0
.public sub_020604E4
.public sub_02060548
.public sub_02060570
.public sub_02060688
.public sub_020606C8
.public sub_0206078C
.public sub_02060800
.public sub_0206081C
.public sub_02060850
.public sub_020608BC
.public sub_020608E4
.public sub_02060A60
.public sub_02060AA0
.public sub_02060B64
.public sub_02060B7C
.public sub_02060C24
.public sub_02060CE4
.public sub_02060D98
.public sub_02060E40
.public sub_02060EE4
.public sub_02060F4C
.public sub_02060FA8
.public sub_02061058
.public sub_02061100
.public sub_02061180
.public sub_020611FC
.public sub_02061248
.public sub_02061310
.public sub_0206132C
.public sub_02061348
.public sub_020613D8
.public sub_020613FC
.public sub_02061434
.public sub_0206156C
.public sub_0206157C
.public sub_020615C8
.public sub_020615E0
.public sub_02061630
.public sub_02061674
.public sub_020628BC
.public sub_020628C4
.public sub_02062974
.public sub_0206298C
.public sub_02062994
.public sub_0206299C
.public sub_02062A0C
.public sub_02062BB8
.public sub_02062BE8
.public sub_02062C00
.public sub_02062EE0
.public sub_02063020
.public sub_02063030
.public sub_02063040
.public sub_02063050
.public sub_02063F00
.public sub_02063FAC
.public sub_02064004
.public sub_0206406C
.public sub_020640D4
.public sub_0206413C
.public sub_0206415C
.public sub_0206417C
.public sub_0206419C
.public sub_020641A8
.public sub_02064208
.public sub_02064238
.public sub_02064418
.public sub_0206447C
.public sub_020644A4
.public sub_020655F4
.public sub_02065638
.public sub_02065684
.public sub_020656DC
.public sub_02065838
.public sub_0206587C
.public sub_020683D8
.public sub_02071CB4
.public ov5_021DFB5C
.public ov5_021E0E94
.public ov5_021E0EEC
.public ov9_02250F90
.public ov9_02250FBC
.public ov9_02250FD8
.public ov9_02251000
.public ov9_02251044
.public ov9_022511A0

View File

@@ -1,9 +0,0 @@
.public sub_02013948
.public GF_AssertFail
.public sub_020507F0
.public sub_0205081C
.public sub_02050844
.public sub_0206A8DC
.public sub_0206A8E4
.public sub_0206A8EC
.public sub_0206A8F4

View File

@@ -1,251 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204B64C.inc"
.text
thumb_func_start sub_0204B64C
sub_0204B64C: ; 0x0204B64C
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r1, r0, #0
add r5, #0x80
ldr r0, [r5, #0]
ldr r1, [r1, #0]
bl sub_02055F00
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204B64C
thumb_func_start sub_0204B680
sub_0204B680: ; 0x0204B680
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, #0x80
add r6, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055F40
strh r0, [r6]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204B680
thumb_func_start sub_0204B6B4
sub_0204B6B4: ; 0x0204B6B4
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, #0x80
add r6, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055F64
strh r0, [r6]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204B6B4
thumb_func_start sub_0204B6E8
sub_0204B6E8: ; 0x0204B6E8
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, #0x80
add r6, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055F88
strh r0, [r6]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204B6E8
thumb_func_start sub_0204B71C
sub_0204B71C: ; 0x0204B71C
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, #0x80
add r6, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055FA8
strh r0, [r6]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204B71C
thumb_func_start sub_0204B750
sub_0204B750: ; 0x0204B750
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, #0x80
add r2, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055E80
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204B750
thumb_func_start sub_0204B784
sub_0204B784: ; 0x0204B784
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0202CD88
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, #0x80
add r2, r0, #0
ldr r0, [r5, #0]
ldr r1, [r4, #0]
bl sub_02055EAC
add r0, r6, #0
mov r1, #4
bl sub_0202CF28
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204B784
thumb_func_start sub_0204B7CC
sub_0204B7CC: ; 0x0204B7CC
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
cmp r0, #0
beq _0204B7DE
cmp r0, #1
beq _0204B7E8
b _0204B7F2
_0204B7DE:
add r4, #0x80
ldr r0, [r4, #0]
bl sub_020562AC
b _0204B7F6
_0204B7E8:
add r4, #0x80
ldr r0, [r4, #0]
bl sub_020562D8
b _0204B7F6
_0204B7F2:
bl GF_AssertFail
_0204B7F6:
mov r0, #1
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204B7CC
thumb_func_start sub_0204B7FC
sub_0204B7FC: ; 0x0204B7FC
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0202CD88
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xa
bl sub_0203F098
add r1, r0, #0
add r5, #0x80
ldr r0, [r5, #0]
ldr r1, [r1, #0]
bl sub_02055E00
add r0, r4, #0
mov r1, #0
bl sub_0202CFEC
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204B7FC

View File

@@ -1,227 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204C500.inc"
.text
thumb_func_start sub_0204C500
sub_0204C500: ; 0x0204C500
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_020507E4
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
cmp r0, #0
bne _0204C536
add r0, r4, #0
bl sub_0206AE6C
add r5, #0x80
ldr r0, [r5, #0]
bl sub_020562F8
b _0204C54E
_0204C536:
cmp r0, #1
bne _0204C54A
add r0, r4, #0
bl sub_0206AE7C
add r5, #0x80
ldr r0, [r5, #0]
bl sub_02056328
b _0204C54E
_0204C54A:
bl GF_AssertFail
_0204C54E:
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204C500
thumb_func_start sub_0204C554
sub_0204C554: ; 0x0204C554
push {r4, r5, r6, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02024440
add r6, r0, #0
mov r0, #0x20
bl sub_02073C74
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r6, #0
bl sub_0202F028
cmp r0, #6
bne _0204C58C
mov r0, #1
b _0204C58E
_0204C58C:
mov r0, #0
_0204C58E:
strh r0, [r4]
add r0, r5, #0
bl sub_020181C4
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204C554
thumb_func_start sub_0204C59C
sub_0204C59C: ; 0x0204C59C
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r6, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02024440
add r7, r0, #0
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02024420
str r0, [sp, #8]
mov r0, #0x20
bl sub_02073C74
add r4, r0, #0
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E38
str r0, [sp, #4]
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02027560
mov r5, #0
_0204C5E0:
add r0, r7, #0
add r1, r5, #0
add r2, r4, #0
bl sub_0202F000
mov r0, #0x20
str r0, [sp]
ldr r1, [sp, #4]
add r0, r4, #0
mov r2, #2
mov r3, #0
bl sub_0209304C
add r0, r4, #0
bl sub_02076B10
add r1, r0, #0
ldr r0, [sp, #8]
bl sub_02079868
cmp r0, #0
bne _0204C610
bl GF_AssertFail
_0204C610:
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
add r1, r4, #0
ldr r0, [r0, #0xc]
bl sub_0202F180
add r5, r5, #1
cmp r5, #6
blt _0204C5E0
add r0, r4, #0
bl sub_020181C4
add r0, r7, #0
bl sub_0202EF04
mov r0, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204C59C
thumb_func_start sub_0204C638
sub_0204C638: ; 0x0204C638
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, r0, #0
cmp r6, #3
bhi _0204C6C4
add r0, r6, r6
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0204C672: ; jump table
.short _0204C67A - _0204C672 - 2 ; case 0
.short _0204C686 - _0204C672 - 2 ; case 1
.short _0204C692 - _0204C672 - 2 ; case 2
.short _0204C69E - _0204C672 - 2 ; case 3
_0204C67A:
add r4, #0x80
ldr r0, [r4, #0]
bl sub_020563D0
strh r0, [r5]
b _0204C6C4
_0204C686:
add r4, #0x80
ldr r0, [r4, #0]
bl sub_020563E0
strh r0, [r5]
b _0204C6C4
_0204C692:
add r4, #0x80
ldr r0, [r4, #0]
bl sub_020563F0
strh r0, [r5]
b _0204C6C4
_0204C69E:
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_020563E0
add r6, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_020563D0
add r4, #0x80
add r7, r0, #0
ldr r0, [r4, #0]
bl sub_020563F0
add r0, r7, r0
add r0, r6, r0
strh r0, [r5]
_0204C6C4:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204C638

View File

@@ -1,280 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204C6C8.inc"
.text
thumb_func_start sub_0204C6C8
sub_0204C6C8: ; 0x0204C6C8
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r5, #0
mov r1, #0x26
bl sub_0203F098
lsl r1, r6, #0x18
lsl r2, r7, #0x18
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl ov5_021DD020
str r0, [r5, #0]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204C6C8
thumb_func_start sub_0204C718
sub_0204C718: ; 0x0204C718
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x26
bl sub_0203F098
ldr r0, [r0, #0]
bl ov5_021DD084
mov r0, #0
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0204C718
thumb_func_start sub_0204C730
sub_0204C730: ; 0x0204C730
push {r4, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x26
bl sub_0203F098
add r1, r0, #0
add r4, #0x80
ldr r0, [r4, #0]
ldr r1, [r1, #0]
bl ov5_021DD098
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204C730
thumb_func_start sub_0204C750
sub_0204C750: ; 0x0204C750
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E50
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0202B5B4
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204C750
thumb_func_start sub_0204C780
sub_0204C780: ; 0x0204C780
push {r3, r4, r5, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E50
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r1, r0, #0
add r0, r5, #0
bl sub_0202B5B8
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204C780
thumb_func_start sub_0204C7AC
sub_0204C7AC: ; 0x0204C7AC
push {r3, r4, r5, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E50
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r1, r0, #0
add r0, r5, #0
bl sub_0202B5F0
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204C7AC
thumb_func_start sub_0204C7D8
sub_0204C7D8: ; 0x0204C7D8
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E50
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r1, r0, #0
ldrh r1, [r1]
add r0, r4, #0
bl sub_0202B5F0
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204C7D8
thumb_func_start sub_0204C808
sub_0204C808: ; 0x0204C808
push {r4, r5, r6, lr}
add r4, r0, #0
add r0, #0x80
ldr r5, [r0, #0]
add r0, r5, #0
bl sub_0203D174
bl sub_02025E38
ldr r0, [r5, #0xc]
bl sub_02025E50
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0203E850
add r4, r0, #0
add r0, r6, #0
bl sub_0202B5B4
cmp r0, r4
bhs _0204C84C
mov r0, #0
b _0204C84E
_0204C84C:
mov r0, #1
_0204C84E:
strh r0, [r5]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204C808
thumb_func_start sub_0204C854
sub_0204C854: ; 0x0204C854
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r4, [r0, #0]
add r0, r4, #0
bl sub_0203D174
bl sub_02025E38
ldr r0, [r4, #0xc]
bl sub_02025E50
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
ldrh r5, [r0]
add r0, r6, #0
bl sub_0202B5B4
cmp r0, r5
bhs _0204C8A2
mov r0, #0
b _0204C8A4
_0204C8A2:
mov r0, #1
_0204C8A4:
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204C854
thumb_func_start sub_0204C8AC
sub_0204C8AC: ; 0x0204C8AC
push {r4, r5, r6, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E50
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F150
add r1, r0, #0
add r0, r6, #0
bl sub_0202B5D8
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204C8AC

View File

@@ -1,209 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204C8F0.inc"
.text
thumb_func_start sub_0204C8F0
sub_0204C8F0: ; 0x0204C8F0
push {r3, r4, r5, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
add r5, r0, #0
add r0, r4, #0
bl sub_0203E850
add r1, r0, #0
add r0, r5, #0
bl sub_02025F94
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204C8F0
thumb_func_start sub_0204C914
sub_0204C914: ; 0x0204C914
push {r3, r4, r5, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
add r5, r0, #0
add r0, r4, #0
bl sub_0203E850
add r1, r0, #0
add r0, r5, #0
bl sub_02025FB8
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204C914
thumb_func_start sub_0204C938
sub_0204C938: ; 0x0204C938
push {r3, r4, r5, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r1, r0, #0
add r0, r5, #0
bl sub_02025FB8
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204C938
thumb_func_start sub_0204C968
sub_0204C968: ; 0x0204C968
push {r4, r5, r6, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0203E850
add r4, r0, #0
add r0, r6, #0
bl sub_02025F74
cmp r0, r4
bhs _0204C9A4
mov r0, #0
b _0204C9A6
_0204C9A4:
mov r0, #1
_0204C9A6:
strh r0, [r5]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204C968
thumb_func_start sub_0204C9AC
sub_0204C9AC: ; 0x0204C9AC
push {r4, r5, r6, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r6, #0
bl sub_02025F74
cmp r0, r4
bhs _0204C9F2
mov r0, #0
b _0204C9F4
_0204C9F2:
mov r0, #1
_0204C9F4:
strh r0, [r5]
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204C9AC
thumb_func_start sub_0204C9FC
sub_0204C9FC: ; 0x0204C9FC
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r5, #0
mov r1, #0x27
bl sub_0203F098
lsl r1, r6, #0x18
lsl r2, r7, #0x18
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
lsr r1, r1, #0x18
lsr r2, r2, #0x18
bl ov5_021DCEB0
str r0, [r5, #0]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204C9FC
thumb_func_start sub_0204CA4C
sub_0204CA4C: ; 0x0204CA4C
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x27
bl sub_0203F098
ldr r0, [r0, #0]
bl ov5_021DCF58
mov r0, #0
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0204CA4C
thumb_func_start sub_0204CA64
sub_0204CA64: ; 0x0204CA64
push {r4, lr}
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x27
bl sub_0203F098
add r1, r0, #0
add r4, #0x80
ldr r0, [r4, #0]
ldr r1, [r1, #0]
bl ov5_021DCF6C
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204CA64

View File

@@ -1,427 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204CA84.inc"
.text
thumb_func_start sub_0204CA84
sub_0204CA84: ; 0x0204CA84
push {r3, r4, r5, lr}
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xf
ldr r5, [r0, #0xc]
bl sub_0203F098
add r4, r0, #0
add r0, r5, #0
bl sub_02026310
ldr r1, [r4, #0]
bl ov5_021E72BC
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204CA84
thumb_func_start sub_0204CAA4
sub_0204CAA4: ; 0x0204CAA4
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r4, [r1, #0xc]
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
mov r1, #8
bl sub_020245BC
bl ov5_021E73C8
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204CAA4
thumb_func_start sub_0204CAD4
sub_0204CAD4: ; 0x0204CAD4
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #8
ldr r0, [r0, #0xc]
bl sub_020245BC
bl ov5_021E6B40
mov r0, #0
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0204CAD4
thumb_func_start sub_0204CAEC
sub_0204CAEC: ; 0x0204CAEC
push {r4, r5, r6, lr}
add r4, r0, #0
add r0, #0x80
ldr r5, [r0, #0]
mov r1, #8
ldr r0, [r5, #0xc]
bl sub_020245BC
add r6, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207A268
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
bl sub_0203D174
bl sub_02025E38
add r2, r0, #0
add r0, r6, #0
add r1, r5, #0
bl ov5_021E6EA8
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204CAEC
thumb_func_start sub_0204CB20
sub_0204CB20: ; 0x0204CB20
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r0, #0x80
ldr r5, [r0, #0]
mov r1, #0xf
add r0, r5, #0
bl sub_0203F098
add r7, r0, #0
add r0, r4, #0
ldr r6, [r5, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
str r0, [sp]
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r6, #0
mov r1, #8
bl sub_020245BC
add r6, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207A268
lsl r3, r4, #0x18
ldr r1, [r7, #0]
add r2, r6, #0
lsr r3, r3, #0x18
bl ov5_021E64F8
ldr r1, [sp]
strh r0, [r1]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204CB20
thumb_func_start sub_0204CB80
sub_0204CB80: ; 0x0204CB80
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r0, #0x80
ldr r5, [r0, #0]
mov r1, #0xf
add r0, r5, #0
bl sub_0203F098
add r7, r0, #0
add r0, r4, #0
ldr r5, [r5, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
mov r1, #8
bl sub_020245BC
lsl r1, r4, #0x18
ldr r2, [r7, #0]
lsr r1, r1, #0x18
bl ov5_021E6630
strh r0, [r6]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204CB80
thumb_func_start sub_0204CBD4
sub_0204CBD4: ; 0x0204CBD4
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xf
ldr r4, [r0, #0xc]
bl sub_0203F098
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r7, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F150
add r5, r0, #0
add r0, r4, #0
mov r1, #8
bl sub_020245BC
ldr r2, [r6, #0]
add r1, r5, #0
bl ov5_021E6640
strh r0, [r7]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204CBD4
thumb_func_start sub_0204CC24
sub_0204CC24: ; 0x0204CC24
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r0, #0x80
ldr r5, [r0, #0]
mov r1, #0xf
add r0, r5, #0
bl sub_0203F098
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207A268
ldr r2, [r6, #0]
add r1, r7, #0
bl ov5_021E73A0
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204CC24
thumb_func_start sub_0204CC78
sub_0204CC78: ; 0x0204CC78
push {r4, r5, r6, lr}
add r6, r0, #0
add r1, r6, #0
add r1, #0x80
ldr r4, [r1, #0]
ldr r5, [r4, #0xc]
bl sub_0203E838
add r6, #0x80
add r1, r0, #0
ldr r0, [r6, #0]
bl sub_0203F150
add r6, r0, #0
ldr r0, [r4, #0xc]
bl sub_0207A268
add r4, r0, #0
add r0, r5, #0
mov r1, #8
bl sub_020245BC
lsl r1, r6, #0x18
add r2, r0, #0
add r0, r4, #0
lsr r1, r1, #0x18
add r3, r5, #0
bl ov5_021E6358
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204CC78
thumb_func_start sub_0204CCB8
sub_0204CCB8: ; 0x0204CCB8
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x10
add r4, r0, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0xf
ldr r5, [r0, #0xc]
bl sub_0203F098
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
str r0, [sp, #8]
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
str r0, [sp, #0xc]
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
bl sub_02026310
lsl r1, r4, #0x18
lsr r1, r1, #0x18
str r1, [sp]
ldr r1, [r6, #0]
ldr r2, [sp, #8]
ldr r3, [sp, #0xc]
str r1, [sp, #4]
lsl r1, r7, #0x18
lsl r2, r2, #0x18
lsl r3, r3, #0x18
lsr r1, r1, #0x18
lsr r2, r2, #0x18
lsr r3, r3, #0x18
bl ov5_021E7308
mov r0, #0
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204CCB8
thumb_func_start sub_0204CD44
sub_0204CD44: ; 0x0204CD44
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r4, [r1, #0xc]
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
mov r1, #8
bl sub_020245BC
bl ov5_021E7420
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204CD44
thumb_func_start sub_0204CD74
sub_0204CD74: ; 0x0204CD74
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r4, [r1, #0xc]
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
mov r1, #8
bl sub_020245BC
bl sub_02026234
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204CD74
thumb_func_start sub_0204CDA4
sub_0204CDA4: ; 0x0204CDA4
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204CDA4
thumb_func_start sub_0204CDBC
sub_0204CDBC: ; 0x0204CDBC
mov r0, #0
bx lr
thumb_func_end sub_0204CDBC
thumb_func_start sub_0204CDC0
sub_0204CDC0: ; 0x0204CDC0
mov r0, #0
bx lr
thumb_func_end sub_0204CDC0
thumb_func_start sub_0204CDC4
sub_0204CDC4: ; 0x0204CDC4
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204CDC4

View File

@@ -1,317 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204CDDC.inc"
.text
thumb_func_start sub_0204CDDC
sub_0204CDDC: ; 0x0204CDDC
push {r3, lr}
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_020507E4
bl sub_0206B218
mov r0, #0
pop {r3, pc}
thumb_func_end sub_0204CDDC
thumb_func_start sub_0204CDF0
sub_0204CDF0: ; 0x0204CDF0
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, #0x80
add r4, r0, #0
ldr r0, [r5, #0]
ldr r0, [r0, #0xc]
bl sub_020507E4
bl sub_0206B228
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204CDF0
thumb_func_start sub_0204CE1C
sub_0204CE1C: ; 0x0204CE1C
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
add r4, r0, #0
bl sub_0201D2E8
mov r1, #0x64
bl _s32_div_f
lsl r0, r1, #0x10
lsr r0, r0, #0x10
cmp r0, #0xf
bhs _0204CE5A
mov r0, #0
b _0204CE9C
_0204CE5A:
cmp r0, #0x1e
bhs _0204CE62
mov r0, #1
b _0204CE9C
_0204CE62:
cmp r0, #0x2d
bhs _0204CE6A
mov r0, #2
b _0204CE9C
_0204CE6A:
cmp r0, #0x3c
bhs _0204CE72
mov r0, #3
b _0204CE9C
_0204CE72:
cmp r0, #0x46
bhs _0204CE7A
mov r0, #4
b _0204CE9C
_0204CE7A:
cmp r0, #0x50
bhs _0204CE82
mov r0, #5
b _0204CE9C
_0204CE82:
cmp r0, #0x58
bhs _0204CE8A
mov r0, #6
b _0204CE9C
_0204CE8A:
cmp r0, #0x5d
bhs _0204CE92
mov r0, #7
b _0204CE9C
_0204CE92:
cmp r0, #0x62
bhs _0204CE9A
mov r0, #8
b _0204CE9C
_0204CE9A:
mov r0, #9
_0204CE9C:
mov r2, #0x4b
lsl r2, r2, #2
cmp r4, r2
bgt _0204CED4
bge _0204CF44
cmp r4, #0x36
bgt _0204CEC4
bge _0204CF3C
cmp r4, #0x19
bgt _0204CEB4
beq _0204CF40
b _0204CF48
_0204CEB4:
cmp r4, #0x27
bgt _0204CF48
cmp r4, #0x23
blt _0204CF48
beq _0204CF40
cmp r4, #0x27
beq _0204CF44
b _0204CF48
_0204CEC4:
cmp r4, #0xff
bgt _0204CECC
beq _0204CF44
b _0204CF48
_0204CECC:
sub r2, #0xf
cmp r4, r2
beq _0204CF44
b _0204CF48
_0204CED4:
add r1, r2, #0
add r1, #0x75
cmp r4, r1
bgt _0204CF18
add r1, r2, #0
add r1, #0x75
cmp r4, r1
bge _0204CF40
add r1, r2, #0
add r1, #0x57
cmp r4, r1
bgt _0204CEF4
add r2, #0x57
cmp r4, r2
beq _0204CF38
b _0204CF48
_0204CEF4:
add r2, #0x58
sub r1, r4, r2
cmp r1, #7
bhi _0204CF48
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0204CF08: ; jump table
.short _0204CF38 - _0204CF08 - 2 ; case 0
.short _0204CF38 - _0204CF08 - 2 ; case 1
.short _0204CF30 - _0204CF08 - 2 ; case 2
.short _0204CF30 - _0204CF08 - 2 ; case 3
.short _0204CF30 - _0204CF08 - 2 ; case 4
.short _0204CF34 - _0204CF08 - 2 ; case 5
.short _0204CF34 - _0204CF08 - 2 ; case 6
.short _0204CF34 - _0204CF08 - 2 ; case 7
_0204CF18:
ldr r1, _0204CF60 ; =0x000001AB
cmp r4, r1
bgt _0204CF28
bge _0204CF3C
sub r1, r1, #2
cmp r4, r1
beq _0204CF3C
b _0204CF48
_0204CF28:
add r1, #0xd
cmp r4, r1
beq _0204CF40
b _0204CF48
_0204CF30:
mov r2, #0
b _0204CF4A
_0204CF34:
mov r2, #1
b _0204CF4A
_0204CF38:
mov r2, #2
b _0204CF4A
_0204CF3C:
mov r2, #3
b _0204CF4A
_0204CF40:
mov r2, #4
b _0204CF4A
_0204CF44:
mov r2, #5
b _0204CF4A
_0204CF48:
mov r2, #0
_0204CF4A:
add r3, r2, #0
mov r1, #0x14
mul r3, r1
ldr r2, _0204CF64 ; =0x020EBF84
lsl r1, r0, #1
add r0, r2, r3
ldrh r0, [r1, r0]
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
nop
_0204CF60: .word 0x000001AB
_0204CF64: .word 0x020EBF84
thumb_func_end sub_0204CE1C
thumb_func_start sub_0204CF68
sub_0204CF68: ; 0x0204CF68
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
bl sub_0201D2E8
mov r1, #0xf
and r0, r1
strh r0, [r4]
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204CF68
thumb_func_start sub_0204CF8C
sub_0204CF8C: ; 0x0204CF8C
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
cmp r5, #9
bhs _0204CFBA
mov r1, #0
b _0204CFBC
_0204CFBA:
mov r1, #1
_0204CFBC:
strh r1, [r0]
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204CF8C
thumb_func_start sub_0204CFC4
sub_0204CFC4: ; 0x0204CFC4
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
ldr r1, _0204CFF8 ; =0x020EBF64
lsl r2, r5, #1
ldrh r1, [r1, r2]
strh r1, [r0]
mov r0, #0
pop {r3, r4, r5, pc}
nop
_0204CFF8: .word 0x020EBF64
thumb_func_end sub_0204CFC4
.rodata
.global Unk_020EBF64
Unk_020EBF64: ; 0x020EBF64
.incbin "incbin/arm9_rodata.bin", 0x7324, 0x7344 - 0x7324
.global Unk_020EBF84
Unk_020EBF84: ; 0x020EBF84
.incbin "incbin/arm9_rodata.bin", 0x7344, 0x78

File diff suppressed because it is too large Load Diff

View File

@@ -1,180 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204E240.inc"
.text
thumb_func_start sub_0204E240
sub_0204E240: ; 0x0204E240
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r6, [r1, #0]
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r4, #0
ldr r7, _0204E288 ; =0x020EBFFC
str r0, [sp]
add r5, r4, #0
_0204E260:
ldr r0, [r6, #0xc]
bl sub_0207D990
lsl r1, r4, #2
ldrh r1, [r7, r1]
mov r2, #4
bl sub_0207D730
add r0, r5, r0
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, #7
blo _0204E260
ldr r0, [sp]
strh r5, [r0]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0204E288: .word 0x020EBFFC
thumb_func_end sub_0204E240
thumb_func_start sub_0204E28C
sub_0204E28C: ; 0x0204E28C
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F150
mov r5, #0
ldr r2, _0204E2D8 ; =0x020EBFFC
strh r5, [r4]
_0204E2B8:
lsl r3, r5, #2
ldrh r1, [r2, r3]
cmp r0, r1
bne _0204E2C8
ldr r0, _0204E2DC ; =0x020EBFFE
ldrh r0, [r0, r3]
strh r0, [r4]
b _0204E2D2
_0204E2C8:
add r1, r5, #1
lsl r1, r1, #0x10
lsr r5, r1, #0x10
cmp r5, #7
blo _0204E2B8
_0204E2D2:
mov r0, #0
pop {r3, r4, r5, pc}
nop
_0204E2D8: .word 0x020EBFFC
_0204E2DC: .word 0x020EBFFE
thumb_func_end sub_0204E28C
thumb_func_start sub_0204E2E0
sub_0204E2E0: ; 0x0204E2E0
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r6, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
str r0, [sp, #8]
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
str r0, [sp, #4]
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F150
str r0, [sp]
mov r4, #0
ldr r0, [sp, #8]
add r5, r4, #0
strh r4, [r0]
ldr r0, [sp, #4]
strh r4, [r0]
_0204E330:
ldr r0, [r6, #0xc]
lsl r7, r4, #2
bl sub_0207D990
ldr r1, _0204E36C ; =0x020EBFFC
mov r2, #4
ldrh r1, [r1, r7]
bl sub_0207D730
add r0, r5, r0
lsl r0, r0, #0x10
lsr r5, r0, #0x10
ldr r0, [sp]
cmp r5, r0
blo _0204E35C
ldr r0, _0204E36C ; =0x020EBFFC
ldrh r1, [r0, r7]
ldr r0, [sp, #8]
strh r1, [r0]
ldr r0, [sp, #4]
strh r4, [r0]
b _0204E366
_0204E35C:
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
cmp r4, #7
blo _0204E330
_0204E366:
mov r0, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
; .align 2, 0
_0204E36C: .word 0x020EBFFC
thumb_func_end sub_0204E2E0
thumb_func_start sub_0204E370
sub_0204E370: ; 0x0204E370
mov r0, #0
bx lr
thumb_func_end sub_0204E370
thumb_func_start sub_0204E374
sub_0204E374: ; 0x0204E374
mov r0, #0
bx lr
thumb_func_end sub_0204E374
.rodata
.global Unk_020EBFFC
Unk_020EBFFC: ; 0x020EBFFC
.incbin "incbin/arm9_rodata.bin", 0x73BC, 0x1C

View File

@@ -1,54 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204E378.inc"
.text
thumb_func_start sub_0204E378
sub_0204E378: ; 0x0204E378
push {r4, r5, r6, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
ldr r1, _0204E3C4 ; =0x020EC018
lsl r2, r4, #2
ldrh r1, [r1, r2]
strh r1, [r6]
ldr r1, _0204E3C8 ; =0x020EC01A
ldrh r1, [r1, r2]
strh r1, [r0]
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
_0204E3C4: .word 0x020EC018
_0204E3C8: .word 0x020EC01A
thumb_func_end sub_0204E378
.rodata
.global Unk_020EC018
Unk_020EC018: ; 0x020EC018
.incbin "incbin/arm9_rodata.bin", 0x73D8, 0x4C

View File

@@ -1,263 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204E75C.inc"
.text
thumb_func_start sub_0204E75C
sub_0204E75C: ; 0x0204E75C
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207D990
add r1, r6, #0
add r2, r7, #0
mov r3, #4
bl sub_0207D570
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204E75C
thumb_func_start sub_0204E7B4
sub_0204E7B4: ; 0x0204E7B4
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207D990
add r1, r6, #0
add r2, r7, #0
mov r3, #4
bl sub_0207D60C
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204E7B4
thumb_func_start sub_0204E80C
sub_0204E80C: ; 0x0204E80C
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207D990
add r1, r6, #0
add r2, r7, #0
mov r3, #4
bl sub_0207D55C
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204E80C
thumb_func_start sub_0204E864
sub_0204E864: ; 0x0204E864
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207D990
add r1, r6, #0
add r2, r7, #0
mov r3, #0xb
bl sub_0207D688
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204E864
thumb_func_start sub_0204E8BC
sub_0204E8BC: ; 0x0204E8BC
push {r4, r5, r6, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r5, [r1, #0]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
ldr r0, [r5, #0xc]
bl sub_0207D990
add r1, r6, #0
mov r2, #0xb
bl sub_0207D730
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204E8BC
thumb_func_start sub_0204E900
sub_0204E900: ; 0x0204E900
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
bl sub_0205E060
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204E900
thumb_func_start sub_0204E934
sub_0204E934: ; 0x0204E934
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r5, r0, #0
add r0, r4, #0
mov r1, #5
mov r2, #0xb
bl sub_0207CFF0
strh r0, [r5]
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204E934
thumb_func_start sub_0204E96C
sub_0204E96C: ; 0x0204E96C
mov r0, #0
bx lr
thumb_func_end sub_0204E96C
thumb_func_start sub_0204E970
sub_0204E970: ; 0x0204E970
mov r0, #0
bx lr
thumb_func_end sub_0204E970

View File

@@ -1,502 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204E974.inc"
.text
thumb_func_start sub_0204E974
sub_0204E974: ; 0x0204E974
push {r4, r5, r6, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r5, [r1, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_020298B0
add r1, r6, #0
bl sub_0202895C
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204E974
thumb_func_start sub_0204E9C8
sub_0204E9C8: ; 0x0204E9C8
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204E9C8
thumb_func_start sub_0204EA04
sub_0204EA04: ; 0x0204EA04
push {r4, r5, r6, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r5, [r1, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_020298B0
add r1, r6, #0
bl sub_02028984
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204EA04
thumb_func_start sub_0204EA58
sub_0204EA58: ; 0x0204EA58
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EA58
thumb_func_start sub_0204EA94
sub_0204EA94: ; 0x0204EA94
push {r4, r5, r6, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r5, [r1, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_020298B0
add r1, r6, #0
bl sub_02028E84
strh r0, [r4]
mov r0, #0
pop {r4, r5, r6, pc}
thumb_func_end sub_0204EA94
thumb_func_start sub_0204EAE8
sub_0204EAE8: ; 0x0204EAE8
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EAE8
thumb_func_start sub_0204EB24
sub_0204EB24: ; 0x0204EB24
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EB24
thumb_func_start sub_0204EB60
sub_0204EB60: ; 0x0204EB60
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EB60
thumb_func_start sub_0204EB9C
sub_0204EB9C: ; 0x0204EB9C
push {r3, r4, r5, lr}
add r5, r0, #0
add r1, r5, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r4, [r1, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r5, #0
bl sub_0203E838
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
bl sub_0203F118
add r0, r4, #0
bl sub_020298B0
mov r0, #0
pop {r3, r4, r5, pc}
thumb_func_end sub_0204EB9C
thumb_func_start sub_0204EBE4
sub_0204EBE4: ; 0x0204EBE4
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EBE4
thumb_func_start sub_0204EC20
sub_0204EC20: ; 0x0204EC20
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EC20
thumb_func_start sub_0204EC5C
sub_0204EC5C: ; 0x0204EC5C
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204EC5C
thumb_func_start sub_0204EC98
sub_0204EC98: ; 0x0204EC98
push {r3, r4, r5, r6, r7, lr}
add r4, r0, #0
add r1, r4, #0
add r1, #0x80
ldr r1, [r1, #0]
ldr r5, [r1, #0xc]
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_020298B0
add r1, r6, #0
add r2, r7, #0
bl sub_02028CB0
strh r0, [r4]
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0204EC98
thumb_func_start sub_0204ECF0
sub_0204ECF0: ; 0x0204ECF0
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204ECF0
thumb_func_start sub_0204ED2C
sub_0204ED2C: ; 0x0204ED2C
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204ED2C
thumb_func_start sub_0204ED68
sub_0204ED68: ; 0x0204ED68
push {r4, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r0, r4, #0
bl sub_0203E838
add r4, #0x80
add r1, r0, #0
ldr r0, [r4, #0]
bl sub_0203F118
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204ED68

View File

@@ -1,330 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204EDA4.inc"
.text
thumb_func_start sub_0204EDA4
sub_0204EDA4: ; 0x0204EDA4
push {r4, r5, r6, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x13
bl sub_0203F098
add r1, r5, #0
add r1, #0x80
lsl r2, r4, #0x18
add r6, r0, #0
ldr r1, [r1, #0]
mov r0, #0x20
lsr r2, r2, #0x18
bl sub_0203D6E4
str r0, [r6, #0]
ldr r1, _0204EDE8 ; =sub_02041D60
add r0, r5, #0
bl sub_0203E764
mov r0, #1
pop {r4, r5, r6, pc}
nop
_0204EDE8: .word sub_02041D60
thumb_func_end sub_0204EDA4
thumb_func_start sub_0204EDEC
sub_0204EDEC: ; 0x0204EDEC
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
mov r1, #0x13
bl sub_0203F098
add r4, r0, #0
ldr r0, [r4, #0]
cmp r0, #0
bne _0204EE18
bl GF_AssertFail
_0204EE18:
ldr r0, [r4, #0]
bl sub_0203D750
strh r0, [r5]
ldrh r0, [r5]
cmp r0, #4
bne _0204EE2A
mov r0, #0xff
strh r0, [r5]
_0204EE2A:
ldr r0, [r4, #0]
bl sub_020181C4
mov r0, #0
str r0, [r4, #0]
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204EDEC
thumb_func_start sub_0204EE38
sub_0204EE38: ; 0x0204EE38
mov r0, #0
bx lr
thumb_func_end sub_0204EE38
thumb_func_start sub_0204EE3C
sub_0204EE3C: ; 0x0204EE3C
push {r4, r5, r6, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, #0x80
add r6, r0, #0
ldr r0, [r5, #0]
ldr r0, [r0, #0xc]
bl sub_0207A268
add r1, r6, #0
bl sub_0207A0FC
mov r1, #0x20
bl sub_020997D8
add r5, r0, #0
bl sub_020998D8
strh r0, [r4]
add r0, r5, #0
bl sub_020181C4
mov r0, #0
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204EE3C
thumb_func_start sub_0204EE90
sub_0204EE90: ; 0x0204EE90
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
add r5, r0, #0
add r0, #0x80
add r7, r1, #0
ldr r0, [r0, #0]
mov r1, #0x13
str r2, [sp]
add r6, r3, #0
bl sub_0203F098
str r0, [sp, #4]
mov r0, #0x20
bl sub_020997B8
add r4, r0, #0
ldr r0, [sp, #4]
str r4, [r0, #0]
ldr r0, [sp]
str r0, [r4, #0]
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203D174
bl sub_02025E38
str r0, [r4, #4]
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_02025E44
str r0, [r4, #8]
str r6, [r4, #0xc]
add r0, r5, #0
strb r7, [r4, #0x15]
add r0, #0x80
ldr r0, [r0, #0]
add r1, r4, #0
bl sub_0203E284
ldr r1, _0204EEF8 ; =sub_02041D60
add r0, r5, #0
bl sub_0203E764
add r0, r6, #0
bl sub_020181C4
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0204EEF8: .word sub_02041D60
thumb_func_end sub_0204EE90
thumb_func_start sub_0204EEFC
sub_0204EEFC: ; 0x0204EEFC
mov r0, #1
bx lr
thumb_func_end sub_0204EEFC
thumb_func_start sub_0204EF00
sub_0204EF00: ; 0x0204EF00
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0207A268
add r1, r4, #0
bl sub_0207A0FC
add r4, r0, #0
mov r1, #0x20
bl sub_020997D8
add r3, r0, #0
add r0, r5, #0
mov r1, #1
add r2, r4, #0
bl sub_0204EE90
mov r0, #1
pop {r3, r4, r5, pc}
thumb_func_end sub_0204EF00
thumb_func_start sub_0204EF40
sub_0204EF40: ; 0x0204EF40
push {r4, r5, r6, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0207A268
add r1, r6, #0
bl sub_0207A0FC
add r6, r0, #0
mov r0, #0x20
mov r1, #4
bl sub_02018144
add r3, r0, #0
ldr r0, _0204EF9C ; =0x0000FFFF
strh r4, [r3]
strh r0, [r3, #2]
add r0, r5, #0
mov r1, #0
add r2, r6, #0
bl sub_0204EE90
mov r0, #1
pop {r4, r5, r6, pc}
; .align 2, 0
_0204EF9C: .word 0x0000FFFF
thumb_func_end sub_0204EF40
thumb_func_start sub_0204EFA0
sub_0204EFA0: ; 0x0204EFA0
mov r0, #0
bx lr
thumb_func_end sub_0204EFA0
thumb_func_start sub_0204EFA4
sub_0204EFA4: ; 0x0204EFA4
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
mov r1, #0x13
bl sub_0203F098
ldr r4, [r0, #0]
cmp r4, #0
bne _0204EFCE
bl GF_AssertFail
_0204EFCE:
ldrb r0, [r4, #0x16]
cmp r0, #0
bne _0204EFD8
mov r0, #0
b _0204EFDA
_0204EFD8:
mov r0, #0xff
_0204EFDA:
strh r0, [r5]
add r0, r4, #0
bl sub_020997D0
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204EFA4
thumb_func_start sub_0204EFE8
sub_0204EFE8: ; 0x0204EFE8
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r4, #0x80
add r5, r0, #0
ldr r0, [r4, #0]
mov r1, #0x13
bl sub_0203F098
ldr r4, [r0, #0]
cmp r4, #0
bne _0204F012
bl GF_AssertFail
_0204F012:
ldrb r0, [r4, #0x16]
cmp r0, #0
bne _0204F01C
mov r0, #0
b _0204F01E
_0204F01C:
mov r0, #0xff
_0204F01E:
strh r0, [r5]
add r0, r4, #0
bl sub_020997D0
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204EFE8

View File

@@ -1,37 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204F02C.inc"
.text
thumb_func_start sub_0204F02C
sub_0204F02C: ; 0x0204F02C
push {r3, lr}
bl GF_AssertFail
mov r0, #0
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0204F02C
thumb_func_start sub_0204F038
sub_0204F038: ; 0x0204F038
push {r3, lr}
bl GF_AssertFail
mov r0, #0
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0204F038
thumb_func_start sub_0204F044
sub_0204F044: ; 0x0204F044
mov r0, #0
bx lr
thumb_func_end sub_0204F044
thumb_func_start sub_0204F048
sub_0204F048: ; 0x0204F048
mov r0, #0
bx lr
thumb_func_end sub_0204F048

View File

@@ -1,115 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204F04C.inc"
.text
thumb_func_start sub_0204F04C
sub_0204F04C: ; 0x0204F04C
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r6, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r6, #0
bl sub_0203E838
add r1, r0, #0
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, r0, #0
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_020300F4
mov r2, #0
add r1, sp, #8
strb r2, [r1]
lsl r2, r5, #2
add r2, r4, r2
lsl r2, r2, #0x18
mov r1, #0xa
lsr r2, r2, #0x18
add r3, sp, #8
bl sub_020300B0
cmp r4, #3
bne _0204F0C8
cmp r5, #0
bne _0204F0A6
mov r7, #0x66
b _0204F0A8
_0204F0A6:
mov r7, #0x68
_0204F0A8:
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0203068C
str r0, [sp]
add r0, r7, #0
bl sub_0205E6A8
add r2, r0, #0
ldr r0, [sp]
add r1, r7, #0
mov r3, #0
bl sub_020306E4
_0204F0C8:
add r0, r6, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0203068C
add r7, r0, #0
lsl r0, r5, #0x18
lsl r1, r4, #0x18
lsr r0, r0, #0x18
lsr r1, r1, #0x18
bl sub_0205E430
str r0, [sp, #4]
lsl r0, r5, #0x18
lsl r1, r4, #0x18
lsr r0, r0, #0x18
lsr r1, r1, #0x18
bl sub_0205E430
bl sub_0205E6A8
add r2, r0, #0
ldr r1, [sp, #4]
add r0, r7, #0
mov r3, #0
bl sub_020306E4
add r6, #0x80
ldr r0, [r6, #0]
ldr r0, [r0, #0xc]
bl sub_0203068C
add r6, r0, #0
lsl r0, r5, #0x18
lsl r1, r4, #0x18
lsr r0, r0, #0x18
lsr r1, r1, #0x18
bl sub_0205E488
add r7, r0, #0
lsl r0, r5, #0x18
lsl r1, r4, #0x18
lsr r0, r0, #0x18
lsr r1, r1, #0x18
bl sub_0205E488
bl sub_0205E6A8
add r2, r0, #0
add r0, r6, #0
add r1, r7, #0
mov r3, #0
bl sub_020306E4
mov r0, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
thumb_func_end sub_0204F04C

File diff suppressed because it is too large Load Diff

View File

@@ -1,71 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204FA34.inc"
.text
thumb_func_start sub_0204FA34
sub_0204FA34: ; 0x0204FA34
push {r4, r5, r6, lr}
add r4, r3, #0
add r5, r0, #0
ldrb r0, [r4, #1]
add r6, r2, #0
add r0, r0, #1
strb r0, [r4, #1]
bl sub_0203608C
cmp r5, r0
beq _0204FA4E
ldrh r0, [r6, #4]
strh r0, [r4, #6]
_0204FA4E:
pop {r4, r5, r6, pc}
thumb_func_end sub_0204FA34
thumb_func_start sub_0204FA50
sub_0204FA50: ; 0x0204FA50
push {r4, r5, r6, lr}
sub sp, #8
add r5, r0, #0
mov r3, #0
add r0, sp, #4
strb r3, [r0]
add r0, sp, #4
str r0, [sp]
add r0, r1, #0
mov r1, #5
add r4, r2, #0
bl sub_02030280
cmp r4, #3
bne _0204FA88
add r0, r5, #0
bl sub_0203068C
add r6, r0, #0
mov r0, #0x6a
bl sub_0205E6A8
add r2, r0, #0
add r0, r6, #0
mov r1, #0x6a
mov r3, #0
bl sub_020306E4
_0204FA88:
add r0, r5, #0
bl sub_0203068C
add r5, r0, #0
add r0, r4, #0
bl sub_0205E50C
add r6, r0, #0
add r0, r4, #0
bl sub_0205E50C
bl sub_0205E6A8
add r2, r0, #0
add r0, r5, #0
add r1, r6, #0
mov r3, #0
bl sub_020306E4
add sp, #8
pop {r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0204FA50

View File

@@ -1,700 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0204FAB4.inc"
.text
thumb_func_start sub_0204FAB4
sub_0204FAB4: ; 0x0204FAB4
push {r3, r4, r5, r6, r7, lr}
sub sp, #8
add r4, r0, #0
bl sub_0203E838
add r7, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r5, r0, #0
add r0, r4, #0
bl sub_0203E838
add r1, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r6, r0, #0
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_020302DC
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0203041C
str r0, [sp, #4]
add r0, r4, #0
add r0, #0x80
ldr r0, [r0, #0]
mov r1, #0x13
bl sub_0203F098
add r1, r0, #0
cmp r7, #4
bhi _0204FBA4
add r0, r7, r7
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0204FB20: ; jump table
.short _0204FB2A - _0204FB20 - 2 ; case 0
.short _0204FB3C - _0204FB20 - 2 ; case 1
.short _0204FBA4 - _0204FB20 - 2 ; case 2
.short _0204FB74 - _0204FB20 - 2 ; case 3
.short _0204FB86 - _0204FB20 - 2 ; case 4
_0204FB2A:
add r4, #0x80
ldr r1, [r4, #0]
add r0, r5, #0
ldr r1, [r1, #0xc]
mov r2, #0
bl sub_02049EC4
strh r0, [r6]
b _0204FBAC
_0204FB3C:
cmp r5, #3
bne _0204FB60
add r4, #0x80
ldr r0, [r4, #0]
ldr r0, [r0, #0xc]
bl sub_0203068C
add r4, r0, #0
mov r0, #0x6c
bl sub_0205E6A8
add r2, r0, #0
add r0, r4, #0
mov r1, #0x6c
bl sub_02030698
strh r0, [r6]
b _0204FBAC
_0204FB60:
lsl r2, r5, #0x18
mov r3, #0
ldr r0, [sp, #4]
mov r1, #9
lsr r2, r2, #0x18
str r3, [sp]
bl sub_02030470
strh r0, [r6]
b _0204FBAC
_0204FB74:
add r4, #0x80
ldr r0, [r4, #0]
lsl r2, r5, #0x18
ldr r0, [r0, #0xc]
ldr r1, [sp, #4]
lsr r2, r2, #0x18
bl sub_0204FBEC
b _0204FBAC
_0204FB86:
cmp r5, #0
bne _0204FB8E
mov r2, #0
b _0204FB98
_0204FB8E:
cmp r5, #1
bne _0204FB96
mov r2, #1
b _0204FB98
_0204FB96:
mov r2, #2
_0204FB98:
ldr r0, [r4, #0x74]
bl sub_0204FDB4
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
_0204FBA4:
bl GF_AssertFail
mov r0, #0
strh r0, [r6]
_0204FBAC:
mov r0, #0
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204FAB4
thumb_func_start sub_0204FBB4
sub_0204FBB4: ; 0x0204FBB4
push {r3, r4, r5, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
ldr r0, [r0, #0xc]
bl sub_0203041C
lsl r2, r4, #0x18
add r5, #0x80
add r1, r0, #0
ldr r0, [r5, #0]
lsr r2, r2, #0x18
ldr r0, [r0, #0xc]
bl sub_0204FBEC
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204FBB4
thumb_func_start sub_0204FBEC
sub_0204FBEC: ; 0x0204FBEC
push {r4, r5, r6, r7, lr}
sub sp, #0xc
str r0, [sp, #4]
mov r3, #0
add r0, sp, #8
strb r3, [r0]
add r0, sp, #8
str r0, [sp]
add r0, r1, #0
mov r1, #9
add r5, r2, #0
bl sub_02030430
cmp r5, #3
bne _0204FC24
ldr r0, [sp, #4]
bl sub_0203068C
add r4, r0, #0
mov r0, #0x6c
bl sub_0205E6A8
add r2, r0, #0
add r0, r4, #0
mov r1, #0x6c
mov r3, #0
bl sub_020306E4
_0204FC24:
ldr r0, [sp, #4]
bl sub_0203068C
add r4, r0, #0
add r0, r5, #0
bl sub_0205E5E0
add r6, r0, #0
add r0, r5, #0
bl sub_0205E5E0
bl sub_0205E6A8
add r2, r0, #0
add r0, r4, #0
add r1, r6, #0
mov r3, #0
bl sub_020306E4
ldr r0, [sp, #4]
bl sub_0203068C
add r4, r0, #0
add r0, r5, #0
bl sub_0205E630
add r6, r0, #0
add r0, r5, #0
bl sub_0205E630
bl sub_0205E6A8
add r2, r0, #0
add r0, r4, #0
add r1, r6, #0
mov r3, #0
bl sub_020306E4
mov r4, #0
_0204FC72:
ldr r0, [sp, #4]
bl sub_0203068C
lsl r1, r4, #0x18
add r6, r0, #0
add r0, r5, #0
lsr r1, r1, #0x18
bl sub_0205E5B4
lsl r1, r4, #0x18
add r7, r0, #0
add r0, r5, #0
lsr r1, r1, #0x18
bl sub_0205E5B4
bl sub_0205E6A8
add r2, r0, #0
add r0, r6, #0
add r1, r7, #0
mov r3, #1
bl sub_020306E4
add r4, r4, #1
cmp r4, #3
blt _0204FC72
add sp, #0xc
pop {r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0204FBEC
thumb_func_start sub_0204FCAC
sub_0204FCAC: ; 0x0204FCAC
push {r4, r5, r6, lr}
add r5, r0, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r4, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F150
add r6, r0, #0
add r0, r5, #0
bl sub_0203E838
add r1, r0, #0
add r0, r5, #0
add r0, #0x80
ldr r0, [r0, #0]
bl sub_0203F118
add r3, r0, #0
ldr r0, [r5, #0x74]
add r1, r4, #0
add r2, r6, #0
bl sub_0204FCF8
mov r0, #1
pop {r4, r5, r6, pc}
thumb_func_end sub_0204FCAC
thumb_func_start sub_0204FCF8
sub_0204FCF8: ; 0x0204FCF8
push {r3, r4, r5, r6, r7, lr}
str r0, [sp]
add r5, r1, #0
mov r0, #0xb
mov r1, #0x10
add r6, r2, #0
add r7, r3, #0
bl sub_02018144
add r4, r0, #0
add r2, r4, #0
mov r1, #0x10
mov r0, #0
_0204FD12:
strb r0, [r2]
add r2, r2, #1
sub r1, r1, #1
bne _0204FD12
strh r5, [r4, #4]
strh r6, [r4, #6]
add r0, r4, #0
str r7, [r4, #0xc]
bl sub_02099514
ldr r0, [sp]
ldr r1, _0204FD34 ; =sub_0204FD38
add r2, r4, #0
bl sub_02050944
pop {r3, r4, r5, r6, r7, pc}
nop
_0204FD34: .word sub_0204FD38
thumb_func_end sub_0204FCF8
thumb_func_start sub_0204FD38
sub_0204FD38: ; 0x0204FD38
push {r4, lr}
bl sub_02050A64
add r4, r0, #0
ldrb r1, [r4]
cmp r1, #0
beq _0204FD50
cmp r1, #1
beq _0204FD66
cmp r1, #2
beq _0204FDA6
b _0204FDAE
_0204FD50:
mov r0, #0x85
add r1, r4, #0
mov r2, #0x10
bl sub_020359DC
cmp r0, #1
bne _0204FDAE
ldrb r0, [r4]
add r0, r0, #1
strb r0, [r4]
b _0204FDAE
_0204FD66:
ldrb r0, [r4, #1]
cmp r0, #2
blo _0204FDAE
ldr r0, [r4, #0xc]
mov r1, #0
strh r1, [r0]
ldrh r1, [r4, #4]
ldrh r0, [r4, #8]
cmp r1, r0
beq _0204FD80
ldrh r0, [r4, #0xa]
cmp r1, r0
bne _0204FD88
_0204FD80:
ldr r1, [r4, #0xc]
ldrh r0, [r1]
add r0, r0, #1
strh r0, [r1]
_0204FD88:
ldrh r1, [r4, #6]
ldrh r0, [r4, #8]
cmp r1, r0
beq _0204FD96
ldrh r0, [r4, #0xa]
cmp r1, r0
bne _0204FD9E
_0204FD96:
ldr r1, [r4, #0xc]
ldrh r0, [r1]
add r0, r0, #2
strh r0, [r1]
_0204FD9E:
ldrb r0, [r4]
add r0, r0, #1
strb r0, [r4]
b _0204FDAE
_0204FDA6:
bl sub_020181C4
mov r0, #1
pop {r4, pc}
_0204FDAE:
mov r0, #0
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204FD38
thumb_func_start sub_0204FDB4
sub_0204FDB4: ; 0x0204FDB4
push {r3, r4, r5, r6, r7, lr}
add r5, r1, #0
add r6, r2, #0
bl sub_02050A60
add r7, r0, #0
mov r0, #0xb
mov r1, #0x10
bl sub_02018144
add r4, r0, #0
mov r1, #0
mov r2, #0x10
bl MI_CpuFill8
strb r6, [r4, #4]
str r5, [r4, #0xc]
ldr r0, [r7, #0x10]
ldr r1, _0204FDE4 ; =sub_0204FDE8
add r2, r4, #0
bl sub_02050944
pop {r3, r4, r5, r6, r7, pc}
nop
_0204FDE4: .word sub_0204FDE8
thumb_func_end sub_0204FDB4
thumb_func_start sub_0204FDE8
sub_0204FDE8: ; 0x0204FDE8
push {r3, r4, r5, lr}
add r4, r0, #0
bl sub_02050A60
add r5, r0, #0
add r0, r4, #0
bl sub_02050A64
add r4, r0, #0
ldr r1, [r4, #0]
cmp r1, #4
bhi _0204FE4A
add r1, r1, r1
add r1, pc
ldrh r1, [r1, #6]
lsl r1, r1, #0x10
asr r1, r1, #0x10
add pc, r1
_0204FE0C: ; jump table
.short _0204FE16 - _0204FE0C - 2 ; case 0
.short _0204FE22 - _0204FE0C - 2 ; case 1
.short _0204FE2C - _0204FE0C - 2 ; case 2
.short _0204FE38 - _0204FE0C - 2 ; case 3
.short _0204FE42 - _0204FE0C - 2 ; case 4
_0204FE16:
add r1, r5, #0
mov r2, #0xb
bl sub_0204FE50
str r0, [r4, #0]
b _0204FE4A
_0204FE22:
add r1, r5, #0
bl sub_0204FF1C
str r0, [r4, #0]
b _0204FE4A
_0204FE2C:
add r1, r5, #0
mov r2, #0xb
bl sub_0204FF6C
str r0, [r4, #0]
b _0204FE4A
_0204FE38:
add r1, r5, #0
bl sub_0204FFF4
str r0, [r4, #0]
b _0204FE4A
_0204FE42:
bl sub_020181C4
mov r0, #1
pop {r3, r4, r5, pc}
_0204FE4A:
mov r0, #0
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0204FDE8
thumb_func_start sub_0204FE50
sub_0204FE50: ; 0x0204FE50
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
add r6, r1, #0
mov r0, #0xb
mov r1, #0x40
bl sub_02018144
add r4, r0, #0
mov r0, #0
add r1, r4, #0
mov r2, #0x40
bl MIi_CpuClearFast
ldr r0, [r6, #0xc]
bl sub_0207A268
str r0, [r4, #0]
ldr r0, [r6, #0xc]
bl sub_0207D990
str r0, [r4, #4]
ldr r0, [r6, #0xc]
bl sub_02028430
str r0, [r4, #8]
ldr r0, [r6, #0xc]
bl sub_02025E44
add r1, r4, #0
str r0, [r4, #0xc]
mov r0, #0
add r1, #0x21
strb r0, [r1]
add r1, r4, #0
mov r2, #0x17
add r1, #0x20
strb r2, [r1]
str r6, [r4, #0x1c]
add r1, r4, #0
ldrb r2, [r5, #5]
add r1, #0x22
strb r2, [r1]
_0204FEA4:
add r1, r5, r0
ldrb r2, [r1, #6]
add r1, r4, r0
add r0, r0, #1
lsl r0, r0, #0x18
add r1, #0x2c
lsr r0, r0, #0x18
strb r2, [r1]
cmp r0, #3
blo _0204FEA4
add r0, r4, #0
mov r1, #0x64
add r0, #0x33
strb r1, [r0]
add r1, r4, #0
add r1, #0x32
ldrb r2, [r1]
mov r7, #0xf
mov r1, #3
bic r2, r7
orr r2, r1
add r1, r4, #0
add r1, #0x32
strb r2, [r1]
add r1, r4, #0
add r1, #0x32
ldrb r3, [r1]
mov r1, #0xf0
mov r2, #0x30
bic r3, r1
orr r3, r2
add r2, r4, #0
add r2, #0x32
strb r3, [r2]
add r0, r4, #0
ldrb r2, [r5, #4]
add r0, #0x32
cmp r2, #2
bne _0204FF06
ldrb r2, [r0]
mov r3, #2
bic r2, r7
orr r2, r3
strb r2, [r0]
ldrb r2, [r0]
bic r2, r1
mov r1, #0x20
orr r1, r2
strb r1, [r0]
_0204FF06:
ldr r1, _0204FF18 ; =0x020F1E88
add r0, r6, #0
add r2, r4, #0
bl sub_0203CD84
ldr r0, [r5, #0xc]
str r4, [r0, #0]
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0204FF18: .word 0x020F1E88
thumb_func_end sub_0204FE50
thumb_func_start sub_0204FF1C
sub_0204FF1C: ; 0x0204FF1C
push {r3, r4, r5, lr}
add r5, r0, #0
add r0, r1, #0
bl sub_020509B4
cmp r0, #0
beq _0204FF2E
mov r0, #1
pop {r3, r4, r5, pc}
_0204FF2E:
ldr r0, [r5, #0xc]
ldr r4, [r0, #0]
add r0, r4, #0
add r0, #0x22
ldrb r0, [r0]
cmp r0, #6
beq _0204FF44
cmp r0, #7
bne _0204FF48
mov r0, #4
pop {r3, r4, r5, pc}
_0204FF44:
mov r0, #4
pop {r3, r4, r5, pc}
_0204FF48:
add r0, r4, #0
add r0, #0x2c
add r1, r5, #6
mov r2, #3
bl MI_CpuCopy8
add r0, r4, #0
add r0, #0x22
ldrb r0, [r0]
strb r0, [r5, #5]
add r0, r4, #0
bl sub_020181C4
ldr r0, [r5, #0xc]
mov r1, #0
str r1, [r0, #0]
mov r0, #2
pop {r3, r4, r5, pc}
thumb_func_end sub_0204FF1C
thumb_func_start sub_0204FF6C
sub_0204FF6C: ; 0x0204FF6C
push {r3, r4, r5, r6, r7, lr}
add r7, r1, #0
add r6, r0, #0
ldr r5, [r7, #0xc]
add r0, r2, #0
mov r1, #0x30
bl sub_02018184
mov r1, #0
mov r2, #0x30
add r4, r0, #0
bl MI_CpuFill8
add r0, r5, #0
bl sub_02025E44
str r0, [r4, #4]
add r0, r5, #0
bl sub_0207A268
str r0, [r4, #0]
add r0, r5, #0
bl sub_0207A274
str r0, [r4, #0x1c]
add r0, r5, #0
bl sub_0208C324
str r0, [r4, #0x2c]
mov r0, #1
strb r0, [r4, #0x11]
ldrb r0, [r6, #5]
strb r0, [r4, #0x14]
ldr r0, [r4, #0]
bl sub_0207A0F8
strb r0, [r4, #0x13]
mov r0, #0
strh r0, [r4, #0x18]
strb r0, [r4, #0x12]
add r0, r5, #0
bl sub_0202D79C
str r0, [r4, #0x20]
ldr r1, _0204FFEC ; =0x020EC1F0
add r0, r4, #0
bl sub_0208D720
add r0, r5, #0
bl sub_02025E38
add r1, r0, #0
add r0, r4, #0
bl sub_0208E9C0
ldr r1, _0204FFF0 ; =0x020F410C
add r0, r7, #0
add r2, r4, #0
bl sub_0203CD84
ldr r0, [r6, #0xc]
str r4, [r0, #0]
mov r0, #3
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0204FFEC: .word 0x020EC1F0
_0204FFF0: .word 0x020F410C
thumb_func_end sub_0204FF6C
thumb_func_start sub_0204FFF4
sub_0204FFF4: ; 0x0204FFF4
push {r4, lr}
add r4, r0, #0
add r0, r1, #0
bl sub_020509B4
cmp r0, #0
beq _02050006
mov r0, #3
pop {r4, pc}
_02050006:
ldr r0, [r4, #0xc]
ldr r0, [r0, #0]
ldrb r1, [r0, #0x14]
strb r1, [r4, #5]
bl sub_020181C4
ldr r1, [r4, #0xc]
mov r0, #0
str r0, [r1, #0]
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0204FFF4
.rodata
.global Unk_020EC1F0
Unk_020EC1F0: ; 0x020EC1F0
.incbin "incbin/arm9_rodata.bin", 0x75B0, 0x9

View File

@@ -1,984 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0205C22C.inc"
.text
thumb_func_start sub_0205C22C
sub_0205C22C: ; 0x0205C22C
push {r3, r4, r5, lr}
ldr r1, _0205C298 ; =0x000004E8
add r5, r0, #0
mov r0, #0x1f
bl sub_02018144
add r4, r0, #0
ldr r2, _0205C298 ; =0x000004E8
mov r0, #0
add r1, r4, #0
bl MIi_CpuClearFast
mov r0, #0x4e
str r5, [r4, #0]
mov r1, #1
lsl r0, r0, #4
str r1, [r4, r0]
ldr r0, _0205C29C ; =sub_0205C304
add r1, r4, #0
mov r2, #0xb
bl sub_0200D9E8
str r0, [r4, #4]
add r0, r5, #0
bl sub_0205B770
ldr r1, _0205C2A0 ; =0x000004D4
str r0, [r4, r1]
ldr r0, [r4, r1]
mov r1, #9
ldr r0, [r0, #0xc]
bl sub_020245BC
ldr r1, _0205C2A4 ; =0x000004D8
ldr r2, _0205C2A8 ; =0x00002710
str r0, [r4, r1]
sub r0, r1, #4
ldr r0, [r4, r0]
mov r1, #0x59
ldr r0, [r0, #0x3c]
str r0, [r4, #8]
mov r0, #0xb
bl sub_02017FD4
mov r0, #0x59
bl sub_0205C95C
ldr r1, _0205C2AC ; =0x000004DC
str r0, [r4, r1]
add r0, r4, #0
bl sub_0205C2C8
add r0, r4, #0
pop {r3, r4, r5, pc}
; .align 2, 0
_0205C298: .word 0x000004E8
_0205C29C: .word sub_0205C304
_0205C2A0: .word 0x000004D4
_0205C2A4: .word 0x000004D8
_0205C2A8: .word 0x00002710
_0205C2AC: .word 0x000004DC
thumb_func_end sub_0205C22C
thumb_func_start sub_0205C2B0
sub_0205C2B0: ; 0x0205C2B0
mov r3, #0
mov r1, #3
_0205C2B4:
ldrb r2, [r0, #0xd]
cmp r2, #0
beq _0205C2BC
strb r1, [r0, #0xc]
_0205C2BC:
add r3, r3, #1
add r0, #0x18
cmp r3, #0x33
blt _0205C2B4
bx lr
; .align 2, 0
thumb_func_end sub_0205C2B0
thumb_func_start sub_0205C2C8
sub_0205C2C8: ; 0x0205C2C8
mov r2, #0
add r1, r2, #0
_0205C2CC:
strb r1, [r0, #0xc]
strb r1, [r0, #0xd]
strb r1, [r0, #0xe]
strb r1, [r0, #0xf]
add r2, r2, #1
add r0, #0x18
cmp r2, #0x33
blt _0205C2CC
bx lr
; .align 2, 0
thumb_func_end sub_0205C2C8
thumb_func_start sub_0205C2E0
sub_0205C2E0: ; 0x0205C2E0
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #4]
bl sub_0200DA58
ldr r0, _0205C300 ; =0x000004DC
ldr r0, [r4, r0]
bl sub_0205C970
mov r0, #0x59
bl sub_0201807C
add r0, r4, #0
bl sub_020181C4
pop {r4, pc}
; .align 2, 0
_0205C300: .word 0x000004DC
thumb_func_end sub_0205C2E0
thumb_func_start sub_0205C304
sub_0205C304: ; 0x0205C304
push {r3, r4, r5, lr}
ldr r0, _0205C33C ; =0x000004D4
add r5, r1, #0
ldr r0, [r5, r0]
ldr r4, [r5, #0]
bl sub_020509A4
cmp r0, #0
bne _0205C33A
ldr r3, _0205C33C ; =0x000004D4
add r1, r4, #0
ldr r0, [r5, r3]
ldr r0, [r0, #0x3c]
str r0, [r5, #8]
ldr r2, [r5, r3]
add r3, r3, #4
ldr r2, [r2, #0x38]
ldr r3, [r5, r3]
add r0, r5, #0
bl sub_0205C44C
ldr r1, _0205C33C ; =0x000004D4
add r0, r5, #0
ldr r1, [r5, r1]
ldr r1, [r1, #0x38]
bl sub_0205C51C
_0205C33A:
pop {r3, r4, r5, pc}
; .align 2, 0
_0205C33C: .word 0x000004D4
thumb_func_end sub_0205C304
thumb_func_start sub_0205C340
sub_0205C340: ; 0x0205C340
push {r4, r5, r6, r7, lr}
sub sp, #0x14
mov r5, #0
str r0, [sp]
str r3, [sp, #4]
cmp r2, #0
bne _0205C374
ldr r0, _0205C440 ; =0x020ED570
lsl r1, r1, #1
ldrh r4, [r0, r1]
ldr r0, [sp]
mov r6, #3
add r0, #0xc
str r0, [sp]
_0205C35C:
ldr r0, [sp]
add r1, r4, #0
add r2, r6, #0
bl sub_0205C444
add r5, r5, #1
add r4, r4, #1
cmp r5, #4
blt _0205C35C
add sp, #0x14
mov r0, #0
pop {r4, r5, r6, r7, pc}
_0205C374:
add r0, r2, #0
str r0, [sp, #0xc]
add r0, #0x50
str r0, [sp, #0xc]
add r0, #0x30
str r0, [sp, #0xc]
ldr r0, [r2, #0x50]
mov r2, #0x18
add r3, r1, #0
mul r3, r2
ldr r2, [sp]
add r2, r2, r3
ldr r2, [r2, #0x18]
cmp r0, r2
beq _0205C3B8
ldr r0, _0205C440 ; =0x020ED570
lsl r1, r1, #1
ldrh r4, [r0, r1]
ldr r0, [sp]
mov r6, #3
add r0, #0xc
str r0, [sp]
_0205C3A0:
ldr r0, [sp]
add r1, r4, #0
add r2, r6, #0
bl sub_0205C444
add r5, r5, #1
add r4, r4, #1
cmp r5, #4
blt _0205C3A0
add sp, #0x14
mov r0, #0
pop {r4, r5, r6, r7, pc}
_0205C3B8:
ldr r0, _0205C440 ; =0x020ED570
lsl r1, r1, #1
ldrh r7, [r0, r1]
ldr r0, [sp, #0xc]
add r6, r5, #0
str r0, [sp, #8]
ldr r0, [sp]
str r0, [sp, #0x10]
add r0, #0xc
str r0, [sp, #0x10]
_0205C3CC:
mov r0, #0x18
add r1, r7, #0
mul r1, r0
ldr r0, [sp]
add r4, r0, r1
ldrb r0, [r4, #0xd]
cmp r0, #0
beq _0205C3E6
cmp r0, #2
beq _0205C40C
cmp r0, #4
beq _0205C426
b _0205C42A
_0205C3E6:
ldr r0, [sp, #0xc]
add r1, r0, r6
ldrb r0, [r1, #0x18]
cmp r0, #0
beq _0205C42A
mov r0, #2
strb r0, [r4, #0xc]
ldrb r1, [r1, #0x18]
mov r0, #0x7f
and r0, r1
strb r0, [r4, #0x14]
ldr r1, [sp, #8]
ldr r0, [sp, #4]
ldr r1, [r1, #0]
bl sub_020280E0
strb r0, [r4, #0xe]
mov r5, #1
b _0205C42A
_0205C40C:
ldr r0, [sp, #0xc]
add r0, r0, r6
ldrb r0, [r0, #0x18]
cmp r0, #0
bne _0205C422
ldr r0, [sp, #0x10]
add r1, r7, #0
mov r2, #3
bl sub_0205C444
b _0205C42A
_0205C422:
mov r5, #1
b _0205C42A
_0205C426:
mov r0, #0
strb r0, [r4, #0xc]
_0205C42A:
ldr r0, [sp, #8]
add r6, r6, #1
add r0, r0, #4
add r7, r7, #1
str r0, [sp, #8]
cmp r6, #4
blt _0205C3CC
add r0, r5, #0
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
_0205C440: .word 0x020ED570
thumb_func_end sub_0205C340
thumb_func_start sub_0205C444
sub_0205C444: ; 0x0205C444
mov r3, #0x18
mul r3, r1
strb r2, [r0, r3]
bx lr
thumb_func_end sub_0205C444
thumb_func_start sub_0205C44C
sub_0205C44C: ; 0x0205C44C
push {r4, r5, r6, r7, lr}
sub sp, #0x14
str r0, [sp]
add r5, r0, #0
str r0, [sp, #0x10]
add r0, #0xc
str r1, [sp, #4]
str r3, [sp, #8]
mov r4, #0
str r0, [sp, #0x10]
_0205C460:
ldr r0, [sp, #4]
add r1, r4, #0
bl sub_0205B774
add r6, r0, #0
beq _0205C47A
add r7, r6, #0
add r7, #0x50
add r0, r7, #0
str r0, [sp, #0xc]
add r0, #0x10
str r0, [sp, #0xc]
b _0205C480
_0205C47A:
mov r7, #0
add r0, r7, #0
str r0, [sp, #0xc]
_0205C480:
ldrb r0, [r5, #0xd]
cmp r0, #0
beq _0205C490
cmp r0, #2
beq _0205C4CC
cmp r0, #4
beq _0205C50A
b _0205C50E
_0205C490:
cmp r6, #0
beq _0205C50E
ldr r0, [sp, #0xc]
bl sub_02025F8C
strb r0, [r5, #0x14]
ldr r0, [sp, #0xc]
bl sub_02025F20
add r1, r0, #0
ldr r0, [sp, #8]
bl sub_020280E0
strb r0, [r5, #0xe]
ldr r0, [r7, #0]
ldr r3, [sp, #8]
str r0, [r5, #0x18]
ldr r0, [sp]
add r1, r4, #0
add r2, r6, #0
bl sub_0205C340
cmp r0, #0
beq _0205C4C6
mov r0, #2
strb r0, [r5, #0xc]
b _0205C50E
_0205C4C6:
mov r0, #1
strb r0, [r5, #0xc]
b _0205C50E
_0205C4CC:
cmp r6, #0
bne _0205C4DC
ldr r0, [sp, #0x10]
add r1, r4, #0
mov r2, #3
bl sub_0205C444
b _0205C4EE
_0205C4DC:
ldr r1, [r7, #0]
ldr r0, [r5, #0x18]
cmp r1, r0
beq _0205C4EE
ldr r0, [sp, #0x10]
add r1, r4, #0
mov r2, #3
bl sub_0205C444
_0205C4EE:
ldr r0, [sp]
ldr r3, [sp, #8]
add r1, r4, #0
add r2, r6, #0
bl sub_0205C340
cmp r0, #0
beq _0205C50E
ldrb r0, [r5, #0x15]
cmp r0, #1
bne _0205C50E
mov r0, #3
strb r0, [r5, #0xc]
b _0205C50E
_0205C50A:
mov r0, #0
strb r0, [r5, #0xc]
_0205C50E:
add r4, r4, #1
add r5, #0x18
cmp r4, #0xa
blt _0205C460
add sp, #0x14
pop {r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0205C44C
thumb_func_start sub_0205C51C
sub_0205C51C: ; 0x0205C51C
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x10
str r0, [sp]
ldr r0, [r0, #8]
str r1, [sp, #4]
cmp r0, #0
bne _0205C52E
bl GF_AssertFail
_0205C52E:
ldr r0, [sp]
ldr r0, [r0, #8]
bl sub_0205EABC
str r0, [sp, #0xc]
ldr r0, [sp]
ldr r0, [r0, #8]
bl sub_0205EAC8
ldr r4, [sp]
str r0, [sp, #8]
add r6, r4, #0
mov r7, #0
add r6, #0xc
_0205C54A:
ldr r0, [sp, #4]
add r1, r7, #1
bl sub_0206251C
add r5, r0, #0
bne _0205C55A
bl GF_AssertFail
_0205C55A:
ldrb r0, [r4, #0xd]
cmp r0, #4
bhi _0205C64E
add r0, r0, r0
add r0, pc
ldrh r0, [r0, #6]
lsl r0, r0, #0x10
asr r0, r0, #0x10
add pc, r0
_0205C56C: ; jump table
.short _0205C576 - _0205C56C - 2 ; case 0
.short _0205C596 - _0205C56C - 2 ; case 1
.short _0205C5F6 - _0205C56C - 2 ; case 2
.short _0205C61E - _0205C56C - 2 ; case 3
.short _0205C64A - _0205C56C - 2 ; case 4
_0205C576:
add r0, r5, #0
bl sub_020655F4
cmp r0, #1
bne _0205C64E
ldrb r0, [r4, #0xc]
sub r0, r0, #1
cmp r0, #1
bhi _0205C64E
ldr r2, [sp, #0xc]
ldr r3, [sp, #8]
add r0, r6, #0
add r1, r5, #0
bl sub_0205C6E0
b _0205C64E
_0205C596:
add r0, r5, #0
bl sub_020655F4
cmp r0, #1
bne _0205C64E
ldrb r0, [r4, #0xc]
cmp r0, #3
bne _0205C5B6
mov r0, #0
strb r0, [r4, #0xd]
strb r0, [r4, #0xc]
add r0, r6, #0
mov r1, #1
bl sub_0205C680
b _0205C64E
_0205C5B6:
add r0, r5, #0
bl sub_020656AC
add r0, r5, #0
mov r1, #0
bl sub_02062DB4
ldrb r0, [r4, #0xc]
cmp r0, #1
bne _0205C5EC
ldrb r0, [r4, #0x15]
cmp r0, #0
bne _0205C5EC
add r0, r5, #0
mov r1, #3
bl sub_020633A8
add r0, r5, #0
mov r1, #1
bl sub_020629FC
add r0, r5, #0
mov r1, #1
bl sub_02062A04
mov r0, #1
strb r0, [r4, #0x15]
_0205C5EC:
mov r0, #2
strb r0, [r4, #0xd]
mov r0, #0
strb r0, [r4, #0xc]
b _0205C64E
_0205C5F6:
add r0, r5, #0
bl sub_020655F4
cmp r0, #1
bne _0205C64E
add r0, r6, #0
add r1, r5, #0
bl sub_0205C7BC
ldrb r0, [r4, #0xc]
cmp r0, #3
bne _0205C616
add r0, r6, #0
add r1, r5, #0
bl sub_0205C788
_0205C616:
add r0, r6, #0
bl sub_0205C6BC
b _0205C64E
_0205C61E:
add r0, r5, #0
bl sub_020655F4
cmp r0, #1
bne _0205C64E
add r0, r5, #0
bl sub_020656AC
mov r0, #4
strb r0, [r4, #0xd]
mov r0, #0
strb r0, [r4, #0xc]
strb r0, [r4, #0x15]
add r0, r5, #0
mov r1, #1
bl sub_02062D64
add r0, r5, #0
mov r1, #0
bl sub_02062D80
b _0205C64E
_0205C64A:
mov r0, #0
strb r0, [r4, #0xd]
_0205C64E:
add r7, r7, #1
add r4, #0x18
add r6, #0x18
cmp r7, #0x32
bge _0205C65A
b _0205C54A
_0205C65A:
ldr r0, [sp]
ldr r0, [r0, #8]
bl sub_0205EB3C
add r1, r0, #0
ldr r2, _0205C67C ; =0x000004BC
ldr r0, [sp]
add r0, r0, r2
bl sub_0205C7BC
ldr r1, _0205C67C ; =0x000004BC
ldr r0, [sp]
add r0, r0, r1
bl sub_0205C6BC
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0205C67C: .word 0x000004BC
thumb_func_end sub_0205C51C
thumb_func_start sub_0205C680
sub_0205C680: ; 0x0205C680
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, [r5, #0x10]
add r4, r1, #0
cmp r0, #0
beq _0205C69E
bl sub_020714F0
cmp r0, #0
beq _0205C69A
ldr r0, [r5, #0x10]
bl sub_0207136C
_0205C69A:
mov r0, #0
str r0, [r5, #0x10]
_0205C69E:
cmp r4, #0
beq _0205C6BA
ldr r0, [r5, #0x14]
cmp r0, #0
beq _0205C6BA
bl sub_020714F0
cmp r0, #0
beq _0205C6B6
ldr r0, [r5, #0x14]
bl sub_0207136C
_0205C6B6:
mov r0, #0
str r0, [r5, #0x14]
_0205C6BA:
pop {r3, r4, r5, pc}
thumb_func_end sub_0205C680
thumb_func_start sub_0205C6BC
sub_0205C6BC: ; 0x0205C6BC
push {r4, lr}
add r4, r0, #0
ldrb r1, [r4, #4]
cmp r1, #0
beq _0205C6DC
ldrh r1, [r4, #6]
sub r1, r1, #1
strh r1, [r4, #6]
ldrh r1, [r4, #6]
cmp r1, #0
bne _0205C6DC
mov r1, #0
bl sub_0205C680
mov r0, #0
strb r0, [r4, #4]
_0205C6DC:
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0205C6BC
thumb_func_start sub_0205C6E0
sub_0205C6E0: ; 0x0205C6E0
push {r3, r4, r5, r6, r7, lr}
sub sp, #0x10
add r4, r1, #0
add r5, r0, #0
add r0, r4, #0
str r2, [sp, #4]
str r3, [sp, #8]
bl sub_02062FF0
add r7, r0, #0
add r0, r4, #0
bl sub_02062FF8
str r0, [sp, #0xc]
add r0, r4, #0
bl sub_02063000
add r6, r0, #0
ldr r0, [sp, #4]
cmp r7, r0
bne _0205C710
ldr r0, [sp, #8]
cmp r6, r0
beq _0205C780
_0205C710:
ldr r0, _0205C784 ; =0x0000064F
bl sub_02005748
ldrb r1, [r5, #8]
add r0, r4, #0
bl sub_02061AD4
add r0, r5, #0
mov r1, #0
bl sub_0205C680
mov r0, #1
str r0, [sp]
ldr r2, [sp, #0xc]
add r0, r4, #0
add r1, r7, #0
add r3, r6, #0
bl sub_02063340
add r0, r4, #0
mov r1, #1
bl sub_0206296C
add r0, r4, #0
mov r1, #0x44
bl sub_02065638
add r0, r4, #0
mov r1, #0
bl sub_02062D64
add r0, r4, #0
mov r1, #1
bl sub_02062D80
mov r1, #1
strb r1, [r5, #1]
ldrb r0, [r5, #2]
cmp r0, #0
beq _0205C780
cmp r0, #1
bne _0205C76E
add r0, r4, #0
bl ov5_021F16D4
str r0, [r5, #0x14]
b _0205C77C
_0205C76E:
cmp r0, #2
blo _0205C77C
add r0, r4, #0
mov r1, #2
bl ov5_021F16D4
str r0, [r5, #0x14]
_0205C77C:
mov r0, #0
strb r0, [r5, #2]
_0205C780:
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0205C784: .word 0x0000064F
thumb_func_end sub_0205C6E0
thumb_func_start sub_0205C788
sub_0205C788: ; 0x0205C788
push {r3, r4, r5, lr}
add r5, r1, #0
add r4, r0, #0
add r0, r5, #0
mov r1, #0x43
bl sub_02065638
add r0, r5, #0
mov r1, #1
bl sub_02062DB4
add r0, r5, #0
mov r1, #0
bl sub_020633A8
add r0, r4, #0
mov r1, #1
bl sub_0205C680
mov r0, #0
strb r0, [r4, #4]
strh r0, [r4, #6]
mov r0, #3
strb r0, [r4, #1]
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0205C788
thumb_func_start sub_0205C7BC
sub_0205C7BC: ; 0x0205C7BC
push {r4, lr}
add r4, r0, #0
ldrb r0, [r4, #3]
cmp r0, #1
bne _0205C7E0
ldrb r0, [r4, #4]
cmp r0, #0
bne _0205C7E0
add r0, r1, #0
bl ov5_021F6094
str r0, [r4, #0x10]
mov r0, #0x1e
strh r0, [r4, #6]
mov r0, #0
strb r0, [r4, #3]
mov r0, #1
strb r0, [r4, #4]
_0205C7E0:
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0205C7BC
thumb_func_start sub_0205C7E4
sub_0205C7E4: ; 0x0205C7E4
push {r3, r4, r5, r6, r7, lr}
add r5, r1, #0
add r6, r2, #0
add r7, r0, #0
cmp r5, r6
bge _0205C81E
_0205C7F0:
add r0, r7, #0
add r1, r5, #0
bl sub_0206251C
add r4, r0, #0
bne _0205C800
bl GF_AssertFail
_0205C800:
add r0, r4, #0
mov r1, #1
bl sub_02062D64
add r0, r4, #0
mov r1, #0
bl sub_02062D80
add r0, r4, #0
mov r1, #1
bl sub_02062DB4
add r5, r5, #1
cmp r5, r6
blt _0205C7F0
_0205C81E:
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0205C7E4
thumb_func_start sub_0205C820
sub_0205C820: ; 0x0205C820
push {r3, r4, r5, r6, r7, lr}
add r5, r1, #0
mov r1, #0
add r7, r0, #0
bl sub_0206251C
add r4, r0, #0
bne _0205C834
bl GF_AssertFail
_0205C834:
add r0, r4, #0
bl sub_020655F4
cmp r0, #1
bne _0205C8DA
bl sub_02036AA0
cmp r0, #0
bne _0205C84E
bl sub_02036A68
cmp r0, #0
beq _0205C8D0
_0205C84E:
mov r6, #0
add r5, #0xc
_0205C852:
ldrb r0, [r5, #1]
cmp r0, #1
bne _0205C8BC
add r0, r7, #0
add r1, r6, #1
bl sub_0206251C
add r4, r0, #0
bne _0205C868
bl GF_AssertFail
_0205C868:
ldrb r1, [r5, #8]
add r0, r4, #0
bl sub_02061AD4
add r0, r4, #0
mov r1, #1
bl sub_0206296C
add r0, r4, #0
mov r1, #0x44
bl sub_02065638
add r0, r4, #0
mov r1, #0
bl sub_02062D64
add r0, r4, #0
mov r1, #1
bl sub_02062D80
mov r0, #1
strb r0, [r5, #1]
ldrb r0, [r5, #2]
cmp r0, #0
beq _0205C8BC
cmp r0, #1
bne _0205C8AA
add r0, r4, #0
mov r1, #1
bl ov5_021F16D4
str r0, [r5, #0x14]
b _0205C8B8
_0205C8AA:
cmp r0, #2
blo _0205C8B8
add r0, r4, #0
mov r1, #2
bl ov5_021F16D4
str r0, [r5, #0x14]
_0205C8B8:
mov r0, #0
strb r0, [r5, #2]
_0205C8BC:
add r6, r6, #1
add r5, #0x18
cmp r6, #0xa
blt _0205C852
add r0, r7, #0
mov r1, #0xb
mov r2, #0x33
bl sub_0205C7E4
pop {r3, r4, r5, r6, r7, pc}
_0205C8D0:
add r0, r7, #0
mov r1, #1
mov r2, #0x33
bl sub_0205C7E4
_0205C8DA:
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end sub_0205C820
thumb_func_start sub_0205C8DC
sub_0205C8DC: ; 0x0205C8DC
push {r4, lr}
add r4, r0, #0
mov r0, #8
mov r1, #0x59
bl sub_02023790
str r0, [r4, #0]
mov r1, #0
add r0, r4, #0
str r1, [r4, #4]
add r0, #0x14
str r1, [r4, #8]
bl sub_02014A9C
mov r0, #0
str r0, [r4, #0x10]
str r0, [r4, #0xc]
pop {r4, pc}
thumb_func_end sub_0205C8DC
thumb_func_start sub_0205C900
sub_0205C900: ; 0x0205C900
push {r4, r5, r6, lr}
add r6, r0, #0
mov r4, #0
add r5, r6, #0
_0205C908:
add r0, r5, #0
bl sub_0205C8DC
add r4, r4, #1
add r5, #0x1c
cmp r4, #0x1e
blt _0205C908
mov r0, #0xd2
mov r1, #0
lsl r0, r0, #2
str r1, [r6, r0]
add r0, r0, #4
str r1, [r6, r0]
pop {r4, r5, r6, pc}
thumb_func_end sub_0205C900
thumb_func_start sub_0205C924
sub_0205C924: ; 0x0205C924
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0]
bl sub_020181C4
ldr r0, [r4, #4]
cmp r0, #0
beq _0205C938
bl sub_020237BC
_0205C938:
ldr r0, [r4, #8]
cmp r0, #0
beq _0205C942
bl sub_020237BC
_0205C942:
pop {r4, pc}
thumb_func_end sub_0205C924
thumb_func_start sub_0205C944
sub_0205C944: ; 0x0205C944
push {r3, r4, r5, lr}
add r5, r0, #0
mov r4, #0
_0205C94A:
add r0, r5, #0
bl sub_0205C924
add r4, r4, #1
add r5, #0x1c
cmp r4, #0x1e
blt _0205C94A
pop {r3, r4, r5, pc}
; .align 2, 0
thumb_func_end sub_0205C944
thumb_func_start sub_0205C95C
sub_0205C95C: ; 0x0205C95C
push {r4, lr}
mov r1, #0x35
lsl r1, r1, #4
bl sub_02018144
add r4, r0, #0
bl sub_0205C900
add r0, r4, #0
pop {r4, pc}
thumb_func_end sub_0205C95C
thumb_func_start sub_0205C970
sub_0205C970: ; 0x0205C970
push {r4, lr}
add r4, r0, #0
bl sub_0205C944
add r0, r4, #0
bl sub_020181C4
pop {r4, pc}
thumb_func_end sub_0205C970

View File

@@ -1,179 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0205C980.inc"
.text
thumb_func_start sub_0205C980
sub_0205C980: ; 0x0205C980
push {r3, r4, r5, r6, r7, lr}
add r7, r2, #0
lsl r0, r0, #0x1d
ldr r2, _0205C9B4 ; =0x020ED770
lsr r0, r0, #0x19
add r5, r2, r0
lsl r2, r1, #3
mov r1, #0xc
ldr r0, _0205C9B8 ; =0x020ED7F0
mul r1, r2
mov r4, #0
add r6, r0, r1
_0205C998:
ldr r3, [r5, #0]
mov r2, #0xc
mul r2, r3
add r2, r6, r2
ldr r2, [r2, #4]
add r0, r7, #0
add r1, r4, #0
bl sub_0200B960
add r4, r4, #1
add r5, r5, #4
cmp r4, #4
blt _0205C998
pop {r3, r4, r5, r6, r7, pc}
; .align 2, 0
_0205C9B4: .word 0x020ED770
_0205C9B8: .word 0x020ED7F0
thumb_func_end sub_0205C980
thumb_func_start sub_0205C9BC
sub_0205C9BC: ; 0x0205C9BC
lsl r0, r0, #0x1d
lsr r3, r0, #0x19
ldr r0, _0205C9D8 ; =0x020ED770
lsl r2, r2, #2
add r0, r0, r3
ldr r0, [r2, r0]
lsl r1, r1, #3
add r1, r1, r0
mov r0, #0xc
add r2, r1, #0
mul r2, r0
ldr r0, _0205C9DC ; =0x020ED7F0
ldr r0, [r0, r2]
bx lr
; .align 2, 0
_0205C9D8: .word 0x020ED770
_0205C9DC: .word 0x020ED7F0
thumb_func_end sub_0205C9BC
thumb_func_start sub_0205C9E0
sub_0205C9E0: ; 0x0205C9E0
push {r3, r4}
lsl r4, r0, #3
mov r0, #0xc
ldr r2, _0205CA08 ; =0x020ED7F0
mul r0, r4
mov r3, #0
add r2, r2, r0
_0205C9EE:
ldr r0, [r2, #0]
cmp r1, r0
bne _0205C9FA
add r0, r3, r4
pop {r3, r4}
bx lr
_0205C9FA:
add r3, r3, #1
add r2, #0xc
cmp r3, #8
blt _0205C9EE
mov r0, #0
pop {r3, r4}
bx lr
; .align 2, 0
_0205CA08: .word 0x020ED7F0
thumb_func_end sub_0205C9E0
thumb_func_start sub_0205CA0C
sub_0205CA0C: ; 0x0205CA0C
ldr r3, _0205CA10 ; =sub_0205C9E0
bx r3
; .align 2, 0
_0205CA10: .word sub_0205C9E0
thumb_func_end sub_0205CA0C
thumb_func_start sub_0205CA14
sub_0205CA14: ; 0x0205CA14
push {r4, lr}
add r4, r2, #0
bl sub_0205C9E0
cmp r4, #0
beq _0205CA42
cmp r4, #1
beq _0205CA32
cmp r4, #2
bne _0205CA3C
mov r1, #0xc
mul r1, r0
ldr r0, _0205CA44 ; =0x020ED7F4
ldr r0, [r0, r1]
pop {r4, pc}
_0205CA32:
mov r1, #0xc
mul r1, r0
ldr r0, _0205CA48 ; =0x020ED7F8
ldr r0, [r0, r1]
pop {r4, pc}
_0205CA3C:
bl GF_AssertFail
mov r0, #0
_0205CA42:
pop {r4, pc}
; .align 2, 0
_0205CA44: .word 0x020ED7F4
_0205CA48: .word 0x020ED7F8
thumb_func_end sub_0205CA14
thumb_func_start sub_0205CA4C
sub_0205CA4C: ; 0x0205CA4C
push {r3, r4, r5, r6, lr}
sub sp, #4
add r5, r0, #0
mov r0, #0x56
mov r1, #7
add r2, sp, #0
add r3, r5, #0
bl sub_02006F88
mov r1, #9
add r4, r0, #0
add r0, r5, #0
lsl r1, r1, #6
bl sub_02018144
add r5, r0, #0
ldr r0, [sp]
mov r2, #0
ldr r3, [r0, #0xc]
mov r0, #1
add r6, r5, #0
lsl r0, r0, #8
_0205CA78:
ldrh r1, [r3]
add r2, r2, #1
add r3, r3, #2
strh r1, [r6]
add r6, r6, #2
cmp r2, r0
blt _0205CA78
add r0, r4, #0
bl sub_020181C4
add r0, r5, #0
add sp, #4
pop {r3, r4, r5, r6, pc}
; .align 2, 0
thumb_func_end sub_0205CA4C
.rodata
.global Unk_020ED770
Unk_020ED770: ; 0x020ED770
.incbin "incbin/arm9_rodata.bin", 0x8B30, 0x8BB0 - 0x8B30
.global Unk_020ED7F0
Unk_020ED7F0: ; 0x020ED7F0
.incbin "incbin/arm9_rodata.bin", 0x8BB0, 0xC0

View File

@@ -1,276 +0,0 @@
.include "macros/function.inc"
.include "include/unk_0205D8CC.inc"
.text
thumb_func_start sub_0205D8CC
sub_0205D8CC: ; 0x0205D8CC
push {r4, lr}
add r4, r0, #0
cmp r1, #1
bne _0205D8D8
bl sub_0201D710
_0205D8D8:
mov r1, #0x1a
add r0, r4, #0
lsl r1, r1, #4
mov r2, #4
bl sub_02002E7C
mov r1, #6
add r0, r4, #0
lsl r1, r1, #6
mov r2, #4
bl sub_02002E98
pop {r4, pc}
; .align 2, 0
thumb_func_end sub_0205D8CC
thumb_func_start sub_0205D8F4
sub_0205D8F4: ; 0x0205D8F4
push {lr}
sub sp, #0x14
cmp r2, #3
bne _0205D91C
mov r2, #0x13
str r2, [sp]
mov r2, #0x1b
str r2, [sp, #4]
mov r2, #4
str r2, [sp, #8]
mov r2, #0xc
str r2, [sp, #0xc]
ldr r2, _0205D940 ; =0x00000237
mov r3, #2
str r2, [sp, #0x10]
mov r2, #3
bl sub_0201A7E8
add sp, #0x14
pop {pc}
_0205D91C:
mov r2, #0x13
str r2, [sp]
mov r2, #0x1b
str r2, [sp, #4]
mov r2, #4
str r2, [sp, #8]
mov r2, #0xc
str r2, [sp, #0xc]
mov r2, #0x65
lsl r2, r2, #2
str r2, [sp, #0x10]
mov r2, #7
mov r3, #2
bl sub_0201A7E8
add sp, #0x14
pop {pc}
nop
_0205D940: .word 0x00000237
thumb_func_end sub_0205D8F4
thumb_func_start sub_0205D944
sub_0205D944: ; 0x0205D944
push {r4, r5, r6, lr}
sub sp, #8
add r4, r1, #0
add r5, r0, #0
bl sub_0201C290
add r6, r0, #0
add r0, r4, #0
bl sub_02027B50
lsl r0, r0, #0x18
lsr r0, r0, #0x18
str r0, [sp]
mov r0, #4
str r0, [sp, #4]
ldr r0, [r5, #0]
ldr r2, _0205D984 ; =0x000003E2
add r1, r6, #0
mov r3, #0xa
bl sub_0200DD0C
add r0, r5, #0
bl sub_0205D988
ldr r2, _0205D984 ; =0x000003E2
add r0, r5, #0
mov r1, #0
mov r3, #0xa
bl sub_0200E060
add sp, #8
pop {r4, r5, r6, pc}
; .align 2, 0
_0205D984: .word 0x000003E2
thumb_func_end sub_0205D944
thumb_func_start sub_0205D988
sub_0205D988: ; 0x0205D988
ldr r3, _0205D990 ; =sub_0201ADA4
mov r1, #0xf
bx r3
nop
_0205D990: .word sub_0201ADA4
thumb_func_end sub_0205D988
thumb_func_start sub_0205D994
sub_0205D994: ; 0x0205D994
push {r3, r4, r5, r6, lr}
sub sp, #0xc
add r5, r0, #0
add r0, r3, #0
add r4, r1, #0
add r6, r2, #0
bl sub_02002AC8
mov r0, #0
bl sub_02002AE4
mov r0, #0
bl sub_02002B20
add r0, r6, #0
bl sub_02027AC0
mov r3, #0
str r3, [sp]
str r0, [sp, #4]
add r0, r5, #0
mov r1, #1
add r2, r4, #0
str r3, [sp, #8]
bl sub_0201D738
add sp, #0xc
pop {r3, r4, r5, r6, pc}
thumb_func_end sub_0205D994
thumb_func_start sub_0205D9CC
sub_0205D9CC: ; 0x0205D9CC
push {r4, r5, r6, r7, lr}
sub sp, #0xc
add r5, r0, #0
add r0, sp, #0x10
ldrb r0, [r0, #0x10]
add r6, r1, #0
add r7, r2, #0
add r4, r3, #0
bl sub_02002AC8
ldr r0, [sp, #0x24]
bl sub_02002AE4
mov r0, #0
bl sub_02002B20
mov r3, #0
str r3, [sp]
str r4, [sp, #4]
add r0, r5, #0
add r1, r7, #0
add r2, r6, #0
str r3, [sp, #8]
bl sub_0201D738
add sp, #0xc
pop {r4, r5, r6, r7, pc}
; .align 2, 0
thumb_func_end sub_0205D9CC
thumb_func_start sub_0205DA04
sub_0205DA04: ; 0x0205DA04
push {r3, lr}
bl sub_0201D724
cmp r0, #0
bne _0205DA12
mov r0, #1
b _0205DA14
_0205DA12:
mov r0, #0
_0205DA14:
lsl r0, r0, #0x18
lsr r0, r0, #0x18
pop {r3, pc}
; .align 2, 0
thumb_func_end sub_0205DA04
thumb_func_start sub_0205DA1C
sub_0205DA1C: ; 0x0205DA1C
push {r4, r5, lr}
sub sp, #0x14
cmp r2, #1
bhi _0205DA2A
mov r4, #9
mov r5, #0x14
b _0205DA2E
_0205DA2A:
mov r4, #2
mov r5, #0x1b
_0205DA2E:
cmp r3, #3
bne _0205DA56
mov r2, #0x13
str r2, [sp]
lsl r2, r5, #0x18
lsr r2, r2, #0x18
str r2, [sp, #4]
mov r2, #4
str r2, [sp, #8]
mov r2, #9
str r2, [sp, #0xc]
ldr r2, _0205DA7C ; =0x00000237
lsl r3, r4, #0x18
str r2, [sp, #0x10]
mov r2, #3
lsr r3, r3, #0x18
bl sub_0201A7E8
add sp, #0x14
pop {r4, r5, pc}
_0205DA56:
mov r2, #0x13
str r2, [sp]
lsl r2, r5, #0x18
lsr r2, r2, #0x18
str r2, [sp, #4]
mov r2, #4
str r2, [sp, #8]
mov r2, #9
str r2, [sp, #0xc]
mov r2, #0x65
lsl r2, r2, #2
lsl r3, r4, #0x18
str r2, [sp, #0x10]
mov r2, #7
lsr r3, r3, #0x18
bl sub_0201A7E8
add sp, #0x14
pop {r4, r5, pc}
; .align 2, 0
_0205DA7C: .word 0x00000237
thumb_func_end sub_0205DA1C
thumb_func_start sub_0205DA80
sub_0205DA80: ; 0x0205DA80
push {r3, r4, r5, r6, lr}
sub sp, #0xc
add r4, r1, #0
add r5, r0, #0
add r6, r2, #0
bl sub_0201C290
add r1, r0, #0
lsl r0, r4, #0x18
lsr r0, r0, #0x18
str r0, [sp]
str r6, [sp, #4]
mov r0, #4
str r0, [sp, #8]
ldr r0, [r5, #0]
ldr r2, _0205DAC4 ; =0x000002A3
mov r3, #9
bl sub_0200E2A4
add r0, r5, #0
mov r1, #0xf
bl sub_0201ADA4
lsl r0, r4, #0x18
lsr r0, r0, #0x18
str r0, [sp]
ldr r2, _0205DAC4 ; =0x000002A3
add r0, r5, #0
mov r1, #0
mov r3, #9
bl sub_0200E69C
add sp, #0xc
pop {r3, r4, r5, r6, pc}
; .align 2, 0
_0205DAC4: .word 0x000002A3
thumb_func_end sub_0205DA80

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -187,25 +187,25 @@ Static main
Object asm/unk_020494DC.o
Object asm/unk_02049D08.o
Object asm/unk_0204AEE8.o
Object asm/unk_0204B64C.o
Object src/unk_0204B64C.o
Object asm/unk_0204B830.o
Object asm/unk_0204C500.o
Object asm/unk_0204C6C8.o
Object asm/unk_0204C8F0.o
Object asm/unk_0204CA84.o
Object asm/unk_0204CDDC.o
Object asm/unk_0204CFFC.o
Object asm/unk_0204E240.o
Object asm/unk_0204E378.o
Object src/unk_0204C500.o
Object src/unk_0204C6C8.o
Object src/unk_0204C8F0.o
Object src/unk_0204CA84.o
Object src/unk_0204CDDC.o
Object src/unk_0204CFFC.o
Object src/unk_0204E240.o
Object src/unk_0204E378.o
Object asm/unk_0204E3CC.o
Object asm/unk_0204E75C.o
Object asm/unk_0204E974.o
Object asm/unk_0204EDA4.o
Object asm/unk_0204F02C.o
Object asm/unk_0204F04C.o
Object asm/unk_0204F13C.o
Object asm/unk_0204FA34.o
Object asm/unk_0204FAB4.o
Object src/unk_0204E75C.o
Object src/unk_0204E974.o
Object src/unk_0204EDA4.o
Object src/unk_0204F02C.o
Object src/unk_0204F04C.o
Object src/unk_0204F13C.o
Object src/unk_0204FA34.o
Object src/unk_0204FAB4.o
Object asm/unk_0205001C.o
Object asm/unk_0205003C.o
Object asm/unk_02050548.o
@@ -236,14 +236,14 @@ Static main
Object asm/unk_0205964C.o
Object asm/unk_0205A0D8.o
Object asm/unk_0205B33C.o
Object asm/unk_0205C22C.o
Object asm/unk_0205C980.o
Object src/unk_0205C22C.o
Object src/unk_0205C980.o
Object asm/unk_0205CA94.o
Object asm/unk_0205D8CC.o
Object asm/unk_0205DAC8.o
Object src/unk_0205D8CC.o
Object src/unk_0205DAC8.o
Object asm/unk_0205DFC4.o
Object asm/unk_0205E7D0.o
Object asm/unk_0205F180.o
Object src/unk_0205F180.o
Object asm/unk_02061804.o
Object src/unk_020EDBAC.o
Object asm/unk_02063400.o
@@ -257,7 +257,7 @@ Static main
Object asm/unk_0206940C.o
Object asm/unk_02069BE0.o
Object asm/unk_0206A780.o
Object asm/unk_0206A8DC.o
Object src/unk_0206A8DC.o
Object asm/unk_0206AFE0.o
Object asm/unk_0206B70C.o
Object asm/unk_0206B9D8.o

112
src/unk_0204B64C.c Normal file
View File

@@ -0,0 +1,112 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0202CD88_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_02061AB4_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0202CD50.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0204B64C.h"
#include "unk_02055C50.h"
BOOL sub_0204B64C (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0;
u16 * v1 = inline_0204FCAC(param0);
v0 = sub_0203F098(param0->unk_34, 10);
*v1 = sub_02055F00(param0->unk_34, *v0);
return 0;
}
BOOL sub_0204B680 (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
u16 * v1 = inline_0204FCAC(param0);
*v1 = sub_02055F40(param0->unk_34, *v0);
return 0;
}
BOOL sub_0204B6B4 (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
u16 * v1 = inline_0204FCAC(param0);
*v1 = sub_02055F64(param0->unk_34, *v0);
return 0;
}
BOOL sub_0204B6E8 (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
u16 * v1 = inline_0204FCAC(param0);
*v1 = sub_02055F88(param0->unk_34, *v0);
return 0;
}
BOOL sub_0204B71C (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
u16 * v1 = inline_0204FCAC(param0);
*v1 = sub_02055FA8(param0->unk_34, *v0);
return 0;
}
BOOL sub_0204B750 (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
u16 v1 = inline_02049538(param0);
sub_02055E80(param0->unk_34, *v0, v1);
return 0;
}
BOOL sub_0204B784 (UnkStruct_0203E724 * param0)
{
UnkStruct_02061AB4 ** v0 = sub_0203F098(param0->unk_34, 10);
UnkStruct_0202CD88 * v1 = sub_0202CD88(param0->unk_34->unk_0C);
u16 v2 = inline_02049538(param0);
sub_02055EAC(param0->unk_34, *v0, v2);
sub_0202CF28(v1, (1 + 3));
return 0;
}
BOOL sub_0204B7CC (UnkStruct_0203E724 * param0)
{
switch (sub_0203E838(param0)) {
case 0:
sub_020562AC(param0->unk_34);
break;
case 1:
sub_020562D8(param0->unk_34);
break;
default:
GF_ASSERT(0);
}
return 1;
}
BOOL sub_0204B7FC (UnkStruct_0203E724 * param0)
{
u16 v0;
UnkStruct_0202CD88 * v1 = sub_0202CD88(param0->unk_34->unk_0C);
UnkStruct_02061AB4 ** v2 = sub_0203F098(param0->unk_34, 10);
sub_02055E00(param0->unk_34, *v2);
sub_0202CFEC(v1, 0);
return 0;
}

109
src/unk_0204C500.c Normal file
View File

@@ -0,0 +1,109 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_02024440_decl.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_02026324_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_020507E4_decl.h"
#include "struct_decls/struct_02073C74_decl.h"
#include "struct_decls/struct_020797DC_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_02017E74.h"
#include "unk_0202440C.h"
#include "unk_02025E08.h"
#include "unk_0202631C.h"
#include "unk_0202EEC0.h"
#include "unk_0202F180.h"
#include "unk_0204C500.h"
#include "unk_020507CC.h"
#include "unk_020562F8.h"
#include "unk_0206A8DC.h"
#include "unk_02073C2C.h"
#include "unk_020797C8.h"
#include "unk_02092494.h"
BOOL sub_0204C500 (UnkStruct_0203E724 * param0)
{
UnkStruct_020507E4 * v0 = sub_020507E4(param0->unk_34->unk_0C);
u16 v1 = inline_02049538(param0);
if (v1 == 0) {
sub_0206AE6C(v0);
sub_020562F8(param0->unk_34);
} else if (v1 == 1) {
sub_0206AE7C(v0);
sub_02056328(param0->unk_34);
} else {
GF_ASSERT(0);
}
return 0;
}
BOOL sub_0204C554 (UnkStruct_0203E724 * param0)
{
UnkStruct_02024440 * v0 = sub_02024440(param0->unk_34->unk_0C);
UnkStruct_02073C74 * v1 = sub_02073C74(32);
u16 * v2 = inline_0204FCAC(param0);
if (sub_0202F028(v0) == 6) {
*v2 = 1;
} else {
*v2 = 0;
}
sub_020181C4(v1);
return 0;
}
BOOL sub_0204C59C (UnkStruct_0203E724 * param0)
{
UnkStruct_02024440 * v0 = sub_02024440(param0->unk_34->unk_0C);
UnkStruct_020797DC * v1 = sub_02024420(param0->unk_34->unk_0C);
UnkStruct_02073C74 * v2 = sub_02073C74(32);
UnkStruct_02025E6C * v3 = sub_02025E38(param0->unk_34->unk_0C);
UnkStruct_02026324 * v4 = sub_02027560(param0->unk_34->unk_0C);
BOOL v5;
int v6;
for (v6 = 0; v6 < 6; v6++) {
sub_0202F000(v0, v6, v2);
sub_0209304C(v2, v3, 2, 0, 32);
v5 = sub_02079868(v1, sub_02076B10(v2));
GF_ASSERT(v5);
sub_0202F180(param0->unk_34->unk_0C, v2);
}
sub_020181C4(v2);
sub_0202EF04(v0);
return 0;
}
BOOL sub_0204C638 (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 * v1 = inline_0204FCAC(param0);
switch (v0) {
case 0:
*v1 = sub_020563D0(param0->unk_34);
break;
case 1:
*v1 = sub_020563E0(param0->unk_34);
break;
case 2:
*v1 = sub_020563F0(param0->unk_34);
break;
case 3:
*v1 = sub_020563D0(param0->unk_34) + sub_020563F0(param0->unk_34) + sub_020563E0(param0->unk_34);
break;
}
return 0;
}

162
src/unk_0204C6C8.c Normal file
View File

@@ -0,0 +1,162 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_02025E50_decl.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "struct_defs/struct_0205AA50.h"
#include "unk_02025E08.h"
#include "unk_0202B594.h"
#include "unk_0203CC84.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0204C6C8.h"
#include "overlay005/ov5_021DC018.h"
BOOL sub_0204C6C8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
UnkStruct_0205AA50 ** v3;
v3 = sub_0203F098(v0, 38);
*v3 = ov5_021DD020(param0->unk_34, v1, v2);
return 0;
}
BOOL sub_0204C718 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_0205AA50 ** v1 = sub_0203F098(v0, 38);
ov5_021DD084(*v1);
return 0;
}
BOOL sub_0204C730 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_0205AA50 ** v1 = sub_0203F098(v0, 38);
ov5_021DD098(param0->unk_34, *v1);
return 0;
}
BOOL sub_0204C750 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02025E50 * v2 = sub_02025E50(v1);
u16 * v3;
v3 = inline_0204FCAC(param0);
*v3 = (u16)sub_0202B5B4(v2);
return 0;
}
BOOL sub_0204C780 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02025E50 * v2 = sub_02025E50(v1);
u16 v3;
v3 = inline_02049538(param0);
sub_0202B5B8(v2, v3);
return 0;
}
BOOL sub_0204C7AC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02025E50 * v2 = sub_02025E50(v1);
u16 v3;
v3 = inline_02049538(param0);
sub_0202B5F0(v2, v3);
return 0;
}
BOOL sub_0204C7D8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02025E50 * v2 = sub_02025E50(v1);
u16 * v3 = inline_0204FCAC(param0);
u16 v4;
v4 = *v3;
sub_0202B5F0(v2, v4);
return 0;
}
BOOL sub_0204C808 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02025E6C * v1 = sub_02025E38(sub_0203D174(param0->unk_34));
UnkStruct_021C0794 * v2 = v0->unk_0C;
UnkStruct_02025E50 * v3 = sub_02025E50(v2);
u32 v4, v5;
u16 * v6 = inline_0204FCAC(param0);
v4 = sub_0203E850(param0);
v5 = sub_0202B5B4(v3);
if (v5 < v4) {
*v6 = 0;
} else {
*v6 = 1;
}
return 0;
}
BOOL sub_0204C854 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02025E6C * v1 = sub_02025E38(sub_0203D174(param0->unk_34));
UnkStruct_021C0794 * v2 = v0->unk_0C;
UnkStruct_02025E50 * v3 = sub_02025E50(v2);
u16 * v4 = inline_0204FCAC(param0);
u16 * v5 = inline_0204FCAC(param0);
u32 v6, v7;
v6 = *v5;
v7 = sub_0202B5B4(v3);
if (v7 < v6) {
*v4 = 0;
} else {
*v4 = 1;
}
return 0;
}
BOOL sub_0204C8AC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02025E50 * v2 = sub_02025E50(v1);
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
*v3 = sub_0202B5D8(v2, v4);
return 0;
}

122
src/unk_0204C8F0.c Normal file
View File

@@ -0,0 +1,122 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "struct_defs/struct_0205AA50.h"
#include "unk_02025E08.h"
#include "unk_02025E68.h"
#include "unk_0203CC84.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0204C8F0.h"
#include "overlay005/ov5_021DC018.h"
BOOL sub_0204C8F0 (UnkStruct_0203E724 * param0)
{
UnkStruct_02025E6C * v0 = sub_02025E38(sub_0203D174(param0->unk_34));
u32 v1;
v1 = sub_0203E850(param0);
sub_02025F94(v0, v1);
return 0;
}
BOOL sub_0204C914 (UnkStruct_0203E724 * param0)
{
UnkStruct_02025E6C * v0 = sub_02025E38(sub_0203D174(param0->unk_34));
u32 v1;
v1 = sub_0203E850(param0);
sub_02025FB8(v0, v1);
return 0;
}
BOOL sub_0204C938 (UnkStruct_0203E724 * param0)
{
UnkStruct_02025E6C * v0 = sub_02025E38(sub_0203D174(param0->unk_34));
u32 v1;
v1 = inline_02049538(param0);
sub_02025FB8(v0, v1);
return 0;
}
BOOL sub_0204C968 (UnkStruct_0203E724 * param0)
{
UnkStruct_02025E6C * v0 = sub_02025E38(sub_0203D174(param0->unk_34));
u16 * v1;
u32 v2, v3;
v1 = inline_0204FCAC(param0);
v2 = sub_0203E850(param0);
v3 = sub_02025F74(v0);
if (v3 < v2) {
*v1 = 0;
} else {
*v1 = 1;
}
return 0;
}
BOOL sub_0204C9AC (UnkStruct_0203E724 * param0)
{
UnkStruct_02025E6C * v0 = sub_02025E38(sub_0203D174(param0->unk_34));
u16 * v1;
u32 v2, v3;
v1 = inline_0204FCAC(param0);
v2 = inline_02049538(param0);
v3 = sub_02025F74(v0);
if (v3 < v2) {
*v1 = 0;
} else {
*v1 = 1;
}
return 0;
}
BOOL sub_0204C9FC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
UnkStruct_0205AA50 ** v3;
v3 = sub_0203F098(v0, 39);
*v3 = ov5_021DCEB0(param0->unk_34, v1, v2);
return 0;
}
BOOL sub_0204CA4C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_0205AA50 ** v1 = sub_0203F098(v0, 39);
ov5_021DCF58(*v1);
return 0;
}
BOOL sub_0204CA64 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_0205AA50 ** v1 = sub_0203F098(v0, 39);
ov5_021DCF6C(param0->unk_34, *v1);
return 0;
}

219
src/unk_0204CA84.c Normal file
View File

@@ -0,0 +1,219 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0200B358_decl.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_02026310_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_02079FF4_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_020244AC.h"
#include "unk_02025E08.h"
#include "unk_020261E4.h"
#include "unk_0203CC84.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0204CA84.h"
#include "unk_02079FEC.h"
#include "overlay005/ov5_021E622C.h"
BOOL sub_0204CA84 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_0200B358 ** v2 = sub_0203F098(v0, 15);
ov5_021E72BC(sub_02026310(v1), *v2);
return 0;
}
BOOL sub_0204CAA4 (UnkStruct_0203E724 * param0)
{
u16 * v0;
UnkStruct_0203CDB0 * v1 = param0->unk_34;
UnkStruct_021C0794 * v2 = v1->unk_0C;
UnkStruct_02026310 * v3;
v0 = inline_0204FCAC(param0);
v3 = (UnkStruct_02026310 *)(sub_020245BC(v2, 8));
*v0 = ov5_021E73C8(v3);
return 0;
}
BOOL sub_0204CAD4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2;
v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
ov5_021E6B40(v2);
return 0;
}
BOOL sub_0204CAEC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
UnkStruct_02079FF4 * v3 = sub_0207A268(v0->unk_0C);
UnkStruct_02025E6C * v4 = sub_02025E38(sub_0203D174(param0->unk_34));
ov5_021E6EA8(v2, v3, v4);
return 0;
}
BOOL sub_0204CB20 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02026310 * v1;
UnkStruct_02079FF4 * v2;
UnkStruct_0200B358 ** v3 = sub_0203F098(v0, 15);
UnkStruct_021C0794 * v4 = v0->unk_0C;
u16 * v5 = inline_0204FCAC(param0);
u8 v6 = inline_02049538(param0);
v1 = (UnkStruct_02026310 *)(sub_020245BC(v4, 8));
v2 = sub_0207A268(v0->unk_0C);
*v5 = ov5_021E64F8(v2, *v3, v1, v6);
return 0;
}
BOOL sub_0204CB80 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02026310 * v1;
UnkStruct_0200B358 ** v2 = sub_0203F098(v0, 15);
UnkStruct_021C0794 * v3 = v0->unk_0C;
u16 * v4 = inline_0204FCAC(param0);
u8 v5 = inline_02049538(param0);
v1 = (UnkStruct_02026310 *)(sub_020245BC(v3, 8));
*v4 = ov5_021E6630(v1, v5, *v2);
return 0;
}
BOOL sub_0204CBD4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2;
UnkStruct_0200B358 ** v3 = sub_0203F098(param0->unk_34, 15);
u16 * v4 = inline_0204FCAC(param0);
u16 v5 = inline_02049538(param0);
v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
*v4 = ov5_021E6640(v2, v5, *v3);
return 0;
}
BOOL sub_0204CC24 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02079FF4 * v1;
UnkStruct_0200B358 ** v2 = sub_0203F098(param0->unk_34, 15);
u16 v3 = sub_0203E838(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v1 = sub_0207A268(v0->unk_0C);
*v5 = ov5_021E73A0(v1, v4, *v2);
return 0;
}
BOOL sub_0204CC78 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2;
UnkStruct_02079FF4 * v3;
u8 v4 = inline_02049538(param0);
v3 = sub_0207A268(v0->unk_0C);
v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
ov5_021E6358(v3, v4, v2, v1);
return 0;
}
BOOL sub_0204CCB8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_0200B358 ** v2 = sub_0203F098(param0->unk_34, 15);
u8 v3 = inline_02049538(param0);
u8 v4 = inline_02049538(param0);
u8 v5 = inline_02049538(param0);
u8 v6 = inline_02049538(param0);
ov5_021E7308(sub_02026310(v1), v3, v4, v5, v6, *v2);
return 0;
}
BOOL sub_0204CD44 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2;
u16 * v3 = inline_0204FCAC(param0);
v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
*v3 = ov5_021E7420(v2);
return 0;
}
BOOL sub_0204CD74 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_02026310 * v2;
u16 * v3 = inline_0204FCAC(param0);
v2 = (UnkStruct_02026310 *)(sub_020245BC(v1, 8));
*v3 = sub_02026234(v2);
return 0;
}
BOOL sub_0204CDA4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 * v1 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204CDBC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
return 0;
}
BOOL sub_0204CDC0 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
return 0;
}
BOOL sub_0204CDC4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 * v1 = inline_0204FCAC(param0);
return 0;
}

164
src/unk_0204CDDC.c Normal file
View File

@@ -0,0 +1,164 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0201D15C.h"
#include "unk_0204CDDC.h"
#include "unk_020507CC.h"
#include "unk_0206AFE0.h"
BOOL sub_0204CF68(UnkStruct_0203E724 * param0);
BOOL sub_0204CF8C(UnkStruct_0203E724 * param0);
BOOL sub_0204CFC4(UnkStruct_0203E724 * param0);
BOOL sub_0204CDDC (UnkStruct_0203E724 * param0)
{
sub_0206B218(sub_020507E4(param0->unk_34->unk_0C));
return 0;
}
BOOL sub_0204CDF0 (UnkStruct_0203E724 * param0)
{
u16 * v0 = inline_0204FCAC(param0);
*v0 = sub_0206B228(sub_020507E4(param0->unk_34->unk_0C));
return 0;
}
static const u16 Unk_020EBF84[6][10] = {
{0x0, 0x5, 0x15, 0x6, 0x1A, 0xD, 0x19, 0x1F, 0x10, 0x21},
{0x2, 0x13, 0x14, 0x18, 0x11, 0x0, 0x17, 0x1D, 0x1C, 0xF},
{0x9, 0x8, 0x3, 0x6, 0x16, 0x1E, 0x11, 0x7, 0xE, 0x20},
{0xC, 0x12, 0x15, 0xD, 0x1F, 0x8, 0x19, 0x18, 0x1B, 0x7},
{0x5, 0x3, 0x1A, 0x13, 0x14, 0x1, 0xB, 0x10, 0x16, 0xF},
{0xC, 0x1E, 0x2, 0x14, 0x1D, 0x4, 0x9, 0x1B, 0xE, 0xA}
};
BOOL sub_0204CE1C (UnkStruct_0203E724 * param0)
{
u8 v0, v1;
u16 v2;
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
v2 = sub_0201D2E8() % 100;
if (v2 < 15) {
v0 = 0;
} else if (v2 < (15 + 15)) {
v0 = 1;
} else if (v2 < (15 + 15 + 15)) {
v0 = 2;
} else if (v2 < (15 + 15 + 15 + 15)) {
v0 = 3;
} else if (v2 < (15 + 15 + 15 + 15 + 10)) {
v0 = 4;
} else if (v2 < (15 + 15 + 15 + 15 + 10 + 10)) {
v0 = 5;
} else if (v2 < (15 + 15 + 15 + 15 + 10 + 10 + 8)) {
v0 = 6;
} else if (v2 < (15 + 15 + 15 + 15 + 10 + 10 + 8 + 5)) {
v0 = 7;
} else if (v2 < (15 + 15 + 15 + 15 + 10 + 10 + 8 + 5 + 5)) {
v0 = 8;
} else {
v0 = 9;
}
switch (v4) {
case 390:
case 391:
case 392:
v1 = 0;
break;
case 393:
case 394:
case 395:
v1 = 1;
break;
case 387:
case 388:
case 389:
v1 = 2;
break;
case 54:
case 427:
case 425:
v1 = 3;
break;
case 25:
case 35:
case 417:
case 440:
v1 = 4;
break;
case 39:
case 255:
case 300:
case 285:
v1 = 5;
break;
default:
v1 = 0;
}
*v3 = Unk_020EBF84[v1][v0];
return 0;
}
static const u16 Unk_020EBF64[] = {
0xB0,
0xAF,
0xB1,
0xB2,
0xB3,
0xB4,
0xB5,
0xB6,
0xB7,
0xB,
0x7,
0xA,
0x10,
0x1B,
0x20,
0x21
};
BOOL sub_0204CF68 (UnkStruct_0203E724 * param0)
{
u16 * v0 = inline_0204FCAC(param0);
*v0 = (sub_0201D2E8() % (NELEMS(Unk_020EBF64)));
return 0;
}
BOOL sub_0204CF8C (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 * v1 = inline_0204FCAC(param0);
if (v0 < 9) {
*v1 = 0;
} else {
*v1 = 1;
}
return 0;
}
BOOL sub_0204CFC4 (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 * v1 = inline_0204FCAC(param0);
*v1 = Unk_020EBF64[v0];
return 0;
}

910
src/unk_0204CFFC.c Normal file
View File

@@ -0,0 +1,910 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_02073C74_decl.h"
#include "struct_decls/struct_020797DC_decl.h"
#include "struct_decls/struct_02079FF4_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_02017038.h"
#include "unk_02017E74.h"
#include "unk_0202440C.h"
#include "unk_02025E08.h"
#include "unk_02025E68.h"
#include "unk_0203A024.h"
#include "unk_0203CC84.h"
#include "unk_0204CFFC.h"
#include "unk_02054884.h"
#include "unk_0205DFC4.h"
#include "unk_0206CCB0.h"
#include "unk_02073C2C.h"
#include "unk_020797C8.h"
#include "unk_02079FEC.h"
#include "unk_0207CDEC.h"
#include "unk_020923C0.h"
#include "overlay005/ov5_021E622C.h"
BOOL sub_0204CFFC (UnkStruct_0203E724 * param0)
{
int v0 = sub_0203A138(param0->unk_34->unk_1C->unk_00);
int v1 = 24;
UnkStruct_02079FF4 * v2;
UnkStruct_0203CDB0 * v3 = param0->unk_34;
u16 v4 = inline_02049538(param0);
u16 v5 = inline_02049538(param0);
u16 v6 = inline_02049538(param0);
u16 * v7 = inline_0204FCAC(param0);
v2 = sub_0207A268(v3->unk_0C);
*v7 = sub_020548B0(11, v3->unk_0C, v4, v5, v6, v0, v1);
return 0;
}
BOOL sub_0204D08C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 * v3 = inline_0204FCAC(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), *v2);
if (sub_02074470(v1, 76, NULL) == 0) {
*v3 = sub_02074470(v1, 5, NULL);
} else {
*v3 = 0;
}
return 0;
}
BOOL sub_0204D0E8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
UnkStruct_02025E6C * v2 = sub_02025E38(sub_0203D174(param0->unk_34));
u16 * v3 = inline_0204FCAC(param0);
u16 * v4 = inline_0204FCAC(param0);
u16 v5, v6;
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), *v3);
v5 = sub_02074470(v1, 7, NULL);
v6 = sub_02025F20(v2);
if (v5 == v6) {
*v4 = 0;
} else {
*v4 = 1;
}
return 0;
}
BOOL sub_0204D154 (UnkStruct_0203E724 * param0)
{
int v0;
u8 v1;
BOOL v2;
UnkStruct_02079FF4 * v3;
UnkStruct_02073C74 * v4;
UnkStruct_0203CDB0 * v5 = param0->unk_34;
UnkStruct_02025E6C * v6 = sub_02025E38(v5->unk_0C);
u16 v7 = inline_02049538(param0);
u16 v8 = inline_02049538(param0);
v3 = sub_0207A268(v5->unk_0C);
v1 = sub_0207A0F8(v3);
if (v1 < 6) {
v4 = sub_02073C74(11);
sub_02073C2C(v4);
v0 = sub_02017070(1, v8);
ov5_021E6CF0(v4, v7, 1, v6, 3, v0);
v2 = sub_0207A048(v3, v4);
sub_020181C4(v4);
}
return 0;
}
BOOL sub_0204D1DC (UnkStruct_0203E724 * param0)
{
u16 v0, v1, v2;
v0 = inline_02049538(param0);
v1 = inline_02049538(param0);
v2 = inline_02049538(param0);
sub_02054988(sub_0207A268(param0->unk_34->unk_0C), v0, v1, v2);
return 0;
}
BOOL sub_0204D234 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 v5;
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v4);
*v2 = 0;
if (sub_02074470(v1, 76, NULL) != 0) {
return 0;
}
if ((sub_02074470(v1, 54, NULL) == v3) || (sub_02074470(v1, 55, NULL) == v3) || (sub_02074470(v1, 56, NULL) == v3) || (sub_02074470(v1, 57, NULL) == v3)) {
*v2 = 1;
}
return 0;
}
BOOL sub_0204D2D8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u16 v4;
u8 v5, v6;
v6 = sub_0207A0F8(sub_0207A268(v0->unk_0C));
for (v5 = 0, *v2 = 6; v5 < v6; v5++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v5);
if (sub_02074470(v1, 76, NULL) != 0) {
continue;
}
if ((sub_02074470(v1, 54, NULL) == v3) || (sub_02074470(v1, 55, NULL) == v3) || (sub_02074470(v1, 56, NULL) == v3) || (sub_02074470(v1, 57, NULL) == v3)) {
*v2 = v5;
break;
}
}
return 0;
}
BOOL sub_0204D398 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1;
u16 * v2;
v2 = inline_0204FCAC(param0);
v1 = inline_02049538(param0);
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
*v2 = sub_02054B94(v0);
return 0;
}
BOOL sub_0204D3DC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u8 v4, v5, v6;
v5 = sub_0207A0F8(sub_0207A268(v0->unk_0C));
*v2 = 0;
for (v4 = 0, v6 = 0; v4 < v5; v4++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v4);
if (sub_02074470(v1, 76, NULL) == 0) {
if (sub_02074470(v1, 161, NULL) <= v3) {
v6++;
}
}
}
*v2 = v6;
return 0;
}
BOOL sub_0204D470 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
*v2 = 0;
if (sub_02074470(v1, 76, NULL) == 0) {
*v2 = sub_02074470(v1, 161, NULL);
}
return 0;
}
BOOL sub_0204D4CC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u8 v4;
v4 = sub_0207A0F8(sub_0207A268(v0->unk_0C));
if (v3 >= v4) {
*v2 = 0;
return 0;
}
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
if (sub_02074470(v1, 76, NULL) != 0) {
*v2 = 0;
return 0;
}
*v2 = sub_02075BCC(v1);
return 0;
}
BOOL sub_0204D540 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u8 v4, v5;
v4 = sub_0207A0F8(sub_0207A268(v0->unk_0C));
*v2 = 0xff;
for (v5 = 0; v5 < v4; v5++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v5);
if (sub_02074470(v1, 76, NULL) == 0) {
if (sub_02075BCC(v1) == v3) {
*v2 = v5;
break;
}
}
}
return 0;
}
BOOL sub_0204D5CC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
*v2 = sub_02074470(v1, 9, NULL);
return 0;
}
BOOL sub_0204D614 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 v2 = inline_02049538(param0);
u16 v3 = inline_02049538(param0);
u16 v4;
u32 v5 = sub_0203A138(param0->unk_34->unk_1C->unk_00);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
v4 = sub_02074470(v1, 9, NULL);
if (v2 > 0) {
if (sub_0207CFF0(sub_02074470(v1, 6, NULL), 1, 11) == 53) {
v2 = v2 * 150 / 100;
}
if (sub_02074470(v1, 155, NULL) == 11) {
v2++;
}
if (sub_02074470(v1, 152, NULL) == v5) {
v2++;
}
}
v4 += v2;
if (v4 > 255) {
v4 = 255;
}
sub_02074B30(v1, 9, &v4);
return 0;
}
BOOL sub_0204D6E4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 v2 = inline_02049538(param0);
u16 v3 = inline_02049538(param0);
u16 v4;
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
v4 = sub_02074470(v1, 9, NULL);
if (v2 > v4) {
v4 = 0;
} else {
v4 -= v2;
}
sub_02074B30(v1, 9, &v4);
return 0;
}
BOOL sub_0204D74C (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
*v3 = sub_02074470(v0, 19 + v2, NULL);
return 0;
}
BOOL sub_0204D7AC (UnkStruct_0203E724 * param0)
{
u16 * v0 = inline_0204FCAC(param0);
*v0 = sub_0205E1B4(param0->unk_34->unk_0C);
return 0;
}
BOOL sub_0204D7D4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v4);
*v2 = sub_02074470(v1, 177, NULL);
*v3 = sub_02074470(v1, 178, NULL);
return 0;
}
BOOL sub_0204D840 (UnkStruct_0203E724 * param0)
{
int v0;
UnkStruct_02073C74 * v1;
UnkStruct_0203CDB0 * v2 = param0->unk_34;
u16 * v3 = inline_0204FCAC(param0);
v0 = sub_0207A0F8(sub_0207A268(v2->unk_0C));
*v3 = v0;
return 0;
}
BOOL sub_0204D86C (UnkStruct_0203E724 * param0)
{
int v0, v1, v2;
UnkStruct_02073C74 * v3;
UnkStruct_0203CDB0 * v4 = param0->unk_34;
u16 * v5 = inline_0204FCAC(param0);
v0 = sub_0207A0F8(sub_0207A268(v4->unk_0C));
for (v2 = 0, v1 = 0; v2 < v0; v2++) {
v3 = sub_0207A0FC(sub_0207A268(v4->unk_0C), v2);
if (sub_02074470(v3, 76, NULL) == 0) {
v1++;
}
}
*v5 = v1;
return 0;
}
BOOL sub_0204D8C4 (UnkStruct_0203E724 * param0)
{
int v0, v1, v2;
UnkStruct_02073C74 * v3;
UnkStruct_0203CDB0 * v4 = param0->unk_34;
u16 * v5 = inline_0204FCAC(param0);
u16 v6 = inline_02049538(param0);
v0 = sub_0207A0F8(sub_0207A268(v4->unk_0C));
for (v2 = 0, v1 = 0; v2 < v0; v2++) {
if (v2 == v6) {
continue;
}
v3 = sub_0207A0FC(sub_0207A268(v4->unk_0C), v2);
if (sub_02074470(v3, 76, NULL) == 0) {
if (sub_02074470(v3, 163, NULL) != 0) {
v1++;
}
}
}
*v5 = v1;
return 0;
}
BOOL sub_0204D94C (UnkStruct_0203E724 * param0)
{
int v0, v1, v2;
UnkStruct_02073C74 * v3;
UnkStruct_0203CDB0 * v4 = param0->unk_34;
u16 * v5 = inline_0204FCAC(param0);
UnkStruct_020797DC * v6 = sub_02024420(v4->unk_0C);
v0 = sub_0207A0F8(sub_0207A268(v4->unk_0C));
for (v2 = 0, v1 = 0; v2 < v0; v2++) {
v3 = sub_0207A0FC(sub_0207A268(v4->unk_0C), v2);
if (sub_02074470(v3, 76, NULL) == 0) {
if (sub_02074470(v3, 163, NULL) != 0) {
v1++;
}
}
}
v1 += sub_02079BEC(v6);
*v5 = v1;
return 0;
}
BOOL sub_0204D9C8 (UnkStruct_0203E724 * param0)
{
int v0, v1, v2;
UnkStruct_02073C74 * v3;
UnkStruct_0203CDB0 * v4 = param0->unk_34;
u16 * v5 = inline_0204FCAC(param0);
v0 = sub_0207A0F8(sub_0207A268(v4->unk_0C));
for (v2 = 0, v1 = 0; v2 < v0; v2++) {
v3 = sub_0207A0FC(sub_0207A268(v4->unk_0C), v2);
if (sub_02074470(v3, 76, NULL)) {
v1++;
}
}
*v5 = v1;
return 0;
}
BOOL sub_0204DA20 (UnkStruct_0203E724 * param0)
{
u16 v0, v1;
u16 * v2;
u32 v3;
UnkStruct_02073C74 * v4;
UnkStruct_0203CDB0 * v5 = param0->unk_34;
v2 = inline_0204FCAC(param0);
v1 = sub_0207A0F8(sub_0207A268(v5->unk_0C));
*v2 = 0;
for (v0 = 0; v0 < v1; v0++) {
v4 = sub_0207A0FC(sub_0207A268(v5->unk_0C), v0);
v3 = sub_02074470(v4, 154, NULL);
if (v3 != 0) {
*v2 = 1;
break;
}
}
return 0;
}
BOOL sub_0204DA84 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1 = inline_02049538(param0);
u16 * v2 = inline_0204FCAC(param0);
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
*v2 = sub_02074470(v0, 111, NULL);
return 0;
}
BOOL sub_0204DACC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u8 v4;
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
if (sub_02074470(v1, 76, NULL) != 0) {
*v2 = 0;
return 0;
}
v4 = 0;
if ((sub_02074470(v1, 54, NULL) != 0)) {
v4++;
}
if ((sub_02074470(v1, 55, NULL) != 0)) {
v4++;
}
if ((sub_02074470(v1, 56, NULL) != 0)) {
v4++;
}
if ((sub_02074470(v1, 57, NULL) != 0)) {
v4++;
}
*v2 = v4;
return 0;
}
BOOL sub_0204DB74 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u32 v2;
u8 v3;
u16 v4 = inline_02049538(param0);
u16 v5 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v4);
sub_02077408(v1, v5);
return 0;
}
BOOL sub_0204DBB8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
*v2 = sub_02074470(v1, 54 + v4, NULL);
return 0;
}
BOOL sub_0204DC18 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v3);
*v2 = sub_02074470(v1, 6, NULL);
return 0;
}
BOOL sub_0204DC60 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
u16 v2 = inline_02049538(param0);
u16 v3;
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v2);
v3 = 0;
sub_02074B30(v1, 6, &v3);
return 0;
}
BOOL sub_0204DC98 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
UnkStruct_02079FF4 * v2;
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
u8 v5, v6;
u16 v7;
v2 = sub_0207A268(v0->unk_0C);
v6 = sub_0207A0F8(v2);
*v3 = 0;
for (v5 = 0; v5 < v6; v5++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v5);
if (sub_02074470(v1, 76, NULL) == 0) {
v7 = sub_02074470(v1, 5, NULL);
if (v4 == v7) {
*v3 = 1;
break;
}
}
}
return 0;
}
BOOL sub_0204DD28 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
UnkStruct_02079FF4 * v2;
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
u8 v5, v6, v7;
u16 v8;
u16 v9[6];
for (v5 = 0; v5 < 6; v5++) {
v9[v5] = 0;
}
v2 = sub_0207A268(v0->unk_0C);
v7 = sub_0207A0F8(v2);
*v3 = 0;
for (v5 = 0; v5 < v7; v5++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v5);
if (sub_02074470(v1, 76, NULL) == 0) {
v8 = sub_02074470(v1, 5, NULL);
if (v4 == 0) {
v9[v5] = v8;
for (v6 = 0; v6 < v5; v6++) {
if (v9[v6] == v9[v5]) {
*v3 = 1;
return 0;
}
}
} else {
if (v4 == v8) {
*v3 += 1;
}
}
}
}
return 0;
}
BOOL sub_0204DE00 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_02073C74 * v1;
UnkStruct_02079FF4 * v2;
u16 * v3 = inline_0204FCAC(param0);
u16 v4 = inline_02049538(param0);
u8 v5, v6;
u16 v7;
v2 = sub_0207A268(v0->unk_0C);
v6 = sub_0207A0F8(v2);
*v3 = 0xff;
for (v5 = 0; v5 < v6; v5++) {
v1 = sub_0207A0FC(sub_0207A268(v0->unk_0C), v5);
if (sub_02074470(v1, 76, NULL) == 0) {
v7 = sub_02074470(v1, 5, NULL);
if (v4 == v7) {
*v3 = v5;
break;
}
}
}
return 0;
}
BOOL sub_0204DE94 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 * v1 = inline_0204FCAC(param0);
u16 v2 = inline_02049538(param0);
u16 v3, v4;
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v2);
for (v3 = 0, v4 = 0; v3 < 80; v3++) {
if (sub_02074470(v0, sub_020923C0(v3, 0), NULL) != 0) {
v4++;
}
}
*v1 = v4;
return 0;
}
BOOL sub_0204DF08 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
UnkStruct_02079FF4 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3, v4, v5, v6;
v6 = sub_0207A0F8(sub_0207A268(param0->unk_34->unk_0C));
v1 = sub_0207A268(param0->unk_34->unk_0C);
for (v3 = 0, v5 = 0; v3 < 80; v3++) {
for (v4 = 0; v4 < v6; v4++) {
v0 = sub_0207A0FC(v1, v4);
if (sub_02074470(v0, 76, NULL) == 0) {
if (sub_02074470(v0, sub_020923C0(v3, 0), NULL) != 0) {
v5++;
break;
}
}
}
}
*v2 = v5;
return 0;
}
BOOL sub_0204DFB0 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 * v1 = inline_0204FCAC(param0);
u16 v2 = inline_02049538(param0);
u16 v3 = inline_02049538(param0);
u8 v4 = 1;
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v2);
*v1 = sub_02074470(v0, sub_020923C0(v3, 0), NULL);
return 0;
}
BOOL sub_0204E01C (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u8 v3 = 1;
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
sub_02074B30(v0, sub_020923C0(v2, 0), &v3);
sub_0206DDB8(param0->unk_34->unk_0C, v0, sub_020923C0(v2, 0));
return 0;
}
BOOL sub_0204E094 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
UnkStruct_02079FF4 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3, v4, v5;
v5 = sub_0207A0F8(sub_0207A268(param0->unk_34->unk_0C));
v1 = sub_0207A268(param0->unk_34->unk_0C);
for (v3 = 0; v3 < 80; v3++) {
for (v4 = 0; v4 < v5; v4++) {
v0 = sub_0207A0FC(v1, v4);
if (sub_02074470(v0, 76, NULL) != 0) {
if (sub_02074470(v0, 3, NULL) != 0) {
*v2 = 1;
return 0;
}
}
}
}
*v2 = 0;
return 0;
}
BOOL sub_0204E128 (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204E12C (UnkStruct_0203E724 * param0)
{
u8 v0, v1;
u16 v2;
UnkStruct_02073C74 * v3;
UnkStruct_02079FF4 * v4;
UnkStruct_0203CDB0 * v5 = param0->unk_34;
u16 * v6 = inline_0204FCAC(param0);
u16 v7 = inline_02049538(param0);
v4 = sub_0207A268(v5->unk_0C);
v1 = sub_0207A0F8(v4);
*v6 = 0xff;
for (v0 = 0; v0 < v1; v0++) {
v3 = sub_0207A0FC(sub_0207A268(v5->unk_0C), v0);
if (sub_02074470(v3, 76, NULL) == 0) {
v2 = sub_02074470(v3, 5, NULL);
if (v7 == v2) {
if (sub_02074470(v3, 110, NULL) == 1) {
*v6 = v0;
break;
}
}
}
}
return 0;
}
BOOL sub_0204E1D0 (UnkStruct_0203E724 * param0)
{
int v0, v1;
UnkStruct_02079FF4 * v2;
UnkStruct_02073C74 * v3;
UnkStruct_0203CDB0 * v4 = param0->unk_34;
u16 v5 = inline_02049538(param0);
u16 * v6 = inline_0204FCAC(param0);
v2 = sub_0207A268(v4->unk_0C);
v1 = sub_0207A0F8(v2);
*v6 = 0;
for (v0 = 0; v0 < v1; v0++) {
v3 = sub_0207A0FC(sub_0207A268(v4->unk_0C), v0);
if (sub_02074470(v3, 6, NULL) == v5) {
*v6 = 1;
break;
}
}
return 0;
}

91
src/unk_0204E240.c Normal file
View File

@@ -0,0 +1,91 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0204E240.h"
#include "unk_0207D3B8.h"
const u16 Unk_020EBFFC[7][2] = {
{0x67, 0x8E},
{0x65, 0x8A},
{0x66, 0x8C},
{0x63, 0x159},
{0x64, 0x15B},
{0x68, 0x19A},
{0x69, 0x198}
};
BOOL sub_0204E240 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u8 v1;
u16 v2, v3;
u16 * v4 = inline_0204FCAC(param0);
for (v1 = 0, v3 = 0; v1 < 7; v1++) {
v3 += sub_0207D730(sub_0207D990(v0->unk_0C), Unk_020EBFFC[v1][0], 4);
}
*v4 = v3;
return 0;
}
BOOL sub_0204E28C (UnkStruct_0203E724 * param0)
{
u16 v0;
u16 * v1 = inline_0204FCAC(param0);
u16 v2 = inline_02049538(param0);
*v1 = 0;
for (v0 = 0; v0 < 7; v0++) {
if (Unk_020EBFFC[v0][0] == v2) {
*v1 = Unk_020EBFFC[v0][1];
break;
}
}
return 0;
}
BOOL sub_0204E2E0 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u8 v1;
u16 v2, v3;
u16 * v4 = inline_0204FCAC(param0);
u16 * v5 = inline_0204FCAC(param0);
u16 v6 = inline_02049538(param0);
*v4 = 0;
*v5 = 0;
for (v1 = 0, v3 = 0; v1 < 7; v1++) {
v3 += sub_0207D730(sub_0207D990(v0->unk_0C), Unk_020EBFFC[v1][0], 4);
if (v3 >= v6) {
*v4 = Unk_020EBFFC[v1][0];
*v5 = v1;
break;
}
}
return 0;
}
BOOL sub_0204E370 (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204E374 (UnkStruct_0203E724 * param0)
{
return 0;
}

43
src/unk_0204E378.c Normal file
View File

@@ -0,0 +1,43 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0204E378.h"
BOOL sub_0204E378 (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 * v1 = inline_0204FCAC(param0);
u16 * v2 = inline_0204FCAC(param0);
static const u16 v3[][2] = {
{0xFB, 0x3E8},
{0x109, 0x3E8},
{0x114, 0x3E8},
{0x115, 0x3E8},
{0x1A1, 0x7D0},
{0x181, 0x7D0},
{0x192, 0xFA0},
{0x167, 0xFA0},
{0x173, 0x1770},
{0x1A0, 0x1770},
{0x151, 0x1770},
{0x162, 0x1F40},
{0x15C, 0x1F40},
{0x16A, 0x2710},
{0x15F, 0x2710},
{0x154, 0x2710},
{0x164, 0x2710},
{0x191, 0x3A98},
{0x18B, 0x4E20}
};
*v1 = v3[v0][0];
*v2 = v3[v0][1];
return 0;
}

98
src/unk_0204E75C.c Normal file
View File

@@ -0,0 +1,98 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0204E75C.h"
#include "unk_0205DFC4.h"
#include "unk_0207CDEC.h"
#include "unk_0207D3B8.h"
BOOL sub_0204E75C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
*v3 = sub_0207D570(sub_0207D990(v0->unk_0C), v1, v2, 4);
return 0;
}
BOOL sub_0204E7B4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
*v3 = sub_0207D60C(sub_0207D990(v0->unk_0C), v1, v2, 4);
return 0;
}
BOOL sub_0204E80C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
*v3 = sub_0207D55C(sub_0207D990(v0->unk_0C), v1, v2, 4);
return 0;
}
BOOL sub_0204E864 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
*v3 = sub_0207D688(sub_0207D990(v0->unk_0C), v1, v2, 11);
return 0;
}
BOOL sub_0204E8BC (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 * v2 = inline_0204FCAC(param0);
*v2 = sub_0207D730(sub_0207D990(v0->unk_0C), v1, 11);
return 0;
}
BOOL sub_0204E900 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 * v2 = inline_0204FCAC(param0);
*v2 = sub_0205E060(v1);
return 0;
}
BOOL sub_0204E934 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 * v2 = inline_0204FCAC(param0);
*v2 = (u16)sub_0207CFF0(v1, 5, 11);
return 0;
}
BOOL sub_0204E96C (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204E970 (UnkStruct_0203E724 * param0)
{
return 0;
}

197
src/unk_0204E974.c Normal file
View File

@@ -0,0 +1,197 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_020298B0_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0202854C.h"
#include "unk_0204E974.h"
BOOL sub_0204E974 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_020298B0 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v2 = sub_020298B0(v1);
*v5 = sub_0202895C(v2, v3);
return 0;
}
BOOL sub_0204E9C8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EA04 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_020298B0 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v2 = sub_020298B0(v1);
*v5 = sub_02028984(v2, v3);
return 0;
}
BOOL sub_0204EA58 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EA94 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_020298B0 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v2 = sub_020298B0(v1);
*v5 = sub_02028E84(v2, v3);
return 0;
}
BOOL sub_0204EAE8 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EB24 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EB60 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EB9C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_020298B0 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v2 = sub_020298B0(v1);
return 0;
}
BOOL sub_0204EBE4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EC20 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EC5C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204EC98 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
UnkStruct_021C0794 * v1 = v0->unk_0C;
UnkStruct_020298B0 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
u16 * v5 = inline_0204FCAC(param0);
v2 = sub_020298B0(v1);
*v5 = sub_02028CB0(v2, v3, v4);
return 0;
}
BOOL sub_0204ECF0 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204ED2C (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}
BOOL sub_0204ED68 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203CDB0 * v0 = param0->unk_34;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3 = inline_0204FCAC(param0);
return 0;
}

178
src/unk_0204EDA4.c Normal file
View File

@@ -0,0 +1,178 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_02073C74_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "struct_defs/struct_020997B8.h"
#include "unk_02017E74.h"
#include "unk_02025E08.h"
#include "unk_0203CC84.h"
#include "unk_0203D1B8.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0203F6C4.h"
#include "unk_0204EDA4.h"
#include "unk_02079FEC.h"
#include "unk_020997B8.h"
static void sub_0204EE90(UnkStruct_0203E724 * param0, u16 param1, UnkStruct_02073C74 * param2, u16 * param3);
BOOL sub_0204EDA4 (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
void ** v1;
v1 = sub_0203F098(param0->unk_34, 19);
*v1 = sub_0203D6E4(32, param0->unk_34, v0);
sub_0203E764(param0, sub_02041D60);
return 1;
}
BOOL sub_0204EDEC (UnkStruct_0203E724 * param0)
{
void ** v0;
u16 * v1;
v1 = inline_0204FCAC(param0);
v0 = sub_0203F098(param0->unk_34, 19);
GF_ASSERT(*v0 != 0);
*v1 = sub_0203D750(*v0);
if (*v1 == 4) {
*v1 = 0xff;
}
sub_020181C4(*v0);
*v0 = NULL;
return 0;
}
BOOL sub_0204EE38 (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204EE3C (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 * v1;
u16 * v2 = inline_0204FCAC(param0);
u16 v3 = inline_02049538(param0);
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v3);
v1 = sub_020997D8(v0, 32);
*v2 = sub_020998D8(v1);
sub_020181C4(v1);
return 0;
}
static void sub_0204EE90 (UnkStruct_0203E724 * param0, u16 param1, UnkStruct_02073C74 * param2, u16 * param3)
{
void ** v0 = sub_0203F098(param0->unk_34, 19);
UnkStruct_020997B8 * v1;
v1 = sub_020997B8(32);
*v0 = v1;
v1->unk_00 = param2;
v1->unk_04 = sub_02025E38(sub_0203D174(param0->unk_34));
v1->unk_08 = sub_02025E44(param0->unk_34->unk_0C);
v1->unk_0C = param3;
v1->unk_15 = param1;
sub_0203E284(param0->unk_34, v1);
sub_0203E764(param0, sub_02041D60);
sub_020181C4(param3);
}
BOOL sub_0204EEFC (UnkStruct_0203E724 * param0)
{
return 1;
}
BOOL sub_0204EF00 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1 = inline_02049538(param0);
u16 * v2;
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
v2 = sub_020997D8(v0, 32);
sub_0204EE90(param0, 1, v0, v2);
return 1;
}
BOOL sub_0204EF40 (UnkStruct_0203E724 * param0)
{
UnkStruct_02073C74 * v0;
u16 v1 = inline_02049538(param0);
u16 v2 = inline_02049538(param0);
u16 * v3;
v0 = sub_0207A0FC(sub_0207A268(param0->unk_34->unk_0C), v1);
v3 = sub_02018144(32, (1 + 1) * 2);
*(v3 + 0) = v2;
*(v3 + 1) = 0xffff;
sub_0204EE90(param0, 0, v0, v3);
return 1;
}
BOOL sub_0204EFA0 (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204EFA4 (UnkStruct_0203E724 * param0)
{
UnkStruct_020997B8 * v0;
u16 * v1 = inline_0204FCAC(param0);
void ** v2 = sub_0203F098(param0->unk_34, 19);
v0 = *v2;
GF_ASSERT(*v2 != 0);
if ((v0->unk_16) == 0) {
*v1 = 0;
} else {
*v1 = 0xff;
}
sub_020997D0(v0);
return 0;
}
BOOL sub_0204EFE8 (UnkStruct_0203E724 * param0)
{
UnkStruct_020997B8 * v0;
u16 * v1 = inline_0204FCAC(param0);
void ** v2 = sub_0203F098(param0->unk_34, 19);
v0 = *v2;
GF_ASSERT(*v2 != 0);
if ((v0->unk_16) == 0) {
*v1 = 0;
} else {
*v1 = 0xff;
}
sub_020997D0(v0);
return 0;
}

30
src/unk_0204F02C.c Normal file
View File

@@ -0,0 +1,30 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0204F02C.h"
BOOL sub_0204F02C (UnkStruct_0203E724 * param0)
{
GF_ASSERT(0);
return 0;
}
BOOL sub_0204F038 (UnkStruct_0203E724 * param0)
{
GF_ASSERT(0);
return 0;
}
BOOL sub_0204F044 (UnkStruct_0203E724 * param0)
{
return 0;
}
BOOL sub_0204F048 (UnkStruct_0203E724 * param0)
{
return 0;
}

45
src/unk_0204F04C.c Normal file
View File

@@ -0,0 +1,45 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_defs/struct_020300F4.h"
#include "struct_defs/struct_0203E724_t.h"
#include "unk_0202FF4C.h"
#include "unk_0203061C.h"
#include "unk_0204F04C.h"
#include "unk_0205DFC4.h"
BOOL sub_0204F04C(UnkStruct_0203E724 * param0);
BOOL sub_0204F04C (UnkStruct_0203E724 * param0)
{
u32 v0;
u8 v1[4];
UnkStruct_020300F4 * v2;
u16 v3 = inline_02049538(param0);
u16 v4 = inline_02049538(param0);
v2 = sub_020300F4(param0->unk_34->unk_0C);
v1[0] = 0;
sub_020300B0(v2, 10, (v4 * 4) + v3, v1);
if (v3 == 3) {
if (v4 == 0) {
v0 = 102;
} else {
v0 = 104;
}
sub_020306E4(sub_0203068C(param0->unk_34->unk_0C), v0, sub_0205E6A8(v0), 0);
}
sub_020306E4(sub_0203068C(param0->unk_34->unk_0C), sub_0205E430(v4, v3), sub_0205E6A8(sub_0205E430(v4, v3)), 0);
sub_020306E4(sub_0203068C(param0->unk_34->unk_0C), sub_0205E488(v4, v3), sub_0205E6A8(sub_0205E488(v4, v3)), 0);
return 0;
}

738
src/unk_0204F13C.c Normal file
View File

@@ -0,0 +1,738 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_0200B358_decl.h"
#include "struct_decls/struct_02030114_decl.h"
#include "struct_decls/struct_0203026C_decl.h"
#include "struct_decls/struct_0203068C_decl.h"
#include "struct_decls/struct_020308A0_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_020508D4_decl.h"
#include "struct_decls/struct_02073C74_decl.h"
#include "struct_decls/struct_02079FF4_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "constdata/const_020F1E88.h"
#include "constdata/const_020F410C.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "struct_defs/struct_0204AFC4.h"
#include "struct_defs/struct_0204F3D0.h"
#include "struct_defs/struct_02098C44.h"
#include "struct_defs/struct_02098D38.h"
#include "unk_0200B358.h"
#include "unk_02017E74.h"
#include "unk_020244AC.h"
#include "unk_02025E08.h"
#include "unk_02028124.h"
#include "unk_0202CD50.h"
#include "unk_0202D05C.h"
#include "unk_0202D778.h"
#include "unk_02030108.h"
#include "unk_0203061C.h"
#include "unk_02030880.h"
#include "unk_02034198.h"
#include "unk_0203CC84.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_0204F13C.h"
#include "unk_0204FA34.h"
#include "unk_020508D4.h"
#include "unk_0205DFC4.h"
#include "unk_02073C2C.h"
#include "unk_02079FEC.h"
#include "unk_0207A274.h"
#include "unk_0207D3B8.h"
#include "unk_0208C324.h"
#include "unk_02099500.h"
typedef struct UnkStruct_0204F470_t {
int unk_00;
u8 unk_04;
u8 unk_05;
u8 unk_06[2];
void ** unk_08;
} UnkStruct_0204F470;
enum {
UnkEnum_0204F13C_1,
UnkEnum_0204F13C_2,
UnkEnum_0204F13C_3,
UnkEnum_0204F13C_4,
UnkEnum_0204F13C_5,
};
BOOL sub_0204F13C(UnkStruct_0203E724 * param0);
static BOOL sub_0204F268(u16 param0, UnkStruct_021C0794 * param1);
BOOL sub_0204F360(UnkStruct_0203E724 * param0);
BOOL sub_0204F398(UnkStruct_0203E724 * param0);
void sub_0204F3D0(UnkStruct_020508D4 * param0, u16 param1, u16 * param2);
static BOOL sub_0204F414(UnkStruct_020508D4 * param0);
void sub_0204F470(UnkStruct_020508D4 * param0, void ** param1, u8 param2);
static BOOL sub_0204F4A4(UnkStruct_020508D4 * param0);
static int sub_0204F50C(UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1, int param2);
static int sub_0204F5D8(UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1);
static int sub_0204F628(UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1, int param2);
static int sub_0204F6B0(UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1);
BOOL sub_0204F13C (UnkStruct_0203E724 * param0)
{
u8 v0;
u8 v1[4];
u16 v2[4];
u16 v3, v4, v5;
u16 * v6, * v7;
void ** v8;
UnkStruct_0204AFC4 * v9;
UnkStruct_02030114 * v10;
UnkStruct_0203026C * v11;
v3 = sub_0203E838(param0);
v4 = inline_02049538(param0);
v5 = sub_0203E838(param0);
v6 = sub_0203F118(param0->unk_34, v5);
v10 = sub_02030114(param0->unk_34->unk_0C);
v11 = sub_0203026C(param0->unk_34->unk_0C);
v8 = sub_0203F098(param0->unk_34, 19);
switch (v3) {
case 0:
*v6 = sub_0204F268(v4, param0->unk_34->unk_0C);
break;
case 1:
if (v4 == 3) {
*v6 = sub_02030698(sub_0203068C(param0->unk_34->unk_0C),
106,
sub_0205E6A8(106));
} else {
*v6 = (u16)sub_020302B4(v11, 5,
v4, 0, NULL);
}
break;
case 2:
*v6 = sub_02030698(sub_0203068C(param0->unk_34->unk_0C),
sub_0205E55C(v4),
sub_0205E6A8(sub_0205E55C(v4)));
break;
case 3:
sub_0204FA50(param0->unk_34->unk_0C, v11, v4);
break;
case 4:
if (v4 == 0) {
v0 = 0;
} else if (v4 == 1) {
v0 = 1;
} else if (v4 == 2) {
v0 = 2;
} else {
v0 = 2;
}
;
sub_0204F470(param0->unk_28, v8, v0);
return 1;
default:
;
GF_ASSERT(FALSE);
*v6 = 0;
break;
}
return 0;
}
static BOOL sub_0204F268 (u16 param0, UnkStruct_021C0794 * param1)
{
u8 v0, v1, v2, v3;
u16 v4, v5;
UnkStruct_02079FF4 * v6;
UnkStruct_02073C74 * v7;
u16 v8[6];
v6 = sub_0207A268(param1);
v3 = sub_0207A0F8(v6);
if (v3 < param0) {
return 0;
}
for (v0 = 0; v0 < 6; v0++) {
v8[v0] = 0;
}
for (v0 = 0, v2 = 0; v0 < v3; v0++) {
v7 = sub_0207A0FC(v6, v0);
v4 = sub_02074470(v7, 5, NULL);
v5 = sub_02074470(v7, 161, NULL);
if (sub_02074470(v7, 76, NULL) != 0) {
continue;
}
if (v5 < 30) {
continue;
}
if (sub_02078804(v4) == 1) {
continue;
}
v2++;
v8[v0] = v4;
}
if (param0 == 2) {
for (v1 = 0; v1 < v3; v1++) {
for (v0 = 0; v0 < v3; v0++) {
if (v1 != v0) {
if (v8[v1] != 0) {
if (v8[v1] == v8[v0]) {
return 1;
}
}
}
}
}
return 0;
}
if (v2 < param0) {
return 0;
}
return 1;
}
BOOL sub_0204F360 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203026C * v0;
u16 v1 = inline_02049538(param0);
v0 = sub_0203026C(param0->unk_34->unk_0C);
sub_0204FA50(param0->unk_34->unk_0C, v0, v1);
return 0;
}
BOOL sub_0204F398 (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 * v1 = inline_0204FCAC(param0);
;
;
sub_0204F3D0(param0->unk_28, v0, v1);
return 1;
}
void sub_0204F3D0 (UnkStruct_020508D4 * param0, u16 param1, u16 * param2)
{
UnkStruct_0204F3D0 * v0;
v0 = sub_02018144(11, sizeof(UnkStruct_0204F3D0));
memset(v0, 0, sizeof(UnkStruct_0204F3D0));
v0->unk_04 = param1;
v0->unk_08 = param2;
sub_02099514(v0);
sub_02050944(param0, sub_0204F414, v0);
return;
}
static BOOL sub_0204F414 (UnkStruct_020508D4 * param0)
{
UnkStruct_0204F3D0 * v0 = sub_02050A64(param0);
switch (v0->unk_00) {
case 0:
if (sub_020359DC(132, v0, sizeof(UnkStruct_0204F3D0)) == 1) {
v0->unk_00++;
}
break;
case 1:
if (v0->unk_01 >= 2) {
if (v0->unk_04 == v0->unk_06) {
*v0->unk_08 = 0;
} else {
*v0->unk_08 = 1;
}
;
;
;
v0->unk_00++;
}
break;
case 2:
sub_020181C4(v0);
return 1;
}
;
return 0;
}
void sub_0204F470 (UnkStruct_020508D4 * param0, void ** param1, u8 param2)
{
UnkStruct_0203CDB0 * v0 = sub_02050A60(param0);
UnkStruct_0204F470 * v1 = sub_02018144(11, sizeof(UnkStruct_0204F470));
MI_CpuClear8(v1, sizeof(UnkStruct_0204F470));
v1->unk_04 = param2;
v1->unk_08 = param1;
sub_02050944(v0->unk_10, sub_0204F4A4, v1);
return;
}
static BOOL sub_0204F4A4 (UnkStruct_020508D4 * param0)
{
UnkStruct_0203CDB0 * v0 = sub_02050A60(param0);
UnkStruct_0204F470 * v1 = sub_02050A64(param0);
switch (v1->unk_00) {
case UnkEnum_0204F13C_1:
v1->unk_00 = sub_0204F50C(v1, v0, 11);
break;
case UnkEnum_0204F13C_2:
v1->unk_00 = sub_0204F5D8(v1, v0);
break;
case UnkEnum_0204F13C_3:
v1->unk_00 = sub_0204F628(v1, v0, 11);
break;
case UnkEnum_0204F13C_4:
v1->unk_00 = sub_0204F6B0(v1, v0);
break;
case UnkEnum_0204F13C_5:
sub_020181C4(v1);
return 1;
}
return 0;
}
static int sub_0204F50C (UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1, int param2)
{
u8 v0;
UnkStruct_02098C44 * v1 = sub_02018144(11, sizeof(UnkStruct_02098C44));
MI_CpuClearFast(v1, sizeof(UnkStruct_02098C44));
v1->unk_00 = sub_0207A268(param1->unk_0C);
v1->unk_04 = sub_0207D990(param1->unk_0C);
v1->unk_08 = sub_02028430(param1->unk_0C);
v1->unk_0C = sub_02025E44(param1->unk_0C);
v1->unk_21 = 0;
v1->unk_20 = 22;
v1->unk_1C = param1;
v1->unk_22 = param0->unk_05;
for (v0 = 0; v0 < 2; v0++) {
v1->unk_2C[v0] = param0->unk_06[v0];
}
v1->unk_33 = 30;
v1->unk_32_0 = 1;
v1->unk_32_4 = 1;
if (param0->unk_04 == 1) {
v1->unk_32_0 = 2;
v1->unk_32_4 = 2;
}
sub_0203CD84(param1, &Unk_020F1E88, v1);
*(param0->unk_08) = v1;
return UnkEnum_0204F13C_2;
}
static int sub_0204F5D8 (UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1)
{
int v0;
UnkStruct_02098C44 * v1;
if (sub_020509B4(param1)) {
return UnkEnum_0204F13C_2;
}
v1 = *(param0->unk_08);
switch (v1->unk_22) {
case 7:
return UnkEnum_0204F13C_5;
case 6:
return UnkEnum_0204F13C_5;
default:
break;
}
MI_CpuCopy8(v1->unk_2C, param0->unk_06, 2);
param0->unk_05 = v1->unk_22;
sub_020181C4(v1);
*(param0->unk_08) = NULL;
return UnkEnum_0204F13C_3;
}
static int sub_0204F628 (UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1, int param2)
{
UnkStruct_02098D38 * v0;
UnkStruct_021C0794 * v1;
static const u8 v2[] = {
0,
1,
2,
4,
3,
5,
6,
7,
8
};
v1 = param1->unk_0C;
v0 = sub_02018184(param2, sizeof(UnkStruct_02098D38));
MI_CpuClear8(v0, sizeof(UnkStruct_02098D38));
v0->unk_04 = sub_02025E44(v1);
v0->unk_00 = sub_0207A268(v1);
v0->unk_1C = sub_0207A274(v1);
v0->unk_2C = sub_0208C324(v1);
v0->unk_11 = 1;
v0->unk_14 = param0->unk_05;
v0->unk_13 = (u8)sub_0207A0F8(v0->unk_00);
v0->unk_18 = 0;
v0->unk_12 = 0;
v0->unk_20 = sub_0202D79C(v1);
sub_0208D720(v0, v2);
sub_0208E9C0(v0, sub_02025E38(v1));
sub_0203CD84(param1, &Unk_020F410C, v0);
*(param0->unk_08) = v0;
return UnkEnum_0204F13C_4;
}
static int sub_0204F6B0 (UnkStruct_0204F470 * param0, UnkStruct_0203CDB0 * param1)
{
UnkStruct_02098D38 * v0;
if (sub_020509B4(param1)) {
return UnkEnum_0204F13C_4;
}
v0 = *(param0->unk_08);
param0->unk_05 = v0->unk_14;
sub_020181C4(v0);
*(param0->unk_08) = NULL;
return UnkEnum_0204F13C_1;
}
BOOL sub_0204F6D8(UnkStruct_0203E724 * param0);
typedef struct {
u32 unk_00;
u32 unk_04;
} UnkStruct_020EC078;
static const UnkStruct_020EC078 Unk_020EC078[] = {
{10, 1},
{30, 3},
{50, 5},
{100, 5},
{150, 5},
{200, 5},
{250, 5},
{300, 5},
{350, 5},
{400, 5},
{450, 5},
{500, 10},
{600, 10},
{700, 10},
{800, 10},
{900, 10},
{1000, 10},
{1200, 30},
{1400, 30},
{1600, 30},
{1800, 30},
{2000, 50},
{2500, 50},
{3000, 50},
{3500, 50},
{4000, 50},
{4500, 50},
{5000, 50},
{5500, 50},
{6000, 50},
{6500, 50},
{7000, 50},
{7500, 50},
{8000, 50},
{8500, 50},
{9000, 50},
{9500, 50},
{10000, 100},
{20000, 200},
{30000, 300},
{40000, 400},
{50000, 500},
{60000, 600},
{70000, 700},
{80000, 800},
{90000, 900},
{100000, 1000},
};
BOOL sub_0204F6D8 (UnkStruct_0203E724 * param0)
{
int v0;
int v1;
UnkStruct_020308A0 * v2;
UnkStruct_0203068C * v3;
u32 v4, v5, v6;
u16 v7, v8;
UnkStruct_0203CDB0 * v9 = param0->unk_34;
UnkStruct_0200B358 ** v10 = sub_0203F098(v9, 15);
u8 v11 = (*((param0)->unk_08++));
u8 v12 = (*((param0)->unk_08++));
u8 v13 = (*((param0)->unk_08++));
u8 v14 = (*((param0)->unk_08++));
u16 * v15 = inline_0204FCAC(param0);
u16 * v16 = inline_0204FCAC(param0);
v4 = 0;
v0 = 1;
v1 = 2;
if (sub_020247C8(v9->unk_0C) == 0) {
*v16 = 0;
return 0;
}
v2 = sub_020308A0(v9->unk_0C, 32, &v0);
if (v0 != 1) {
v4 = 0;
} else {
for (v5 = 0; v5 < 493; v5++) {
v4 += sub_020308BC(v9->unk_0C, v2,
0, v5);
;
}
}
;
if (v2 != NULL) {
sub_020181C4(v2);
}
sub_0200B60C(*v10, v11, v4, sub_0205DFC4(v4),
1, 1);
v7 = 0;
v6 = 0;
v8 = *v15;
for (v5 = (*v15); v5 < (NELEMS(Unk_020EC078)); v5++) {
if (Unk_020EC078[v5].unk_00 <= v4) {
v7 += Unk_020EC078[v5].unk_04;
*v15 += 1;
v6 = v5;
}
}
sub_0202CF70(sub_0202CD88(param0->unk_34->unk_0C), (1 + 67), v7);
if (v7 != 0) {
sub_0202D230(
sub_0202D750(param0->unk_34->unk_0C), v7, 5);
}
if (v4 == 0) {
*v16 = 0;
} else {
if (v8 != (*v15)) {
*v16 = 1;
} else {
*v16 = 2;
}
if (v8 >= (NELEMS(Unk_020EC078))) {
*v16 = 3;
return 0;
}
}
sub_0200B60C(*v10, v12, Unk_020EC078[v6].unk_00,
sub_0205DFC4(Unk_020EC078[v6].unk_00),
1, 1);
sub_0200B60C(*v10, v13, Unk_020EC078[*v15].unk_00,
sub_0205DFC4(Unk_020EC078[*v15].unk_00),
1, 1);
sub_0200B60C(*v10, v14, v7, sub_0205DFC4(v7),
1, 1);
return 0;
}
BOOL sub_0204F8A8(UnkStruct_0203E724 * param0);
BOOL sub_0204F8A8 (UnkStruct_0203E724 * param0)
{
int v0;
UnkStruct_020308A0 * v1;
u32 v2, v3, v4;
UnkStruct_0203CDB0 * v5 = param0->unk_34;
u16 * v6 = inline_0204FCAC(param0);
v4 = 0;
v0 = 1;
if (sub_020247C8(v5->unk_0C) == 0) {
*v6 = 0;
return 0;
}
v1 = sub_020308A0(v5->unk_0C, 32, &v0);
if (v0 != 1) {
v4 = 0;
} else {
for (v3 = 0; v3 < 493; v3++) {
v2 = 0;
v2 += sub_020308BC(v5->unk_0C, v1,
0, v3);
v2 += sub_020308BC(v5->unk_0C, v1,
1, v3);
v2 += sub_020308BC(v5->unk_0C, v1,
2, v3);
if (v2 > 0) {
v4++;
}
}
}
;
if (v1 != NULL) {
sub_020181C4(v1);
}
*v6 = v4;
return 0;
}
BOOL sub_0204F950(UnkStruct_0203E724 * param0);
BOOL sub_0204F950 (UnkStruct_0203E724 * param0)
{
int v0;
int v1;
UnkStruct_020308A0 * v2;
UnkStruct_0203068C * v3;
u32 v4, v5;
UnkStruct_0203CDB0 * v6 = param0->unk_34;
u16 * v7 = inline_0204FCAC(param0);
v4 = 0;
v0 = 1;
v1 = 2;
if (sub_020247C8(v6->unk_0C) == 0) {
*v7 = 0;
return 0;
}
v2 = sub_020308A0(v6->unk_0C, 32, &v0);
if (v0 != 1) {
v4 = 0;
} else {
for (v5 = 0; v5 < 493; v5++) {
v4 += sub_020308BC(v6->unk_0C, v2,
0, v5);
;
}
}
;
if (v2 != NULL) {
sub_020181C4(v2);
}
if (v4 > 10000) {
v4 = 10000;
}
*v7 = v4;
return 0;
}
BOOL sub_0204F9D4(UnkStruct_0203E724 * param0);
BOOL sub_0204F9D4 (UnkStruct_0203E724 * param0)
{
u16 v0, v1;
u16 * v2 = inline_0204FCAC(param0);
v0 = sub_02030698(sub_0203068C(param0->unk_34->unk_0C),
sub_0205E55C(0),
0xff);
v1 = sub_02030698(sub_0203068C(param0->unk_34->unk_0C),
sub_0205E50C(0),
0xff);
*v2 = 0;
if (v1 == 50) {
*v2 = 1;
}
;
;
return 0;
}

51
src/unk_0204FA34.c Normal file
View File

@@ -0,0 +1,51 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_0203026C_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "struct_defs/struct_0204F3D0.h"
#include "unk_02030108.h"
#include "unk_0203061C.h"
#include "unk_02034198.h"
#include "unk_0204FA34.h"
#include "unk_0205DFC4.h"
void sub_0204FA34(int param0, int param1, void * param2, void * param3);
void sub_0204FA50(UnkStruct_021C0794 * param0, UnkStruct_0203026C * param1, u8 param2);
void sub_0204FA34 (int param0, int param1, void * param2, void * param3)
{
int v0, v1;
UnkStruct_0204F3D0 * v2 = param3;
const UnkStruct_0204F3D0 * v3 = param2;
v1 = 0;
v2->unk_01++;
if (sub_0203608C() == param0) {
return;
}
v2->unk_06 = v3->unk_04;
return;
}
void sub_0204FA50 (UnkStruct_021C0794 * param0, UnkStruct_0203026C * param1, u8 param2)
{
int v0;
u8 v1[4];
u16 v2, v3;
v1[0] = 0;
sub_02030280(param1, 5, param2, 0, v1);
if (param2 == 3) {
sub_020306E4(sub_0203068C(param0), 106, sub_0205E6A8(106), 0);
}
sub_020306E4(sub_0203068C(param0), sub_0205E50C(param2), sub_0205E6A8(sub_0205E50C(param2)), 0);
return;
}

368
src/unk_0204FAB4.c Normal file
View File

@@ -0,0 +1,368 @@
#include <nitro.h>
#include <string.h>
#include "inlines.h"
#include "struct_decls/struct_020302DC_decl.h"
#include "struct_decls/struct_0203041C_decl.h"
#include "struct_decls/struct_0203E724_decl.h"
#include "struct_decls/struct_020508D4_decl.h"
#include "struct_decls/struct_021C0794_decl.h"
#include "constdata/const_020F1E88.h"
#include "constdata/const_020F410C.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0203E724_t.h"
#include "struct_defs/struct_0204AFC4.h"
#include "struct_defs/struct_0204FCF8.h"
#include "struct_defs/struct_02098C44.h"
#include "struct_defs/struct_02098D38.h"
#include "unk_02017E74.h"
#include "unk_02025E08.h"
#include "unk_02028124.h"
#include "unk_0202D778.h"
#include "unk_020302D0.h"
#include "unk_0203061C.h"
#include "unk_02034198.h"
#include "unk_0203CC84.h"
#include "unk_0203E724.h"
#include "unk_0203E880.h"
#include "unk_02049D08.h"
#include "unk_0204FAB4.h"
#include "unk_020508D4.h"
#include "unk_0205DFC4.h"
#include "unk_02079FEC.h"
#include "unk_0207A274.h"
#include "unk_0207D3B8.h"
#include "unk_0208C324.h"
#include "unk_02099500.h"
#include <nitro/code16.h>
typedef struct {
int unk_00;
u8 unk_04;
u8 unk_05;
u8 unk_06[3];
void ** unk_0C;
} UnkStruct_0204FE50;
BOOL sub_0204FAB4(UnkStruct_0203E724 * param0);
BOOL sub_0204FBB4(UnkStruct_0203E724 * param0);
static void sub_0204FBEC(UnkStruct_021C0794 * param0, UnkStruct_0203041C * param1, u8 param2);
static void sub_0204FDB4(UnkStruct_020508D4 * param0, void ** param1, u8 param2);
static BOOL sub_0204FDE8(UnkStruct_020508D4 * param0);
static int sub_0204FE50(UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1, int param2);
static int sub_0204FF1C(UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1);
static int sub_0204FF6C(UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1, int param2);
static int sub_0204FFF4(UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1);
BOOL sub_0204FCAC(UnkStruct_0203E724 * param0);
static void sub_0204FCF8(UnkStruct_020508D4 * param0, u16 param1, u16 param2, u16 * param3);
static BOOL sub_0204FD38(UnkStruct_020508D4 * param0);
BOOL sub_0204FAB4 (UnkStruct_0203E724 * param0)
{
u8 v0;
u8 v1[4];
u16 v2[4];
u16 v3, v4, v5;
u16 * v6, * v7;
void ** v8;
UnkStruct_0204AFC4 * v9;
UnkStruct_020302DC * v10;
UnkStruct_0203041C * v11;
v3 = sub_0203E838(param0);
v4 = inline_02049538(param0);
v5 = sub_0203E838(param0);
v6 = sub_0203F118(param0->unk_34, v5);
v10 = sub_020302DC(param0->unk_34->unk_0C);
v11 = sub_0203041C(param0->unk_34->unk_0C);
v8 = sub_0203F098(param0->unk_34, 19);
switch (v3) {
case 0:
*v6 = sub_02049EC4(v4, param0->unk_34->unk_0C, 0);
break;
case 1:
if (v4 == 3) {
*v6 = sub_02030698(sub_0203068C(param0->unk_34->unk_0C), 108, sub_0205E6A8(108));
} else {
*v6 = (u16)sub_02030470(v11, 9, v4, 0, NULL);
}
break;
case 3:
sub_0204FBEC(param0->unk_34->unk_0C, v11, v4);
break;
case 4:
if (v4 == 0) {
v0 = 0;
} else if (v4 == 1) {
v0 = 1;
} else if (v4 == 2) {
v0 = 2;
} else {
v0 = 2;
}
sub_0204FDB4(param0->unk_28, v8, v0);
return 1;
default:
GF_ASSERT(FALSE);
*v6 = 0;
break;
}
return 0;
}
BOOL sub_0204FBB4 (UnkStruct_0203E724 * param0)
{
UnkStruct_0203041C * v0;
u16 v1 = inline_02049538(param0);
v0 = sub_0203041C(param0->unk_34->unk_0C);
sub_0204FBEC(param0->unk_34->unk_0C, v0, v1);
return 0;
}
static void sub_0204FBEC (UnkStruct_021C0794 * param0, UnkStruct_0203041C * param1, u8 param2)
{
int v0;
u16 v1[4];
u8 v2[4];
v2[0] = 0;
sub_02030430(param1, 9, param2, 0, v2);
if (param2 == 3) {
sub_020306E4(sub_0203068C(param0), 108, sub_0205E6A8(108), 0);
}
sub_020306E4(sub_0203068C(param0), sub_0205E5E0(param2), sub_0205E6A8(sub_0205E5E0(param2)), 0);
sub_020306E4(sub_0203068C(param0), sub_0205E630(param2), sub_0205E6A8(sub_0205E630(param2)), 0);
v1[0] = 1;
for (v0 = 0; v0 < 3; v0++) {
sub_020306E4(sub_0203068C(param0), sub_0205E5B4(param2, v0), sub_0205E6A8(sub_0205E5B4(param2, v0)), 1);
}
return;
}
BOOL sub_0204FCAC (UnkStruct_0203E724 * param0)
{
u16 v0 = inline_02049538(param0);
u16 v1 = inline_02049538(param0);
u16 * v2 = inline_0204FCAC(param0);
sub_0204FCF8(param0->unk_28, v0, v1, v2);
return 1;
}
static void sub_0204FCF8 (UnkStruct_020508D4 * param0, u16 param1, u16 param2, u16 * param3)
{
UnkStruct_0204FCF8 * v0;
v0 = sub_02018144(11, sizeof(UnkStruct_0204FCF8));
memset(v0, 0, sizeof(UnkStruct_0204FCF8));
v0->unk_04[0] = param1;
v0->unk_04[1] = param2;
v0->unk_0C = param3;
sub_02099514(v0);
sub_02050944(param0, sub_0204FD38, v0);
return;
}
static BOOL sub_0204FD38 (UnkStruct_020508D4 * param0)
{
UnkStruct_0204FCF8 * v0 = sub_02050A64(param0);
switch (v0->unk_00) {
case 0:
if (sub_020359DC(133, v0, sizeof(UnkStruct_0204FCF8)) == 1) {
v0->unk_00++;
}
break;
case 1:
if (v0->unk_01 >= 2) {
*v0->unk_0C = 0;
if ((v0->unk_04[0] == v0->unk_08[0]) || (v0->unk_04[0] == v0->unk_08[1])) {
*v0->unk_0C += 1;
}
if ((v0->unk_04[1] == v0->unk_08[0]) || (v0->unk_04[1] == v0->unk_08[1])) {
*v0->unk_0C += 2;
}
v0->unk_00++;
}
break;
case 2:
sub_020181C4(v0);
return 1;
}
return 0;
}
static void sub_0204FDB4 (UnkStruct_020508D4 * param0, void ** param1, u8 param2)
{
UnkStruct_0203CDB0 * v0 = sub_02050A60(param0);
UnkStruct_0204FE50 * v1 = sub_02018144(11, sizeof(UnkStruct_0204FE50));
MI_CpuClear8(v1, sizeof(UnkStruct_0204FE50));
v1->unk_04 = param2;
v1->unk_0C = param1;
sub_02050944(v0->unk_10, sub_0204FDE8, v1);
return;
}
static BOOL sub_0204FDE8 (UnkStruct_020508D4 * param0)
{
UnkStruct_0203CDB0 * v0 = sub_02050A60(param0);
UnkStruct_0204FE50 * v1 = sub_02050A64(param0);
switch (v1->unk_00) {
case 0:
v1->unk_00 = sub_0204FE50(v1, v0, 11);
break;
case 1:
v1->unk_00 = sub_0204FF1C(v1, v0);
break;
case 2:
v1->unk_00 = sub_0204FF6C(v1, v0, 11);
break;
case 3:
v1->unk_00 = sub_0204FFF4(v1, v0);
break;
case 4:
sub_020181C4(v1);
return 1;
}
return 0;
}
static int sub_0204FE50 (UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1, int param2)
{
u8 v0;
UnkStruct_02098C44 * v1 = sub_02018144(11, sizeof(UnkStruct_02098C44));
MI_CpuClearFast(v1, sizeof(UnkStruct_02098C44));
v1->unk_00 = sub_0207A268(param1->unk_0C);
v1->unk_04 = sub_0207D990(param1->unk_0C);
v1->unk_08 = sub_02028430(param1->unk_0C);
v1->unk_0C = sub_02025E44(param1->unk_0C);
v1->unk_21 = 0;
v1->unk_20 = 23;
v1->unk_1C = param1;
v1->unk_22 = param0->unk_05;
for (v0 = 0; v0 < 3; v0++) {
v1->unk_2C[v0] = param0->unk_06[v0];
}
v1->unk_33 = 100;
v1->unk_32_0 = 3;
v1->unk_32_4 = 3;
if (param0->unk_04 == 2) {
v1->unk_32_0 = 2;
v1->unk_32_4 = 2;
}
sub_0203CD84(param1, &Unk_020F1E88, v1);
*(param0->unk_0C) = v1;
return 1;
}
static int sub_0204FF1C (UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1)
{
int v0;
UnkStruct_02098C44 * v1;
if (sub_020509B4(param1)) {
return 1;
}
v1 = *(param0->unk_0C);
switch (v1->unk_22) {
case 7:
return 4;
case 6:
return 4;
default:
break;
}
MI_CpuCopy8(v1->unk_2C, param0->unk_06, 3);
param0->unk_05 = v1->unk_22;
sub_020181C4(v1);
*(param0->unk_0C) = NULL;
return 2;
}
static int sub_0204FF6C (UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1, int param2)
{
UnkStruct_02098D38 * v0;
UnkStruct_021C0794 * v1;
static const u8 v2[] = {
0, 1, 2, 4, 3, 5, 6, 7, 8
};
v1 = param1->unk_0C;
v0 = sub_02018184(param2, sizeof(UnkStruct_02098D38));
MI_CpuClear8(v0, sizeof(UnkStruct_02098D38));
v0->unk_04 = sub_02025E44(v1);
v0->unk_00 = sub_0207A268(v1);
v0->unk_1C = sub_0207A274(v1);
v0->unk_2C = sub_0208C324(v1);
v0->unk_11 = 1;
v0->unk_14 = param0->unk_05;
v0->unk_13 = (u8)sub_0207A0F8(v0->unk_00);
v0->unk_18 = 0;
v0->unk_12 = 0;
v0->unk_20 = sub_0202D79C(v1);
sub_0208D720(v0, v2);
sub_0208E9C0(v0, sub_02025E38(v1));
sub_0203CD84(param1, &Unk_020F410C, v0);
*(param0->unk_0C) = v0;
return 3;
}
static int sub_0204FFF4 (UnkStruct_0204FE50 * param0, UnkStruct_0203CDB0 * param1)
{
UnkStruct_02098D38 * v0;
if (sub_020509B4(param1)) {
return 3;
}
v0 = *(param0->unk_0C);
param0->unk_05 = v0->unk_14;
sub_020181C4(v0);
*(param0->unk_0C) = NULL;
return 0;
}

551
src/unk_0205C22C.c Normal file
View File

@@ -0,0 +1,551 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_0201CD38_decl.h"
#include "struct_decls/struct_02025E6C_decl.h"
#include "struct_decls/struct_02027F8C_decl.h"
#include "struct_decls/struct_0205B43C_decl.h"
#include "struct_decls/struct_02061830_decl.h"
#include "struct_decls/struct_02061AB4_decl.h"
#include "constdata/const_020ED570.h"
#include "struct_defs/struct_0203330C.h"
#include "struct_defs/struct_0203CDB0.h"
#include "struct_defs/struct_0205B4F8.h"
#include "struct_defs/struct_0205C22C.h"
#include "struct_defs/struct_0205C680.h"
#include "struct_defs/struct_0205C924.h"
#include "struct_defs/struct_0205C95C.h"
#include "unk_02005474.h"
#include "unk_0200D9E8.h"
#include "unk_02014A84.h"
#include "unk_02017E74.h"
#include "unk_02023790.h"
#include "unk_020244AC.h"
#include "unk_02025E68.h"
#include "unk_02027F84.h"
#include "unk_020366A0.h"
#include "unk_020508D4.h"
#include "unk_0205B33C.h"
#include "unk_0205C22C.h"
#include "unk_0205E7D0.h"
#include "unk_02061804.h"
#include "unk_020655F4.h"
#include "unk_020711EC.h"
#include "overlay005/ov5_021F134C.h"
#include "overlay005/ov5_021F600C.h"
static void sub_0205C304(UnkStruct_0201CD38 * param0, void * param1);
static void sub_0205C44C(UnkStruct_0205C22C * param0, UnkStruct_0205B43C * param1, UnkStruct_02061830 * param2, UnkStruct_02027F8C * param3);
static int sub_0205C340(UnkStruct_0205C22C * param0, int param1, WMBssDesc * param2, UnkStruct_02027F8C * param3);
static void sub_0205C51C(UnkStruct_0205C22C * param0, UnkStruct_02061830 * param1);
static void sub_0205C680(UnkStruct_0205C680 * param0, int param1);
static void sub_0205C6BC(UnkStruct_0205C680 * param0);
static void sub_0205C6E0(UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1, int param2, int param3);
static void sub_0205C788(UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1);
static void sub_0205C7BC(UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1);
static void sub_0205C7E4(UnkStruct_02061830 * param0, int param1, int param2);
static void sub_0205C444(UnkStruct_0205C680 param0[], int param1, int param2);
void sub_0205C970(UnkStruct_0205C95C * param0);
UnkStruct_0205C95C * sub_0205C95C(int param0);
static void sub_0205C944(UnkStruct_0205C95C * param0);
static void sub_0205C924(UnkStruct_0205C924 * param0);
static void sub_0205C900(UnkStruct_0205C95C * param0);
static void sub_0205C8DC(UnkStruct_0205C924 * param0);
UnkStruct_0205C22C * sub_0205C22C (UnkStruct_0205B43C * param0)
{
UnkStruct_0205C22C * v0;
v0 = (UnkStruct_0205C22C *)sub_02018144(31, sizeof(UnkStruct_0205C22C));
MI_CpuClearFast(v0, sizeof(UnkStruct_0205C22C));
v0->unk_00 = param0;
v0->unk_47C = 1;
v0->unk_04 = sub_0200D9E8(sub_0205C304, v0, 11);
v0->unk_470 = sub_0205B770(param0);
v0->unk_474 = sub_020245BC(v0->unk_470->unk_0C, 9);
v0->unk_08 = v0->unk_470->unk_3C;
sub_02017FD4(11, 89, 10000);
v0->unk_478 = sub_0205C95C(89);
sub_0205C2C8(v0);
return v0;
}
void sub_0205C2B0 (UnkStruct_0205C22C * param0)
{
int v0;
for (v0 = 0; v0 < 50 + 1; v0++) {
if (param0->unk_0C[v0].unk_01 != 0) {
param0->unk_0C[v0].unk_00 = 3;
}
}
}
void sub_0205C2C8 (UnkStruct_0205C22C * param0)
{
int v0;
for (v0 = 0; v0 < 50 + 1; v0++) {
param0->unk_0C[v0].unk_00 = 0;
param0->unk_0C[v0].unk_01 = 0;
param0->unk_0C[v0].unk_02 = 0;
param0->unk_0C[v0].unk_03 = 0;
}
}
void sub_0205C2E0 (UnkStruct_0205C22C * param0)
{
sub_0200DA58(param0->unk_04);
sub_0205C970(param0->unk_478);
sub_0201807C(89);
sub_020181C4(param0);
}
static void sub_0205C304 (UnkStruct_0201CD38 * param0, void * param1)
{
UnkStruct_0205C22C * v0 = (UnkStruct_0205C22C *)param1;
UnkStruct_0205B43C * v1 = v0->unk_00;
UnkStruct_02061AB4 * v2;
int v3;
if (!sub_020509A4(v0->unk_470)) {
v0->unk_08 = v0->unk_470->unk_3C;
sub_0205C44C(v0, v1, v0->unk_470->unk_38, v0->unk_474);
sub_0205C51C(v0, v0->unk_470->unk_38);
}
}
static int sub_0205C340 (UnkStruct_0205C22C * param0, int param1, WMBssDesc * param2, UnkStruct_02027F8C * param3)
{
int v0, v1, v2 = 0;
UnkStruct_0203330C * v3;
UnkStruct_0205B4F8 * v4;
UnkStruct_02061AB4 * v5;
if (param2 == NULL) {
for (v0 = 0; v0 < 4; v0++) {
v1 = Unk_020ED570[param1] + v0;
sub_0205C444(param0->unk_0C, v1, 3);
}
return 0;
}
v3 = (UnkStruct_0203330C *)param2->gameInfo.userGameInfo;
v4 = (UnkStruct_0205B4F8 *)v3->unk_30;
if (param0->unk_0C[param1].unk_0C != v3->unk_00) {
for (v0 = 0; v0 < 4; v0++) {
v1 = Unk_020ED570[param1] + v0;
sub_0205C444(param0->unk_0C, v1, 3);
}
return 0;
}
for (v0 = 0; v0 < 4; v0++) {
v1 = Unk_020ED570[param1] + v0;
switch (param0->unk_0C[v1].unk_01) {
case 0:
if (v4->unk_18[v0] != 0) {
param0->unk_0C[v1].unk_00 = 2;
param0->unk_0C[v1].unk_08 = (v4->unk_18[v0] & 0x7f);
param0->unk_0C[v1].unk_02 = sub_020280E0(param3, v4->unk_00[v0]);
v2 = 1;
}
break;
case 2:
if (v4->unk_18[v0] == 0) {
sub_0205C444(param0->unk_0C, v1, 3);
{
int v6;
for (v6 = 0; v6 < 4; v6++) {
(void)0;
}
}
} else {
v2 = 1;
}
break;
case 4:
param0->unk_0C[v1].unk_00 = 0;
break;
}
}
return v2;
}
static void sub_0205C444 (UnkStruct_0205C680 param0[], int param1, int param2)
{
param0[param1].unk_00 = param2;
}
static void sub_0205C44C (UnkStruct_0205C22C * param0, UnkStruct_0205B43C * param1, UnkStruct_02061830 * param2, UnkStruct_02027F8C * param3)
{
WMBssDesc * v0;
int v1;
UnkStruct_0203330C * v2;
UnkStruct_02025E6C * v3;
for (v1 = 0; v1 < 10; v1++) {
v0 = sub_0205B774(param1, v1);
if (v0 != NULL) {
v2 = (UnkStruct_0203330C *)v0->gameInfo.userGameInfo;
v3 = (UnkStruct_02025E6C *)v2->unk_10;
} else {
v2 = NULL;
v3 = NULL;
}
switch (param0->unk_0C[v1].unk_01) {
case 0:
if (v0 != NULL) {
param0->unk_0C[v1].unk_08 = sub_02025F8C(v3);
param0->unk_0C[v1].unk_02 = sub_020280E0(param3, sub_02025F20(v3));
param0->unk_0C[v1].unk_0C = v2->unk_00;
if (sub_0205C340(param0, v1, v0, param3)) {
param0->unk_0C[v1].unk_00 = 2;
} else {
param0->unk_0C[v1].unk_00 = 1;
}
}
break;
case 2:
if (v0 == NULL) {
sub_0205C444(param0->unk_0C, v1, 3);
} else {
if (param0->unk_0C[v1].unk_0C != v2->unk_00) {
sub_0205C444(param0->unk_0C, v1, 3);
}
}
if (sub_0205C340(param0, v1, v0, param3)) {
if (param0->unk_0C[v1].unk_09 == 1) {
param0->unk_0C[v1].unk_00 = 3;
}
}
break;
case 4:
param0->unk_0C[v1].unk_00 = 0;
break;
}
}
}
static void sub_0205C51C (UnkStruct_0205C22C * param0, UnkStruct_02061830 * param1)
{
UnkStruct_02061AB4 * v0;
int v1, v2, v3;
GF_ASSERT(param0->unk_08 != NULL);
v2 = sub_0205EABC(param0->unk_08);
v3 = sub_0205EAC8(param0->unk_08);
for (v1 = 0; v1 < 50; v1++) {
v0 = sub_0206251C(param1, v1 + 1);
if (v0 == NULL) {
GF_ASSERT(0);
}
switch (param0->unk_0C[v1].unk_01) {
case 0:
if (sub_020655F4(v0) == 1) {
int v4 = param0->unk_0C[v1].unk_00;
if ((v4 == 1) || (v4 == 2)) {
sub_0205C6E0(&param0->unk_0C[v1], v0, v2, v3);
}
}
break;
case 1:
if (sub_020655F4(v0) == 1) {
if (param0->unk_0C[v1].unk_00 == 3) {
param0->unk_0C[v1].unk_01 = 0;
param0->unk_0C[v1].unk_00 = 0;
sub_0205C680(&param0->unk_0C[v1], 1);
continue;
}
sub_020656AC(v0);
sub_02062DB4(v0, 0);
if ((param0->unk_0C[v1].unk_00 == 1) && (param0->unk_0C[v1].unk_09 == 0)) {
sub_020633A8(v0, 0x3);
sub_020629FC(v0, 1);
sub_02062A04(v0, 1);
param0->unk_0C[v1].unk_09 = 1;
}
param0->unk_0C[v1].unk_01 = 2;
param0->unk_0C[v1].unk_00 = 0;
}
break;
case 2:
if (sub_020655F4(v0) == 1) {
sub_0205C7BC(&param0->unk_0C[v1], v0);
if (param0->unk_0C[v1].unk_00 == 3) {
sub_0205C788(&param0->unk_0C[v1], v0);
}
sub_0205C6BC(&param0->unk_0C[v1]);
}
break;
case 3:
if (sub_020655F4(v0) == 1) {
sub_020656AC(v0);
param0->unk_0C[v1].unk_01 = 4;
param0->unk_0C[v1].unk_00 = 0;
param0->unk_0C[v1].unk_09 = 0;
sub_02062D64(v0, 1);
sub_02062D80(v0, 0);
}
break;
case 4:
param0->unk_0C[v1].unk_01 = 0;
break;
}
}
sub_0205C7BC(&param0->unk_0C[50], sub_0205EB3C(param0->unk_08));
sub_0205C6BC(&param0->unk_0C[50]);
}
static void sub_0205C680 (UnkStruct_0205C680 * param0, int param1)
{
if (param0->unk_10 != NULL) {
if (sub_020714F0(param0->unk_10)) {
sub_0207136C(param0->unk_10);
}
param0->unk_10 = NULL;
}
if (param1) {
if (param0->unk_14 != NULL) {
if (sub_020714F0(param0->unk_14)) {
sub_0207136C(param0->unk_14);
}
param0->unk_14 = NULL;
}
}
}
static void sub_0205C6BC (UnkStruct_0205C680 * param0)
{
if (param0->unk_04) {
param0->unk_06--;
if (param0->unk_06 == 0) {
sub_0205C680(param0, 0);
param0->unk_04 = 0;
}
}
}
static void sub_0205C6E0 (UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1, int param2, int param3)
{
int v0, v1, v2;
v0 = sub_02062FF0(param1);
v1 = sub_02062FF8(param1);
v2 = sub_02063000(param1);
if ((v0 == param2) && (v2 == param3)) {
return;
}
sub_02005748(1615);
sub_02061AD4(param1, param0->unk_08);
sub_0205C680(param0, 0);
sub_02063340(param1, v0, v1, v2, 1);
sub_0206296C(param1, 1);
sub_02065638(param1, 0x44);
sub_02062D64(param1, 0);
sub_02062D80(param1, 1);
param0->unk_01 = 1;
if (param0->unk_02 != 0) {
if (param0->unk_02 == 1) {
param0->unk_14 = ov5_021F16D4(param1, 1);
} else if (param0->unk_02 >= 2) {
param0->unk_14 = ov5_021F16D4(param1, 2);
}
param0->unk_02 = 0;
}
}
static void sub_0205C788 (UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1)
{
sub_02065638(param1, 0x43);
sub_02062DB4(param1, 1);
sub_020633A8(param1, 0x0);
sub_0205C680(param0, 1);
param0->unk_04 = 0;
param0->unk_06 = 0;
param0->unk_01 = 3;
}
static void sub_0205C7BC (UnkStruct_0205C680 * param0, UnkStruct_02061AB4 * param1)
{
if (param0->unk_03 == 1) {
if (param0->unk_04 == 0) {
param0->unk_10 = ov5_021F6094(param1);
param0->unk_06 = 30;
param0->unk_03 = 0;
param0->unk_04 = 1;
}
}
}
static void sub_0205C7E4 (UnkStruct_02061830 * param0, int param1, int param2)
{
int v0;
UnkStruct_02061AB4 * v1;
for (v0 = param1; v0 < param2; v0++) {
v1 = sub_0206251C(param0, v0);
if (v1 == NULL) {
GF_ASSERT(0);
}
sub_02062D64(v1, 1);
sub_02062D80(v1, 0);
sub_02062DB4(v1, 1);
}
}
void sub_0205C820 (UnkStruct_02061830 * param0, UnkStruct_0205C22C * param1)
{
UnkStruct_02061AB4 * v0;
UnkStruct_0205C680 * v1;
v0 = sub_0206251C(param0, 0);
if (v0 == NULL) {
GF_ASSERT(0);
}
if (sub_020655F4(v0) == 1) {
if (sub_02036AA0() || sub_02036A68()) {
int v2;
for (v2 = 0; v2 < 10; v2++) {
v1 = &param1->unk_0C[v2];
if (v1->unk_01 != 1) {
continue;
}
v0 = sub_0206251C(param0, v2 + 1);
if (v0 == NULL) {
GF_ASSERT(0);
}
sub_02061AD4(v0, v1->unk_08);
sub_0206296C(v0, 1);
sub_02065638(v0, 0x44);
sub_02062D64(v0, 0);
sub_02062D80(v0, 1);
v1->unk_01 = 1;
if (v1->unk_02 != 0) {
if (v1->unk_02 == 1) {
v1->unk_14 = ov5_021F16D4(v0, 1);
} else if (v1->unk_02 >= 2) {
v1->unk_14 = ov5_021F16D4(v0, 2);
}
v1->unk_02 = 0;
}
}
sub_0205C7E4(param0, 11, 51);
} else {
sub_0205C7E4(param0, 1, 51);
}
}
}
static void sub_0205C8DC (UnkStruct_0205C924 * param0)
{
param0->unk_00 = sub_02023790(7 + 1, 89);
param0->unk_04 = NULL;
param0->unk_08 = NULL;
sub_02014A9C(&param0->unk_14, 0);
param0->unk_10 = 0;
param0->unk_0C = 0;
}
static void sub_0205C900 (UnkStruct_0205C95C * param0)
{
int v0;
for (v0 = 0; v0 < 30; v0++) {
sub_0205C8DC(&param0->unk_00[v0]);
}
param0->unk_348 = 0;
param0->unk_34C = 0;
}
static void sub_0205C924 (UnkStruct_0205C924 * param0)
{
sub_020181C4(param0->unk_00);
if (param0->unk_04 != NULL) {
sub_020237BC(param0->unk_04);
}
if (param0->unk_08 != NULL) {
sub_020237BC(param0->unk_08);
}
}
static void sub_0205C944 (UnkStruct_0205C95C * param0)
{
int v0;
for (v0 = 0; v0 < 30; v0++) {
sub_0205C924(&param0->unk_00[v0]);
}
}
UnkStruct_0205C95C * sub_0205C95C (int param0)
{
UnkStruct_0205C95C * v0 = sub_02018144(param0, sizeof(UnkStruct_0205C95C));
sub_0205C900(v0);
return v0;
}
void sub_0205C970 (UnkStruct_0205C95C * param0)
{
sub_0205C944(param0);
sub_020181C4(param0);
}

117
src/unk_0205C980.c Normal file
View File

@@ -0,0 +1,117 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_0200B358_decl.h"
#include "unk_02006E3C.h"
#include "unk_0200B358.h"
#include "unk_02017E74.h"
#include "unk_0205C980.h"
static const int Unk_020ED7F0[][3] = {
{0x3, 0x3C, 0x3C},
{0x5, 0x6, 0x6},
{0xB, 0x18, 0x18},
{0x1f, 0x39, 0x39},
{0x32, 0x30, 0x30},
{0x33, 0xE, 0xE},
{0x3E, 0x20, 0x20},
{0x46, 0x31, 0x31},
{0x6, 0x3, 0x3},
{0x7, 0xA, 0xA},
{0xD, 0x24, 0x24},
{0xE, 0x19, 0x19},
{0x23, 0x55, 0x55},
{0x25, 0x23, 0x23},
{0x2A, 0x12, 0x12},
{0x3f, 0x21, 0x21}
};
static const int Unk_020ED770[][4] = {
{0x0, 0x1, 0x2, 0x3},
{0x1, 0x6, 0x7, 0x0},
{0x2, 0x3, 0x4, 0x5},
{0x3, 0x0, 0x5, 0x6},
{0x4, 0x1, 0x2, 0x7},
{0x5, 0x2, 0x7, 0x0},
{0x6, 0x3, 0x4, 0x1},
{0x7, 0x4, 0x5, 0x6}
};
void sub_0205C980 (u32 param0, int param1, UnkStruct_0200B358 * param2)
{
int v0 = param0 % 8;
int v1;
for (v1 = 0; v1 < 4; v1++) {
int v2 = Unk_020ED770[v0][v1] + 8 * param1;
sub_0200B960(param2, v1, Unk_020ED7F0[v2][1]);
}
}
int sub_0205C9BC (u32 param0, int param1, u32 param2)
{
int v0 = param0 % 8;
int v1 = Unk_020ED770[v0][param2] + 8 * param1;
return Unk_020ED7F0[v1][0];
}
static int sub_0205C9E0 (int param0, int param1)
{
int v0;
for (v0 = 0; v0 < 16 / 2; v0++) {
if (Unk_020ED7F0[v0 + (param0 * (16 / 2))][0] == param1) {
return v0 + (param0 * (16 / 2));
}
}
return 0;
}
int sub_0205CA0C (int param0, int param1)
{
return sub_0205C9E0(param0, param1);
}
int sub_0205CA14 (int param0, int param1, int param2)
{
int v0 = sub_0205C9E0(param0, param1);
switch (param2) {
case 0:
return v0;
break;
case 2:
return Unk_020ED7F0[v0][1];
break;
case 1:
return Unk_020ED7F0[v0][2];
break;
default:
GF_ASSERT(0);
}
return 0;
}
u16 * sub_0205CA4C (int param0)
{
u8 * v0, * v1;
NNSG2dPaletteData * v2, * v3;
u16 * v4, * v5;
int v6;
v0 = sub_02006F88(86, 7, &v2, param0);
v4 = sub_02018144(param0, 16 * 18 * 2);
v5 = (u16 *)v2->pRawData;
for (v6 = 0; v6 < 16 * 16; v6++) {
v4[v6] = v5[v6];
}
sub_020181C4(v0);
return v4;
}

103
src/unk_0205D8CC.c Normal file
View File

@@ -0,0 +1,103 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_02018340_decl.h"
#include "struct_decls/struct_02023790_decl.h"
#include "struct_defs/struct_020279FC.h"
#include "struct_defs/struct_0205AA50.h"
#include "unk_02002328.h"
#include "unk_02002B7C.h"
#include "unk_0200DA60.h"
#include "unk_02018340.h"
#include "unk_0201D670.h"
#include "unk_020279FC.h"
#include "unk_0205D8CC.h"
void sub_0205D8CC (u32 param0, u32 param1)
{
if (param1 == 1) {
sub_0201D710();
}
sub_02002E7C(param0, 13 * 32, 4);
sub_02002E98(param0, 12 * 32, 4);
}
void sub_0205D8F4 (UnkStruct_02018340 * param0, UnkStruct_0205AA50 * param1, u32 param2)
{
if (param2 == 3) {
sub_0201A7E8(param0, param1, 3, 2, 19, 27, 4, 12, (((1024 - (18 + 12) - 9 - (32 * 8)) - (18 + 12 + 24)) - (27 * 4)));
} else {
sub_0201A7E8(param0, param1, 7, 2, 19, 27, 4, 12, (512 - (27 * 4)));
}
}
void sub_0205D944 (UnkStruct_0205AA50 * param0, const UnkStruct_020279FC * param1)
{
sub_0200DD0C(param0->unk_00, sub_0201C290(param0), 1024 - (18 + 12), 10, sub_02027B50(param1), 4);
sub_0205D988(param0);
sub_0200E060(param0, 0, 1024 - (18 + 12), 10);
}
void sub_0205D988 (UnkStruct_0205AA50 * param0)
{
sub_0201ADA4(param0, 15);
}
u8 sub_0205D994 (UnkStruct_0205AA50 * param0, UnkStruct_02023790 * param1, const UnkStruct_020279FC * param2, u8 param3)
{
u8 v0;
sub_02002AC8(param3);
sub_02002AE4(0);
sub_02002B20(0);
v0 = sub_0201D738(param0, 1, param1, 0, 0, sub_02027AC0(param2), NULL);
return v0;
}
u8 sub_0205D9CC (UnkStruct_0205AA50 * param0, UnkStruct_02023790 * param1, int param2, int param3, u8 param4, int param5)
{
sub_02002AC8(param4);
sub_02002AE4(param5);
sub_02002B20(0);
return sub_0201D738(param0, param2, param1, 0, 0, param3, NULL);
}
u8 sub_0205DA04 (u8 param0)
{
if (sub_0201D724(param0) == 0) {
return 1;
}
return 0;
}
void sub_0205DA1C (UnkStruct_02018340 * param0, UnkStruct_0205AA50 * param1, u16 param2, u16 param3)
{
u16 v0, v1;
if ((param2 == 0) || (param2 == 1)) {
v0 = 9;
v1 = 20;
} else {
v0 = 2;
v1 = 27;
}
if (param3 == 3) {
sub_0201A7E8(param0, param1, 3, v0, 19, v1, 4, 9, ((((1024 - (18 + 12) - 9 - (32 * 8)) - (18 + 12 + 24)) - (27 * 4))));
} else {
sub_0201A7E8(param0, param1, 7, v0, 19, v1, 4, 9, ((512 - (27 * 4))));
}
}
void sub_0205DA80 (UnkStruct_0205AA50 * param0, u16 param1, u16 param2)
{
sub_0200E2A4(param0->unk_00, sub_0201C290(param0), ((1024 - (18 + 12) - 9 - (32 * 8)) - (18 + 12 + 24)), 9, param1, param2, 4);
sub_0201ADA4(param0, 15);
sub_0200E69C(param0, 0, ((1024 - (18 + 12) - 9 - (32 * 8)) - (18 + 12 + 24)), 9, param1);
}

698
src/unk_0205DAC8.c Normal file
View File

@@ -0,0 +1,698 @@
#include <nitro.h>
#include <string.h>
#include "unk_0205DAC8.h"
static const u8 Unk_020ED8C4[] = {
0x0,
0x0,
0x2,
0x2,
0x0,
0x2,
0x2,
0x0,
0x2,
0x0,
0x0,
0x2,
0x0,
0x0,
0x0,
0x0,
0x3,
0x3,
0x3,
0x1,
0x1,
0x3,
0x0,
0x0,
0x0,
0x1,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x3,
0x0,
0x2,
0x2,
0x0,
0x0,
0x0,
0x0,
0x3,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x1,
0x1,
0x1,
0x1,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x2,
0x1,
0x0,
0x0,
0x0,
0x2,
0x1,
0x0,
0x0,
0x2,
0x1,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x2,
0x2,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0,
0x0
};
BOOL sub_0205DAC8 (u8 param0)
{
return param0 == 0x2;
}
BOOL sub_0205DAD4 (u8 param0)
{
return param0 == 0x3;
}
BOOL sub_0205DAE0 (u8 param0)
{
return param0 == 0x80;
}
BOOL sub_0205DAEC (u8 param0)
{
return param0 == 0x69;
}
BOOL sub_0205DAF8 (u8 param0)
{
return param0 == 0x62;
}
BOOL sub_0205DB04 (u8 param0)
{
return param0 == 0x63;
}
BOOL sub_0205DB10 (u8 param0)
{
return param0 == 0x64;
}
BOOL sub_0205DB1C (u8 param0)
{
return param0 == 0x65;
}
BOOL sub_0205DB28 (u8 param0)
{
return param0 == 0x6c;
}
BOOL sub_0205DB34 (u8 param0)
{
return param0 == 0x6d;
}
BOOL sub_0205DB40 (u8 param0)
{
return param0 == 0x6e;
}
BOOL sub_0205DB4C (u8 param0)
{
return param0 == 0x6f;
}
BOOL sub_0205DB58 (u8 param0)
{
return (Unk_020ED8C4[param0] & 0x1) != 0;
}
BOOL sub_0205DB6C (u8 param0)
{
return param0 == 0x21;
}
BOOL sub_0205DB78 (u8 param0)
{
return param0 == 0x17;
}
BOOL sub_0205DB84 (u8 param0)
{
return param0 == 0x3a;
}
BOOL sub_0205DB90 (u8 param0)
{
return param0 == 0x3b;
}
BOOL sub_0205DB9C (u8 param0)
{
return param0 == 0x39;
}
BOOL sub_0205DBA8 (u8 param0)
{
return param0 == 0x38;
}
BOOL sub_0205DBB4 (u8 param0)
{
return param0 == 0x5a;
}
BOOL sub_0205DBC0 (u8 param0)
{
return param0 == 0x5b;
}
BOOL sub_0205DBCC (u8 param0)
{
return param0 == 0x5c;
}
BOOL sub_0205DBD8 (u8 param0)
{
return param0 == 0x5d;
}
BOOL sub_0205DBE4 (u8 param0)
{
return param0 == 0x83;
}
BOOL sub_0205DBF0 (u8 param0)
{
return param0 == 0x85;
}
BOOL sub_0205DBFC (u8 param0)
{
return param0 == 0x56;
}
BOOL sub_0205DC08 (u8 param0)
{
return param0 == 0x57;
}
BOOL sub_0205DC14 (u8 param0)
{
return param0 == 0x58;
}
BOOL sub_0205DC20 (u8 param0)
{
return param0 == 0x59;
}
BOOL sub_0205DC2C (u8 param0)
{
return param0 == 0x6a;
}
BOOL sub_0205DC38 (u8 param0)
{
return param0 == 0x6b;
}
BOOL sub_0205DC44 (u8 param0)
{
return param0 == 0x5e;
}
BOOL sub_0205DC50 (u8 param0)
{
return param0 == 0x5f;
}
BOOL sub_0205DC5C (u8 param0)
{
return param0 == 0x20;
}
BOOL sub_0205DC68 (u8 param0)
{
return param0 == 0x4b;
}
BOOL sub_0205DC74 (u8 param0)
{
return param0 == 0x4c;
}
BOOL sub_0205DC80 (u8 param0)
{
return param0 == 0xe0;
}
BOOL sub_0205DC8C (u8 param0)
{
return param0 == 0xea;
}
BOOL sub_0205DC98 (u8 param0)
{
return param0 == 0xe1;
}
BOOL sub_0205DCA4 (u8 param0)
{
return param0 == 0xe2;
}
BOOL sub_0205DCB0 (u8 param0)
{
return param0 == 0xe4;
}
BOOL sub_0205DCBC (u8 param0)
{
return param0 == 0xe5;
}
BOOL sub_0205DCC8 (u8 param0)
{
return param0 == 0xeb;
}
BOOL sub_0205DCD4 (u8 param0)
{
return param0 == 0xec;
}
BOOL sub_0205DCE0 (u8 param0)
{
return (param0 == 0xa4) || (param0 == 0xa5);
}
BOOL sub_0205DCF0 (u8 param0)
{
return param0 == 0xa5;
}
BOOL sub_0205DCFC (u8 param0)
{
return (param0 == 0xa6) || (param0 == 0xa7);
}
BOOL sub_0205DD0C (u8 param0)
{
return param0 == 0xa7;
}
BOOL sub_0205DD18 (u8 param0)
{
return (param0 == 0xa1) || (param0 == 0xa2) || (param0 == 0xa3) || (param0 == 0xa8);
}
BOOL sub_0205DD38 (u8 param0)
{
return param0 == 0xa8;
}
BOOL sub_0205DD44 (u8 param0)
{
return param0 == 0xa1;
}
BOOL sub_0205DD50 (u8 param0)
{
return param0 == 0xa2;
}
BOOL sub_0205DD5C (u8 param0)
{
return param0 == 0xa3;
}
BOOL sub_0205DD68 (u8 param0)
{
return (param0 == 0xd9) || (param0 == 0xda);
}
BOOL sub_0205DD78 (u8 param0)
{
return param0 == 0xd9;
}
BOOL sub_0205DD84 (u8 param0)
{
return param0 == 0xda;
}
BOOL sub_0205DD90 (u8 param0)
{
return param0 == 0xd7;
}
BOOL sub_0205DD9C (u8 param0)
{
return param0 == 0xd8;
}
BOOL sub_0205DDA8 (u8 param0)
{
return param0 == 0x8;
}
BOOL sub_0205DDB4 (u8 param0)
{
return param0 == 0x13;
}
BOOL sub_0205DDC0 (u8 param0)
{
return param0 == 0xdb;
}
BOOL sub_0205DDCC (u8 param0)
{
return (param0 == 0x32) || (param0 == 0x34) || (param0 == 0x35) || (param0 == 0x49);
}
BOOL sub_0205DDF0 (u8 param0)
{
return (param0 == 0x33) || (param0 == 0x36) || (param0 == 0x37) || (param0 == 0x49);
}
BOOL sub_0205DE14 (u8 param0)
{
return (param0 == 0x31) || (param0 == 0x35) || (param0 == 0x37) || (param0 == 0x4a);
}
BOOL sub_0205DE38 (u8 param0)
{
return (param0 == 0x30) || (param0 == 0x34) || (param0 == 0x36) || (param0 == 0x4a);
}
BOOL sub_0205DE5C (u8 param0)
{
return (param0 == 0x16) || (param0 == 0x1d);
}
BOOL sub_0205DE6C (u8 param0)
{
if ((Unk_020ED8C4[param0] & 0x2) != 0) {
return 1;
} else {
return 0;
}
}
BOOL sub_0205DE84 (u8 param0)
{
return param0 == 0x86;
}
BOOL sub_0205DE90 (u8 param0)
{
return (param0 == 0x16) || (param0 == 0x10) || (param0 == 0x1d) || (param0 == 0x2c);
}
BOOL sub_0205DEB4 (u8 param0)
{
return param0 == 0x40;
}
BOOL sub_0205DEC0 (u8 param0)
{
return param0 == 0x41;
}
BOOL sub_0205DECC (u8 param0)
{
return param0 == 0x42;
}
BOOL sub_0205DED8 (u8 param0)
{
return param0 == 0x43;
}
BOOL sub_0205DEE4 (u8 param0)
{
return param0 == 0x67;
}
BOOL sub_0205DEF0 (u8 param0)
{
return param0 == 0x70;
}
BOOL sub_0205DEFC (u8 param0)
{
return (param0 == 0x71) || (param0 == 0x72) || (param0 == 0x73) || (param0 == 0x74) || (param0 == 0x75) || (param0 == 0x76) || (param0 == 0x77) || (param0 == 0x78) || (param0 == 0x79) || (param0 == 0x7a) || (param0 == 0x7b) || (param0 == 0x7c) || (param0 == 0x7d);
}
BOOL sub_0205DF10 (u8 param0)
{
return (param0 == 0x73) || (param0 == 0x78) || (param0 == 0x7c);
}
BOOL sub_0205DF34 (u8 param0)
{
return (param0 == 0x74) || (param0 == 0x79) || (param0 == 0x7d);
}
BOOL sub_0205DF58 (u8 param0)
{
return param0 == 0x75;
}
BOOL sub_0205DF64 (u8 param0)
{
return (param0 == 0x76) || (param0 == 0x77) || (param0 == 0x78) || (param0 == 0x79);
}
BOOL sub_0205DF78 (u8 param0)
{
return (param0 == 0x7a) || (param0 == 0x7b) || (param0 == 0x7c) || (param0 == 0x7d);
}
BOOL sub_0205DF8C (u8 param0)
{
return param0 == 0xff;
}
u8 sub_0205DF98 (void)
{
return 0xff;
}
BOOL sub_0205DF9C (u8 param0)
{
return (param0 == 0x2c) || (param0 == 0x1d);
}
BOOL sub_0205DFAC (u8 param0)
{
return param0 == 0xa9;
}
BOOL sub_0205DFB8 (u8 param0)
{
return param0 == 0x2d;
}

2507
src/unk_0205F180.c Normal file

File diff suppressed because it is too large Load Diff

513
src/unk_0206A8DC.c Normal file
View File

@@ -0,0 +1,513 @@
#include <nitro.h>
#include <string.h>
#include "struct_decls/struct_020507E4_decl.h"
#include "unk_0201378C.h"
#include "unk_020507CC.h"
#include "unk_0206A8DC.h"
static void sub_0206A8DC(UnkStruct_020507E4 * param0, u16 param1);
static void sub_0206A8E4(UnkStruct_020507E4 * param0, u16 param1);
static BOOL sub_0206A8EC(UnkStruct_020507E4 * param0, u16 param1);
static BOOL sub_0206A8F4(UnkStruct_020507E4 * param0, int param1, u32 param2);
static void sub_0206A8DC (UnkStruct_020507E4 * param0, u16 param1)
{
sub_0205081C(param0, param1);
return;
}
static void sub_0206A8E4 (UnkStruct_020507E4 * param0, u16 param1)
{
sub_02050844(param0, param1);
return;
}
static BOOL sub_0206A8EC (UnkStruct_020507E4 * param0, u16 param1)
{
return sub_020507F0(param0, param1);
}
static BOOL sub_0206A8F4 (UnkStruct_020507E4 * param0, int param1, u32 param2)
{
switch (param1) {
case 1:
sub_0206A8DC(param0, param2);
break;
case 0:
sub_0206A8E4(param0, param2);
break;
case 2:
return sub_0206A8EC(param0, param2);
default:
GF_ASSERT(0);
}
return 0;
}
void sub_0206A92C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 0));
return;
}
BOOL sub_0206A938 (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 0));
}
void sub_0206A944 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 4));
return;
}
BOOL sub_0206A954 (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 4));
}
void sub_0206A964 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 1));
return;
}
void sub_0206A974 (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 1));
return;
}
BOOL sub_0206A984 (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 1));
}
void sub_0206A994 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 5));
return;
}
void sub_0206A9A4 (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 5));
return;
}
BOOL sub_0206A9B4 (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 5));
}
void sub_0206A9C4 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 13));
return;
}
void sub_0206A9D4 (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 13));
return;
}
BOOL sub_0206A9E4 (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 13));
}
void sub_0206A9F4 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 14));
return;
}
void sub_0206AA04 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 15));
return;
}
void sub_0206AA14 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 16));
return;
}
void sub_0206AA20 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 17));
return;
}
void sub_0206AA30 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 18));
return;
}
void sub_0206AA40 (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 19));
return;
}
void sub_0206AA50 (UnkStruct_020507E4 * param0, int param1)
{
switch (param1) {
case 0:
sub_0206A8DC(param0, (2400 + 8));
break;
case 1:
sub_0206A8DC(param0, (2400 + 9));
break;
case 2:
sub_0206A8DC(param0, (2400 + 10));
break;
case 3:
sub_0206A8DC(param0, (2400 + 11));
break;
case 4:
sub_0206A8DC(param0, (2400 + 12));
break;
}
return;
}
BOOL sub_0206AAA8 (UnkStruct_020507E4 * param0, int param1)
{
int v0;
switch (param1) {
case 0:
v0 = sub_0206A8EC(param0, (2400 + 8));
break;
case 1:
v0 = sub_0206A8EC(param0, (2400 + 9));
break;
case 2:
v0 = sub_0206A8EC(param0, (2400 + 10));
break;
case 3:
v0 = sub_0206A8EC(param0, (2400 + 11));
break;
case 4:
v0 = sub_0206A8EC(param0, (2400 + 12));
break;
}
return v0;
}
BOOL sub_0206AB00 (UnkStruct_020507E4 * param0, int param1)
{
int v0 = 0;
switch (param1) {
case 1:
v0 = sub_0206A8EC(param0, (2400 + 31));
break;
case 2:
v0 = sub_0206A8EC(param0, (2400 + 32));
break;
case 3:
v0 = sub_0206A8EC(param0, (2400 + 33));
break;
case 4:
v0 = sub_0206A8EC(param0, (2400 + 34));
break;
case 5:
v0 = sub_0206A8EC(param0, (2400 + 35));
break;
}
return v0;
}
u16 sub_0206AB68 (UnkStruct_020507E4 * param0, int param1)
{
u16 v0 = 0;
switch (param1) {
case 314:
if (sub_0206A8EC(param0, (2400 + 36)) == 1) {
v0 = 1070;
}
break;
case 316:
if (sub_0206A8EC(param0, (2400 + 36)) == 1) {
v0 = 1065;
}
break;
case 312:
if (sub_0206A8EC(param0, (2400 + 46)) == 1) {
v0 = 1070;
}
break;
case 318:
if (sub_0206A8EC(param0, (2400 + 47)) == 1) {
v0 = 1070;
}
break;
case 251:
if (sub_0206A8EC(param0, (2400 + 53)) == 1) {
v0 = 1069;
}
break;
case 422:
if (sub_0206A8EC(param0, (2400 + 51)) == 1) {
v0 = 1098;
}
break;
case 305:
case 306:
case 307:
case 308:
case 309:
case 310:
case 494:
case 497:
if (sub_0206A8EC(param0, (2400 + 37)) == 1) {
if (sub_02013948() == 0) {
v0 = 1016;
} else {
v0 = 1045;
}
break;
}
if (param1 == 305) {
if (sub_0206A8EC(param0, (2400 + 38)) == 1) {
v0 = 1067;
}
}
break;
case 72:
case 73:
case 74:
case 75:
if (sub_0206A8EC(param0, (2400 + 39)) == 1) {
if (sub_02013948() == 0) {
v0 = 1013;
} else {
v0 = 1042;
}
}
break;
case 201:
if (sub_0206A8EC(param0, (2400 + 40)) == 1) {
if (sub_02013948() == 0) {
v0 = 1023;
} else {
v0 = 1052;
}
}
break;
case 256:
if (sub_0206A8EC(param0, (2400 + 41)) == 1) {
if (sub_02013948() == 0) {
v0 = 1006;
} else {
v0 = 1035;
}
}
break;
case 399:
if (sub_0206A8EC(param0, (2400 + 42)) == 1) {
if (sub_02013948() == 0) {
v0 = 1006;
} else {
v0 = 1035;
}
}
break;
case 185:
if (sub_0206A8EC(param0, (2400 + 43)) == 1) {
v0 = 1001;
}
break;
}
return v0;
}
void sub_0206AD9C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 6));
return;
}
void sub_0206ADAC (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 6));
return;
}
BOOL sub_0206ADBC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 6));
}
BOOL sub_0206ADCC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 24));
}
BOOL sub_0206ADDC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 50));
}
BOOL sub_0206ADEC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 29));
}
BOOL sub_0206ADFC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 30));
}
void sub_0206AE0C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 28));
}
void sub_0206AE1C (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 28));
}
BOOL sub_0206AE2C (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 28));
}
void sub_0206AE3C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 7));
}
void sub_0206AE4C (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 7));
}
BOOL sub_0206AE5C (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 7));
}
void sub_0206AE6C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 25));
}
void sub_0206AE7C (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 25));
}
BOOL sub_0206AE8C (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 25));
}
void sub_0206AE9C (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 52));
}
BOOL sub_0206AEAC (UnkStruct_020507E4 * param0, int param1)
{
return sub_0206A8F4(param0, param1, (2400 + 2));
}
void sub_0206AEBC (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 26));
}
void sub_0206AECC (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 26));
}
BOOL sub_0206AEDC (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 26));
}
void sub_0206AEEC (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 27));
}
void sub_0206AEFC (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 27));
}
BOOL sub_0206AF0C (UnkStruct_020507E4 * param0)
{
return sub_0206A8EC(param0, (2400 + 27));
}
BOOL sub_0206AF1C (UnkStruct_020507E4 * param0, int param1)
{
return sub_0206A8F4(param0, param1, (2400 + 54));
}
BOOL sub_0206AF2C (UnkStruct_020507E4 * param0, int param1)
{
return sub_0206A8F4(param0, param1, (2400 + 3));
}
BOOL sub_0206AF3C (UnkStruct_020507E4 * param0, int param1, u32 param2)
{
GF_ASSERT(param2 < 69);
return sub_0206A8F4(param0, param1, (2400 + 80) + param2);
}
void sub_0206AF5C (UnkStruct_020507E4 * param0)
{
sub_0206A8DC(param0, (2400 + 44));
}
BOOL sub_0206AF6C (UnkStruct_020507E4 * param0, int param1, int param2)
{
GF_ASSERT(param2 < 20);
return sub_0206A8F4(param0, param1, (2400 + 55) + param2);
}
void sub_0206AF90 (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 75));
return;
}
void sub_0206AFA0 (UnkStruct_020507E4 * param0)
{
sub_0206A8E4(param0, (2400 + 76));
return;
}
BOOL sub_0206AFB0 (UnkStruct_020507E4 * param0, int param1, int param2)
{
return sub_0206A8F4(param0, param1, (2400 + 78) + param2);
}
BOOL sub_0206AFC0 (UnkStruct_020507E4 * param0, int param1)
{
return sub_0206A8F4(param0, param1, (2400 + 77));
}
BOOL sub_0206AFD0 (UnkStruct_020507E4 * param0)
{
return sub_0206A8F4(param0, 2, (2400 + 23));
}