飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2228|回复: 1

申请加入[PYG]破文1

[复制链接]

该用户从未签到

发表于 2005-8-26 17:08:44 | 显示全部楼层 |阅读模式
【软件名称】半仙算命  V2005 build 08.01

【下载地址】http://www2.skycn.com/soft/7818.html

【应用平台】Win9x/NT/2000/XP

【软件大小】1667KB

【软件限制】未知

破解作者】ayan

【破解声明】破解只是感兴趣,无其它目的。失误之处敬请诸位大侠赐教!

【破解工具】flyOD

【软件简介】〖神算刘半仙〗软件是一个优秀的算命软件。 一个软件集成了多种测算选项,测算内容、测算项目极其丰富。
包括姓名吉凶测算、命运推算、科学起名向导、生男生女查询以及万年历、农历查询等。 软件功能强大,使用简单、绿色、
环保。 只要你正确选择好出生的日期,即可自动转换为农历、属相、星座等然后软件将依此进行命运推算、姓名推算等等。======================================================================

【分析过程】

这个软件没有注册成功或失败的提示,但不输入名字或注册码提示“注册信息没有填写齐全”,好根据这一点漏洞

我们来破解它,用OD载入后查找字符串“注册信息没有填写齐全”,双击来到005319E7 处,向上看在00531953  

处下断,运行程序,注册,被拦下F8单步向下走

00531953    |.  51              push ecx  //在此下断,

00531954    |.  53              push ebx

00531955    |.  56              push esi

00531956    |.  57              push edi

00531957    |.  8BD8            mov ebx,eax

00531959    |.  33C0            xor eax,eax

0053195B    |.  55              push ebp

0053195C    |.  68 0F1C5300     push ssbx.00531C0F

00531961    |.  64:FF30         push dword ptr fs:[eax]

00531964    |.  64:8920         mov dword ptr fs:[eax],esp

00531967    |.  B2 01           mov dl,1

00531969    |.  A1 FC764A00     mov eax,dword ptr ds:[4A76FC]

0053196E    |.  E8 895EF7FF     call ssbx.004A77FC

00531973    |.  8BF0            mov esi,eax

00531975    |.  BA 02000080     mov edx,80000002

0053197A    |.  8BC6            mov eax,esi

0053197C    |.  E8 1B5FF7FF     call ssbx.004A789C

00531981    |.  B1 01           mov cl,1

00531983    |.  BA 281C5300     mov edx,ssbx.00531C28              ;  ASCII "SOFTWARE\Microsoft\Yhds"

00531988    |.  8BC6            mov eax,esi

0053198A    |.  E8 715FF7FF     call ssbx.004A7900

0053198F    |.  68 80000000     push 80                            ; /BufSize = 80 (128.)

00531994    |.  8D85 7BFFFFFF   lea eax,dword ptr ss:[ebp-85]      ; |

0053199A    |.  50              push eax                           ; |Buffer

0053199B    |.  E8 2459EDFF     call <jmp.&kernel32.GetSystemDirec>; \GetSystemDirectoryA

005319A0    |.  8D45 FC         lea eax,dword ptr ss:[ebp-4]

005319A3    |.  8D95 7BFFFFFF   lea edx,dword ptr ss:[ebp-85]

005319A9    |.  B9 81000000     mov ecx,81

005319AE    |.  E8 3932EDFF     call ssbx.00404BEC

005319B3    |.  8D95 74FFFFFF   lea edx,dword ptr ss:[ebp-8C]

005319B9    |.  8B83 34030000   mov eax,dword ptr ds:[ebx+334]

005319BF    |.  E8 EC46F1FF     call ssbx.004460B0

005319C4    |.  83BD 74FFFFFF 0>cmp dword ptr ss:[ebp-8C],0  //是否输入注册码

005319CB    |.  74 1A           je short ssbx.005319E7

005319CD    |.  8D95 70FFFFFF   lea edx,dword ptr ss:[ebp-90]

005319D3    |.  8B83 2C030000   mov eax,dword ptr ds:[ebx+32C]

005319D9    |.  E8 D246F1FF     call ssbx.004460B0

005319DE    |.  83BD 70FFFFFF 0>cmp dword ptr ss:[ebp-90],0  //是否输入用户名

005319E5    |.  75 0F           jnz short ssbx.005319F6

005319E7    |>  B8 481C5300     mov eax,ssbx.00531C48  //双击“注册信息没有填写齐全”后来到这里,向上

在00531953处下断

005319EC    |.  E8 97D7F0FF     call ssbx.0043F188

005319F1    |.  E9 97010000     jmp ssbx.00531B8D

005319F6    |>  8D95 6CFFFFFF   lea edx,dword ptr ss:[ebp-94]

005319FC    |.  8B83 34030000   mov eax,dword ptr ds:[ebx+334]

00531A02    |.  E8 A946F1FF     call ssbx.004460B0

00531A07    |.  8B85 6CFFFFFF   mov eax,dword ptr ss:[ebp-94]

00531A0D    |.  50              push eax

00531A0E    |.  8D95 64FFFFFF   lea edx,dword ptr ss:[ebp-9C]

00531A14    |.  8B83 2C030000   mov eax,dword ptr ds:[ebx+32C]

00531A1A    |.  E8 9146F1FF     call ssbx.004460B0

00531A1F    |.  8B85 64FFFFFF   mov eax,dword ptr ss:[ebp-9C]

00531A25    |.  E8 4E7BEDFF     call ssbx.00409578

00531A2A    |.  B9 E1100000     mov ecx,10E1

00531A2F    |.  99              cdq

00531A30    |.  F7F9            idiv ecx

00531A32    |.  8BC2            mov eax,edx

00531A34    |.  8D95 68FFFFFF   lea edx,dword ptr ss:[ebp-98]

00531A3A    |.  E8 D57AEDFF     call ssbx.00409514

00531A3F    |.  8D85 68FFFFFF   lea eax,dword ptr ss:[ebp-98]

00531A45    |.  50              push eax

00531A46    |.  8D95 58FFFFFF   lea edx,dword ptr ss:[ebp-A8]

00531A4C    |.  8B83 2C030000   mov eax,dword ptr ds:[ebx+32C]

00531A52    |.  E8 5946F1FF     call ssbx.004460B0

00531A57    |.  8B85 58FFFFFF   mov eax,dword ptr ss:[ebp-A8]

00531A5D    |.  E8 167BEDFF     call ssbx.00409578

00531A62    |.  8D95 5CFFFFFF   lea edx,dword ptr ss:[ebp-A4]

00531A68    |.  E8 0FFBFFFF     call ssbx.0053157C

00531A6D    |.  8B85 5CFFFFFF   mov eax,dword ptr ss:[ebp-A4]

00531A73    |.  E8 007BEDFF     call ssbx.00409578

00531A78    |.  8D95 60FFFFFF   lea edx,dword ptr ss:[ebp-A0]

00531A7E    |.  E8 D9FBFFFF     call ssbx.0053165C

00531A83    |.  8B95 60FFFFFF   mov edx,dword ptr ss:[ebp-A0]

00531A89    |.  58              pop eax

00531A8A    |.  E8 B531EDFF     call ssbx.00404C44

00531A8F    |.  8B95 68FFFFFF   mov edx,dword ptr ss:[ebp-98]

00531A95    |.  58              pop eax

00531A96    |.  E8 E532EDFF     call ssbx.00404D80            //在此可看到真码,可做内存注册机

00531A9B    |.  0F85 DF000000   jnz ssbx.00531B80            //跳走OVER

00531AA1    |.  A1 78E65400     mov eax,dword ptr ds:[54E678]








========================================================================================

【分析总结】

有兴趣的可以分析一下算法,我没有跟踪!

另外,该作者的另外一款软件和这个的算法一样,用这个注册机同样能算出的注册码注册该软件也能成功!

========================================================================================

【版权信息】只作为交流,转载请保持文章完整,谢谢!

                                                   2005-8-26
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-12-1 11:04
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    发表于 2005-8-26 18:13:09 | 显示全部楼层
    这个软件太经典了,也有很多人分析!
    给出算法就ok!
    继续
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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