资源简介
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(&
评论
共有 条评论