ETS英语E听说破解过程(终结版)
本帖最后由 小飞虫 于 2018-1-20 18:38 编辑破解全程断网,联网hosts屏蔽 127.0.0.1 api.ets100.com
原版下载:http://cdn.fei.ets100.com/package/ETS_GDH3_PCPE_v2.1.3.zip 失效
关键跳因该可以找到真码但整么找关键跳和关键call呢,很多帖子都没说@cqr2287 @Hmily 求告知
找到关键跳和call后怎样才能找到码
F7跟F8该如何选择? 0035AB40/$55 PUSH EBP
0035AB41|.8BEC MOV EBP,ESP
0035AB43|.83E4 F8 AND ESP,0xFFFFFFF8
0035AB46|.6A FF PUSH -0x1
0035AB48|.68 ABD84E00 PUSH Ets.004ED8AB
0035AB4D|.64:A1 0000000>MOV EAX,DWORD PTR FS:
0035AB53|.50 PUSH EAX
0035AB54|.83EC 08 SUB ESP,0x8
0035AB57|.53 PUSH EBX
0035AB58|.56 PUSH ESI
0035AB59|.57 PUSH EDI
0035AB5A|.A1 10815A00 MOV EAX,DWORD PTR DS:
0035AB5F|.33C4 XOR EAX,ESP
0035AB61|.50 PUSH EAX
0035AB62|.8D4424 18 LEA EAX,DWORD PTR SS:
0035AB66|.64:A3 0000000>MOV DWORD PTR FS:,EAX
0035AB6C|.8BF9 MOV EDI,ECX
0035AB6E|.68 5C020000 PUSH 0x25C
0035AB73|.E8 A3F70400 CALL Ets.003AA31B
0035AB78|.83C4 04 ADD ESP,0x4
0035AB7B|.894424 10 MOV DWORD PTR SS:,EAX
0035AB7F|.C74424 20 000>MOV DWORD PTR SS:,0x0
0035AB87|.85C0 TEST EAX,EAX
0035AB89|.74 0B JE SHORT Ets.0035AB96
0035AB8B|.8BC8 MOV ECX,EAX
0035AB8D|.E8 BE8AF3FF CALL Ets.00293650
0035AB92|.8BF0 MOV ESI,EAX
0035AB94|.EB 02 JMP SHORT Ets.0035AB98
0035AB96|>33F6 XOR ESI,ESI
0035AB98|>C74424 20 FFF>MOV DWORD PTR SS:,-0x1
0035ABA0|.8BCE MOV ECX,ESI
0035ABA2|.8B5F 04 MOV EBX,DWORD PTR DS:
0035ABA5|.89B7 A8020000 MOV DWORD PTR DS:,ESI
0035ABAB|.8B06 MOV EAX,DWORD PTR DS:
0035ABAD|.FF50 04 CALL NEAR DWORD PTR DS:
0035ABB0|.85C0 TEST EAX,EAX
0035ABB2|.74 0B JE SHORT Ets.0035ABBF
0035ABB4|.8BCE MOV ECX,ESI
0035ABB6|.E8 5507FCFF CALL Ets.0031B310
0035ABBB|.84C0 TEST AL,AL
0035ABBD|.74 4A JE SHORT Ets.0035AC09
0035ABBF|>8B06 MOV EAX,DWORD PTR DS:
0035ABC1|.8BCE MOV ECX,ESI
0035ABC3|.FF50 04 CALL NEAR DWORD PTR DS:
0035ABC6|.85C0 TEST EAX,EAX
0035ABC8|.75 0B JNZ SHORT Ets.0035ABD5
0035ABCA|.8BCE MOV ECX,ESI
0035ABCC|.E8 8F06FCFF CALL Ets.0031B260
0035ABD1|.84C0 TEST AL,AL
0035ABD3 74 34 JE SHORT Ets.0035AC09 ;修改这里 就可以跳过盗版不用修改hosts了
0035ABD5|>8B06 MOV EAX,DWORD PTR DS:
0035ABD7|.8BCE MOV ECX,ESI
0035ABD9|.56 PUSH ESI
0035ABDA|.FF35 AC705B00 PUSH DWORD PTR DS: ;Ets.00280000
0035ABE0|.6A 00 PUSH 0x0
0035ABE2|.53 PUSH EBX
0035ABE3|.68 3C020000 PUSH 0x23C
0035ABE8|.68 20030000 PUSH 0x320
0035ABED|.6A 00 PUSH 0x0
0035ABEF|.6A 00 PUSH 0x0
0035ABF1|.68 0000CF10 PUSH 0x10CF0000
0035ABF6|.68 84DD5500 PUSH Ets.0055DD84 ;讯飞E听说-黑名单
0035ABFB|.FF10 CALL NEAR DWORD PTR DS:
0035ABFD|.50 PUSH EAX ; |Class
0035ABFE|.6A 00 PUSH 0x0 ; |ExtStyle = 0
0035AC00|.FF15 88485100 CALL NEAR DWORD PTR DS:[<&USER32.Crea>; \CreateWindowExA
0035AC06|.8946 04 MOV DWORD PTR DS:,EAX
0035AC09|>8B8F A8020000 MOV ECX,DWORD PTR DS:
0035AC0F|.E8 4C04FCFF CALL Ets.0031B060
0035AC14|.8B8F A8020000 MOV ECX,DWORD PTR DS:
0035AC1A|.6A 00 PUSH 0x0
0035AC1C|.E8 7F02FCFF CALL Ets.0031AEA0 ;弹出 您是盗版!
本帖最后由 icyray 于 2017-2-12 22:24 编辑
嗯,这个软件有「注册成功」与「注册失败」的提示。
跳到「成功」处,观察。成功下方便是失败提示,说明有个关键跳跳过了成功。
到「成功」上方看看,找个jnz,跳过成功,指向了失败,没错就是它。
在关键跳上面几个call就是关键call了,断之。
输假码,F8,注意观察寄存器,当你的假码和一串字符出现时,这个call多半就是比较真假码的。
如果只是要做注册机的话,到这里就可以了。记下这个call的地址,首字节,真码寄存器位置(eax),真码编码(unicode),丢注册机生成器里,搞定。
若有兴趣探索注册码生成算法,再上面几个call便是,可以进入看看具体流程。
手机码字,发帖总出错,也没法发图参考,楼主将就一下。 你缺少的是耐心 小飞虫 发表于 2017-2-13 21:50
就是说找跳向失败的jnz(就是关键跳)jnz上面的call就是关键call???
嗯,一般这个关键call就是对比你输入的注册码的。 楼主加油 支持一个!!!!!!!!!!!! 手机上的没细看内容,既然是一个软件分析,短时间就不要发多个主题了,在原贴编辑更新吧。 这个必须要支持 支持一个!!!!!!!!!!!! 楼主你真牛,不过给附带工具就好了!~ 感谢楼主分享过程 楼主辛苦,谢谢了,回帖是美德。。。。