⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 handler.c

📁 VC实现的系统HOOK,可以对系统的中断情况查询。
💻 C
📖 第 1 页 / 共 2 页
字号:
INT_VECTOR_HANDLER( 0xfd )
INT_VECTOR_HANDLER( 0xfe )
INT_VECTOR_HANDLER( 0xff )

INT_VECTOR	OriginalHandlers[256] = { 0, 0, 0, 0, 0 };
PVOID		InternalHandlers[256] = 
{
	INT_VECTOR_HANDLER_OFFSET( 0x00 ),
	INT_VECTOR_HANDLER_OFFSET( 0x01 ),
	INT_VECTOR_HANDLER_OFFSET( 0x02 ),
	INT_VECTOR_HANDLER_OFFSET( 0x03 ),
	INT_VECTOR_HANDLER_OFFSET( 0x04 ),
	INT_VECTOR_HANDLER_OFFSET( 0x05 ),
	INT_VECTOR_HANDLER_OFFSET( 0x06 ),
	INT_VECTOR_HANDLER_OFFSET( 0x07 ),
	INT_VECTOR_HANDLER_OFFSET( 0x08 ),
	INT_VECTOR_HANDLER_OFFSET( 0x09 ),
	INT_VECTOR_HANDLER_OFFSET( 0x0a ),
	INT_VECTOR_HANDLER_OFFSET( 0x0b ),
	INT_VECTOR_HANDLER_OFFSET( 0x0c ),
	INT_VECTOR_HANDLER_OFFSET( 0x0d ),
	INT_VECTOR_HANDLER_OFFSET( 0x0e ),
	INT_VECTOR_HANDLER_OFFSET( 0x0f ),
	INT_VECTOR_HANDLER_OFFSET( 0x10 ),
	INT_VECTOR_HANDLER_OFFSET( 0x11 ),
	INT_VECTOR_HANDLER_OFFSET( 0x12 ),
	INT_VECTOR_HANDLER_OFFSET( 0x13 ),
	INT_VECTOR_HANDLER_OFFSET( 0x14 ),
	INT_VECTOR_HANDLER_OFFSET( 0x15 ),
	INT_VECTOR_HANDLER_OFFSET( 0x16 ),
	INT_VECTOR_HANDLER_OFFSET( 0x17 ),
	INT_VECTOR_HANDLER_OFFSET( 0x18 ),
	INT_VECTOR_HANDLER_OFFSET( 0x19 ),
	INT_VECTOR_HANDLER_OFFSET( 0x1a ),
	INT_VECTOR_HANDLER_OFFSET( 0x1b ),
	INT_VECTOR_HANDLER_OFFSET( 0x1c ),
	INT_VECTOR_HANDLER_OFFSET( 0x1d ),
	INT_VECTOR_HANDLER_OFFSET( 0x1e ),
	INT_VECTOR_HANDLER_OFFSET( 0x1f ),
	INT_VECTOR_HANDLER_OFFSET( 0x20 ),
	INT_VECTOR_HANDLER_OFFSET( 0x21 ),
	INT_VECTOR_HANDLER_OFFSET( 0x22 ),
	INT_VECTOR_HANDLER_OFFSET( 0x23 ),
	INT_VECTOR_HANDLER_OFFSET( 0x24 ),
	INT_VECTOR_HANDLER_OFFSET( 0x25 ),
	INT_VECTOR_HANDLER_OFFSET( 0x26 ),
	INT_VECTOR_HANDLER_OFFSET( 0x27 ),
	INT_VECTOR_HANDLER_OFFSET( 0x28 ),
	INT_VECTOR_HANDLER_OFFSET( 0x29 ),
	INT_VECTOR_HANDLER_OFFSET( 0x2a ),
	INT_VECTOR_HANDLER_OFFSET( 0x2b ),
	INT_VECTOR_HANDLER_OFFSET( 0x2c ),
	INT_VECTOR_HANDLER_OFFSET( 0x2d ),
	INT_VECTOR_HANDLER_OFFSET( 0x2e ),
	INT_VECTOR_HANDLER_OFFSET( 0x2f ),
	INT_VECTOR_HANDLER_OFFSET( 0x30 ),
	INT_VECTOR_HANDLER_OFFSET( 0x31 ),
	INT_VECTOR_HANDLER_OFFSET( 0x32 ),
	INT_VECTOR_HANDLER_OFFSET( 0x33 ),
	INT_VECTOR_HANDLER_OFFSET( 0x34 ),
	INT_VECTOR_HANDLER_OFFSET( 0x35 ),
	INT_VECTOR_HANDLER_OFFSET( 0x36 ),
	INT_VECTOR_HANDLER_OFFSET( 0x37 ),
	INT_VECTOR_HANDLER_OFFSET( 0x38 ),
	INT_VECTOR_HANDLER_OFFSET( 0x39 ),
	INT_VECTOR_HANDLER_OFFSET( 0x3a ),
	INT_VECTOR_HANDLER_OFFSET( 0x3b ),
	INT_VECTOR_HANDLER_OFFSET( 0x3c ),
	INT_VECTOR_HANDLER_OFFSET( 0x3d ),
	INT_VECTOR_HANDLER_OFFSET( 0x3e ),
	INT_VECTOR_HANDLER_OFFSET( 0x3f ),
	INT_VECTOR_HANDLER_OFFSET( 0x40 ),
	INT_VECTOR_HANDLER_OFFSET( 0x41 ),
	INT_VECTOR_HANDLER_OFFSET( 0x42 ),
	INT_VECTOR_HANDLER_OFFSET( 0x43 ),
	INT_VECTOR_HANDLER_OFFSET( 0x44 ),
	INT_VECTOR_HANDLER_OFFSET( 0x45 ),
	INT_VECTOR_HANDLER_OFFSET( 0x46 ),
	INT_VECTOR_HANDLER_OFFSET( 0x47 ),
	INT_VECTOR_HANDLER_OFFSET( 0x48 ),
	INT_VECTOR_HANDLER_OFFSET( 0x49 ),
	INT_VECTOR_HANDLER_OFFSET( 0x4a ),
	INT_VECTOR_HANDLER_OFFSET( 0x4b ),
	INT_VECTOR_HANDLER_OFFSET( 0x4c ),
	INT_VECTOR_HANDLER_OFFSET( 0x4d ),
	INT_VECTOR_HANDLER_OFFSET( 0x4e ),
	INT_VECTOR_HANDLER_OFFSET( 0x4f ),
	INT_VECTOR_HANDLER_OFFSET( 0x50 ),
	INT_VECTOR_HANDLER_OFFSET( 0x51 ),
	INT_VECTOR_HANDLER_OFFSET( 0x52 ),
	INT_VECTOR_HANDLER_OFFSET( 0x53 ),
	INT_VECTOR_HANDLER_OFFSET( 0x54 ),
	INT_VECTOR_HANDLER_OFFSET( 0x55 ),
	INT_VECTOR_HANDLER_OFFSET( 0x56 ),
	INT_VECTOR_HANDLER_OFFSET( 0x57 ),
	INT_VECTOR_HANDLER_OFFSET( 0x58 ),
	INT_VECTOR_HANDLER_OFFSET( 0x59 ),
	INT_VECTOR_HANDLER_OFFSET( 0x5a ),
	INT_VECTOR_HANDLER_OFFSET( 0x5b ),
	INT_VECTOR_HANDLER_OFFSET( 0x5c ),
	INT_VECTOR_HANDLER_OFFSET( 0x5d ),
	INT_VECTOR_HANDLER_OFFSET( 0x5e ),
	INT_VECTOR_HANDLER_OFFSET( 0x5f ),
	INT_VECTOR_HANDLER_OFFSET( 0x60 ),
	INT_VECTOR_HANDLER_OFFSET( 0x61 ),
	INT_VECTOR_HANDLER_OFFSET( 0x62 ),
	INT_VECTOR_HANDLER_OFFSET( 0x63 ),
	INT_VECTOR_HANDLER_OFFSET( 0x64 ),
	INT_VECTOR_HANDLER_OFFSET( 0x65 ),
	INT_VECTOR_HANDLER_OFFSET( 0x66 ),
	INT_VECTOR_HANDLER_OFFSET( 0x67 ),
	INT_VECTOR_HANDLER_OFFSET( 0x68 ),
	INT_VECTOR_HANDLER_OFFSET( 0x69 ),
	INT_VECTOR_HANDLER_OFFSET( 0x6a ),
	INT_VECTOR_HANDLER_OFFSET( 0x6b ),
	INT_VECTOR_HANDLER_OFFSET( 0x6c ),
	INT_VECTOR_HANDLER_OFFSET( 0x6d ),
	INT_VECTOR_HANDLER_OFFSET( 0x6e ),
	INT_VECTOR_HANDLER_OFFSET( 0x6f ),
	INT_VECTOR_HANDLER_OFFSET( 0x70 ),
	INT_VECTOR_HANDLER_OFFSET( 0x71 ),
	INT_VECTOR_HANDLER_OFFSET( 0x72 ),
	INT_VECTOR_HANDLER_OFFSET( 0x73 ),
	INT_VECTOR_HANDLER_OFFSET( 0x74 ),
	INT_VECTOR_HANDLER_OFFSET( 0x75 ),
	INT_VECTOR_HANDLER_OFFSET( 0x76 ),
	INT_VECTOR_HANDLER_OFFSET( 0x77 ),
	INT_VECTOR_HANDLER_OFFSET( 0x78 ),
	INT_VECTOR_HANDLER_OFFSET( 0x79 ),
	INT_VECTOR_HANDLER_OFFSET( 0x7a ),
	INT_VECTOR_HANDLER_OFFSET( 0x7b ),
	INT_VECTOR_HANDLER_OFFSET( 0x7c ),
	INT_VECTOR_HANDLER_OFFSET( 0x7d ),
	INT_VECTOR_HANDLER_OFFSET( 0x7e ),
	INT_VECTOR_HANDLER_OFFSET( 0x7f ),
	INT_VECTOR_HANDLER_OFFSET( 0x80 ),
	INT_VECTOR_HANDLER_OFFSET( 0x81 ),
	INT_VECTOR_HANDLER_OFFSET( 0x82 ),
	INT_VECTOR_HANDLER_OFFSET( 0x83 ),
	INT_VECTOR_HANDLER_OFFSET( 0x84 ),
	INT_VECTOR_HANDLER_OFFSET( 0x85 ),
	INT_VECTOR_HANDLER_OFFSET( 0x86 ),
	INT_VECTOR_HANDLER_OFFSET( 0x87 ),
	INT_VECTOR_HANDLER_OFFSET( 0x88 ),
	INT_VECTOR_HANDLER_OFFSET( 0x89 ),
	INT_VECTOR_HANDLER_OFFSET( 0x8a ),
	INT_VECTOR_HANDLER_OFFSET( 0x8b ),
	INT_VECTOR_HANDLER_OFFSET( 0x8c ),
	INT_VECTOR_HANDLER_OFFSET( 0x8d ),
	INT_VECTOR_HANDLER_OFFSET( 0x8e ),
	INT_VECTOR_HANDLER_OFFSET( 0x8f ),
	INT_VECTOR_HANDLER_OFFSET( 0x90 ),
	INT_VECTOR_HANDLER_OFFSET( 0x91 ),
	INT_VECTOR_HANDLER_OFFSET( 0x92 ),
	INT_VECTOR_HANDLER_OFFSET( 0x93 ),
	INT_VECTOR_HANDLER_OFFSET( 0x94 ),
	INT_VECTOR_HANDLER_OFFSET( 0x95 ),
	INT_VECTOR_HANDLER_OFFSET( 0x96 ),
	INT_VECTOR_HANDLER_OFFSET( 0x97 ),
	INT_VECTOR_HANDLER_OFFSET( 0x98 ),
	INT_VECTOR_HANDLER_OFFSET( 0x99 ),
	INT_VECTOR_HANDLER_OFFSET( 0x9a ),
	INT_VECTOR_HANDLER_OFFSET( 0x9b ),
	INT_VECTOR_HANDLER_OFFSET( 0x9c ),
	INT_VECTOR_HANDLER_OFFSET( 0x9d ),
	INT_VECTOR_HANDLER_OFFSET( 0x9e ),
	INT_VECTOR_HANDLER_OFFSET( 0x9f ),
	INT_VECTOR_HANDLER_OFFSET( 0xa0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xa9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xaa ),
	INT_VECTOR_HANDLER_OFFSET( 0xab ),
	INT_VECTOR_HANDLER_OFFSET( 0xac ),
	INT_VECTOR_HANDLER_OFFSET( 0xad ),
	INT_VECTOR_HANDLER_OFFSET( 0xae ),
	INT_VECTOR_HANDLER_OFFSET( 0xaf ),
	INT_VECTOR_HANDLER_OFFSET( 0xb0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xb9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xba ),
	INT_VECTOR_HANDLER_OFFSET( 0xbb ),
	INT_VECTOR_HANDLER_OFFSET( 0xbc ),
	INT_VECTOR_HANDLER_OFFSET( 0xbd ),
	INT_VECTOR_HANDLER_OFFSET( 0xbe ),
	INT_VECTOR_HANDLER_OFFSET( 0xbf ),
	INT_VECTOR_HANDLER_OFFSET( 0xc0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xc9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xca ),
	INT_VECTOR_HANDLER_OFFSET( 0xcb ),
	INT_VECTOR_HANDLER_OFFSET( 0xcc ),
	INT_VECTOR_HANDLER_OFFSET( 0xcd ),
	INT_VECTOR_HANDLER_OFFSET( 0xce ),
	INT_VECTOR_HANDLER_OFFSET( 0xcf ),
	INT_VECTOR_HANDLER_OFFSET( 0xd0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xd9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xda ),
	INT_VECTOR_HANDLER_OFFSET( 0xdb ),
	INT_VECTOR_HANDLER_OFFSET( 0xdc ),
	INT_VECTOR_HANDLER_OFFSET( 0xdd ),
	INT_VECTOR_HANDLER_OFFSET( 0xde ),
	INT_VECTOR_HANDLER_OFFSET( 0xdf ),
	INT_VECTOR_HANDLER_OFFSET( 0xe0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xe9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xea ),
	INT_VECTOR_HANDLER_OFFSET( 0xeb ),
	INT_VECTOR_HANDLER_OFFSET( 0xec ),
	INT_VECTOR_HANDLER_OFFSET( 0xed ),
	INT_VECTOR_HANDLER_OFFSET( 0xee ),
	INT_VECTOR_HANDLER_OFFSET( 0xef ),
	INT_VECTOR_HANDLER_OFFSET( 0xf0 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf1 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf2 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf3 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf4 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf5 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf6 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf7 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf8 ),
	INT_VECTOR_HANDLER_OFFSET( 0xf9 ),
	INT_VECTOR_HANDLER_OFFSET( 0xfa ),
	INT_VECTOR_HANDLER_OFFSET( 0xfb ),
	INT_VECTOR_HANDLER_OFFSET( 0xfc ),
	INT_VECTOR_HANDLER_OFFSET( 0xfd ),
	INT_VECTOR_HANDLER_OFFSET( 0xfe ),
	INT_VECTOR_HANDLER_OFFSET( 0xff )
};
PVOID	ExternalHandlers[256];
__int64	InterruptCounts[256] = { 0 };

VOID __stdcall
GeneralHandler( 
		IN	ULONG		iInt )
{
	InterruptCounts[iInt]++;
	/* ... */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -