模块删帖
功能说明: 本程序是基于易语言开发的源代码片段,从代码特征来看,这是一个经过高度混淆和保护的底层系统工具。程序不直接面向终端用户操作,而是侧重于系统底层的内存管理、函数钩子设置及逻辑校验。
1. **代码架构分析**:
程序由两个主要程序集组成(程序集 1 和程序集 2),支持库包含 `spec`,这通常涉及特殊功能或加密支持。最显著的特征是代码中充满了“匿名子程序”(如 `匿名子程序_整数型_10001`、` 匿名子程序_1066D` 等)。这种命名方式是典型的自动混淆手段,目的是隐藏函数原本的业务逻辑,使得逆向分析变得困难。所有的局部变量和参数也使用了类似 `匿名局部变量_通用型_1646` 的无意义命名。
2. **底层技术实现**:
- **内嵌汇编(置入代码)**:在 `匿名子程序_整数型_1066D` 等多个位置出现了 `置入代码 ({...})` 语句。括号内的数字序列是 x86 机器码的直接表达(十六进制转十进制)。这些汇编指令用于直接操作栈指针、寄存器以及内存地址。这通常用于实现高精度的函数拦截(Hook)、保存现场上下文或执行系统调用,是脱离易语言高级语法限制进行底层开发的关键技术。
- **内存指针与偏移读取**:在 `匿名子程序_10102` 中,大量出现了对变量地址加上固定偏移量后读取值的操作(例如 `+4`、`+12`、`+176`)。这种模式常见于访问结构体成员或通过指针遍历链表/内存池。代码中检查特定的“魔术数字”(如 `204`、`-2147483645`、`4658847`),这通常是用来验证数据结构合法性、检测环境特征或确认外部注入的数据是否有效。
3. **功能逻辑推断**:
- **消息分发与命令处理**:`匿名子程序_1025E` 接收一个字节集参数,将其转换为文本,随后根据索引值(20, 19, 18, 17)循环调用另一个子程序。这可能是一个命令解析器,根据传入的不同参数执行不同的系统挂钩或配置加载任务。
- **状态监控与等待**:代码中存在 `判断循环首` 配合全局变量标志位(`匿名全局变量_整数型_114C8 = 1`)的逻辑,这表明程序包含等待机制,可能在等待某个事件触发、线程信号或硬件中断。
- **返回值处理**:多个子程序返回整数型结果,且存在条件分支返回特定的常量(如 `#匿名常量_10136`),说明该程序被设计为模块化组件,会被其他程序调用并根据执行结果进行后续决策。
4. **潜在用途总结**:
综合以上特征,该程序极有可能属于以下类别之一:
- **软件保护壳**:用于保护其他软件不被调试或修改,通过底层代码校验自身运行环境。
- **游戏外挂或辅助工具**:通过内存读写和 API 钩子来修改游戏数据或模拟操作。
- **系统监控驱动辅助**:作为内核驱动的用户态配套程序,负责配置加载和通信。
由于代码缺乏直观的图形界面元素,它更像是一个后台运行的服务程序、动态链接库(DLL)的核心逻辑部分或者是病毒木马的变种载荷。其核心价值在于通过易语言的封装提供了便捷的底层汇编调用能力。
======程序集1
| |
| |------ _启动子程序
| |
| |
======程序集2
| |
| |------ 匿名子程序_整数型_10001
| |
| |------ 匿名子程序_整数型_1066D
| |
| |------ 匿名子程序_1025E
| |
| |------ 匿名子程序_10002
| |
| |------ 匿名子程序_整数型_10623
| |
| |------ 匿名子程序_整数型_10102
| |
| |------ 匿名子程序_整数型_111A5
| |
| |------ 匿名子程序_整数型_11161
| |
| |------ 匿名子程序_整数型_1115B
| |
| |------ 匿名子程序_整数型_102F4
| |
| |------ 匿名子程序_整数型_102CA
| |
| |------ 匿名子程序_整数型_102C8
| |
| |------ 匿名子程序_整数型_1029F
| |
| |------ 匿名子程序_整数型_1029A
| |
| |------ 匿名子程序_整数型_10E38
| |
| |------ 匿名子程序_10E39
| |
| |------ 匿名子程序_整数型_10E32
| |
| |------ 匿名子程序_整数型_10E33
| |
| |------ 匿名子程序_整数型_11AA8
| |
| |------ 匿名子程序_整数型_114EF
| |
| |------ 取自身进程PID
| |
| |------ 取执行线程id
| |
| |
======程序集3
| |
| |------ 匿名子程序_10339
| |
| |------ 匿名子程序_逻辑型_1049E
| |
| |------ 匿名子程序_整数型_10478
| |
| |------ 匿名子程序_整数型_10310
| |
| |------ 易语言是否安装
| |
| |------ 匿名子程序_字节集_10053
| |
| |------ 匿名子程序_字节集_10054
| |
| |
======程序集4
| |
| |------ 匿名子程序_10321
| |
| |------ 匿名子程序_10322
| |
| |------ 匿名子程序_1036F
| |
| |------ 匿名子程序_整数型_10ECB
| |
| |------ 匿名子程序_整数型_11147
| |
| |------ 判断反和谐是否被破解
| |
| |------ 匿名子程序_文本型_11216
| |
| |------ 判断此运行是否存在被破解可能性
| |
| |------ 安全锁
| |
| |------ 匿名子程序_逻辑型_11072
| |
| |------ 系统崩溃
| |
| |------ 匿名子程序_11173
| |
| |------ 匿名子程序_整数型_1106B
| |
| |------ 匿名子程序_文本型_11040
| |
| |------ 匿名子程序_逻辑型_11380
| |
| |------ 匿名子程序_长整数型_114B2
| |
| |------ 是否在虚拟机
| |
| |------ 匿名子程序_文本型_113A6
| |
| |------ 匿名子程序_文本型_113A1
| |
| |------ 匿名子程序_文本型_11391
| |
| |------ 匿名子程序_文本型_11392
| |
| |------ 匿名子程序_逻辑型_11393
| |
| |------ 安全结束
| |
| |------ 匿名子程序_整数型_10ECC
| |
| |------ 匿名子程序_文本型_11009
| |
| |------ 匿名子程序_文本型_11023
| |
| |------ 匿名子程序_文本型_11021
| |
| |------ 匿名子程序_整数型_11037
| |
| |------ 匿名子程序_整数型_1128F
| |
| |------ 匿名子程序_文本型_114AD
| |
| |------ 反单步跟踪
| |
| |------ 匿名子程序_文本型_114C1
| |
| |------ 安全调用CALL
| |
| |------ 绑定安全CALL地址
| |
| |------ 取程序内存特征
| |
| |------ 匿名子程序_整数型_11CE1
| |
| |------ 匿名子程序_整数型_11CDC
| |
| |------ 匿名子程序_10AAD
| |
| |------ 匿名子程序_103B3
| |
| |------ 匿名子程序_10480
| |
| |------ 匿名子程序_10354
| |
| |------ 匿名子程序_整数型_104B9
| |
| |------ 匿名子程序_1053D
| |
| |------ 指定线程是否存在
| |
| |------ 匿名子程序_整数型_10558
| |
| |------ 匿名子程序_1056D
| |
| |------ 匿名子程序_104A4
| |
| |------ 匿名子程序_整数型_1037D
| |
| |------ 匿名子程序_整数型_10DC2
| |
| |------ 匿名子程序_整数型_10379
| |
| |
======程序集6
| |
| |------ 匿名子程序_文本型_1121D
| |
| |------ 匿名子程序_文本型_1121B
| |
| |------ 匿名子程序_文本型_1122F
| |
| |------ 隐藏线程
| |
| |------ 检测调试器
| |
| |------ 匿名子程序_文本型_111B2
| |
| |------ 匿名子程序_整数型_111B3
| |
| |------ 匿名子程序_整数型_111B4
| |
| |------ 匿名子程序_整数型_111B5
| |
| |------ 匿名子程序_整数型_111B6
| |
| |
======程序集7
| |
| |------ 匿名子程序_文本型_11313
| |
| |------ 匿名子程序_逻辑型_11314
| |
| |------ 匿名子程序_字节集_11315
| |
| |------ 匿名子程序_整数型_11316
| |
| |------ 匿名子程序_11317
| |
| |------ 匿名子程序_整数型_11318
| |
| |------ 匿名子程序_整数型_11319
| |
| |------ 匿名子程序_整数型_1131A
| |
| |------ 匿名子程序_文本型_11348
| |
| |
======程序集8
| |
| |------ 匿名子程序_整数型_11BF9
| |
| |------ 匿名子程序_整数型_11BFA
| |
| |------ 匿名子程序_整数型_11BFB
| |
| |------ 匿名子程序_整数型_11D17
| |
| |------ 匿名子程序_11AD0
| |
| |------ 匿名子程序_118F4
| |
| |------ 匿名子程序_整数型_11B4F
| |
| |------ 匿名子程序_118F5
| |
| |------ 匿名子程序_11960
| |
| |------ 匿名子程序_整数型_11A86
| |
| |------ 匿名子程序_整数型_11D47
| |
| |------ 匿名子程序_整数型_11A80
| |
| |------ 匿名子程序_11967
| |
| |------ 匿名子程序_11994
| |
| |------ 匿名子程序_1199A
| |
| |------ 匿名子程序_整数型_119AE
| |
| |------ 匿名子程序_逻辑型_119D6
| |
| |------ 匿名子程序_逻辑型_11A13
| |
| |------ 匿名子程序_11A58
| |
| |------ 匿名子程序_逻辑型_11A38
| |
| |------ 匿名子程序_逻辑型_119FC
| |
| |------ 匿名子程序_逻辑型_119F5
| |
| |------ 匿名子程序_119E4
| |
| |------ 匿名子程序_逻辑型_119B5
| |
| |
======匿名类模块_10607
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ 卡死
| |
| |------ 判断易环境
| |
| |------ aa
| |
| |------ 取子程序特征码
| |
| |------ 取指令长度
| |
| |
======调用的Dll
| |
| |---[dll]------ 匿名DLL命令_CloseHandle_10048
| |
| |---[dll]------ 匿名DLL命令_GetModuleHandleA_1004E
| |
| |---[dll]------ 匿名DLL命令_GetModuleHandleA_10FD2
| |
| |---[dll]------ 匿名DLL命令_AddVectoredExceptionHandler_1009F
| |
| |---[dll]------ 匿名DLL命令_RemoveVectoredExceptionHandler_100A0
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_100A4
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_101D0
| |
| |---[dll]------ 匿名DLL命令_GetThreadContext_100A5
| |
| |---[dll]------ 匿名DLL命令_SetThreadContext_100A6
| |
| |---[dll]------ 匿名DLL命令_GetCurrentThread_100A7
| |
| |---[dll]------ 匿名DLL命令_SnowDisAsm_100A8
| |
| |---[dll]------ 匿名DLL命令_RtlAdjustPrivilege_10262
| |
| |---[dll]------ 匿名DLL命令_ReadProcessMemory_100A9
| |
| |---[dll]------ 匿名DLL命令_GetCurrentProcessId_10267
| |
| |---[dll]------ 匿名DLL命令_SetPriorityClass_10316
| |
| |---[dll]------ 匿名DLL命令_VirtualQueryEx_10396
| |
| |---[dll]------ 匿名DLL命令_ReadProcessMemory_1039C
| |
| |---[dll]------ 匿名DLL命令_PostThreadMessageA_10435
| |
| |---[dll]------ 匿名DLL命令_WaitMessage_1043A
| |
| |---[dll]------ 匿名DLL命令_PeekMessageA_1043B
| |
| |---[dll]------ 匿名DLL命令_UnregisterHotKey_10442
| |
| |---[dll]------ 匿名DLL命令_RegisterHotKey_10445
| |
| |---[dll]------ 匿名DLL命令_GetCursorPos_10487
| |
| |---[dll]------ 匿名DLL命令_WindowFromPoint_1048A
| |
| |---[dll]------ 匿名DLL命令_ChildWindowFromPoint_1048D
| |
| |---[dll]------ 匿名DLL命令_IsWindow_10491
| |
| |---[dll]------ 匿名DLL命令_GetWindowLongA_104B1
| |
| |---[dll]------ 匿名DLL命令_SetWindowLongA_104B5
| |
| |---[dll]------ 匿名DLL命令_GetExitCodeThread_1050C
| |
| |---[dll]------ 匿名DLL命令_CallWindowProcA_1054A
| |
| |---[dll]------ 匿名DLL命令_CreateToolhelp32Snapshot_10550
| |
| |---[dll]------ 匿名DLL命令_Thread32First_10554
| |
| |---[dll]------ 匿名DLL命令_Thread32Next_10565
| |
| |---[dll]------ 匿名DLL命令_OpenThread_10569
| |
| |---[dll]------ 匿名DLL命令_GetDesktopWindow_10572
| |
| |---[dll]------ 匿名DLL命令_SuspendThread_10599
| |
| |---[dll]------ 匿名DLL命令_TerminateThread_105A1
| |
| |---[dll]------ 匿名DLL命令_GetProcAddress_1065B
| |
| |---[dll]------ 匿名DLL命令_EnumChildWindows_106FD
| |
| |---[dll]------ 匿名DLL命令_CreateThread_10718
| |
| |---[dll]------ 匿名DLL命令_GetForegroundWindow_1071F
| |
| |---[dll]------ 匿名DLL命令_GetModuleHandleA_10753
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_10C2E
| |
| |---[dll]------ 匿名DLL命令_QueryDosDeviceA_10CF2
| |
| |---[dll]------ 匿名DLL命令_LocalAlloc_10CF3
| |
| |---[dll]------ 匿名DLL命令_NtQuerySystemInformation_10CF4
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_10D02
| |
| |---[dll]------ 匿名DLL命令_LocalFree_10D0B
| |
| |---[dll]------ 匿名DLL命令_ZwQueryVirtualMemory_10DCB
| |
| |---[dll]------ 匿名DLL命令_WaitForSingleObject_10DD5
| |
| |---[dll]------ 匿名DLL命令_SendMessageA_10E52
| |
| |---[dll]------ 匿名DLL命令_AtlAxWinInit_10F04
| |
| |---[dll]------ 匿名DLL命令_AtlAxGetControl_10F05
| |
| |---[dll]------ 匿名DLL命令_CreateWindowExA_10F06
| |
| |---[dll]------ 匿名DLL命令_MultiByteToWideChar_10F08
| |
| |---[dll]------ 匿名DLL命令_CreateURLMoniker_10F09
| |
| |---[dll]------ 匿名DLL命令_ShowHTMLDialog_10F0A
| |
| |---[dll]------ 匿名DLL命令_GetClientRect_10F6A
| |
| |---[dll]------ 匿名DLL命令_UpdateWindow_10F6B
| |
| |---[dll]------ 匿名DLL命令_ShowWindow_10F6C
| |
| |---[dll]------ 匿名DLL命令_DefWindowProcA_10F6D
| |
| |---[dll]------ 匿名DLL命令_RegisterClassExA_10F6E
| |
| |---[dll]------ 匿名DLL命令_LocalSize_10F6F
| |
| |---[dll]------ 匿名DLL命令_LoadCursorA_10F71
| |
| |---[dll]------ 匿名DLL命令_LoadIconA_10F72
| |
| |---[dll]------ 匿名DLL命令_DispatchMessageA_10F74
| |
| |---[dll]------ 匿名DLL命令_GetMessageA_10F75
| |
| |---[dll]------ 匿名DLL命令_TranslateMessage_10F76
| |
| |---[dll]------ 匿名DLL命令_PostQuitMessage_10F77
| |
| |---[dll]------ 匿名DLL命令_BeginPaint_10F78
| |
| |---[dll]------ 匿名DLL命令_EndPaint_10F79
| |
| |---[dll]------ 匿名DLL命令_RtlZeroMemory_10F7A
| |
| |---[dll]------ 匿名DLL命令_DestroyWindow_10F7B
| |
| |---[dll]------ 匿名DLL命令_ExitProcess_10F7C
| |
| |---[dll]------ 匿名DLL命令_DrawTextA_10F7D
| |
| |---[dll]------ 匿名DLL命令_SendMessageA_11013
| |
| |---[dll]------ 匿名DLL命令_GetWindowThreadProcessId_1102C
| |
| |---[dll]------ 匿名DLL命令_GetWindow_11044
| |
| |---[dll]------ 匿名DLL命令_GetWindowTextA_11047
| |
| |---[dll]------ 匿名DLL命令_IsWindowVisible_1104C
| |
| |---[dll]------ 匿名DLL命令_ZwSuspendProcess_11061
| |
| |---[dll]------ 匿名DLL命令_ZwResumeProcess_11062
| |
| |---[dll]------ 匿名DLL命令_OpenProcess_11065
| |
| |---[dll]------ 匿名DLL命令_EnableWindow_11076
| |
| |---[dll]------ 匿名DLL命令_GetParent_11100
| |
| |---[dll]------ 匿名DLL命令_ShowWindow_1116B
| |
| |---[dll]------ 匿名DLL命令_PostMessageA_1116E
| |
| |---[dll]------ 匿名DLL命令_WideCharToMultiByte_111ED
| |
| |---[dll]------ 匿名DLL命令_GetCurrentProcess_111F9
| |
| |---[dll]------ 匿名DLL命令_CreateFileA_11204
| |
| |---[dll]------ 匿名DLL命令_NtRaiseHardError_112EB
| |
| |---[dll]------ 匿名DLL命令_NtSetInformationProcess_112EC
| |
| |---[dll]------ 匿名DLL命令_NtSetInformationThread_112ED
| |
| |---[dll]------ 匿名DLL命令_WriteProcessMemory_1135B
| |
| |---[dll]------ 匿名DLL命令_VirtualFreeEx_11361
| |
| |---[dll]------ 匿名DLL命令_VirtualAllocEx_11366
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_1136C
| |
| |---[dll]------ 匿名DLL命令_FindWindowA_11371
| |
| |---[dll]------ 匿名DLL命令_FindWindowExA_11372
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_11C4E
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_11C9A
| |
| |---[dll]------ 匿名DLL命令_RtlMoveMemory_11CC1
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。