首页
社区
课程
招聘
[讨论]与PE相关汇编问题
发表于: 2005-1-1 20:51 5154

[讨论]与PE相关汇编问题

2005-1-1 20:51
5154
mov        esi,lpmemory
assume        esi:ptr IMAGE_DOS_HEADER
.if        [esi].e_magic != IMAGE_DOS_SIGNATURE
jmp        _ErrFormat

其中lpmemory是一个内存映像文件;
不明白assume    esi:ptr IMAGE_DOS_HEADER这句后[esi]怎么成的IMAGE_DOS_HEADER结构首地址???
请给详细的讲讲这句代码的细节
谢谢
顺祝各位元旦快乐!!

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

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
2
assume不是实际指令,假设esi是image_dos_header地址.
另外是esi不是[esi]
2005-1-1 20:59
0
雪    币: 135
活跃值: (103)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
1 "sume不是实际指令,假设esi是image_dos_header地址."
假设是就是吗?请问是怎么实现的??
2 esi放的是image_dos_header的首地址吗?那[esi]就是地址的值了?
2005-1-1 21:08
0
雪    币: 135
活跃值: (103)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
up 自己顶
2005-1-1 21:35
0
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
5
mov  esi,lpmemory
:将esi指向lpmemory

assume  esi:ptr IMAGE_DOS_HEADER
:将eis该处指向的空间设定为IMAGE_DOS_HEADER结构,人家说的没错
2005-1-1 21:50
0
雪    币: 260
活跃值: (162)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
assume  esi:ptr IMAGE_DOS_HEADER
这个不是代码 只是申明,为编译器准备的 不是生成代码的
用处是告诉编译器重这行申明以后 寄存器指向的地址是什么结构
2005-1-2 03:22
0
雪    币: 135
活跃值: (103)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
明白了,谢谢各位!!
2005-1-2 18:45
0
游客
登录 | 注册 方可回帖
返回
//