好友
阅读权限10
听众
最后登录1970-1-1
|
Kris
发表于 2011-8-18 20:35
本帖最后由 Kris 于 2011-8-18 20:36 编辑
可以为▲,→等等
00401032 /. 55 push ebp
00401033 |. 8BEC mov ebp,esp
00401035 |. 81EC 60000000 sub esp,0x60
0040103B |. C745 FC 00000>mov [local.1],0x0
00401042 |. 6A FF push -0x1
00401044 |. 6A 08 push 0x8
00401046 |. 68 07000116 push 0x16010007
0040104B |. 68 01000152 push 0x52010001
00401050 |. E8 03030000 call crack-me.00401358 ; 获取窗口中某标签标题
00401055 |. 83C4 10 add esp,0x10 ; "※序注册验证 失败"
00401058 |. 8945 F8 mov [local.2],eax ; [local.2]保存标签标题
0040105B |. 68 01030080 push 0x80000301
00401060 |. 6A 00 push 0x0
00401062 |. 68 01000000 push 0x1
00401067 |. 68 04000080 push 0x80000004
0040106C |. 6A 00 push 0x0
0040106E |. 8B45 F8 mov eax,[local.2]
00401071 |. 85C0 test eax,eax
00401073 |. 75 05 jnz Xcrack-me.0040107A
00401075 |. B8 589B4600 mov eax,crack-me.00469B58
0040107A |> 50 push eax
0040107B |. 68 02000000 push 0x2
00401080 |. BB 30144000 mov ebx,crack-me.00401430
00401085 |. E8 C2020000 call crack-me.0040134C ; 取标签标题的代码
0040108A |. 83C4 1C add esp,0x1C
0040108D |. 8945 F4 mov [local.3],eax ; [local.3]保存该标签标题代码
00401090 |. 8B5D F8 mov ebx,[local.2]
00401093 |. 85DB test ebx,ebx
00401095 |. 74 09 je Xcrack-me.004010A0
00401097 |. 53 push ebx
00401098 |. E8 B5020000 call crack-me.00401352
0040109D |. 83C4 04 add esp,0x4
004010A0 |> 6A FF push -0x1
004010A2 |. 6A 08 push 0x8
004010A4 |. 68 07000116 push 0x16010007
004010A9 |. 68 01000152 push 0x52010001
004010AE |. E8 A5020000 call crack-me.00401358 ; 获取窗口中某标签标题
004010B3 |. 83C4 10 add esp,0x10 ; "※序注册验证 失败"
004010B6 |. 8945 F0 mov [local.4],eax ; [local.4]保存标签标题
004010B9 |. 68 01030080 push 0x80000301
004010BE |. 6A 00 push 0x0
004010C0 |. 68 01000000 push 0x1
004010C5 |. 68 04000080 push 0x80000004
004010CA |. 6A 00 push 0x0
004010CC |. 8B45 F0 mov eax,[local.4]
004010CF |. 85C0 test eax,eax
004010D1 |. 75 05 jnz Xcrack-me.004010D8
004010D3 |. B8 589B4600 mov eax,crack-me.00469B58
004010D8 |> 50 push eax
004010D9 |. 68 02000000 push 0x2
004010DE |. BB 30144000 mov ebx,crack-me.00401430
004010E3 |. E8 64020000 call crack-me.0040134C ; 取标签标题的代码
004010E8 |. 83C4 1C add esp,0x1C
004010EB |. 8945 EC mov [local.5],eax ; [local.5]保存该标签标题代码
004010EE |. 8B5D F0 mov ebx,[local.4]
004010F1 |. 85DB test ebx,ebx
004010F3 |. 74 09 je Xcrack-me.004010FE
004010F5 |. 53 push ebx
004010F6 |. E8 57020000 call crack-me.00401352
004010FB |. 83C4 04 add esp,0x4
004010FE |> DB45 F4 fild [local.3]
00401101 |. DD5D E4 fstp qword ptr ss:[ebp-0x1C]
00401104 |. DD45 E4 fld qword ptr ss:[ebp-0x1C]
00401107 |. DB45 EC fild [local.5]
0040110A |. DD5D DC fstp qword ptr ss:[ebp-0x24]
0040110D |. DC45 DC fadd qword ptr ss:[ebp-0x24]
00401110 |. DD5D D4 fstp qword ptr ss:[ebp-0x2C] ; 把取到的两个标签内容的代码转换为小数型,并相加
00401113 |. 68 01060080 push 0x80000601
00401118 |. FF75 D8 push [local.10] ; [local.10]中保存的是刚才小数相加的结果
0040111B |. FF75 D4 push [local.11]
0040111E |. 68 01000000 push 0x1
00401123 |. BB A0154000 mov ebx,crack-me.004015A0
00401128 |. E8 1F020000 call crack-me.0040134C ; 小数转换为文本
0040112D |. 83C4 10 add esp,0x10
00401130 |. 8945 D0 mov [local.12],eax ; [local.12]保存小数转换的文本数据
00401133 |. 6A FF push -0x1
00401135 |. 6A 08 push 0x8
00401137 |. 68 0E000116 push 0x1601000E
0040113C |. 68 01000152 push 0x52010001
00401141 |. E8 12020000 call crack-me.00401358 ; 获取编辑框内容
00401146 |. 83C4 10 add esp,0x10
00401149 |. 8945 CC mov [local.13],eax ; [local.13]保存编辑框内容
0040114C |. 68 01030080 push 0x80000301
00401151 |. 6A 00 push 0x0
00401153 |. 68 01000000 push 0x1
00401158 |. 68 04000080 push 0x80000004
0040115D |. 6A 00 push 0x0
0040115F |. 8B45 CC mov eax,[local.13]
00401162 |. 85C0 test eax,eax
00401164 |. 75 05 jnz Xcrack-me.0040116B
00401166 |. B8 589B4600 mov eax,crack-me.00469B58
0040116B |> 50 push eax
0040116C |. 68 02000000 push 0x2
00401171 |. BB 30144000 mov ebx,crack-me.00401430
00401176 |. E8 D1010000 call crack-me.0040134C ; 取编辑框内容的代码
0040117B |. 83C4 1C add esp,0x1C
0040117E |. 8945 C8 mov [local.14],eax ; [local.14]保存编辑框内容到代码
00401181 |. 8B5D CC mov ebx,[local.13]
00401184 |. 85DB test ebx,ebx
00401186 |. 74 09 je Xcrack-me.00401191
00401188 |. 53 push ebx
00401189 |. E8 C4010000 call crack-me.00401352
0040118E |. 83C4 04 add esp,0x4
00401191 |> 6A FF push -0x1
00401193 |. 6A 08 push 0x8
00401195 |. 68 0E000116 push 0x1601000E
0040119A |. 68 01000152 push 0x52010001
0040119F |. E8 B4010000 call crack-me.00401358 ; 取编辑框内容的代码
004011A4 |. 83C4 10 add esp,0x10
004011A7 |. 8945 C4 mov [local.15],eax ; [local.15]保存编辑框内容
004011AA |. 68 01030080 push 0x80000301
004011AF |. 6A 00 push 0x0
004011B1 |. 68 01000000 push 0x1
004011B6 |. 68 04000080 push 0x80000004
004011BB |. 6A 00 push 0x0
004011BD |. 8B45 C4 mov eax,[local.15]
004011C0 |. 85C0 test eax,eax
004011C2 |. 75 05 jnz Xcrack-me.004011C9
004011C4 |. B8 589B4600 mov eax,crack-me.00469B58
004011C9 |> 50 push eax
004011CA |. 68 02000000 push 0x2
004011CF |. BB 30144000 mov ebx,crack-me.00401430
004011D4 |. E8 73010000 call crack-me.0040134C ; 取编辑框内容的代码
004011D9 |. 83C4 1C add esp,0x1C
004011DC |. 8945 C0 mov [local.16],eax ; [local.16]保存编辑框内容到代码
004011DF |. 8B5D C4 mov ebx,[local.15]
004011E2 |. 85DB test ebx,ebx
004011E4 |. 74 09 je Xcrack-me.004011EF
004011E6 |. 53 push ebx
004011E7 |. E8 66010000 call crack-me.00401352
004011EC |. 83C4 04 add esp,0x4
004011EF |> DB45 C8 fild [local.14]
004011F2 |. DD5D B8 fstp qword ptr ss:[ebp-0x48]
004011F5 |. DD45 B8 fld qword ptr ss:[ebp-0x48]
004011F8 |. DB45 C0 fild [local.16]
004011FB |. DD5D B0 fstp qword ptr ss:[ebp-0x50]
004011FE |. DC45 B0 fadd qword ptr ss:[ebp-0x50]
00401201 |. DD5D A8 fstp qword ptr ss:[ebp-0x58] ; 把取到的两个编辑框内容的代码转换为小数型,并相加
00401204 |. 68 01060080 push 0x80000601
00401209 |. FF75 AC push [local.21] ; [local.21]中保存的是刚才小数相加的结果
0040120C |. FF75 A8 push [local.22]
0040120F |. 68 01000000 push 0x1
00401214 |. BB A0154000 mov ebx,crack-me.004015A0
00401219 |. E8 2E010000 call crack-me.0040134C ; 小数转换为文本
0040121E |. 83C4 10 add esp,0x10
00401221 |. 8945 A4 mov [local.23],eax ; [local.23]保存小数转换的文本数据
00401224 |. 68 02000080 push 0x80000002
00401229 |. 6A 00 push 0x0
0040122B |. 68 01000000 push 0x1
00401230 |. 68 04000080 push 0x80000004
00401235 |. 6A 00 push 0x0
00401237 |. 8B45 A4 mov eax,[local.23]
0040123A |. 85C0 test eax,eax
0040123C |. 75 05 jnz Xcrack-me.00401243
0040123E |. B8 589B4600 mov eax,crack-me.00469B58
00401243 |> 50 push eax
00401244 |. 68 04000080 push 0x80000004
00401249 |. 6A 00 push 0x0
0040124B |. 8B45 D0 mov eax,[local.12]
0040124E |. 85C0 test eax,eax
00401250 |. 75 05 jnz Xcrack-me.00401257
00401252 |. B8 589B4600 mov eax,crack-me.00469B58
00401257 |> 50 push eax
00401258 |. 68 03000000 push 0x3
0040125D |. BB B0144000 mov ebx,crack-me.004014B0
00401262 |. E8 E5000000 call crack-me.0040134C ; 比较标签和编辑框内容到代码到小数并相加的文本是否相同
00401267 |. 83C4 28 add esp,0x28
0040126A |. 8945 A0 mov [local.24],eax ; [local.24]中保存结果
0040126D |. 8B5D D0 mov ebx,[local.12]
00401270 |. 85DB test ebx,ebx
00401272 |. 74 09 je Xcrack-me.0040127D
00401274 |. 53 push ebx
00401275 |. E8 D8000000 call crack-me.00401352
0040127A |. 83C4 04 add esp,0x4
0040127D |> 8B5D A4 mov ebx,[local.23]
00401280 |. 85DB test ebx,ebx
00401282 |. 74 09 je Xcrack-me.0040128D
00401284 |. 53 push ebx
00401285 |. E8 C8000000 call crack-me.00401352
0040128A |. 83C4 04 add esp,0x4
0040128D |> 8B45 A0 mov eax,[local.24]
00401290 |. 8945 FC mov [local.1],eax ; [local.1]中保存结果
00401293 |. DB45 FC fild [local.1]
00401296 |. DD5D F4 fstp qword ptr ss:[ebp-0xC] ; 结果转小数
00401299 |. 68 01060080 push 0x80000601
0040129E |. FF75 F8 push [local.2]
004012A1 |. FF75 F4 push [local.3]
004012A4 |. 68 01000000 push 0x1
004012A9 |. BB B0134000 mov ebx,crack-me.004013B0
004012AE |. E8 99000000 call crack-me.0040134C ; 取绝对值
004012B3 |. 83C4 10 add esp,0x10
004012B6 |. 8945 EC mov [local.5],eax ; [local.5]中保存该值
004012B9 |. 8955 F0 mov [local.4],edx
004012BC |. DD45 EC fld qword ptr ss:[ebp-0x14]
004012BF |. DC0D 599B4600 fmul qword ptr ds:[0x469B59]
004012C5 |. DD5D E4 fstp qword ptr ss:[ebp-0x1C]
004012C8 |. DD45 E4 fld qword ptr ss:[ebp-0x1C]
004012CB |. DC05 619B4600 fadd qword ptr ds:[0x469B61]
004012D1 |. DD5D DC fstp qword ptr ss:[ebp-0x24]
004012D4 |. DD45 DC fld qword ptr ss:[ebp-0x24] ; 绝对值*1000+208
004012D7 |. E8 2FFDFFFF call crack-me.0040100B ; 让eax=计算结果
004012DC |. 6A 00 push 0x0
004012DE |. 50 push eax
004012DF |. 6A FF push -0x1
004012E1 |. 6A 02 push 0x2
004012E3 |. 68 07000116 push 0x16010007
004012E8 |. 68 01000152 push 0x52010001
004012ED |. E8 54000000 call crack-me.00401346 ; 设置失败的标签的宽为该结果
004012F2 |. 83C4 18 add esp,0x18 ; 一切是因为标签和编辑框内容不同返回-1引起的
004012F5 |. 8BE5 mov esp,ebp ; 所以只要编辑框和标签的第一个字节相同即可
004012F7 |. 5D pop ebp ; 标签的第一个字节为0xA1
004012F8 \. C3 retn ; 所以编辑框的内容的第一个字的首字节为0xA1即可,可以为▲,→等等
|
|