飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 14161|回复: 10

[原创] 月光迷你钟 6.8注册补丁

[复制链接]
  • TA的每日心情
    开心
    2024-12-6 09:28
  • 签到天数: 121 天

    [LV.7]常住居民III

    发表于 2007-4-15 08:51:16 | 显示全部楼层 |阅读模式
    下载地址:http://nj.onlinedown.net/soft/44524.htm


    定时提醒、定时关机、万年历、农历查询、网络校时、真人语音报时、快速启动程序、世界时间查询一个都不能少,月光迷你钟可通过网络校准时间,免去手工校对时间的烦恼;可按每日、每周、每月、每年、临时等方式设多个提醒任务,在您需要的时间提醒您;具有数字石英钟和图形时钟双重界面,图形时钟还有多款界面皮肤可供选择;具有定时关机功能,可按每日、每周、每月、每年、临时等方式设定多个定时关机任务,限制时间使用;具备真人语音报时、文字提示、农历查询、节日提醒、打印万年历和开关光驱、进行时间计算和调用系统计算器和记事本等多种功能;支持界面透明度调整,支持鼠标穿透功能,不必担心它会妨碍您的其他工作;有QQ样式的隐藏功能;支持热键功能,可以设置热键快速运行多种任务,包括一键真人语音报时;能快速分类调用可执行文件,还一个清洁的桌面给您;还可查看计算机使用时间;软件小巧,功能强大,占用资源极少,是您不可多得的桌面工具



    没有完全暴破,希望大家暂停下载

    [ 本帖最后由 bhcjl 于 2007-4-16 07:46 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-4-15 08:59:42 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2023-12-27 21:49
  • 签到天数: 85 天

    [LV.6]常住居民II

    发表于 2007-4-15 10:25:48 | 显示全部楼层
    楼主辛苦了

    这个东东看起来不错
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    4 天前
  • 签到天数: 1260 天

    [LV.10]以坛为家III

    发表于 2007-4-15 14:32:20 | 显示全部楼层
    恩 不错不错啊!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-1-13 22:14
  • 签到天数: 1471 天

    [LV.10]以坛为家III

    发表于 2007-4-15 17:07:04 | 显示全部楼层
    非常好的时钟!!!  可惜没有完美爆破,提示已注册,但是注册用户的功能都不能使用,快捷键不能设置,万年历不能打印,请楼主明查!

    [ 本帖最后由 qslfz 于 2007-4-15 17:30 编辑 ]
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-1-13 22:14
  • 签到天数: 1471 天

    [LV.10]以坛为家III

    发表于 2007-4-15 21:45:01 | 显示全部楼层
    月光迷你钟 6.2 算法分析


    【破文标题】月光迷你钟 6.2  算法分析
    【破文作者】XXNB
    【作者邮箱】
    【作者主页】http://free.ys168.com/?binbinbin7456
    【破解工具】OD
    【破解平台】xpsp2
    【软件名称】月光迷你钟 6.2
    【软件大小】2107KB
    【原版下载】http://www.newhua.com/soft/44524.htm
    【保护方式】
    【软件简介】定时提醒、定时关机、万年历、农历查询、网络校时、真人语音报时、快速启动程序、世界时间查询一个都不能少,月光迷你钟

    可通过网络校准时间,免去手工校对时间的烦恼;可按每日、每周、每月、每年、临时等方式设多个提醒任务,在您需要的时间提醒您;具有

    数字石英钟和图形时钟双重界面,图形时钟还有多款界面皮肤可供选择;具有定时关机功能,可按每日、每周、每月、每年、临时等方式设定

    多个定时关机任务,限制时间使用;具备真人语音报时、文字提示、农历查询、节日提醒、打印万年历和开关光驱、进行时间计算和调用系统

    计算器和记事本等多种功能;支持界面透明度调整,支持鼠标穿透功能,不必担心它会妨碍您的其他工作;有QQ样式的隐藏功能;支持热键功

    能,可以设置热键快速运行多种任务,包括一键真人语音报时;能快速分类调用可执行文件,还一个清洁的桌面给您;还可查看计算机使用时

    间;软件小巧,功能强大,占用资源极少,是您不可多得的桌面工具。
    ------------------------------------------------------------------------
    【破解过程】

    用VB专用的几个断点都能断下,我用的是“__vbastrmove”,然后可以找到注册程序处理的地方:



    0049CD70   > \55       push    ebp
    0049CD71   .  8BEC     mov     ebp, esp
    0049CD73   .  83EC 14  sub     esp, 14
    0049CD76   .  68 A6264>push    <jmp.&MSVBVM60.__vbaExceptHandle>;  SE 处理程序安装
    0049CD7B   .  64:A1 00>mov     eax, dword ptr fs:[0]
    0049CD81   .  50       push    eax
    0049CD82   .  64:8925 >mov     dword ptr fs:[0], esp
    0049CD89   .  81EC BC0>sub     esp, 3BC
    0049CD8F   .  53       push    ebx
    0049CD90   .  56       push    esi
    0049CD91   .  57       push    edi
    0049CD92   .  8965 EC  mov     dword ptr [ebp-14], esp
    0049CD95   .  C745 F0 >mov     dword ptr [ebp-10], 004019A0
    0049CD9C   .  8B75 08  mov     esi, dword ptr [ebp+8]
    0049CD9F   .  8BC6     mov     eax, esi
    0049CDA1   .  83E0 01  and     eax, 1

    (中间省略很多代码。都是对机器码字符串的操作,包括取字符,倒转字符串,连接字符串等等。)

    下面的注释有点乱,首先要知道我的机器码是:124757971。然后,如果你有空的话自己跟跟就很容易知道了的。


    0049D925   > \8B85 58F>mov     eax, dword ptr [ebp-A8]          ;  把机器码字符串到过来
    0049D92B   .  8985 98F>mov     dword ptr [ebp-368], eax         ;  我的机器码是“124757971”
    0049D931   .  33C0     xor     eax, eax                         ;  倒过来就是"179757421"
    0049D933   .  8985 58F>mov     dword ptr [ebp-A8], eax
    0049D939   .  8B8D 50F>mov     ecx, dword ptr [ebp-B0]
    0049D93F   .  898D 94F>mov     dword ptr [ebp-36C], ecx         ;  取出“421”
    0049D945   .  8985 50F>mov     dword ptr [ebp-B0], eax
    0049D94B   .  8B95 4CF>mov     edx, dword ptr [ebp-B4]          ;  剩下的“1797574”
    0049D951   .  8995 90F>mov     dword ptr [ebp-370], edx
    0049D957   .  8985 4CF>mov     dword ptr [ebp-B4], eax
    0049D95D   .  8B8D 48F>mov     ecx, dword ptr [ebp-B8]          ;  “21”
    0049D963   .  898D 8CF>mov     dword ptr [ebp-374], ecx
    0049D969   .  8985 48F>mov     dword ptr [ebp-B8], eax
    0049D96F   .  8B95 44F>mov     edx, dword ptr [ebp-BC]
    0049D975   .  8995 88F>mov     dword ptr [ebp-378], edx
    0049D97B   .  8985 44F>mov     dword ptr [ebp-BC], eax
    0049D981   .  8B8D 40F>mov     ecx, dword ptr [ebp-C0]          ;  "711"
    0049D987   .  898D 84F>mov     dword ptr [ebp-37C], ecx
    0049D98D   .  8985 40F>mov     dword ptr [ebp-C0], eax
    0049D993   .  8B55 D4  mov     edx, dword ptr [ebp-2C]          ;  假码到edx
    0049D996   .  52       push    edx
    0049D997   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049D99D   .  DD9D 7CF>fstp    qword ptr [ebp-384]              ;  假码转成实数。
    0049D9A3   .  8B95 8CF>mov     edx, dword ptr [ebp-374]         ;  “21”
    0049D9A9   .  8D8D 78F>lea     ecx, dword ptr [ebp-88]
    0049D9AF   .  FFD7     call    edi
    0049D9B1   .  50       push    eax
    0049D9B2   .  8B95 88F>mov     edx, dword ptr [ebp-378]
    0049D9B8   .  8D8D 74F>lea     ecx, dword ptr [ebp-8C]
    0049D9BE   .  FFD7     call    edi                              ;  这里call edi相当于 strmove(字符串移动)
    0049D9C0   .  50       push    eax
    0049D9C1   .  FF15 6C1>call    dword ptr [<&MSVBVM60.__vbaStrCa>;  MSVBVM60.__vbaStrCat
    0049D9C7   .  8BD0     mov     edx, eax                         ;  连接字符串,这里得到“211”
    0049D9C9   .  8D8D 70F>lea     ecx, dword ptr [ebp-90]
    0049D9CF   .  FFD7     call    edi
    0049D9D1   .  50       push    eax
    0049D9D2   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049D9D8   .  DD9D 74F>fstp    qword ptr [ebp-38C]              ;  211
    0049D9DE   .  8B95 94F>mov     edx, dword ptr [ebp-36C]         ;  “421”
    0049D9E4   .  8D4D 94  lea     ecx, dword ptr [ebp-6C]
    0049D9E7   .  FFD7     call    edi
    0049D9E9   .  50       push    eax
    0049D9EA   .  8B95 90F>mov     edx, dword ptr [ebp-370]         ;  “1797574”
    0049D9F0   .  8D4D 90  lea     ecx, dword ptr [ebp-70]
    0049D9F3   .  FFD7     call    edi
    0049D9F5   .  50       push    eax
    0049D9F6   .  FF15 6C1>call    dword ptr [<&MSVBVM60.__vbaStrCa>;  MSVBVM60.__vbaStrCat
    0049D9FC   .  8BD0     mov     edx, eax                         ;  字符串连接得到"4211797574"
    0049D9FE   .  8D4D 8C  lea     ecx, dword ptr [ebp-74]
    0049DA01   .  FFD7     call    edi
    0049DA03   .  50       push    eax
    0049DA04   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DA0A   .  DC8D 74F>fmul    qword ptr [ebp-38C]              ;  4211797574*211
    0049DA10   .  DFE0     fstsw   ax
    0049DA12   .  A8 0D    test    al, 0D
    0049DA14   .  0F85 320>jnz     0049E84C
    0049DA1A   .  FF15 FC1>call    dword ptr [<&MSVBVM60.__vbaFPInt>;  MSVBVM60.__vbaFPInt
    0049DA20   .  DD9D 6CF>fstp    qword ptr [ebp-394]              ;  上面相乘的结果888689288114
    0049DA26   .  8B95 98F>mov     edx, dword ptr [ebp-368]         ;  “179757421”机器码倒转
    0049DA2C   .  8D4D BC  lea     ecx, dword ptr [ebp-44]
    0049DA2F   .  FFD7     call    edi
    0049DA31   .  50       push    eax
    0049DA32   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DA38   .  DD9D 64F>fstp    qword ptr [ebp-39C]              ;  转成实数得179757421
    0049DA3E   .  8B45 B8  mov     eax, dword ptr [ebp-48]          ;  机器码"124757971"
    0049DA41   .  50       push    eax
    0049DA42   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DA48   .  DC85 64F>fadd    qword ptr [ebp-39C]              ;  179757421+124757971
    0049DA4E   .  DFE0     fstsw   ax
    0049DA50   .  A8 0D    test    al, 0D
    0049DA52   .  0F85 F40>jnz     0049E84C
    0049DA58   .  DD9D 5CF>fstp    qword ptr [ebp-3A4]              ;  加的结果st=304515392.00000000000
    0049DA5E   .  8D8D 8CF>lea     ecx, dword ptr [ebp-174]
    0049DA64   .  51       push    ecx
    0049DA65   .  FF15 CC1>call    dword ptr [<&MSVBVM60.__vbaR8Err>;  MSVBVM60.__vbaR8ErrVar
    0049DA6B   .  DC85 5CF>fadd    qword ptr [ebp-3A4]              ;  2475797+304515392
    0049DA71   .  DFE0     fstsw   ax
    0049DA73   .  A8 0D    test    al, 0D
    0049DA75   .  0F85 D10>jnz     0049E84C
    0049DA7B   .  DD9D 54F>fstp    qword ptr [ebp-3AC]              ;  加的结果st=306991189.00000000000
    0049DA81   .  8D95 6CF>lea     edx, dword ptr [ebp-194]
    0049DA87   .  52       push    edx
    0049DA88   .  FF15 CC1>call    dword ptr [<&MSVBVM60.__vbaR8Err>;  MSVBVM60.__vbaR8ErrVar
    0049DA8E   .  DC8D 54F>fmul    qword ptr [ebp-3AC]              ;  *179
    0049DA94   .  DFE0     fstsw   ax
    0049DA96   .  A8 0D    test    al, 0D
    0049DA98   .  0F85 AE0>jnz     0049E84C
    0049DA9E   .  FF15 FC1>call    dword ptr [<&MSVBVM60.__vbaFPInt>;  MSVBVM60.__vbaFPInt
    0049DAA4   .  DD9D 4CF>fstp    qword ptr [ebp-3B4]              ;  乘的结果st=5.4951422831000000000e+10
    0049DAAA   .  8D85 DCF>lea     eax, dword ptr [ebp-124]
    0049DAB0   .  50       push    eax
    0049DAB1   .  FF15 CC1>call    dword ptr [<&MSVBVM60.__vbaR8Err>;  MSVBVM60.__vbaR8ErrVar
    0049DAB7   .  DD9D 44F>fstp    qword ptr [ebp-3BC]              ;  1247
    0049DABD   .  8B4D D0  mov     ecx, dword ptr [ebp-30]
    0049DAC0   .  51       push    ecx
    0049DAC1   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DAC7   .  DC85 44F>fadd    qword ptr [ebp-3BC]              ;  机器码124757971+1247
    0049DACD   .  DFE0     fstsw   ax
    0049DACF   .  A8 0D    test    al, 0D
    0049DAD1   .  0F85 750>jnz     0049E84C
    0049DAD7   .  DD9D 3CF>fstp    qword ptr [ebp-3C4]              ;  加的结果st=124759218.00000000000
    0049DADD   .  8D95 BCF>lea     edx, dword ptr [ebp-144]
    0049DAE3   .  52       push    edx
    0049DAE4   .  FF15 CC1>call    dword ptr [<&MSVBVM60.__vbaR8Err>;  MSVBVM60.__vbaR8ErrVar
    0049DAEA   .  DC8D 3CF>fmul    qword ptr [ebp-3C4]              ;  *971
    0049DAF0   .  DFE0     fstsw   ax
    0049DAF2   .  A8 0D    test    al, 0D
    0049DAF4   .  0F85 520>jnz     0049E84C
    0049DAFA   .  DD9D 34F>fstp    qword ptr [ebp-3CC]              ;  乘的结果st=1.2114120067800000000e+11
    0049DB00   .  8B45 C4  mov     eax, dword ptr [ebp-3C]
    0049DB03   .  50       push    eax
    0049DB04   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DB0A   .  833D 00E>cmp     dword ptr [52E000], 0
    0049DB11   .  75 08    jnz     short 0049DB1B
    0049DB13   .  DCBD 34F>fdivr   qword ptr [ebp-3CC]              ;  整除st=124757971.00000000000/121141200678
    0049DB19   .  EB 11    jmp     short 0049DB2C
    0049DB1B   >  FFB5 38F>push    dword ptr [ebp-3C8]
    0049DB21   .  FFB5 34F>push    dword ptr [ebp-3CC]
    0049DB27   .  E8 B64BF>call    <jmp.&MSVBVM60._adj_fdivr_m64>
    0049DB2C   >  DFE0     fstsw   ax
    0049DB2E   .  A8 0D    test    al, 0D
    0049DB30   .  0F85 160>jnz     0049E84C
    0049DB36   .  FF15 FC1>call    dword ptr [<&MSVBVM60.__vbaFPInt>;  MSVBVM60.__vbaFPInt
    0049DB3C   .  DC85 4CF>fadd    qword ptr [ebp-3B4]              ;  取整数部分+54951422831
    0049DB42   .  DC85 6CF>fadd    qword ptr [ebp-394]              ;  又再加888689288114
    0049DB48   .  DFE0     fstsw   ax
    0049DB4A   .  A8 0D    test    al, 0D
    0049DB4C   .  0F85 FA0>jnz     0049E84C
    0049DB52   .  DD9D 2CF>fstp    qword ptr [ebp-3D4]              ;  两次加后的结果st=9.4364071191600000000e+11
    0049DB58   .  8B95 84F>mov     edx, dword ptr [ebp-37C]
    0049DB5E   .  8D8D 5CF>lea     ecx, dword ptr [ebp-A4]
    0049DB64   .  FFD7     call    edi
    0049DB66   .  50       push    eax
    0049DB67   .  FF15 341>call    dword ptr [<&MSVBVM60.__vbaR8Str>;  MSVBVM60.__vbaR8Str
    0049DB6D   .  833D 00E>cmp     dword ptr [52E000], 0
    0049DB74   .  75 08    jnz     short 0049DB7E
    0049DB76   .  DCBD 2CF>fdivr   qword ptr [ebp-3D4]              ;  整除711
    0049DB7C   .  EB 11    jmp     short 0049DB8F                   ;  除以711后取整数部分就是注册码了。
    0049DB7E   >  FFB5 30F>push    dword ptr [ebp-3D0]
    0049DB84   .  FFB5 2CF>push    dword ptr [ebp-3D4]
    0049DB8A   .  E8 534BF>call    <jmp.&MSVBVM60._adj_fdivr_m64>
    0049DB8F   >  DFE0     fstsw   ax
    0049DB91   .  A8 0D    test    al, 0D
    0049DB93   .  0F85 B30>jnz     0049E84C
    0049DB99   .  FF15 FC1>call    dword ptr [<&MSVBVM60.__vbaFPInt>;  MSVBVM60.__vbaFPInt
    0049DB9F   .  FF15 F81>call    dword ptr [<&MSVBVM60.__vbaFpR8>>;  MSVBVM60.__vbaFpR8
    0049DBA5   .  DC9D 7CF>fcomp   qword ptr [ebp-384]              ;  这里就是真假码比较了

    ------------------------------------------------------------------------
    【破解总结】

    这个算法就只是对机器码的运算,比如取字符,连接字符串。然后是实数的运算,比如加减乘除。仅此而已。大家都来跟跟吧。







    机器码:156578830
    注册码:400908388

    EAX=00153814, (UNICODE "6510388756")
    EDX=00000006
    ST=6510388756.0000000000
    堆栈 SS:[0012F17C]=510.0000000000000
    ST=38875651.000000000000
    堆栈 SS:[0012F16C]=0.0
    ST=5657883.0000000000000
    堆栈 SS:[0012F164]=195454481.0000000
    ST=38.000000000000000000
    堆栈 SS:[0012F15C]=201112364.0000000
    ST=7642269832.0000000000
    堆栈 SS:[0012F154]=1.185757550018992e-322
    ST=156578986.00000000000
    堆栈 SS:[0012F144]=4.964584793101267e-302
    ST=156578830.00000000000
    堆栈 SS:[0012F13C]=129960558380.0000
    ST=8301.0000000000000000
    堆栈 SS:[0012F134]=3327940536222.000
    ST=400908388.00000000000
    堆栈 SS:[0012F184]=8253666666.000000
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2017-12-25 09:25
  • 签到天数: 321 天

    [LV.8]以坛为家I

    发表于 2007-4-15 22:00:08 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-12-6 09:28
  • 签到天数: 121 天

    [LV.7]常住居民III

     楼主| 发表于 2007-4-16 07:44:32 | 显示全部楼层
    感谢6楼的兄弟的详细分析,我破了以后没有测试,真是惭愧啊
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-4-16 11:23:23 | 显示全部楼层
    感谢 ,正努力中
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-1-13 22:14
  • 签到天数: 1471 天

    [LV.10]以坛为家III

    发表于 2007-4-17 17:52:05 | 显示全部楼层
    楼主为什么不更新了?偶看到论坛有相关的分析,贴了份上来,偶可以大菜鸟一个,V6.8版找不到关键的断点,破不了,而偶一直在用这“月光迷你钟”,盼高手解决!
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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