首页
社区
课程
招聘
[旧帖] [求助]汇编语言里面有Sleep这个函数么? 0.00雪花
发表于: 2008-6-22 19:44 8265

[旧帖] [求助]汇编语言里面有Sleep这个函数么? 0.00雪花

2008-6-22 19:44
8265
这是在某个论坛有人回复的,我看不明白

用sleep()函数,代码如下:

0043E22D call dword ptr[503456] ; \Sleep

[注]sleep的取值ThunkRVA要用PE去查找,找到后(比如是103456)再加基址400000,调用语句则为:call dword ptr[503456]

那个地址是什么意思,函数么?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 205
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
不是汇编语言里有这个函数,这是个API函数,什么语言都可调用
2008-6-22 23:06
0
雪    币: 205
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
对了,你有学过"Windows环境下32位汇编语言"么?
2008-6-22 23:11
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不好意思,没有.

就是偶然的一个想法, 结果用到这个了.

可以调用这个API,但是如果程序里面没有呢,比如cmd.exe没有用到这个api,怎么调用呢.
2008-6-23 00:55
0
雪    币: 209
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
ASM里好象没有函数用的吧,SLEEP是系统的API
2008-6-23 13:17
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
有人能帮忙给出一段延时代码的例子么?

比如延迟3秒钟.
2008-6-23 18:37
0
雪    币: 209
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
invoke  Sleep,3000
2008-6-23 19:24
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
楼上老兄,

OD 显示,未知的标识符...
2008-6-23 23:19
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
这句是在ASM的win32源码环境下使用的...不是直接插入OD里的...
2008-6-24 08:32
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
嗯 是伪指令。

我是想直接插在PE文件头上达到延时执行的效果。

我觉得很难是因为我不会编程,大家也觉得难么, 还是不屑一顾。。。

:(
2008-6-24 10:36
0
雪    币: 14963
活跃值: (4748)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
11
添加导入表,把Sleep函数添加进去.记住添加后的地址,然后Call Dword Ptr[地址],之前要PUSH一个参数.时间你自己确定了.
2008-6-24 10:55
0
雪    币: 463
活跃值: (116)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
帮楼上的完成:

push 3000
call [xxxxxxx]   xxxxxx 就是增加IAT后的地址,指向的是SLEEP
2008-6-24 15:08
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
谢谢 晕

怎么添加那个sleep函数,后面几步我倒是会。。。

要用LordPE么?
2008-6-25 12:09
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
刚才到网上搜索了一下,大概明白如何用LordPE添加导入函数。

不过  Sleep这个函数貌似是在Kernel32里面的,为什么不可以直接

Call Kernel32.Sleep 来调用呢?
2008-6-25 12:57
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
费了老大劲,还是没搞定.

好不容易在cmd.exe里面把Sleep函数导入了.  然后

4AD21075    68 00300000        push 3000
4AD2107A    E8 C713AE31        call kernel32.Sleep

能运行是不假,但是不延迟啊,而且运行几秒钟就说遇到问题需要关闭...
2008-6-26 23:20
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
新手需要帮助呃...
2008-6-28 21:52
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
17
好深奥 刚刚接触汇编 继续学习
2008-6-28 23:00
0
游客
登录 | 注册 方可回帖
返回
//