|
- .版本 2
- .支持库 spec
- .程序集 程序集1
- .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码
- _临时子程序 () ' 在初始化代码执行完毕后调用测试代码
- 返回 (0) ' 可以根据您的需要返回任意数值
- .子程序 _临时子程序
- .局部变量 字节集, 字节集
- .局部变量 长整数, 长整数型
- 字节集 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }
- 长整数 = 取字节集内长整数 (字节集, 0)
- 置字节集内长整数 (字节集, 2, 长整数, 真)
- 调试输出 (字节集)
- .子程序 取字节集内长整数, 长整数型, 公开, 与 取字节集内整数 () 功能相同
- .参数 待处理的字节集, 字节集
- .参数 欲获取长整数所处偏移, 整数型, , 严禁负数或越界否则会取出错误的数据
- .参数 是否反转字节序, 逻辑型, 可空
- 置入代码 ({ 86, 87, 81, 139, 125, 8, 139, 63, 131, 199, 8, 139, 117, 12, 139, 4, 62, 139, 84, 62, 4, 138, 77, 16, 128, 249, 1, 117, 5, 232, 7, 0, 0, 0, 89, 95, 94, 201, 194, 16, 0, 134, 196, 193, 192, 16, 134, 196, 134, 214, 193, 194, 16, 134, 214, 146, 195 })
- ' push esi
- ' push edi
- ' push ecx
- ' mov edi,[ebp+8]
- ' mov edi,[edi]
- ' add edi,8
- ' mov esi,[ebp+12]
- ' mov eax,[edi+esi]
- ' mov edx,[edi+esi+4]
- ' mov cl,[ebp+16]
- ' .if cl == 1
- ' call RLB
- ' .endif
- ' pop ecx
- ' pop edi
- ' pop esi
- ' leave
- ' retn 16
- ' RLB:
- ' xchg al,ah
- ' rol eax,16
- ' xchg al,ah
- ' xchg dl,dh
- ' rol edx,16
- ' xchg dl,dh
- ' xchg eax,edx
- ' ret
- 返回 (0)
- .子程序 置字节集内长整数, , 公开, 与 置字节集内整数 () 功能相同
- .参数 待处理的字节集, 字节集
- .参数 欲设置长整数所处偏移, 整数型, , 严禁负数或越界否则会造成程序异常
- .参数 欲设置的长整数值, 长整数型
- .参数 是否反转字节序, 逻辑型, 可空
- 置入代码 ({ 96, 139, 125, 8, 139, 63, 131, 199, 8, 139, 117, 12, 139, 69, 16, 139, 85, 20, 138, 77, 24, 128, 249, 1, 117, 5, 232, 12, 0, 0, 0, 137, 4, 62, 137, 84, 62, 4, 97, 201, 194, 20, 0, 134, 196, 193, 192, 16, 134, 196, 134, 214, 193, 194, 16, 134, 214, 146, 195 })
- ' pushad
- ' mov edi,[ebp+8]
- ' mov edi,[edi]
- ' add edi,8
- ' mov esi,[ebp+12]
- ' mov eax,[ebp+16]
- ' mov edx,[ebp+20]
- ' mov cl,[ebp+24]
- ' .if cl == 1
- ' call RLB
- ' .endif
- ' mov [edi+esi],eax
- ' mov [edi+esi+4],edx
- ' popad
- ' leave
- ' retn 20
- ' RLB:
- ' xchg al,ah
- ' rol eax,16
- ' xchg al,ah
- ' xchg dl,dh
- ' rol edx,16
- ' xchg dl,dh
- ' xchg eax,edx
- ' ret
复制代码 |
|