資源簡介
CheatEngine5.6中文源碼 CheatEngine5.5中文源碼
CheatEngine5.5中文源碼
CheatEngine5.5中文源碼
CheatEngine5.5中文源碼
CheatEngine5.5中文源碼
代碼片段和文件信息
#ifndef?CETC
ALLERT!?DO?NOT?PUT?THIS?FILE?IN?THE?STANDARD?CE?DISTRIBUTION
#endif
#include?“ntifs.h“
#include?“extraimports.h“
#include?“memscan.h“
#include?“tdiwrapper.h“
#include?
#include?“rootkit.h“
VOID?CETC_CORE(IN?PVOID?StartContext)
{
KLOCK_QUEUE_HANDLE?lqh;
PEPROCESS?ActivePEPROCESS=NULL;
InitServer();
if?(FileobjectConnection!=NULL)
{
StopListener=FALSE;
while?(!StopListener)
{
AddressListEntries=0;
DbgPrint(“Start?listening\n“);
if?(Listen())
{
ULONG?DataSent=0;
BOOLEAN?PasswordCorrect=FALSE;
int?i;
unsigned?char?command;
char?a;
char?*buffer;
char?defaultpass[9]=“defaultpw“;
DbgPrint(“Listen=success\n“);
connected=TRUE;
DbgPrint(“Waiting?for?password\n“);
while?((!PasswordCorrect)?&&?(connected))
{
if?(Receive(&command1))
{
if?(command==CS_PASSWORD)?//only?one?possible?so?use?a?if
{
if?(Receive(&a1))?//length
{
if?(a!=0)
{
buffer=ExAllocatePoolWithTag(NonPagedPool(ULONG)a0);
DbgPrint(“received?passsize=%d\n“a);
//allocate?a?buffer?big?enough?to?receive?the?password
if?(Receive(buffera))
{
if?(a<=9)
{
????????????????????????????????????for?(i=0;?i if?(buffer[i]!=defaultpass[i])
break;
PasswordCorrect=(i==9);
}
if?(PasswordCorrect)
DbgPrint(“Password?correct\n“);
else
DbgPrint(“Password?incorrect\n“);
}
ExFreePool(buffer);
}
}
}
}
}
if?(!connected)
continue;
DataSent=0;
while?(connected)
{
DbgPrint(“Going?to?read?a?new?command\n“);
if?(Receive(&command1))
{
DbgPrint(“command=%d\n“command);
switch?(command)
{
case?CS_SetTimerSpeed:?//(freezeinterval:word)
{
WORD?fi;
DbgPrint(“Set?Timer?Speed\n“);
????????????????????????????????Receive(&fi2);
FreezeInterval.QuadPart=fi*-10000;
//-50000000=5?seconds=5000?ms
//-5000000=500?ms
break;
}
case?CS_KERNELDATA:
{
DbgPrint(“Kerneldata?received\n“);
Receive(&ActivelinkOffset4);
Receive(&ProcessNameOffset4);
Receive(&DebugportOffset4);
Receive(&PIDOffset4);
break;
}
case?CS_SetConfig:
{
//UseDebugRegs:byte;UseDBKQueryMemoryRegion:byte;UseDBKReadWriteMemory:byte;UseDBKOpenProcess:byte)
DbgPrint(“SetConfig\n“);
Receive(&MemscanOptions.ShowAsSigned1);
Receive(&MemscanOptions.BinariesAsDecimal1);
Receive(&MemscanOptions.max2);
Receive(&MemscanOptions.buffersize4);
Receive(&
評論
共有 條評論