飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 4966|回复: 4

[原创] VeryPDF PDF Editor v2.6 算法分析

[复制链接]
  • TA的每日心情
    开心
    2024-5-1 14:44
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2010-5-1 11:35:03 | 显示全部楼层 |阅读模式
    【破文标题】VeryPDF PDF Editor v2.6 算法分析
    【破文作者】tianxj
    【作者邮箱】[email protected]
    【作者主页】WwW.ChiNaPYG.CoM
    破解工具】PEiD,OD
    【破解平台】Windows XP
    【软件名称】VeryPDF PDF Editor v2.6
    【软件大小】12.75MB
    【软件类别】国外软件  
    【软件授权】共享版
    【软件语言】英文
    【运行环境】Windows XP/2K
    【原版下载】http://verypdf.com/pdf-editor/index.html
    【保护方式】注册码
    【软件简介】让您方便地打开并修改 PDF 文档内容(文本,图形……)的工具,这个强大的工具令您从此可以直接编辑 PDF 文档的内容、并且可以添加您自己的注释、内容、图

    形……到 PDF文档内了。软件对中文支持非常好
    【破解声明】我是一只小菜鸟,偶得一点心得,愿与大家分享:)
    --------------------------------------------------------------
    【破解内容】
    --------------------------------------------------------------
    **************************************************************
    一、运行程序,进行注册,输入错误的注册信息进行检测,有提示信息
    **************************************************************
    二、用PEiD对pdfeditor.exe查壳,为 UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
    脱壳后为Microsoft Visual C++ 6.0
    **************************************************************
    三、载入OD,下万能断点

    1. 00409312    68 74474600     push    00464774                         ; //万能断点返回到这里
    2. 00409317    E8 44F8FFFF     call    00408B60                         ; //关键CALL,跟进
    3. 0040931C    83C4 04         add     esp, 4
    4. 0040931F    85C0            test    eax, eax
    5. 00409321    0F84 A6000000   je      004093CD                         ; //关键跳转
    6. 00409327    6A 40           push    40
    7. 00409329    68 B4124600     push    004612B4                         ; ASCII "PDF Editor"
    8. 0040932E    68 E41E4600     push    00461EE4                         ; ASCII "Thanks for you purchasing the PDF Editor."
    9. 00409333    56              push    esi
    10. 00409334    FF15 98F54400   call    dword ptr [<&USER32.MessageBoxA>>; user32.MessageBoxA
    11. ==============================================================
    12. 00408B60    83EC 30         sub     esp, 30
    13. 00408B63    56              push    esi
    14. 00408B64    8B7424 38       mov     esi, dword ptr [esp+38]
    15. 00408B68    57              push    edi
    16. 00408B69    8A06            mov     al, byte ptr [esi]
    17. 00408B6B    8A4E 01         mov     cl, byte ptr [esi+1]
    18. 00408B6E    8A56 0E         mov     dl, byte ptr [esi+E]
    19. 00408B71    884424 14       mov     byte ptr [esp+14], al
    20. 00408B75    32C0            xor     al, al
    21. 00408B77    884C24 2C       mov     byte ptr [esp+2C], cl
    22. 00408B7B    8A4E 0F         mov     cl, byte ptr [esi+F]
    23. 00408B7E    884424 15       mov     byte ptr [esp+15], al
    24. 00408B82    884424 2D       mov     byte ptr [esp+2D], al
    25. 00408B86    884424 21       mov     byte ptr [esp+21], al
    26. 00408B8A    884424 09       mov     byte ptr [esp+9], al
    27. 00408B8E    8A46 02         mov     al, byte ptr [esi+2]
    28. 00408B91    3C 50           cmp     al, 50
    29. 00408B93    885424 20       mov     byte ptr [esp+20], dl
    30. 00408B97    884C24 08       mov     byte ptr [esp+8], cl
    31. 00408B9B    75 57           jnz     short 00408BF4                   ; //注册码第3位不是"P"则挂
    32. 00408B9D    8D5424 08       lea     edx, dword ptr [esp+8]
    33. 00408BA1    52              push    edx
    34. 00408BA2    E8 9C730100     call    0041FF43
    35. 00408BA7    8BF8            mov     edi, eax
    36. 00408BA9    8D4424 18       lea     eax, dword ptr [esp+18]
    37. 00408BAD    50              push    eax
    38. 00408BAE    E8 90730100     call    0041FF43
    39. 00408BB3    03F8            add     edi, eax
    40. 00408BB5    83C4 08         add     esp, 8
    41. 00408BB8    83FF 0A         cmp     edi, 0A
    42. 00408BBB    75 37           jnz     short 00408BF4                   ; //注册码右边第16位与左边第1位之和不等于0Ah则挂
    43. 00408BBD    8D4C24 20       lea     ecx, dword ptr [esp+20]
    44. 00408BC1    51              push    ecx
    45. 00408BC2    E8 7C730100     call    0041FF43
    46. 00408BC7    8D5424 30       lea     edx, dword ptr [esp+30]
    47. 00408BCB    8BF8            mov     edi, eax
    48. 00408BCD    52              push    edx
    49. 00408BCE    E8 70730100     call    0041FF43
    50. 00408BD3    03F8            add     edi, eax
    51. 00408BD5    83C4 08         add     esp, 8
    52. 00408BD8    83FF 0A         cmp     edi, 0A
    53. 00408BDB    75 17           jnz     short 00408BF4                   ; //注册码右边第15位与左边第2位之和不等于0Ah则挂
    54. 00408BDD    807E 03 44      cmp     byte ptr [esi+3], 44
    55. 00408BE1    75 11           jnz     short 00408BF4                   ; //注册码第4位不是"D"则挂
    56. 00408BE3    8A4E 05         mov     cl, byte ptr [esi+5]
    57. 00408BE6    33C0            xor     eax, eax
    58. 00408BE8    80F9 46         cmp     cl, 46                           ; //注册码第6位不是"F"则挂
    59. 00408BEB    5F              pop     edi
    60. 00408BEC    0F94C0          sete    al
    61. 00408BEF    5E              pop     esi
    62. 00408BF0    83C4 30         add     esp, 30
    63. 00408BF3    C3              retn
    64. 00408BF4    5F              pop     edi
    65. 00408BF5    33C0            xor     eax, eax
    66. 00408BF7    5E              pop     esi
    67. 00408BF8    83C4 30         add     esp, 30
    68. 00408BFB    C3              retn
    复制代码
    **************************************************************  
    【破解总结】
    --------------------------------------------------------------
    【算法总结】
    1.注册码与用户名和邮箱名无关
    2.注册码第3位必须是"P";第4位必须是"D";第6位必须"F"
    3.注册码右边第16位与左边第1位之和等于0Ah;右边第15位与左边第2位之和等于0Ah

    一组可用的注册信息:
    用户名:tianxj
    邮箱名:[email protected]
    注册码:12PD5F7890123489
    100429222100856eea22bcb728.gif
    --------------------------------------------------------------
    感谢飘云老大、猫老大、Nisy老大以及很多前辈们的学习教程以及所有帮助过我的论坛兄弟姐妹们!谢谢
    --------------------------------------------------------------
    【版权声明】破文是学习的手记,兴趣是成功的源泉;本破文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

    评分

    参与人数 1飘云币 +40 收起 理由
    月之精灵 + 40 您的贴子很精彩,希望能再次分享!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2015-8-3 23:07
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2010-5-1 12:58:25 | 显示全部楼层
    我第一个来学习下,哈哈
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2015-8-23 23:49
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    发表于 2010-5-2 10:12:34 | 显示全部楼层
    我第二个来学习下,呵呵!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-8-15 13:22
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2010-5-9 20:42:28 | 显示全部楼层
    向T大学习,偶们小菜继续努力!/:001
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2025-1-13 16:51
  • 签到天数: 1260 天

    [LV.10]以坛为家III

    发表于 2010-5-9 21:58:41 | 显示全部楼层
    学习了啊
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表