//! TODO: This file was generated automatically and might contain errors

#pragma once

#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "global.h"
#include "types.h"

class ActorUnkMRD2_C4 : public Actor_C4 {
public:
    ActorUnkMRD2_C4(Actor *param1);

    /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
    /* 04 */ virtual bool vfunc_04() override;
    /* 08 */ virtual void vfunc_08() override;
    /* 0C */ virtual void vfunc_0C(unk32 param1) override;
};

class ActorUnkMRD2 : public Actor {
public:
    /* 000 (base) */
    /* 094 */ STRUCT_PAD(0x094, 0x910);
    /* 910 */ unk32 mUnk_910;

    ActorUnkMRD2();

    /* 4C */ virtual ~ActorUnkMRD2() override;

    void func_ov075_02154268(void);
    void func_ov075_021542c0(void);
    void func_ov075_02154354(void);
    void func_ov075_021548ec(void);
    void func_ov075_02154900(void);
    void func_ov075_02154b30(void);
    void func_ov075_02154d44(void);
    void func_ov075_02154e14(void);
    void func_ov075_02155534(void);
    void func_ov075_02155548(void);
    void func_ov075_021555ec(void);
    void func_ov075_02155d28(void);
    void func_ov075_02155dc8(void);
    void func_ov075_02155f00(void);
    void func_ov075_02156034(void);
    void func_ov075_021560b4(void);
    void func_ov075_021561e4(void);
    void func_ov075_021562c0(void);
    void func_ov075_02156448(void);
    void func_ov075_02156acc(void);
    void func_ov075_02156b80(void);
    void func_ov075_02156cfc(void);
    void func_ov075_02156d18(void);
    void func_ov075_02156db4(void);
    void func_ov075_02156f68(void);
    void func_ov075_021570cc(void);
    void func_ov075_02157834(void);
    void func_ov075_0215787c(void);
    void func_ov075_0215793c(void);
    void func_ov075_02157988(void);
    void func_ov075_02157a38(void);
    void func_ov075_02157af0(void);
    void func_ov075_02157b0c(void);
    void func_ov075_02157d84(void);
    void func_ov075_02157ffc(void);
    void func_ov075_0215808c(void);
    void func_ov075_021580fc(void);
    void func_ov075_021582dc(void);
    void func_ov075_021585b8(void);
    void func_ov075_02158678(void);
    void func_ov075_02158fc4(void);
    void func_ov075_0215906c(void);
    void func_ov075_021590ec(void);
    void func_ov075_02159198(void);
    void func_ov075_02159228(void);
    void func_ov075_02159294(void);
    void func_ov075_02159360(void);
    void func_ov075_0215945c(void);
    void func_ov075_021595e8(void);
    void func_ov075_02159674(void);
    void func_ov075_0215983c(void);
    void func_ov075_02159854(void);
    void func_ov075_02159930(void);
    void func_ov075_02159bf0(void);
    void func_ov075_02159cb0(void);
    void func_ov075_02159d20(void);
    void func_ov075_02159e38(void);
    void func_ov075_0215a0b0(void);
    void func_ov075_0215a104(void);
    void func_ov075_0215a194(void);
    void func_ov075_0215a41c(void);
    void func_ov075_0215a45c(void);
    void func_ov075_0215a4ec(void);
    void func_ov075_0215a794(void);
    void func_ov075_0215a7d4(void);
    void func_ov075_0215a86c(void);
    void func_ov075_0215a8a8(void);
    void func_ov075_0215ac74(void);
    void func_ov075_0215acd4(void);
    void func_ov075_0215ace0(void);
    void func_ov075_0215ad40(void);
    void func_ov075_0215ad4c(void);
    void func_ov075_0215adac(void);
    void func_ov075_0215adb8(void);
    void func_ov075_0215add0(void);
    void func_ov075_0215ade0(void);
    void func_ov075_0215ae68(void);
    void func_ov075_0215aeac(void);
    void func_ov075_0215af4c(void);
    void func_ov075_0215af6c(void);
    void func_ov075_0215b3f4(void);
    void func_ov075_0215b418(void);
    void func_ov075_0215b43c(void);
    void func_ov075_0215b460(void);
    void func_ov075_0215b4dc(void);
    void func_ov075_0215b578(void);
    void func_ov075_0215b914(void);
    void func_ov075_0215bbe8(void);
    bool func_ov075_0215bbf0(ActorRef *param1, unk32 *param2);
    void func_ov075_0215bc50(void);
    void func_ov075_0215bd40(void);
    void func_ov075_0215bd50(void);
    void func_ov075_0215be10(void);
    void func_ov075_0215be84(void);
    void func_ov075_0215bea4(void);
    void func_ov075_0215becc(void);
    void func_ov075_0215bf30(void);
    void func_ov075_0215bfa8(void);
    void func_ov075_0215c04c(void);
    void func_ov075_0215c224(void);
    void func_ov075_0215c444(void);
    void func_ov075_0215c56c(void);
    void func_ov075_0215c6d8(void);
    void func_ov075_0215c77c(void);
    void func_ov075_0215c808(void);
    void func_ov075_0215c888(void);
    void func_ov075_0215c8d8(void);
    void func_ov075_0215c968(void);
    void func_ov075_0215ca30(void);
    void func_ov075_0215cb50(void);
    void func_ov075_0215d028(void);
    void func_ov075_0215d0f8(void);
    void func_ov075_0215d368(void);
    void func_ov075_0215d3b8(void);
    void func_ov075_0215d5c8(void);
    void func_ov075_0215d670(void);
    void func_ov075_0215d718(void);
    void func_ov075_0215d740(void);
    void func_ov075_0215da38(void);
    void func_ov075_0215da4c(void);
    void func_ov075_0215db84(void);
    void func_ov075_0215dbe8(void);
    void func_ov075_0215dc90(void);
    void func_ov075_0215de38(void);
    void func_ov075_0215dee8(void);
    void func_ov075_0215def4(void);
};

class ActorProfileUnkMRD2 : public ActorProfile {
public:
    /* 00 (base) */

    ActorProfileUnkMRD2();
    ~ActorProfileUnkMRD2();

    /* 0C */ virtual Actor *Create();

    static ActorProfileUnkMRD2 *GetProfile();
};
