125096 发表于 2011-6-28 09:51

很难想象这是一个易语言的程序

这个cm是在UPK看到的,搞不定。拿来给大家玩玩
正确的注册码是123

Kiζs~乄 发表于 2011-6-28 10:01

为什么很难想像呢?

waterwhite 发表于 2011-6-28 10:44

不知道是干嘛用的 求科普

CrazyCCU 发表于 2011-6-28 10:47

本帖最后由 CrazyCCU 于 2011-6-28 11:39 编辑





Microsoft Visual C++ 6.0 是E语言的 帖张OEP图 Crack的图 和Unpack后的程序


2666fff 发表于 2011-6-28 11:22

本帖最后由 2666fff 于 2011-6-28 11:25 编辑

LS传错了吧,是没有脱得啊。我附一个脱了的吧。
怎么说呢,其实这个程序脱不脱壳一样可以弄,因为所有判断什么的都不在源程序里,而是影射到了cmd.exe里。
调试起来有些难度,说一下方法吧:
OD附加原程序 “示例” 然后下断 BP CreateFileW 运行直到堆栈出现两次CMD.exe后的下一次。

0012E1D0   7C814E05/CALL 到 CreateFileW 来自 kernel32.7C814E00
0012E1D4   0012E228|FileName = "G:\WINDOWS\system32\cmd.exe"
0012E1D8   80000000|Access = GENERIC_READ
0012E1DC   00000005|ShareMode = FILE_SHARE_READ|4
0012E1E0   00000000|pSecurity = NULL
0012E1E4   00000003|Mode = OPEN_EXISTING
0012E1E8   00000000|Attributes = 0
0012E1EC   00000000\hTemplateFile = NULL

这时候真正的窗口就出来了。
然后再开一个OD附加 cmd.exe
一定要让示例暂停,不然的话无法附加cmd.exe
在附加了cmd.exe的OD里 转到:

004012CB    83C4 10         add esp,0x10
004012CE    8945 FC         mov dword ptr ss:,eax
004012D1    68 9DA64600   push cmd.0046A69D                        ; ASCII "123"
004012D6    FF75 FC         push dword ptr ss:
004012D9    E8 34FFFFFF   call cmd.00401212
004012DE    83C4 08         add esp,0x8                              ; eax置0
004012E1    83F8 00         cmp eax,0x0
004012E4 >B8 00000000   mov eax,0x0
004012E9    0F95C0          setne al

004012DE 这里下个断点,输入假吗后会运行到这里,然后将eax置0, 在继续运行就OK了。

这个方法很奇特,不常见,一般都是用dll来代替的,她这个用cmd,所以不好弄。

CrazyCCU 发表于 2011-6-28 11:31

本帖最后由 CrazyCCU 于 2011-6-28 11:32 编辑

回复 2666fff 的帖子

Unpack的没穿错,你应该是优化了吧   不过你的方法很好 受教了

2666fff 发表于 2011-6-28 11:32

回复 CrazyCCU 的帖子

你传的是原文件,你下下来看看。

CrazyCCU 发表于 2011-6-28 11:38

回复 2666fff 的帖子

阿门!愿主原谅我! Thank you

kkbblzq 发表于 2011-6-28 17:18

- -借用系统程序当外壳运行资源内的程序。。。

3765999 发表于 2011-6-29 00:23

回复 125096 的帖子

http://u.115.com/file/aq2853km#
aaa.rar

来继续破解这个··!!!
页: [1] 2
查看完整版本: 很难想象这是一个易语言的程序