diff --git a/Editor/DynamicMemoryEncryption/DynamicMemoryEncryptionPass.cs b/Editor/DynamicMemoryEncryption/DynamicMemoryEncryptionPass.cs new file mode 100644 index 0000000..9480a3c --- /dev/null +++ b/Editor/DynamicMemoryEncryption/DynamicMemoryEncryptionPass.cs @@ -0,0 +1,29 @@ +using dnlib.DotNet; +using dnlib.DotNet.Emit; +using Obfuz; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class DynamicMemoryEncryptionPass : MethodBodyObfuscationPassBase +{ + public override void Start(ObfuscatorContext ctx) + { + + } + + public override void Stop(ObfuscatorContext ctx) + { + + } + + protected override bool NeedObfuscateMethod(MethodDef method) + { + return true; + } + + protected override bool TryObfuscateInstruction(MethodDef callingMethod, Instruction inst, IList instructions, int instructionIndex, List outputInstructions, List totalFinalInstructions) + { + throw new System.NotImplementedException(); + } +} diff --git a/Editor/Obfuscator.cs b/Editor/Obfuscator.cs index a88e3ac..40cc3a6 100644 --- a/Editor/Obfuscator.cs +++ b/Editor/Obfuscator.cs @@ -46,7 +46,7 @@ namespace Obfuz _obfuscationAssemblyNames = options.obfuscationAssemblyNames; _assemblyCache = new AssemblyCache(new PathAssemblyResolver(options.assemblySearchDirs.ToArray())); - _pipeline.AddPass(new DynamicProxyPass()); + _pipeline.AddPass(new ProxyCallPass()); _pipeline.AddPass(new ExprObfuscationPass()); _pipeline.AddPass(new DataVirtualizationPass()); _pipeline.AddPass(new RenameSymbolPass()); diff --git a/Editor/ProxyCall/ConfigDynamicProxyPolicy.cs b/Editor/ProxyCall/ConfigProxyCallPolicy.cs similarity index 92% rename from Editor/ProxyCall/ConfigDynamicProxyPolicy.cs rename to Editor/ProxyCall/ConfigProxyCallPolicy.cs index 92e0520..e6e9658 100644 --- a/Editor/ProxyCall/ConfigDynamicProxyPolicy.cs +++ b/Editor/ProxyCall/ConfigProxyCallPolicy.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; namespace Obfuz.DynamicProxy { - public class ConfigDynamicProxyPolicy : DynamicProxyPolicyBase + public class ConfigProxyCallPolicy : ProxyCallPolicyBase { public override bool NeedDynamicProxyCallInMethod(MethodDef method) { diff --git a/Editor/ProxyCall/DefaultDynamicProxyObfuscator.cs b/Editor/ProxyCall/DefaultProxyCallObfuscator.cs similarity index 89% rename from Editor/ProxyCall/DefaultDynamicProxyObfuscator.cs rename to Editor/ProxyCall/DefaultProxyCallObfuscator.cs index 9400813..9eb5c5e 100644 --- a/Editor/ProxyCall/DefaultDynamicProxyObfuscator.cs +++ b/Editor/ProxyCall/DefaultProxyCallObfuscator.cs @@ -6,12 +6,12 @@ using Obfuz.Emit; namespace Obfuz.DynamicProxy { - public class DefaultDynamicProxyObfuscator : DynamicProxyObfuscatorBase + public class DefaultProxyCallObfuscator : ProxyCallObfuscatorBase { private readonly IRandom _random; private readonly ProxyCallAllocator _proxyCallAllocator; - public DefaultDynamicProxyObfuscator(IRandom random) + public DefaultProxyCallObfuscator(IRandom random) { _random = random; _proxyCallAllocator = new ProxyCallAllocator(random); diff --git a/Editor/ProxyCall/IDynamicProxyObfuscator.cs b/Editor/ProxyCall/IProxyCallObfuscator.cs similarity index 88% rename from Editor/ProxyCall/IDynamicProxyObfuscator.cs rename to Editor/ProxyCall/IProxyCallObfuscator.cs index bd3126b..fcc26a4 100644 --- a/Editor/ProxyCall/IDynamicProxyObfuscator.cs +++ b/Editor/ProxyCall/IProxyCallObfuscator.cs @@ -8,7 +8,7 @@ using System.Threading.Tasks; namespace Obfuz.DynamicProxy { - public interface IDynamicProxyObfuscator + public interface IProxyCallObfuscator { void Obfuscate(MethodDef callingMethod, IMethod calledMethod, bool callVir, List obfuscatedInstructions); diff --git a/Editor/ProxyCall/IDynamicProxyPolicy.cs b/Editor/ProxyCall/IProxyCallPolicy.cs similarity index 88% rename from Editor/ProxyCall/IDynamicProxyPolicy.cs rename to Editor/ProxyCall/IProxyCallPolicy.cs index 2154c6b..86fc264 100644 --- a/Editor/ProxyCall/IDynamicProxyPolicy.cs +++ b/Editor/ProxyCall/IProxyCallPolicy.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; namespace Obfuz.DynamicProxy { - public interface IDynamicProxyPolicy + public interface IProxyCallPolicy { bool NeedDynamicProxyCallInMethod(MethodDef method); diff --git a/Editor/ProxyCall/DynamicProxyObfuscatorBase.cs b/Editor/ProxyCall/ProxyCallObfuscatorBase.cs similarity index 79% rename from Editor/ProxyCall/DynamicProxyObfuscatorBase.cs rename to Editor/ProxyCall/ProxyCallObfuscatorBase.cs index ae23bc4..0315856 100644 --- a/Editor/ProxyCall/DynamicProxyObfuscatorBase.cs +++ b/Editor/ProxyCall/ProxyCallObfuscatorBase.cs @@ -4,7 +4,7 @@ using System.Collections.Generic; namespace Obfuz.DynamicProxy { - public abstract class DynamicProxyObfuscatorBase : IDynamicProxyObfuscator + public abstract class ProxyCallObfuscatorBase : IProxyCallObfuscator { public abstract void Obfuscate(MethodDef callingMethod, IMethod calledMethod, bool callVir, List obfuscatedInstructions); public abstract void Done(); diff --git a/Editor/ProxyCall/DynamicProxyPass.cs b/Editor/ProxyCall/ProxyCallPass.cs similarity index 86% rename from Editor/ProxyCall/DynamicProxyPass.cs rename to Editor/ProxyCall/ProxyCallPass.cs index 91ee7fe..096f429 100644 --- a/Editor/ProxyCall/DynamicProxyPass.cs +++ b/Editor/ProxyCall/ProxyCallPass.cs @@ -12,17 +12,17 @@ using UnityEngine.Assertions; namespace Obfuz.DynamicProxy { - public class DynamicProxyPass : MethodBodyObfuscationPassBase + public class ProxyCallPass : MethodBodyObfuscationPassBase { private readonly IRandom _random; - private readonly IDynamicProxyPolicy _dynamicProxyPolicy; - private readonly IDynamicProxyObfuscator _dynamicProxyObfuscator; + private readonly IProxyCallPolicy _dynamicProxyPolicy; + private readonly IProxyCallObfuscator _dynamicProxyObfuscator; - public DynamicProxyPass() + public ProxyCallPass() { _random = new RandomWithKey(new byte[] { 0x1, 0x2, 0x3, 0x4 }, 0x5); - _dynamicProxyPolicy = new ConfigDynamicProxyPolicy(); - _dynamicProxyObfuscator = new DefaultDynamicProxyObfuscator(_random); + _dynamicProxyPolicy = new ConfigProxyCallPolicy(); + _dynamicProxyObfuscator = new DefaultProxyCallObfuscator(_random); } public override void Stop(ObfuscatorContext ctx) diff --git a/Editor/ProxyCall/DynamicProxyPolicyBase.cs b/Editor/ProxyCall/ProxyCallPolicyBase.cs similarity index 76% rename from Editor/ProxyCall/DynamicProxyPolicyBase.cs rename to Editor/ProxyCall/ProxyCallPolicyBase.cs index 8718fe1..b98d4c5 100644 --- a/Editor/ProxyCall/DynamicProxyPolicyBase.cs +++ b/Editor/ProxyCall/ProxyCallPolicyBase.cs @@ -2,7 +2,7 @@ namespace Obfuz.DynamicProxy { - public abstract class DynamicProxyPolicyBase : IDynamicProxyPolicy + public abstract class ProxyCallPolicyBase : IProxyCallPolicy { public abstract bool NeedDynamicProxyCallInMethod(MethodDef method);