diff --git a/Confuser.Protections/TypeScrambler/Scrambler/Rewriter/Instructions/MemberRefInstructionRewriter.cs b/Confuser.Protections/TypeScrambler/Scrambler/Rewriter/Instructions/MemberRefInstructionRewriter.cs index f77b30782..596c7fcaf 100644 --- a/Confuser.Protections/TypeScrambler/Scrambler/Rewriter/Instructions/MemberRefInstructionRewriter.cs +++ b/Confuser.Protections/TypeScrambler/Scrambler/Rewriter/Instructions/MemberRefInstructionRewriter.cs @@ -24,8 +24,10 @@ internal override void ProcessOperand(TypeService service, MethodDef method, ILi ModuleDef mod = method.Module; - var gettype = typeof(Type).GetMethod("GetTypeFromHandle"); - var createInstance = typeof(Activator).GetMethod("CreateInstance", new Type[] { typeof(Type) }); + var corlibType = mod.CorLibTypes.GetTypeRef("System", "Type").ResolveThrow(); + var gettype = corlibType.FindMethod("GetTypeFromHandle"); + var createInstance = mod.CorLibTypes.GetTypeRef("System", "Activator").ResolveThrow() + .FindMethod("CreateInstance", MethodSig.CreateStatic(mod.CorLibTypes.Object, corlibType.ToTypeSig())); TypeSig sig = null;