-
-
[旧帖]
[求助]跟据Rcracker兄弟发的教程序的第四篇内存断点写程序
0.00雪花
-
发表于:
2006-11-19 10:29
3930
-
[旧帖] [求助]跟据Rcracker兄弟发的教程序的第四篇内存断点写程序
0.00雪花
#include <iostream>
#include <string>
#include <windows.h>
using namespace std;
int main()
{
char Drive[MAX_PATH];
char DriveVolume[MAX_PATH];
char ascii[MAX_PATH];
string ComputeResult;
DWORD MaxVolumeSize=11;
DWORD lpResult;
cout << "请输入要注册的程序所在的磁盘" << endl;
cin >> Drive;
UINT DriveType = GetDriveType(Drive);
cout << "你所输入的磁盘类型为" << DriveType << endl;
BOOL lResult = GetVolumeInformation(Drive, //驱动盘符
DriveVolume, //磁盘卷标
MAX_PATH, //最大卷标长度 !!!
NULL,
NULL,
NULL,
NULL,
256);
cout << "The volume is :" << DriveVolume << endl; // !!!
int n = lstrlen(DriveVolume);
cout << DriveVolume << "字符长度为" << n << endl;
strrev(DriveVolume);
for (int i=0;i<n;i++)
{
sprintf(ascii,"%x",(int)DriveVolume[i]);
ComputeResult+=ascii;
}
cout<<ComputeResult<<endl;
system("pause");
return 0;
}
到了这步,不知道怎么继续下去了,算法是递减磁盘类型与磁盘卷标相乘,再跟797A7553异或,得到注册码。请高手教偶一下,谢谢,获取卷标暂时只支持英文的。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课