首页
社区
课程
招聘
[求助]请教几句汇编语言的意思,我直觉觉得是反调试的,希望大家帮忙
发表于: 2006-7-20 19:28 3973

[求助]请教几句汇编语言的意思,我直觉觉得是反调试的,希望大家帮忙

2006-7-20 19:28
3973
这是一个过程的入口位置...

009F2FB0    55              push    ebp
009F2FB1    8BEC            mov     ebp, esp
009F2FB3    6A FF           push    -1          //这句开始,我不太明白了
009F2FB5    68 101BA100     push    00A11B10     //这是不是一个错误跳转的地址?整数的地址,应该是函数入口
009F2FBA    64:A1 00000000  mov     eax, fs:[0]    //放问fs:[0]?32位地址需要用到段寄存器吗?是不是故意要出错?
009F2FC0    50              push    eax
009F2FC1    64:8925 0000000>mov     fs:[0], esp //这句话又是啥意思?
009F2FC8    51              push    ecx
009F2FC9    81EC FC000000   sub     esp, 0FC
009F2FCF    53              push    ebx
009F2FD0    56              push    esi
009F2FD1    57              push    edi
009F2FD2    8965 F0         mov     [ebp-10], esp
009F2FD5    A1 F8B3A300     mov     eax, [A3B3F8] //这里我看得懂,一个计数器,在每次成功调用后加1
009F2FDA    83C0 01         add     eax, 1
009F2FDD    A3 F8B3A300     mov     [A3B3F8], eax
009F2FE2    A1 F8B3A300     mov     eax, [A3B3F8]
009F2FE7    99              cdq
009F2FE8    B9 2F000000     mov     ecx, 2F
009F2FED    F7F9            idiv    ecx
009F2FEF    85D2            test    edx, edx
009F2FF1    0F85 14070000   jnz     009F370B
009F2FF7    833D 70E4A300 0>cmp     dword ptr [A3E470], 0
009F2FFE    0F84 BF000000   je      009F30C3
009F3004    833D 70B5A300 0>cmp     dword ptr [A3B570], 0
009F300B    0F84 B2000000   je      009F30C3

-------------------------------------------------------------
下面是00A11B10 处的代码..
00A11B10    B8 00D8A100     mov     eax, 00A1D800
00A11B15  ^ E9 9734FFFF     jmp     00A04FB1

00A04FB1    55              push    ebp
00A04FB2    8BEC            mov     ebp, esp
00A04FB4    83EC 04         sub     esp, 4
00A04FB7    53              push    ebx
00A04FB8    56              push    esi
00A04FB9    57              push    edi
00A04FBA    FC              cld
00A04FBB    8945 FC         mov     [ebp-4], eax
00A04FBE    33C0            xor     eax, eax
00A04FC0    50              push    eax
00A04FC1    50              push    eax
00A04FC2    50              push    eax
00A04FC3    FF75 FC         push    dword ptr [ebp-4]
00A04FC6    FF75 14         push    dword ptr [ebp+14]
00A04FC9    FF75 10         push    dword ptr [ebp+10]
00A04FCC    FF75 0C         push    dword ptr [ebp+C]
00A04FCF    FF75 08         push    dword ptr [ebp+8]
00A04FD2    E8 7A420000     call    00A09251
00A04FD7    83C4 20         add     esp, 20
00A04FDA    8945 FC         mov     [ebp-4], eax
00A04FDD    5F              pop     edi
00A04FDE    5E              pop     esi
00A04FDF    5B              pop     ebx
00A04FE0    8B45 FC         mov     eax, [ebp-4]
00A04FE3    8BE5            mov     esp, ebp
00A04FE5    5D              pop     ebp
00A04FE6    C3              retn
00A04FE7    FC              cld
00A04FE8    8B4424 08       mov     eax, [esp+8]
00A04FEC    8B48 08         mov     ecx, [eax+8]
00A04FEF    3B0D 1832A300   cmp     ecx, [A33218]
00A04FF5    74 0C           je      short 00A05003
00A04FF7    8B4424 04       mov     eax, [esp+4]
00A04FFB    8348 04 08      or      dword ptr [eax+4], 8
00A04FFF    33C0            xor     eax, eax
00A05001    40              inc     eax
00A05002    C3              retn

大家是否可以帮忙指点一下?因为这段代码不能动态跟踪,只能看眼睛看..一跟踪,OllyIce立马被关掉..

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

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 494
活跃值: (629)
能力值: ( LV9,RANK:1210 )
在线值:
发帖
回帖
粉丝
2
看看结构化异常处理
2006-7-20 19:50
0
游客
登录 | 注册 方可回帖
返回
//