//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言枚举系统所有ApiHook源码系统结构:枚举程序内所有ApiHook,枚举ApiHook,计算偏差,取模块完整路径,进程ID取模块,取进程ID,RtlMoveMemory_IMAGE_DOS_HEADER,RtlMoveMemory_IMAGE_NT_HEADERS32,RtlMoveMemory_IMAGE_IMPORT_DESCRIPTOR,RtlMoveMemory_IMAGE_EXPORT_DIRECTORY,RtlMoveMemory_IMAGE_TLS_DIRECTORY32,RtlMoveMemory_IMAGE_DEBUG_DIRECTORY,RtlMoveMemory_IMAGE_SECTION_HEADER,API_GetModuleHandle,CloseHandle,StrCmpNI_1,API_载入动态链接库,API_GetProcAddress, ======程序集1 || ||------_启动子程序 || ||------枚举程序内所有ApiHook || ||------枚举ApiHook || ||------计算偏差 || ||------取模块完整路径 || ||------进程ID取模块 || ||------取进程ID || || ======调用的Dll || ||---[dll]------RtlMoveMemory_IMAGE_DOS_HEADER || ||---[dll]------RtlMoveMemory_IMAGE_NT_HEADERS32 || ||---[dll]------RtlMoveMemory_IMAGE_IMPORT_DESCRIPTOR || ||---[dll]------RtlMoveMemory_IMAGE_EXPORT_DIRECTORY || ||---[dll]------RtlMoveMemory_IMAGE_TLS_DIRECTORY32 || ||---[dll]------RtlMoveMemory_IMAGE_DEBUG_DIRECTORY || ||---[dll]------RtlMoveMemory_IMAGE_SECTION_HEADER || ||---[dll]------API_GetModuleHandle || ||---[dll]------CloseHandle || ||---[dll]------_创建快照 || ||---[dll]------_下一个模块 || ||---[dll]------_第一个模块 || ||---[dll]------_取文本长度 || ||---[dll]------StrCmpNI_1 || ||---[dll]------_第一个 || ||---[dll]------_下一个 || ||---[dll]------API_载入动态链接库 || ||---[dll]------API_GetProcAddress 调用的DLL命令: .DLL命令RtlMoveMemory_IMAGE_DOS_HEADER,,,"RtlMoveMemory" .参数Destination,IMAGE_DOS_HEADER .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_NT_HEADERS32,,,"RtlMoveMemory" .参数Destination,IMAGE_NT_HEADERS32 .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_IMPORT_DESCRIPTOR,,,"RtlMoveMemory" .参数Destination,IMAGE_IMPORT_DESCRIPTOR .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_EXPORT_DIRECTORY,,,"RtlMoveMemory" .参数Destination,IMAGE_EXPORT_DIRECTORY .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_TLS_DIRECTORY32,,,"RtlMoveMemory" .参数Destination,IMAGE_TLS_DIRECTORY32 .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_DEBUG_DIRECTORY,,,"RtlMoveMemory" .参数Destination,IMAGE_DEBUG_DIRECTORY .参数Source,整数型 .参数Length,整数型 .DLL命令RtlMoveMemory_IMAGE_SECTION_HEADER,,,"RtlMoveMemory" .参数Destination,IMAGE_SECTION_HEADER,数组 .参数Source,整数型 .参数Length,整数型 .DLL命令API_GetModuleHandle,整数型,"kernel32","GetModuleHandleA",,获取一个应用程序或动态链接库的模块句柄 如执行成功成功,则返回模块句柄。零表示失败。会设置GetLastError .参数lpModuleName,文本型,,指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD; .DLL命令CloseHandle,逻辑型,,"CloseHandle" .参数hObject,整数型 .DLL命令_创建快照,整数型,,"CreateToolhelp32Snapshot" .参数falg,整数型 .参数id,整数型 .DLL命令_下一个模块,整数型,"kernel32.dll","Module32Next",,,下一个模块 .参数快照句柄,整数型 .参数模块信息,模块信息_ .DLL命令_第一个模块,整数型,,"Module32First",,,第一个模块,查找模块 .参数快照句柄,整数型 .参数模块信息,模块信息_ .DLL命令_取文本长度,整数型,,"lstrlenA",,kernel32.dll取文本内容长度_ .参数文本,文本型,,Ptr .DLL命令StrCmpNI_1,整数型,"shell32.dll","StrCmpNIA",,shell32.dll .参数lpStr1,文本型 .参数lpStr2,字节型,传址数组 .参数nChar,整数型 .DLL命令_第一个,整数型,,"Process32First" .参数h,整数型 .参数p,进程信息_ .DLL命令_下一个,整数型,,"Process32Next" .参数h,整数型 .参数p,进程信息_ .DLL命令API_载入动态链接库,整数型,"kernel32","LoadLibraryA",,载入指定的动态链接库,并将它映射到当前进程使用的地址空间。一旦载入,即可访问库内保存的资源 成功则返回库模块的句柄,零表示失败。会设置GetLastError .参数动态链接库名称,文本型,,指定要载入的动态链接库的名称。采用与CreateProcess函数的lpCommandLine参数指定的同样的搜索顺序; .DLL命令API_GetProcAddress,整数型,"kernel32","GetProcAddress",,返回函数地址 .参数hModule,整数型 .参数lpProcName,文本型
