能力值:
( LV13,RANK:530 )
|
-
-
2 楼
靠。**********省略若干字。
|
能力值:
( LV12,RANK:250 )
|
-
-
3 楼
嘿嘿,什么意思?
|
能力值:
( LV12,RANK:250 )
|
-
-
4 楼
付上softworm大侠MessageBox里面的一个虚拟偏移转成物理偏移+载入基址逆向的注释
00401000 /$ 56 push esi
00401001 |. 57 push edi
00401002 |. 8B7C24 0C mov edi, dword ptr [esp+C] ; edi指向user32.dll载入基址
00401006 |. 33D2 xor edx, edx
00401008 |. 33C0 xor eax, eax
0040100A |. 8B4F 3C mov ecx, dword ptr [edi+3C]
0040100D |. 03CF add ecx, edi ; ecx指向PE
0040100F |. 66:8B51 14 mov dx, word ptr [ecx+14] ; 可选头大小
00401013 |. 8D740A 18 lea esi, dword ptr [edx+ecx+18] ; esi指向块表
00401017 |. 33D2 xor edx, edx
00401019 |. 66:8B51 06 mov dx, word ptr [ecx+6] ; 区段数
0040101D |. 85D2 test edx, edx
0040101F |. 7E 2B jle short 0040104C
00401021 |. 53 push ebx
00401022 |. 8D4E 0C lea ecx, dword ptr [esi+C] ; 块虚拟地址
00401025 |. 8B7424 14 mov esi, dword ptr [esp+14] ; 函数的RVA
00401029 |. 55 push ebp
0040102A |. 8BDA mov ebx, edx ; ebx块数计数
0040102C |> 8B11 /mov edx, dword ptr [ecx] ; edx虚拟偏移
0040102E |. 3BF2 |cmp esi, edx
00401030 |. 72 12 |jb short 00401044 ; esi小于edx就跳
00401032 |. 8B69 FC |mov ebp, dword ptr [ecx-4] ; 块的虚拟大小
00401035 |. 03EA |add ebp, edx
00401037 |. 3BF5 |cmp esi, ebp
00401039 |. 77 09 |ja short 00401044 ; esi大于ebp就跳
0040103B |. 8B41 08 |mov eax, dword ptr [ecx+8] ; 块在文件中的偏移
0040103E |. 2BC2 |sub eax, edx ; 虚拟偏移和物理偏移的差值
00401040 |. 03C7 |add eax, edi
00401042 |. 03C6 |add eax, esi
00401044 |> 83C1 28 |add ecx, 28
00401047 |. 4B |dec ebx ; 递扣ebx为0跳出循环
00401048 |.^ 75 E2 \jnz short 0040102C
0040104A |. 5D pop ebp
0040104B |. 5B pop ebx
0040104C |> 5F pop edi
0040104D |. 5E pop esi
0040104E \. C3 retn
|
能力值:
( LV5,RANK:60 )
|
-
-
5 楼
有收获,谢谢。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
学习了!!
不过楼上这位的头像实在是................
|
|
|