- UID
- 58297
注册时间2009-1-25
阅读权限10
最后登录1970-1-1
周游历练
TA的每日心情 | 无聊 2020-12-6 01:04 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
本帖最后由 neptunesoft 于 2011-4-21 01:29 编辑
这个是我WINDOWS下的.执行通过了,
push 0
push 80
push 3
push 0
push 1
push 80000000
push 00478924 ; ASCII "c:\windows\neptune.dat" 要读入的文件
call <jmp.&kernel32.CreateFileA> 文件返回句柄放在EAX里了.
push 51BF
mov edx, esp
push 0
push edx
push 51BF 数据大小
push esi ESI为写入数据的位置,
push eax
call <jmp.&kernel32.ReadFile>
这样文件的数据都读入了ESI的地址中了.
我想知道的是,在LINUX下应该用什么函数,怎么实现上面的功能.....
我在LINUX下这样写好像不对
push 0 ; oflag
push offset aUsrLibNetzoneN ; "/usr/lib/2323/neptune.dat"
call _open
mov ecx, 522Fh
mov edx, esi
push ecx ; nbytes
push edx ; buf
push eax ; fd
call _read
请帮我看看错误是什么地方
其实就是把NEPTUNE.DAT的数据读到指定的内存区域中(ESI)
希望那位高手帮我写下这段代码 |
|