首页
社区
课程
招聘
[求助]怎么给PE文件加user32里面的函数啊?
发表于: 2009-10-18 01:13 3557

[求助]怎么给PE文件加user32里面的函数啊?

2009-10-18 01:13
3557
我要把记事本启动时加个messagebox对话框。但是里面的是W的。没有A的。我用W的修改了之后记事本启动之后弹出的是乱码的。

这个如何给pe文件加个函数进去?

附件是修改之后的记事本。不过弹出来的是乱码。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 109
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
01008760 > $  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
01008762      68 C0870001   push    010087C0                         ;  ASCII "ONEPC"
01008767      68 C0870001   push    010087C0                         ;  ASCII "ONEPC"
0100876C      6A 00         push    0
0100876E      FF15 68120001 call    dword ptr [<&USER32.MessageBoxW>>;  USER32.MessageBoxW
01008774    ^ E9 24ECFFFF   jmp     0100739D   //这个是旧的OEP

push    010087C0    这里把地址压入去了。但是出现的是乱码。
2009-10-18 01:19
0
雪    币: 546
活跃值: (1605)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
3
如果你问这个问题,说明你对api不是很了解,对程序的编码也不是很了解。我们编程的时候有的程序用ascii编码的字符串。有时候用Unicode字符串。有什么区别呢,这里我就不细说了。为了更好的掌握建议你自己Google一下。

MessageBoxA 是Ascii版本的。
MessageBoxW 是Unicode版本的。所以字符串要用Unicode编码。


这样修改才是正确的
010087C0   .  4F00 4E00 450>UNICODE "ONEPC",0
2009-10-18 02:09
0
雪    币: 109
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
嗯。谢谢。这个W了解一点。
我想问下楼上的。若是要加个函数进去。要如何加进去啊?
2009-10-18 02:14
0
雪    币: 2513
活跃值: (545)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
修改IID
添加函数调用
2009-10-18 10:02
0
雪    币: 274
活跃值: (358)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
6
直接用LordPE加比较方便
2009-10-18 21:24
0
游客
登录 | 注册 方可回帖
返回
//