首页
社区
课程
招聘
[旧帖] [求助]破解易语言的全过程[申请激活码] 0.00雪花
发表于: 2010-1-23 09:14 3764

[旧帖] [求助]破解易语言的全过程[申请激活码] 0.00雪花

2010-1-23 09:14
3764
5个步骤则实现真正的完美破解易语言主程序...
第一次写破解文章, 写得不好别见怪...

----------------------
159544386.key        [企业注册版]

159544386 → 0x09827442(十六进制)
09800000
00027442  → 硬件代码计算值

3A7FEF86D9A344BD279538025A6B881ED798010002DEEA0151B9C722075E0618F6B153ACB49B357E402DF46BB4169E78E7CD6760544CD4C4419373A6AEEA5B2CA46C0CDB3A2CD98E980EF419DBE10EA4F470B097172A44DB547D505DAF6187B8FCC4153A7FE91BEB33BE7FC71913C0FD26F7F6FE36B24C824FCFA51F2795EF0294CDC0C2F9917B370A5DB5F2D95BC05D328D0BA8D28442C2B451D7AE3E25E0585793F9BA8E4CC40460E58F38A49233145220218FEB7371944C5D41184B329739CB70792D6D04823C5AF45FE62DE7A3F6420FFECF6EAD0F8A83D9D21BF6433FABA1732B91CF085F0CDD4F0CA305FED4B717B4D1390B25ADD104578B63D252535BE04E362ADA6820117E8E274E7D93A0605EAD954C3AFFF3C8F4BADE8
----------------------
151435326.key        [专业注册版]

151435326 → 0x0906B83E(十六进制)
09000000
0006B83E  → 硬件代码计算值

7D8FE15E87E6FC5A7E8432678170D818D79801000138B001B7A795107368674E3311BE3351873AC4403F63902A98DB75F94CA0FF0178C02999C46E4E1CB45173F6A2766015B730EC1164572D01A56EA846E4EE5917480B0ABFD80D04B2352F155A427520D9C5D500B193F79E032A430825E58E393B5CEE3C67F43B6313B3061B60FE9614BD12083E0FD1CA2653036C53658CE090886455C534A0BD439B5C8362214E9CD409F37915BC0ED51F2A8B3A48B5E2E6D1E12234C58B18E0D66D1CAD8C750A49F666DB682990AC6E2BE768532E535A277178000EBF06C788BE40EDE2E25802558F193E1E83CAC3933C08361A83C2616CE5186E512360AE7C18AD54C99B468609E26FE857CF9AD6434E1E64DA7EDDDEE3E65E3A7CCC4CE81A
----------------------
194958212.key        [专业注册版]

194958212 → 0x0B9ED384(十六进制)
0B900000
000ED384  → 硬件代码计算值

E07DF3182ABAFF3BC8A9BC320E51F56FD798010000126F00C6CBA216CA3E5F5CC66713D0747C4A1B1AFAB00E118717BD1CA6D76A5F3E731D0B0000A39D446622A327523EE2CB35DFCE3EB03604432A16730DEDB99BA2A1B49AE270CC8DC14830825D82507B9A13FCC7C42AD5A13D7087D68CE6AEF78CBC1268ADAB64F45231F42BAA1859DD1D8301B02379D188CF814A1C0C90E68935F172FAECEE671A47B7B98EC8A9174488B2E39878FE3B45F7D7AF26150998534FAE40C847EB8C133F422E96128D079FD3B0F46E6D08DEE909E019CA59AEDA706D036778B2B77BFA58439D5106730AA9C8A83C1335F2EDC8D87475ACA2BCE193DFED29F92ECABC1875E1D4C8E581377F0C489A61D87000354CC5D299F48B908E0F087AE2A52C3
----------------------
1.[企业注册版]KEY的硬件代码[159544386]计算过程...

004DC1F0   $  8B4C24 0C     MOV ECX, DWORD PTR SS:[ESP+C]  ; 硬件代码计算入口
004DC1F4   .  55            PUSH EBP
004DC1F5   .  8B6C24 14     MOV EBP, DWORD PTR SS:[ESP+14]
004DC1F9   .  56            PUSH ESI
004DC1FA   .  57            PUSH EDI
004DC1FB   .  8B7C24 14     MOV EDI, DWORD PTR SS:[ESP+14]
004DC1FF   .  85ED          TEST EBP, EBP
004DC201   .  7E 28         JLE SHORT e.004DC22B
......省略部分代码
04DC23D   .  33C5          XOR EAX, EBP
004DC23F   .  5D            POP EBP
004DC240   .  C1E0 14       SHL EAX, 14
004DC243   .  33C1          XOR EAX, ECX
004DC245   .  C3            RETN                          ; EAX返回硬件代码后5位

通过跳转实现返回需要修改的硬件代码计算值

004DC245   . /E9 86EF0600   JMP 0054B1D0                  ; ←破解后

0054B1D0   > \8035 CAB15400>XOR BYTE PTR DS:[54B1CA], 0FF ; 标记是否返回计算硬件代码
0054B1D7   .  74 05         JE SHORT 0054B1DE
0054B1D9   .  B8 42740200   MOV EAX, 27442                ; 硬件代码后5位
0054B1DE   >  C3            RETN

//破解硬件代码计算
----------------------
2.因为上面的[159544386.key]早就被易语言公司封掉了,所以必须找到解封ID的计算代码

0040991B    8B55 D0         MOV EDX, DWORD PTR SS:[EBP-30]
0040991E    81F2 77C62D63   XOR EDX, 632DC677
00409924    8955 D0         MOV DWORD PTR SS:[EBP-30], EDX
00409927    8B85 10FFFFFF   MOV EAX, DWORD PTR SS:[EBP-F0]
0040992D    35 50B3AD89     XOR EAX, 89ADB350              ; 原计算值

0040991B    8B55 D0         MOV EDX, DWORD PTR SS:[EBP-30]
0040991E    81F2 77C62D63   XOR EDX, 632DC677
00409924    8955 D0         MOV DWORD PTR SS:[EBP-30], EDX
00409927    8B85 10FFFFFF   MOV EAX, DWORD PTR SS:[EBP-F0]
0040992D    35 55B3AD89     XOR EAX, 89ADB355              ; 解封硬件代码
00409932    8945 EC         MOV DWORD PTR SS:[EBP-14], EAX

//解封硬件代码计算[1]
----------------------
3.此处是最主要的解封ID计算值,如果不修改的话,是永远不能使用[159544386.key]进行注册的

00594CE0    1113                                           ; ←破解前
00594CE2    05CC

00594CE0    0000                                           ; ←破解后
00594CE2    0000

//解封硬件代码计算[2]
----------------------
4.一直以来,很多人都说易语言主程序没办法完美破解,是因为吴涛在主程序内做了很多暗桩...
其实这些暗桩的最终来源都在于内存[00401000]-[0054B1CA]内的可执行代码的MD5校验值
如果这个MD5校验值对不上的话,到后面就会出现很多随机的暗桩错误了.

004989CC  |.  8B4C24 28     MOV ECX, DWORD PTR SS:[ESP+28]
004989D0  |.  8B5424 24     MOV EDX, DWORD PTR SS:[ESP+24]
004989D4  |.  51            PUSH ECX                                 ;  [*MD5校验取值地址]
004989D5  |.  8B4C24 24     MOV ECX, DWORD PTR SS:[ESP+24]
004989D9  |.  52            PUSH EDX
004989DA  |.  51            PUSH ECX
004989DB  |.  FFD0          CALL EAX                                 ;  dp1.MGetMD5
004989DD  |.  8D4C24 08     LEA ECX, DWORD PTR SS:[ESP+8]
004989E1  |.  C74424 18 FFF>MOV DWORD PTR SS:[ESP+18], -1

直接使用跳转检测计算的MD5字符串是否正确并进行修改.
该值也算比较牛的...只要下一个断点就会改变计算值的了,所以在计算的时候要把所有断点都取消.

004989DB   . /E9 00280B00   JMP e.0054B1E0
004989E0     |90            NOP

0054B1E0   > \50            PUSH EAX
0054B1E1   .  8B4424 0C     MOV EAX, DWORD PTR SS:[ESP+C]
0054B1E5      A3 3CB25400   MOV DWORD PTR DS:[54B23C], EAX
0054B1EA   .  58            POP EAX
0054B1EB   .  FFD0          CALL EAX
0054B1ED   .  50            PUSH EAX
0054B1EE      A1 3CB25400   MOV EAX, DWORD PTR DS:[54B23C]
0054B1F3      8138 66646266 CMP DWORD PTR DS:[EAX], 66626466    ; 此处[66626466]为修改后主程序的内存MD5前4位
0054B1F9   .  75 37         JNZ SHORT e.0054B232
0054B1FB   .  C700 31393031 MOV DWORD PTR DS:[EAX], 31303931
0054B201   .  C740 04 64616>MOV DWORD PTR DS:[EAX+4], 36616164
0054B208   .  C740 08 64616>MOV DWORD PTR DS:[EAX+8], 65666164
0054B20F   .  C740 0C 38346>MOV DWORD PTR DS:[EAX+C], 61663438
0054B216   .  C740 10 61326>MOV DWORD PTR DS:[EAX+10], 35633261
0054B21D   .  C740 14 61656>MOV DWORD PTR DS:[EAX+14], 34646561
0054B224   .  C740 18 39373>MOV DWORD PTR DS:[EAX+18], 31323739
0054B22B   .  C740 1C 64613>MOV DWORD PTR DS:[EAX+1C], 62366164
0054B232   >  58            POP EAX
0054B233   .  8D4C24 08     LEA ECX, DWORD PTR SS:[ESP+8]
0054B237   .^ E9 A5D7F4FF   JMP e.004989E1

1901daa6dafe84faa2c5aed49721da6b        [*正确内存校验值]

//内存校验
----------------------
5.最后就是解决易语言主程序的文件自校验值了

00458D95    8B82 48090000   MOV EAX, DWORD PTR DS:[EDX+948]
00458D9B    8D8A 48090000   LEA ECX, DWORD PTR DS:[EDX+948]
00458DA1    FF50 28         CALL DWORD PTR DS:[EAX+28]
00458DA4    3B7C9D D4       CMP EDI, DWORD PTR SS:[EBP+EBX*4-2C]     ; *此处EDI值为现时计算文件校验值

在[00458DA4]处直接下硬件断点,此处会断下2次,记录下EDI里的值,再对应修改则完成.

DS:[00588CBC]=0019C9AE
004D184E
0x0188CBC                                                  ; ←文件校验地址[1]
//文件校验

DS:[00588CC0]=000347B1
006777B1
0x0188CC0                                                  ; ←文件校验地址[2]
//文件校验
----------------------

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (27)
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
请版主或管理员给个激活码
2010-1-23 09:18
0
雪    币: 198
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
学习 学习 谢谢
2010-1-23 11:03
0
雪    币: 99
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢分享
2010-1-23 11:54
0
雪    币: 370
活跃值: (52)
能力值: ( LV13,RANK:350 )
在线值:
发帖
回帖
粉丝
5
http://download.csdn.net/source/1777639

转帖请注明
谢谢支持
2010-1-23 11:59
0
雪    币: 103
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
看不明白,先行研究一下!
2010-2-3 11:54
0
雪    币: 285
活跃值: (16)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
楼主挺有意思的
2010-2-4 11:03
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不错 学习了一下`
2010-2-5 00:48
0
雪    币: 401
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
哈哈,挺有意思的。
2010-2-5 02:49
0
雪    币: 34
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
不会 太高深了
2010-2-5 16:36
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
是用哪个软件搞的?
2010-2-16 11:22
0
雪    币: 2290
活跃值: (2180)
能力值: (RANK:400 )
在线值:
发帖
回帖
粉丝
12
LZ  牛人啊,我来学习下
2010-2-16 13:45
0
雪    币: 1787
活跃值: (340)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
13
谢谢分享啦。。学习中~
2010-2-16 14:06
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
这个分析很好很到位,是楼主自己分析的还是转载的?
2010-2-23 10:36
0
雪    币: 296
活跃值: (76)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
LZ应该把那个附件也转过来
2010-2-23 11:29
0
雪    币: 21
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
楼主转载的怎么不说明白!
2010-2-25 10:16
0
雪    币: 200
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
人才啊。。。强大
2010-2-25 16:52
0
雪    币: 26
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
看不懂,不过顶下
2010-2-25 17:19
0
雪    币: 46
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19


老实点
2010-2-25 18:04
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
我是初学者,还是实实在在的当观众。。。
2010-3-6 21:54
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
写的不错,应该给邀请码。
2010-3-7 11:38
0
雪    币: 28
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
这啥东西  是你自己的???????????
2010-3-7 11:55
0
雪    币: 20
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
看不明白,先行研究一下!
2010-4-8 18:41
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
这个很牛啊,楼主好厉害啊!!!
2010-4-9 09:29
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
看到过无数次了
2010-4-9 09:38
0
游客
登录 | 注册 方可回帖
返回
//