有一个好方法,那就是利用这个DLL来完成计算。当然这得找到DLL的入口参数
要知道入口参数,你必须动态分析。
我分析了一个软件,并写了keygen,
就是采用这种手段,
我写的倒入函数如下:
procedure GetRegisterString(company,username,serial:string; outStr:String;var nMax:Integer)stdcall;
procedure GetEncodeString(userNum,serial:string;outStr:PChar)stdcall;
procedure GetSerialString(company,usernam,outstr:string;var nmax:integer) stdcall;
implementation
procedure GetRegisterString; external 'cwRegister.dll' name 'GetRegisterString';
procedure GetEncodeString; external 'cwRegister.dll' name 'GetEncodeString';
procedure GetSerialString; external 'cwRegister.dll' name 'GetSerialString';
程序中的汇编代码如下:
:004728C5 8B75F8 mov esi, dword ptr [ebp-08]
:004728C8 8D45F8 lea eax, dword ptr [ebp-08]
:004728CB 50 push eax===????还不清楚参数的来源
:004728CC 8D8367010000 lea eax, dword ptr [ebx+00000167]
:004728D2 50 push eax===代输出的地方
:004728D3 8B4508 mov eax, dword ptr [ebp+08]
:004728D6 50 push eax===显示的序列号
:004728D7 8B45FC mov eax, dword ptr [ebp-04]
:004728DA 50 push eax===用户名
:004728DB 57 push edi===公司名
* Reference To: cwRegister.GetRegisterString, Ord:0000h//GetRegisterString(edi,eax,eax,eax,eax)
|
:004728DC E88FFFFFFF Call 00472870
0047293C 50 push eax========(获得的编码)
:0047293D 8D83EE000000 lea eax, dword ptr [ebx+000000EE]
:00472943 50 push eax========(用户数的字符串)
* Reference To: cwRegister.GetEncodeString, Ord:0000h|
:00472944 E82FFFFFFF Call 00472878
:00472949 83C40C add esp, 0000000C
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>