资源简介
The Minimalistic API Hooking Library for x64/x86,win10 X64 可用

代码片段和文件信息
/*
* MinHook - The Minimalistic API Hooking Library for x64/x86
* Copyright (C) 2009-2017 Tsuda Kageyu.
* All rights reserved.
*
* Redistribution and use in source and binary forms with or without
* modification are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* “AS IS“ AND ANY EXPRESS OR IMPLIED WARRANTIES INCLUDING BUT NOT LIMITED
* TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT INDIRECT INCIDENTAL SPECIAL
* EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE DATA OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY WHETHER IN CONTRACT STRICT LIABILITY OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include
#include “buffer.h“
// Size of each memory block. (= page size of VirtualAlloc)
#define MEMORY_BLOCK_SIZE 0x1000
// Max range for seeking a memory block. (= 1024MB)
#define MAX_MEMORY_RANGE 0x40000000
// Memory protection flags to check the executable address.
#define PAGE_EXECUTE_FLAGS \
(PAGE_EXECUTE | PAGE_EXECUTE_READ | PAGE_EXECUTE_READWRITE | PAGE_EXECUTE_WRITECOPY)
// Memory slot.
typedef struct _MEMORY_SLOT
{
union
{
struct _MEMORY_SLOT *pNext;
UINT8 buffer[MEMORY_SLOT_SIZE];
};
} MEMORY_SLOT *PMEMORY_SLOT;
// Memory block info. Placed at the head of each block.
typedef struct _MEMORY_BLOCK
{
struct _MEMORY_BLOCK *pNext;
PMEMORY_SLOT pFree; // First element of the free slot list.
UINT usedCount;
} MEMORY_BLOCK *PMEMORY_BLOCK;
//-------------------------------------------------------------------------
// Global Variables:
//-------------------------------------------------------------------------
// First element of the memory block list.
PMEMORY_BLOCK g_pMemoryBlocks;
//-------------------------------------------------------------------------
VOID InitializeBuffer(VOID)
{
// Nothing to do for now.
}
//-------------------------------------------------------------------------
VOID UninitializeBuffer(VOID)
{
PMEMORY_BLOCK pBlock = g_pMemoryBlocks;
g_pMemoryBlocks = NULL;
while (pBlock)
{
PMEMORY_BLOCK pNext = pBlock->pNext;
VirtualFree(pBlock 0 MEM_RELEASE);
pBlock = pNex
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-05-23 02:45 minhook-master\
文件 410 2017-05-23 02:45 minhook-master\.editorconfig
文件 355 2017-05-23 02:45 minhook-master\.gitignore
文件 214 2017-05-23 02:45 minhook-master\AUTHORS.txt
文件 4365 2017-05-23 02:45 minhook-master\LICENSE.txt
文件 4125 2017-05-23 02:45 minhook-master\README.md
目录 0 2017-05-23 02:45 minhook-master\build\
目录 0 2017-05-23 02:45 minhook-master\build\MinGW\
文件 929 2017-05-23 02:45 minhook-master\build\MinGW\Makefile
文件 319 2017-05-23 02:45 minhook-master\build\MinGW\make.bat
目录 0 2017-05-23 02:45 minhook-master\build\VC10\
文件 10395 2017-05-23 02:45 minhook-master\build\VC10\MinHook.vcxproj
文件 2108 2017-05-23 02:45 minhook-master\build\VC10\MinHookVC10.sln
文件 9511 2017-05-23 02:45 minhook-master\build\VC10\libMinHook.vcxproj
文件 1813 2017-05-23 02:45 minhook-master\build\VC10\libMinHook.vcxproj.filters
目录 0 2017-05-23 02:45 minhook-master\build\VC11\
文件 10571 2017-05-23 02:45 minhook-master\build\VC11\MinHook.vcxproj
文件 2108 2017-05-23 02:45 minhook-master\build\VC11\MinHookVC11.sln
文件 9717 2017-05-23 02:45 minhook-master\build\VC11\libMinHook.vcxproj
文件 1813 2017-05-23 02:45 minhook-master\build\VC11\libMinHook.vcxproj.filters
目录 0 2017-05-23 02:45 minhook-master\build\VC12\
文件 10572 2017-05-23 02:45 minhook-master\build\VC12\MinHook.vcxproj
文件 2185 2017-05-23 02:45 minhook-master\build\VC12\MinHookVC12.sln
文件 9832 2017-05-23 02:45 minhook-master\build\VC12\libMinHook.vcxproj
文件 1813 2017-05-23 02:45 minhook-master\build\VC12\libMinHook.vcxproj.filters
目录 0 2017-05-23 02:45 minhook-master\build\VC14\
文件 10572 2017-05-23 02:45 minhook-master\build\VC14\MinHook.vcxproj
文件 2183 2017-05-23 02:45 minhook-master\build\VC14\MinHookVC14.sln
文件 9832 2017-05-23 02:45 minhook-master\build\VC14\libMinHook.vcxproj
文件 1813 2017-05-23 02:45 minhook-master\build\VC14\libMinHook.vcxproj.filters
目录 0 2017-05-23 02:45 minhook-master\build\VC15\
............此处省略27个文件信息
- 上一篇:清除缓存脚本
- 下一篇:制作个人版CE工具教程
相关资源
- HOOK小工具(进程、窗口、全局)
- HOOK 记录和模拟 Keyboard Mouse
- 通用注入工具无驱版(HOOK注入、远程
- Diskhook(模拟硬盘序列号)
- 基于Filter-Hook Driver的个人防火墙
- 硬盘串号模拟diskhook
- diskhook模拟硬盘物理序列号
- 利用dll的hook悄悄监视某进程键盘输入
- hook任意api的函数.rar
- 天锐绿盾客户端补丁-解决文件上鼠标
- 易语言超级HOOK
- 易语言封包截取源码易语言HOOKapi实现
- AdS和Chern-Simons引力的Newton-Hooke / Carr
- Detour API HookDetour 源代码,库,和一个
- pchook微信
- 火绒注入(内核hook稳定注入)
- 伪任意地址HOOK类
- ssdt内核hook的源代码
- 鼠标和键盘钩子Hook,实现对窗口消息
- HOOK技术实现键盘记录器
- 易语言源码综合强大模块
- pl2303 usb转ttl驱动 win10亲测可用win1
- 专注于非越狱环境下iOS应用逆向研究
- 基于mhook2.3封装
- Sock5代理代码,hook技术
- 微信PC Hook 2.5版本
- 打印监控HOOK.rar
- 通过hook技术,模拟鼠标的操作
- hook微信收款监听
- 微信PC版Hook.rar
评论
共有 条评论