diff --git a/cheat-library/src/appdata/il2cpp-api-functions.h b/cheat-library/src/appdata/il2cpp-api-functions.h index 57e2944..ad50602 100644 --- a/cheat-library/src/appdata/il2cpp-api-functions.h +++ b/cheat-library/src/appdata/il2cpp-api-functions.h @@ -1,7 +1,5 @@ // Generated C++ file by Il2CppInspector - http://www.djkaty.com - https://github.com/djkaty -// Target Unity version: 2017.4.15 - 2017.4.40 - -#include "il2cpp-appdata.h" +// Target Unity version: 2019.4.21 - 2019.4.24 #ifndef DO_API_NO_RETURN @@ -9,9 +7,11 @@ #endif -DO_API(void, il2cpp_init, (const char* domain_name)); -DO_API(void, il2cpp_init_utf16, (const Il2CppChar * domain_name)); + +DO_API(int, il2cpp_init, (const char* domain_name)); + +DO_API(int, il2cpp_init_utf16, (const Il2CppChar * domain_name)); DO_API(void, il2cpp_shutdown, ()); @@ -75,6 +75,8 @@ DO_API(const Il2CppImage*, il2cpp_assembly_get_image, (const Il2CppAssembly * as // class +DO_API(void, il2cpp_class_for_each, (void(*klassReportFunc)(Il2CppClass* klass, void* userData), void* userData)); + DO_API(const Il2CppType*, il2cpp_class_enum_basetype, (Il2CppClass * klass)); DO_API(bool, il2cpp_class_is_generic, (const Il2CppClass * klass)); @@ -115,6 +117,8 @@ DO_API(const MethodInfo*, il2cpp_class_get_method_from_name, (Il2CppClass * klas DO_API(const char*, il2cpp_class_get_name, (Il2CppClass * klass)); +DO_API(void, il2cpp_type_get_name_chunked, (const Il2CppType * type, void(*chunkReportFunc)(void* data, void* userData), void* userData)); + DO_API(const char*, il2cpp_class_get_namespace, (Il2CppClass * klass)); DO_API(Il2CppClass*, il2cpp_class_get_parent, (Il2CppClass * klass)); @@ -143,6 +147,8 @@ DO_API(Il2CppClass*, il2cpp_class_from_type, (const Il2CppType * type)); DO_API(const Il2CppType*, il2cpp_class_get_type, (Il2CppClass * klass)); +DO_API(uint32_t, il2cpp_class_get_type_token, (Il2CppClass * klass)); + DO_API(bool, il2cpp_class_has_attribute, (Il2CppClass * klass, Il2CppClass * attr_class)); DO_API(bool, il2cpp_class_has_references, (Il2CppClass * klass)); @@ -153,6 +159,12 @@ DO_API(const Il2CppImage*, il2cpp_class_get_image, (Il2CppClass * klass)); DO_API(const char*, il2cpp_class_get_assemblyname, (const Il2CppClass * klass)); +DO_API(int, il2cpp_class_get_rank, (const Il2CppClass * klass)); + +DO_API(uint32_t, il2cpp_class_get_data_size, (const Il2CppClass * klass)); + +DO_API(void*, il2cpp_class_get_static_field_data, (const Il2CppClass * klass)); + // testing only @@ -223,7 +235,7 @@ DO_API(void, il2cpp_field_static_set_value, (FieldInfo * field, void *value)); DO_API(void, il2cpp_field_set_value_object, (Il2CppObject * instance, FieldInfo * field, Il2CppObject * value)); - +DO_API(bool, il2cpp_field_is_literal, (FieldInfo * field)); // gc @@ -235,11 +247,31 @@ DO_API(void, il2cpp_gc_disable, ()); DO_API(void, il2cpp_gc_enable, ()); +DO_API(bool, il2cpp_gc_is_disabled, ()); + +DO_API(int64_t, il2cpp_gc_get_max_time_slice_ns, ()); + +DO_API(void, il2cpp_gc_set_max_time_slice_ns, (int64_t maxTimeSlice)); + +DO_API(bool, il2cpp_gc_is_incremental, ()); + DO_API(int64_t, il2cpp_gc_get_used_size, ()); DO_API(int64_t, il2cpp_gc_get_heap_size, ()); +DO_API(void, il2cpp_gc_wbarrier_set_field, (Il2CppObject * obj, void **targetAddress, void *object)); +DO_API(bool, il2cpp_gc_has_strict_wbarriers, ()); + +DO_API(void, il2cpp_gc_set_external_allocation_tracker, (void(*func)(void*, size_t, int))); + +DO_API(void, il2cpp_gc_set_external_wbarrier_tracker, (void(*func)(void**))); + +DO_API(void, il2cpp_gc_foreach_heap, (void(*func)(void* data, void* userData), void* userData)); + +DO_API(void, il2cpp_stop_gc_world, ()); + +DO_API(void, il2cpp_start_gc_world, ()); // gchandle @@ -251,6 +283,22 @@ DO_API(Il2CppObject*, il2cpp_gchandle_get_target , (uint32_t gchandle)); DO_API(void, il2cpp_gchandle_free, (uint32_t gchandle)); +DO_API(void , il2cpp_gchandle_foreach_get_target, (void(*func)(void* data, void* userData), void* userData)); + + + +// vm runtime info + +DO_API(uint32_t, il2cpp_object_header_size, ()); + +DO_API(uint32_t, il2cpp_array_object_header_size, ()); + +DO_API(uint32_t, il2cpp_offset_of_array_length_in_array_object_header, ()); + +DO_API(uint32_t, il2cpp_offset_of_array_bounds_in_array_object_header, ()); + +DO_API(uint32_t, il2cpp_allocation_granularity, ()); + // liveness @@ -273,6 +321,8 @@ DO_API(Il2CppClass*, il2cpp_method_get_declaring_type, (const MethodInfo * metho DO_API(const char*, il2cpp_method_get_name, (const MethodInfo * method)); +DO_API(const MethodInfo*, il2cpp_method_get_from_reflection, (const Il2CppReflectionMethod * method)); + DO_API(Il2CppReflectionMethod*, il2cpp_method_get_object, (const MethodInfo * method, Il2CppClass * refclass)); DO_API(bool, il2cpp_method_is_generic, (const MethodInfo * method)); @@ -401,8 +451,6 @@ DO_API(Il2CppString*, il2cpp_string_is_interned, (Il2CppString * str)); // thread -DO_API(char*, il2cpp_thread_get_name, (Il2CppThread * thread, uint32_t * len)); - DO_API(Il2CppThread*, il2cpp_thread_current, ()); DO_API(Il2CppThread*, il2cpp_thread_attach, (Il2CppDomain * domain)); @@ -423,18 +471,20 @@ DO_API(void, il2cpp_current_thread_walk_frame_stack, (Il2CppFrameWalkFunc func, DO_API(void, il2cpp_thread_walk_frame_stack, (Il2CppThread * thread, Il2CppFrameWalkFunc func, void* user_data)); -DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo & frame)); +DO_API(bool, il2cpp_current_thread_get_top_frame, (Il2CppStackFrameInfo * frame)); -DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo & frame)); +DO_API(bool, il2cpp_thread_get_top_frame, (Il2CppThread * thread, Il2CppStackFrameInfo * frame)); -DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo & frame)); +DO_API(bool, il2cpp_current_thread_get_frame_at, (int32_t offset, Il2CppStackFrameInfo * frame)); -DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo & frame)); +DO_API(bool, il2cpp_thread_get_frame_at, (Il2CppThread * thread, int32_t offset, Il2CppStackFrameInfo * frame)); DO_API(int32_t, il2cpp_current_thread_get_stack_depth, ()); DO_API(int32_t, il2cpp_thread_get_stack_depth, (Il2CppThread * thread)); +DO_API(void, il2cpp_override_stack_backtrace, (Il2CppBacktraceFunc stackBacktraceFunc)); + // type @@ -447,6 +497,18 @@ DO_API(Il2CppClass*, il2cpp_type_get_class_or_element_class, (const Il2CppType * DO_API(char*, il2cpp_type_get_name, (const Il2CppType * type)); +DO_API(bool, il2cpp_type_is_byref, (const Il2CppType * type)); + +DO_API(uint32_t, il2cpp_type_get_attrs, (const Il2CppType * type)); + +DO_API(bool, il2cpp_type_equals, (const Il2CppType * type, const Il2CppType * otherType)); + +DO_API(char*, il2cpp_type_get_assembly_qualified_name, (const Il2CppType * type)); + +DO_API(bool, il2cpp_type_is_static, (const Il2CppType * type)); + +DO_API(bool, il2cpp_type_is_pointer_type, (const Il2CppType * type)); + // image @@ -461,6 +523,12 @@ DO_API(const MethodInfo*, il2cpp_image_get_entry_point, (const Il2CppImage * ima +DO_API(size_t, il2cpp_image_get_class_count, (const Il2CppImage * image)); + +DO_API(const Il2CppClass*, il2cpp_image_get_class, (const Il2CppImage * image, size_t index)); + + + // Memory information DO_API(Il2CppManagedMemorySnapshot*, il2cpp_capture_memory_snapshot, ()); @@ -478,3 +546,57 @@ DO_API(void, il2cpp_set_find_plugin_callback, (Il2CppSetFindPlugInCallback metho DO_API(void, il2cpp_register_log_callback, (Il2CppLogCallback method)); + +// Debugger + +DO_API(void, il2cpp_debugger_set_agent_options, (const char* options)); + +DO_API(bool, il2cpp_is_debugger_attached, ()); + +DO_API(void, il2cpp_register_debugger_agent_transport, (Il2CppDebuggerTransport * debuggerTransport)); + + + +// Debug metadata + +DO_API(bool, il2cpp_debug_get_method_info, (const MethodInfo*, Il2CppMethodDebugInfo * methodDebugInfo)); + + + +// TLS module + +DO_API(void, il2cpp_unity_install_unitytls_interface, (const void* unitytlsInterfaceStruct)); + + + +// custom attributes + +DO_API(Il2CppCustomAttrInfo*, il2cpp_custom_attrs_from_class, (Il2CppClass * klass)); + +DO_API(Il2CppCustomAttrInfo*, il2cpp_custom_attrs_from_method, (const MethodInfo * method)); + + + +DO_API(Il2CppObject*, il2cpp_custom_attrs_get_attr, (Il2CppCustomAttrInfo * ainfo, Il2CppClass * attr_klass)); + +DO_API(bool, il2cpp_custom_attrs_has_attr, (Il2CppCustomAttrInfo * ainfo, Il2CppClass * attr_klass)); + +DO_API(Il2CppArray*, il2cpp_custom_attrs_construct, (Il2CppCustomAttrInfo * cinfo)); + + + +DO_API(void, il2cpp_custom_attrs_free, (Il2CppCustomAttrInfo * ainfo)); + + + +// Il2CppClass user data for GetComponent optimization + +DO_API(void, il2cpp_class_set_userdata, (Il2CppClass * klass, void* userdata)); + +DO_API(int, il2cpp_class_get_userdata_offset, ()); + + + +DO_API(void, il2cpp_set_default_thread_affinity, (int64_t affinity_mask)); + + diff --git a/cheat-library/src/appdata/il2cpp-functions.h b/cheat-library/src/appdata/il2cpp-functions.h index 11b6eb0..f306bc0 100644 --- a/cheat-library/src/appdata/il2cpp-functions.h +++ b/cheat-library/src/appdata/il2cpp-functions.h @@ -8,15 +8,15 @@ using namespace app; // Map hooks -DO_APP_FUNC(0x02E9F9E0, void, InLevelMapPageContext_OnMarkClicked, (InLevelMapPageContext* __this, MonoMapMark* mark, MethodInfo* method)); -DO_APP_FUNC(0x02E85EC0, void, InLevelMapPageContext_OnMapClicked, (InLevelMapPageContext* __this, Vector2 screenPos, MethodInfo* method)); -DO_APP_FUNC(0x00F0DCE0, bool, MapModule_IsAreaUnlock, (MapModule* __this, uint32_t sceneID, uint32_t areaID, MethodInfo* method)); +DO_APP_FUNC(0x02E9F9E0, void, MoleMole_InLevelMapPageContext_OnMarkClicked, (InLevelMapPageContext* __this, MonoMapMark* mark, MethodInfo* method)); +DO_APP_FUNC(0x02E85EC0, void, MoleMole_InLevelMapPageContext_OnMapClicked, (InLevelMapPageContext* __this, Vector2 screenPos, MethodInfo* method)); +DO_APP_FUNC(0x00F0DCE0, bool, MoleMole_MapModule_IsAreaUnlock, (MoleMole_MapModule* __this, uint32_t sceneID, uint32_t areaID, MethodInfo* method)); // changed to: // DO_APP_FUNC(0x01B0A910, uint16_t, MoleMole_SimpleSafeUInt16_DBDMOONJALD_1, (MoleMole_SimpleSafeUInt16 v, MethodInfo * method)); // DBDMOONJALD => op_Implicit -DO_APP_FUNC(0x01B0A910, uint16_t, SimpleSafeUInt16_get_Value, (SimpleSafeUInt16 v, MethodInfo* method)); -DO_APP_FUNC(0x0400F280, uint32_t, SimpleSafeUInt32_get_Value, (SimpleSafeUInt32 v, MethodInfo* method)); +DO_APP_FUNC(0x01B0A910, uint16_t, MoleMole_SimpleSafeUInt16_get_Value, (SimpleSafeUInt16 v, MethodInfo* method)); +DO_APP_FUNC(0x0400F280, uint32_t, MoleMole_SimpleSafeUInt32_get_Value, (SimpleSafeUInt32 v, MethodInfo* method)); // Map utility DO_APP_FUNC(0x00E866B0, Rect, MonoInLevelMapPage_get_mapRect, (MonoInLevelMapPage* __this, MethodInfo* method)); @@ -25,54 +25,54 @@ DO_APP_FUNC(0x00E86680, Transform*, MonoInLevelMapPage_get_mapBackground, (MonoI // Teleport hooks DO_APP_FUNC(0x028AD260, void, GameManager_Update, (GameManager* __this, MethodInfo* method)); -DO_APP_FUNC(0x01F54110, void, LoadingManager_SceneGoto, (LoadingManager* __this, PlayerEnterSceneNotify* notify, MethodInfo* method)); -DO_APP_FUNC(0x01F55300, void, LoadingManager_PerformPlayerTransmit, (LoadingManager* __this, Vector3 targetPos, EnterType__Enum enterType, uint32_t token, EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum transType, uint32_t enterReason, MethodInfo* method)); -DO_APP_FUNC(0x01F563C0, void, LoadingManager_RequestSceneTransToPoint, (LoadingManager* __this, uint32_t sceneId, uint32_t pointId, void* finishCallBackInForceDrag, MethodInfo* method)); -DO_APP_FUNC(0x01F57E60, bool, LoadingManager_NeedTransByServer, (LoadingManager* __this, uint32_t sceneId, Vector3 position, MethodInfo* method)); -DO_APP_FUNC(0x0104A6D0, Vector3, LocalEntityInfoData_get_initPos, (LocalEntityInfoData* __this, MethodInfo* method)); // shared offset +DO_APP_FUNC(0x01F54110, void, MoleMole_LoadingManager_SceneGoto, (MoleMole_LoadingManager* __this, PlayerEnterSceneNotify* notify, MethodInfo* method)); +DO_APP_FUNC(0x01F55300, void, MoleMole_LoadingManager_PerformPlayerTransmit, (MoleMole_LoadingManager* __this, Vector3 targetPos, EnterType__Enum enterType, uint32_t token, EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum transType, uint32_t enterReason, MethodInfo* method)); +DO_APP_FUNC(0x01F563C0, void, MoleMole_LoadingManager_RequestSceneTransToPoint, (MoleMole_LoadingManager* __this, uint32_t sceneId, uint32_t pointId, void* finishCallBackInForceDrag, MethodInfo* method)); +DO_APP_FUNC(0x01F57E60, bool, MoleMole_LoadingManager_NeedTransByServer, (MoleMole_LoadingManager* __this, uint32_t sceneId, Vector3 position, MethodInfo* method)); +DO_APP_FUNC(0x0104A6D0, Vector3, MoleMole_LocalEntityInfoData_get_initPos, (LocalEntityInfoData* __this, MethodInfo* method)); // shared offset // Unlimited stamina -DO_APP_FUNC(0x01F17820, void, LevelSyncCombatPlugin_RequestSceneEntityMoveReq, (LevelSyncCombatPlugin* __this, uint32_t entityId, MotionInfo* syncInfo, bool isReliable, uint32_t HAOCOEMOMBG, MethodInfo* method)); -DO_APP_FUNC(0x016189E0, void, DataItem_HandleNormalProp, (DataItem* __this, uint32_t type, int64_t value, DataPropOp__Enum state, MethodInfo* method)); +DO_APP_FUNC(0x01F17820, void, MoleMole_LevelSyncCombatPlugin_RequestSceneEntityMoveReq, (LevelSyncCombatPlugin* __this, uint32_t entityId, MotionInfo* syncInfo, bool isReliable, uint32_t HAOCOEMOMBG, MethodInfo* method)); +DO_APP_FUNC(0x016189E0, void, MoleMole_DataItem_HandleNormalProp, (DataItem* __this, uint32_t type, int64_t value, DataPropOp__Enum state, MethodInfo* method)); // God mode DO_APP_FUNC(0x027DB100, void, VCHumanoidMove_NotifyLandVelocity, (VCHumanoidMove* __this, Vector3 velocity, float reachMaxDownVelocityTime, MethodInfo* method)); DO_APP_FUNC(0x036889B0, bool, Miscs_CheckTargetAttackable, (void* __this, BaseEntity* attackerEntity, BaseEntity* targetEntity, MethodInfo* method)); -// DO_APP_FUNC(0x00D0CA90, void, LCBaseCombat_FireBeingHitEvent, (LCBaseCombat* __this, uint32_t attackeeRuntimeID, AttackResult* attackResult, MethodInfo* method)); +// DO_APP_FUNC(0x00D0CA90, void, MoleMole_LCBaseCombat_FireBeingHitEvent, (LCBaseCombat* __this, uint32_t attackeeRuntimeID, AttackResult* attackResult, MethodInfo* method)); // Cooldown cheats -DO_APP_FUNC(0x00C69910, bool, HumanoidMoveFSM_CheckSprintCooldown, (/* HumanoidMoveFSM */void* __this, MethodInfo* method)); -DO_APP_FUNC(0x01530C80, bool, LCAvatarCombat_IsEnergyMax, (void* __this, MethodInfo* method)); -DO_APP_FUNC(0x01530480, void, LCAvatarCombat_ChangeEnergy_1, (LCAvatarCombat* __this, ElementType__Enum type, float value, DataPropOp__Enum state, MethodInfo* method)); -DO_APP_FUNC(0x0152DC10, bool, LCAvatarCombat_OnSkillStart, (LCAvatarCombat* __this, uint32_t skillID, float cdMultipler, MethodInfo* method)); -DO_APP_FUNC(0x01530210, bool, LCAvatarCombat_IsSkillInCD_1, (LCAvatarCombat* __this, LCAvatarCombat_OMIIMOJOHIP* skillInfo, MethodInfo* method)); +DO_APP_FUNC(0x00C69910, bool, MoleMole_HumanoidMoveFSM_CheckSprintCooldown, (/* HumanoidMoveFSM */void* __this, MethodInfo* method)); +DO_APP_FUNC(0x01530C80, bool, MoleMole_LCAvatarCombat_IsEnergyMax, (void* __this, MethodInfo* method)); +DO_APP_FUNC(0x01530480, void, MoleMole_LCAvatarCombat_ChangeEnergy_1, (LCAvatarCombat* __this, ElementType__Enum type, float value, DataPropOp__Enum state, MethodInfo* method)); +DO_APP_FUNC(0x0152DC10, bool, MoleMole_LCAvatarCombat_OnSkillStart, (LCAvatarCombat* __this, uint32_t skillID, float cdMultipler, MethodInfo* method)); +DO_APP_FUNC(0x01530210, bool, MoleMole_LCAvatarCombat_IsSkillInCD_1, (LCAvatarCombat* __this, LCAvatarCombat_OMIIMOJOHIP* skillInfo, MethodInfo* method)); -DO_APP_FUNC(0x02385800, void, ActorAbilityPlugin_AddDynamicFloatWithRange, (void* __this, String* key, float value, float min, float max, bool forceDoAtRemote, MethodInfo* method)); +DO_APP_FUNC(0x02385800, void, MoleMole_ActorAbilityPlugin_AddDynamicFloatWithRange, (void* __this, String* key, float value, float min, float max, bool forceDoAtRemote, MethodInfo* method)); // Rapid fire -DO_APP_FUNC(0x00D12040, void, LCBaseCombat_DoHitEntity, (LCBaseCombat* __this, uint32_t targetID, AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method)); -DO_APP_FUNC(0x01F0D930, void, Formula_CalcAttackResult, (CombatProperty* attackCombatProperty, CombatProperty* defenseCombatProperty, AttackResult* attackResult, BaseEntity* attackerEntity, BaseEntity* attackeeEntity, MethodInfo* method)); +DO_APP_FUNC(0x00D12040, void, MoleMole_LCBaseCombat_DoHitEntity, (LCBaseCombat* __this, uint32_t targetID, AttackResult* attackResult, bool ignoreCheckCanBeHitInMP, MethodInfo* method)); +DO_APP_FUNC(0x01F0D930, void, MoleMole_Formula_CalcAttackResult, (CombatProperty* attackCombatProperty, CombatProperty* defenseCombatProperty, AttackResult* attackResult, BaseEntity* attackerEntity, BaseEntity* attackeeEntity, MethodInfo* method)); // World cheats -DO_APP_FUNC(0x022C3450, void, VCMonsterAIController_TryDoSkill, (/* VCMonsterAIController */ void* __this, uint32_t skillID, MethodInfo* method)); // Manual -DO_APP_FUNC(0x020FA730, void, LCSelectPickup_AddInteeBtnByID, (void* __this, BaseEntity* entity, MethodInfo* method)); -DO_APP_FUNC(0x020FA090, bool, LCSelectPickup_IsInPosition, (void* __this, BaseEntity* entity, MethodInfo* method)); -DO_APP_FUNC(0x020FC120, bool, LCSelectPickup_IsOutPosition, (void* __this, BaseEntity* entity, MethodInfo* method)); -DO_APP_FUNC(0x0219B8E0, void, ItemModule_PickItem, (ItemModule* __this, uint32_t entityID, MethodInfo* method)); -DO_APP_FUNC(0x00C2F710, void, LevelSceneElementViewPlugin_Tick, (LevelSceneElementViewPlugin* __this, float inDeltaTime, MethodInfo* method)); +DO_APP_FUNC(0x022C3450, void, MoleMole_VCMonsterAIController_TryDoSkill, (/* VCMonsterAIController */ void* __this, uint32_t skillID, MethodInfo* method)); // Manual +DO_APP_FUNC(0x020FA730, void, MoleMole_LCSelectPickup_AddInteeBtnByID, (void* __this, BaseEntity* entity, MethodInfo* method)); +DO_APP_FUNC(0x020FA090, bool, MoleMole_LCSelectPickup_IsInPosition, (void* __this, BaseEntity* entity, MethodInfo* method)); +DO_APP_FUNC(0x020FC120, bool, MoleMole_LCSelectPickup_IsOutPosition, (void* __this, BaseEntity* entity, MethodInfo* method)); +DO_APP_FUNC(0x0219B8E0, void, MoleMole_ItemModule_PickItem, (MoleMole_ItemModule* __this, uint32_t entityID, MethodInfo* method)); +DO_APP_FUNC(0x00C2F710, void, MoleMole_LevelSceneElementViewPlugin_Tick, (LevelSceneElementViewPlugin* __this, float inDeltaTime, MethodInfo* method)); // Dialog skipping -DO_APP_FUNC(0x00F95350, bool, TalkDialogContext_get_canClick, (TalkDialogContext* __this, MethodInfo* method)); // delete -DO_APP_FUNC(0x00F932D0, bool, TalkDialogContext_get_canAutoClick, (TalkDialogContext* __this, MethodInfo* method)); -DO_APP_FUNC(0x00F97D70, void, TalkDialogContext_OnDialogSelectItem, (TalkDialogContext* __this, Notify* notify, MethodInfo* method)); -DO_APP_FUNC(0x02BF0040, void, InLevelCutScenePageContext_OnFreeClick, (InLevelCutScenePageContext* __this, MethodInfo* method)); -DO_APP_FUNC(0x02BF1AC0, void, InLevelCutScenePageContext_UpdateView, (InLevelCutScenePageContext* __this, MethodInfo* method)); -DO_APP_FUNC(0x02BEF110, void, InLevelCutScenePageContext_ClearView, (InLevelCutScenePageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x00F95350, bool, MoleMole_TalkDialogContext_get_canClick, (TalkDialogContext* __this, MethodInfo* method)); // delete +DO_APP_FUNC(0x00F932D0, bool, MoleMole_TalkDialogContext_get_canAutoClick, (TalkDialogContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x00F97D70, void, MoleMole_TalkDialogContext_OnDialogSelectItem, (TalkDialogContext* __this, Notify* notify, MethodInfo* method)); +DO_APP_FUNC(0x02BF0040, void, MoleMole_InLevelCutScenePageContext_OnFreeClick, (InLevelCutScenePageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x02BF1AC0, void, MoleMole_InLevelCutScenePageContext_UpdateView, (InLevelCutScenePageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x02BEF110, void, MoleMole_InLevelCutScenePageContext_ClearView, (InLevelCutScenePageContext* __this, MethodInfo* method)); // Protection bypass @@ -80,69 +80,69 @@ DO_APP_FUNC(0x066218D0, Byte__Array*, Application_RecordUserData, (int32_t nType // Networking -DO_APP_FUNC(0x012519C0, int32_t, KcpNative_kcp_client_send_packet, (void* kcp_client, KcpPacket_1* packet, MethodInfo* method)); -DO_APP_FUNC(0x00BD08A0, bool, KcpClient_TryDequeueEvent, (void* __this, ClientKcpEvent* evt, MethodInfo* method)); -DO_APP_FUNC(0x029C3D60, void, Packet_XorEncrypt, (Byte__Array** bytes, int32_t length, MethodInfo* method)); +DO_APP_FUNC(0x012519C0, int32_t, Kcp_KcpNative_kcp_client_send_packet, (void* kcp_client, KcpPacket_1* packet, MethodInfo* method)); +DO_APP_FUNC(0x00BD08A0, bool, MoleMole_KcpClient_TryDequeueEvent, (void* __this, ClientKcpEvent* evt, MethodInfo* method)); +DO_APP_FUNC(0x029C3D60, void, MoleMole_Packet_XorEncrypt, (Byte__Array** bytes, int32_t length, MethodInfo* method)); // Lua functions DO_APP_FUNC(0x02D59730, Byte__Array*, LuaManager_LoadCustomLuaFile, (LuaManager* __this, String** filePath, bool* recycleBytes, MethodInfo* method)); DO_APP_FUNC(0x0655E850, void, Lua_xlua_pushasciistring, (void* L, String* str, MethodInfo* method)); -DO_APP_FUNC(0x01D8D5D0, void, LuaShellManager_DoString, (void* __this, Byte__Array* byteArray, MethodInfo* method)); +DO_APP_FUNC(0x01D8D5D0, void, MoleMole_LuaShellManager_DoString, (void* __this, Byte__Array* byteArray, MethodInfo* method)); DO_APP_FUNC(0x0600AFF0, void*, LuaEnv_DoString, (void* __this, Byte__Array* chunk, String* chunkName, void* env, MethodInfo* method)); -DO_APP_FUNC(0x01D8DCA0, void, LuaShellManager_ReportLuaShellResult, (void* __this, String* type, String* value, MethodInfo* method)); // Anticheat info +DO_APP_FUNC(0x01D8DCA0, void, MoleMole_LuaShellManager_ReportLuaShellResult, (void* __this, String* type, String* value, MethodInfo* method)); // Anticheat info // Debug hooks -DO_APP_FUNC(0x02D3FA40, AttackResult_1*, AttackResult_FillProtoAttackResult, (AttackResult* __this, uint32_t attackerID, uint32_t defenseId, AttackResult_1* protoAttackResult, MethodInfo* method)); -DO_APP_FUNC(0x01F16210, void, LevelSyncCombatPlugin_SendFaceToDir, (void* __this, uint32_t runtimeID, Vector3 forward, MethodInfo* method)); -DO_APP_FUNC(0x035D4180, void, BaseEntity_FireEvent, (BaseEntity* __this, BaseEvent* e, bool immediately, MethodInfo* method)); -DO_APP_FUNC(0x023D4A90, bool, ActorAbilityPlugin_OnEvent, (void* __this, BaseEvent* e, MethodInfo* method)); +DO_APP_FUNC(0x02D3FA40, AttackResult_1*, MoleMole_AttackResult_FillProtoAttackResult, (AttackResult* __this, uint32_t attackerID, uint32_t defenseId, AttackResult_1* protoAttackResult, MethodInfo* method)); +DO_APP_FUNC(0x01F16210, void, MoleMole_LevelSyncCombatPlugin_SendFaceToDir, (void* __this, uint32_t runtimeID, Vector3 forward, MethodInfo* method)); +DO_APP_FUNC(0x035D4180, void, MoleMole_BaseEntity_FireEvent, (BaseEntity* __this, BaseEvent* e, bool immediately, MethodInfo* method)); +DO_APP_FUNC(0x023D4A90, bool, MoleMole_ActorAbilityPlugin_OnEvent, (void* __this, BaseEvent* e, MethodInfo* method)); // Kill aura -DO_APP_FUNC(0x00B8EB30, void, EvtCrash_Init, (EvtCrash* __this, uint32_t targetID, MethodInfo* method)); // Manual offset -DO_APP_FUNC(0x00941E80, void, EventManager_FireEvent, (EventManager* __this, BaseEvent* e, bool immediately, MethodInfo* method)); -DO_APP_FUNC(0x0167B1A0, bool, FixedBoolStack_get_value, (FixedBoolStack* __this, MethodInfo* method)); +DO_APP_FUNC(0x00B8EB30, void, MoleMole_EvtCrash_Init, (EvtCrash* __this, uint32_t targetID, MethodInfo* method)); // Manual offset +DO_APP_FUNC(0x00941E80, void, MoleMole_EventManager_FireEvent, (MoleMole_EventManager* __this, BaseEvent* e, bool immediately, MethodInfo* method)); +DO_APP_FUNC(0x0167B1A0, bool, MoleMole_FixedBoolStack_get_value, (FixedBoolStack* __this, MethodInfo* method)); -// cannot find actual function name: CreateCrashEvent +// cannot find actual function name: MoleMole_EventHelper_Allocate_103 // shared offset // possible: -// DO_APP_FUNC(0x039E2030, MoleMole_EvtCrash_1 *, JDGMIDCLFJK_CNCAIAIACLN_103, (MethodInfo * method)); -DO_APP_FUNC(0x039E2030, EvtCrash*, CreateCrashEvent, (MethodInfo* method)); -DO_APP_FUNC_METHODINFO(0x0971A140, CreateCrashEvent__MethodInfo); +// DO_APP_FUNC(0x039E2030, MoleMole_EvtCrash_1 *, EventHelper_Allocate_103, (MethodInfo * method)); +DO_APP_FUNC(0x039E2030, EvtCrash*, MoleMole_EventHelper_Allocate_103, (MethodInfo* method)); +DO_APP_FUNC_METHODINFO(0x0971A140, MoleMole_EventHelper_Allocate_103__MethodInfo); -DO_APP_FUNC(0x034BC360, void, BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, (BaseMoveSyncPlugin* __this, MethodInfo* method)); +DO_APP_FUNC(0x034BC360, void, MoleMole_BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, (BaseMoveSyncPlugin* __this, MethodInfo* method)); // Fishing -DO_APP_FUNC(0x0292F8D0, void, FishingModule_RequestFishCastRod, (void* __this, uint32_t baitId, uint32_t rodId, Vector3 pos, uint32_t rodEntityId, MethodInfo* method)); +DO_APP_FUNC(0x0292F8D0, void, MoleMole_FishingModule_RequestFishCastRod, (void* __this, uint32_t baitId, uint32_t rodId, Vector3 pos, uint32_t rodEntityId, MethodInfo* method)); -DO_APP_FUNC(0x0292D6D0, void, FishingModule_RequestFishBite, (void* __this, MethodInfo* method)); -DO_APP_FUNC(0x02930440, void, FishingModule_OnFishBiteRsp, (void* __this, FishBiteRsp* rsp, MethodInfo* method)); +DO_APP_FUNC(0x0292D6D0, void, MoleMole_FishingModule_RequestFishBite, (void* __this, MethodInfo* method)); +DO_APP_FUNC(0x02930440, void, MoleMole_FishingModule_OnFishBiteRsp, (void* __this, FishBiteRsp* rsp, MethodInfo* method)); -DO_APP_FUNC(0x0292F470, void, FishingModule_RequestFishBattleBegin, (void* __this, MethodInfo* method)); -DO_APP_FUNC(0x0292CAE0, void, FishingModule_OnFishBattleBeginRsp, (void* __this, FishBattleBeginRsp* rsp, MethodInfo* method)); +DO_APP_FUNC(0x0292F470, void, MoleMole_FishingModule_RequestFishBattleBegin, (void* __this, MethodInfo* method)); +DO_APP_FUNC(0x0292CAE0, void, MoleMole_FishingModule_OnFishBattleBeginRsp, (void* __this, FishBattleBeginRsp* rsp, MethodInfo* method)); -DO_APP_FUNC(0x0292D090, void, FishingModule_RequestFishBattleEnd, (void* __this, FishBattleResult__Enum result, bool isAlwaysBonus, float mxBonusTime, MethodInfo* method)); -DO_APP_FUNC(0x0292DBD0, void, FishingModule_OnFishBattleEndRsp, (void* __this, FishBattleEndRsp* rsp, MethodInfo* method)); +DO_APP_FUNC(0x0292D090, void, MoleMole_FishingModule_RequestFishBattleEnd, (void* __this, FishBattleResult__Enum result, bool isAlwaysBonus, float mxBonusTime, MethodInfo* method)); +DO_APP_FUNC(0x0292DBD0, void, MoleMole_FishingModule_OnFishBattleEndRsp, (void* __this, FishBattleEndRsp* rsp, MethodInfo* method)); -DO_APP_FUNC(0x0292F190, void, FishingModule_OnExitFishingRsp, (void* __this, void* rsp, MethodInfo* method)); -DO_APP_FUNC(0x0292C7F0, void, FishingModule_onFishChosenNotify, (void* __this, void* notify, MethodInfo* method)); +DO_APP_FUNC(0x0292F190, void, MoleMole_FishingModule_OnExitFishingRsp, (void* __this, void* rsp, MethodInfo* method)); +DO_APP_FUNC(0x0292C7F0, void, MoleMole_FishingModule_onFishChosenNotify, (void* __this, void* notify, MethodInfo* method)); // Visuals -DO_APP_FUNC(0x013FC090, void, SCameraModuleInitialize_SetWarningLocateRatio, (SCameraModuleInitialize* __this, double deltaTime, CameraShareData* data, MethodInfo* method)); +DO_APP_FUNC(0x013FC090, void, MoleMole_SCameraModuleInitialize_SetWarningLocateRatio, (SCameraModuleInitialize* __this, double deltaTime, CameraShareData* data, MethodInfo* method)); // Chest Indicator | RyujinZX#6666 -DO_APP_FUNC(0x04C9B450, bool, LCIndicatorPlugin_DoCheck, (LCIndicatorPlugin* __this, MethodInfo* method)); -DO_APP_FUNC(0x04C9B830, void, LCIndicatorPlugin_ShowIcon, (LCIndicatorPlugin* __this, MethodInfo* method)); -DO_APP_FUNC(0x04C9A750, void, LCIndicatorPlugin_HideIcon, (LCIndicatorPlugin* __this, MethodInfo* method)); +DO_APP_FUNC(0x04C9B450, bool, MoleMole_LCIndicatorPlugin_DoCheck, (LCIndicatorPlugin* __this, MethodInfo* method)); +DO_APP_FUNC(0x04C9B830, void, MoleMole_LCIndicatorPlugin_ShowIcon, (LCIndicatorPlugin* __this, MethodInfo* method)); +DO_APP_FUNC(0x04C9A750, void, MoleMole_LCIndicatorPlugin_HideIcon, (LCIndicatorPlugin* __this, MethodInfo* method)); // Auto Cooking | RyujinZX#6666 -DO_APP_FUNC(0x02854E30, void, PlayerModule_RequestPlayerCook, (PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method)); -DO_APP_FUNC(0x02858180, void, PlayerModule_OnPlayerCookRsp, (PlayerModule* __this, PlayerCookRsp* rsp, MethodInfo* method)); -DO_APP_FUNC(0x033F5820, void, CookingQtePageContext_UpdateProficiency, (CookingQtePageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x02854E30, void, MoleMole_PlayerModule_RequestPlayerCook, (MoleMole_PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method)); +DO_APP_FUNC(0x02858180, void, MoleMole_PlayerModule_OnPlayerCookRsp, (MoleMole_PlayerModule* __this, PlayerCookRsp* rsp, MethodInfo* method)); +DO_APP_FUNC(0x033F5820, void, MoleMole_CookingQtePageContext_UpdateProficiency, (CookingQtePageContext* __this, MethodInfo* method)); DO_APP_FUNC(0x0116AA10, uint32_t, CookRecipeExcelConfig_get_maxProficiency, (CookRecipeExcelConfig* __this, MethodInfo* method)); @@ -166,48 +166,46 @@ DO_APP_FUNC(0x01AA5200, Notify, Notify_CreateNotify_1, (MoleMole_NotifyTypes__En // DO_APP_FUNC(0x020C7AA0, float, MoleMole_SafeFloat_DBDMOONJALD_1, (MoleMole_SafeFloat v, MethodInfo * method)); // DBDMOONJALD => op_Implicit -DO_APP_FUNC(0x020C7AA0, float, SafeFloat_GetValue, (SafeFloat safeFloat, MethodInfo* method)); +DO_APP_FUNC(0x020C7AA0, float, MoleMole_SafeFloat_get_Value, (SafeFloat safeFloat, MethodInfo* method)); // DO_APP_FUNC(0x020C7920, MoleMole_SafeFloat, MoleMole_SafeFloat_DBDMOONJALD, (float IGFNEICJINB, MethodInfo * method)); -DO_APP_FUNC(0x020C7920, SafeFloat, SafeFloat_SetValue, (float value, MethodInfo* method)); - -DO_APP_FUNC(0x035AC7B0, void, Entity_SetRelativePosition, (BaseEntity* __this, Vector3 position, bool forceSyncToRigidbody, MethodInfo* method)); +DO_APP_FUNC(0x020C7920, SafeFloat, MoleMole_SafeFloat_set_Value, (float value, MethodInfo* method)); //DO_APP_FUNC(0x039E2290, MoleMole_LCBaseCombat *, MoleMole_BaseEntity_GetLogicCombatComponent_1, (MoleMole_BaseEntity * __this, MethodInfo * method)); -DO_APP_FUNC(0x039E2290, LCBaseCombat*, BaseEntity_GetBaseCombat, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x039E2290, LCBaseCombat*, MoleMole_BaseEntity_GetLogicCombatComponent_1, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035CC430, String*, BaseEntity_ToStringRelease, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035AC7B0, void, BaseEntity_SetRelativePosition, (BaseEntity* __this, Vector3 position, bool forceSyncToRigidbody, MethodInfo* method)); -DO_APP_FUNC(0x035C0AA0, void, BaseEntity_SetAbsolutePosition, (BaseEntity* __this, Vector3 abpos, bool forceSyncToRigidbody, MethodInfo* method)); -DO_APP_FUNC(0x035C4B00, Vector3, BaseEntity_GetAbsolutePosition, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035C3950, Vector3, BaseEntity_GetRelativePosition, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035B1EF0, Vector3, BaseEntity_GetForward, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035D4BA0, Vector3, BaseEntity_GetForwardFast, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035C08A0, Vector3, BaseEntity_GetRight, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035CB210, Vector3, BaseEntity_GetUp, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035D5B30, bool, BaseEntity_IsActive, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035C7A50, Rigidbody*, BaseEntity_GetRigidbody, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035CC430, String*, MoleMole_BaseEntity_ToStringRelease, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035AC7B0, void, MoleMole_BaseEntity_SetRelativePosition, (BaseEntity* __this, Vector3 position, bool forceSyncToRigidbody, MethodInfo* method)); +DO_APP_FUNC(0x035C0AA0, void, MoleMole_BaseEntity_SetAbsolutePosition, (BaseEntity* __this, Vector3 abpos, bool forceSyncToRigidbody, MethodInfo* method)); +DO_APP_FUNC(0x035C4B00, Vector3, MoleMole_BaseEntity_GetAbsolutePosition, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035BE810, Vector3, MoleMole_BaseEntity_GetRelativePosition, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035B1EF0, Vector3, MoleMole_BaseEntity_GetForward, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035D4BA0, Vector3, MoleMole_BaseEntity_GetForwardFast, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035C08A0, Vector3, MoleMole_BaseEntity_GetRight, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035CB210, Vector3, MoleMole_BaseEntity_GetUp, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035D5B30, bool, MoleMole_BaseEntity_IsActive, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035C7A50, Rigidbody*, MoleMole_BaseEntity_GetRigidbody, (BaseEntity* __this, MethodInfo* method)); //DO_APP_FUNC(0x039E22C0, MoleMole_VCBaseMove_1 *, MoleMole_BaseEntity_GetMoveComponent_1, (MoleMole_BaseEntity * __this, MethodInfo * method)); -DO_APP_FUNC(0x039E22C0, VCBaseMove*, BaseEntity_GetMoveComponent_1, (BaseEntity* __this, MethodInfo* method)); // double check +DO_APP_FUNC(0x039E22C0, VCBaseMove*, MoleMole_BaseEntity_GetMoveComponent_1, (BaseEntity* __this, MethodInfo* method)); // double check -DO_APP_FUNC(0x035C3850, List_1_MoleMole_BaseComponent_*, BaseEntity_GetAllLogicComponents, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x0187FDC0, GameObject*, BaseEntity_get_gameObject, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x035ACC70, GameObject*, BaseEntity_get_rootGameObject, (BaseEntity* __this, MethodInfo* method)); -DO_APP_FUNC_METHODINFO(0x096EE7D8, BaseEntity_GetMoveComponent_1__MethodInfo); +DO_APP_FUNC(0x035C3850, List_1_MoleMole_BaseComponent_*, MoleMole_BaseEntity_GetAllLogicComponents, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x0187FDC0, GameObject*, MoleMole_BaseEntity_get_gameObject, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x035ACC70, GameObject*, MoleMole_BaseEntity_get_rootGameObject, (BaseEntity* __this, MethodInfo* method)); +DO_APP_FUNC_METHODINFO(0x096EE7D8, MoleMole_BaseEntity_GetMoveComponent_1__MethodInfo); //DO_APP_FUNC_METHODINFO(0x096EF950, MoleMole_BaseEntity_GetLogicCombatComponent_1__MethodInfo); // double check -DO_APP_FUNC_METHODINFO(0x096EF950, BaseEntity_GetBaseCombat__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EF950, MoleMole_BaseEntity_GetLogicCombatComponent_1__MethodInfo); // check comparison from 2.2 & 2.6 // function type & name is wrong // DO_APP_FUNC(0, MoleMole_AvatarEntity *, MoleMole_EntityManager_GetLocalAvatarEntity, (MoleMole_EntityManager * __this, MethodInfo * method)); -DO_APP_FUNC(0x01BF68A0, BaseEntity*, EntityManager_GetCurrentAvatar, (EntityManager* __this, MethodInfo* method)); +DO_APP_FUNC(0x01BF68A0, BaseEntity*, MoleMole_EntityManager_GetLocalAvatarEntity, (MoleMole_EntityManager* __this, MethodInfo* method)); -DO_APP_FUNC(0x01BF4E50, CameraEntity*, EntityManager_GetMainCameraEntity, (EntityManager* __this, MethodInfo* method)); -DO_APP_FUNC(0x01BEB030, BaseEntity*, EntityManager_GetValidEntity, (EntityManager* __this, uint32_t runtimeID, MethodInfo* method)); -DO_APP_FUNC(0x01C02920, bool, EntityManager_RemoveEntity, (EntityManager* __this, BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method)); -DO_APP_FUNC(0x01C02800, bool, EntityManager_IsCachedEntity, (EntityManager* __this, BaseEntity* entity, MethodInfo* method)); -DO_APP_FUNC(0x01BF01F0, List_1_MoleMole_BaseEntity_*, EntityManager_GetEntities, (EntityManager* __this, MethodInfo* method)); +DO_APP_FUNC(0x01BF4E50, CameraEntity*, MoleMole_EntityManager_GetMainCameraEntity, (MoleMole_EntityManager* __this, MethodInfo* method)); +DO_APP_FUNC(0x01BEB030, BaseEntity*, MoleMole_EntityManager_GetValidEntity, (MoleMole_EntityManager* __this, uint32_t runtimeID, MethodInfo* method)); +DO_APP_FUNC(0x01BF2D60, bool, MoleMole_EntityManager_RemoveEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method)); +DO_APP_FUNC(0x01C02800, bool, MoleMole_EntityManager_IsCachedEntity, (MoleMole_EntityManager* __this, BaseEntity* entity, MethodInfo* method)); +DO_APP_FUNC(0x01BF01F0, List_1_MoleMole_BaseEntity_*, MoleMole_EntityManager_GetEntities, (MoleMole_EntityManager* __this, MethodInfo* method)); // check comparison with 2.6 // function name changed to: @@ -215,29 +213,29 @@ DO_APP_FUNC(0x01BF01F0, List_1_MoleMole_BaseEntity_*, EntityManager_GetEntities, DO_APP_FUNC(0x044B8970, Bounds, Utils_4_GetBounds, (GameObject* go, MethodInfo* method)); // Modify | RyujinZX#6666 -DO_APP_FUNC(0x00C6C780, void, HumanoidMoveFSM_LateTick, (HumanoidMoveFSM* __this, float deltaTime, MethodInfo* method)); +DO_APP_FUNC(0x00C6C780, void, MoleMole_HumanoidMoveFSM_LateTick, (HumanoidMoveFSM* __this, float deltaTime, MethodInfo* method)); -DO_APP_FUNC(0x01DD2070, bool, ScenePropManager_GetTreeTypeByPattern, (ScenePropManager* __this, String* pattern, MoleMole_Config_TreeType__Enum* treeType, MethodInfo* method)); +DO_APP_FUNC(0x01DD2070, bool, MoleMole_ScenePropManager_GetTreeTypeByPattern, (MoleMole_ScenePropManager* __this, String* pattern, MoleMole_Config_TreeType__Enum* treeType, MethodInfo* method)); -DO_APP_FUNC(0x00C3F160, void, NetworkManager_1_RequestHitTreeDropNotify, (NetworkManager_1* __this, Vector3 position, Vector3 hitPostion, MoleMole_Config_TreeType__Enum treeType, MethodInfo* method)); -DO_APP_FUNC(0x0291FEF0, uint64_t, TimeUtil_get_NowTimeStamp, (MethodInfo* method)); +DO_APP_FUNC(0x00C3F160, void, MoleMole_NetworkManager_RequestHitTreeDropNotify, (MoleMole_NetworkManager* __this, Vector3 position, Vector3 hitPostion, MoleMole_Config_TreeType__Enum treeType, MethodInfo* method)); +DO_APP_FUNC(0x0291FEF0, uint64_t, MoleMole_TimeUtil_get_NowTimeStamp, (MethodInfo* method)); -DO_APP_FUNC(0x01F5BA10, bool, LoadingManager_IsLoaded, (LoadingManager* __this, MethodInfo* method)); +DO_APP_FUNC(0x01F5BA10, bool, MoleMole_LoadingManager_IsLoaded, (MoleMole_LoadingManager* __this, MethodInfo* method)); // Thanks to | RyujinZX -DO_APP_FUNC(0x01337F70, void, LCAbilityElement_ReduceModifierDurability, (LCAbilityElement* __this, int32_t modifierDurabilityIndex, float reduceDurability, Nullable_1_Single_ deltaTime, MethodInfo* method)); +DO_APP_FUNC(0x01337F70, void, MoleMole_LCAbilityElement_ReduceModifierDurability, (LCAbilityElement* __this, int32_t modifierDurabilityIndex, float reduceDurability, Nullable_1_Single_ deltaTime, MethodInfo* method)); -DO_APP_FUNC(0x01FF2880, BaseEntity*, GadgetEntity_GetOwnerEntity, (GadgetEntity* __this, MethodInfo* method)); +DO_APP_FUNC(0x01FF2880, BaseEntity*, MoleMole_GadgetEntity_GetOwnerEntity, (GadgetEntity* __this, MethodInfo* method)); -DO_APP_FUNC(0x02E826A0, void, InLevelMapPageContext_ZoomMap, (InLevelMapPageContext* __this, float value, MethodInfo* method)); -DO_APP_FUNC(0x02EC7730, void, InLevelMapPageContext_UpdateView, (InLevelMapPageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x02E826A0, void, MoleMole_InLevelMapPageContext_ZoomMap, (InLevelMapPageContext* __this, float value, MethodInfo* method)); +DO_APP_FUNC(0x02EC7730, void, MoleMole_InLevelMapPageContext_UpdateView, (InLevelMapPageContext* __this, MethodInfo* method)); -DO_APP_FUNC(0x01A36960, bool, UIManager_HasEnableMapCamera, (UIManager* __this, MethodInfo* method)); +DO_APP_FUNC(0x01A36960, bool, MoleMole_UIManager_HasEnableMapCamera, (MoleMole_UIManager* __this, MethodInfo* method)); DO_APP_FUNC(0x00E8E700, void, MonoMiniMap_Update, (MonoMiniMap* __this, MethodInfo* method)); DO_APP_FUNC(0x0635A470, MonoMiniMap*, MonoInLevelMainPage_get_miniMap, (void* __this, MethodInfo* method)); -DO_APP_FUNC(0x024A3570, void, GadgetModule_OnGadgetInteractRsp, (void* __this, GadgetInteractRsp* notify, MethodInfo* method)); -DO_APP_FUNC(0x00A8D650, float, InLevelMainPageContext_get_miniMapScale, (InLevelMainPageContext* __this, MethodInfo* method)); +DO_APP_FUNC(0x024A3570, void, MoleMole_GadgetModule_OnGadgetInteractRsp, (void* __this, GadgetInteractRsp* notify, MethodInfo* method)); +DO_APP_FUNC(0x00A8D650, float, MoleMole_InLevelMainPageContext_get_miniMapScale, (InLevelMainPageContext* __this, MethodInfo* method)); // UnityEngine @@ -282,16 +280,15 @@ DO_APP_FUNC(0x06677BD0, float, Canvas_get_scaleFactor, (/*Canvas**/void* __this, // Singletons DO_APP_FUNC(0x05189A90, void*, Singleton_GetInstance, (void* __this, MethodInfo* method)); -DO_APP_FUNC_METHODINFO(0x096EE180, Singleton_1_MapModule__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EE1C0, Singleton_1_LoadingManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EA380, Singleton_1_EntityManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EE180, Singleton_1_MoleMole_MapModule__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EE1C0, Singleton_1_MoleMole_LoadingManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EA380, Singleton_1_MoleMole_EntityManager__get_Instance__MethodInfo); DO_APP_FUNC_METHODINFO(0x096EB1E8, Singleton_1_InteractionManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096FAE70, Singleton_1_MessageInfo__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EA278, Singleton_1_UIManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096ED720, Singleton_1_ItemModule__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EB530, Singleton_1_EventManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EA298, Singleton_1_PlayerModule__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EA4F8, Singleton_1_MapManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096ECB80, Singleton_1_ScenePropManager__get_Instance__MethodInfo); -DO_APP_FUNC_METHODINFO(0x096EA9A8, Singleton_1_NetworkManager_1__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EA278, Singleton_1_MoleMole_UIManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096ED720, Singleton_1_MoleMole_ItemModule__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EB530, Singleton_1_MoleMole_EventManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EA298, Singleton_1_MoleMole_PlayerModule__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EA4F8, Singleton_1_MoleMole_MapManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096ECB80, Singleton_1_MoleMole_ScenePropManager__get_Instance__MethodInfo); +DO_APP_FUNC_METHODINFO(0x096EA9A8, Singleton_1_MoleMole_NetworkManager__get_Instance__MethodInfo); diff --git a/cheat-library/src/appdata/il2cpp-types-ptr.h b/cheat-library/src/appdata/il2cpp-types-ptr.h index 3c94ad9..daa0cd0 100644 --- a/cheat-library/src/appdata/il2cpp-types-ptr.h +++ b/cheat-library/src/appdata/il2cpp-types-ptr.h @@ -14,14 +14,14 @@ DO_TYPEDEF(0x097EEDB0, LCChestPlugin); DO_TYPEDEF(0x097EE938, SceneTreeObject); // v 2.6 -DO_SINGLETONEDEF(0x0B3442D8, Singleton_1_MapModule_); -DO_SINGLETONEDEF(0x0B308870, Singleton_1_EntityManager_); -DO_SINGLETONEDEF(0x0B316A68, Singleton_1_LoadingManager_); +DO_SINGLETONEDEF(0x0B3442D8, Singleton_1_MoleMole_MapModule_); +DO_SINGLETONEDEF(0x0B308870, Singleton_1_MoleMole_EntityManager_); +DO_SINGLETONEDEF(0x0B316A68, Singleton_1_MoleMole_LoadingManager_); DO_SINGLETONEDEF(0x0B30BD10, Singleton_1_InteractionManager_); -DO_SINGLETONEDEF(0x0B2F8038, Singleton_1_UIManager_); -DO_SINGLETONEDEF(0x0B291838, Singleton_1_ItemModule_); -DO_SINGLETONEDEF(0x0B309120, Singleton_1_EventManager_); -DO_SINGLETONEDEF(0x0B326FF8, Singleton_1_PlayerModule_); -DO_SINGLETONEDEF(0x0B2F2A38, Singleton_1_MapManager_); -DO_SINGLETONEDEF(0x0B399890, Singleton_1_NetworkManager_1_); -DO_SINGLETONEDEF(0x0B2227B8, Singleton_1_ScenePropManager_); \ No newline at end of file +DO_SINGLETONEDEF(0x0B2F8038, Singleton_1_MoleMole_UIManager_); +DO_SINGLETONEDEF(0x0B291838, Singleton_1_MoleMole_ItemModule_); +DO_SINGLETONEDEF(0x0B309120, Singleton_1_MoleMole_EventManager_); +DO_SINGLETONEDEF(0x0B326FF8, Singleton_1_MoleMole_PlayerModule_); +DO_SINGLETONEDEF(0x0B2F2A38, Singleton_1_MoleMole_MapManager_); +DO_SINGLETONEDEF(0x0B399890, Singleton_1_MoleMole_NetworkManager_); +DO_SINGLETONEDEF(0x0B2227B8, Singleton_1_MoleMole_ScenePropManager_); \ No newline at end of file diff --git a/cheat-library/src/appdata/il2cpp-types.h b/cheat-library/src/appdata/il2cpp-types.h index 82f1884..e6acd83 100644 --- a/cheat-library/src/appdata/il2cpp-types.h +++ b/cheat-library/src/appdata/il2cpp-types.h @@ -1,5 +1,6 @@ + // Generated C++ file by Il2CppInspector - http://www.djkaty.com - https://github.com/djkaty -// Target Unity version: 2017.4.15 - 2017.4.40 +// Target Unity version: 2019.4.21 - 2019.4.24 #if defined(_GHIDRA_) || defined(_IDA_) typedef unsigned __int8 uint8_t; @@ -26,10 +27,6 @@ typedef size_t uintptr_t; // * IL2CPP internal types // ****************************************************************************** -typedef uint32_t Il2CppMethodSlot; -const uint32_t kInvalidIl2CppMethodSlot = 65535; -const int ipv6AddressSize = 16; -typedef int32_t il2cpp_hresult_t; typedef struct Il2CppClass Il2CppClass; typedef struct Il2CppType Il2CppType; typedef struct EventInfo EventInfo; @@ -49,7 +46,9 @@ typedef struct Il2CppReflectionType Il2CppReflectionType; typedef struct Il2CppString Il2CppString; typedef struct Il2CppThread Il2CppThread; typedef struct Il2CppAsyncResult Il2CppAsyncResult; -typedef enum Il2CppProfileFlags +typedef struct Il2CppManagedMemorySnapshot Il2CppManagedMemorySnapshot; +typedef struct Il2CppCustomAttrInfo Il2CppCustomAttrInfo; +typedef enum { IL2CPP_PROFILE_NONE = 0, IL2CPP_PROFILE_APPDOMAIN_EVENTS = 1 << 0, @@ -74,12 +73,12 @@ typedef enum Il2CppProfileFlags IL2CPP_PROFILE_GC_MOVES = 1 << 19, IL2CPP_PROFILE_FILEIO = 1 << 20 } Il2CppProfileFlags; -typedef enum Il2CppProfileFileIOKind +typedef enum { IL2CPP_PROFILE_FILEIO_WRITE = 0, IL2CPP_PROFILE_FILEIO_READ } Il2CppProfileFileIOKind; -typedef enum Il2CppGCEvent +typedef enum { IL2CPP_GC_EVENT_START, IL2CPP_GC_EVENT_MARK_START, @@ -92,7 +91,7 @@ typedef enum Il2CppGCEvent IL2CPP_GC_EVENT_PRE_START_WORLD, IL2CPP_GC_EVENT_POST_START_WORLD } Il2CppGCEvent; -typedef enum Il2CppStat +typedef enum { IL2CPP_STAT_NEW_OBJECT_COUNT, IL2CPP_STAT_INITIALIZED_CLASS_COUNT, @@ -103,47 +102,70 @@ typedef enum Il2CppStat IL2CPP_STAT_INFLATED_METHOD_COUNT, IL2CPP_STAT_INFLATED_TYPE_COUNT, } Il2CppStat; -typedef enum Il2CppRuntimeUnhandledExceptionPolicy +typedef enum { IL2CPP_UNHANDLED_POLICY_LEGACY, IL2CPP_UNHANDLED_POLICY_CURRENT } Il2CppRuntimeUnhandledExceptionPolicy; typedef struct Il2CppStackFrameInfo { - const MethodInfo* method; + const MethodInfo *method; } Il2CppStackFrameInfo; +typedef void(*Il2CppMethodPointer)(); +typedef struct Il2CppMethodDebugInfo +{ + Il2CppMethodPointer methodPointer; + int32_t code_size; + const char *file; +} Il2CppMethodDebugInfo; typedef struct { void* (*malloc_func)(size_t size); void* (*aligned_malloc_func)(size_t size, size_t alignment); - void (*free_func)(void* ptr); - void (*aligned_free_func)(void* ptr); + void (*free_func)(void *ptr); + void (*aligned_free_func)(void *ptr); void* (*calloc_func)(size_t nmemb, size_t size); - void* (*realloc_func)(void* ptr, size_t size); - void* (*aligned_realloc_func)(void* ptr, size_t size, size_t alignment); + void* (*realloc_func)(void *ptr, size_t size); + void* (*aligned_realloc_func)(void *ptr, size_t size, size_t alignment); } Il2CppMemoryCallbacks; +typedef struct +{ + const char *name; + void(*connect)(const char *address); + int(*wait_for_attach)(void); + void(*close1)(void); + void(*close2)(void); + int(*send)(void *buf, int len); + int(*recv)(void *buf, int len); +} Il2CppDebuggerTransport; typedef uint16_t Il2CppChar; typedef char Il2CppNativeChar; typedef void (*il2cpp_register_object_callback)(Il2CppObject** arr, int size, void* userdata); typedef void (*il2cpp_WorldChangedCallback)(); -typedef void (*Il2CppFrameWalkFunc) (const Il2CppStackFrameInfo* info, void* user_data); +typedef void (*Il2CppFrameWalkFunc) (const Il2CppStackFrameInfo *info, void *user_data); typedef void (*Il2CppProfileFunc) (Il2CppProfiler* prof); -typedef void (*Il2CppProfileMethodFunc) (Il2CppProfiler* prof, const MethodInfo* method); -typedef void (*Il2CppProfileAllocFunc) (Il2CppProfiler* prof, Il2CppObject* obj, Il2CppClass* klass); +typedef void (*Il2CppProfileMethodFunc) (Il2CppProfiler* prof, const MethodInfo *method); +typedef void (*Il2CppProfileAllocFunc) (Il2CppProfiler* prof, Il2CppObject *obj, Il2CppClass *klass); typedef void (*Il2CppProfileGCFunc) (Il2CppProfiler* prof, Il2CppGCEvent event, int generation); typedef void (*Il2CppProfileGCResizeFunc) (Il2CppProfiler* prof, int64_t new_size); typedef void (*Il2CppProfileFileIOFunc) (Il2CppProfiler* prof, Il2CppProfileFileIOKind kind, int count); +typedef void (*Il2CppProfileThreadFunc) (Il2CppProfiler *prof, unsigned long tid); typedef const Il2CppNativeChar* (*Il2CppSetFindPlugInCallback)(const Il2CppNativeChar*); typedef void (*Il2CppLogCallback)(const char*); +typedef size_t(*Il2CppBacktraceFunc) (Il2CppMethodPointer* buffer, size_t maxSize); typedef struct Il2CppManagedMemorySnapshot Il2CppManagedMemorySnapshot; -typedef void (*Il2CppMethodPointer)(); typedef uintptr_t il2cpp_array_size_t; +typedef void ( *SynchronizationContextCallback)(intptr_t arg); +typedef uint32_t Il2CppMethodSlot; +static const uint32_t kInvalidIl2CppMethodSlot = 65535; +static const int ipv6AddressSize = 16; +typedef int32_t il2cpp_hresult_t; typedef struct Il2CppMetadataField { uint32_t offset; uint32_t typeIndex; const char* name; - bool isStatic; + uint8_t isStatic; } Il2CppMetadataField; typedef enum Il2CppMetadataTypeFlags { @@ -257,6 +279,31 @@ typedef enum Il2CppTypeEnum IL2CPP_TYPE_PINNED = 0x45, IL2CPP_TYPE_ENUM = 0x55 } Il2CppTypeEnum; +typedef enum +{ + IL2CPP_TOKEN_MODULE = 0x00000000, + IL2CPP_TOKEN_TYPE_REF = 0x01000000, + IL2CPP_TOKEN_TYPE_DEF = 0x02000000, + IL2CPP_TOKEN_FIELD_DEF = 0x04000000, + IL2CPP_TOKEN_METHOD_DEF = 0x06000000, + IL2CPP_TOKEN_PARAM_DEF = 0x08000000, + IL2CPP_TOKEN_INTERFACE_IMPL = 0x09000000, + IL2CPP_TOKEN_MEMBER_REF = 0x0a000000, + IL2CPP_TOKEN_CUSTOM_ATTRIBUTE = 0x0c000000, + IL2CPP_TOKEN_PERMISSION = 0x0e000000, + IL2CPP_TOKEN_SIGNATURE = 0x11000000, + IL2CPP_TOKEN_EVENT = 0x14000000, + IL2CPP_TOKEN_PROPERTY = 0x17000000, + IL2CPP_TOKEN_MODULE_REF = 0x1a000000, + IL2CPP_TOKEN_TYPE_SPEC = 0x1b000000, + IL2CPP_TOKEN_ASSEMBLY = 0x20000000, + IL2CPP_TOKEN_ASSEMBLY_REF = 0x23000000, + IL2CPP_TOKEN_FILE = 0x26000000, + IL2CPP_TOKEN_EXPORTED_TYPE = 0x27000000, + IL2CPP_TOKEN_MANIFEST_RESOURCE = 0x28000000, + IL2CPP_TOKEN_GENERIC_PARAM = 0x2a000000, + IL2CPP_TOKEN_METHOD_SPEC = 0x2b000000, +} Il2CppTokenType; typedef int32_t TypeIndex; typedef int32_t TypeDefinitionIndex; typedef int32_t FieldIndex; @@ -282,18 +329,19 @@ typedef int32_t GenericInstIndex; typedef int32_t ImageIndex; typedef int32_t AssemblyIndex; typedef int32_t InteropDataIndex; -const TypeIndex kTypeIndexInvalid = -1; -const TypeDefinitionIndex kTypeDefinitionIndexInvalid = -1; -const DefaultValueDataIndex kDefaultValueIndexNull = -1; -const EventIndex kEventIndexInvalid = -1; -const FieldIndex kFieldIndexInvalid = -1; -const MethodIndex kMethodIndexInvalid = -1; -const PropertyIndex kPropertyIndexInvalid = -1; -const GenericContainerIndex kGenericContainerIndexInvalid = -1; -const GenericParameterIndex kGenericParameterIndexInvalid = -1; -const RGCTXIndex kRGCTXIndexInvalid = -1; -const StringLiteralIndex kStringLiteralIndexInvalid = -1; -const InteropDataIndex kInteropDataIndexInvalid = -1; +static const TypeIndex kTypeIndexInvalid = -1; +static const TypeDefinitionIndex kTypeDefinitionIndexInvalid = -1; +static const DefaultValueDataIndex kDefaultValueIndexNull = -1; +static const CustomAttributeIndex kCustomAttributeIndexInvalid = -1; +static const EventIndex kEventIndexInvalid = -1; +static const FieldIndex kFieldIndexInvalid = -1; +static const MethodIndex kMethodIndexInvalid = -1; +static const PropertyIndex kPropertyIndexInvalid = -1; +static const GenericContainerIndex kGenericContainerIndexInvalid = -1; +static const GenericParameterIndex kGenericParameterIndexInvalid = -1; +static const RGCTXIndex kRGCTXIndexInvalid = -1; +static const StringLiteralIndex kStringLiteralIndexInvalid = -1; +static const InteropDataIndex kInteropDataIndexInvalid = -1; typedef uint32_t EncodedMethodIndex; typedef enum Il2CppMetadataUsage { @@ -305,14 +353,6 @@ typedef enum Il2CppMetadataUsage kIl2CppMetadataUsageStringLiteral, kIl2CppMetadataUsageMethodRef, } Il2CppMetadataUsage; -static inline Il2CppMetadataUsage GetEncodedIndexType(EncodedMethodIndex index) -{ - return (Il2CppMetadataUsage)((index & 0xE0000000) >> 29); -} -static inline uint32_t GetDecodedMethodIndex(EncodedMethodIndex index) -{ - return index & 0x1FFFFFFFU; -} typedef struct Il2CppImage Il2CppImage; typedef struct Il2CppType Il2CppType; typedef struct Il2CppTypeDefinitionMetadata Il2CppTypeDefinitionMetadata; @@ -344,14 +384,11 @@ typedef struct Il2CppTypeDefinition { StringIndex nameIndex; StringIndex namespaceIndex; - CustomAttributeIndex customAttributeIndex; TypeIndex byvalTypeIndex; TypeIndex byrefTypeIndex; TypeIndex declaringTypeIndex; TypeIndex parentIndex; TypeIndex elementTypeIndex; - RGCTXIndex rgctxStartIndex; - int32_t rgctxCount; GenericContainerIndex genericContainerIndex; uint32_t flags; FieldIndex fieldStart; @@ -377,7 +414,6 @@ typedef struct Il2CppFieldDefinition { StringIndex nameIndex; TypeIndex typeIndex; - CustomAttributeIndex customAttributeIndex; uint32_t token; } Il2CppFieldDefinition; typedef struct Il2CppFieldDefaultValue @@ -401,7 +437,6 @@ typedef struct Il2CppParameterDefinition { StringIndex nameIndex; uint32_t token; - CustomAttributeIndex customAttributeIndex; TypeIndex typeIndex; } Il2CppParameterDefinition; typedef struct Il2CppParameterDefaultValue @@ -416,13 +451,7 @@ typedef struct Il2CppMethodDefinition TypeDefinitionIndex declaringType; TypeIndex returnType; ParameterIndex parameterStart; - CustomAttributeIndex customAttributeIndex; GenericContainerIndex genericContainerIndex; - MethodIndex methodIndex; - MethodIndex invokerIndex; - MethodIndex reversePInvokeWrapperIndex; - RGCTXIndex rgctxStartIndex; - int32_t rgctxCount; uint32_t token; uint16_t flags; uint16_t iflags; @@ -436,7 +465,6 @@ typedef struct Il2CppEventDefinition MethodIndex add; MethodIndex remove; MethodIndex raise; - CustomAttributeIndex customAttributeIndex; uint32_t token; } Il2CppEventDefinition; typedef struct Il2CppPropertyDefinition @@ -445,7 +473,6 @@ typedef struct Il2CppPropertyDefinition MethodIndex get; MethodIndex set; uint32_t attrs; - CustomAttributeIndex customAttributeIndex; uint32_t token; } Il2CppPropertyDefinition; typedef struct Il2CppMethodSpec @@ -459,22 +486,22 @@ typedef struct Il2CppStringLiteral uint32_t length; StringLiteralIndex dataIndex; } Il2CppStringLiteral; -typedef struct Il2CppGenericMethodIndices +typedef struct { MethodIndex methodIndex; MethodIndex invokerIndex; + MethodIndex adjustorThunkIndex; } Il2CppGenericMethodIndices; typedef struct Il2CppGenericMethodFunctionsDefinitions { GenericMethodIndex genericMethodIndex; Il2CppGenericMethodIndices indices; } Il2CppGenericMethodFunctionsDefinitions; -const int kPublicKeyByteLength = 8; -typedef struct Il2CppAssemblyName +static const int kPublicKeyByteLength = 8; +typedef struct Il2CppAssemblyNameDefinition { StringIndex nameIndex; StringIndex cultureIndex; - StringIndex hashValueIndex; StringIndex publicKeyIndex; uint32_t hash_alg; int32_t hash_len; @@ -483,8 +510,8 @@ typedef struct Il2CppAssemblyName int32_t minor; int32_t build; int32_t revision; - uint8_t publicKeyToken[8]; -} Il2CppAssemblyName; + uint8_t public_key_token[8]; +} Il2CppAssemblyNameDefinition; typedef struct Il2CppImageDefinition { StringIndex nameIndex; @@ -495,15 +522,17 @@ typedef struct Il2CppImageDefinition uint32_t exportedTypeCount; MethodIndex entryPointIndex; uint32_t token; + CustomAttributeIndex customAttributeStart; + uint32_t customAttributeCount; } Il2CppImageDefinition; -typedef struct Il2CppAssembly +typedef struct Il2CppAssemblyDefinition { ImageIndex imageIndex; - CustomAttributeIndex customAttributeIndex; + uint32_t token; int32_t referencedAssemblyStart; int32_t referencedAssemblyCount; - Il2CppAssemblyName aname; -} Il2CppAssembly; + Il2CppAssemblyNameDefinition aname; +} Il2CppAssemblyDefinition; typedef struct Il2CppMetadataUsageList { uint32_t start; @@ -516,6 +545,7 @@ typedef struct Il2CppMetadataUsagePair } Il2CppMetadataUsagePair; typedef struct Il2CppCustomAttributeTypeRange { + uint32_t token; int32_t start; int32_t count; } Il2CppCustomAttributeTypeRange; @@ -574,8 +604,6 @@ typedef struct Il2CppGlobalMetadataHeader int32_t interfaceOffsetsCount; int32_t typeDefinitionsOffset; int32_t typeDefinitionsCount; - int32_t rgctxEntriesOffset; - int32_t rgctxEntriesCount; int32_t imagesOffset; int32_t imagesCount; int32_t assembliesOffset; @@ -611,18 +639,18 @@ typedef struct Il2CppArrayType uint8_t rank; uint8_t numsizes; uint8_t numlobounds; - int* sizes; - int* lobounds; + int *sizes; + int *lobounds; } Il2CppArrayType; typedef struct Il2CppGenericInst { uint32_t type_argc; - const Il2CppType** type_argv; + const Il2CppType **type_argv; } Il2CppGenericInst; typedef struct Il2CppGenericContext { - const Il2CppGenericInst* class_inst; - const Il2CppGenericInst* method_inst; + const Il2CppGenericInst *class_inst; + const Il2CppGenericInst *method_inst; } Il2CppGenericContext; typedef struct Il2CppGenericParameter { @@ -644,7 +672,7 @@ typedef struct Il2CppGenericClass { TypeDefinitionIndex typeDefinitionIndex; Il2CppGenericContext context; - Il2CppClass* cached_class; + Il2CppClass *cached_class; } Il2CppGenericClass; typedef struct Il2CppGenericMethod { @@ -657,10 +685,10 @@ typedef struct Il2CppType { void* dummy; TypeDefinitionIndex klassIndex; - const Il2CppType* type; - Il2CppArrayType* array; + const Il2CppType *type; + Il2CppArrayType *array; GenericParameterIndex genericParameterIndex; - Il2CppGenericClass* generic_class; + Il2CppGenericClass *generic_class; } data; unsigned int attrs : 16; Il2CppTypeEnum type : 8; @@ -668,7 +696,7 @@ typedef struct Il2CppType unsigned int byref : 1; unsigned int pinned : 1; } Il2CppType; -typedef enum +typedef enum Il2CppCallConvention { IL2CPP_CALL_DEFAULT, IL2CPP_CALL_C, @@ -680,1389 +708,22 @@ typedef enum typedef enum Il2CppCharSet { CHARSET_ANSI, - CHARSET_UNICODE + CHARSET_UNICODE, + CHARSET_NOT_SPECIFIED } Il2CppCharSet; -typedef struct Il2CppClass Il2CppClass; -typedef struct Il2CppGuid Il2CppGuid; -typedef struct Il2CppImage Il2CppImage; -typedef struct Il2CppAssembly Il2CppAssembly; -typedef struct Il2CppAppDomain Il2CppAppDomain; -typedef struct Il2CppAppDomainSetup Il2CppAppDomainSetup; -typedef struct Il2CppDelegate Il2CppDelegate; -typedef struct Il2CppAppContext Il2CppAppContext; -typedef struct Il2CppNameToTypeDefinitionIndexHashTable Il2CppNameToTypeDefinitionIndexHashTable; -typedef struct VirtualInvokeData +typedef struct Il2CppHString__ { - Il2CppMethodPointer methodPtr; - const MethodInfo* method; -} VirtualInvokeData; -typedef enum Il2CppTypeNameFormat + int unused; +} Il2CppHString__; +typedef Il2CppHString__* Il2CppHString; +typedef struct Il2CppHStringHeader { - IL2CPP_TYPE_NAME_FORMAT_IL, - IL2CPP_TYPE_NAME_FORMAT_REFLECTION, - IL2CPP_TYPE_NAME_FORMAT_FULL_NAME, - IL2CPP_TYPE_NAME_FORMAT_ASSEMBLY_QUALIFIED -} Il2CppTypeNameFormat; -extern bool g_il2cpp_is_fully_initialized; -typedef struct -{ - Il2CppImage* corlib; - Il2CppClass* object_class; - Il2CppClass* byte_class; - Il2CppClass* void_class; - Il2CppClass* boolean_class; - Il2CppClass* sbyte_class; - Il2CppClass* int16_class; - Il2CppClass* uint16_class; - Il2CppClass* int32_class; - Il2CppClass* uint32_class; - Il2CppClass* int_class; - Il2CppClass* uint_class; - Il2CppClass* int64_class; - Il2CppClass* uint64_class; - Il2CppClass* single_class; - Il2CppClass* double_class; - Il2CppClass* char_class; - Il2CppClass* string_class; - Il2CppClass* enum_class; - Il2CppClass* array_class; - Il2CppClass* delegate_class; - Il2CppClass* multicastdelegate_class; - Il2CppClass* asyncresult_class; - Il2CppClass* manualresetevent_class; - Il2CppClass* typehandle_class; - Il2CppClass* fieldhandle_class; - Il2CppClass* methodhandle_class; - Il2CppClass* systemtype_class; - Il2CppClass* monotype_class; - Il2CppClass* exception_class; - Il2CppClass* threadabortexception_class; - Il2CppClass* thread_class; - Il2CppClass* internal_thread_class; - Il2CppClass* appdomain_class; - Il2CppClass* appdomain_setup_class; - Il2CppClass* field_info_class; - Il2CppClass* method_info_class; - Il2CppClass* property_info_class; - Il2CppClass* event_info_class; - Il2CppClass* mono_event_info_class; - Il2CppClass* stringbuilder_class; - Il2CppClass* stack_frame_class; - Il2CppClass* stack_trace_class; - Il2CppClass* marshal_class; - Il2CppClass* typed_reference_class; - Il2CppClass* marshalbyrefobject_class; - Il2CppClass* generic_ilist_class; - Il2CppClass* generic_icollection_class; - Il2CppClass* generic_ienumerable_class; - Il2CppClass* generic_ireadonlylist_class; - Il2CppClass* generic_ireadonlycollection_class; - Il2CppClass* runtimetype_class; - Il2CppClass* generic_nullable_class; - Il2CppClass* il2cpp_com_object_class; - Il2CppClass* customattribute_data_class; - Il2CppClass* version; - Il2CppClass* culture_info; - Il2CppClass* async_call_class; - Il2CppClass* assembly_class; - Il2CppClass* mono_assembly_class; - Il2CppClass* assembly_name_class; - Il2CppClass* mono_field_class; - Il2CppClass* mono_method_class; - Il2CppClass* mono_method_info_class; - Il2CppClass* mono_property_info_class; - Il2CppClass* parameter_info_class; - Il2CppClass* mono_parameter_info_class; - Il2CppClass* module_class; - Il2CppClass* pointer_class; - Il2CppClass* system_exception_class; - Il2CppClass* argument_exception_class; - Il2CppClass* wait_handle_class; - Il2CppClass* safe_handle_class; - Il2CppClass* sort_key_class; - Il2CppClass* dbnull_class; - Il2CppClass* error_wrapper_class; - Il2CppClass* missing_class; - Il2CppClass* value_type_class; - Il2CppClass* threadpool_wait_callback_class; - MethodInfo* threadpool_perform_wait_callback_method; - Il2CppClass* mono_method_message_class; - Il2CppClass* ireference_class; - Il2CppClass* ikey_value_pair_class; - Il2CppClass* key_value_pair_class; - Il2CppClass* windows_foundation_uri_class; - Il2CppClass* windows_foundation_iuri_runtime_class_class; - Il2CppClass* system_uri_class; -} Il2CppDefaults; -extern Il2CppDefaults il2cpp_defaults; -typedef struct Il2CppClass Il2CppClass; -typedef struct MethodInfo MethodInfo; -typedef struct FieldInfo FieldInfo; -typedef struct Il2CppObject Il2CppObject; -typedef struct MemberInfo MemberInfo; -typedef struct CustomAttributesCache -{ - int count; - Il2CppObject** attributes; -} CustomAttributesCache; -typedef struct CustomAttributeTypeCache -{ - int count; - Il2CppClass** attributeTypes; -} CustomAttributeTypeCache; -typedef void (*CustomAttributesCacheGenerator)(CustomAttributesCache*); -const int THREAD_STATIC_FIELD_OFFSET = -1; -typedef struct FieldInfo -{ - const char* name; - const Il2CppType* type; - Il2CppClass* parent; - int32_t offset; - CustomAttributeIndex customAttributeIndex; - uint32_t token; -} FieldInfo; -typedef struct PropertyInfo -{ - Il2CppClass* parent; - const char* name; - const MethodInfo* get; - const MethodInfo* set; - uint32_t attrs; - CustomAttributeIndex customAttributeIndex; - uint32_t token; -} PropertyInfo; -typedef struct EventInfo -{ - const char* name; - const Il2CppType* eventType; - Il2CppClass* parent; - const MethodInfo* add; - const MethodInfo* remove; - const MethodInfo* raise; - CustomAttributeIndex customAttributeIndex; - uint32_t token; -} EventInfo; -typedef struct ParameterInfo -{ - const char* name; - int32_t position; - uint32_t token; - CustomAttributeIndex customAttributeIndex; - const Il2CppType* parameter_type; -} ParameterInfo; -typedef void* (*InvokerMethod)(Il2CppMethodPointer, const MethodInfo*, void*, void**); -typedef enum MethodVariableKind -{ - kMethodVariableKind_This, - kMethodVariableKind_Parameter, - kMethodVariableKind_LocalVariable -} MethodVariableKind; -typedef enum SequencePointKind -{ - kSequencePointKind_Normal, - kSequencePointKind_StepOut -} SequencePointKind; -typedef struct Il2CppMethodExecutionContextInfo -{ - TypeIndex typeIndex; - int32_t nameIndex; - int32_t scopeIndex; -} Il2CppMethodExecutionContextInfo; -typedef struct Il2CppMethodExecutionContextInfoIndex -{ - int32_t startIndex; - int32_t count; -} Il2CppMethodExecutionContextInfoIndex; -typedef struct Il2CppMethodScope -{ - int32_t startOffset; - int32_t endOffset; -} Il2CppMethodScope; -typedef struct Il2CppMethodHeaderInfo -{ - int32_t code_size; - int32_t startScope; - int32_t numScopes; -} Il2CppMethodHeaderInfo; -typedef struct Il2CppSequencePointSourceFile -{ - const char* file; - uint8_t hash[16]; -} Il2CppSequencePointSourceFile; -typedef struct Il2CppTypeSourceFilePair -{ - TypeDefinitionIndex klassIndex; - int32_t sourceFileIndex; -} Il2CppTypeSourceFilePair; -typedef struct Il2CppSequencePoint -{ - MethodIndex methodDefinitionIndex; - int32_t sourceFileIndex; - int32_t lineStart, lineEnd; - int32_t columnStart, columnEnd; - int32_t ilOffset; - SequencePointKind kind; - int32_t isActive; - int32_t id; -} Il2CppSequencePoint; -typedef struct Il2CppCatchPoint -{ - MethodIndex methodDefinitionIndex; - TypeIndex catchTypeIndex; - int32_t ilOffset; - int32_t tryId; - int32_t parentTryId; -} Il2CppCatchPoint; -typedef struct Il2CppDebuggerMetadataRegistration -{ - Il2CppMethodExecutionContextInfo* methodExecutionContextInfos; - Il2CppMethodExecutionContextInfoIndex* methodExecutionContextInfoIndexes; - Il2CppMethodScope* methodScopes; - Il2CppMethodHeaderInfo* methodHeaderInfos; - Il2CppSequencePointSourceFile* sequencePointSourceFiles; - int32_t numSequencePoints; - Il2CppSequencePoint* sequencePoints; - int32_t numCatchPoints; - Il2CppCatchPoint* catchPoints; - int32_t numTypeSourceFileEntries; - Il2CppTypeSourceFilePair* typeSourceFiles; - const char** methodExecutionContextInfoStrings; -} Il2CppDebuggerMetadataRegistration; -typedef union Il2CppRGCTXData -{ - void* rgctxDataDummy; - const MethodInfo* method; - const Il2CppType* type; - Il2CppClass* klass; -} Il2CppRGCTXData; -typedef struct MethodInfo -{ - Il2CppMethodPointer methodPointer; - InvokerMethod invoker_method; - const char* name; - Il2CppClass* declaring_type; - const Il2CppType* return_type; - const ParameterInfo* parameters; union { - const Il2CppRGCTXData* rgctx_data; - const Il2CppMethodDefinition* methodDefinition; - }; - union - { - const Il2CppGenericMethod* genericMethod; - const Il2CppGenericContainer* genericContainer; - }; - CustomAttributeIndex customAttributeIndex; - uint32_t token; - uint16_t flags; - uint16_t iflags; - uint16_t slot; - uint8_t parameters_count; - uint8_t is_generic : 1; - uint8_t is_inflated : 1; -} MethodInfo; -typedef struct Il2CppRuntimeInterfaceOffsetPair -{ - Il2CppClass* interfaceType; - int32_t offset; -} Il2CppRuntimeInterfaceOffsetPair; -typedef void (*PInvokeMarshalToNativeFunc)(void* managedStructure, void* marshaledStructure); -typedef void (*PInvokeMarshalFromNativeFunc)(void* marshaledStructure, void* managedStructure); -typedef void (*PInvokeMarshalCleanupFunc)(void* marshaledStructure); -typedef struct Il2CppIUnknown* (*CreateCCWFunc)(Il2CppObject* obj); -typedef struct Il2CppInteropData -{ - Il2CppMethodPointer delegatePInvokeWrapperFunction; - PInvokeMarshalToNativeFunc pinvokeMarshalToNativeFunction; - PInvokeMarshalFromNativeFunc pinvokeMarshalFromNativeFunction; - PInvokeMarshalCleanupFunc pinvokeMarshalCleanupFunction; - CreateCCWFunc createCCWFunction; - const Il2CppGuid* guid; - const Il2CppType* type; -} Il2CppInteropData; -typedef struct Il2CppClass -{ - const Il2CppImage* image; - void* gc_desc; - const char* name; - const char* namespaze; - const Il2CppType* byval_arg; - const Il2CppType* this_arg; - Il2CppClass* element_class; - Il2CppClass* castClass; - Il2CppClass* declaringType; - Il2CppClass* parent; - Il2CppGenericClass* generic_class; - const Il2CppTypeDefinition* typeDefinition; - const Il2CppInteropData* interopData; - FieldInfo* fields; - const EventInfo* events; - const PropertyInfo* properties; - const MethodInfo** methods; - Il2CppClass** nestedTypes; - Il2CppClass** implementedInterfaces; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - void* static_fields; - const Il2CppRGCTXData* rgctx_data; - struct Il2CppClass** typeHierarchy; - uint32_t cctor_started; - uint32_t cctor_finished; - __declspec(align(8)) uint64_t cctor_thread; - GenericContainerIndex genericContainerIndex; - CustomAttributeIndex customAttributeIndex; - uint32_t instance_size; - uint32_t actualSize; - uint32_t element_size; - int32_t native_size; - uint32_t static_fields_size; - uint32_t thread_static_fields_size; - int32_t thread_static_fields_offset; - uint32_t flags; - uint32_t token; - uint16_t method_count; - uint16_t property_count; - uint16_t field_count; - uint16_t event_count; - uint16_t nested_type_count; - uint16_t vtable_count; - uint16_t interfaces_count; - uint16_t interface_offsets_count; - uint8_t typeHierarchyDepth; - uint8_t genericRecursionDepth; - uint8_t rank; - uint8_t minimumAlignment; - uint8_t packingSize; - uint8_t valuetype : 1; - uint8_t initialized : 1; - uint8_t enumtype : 1; - uint8_t is_generic : 1; - uint8_t has_references : 1; - uint8_t init_pending : 1; - uint8_t size_inited : 1; - uint8_t has_finalize : 1; - uint8_t has_cctor : 1; - uint8_t is_blittable : 1; - uint8_t is_import_or_windows_runtime : 1; - uint8_t is_vtable_initialized : 1; - VirtualInvokeData vtable[32]; -} Il2CppClass; - -typedef struct Il2CppClass_0 { - const Il2CppImage* image; - void* gc_desc; - const char* name; - const char* namespaze; - const Il2CppType* byval_arg; - const Il2CppType* this_arg; - Il2CppClass* element_class; - Il2CppClass* castClass; - Il2CppClass* declaringType; - Il2CppClass* parent; - Il2CppGenericClass* generic_class; - const Il2CppTypeDefinition* typeDefinition; - const Il2CppInteropData* interopData; - FieldInfo* fields; - const EventInfo* events; - const PropertyInfo* properties; - const MethodInfo** methods; - Il2CppClass** nestedTypes; - Il2CppClass** implementedInterfaces; -} Il2CppClass_0; - -typedef struct Il2CppClass_1 { - struct Il2CppClass** typeHierarchy; - uint32_t cctor_started; - uint32_t cctor_finished; -#ifdef IS_32BIT - uint32_t cctor_thread__padding; - uint32_t cctor_thread; - uint32_t cctor_thread__hi; -#else - __declspec(align(8)) uint64_t cctor_thread; -#endif - GenericContainerIndex genericContainerIndex; - CustomAttributeIndex customAttributeIndex; - uint32_t instance_size; - uint32_t actualSize; - uint32_t element_size; - int32_t native_size; - uint32_t static_fields_size; - uint32_t thread_static_fields_size; - int32_t thread_static_fields_offset; - uint32_t flags; - uint32_t token; - uint16_t method_count; - uint16_t property_count; - uint16_t field_count; - uint16_t event_count; - uint16_t nested_type_count; - uint16_t vtable_count; - uint16_t interfaces_count; - uint16_t interface_offsets_count; - uint8_t typeHierarchyDepth; - uint8_t genericRecursionDepth; - uint8_t rank; - uint8_t minimumAlignment; - uint8_t packingSize; - uint8_t valuetype : 1; - uint8_t initialized : 1; - uint8_t enumtype : 1; - uint8_t is_generic : 1; - uint8_t has_references : 1; - uint8_t init_pending : 1; - uint8_t size_inited : 1; - uint8_t has_finalize : 1; - uint8_t has_cctor : 1; - uint8_t is_blittable : 1; - uint8_t is_import_or_windows_runtime : 1; - uint8_t is_vtable_initialized : 1; -} Il2CppClass_1; - -typedef struct __declspec(align(8)) Il2CppClass_Merged { - struct Il2CppClass_0 _0; - Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; - void* static_fields; - const Il2CppRGCTXData* rgctx_data; - struct Il2CppClass_1 _1; - VirtualInvokeData vtable[32]; -} Il2CppClass_Merged; - -typedef struct Il2CppTypeDefinitionSizes -{ - uint32_t instance_size; - int32_t native_size; - uint32_t static_fields_size; - uint32_t thread_static_fields_size; -} Il2CppTypeDefinitionSizes; -typedef struct Il2CppDomain -{ - Il2CppAppDomain* domain; - Il2CppAppDomainSetup* setup; - Il2CppAppContext* default_context; - const char* friendly_name; - uint32_t domain_id; - volatile int threadpool_jobs; -} Il2CppDomain; -typedef struct Il2CppImage -{ - const char* name; - const char* nameNoExt; - AssemblyIndex assemblyIndex; - TypeDefinitionIndex typeStart; - uint32_t typeCount; - TypeDefinitionIndex exportedTypeStart; - uint32_t exportedTypeCount; - MethodIndex entryPointIndex; - Il2CppNameToTypeDefinitionIndexHashTable* nameToClassHashTable; - uint32_t token; -} Il2CppImage; -typedef struct Il2CppCodeGenOptions -{ - bool enablePrimitiveValueTypeGenericSharing; -} Il2CppCodeGenOptions; -typedef struct Il2CppWindowsRuntimeFactoryTableEntry -{ - const Il2CppType* type; - Il2CppMethodPointer createFactoryFunction; -} Il2CppWindowsRuntimeFactoryTableEntry; -typedef struct Il2CppTokenIndexPair -{ - uint32_t token; - int32_t index; -} Il2CppTokenIndexPair; -typedef struct Il2CppTokenRangePair -{ - uint32_t token; - Il2CppRange range; -} Il2CppTokenRangePair; -typedef struct Il2CppTokenIndexMethodTuple -{ - uint32_t token; - int32_t index; - void** method; - uint32_t genericMethodIndex; -} Il2CppTokenIndexMethodTuple; -typedef struct Il2CppTokenAdjustorThunkPair -{ - uint32_t token; - Il2CppMethodPointer adjustorThunk; -} Il2CppTokenAdjustorThunkPair; -typedef struct Il2CppCodeGenModule -{ - const char* moduleName; - const uint32_t methodPointerCount; - const Il2CppMethodPointer* methodPointers; - const uint32_t adjustorThunkCount; - const Il2CppTokenAdjustorThunkPair* adjustorThunks; - const int32_t* invokerIndices; - const uint32_t reversePInvokeWrapperCount; - const Il2CppTokenIndexMethodTuple* reversePInvokeWrapperIndices; - const uint32_t rgctxRangesCount; - const Il2CppTokenRangePair* rgctxRanges; - const uint32_t rgctxsCount; - const Il2CppRGCTXDefinition* rgctxs; - const Il2CppDebuggerMetadataRegistration* debuggerMetadata; -} Il2CppCodeGenModule; -typedef struct Il2CppCodeRegistration -{ - //uint32_t reversePInvokeWrapperCount; - //const Il2CppMethodPointer* reversePInvokeWrappers; - //uint32_t genericMethodPointersCount; - //const Il2CppMethodPointer* genericMethodPointers; - //const Il2CppMethodPointer* genericAdjustorThunks; - //uint32_t invokerPointersCount; - //const InvokerMethod* invokerPointers; - //CustomAttributeIndex customAttributeCount; - //const CustomAttributesCacheGenerator* customAttributeGenerators; - //uint32_t unresolvedVirtualCallCount; - //const Il2CppMethodPointer* unresolvedVirtualCallPointers; - //uint32_t interopDataCount; - //Il2CppInteropData* interopData; - //uint32_t windowsRuntimeFactoryCount; - //Il2CppWindowsRuntimeFactoryTableEntry* windowsRuntimeFactoryTable; - //uint32_t codeGenModulesCount; - //const Il2CppCodeGenModule** codeGenModules; - uint32_t methodPointersCount; - const Il2CppMethodPointer* methodPointers; - uint32_t reversePInvokeWrapperCount; - const Il2CppMethodPointer* reversePInvokeWrappers; - uint32_t genericMethodPointersCount; - const Il2CppMethodPointer* genericMethodPointers; - uint32_t invokerPointersCount; - const InvokerMethod* invokerPointers; - CustomAttributeIndex customAttributeCount; - const CustomAttributesCacheGenerator* customAttributeGenerators; - uint32_t unresolvedVirtualCallCount; - const Il2CppMethodPointer* unresolvedVirtualCallPointers; - uint32_t interopDataCount; - Il2CppInteropData* interopData; -} Il2CppCodeRegistration; -typedef struct Il2CppMetadataRegistration -{ - int32_t genericClassesCount; - Il2CppGenericClass* const* genericClasses; - int32_t genericInstsCount; - const Il2CppGenericInst* const* genericInsts; - int32_t genericMethodTableCount; - const Il2CppGenericMethodFunctionsDefinitions* genericMethodTable; - int32_t typesCount; - const Il2CppType* const* types; - int32_t methodSpecsCount; - const Il2CppMethodSpec* methodSpecs; - FieldIndex fieldOffsetsCount; - const int32_t** fieldOffsets; - TypeDefinitionIndex typeDefinitionsSizesCount; - const Il2CppTypeDefinitionSizes** typeDefinitionsSizes; - const size_t metadataUsagesCount; - void** const* metadataUsages; -} Il2CppMetadataRegistration; -typedef struct Il2CppRuntimeStats -{ - uint64_t new_object_count; - uint64_t initialized_class_count; - uint64_t method_count; - uint64_t class_static_data_size; - uint64_t generic_instance_count; - uint64_t generic_class_count; - uint64_t inflated_method_count; - uint64_t inflated_type_count; - bool enabled; -} Il2CppRuntimeStats; -extern Il2CppRuntimeStats il2cpp_runtime_stats; -typedef struct Il2CppPerfCounters -{ - uint32_t jit_methods; - uint32_t jit_bytes; - uint32_t jit_time; - uint32_t jit_failures; - uint32_t exceptions_thrown; - uint32_t exceptions_filters; - uint32_t exceptions_finallys; - uint32_t exceptions_depth; - uint32_t aspnet_requests_queued; - uint32_t aspnet_requests; - uint32_t gc_collections0; - uint32_t gc_collections1; - uint32_t gc_collections2; - uint32_t gc_promotions0; - uint32_t gc_promotions1; - uint32_t gc_promotion_finalizers; - uint32_t gc_gen0size; - uint32_t gc_gen1size; - uint32_t gc_gen2size; - uint32_t gc_lossize; - uint32_t gc_fin_survivors; - uint32_t gc_num_handles; - uint32_t gc_allocated; - uint32_t gc_induced; - uint32_t gc_time; - uint32_t gc_total_bytes; - uint32_t gc_committed_bytes; - uint32_t gc_reserved_bytes; - uint32_t gc_num_pinned; - uint32_t gc_sync_blocks; - uint32_t remoting_calls; - uint32_t remoting_channels; - uint32_t remoting_proxies; - uint32_t remoting_classes; - uint32_t remoting_objects; - uint32_t remoting_contexts; - uint32_t loader_classes; - uint32_t loader_total_classes; - uint32_t loader_appdomains; - uint32_t loader_total_appdomains; - uint32_t loader_assemblies; - uint32_t loader_total_assemblies; - uint32_t loader_failures; - uint32_t loader_bytes; - uint32_t loader_appdomains_uloaded; - uint32_t thread_contentions; - uint32_t thread_queue_len; - uint32_t thread_queue_max; - uint32_t thread_num_logical; - uint32_t thread_num_physical; - uint32_t thread_cur_recognized; - uint32_t thread_num_recognized; - uint32_t interop_num_ccw; - uint32_t interop_num_stubs; - uint32_t interop_num_marshals; - uint32_t security_num_checks; - uint32_t security_num_link_checks; - uint32_t security_time; - uint32_t security_depth; - uint32_t unused; - uint64_t threadpool_workitems; - uint64_t threadpool_ioworkitems; - unsigned int threadpool_threads; - unsigned int threadpool_iothreads; -} Il2CppPerfCounters; -typedef struct Il2CppClass Il2CppClass; -typedef struct MethodInfo MethodInfo; -typedef struct PropertyInfo PropertyInfo; -typedef struct FieldInfo FieldInfo; -typedef struct EventInfo EventInfo; -typedef struct Il2CppType Il2CppType; -typedef struct Il2CppAssembly Il2CppAssembly; -typedef struct Il2CppException Il2CppException; -typedef struct Il2CppImage Il2CppImage; -typedef struct Il2CppDomain Il2CppDomain; -typedef struct Il2CppString Il2CppString; -typedef struct Il2CppReflectionMethod Il2CppReflectionMethod; -typedef struct Il2CppAsyncCall Il2CppAsyncCall; -typedef struct Il2CppIUnknown Il2CppIUnknown; -typedef struct Il2CppWaitHandle Il2CppWaitHandle; -typedef struct MonitorData MonitorData; -typedef struct FastMutex FastMutex; -typedef struct Thread Thread; -typedef struct Il2CppReflectionAssembly Il2CppReflectionAssembly; -typedef struct Il2CppObject -{ - Il2CppClass* klass; - MonitorData* monitor; -} Il2CppObject; -typedef int32_t il2cpp_array_lower_bound_t; -typedef struct Il2CppArrayBounds -{ - il2cpp_array_size_t length; - il2cpp_array_lower_bound_t lower_bound; -} Il2CppArrayBounds; -typedef struct Il2CppArray -{ - Il2CppObject Object; - Il2CppArrayBounds* bounds; - il2cpp_array_size_t max_length; -} Il2CppArray; -typedef struct Il2CppArraySize -{ - Il2CppArray Array; - __declspec(align(8)) void* vector; -} Il2CppArraySize; -typedef struct Il2CppString -{ - Il2CppObject object; - int32_t length; - Il2CppChar chars[32]; -} Il2CppString; -typedef struct Il2CppReflectionType -{ - Il2CppObject object; - const Il2CppType* type; -} Il2CppReflectionType; -typedef struct Il2CppReflectionRuntimeType -{ - Il2CppReflectionType type; - Il2CppObject* type_info; - Il2CppObject* genericCache; - Il2CppObject* serializationCtor; -} Il2CppReflectionRuntimeType; -typedef struct Il2CppReflectionMonoType -{ - Il2CppReflectionRuntimeType type; -} Il2CppReflectionMonoType; -typedef struct Il2CppReflectionEvent -{ - Il2CppObject object; - Il2CppObject* cached_add_event; -} Il2CppReflectionEvent; -typedef struct Il2CppReflectionMonoEvent -{ - Il2CppReflectionEvent event; - Il2CppReflectionType* reflectedType; - const EventInfo* eventInfo; -} Il2CppReflectionMonoEvent; -typedef struct Il2CppReflectionMonoEventInfo -{ - Il2CppReflectionType* declaringType; - Il2CppReflectionType* reflectedType; - Il2CppString* name; - Il2CppReflectionMethod* addMethod; - Il2CppReflectionMethod* removeMethod; - Il2CppReflectionMethod* raiseMethod; - uint32_t eventAttributes; - Il2CppArray* otherMethods; -} Il2CppReflectionMonoEventInfo; -typedef struct Il2CppReflectionField -{ - Il2CppObject object; - Il2CppClass* klass; - FieldInfo* field; - Il2CppString* name; - Il2CppReflectionType* type; - uint32_t attrs; -} Il2CppReflectionField; -typedef struct Il2CppReflectionProperty -{ - Il2CppObject object; - Il2CppClass* klass; - const PropertyInfo* property; -} Il2CppReflectionProperty; -typedef struct Il2CppReflectionMethod -{ - Il2CppObject object; - const MethodInfo* method; - Il2CppString* name; - Il2CppReflectionType* reftype; -} Il2CppReflectionMethod; -typedef struct Il2CppReflectionGenericMethod -{ - Il2CppReflectionMethod base; -} Il2CppReflectionGenericMethod; -typedef struct Il2CppMethodInfo -{ - Il2CppReflectionType* parent; - Il2CppReflectionType* ret; - uint32_t attrs; - uint32_t implattrs; - uint32_t callconv; -} Il2CppMethodInfo; -typedef struct Il2CppPropertyInfo -{ - Il2CppReflectionType* parent; - Il2CppReflectionType* declaringType; - Il2CppString* name; - Il2CppReflectionMethod* get; - Il2CppReflectionMethod* set; - uint32_t attrs; -} Il2CppPropertyInfo; -typedef struct Il2CppReflectionParameter -{ - Il2CppObject object; - Il2CppReflectionType* ClassImpl; - Il2CppObject* DefaultValueImpl; - Il2CppObject* MemberImpl; - Il2CppString* NameImpl; - int32_t PositionImpl; - uint32_t AttrsImpl; - Il2CppObject* MarshalAsImpl; -} Il2CppReflectionParameter; -typedef struct Il2CppReflectionModule -{ - Il2CppObject obj; - const Il2CppImage* image; - Il2CppReflectionAssembly* assembly; - Il2CppString* fqname; - Il2CppString* name; - Il2CppString* scopename; - bool is_resource; - uint32_t token; -} Il2CppReflectionModule; -typedef struct Il2CppReflectionAssemblyName -{ - Il2CppObject obj; - Il2CppString* name; - Il2CppString* codebase; - int32_t major, minor, build, revision; - Il2CppObject* cultureInfo; - uint32_t flags; - uint32_t hashalg; - Il2CppObject* keypair; - Il2CppArray* publicKey; - Il2CppArray* keyToken; - uint32_t versioncompat; - Il2CppObject* version; - uint32_t processor_architecture; - uint32_t contentType; -} Il2CppReflectionAssemblyName; -typedef struct Il2CppReflectionAssembly -{ - Il2CppObject object; - const Il2CppAssembly* assembly; - Il2CppObject* resolve_event_holder; - Il2CppObject* evidence; - Il2CppObject* minimum; - Il2CppObject* optional; - Il2CppObject* refuse; - Il2CppObject* granted; - Il2CppObject* denied; - bool from_byte_array; - Il2CppString* name; -} Il2CppReflectionAssembly; -typedef struct Il2CppReflectionMarshal -{ - Il2CppObject object; - int32_t count; - int32_t type; - int32_t eltype; - Il2CppString* guid; - Il2CppString* mcookie; - Il2CppString* marshaltype; - Il2CppObject* marshaltyperef; - int32_t param_num; - bool has_size; -} Il2CppReflectionMarshal; -typedef struct Il2CppReflectionPointer -{ - Il2CppObject object; - void* data; - Il2CppReflectionType* type; -} Il2CppReflectionPointer; -typedef struct Il2CppInternalThread -{ - Il2CppObject obj; - int lock_thread_id; - Thread* handle; - void* native_handle; - Il2CppArray* cached_culture_info; - Il2CppChar* name; - int name_len; - uint32_t state; - Il2CppObject* abort_exc; - int abort_state_handle; - uint64_t tid; - void* stack_ptr; - void** static_data; - void* runtime_thread_info; - Il2CppObject* current_appcontext; - Il2CppObject* root_domain_thread; - Il2CppArray* _serialized_principal; - int _serialized_principal_version; - void* appdomain_refs; - int32_t interruption_requested; - FastMutex* synch_cs; - bool threadpool_thread; - bool thread_interrupt_requested; - int stack_size; - uint8_t apartment_state; - int critical_region_level; - int managed_id; - uint32_t small_id; - void* manage_callback; - void* interrupt_on_stop; - void* flags; - void* thread_pinning_ref; - void* abort_protected_block_count; - int32_t priority; - void* owned_mutexes; - void* suspended; - int32_t self_suspended; - size_t thread_state; - size_t unused2; - void* last; -} Il2CppInternalThread; -typedef struct Il2CppIOSelectorJob -{ - Il2CppObject object; - int32_t operation; - Il2CppObject* callback; - Il2CppObject* state; -} Il2CppIOSelectorJob; -typedef enum -{ - Il2Cpp_CallType_Sync = 0, - Il2Cpp_CallType_BeginInvoke = 1, - Il2Cpp_CallType_EndInvoke = 2, - Il2Cpp_CallType_OneWay = 3 -} Il2CppCallType; -typedef struct Il2CppMethodMessage -{ - Il2CppObject obj; - Il2CppReflectionMethod* method; - Il2CppArray* args; - Il2CppArray* names; - Il2CppArray* arg_types; - Il2CppObject* ctx; - Il2CppObject* rval; - Il2CppObject* exc; - Il2CppAsyncResult* async_result; - uint32_t call_type; -} Il2CppMethodMessage; -typedef struct Il2CppAppDomainSetup -{ - Il2CppObject object; - Il2CppString* application_base; - Il2CppString* application_name; - Il2CppString* cache_path; - Il2CppString* configuration_file; - Il2CppString* dynamic_base; - Il2CppString* license_file; - Il2CppString* private_bin_path; - Il2CppString* private_bin_path_probe; - Il2CppString* shadow_copy_directories; - Il2CppString* shadow_copy_files; - uint8_t publisher_policy; - uint8_t path_changed; - int loader_optimization; - uint8_t disallow_binding_redirects; - uint8_t disallow_code_downloads; - Il2CppObject* activation_arguments; - Il2CppObject* domain_initializer; - Il2CppObject* application_trust; - Il2CppArray* domain_initializer_args; - uint8_t disallow_appbase_probe; - Il2CppArray* configuration_bytes; - Il2CppArray* serialized_non_primitives; -} Il2CppAppDomainSetup; -typedef struct Il2CppThread -{ - Il2CppObject obj; - Il2CppInternalThread* internal_thread; - Il2CppObject* start_obj; - Il2CppException* pending_exception; - Il2CppObject* principal; - int32_t principal_version; - Il2CppDelegate* delegate; - Il2CppObject* executionContext; - bool executionContextBelongsToOuterScope; -} Il2CppThread; -typedef struct Il2CppException -{ - Il2CppObject Object; - Il2CppString* className; - Il2CppString* message; - Il2CppObject* _data; - Il2CppException* inner_ex; - Il2CppString* _helpURL; - Il2CppArray* trace_ips; - Il2CppString* stack_trace; - Il2CppString* remote_stack_trace; - int remote_stack_index; - Il2CppObject* _dynamicMethods; - il2cpp_hresult_t hresult; - Il2CppString* source; - Il2CppObject* safeSerializationManager; - Il2CppArray* captured_traces; - Il2CppArray* native_trace_ips; -} Il2CppException; -typedef struct Il2CppSystemException -{ - Il2CppException base; -} Il2CppSystemException; -typedef struct Il2CppArgumentException -{ - Il2CppException base; - Il2CppString* argName; -} Il2CppArgumentException; -typedef struct Il2CppTypedRef -{ - Il2CppType* type; - void* value; - Il2CppClass* klass; -} Il2CppTypedRef; -typedef struct Il2CppDelegate -{ - Il2CppObject object; - Il2CppMethodPointer method_ptr; - InvokerMethod invoke_impl; - Il2CppObject* target; - const MethodInfo* method; - void* delegate_trampoline; - intptr_t extraArg; - uint8_t** method_code; - Il2CppReflectionMethod* method_info; - Il2CppReflectionMethod* original_method_info; - Il2CppObject* data; - bool method_is_virtual; -} Il2CppDelegate; -typedef struct Il2CppMulticastDelegate -{ - Il2CppDelegate delegate; - Il2CppArray* delegates; -} Il2CppMulticastDelegate; -typedef struct Il2CppMarshalByRefObject -{ - Il2CppObject obj; - Il2CppObject* identity; -} Il2CppMarshalByRefObject; -typedef struct Il2CppComObject -{ - Il2CppObject Object; - Il2CppIUnknown* identity; - volatile int32_t refCount; -} Il2CppComObject; -typedef struct Il2CppAppDomain -{ - Il2CppMarshalByRefObject mbr; - Il2CppDomain* data; -} Il2CppAppDomain; -typedef struct Il2CppStackFrame -{ - Il2CppObject obj; - int32_t il_offset; - int32_t native_offset; - uint64_t methodAddress; - uint32_t methodIndex; - Il2CppReflectionMethod* method; - Il2CppString* filename; - int32_t line; - int32_t column; - Il2CppString* internal_method_name; -} Il2CppStackFrame; -typedef struct Il2CppDateTimeFormatInfo -{ - Il2CppObject obj; - Il2CppObject* CultureData; - Il2CppString* Name; - Il2CppString* LangName; - Il2CppObject* CompareInfo; - Il2CppObject* CultureInfo; - Il2CppString* AMDesignator; - Il2CppString* PMDesignator; - Il2CppString* DateSeparator; - Il2CppString* GeneralShortTimePattern; - Il2CppString* GeneralLongTimePattern; - Il2CppString* TimeSeparator; - Il2CppString* MonthDayPattern; - Il2CppString* DateTimeOffsetPattern; - Il2CppObject* Calendar; - uint32_t FirstDayOfWeek; - uint32_t CalendarWeekRule; - Il2CppString* FullDateTimePattern; - Il2CppArray* AbbreviatedDayNames; - Il2CppArray* ShortDayNames; - Il2CppArray* DayNames; - Il2CppArray* AbbreviatedMonthNames; - Il2CppArray* MonthNames; - Il2CppArray* GenitiveMonthNames; - Il2CppArray* GenitiveAbbreviatedMonthNames; - Il2CppArray* LeapYearMonthNames; - Il2CppString* LongDatePattern; - Il2CppString* ShortDatePattern; - Il2CppString* YearMonthPattern; - Il2CppString* LongTimePattern; - Il2CppString* ShortTimePattern; - Il2CppArray* YearMonthPatterns; - Il2CppArray* ShortDatePatterns; - Il2CppArray* LongDatePatterns; - Il2CppArray* ShortTimePatterns; - Il2CppArray* LongTimePatterns; - Il2CppArray* EraNames; - Il2CppArray* AbbrevEraNames; - Il2CppArray* AbbrevEnglishEraNames; - Il2CppArray* OptionalCalendars; - bool readOnly; - int32_t FormatFlags; - int32_t CultureID; - bool UseUserOverride; - bool UseCalendarInfo; - int32_t DataItem; - bool IsDefaultCalendar; - Il2CppArray* DateWords; - Il2CppString* FullTimeSpanPositivePattern; - Il2CppString* FullTimeSpanNegativePattern; - Il2CppArray* dtfiTokenHash; -} Il2CppDateTimeFormatInfo; -typedef struct Il2CppNumberFormatInfo -{ - Il2CppObject obj; - Il2CppArray* numberGroupSizes; - Il2CppArray* currencyGroupSizes; - Il2CppArray* percentGroupSizes; - Il2CppString* positiveSign; - Il2CppString* negativeSign; - Il2CppString* numberDecimalSeparator; - Il2CppString* numberGroupSeparator; - Il2CppString* currencyGroupSeparator; - Il2CppString* currencyDecimalSeparator; - Il2CppString* currencySymbol; - Il2CppString* ansiCurrencySymbol; - Il2CppString* naNSymbol; - Il2CppString* positiveInfinitySymbol; - Il2CppString* negativeInfinitySymbol; - Il2CppString* percentDecimalSeparator; - Il2CppString* percentGroupSeparator; - Il2CppString* percentSymbol; - Il2CppString* perMilleSymbol; - Il2CppArray* nativeDigits; - int dataItem; - int numberDecimalDigits; - int currencyDecimalDigits; - int currencyPositivePattern; - int currencyNegativePattern; - int numberNegativePattern; - int percentPositivePattern; - int percentNegativePattern; - int percentDecimalDigits; - int digitSubstitution; - bool readOnly; - bool useUserOverride; - bool isInvariant; - bool validForParseAsNumber; - bool validForParseAsCurrency; -} Il2CppNumberFormatInfo; -typedef struct Il2CppCultureData -{ - Il2CppObject obj; - Il2CppString* AMDesignator; - Il2CppString* PMDesignator; - Il2CppString* TimeSeparator; - Il2CppArray* LongTimePatterns; - Il2CppArray* ShortTimePatterns; - uint32_t FirstDayOfWeek; - uint32_t CalendarWeekRule; -} Il2CppCultureData; -typedef struct Il2CppCalendarData -{ - Il2CppObject obj; - Il2CppString* NativeName; - Il2CppArray* ShortDatePatterns; - Il2CppArray* YearMonthPatterns; - Il2CppArray* LongDatePatterns; - Il2CppString* MonthDayPattern; - Il2CppArray* EraNames; - Il2CppArray* AbbreviatedEraNames; - Il2CppArray* AbbreviatedEnglishEraNames; - Il2CppArray* DayNames; - Il2CppArray* AbbreviatedDayNames; - Il2CppArray* SuperShortDayNames; - Il2CppArray* MonthNames; - Il2CppArray* AbbreviatedMonthNames; - Il2CppArray* GenitiveMonthNames; - Il2CppArray* GenitiveAbbreviatedMonthNames; -} Il2CppCalendarData; -typedef struct Il2CppCultureInfo -{ - Il2CppObject obj; - bool is_read_only; - int32_t lcid; - int32_t parent_lcid; - int32_t datetime_index; - int32_t number_index; - int32_t default_calendar_type; - bool use_user_override; - Il2CppNumberFormatInfo* number_format; - Il2CppDateTimeFormatInfo* datetime_format; - Il2CppObject* textinfo; - Il2CppString* name; - Il2CppString* englishname; - Il2CppString* nativename; - Il2CppString* iso3lang; - Il2CppString* iso2lang; - Il2CppString* win3lang; - Il2CppString* territory; - Il2CppArray* native_calendar_names; - Il2CppString* compareinfo; - const void* text_info_data; - int dataItem; - Il2CppObject* calendar; - Il2CppObject* parent_culture; - bool constructed; - Il2CppArray* cached_serialized_form; - Il2CppObject* cultureData; - bool isInherited; -} Il2CppCultureInfo; -typedef struct Il2CppRegionInfo -{ - Il2CppObject obj; - int32_t geo_id; - Il2CppString* iso2name; - Il2CppString* iso3name; - Il2CppString* win3name; - Il2CppString* english_name; - Il2CppString* currency_symbol; - Il2CppString* iso_currency_symbol; - Il2CppString* currency_english_name; -} Il2CppRegionInfo; -typedef struct Il2CppSafeHandle -{ - Il2CppObject base; - void* handle; - int state; - bool owns_handle; - bool fullyInitialized; -} Il2CppSafeHandle; -typedef struct Il2CppStringBuilder -{ - Il2CppObject object; - Il2CppArray* chunkChars; - Il2CppStringBuilder* chunkPrevious; - int chunkLength; - int chunkOffset; - int maxCapacity; -} Il2CppStringBuilder; -typedef struct Il2CppSocketAddress -{ - Il2CppObject base; - int m_Size; - Il2CppArray* data; - bool m_changed; - int m_hash; -} Il2CppSocketAddress; -typedef struct Il2CppSortKey -{ - Il2CppObject base; - Il2CppString* str; - Il2CppArray* key; - int32_t options; - int32_t lcid; -} Il2CppSortKey; -typedef struct Il2CppErrorWrapper -{ - Il2CppObject base; - int32_t errorCode; -} Il2CppErrorWrapper; -typedef struct Il2CppAsyncResult -{ - Il2CppObject base; - Il2CppObject* async_state; - Il2CppWaitHandle* handle; - Il2CppDelegate* async_delegate; - void* data; - Il2CppAsyncCall* object_data; - bool sync_completed; - bool completed; - bool endinvoke_called; - Il2CppObject* async_callback; - Il2CppObject* execution_context; - Il2CppObject* original_context; -} Il2CppAsyncResult; -typedef struct Il2CppAsyncCall -{ - Il2CppObject base; - Il2CppMethodMessage* msg; - MethodInfo* cb_method; - Il2CppDelegate* cb_target; - Il2CppObject* state; - Il2CppObject* res; - Il2CppArray* out_args; -} Il2CppAsyncCall; -typedef struct Il2CppExceptionWrapper -{ - Il2CppException* ex; -} Il2CppExceptionWrapper; -typedef struct Il2CppIOAsyncResult -{ - Il2CppObject base; - Il2CppDelegate* callback; - Il2CppObject* state; - Il2CppWaitHandle* wait_handle; - bool completed_synchronously; - bool completed; -} Il2CppIOAsyncResult; -typedef struct Il2CppSocketAsyncResult -{ - Il2CppIOAsyncResult base; - Il2CppObject* socket; - int32_t operation; - Il2CppException* delayedException; - Il2CppObject* endPoint; - Il2CppArray* buffer; - int32_t offset; - int32_t size; - int32_t socket_flags; - Il2CppObject* acceptSocket; - Il2CppArray* addresses; - int32_t port; - Il2CppObject* buffers; - bool reuseSocket; - int32_t currentAddress; - Il2CppObject* acceptedSocket; - int32_t total; - int32_t error; - int32_t endCalled; -} Il2CppSocketAsyncResult; -typedef enum Il2CppResourceLocation -{ - IL2CPP_RESOURCE_LOCATION_EMBEDDED = 1, - IL2CPP_RESOURCE_LOCATION_ANOTHER_ASSEMBLY = 2, - IL2CPP_RESOURCE_LOCATION_IN_MANIFEST = 4 -} Il2CppResourceLocation; -typedef struct Il2CppManifestResourceInfo -{ - Il2CppObject object; - Il2CppReflectionAssembly* assembly; - Il2CppString* filename; - uint32_t location; -} Il2CppManifestResourceInfo; -typedef struct Il2CppAppContext -{ - Il2CppObject obj; - int32_t domain_id; - int32_t context_id; - void* static_data; -} Il2CppAppContext; -struct Il2CppDecimal -{ - uint16_t reserved; - union - { - struct - { - uint8_t scale; - uint8_t sign; - } u; - uint16_t signscale; - } u; - uint32_t Hi32; - union - { - struct - { - uint32_t Lo32; - uint32_t Mid32; - } v; - uint64_t Lo64; - } v; -}; -typedef struct Il2CppDouble -{ - uint32_t mantLo : 32; - uint32_t mantHi : 20; - uint32_t exp : 11; - uint32_t sign : 1; -} Il2CppDouble; -typedef union -{ - Il2CppDouble s; - double d; -} Il2CppDouble_double; -typedef enum -{ - IL2CPP_DECIMAL_CMP_LT = -1, - IL2CPP_DECIMAL_CMP_EQ, - IL2CPP_DECIMAL_CMP_GT -} Il2CppDecimalCompareResult; -typedef struct Il2CppSingle -{ - uint32_t mant : 23; - uint32_t exp : 8; - uint32_t sign : 1; -} Il2CppSingle; -typedef union -{ - Il2CppSingle s; - float f; -} Il2CppSingle_float; + void* Reserved1; + char Reserved2[24]; + } Reserved; +} Il2CppHStringHeader; typedef struct Il2CppGuid { uint32_t data1; @@ -2084,7 +745,7 @@ typedef struct Il2CppSafeArray void* data; Il2CppSafeArrayBound bounds[1]; } Il2CppSafeArray; -struct Il2CppWin32Decimal +typedef struct Il2CppWin32Decimal { uint16_t reserved; union @@ -2106,7 +767,7 @@ struct Il2CppWin32Decimal } s2; uint64_t lo64; } u2; -}; +} Il2CppWin32Decimal; typedef int16_t IL2CPP_VARIANT_BOOL; typedef enum Il2CppVarType { @@ -2163,6 +824,8 @@ typedef enum Il2CppVarType IL2CPP_VT_ILLEGALMASKED = 0xfff, IL2CPP_VT_TYPEMASK = 0xfff, } Il2CppVarType; +typedef struct Il2CppVariant Il2CppVariant; +typedef struct Il2CppIUnknown Il2CppIUnknown; typedef struct Il2CppVariant { union @@ -2247,73 +910,1411 @@ typedef struct Il2CppStatStg uint32_t state; uint32_t reserved; } Il2CppStatStg; -typedef struct Il2CppHString__ +typedef enum Il2CppWindowsRuntimeTypeKind { - int unused; -} Il2CppHString__; -typedef Il2CppHString__* Il2CppHString; -typedef struct Il2CppHStringHeader + kTypeKindPrimitive = 0, + kTypeKindMetadata, + kTypeKindCustom +} Il2CppWindowsRuntimeTypeKind; +typedef struct Il2CppWindowsRuntimeTypeName +{ + Il2CppHString typeName; + enum Il2CppWindowsRuntimeTypeKind typeKind; +} Il2CppWindowsRuntimeTypeName; +typedef void (*PInvokeMarshalToNativeFunc)(void* managedStructure, void* marshaledStructure); +typedef void (*PInvokeMarshalFromNativeFunc)(void* marshaledStructure, void* managedStructure); +typedef void (*PInvokeMarshalCleanupFunc)(void* marshaledStructure); +typedef struct Il2CppIUnknown* (*CreateCCWFunc)(Il2CppObject* obj); +typedef struct Il2CppInteropData +{ + Il2CppMethodPointer delegatePInvokeWrapperFunction; + PInvokeMarshalToNativeFunc pinvokeMarshalToNativeFunction; + PInvokeMarshalFromNativeFunc pinvokeMarshalFromNativeFunction; + PInvokeMarshalCleanupFunc pinvokeMarshalCleanupFunction; + CreateCCWFunc createCCWFunction; + const Il2CppGuid* guid; + const Il2CppType* type; +} Il2CppInteropData; +typedef struct Il2CppClass Il2CppClass; +typedef struct Il2CppGuid Il2CppGuid; +typedef struct Il2CppImage Il2CppImage; +typedef struct Il2CppAppDomain Il2CppAppDomain; +typedef struct Il2CppAppDomainSetup Il2CppAppDomainSetup; +typedef struct Il2CppDelegate Il2CppDelegate; +typedef struct Il2CppAppContext Il2CppAppContext; +typedef struct Il2CppNameToTypeDefinitionIndexHashTable Il2CppNameToTypeDefinitionIndexHashTable; +typedef struct Il2CppCodeGenModule Il2CppCodeGenModule; +typedef struct VirtualInvokeData +{ + Il2CppMethodPointer methodPtr; + const MethodInfo* method; +} VirtualInvokeData; +typedef enum Il2CppTypeNameFormat +{ + IL2CPP_TYPE_NAME_FORMAT_IL, + IL2CPP_TYPE_NAME_FORMAT_REFLECTION, + IL2CPP_TYPE_NAME_FORMAT_FULL_NAME, + IL2CPP_TYPE_NAME_FORMAT_ASSEMBLY_QUALIFIED +} Il2CppTypeNameFormat; +typedef struct Il2CppDefaults +{ + Il2CppImage *corlib; + Il2CppClass *object_class; + Il2CppClass *byte_class; + Il2CppClass *void_class; + Il2CppClass *boolean_class; + Il2CppClass *sbyte_class; + Il2CppClass *int16_class; + Il2CppClass *uint16_class; + Il2CppClass *int32_class; + Il2CppClass *uint32_class; + Il2CppClass *int_class; + Il2CppClass *uint_class; + Il2CppClass *int64_class; + Il2CppClass *uint64_class; + Il2CppClass *single_class; + Il2CppClass *double_class; + Il2CppClass *char_class; + Il2CppClass *string_class; + Il2CppClass *enum_class; + Il2CppClass *array_class; + Il2CppClass *delegate_class; + Il2CppClass *multicastdelegate_class; + Il2CppClass *asyncresult_class; + Il2CppClass *manualresetevent_class; + Il2CppClass *typehandle_class; + Il2CppClass *fieldhandle_class; + Il2CppClass *methodhandle_class; + Il2CppClass *systemtype_class; + Il2CppClass *monotype_class; + Il2CppClass *exception_class; + Il2CppClass *threadabortexception_class; + Il2CppClass *thread_class; + Il2CppClass *internal_thread_class; + Il2CppClass *appdomain_class; + Il2CppClass *appdomain_setup_class; + Il2CppClass *field_info_class; + Il2CppClass *method_info_class; + Il2CppClass *property_info_class; + Il2CppClass *event_info_class; + Il2CppClass *mono_event_info_class; + Il2CppClass *stringbuilder_class; + Il2CppClass *stack_frame_class; + Il2CppClass *stack_trace_class; + Il2CppClass *marshal_class; + Il2CppClass *typed_reference_class; + Il2CppClass *marshalbyrefobject_class; + Il2CppClass *generic_ilist_class; + Il2CppClass *generic_icollection_class; + Il2CppClass *generic_ienumerable_class; + Il2CppClass *generic_ireadonlylist_class; + Il2CppClass *generic_ireadonlycollection_class; + Il2CppClass *runtimetype_class; + Il2CppClass *generic_nullable_class; + Il2CppClass *il2cpp_com_object_class; + Il2CppClass *attribute_class; + Il2CppClass *customattribute_data_class; + Il2CppClass *version; + Il2CppClass *culture_info; + Il2CppClass *async_call_class; + Il2CppClass *assembly_class; + Il2CppClass *mono_assembly_class; + Il2CppClass *assembly_name_class; + Il2CppClass *mono_field_class; + Il2CppClass *mono_method_class; + Il2CppClass *mono_method_info_class; + Il2CppClass *mono_property_info_class; + Il2CppClass *parameter_info_class; + Il2CppClass *mono_parameter_info_class; + Il2CppClass *module_class; + Il2CppClass *pointer_class; + Il2CppClass *system_exception_class; + Il2CppClass *argument_exception_class; + Il2CppClass *wait_handle_class; + Il2CppClass *safe_handle_class; + Il2CppClass *sort_key_class; + Il2CppClass *dbnull_class; + Il2CppClass *error_wrapper_class; + Il2CppClass *missing_class; + Il2CppClass *value_type_class; + Il2CppClass *threadpool_wait_callback_class; + MethodInfo *threadpool_perform_wait_callback_method; + Il2CppClass *mono_method_message_class; + Il2CppClass* ireference_class; + Il2CppClass* ireferencearray_class; + Il2CppClass* ikey_value_pair_class; + Il2CppClass* key_value_pair_class; + Il2CppClass* windows_foundation_uri_class; + Il2CppClass* windows_foundation_iuri_runtime_class_class; + Il2CppClass* system_uri_class; + Il2CppClass* system_guid_class; + Il2CppClass* sbyte_shared_enum; + Il2CppClass* int16_shared_enum; + Il2CppClass* int32_shared_enum; + Il2CppClass* int64_shared_enum; + Il2CppClass* byte_shared_enum; + Il2CppClass* uint16_shared_enum; + Il2CppClass* uint32_shared_enum; + Il2CppClass* uint64_shared_enum; +} Il2CppDefaults; +extern Il2CppDefaults il2cpp_defaults; +typedef struct Il2CppClass Il2CppClass; +typedef struct MethodInfo MethodInfo; +typedef struct FieldInfo FieldInfo; +typedef struct Il2CppObject Il2CppObject; +typedef struct MemberInfo MemberInfo; +typedef struct CustomAttributesCache +{ + int count; + Il2CppObject** attributes; +} CustomAttributesCache; +typedef void (*CustomAttributesCacheGenerator)(CustomAttributesCache*); +typedef struct FieldInfo +{ + const char* name; + const Il2CppType* type; + Il2CppClass *parent; + int32_t offset; + uint32_t token; +} FieldInfo; +typedef struct PropertyInfo +{ + Il2CppClass *parent; + const char *name; + const MethodInfo *get; + const MethodInfo *set; + uint32_t attrs; + uint32_t token; +} PropertyInfo; +typedef struct EventInfo +{ + const char* name; + const Il2CppType* eventType; + Il2CppClass* parent; + const MethodInfo* add; + const MethodInfo* remove; + const MethodInfo* raise; + uint32_t token; +} EventInfo; +typedef struct ParameterInfo +{ + const char* name; + int32_t position; + uint32_t token; + const Il2CppType* parameter_type; +} ParameterInfo; +typedef void* (*InvokerMethod)(Il2CppMethodPointer, const MethodInfo*, void*, void**); +typedef enum MethodVariableKind +{ + kMethodVariableKind_This, + kMethodVariableKind_Parameter, + kMethodVariableKind_LocalVariable +} MethodVariableKind; +typedef enum SequencePointKind +{ + kSequencePointKind_Normal, + kSequencePointKind_StepOut +} SequencePointKind; +typedef struct Il2CppMethodExecutionContextInfo +{ + TypeIndex typeIndex; + int32_t nameIndex; + int32_t scopeIndex; +} Il2CppMethodExecutionContextInfo; +typedef struct Il2CppMethodExecutionContextInfoIndex +{ + int32_t startIndex; + int32_t count; +} Il2CppMethodExecutionContextInfoIndex; +typedef struct Il2CppMethodScope +{ + int32_t startOffset; + int32_t endOffset; +} Il2CppMethodScope; +typedef struct Il2CppMethodHeaderInfo +{ + int32_t code_size; + int32_t startScope; + int32_t numScopes; +} Il2CppMethodHeaderInfo; +typedef struct Il2CppSequencePointSourceFile +{ + const char *file; + uint8_t hash[16]; +} Il2CppSequencePointSourceFile; +typedef struct Il2CppTypeSourceFilePair +{ + TypeDefinitionIndex klassIndex; + int32_t sourceFileIndex; +} Il2CppTypeSourceFilePair; +typedef struct Il2CppSequencePoint +{ + MethodIndex methodDefinitionIndex; + int32_t sourceFileIndex; + int32_t lineStart, lineEnd; + int32_t columnStart, columnEnd; + int32_t ilOffset; + SequencePointKind kind; + int32_t isActive; + int32_t id; +} Il2CppSequencePoint; +typedef struct Il2CppCatchPoint +{ + MethodIndex methodDefinitionIndex; + TypeIndex catchTypeIndex; + int32_t ilOffset; + int32_t tryId; + int32_t parentTryId; +} Il2CppCatchPoint; +typedef struct Il2CppDebuggerMetadataRegistration +{ + Il2CppMethodExecutionContextInfo* methodExecutionContextInfos; + Il2CppMethodExecutionContextInfoIndex* methodExecutionContextInfoIndexes; + Il2CppMethodScope* methodScopes; + Il2CppMethodHeaderInfo* methodHeaderInfos; + Il2CppSequencePointSourceFile* sequencePointSourceFiles; + int32_t numSequencePoints; + Il2CppSequencePoint* sequencePoints; + int32_t numCatchPoints; + Il2CppCatchPoint* catchPoints; + int32_t numTypeSourceFileEntries; + Il2CppTypeSourceFilePair* typeSourceFiles; + const char** methodExecutionContextInfoStrings; +} Il2CppDebuggerMetadataRegistration; +typedef union Il2CppRGCTXData +{ + void* rgctxDataDummy; + const MethodInfo* method; + const Il2CppType* type; + Il2CppClass* klass; +} Il2CppRGCTXData; +typedef struct MethodInfo +{ + Il2CppMethodPointer methodPointer; + InvokerMethod invoker_method; + const char* name; + Il2CppClass *klass; + const Il2CppType *return_type; + const ParameterInfo* parameters; + union + { + const Il2CppRGCTXData* rgctx_data; + const Il2CppMethodDefinition* methodDefinition; + } Il2CppVariant; + union + { + const Il2CppGenericMethod* genericMethod; + const Il2CppGenericContainer* genericContainer; + }; + uint32_t token; + uint16_t flags; + uint16_t iflags; + uint16_t slot; + uint8_t parameters_count; + uint8_t is_generic : 1; + uint8_t is_inflated : 1; + uint8_t wrapper_type : 1; + uint8_t is_marshaled_from_native : 1; +} MethodInfo; +typedef struct Il2CppRuntimeInterfaceOffsetPair +{ + Il2CppClass* interfaceType; + int32_t offset; +} Il2CppRuntimeInterfaceOffsetPair; +typedef struct Il2CppClass +{ + const Il2CppImage* image; + void* gc_desc; + const char* name; + const char* namespaze; + Il2CppType byval_arg; + Il2CppType this_arg; + Il2CppClass* element_class; + Il2CppClass* castClass; + Il2CppClass* declaringType; + Il2CppClass* parent; + Il2CppGenericClass *generic_class; + const Il2CppTypeDefinition* typeDefinition; + const Il2CppInteropData* interopData; + Il2CppClass* klass; + FieldInfo* fields; + const EventInfo* events; + const PropertyInfo* properties; + const MethodInfo** methods; + Il2CppClass** nestedTypes; + Il2CppClass** implementedInterfaces; + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; + void* static_fields; + const Il2CppRGCTXData* rgctx_data; + struct Il2CppClass** typeHierarchy; + void *unity_user_data; + uint32_t initializationExceptionGCHandle; + uint32_t cctor_started; + uint32_t cctor_finished; + __declspec(align(8)) size_t cctor_thread; + GenericContainerIndex genericContainerIndex; + uint32_t instance_size; + uint32_t actualSize; + uint32_t element_size; + int32_t native_size; + uint32_t static_fields_size; + uint32_t thread_static_fields_size; + int32_t thread_static_fields_offset; + uint32_t flags; + uint32_t token; + uint16_t method_count; + uint16_t property_count; + uint16_t field_count; + uint16_t event_count; + uint16_t nested_type_count; + uint16_t vtable_count; + uint16_t interfaces_count; + uint16_t interface_offsets_count; + uint8_t typeHierarchyDepth; + uint8_t genericRecursionDepth; + uint8_t rank; + uint8_t minimumAlignment; + uint8_t naturalAligment; + uint8_t packingSize; + uint8_t initialized_and_no_error : 1; + uint8_t valuetype : 1; + uint8_t initialized : 1; + uint8_t enumtype : 1; + uint8_t is_generic : 1; + uint8_t has_references : 1; + uint8_t init_pending : 1; + uint8_t size_inited : 1; + uint8_t has_finalize : 1; + uint8_t has_cctor : 1; + uint8_t is_blittable : 1; + uint8_t is_import_or_windows_runtime : 1; + uint8_t is_vtable_initialized : 1; + uint8_t has_initialization_error : 1; + VirtualInvokeData vtable[32]; +} Il2CppClass; + +typedef struct Il2CppClass_0 { + const Il2CppImage* image; + void* gc_desc; + const char* name; + const char* namespaze; + Il2CppType byval_arg; + Il2CppType this_arg; + Il2CppClass* element_class; + Il2CppClass* castClass; + Il2CppClass* declaringType; + Il2CppClass* parent; + Il2CppGenericClass * generic_class; + const Il2CppTypeDefinition* typeDefinition; + const Il2CppInteropData* interopData; + Il2CppClass* klass; + FieldInfo* fields; + const EventInfo* events; + const PropertyInfo* properties; + const MethodInfo** methods; + Il2CppClass** nestedTypes; + Il2CppClass** implementedInterfaces; +} Il2CppClass_0; + +typedef struct Il2CppClass_1 { + struct Il2CppClass** typeHierarchy; + void * unity_user_data; + uint32_t initializationExceptionGCHandle; + uint32_t cctor_started; + uint32_t cctor_finished; +#ifdef IS_32BIT + uint32_t cctor_thread; +#else + __declspec(align(8)) size_t cctor_thread; +#endif + GenericContainerIndex genericContainerIndex; + uint32_t instance_size; + uint32_t actualSize; + uint32_t element_size; + int32_t native_size; + uint32_t static_fields_size; + uint32_t thread_static_fields_size; + int32_t thread_static_fields_offset; + uint32_t flags; + uint32_t token; + uint16_t method_count; + uint16_t property_count; + uint16_t field_count; + uint16_t event_count; + uint16_t nested_type_count; + uint16_t vtable_count; + uint16_t interfaces_count; + uint16_t interface_offsets_count; + uint8_t typeHierarchyDepth; + uint8_t genericRecursionDepth; + uint8_t rank; + uint8_t minimumAlignment; + uint8_t naturalAligment; + uint8_t packingSize; + uint8_t initialized_and_no_error : 1; + uint8_t valuetype : 1; + uint8_t initialized : 1; + uint8_t enumtype : 1; + uint8_t is_generic : 1; + uint8_t has_references : 1; + uint8_t init_pending : 1; + uint8_t size_inited : 1; + uint8_t has_finalize : 1; + uint8_t has_cctor : 1; + uint8_t is_blittable : 1; + uint8_t is_import_or_windows_runtime : 1; + uint8_t is_vtable_initialized : 1; + uint8_t has_initialization_error : 1; +} Il2CppClass_1; + +typedef struct __declspec(align(8)) Il2CppClass_Merged { + struct Il2CppClass_0 _0; + Il2CppRuntimeInterfaceOffsetPair* interfaceOffsets; + void* static_fields; + const Il2CppRGCTXData* rgctx_data; + struct Il2CppClass_1 _1; + VirtualInvokeData vtable[32]; +} Il2CppClass_Merged; + +typedef struct Il2CppTypeDefinitionSizes +{ + uint32_t instance_size; + int32_t native_size; + uint32_t static_fields_size; + uint32_t thread_static_fields_size; +} Il2CppTypeDefinitionSizes; +typedef struct Il2CppDomain +{ + Il2CppAppDomain* domain; + Il2CppAppDomainSetup* setup; + Il2CppAppContext* default_context; + const char* friendly_name; + uint32_t domain_id; + volatile int threadpool_jobs; + void* agent_info; +} Il2CppDomain; +typedef struct Il2CppAssemblyName +{ + const char* name; + const char* culture; + const uint8_t* public_key; + uint32_t hash_alg; + int32_t hash_len; + uint32_t flags; + int32_t major; + int32_t minor; + int32_t build; + int32_t revision; + uint8_t public_key_token[8]; +} Il2CppAssemblyName; +typedef struct Il2CppImage +{ + const char* name; + const char *nameNoExt; + Il2CppAssembly* assembly; + TypeDefinitionIndex typeStart; + uint32_t typeCount; + TypeDefinitionIndex exportedTypeStart; + uint32_t exportedTypeCount; + CustomAttributeIndex customAttributeStart; + uint32_t customAttributeCount; + MethodIndex entryPointIndex; + Il2CppNameToTypeDefinitionIndexHashTable * nameToClassHashTable; + const Il2CppCodeGenModule* codeGenModule; + uint32_t token; + uint8_t dynamic; +} Il2CppImage; +typedef struct Il2CppAssembly +{ + Il2CppImage* image; + uint32_t token; + int32_t referencedAssemblyStart; + int32_t referencedAssemblyCount; + Il2CppAssemblyName aname; +} Il2CppAssembly; +typedef struct Il2CppCodeGenOptions +{ + uint8_t enablePrimitiveValueTypeGenericSharing; + int maximumRuntimeGenericDepth; +} Il2CppCodeGenOptions; +typedef struct Il2CppTokenIndexPair +{ + uint32_t token; + int32_t index; +} Il2CppTokenIndexPair; +typedef struct Il2CppTokenRangePair +{ + uint32_t token; + Il2CppRange range; +} Il2CppTokenRangePair; +typedef struct Il2CppTokenIndexMethodTuple +{ + uint32_t token; + int32_t index; + void** method; + uint32_t genericMethodIndex; +} Il2CppTokenIndexMethodTuple; +typedef struct Il2CppTokenAdjustorThunkPair +{ + uint32_t token; + Il2CppMethodPointer adjustorThunk; +} Il2CppTokenAdjustorThunkPair; +typedef struct Il2CppWindowsRuntimeFactoryTableEntry +{ + const Il2CppType* type; + Il2CppMethodPointer createFactoryFunction; +} Il2CppWindowsRuntimeFactoryTableEntry; +typedef struct Il2CppCodeGenModule +{ + const char* moduleName; + const uint32_t methodPointerCount; + const Il2CppMethodPointer* methodPointers; + const uint32_t adjustorThunkCount; + const Il2CppTokenAdjustorThunkPair* adjustorThunks; + const int32_t* invokerIndices; + const uint32_t reversePInvokeWrapperCount; + const Il2CppTokenIndexMethodTuple* reversePInvokeWrapperIndices; + const uint32_t rgctxRangesCount; + const Il2CppTokenRangePair* rgctxRanges; + const uint32_t rgctxsCount; + const Il2CppRGCTXDefinition* rgctxs; + const Il2CppDebuggerMetadataRegistration *debuggerMetadata; +} Il2CppCodeGenModule; +typedef struct Il2CppCodeRegistration +{ + uint32_t reversePInvokeWrapperCount; + const Il2CppMethodPointer* reversePInvokeWrappers; + uint32_t genericMethodPointersCount; + const Il2CppMethodPointer* genericMethodPointers; + const Il2CppMethodPointer* genericAdjustorThunks; + uint32_t invokerPointersCount; + const InvokerMethod* invokerPointers; + CustomAttributeIndex customAttributeCount; + const CustomAttributesCacheGenerator* customAttributeGenerators; + uint32_t unresolvedVirtualCallCount; + const Il2CppMethodPointer* unresolvedVirtualCallPointers; + uint32_t interopDataCount; + Il2CppInteropData* interopData; + uint32_t windowsRuntimeFactoryCount; + Il2CppWindowsRuntimeFactoryTableEntry* windowsRuntimeFactoryTable; + uint32_t codeGenModulesCount; + const Il2CppCodeGenModule** codeGenModules; +} Il2CppCodeRegistration; +typedef struct Il2CppMetadataRegistration +{ + int32_t genericClassesCount; + Il2CppGenericClass* const * genericClasses; + int32_t genericInstsCount; + const Il2CppGenericInst* const * genericInsts; + int32_t genericMethodTableCount; + const Il2CppGenericMethodFunctionsDefinitions* genericMethodTable; + int32_t typesCount; + const Il2CppType* const * types; + int32_t methodSpecsCount; + const Il2CppMethodSpec* methodSpecs; + FieldIndex fieldOffsetsCount; + const int32_t** fieldOffsets; + TypeDefinitionIndex typeDefinitionsSizesCount; + const Il2CppTypeDefinitionSizes** typeDefinitionsSizes; + const size_t metadataUsagesCount; + void** const* metadataUsages; +} Il2CppMetadataRegistration; +typedef struct Il2CppPerfCounters +{ + uint32_t jit_methods; + uint32_t jit_bytes; + uint32_t jit_time; + uint32_t jit_failures; + uint32_t exceptions_thrown; + uint32_t exceptions_filters; + uint32_t exceptions_finallys; + uint32_t exceptions_depth; + uint32_t aspnet_requests_queued; + uint32_t aspnet_requests; + uint32_t gc_collections0; + uint32_t gc_collections1; + uint32_t gc_collections2; + uint32_t gc_promotions0; + uint32_t gc_promotions1; + uint32_t gc_promotion_finalizers; + uint32_t gc_gen0size; + uint32_t gc_gen1size; + uint32_t gc_gen2size; + uint32_t gc_lossize; + uint32_t gc_fin_survivors; + uint32_t gc_num_handles; + uint32_t gc_allocated; + uint32_t gc_induced; + uint32_t gc_time; + uint32_t gc_total_bytes; + uint32_t gc_committed_bytes; + uint32_t gc_reserved_bytes; + uint32_t gc_num_pinned; + uint32_t gc_sync_blocks; + uint32_t remoting_calls; + uint32_t remoting_channels; + uint32_t remoting_proxies; + uint32_t remoting_classes; + uint32_t remoting_objects; + uint32_t remoting_contexts; + uint32_t loader_classes; + uint32_t loader_total_classes; + uint32_t loader_appdomains; + uint32_t loader_total_appdomains; + uint32_t loader_assemblies; + uint32_t loader_total_assemblies; + uint32_t loader_failures; + uint32_t loader_bytes; + uint32_t loader_appdomains_uloaded; + uint32_t thread_contentions; + uint32_t thread_queue_len; + uint32_t thread_queue_max; + uint32_t thread_num_logical; + uint32_t thread_num_physical; + uint32_t thread_cur_recognized; + uint32_t thread_num_recognized; + uint32_t interop_num_ccw; + uint32_t interop_num_stubs; + uint32_t interop_num_marshals; + uint32_t security_num_checks; + uint32_t security_num_link_checks; + uint32_t security_time; + uint32_t security_depth; + uint32_t unused; + uint64_t threadpool_workitems; + uint64_t threadpool_ioworkitems; + unsigned int threadpool_threads; + unsigned int threadpool_iothreads; +} Il2CppPerfCounters; +typedef struct Il2CppClass Il2CppClass; +typedef struct MethodInfo MethodInfo; +typedef struct PropertyInfo PropertyInfo; +typedef struct FieldInfo FieldInfo; +typedef struct EventInfo EventInfo; +typedef struct Il2CppType Il2CppType; +typedef struct Il2CppAssembly Il2CppAssembly; +typedef struct Il2CppException Il2CppException; +typedef struct Il2CppImage Il2CppImage; +typedef struct Il2CppDomain Il2CppDomain; +typedef struct Il2CppString Il2CppString; +typedef struct Il2CppReflectionMethod Il2CppReflectionMethod; +typedef struct Il2CppAsyncCall Il2CppAsyncCall; +typedef struct Il2CppIUnknown Il2CppIUnknown; +typedef struct Il2CppWaitHandle Il2CppWaitHandle; +typedef struct MonitorData MonitorData; +typedef struct Il2CppReflectionAssembly Il2CppReflectionAssembly; +typedef Il2CppClass Il2CppVTable; +typedef struct Il2CppObject { union { - void* Reserved1; - char Reserved2[24]; - } Reserved; -} Il2CppHStringHeader; -typedef struct Il2CppIUnknown + Il2CppClass *klass; + Il2CppVTable *vtable; + } Il2CppClass; + MonitorData *monitor; +} Il2CppObject; +typedef int32_t il2cpp_array_lower_bound_t; +typedef struct Il2CppArrayBounds { - static const Il2CppGuid IID; -} Il2CppIUnknown; -typedef struct Il2CppISequentialStream + il2cpp_array_size_t length; + il2cpp_array_lower_bound_t lower_bound; +} Il2CppArrayBounds; +typedef struct Il2CppArray { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppISequentialStream; -typedef struct Il2CppIStream + Il2CppObject obj; + Il2CppArrayBounds *bounds; + il2cpp_array_size_t max_length; +} Il2CppArray; +typedef struct Il2CppArraySize { - Il2CppISequentialStream ISequentialStream; - static const Il2CppGuid IID; -} Il2CppIStream; -typedef struct Il2CppIMarshal + Il2CppObject obj; + Il2CppArrayBounds *bounds; + il2cpp_array_size_t max_length; + __declspec(align(8)) void* vector[32]; +} Il2CppArraySize; +typedef struct Il2CppString { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIMarshal; -typedef struct Il2CppIManagedObject + Il2CppObject object; + int32_t length; + Il2CppChar chars[32]; +} Il2CppString; +typedef struct Il2CppReflectionType { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIManagedObject; -typedef struct Il2CppIManagedObjectHolder + Il2CppObject object; + const Il2CppType *type; +} Il2CppReflectionType; +typedef struct Il2CppReflectionRuntimeType { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIManagedObjectHolder; -typedef struct Il2CppIInspectable + Il2CppReflectionType type; + Il2CppObject *type_info; + Il2CppObject* genericCache; + Il2CppObject* serializationCtor; +} Il2CppReflectionRuntimeType; +typedef struct Il2CppReflectionMonoType { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIInspectable; -typedef struct Il2CppIActivationFactory + Il2CppReflectionRuntimeType type; +} Il2CppReflectionMonoType; +typedef struct Il2CppReflectionEvent { - Il2CppIInspectable IInspectable; - static const Il2CppGuid IID; -} Il2CppIActivationFactory; -typedef struct Il2CppIRestrictedErrorInfo + Il2CppObject object; + Il2CppObject *cached_add_event; +} Il2CppReflectionEvent; +typedef struct Il2CppReflectionMonoEvent { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIRestrictedErrorInfo; -typedef struct Il2CppILanguageExceptionErrorInfo + Il2CppReflectionEvent event; + Il2CppReflectionType* reflectedType; + const EventInfo* eventInfo; +} Il2CppReflectionMonoEvent; +typedef struct Il2CppReflectionMonoEventInfo { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppILanguageExceptionErrorInfo; -typedef struct Il2CppIAgileObject + Il2CppReflectionType* declaringType; + Il2CppReflectionType* reflectedType; + Il2CppString* name; + Il2CppReflectionMethod* addMethod; + Il2CppReflectionMethod* removeMethod; + Il2CppReflectionMethod* raiseMethod; + uint32_t eventAttributes; + Il2CppArray* otherMethods; +} Il2CppReflectionMonoEventInfo; +typedef struct Il2CppReflectionField { - Il2CppIUnknown IUnknown; - static const Il2CppGuid IID; -} Il2CppIAgileObject; + Il2CppObject object; + Il2CppClass *klass; + FieldInfo *field; + Il2CppString *name; + Il2CppReflectionType *type; + uint32_t attrs; +} Il2CppReflectionField; +typedef struct Il2CppReflectionProperty +{ + Il2CppObject object; + Il2CppClass *klass; + const PropertyInfo *property; +} Il2CppReflectionProperty; +typedef struct Il2CppReflectionMethod +{ + Il2CppObject object; + const MethodInfo *method; + Il2CppString *name; + Il2CppReflectionType *reftype; +} Il2CppReflectionMethod; +typedef struct Il2CppReflectionGenericMethod +{ + Il2CppReflectionMethod base; +} Il2CppReflectionGenericMethod; +typedef struct Il2CppMethodInfo +{ + Il2CppReflectionType *parent; + Il2CppReflectionType *ret; + uint32_t attrs; + uint32_t implattrs; + uint32_t callconv; +} Il2CppMethodInfo; +typedef struct Il2CppPropertyInfo +{ + Il2CppReflectionType* parent; + Il2CppReflectionType* declaringType; + Il2CppString *name; + Il2CppReflectionMethod *get; + Il2CppReflectionMethod *set; + uint32_t attrs; +} Il2CppPropertyInfo; +typedef struct Il2CppReflectionParameter +{ + Il2CppObject object; + Il2CppReflectionType *ClassImpl; + Il2CppObject *DefaultValueImpl; + Il2CppObject *MemberImpl; + Il2CppString *NameImpl; + int32_t PositionImpl; + uint32_t AttrsImpl; + Il2CppObject *MarshalAsImpl; +} Il2CppReflectionParameter; +typedef struct Il2CppReflectionModule +{ + Il2CppObject obj; + const Il2CppImage* image; + Il2CppReflectionAssembly* assembly; + Il2CppString* fqname; + Il2CppString* name; + Il2CppString* scopename; + uint8_t is_resource; + uint32_t token; +} Il2CppReflectionModule; +typedef struct Il2CppReflectionAssemblyName +{ + Il2CppObject obj; + Il2CppString *name; + Il2CppString *codebase; + int32_t major, minor, build, revision; + Il2CppObject *cultureInfo; + uint32_t flags; + uint32_t hashalg; + Il2CppObject *keypair; + Il2CppArray *publicKey; + Il2CppArray *keyToken; + uint32_t versioncompat; + Il2CppObject *version; + uint32_t processor_architecture; + uint32_t contentType; +} Il2CppReflectionAssemblyName; +typedef struct Il2CppReflectionAssembly +{ + Il2CppObject object; + const Il2CppAssembly *assembly; + Il2CppObject *resolve_event_holder; + Il2CppObject *evidence; + Il2CppObject *minimum; + Il2CppObject *optional; + Il2CppObject *refuse; + Il2CppObject *granted; + Il2CppObject *denied; + uint8_t from_byte_array; + Il2CppString *name; +} Il2CppReflectionAssembly; +typedef struct Il2CppReflectionMarshal +{ + Il2CppObject object; + int32_t count; + int32_t type; + int32_t eltype; + Il2CppString* guid; + Il2CppString* mcookie; + Il2CppString* marshaltype; + Il2CppObject* marshaltyperef; + int32_t param_num; + uint8_t has_size; +} Il2CppReflectionMarshal; +typedef struct Il2CppReflectionPointer +{ + Il2CppObject object; + void* data; + Il2CppReflectionType* type; +} Il2CppReflectionPointer; +typedef struct Il2CppInternalThread +{ + Il2CppObject obj; + int lock_thread_id; + void* handle; + void* native_handle; + Il2CppArray* cached_culture_info; + Il2CppChar* name; + int name_len; + uint32_t state; + Il2CppObject* abort_exc; + int abort_state_handle; + uint64_t tid; + intptr_t debugger_thread; + void** static_data; + void* runtime_thread_info; + Il2CppObject* current_appcontext; + Il2CppObject* root_domain_thread; + Il2CppArray* _serialized_principal; + int _serialized_principal_version; + void* appdomain_refs; + int32_t interruption_requested; + void* synch_cs; + uint8_t threadpool_thread; + uint8_t thread_interrupt_requested; + int stack_size; + uint8_t apartment_state; + int critical_region_level; + int managed_id; + uint32_t small_id; + void* manage_callback; + void* interrupt_on_stop; + intptr_t flags; + void* thread_pinning_ref; + void* abort_protected_block_count; + int32_t priority; + void* owned_mutexes; + void * suspended; + int32_t self_suspended; + size_t thread_state; + size_t unused2; + void* last; +} Il2CppInternalThread; +typedef struct Il2CppIOSelectorJob +{ + Il2CppObject object; + int32_t operation; + Il2CppObject *callback; + Il2CppObject *state; +} Il2CppIOSelectorJob; +typedef enum +{ + Il2Cpp_CallType_Sync = 0, + Il2Cpp_CallType_BeginInvoke = 1, + Il2Cpp_CallType_EndInvoke = 2, + Il2Cpp_CallType_OneWay = 3 +} Il2CppCallType; +typedef struct Il2CppMethodMessage +{ + Il2CppObject obj; + Il2CppReflectionMethod *method; + Il2CppArray *args; + Il2CppArray *names; + Il2CppArray *arg_types; + Il2CppObject *ctx; + Il2CppObject *rval; + Il2CppObject *exc; + Il2CppAsyncResult *async_result; + uint32_t call_type; +} Il2CppMethodMessage; +typedef struct Il2CppAppDomainSetup +{ + Il2CppObject object; + Il2CppString* application_base; + Il2CppString* application_name; + Il2CppString* cache_path; + Il2CppString* configuration_file; + Il2CppString* dynamic_base; + Il2CppString* license_file; + Il2CppString* private_bin_path; + Il2CppString* private_bin_path_probe; + Il2CppString* shadow_copy_directories; + Il2CppString* shadow_copy_files; + uint8_t publisher_policy; + uint8_t path_changed; + int loader_optimization; + uint8_t disallow_binding_redirects; + uint8_t disallow_code_downloads; + Il2CppObject* activation_arguments; + Il2CppObject* domain_initializer; + Il2CppObject* application_trust; + Il2CppArray* domain_initializer_args; + uint8_t disallow_appbase_probe; + Il2CppArray* configuration_bytes; + Il2CppArray* serialized_non_primitives; +} Il2CppAppDomainSetup; +typedef struct Il2CppThread +{ + Il2CppObject obj; + Il2CppInternalThread* internal_thread; + Il2CppObject* start_obj; + Il2CppException* pending_exception; + Il2CppObject* principal; + int32_t principal_version; + Il2CppDelegate* delegate; + Il2CppObject* executionContext; + uint8_t executionContextBelongsToOuterScope; +} Il2CppThread; +typedef struct Il2CppException +{ + Il2CppObject object; + Il2CppString* className; + Il2CppString* message; + Il2CppObject* _data; + Il2CppException* inner_ex; + Il2CppString* _helpURL; + Il2CppArray* trace_ips; + Il2CppString* stack_trace; + Il2CppString* remote_stack_trace; + int remote_stack_index; + Il2CppObject* _dynamicMethods; + il2cpp_hresult_t hresult; + Il2CppString* source; + Il2CppObject* safeSerializationManager; + Il2CppArray* captured_traces; + Il2CppArray* native_trace_ips; +} Il2CppException; +typedef struct Il2CppSystemException +{ + Il2CppException base; +} Il2CppSystemException; +typedef struct Il2CppArgumentException +{ + Il2CppException base; + Il2CppString *argName; +} Il2CppArgumentException; +typedef struct Il2CppTypedRef +{ + const Il2CppType *type; + void* value; + Il2CppClass *klass; +} Il2CppTypedRef; +typedef struct Il2CppDelegate +{ + Il2CppObject object; + Il2CppMethodPointer method_ptr; + InvokerMethod invoke_impl; + Il2CppObject *target; + const MethodInfo *method; + void* delegate_trampoline; + intptr_t extraArg; + uint8_t **method_code; + Il2CppReflectionMethod *method_info; + Il2CppReflectionMethod *original_method_info; + Il2CppObject *data; + uint8_t method_is_virtual; +} Il2CppDelegate; +typedef struct Il2CppMulticastDelegate +{ + Il2CppDelegate delegate; + Il2CppArray *delegates; +} Il2CppMulticastDelegate; +typedef struct Il2CppMarshalByRefObject +{ + Il2CppObject obj; + Il2CppObject *identity; +} Il2CppMarshalByRefObject; +typedef struct Il2CppAppDomain +{ + Il2CppMarshalByRefObject mbr; + Il2CppDomain *data; +} Il2CppAppDomain; +typedef struct Il2CppStackFrame +{ + Il2CppObject obj; + int32_t il_offset; + int32_t native_offset; + uint64_t methodAddress; + uint32_t methodIndex; + Il2CppReflectionMethod *method; + Il2CppString *filename; + int32_t line; + int32_t column; + Il2CppString *internal_method_name; +} Il2CppStackFrame; +typedef struct Il2CppDateTimeFormatInfo +{ + Il2CppObject obj; + Il2CppObject* CultureData; + Il2CppString* Name; + Il2CppString* LangName; + Il2CppObject* CompareInfo; + Il2CppObject* CultureInfo; + Il2CppString* AMDesignator; + Il2CppString* PMDesignator; + Il2CppString* DateSeparator; + Il2CppString* GeneralShortTimePattern; + Il2CppString* GeneralLongTimePattern; + Il2CppString* TimeSeparator; + Il2CppString* MonthDayPattern; + Il2CppString* DateTimeOffsetPattern; + Il2CppObject* Calendar; + uint32_t FirstDayOfWeek; + uint32_t CalendarWeekRule; + Il2CppString* FullDateTimePattern; + Il2CppArray* AbbreviatedDayNames; + Il2CppArray* ShortDayNames; + Il2CppArray* DayNames; + Il2CppArray* AbbreviatedMonthNames; + Il2CppArray* MonthNames; + Il2CppArray* GenitiveMonthNames; + Il2CppArray* GenitiveAbbreviatedMonthNames; + Il2CppArray* LeapYearMonthNames; + Il2CppString* LongDatePattern; + Il2CppString* ShortDatePattern; + Il2CppString* YearMonthPattern; + Il2CppString* LongTimePattern; + Il2CppString* ShortTimePattern; + Il2CppArray* YearMonthPatterns; + Il2CppArray* ShortDatePatterns; + Il2CppArray* LongDatePatterns; + Il2CppArray* ShortTimePatterns; + Il2CppArray* LongTimePatterns; + Il2CppArray* EraNames; + Il2CppArray* AbbrevEraNames; + Il2CppArray* AbbrevEnglishEraNames; + Il2CppArray* OptionalCalendars; + uint8_t readOnly; + int32_t FormatFlags; + int32_t CultureID; + uint8_t UseUserOverride; + uint8_t UseCalendarInfo; + int32_t DataItem; + uint8_t IsDefaultCalendar; + Il2CppArray* DateWords; + Il2CppString* FullTimeSpanPositivePattern; + Il2CppString* FullTimeSpanNegativePattern; + Il2CppArray* dtfiTokenHash; +} Il2CppDateTimeFormatInfo; +typedef struct Il2CppNumberFormatInfo +{ + Il2CppObject obj; + Il2CppArray* numberGroupSizes; + Il2CppArray* currencyGroupSizes; + Il2CppArray* percentGroupSizes; + Il2CppString* positiveSign; + Il2CppString* negativeSign; + Il2CppString* numberDecimalSeparator; + Il2CppString* numberGroupSeparator; + Il2CppString* currencyGroupSeparator; + Il2CppString* currencyDecimalSeparator; + Il2CppString* currencySymbol; + Il2CppString* ansiCurrencySymbol; + Il2CppString* naNSymbol; + Il2CppString* positiveInfinitySymbol; + Il2CppString* negativeInfinitySymbol; + Il2CppString* percentDecimalSeparator; + Il2CppString* percentGroupSeparator; + Il2CppString* percentSymbol; + Il2CppString* perMilleSymbol; + Il2CppArray* nativeDigits; + int dataItem; + int numberDecimalDigits; + int currencyDecimalDigits; + int currencyPositivePattern; + int currencyNegativePattern; + int numberNegativePattern; + int percentPositivePattern; + int percentNegativePattern; + int percentDecimalDigits; + int digitSubstitution; + uint8_t readOnly; + uint8_t useUserOverride; + uint8_t isInvariant; + uint8_t validForParseAsNumber; + uint8_t validForParseAsCurrency; +} Il2CppNumberFormatInfo; +typedef struct Il2CppCultureData +{ + Il2CppObject obj; + Il2CppString *AMDesignator; + Il2CppString *PMDesignator; + Il2CppString *TimeSeparator; + Il2CppArray *LongTimePatterns; + Il2CppArray *ShortTimePatterns; + uint32_t FirstDayOfWeek; + uint32_t CalendarWeekRule; +} Il2CppCultureData; +typedef struct Il2CppCalendarData +{ + Il2CppObject obj; + Il2CppString *NativeName; + Il2CppArray *ShortDatePatterns; + Il2CppArray *YearMonthPatterns; + Il2CppArray *LongDatePatterns; + Il2CppString *MonthDayPattern; + Il2CppArray *EraNames; + Il2CppArray *AbbreviatedEraNames; + Il2CppArray *AbbreviatedEnglishEraNames; + Il2CppArray *DayNames; + Il2CppArray *AbbreviatedDayNames; + Il2CppArray *SuperShortDayNames; + Il2CppArray *MonthNames; + Il2CppArray *AbbreviatedMonthNames; + Il2CppArray *GenitiveMonthNames; + Il2CppArray *GenitiveAbbreviatedMonthNames; +} Il2CppCalendarData; +typedef struct Il2CppCultureInfo +{ + Il2CppObject obj; + uint8_t is_read_only; + int32_t lcid; + int32_t parent_lcid; + int32_t datetime_index; + int32_t number_index; + int32_t default_calendar_type; + uint8_t use_user_override; + Il2CppNumberFormatInfo* number_format; + Il2CppDateTimeFormatInfo* datetime_format; + Il2CppObject* textinfo; + Il2CppString* name; + Il2CppString* englishname; + Il2CppString* nativename; + Il2CppString* iso3lang; + Il2CppString* iso2lang; + Il2CppString* win3lang; + Il2CppString* territory; + Il2CppArray* native_calendar_names; + Il2CppString* compareinfo; + const void* text_info_data; + int dataItem; + Il2CppObject* calendar; + Il2CppObject* parent_culture; + uint8_t constructed; + Il2CppArray* cached_serialized_form; + Il2CppObject* cultureData; + uint8_t isInherited; +} Il2CppCultureInfo; +typedef struct Il2CppRegionInfo +{ + Il2CppObject obj; + int32_t geo_id; + Il2CppString* iso2name; + Il2CppString* iso3name; + Il2CppString* win3name; + Il2CppString* english_name; + Il2CppString* native_name; + Il2CppString* currency_symbol; + Il2CppString* iso_currency_symbol; + Il2CppString* currency_english_name; + Il2CppString* currency_native_name; +} Il2CppRegionInfo; +typedef struct Il2CppSafeHandle +{ + Il2CppObject base; + void* handle; + int state; + uint8_t owns_handle; + uint8_t fullyInitialized; +} Il2CppSafeHandle; +typedef struct Il2CppStringBuilder Il2CppStringBuilder; +typedef struct Il2CppStringBuilder +{ + Il2CppObject object; + Il2CppArray* chunkChars; + Il2CppStringBuilder* chunkPrevious; + int chunkLength; + int chunkOffset; + int maxCapacity; +} Il2CppStringBuilder; +typedef struct Il2CppSocketAddress +{ + Il2CppObject base; + int m_Size; + Il2CppArray* data; + uint8_t m_changed; + int m_hash; +} Il2CppSocketAddress; +typedef struct Il2CppSortKey +{ + Il2CppObject base; + Il2CppString *str; + Il2CppArray *key; + int32_t options; + int32_t lcid; +} Il2CppSortKey; +typedef struct Il2CppErrorWrapper +{ + Il2CppObject base; + int32_t errorCode; +} Il2CppErrorWrapper; +typedef struct Il2CppAsyncResult +{ + Il2CppObject base; + Il2CppObject *async_state; + Il2CppWaitHandle *handle; + Il2CppDelegate *async_delegate; + void* data; + Il2CppAsyncCall *object_data; + uint8_t sync_completed; + uint8_t completed; + uint8_t endinvoke_called; + Il2CppObject *async_callback; + Il2CppObject *execution_context; + Il2CppObject *original_context; +} Il2CppAsyncResult; +typedef struct Il2CppAsyncCall +{ + Il2CppObject base; + Il2CppMethodMessage *msg; + MethodInfo *cb_method; + Il2CppDelegate *cb_target; + Il2CppObject *state; + Il2CppObject *res; + Il2CppArray *out_args; +} Il2CppAsyncCall; +typedef struct Il2CppExceptionWrapper Il2CppExceptionWrapper; +typedef struct Il2CppExceptionWrapper +{ + Il2CppException* ex; +} Il2CppExceptionWrapper; +typedef struct Il2CppIOAsyncResult +{ + Il2CppObject base; + Il2CppDelegate* callback; + Il2CppObject* state; + Il2CppWaitHandle* wait_handle; + uint8_t completed_synchronously; + uint8_t completed; +} Il2CppIOAsyncResult; +typedef struct Il2CppSocketAsyncResult +{ + Il2CppIOAsyncResult base; + Il2CppObject* socket; + int32_t operation; + Il2CppException* delayedException; + Il2CppObject* endPoint; + Il2CppArray* buffer; + int32_t offset; + int32_t size; + int32_t socket_flags; + Il2CppObject* acceptSocket; + Il2CppArray* addresses; + int32_t port; + Il2CppObject* buffers; + uint8_t reuseSocket; + int32_t currentAddress; + Il2CppObject* acceptedSocket; + int32_t total; + int32_t error; + int32_t endCalled; +} Il2CppSocketAsyncResult; +typedef enum Il2CppResourceLocation +{ + IL2CPP_RESOURCE_LOCATION_EMBEDDED = 1, + IL2CPP_RESOURCE_LOCATION_ANOTHER_ASSEMBLY = 2, + IL2CPP_RESOURCE_LOCATION_IN_MANIFEST = 4 +} Il2CppResourceLocation; +typedef struct Il2CppManifestResourceInfo +{ + Il2CppObject object; + Il2CppReflectionAssembly* assembly; + Il2CppString* filename; + uint32_t location; +} Il2CppManifestResourceInfo; +typedef struct Il2CppAppContext +{ + Il2CppObject obj; + int32_t domain_id; + int32_t context_id; + void* static_data; +} Il2CppAppContext; +typedef struct Il2CppDecimal +{ + uint16_t reserved; + union + { + struct + { + uint8_t scale; + uint8_t sign; + } u; + uint16_t signscale; + } u; + uint32_t Hi32; + union + { + struct + { + uint32_t Lo32; + uint32_t Mid32; + } v; + uint64_t Lo64; + } v; +} Il2CppDecimal; +typedef struct Il2CppDouble +{ + uint32_t mantLo : 32; + uint32_t mantHi : 20; + uint32_t exp : 11; + uint32_t sign : 1; +} Il2CppDouble; +typedef union Il2CppDouble_double +{ + Il2CppDouble s; + double d; +} Il2CppDouble_double; +typedef enum Il2CppDecimalCompareResult +{ + IL2CPP_DECIMAL_CMP_LT = -1, + IL2CPP_DECIMAL_CMP_EQ, + IL2CPP_DECIMAL_CMP_GT +} Il2CppDecimalCompareResult; +typedef struct Il2CppSingle +{ + uint32_t mant : 23; + uint32_t exp : 8; + uint32_t sign : 1; +} Il2CppSingle; +typedef union Il2CppSingle_float +{ + Il2CppSingle s; + float f; +} Il2CppSingle_float; #pragma warning(disable : 4369) #pragma warning(disable : 4309) @@ -3407,7 +3408,7 @@ namespace app { void* _specialPacketDeserializedCallback; }; - struct NetworkManager_1 { + struct MoleMole_NetworkManager { struct NetworkManager_1__Class* klass; MonitorData* monitor; struct NetworkManager_1__Fields fields; @@ -5223,7 +5224,7 @@ namespace app { struct Coroutine* _delayTransmitInCSCoroutine; }; - struct LoadingManager { + struct MoleMole_LoadingManager { struct LoadingManager__Class* klass; MonitorData* monitor; struct LoadingManager__Fields fields; @@ -6282,7 +6283,7 @@ namespace app { struct Dictionary_2_System_String_MoleMole_MapModule_MoleMole_MapModule_PrefabHandle_* _prefabHandleDict; }; - struct MapModule { + struct MoleMole_MapModule { struct MapModule__Class* klass; MonitorData* monitor; struct MapModule__Fields fields; @@ -7403,7 +7404,7 @@ namespace app { struct MotionInfo__Fields fields; }; - struct Singleton_1_EntityManager_ { + struct Singleton_1_MoleMole_EntityManager_ { struct Singleton_1_EntityManager___Class* klass; MonitorData* monitor; }; @@ -7531,7 +7532,7 @@ namespace app { struct Vector3 _sharedLocalAvatarPosition; }; - struct EntityManager { + struct MoleMole_EntityManager { void* klass; MonitorData* monitor; struct EntityManager__Fields fields; @@ -9205,7 +9206,7 @@ namespace app { struct Camera* _uiCamera; }; - struct UIManager { + struct MoleMole_UIManager { struct UIManager__Class* klass; MonitorData* monitor; struct UIManager__Fields fields; @@ -9264,7 +9265,7 @@ namespace app { UGCDirectedForceType = 0x0000000d, }; - struct ItemModule { + struct MoleMole_ItemModule { struct ItemModule__Class* klass; MonitorData* monitor; // struct ItemModule__Fields fields; @@ -9464,7 +9465,7 @@ namespace app { bool GEPOJPNFMKO; }; - struct EventManager { + struct MoleMole_EventManager { struct ADOCDLJKPGF__Class* klass; MonitorData* monitor; struct ADOCDLJKPGF__Fields fields; @@ -9700,7 +9701,7 @@ namespace app { struct JIBKJBJNFED* LGADGGJMODA; }; - struct PlayerModule { + struct MoleMole_PlayerModule { struct PlayerModule__Class* klass; MonitorData* monitor; struct NEOGDEDNDHF__Fields fields; @@ -9761,7 +9762,7 @@ namespace app { bool NMJJKJPPIGC; }; - struct MapManager { + struct MoleMole_MapManager { struct MapManager__Class* klass; MonitorData* monitor; struct MHCEDJLGNMG__Fields fields; @@ -10056,7 +10057,7 @@ namespace app { struct GameObject* _tileMeshObjectRoot; }; - struct ScenePropManager + struct MoleMole_ScenePropManager { struct FKHDAEKGMKC__Class* klass; MonitorData* monitor; diff --git a/cheat-library/src/user/cheat/ILPatternScanner.cpp b/cheat-library/src/user/cheat/ILPatternScanner.cpp index a506a64..89adbf4 100644 --- a/cheat-library/src/user/cheat/ILPatternScanner.cpp +++ b/cheat-library/src/user/cheat/ILPatternScanner.cpp @@ -343,6 +343,7 @@ uintptr_t ILPatternScanner::FindFunctionEntry(uintptr_t address) void ILPatternScanner::LoadMethodPointers() { + /* Outdated. Need update to version 2.7 auto info = GetMetadataInfo(); #define LOAD_METHOD_POINTERS(countField, field) LOG_DEBUG( #field ": %d", info->codeRegistration->##countField); \ @@ -359,6 +360,7 @@ void ILPatternScanner::LoadMethodPointers() std::sort(m_MethodPointers.begin(), m_MethodPointers.end()); LOG_DEBUG("Loaded %llu method pointers.", m_MethodPointers.size()); + */ } template @@ -369,6 +371,7 @@ static T MetadataOffset(void* metadata, size_t sectionOffset, size_t itemIndex) const MethodInfo* ILPatternScanner::GetMethodInfoFromIndex(uint32_t methodIndex) { + /* Outdated. Need update to version 2.7 SET_API_FUNC_P(Il2CppGenericMethod*, GetGenericMethodFromIndex, (uint32_t index), "40 53 48 83 EC 20 48 8B 05 ?? ?? ?? ?? 48 63"); GET_FUNC_BY_XREF(MethodInfo*, GetMethod, (const Il2CppGenericMethod * gmethod), "E8 ?? ?? ?? ?? 48 8B C8 0F B7 FE", 1); @@ -383,6 +386,8 @@ const MethodInfo* ILPatternScanner::GetMethodInfoFromIndex(uint32_t methodIndex) return GetMethod(GetGenericMethodFromIndex(index)); else return GetMethodInfoFromMethodDefinitionIndex(index); + */ + return nullptr; } std::string ILPatternScanner::ComputeGenericParamsPrefix(const Il2CppGenericInst* inst) @@ -466,6 +471,7 @@ std::string ILPatternScanner::ComputeInspectorMethodName(const MethodInfo* metho void ILPatternScanner::LoadUsage() { + /* Outdated. Need update to version 2.7. SET_API_FUNC_P(Il2CppClass*, GetTypeInfoFromTypeIndex, (uint32_t index), "48 83 EC 28 83 F9 FF 75"); auto info = GetMetadataInfo(); @@ -533,7 +539,7 @@ void ILPatternScanner::LoadUsage() } } } - LoadMetadata(); + LoadMetadata();*/ } void ILPatternScanner::LoadMetadata() diff --git a/cheat-library/src/user/cheat/cheat.cpp b/cheat-library/src/user/cheat/cheat.cpp index 030fd8f..85afd9e 100644 --- a/cheat-library/src/user/cheat/cheat.cpp +++ b/cheat-library/src/user/cheat/cheat.cpp @@ -127,7 +127,7 @@ namespace cheat static uint32_t _lastUserID = 0; - auto playerModule = GET_SINGLETON(PlayerModule); + auto playerModule = GET_SINGLETON(MoleMole_PlayerModule); if (playerModule == nullptr || playerModule->fields._accountData_k__BackingField == nullptr) return; @@ -158,7 +158,7 @@ namespace cheat static void InstallEventHooks() { HookManager::install(app::GameManager_Update, GameManager_Update_Hook); - HookManager::install(app::LevelSyncCombatPlugin_RequestSceneEntityMoveReq, LevelSyncCombatPlugin_RequestSceneEntityMoveReq_Hook); + HookManager::install(app::MoleMole_LevelSyncCombatPlugin_RequestSceneEntityMoveReq, LevelSyncCombatPlugin_RequestSceneEntityMoveReq_Hook); } } diff --git a/cheat-library/src/user/cheat/esp/ESPRender.cpp b/cheat-library/src/user/cheat/esp/ESPRender.cpp index 2fd5e41..ab8e101 100644 --- a/cheat-library/src/user/cheat/esp/ESPRender.cpp +++ b/cheat-library/src/user/cheat/esp/ESPRender.cpp @@ -26,8 +26,8 @@ namespace cheat::feature::esp::render s_Camera = nullptr; - auto loadingManager = GET_SINGLETON(LoadingManager); - if (loadingManager == nullptr || !app::LoadingManager_IsLoaded(loadingManager, nullptr)) + auto loadingManager = GET_SINGLETON(MoleMole_LoadingManager); + if (loadingManager == nullptr || !app::MoleMole_LoadingManager_IsLoaded(loadingManager, nullptr)) return; SAFE_BEGIN(); diff --git a/cheat-library/src/user/cheat/game/CacheFilterExecutor.cpp b/cheat-library/src/user/cheat/game/CacheFilterExecutor.cpp index a491f98..77302f9 100644 --- a/cheat-library/src/user/cheat/game/CacheFilterExecutor.cpp +++ b/cheat-library/src/user/cheat/game/CacheFilterExecutor.cpp @@ -24,7 +24,7 @@ namespace cheat::game entityFilters[filter] = { false, 0 }; auto& entry = entityFilters[filter]; - auto timestamp = app::TimeUtil_get_NowTimeStamp(nullptr); + auto timestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr); if (entry.second + m_LifeTime > timestamp) return entry.first; diff --git a/cheat-library/src/user/cheat/game/Entity.cpp b/cheat-library/src/user/cheat/game/Entity.cpp index f998d85..71f564d 100644 --- a/cheat-library/src/user/cheat/game/Entity.cpp +++ b/cheat-library/src/user/cheat/game/Entity.cpp @@ -14,7 +14,7 @@ namespace cheat::game app::String* GetRawName(game::Entity* entity) { SAFE_BEGIN(); - return app::BaseEntity_ToStringRelease(entity->raw(), nullptr); + return app::MoleMole_BaseEntity_ToStringRelease(entity->raw(), nullptr); SAFE_ERROR(); return nullptr; SAFE_END(); @@ -61,7 +61,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return {}; - return app::BaseEntity_GetRelativePosition(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetRelativePosition(m_RawEntity, nullptr); } app::Vector3 Entity::absolutePosition() @@ -69,7 +69,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return {}; - return app::BaseEntity_GetAbsolutePosition(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetAbsolutePosition(m_RawEntity, nullptr); } app::Vector2 Entity::levelPosition() @@ -93,7 +93,7 @@ namespace cheat::game if (rawEntity == nullptr) return 10000; - auto point = app::BaseEntity_GetRelativePosition(rawEntity, nullptr); + auto point = app::MoleMole_BaseEntity_GetRelativePosition(rawEntity, nullptr); return distance(point); } @@ -149,7 +149,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return; - app::BaseEntity_SetRelativePosition(m_RawEntity, value, true, nullptr); + app::MoleMole_BaseEntity_SetRelativePosition(m_RawEntity, value, true, nullptr); } void Entity::setAbsolutePosition(const app::Vector3& value) @@ -157,15 +157,15 @@ namespace cheat::game if (m_RawEntity == nullptr) return; - app::BaseEntity_SetAbsolutePosition(m_RawEntity, value, true, nullptr); + app::MoleMole_BaseEntity_SetAbsolutePosition(m_RawEntity, value, true, nullptr); } bool Entity::isLoaded() { - if (m_RawEntity == nullptr || !app::BaseEntity_IsActive(m_RawEntity, nullptr)) + if (m_RawEntity == nullptr || !app::MoleMole_BaseEntity_IsActive(m_RawEntity, nullptr)) return false; - m_IsLoaded = m_IsLoaded || app::BaseEntity_get_rootGameObject(m_RawEntity, nullptr); + m_IsLoaded = m_IsLoaded || app::MoleMole_BaseEntity_get_rootGameObject(m_RawEntity, nullptr); return m_IsLoaded; } @@ -175,7 +175,7 @@ namespace cheat::game return nullptr; SAFE_BEGIN(); - return app::BaseEntity_GetMoveComponent_1(m_RawEntity, *app::BaseEntity_GetMoveComponent_1__MethodInfo); + return app::MoleMole_BaseEntity_GetMoveComponent_1(m_RawEntity, *app::MoleMole_BaseEntity_GetMoveComponent_1__MethodInfo); SAFE_ERROR(); return nullptr; SAFE_END(); @@ -187,7 +187,7 @@ namespace cheat::game return nullptr; SAFE_BEGIN(); - return app::BaseEntity_GetBaseCombat(m_RawEntity, *app::BaseEntity_GetBaseCombat__MethodInfo); + return app::MoleMole_BaseEntity_GetLogicCombatComponent_1(m_RawEntity, *app::MoleMole_BaseEntity_GetLogicCombatComponent_1__MethodInfo); SAFE_ERROR(); return nullptr; SAFE_END(); @@ -199,7 +199,7 @@ namespace cheat::game return nullptr; SAFE_BEGIN(); - return app::BaseEntity_GetRigidbody(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetRigidbody(m_RawEntity, nullptr); SAFE_ERROR(); return nullptr; SAFE_END(); @@ -211,7 +211,7 @@ namespace cheat::game return nullptr; SAFE_BEGIN(); - return app::BaseEntity_get_gameObject(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_get_gameObject(m_RawEntity, nullptr); SAFE_ERROR(); return nullptr; SAFE_END(); @@ -222,7 +222,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return {}; - return app::BaseEntity_GetForward(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetForward(m_RawEntity, nullptr); } app::Vector3 Entity::back() @@ -235,7 +235,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return {}; - return app::BaseEntity_GetRight(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetRight(m_RawEntity, nullptr); } app::Vector3 Entity::left() @@ -248,7 +248,7 @@ namespace cheat::game if (m_RawEntity == nullptr) return {}; - return app::BaseEntity_GetUp(m_RawEntity, nullptr); + return app::MoleMole_BaseEntity_GetUp(m_RawEntity, nullptr); } app::Vector3 Entity::down() diff --git a/cheat-library/src/user/cheat/game/Entity.h b/cheat-library/src/user/cheat/game/Entity.h index 3e21ccd..65126ab 100644 --- a/cheat-library/src/user/cheat/game/Entity.h +++ b/cheat-library/src/user/cheat/game/Entity.h @@ -53,7 +53,7 @@ namespace cheat::game SAFE_BEGIN(); - auto logicComponentsRaw = app::BaseEntity_GetAllLogicComponents(m_RawEntity, nullptr); + auto logicComponentsRaw = app::MoleMole_BaseEntity_GetAllLogicComponents(m_RawEntity, nullptr); auto logicComponents = TO_UNI_LIST(logicComponentsRaw, app::BaseComponent*); if (logicComponents == nullptr) return nullptr; diff --git a/cheat-library/src/user/cheat/game/EntityManager.cpp b/cheat-library/src/user/cheat/game/EntityManager.cpp index 13eb591..93669f8 100644 --- a/cheat-library/src/user/cheat/game/EntityManager.cpp +++ b/cheat-library/src/user/cheat/game/EntityManager.cpp @@ -16,11 +16,11 @@ namespace cheat::game std::vector EntityManager::rawEntities() { - auto entityManager = GET_SINGLETON(EntityManager); + auto entityManager = GET_SINGLETON(MoleMole_EntityManager); if (entityManager == nullptr) return {}; - auto entities = TO_UNI_LIST(app::EntityManager_GetEntities(entityManager, nullptr), app::BaseEntity*); + auto entities = TO_UNI_LIST(app::MoleMole_EntityManager_GetEntities(entityManager, nullptr), app::BaseEntity*); if (entities == nullptr) return {}; @@ -29,7 +29,7 @@ namespace cheat::game for (const auto& entity : *entities) { - if (entity != nullptr && app::BaseEntity_IsActive(entity, nullptr)) + if (entity != nullptr && app::MoleMole_BaseEntity_IsActive(entity, nullptr)) aliveEntities.push_back(entity); } return aliveEntities; @@ -73,11 +73,11 @@ namespace cheat::game cheat::game::Entity* EntityManager::entity(uint32_t runtimeID, bool unsafe) { - auto entityManager = GET_SINGLETON(EntityManager); + auto entityManager = GET_SINGLETON(MoleMole_EntityManager); if (entityManager == nullptr) return nullptr; - auto rawEntity = app::EntityManager_GetValidEntity(entityManager, runtimeID, nullptr); + auto rawEntity = app::MoleMole_EntityManager_GetValidEntity(entityManager, runtimeID, nullptr); if (unsafe) return new Entity(rawEntity); @@ -86,18 +86,18 @@ namespace cheat::game cheat::game::Entity* EntityManager::avatar() { - auto entityManager = GET_SINGLETON(EntityManager); + auto entityManager = GET_SINGLETON(MoleMole_EntityManager); if (entityManager == nullptr) return s_EmptyEntity; - auto avatarRaw = app::EntityManager_GetCurrentAvatar(entityManager, nullptr); + auto avatarRaw = app::MoleMole_EntityManager_GetLocalAvatarEntity(entityManager, nullptr); if (m_AvatarEntity.raw() != avatarRaw) m_AvatarEntity = Entity(avatarRaw); return &m_AvatarEntity; } - bool EntityManager_RemoveEntity_Hook(app::EntityManager* __this, app::BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method) + bool EntityManager_RemoveEntity_Hook(app::MoleMole_EntityManager* __this, app::BaseEntity* entity, uint32_t specifiedRuntimeID, MethodInfo* method) { EntityManager::instance().OnRawEntityDestroy(entity); return CALL_ORIGIN(EntityManager_RemoveEntity_Hook, __this, entity, specifiedRuntimeID, method); @@ -121,12 +121,12 @@ namespace cheat::game EntityManager::EntityManager() : m_AvatarEntity(nullptr) { - HookManager::install(app::EntityManager_RemoveEntity, EntityManager_RemoveEntity_Hook); + HookManager::install(app::MoleMole_EntityManager_RemoveEntity, EntityManager_RemoveEntity_Hook); } cheat::game::Entity* EntityManager::entity(app::BaseEntity* rawEntity) { - if (rawEntity == nullptr || !app::BaseEntity_IsActive(rawEntity, nullptr)) + if (rawEntity == nullptr || !app::MoleMole_BaseEntity_IsActive(rawEntity, nullptr)) return s_EmptyEntity; std::lock_guard lock(m_EntityCacheLock); @@ -142,7 +142,7 @@ namespace cheat::game entityDestroyEvent(entry.first); } - if (app::BaseEntity_get_rootGameObject(rawEntity, nullptr) == nullptr) + if (app::MoleMole_BaseEntity_get_rootGameObject(rawEntity, nullptr) == nullptr) return s_EmptyEntity; Entity* ent = new Entity(rawEntity); @@ -158,11 +158,11 @@ namespace cheat::game app::CameraEntity* EntityManager::mainCamera() { - auto entityManager = GET_SINGLETON(EntityManager); + auto entityManager = GET_SINGLETON(MoleMole_EntityManager); if (entityManager == nullptr) return nullptr; - auto cameraEntity = app::EntityManager_GetMainCameraEntity(entityManager, nullptr); + auto cameraEntity = app::MoleMole_EntityManager_GetMainCameraEntity(entityManager, nullptr); return cameraEntity; } } \ No newline at end of file diff --git a/cheat-library/src/user/cheat/game/util.cpp b/cheat-library/src/user/cheat/game/util.cpp index 9a71338..1a83e2d 100644 --- a/cheat-library/src/user/cheat/game/util.cpp +++ b/cheat-library/src/user/cheat/game/util.cpp @@ -8,7 +8,7 @@ namespace cheat::game { std::vector GetUnlockedWaypoints(uint32_t targetSceneId) { - auto mapModule = GET_SINGLETON(MapModule); + auto mapModule = GET_SINGLETON(MoleMole_MapModule); if (mapModule == nullptr) return {}; @@ -29,8 +29,8 @@ namespace cheat::game continue; auto& config = waypoint.config->fields; - uint16_t areaId = app::SimpleSafeUInt16_get_Value(config.areaIdRawNum, nullptr); - bool isAreaUnlocked = app::MapModule_IsAreaUnlock(mapModule, sceneId, areaId, nullptr); + uint16_t areaId = app::MoleMole_SimpleSafeUInt16_get_Value(config.areaIdRawNum, nullptr); + bool isAreaUnlocked = app::MoleMole_MapModule_IsAreaUnlock(mapModule, sceneId, areaId, nullptr); if (waypoint.isUnlocked && isAreaUnlocked && !config._unlocked && !waypoint.isGroupLimit && !waypoint.isModelHidden) result.push_back(WaypointInfo{ sceneId, waypointId, waypoint.config->fields._tranPos, (app::MapModule_ScenePointData*)&waypoint }); @@ -57,7 +57,7 @@ namespace cheat::game uint32_t GetCurrentPlayerSceneID() { - auto playerModule = GET_SINGLETON(PlayerModule); + auto playerModule = GET_SINGLETON(MoleMole_PlayerModule); if (playerModule == nullptr) return 0; @@ -66,7 +66,7 @@ namespace cheat::game uint32_t GetCurrentMapSceneID() { - auto mapManager = GET_SINGLETON(MapManager); + auto mapManager = GET_SINGLETON(MoleMole_MapManager); if (mapManager == nullptr) return 0; @@ -118,7 +118,7 @@ namespace cheat::game app::AccountDataItem* GetAccountData() { - auto playerModule = GET_SINGLETON(PlayerModule); + auto playerModule = GET_SINGLETON(MoleMole_PlayerModule); if (playerModule == nullptr || playerModule->fields._accountData_k__BackingField == nullptr) return nullptr; diff --git a/cheat-library/src/user/cheat/imap/InteractiveMap.cpp b/cheat-library/src/user/cheat/imap/InteractiveMap.cpp index fc28ce8..5d90710 100644 --- a/cheat-library/src/user/cheat/imap/InteractiveMap.cpp +++ b/cheat-library/src/user/cheat/imap/InteractiveMap.cpp @@ -97,9 +97,9 @@ namespace cheat::feature // Hooking HookManager::install(app::MonoMiniMap_Update, InteractiveMap::MonoMiniMap_Update_Hook); - HookManager::install(app::GadgetModule_OnGadgetInteractRsp, InteractiveMap::GadgetModule_OnGadgetInteractRsp_Hook); - HookManager::install(app::InLevelMapPageContext_UpdateView, InteractiveMap::InLevelMapPageContext_UpdateView_Hook); - HookManager::install(app::InLevelMapPageContext_ZoomMap, InteractiveMap::InLevelMapPageContext_ZoomMap_Hook); + HookManager::install(app::MoleMole_GadgetModule_OnGadgetInteractRsp, InteractiveMap::GadgetModule_OnGadgetInteractRsp_Hook); + HookManager::install(app::MoleMole_InLevelMapPageContext_UpdateView, InteractiveMap::InLevelMapPageContext_UpdateView_Hook); + HookManager::install(app::MoleMole_InLevelMapPageContext_ZoomMap, InteractiveMap::InLevelMapPageContext_ZoomMap_Hook); } const FeatureGUIInfo& InteractiveMap::GetGUIInfo() const @@ -1274,11 +1274,11 @@ namespace cheat::feature static bool IsMapActive() { - auto uimanager = GET_SINGLETON(UIManager); + auto uimanager = GET_SINGLETON(MoleMole_UIManager); if (uimanager == nullptr) return false; - return app::UIManager_HasEnableMapCamera(uimanager, nullptr); + return app::MoleMole_UIManager_HasEnableMapCamera(uimanager, nullptr); } static app::Rect s_MapViewRect = { 0, 0, 1, 1 }; @@ -1382,7 +1382,7 @@ namespace cheat::feature if (!mapActive) return; - auto mapManager = GET_SINGLETON(MapManager); + auto mapManager = GET_SINGLETON(MoleMole_MapManager); if (mapManager == nullptr) return; @@ -1549,7 +1549,7 @@ namespace cheat::feature UPDATE_DELAY_VAR(ImCircle, _miniMapCircle, 2000); - auto uiManager = GET_SINGLETON(UIManager); + auto uiManager = GET_SINGLETON(MoleMole_UIManager); if (uiManager == nullptr || uiManager->fields._sceneCanvas == nullptr) return {}; @@ -1576,7 +1576,7 @@ namespace cheat::feature if (_monoMiniMap == nullptr || _monoMiniMap->fields.context == nullptr) return 1.0f; - return app::InLevelMainPageContext_get_miniMapScale(_monoMiniMap->fields.context, nullptr); + return app::MoleMole_InLevelMainPageContext_get_miniMapScale(_monoMiniMap->fields.context, nullptr); } static float GetMinimapRotation() diff --git a/cheat-library/src/user/cheat/misc/Debug.cpp b/cheat-library/src/user/cheat/misc/Debug.cpp index 35fba9d..0699dc3 100644 --- a/cheat-library/src/user/cheat/misc/Debug.cpp +++ b/cheat-library/src/user/cheat/misc/Debug.cpp @@ -28,9 +28,9 @@ namespace cheat::feature Debug::Debug() : Feature() { events::GameUpdateEvent += FUNCTION_HANDLER(OnGameUpdate); - HookManager::install(app::ActorAbilityPlugin_OnEvent, ActorAbilityPlugin_OnEvent_Hook); - // HookManager::install(app::LuaShellManager_ReportLuaShellResult, LuaShellManager_ReportLuaShellResult_Hook); - // HookManager::install(app::LuaShellManager_DoString, LuaShellManager_DoString_Hook); + HookManager::install(app::MoleMole_ActorAbilityPlugin_OnEvent, ActorAbilityPlugin_OnEvent_Hook); + // HookManager::install(app::MoleMole_LuaShellManager_ReportLuaShellResult, LuaShellManager_ReportLuaShellResult_Hook); + // HookManager::install(app::MoleMole_LuaShellManager_DoString, LuaShellManager_DoString_Hook); // HookManager::install(app::LuaEnv_DoString, LuaEnv_DoString_Hook); // HookManager::install(app::Lua_xlua_pushasciistring, Lua_xlua_pushasciistring_Hook); @@ -53,7 +53,7 @@ namespace cheat::feature // Raise when player start game log in (after press a door) // Contains information about player system and game integrity - static void SendInfo_Hook(app::NetworkManager_1* __this, app::GKOJAICIOPA* info, MethodInfo* method) + static void SendInfo_Hook(app::MoleMole_NetworkManager* __this, app::GKOJAICIOPA* info, MethodInfo* method) { LOG_TRACE("Game sending game info to server."); LOG_TRACE("Content: "); @@ -128,7 +128,7 @@ namespace cheat::feature return; } - auto singleton = GET_SINGLETON(MapModule); + auto singleton = GET_SINGLETON(MoleMole_MapModule); for (const auto& [sceneId, waypoints] : waypointsGrops->pairs()) { @@ -152,9 +152,9 @@ namespace cheat::feature ImGui::Text("Object position: %s", il2cppi_to_string(location._pos).c_str()); ImGui::Text("_unlocked: %s", location._unlocked ? "true" : "false"); ImGui::Text("_groupLimit: %s", location._groupLimit ? "true" : "false"); - uint16_t areaId = app::SimpleSafeUInt16_get_Value(location.areaIdRawNum, nullptr); + uint16_t areaId = app::MoleMole_SimpleSafeUInt16_get_Value(location.areaIdRawNum, nullptr); ImGui::Text("areaId: %u", areaId); - ImGui::Text("areaUnlocked: %s", app::MapModule_IsAreaUnlock(singleton, sceneId, areaId, nullptr) ? "true" : "false"); + ImGui::Text("areaUnlocked: %s", app::MoleMole_MapModule_IsAreaUnlock(singleton, sceneId, areaId, nullptr) ? "true" : "false"); ImGui::Text("gadgetIdRawNum: %u", location.gadgetIdRawNum); } @@ -169,7 +169,7 @@ namespace cheat::feature void DrawManagerData() { - auto singleton = GET_SINGLETON(MapModule); + auto singleton = GET_SINGLETON(MoleMole_MapModule); if (singleton == nullptr) { ImGui::Text("Manager not initialized."); @@ -236,10 +236,10 @@ namespace cheat::feature auto combat = entity->combat(); if (combat != nullptr) { auto combatProp = combat->fields._combatProperty_k__BackingField; - auto maxHP = app::SafeFloat_GetValue(combatProp->fields.maxHP, nullptr); - auto HP = app::SafeFloat_GetValue(combatProp->fields.HP, nullptr); - auto isLockHp = combatProp->fields.islockHP == nullptr || app::FixedBoolStack_get_value(combatProp->fields.islockHP, nullptr); - auto isInvincible = combatProp->fields.isInvincible == nullptr || app::FixedBoolStack_get_value(combatProp->fields.isInvincible, nullptr); + auto maxHP = app::MoleMole_SafeFloat_get_Value(combatProp->fields.maxHP, nullptr); + auto HP = app::MoleMole_SafeFloat_get_Value(combatProp->fields.HP, nullptr); + auto isLockHp = combatProp->fields.islockHP == nullptr || app::MoleMole_FixedBoolStack_get_value(combatProp->fields.islockHP, nullptr); + auto isInvincible = combatProp->fields.isInvincible == nullptr || app::MoleMole_FixedBoolStack_get_value(combatProp->fields.isInvincible, nullptr); ImGui::BeginTooltip(); ImGui::Text("Combat: %s", combat == nullptr ? "No" : "Yes"); ImGui::Text("Combat Prop: %s", combatProp == nullptr ? "No" : "Yes"); @@ -841,7 +841,7 @@ namespace cheat::feature void DrawMapManager() { - auto mapManager = GET_SINGLETON(MapManager); + auto mapManager = GET_SINGLETON(MoleMole_MapManager); if (mapManager == nullptr) return; @@ -952,7 +952,7 @@ namespace cheat::feature void DrawScenePropManager() { - auto scenePropManager = GET_SINGLETON(ScenePropManager); + auto scenePropManager = GET_SINGLETON(MoleMole_ScenePropManager); if (scenePropManager == nullptr) { ImGui::Text("Scene prop manager not loaded."); @@ -980,7 +980,7 @@ namespace cheat::feature auto pattern = config._._.scenePropPatternName; app::MoleMole_Config_TreeType__Enum value; - bool result = app::ScenePropManager_GetTreeTypeByPattern(scenePropManager, pattern, &value, nullptr); + bool result = app::MoleMole_ScenePropManager_GetTreeTypeByPattern(scenePropManager, pattern, &value, nullptr); if (!result) continue; diff --git a/cheat-library/src/user/cheat/misc/sniffer/PacketSniffer.cpp b/cheat-library/src/user/cheat/misc/sniffer/PacketSniffer.cpp index be4281c..534f669 100644 --- a/cheat-library/src/user/cheat/misc/sniffer/PacketSniffer.cpp +++ b/cheat-library/src/user/cheat/misc/sniffer/PacketSniffer.cpp @@ -24,8 +24,8 @@ namespace cheat::feature { sniffer::MessageManager::Connect("genshin_packet_pipe"); - HookManager::install(app::KcpNative_kcp_client_send_packet, KcpNative_kcp_client_send_packet_Hook); - HookManager::install(app::KcpClient_TryDequeueEvent, KcpClient_TryDequeueEvent_Hook); + HookManager::install(app::Kcp_KcpNative_kcp_client_send_packet, KcpNative_kcp_client_send_packet_Hook); + HookManager::install(app::MoleMole_KcpClient_TryDequeueEvent, KcpClient_TryDequeueEvent_Hook); } const FeatureGUIInfo& PacketSniffer::GetGUIInfo() const @@ -183,7 +183,7 @@ namespace cheat::feature byteArray->max_length = length; memcpy_s(byteArray->vector, length, content, length); - app::Packet_XorEncrypt(&byteArray, length, nullptr); + app::MoleMole_Packet_XorEncrypt(&byteArray, length, nullptr); auto result = new char[length]; memcpy_s(result, length, byteArray->vector, length); diff --git a/cheat-library/src/user/cheat/player/GodMode.cpp b/cheat-library/src/user/cheat/player/GodMode.cpp index 2f0f1ec..a5021c7 100644 --- a/cheat-library/src/user/cheat/player/GodMode.cpp +++ b/cheat-library/src/user/cheat/player/GodMode.cpp @@ -12,7 +12,7 @@ namespace cheat::feature GodMode::GodMode() : Feature(), NFEX(f_Enabled, "God mode", "m_GodMode", "Player", false, false) { - // HookManager::install(app::LCBaseCombat_FireBeingHitEvent, LCBaseCombat_FireBeingHitEvent_Hook); + // HookManager::install(app::MoleMole_LCBaseCombat_FireBeingHitEvent, LCBaseCombat_FireBeingHitEvent_Hook); HookManager::install(app::VCHumanoidMove_NotifyLandVelocity, VCHumanoidMove_NotifyLandVelocity_Hook); HookManager::install(app::Miscs_CheckTargetAttackable, Miscs_CheckTargetAttackable_Hook); } diff --git a/cheat-library/src/user/cheat/player/InfiniteStamina.cpp b/cheat-library/src/user/cheat/player/InfiniteStamina.cpp index 298642c..4aa9d25 100644 --- a/cheat-library/src/user/cheat/player/InfiniteStamina.cpp +++ b/cheat-library/src/user/cheat/player/InfiniteStamina.cpp @@ -11,7 +11,7 @@ namespace cheat::feature NF(f_Enabled, "Infinite stamina", "InfiniteStamina", false), NF(f_PacketReplacement, "Move sync packet replacement", "InfiniteStamina", false) { - HookManager::install(app::DataItem_HandleNormalProp, DataItem_HandleNormalProp_Hook); + HookManager::install(app::MoleMole_DataItem_HandleNormalProp, DataItem_HandleNormalProp_Hook); events::MoveSyncEvent += MY_METHOD_HANDLER(InfiniteStamina::OnMoveSync); } diff --git a/cheat-library/src/user/cheat/player/NoCD.cpp b/cheat-library/src/user/cheat/player/NoCD.cpp index 1ec6b06..ed1d9e4 100644 --- a/cheat-library/src/user/cheat/player/NoCD.cpp +++ b/cheat-library/src/user/cheat/player/NoCD.cpp @@ -23,11 +23,11 @@ namespace cheat::feature NF(f_Sprint, "No Sprint Cooldown", "NoCD", false), NF(f_InstantBow, "Instant bow", "NoCD", false) { - HookManager::install(app::LCAvatarCombat_IsEnergyMax, LCAvatarCombat_IsEnergyMax_Hook); - HookManager::install(app::LCAvatarCombat_IsSkillInCD_1, LCAvatarCombat_IsSkillInCD_1); + HookManager::install(app::MoleMole_LCAvatarCombat_IsEnergyMax, LCAvatarCombat_IsEnergyMax_Hook); + HookManager::install(app::MoleMole_LCAvatarCombat_IsSkillInCD_1, LCAvatarCombat_IsSkillInCD_1); - HookManager::install(app::HumanoidMoveFSM_CheckSprintCooldown, HumanoidMoveFSM_CheckSprintCooldown_Hook); - HookManager::install(app::ActorAbilityPlugin_AddDynamicFloatWithRange, ActorAbilityPlugin_AddDynamicFloatWithRange_Hook); + HookManager::install(app::MoleMole_HumanoidMoveFSM_CheckSprintCooldown, HumanoidMoveFSM_CheckSprintCooldown_Hook); + HookManager::install(app::MoleMole_ActorAbilityPlugin_AddDynamicFloatWithRange, ActorAbilityPlugin_AddDynamicFloatWithRange_Hook); } const FeatureGUIInfo& NoCD::GetGUIInfo() const @@ -128,11 +128,11 @@ namespace cheat::feature NoCD& noCD = NoCD::GetInstance(); if (noCD.f_AbilityReduce) { - auto cdTimer = app::SafeFloat_GetValue(skillInfo->fields.cdTimer, nullptr); + auto cdTimer = app::MoleMole_SafeFloat_get_Value(skillInfo->fields.cdTimer, nullptr); if (cdTimer > noCD.f_TimerReduce * 5.0f) { - struct app::SafeFloat MyValueProtect = app::SafeFloat_SetValue(noCD.f_TimerReduce * 5.0f, nullptr); + struct app::SafeFloat MyValueProtect = app::MoleMole_SafeFloat_set_Value(noCD.f_TimerReduce * 5.0f, nullptr); skillInfo->fields.cdTimer = MyValueProtect; } } diff --git a/cheat-library/src/user/cheat/player/NoClip.cpp b/cheat-library/src/user/cheat/player/NoClip.cpp index 0aea29a..c32fa4c 100644 --- a/cheat-library/src/user/cheat/player/NoClip.cpp +++ b/cheat-library/src/user/cheat/player/NoClip.cpp @@ -22,7 +22,7 @@ namespace cheat::feature NF(f_AltSpeedEnabled, "Alt speed enabled", "NoClip", false), NF(f_AltSpeed, "Alt speed", "NoClip", 1.0f) { - HookManager::install(app::HumanoidMoveFSM_LateTick, HumanoidMoveFSM_LateTick_Hook); + HookManager::install(app::MoleMole_HumanoidMoveFSM_LateTick, HumanoidMoveFSM_LateTick_Hook); events::GameUpdateEvent += MY_METHOD_HANDLER(NoClip::OnGameUpdate); events::MoveSyncEvent += MY_METHOD_HANDLER(NoClip::OnMoveSync); diff --git a/cheat-library/src/user/cheat/player/RapidFire.cpp b/cheat-library/src/user/cheat/player/RapidFire.cpp index 7ab5027..5e2fa3c 100644 --- a/cheat-library/src/user/cheat/player/RapidFire.cpp +++ b/cheat-library/src/user/cheat/player/RapidFire.cpp @@ -22,7 +22,7 @@ namespace cheat::feature NF(f_MultiTarget, "Multi-target", "RapidFire", false), NF(f_MultiTargetRadius, "Multi-target Radius", "RapidFire", 20.0f) { - HookManager::install(app::LCBaseCombat_DoHitEntity, LCBaseCombat_DoHitEntity_Hook); + HookManager::install(app::MoleMole_LCBaseCombat_DoHitEntity, LCBaseCombat_DoHitEntity_Hook); } const FeatureGUIInfo& RapidFire::GetGUIInfo() const @@ -121,7 +121,7 @@ namespace cheat::feature return f_Multiplier; auto safeHP = baseCombat->fields._combatProperty_k__BackingField->fields.HP; - auto HP = app::SafeFloat_GetValue(safeHP, nullptr); + auto HP = app::MoleMole_SafeFloat_get_Value(safeHP, nullptr); int attackCount = (int)ceil(HP / attackDamage); return std::clamp(attackCount, 1, 200); } @@ -140,7 +140,7 @@ namespace cheat::feature int countOfAttacks = f_Multiplier; if (f_OnePunch) { - app::Formula_CalcAttackResult(targetEntity, combat->fields._combatProperty_k__BackingField, + app::MoleMole_Formula_CalcAttackResult(combat->fields._combatProperty_k__BackingField, baseCombat->fields._combatProperty_k__BackingField, attackResult, manager.avatar()->raw(), targetEntity->raw(), nullptr); countOfAttacks = CalcCountToKill(attackResult->fields.damage, targetID); @@ -162,7 +162,7 @@ namespace cheat::feature while (entity.isGadget()) { game::Entity temp = entity; - entity = game::Entity(app::GadgetEntity_GetOwnerEntity(reinterpret_cast(entity.raw()), nullptr)); + entity = game::Entity(app::MoleMole_GadgetEntity_GetOwnerEntity(reinterpret_cast(entity.raw()), nullptr)); if (entity.runtimeID() == avatarID) return true; } diff --git a/cheat-library/src/user/cheat/teleport/MapTeleport.cpp b/cheat-library/src/user/cheat/teleport/MapTeleport.cpp index 4eb1903..39967d8 100644 --- a/cheat-library/src/user/cheat/teleport/MapTeleport.cpp +++ b/cheat-library/src/user/cheat/teleport/MapTeleport.cpp @@ -12,8 +12,8 @@ namespace cheat::feature static void InLevelMapPageContext_OnMarkClicked_Hook(app::InLevelMapPageContext* __this, app::MonoMapMark* mark, MethodInfo* method); static app::Vector3 LocalEntityInfoData_get_initPos_Hook(app::LocalEntityInfoData* __this, MethodInfo* method); - static bool LoadingManager_NeedTransByServer_Hook(app::LoadingManager* __this, uint32_t sceneId, app::Vector3 position, MethodInfo* method); - static void LoadingManager_PerformPlayerTransmit_Hook(app::LoadingManager* __this, app::Vector3 position, app::EnterType__Enum someEnum, + static bool LoadingManager_NeedTransByServer_Hook(app::MoleMole_LoadingManager* __this, uint32_t sceneId, app::Vector3 position, MethodInfo* method); + static void LoadingManager_PerformPlayerTransmit_Hook(app::MoleMole_LoadingManager* __this, app::Vector3 position, app::EnterType__Enum someEnum, uint32_t someUint1, app::EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum teleportType, uint32_t someUint2, MethodInfo* method); static void Entity_SetRelativePosition_Hook(app::BaseEntity* __this, app::Vector3 position, bool someBool, MethodInfo* method); @@ -24,18 +24,18 @@ namespace cheat::feature NF(f_Key, "Teleport key", "MapTeleport", Hotkey('T')) { // Map touch - HookManager::install(app::InLevelMapPageContext_OnMarkClicked, InLevelMapPageContext_OnMarkClicked_Hook); - HookManager::install(app::InLevelMapPageContext_OnMapClicked, InLevelMapPageContext_OnMapClicked_Hook); + HookManager::install(app::MoleMole_InLevelMapPageContext_OnMarkClicked, InLevelMapPageContext_OnMarkClicked_Hook); + HookManager::install(app::MoleMole_InLevelMapPageContext_OnMapClicked, InLevelMapPageContext_OnMapClicked_Hook); // Stage 1 - HookManager::install(app::LocalEntityInfoData_get_initPos, LocalEntityInfoData_get_initPos_Hook); - HookManager::install(app::LoadingManager_NeedTransByServer, LoadingManager_NeedTransByServer_Hook); + HookManager::install(app::MoleMole_LocalEntityInfoData_get_initPos, LocalEntityInfoData_get_initPos_Hook); + HookManager::install(app::MoleMole_LoadingManager_NeedTransByServer, LoadingManager_NeedTransByServer_Hook); // Stage 2 - HookManager::install(app::LoadingManager_PerformPlayerTransmit, LoadingManager_PerformPlayerTransmit_Hook); + HookManager::install(app::MoleMole_LoadingManager_PerformPlayerTransmit, LoadingManager_PerformPlayerTransmit_Hook); // Stage 3 - HookManager::install(app::Entity_SetRelativePosition, Entity_SetRelativePosition_Hook); + HookManager::install(app::MoleMole_BaseEntity_SetRelativePosition, Entity_SetRelativePosition_Hook); events::GameUpdateEvent += MY_METHOD_HANDLER(MapTeleport::OnGameUpdate); } @@ -88,8 +88,8 @@ namespace cheat::feature if (taskInfo.waitingThread) { taskInfo.waitingThread = false; - auto someSingleton = GET_SINGLETON(LoadingManager); - app::LoadingManager_RequestSceneTransToPoint(someSingleton, taskInfo.sceneId, taskInfo.waypointId, nullptr, nullptr); + auto someSingleton = GET_SINGLETON(MoleMole_LoadingManager); + app::MoleMole_LoadingManager_RequestSceneTransToPoint(someSingleton, taskInfo.sceneId, taskInfo.waypointId, nullptr, nullptr); } } @@ -122,7 +122,7 @@ namespace cheat::feature if (!mapBackground) return false; - auto uimanager = GET_SINGLETON(UIManager); + auto uimanager = GET_SINGLETON(MoleMole_UIManager); if (uimanager == nullptr) return false; @@ -267,7 +267,7 @@ namespace cheat::feature return result; } - static bool LoadingManager_NeedTransByServer_Hook(app::LoadingManager* __this, uint32_t sceneId, app::Vector3 position, MethodInfo* method) + static bool LoadingManager_NeedTransByServer_Hook(app::MoleMole_LoadingManager* __this, uint32_t sceneId, app::Vector3 position, MethodInfo* method) { auto result = CALL_ORIGIN(LoadingManager_NeedTransByServer_Hook, __this, sceneId, position, method); @@ -278,7 +278,7 @@ namespace cheat::feature } - static void LoadingManager_PerformPlayerTransmit_Hook(app::LoadingManager* __this, app::Vector3 position, app::EnterType__Enum someEnum, + static void LoadingManager_PerformPlayerTransmit_Hook(app::MoleMole_LoadingManager* __this, app::Vector3 position, app::EnterType__Enum someEnum, uint32_t someUint1, app::EvtTransmitAvatar_EvtTransmitAvatar_TransmitType__Enum teleportType, uint32_t someUint2, MethodInfo* method) { MapTeleport& mapTeleport = MapTeleport::GetInstance(); diff --git a/cheat-library/src/user/cheat/visuals/CameraZoom.cpp b/cheat-library/src/user/cheat/visuals/CameraZoom.cpp index 8f17c82..ff7b895 100644 --- a/cheat-library/src/user/cheat/visuals/CameraZoom.cpp +++ b/cheat-library/src/user/cheat/visuals/CameraZoom.cpp @@ -12,7 +12,7 @@ namespace cheat::feature NFEX(f_Enabled, "Camera Zoom", "CameraZoom", "Visuals", false, false), NF(f_Zoom, "Zoom", "CameraZoom", 200) { - HookManager::install(app::SCameraModuleInitialize_SetWarningLocateRatio, SCameraModuleInitialize_SetWarningLocateRatio_Hook); + HookManager::install(app::MoleMole_SCameraModuleInitialize_SetWarningLocateRatio, SCameraModuleInitialize_SetWarningLocateRatio_Hook); } const FeatureGUIInfo& CameraZoom::GetGUIInfo() const diff --git a/cheat-library/src/user/cheat/visuals/ShowChestIndicator.cpp b/cheat-library/src/user/cheat/visuals/ShowChestIndicator.cpp index 45e1bcd..7720266 100644 --- a/cheat-library/src/user/cheat/visuals/ShowChestIndicator.cpp +++ b/cheat-library/src/user/cheat/visuals/ShowChestIndicator.cpp @@ -11,7 +11,7 @@ namespace cheat::feature ChestIndicator::ChestIndicator() : Feature(), NF(f_Enabled, "Show Chest Indicator", "ShowChest", false) { - HookManager::install(app::LCIndicatorPlugin_DoCheck, IndicatorPlugin_DoCheck); + HookManager::install(app::MoleMole_LCIndicatorPlugin_DoCheck, IndicatorPlugin_DoCheck); } const FeatureGUIInfo& ChestIndicator::GetGUIInfo() const @@ -48,7 +48,7 @@ namespace cheat::feature if (__this->fields._dataItem != nullptr) { // Base Chest not found, try improve - app::LCIndicatorPlugin_ShowIcon(__this, nullptr); + app::MoleMole_LCIndicatorPlugin_ShowIcon(__this, nullptr); } } return CALL_ORIGIN(IndicatorPlugin_DoCheck, __this, method); diff --git a/cheat-library/src/user/cheat/world/AutoCook.cpp b/cheat-library/src/user/cheat/world/AutoCook.cpp index 87aeeb3..6f8624f 100644 --- a/cheat-library/src/user/cheat/world/AutoCook.cpp +++ b/cheat-library/src/user/cheat/world/AutoCook.cpp @@ -6,8 +6,8 @@ namespace cheat::feature { - static void PlayerModule_RequestPlayerCook(app::PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method); - static void PlayerModule_OnPlayerCookRsp(app::PlayerModule* __this, app::PlayerCookRsp* rsp, MethodInfo* method); + static void PlayerModule_RequestPlayerCook(app::MoleMole_PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method); + static void PlayerModule_OnPlayerCookRsp(app::MoleMole_PlayerModule* __this, app::PlayerCookRsp* rsp, MethodInfo* method); static void CookingQtePageContext_UpdateProficiency(app::CookingQtePageContext* __this, MethodInfo* method); static void CookingQtePageContext_SetProficiencyInfo(app::CookingQtePageContext* __this, MethodInfo* method); @@ -18,9 +18,9 @@ namespace cheat::feature NF(f_Count, "Count Item", "AutoCook", 1), NF(f_Quality, "Quality", "AutoCook", 1) { - HookManager::install(app::PlayerModule_RequestPlayerCook, PlayerModule_RequestPlayerCook); - HookManager::install(app::PlayerModule_OnPlayerCookRsp, PlayerModule_OnPlayerCookRsp); - HookManager::install(app::CookingQtePageContext_UpdateProficiency, CookingQtePageContext_UpdateProficiency); + HookManager::install(app::MoleMole_PlayerModule_RequestPlayerCook, PlayerModule_RequestPlayerCook); + HookManager::install(app::MoleMole_PlayerModule_OnPlayerCookRsp, PlayerModule_OnPlayerCookRsp); + HookManager::install(app::MoleMole_CookingQtePageContext_UpdateProficiency, CookingQtePageContext_UpdateProficiency); HookManager::install(app::CookRecipeExcelConfig_get_maxProficiency, CookRecipeExcelConfig_get_maxProficiency); } @@ -57,7 +57,7 @@ namespace cheat::feature // Auto Cooking | RyujinZX#6666 - static void PlayerModule_RequestPlayerCook(app::PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method) + static void PlayerModule_RequestPlayerCook(app::MoleMole_PlayerModule* __this, uint32_t recipeId, uint32_t avatarId, uint32_t qteQuality, uint32_t count, MethodInfo* method) { AutoCook& autoCook = AutoCook::GetInstance(); if (autoCook.f_Enabled) @@ -69,7 +69,7 @@ namespace cheat::feature return CALL_ORIGIN(PlayerModule_RequestPlayerCook, __this, recipeId, avatarId, qteQuality, count, method); } - static void PlayerModule_OnPlayerCookRsp(app::PlayerModule* __this, app::PlayerCookRsp* rsp, MethodInfo* method) { + static void PlayerModule_OnPlayerCookRsp(app::MoleMole_PlayerModule* __this, app::PlayerCookRsp* rsp, MethodInfo* method) { AutoCook& autoCook = AutoCook::GetInstance(); if (autoCook.f_Enabled) { @@ -99,7 +99,7 @@ namespace cheat::feature AutoCook& autoCook = AutoCook::GetInstance(); if (autoCook.f_Enabled) { - uint32_t maxCount = app::SimpleSafeUInt32_get_Value(__this->fields.maxProficiencyRawNum, nullptr); + uint32_t maxCount = app::MoleMole_SimpleSafeUInt32_get_Value(__this->fields.maxProficiencyRawNum, nullptr); autoCook.CookCount = maxCount; } return CALL_ORIGIN(CookRecipeExcelConfig_get_maxProficiency, __this, method); diff --git a/cheat-library/src/user/cheat/world/AutoDestroy.cpp b/cheat-library/src/user/cheat/world/AutoDestroy.cpp index 13839d2..65d26a3 100644 --- a/cheat-library/src/user/cheat/world/AutoDestroy.cpp +++ b/cheat-library/src/user/cheat/world/AutoDestroy.cpp @@ -20,7 +20,7 @@ namespace cheat::feature NF(f_DestroyDoodads, "Destroy Doodads", "AutoDestroy", false), NF(f_Range, "Range", "AutoDestroy", 10.0f) { - HookManager::install(app::LCAbilityElement_ReduceModifierDurability, LCAbilityElement_ReduceModifierDurability_Hook); + HookManager::install(app::MoleMole_LCAbilityElement_ReduceModifierDurability, LCAbilityElement_ReduceModifierDurability_Hook); } const FeatureGUIInfo& AutoDestroy::GetGUIInfo() const diff --git a/cheat-library/src/user/cheat/world/AutoFish.cpp b/cheat-library/src/user/cheat/world/AutoFish.cpp index 5608cac..23889ba 100644 --- a/cheat-library/src/user/cheat/world/AutoFish.cpp +++ b/cheat-library/src/user/cheat/world/AutoFish.cpp @@ -17,12 +17,12 @@ namespace cheat::feature { events::GameUpdateEvent += MY_METHOD_HANDLER(AutoFish::OnGameUpdate); - HookManager::install(app::FishingModule_RequestFishCastRod, FishingModule_RequestFishCastRod_Hook); - HookManager::install(app::FishingModule_onFishChosenNotify, FishingModule_onFishChosenNotify_Hook); - HookManager::install(app::FishingModule_OnFishBiteRsp, FishingModule_OnFishBiteRsp_Hook); - HookManager::install(app::FishingModule_OnFishBattleBeginRsp, FishingModule_OnFishBattleBeginRsp_Hook); - HookManager::install(app::FishingModule_OnFishBattleEndRsp, FishingModule_OnFishBattleEndRsp_Hook); - HookManager::install(app::FishingModule_OnExitFishingRsp, FishingModule_OnExitFishingRsp_Hook); + HookManager::install(app::MoleMole_FishingModule_RequestFishCastRod, FishingModule_RequestFishCastRod_Hook); + HookManager::install(app::MoleMole_FishingModule_onFishChosenNotify, FishingModule_onFishChosenNotify_Hook); + HookManager::install(app::MoleMole_FishingModule_OnFishBiteRsp, FishingModule_OnFishBiteRsp_Hook); + HookManager::install(app::MoleMole_FishingModule_OnFishBattleBeginRsp, FishingModule_OnFishBattleBeginRsp_Hook); + HookManager::install(app::MoleMole_FishingModule_OnFishBattleEndRsp, FishingModule_OnFishBattleEndRsp_Hook); + HookManager::install(app::MoleMole_FishingModule_OnExitFishingRsp, FishingModule_OnExitFishingRsp_Hook); } const FeatureGUIInfo& AutoFish::GetGUIInfo() const @@ -66,7 +66,7 @@ namespace cheat::feature if (!autoFish.f_Enabled) return; - app::FishingModule_RequestFishBite(__this, nullptr); + app::MoleMole_FishingModule_RequestFishBite(__this, nullptr); } void AutoFish::FishingModule_OnFishBiteRsp_Hook(void* __this, app::FishBiteRsp* rsp, MethodInfo* method) @@ -78,7 +78,7 @@ namespace cheat::feature return; } - app::FishingModule_RequestFishBattleBegin(__this, nullptr); + app::MoleMole_FishingModule_RequestFishBattleBegin(__this, nullptr); } void AutoFish::FishingModule_OnFishBattleBeginRsp_Hook(void* __this, app::FishBattleBeginRsp* rsp, MethodInfo* method) @@ -91,7 +91,7 @@ namespace cheat::feature } std::lock_guard catchLock(autoFish.m_BattleFinishTimestampMutex); - autoFish.m_BattleFinishTimestamp = app::TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeCatch; + autoFish.m_BattleFinishTimestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeCatch; } void AutoFish::FishingModule_OnFishBattleEndRsp_Hook(void* __this, app::FishBattleEndRsp* rsp, MethodInfo* method) @@ -115,7 +115,7 @@ namespace cheat::feature { LOG_WARNING("Failed to catch fish, retrying in %u ms", autoFish.f_DelayBeforeCatch); std::lock_guard catchLock(autoFish.m_BattleFinishTimestampMutex); - autoFish.m_BattleFinishTimestamp = app::TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeCatch; + autoFish.m_BattleFinishTimestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeCatch; return; } @@ -123,7 +123,7 @@ namespace cheat::feature return; std::lock_guard _lock(autoFish.m_RecastTimestampMutex); - autoFish.m_RecastTimestamp = app::TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeRecast; + autoFish.m_RecastTimestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr) + autoFish.f_DelayBeforeRecast; } void AutoFish::FishingModule_OnExitFishingRsp_Hook(void* __this, void* rsp, MethodInfo* method) @@ -154,7 +154,7 @@ namespace cheat::feature void AutoFish::OnGameUpdate() { - auto timestamp = app::TimeUtil_get_NowTimeStamp(nullptr); + auto timestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr); std::lock_guard _lock(m_BattleFinishTimestampMutex); std::lock_guard _lock2(m_RecastTimestampMutex); @@ -166,7 +166,7 @@ namespace cheat::feature { m_BattleFinishTimestamp = 0; - app::FishingModule_RequestFishBattleEnd(m_LastCastData.fishingModule, app::FishBattleResult__Enum::Succ, f_DelayBeforeCatch == 4.0f, + app::MoleMole_FishingModule_RequestFishBattleEnd(m_LastCastData.fishingModule, app::FishBattleResult__Enum::Succ, f_DelayBeforeCatch == 4.0f, static_cast(f_DelayBeforeCatch / 1000), nullptr); } @@ -174,7 +174,7 @@ namespace cheat::feature { m_RecastTimestamp = 0; - app::FishingModule_RequestFishCastRod(m_LastCastData.fishingModule, m_LastCastData.baitId, + app::MoleMole_FishingModule_RequestFishCastRod(m_LastCastData.fishingModule, m_LastCastData.baitId, m_LastCastData.rodId, m_LastCastData.pos, m_LastCastData.rodEntityId, nullptr); } } diff --git a/cheat-library/src/user/cheat/world/AutoLoot.cpp b/cheat-library/src/user/cheat/world/AutoLoot.cpp index 8875d18..c4181de 100644 --- a/cheat-library/src/user/cheat/world/AutoLoot.cpp +++ b/cheat-library/src/user/cheat/world/AutoLoot.cpp @@ -27,9 +27,9 @@ namespace cheat::feature toBeLootedItems(), nextLootTime(0) { // Auto loot - HookManager::install(app::LCSelectPickup_AddInteeBtnByID, LCSelectPickup_AddInteeBtnByID_Hook); - HookManager::install(app::LCSelectPickup_IsInPosition, LCSelectPickup_IsInPosition_Hook); - HookManager::install(app::LCSelectPickup_IsOutPosition, LCSelectPickup_IsOutPosition_Hook); + HookManager::install(app::MoleMole_LCSelectPickup_AddInteeBtnByID, LCSelectPickup_AddInteeBtnByID_Hook); + HookManager::install(app::MoleMole_LCSelectPickup_IsInPosition, LCSelectPickup_IsInPosition_Hook); + HookManager::install(app::MoleMole_LCSelectPickup_IsOutPosition, LCSelectPickup_IsOutPosition_Hook); events::GameUpdateEvent += MY_METHOD_HANDLER(AutoLoot::OnGameUpdate); } @@ -128,14 +128,14 @@ namespace cheat::feature if (!f_AutoPickup) return false; - auto itemModule = GET_SINGLETON(ItemModule); + auto itemModule = GET_SINGLETON(MoleMole_ItemModule); if (itemModule == nullptr) return false; auto entityId = entity->fields._runtimeID_k__BackingField; if (f_DelayTime == 0) { - app::ItemModule_PickItem(itemModule, entityId, nullptr); + app::MoleMole_ItemModule_PickItem(itemModule, entityId, nullptr); return true; } @@ -149,7 +149,7 @@ namespace cheat::feature if (currentTime < nextLootTime) return; - auto entityManager = GET_SINGLETON(EntityManager); + auto entityManager = GET_SINGLETON(MoleMole_EntityManager); if (entityManager == nullptr) return; @@ -199,15 +199,15 @@ namespace cheat::feature if (!entityId) return; - auto itemModule = GET_SINGLETON(ItemModule); + auto itemModule = GET_SINGLETON(MoleMole_ItemModule); if (itemModule == nullptr) return; - auto entity = app::EntityManager_GetValidEntity(entityManager, *entityId, nullptr); + auto entity = app::MoleMole_EntityManager_GetValidEntity(entityManager, *entityId, nullptr); if (entity == nullptr) return; - app::ItemModule_PickItem(itemModule, *entityId, nullptr); + app::MoleMole_ItemModule_PickItem(itemModule, *entityId, nullptr); nextLootTime = currentTime + (int)f_DelayTime; } diff --git a/cheat-library/src/user/cheat/world/AutoTreeFarm.cpp b/cheat-library/src/user/cheat/world/AutoTreeFarm.cpp index 90acf09..ab22d3c 100644 --- a/cheat-library/src/user/cheat/world/AutoTreeFarm.cpp +++ b/cheat-library/src/user/cheat/world/AutoTreeFarm.cpp @@ -68,7 +68,7 @@ namespace cheat::feature std::unordered_set GetTreeSet() { - auto scenePropManager = GET_SINGLETON(ScenePropManager); + auto scenePropManager = GET_SINGLETON(MoleMole_ScenePropManager); if (scenePropManager == nullptr) return {}; @@ -126,13 +126,13 @@ namespace cheat::feature static std::unordered_set s_AttackQueueSet; static uint64_t s_LastAttackTimestamp = 0; - uint64_t timestamp = app::TimeUtil_get_NowTimeStamp(nullptr); + uint64_t timestamp = app::MoleMole_TimeUtil_get_NowTimeStamp(nullptr); if (!m_Enabled || s_LastAttackTimestamp + m_AttackDelay > timestamp) return; auto& manager = game::EntityManager::instance(); - auto scenePropManager = GET_SINGLETON(ScenePropManager); - auto networkManager = GET_SINGLETON(NetworkManager_1); + auto scenePropManager = GET_SINGLETON(MoleMole_ScenePropManager); + auto networkManager = GET_SINGLETON(MoleMole_NetworkManager); if (networkManager == nullptr || scenePropManager == nullptr) return; @@ -168,7 +168,7 @@ namespace cheat::feature app::MoleMole_Config_TreeType__Enum treeType; auto pattern = tree->fields._config->fields._._.scenePropPatternName; - if (!app::ScenePropManager_GetTreeTypeByPattern(scenePropManager, pattern, &treeType, nullptr)) + if (!app::MoleMole_ScenePropManager_GetTreeTypeByPattern(scenePropManager, pattern, &treeType, nullptr)) continue; if (m_AttackPerTree > 0) @@ -183,7 +183,7 @@ namespace cheat::feature } tree->fields._lastTreeDropTimeStamp = timestamp; - app::NetworkManager_1_RequestHitTreeDropNotify(networkManager, position, position, treeType, nullptr); + app::MoleMole_NetworkManager_RequestHitTreeDropNotify(networkManager, position, position, treeType, nullptr); break; } diff --git a/cheat-library/src/user/cheat/world/DialogSkip.cpp b/cheat-library/src/user/cheat/world/DialogSkip.cpp index 019909e..6449b51 100644 --- a/cheat-library/src/user/cheat/world/DialogSkip.cpp +++ b/cheat-library/src/user/cheat/world/DialogSkip.cpp @@ -16,8 +16,8 @@ namespace cheat::feature NF(f_FastDialog, "Fast dialog", "AutoTalk", false), NF(f_TimeSpeedup, "Time Speed", "AutoTalk", 5.0f) { - HookManager::install(app::InLevelCutScenePageContext_UpdateView, InLevelCutScenePageContext_UpdateView_Hook); - HookManager::install(app::InLevelCutScenePageContext_ClearView, InLevelCutScenePageContext_ClearView_Hook); + HookManager::install(app::MoleMole_InLevelCutScenePageContext_UpdateView, InLevelCutScenePageContext_UpdateView_Hook); + HookManager::install(app::MoleMole_InLevelCutScenePageContext_ClearView, InLevelCutScenePageContext_ClearView_Hook); } const FeatureGUIInfo& DialogSkip::GetGUIInfo() const @@ -108,10 +108,10 @@ namespace cheat::feature int32_t value = 0; auto object = il2cpp_value_box((Il2CppClass*)*app::Int32__TypeInfo, &value); auto notify = app::Notify_CreateNotify_1(app::MoleMole_NotifyTypes__Enum::DialogSelectItemNotify, (app::Object*)object, nullptr); - app::TalkDialogContext_OnDialogSelectItem(talkDialog, ¬ify, nullptr); + app::MoleMole_TalkDialogContext_OnDialogSelectItem(talkDialog, ¬ify, nullptr); } else if (!talkDialog->fields._inSelect) - app::InLevelCutScenePageContext_OnFreeClick(context, nullptr); + app::MoleMole_InLevelCutScenePageContext_OnFreeClick(context, nullptr); } static void InLevelCutScenePageContext_UpdateView_Hook(app::InLevelCutScenePageContext* __this, MethodInfo* method) diff --git a/cheat-library/src/user/cheat/world/DumbEnemies.cpp b/cheat-library/src/user/cheat/world/DumbEnemies.cpp index 6e2cd72..7015833 100644 --- a/cheat-library/src/user/cheat/world/DumbEnemies.cpp +++ b/cheat-library/src/user/cheat/world/DumbEnemies.cpp @@ -10,7 +10,7 @@ namespace cheat::feature DumbEnemies::DumbEnemies() : Feature(), NF(f_Enabled, "Dumb Enemies", "DumbEnemies", false) { - HookManager::install(app::VCMonsterAIController_TryDoSkill, VCMonsterAIController_TryDoSkill_Hook); + HookManager::install(app::MoleMole_VCMonsterAIController_TryDoSkill, VCMonsterAIController_TryDoSkill_Hook); } const FeatureGUIInfo& DumbEnemies::GetGUIInfo() const diff --git a/cheat-library/src/user/cheat/world/ElementalSight.cpp b/cheat-library/src/user/cheat/world/ElementalSight.cpp index 5c529a5..0f60243 100644 --- a/cheat-library/src/user/cheat/world/ElementalSight.cpp +++ b/cheat-library/src/user/cheat/world/ElementalSight.cpp @@ -10,7 +10,7 @@ namespace cheat::feature ElementalSight::ElementalSight() : Feature(), NF(f_Enabled, "Permanent Elemental Sight", "ElementalSight", false) { - HookManager::install(app::LevelSceneElementViewPlugin_Tick, LevelSceneElementViewPlugin_Tick_Hook); + HookManager::install(app::MoleMole_LevelSceneElementViewPlugin_Tick, LevelSceneElementViewPlugin_Tick_Hook); } const FeatureGUIInfo& ElementalSight::GetGUIInfo() const diff --git a/cheat-library/src/user/cheat/world/KillAura.cpp b/cheat-library/src/user/cheat/world/KillAura.cpp index 30e165e..451d235 100644 --- a/cheat-library/src/user/cheat/world/KillAura.cpp +++ b/cheat-library/src/user/cheat/world/KillAura.cpp @@ -23,7 +23,7 @@ namespace cheat::feature NF(f_RepeatDelay, "Repeat delay time (in ms)", "KillAura", 1000) { events::GameUpdateEvent += MY_METHOD_HANDLER(KillAura::OnGameUpdate); - HookManager::install(app::BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo_Hook); + HookManager::install(app::MoleMole_BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo, BaseMoveSyncPlugin_ConvertSyncTaskToMotionInfo_Hook); } const FeatureGUIInfo& KillAura::GetGUIInfo() const @@ -84,8 +84,8 @@ namespace cheat::feature if (!f_Enabled || !f_DamageMode) return; - auto eventManager = GET_SINGLETON(EventManager); - if (eventManager == nullptr || *app::CreateCrashEvent__MethodInfo == nullptr) + auto eventManager = GET_SINGLETON(MoleMole_EventManager); + if (eventManager == nullptr || *app::MoleMole_EventHelper_Allocate_103__MethodInfo == nullptr) return; auto currentTime = util::GetCurrentTimeMillisec(); @@ -112,10 +112,10 @@ namespace cheat::feature if (combatProp == nullptr) continue; - auto maxHP = app::SafeFloat_GetValue(combatProp->fields.maxHP, nullptr); - auto isLockHp = combatProp->fields.islockHP == nullptr || app::FixedBoolStack_get_value(combatProp->fields.islockHP, nullptr); - auto isInvincible = combatProp->fields.isInvincible == nullptr || app::FixedBoolStack_get_value(combatProp->fields.isInvincible, nullptr); - auto HP = app::SafeFloat_GetValue(combatProp->fields.HP, nullptr); + auto maxHP = app::MoleMole_SafeFloat_get_Value(combatProp->fields.maxHP, nullptr); + auto isLockHp = combatProp->fields.islockHP == nullptr || app::MoleMole_FixedBoolStack_get_value(combatProp->fields.islockHP, nullptr); + auto isInvincible = combatProp->fields.isInvincible == nullptr || app::MoleMole_FixedBoolStack_get_value(combatProp->fields.isInvincible, nullptr); + auto HP = app::MoleMole_SafeFloat_get_Value(combatProp->fields.HP, nullptr); if (maxHP < 10 || HP < 2 || isLockHp || isInvincible) continue; @@ -151,15 +151,15 @@ namespace cheat::feature attackSet.erase(monster->runtimeID()); auto combat = monster->combat(); - auto maxHP = app::SafeFloat_GetValue(combat->fields._combatProperty_k__BackingField->fields.maxHP, nullptr); + auto maxHP = app::MoleMole_SafeFloat_get_Value(combat->fields._combatProperty_k__BackingField->fields.maxHP, nullptr); - auto crashEvt = app::CreateCrashEvent(*app::CreateCrashEvent__MethodInfo); - app::EvtCrash_Init(crashEvt, monster->runtimeID(), nullptr); + auto crashEvt = app::MoleMole_EventHelper_Allocate_103(*app::MoleMole_EventHelper_Allocate_103__MethodInfo); + app::MoleMole_EvtCrash_Init(crashEvt, monster->runtimeID(), nullptr); crashEvt->fields.maxHp = maxHP; crashEvt->fields.velChange = 1000; crashEvt->fields.hitPos = monster->absolutePosition(); - app::EventManager_FireEvent(eventManager, reinterpret_cast(crashEvt), false, nullptr); + app::MoleMole_EventManager_FireEvent(eventManager, reinterpret_cast(crashEvt), false, nullptr); monsterRepeatTimeMap[monster->runtimeID()] = currentTime + (int)f_RepeatDelay + distribution(generator);