步骤:


1.先找到你要加密的字符串的物理地址,再转为内存地址

2.记录下DLL现在的入口点,然后找一个零区域,同样记录下其内存地址,用来写入加密代码

  再用LoadPe改入口点为零区域的地址

  还得用LoadPe改PcMain.dll输出表所在区段的标志为E0000020,标志为E0000020就是可读可写

  可执行.如果你不改这个的话,运行是会出错的!

  字符串的物理地址:

  字符串的内存地址:

  DLL的入口点:

  零区域地址:

 (用LoadPE改入口的时候得去掉内存地址的基址哦)

 


3.再用下面的代码来实现加密,但这样一个一个的粘贴上去是很慢的,所以还是

  用下面的二进制来粘贴了,这样不容易出错,也节省了时间

————————————————————————————————————

PUSHAD
CALL 10011866       //call 下面的“pop eax”的地址
POP EAX
XOR AX,AX
ADD EAX,xxxxxxxx   //内存地址去掉前面的1001基址得到****,这里得按你的情况来填
XCHG EAX,ESI
MOV EDI,ESI
LODS BYTE PTR DS:[ESI]
OR AL,AL
JE 1001187C                   //je到下面的“POPAD”
XOR AL,18
STOS BYTE PTR ES:[EDI]
JMP 10011872                  //jmp到上面的“LODS BYTE PTR DS:[ESI]”
POPAD
JMP xxxxxxxx                  //jmp到原入口,这里得按你的情况来填
     
————————————————————————————————————

二进制粘贴的代码:

60 E8 00 00 00 00 58 66 33 C0 05 C7 29 00 00 96 8B FE AC 08 C0 74 05 34 18 AA EB F6 61 EB 89

————————————————————————————————————

这样改后用OD打开文件,走到你加密的字符串那里,按F8单步,看看字符串被加密成了什么东西,二进
制复制下来,

然后把这些加密了的字符串覆盖掉原字符串就可以了(正常的字符串被异或后成了乱码,所以乱码再次

被异或就能还原成了原来的正常的字符串)