Skip to content

Commit

Permalink
Merge pull request #443 from TheLounger/master
Browse files Browse the repository at this point in the history
Add unhollower RegEx rename config option
  • Loading branch information
ghorsington authored Jul 13, 2022
2 parents 3a54f7e + ca9a912 commit 9c2b17f
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion BepInEx.IL2CPP/ProxyAssemblyGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
using System.Net.Http;
using System.Security.Cryptography;
using System.Text;
using System.Text.RegularExpressions;
using AssemblyUnhollower;
using BepInEx.Configuration;
using BepInEx.Logging;
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -367,7 +377,8 @@ private void GenerateAssembliesInternal(AppDomainListener listener,
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");
Expand Down

0 comments on commit 9c2b17f

Please sign in to comment.