易语言启动WAR3对决源码
系统结构:子程序1,远程注入,安装APIHOOK,取原始数据地址,卸载APIHOOK,继续拦截,暂停拦截,CreateProcess,VirtualAllocEx,WriteprocessMemory_byte,GetModuleHandle,GetProcAddress,CreateRemoteThread,WaitForSingleObject,GetExitCodeThread,VirtualFreeEx,CloseHandle,LoadLibraryEx,bind,connect,htons,LoadLibraryA,FreeLibrary,VirtualProtect,取字节集变量数据地址,
======窗口程序集1
| |
| |------ _服务器1_客户进入
| |
| |------ _服务器1_客户离开
| |
| |------ __启动窗口_创建完毕
| |
| |------ _服务器1_数据到达
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _客户1_数据到达
| |
| |------ _数据报1_数据到达
| |
| |------ _数据报2_数据到达
| |
| |------ _数据报3_数据到达
| |
| |------ _数据报4_数据到达
| |
| |------ _数据报5_数据到达
| |
| |------ _服务器1_客户进入
| |
| |------ _服务器2_客户进入
| |
| |------ _服务器3_客户进入
| |
| |------ _服务器4_客户进入
| |
| |------ _服务器5_客户进入
| |
| |------ _客户2_数据到达
| |
| |------ _客户3_数据到达
| |
| |------ _客户4_数据到达
| |
| |------ _客户5_数据到达
| |
| |------ _客户6_数据到达
| |
| |------ _服务器1_数据到达
| |
| |------ _服务器2_数据到达
| |
| |------ _服务器3_数据到达
| |
| |------ _服务器4_数据到达
| |
| |------ _服务器5_数据到达
| |
| |------ _服务器1_客户离开
| |
| |------ _服务器2_客户离开
| |
| |------ _服务器3_客户离开
| |
| |------ _服务器4_客户离开
| |
| |------ _服务器5_客户离开
| |
| |------ _客户2_连接断开
| |
| |------ _客户3_连接断开
| |
| |------ _客户4_连接断开
| |
| |------ _客户5_连接断开
| |
| |------ _客户6_连接断开
| |
| |------ __启动窗口_创建完毕
| |
| |------ 子程序1
| |
| |------ _客户1_连接断开
| |
| |------ _按钮3_被单击
| |
| |------ 远程注入
| |
| |
======APIHOOK
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 安装APIHOOK
| |
| |------ 取原始数据地址
| |
| |------ 卸载APIHOOK
| |
| |------ 继续拦截
| |
| |------ 暂停拦截
| |
| |
======调用的Dll
| |
| |---[dll]------ CreateProcess
| |
| |---[dll]------ VirtualAllocEx
| |
| |---[dll]------ WriteprocessMemory_byte
| |
| |---[dll]------ GetModuleHandle
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ CreateRemoteThread
| |
| |---[dll]------ WaitForSingleObject
| |
| |---[dll]------ GetExitCodeThread
| |
| |---[dll]------ VirtualFreeEx
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ LoadLibraryEx
| |
| |---[dll]------ bind
| |
| |---[dll]------ connect
| |
| |---[dll]------ htons
| |
| |---[dll]------ LoadLibraryA
| |
| |---[dll]------ FreeLibrary
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ 取字节集变量数据地址
调用的DLL命令:
.DLL命令 CreateProcess, 整数型, , "CreateProcessA"
.参数 lpApplicationName, 文本型
.参数 lpCommandLine, 文本型
.参数 lpProcessAttributes, 整数型
.参数 lpThreadAttributes, 整数型
.参数 bInheritHandles, 整数型
.参数 dwCreationFlags, 整数型
.参数 lpEnvironment, 整数型
.参数 lpCurrentDriectory, 文本型
.参数 lpStartupInfo, STARTUPINFO, 传址
.参数 lpProcessInformation, PROCESS_INFORMATION, 传址
.DLL命令 VirtualAllocEx, 整数型, , "VirtualAllocEx", 公开
.参数 hProcess, 整数型, , 申请内存所在的进程句柄
.参数 lpAddress, 整数型, , 保留页面的内存地址;一般用NULL自动分配
.参数 dwSize, 整数型, , 欲分配的内存大小,字节单位;注意实际分 配的内存大小是页内存大小的整数倍
.参数 flAllocationType, 整数型, , 查看MSDN
.参数 flProtect, 整数型, , 查看MSDN
.DLL命令 WriteprocessMemory_byte, 整数型, "kernel32.dll", "WriteProcessMemory", 公开
.参数 hProcess, 整数型, , 进程的句柄
.参数 lpBaseAddress, 整数型, , 进程地址
.参数 lpBuffer, 字节集, , 数据存放地址
.参数 nSize, 整数型, , 数据的长度
.参数 lpNumberOfBytesWritten, 整数型, 传址, 实际数据的长度
.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA", , 获取一个应用程序或动态链接库的模块句柄 如执行成功成功,则返回模块句柄。零表示失败。会设置GetLastError
.参数 lpModuleName, 文本型, , 一般为0 指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD
.DLL命令 GetProcAddress, 整数型, "kernel32.dll", "GetProcAddress", 公开, 如果函数调用成功,返回值是DLL中的输出函数地址。
.参数 hModule, 整数型, , DLL模块句柄
.参数 lpProcName, 文本型, , 函数名
.DLL命令 CreateRemoteThread, 整数型, "kernel32.dll", "CreateRemoteThread", , 在一个远程进程中建立线程
.参数 THandle, 整数型, , 远程进程的句柄
.参数 Pointer, SECURITY_ATTRIBUTES, 传址, 线程security描述字,指向SECURITY_ATTRIBUTES结构的指针
.参数 dwStackSize, 整数型, , 线程栈大小,以字节表示
.参数 TFNThreadStartRoutine, 整数型, , 一个TFNThreadStartRoutine类型的指针,指向在远程进程中执行的函数地址
.参数 Pointer, 整数型, , 传入参数的指针
.参数 CreationFlags, 整数型, , 创建线程的其它标志
.参数 ThreadId, 整数型, , 线程身份标志,如果为0, 则不返回
.DLL命令 WaitForSingleObject, 整数型, , "WaitForSingleObject", 公开
.参数 hHandle, 整数型, , 事件的句柄
.参数 dwMilliseconds, 整数型, , 时间间隔
.DLL命令 GetExitCodeThread, , , "GetExitCodeThread"
.参数 hThread, 整数型, , 线程句柄
.参数 lpExitCode, 整数型, 传址, 一个变量指针接收到线终止状态。
.DLL命令 VirtualFreeEx, 整数型
.参数 hProcess, 整数型
.参数 lpBuf, 整数型
.参数 dwSize, 整数型
.参数 sss, 整数型
.DLL命令 CloseHandle, 整数型, "kernel32.dll", "CloseHandle", 公开, Long,非零表示成功,零表示失败
.参数 hObject, 整数型, , Long,欲关闭的一个对象的句柄
.DLL命令 LoadLibraryEx, 整数型, , "LoadLibraryExA", 公开, Long,成功则返回库模块的句柄,零表示失败。会设置GetLastError 装载指定的动态链接库,并为当前进程把它映射到地址空间。一旦载入,就可以访问库内保存的资源
.参数 lpLibFileName, 文本型, , 指定要载入的动态链接库的名称。采用与CreateProcess函数的lpCommandLine参数指定的同样的搜索顺序
.参数 hFile, 整数型, , Long,未用,设为零
.参数 dwFlags, 整数型, , Long,指定下述常数的一个或多个
.DLL命令 bind, 整数型, "ws2_32.dll", "bind"
.参数 s, 整数型
.参数 addr, addr, 传址
.参数 namelen, 整数型
.DLL命令 connect, 整数型, "ws2_32.dll", "connect"
.参数 asda, 整数型
.参数 asds, 整数型
.参数 asdx, 整数型
.DLL命令 htons, 短整数型, "ws2_32.dll", "htons"
.参数 hostshortas, 整数型
.DLL命令 LoadLibraryA, 整数型
.参数 lpLibFileName, 文本型
.DLL命令 FreeLibrary, 逻辑型
.参数 hLibModule, 整数型
.DLL命令 VirtualProtect, 逻辑型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 取字节集变量数据地址, 整数型, , "lstrcpynA"
.参数 lpString1, 字节集
.参数 lpString2, 字节集
.参数 iMaxLength, 整数型
原贴 [易语言首发]PCVX小程序解密 因为 我也不懂 就看了下这个 PC小程序解密.e 发出来不知道怎么用,所以 度娘一步步找答案得到 的 自行研究捉摸了下 仅供学习参考 1.打开 PC小程序解...
易语言模块基址获取源码,模块基址获取,GetModuleBaseAddress...
易语言流程控制编译原理源码,流程控制编译原理,是否汉字,读字符,是否运算符,是否逻辑运算符,指针回溯,跳过空格,跳过注释,代码块,取程序返回值,外部接口_代码块执行,外部接口_表达式计算,表达式计算,逻辑判断,文本到逻辑,函数调用,函数_位或,函数_测试,函数_信...
易语言搜索程序隐藏代码源码,搜索程序隐藏代码,枚举子程序...
易语言打鱼学习链表源码,打鱼学习链表,入栈,出栈,清空链表,取顶数据,取索引处值,取长度,取值处索引,插入,删除,倒置,是否为空,到八,入队,出队...
易语言脚本解析类源码,脚本解析类,子程序1,QEHash,创建进入许可证_,进入许可区_,退出许可区_,删除进入许可证_,启动线程_,销毁线程_,寻找字节集_,内存_申请,内存_释放,内存_尺寸,内存_读整数,内存_写整数,内存_复制,内存_写字节集,内存_写文本,内存_读字节集,...
易语言核心算术计算解析源码,核心算术计算解析,信息框3,信息框2...
易语言获取网页和密码例程源码,获取网页和密码例程,取文档对象,取浏览器文档对象_API,注册消息_API,发送消息_API,置鼠标捕获窗口_API,取消鼠标捕获窗口_API,取窗口类名_API,取座标窗口句柄_API,取光标位置_API...
易语言置入代码调用子程序办法源码,置入代码调用子程序办法,普通写法,置入写法...