MacroRecorder 逆向,跳过注册码验证!

汉化版软件原贴地址: https://www.52pojie.cn/thread-979534-1-1.html
dnspy打开主程序,找到这个函数,把返回值都改成VerifyResult.OK; 对应的 IL 值为 ldc.i4.1
下面是改好的:
        
// Token: 0x0600003C RID: 60 RVA: 0x00002D28 File Offset: 0x00000F28
        
public static VerifyResult VerifyKey(string username, string serial, string publicKeyXml)
        
{
            
bool flag;
            
DateTime t;
            
if (!SerialGenerator.VerifyKey(username, serial, publicKeyXml, out flag, out t))
            
{
               
return VerifyResult.OK;
            
}
            
if ((flag ? SerialGenerator.RetrieveLinkerTimestamp() : DateTime.Now) > t)
            
{
               
return VerifyResult.OK;
            
}
            
return VerifyResult.OK;
        
}
下面是对应的IL代码:
0 0000 ldarg.0
1 0001 ldarg.1
2 0002 ldarg.2
3 0003 ldloca.s V_0 (0)
4 0005 ldloca.s V_1 (1)
5 0007 call bool KeyGen.SerialGenerator::VerifyKey(string, string, string, bool&, valuetype [mscorlib]System.DateTime&)
6 000C brtrue.s 9 (0010) ldloc.0
7 000E ldc.i4.1  修改此处
8 000F ret
9 0010 ldloc.0
10 0011 brtrue.s 13 (001A) call valuetype [mscorlib]System.DateTime KeyGen.SerialGenerator::RetrieveLinkerTimestamp()
11 0013 call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now()
12 0018 br.s 14 (001F) ldloc.1
13 001A call valuetype [mscorlib]System.DateTime KeyGen.SerialGenerator::RetrieveLinkerTimestamp()
14 001F ldloc.1
15 0020 call bool [mscorlib]System.DateTime::op_GreaterThan(valuetype [mscorlib]System.DateTime, valuetype [mscorlib]System.DateTime)
16 0025 brfalse.s 19 (0029) ldc.i4.1
17 0027 ldc.i4.1 修改此处
18 0028 ret
19 0029 ldc.i4.1
20 002A ret



THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发
  • 管埋员

    昵称

  • 取消

    请填写用户信息: