summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2020-08-17 10:43:20 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2020-08-17 10:43:20 -0400
commit669837eb5cfc69838686059779c8e4446fee4781 (patch)
treef5411261f19c7f51942c653a7ad7f02127ab5b81
parent9669a6ac0a62013d181bda216109401ed83fb556 (diff)
Decompile unk_0207FC5C.s
-rw-r--r--arm9/asm/unk_0207FC5C.s180
-rw-r--r--arm9/src/unk_0207FC5C.c532
-rw-r--r--include/unk_0207FC5C.h8
3 files changed, 540 insertions, 180 deletions
diff --git a/arm9/asm/unk_0207FC5C.s b/arm9/asm/unk_0207FC5C.s
deleted file mode 100644
index b06b72e9..00000000
--- a/arm9/asm/unk_0207FC5C.s
+++ /dev/null
@@ -1,180 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .rodata
-
- .global UNK_020FB788
-UNK_020FB788: ; 0x020FB788
- .byte 0x62, 0x00, 0x00, 0x00
-
- .global UNK_020FB78C
-UNK_020FB78C: ; 0x020FB78C
- .byte 0x48, 0x00
-
- .global UNK_020FB78E
-UNK_020FB78E: ; 0x020FB78E
- .byte 0x00, 0x00
-
- .global UNK_020FB790
-UNK_020FB790: ; 0x020FB790
- .byte 0x00, 0x00
-
- .global UNK_020FB792
-UNK_020FB792: ; 0x020FB792
- .byte 0x50, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x01, 0x00, 0x51, 0x00, 0x4F, 0x00
- .byte 0x00, 0x00, 0x4A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x52, 0x00, 0x50, 0x00, 0x00, 0x00, 0x4B, 0x00
- .byte 0x00, 0x00, 0x03, 0x00, 0x53, 0x00, 0x51, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x00, 0x00, 0x04, 0x00
- .byte 0x54, 0x00, 0x52, 0x00, 0x00, 0x00, 0x49, 0x00, 0x01, 0x00, 0x05, 0x00, 0x55, 0x00, 0x53, 0x00
- .byte 0x00, 0x00, 0x4A, 0x00, 0x01, 0x00, 0x06, 0x00, 0x56, 0x00, 0x54, 0x00, 0x00, 0x00, 0x4B, 0x00
- .byte 0x01, 0x00, 0x07, 0x00, 0x57, 0x00, 0x55, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x01, 0x00, 0x08, 0x00
- .byte 0x58, 0x00, 0x56, 0x00, 0x00, 0x00, 0x49, 0x00, 0x02, 0x00, 0x09, 0x00, 0x59, 0x00, 0x57, 0x00
- .byte 0x00, 0x00, 0x4A, 0x00, 0x02, 0x00, 0x0A, 0x00, 0x5A, 0x00, 0x58, 0x00, 0x00, 0x00, 0x4B, 0x00
- .byte 0x02, 0x00, 0x0B, 0x00, 0x5B, 0x00, 0x59, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x02, 0x00, 0x0C, 0x00
- .byte 0x5C, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x49, 0x00, 0x03, 0x00, 0x0D, 0x00, 0x5D, 0x00, 0x5B, 0x00
- .byte 0x00, 0x00, 0x4A, 0x00, 0x03, 0x00, 0x0E, 0x00, 0x5E, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x4B, 0x00
- .byte 0x03, 0x00, 0x0F, 0x00, 0x5F, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x03, 0x00, 0x10, 0x00
- .byte 0x60, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x49, 0x00, 0x04, 0x00, 0x11, 0x00, 0x61, 0x00, 0x5F, 0x00
- .byte 0x00, 0x00, 0x4A, 0x00, 0x04, 0x00, 0x12, 0x00, 0x62, 0x00, 0x60, 0x00, 0x00, 0x00, 0x4B, 0x00
- .byte 0x04, 0x00, 0x13, 0x00, 0x63, 0x00, 0x61, 0x00, 0x00, 0x00, 0x4C, 0x00, 0x04, 0x00, 0x14, 0x00
- .byte 0x64, 0x00, 0x63, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x15, 0x00, 0x65, 0x00, 0x64, 0x00
- .byte 0x00, 0x00, 0x4D, 0x00, 0x00, 0x00, 0x16, 0x00, 0x66, 0x00, 0x65, 0x00, 0x00, 0x00, 0x4F, 0x00
- .byte 0x01, 0x00, 0x17, 0x00, 0x67, 0x00, 0x66, 0x00, 0x00, 0x00, 0x50, 0x00, 0x02, 0x00, 0x18, 0x00
- .byte 0x68, 0x00, 0x67, 0x00, 0x00, 0x00, 0x51, 0x00, 0x01, 0x00, 0x19, 0x00, 0x00, 0x80, 0x68, 0x00
- .byte 0x00, 0x00, 0x51, 0x00, 0x03, 0x00, 0x1A, 0x00, 0x01, 0x80, 0x69, 0x00, 0x00, 0x00, 0x51, 0x00
- .byte 0x04, 0x00, 0x1B, 0x00, 0x02, 0x80, 0x6A, 0x00, 0x00, 0x00, 0x52, 0x00, 0x03, 0x00, 0x1C, 0x00
- .byte 0xB2, 0x00, 0x6B, 0x00, 0x00, 0x00, 0x52, 0x00, 0x04, 0x00, 0x1D, 0x00, 0xBE, 0x00, 0x6C, 0x00
- .byte 0x00, 0x00, 0x53, 0x00, 0x00, 0x00, 0x1E, 0x00, 0xBF, 0x00, 0x6D, 0x00, 0x00, 0x00, 0x53, 0x00
- .byte 0x01, 0x00, 0x1F, 0x00, 0xB2, 0x00, 0x19, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x20, 0x00
- .byte 0x69, 0x00, 0x7A, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0x21, 0x00, 0x6A, 0x00, 0x7B, 0x00
- .byte 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x22, 0x00, 0x6B, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x5B, 0x00
- .byte 0x00, 0x00, 0x23, 0x00, 0x6C, 0x00, 0x7D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x24, 0x00
- .byte 0x6D, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x59, 0x00, 0x01, 0x00, 0x25, 0x00, 0x6E, 0x00, 0x7F, 0x00
- .byte 0x00, 0x00, 0x5A, 0x00, 0x01, 0x00, 0x26, 0x00, 0x6F, 0x00, 0x80, 0x00, 0x00, 0x00, 0x5B, 0x00
- .byte 0x01, 0x00, 0x27, 0x00, 0x70, 0x00, 0x81, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x01, 0x00, 0x28, 0x00
- .byte 0x71, 0x00, 0x82, 0x00, 0x00, 0x00, 0x59, 0x00, 0x02, 0x00, 0x29, 0x00, 0x72, 0x00, 0x83, 0x00
- .byte 0x00, 0x00, 0x5A, 0x00, 0x02, 0x00, 0x2A, 0x00, 0x73, 0x00, 0x84, 0x00, 0x00, 0x00, 0x5B, 0x00
- .byte 0x02, 0x00, 0x2B, 0x00, 0x74, 0x00, 0x85, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x02, 0x00, 0x2C, 0x00
- .byte 0x75, 0x00, 0x86, 0x00, 0x00, 0x00, 0x59, 0x00, 0x03, 0x00, 0x2D, 0x00, 0x76, 0x00, 0x87, 0x00
- .byte 0x00, 0x00, 0x5A, 0x00, 0x03, 0x00, 0x2E, 0x00, 0x77, 0x00, 0x88, 0x00, 0x00, 0x00, 0x5B, 0x00
- .byte 0x03, 0x00, 0x2F, 0x00, 0x78, 0x00, 0x89, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x03, 0x00, 0x30, 0x00
- .byte 0x79, 0x00, 0x8A, 0x00, 0x00, 0x00, 0x59, 0x00, 0x04, 0x00, 0x31, 0x00, 0x7A, 0x00, 0x8B, 0x00
- .byte 0x00, 0x00, 0x5A, 0x00, 0x04, 0x00, 0x32, 0x00, 0x7B, 0x00, 0x8C, 0x00, 0x00, 0x00, 0x5B, 0x00
- .byte 0x04, 0x00, 0x33, 0x00, 0x7C, 0x00, 0x8D, 0x00, 0x00, 0x00, 0x5C, 0x00, 0x04, 0x00, 0x34, 0x00
- .byte 0x7D, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x5D, 0x00, 0x00, 0x00, 0x35, 0x00, 0x7E, 0x00, 0x1B, 0x00
- .byte 0x00, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x36, 0x00, 0x7F, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x5F, 0x00
- .byte 0x00, 0x00, 0x37, 0x00, 0x80, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x38, 0x00
- .byte 0x81, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x39, 0x00, 0x82, 0x00, 0x1F, 0x00
- .byte 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0x3A, 0x00, 0x83, 0x00, 0x20, 0x00, 0x00, 0x00, 0x63, 0x00
- .byte 0x02, 0x00, 0x3B, 0x00, 0x84, 0x00, 0x21, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x3C, 0x00
- .byte 0x85, 0x00, 0x22, 0x00, 0x00, 0x00, 0x65, 0x00, 0x01, 0x00, 0x3D, 0x00, 0x86, 0x00, 0x23, 0x00
- .byte 0x00, 0x00, 0x66, 0x00, 0x02, 0x00, 0x3E, 0x00, 0x87, 0x00, 0x24, 0x00, 0x00, 0x00, 0x67, 0x00
- .byte 0x03, 0x00, 0x3F, 0x00, 0x88, 0x00, 0x25, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0x40, 0x00
- .byte 0x89, 0x00, 0x26, 0x00, 0x00, 0x00, 0x69, 0x00, 0x02, 0x00, 0x41, 0x00, 0x8A, 0x00, 0x27, 0x00
- .byte 0x00, 0x00, 0x6A, 0x00, 0x01, 0x00, 0x42, 0x00, 0x8B, 0x00, 0x28, 0x00, 0x00, 0x00, 0x6B, 0x00
- .byte 0x03, 0x00, 0x43, 0x00, 0x8C, 0x00, 0x29, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x44, 0x00
- .byte 0x8D, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, 0x00, 0x45, 0x00, 0x8E, 0x00, 0x2B, 0x00
- .byte 0x00, 0x00, 0x6E, 0x00, 0x01, 0x00, 0x46, 0x00, 0x8F, 0x00, 0x2C, 0x00, 0x00, 0x00, 0x6F, 0x00
- .byte 0x03, 0x00, 0x47, 0x00, 0x90, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x48, 0x00
- .byte 0x91, 0x00, 0x2E, 0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x49, 0x00, 0x07, 0x80, 0x2F, 0x00
- .byte 0x00, 0x00, 0x72, 0x00, 0x03, 0x00, 0x4A, 0x00, 0x08, 0x80, 0x30, 0x00, 0x00, 0x00, 0x73, 0x00
- .byte 0x01, 0x00, 0x4B, 0x00, 0x09, 0x80, 0x31, 0x00, 0x00, 0x00, 0x74, 0x00, 0x01, 0x00, 0x4C, 0x00
- .byte 0x0A, 0x80, 0x32, 0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x4D, 0x00, 0x0B, 0x80, 0x33, 0x00
- .byte 0x00, 0x00, 0x76, 0x00, 0x01, 0x00, 0x4E, 0x00, 0x0C, 0x80, 0x34, 0x00, 0x00, 0x00, 0x77, 0x00
- .byte 0x00, 0x00, 0x4F, 0x00, 0x0D, 0x80
-
- .text
-
- thumb_func_start FUN_0207FC5C
-FUN_0207FC5C: ; 0x0207FC5C
- cmp r1, #0x4
- bhi _0207FCA8
- add r1, r1, r1
- add r1, pc
- ldrh r1, [r1, #0x6]
- lsl r1, r1, #0x10
- asr r1, r1, #0x10
- add pc, r1
-_0207FC6C: ; jump table (using 16-bit offset)
- .short _0207FC76 - _0207FC6C - 2; case 0
- .short _0207FC80 - _0207FC6C - 2; case 1
- .short _0207FC8A - _0207FC6C - 2; case 2
- .short _0207FC94 - _0207FC6C - 2; case 3
- .short _0207FC9E - _0207FC6C - 2; case 4
-_0207FC76:
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCAC ; =UNK_020FB788
- ldr r0, [r0, r1]
- bx lr
-_0207FC80:
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCB0 ; =UNK_020FB78C
- ldrh r0, [r0, r1]
- bx lr
-_0207FC8A:
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCB4 ; =UNK_020FB78E
- ldrh r0, [r0, r1]
- bx lr
-_0207FC94:
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCB8 ; =UNK_020FB790
- ldrh r0, [r0, r1]
- bx lr
-_0207FC9E:
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCBC ; =UNK_020FB792
- ldrh r0, [r0, r1]
- bx lr
-_0207FCA8:
- mov r0, #0x0
- bx lr
- .balign 4
-_0207FCAC: .word UNK_020FB788
-_0207FCB0: .word UNK_020FB78C
-_0207FCB4: .word UNK_020FB78E
-_0207FCB8: .word UNK_020FB790
-_0207FCBC: .word UNK_020FB792
-
- thumb_func_start FUN_0207FCC0
-FUN_0207FCC0: ; 0x0207FCC0
- mov r2, #0xc
- mul r2, r1
- ldr r1, _0207FCDC ; =UNK_020FB792
- ldrh r2, [r1, r2]
- mov r1, #0x2
- lsl r1, r1, #0xe
- tst r1, r2
- beq _0207FCD8
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- ldrb r2, [r0, r1]
- add r2, #0x92
-_0207FCD8:
- add r0, r2, #0x0
- bx lr
- .balign 4
-_0207FCDC: .word UNK_020FB792
-
- thumb_func_start FUN_0207FCE0
-FUN_0207FCE0: ; 0x0207FCE0
- mov r1, #0xc
- mul r1, r0
- ldr r0, _0207FCFC ; =UNK_020FB792
- ldrh r1, [r0, r1]
- mov r0, #0x2
- lsl r0, r0, #0xe
- tst r0, r1
- beq _0207FCF6
- lsl r0, r1, #0x18
- lsr r0, r0, #0x18
- bx lr
-_0207FCF6:
- mov r0, #0xff
- bx lr
- nop
-_0207FCFC: .word UNK_020FB792
diff --git a/arm9/src/unk_0207FC5C.c b/arm9/src/unk_0207FC5C.c
new file mode 100644
index 00000000..f72008b9
--- /dev/null
+++ b/arm9/src/unk_0207FC5C.c
@@ -0,0 +1,532 @@
+#include "global.h"
+#include "unk_0207FC5C.h"
+
+#pragma thumb on
+
+struct UnkStruct_020FB788
+{
+ u32 unk_0;
+ u16 unk_4;
+ u16 unk_6;
+ u16 unk_8;
+ u16 unk_A;
+};
+
+const struct UnkStruct_020FB788 UNK_020FB788[] = {
+ {
+ 0x00000062,
+ 0x0048,
+ 0x0000,
+ 0x0000,
+ 0x0050
+ }, {
+ 0x0000004E,
+ 0x0049,
+ 0x0000,
+ 0x0001,
+ 0x0051
+ }, {
+ 0x0000004F,
+ 0x004A,
+ 0x0000,
+ 0x0002,
+ 0x0052
+ }, {
+ 0x00000050,
+ 0x004B,
+ 0x0000,
+ 0x0003,
+ 0x0053
+ }, {
+ 0x00000051,
+ 0x004C,
+ 0x0000,
+ 0x0004,
+ 0x0054
+ }, {
+ 0x00000052,
+ 0x0049,
+ 0x0001,
+ 0x0005,
+ 0x0055
+ }, {
+ 0x00000053,
+ 0x004A,
+ 0x0001,
+ 0x0006,
+ 0x0056
+ }, {
+ 0x00000054,
+ 0x004B,
+ 0x0001,
+ 0x0007,
+ 0x0057
+ }, {
+ 0x00000055,
+ 0x004C,
+ 0x0001,
+ 0x0008,
+ 0x0058
+ }, {
+ 0x00000056,
+ 0x0049,
+ 0x0002,
+ 0x0009,
+ 0x0059
+ }, {
+ 0x00000057,
+ 0x004A,
+ 0x0002,
+ 0x000A,
+ 0x005A
+ }, {
+ 0x00000058,
+ 0x004B,
+ 0x0002,
+ 0x000B,
+ 0x005B
+ }, {
+ 0x00000059,
+ 0x004C,
+ 0x0002,
+ 0x000C,
+ 0x005C
+ }, {
+ 0x0000005A,
+ 0x0049,
+ 0x0003,
+ 0x000D,
+ 0x005D
+ }, {
+ 0x0000005B,
+ 0x004A,
+ 0x0003,
+ 0x000E,
+ 0x005E
+ }, {
+ 0x0000005C,
+ 0x004B,
+ 0x0003,
+ 0x000F,
+ 0x005F
+ }, {
+ 0x0000005D,
+ 0x004C,
+ 0x0003,
+ 0x0010,
+ 0x0060
+ }, {
+ 0x0000005E,
+ 0x0049,
+ 0x0004,
+ 0x0011,
+ 0x0061
+ }, {
+ 0x0000005F,
+ 0x004A,
+ 0x0004,
+ 0x0012,
+ 0x0062
+ }, {
+ 0x00000060,
+ 0x004B,
+ 0x0004,
+ 0x0013,
+ 0x0063
+ }, {
+ 0x00000061,
+ 0x004C,
+ 0x0004,
+ 0x0014,
+ 0x0064
+ }, {
+ 0x00000063,
+ 0x004E,
+ 0x0000,
+ 0x0015,
+ 0x0065
+ }, {
+ 0x00000064,
+ 0x004D,
+ 0x0000,
+ 0x0016,
+ 0x0066
+ }, {
+ 0x00000065,
+ 0x004F,
+ 0x0001,
+ 0x0017,
+ 0x0067
+ }, {
+ 0x00000066,
+ 0x0050,
+ 0x0002,
+ 0x0018,
+ 0x0068
+ }, {
+ 0x00000067,
+ 0x0051,
+ 0x0001,
+ 0x0019,
+ 0x8000
+ }, {
+ 0x00000068,
+ 0x0051,
+ 0x0003,
+ 0x001A,
+ 0x8001
+ }, {
+ 0x00000069,
+ 0x0051,
+ 0x0004,
+ 0x001B,
+ 0x8002
+ }, {
+ 0x0000006A,
+ 0x0052,
+ 0x0003,
+ 0x001C,
+ 0x00B2
+ }, {
+ 0x0000006B,
+ 0x0052,
+ 0x0004,
+ 0x001D,
+ 0x00BE
+ }, {
+ 0x0000006C,
+ 0x0053,
+ 0x0000,
+ 0x001E,
+ 0x00BF
+ }, {
+ 0x0000006D,
+ 0x0053,
+ 0x0001,
+ 0x001F,
+ 0x00B2
+ }, {
+ 0x00000019,
+ 0x0058,
+ 0x0000,
+ 0x0020,
+ 0x0069
+ }, {
+ 0x0000007A,
+ 0x0059,
+ 0x0000,
+ 0x0021,
+ 0x006A
+ }, {
+ 0x0000007B,
+ 0x005A,
+ 0x0000,
+ 0x0022,
+ 0x006B
+ }, {
+ 0x0000007C,
+ 0x005B,
+ 0x0000,
+ 0x0023,
+ 0x006C
+ }, {
+ 0x0000007D,
+ 0x005C,
+ 0x0000,
+ 0x0024,
+ 0x006D
+ }, {
+ 0x0000007E,
+ 0x0059,
+ 0x0001,
+ 0x0025,
+ 0x006E
+ }, {
+ 0x0000007F,
+ 0x005A,
+ 0x0001,
+ 0x0026,
+ 0x006F
+ }, {
+ 0x00000080,
+ 0x005B,
+ 0x0001,
+ 0x0027,
+ 0x0070
+ }, {
+ 0x00000081,
+ 0x005C,
+ 0x0001,
+ 0x0028,
+ 0x0071
+ }, {
+ 0x00000082,
+ 0x0059,
+ 0x0002,
+ 0x0029,
+ 0x0072
+ }, {
+ 0x00000083,
+ 0x005A,
+ 0x0002,
+ 0x002A,
+ 0x0073
+ }, {
+ 0x00000084,
+ 0x005B,
+ 0x0002,
+ 0x002B,
+ 0x0074
+ }, {
+ 0x00000085,
+ 0x005C,
+ 0x0002,
+ 0x002C,
+ 0x0075
+ }, {
+ 0x00000086,
+ 0x0059,
+ 0x0003,
+ 0x002D,
+ 0x0076
+ }, {
+ 0x00000087,
+ 0x005A,
+ 0x0003,
+ 0x002E,
+ 0x0077
+ }, {
+ 0x00000088,
+ 0x005B,
+ 0x0003,
+ 0x002F,
+ 0x0078
+ }, {
+ 0x00000089,
+ 0x005C,
+ 0x0003,
+ 0x0030,
+ 0x0079
+ }, {
+ 0x0000008A,
+ 0x0059,
+ 0x0004,
+ 0x0031,
+ 0x007A
+ }, {
+ 0x0000008B,
+ 0x005A,
+ 0x0004,
+ 0x0032,
+ 0x007B
+ }, {
+ 0x0000008C,
+ 0x005B,
+ 0x0004,
+ 0x0033,
+ 0x007C
+ }, {
+ 0x0000008D,
+ 0x005C,
+ 0x0004,
+ 0x0034,
+ 0x007D
+ }, {
+ 0x0000001A,
+ 0x005D,
+ 0x0000,
+ 0x0035,
+ 0x007E
+ }, {
+ 0x0000001B,
+ 0x005E,
+ 0x0000,
+ 0x0036,
+ 0x007F
+ }, {
+ 0x0000001C,
+ 0x005F,
+ 0x0000,
+ 0x0037,
+ 0x0080
+ }, {
+ 0x0000001D,
+ 0x0060,
+ 0x0000,
+ 0x0038,
+ 0x0081
+ }, {
+ 0x0000001E,
+ 0x0061,
+ 0x0000,
+ 0x0039,
+ 0x0082
+ }, {
+ 0x0000001F,
+ 0x0062,
+ 0x0000,
+ 0x003A,
+ 0x0083
+ }, {
+ 0x00000020,
+ 0x0063,
+ 0x0002,
+ 0x003B,
+ 0x0084
+ }, {
+ 0x00000021,
+ 0x0064,
+ 0x0000,
+ 0x003C,
+ 0x0085
+ }, {
+ 0x00000022,
+ 0x0065,
+ 0x0001,
+ 0x003D,
+ 0x0086
+ }, {
+ 0x00000023,
+ 0x0066,
+ 0x0002,
+ 0x003E,
+ 0x0087
+ }, {
+ 0x00000024,
+ 0x0067,
+ 0x0003,
+ 0x003F,
+ 0x0088
+ }, {
+ 0x00000025,
+ 0x0068,
+ 0x0000,
+ 0x0040,
+ 0x0089
+ }, {
+ 0x00000026,
+ 0x0069,
+ 0x0002,
+ 0x0041,
+ 0x008A
+ }, {
+ 0x00000027,
+ 0x006A,
+ 0x0001,
+ 0x0042,
+ 0x008B
+ }, {
+ 0x00000028,
+ 0x006B,
+ 0x0003,
+ 0x0043,
+ 0x008C
+ }, {
+ 0x00000029,
+ 0x006C,
+ 0x0000,
+ 0x0044,
+ 0x008D
+ }, {
+ 0x0000002A,
+ 0x006D,
+ 0x0000,
+ 0x0045,
+ 0x008E
+ }, {
+ 0x0000002B,
+ 0x006E,
+ 0x0001,
+ 0x0046,
+ 0x008F
+ }, {
+ 0x0000002C,
+ 0x006F,
+ 0x0003,
+ 0x0047,
+ 0x0090
+ }, {
+ 0x0000002D,
+ 0x0070,
+ 0x0000,
+ 0x0048,
+ 0x0091
+ }, {
+ 0x0000002E,
+ 0x0071,
+ 0x0000,
+ 0x0049,
+ 0x8007
+ }, {
+ 0x0000002F,
+ 0x0072,
+ 0x0003,
+ 0x004A,
+ 0x8008
+ }, {
+ 0x00000030,
+ 0x0073,
+ 0x0001,
+ 0x004B,
+ 0x8009
+ }, {
+ 0x00000031,
+ 0x0074,
+ 0x0001,
+ 0x004C,
+ 0x800A
+ }, {
+ 0x00000032,
+ 0x0075,
+ 0x0000,
+ 0x004D,
+ 0x800B
+ }, {
+ 0x00000033,
+ 0x0076,
+ 0x0001,
+ 0x004E,
+ 0x800C
+ }, {
+ 0x00000034,
+ 0x0077,
+ 0x0000,
+ 0x004F,
+ 0x800D
+ }
+};
+
+u32 FUN_0207FC5C(u8 a0, u32 a1)
+{
+ switch (a1)
+ {
+ case 0:
+ return UNK_020FB788[a0].unk_0;
+ case 1:
+ return UNK_020FB788[a0].unk_4;
+ case 2:
+ return UNK_020FB788[a0].unk_6;
+ case 3:
+ return UNK_020FB788[a0].unk_8;
+ case 4:
+ return UNK_020FB788[a0].unk_A;
+ default:
+ return 0;
+ }
+}
+
+int FUN_0207FCC0(u8 * a0, u32 a1)
+{
+ int ret = (int)UNK_020FB788[a1].unk_A;
+ if (ret & 0x8000)
+ ret = a0[(u8)ret] + 0x92;
+ return ret;
+}
+
+u8 FUN_0207FCE0(u32 a0)
+{
+ int ret = (int)UNK_020FB788[a0].unk_A;
+ if (ret & 0x8000)
+ return (u8)ret;
+ return 0xFF;
+}
diff --git a/include/unk_0207FC5C.h b/include/unk_0207FC5C.h
new file mode 100644
index 00000000..c3c63553
--- /dev/null
+++ b/include/unk_0207FC5C.h
@@ -0,0 +1,8 @@
+#ifndef POKEDIAMOND_UNK_0207FC5C_H
+#define POKEDIAMOND_UNK_0207FC5C_H
+
+u32 FUN_0207FC5C(u8 a0, u32 a1);
+int FUN_0207FCC0(u8 * a0, u32 a1);
+u8 FUN_0207FCE0(u32 a0);
+
+#endif //POKEDIAMOND_UNK_0207FC5C_H