`
dengbaoleng
  • 浏览: 1133573 次
文章分类
社区版块
存档分类
最新评论

破解Foxit PDF SDK(DLL) 3.1, PDF转换到图片, 去除水印

 
阅读更多

将PDF转换到图片, 使用Foxit PDF


Foxit PDF SDK(DLL) 3.1最新版本发布了, 使用它的免费版本Render PDF页面到图像的话,会有一个水印。


摸了几个小时,终于将这个水印Crack掉了。



它采用这样一种保护方法:

关键方法实现了正式版和试用版2个版本。

关键方法使用函数指针的方式调用,默认函数地址是试用版函数地址。


fpdfsdk.dll有导出函数FPDF_UnlockDll函数,此函数传入license key和unlock_code.

当调用此方法, 通过某种变换解密计算序列号, 如果是正式版的序列号,则能够成功解码得到正式版的函数位置

并将正式版的函数地址 设置到函数指针上,诸多限制就被卸掉了。


我只想去除水印。找了一下,1028FB48应该就是Render有关的函数指针位置了。

这个内存位置的默认值指向一个试用版的函数地址,那么Render出来就有水印。

只要将此函数指针设置成正式版的函数地址就可以了。


要得到正式版的函数地址很简单,申请一个试用版的序列号,调用此解锁函数。

在10014BD5处,修改Zero标识位跟踪进入此分支执行(试用版即使有序列号也是不会进入这个分支的),正式版的函数的地址就在eax寄存器中了。

Bingo!

记下来直接改到 1028FB48, 则完全不需要调用解锁函数也可使用无水印Render.



http://115.com/file/bhggd1l2

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics