资源简介
VT过游戏保护,调试有保护的游戏。无视TP,HP,PP。
代码片段和文件信息
#include “ntddk.h“
typedef struct _DbgPortList{
LIST_ENTRY PortList;
ULONG64 DbgPort;
UINT8 markdbg;
PEPROCESS Process;
}DbgPortList *PDbgPortList;
static LIST_ENTRY PortList ;
static KSPIN_LOCK Port_lock = NULL;
VOID InitDbgPortList(){
InitializeListHead(&PortList);
KeInitializeSpinLock(&Port_lock);
}
PDbgPortList Port_FindProcessList(PEPROCESS Process ULONG64 DbgPort){
KIRQL OldIrql;
PLIST_ENTRY Entry;
DbgPortList *TempItem = NULL;
DbgPortList* DFind = NULL;
KeAcquireSpinLock(&Port_lock &OldIrql);
Entry = PortList.Flink;
while (Entry != &PortList)
{
TempItem = CONTAINING_RECORD(Entry DbgPortList PortList);
Entry = Entry->Flink;
if (Process!=NULL)
{
if (TempItem->Process == Process)
{
DFind = TempItem;
break;
}
}
if (DbgPort != NULL)
{
if (TempItem->DbgPort == DbgPort)
{
DFind = TempItem;
break;
}
}
}
KeReleaseSpinLock(&Port_lock OldIrql);
return DFind;
}
PDbgPortList Port_AddProcessToList(PEPROCESS ProcessULONG64 DbgPort){
PDbgPortList TempItem;
TempItem = (PDbgPortList)ExAllocatePoolWithTag(NonPagedPool sizeof(DbgPortList) ‘prrp‘);
if (!TempItem)
{
return FALSE;
}
RtlZeroMemory(TempItem sizeof(DbgPortList));
TempItem->Process = Process;
TempItem->DbgPort = DbgPort;
TempItem->markdbg = FALSE;
ExInterlockedInsertTailList(&PortList &TempItem->PortList &Port_lock);
if (TempItem != NULL)
{
return TempItem;
}
return FALSE;
}
BOOLEAN Port_SetPort(PEPROCESS Process ULONG64 DbgPort){
PDbgPortList Temp = NULL;
Temp=Port_AddProcessToList(Process DbgPort);
if (Temp != NULL){
return TRUE;
}
return FALSE;
}
BOOLEAN Port_IsPort(PEPROCESS Process){
PDbgPortList Temp = NULL;
Temp=Port_FindProcessList(Process NULL);
if (Temp!=NULL)
{
if (Temp->DbgPort != NULL && Temp->Process == Process){
return TRUE;
}
}
return FALSE;
}
ULONG64 Port_GetPort(PEPROCESS Process){
PDbgPortList Temp = NULL;
Temp = Port_FindProcessList(Process NULL);
if (Temp != NULL)
{
if (Temp->DbgPort != NULL && Temp->Process == Process){
return Temp->DbgPort;
}
}
return FALSE;
}
VOID NTAPI Port_ExFreeItem(PDbgPortList Item)
{
KIRQL OldIrql;
KeAcquireSpinLock(&Port_lock &OldIrql);
RemoveEntryList(&Item->PortList);
KeReleaseSpinLock(&Port_lock OldIrql);
ExFreePool(Item);
return;
}
BOOLEAN Port_RemoveDbgItem(PEPROCESS Process ULONG64 DbgPort){
PDbgPortList Temp = NULL;
Temp = Port_FindProcessList(Process DbgPort);
if (Temp != NULL)
{
if (Process!=NULL)
{
if (Temp->Process == Process){
Port_ExFreeItem(Temp);
return TRUE;
}
}
if (DbgPort != NULL)
{
if (Temp->DbgPort == DbgPort){
Port_ExFreeItem(Temp);
return TRUE;
}
}
}
return FALSE;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-12-28 12:45 VT_demo\.vs\
目录 0 2016-12-28 12:45 VT_demo\.vs\VT_demo\
目录 0 2016-12-28 12:45 VT_demo\.vs\VT_demo\v14\
文件 89088 2016-12-28 12:45 VT_demo\.vs\VT_demo\v14\.suo
文件 1536 2016-05-12 12:54 VT_demo\suo21E8.tmp
文件 1536 2016-05-12 12:42 VT_demo\suo7949.tmp
目录 0 2016-12-28 12:45 VT_demo\VT_demo Package\
文件 15069 2016-02-20 21:22 VT_demo\VT_demo Package\VT_demo Package.vcxproj
文件 361 2016-02-20 21:22 VT_demo\VT_demo Package\VT_demo Package.vcxproj.filters
文件 165 2016-12-28 12:45 VT_demo\VT_demo Package\VT_demo Package.vcxproj.user
目录 0 2016-11-17 12:57 VT_demo\VT_demo Package\Win7Debug\
目录 0 2016-11-17 11:55 VT_demo\VT_demo Package\Win7Debug\VT_demo Package.tlog\
目录 0 2016-11-17 12:57 VT_demo\VT_demo Package\x64\
目录 0 2016-11-17 12:57 VT_demo\VT_demo Package\x64\Win7Release\
文件 182 2011-08-11 11:53 VT_demo\VT_demo Package\x64\Win7Release\inf2catOutput.log
文件 94 2016-06-09 13:26 VT_demo\VT_demo Package\x64\Win7Release\VT_demo Package.log
目录 0 2016-11-17 11:55 VT_demo\VT_demo Package\x64\Win7Release\VT_demo Package.tlog\
文件 655 2016-08-20 18:35 VT_demo\VT_demo Package\x64\Win7Release\VT_demo Package.vcxprojResolveAssemblyReference.cache
文件 7756 2016-02-20 21:22 VT_demo\VT_demo.sln
文件 127488 2016-10-12 13:27 VT_demo\VT_demo.v12.suo
目录 0 2016-11-17 12:57 VT_demo\VT_demo\
文件 2880 2016-06-16 13:36 VT_demo\VT_demo\ActiveProcessDbgList.c
文件 583 2016-06-16 13:36 VT_demo\VT_demo\ActiveProcessDbgList.h
文件 14070 2015-11-17 17:20 VT_demo\VT_demo\amd64.h
文件 55047 2016-09-15 13:35 VT_demo\VT_demo\AntiAntiDebugALL.c
文件 1554 2016-06-14 22:55 VT_demo\VT_demo\AntiHookSwapContext.c
目录 0 2016-11-17 12:57 VT_demo\VT_demo\Arch\
目录 0 2016-11-17 12:57 VT_demo\VT_demo\Arch\Intel\
文件 14620 2011-08-25 01:10 VT_demo\VT_demo\Arch\Intel\EPT.c
文件 6140 2016-04-14 02:00 VT_demo\VT_demo\Arch\Intel\EPT.h
文件 7399 2016-06-08 21:36 VT_demo\VT_demo\Arch\Intel\VMCS.h
............此处省略207个文件信息
相关资源
- 串口监控调试助手.zip
- verilog写的数字频率计,97年电赛题目
- 水温控制系统有程序
- IAR5.4环境下调试ARM S3C2440的完整工程
- TCP UDP socket调试工具
- 聚英调试助手 V1.3.zip
- 手机音频流程包括mic的偏置电路及其
- HTTP 抓包实战 肖佳 PDF
- sscom5.13.1.exe
- WindML入门教程—在vxsim中调试WindML
- VR-TOSHIBA-358870-屏幕调试笔记
- Linux设备NDIS调试步骤.rar
- 答题助手,调试模式截图,自动调用
- 高通功耗调试文档
- 本程序可用于读取单幅CT图像并显示相
- TCP/UDP Socket调试工具 V2.3
- NetAssist.zip
- 网络调试NetAssist
- MSMQ、RabbitMQ、ActiveMQ消息队列调试工具
- 串口(uart)TelnetSSH调试工具putty
- SScom33.exe很好用的串口调试工具
- RK语音通话3A算法集成说明及参数调试
- 免调试433MHz接收方案全
- 我自己调试好的S3C6410 LED & KEY & PWM
- vtk中三视图显示
- stm32串口调试助手
-
Eclipse + CDT + YAGARTO + J-li
nk,STM32开源 - 网络调试工具NetAssist
- 好用串口调试SSCOM3.3
- 串口调试助手V2.2
评论
共有 条评论