精易论坛

标题: 大神来瞧下,关于汇编模块的一个问题 [打印本页]

作者: hejian    时间: 2013-11-21 17:38
标题: 大神来瞧下,关于汇编模块的一个问题
.版本 2
asm_置代码 ()
asm_Mov_EAX (十六到十 (“006EE310”))
asm_Call_EAX ()
asm_Ret ()
调用函数 (进程ID, asm_取代码 ())
输出调试文本 (转换_字节集转汇编指令 (asm_取代码 ()))
同样的代码我自己拼揍的这个汇编模块调用后如下图:

调用后出错

另一个能正确调用的模块输出提示:




从上面的圈圈中可以看到我自己的模块中的“*”加一个空格在第一行代码的头部,而别人的模块能正确调用的却是“*”号在代码之上,请问有没有大牛有开发汇编模块的经验,望告之啊,
我自己研究了一下,灰常怀疑是“调用函数”这个子程序出错,贴上来让大家分析下
.版本 2
.子程序 asm_调用函数, , 公开
.参数 PID, 整数型
.参数 Code, 字节集
.局部变量 线程句柄, 整数型
.局部变量 线程ID, 整数型
.局部变量 线程地址1, 整数型
.局部变量 线程地址2, 整数型
.局部变量 进程句柄, 整数型
.局部变量 OPcode, 字节集
.局部变量 CodeLen, 整数型
进程句柄 = 打开进程 (#PROCESS_ALL_ACCESS, 假, PID)
CodeLen = 取字节集长度 (Code) + 1
线程地址1 = 分配内存虚拟页 (进程句柄, 0, CodeLen, #MEM_COMMIT, 64)
写入内存 (进程句柄, 线程地址1, Code, CodeLen, 0)
线程句柄 = 远程创建线程 (进程句柄, 0, 0, 线程地址1, 0, CodeLen, 线程ID)
WaitForSingleObject (线程句柄, 1000)
释放内存虚拟页 (进程句柄, 线程地址1, 0, #MEM_RELEASE)
关闭进程 (线程句柄)
关闭进程 (进程句柄)


如果谁有没问题的源码能上传一个不,



补充内容 (2013-11-21 17:40):
图乱了。第二张图到最底部了,凑合着瞧吧= =,

1.jpg (9.52 KB, 下载次数: 0)

1.jpg

作者: Violation    时间: 2013-11-21 18:03
拿了沙发 可惜我不会
作者: 南风轩雨    时间: 2013-11-21 18:23
附上源码方便大虾给你处理
作者: asd104014    时间: 2013-11-21 18:56
虽然汇编会点 但是这么多文字 懒得看
作者: hejian    时间: 2013-11-22 09:26
好像没太多人接触这个人啊,有能成功调用CALL汇编模块源码的站内联系下啊,可有偿
作者: HugBear    时间: 2013-11-22 11:47
无语,在之前加个换行不就完事了。。

作者: hejian    时间: 2013-11-22 19:38
维卷残恋 发表于 2013-11-22 11:47
无语,在之前加个换行不就完事了。。

哥哥,你确定你知道这是什么东东?
作者: HugBear    时间: 2013-11-22 22:14
hejian 发表于 2013-11-22 19:38
哥哥,你确定你知道这是什么东东?

不就是 hex 二进制转换的 机器码吗

输出调试文本 (#换行符+转换_字节集转汇编指令 (asm_取代码 ()))  

改造  转换_字节集转汇编指令  也一样可以


作者: hejian    时间: 2013-11-23 19:10
维卷残恋 发表于 2013-11-22 22:14
不就是 hex 二进制转换的 机器码吗

输出调试文本 (#换行符+转换_字节集转汇编指令 (asm_取代码 ()))   ...

如果是出在字集转换的问题,那也不会是调用函数的时候错误了。这个也是贴子编辑不了,当时发贴的时候没把问题看得太清楚,我的错,谢谢你。。




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4