首页
社区
课程
招聘
请过往大虾帮忙解释两个赋值语句的区别
发表于: 2011-5-11 09:39 4292

请过往大虾帮忙解释两个赋值语句的区别

2011-5-11 09:39
4292
请教 mov ecx,sizeof IMAGE_SECTION_HEADER
和 mov ecx, IMAGE_SECTION_HEADER 的区别。
谢谢!~~~~
mov        esi,_lpPeHead
                assume        esi:ptr IMAGE_NT_HEADERS,edi:ptr IMAGE_NT_HEADERS
                invoke        GlobalAlloc,GPTR,[esi].OptionalHeader.SizeOfHeaders
                mov        @lpMemory,eax
                mov        edi,eax
                invoke        RtlMoveMemory,edi,_lpFile,[esi].OptionalHeader.SizeOfHeaders
                add        edi,esi
                sub        edi,_lpFile
                movzx        eax,[esi].FileHeader.NumberOfSections
                dec        eax
                mov        ecx,sizeof IMAGE_SECTION_HEADER
                mul        ecx

                mov        edx,edi
                add        edx,eax
                add        edx,sizeof IMAGE_NT_HEADERS
                mov        ebx,edx
                add        ebx,sizeof IMAGE_SECTION_HEADER
                assume        ebx:ptr IMAGE_SECTION_HEADER,edx:ptr IMAGE_SECTION_HEADER
                pushad
                mov        edi,ebx
                xor        eax,eax
                mov        ecx,IMAGE_SECTION_HEADER   用sizeof IMAGE_SECTION_HEADER也可以,为什么可以这样用?                              
  repz        scasb
                popad
                .if        ! ZERO?
……

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 245
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
mov ecx,sizeof IMAGE_SECTION_HEADER
这个是将IMAGE_SECTION_HEADER结构的大小赋给ecx
mov ecx, IMAGE_SECTION_HEADER
这个是将IMAGE_SECTION_HEADER 的地址赋给ecx
不知道正不正确
2011-5-11 10:00
0
雪    币: 183
活跃值: (82)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
mov        edi,ebx
                xor        eax,eax
                mov        ecx,IMAGE_SECTION_HEADER               
                                repz        scasb
2011-5-11 10:12
0
雪    币: 58
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
[QUOTE=CNNY;957333]mov        edi,ebx
                xor        eax,eax
                mov        ecx,IMAGE_SECTION_HEADER               
                                repz        scasb[/QUOTE]

这难道是在判断是否有IMAGE_SECTION_HEADER数据?????
2011-5-11 10:45
0
雪    币: 183
活跃值: (82)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
请大家再关注一下啊
2011-5-17 18:04
0
雪    币: 183
活跃值: (82)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
用IDA分析后能够看到实际的数据,以下是数据片段

.text:00401376                 call    RtlMoveMemory
.text:0040137B                 add     edi, esi
.text:0040137D                 sub     edi, [ebp+arg_0]
.text:00401380                 movzx   eax, word ptr [esi+6]
.text:00401384                 dec     eax
.text:00401385                 mov     ecx, 28h;mov        ecx,sizeof IMAGE_SECTION_HEADER
.text:0040138A                 mul     ecx
.text:0040138C                 mov     edx, edi
.text:0040138E                 add     edx, eax
.text:00401390                 add     edx, 0F8h
.text:00401396                 mov     ebx, edx
.text:00401398                 add     ebx, 28h;add        ebx,sizeof IMAGE_SECTION_HEADER
.text:0040139B                 pusha
.text:0040139C                 mov     edi, ebx
.text:0040139E                 xor     eax, eax
.text:004013A0                 mov     ecx, 28h;mov        ecx,IMAGE_SECTION_HEADER
.text:004013A5                 repe scasb
.text:004013A7                 popa
.
2012-2-19 11:19
0
游客
登录 | 注册 方可回帖
返回
//