#ifndef POKEPLATINUM_OV100_021D46C8_H
#define POKEPLATINUM_OV100_021D46C8_H

#include <nnsys.h>

#include "struct_defs/struct_020985E4.h"

#include "overlay100/struct_ov100_021D46C8.h"
#include "overlay100/struct_ov100_021D4890.h"
#include "overlay100/struct_ov100_021D49B4.h"
#include "overlay100/struct_ov100_021D4DD8.h"

#include "narc.h"

int ov100_021D46C8(UnkStruct_ov100_021D46C8 *param0, UnkStruct_020985E4 *param1, int param2);
void ov100_021D4788(UnkStruct_ov100_021D46C8 *param0);
void ov100_021D47A0(UnkStruct_ov100_021D46C8 *param0);
void ov100_021D4844(UnkStruct_ov100_021D46C8 *param0);
void ov100_021D4890(UnkStruct_ov100_021D4890 *param0);
BOOL ov100_021D4920(UnkStruct_ov100_021D4890 *param0);
void ov100_021D49B4(UnkStruct_ov100_021D49B4 *param0);
void ov100_021D4A84(UnkStruct_ov100_021D49B4 *param0);
void ov100_021D4A90(int param0, UnkStruct_ov100_021D49B4 *param1, NNSFndAllocator *param2);
void ov100_021D4AA4(UnkStruct_ov100_021D49B4 *param0, NNSFndAllocator *param1, int param2);
void ov100_021D4AC8(UnkStruct_ov100_021D49B4 *param0, int param1, NARC *param2);
void ov100_021D4B10(UnkStruct_ov100_021D49B4 *param0, UnkStruct_ov100_021D49B4 *param1, int param2, NARC *param3);
void ov100_021D4B4C(int param0, UnkStruct_ov100_021D49B4 *param1, int param2, NARC *param3, NNSFndAllocator *param4);
void ov100_021D4BA0(int param0, UnkStruct_ov100_021D49B4 *param1, UnkStruct_ov100_021D49B4 *param2, int param3, NARC *param4, NNSFndAllocator *param5);
void ov100_021D4BF0(UnkStruct_ov100_021D46C8 *param0);
void ov100_021D4C94(UnkStruct_ov100_021D46C8 *param0, int param1);
void ov100_021D4DC8(int param0);
void ov100_021D4DD8(UnkStruct_ov100_021D4DD8 *param0, int param1);

#endif // POKEPLATINUM_OV100_021D46C8_H
