苏亚星多媒体教学网 v5.1破解
XXX多媒体教学网5.1版
软件名:XXX多媒体教学网5.1版
破解者:JTFZP(初学者,刚学一两个月,只独立破过华教在线单机版一个软件. 过两天我写出该软件用户序列号
生成的详细算法,这样就可根据用户序列号算出注册码了。注册机也已写好了。给点鼓励啊。)
该软件的6.0出来了,我就把我研究的5.1版公开吧。这里要感谢黑心同志,他对前一个版本的破解对我启发很大。
6.0的版本出来了,哪位高人破出来后,能不能与我私下交流一下?
href谢谢。
该软件的加密我也不太懂,试对ASMARSDA.DLL和MODEL.EXE两个文件做一些修改,
以解除试用版的6用户限制。首先是ASMARSDA.DLL:
第一步:在苏亚星多媒体教学网5.1版的ASMARSDA.DLL中找到如下代码:
Exported fn():
href - Ord:0038h
:10009610 8B4120 mov eax, dword ptr [ecx+20]
:10009613 33D2 xor edx, edx
:10009615 56 push esi
:10009616 57 push edi
:10009617 8AB019470000 mov dh, byte ptr [eax+00004719]
:1000961D 8A90B5460000 mov dl, byte ptr [eax+000046B5]
:10009623 8BF2 mov esi, edx
:10009625 33D2 xor edx, edx
:10009627 8AB0296E0000 mov dh, byte ptr [eax+00006E29]
:1000962D 8A90C56D0000 mov dl, byte ptr [eax+00006DC5]
:10009633 F7D2 not edx
:10009635 663BF2 cmp si, dx
:10009638 7533 jne 1000966D
:1000963A 6681FE2B4E cmp si, 4E2B
:1000963F 7633 jbe 10009674
:10009641 8BC6 mov eax, esi
:10009643 25FFFF0000 and eax, 0000FFFF
:10009648 05D5B1FFFF add eax, FFFFB1D5
:1000964D 83F807 cmp eax, 00000007
:10009650 894114 mov dword ptr [ecx+14], eax
:10009653 7621 jbe 10009676
:10009655 8B5124 mov edx, dword ptr [ecx+24]
:10009658 668B7A1B mov di, word ptr [edx+1B]
:1000965C 668B521D mov dx, word ptr [edx+1D]
:10009660 66F7D2 not dx
:10009663 663BFA cmp di, dx
:10009666 7505 jne 1000966D
:10009668 663BF7 cmp si, di
:1000966B 7409 je 10009676
把以上代码改为:
Exported fn():
href - Ord:0038h
:10009610 8B4120 mov eax, dword ptr [ecx+20]
:10009613 33D2 xor edx, edx
:10009615 56 push esi
:10009616 57 push edi
:10009617 8AB019470000 mov dh, byte ptr [eax+00004719]
:1000961D 8A90B5460000 mov dl, byte ptr [eax+000046B5]
:10009623 8BF2 mov esi, edx
:10009625 33D2 xor edx, edx
:10009627 8AB0296E0000 mov dh, byte ptr [eax+00006E29]
:1000962D 8A90C56D0000 mov dl, byte ptr [eax+00006DC5]
:10009633 F7D2 not edx
:10009635 663BF2 cmp si, dx
:10009638 B80F000000 mov eax, 0000000F
:1000963D C74114FF000000 mov [ecx+14], 000000FF ->FF不是255吗?哈哈。
:10009644 5F pop edi
:10009645 5E pop esi
:10009646 C3 ret
:10009647 00 BYTE 0
:10009648 05D5B1FFFF add eax, FFFFB1D5
:1000964D 83F807 cmp eax, 00000007
:10009650 894114 mov dword ptr [ecx+14], eax
:10009653 7621 jbe 10009676
:10009655 8B5124 mov edx, dword ptr [ecx+24]
:10009658 668B7A1B mov di, word ptr [edx+1B]
:1000965C 668B521D mov dx, word ptr [edx+1D]
:10009660 66F7D2 not dx
:10009663 663BFA cmp di, dx
:10009666 7505 jne 1000966D
:10009668 663BF7 cmp si, di
:1000966B 7409 je 10009676
第二步:在苏亚星多媒体教学网5.1版的ASMARSDA.DLL中找到如下代码:
Exported fn():
href - Ord:0031h
:10009680 8B4120 mov eax, dword ptr [ecx+20]
:10009683 33D2 xor edx, edx
:10009685 56 push esi
:10009686 8AB0211C0000 mov dh, byte ptr [eax+00001C21]
:1000968C 8A90BD1B0000 mov dl, byte ptr [eax+00001BBD]
:10009692 8BF2 mov esi, edx
:10009694 33D2 xor edx, edx
:10009696 8AB0A92F0000 mov dh, byte ptr [eax+00002FA9]
:1000969C 8A905D2B0000 mov dl, byte ptr [eax+00002B5D]
:100096A2 F7D2 not edx
:100096A4 663BF2 cmp si, dx
:100096A7 740B je 100096B4
:100096A9 C7411001000000 mov [ecx+10], 00000001
:100096B0 33C0 xor eax, eax
:100096B2 5E pop esi
:100096B3 C3 ret
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:100096A7(C)
|
:100096B4 6681FE2B4E cmp si, 4E2B
:100096B9 7704 ja 100096BF
:100096BB 33C0 xor eax, eax
:100096BD 5E pop esi
:100096BE C3 ret
把以上代码改为:
Exported fn():
href - Ord:0031h
:10009680 8B4120 mov eax, dword ptr [ecx+20]
:10009683 33D2 xor edx, edx
:10009685 56 push esi
:10009686 8AB0211C0000 mov dh, byte ptr [eax+00001C21]
:1000968C 8A90BD1B0000 mov dl, byte ptr [eax+00001BBD]
:10009692 8BF2 mov esi, edx
:10009694 33D2 xor edx, edx
:10009696 8AB0A92F0000 mov dh, byte ptr [eax+00002FA9]
:1000969C 8A905D2B0000 mov dl, byte ptr [eax+00002B5D]
:100096A2 F7D2 not edx
:100096A4 663BF2 cmp si, dx
:100096A7 B801000000 mov eax, 00000001
:100096AC C7411001000000 mov [ecx+10], 00000001 ->这里改为00000002的话可同时加载两个班级,教师机均能登录。
:100096B3 5E pop esi
:100096B4 C3 ret
:100096B5 81FE2B4E7704 cmp esi, 04774E2B
:100096BB 33C0 xor eax, eax
:100096BD 5E pop esi
:100096BE C3 ret
第三步:把10009793处的74改为EB
把100097A8处的7506改为EB2F
把1000981B处的7505改为EB10
把10009B95处的74改为EB
把10009BB9处的7508改为EB19
把10009C12处的7E24改为EB00 ;去掉自校验
做如上修改后,试验证明,可以解除管理机程序不能加载多于6用户的班级模型
的限制。
其次是对MODEL.dll进行修改,具体做法如下:
在004095CE处改74为EB
在00409682处改8B91C8为BAFF00
在00409687处改00为90
做以上修改后可解除建立班级模型时用户数只能少于6的限制。
经过破解后,实际运行时一切正常,用户数最多254,我想是FF(255)减去
IP地址中0不用的原因(我瞎猜的,真实原因我也不知道)。(破解中限于篇幅和水平,主要是水平:),
没有对关键代码进行解释说明,可能不便于学习,请高手补上吧)