Merge pull request #443 from TheLounger/master

Add unhollower RegEx rename config option
This commit is contained in:
Geoffrey Horsington authored and GitHub committed 2022-07-13 18:34:20 +03:00
commit 9c2b17f3e4
1 file changed
+12 -1
+12 -1
View File
@@ -6,6 +6,7 @@ using System.IO.Compression;
using System.Net.Http;
using System.Security.Cryptography;
using System.Text;
using System.Text.RegularExpressions;
using AssemblyUnhollower;
using BepInEx.Configuration;
using BepInEx.Logging;
@@ -64,6 +65,15 @@ internal static class ProxyAssemblyGenerator
.AppendLine("{ProcessName} - Name of the current process")
.ToString());
private static readonly ConfigEntry<string> ConfigUnhollowerDeobfuscationRegex = ConfigFile.CoreConfig.Bind(
"IL2CPP", "UnhollowerDeobfuscationRegex",
string.Empty,
new StringBuilder()
.AppendLine("The RegEx string to pass to Il2CppAssemblyUnhollower for renaming obfuscated names.")
.AppendLine("All types and members matching this RegEx will get a name based on their signature,")
.AppendLine("resulting in names that persist after game updates.")
.ToString());
private static ManualLogSource Il2cppDumperLogger;
private static string unhollowedBasePath;
@@ -367,7 +377,8 @@ internal static class ProxyAssemblyGenerator
Source = sourceAssemblies,
OutputDir = Preloader.IL2CPPUnhollowedPath,
UnityBaseLibsDir = Directory.Exists(UnityBaseLibsDirectory) ? UnityBaseLibsDirectory : null,
NoCopyUnhollowerLibs = true
NoCopyUnhollowerLibs = true,
ObfuscatedNamesRegex = !string.IsNullOrEmpty(ConfigUnhollowerDeobfuscationRegex.Value) ? new Regex(ConfigUnhollowerDeobfuscationRegex.Value) : null
};
var renameMapLocation = Path.Combine(Paths.BepInExRootPath, "DeobfuscationMap.csv.gz");