Commit Graph
220 Commits
Author SHA1 Message Date
ghorsington 6ca26f4b59 Clean up after merge 2022-08-14 17:18:58 +03:00
Kasuromi 83b72d568b Add config option for forced detour provider 2022-08-14 17:18:58 +03:00
Kasuromi 9432878863 Remove unused method 2022-08-14 17:18:58 +03:00
Kasuromi 2797bef7d6 Add Dobby Detour Provider 2022-08-14 17:18:58 +03:00
Kasuromi 136063957d Cleanup imports and rename region 2022-08-14 17:18:58 +03:00
Kasuromi 8743674bf2 Create NativeDetourHelper and internalize funchook 2022-08-14 17:18:58 +03:00
Kasuromi 6897bb0526 Deprecate FastNativeDetour in favor of Funchook 2022-08-14 17:18:58 +03:00
ghorsington 0da14c507c BepInEx.IL2CPP: Move runtime info logging to preloader 2022-08-14 17:18:58 +03:00
ghorsington 5afef9a1db FastNativeDetour: temporary fix for net6.0 support 2022-08-14 17:18:58 +03:00
ghorsington 7a54a77946 BepInEx.IL2CPP: Remove old MonoExtensions 2022-08-14 17:18:58 +03:00
ghorsington b80f29784c BepInEx.IL2CPP: Fix mutex checks 2022-08-14 17:18:58 +03:00
ghorsington a8dbe2c481 BepInEx.IL2CPP: fix ReferenceLibs copying to output 2022-08-14 17:18:58 +03:00
ghorsington a1c7f5c4b1 ConsoleManager: refactor useWinApiEncoder -> useManagedEncoder 2022-08-14 17:18:58 +03:00
ghorsington 57658bdbb7 BepInEx.IL2CPP: retarget to net6.0, switch to Il2CppInterop 2022-08-14 17:18:58 +03:00
Dusk Banks 43c883153d [WIP] UnityDoorstop 4 support 2022-08-14 17:18:57 +03:00
Lounger ca9a9127c4 Add UnhollowerDeobfuscationRegex config option 2022-07-11 06:06:58 +02:00
ghorsington 3febd6a3ba WindowsPageAllocator: Fix allocation issues on macOS
On macOS (if using e.g. Crossover), VirtualQuery can report a memory address as free but still fail to reserve the memory with VirtualAlloc (fails with error code 0x170C240 for some reason).

To fix this, memory is now reserved directly in the loop to ensure it can be reserved. If reservation fails, the next address is tried.
2022-06-19 21:50:49 +03:00
ghorsington fbb856702f PageAllocator: fix allocation unit to correct value 2022-06-19 21:38:30 +03:00
ghorsington f2fde2db12 Bump Il2CppAssemblyUnhollower 2022-06-18 21:52:17 +03:00
ghorsington 686c956fa4 Fix VirtualQuery signature on x64
In WinAPI MEMORY_BASIC_INFORMATION is not a real struct but rather a macro that resolves either to _MEMORY_BASIC_INFORMATION32 or _MEMORY_BASIC_INFORMATION64, see

https://github.com/Leandros/WindowsHModular/blob/master/include/win32/io.h#L120-L147

Because of this, hooking might fail because some valid memory pages will get skipped or some invalid pages might be used.
2022-06-18 20:40:23 +03:00
ghorsington 4f2226f1db Add UnhollowedAssembliesPath config option and similar --unhollowed-path CLI arg 2022-06-05 17:16:18 +03:00
ghorsington 5d77398a5c Bump Unhollower version 2022-05-24 20:42:10 +03:00
ghorsington bf37162544 Bump Unhollower version 2022-05-22 10:57:01 +03:00
js6pak 95c599b1da Run basic AttributeRestoration for cpp2il 2022-05-06 13:51:47 +02:00
ghorsington 5ff56c2ca5 WindowsPageAllocator: don't throw on invalid address resolving 2022-05-05 22:48:42 +03:00
ghorsington eaf38ef536 Bump package versions 2022-05-02 18:58:36 +03:00
ghorsington fba4461f0e Bump Il2CppUnhollower 2022-04-30 14:19:27 +03:00
ghorsington 5538981709 ProxyAssemblyGenerator: default to Cpp2Il, add DisposeAndCleanupAll 2022-04-28 22:32:06 +03:00
ghorsington 8b98fab59e Bump package versions 2022-04-28 22:30:00 +03:00
ghorsington da48b7710d Bump Unhollower version 2022-04-21 22:25:03 +03:00
Kasuromi ff004dcb81 Use UnityVersionHandler's size providers 2022-04-20 19:23:13 +03:00
ghorsington 4a290db876 ProxyAssemblyGenerator: fix to work with new Unhollower version 2022-04-17 18:38:18 +03:00
ghorsington 16a75479bb Bump package versions 2022-04-17 18:37:36 +03:00
Kasuromi bf7b059145 Convert managed bool to byte in detour 2022-03-15 17:35:58 +02:00
ghorsington 4cc7ab0619 Bump Il2CppUnhollower and Cpp2IL versions 2022-02-24 22:13:30 +02:00
ghorsington 1504d80c06 Bump HarmonyX and MonoMod 2022-02-03 19:06:36 +02:00
Bepis 5686f6a003 Create .NET Core platform project 2022-01-25 21:11:55 +11:00
ghorsington 7669b6dbec Il2Cpp: Fix OnInstallUnityTlsInterface not being static
This causes crashes in some games (likely because of mono generating thisptr arg which could break the stack order on x86)
2022-01-22 19:44:57 +02:00
js6pak c29fdcca60 Fix process bitness detection 2022-01-13 17:05:58 +01:00
ghorsington ce04a24fb2 ProxyAssemblyGenerator: Handle exceptions better 2022-01-12 20:56:12 +02:00
ghorsington 59c5adc982 Bump libraries
* Updated HarmonyX
* Updated MonoMod
* Updated Cpp2IL
2022-01-11 17:27:04 +02:00
ghorsington 39f6bf8415 Add temporary fix for crashes in some x86 games
At the moment, for some reason the game can crash after hooking il2cpp_unity_install_unitytls_interface unless DetourGenerator runs a little slower
2022-01-02 20:26:07 +02:00
ghorsington c76b09cc15 IL2CPPDetourMethodPatcher: Improve struct handling on x64
* Add correct return buffer when return value is a struct
* Use IntPtr for all parameters on x64 instead of a FixedStruct
2022-01-01 20:58:25 +02:00
ghorsington b7b8dd2d84 Add HarmonyBackend config to Il2Cpp as well 2022-01-01 13:37:48 +02:00
ghorsington cbae41071b IL2CPPDetourMethodPatcher: Revert to original argument handling in x64
Because on x64 the calling convention forces all structs to be passed as pointers, there is no need to handle it differently
2022-01-01 13:14:24 +02:00
ghorsington 249a185aad Bump Il2CppAssemblyUnhollower 2021-12-22 22:09:50 +02:00
ghorsington 3fd5d68e3b ManualLogSource: Add string interpolation for Log* overloads; clean up logging 2021-12-21 19:40:15 +02:00
ghorsington 4bb48c502e Reformat project; apply code style 2021-12-21 18:55:05 +02:00
ghorsington 81141fcfc4 Add LogInterpolatedStringHandler overload for default logger 2021-12-21 18:49:07 +02:00
ghorsington 325e0df14b Use C# 10, reformat project 2021-12-21 16:09:39 +02:00