本帖最后由 残剑丶 于 2023-11-04 11:05 编辑
1.用DNSPY打开dll 2.在aspose里找到类 \u0006\u0018 然后查找 ;; 到虚拟机的核心位置 3.点击跳转值的那个变量,到定义的地方,他下面的是他的返回值存储的变量. 这4个变量是需要观察的关键点.
4.可以把这几个关键变量改个名字方便看 ,分别是totalLength,jumpto,currentPos,returnValue;
5.在while的地方下断,按F5运行, 会看见totalLength发生改变
6.如果你有过期的注册码, 当totallength==0x4db时,是在检验注册码 如果你点击this.\u000E();到方法的最后处下断,然后一直F5,你会看见currentpos和returnvalue一直在改变 当currentpos==0x39c时,他开始取注册信息中的过期时间 当currentpos==0x431时,他开始年月日逐一比较 当currentpos==0x3DF时,如果过期他会跳0x46b, 没过期跳0x484 于是关键就是在这个位置让他跳484 有过期码的时候,就这样了.
7.当totallength==0x18C时,是在判断是否正版
当currentpos==0x17C时,他开始判断正版.是正版jumpto==null,不是的时候跳0x184 于是关键就是这里不能让它跳. 没注册码时就这样了
8.暗桩 当totallength==0xE5时说明进入到暗桩判断. 不一定每次都进,随机进入的 当currentpos==0xd9时,观察returnValue,如果是1,则暗桩生效,生成的文件错误.,0则不生效 于是关键就是在此处把 retuelValue的1改成0
9,更改后这段代码是这样的
下方隐藏内容为本帖所有文件或源码下载链接:
游客你好,如果您要查看本帖隐藏链接需要登录才能查看,
请先登录
|