#ifndef POKEPLATINUM_UNK_020711EC_H
#define POKEPLATINUM_UNK_020711EC_H

#include <nitro/fx/fx.h>

#include "struct_decls/struct_020711EC_decl.h"
#include "struct_defs/struct_02071330.h"

#include "functypes/funcptr_02071330.h"
#include "functypes/funcptr_02071330_1.h"
#include "functypes/funcptr_02071330_2.h"
#include "functypes/funcptr_02071330_3.h"
#include "functypes/funcptr_02071330_4.h"
#include "functypes/funcptr_02071330_5.h"
#include "overlay101/struct_ov101_021D5D90_decl.h"
#include "overlay101/struct_ov101_021D86B0.h"

UnkStruct_020711EC *sub_020711EC(int heapID, int param1);
void sub_0207120C(UnkStruct_020711EC *param0);
void sub_0207121C(UnkStruct_020711EC *param0);
UnkStruct_ov101_021D5D90 *sub_0207122C(UnkStruct_020711EC *param0, const UnkStruct_02071330 *param1, const VecFx32 *param2, int param3, const void *param4, int param5);
UnkStruct_ov101_021D5D90 *sub_02071330(UnkStruct_020711EC *param0, const UnkStruct_ov101_021D86B0 *param1, const VecFx32 *param2, int param3, const void *param4, int param5);
void sub_0207136C(UnkStruct_ov101_021D5D90 *param0);
void sub_020713A4(UnkStruct_020711EC *param0);
void sub_020713D0(UnkStruct_020711EC *param0);
int UnkStruct_ov101_021D5D90_IsLsbSet(const UnkStruct_ov101_021D5D90 *param0);
void sub_02071518(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330 param1);
int sub_02071520(UnkStruct_ov101_021D5D90 *param0);
void sub_02071534(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330_2 param1);
void sub_0207153C(UnkStruct_ov101_021D5D90 *param0);
void sub_02071550(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330_3 param1);
void sub_02071558(UnkStruct_ov101_021D5D90 *param0);
void sub_0207156C(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330_1 param1);
void sub_02071574(UnkStruct_ov101_021D5D90 *param0);
void sub_02071588(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330_4 param1);
void sub_02071590(UnkStruct_ov101_021D5D90 *param0, UnkFuncPtr_02071330_5 param1);
void *sub_02071598(UnkStruct_ov101_021D5D90 *param0);
void sub_0207159C(UnkStruct_ov101_021D5D90 *param0, int param1);
int sub_020715B4(const UnkStruct_ov101_021D5D90 *param0);
const void *sub_020715BC(const UnkStruct_ov101_021D5D90 *param0);
void sub_020715C0(UnkStruct_ov101_021D5D90 *param0, int param1);
int sub_020715C4(const UnkStruct_ov101_021D5D90 *param0);
void sub_020715D4(UnkStruct_ov101_021D5D90 *param0, const VecFx32 *param1);
void sub_020715E4(UnkStruct_ov101_021D5D90 *param0, VecFx32 *param1);
int UnkStruct_ov101_021D5D90_Return1(UnkStruct_ov101_021D5D90 *param0, void *param1);
void UnkStruct_ov101_021D5D90_DoNothing1(UnkStruct_ov101_021D5D90 *param0, void *param1);
void UnkStruct_ov101_021D5D90_DoNothing2(UnkStruct_ov101_021D5D90 *param0, void *param1);
void UnkStruct_ov101_021D5D90_DoNothing3(UnkStruct_ov101_021D5D90 *param0, void *param1);
void UnkStruct_ov101_021D5D90_DoNothing4(UnkStruct_ov101_021D5D90 *param0, void *param1);
void UnkStruct_ov101_021D5D90_DoNothing5(UnkStruct_ov101_021D5D90 *param0, void *param1);

#endif // POKEPLATINUM_UNK_020711EC_H
