首页 数据库 mysql教程 CuteDraw 2.0 破解手记

CuteDraw 2.0 破解手记

Jun 07, 2016 pm 03:13 PM
red 手记 破解

CuteDraw是一款非常不错的流程图制作软件,该软件详细介绍如下: CuteDraw是一款新的流程图、网络图绘制软件,新颖小巧,功能强大,可以很方便的绘制各种专业的业务流程图、组织结构图、商业图表、程序流程图,数据流程图,网络拓扑图等。 它帮助您更方便,更

 

            CuteDraw是一款非常不错的流程图制作软件,该软件详细介绍如下:

          

CuteDraw 2.0 破解手记CuteDraw是一款新的流程图、网络图绘制软件,新颖小巧,功能强大,可以很方便的绘制各种专业的业务流程图、组织结构图、商业图表、程序流程图,数据流程图,网络拓扑图等。
CuteDraw 2.0 破解手记
CuteDraw 2.0 破解手记它帮助您更方便,更快捷的阐述设计思想,创作灵感。在设计时采用全拖曳式操作,结合600多个常用图形模板库和用户自定义实例库,最大程度简化用户的工作量;让你在工作时既可以充分利用固有的素材,又可以借鉴他人的作品。
CuteDraw 2.0 破解手记
CuteDraw 2.0 破解手记适用范围:
CuteDraw 2.0 破解手记基本流程图,网络拓扑图,组织结构图,人力资源图,工作流程图,商业图表,软件设计,2D, 3D 图形,计划 / 报表,EPC, SDL, TQM 等。 
CuteDraw 2.0 破解手记

           网上似乎还没有破解版,保护做的还不错,很久没玩逆向了因此想练练手

           注:调试纯粹属于兴趣和技术研究,请不要用于非法用途.本人不承担因非法使用带来的法律责任

           限制:没怎么用,不知道功能有什么限制,不过有时间限制

          先用PEID查壳,ASPack 2.12 -> Alexey Solodovnikov,只是一个压缩壳,顺手脱了很顺利,运行,出错了:

          CuteDraw 2.0 破解手记

          到看雪看了下发现也有人再研究不过没深入,只需要把脱壳后的文件改成CuteDraw.Exe就可以了(晕,还有不能改文件名的),改后可以运行了,不过一运行就自动关闭了,有自效验.

          反正慢慢的跟了,也没下什么断点,就是耐心的走,发现一处代码再41f5ea处

 

CuteDraw 2.0 破解手记004175EA  |.  FF15 58A05200 调用    dword ptr [&mfc80u.#575>]       ; mfc80u.7834DD87
CuteDraw 2.0 破解手记004175F0  |
.  68 40425400   推    00544240                         ;  ASCII " 224H*y*@-qqwq"
CuteDraw 2.0 破解手记004175F5  |
   68 50425400   推    00544250                         ;  ASCII !_wIO)[]e3d|r@-
CuteDraw 2.0 破解手记004175FA  |
  51            推    ecx
CuteDraw 2.0 破解手记004175FB  |
.  8D5424 38     lea     edx, dword ptr [esp 38]
CuteDraw 2.0 破解手记 004175FF  |
.  8BCC          mov     ecx, esp
CuteDraw 2.0 破解手记
00417601  |.  896424 1C     mov     dword ptr [esp 1C], 特别是
CuteDraw 2.0 破解手记
00417605  |.  52            推    edx
CuteDraw 2.0 破解手记
00417606  |.  FF15 CCA05200 调用    dword ptr [&mfc80u.#280>]       ;  mfc80u7830581E
CuteDraw 2.0 破解手记0041760C  |
.  51            推    ecx
CuteDraw 2.0 破解手记0041760D  |
.  C68424 000500>mov     byte ptr [esp 500 ], 20
CuteDraw 2.0 破解手记
00417615  | .  8D4424 34     lea     eax, dword ptr [esp 34]
CuteDraw 2.0 破解手记
00417619  |.  8BCC          mov     ecx, 特别是
CuteDraw 2.0 破解手记0041761B  |
.  896424  50     mov     dword ptr [esp 50], esp
CuteDraw 2.0 破解手记0041761F  |
.  50            推    eax
CuteDraw 2.0 破解手记
00 417620  |.  FF15 CCA05200 调用    dword ptr [ &mfc80u.#280>]       ;  mfc80u.7830581E
CuteDraw 2.0 破解手记
00417626  |.  C68424 000500 >mov     byte ptr [esp 500], 1D
CuteDraw 2.0 破解手记0041762E  |
.  E8 3DA90500   通话    00471F70
CuteDraw 2.0 破解手记
00417633  |.  83C4 10       添加     特别是, 10
CuteDraw 2.0 破解手记
00417636  |.  85C0          测试eax, eax
CuteDraw 2.0 破解手记
CuteDraw 2.0 破解手记

 

           看着4175F0和4175F5处的两处字符串,很像是CRC的比较,417636比较EAX之后就是一个跳转,把它NOP掉,保存再运行,自效验搞定了

           不过程序再别的地方还有检验,一进入主界面就会挂掉,不过没关系了,这里要做的就是分析脱壳后的程序的注册流程,挂不挂不管它:)

          点击注册,一段时间后弹出注册失败字样,看上去象个MessageBox,下断点,再注册,没有收获......

          还是先看看字符串参考里面有没有什么提示信息,找到一个

          UNICODE "http://www.cutedraw.com/reg/activate.php"的字串,看来还有网络验证?下断点,再点击注册,果然停下来了,程序访问该网址,并且通过GET请求参数order_id和machine_id,order_id就是输入的序列号,machine_id因该是每台机器都不同,直接再浏览器里面访问返回"ER104",继续跟程序,程序里面有返回值判断,首先判断返回串里面有没有"ER",有就完了,再根据后面跟的东西不同弹出不同的错误信息,把跳转搞掉让它跳到后面的"OK"字串,OK,提示注册成功了,但是,好像没什么反应啊,界面还是留在注册界面,还是要点击继续试用才能进入主界面,看来此路不通....

         想想注册提醒是一启动就弹出来,肯定本地还是有注册信息进行效验,看来这个软件的流程是先通过注册码从网络激活,然后再每次启动的时候都本地比较,感觉怪怪的,其实网络验证也不是那么的可信....废话不多说,找了下相关文件,发现Config目录下有个User.Ini,里面存放的就是注册信息了,于是下断点GetPrivateProfileStringW,运行,找到了读取User配置的位置,还发现使用时间也是存在一个sf.tmp的INI文件里面,改一下时间软件就过期了,或者删掉这个文件软件又可以使用一个月了-_-#.读完User.Ini里面的Pass字段就是好大一长串的注册码效验代码,由于这个东西不太好调试,于是只找关键跳就行了,判断完注册码后软件会比较eax的结果是否为1,不为1就是未激活,所以只要再判断注册码最后一个地方有个

         xor eax,eax 改成 mov al,1就OK了

        或者还有一种改法,再417951处

CuteDraw 2.0 破解手记0041794A  |.  E8 11100600   call    00478960
CuteDraw 2.0 破解手记0041794F  |
.  85C0          test    eax, eax
CuteDraw 2.0 破解手记
00417951  |.  0F85 85000000 jnz     004179DC

       改成Jmp 4179DC就OK了,用KEYMAKE做个内存补丁改这一处跳转就行.

       最后运行还是显示试用版,不过已经没有激活提示了,如图:

      CuteDraw 2.0 破解手记

          破解完成,再强调如果你要使用该软件,请支持正版

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在Go语言中使用Redis Stream实现消息队列时,如何解决user_id类型转换问题? 在Go语言中使用Redis Stream实现消息队列时,如何解决user_id类型转换问题? Apr 02, 2025 pm 04:54 PM

Go语言中使用RedisStream实现消息队列时类型转换问题在使用Go语言与Redis...

console.log输出结果差异:两次调用为何不同? console.log输出结果差异:两次调用为何不同? Apr 04, 2025 pm 05:12 PM

深入探讨console.log输出差异的根源本文将分析一段代码中console.log函数输出结果的差异,并解释其背后的原因。�...

网页批注如何实现Y轴位置的自适应布局? 网页批注如何实现Y轴位置的自适应布局? Apr 04, 2025 pm 11:30 PM

网页批注功能的Y轴位置自适应算法本文将探讨如何实现类似Word文档的批注功能,特别是如何处理批注之间的间�...

如何使用JavaScript将具有相同ID的数组元素合并到一个对象中? 如何使用JavaScript将具有相同ID的数组元素合并到一个对象中? Apr 04, 2025 pm 05:09 PM

如何在JavaScript中将具有相同ID的数组元素合并到一个对象中?在处理数据时,我们常常会遇到需要将具有相同ID�...

如何解决文字渐变加阴影时祖父背景遮挡伪元素的问题? 如何解决文字渐变加阴影时祖父背景遮挡伪元素的问题? Apr 05, 2025 pm 05:36 PM

文字渐变加阴影时,祖父背景遮挡伪元素的解决方法在实现文字渐变加阴影时,通常会使用伪元素和绝对定位来...

如何在移动端精确实现设计稿中的小标签效果? 如何在移动端精确实现设计稿中的小标签效果? Apr 04, 2025 pm 11:36 PM

在移动端如何实现设计稿中的小标签效果?在设计移动端应用时,如何精确还原设计稿中的小标签效果是一个常...

console.log输出结果差异:为什么同样的变量,打印方式不同,结果却不一样? console.log输出结果差异:为什么同样的变量,打印方式不同,结果却不一样? Apr 04, 2025 am 11:48 AM

深入探讨console.log输出差异本文将分析一段代码中console.log函数输出结果不同的原因。代码片段涉及URL参数解析�...

See all articles