| 跳过超星splash和修改超星HDDID的方法 |
|
| 作者: kangdy 发布日期:
2008-4-20
查看数:
出自: 网上读书园地
|
本贴内容针对超星4.0(20070511)的文件
为何要跳过splash? 
因为看见它比较烦。。。。
为何要修改机器码?
因为超星限制机器注册数量。。下载后的图书不能随意看。。固定时间内只能注册几台机器。。。
等等。。
如果你没有觉得这样不爽,那么我帖子里的都是废话。。你可以不用继续看下去了。。
如果你要继续看下去。。你应该至少掌握一点点地汇编知识。。会用1种调试软件或者帖子中所提及的1种工具
1、跳过ssreader._frmSplash
00402254 . A1 C8A18000 mov eax, dword ptr [80A1C8]
00402259 . E8 D6F30E00 call 004F1634
0040225E . 8BD8 mov ebx, eax
00402260 . A1 D0808A00 mov eax, dword ptr [8A80D0]
00402265 . 8918 mov dword ptr [eax], ebx
00402267 . C683 1C030000>mov byte ptr [ebx+31C], 0
0040226E . EB 15 jmp short 00402285 ********************修改此处可以跳过splash
00402270 . E8 F75A3100 call 00717D6C
00402275 . 8B15 D0808A00 mov edx, dword ptr [8A80D0] ; ssreader._frmSplash
0040227B . 8B02 mov eax, dword ptr [edx]
0040227D . 8B10 mov edx, dword ptr [eax]
0040227F . FF92 88000000 call dword ptr [edx+88]
00402285 > 8B0D B0828A00 mov ecx, dword ptr [8A82B0] ; ssreader.008AC4F4
0040228B . 8B01 mov eax, dword ptr [ecx]
0040228D . 8B0D 9C808A00 mov ecx, dword ptr [8A809C] ; ssreader._frmSSReader
2、修改超星HDDID的方法
本贴所提及的超星HDDID是在超星浏览器中察看用户信息时的机器码
在超星阅览器中所察看到的机器码是10进制数据,而超星在内存中存放的形式为16进制数据
会调试的朋友可以用计算器将浏览器中察看得到的数据换算为16进制数据,然后按照低位在前高位在后的顺序在内存中查找16进制的机器码数据。。。因为EXE文件的镜像基址始终为40000..
所以你所查到的位置应该与我的位置一样,共有两处。。
01085D3C和0109F23C
在超星程序里计算出机器码后是在此处提交的返回值。。
0066150F |> \8B45 F4 mov eax, dword ptr [ebp-C] 这里计算得出机器码
下面给出2种修改方法:
1)可以修改此处代码跳到文件空白处,将你想要的机器码的16进制数据赋值给EAX。
2)通过程序修改内存中的数据。。
方法是
先查找超星进程。。
然后找到存放机器码的内存位置01085D3C和0109F23C,偏移地址应该减去镜像基址(一般为40000)修改内存中数据。。
会编写程序的可以自己编写个小程序来实现,当然如果你不会写程序或者跟我一样懒得写。。 你还可以利用内存修改工具。。
如winhex和金山游侠等工具去修改
|
|
|
|
| 【论坛浏览】 【我来说两句】 【打印】 【大】 【中】 【小】 【关闭】 |
|
|
|
|
|
|