Microsoft Research AutoCollage 2008 破解
来源:互联网 发布:哈尔滨淘宝美工招聘网 编辑:程序博客网 时间:2024/04/29 05:19
偶然在网上看到这个软件,效果很炫,合成出来的图片效果也不错,不过是个收费的软件,最后保存的图片会加上很大的水印字体。
由于本人对.NET有些了解,所以先看看这个软件是不是dotNET语言写的,如果不是,那我就无能为力了。用ildasm.exe反编译此软件,得到如下所示(下面分析的过程需要对MSIL有一定的基础才能看懂):
很庆幸是dotNET语言写的,好了,找到程序的入口点即Main函数,从图上很容易看出在Microsoft.AutoCollage.AppMain中,打开这个类,点开相应的Main函数,找到如下代码所示的部分:
可以清楚的看到在程序开始的时候要检查注册吗,这个程序的注册码形式是:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX,别管怎么样,先看看Microsoft.AutoCollage.Helpers.RegistrationHelper这个类再说,所有的验证工作都在这里面做的,下面是这个类的截图:
我们可以很容易的从函数的名字上看到这个函数的作用,譬如get_ProductID函数肯定是取得产品的ID,get_IsRegistered是判断是否软件已经注册了,等等。由于本人很笨,不会研究算法,所以根据用户的输入算出具体的合法注册码算法部分直接掠过,咱只看它如何验证是个合法的注册码。先查看get_IsRegistered函数内容,如下所示:
从图中看出这个方法调用了get_ProductID方法,如果get_ProductID方法返回的字符串不为空则是合法的注册码,为空则是不合法的,那好了,咱们进入get_ProductID方法看看具体的检查过程:
从IL_0009:行我们看到,首先检查注册表是否有"SOFTWARE//Microsoft//Microsoft Research AutoCollage//2008//Registration"这个子键,通过regedit查看自己的注册表。如果没有则跳转到IL_0028行,那估计肯定是验证不通过了。如果有,继续往下看,IL_0018和IL_001d行,这两行是在读取上一个注册表键下面的一个键值,其中键key叫"ProcductID",并且把取得的值存在局部变量中,这个局部变量在一开始就声明了,我们不用管它。继续往下看(省略异常处理部分),到IL_0031,先检查刚才取得的字符串是否为空或者null,如果是则返回了,那么证明没有注册码,不为空继续往下走到IL_003b,取得字符串的长度,然后和IL_0040行加载到栈上的数值做比较,也就是23,所以这两行的意思就是检查注册码的长度是否是23。所以我们可以得出,用户输入的验证码经过某种算法之后被存入到注册表中的,而不是直接存入的。
如果注册码的长度不是23,那肯定over了,是23继续往下走。到IL_0049行,可以看到又把整数5加载到了栈上,然后调用get_Chars函数得到上面取得的字符串的第5位字符,IL_004f行,把整数45加载到栈上和上面取得的第5位字符相比较,我们知道字符在计算机中也是用整数表示的,所以这里可以查看ASCII码表,看看45表示什么,经过查看是字符'-'。比较的结果是,如果相等继续往下,不等又over了。
下面的过程和上面的是重复的,其中比较了第5位,9位,17位,都是和'-'进行比较,如果相等就是合法的。也就是说合法注册吗的形式是:SSSSS-SSS-SSSSSSS-SSSSS,其中可以用任意字符填充S,只要保证第5,9,17是'-'即可。在注册表中建立相应的键值,然后在运行程序,看看效果,如下图所示:
可以看到已经是注册的了!Done!在用程序合成的图片就不会有水印了~~
注:本篇文章只为学习研究用,不用于任何商业目的,转载请注明出处,如有任何违规行为会立刻删除!
- Microsoft Research AutoCollage 2008 破解
- Code Hunt (Microsoft Research)
- Microsoft Visual Studio 2008 破解
- 试用Microsoft Research的wallop
- 破解 Microsoft Visual Studio 2008 的方法
- Microsoft Visual Studio 2008破解方法
- Microsoft Visual Studio 2008破解方法
- Computer Vision at Microsoft Research Cambridge
- Detours v2.0 by Microsoft Research
- Detours v2.1 by Microsoft Research
- Vision, Graphics, and Visualization @Microsoft Research
- Microsoft Research: Urban computing/城市计算
- Research
- Research
- Best-paper awards from prestigious research conferences won by personnel from Microsoft Research (li
- Readme for Kinect for Windows SDK Beta from Microsoft Research
- Microsoft Office 2007破解方法
- 各大公司(Google,Microsoft,Baidu, Microsoft Research Asia etc.)
- 如何避免因jsp刷新而重复提交数据
- 写操作系统(二)执着 windows的开发环境
- Java单例模式
- JAR 文件揭密
- 基本的数字滤波方法及算法实现
- Microsoft Research AutoCollage 2008 破解
- 从一个函数声明悟出了typedef的威力
- Java模式设计之单例模式
- 2009年2月13日开源人网站(www.vifir.com)新闻汇编
- 详细解析Java中抽象类和接口的区别
- JSP生成HTML页面,以提高访问效率
- SQL Server 2005四个新的排序函数: ROW_NUMBER、RANK、DENSE_RANK 和 NTILE
- SNS与交友成本
- SOAP