aj3423 发表于 2008-9-11 22:30:50

C-Free 4.1 专业版 破解

C-Free是一款支持多种编译器的专业化C/C++集成开发环境(IDE)。利用本软件,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。
官方下载地址: http://www.programarts.com/cfree_ch/download.htm

安装后大致看了下 程序是BC++写的,注册信息保存在注册表hkcu\software\c-free\4 下

about对话框里有未注册字样,就从这里下手~

dede载入,找到about对话框的FormCreate事件地址471900,下断运行,点"关于",断下,单步走
可以看到前面是初始化一些版本之类,一直来到
00471FAE|.BA 66E66A00   mov   edx, 006AE666      ;ASCII "Unregistered User."
看到已经判断为未注册了,判断代码应该就在前面不远处,往上拉看到是从这里跳过来的
00471F02|> \A1 94D36F00   mov   eax, dword ptr
00471F07|.8B10          mov   edx, dword ptr
00471F09|.83BA F00A0000>cmp   dword ptr , 1
00471F10|.0F85 92000000 jnz   00471FA8

而这又是从下面跳转来的
00471CC1|.83BA F00A0000>cmp   dword ptr , 2;edx+AF0 = 00CF67A0, 注册标志!
00471CC8|.0F85 34020000 jnz   00471F02

该标志地址可能并非固定,所以如果注册标志不等于2 就over(等于1的话不知道什么用,试了下和0没区别),所以只要在之前的程序对00CF67A0赋值时候,把赋的值改成2就ok, ctrl+f2重来
由于00CF67A0这内存是运行期间分配的,所以要等程序读完注册表才能对它下断点,bp RegQueryValueExA,在00CF67A0所在内存被分配出来之后,对00CF67A0下内存写入断点,运行,断下2次
第一次
0042F019   .33D2          xor   edx, edx         
0042F01B   .8990 F00A0000 mov   dword ptr , edx    ;断在这
改成
0042F019      43            inc   ebx             ;此时ebx等于0
0042F01A      43            inc   ebx
0042F01B      8998 F00A0000 mov   dword ptr , ebx


第二次
00432123   .33C9          xor   ecx, ecx         
00432125   .898A F00A0000 mov   dword ptr , ecx    ;断在这
改成
00432123      90            nop                     ;此时eax等于1
00432124      40            inc   eax
00432125      8982 F00A0000 mov   dword ptr , eax


修改后,运行程序,点"关于",还是看到未注册字样,再到about的FormCreate事件里,找到
00471CD5    8338 00         cmp   dword ptr , 0
00471CD8    74 07         je      short 00471CE1          ;这里改成jmp 00471CEB,否则over
00471CDA    8B10            mov   edx, dword ptr
00471CDC    8B4A FC         mov   ecx, dword ptr
00471CDF    EB 02         jmp   short 00471CE3
00471CE1    33C9            xor   ecx, ecx
00471CE3    85C9            test    ecx, ecx
00471CE5    0F8E 17020000   jle   00471F02
00471CEB    33C0            xor   eax, eax
00471CED    8945 88         mov   dword ptr , eax
00471CF0    8D55 88         lea   edx, dword ptr
00471CF3    8BC6            mov   eax, esi
00471CF5    E8 42040000   call    0047213C            ; 取name信息准备用于显示
00471CFA    85C0            test    eax, eax
00471CFC    0F84 41010000   je      00471E43            ; 这里改成jmp 00471D38否则over
00471D02    E8 8F7C2100   call    <jmp.&KERNEL32.GetTickCount>


改好保存 一切ok

tjxiaowu 发表于 2008-9-21 10:26:33

多谢楼主 谢谢分享:loveliness: :loveliness: :loveliness: 可以用吗      下来看看

tjxiaowu 发表于 2008-9-21 10:27:54

/:L /:L /:L 运行错误???????????

ahappyboy 发表于 2008-9-21 22:42:19

谢谢楼主分享/:014

lifengfengdeai 发表于 2008-9-21 23:09:05

呵呵...好像下面也有一个诶.../:L

天边彩虹 发表于 2008-9-21 23:11:11

多谢楼主 谢谢分享/:014

lgjxj 发表于 2008-9-21 23:13:11

你还真以为破解了 。。。。 ????? 你看看代码提示功能出来了吗 ?

完美破解的话,需要 keyfile ,没有它无法解锁功能代码 。 这样的破解没用的

我去注册了 /:013我很喜欢这个软件 /:good

lgjxj 发表于 2008-9-21 23:14:13

要是这样能破解,我动手很久了/:002 ,现在的代码提示还是有的,但会残缺不全,你看看 3.5 版的完美破解,就知道了

[ 本帖最后由 lgjxj 于 2008-9-21 23:15 编辑 ]

雲飛揚 发表于 2008-9-22 09:27:09

界面和VC6差不多,比VC6强吗?

lgjxj 发表于 2008-9-22 10:12:34

原帖由 雲飛揚 于 2008-9-22 09:27 发表 https://www.chinapyg.com/images/common/back.gif
界面和VC6差不多,比VC6强吗?

比 VC 6 在操作上强得多,自带的代码提示等,很舒服 ,谁用谁知道
页: [1] 2
查看完整版本: C-Free 4.1 专业版 破解