易语言脚本解析类源码
系统结构:子程序1,QEHash,创建进入许可证_,进入许可区_,退出许可区_,删除进入许可证_,启动线程_,销毁线程_,寻找字节集_,内存_申请,内存_释放,内存_尺寸,内存_读整数,内存_写整数,内存_复制,内存_写字节集,内存_写文本,内存_读字节集,内存_读文本,取低字,取高字,取指针_整数型,取指针_逻辑型,取指针_字节集,取指针_文本型,原子_加1,原子_减1,原子_比较赋值,原子_赋值,原子_加法,原子_减法,函数_载入DLL,函数_卸载DLL,函数_取函数指针,调用子程序_,取协议,取域名,取端口,取页面地址,类扩展_生成类回调,类扩展_取_类_函数地址,类扩展_取上层函数首参,类扩展_get_retn_code,类扩展_取变量数据地址_字节集,类扩展_取指针内容_整数,类扩展_到字节集_从整数_,类扩展_到字节集_从字节,类扩展_取变量地址_整数,类扩展_取变量地址_短整数,l_var,l_echo,l_alert,执行命令,取回错误,输出错误,脚本解析,开始解析脚本,是否行尾,跳过空格,跳过换行,是否开始位置,是否结束位置,解析一行,输出字节,输出文本,输出数据,执行一行,取长度,扩容,加入,取出,删除,加入文本,取出文本,寻找,取中间文本,添加变量,删除变量,变量取值,执行变量表达式,变量赋值,变量名取索引,是否为变量,取变量类型,InterlockedExchangeAdd,InterlockedExchange,InterlockedIncrement,InterlockedDecrement,InterlockedCompareExchange,LoadLibraryA,GetProcAddress,FreeLibrary,RtlMoveMemory,LocalAlloc,LocalFree,LocalSize,CreateThread,CloseHandle,TerminateThread,InitializeCriticalSection,DeleteCriticalSection,EnterCriticalSection,IOCP_创建,IOCP_等待,IOCP_发送,关闭句柄,LeaveCriticalSection,HeapCreate,HeapFree,HeapAlloc,HeapDestroy,WaitForSingleObject,GetProcessHeap,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ 子程序1
| |
| |
======SDK
| |
| |------ QEHash
| |
| |------ 创建进入许可证_
| |
| |------ 进入许可区_
| |
| |------ 退出许可区_
| |
| |------ 删除进入许可证_
| |
| |------ 启动线程_
| |
| |------ 销毁线程_
| |
| |------ 寻找字节集_
| |
| |------ 内存_申请
| |
| |------ 内存_释放
| |
| |------ 内存_尺寸
| |
| |------ 内存_读整数
| |
| |------ 内存_写整数
| |
| |------ 内存_复制
| |
| |------ 内存_写字节集
| |
| |------ 内存_写文本
| |
| |------ 内存_读字节集
| |
| |------ 内存_读文本
| |
| |------ 取低字
| |
| |------ 取高字
| |
| |------ 取指针_整数型
| |
| |------ 取指针_逻辑型
| |
| |------ 取指针_字节集
| |
| |------ 取指针_文本型
| |
| |------ 原子_加1
| |
| |------ 原子_减1
| |
| |------ 原子_比较赋值
| |
| |------ 原子_赋值
| |
| |------ 原子_加法
| |
| |------ 原子_减法
| |
| |------ 函数_载入DLL
| |
| |------ 函数_卸载DLL
| |
| |------ 函数_取函数指针
| |
| |------ 调用子程序_
| |
| |------ 取协议
| |
| |------ 取域名
| |
| |------ 取端口
| |
| |------ 取页面地址
| |
| |------ 类扩展_生成类回调
| |
| |------ 类扩展_取_类_函数地址
| |
| |------ 类扩展_取上层函数首参
| |
| |------ 类扩展_get_retn_code
| |
| |------ 类扩展_取变量数据地址_字节集
| |
| |------ 类扩展_取指针内容_整数
| |
| |------ 类扩展_到字节集_从整数_
| |
| |------ 类扩展_到字节集_从字节
| |
| |------ 类扩展_取变量地址_整数
| |
| |------ 类扩展_取变量地址_短整数
| |
| |
======命令集
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ l_var
| |
| |------ l_echo
| |
| |------ l_alert
| |
| |------ 执行命令
| |
| |------ 取回错误
| |
| |
======脚本解析
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 输出错误
| |
| |------ 脚本解析
| |
| |------ 开始解析脚本
| |
| |------ 是否行尾
| |
| |------ 跳过空格
| |
| |------ 跳过换行
| |
| |------ 是否开始位置
| |
| |------ 是否结束位置
| |
| |------ 解析一行
| |
| |------ 输出字节
| |
| |------ 输出文本
| |
| |------ 输出数据
| |
| |------ 执行一行
| |
| |
======字节流
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 取长度
| |
| |------ 扩容
| |
| |------ 加入
| |
| |------ 取出
| |
| |------ 删除
| |
| |------ 加入文本
| |
| |------ 取出文本
| |
| |------ 寻找
| |
| |------ 取中间文本
| |
| |
======变量控制
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 添加变量
| |
| |------ 删除变量
| |
| |------ 变量取值
| |
| |------ 执行变量表达式
| |
| |------ 变量赋值
| |
| |------ 变量名取索引
| |
| |------ 是否为变量
| |
| |------ 取变量类型
| |
| |
======调用的Dll
| |
| |---[dll]------ InterlockedExchangeAdd
| |
| |---[dll]------ InterlockedExchange
| |
| |---[dll]------ InterlockedIncrement
| |
| |---[dll]------ InterlockedDecrement
| |
| |---[dll]------ InterlockedCompareExchange
| |
| |---[dll]------ LoadLibraryA
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ FreeLibrary
| |
| |---[dll]------ RtlMoveMemory
| |
| |---[dll]------ LocalAlloc
| |
| |---[dll]------ LocalFree
| |
| |---[dll]------ LocalSize
| |
| |---[dll]------ CreateThread
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ TerminateThread
| |
| |---[dll]------ InitializeCriticalSection
| |
| |---[dll]------ DeleteCriticalSection
| |
| |---[dll]------ EnterCriticalSection
| |
| |---[dll]------ IOCP_创建
| |
| |---[dll]------ IOCP_等待
| |
| |---[dll]------ IOCP_发送
| |
| |---[dll]------ 关闭句柄
| |
| |---[dll]------ LeaveCriticalSection
| |
| |---[dll]------ HeapCreate
| |
| |---[dll]------ HeapFree
| |
| |---[dll]------ HeapAlloc
| |
| |---[dll]------ HeapDestroy
| |
| |---[dll]------ WaitForSingleObject
| |
| |---[dll]------ GetProcessHeap
调用的DLL命令:
.DLL命令 InterlockedExchangeAdd, 整数型, "Kernel32", "InterlockedExchangeAdd", , 原子相加,将两个地址相加
.参数 Addend, 整数型
.参数 Value, 整数型
.DLL命令 InterlockedExchange, 整数型, "kernel32.dll", "InterlockedExchange", , 原子内存交换,返回第一个内存的值
.参数 Target, 整数型
.参数 Value, 整数型
.DLL命令 InterlockedIncrement, 整数型, "kernel32.dll", "InterlockedIncrement", , 原子+1
.参数 Addend, 整数型
.DLL命令 InterlockedDecrement, 整数型, "kernel32.dll", "InterlockedDecrement", , 原子-1
.参数 Addend, 整数型
.DLL命令 InterlockedCompareExchange, 整数型, "kernel32.dll", "InterlockedCompareExchange", , 原子_把目标操作数(第1参数所指向的内存中的数)与一个值(第3参数)比较,如果相等,则用另一个值(第2参数)与目标操作数(第1参数所指向的内存中的数)交换
.参数 Destination, 整数型
.参数 Exchange, 整数型
.参数 Comperand, 整数型
.DLL命令 LoadLibraryA, 整数型, "kernel32.dll", "LoadLibraryA", , _装载DLL
.参数 lpLibFileName, 文本型, , 文件名
.DLL命令 GetProcAddress, 整数型, "kernel32.dll", "GetProcAddress", , _取函数地址
.参数 hModule, 整数型, , 模块句柄
.参数 lpProcName, 整数型, , 函数名
.DLL命令 FreeLibrary, 整数型, "kernel32.dll", "FreeLibrary", , _释放DLL
.参数 模块句柄, 整数型
.DLL命令 RtlMoveMemory, 整数型, "kernel32.dll", "RtlMoveMemory", , 拷贝内存
.参数 目标数据地址, 整数型, , lpvDest
.参数 源数据, 整数型, , lpvSource
.参数 尺寸, 整数型, , cbCopy
.DLL命令 LocalAlloc, 整数型, "kernel32.dll", "LocalAlloc", , 申请内存
.参数 uFlags, 短整数型
.参数 uBytes, 整数型
.DLL命令 LocalFree, 整数型, "kernel32.dll", "LocalFree", , 释放内存
.参数 hMem, 整数型, , hMem
.DLL命令 LocalSize, 整数型, "kernel32.dll", "LocalSize", , 查询内存块尺寸
.参数 hMem, 整数型
.DLL命令 CreateThread, 整数型, "kernel32.dll", "CreateThread", , 返回线程句柄
.参数 lpThreadAttributes, 整数型, , 默认security性
.参数 dwStackSize, 整数型, , 初始栈的大小
.参数 lpStartAddress, 整数型, , 指向线程函数的指针
.参数 lpParameter, 整数型, , 线程参数
.参数 dwCreationFlags, 整数型, , 是否挂起
.参数 lpThreadId, 整数型, 传址, 线程ID
.DLL命令 CloseHandle, 整数型, "kernel32.dll", "CloseHandle", , 关闭句柄
.参数 hObject, 整数型
.DLL命令 TerminateThread, 整数型, "kernel32.dll", "TerminateThread", , _销毁线程
.参数 hThread, 整数型
.参数 dwExitCode, 整数型
.DLL命令 InitializeCriticalSection, , "kernel32.dll", "InitializeCriticalSection", , 创建许可证
.参数 lpCriticalSection, 整数型
.DLL命令 DeleteCriticalSection, , "kernel32.dll", "DeleteCriticalSection", , 删除许可证
.参数 lpCriticalSection, 整数型
.DLL命令 EnterCriticalSection, , "kernel32.dll", "EnterCriticalSection", , 进入许可区
.参数 lpCriticalSection, 整数型
.DLL命令 IOCP_创建, 整数型, "kernel32.dll", "CreateIoCompletionPort", , 失败返回0
.参数 Handle, 整数型, , 文件句柄
.参数 ExistingCompletionPort, 整数型, , io对象,为零表示新建
.参数 CompletionKey, 整数型, , 参数
.参数 NumberOfConcurrentThreads, 整数型, , 当该参数为0表示允许同时相等数目于处理器个数的线程访问该消息队列。
.DLL命令 IOCP_等待, 整数型, "kernel32.dll", "GetQueuedCompletionStatus", , 调用成功,则返回非零数值,相关数据存于lpNumberOfBytes、lpCompletionKey、lpoverlapped变量中。失败则返回零值。
.参数 CompletionPort, 整数型, , 指定的IOCP,该值由CreateIoCompletionPort函数创建。
.参数 lpNumberOfBytesTransferred, 整数型, 传址, 一次完成后的I/O操作所传送数据的字节数。
.参数 lpCompletionKey, 整数型, 传址, 当文件I/O操作完成后,用于存放与之关联的CK。
.参数 lpOverlapped, 整数型, 传址, 为调用IOCP机制所引用的OVERLAPPED结构
.参数 dwMilliseconds, 整数型, , 用于指定调用者等待CP的时间
.DLL命令 IOCP_发送, 整数型, "kernel32.dll", "PostQueuedCompletionStatus", , 发送完成端口数据
.参数 CompletionPort, 整数型, , 端口
.参数 dwNumberOfBytesTransferred, 整数型, , 值
.参数 dwCompletionKey, 整数型, , 值
.参数 lpOverlapped, 整数型, , 值
.DLL命令 关闭句柄, 整数型, "kernel32.dll", "CloseHandle", , 关闭句柄
.参数 hObject, 整数型
.DLL命令 LeaveCriticalSection, , "kernel32.dll", "LeaveCriticalSection", , 退出许可区
.参数 lpCriticalSection, 整数型
.DLL命令 HeapCreate, 整数型, "kernel32.dll", "HeapCreate", , hHeap, 错误返回0,创建堆
.参数 flOptions, , , #HEAP_ 4指定在分配或重新分配堆栈中的内存块的尝试失败时,导致系统引发一个异常条件。1非串行,自己管理线程security
.参数 dwInitialSize, , , 堆的初始化尺寸(以字节为单位),0 为自动指定
.参数 dwMaximumSize, , , 堆的最大尺寸
.DLL命令 HeapFree, 整数型, "kernel32.dll", "HeapFree", , 失败返回0,释放堆内存
.参数 hHeap, 整数型
.参数 dwFlags, 整数型, , #HEAP_NO_SERIALIZE,1 ,同申请
.参数 lpMem, 整数型
.DLL命令 HeapAlloc, 整数型, "kernel32.dll", "HeapAlloc", , lpMem,在指定的堆上分配内存
.参数 hHeap, 整数型
.参数 dwFlags, 整数型, , #HEAP_ 8为清零 4为提取一个堆,
.参数 dwBytes, 整数型, , 尺寸,最大512KB
.DLL命令 HeapDestroy, 整数型, "kernel32.dll", "HeapDestroy", , 销毁堆
.参数 hHeap
.DLL命令 WaitForSingleObject, 整数型, "kernel32.dll", "WaitForSingleObject", , _等待对象信号
.参数 hHandle, 整数型
.参数 dwMilliseconds, 整数型
.DLL命令 GetProcessHeap, 整数型, "kernel32", "GetProcessHeap", , 获取调用过程堆句柄
原贴 [易语言首发]PCVX小程序解密 因为 我也不懂 就看了下这个 PC小程序解密.e 发出来不知道怎么用,所以 度娘一步步找答案得到 的 自行研究捉摸了下 仅供学习参考 1.打开 PC小程序解...
易语言模块基址获取源码,模块基址获取,GetModuleBaseAddress...
易语言流程控制编译原理源码,流程控制编译原理,是否汉字,读字符,是否运算符,是否逻辑运算符,指针回溯,跳过空格,跳过注释,代码块,取程序返回值,外部接口_代码块执行,外部接口_表达式计算,表达式计算,逻辑判断,文本到逻辑,函数调用,函数_位或,函数_测试,函数_信...
易语言搜索程序隐藏代码源码,搜索程序隐藏代码,枚举子程序...
易语言打鱼学习链表源码,打鱼学习链表,入栈,出栈,清空链表,取顶数据,取索引处值,取长度,取值处索引,插入,删除,倒置,是否为空,到八,入队,出队...
易语言脚本解析类源码,脚本解析类,子程序1,QEHash,创建进入许可证_,进入许可区_,退出许可区_,删除进入许可证_,启动线程_,销毁线程_,寻找字节集_,内存_申请,内存_释放,内存_尺寸,内存_读整数,内存_写整数,内存_复制,内存_写字节集,内存_写文本,内存_读字节集,...
易语言核心算术计算解析源码,核心算术计算解析,信息框3,信息框2...
易语言获取网页和密码例程源码,获取网页和密码例程,取文档对象,取浏览器文档对象_API,注册消息_API,发送消息_API,置鼠标捕获窗口_API,取消鼠标捕获窗口_API,取窗口类名_API,取座标窗口句柄_API,取光标位置_API...
易语言置入代码调用子程序办法源码,置入代码调用子程序办法,普通写法,置入写法...