首页
社区
课程
招聘
[旧帖] [求助]哪里是关键跳? 0.00雪花
发表于: 2008-9-6 13:59 3222

[旧帖] [求助]哪里是关键跳? 0.00雪花

2008-9-6 13:59
3222
各位大哥,请帮忙看看,我想跳过文件大小比较的函数,引用call已经找到,下面那个 je 是不是改成 jmp 就能跳过这段代码?小弟是新手,请指点下,谢谢!

7C810A77 >  8BFF            mov     edi, edi
7C810A79    55              push    ebp
7C810A7A    8BEC            mov     ebp, esp
7C810A7C    51              push    ecx
7C810A7D    51              push    ecx
7C810A7E    8D45 F8         lea     eax, dword ptr ss:[ebp-8]
7C810A81    50              push    eax
7C810A82    FF75 08         push    dword ptr ss:[ebp+8]
7C810A85    E8 7FFFFFFF     call    kernel32.GetFileSizeEx
7C810A8A    85C0            test    eax, eax
7C810A8C  ^ 0F84 2996FFFF   je      kernel32.7C80A0BB
7C810A92    8B45 0C         mov     eax, dword ptr ss:[ebp+C]
7C810A95    85C0            test    eax, eax
7C810A97  ^ 0F85 1496FFFF   jnz     kernel32.7C80A0B1
7C810A9D    837D F8 FF      cmp     dword ptr ss:[ebp-8], -1
7C810AA1    0F84 82C20200   je      kernel32.7C83CD29
7C810AA7    8B45 F8         mov     eax, dword ptr ss:[ebp-8]
7C810AAA    C9              leave
7C810AAB    C2 0800         retn    8
7C810AAE    90              nop
7C810AAF    90              nop
7C810AB0    FFFF            ???                                      ; 未知命令
7C810AB2    FFFF            ???                                      ; 未知命令
7C810AB4    17              pop     ss
7C810AB5    17              pop     ss
7C810AB6    807C20 17 80    cmp     byte ptr ds:[eax+17], 80
7C810ABB    7C 3D           jl      short kernel32.7C810AFA
7C810ABD    2300            and     eax, dword ptr ds:[eax]
7C810ABF    00C0            add     al, al
7C810AC1    0F84 811E0200   je      kernel32.7C832948
7C810AC7    50              push    eax
7C810AC8    E8 9E88FFFF     call    kernel32.7C80936B
7C810ACD    33C0            xor     eax, eax
7C810ACF  ^ E9 A3E6FFFF     jmp     kernel32.7C80F177
7C810AD4    90              nop

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

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 107
活跃值: (13)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
你是在系统领空,你在7C810A85    E8 7FFFFFFF     call    kernel32.GetFileSizeEx处断下后,alt+f9返回,返回后往上找或往下找,肯定有一个cmp,那才是检验的地方,将数值或将跳转更改其一后,就可以了。你试试。。。
2008-9-6 14:10
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢指点,我试试
2008-9-6 14:13
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
大哥,返回后发现多个cmp对比,哪个才是我想要的呢?

00E271A9  |.  8BEC          mov     ebp, esp
00E271AB  |.  53            push    ebx
00E271AC  |.  8B5D 08       mov     ebx, dword ptr ss:[ebp+8]
00E271AF  |.  56            push    esi
00E271B0  |.  8B75 0C       mov     esi, dword ptr ss:[ebp+C]
00E271B3  |.  57            push    edi
00E271B4  |.  8B7D 10       mov     edi, dword ptr ss:[ebp+10]
00E271B7  |.  85F6          test    esi, esi
00E271B9  |.  75 09         jnz     short ArValida.00E271C4
00E271BB  |.  833D B808E500>cmp     dword ptr ds:[E508B8], 0
00E271C2  |.  EB 26         jmp     short ArValida.00E271EA
00E271C4  |>  83FE 01       cmp     esi, 1
00E271C7  |.  74 05         je      short ArValida.00E271CE
00E271C9  |.  83FE 02       cmp     esi, 2
00E271CC  |.  75 22         jnz     short ArValida.00E271F0
00E271CE  |>  A1 DC1FE500   mov     eax, dword ptr ds:[E51FDC]
00E271D3  |.  85C0          test    eax, eax
00E271D5  |.  74 09         je      short ArValida.00E271E0
00E271D7  |.  57            push    edi
00E271D8  |.  56            push    esi
00E271D9  |.  53            push    ebx
00E271DA  |.  FFD0          call    eax
00E271DC  |.  85C0          test    eax, eax
00E271DE  |.  74 0C         je      short ArValida.00E271EC
00E271E0  |>  57            push    edi
00E271E1  |.  56            push    esi
00E271E2  |.  53            push    ebx
00E271E3  |.  E8 E7FEFFFF   call    ArValida.00E270CF
00E271E8  |.  85C0          test    eax, eax
00E271EA  |>  75 04         jnz     short ArValida.00E271F0
00E271EC  |>  33C0          xor     eax, eax
00E271EE  |.  EB 4E         jmp     short ArValida.00E2723E
00E271F0  |>  57            push    edi
2008-9-6 14:21
0
雪    币: 210
活跃值: (56)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
数据不全
没法判断
把此时堆栈里的东西也发出来看看吧
2008-9-6 16:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
堆栈里的东西

0007F67C   00E271A8  ArValida.<模块入口点>
0007F680  /0007F6A0
0007F684  |00410A73  返回到 LOADDLL.00410A73
0007F688  |00E10000  ArValida.00E10000
0007F68C  |00000001
0007F690  |00000000
0007F694  |00E271A8  ArValida.<模块入口点>
0007F698  |00000001
0007F69C  |001A2FB8
0007F6A0  ]0007F7A8
0007F6A4  |7C93CBAB  返回到 ntdll.7C93CBAB 来自 ntdll.7C921193
0007F6A8  |00E271A8  ArValida.<模块入口点>
0007F6AC  |00E10000  ArValida.00E10000
0007F6B0  |00000001
0007F6B4  |00000000
0007F6B8  |0007FD48
0007F6BC  |0007FD28
0007F6C0  |00000000
0007F6C4  |00000000
0007F6C8  |00E3E000  <&ADVAPI32.RegOpenKeyExA>
0007F6CC  |0007F688
0007F6D0  |7C93C94D  返回到 ntdll.7C93C94D 来自 ntdll.7C932788
0007F6D4  |7FFDF000
0007F6D8  |001A2FB8
0007F6DC  |7C93D6D8  ntdll.7C93D6D8
0007F6E0  |FFFFFFFF
0007F6E4  |7C93D6D2  返回到 ntdll.7C93D6D2 来自 ntdll.7C92EE02
0007F6E8  |7C93D9CB  返回到 ntdll.7C93D9CB 来自 ntdll.7C93D5B7
0007F6EC  |001A3938
0007F6F0  |001A2FB8
0007F6F4  |7FFDF000
0007F6F8  |00000000
0007F6FC  |00000001
0007F700  |001A2FB8
0007F704  |7FFD9000
0007F708  |001A3938
0007F70C  |00000014
0007F710  |00000001
2008-9-6 16:41
0
雪    币: 427
活跃值: (65)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
7
似乎还没回到程序领空。。。
2008-9-6 16:44
0
游客
登录 | 注册 方可回帖
返回
//