• 标 题:上次的那篇“如何用smc patch被aspack 2.11压缩过的文件”其实是错的 (783字)
  • 作 者:真.hp
  • 时 间:2000-10-14 22:18:07
  • 链 接:http://bbs.pediy.com

程序被aspack2.11压缩过后,它的oep放在压缩后文件的倒数第2个
section的第7D-80字节处(section name通常为.aspack),这4个
字节被加过密(其实整个section都被加密)。而且每次压缩的加
密方法都不同。我只找出2种规律,其他的我找不出来,我以
oep=00002DB8为例(它在文件中是反着放的 B82D0000):

1。xor  这种情况是用某个数分别与oep的4个字节xor,这时可以看
oep的第1个字节,因为oep通常为00 ?? ?? ??,就可知道它是与哪
个数xor。如
C0557878,那么oep的4个字节就分别与 78 xor。

2。相加 这种情况是用某个数分别与oep的4个字节相加,同样要先
看oep的第一个字节,如果相加的和大于FF,就要减去100。如
68DDB0B0,那么oep的4个字节就分别与 B0 相加。(B8+B0=168-100=68)

3。还有一些情况这样的,不知谁能找出它的算法(可能还有好几种)。

7A55836D  4AC58DC2  62505D06  D27821CB  B82D0100  828BA10F