首页
社区
课程
招聘
小资料:ASPr API修复
发表于: 2004-7-2 11:24 9087

小资料:ASPr API修复

2004-7-2 11:24
9087

小资料:ASPr API修复
kongfoo/2004.6.22

  ASPr处理后有部分API已经面目全非,手动分析会毫无头绪,只能
靠经验或插件,下面记录一下ASPr对一些API的处理,手动分析起来就
事半功倍了。

kernel32.GetCommandLineA:

00D9139C    6A 00           PUSH 0
00D9139E    E8 B53DFFFF     CALL 00D85158                            ; JMP to kernel32.GetModuleHandleA
00D913A3    FF35 E46CD900   PUSH DWORD PTR DS:[D96CE4]
00D913A9    58              POP EAX
00D913AA    8B05 F46CD900   MOV EAX,DWORD PTR DS:[D96CF4]  ==d96cf4放的是命令行参数
00D913B0    C3              RETN
kernel32.GetModuleHandleA:

00D9133C    55              PUSH EBP
00D9133D    8BEC            MOV EBP,ESP
00D9133F    8B45 08         MOV EAX,DWORD PTR SS:[EBP+8]
00D91342    85C0            TEST EAX,EAX
00D91344    75 07           JNZ SHORT 00D9134D
00D91346    A1 7869D900     MOV EAX,DWORD PTR DS:[D96978]  ==d96978放的是40000,哪么这个是GetModuleHandleA的功能了
00D9134B    EB 06           JMP SHORT 00D91353
00D9134D    50              PUSH EAX
00D9134E    E8 053EFFFF     CALL 00D85158                            ; JMP to kernel32.GetModuleHandleA
00D91353    5D              POP EBP
00D91354    C2 0400         RETN 4
kernel32.GetProcAddress:

00D90EE8    55              PUSH EBP
00D90EE9    8BEC            MOV EBP,ESP
00D90EEB    8B55 0C         MOV EDX,DWORD PTR SS:[EBP+C]
00D90EEE    8B45 08         MOV EAX,DWORD PTR SS:[EBP+8]
00D90EF1    8B0D 3C54D900   MOV ECX,DWORD PTR DS:[D9543C]
00D90EF7    8B09            MOV ECX,DWORD PTR DS:[ECX]
00D90EF9    3BC8            CMP ECX,EAX
00D90EFB    75 09           JNZ SHORT 00D90F06
00D90EFD    8B0495 5053D900 MOV EAX,DWORD PTR DS:[EDX*4+D95350]
00D90F04    EB 07           JMP SHORT 00D90F0D
00D90F06    52              PUSH EDX
00D90F07    50              PUSH EAX
00D90F08    E8 5342FFFF     CALL 00D85160                            ; JMP to kernel32.GetProcAddress
00D90F0D    5D              POP EBP
00D90F0E    C2 0800         RETN 8
kernel32.GetVersion:

00D91358    6A 00           PUSH 0
00D9135A    E8 F93DFFFF     CALL 00D85158                            ; JMP to kernel32.GetModuleHandleA
00D9135F    FF35 E46CD900   PUSH DWORD PTR DS:[D96CE4]  ==d96ce4放的是版本信息,API是GetVersion
00D91365    58              POP EAX
00D91366    C3              RETN
kernel32.GetCurrentProcess:

00D91388    MOV EAX,[D96CE8]  ==d96ce8放的是-1
00D9138D    RETN

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

收藏
免费 8
支持
分享
最新回复 (13)
雪    币: 690
活跃值: (1841)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
2
总结的好
2004-7-2 11:38
0
雪    币: 6075
活跃值: (2236)
能力值: (RANK:1060 )
在线值:
发帖
回帖
粉丝
3
写个修复器吧:D
2004-7-2 11:41
0
雪    币: 303
活跃值: (476)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
多谢kongfoo!总结的好
2004-7-2 12:25
0
雪    币: 109
活跃值: (36)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
5
我赞:D
2004-7-2 12:37
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
6
最初由 forgot 发布
写个修复器吧:D


支持  :D
2004-7-2 13:13
0
雪    币: 371
活跃值: (790)
能力值: ( LV12,RANK:570 )
在线值:
发帖
回帖
粉丝
7
还没功力写修复器呢:(
2004-7-2 14:43
0
雪    币: 223
活跃值: (106)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
好文章就只有顶。
2004-7-2 16:23
0
雪    币: 301
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
9
非常感谢!支持!
2004-7-2 17:04
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
好!
2004-7-2 18:46
0
雪    币: 219
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
好,先保存下学习,谢了
2004-7-24 07:27
0
雪    币: 86
活跃值: (873)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
这才几个呀?
HYING的壳把API改的像鸡毛一样乱!!:)
2004-7-24 07:42
0
雪    币: 371
活跃值: (790)
能力值: ( LV12,RANK:570 )
在线值:
发帖
回帖
粉丝
13
最初由 loveaixing 发布
这才几个呀?
HYING的壳把API改的像鸡毛一样乱!!:)


hying会随时改代码,使得对API的处理有所不同,哪么搞这么一个资料就没意义了。
2004-7-24 08:18
0
雪    币: 86
活跃值: (873)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
谢谢指点,HYING的壳在处理HOOK_API时,原来API所指的地方,代码每次都不一样,不过效果是一样的!
2004-7-24 08:29
0
游客
登录 | 注册 方可回帖
返回
//