|
--------- 软件介绍: C语言是一门非常有用高级语言,是您踏上计算机学习之路的必修课,几乎所有的计算机考试都要用到C语言,C语言以其强大的功能一直独领编程语言的先锋。C语言学习系统主要功能如下:1、“基础知识”:收录了18大类70多个知识点,通过详尽的解释说明,学习C语言的基础知识。2、“函数说明”:收录了近400个函数,并包括详细使用说明和使用实例,并提供“按顺序查看”和“按类别查看”两种浏览方式。还可以用“按函数名”和“按功能”两种方式搜索函数。3、“编程实例”:收录了50个编程实例,配有详细的实例代码,使您能快速的进阶C语言学习。4、“习题练习”:精心收录了近500道C语言习题,并配有详细的解释说明,使您在C语言学习之路上事关功倍。5、“测试” :按时间按题量测试自己的学习效果。6、“二级模拟“:收录了四套200道二级模拟题,使您轻松通过国家计算机等级考试二级C语言。希望本软件能对你在C语言学习上有所帮助。
原版下载:http://lnhttp.skycn.net/down/cstu30.exe
破解者:crsky[DFCG][FCG] 破解工具:Trw2000 v1.23,Keymake v1.73
========开工:
启动TRW,隐藏, 现在打开C语言学习系统 v3.0 ,可以看到机器码:010907,输入用户名:crsky,注册码:778168778168,不动! Ctrl+N 呼出TRW,下万能中断:BPX HMEMCPY F5 ,返回注册界面,点击确定!程序让TRW挡截,BC * 清除断点后PMODULE 直接来到程序领空, 看到:
0167:004909F8 CALL NEAR [ECX+A0] 0167:004909FE CMP EAX,EBX 0167:00490A00 FNCLEX 0167:00490A02 JNL 00490A16 0167:00490A04 PUSH DWORD A0 0167:00490A09 PUSH DWORD 00408050 0167:00490A0E PUSH EDI 0167:00490A0F PUSH EAX 0167:00490A10 CALL `MSVBVM60!__vbaHresultCheckObj` 0167:00490A16 MOV EAX,[EBP-18] 0167:00490A19 LEA ECX,[EBP-48] 0167:00490A1C MOV [EBP-30],EAX 0167:00490A1F LEA EAX,[EBP-38] 0167:00490A22 PUSH EAX 0167:00490A23 PUSH ECX
。。。。。。。。
一直F10 跟进,待看到:
0167:00490BCB MOV [EBP-1C],EBX 0167:00490BCE MOV [EBP-50],EAX 0167:00490BD1 MOV DWORD [EBP-58],08 0167:00490BD8 CALL `MSVBVM60!rtcTrimVar` 0167:00490BDE LEA EAX,[EBP-68] 0167:00490BE1 LEA ECX,[EBP-20] 0167:00490BE4 PUSH EAX 0167:00490BE5 PUSH ECX 0167:00490BE6 CALL `MSVBVM60!__vbaStrVarVal` 0167:00490BEC PUSH EAX 0167:00490BED CALL 00485540 <============D EAX可看到输入的用户名及注册码,F8 跟进 ! 0167:00490BF2 MOV [EBP-70],EAX 0167:00490BF5 LEA EDX,[EBP-48] 0167:00490BF8 LEA EAX,[EBP-78] 0167:00490BFB PUSH EDX 。。。。。。
F8 跟进后经过N下的F10看到:
0167:004858A3 CALL `MSVBVM60!__vbaStrVarMove` 0167:004858A9 MOV EDX,EAX 0167:004858AB LEA ECX,[EBP-20] 0167:004858AE CALL ESI (MSVBVM60!__VBASTRMOVE)<========== D EAX 看到真正注册码:591061944014131474118 0167:004858B0 LEA EAX,[EBP-74] 0167:004858B3 LEA ECX,[EBP-64] 0167:004858B6 PUSH EAX 0167:004858B7 PUSH ECX 0167:004858B8 PUSH BYTE +02 0167:004858BA CALL `MSVBVM60!__vbaFreeVarList` 0167:004858C0 ADD ESP,BYTE +0C 0167:004858C3 MOV EDX,[EBP-20] 0167:004858C6 LEA ECX,[EBP-30] 0167:004858C9 CALL `MSVBVM60!__vbaStrCopy` 0167:004858CF PUSH DWORD 0048594C
。。。。。。。。。
光标停留在"0167:004858AE CALL ESI (MSVBVM60!__VBASTRMOVE)" 输入:code on,界面变为:
0167:004858A3 FF1528104000 CALL `MSVBVM60!__vbaStrVarMove` 0167:004858A9 8BD0 MOV EDX,EAX 0167:004858AB 8D4DE0 LEA ECX,[EBP-20] 0167:004858AE FFD6 CALL ESI (MSVBVM60!__VBASTRMOVE)<=======这就是我们作注册机要的数据。 0167:004858B0 8D458C LEA EAX,[EBP-74] 0167:004858B3 8D4D9C LEA ECX,[EBP-64] 0167:004858B6 50 PUSH EAX 0167:004858B7 51 PUSH ECX 0167:004858B8 6A02 PUSH BYTE +02 0167:004858BA FF1538104000 CALL `MSVBVM60!__vbaFreeVarList` 0167:004858C0 83C40C ADD ESP,BYTE +0C 0167:004858C3 8B55E0 MOV EDX,[EBP-20] 0167:004858C6 8D4DD0 LEA ECX,[EBP-30] 0167:004858C9 FF158C114000 CALL `MSVBVM60!__vbaStrCopy` 0167:004858CF 684C5 94800 PUSH DWORD 0048594C
。。。。。。。
现在可以请出我们的注册机制作好工具Keymake v1.73,F8 制作内存注册机: 中断地址:4858AE 中断次数:1 第一字节:FF 指令长度:2
选择内存方式:寄存器 → EAX → 宽字符串 → 生成!
|