能力值:
( LV2,RANK:10 )
|
-
-
2 楼
楼主这样写可能会崩溃,首先MessageBoxA不止两个参数,而且调用应该用Call而不是Jmp
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
push 0
- push 3232
- push 3232
push 0
- call dword ptr [004ed44c] : 00000000
add 32,esp
ret
这样呢 调用的是messageBoxA 我看原程序就push了4个参数
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
004A6A4F 68 35D94F00 push 004FD935 ; ASCII "irectSoundCreate"
004A6A54 |. 50 push eax ; |hModule
004A6A55 |. FF15 60D14E00 call dword ptr [<&KERNEL32.GetProcAddress>] ; \GetProcAddress
004A6A5B |. 8BF8 mov edi, eax
004A6A5D |. 3BFB cmp edi, ebx
像这个是源程序的 他没有 add esp,push 004FD935 这个004FD935 数字怎么才查的到呢?ASCII "irectSoundCreate"
|
能力值:
( LV13,RANK:240 )
|
-
-
6 楼
哎。。。。。
MessageBox是stdcall当然不要add esp了,
其次, CALL [XXXXX]
xxx里面的数据才是messagebox的地址。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
[QUOTE=IamHuskar;1172450]哎。。。。。
MessageBox是stdcall当然不要add esp了,
其次, CALL [XXXXX]
xxx里面的数据才是messagebox的地址。 [/QUOTE]
不好意思我知道了GetProcAddress(“WriteProcessMemory”,hModule)
“WriteProcessMemory”那串数字就是内存地址存放了字符串
|
|
|