// MNetworkVarNames = CRenderComponent::Storage_t m_CRenderComponent
// MNetworkVarNames = CHitboxComponent::Storage_t m_CHitboxComponent
// MNetworkVarNames = CChoreoComponent * m_pChoreoComponent
// MNetworkVarNames = CDestructiblePartsComponent * m_pDestructiblePartsSystemComponent
// MNetworkVarNames = RenderMode_t m_nRenderMode
// MNetworkVarNames = RenderFx_t m_nRenderFX
// MNetworkVarNames = Color m_clrRender
// MNetworkVarNames = EntityRenderAttribute_t m_vecRenderAttributes
// MNetworkVarNames = bool m_bRenderToCubemaps
// MNetworkVarNames = bool m_bNoInterpolate
// MNetworkVarNames = CCollisionProperty m_Collision
// MNetworkVarNames = CGlowProperty m_Glow
// MNetworkVarNames = float m_flGlowBackfaceMult
// MNetworkVarNames = float32 m_fadeMinDist
// MNetworkVarNames = float32 m_fadeMaxDist
// MNetworkVarNames = float32 m_flFadeScale
// MNetworkVarNames = float32 m_flShadowStrength
// MNetworkVarNames = uint8 m_nObjectCulling
// MNetworkVarNames = CNetworkViewOffsetVector m_vecViewOffset
// MNetworkVarNames = uint32 m_bvDisabledHitGroups
class CBaseModelEntity : public CBaseEntity
{
public:
    // MNotSaved = !!UNKNOWN!!
    CRenderComponent* m_CRenderComponent;
    // MNetworkEnable
    // MNetworkUserGroup = CHitboxComponent
    // MNetworkAlias = CHitboxComponent
    // MNetworkTypeAlias = CHitboxComponent
    CHitboxComponent m_CHitboxComponent;
    // MNetworkEnable
    // MPtrAutoallocate = !!UNKNOWN!!
    // MNetworkChangePointerCallback = !!UNKNOWN!!
    CChoreoComponent* m_pChoreoComponent;
    HitGroup_t m_nDestructiblePartInitialStateDestructed0;
    HitGroup_t m_nDestructiblePartInitialStateDestructed1;
    HitGroup_t m_nDestructiblePartInitialStateDestructed2;
    HitGroup_t m_nDestructiblePartInitialStateDestructed3;
    HitGroup_t m_nDestructiblePartInitialStateDestructed4;
    int32 m_nDestructiblePartInitialStateDestructed0_PartIndex;
    int32 m_nDestructiblePartInitialStateDestructed1_PartIndex;
    int32 m_nDestructiblePartInitialStateDestructed2_PartIndex;
    int32 m_nDestructiblePartInitialStateDestructed3_PartIndex;
    int32 m_nDestructiblePartInitialStateDestructed4_PartIndex;
    // MNetworkEnable
    // MPtrAutoallocate = !!UNKNOWN!!
    // MNetworkTypeAlias = CDestructiblePartsSystemComponent*
    CDestructiblePartsComponent* m_pDestructiblePartsSystemComponent;
    CEntityOutputTemplate<CBaseModelEntity__OnDamageLevelChangedArgs_t> m_OnDestructibleHitGroupDamageLevelChanged;
    GameTime_t m_flDissolveStartTime;
    CEntityIOOutput m_OnIgnite;
    // MNetworkEnable
    RenderMode_t m_nRenderMode;
    // MNetworkEnable
    RenderFx_t m_nRenderFX;
    CUtlString m_szAddModifier;
    bool m_bAllowFadeInView;
private:
    uint8 pad_0551[31];
public:
    bool m_bHasCollision;
    Vector m_vSupport;
    // MNetworkEnable
    // MNetworkChangeCallback = OnColorChanged
    Color m_clrRender;
    // MNetworkEnable
    // MNetworkChangeCallback = OnRenderAttributesChanged
    CUtlVectorEmbeddedNetworkVar<EntityRenderAttribute_t> m_vecRenderAttributes;
    // MNetworkEnable
    bool m_bRenderToCubemaps;
    // MNetworkEnable
    bool m_bNoInterpolate;
    // MNetworkEnable
    CCollisionProperty m_Collision;
    // MNetworkEnable
    CGlowProperty m_Glow;
    // MNetworkEnable
    float32 m_flGlowBackfaceMult;
    // MNetworkEnable
    float32 m_fadeMinDist;
    // MNetworkEnable
    float32 m_fadeMaxDist;
    // MNetworkEnable
    float32 m_flFadeScale;
    // MNetworkEnable
    float32 m_flShadowStrength;
    // MNetworkEnable
    uint8 m_nObjectCulling;
    CUtlOrderedMap<CGlobalSymbol, int32> m_bodyGroupChoices;
    // MNetworkEnable
    // MNetworkPriority = 32
    // MNetworkUserGroup = Player
    CNetworkViewOffsetVector m_vecViewOffset;
private:
    uint8 pad_0768[8];
public:
    // MNetworkEnable
    // MNetworkChangeCallback = OnDisabledHitgroupsChanged
    // MSaveOpsForField = !!UNKNOWN!!
    uint32 m_bvDisabledHitGroups[1];
};