求解码
; ----- A.code ------
;00000 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00 MZ..............
;00010 B8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 ........@.......
;00020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
;00030 00 00 00 00 00 00 00 00 00 00 00 00 E8 00 00 00 ................
;00040 0E 1F BA 0E 00 B4 09 CD 21 B8 01 4C CD 21 54 68 ........!..L.!Th
;00050 69 73 20 70 72 6F 67 72 61 6D 20 63 61 6E 6E 6F is program canno
;00060 74 20 62 65 20 72 75 6E 20 69 6E 20 44 4F 53 20 t be run in DOS
;00070 6D 6F 64 65 2E 0D 0D 0A 24 00 00 00 00 00 00 00 mode....$.......
;00080 36 86 40 D7 72 E7 2E 84 72 E7 2E 84 72 E7 2E 84 6.@.r...r...r...
;00090 F1 EF 21 84 77 E7 2E 84 F1 EF 73 84 7D E7 2E 84 ..!.w.....s.}...
;000A0 72 E7 2F 84 FE E7 2E 84 FC EF 71 84 7D E7 2E 84 r./.......q.}...
;000B0 FC EF 4E 84 6E E7 2E 84 F1 EF 70 84 73 E7 2E 84 ..N.n.....p.s...
;000C0 F1 EF 74 84 73 E7 2E 84 52 69 63 68 72 E7 2E 84 ..t.s...Richr...
;000D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
;000E0 00 00 00 00 00 00 00 00 50 45 00 00 4C 01 03 00 ........PE..L...
; ----- B.code ------
;00000 F4 E3 29 B9 BA B9 B9 B9 BD B9 B9 B9 46 46 B9 B9 ..).........FF..
;00010 01 B9 B9 B9 B9 B9 B9 B9 F9 B9 B9 B9 B9 B9 B9 B9 ................
;00020 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 ................
;00030 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 B9 71 B9 B9 B9 ............q...
;00040 B7 A6 03 B7 B9 0D B0 74 98 01 B8 F5 74 98 ED D1 .......t....t...
;00050 D0 CA 99 C9 CB D6 DE CB D8 D4 99 DA D8 D7 D7 D6 ................
;00060 CD 99 DB DC 99 CB CC D7 99 D0 D7 99 FD F6 EA 99 ................
;00070 D4 D6 DD DC 97 B4 B4 B3 9D B9 B9 B9 B9 B9 B9 B9 ................
;00080 C6 F6 61 2B 82 97 0F 78 82 97 0F 78 82 97 0F 78 ..a+...x...x...x
;00090 E8 8B 0D 78 9E 97 0F 78 82 97 0E 78 E4 97 0F 78 ...x...x...x...x
;000A0 DB B4 1C 78 89 97 0F 78 A8 9F 09 78 83 97 0F 78 ...x...x...x...x
;000B0 82 97 0F 78 A9 97 0F 78 EB D0 DA D1 82 97 0F 78 ...x...x.......x
;000C0 B9 B9 B9 B9 B9 B9 B9 B9 E9 FC B9 B9 F5 B8 BA B9 ................
;000D0 82 12 55 8E B9 B9 B9 B9 B9 B9 B9 B9 59 B9 B6 BA ..U.........Y...
;000E0 B2 B8 BC B5 B9 9F B8 B9 B9 81 B9 B9 B9 B9 B9 B9 ................
如上,A.code是一个标准的 Win32 PE文件,B.code 是 A.code 编码后的内容,求编码过程中所用的算法(即 A.code 经过怎样的运算可以得到 B.code 的结果)?
问题点数:100、回复次数:6Top
1 楼ykzhujiang(朱朱)回复于 2006-03-14 03:52:48 得分 100
晕,这样直接搞怎么可能看的出来,能具体说说吗?Top
2 楼ykzhujiang(朱朱)回复于 2006-03-14 04:03:40 得分 0
哦,我看出来了
是对明文进行了异或处理,即对每个字节用B9进行异或
举例:
4D^B9=F4
00^B9=B9
B8^B9=01
......Top
3 楼Favinc()回复于 2006-03-14 04:04:34 得分 0
b.code是在一个文件里面摘出来的,我发现从这里开始,原来的 00 全部变成了 B9,而且偏移位置与 A.code也是一致的。因此,我认为它是经过了某种算法的编码。Top
4 楼ykzhujiang(朱朱)回复于 2006-03-14 04:06:18 得分 0
这个算法在网络游戏里面很常见,就是用异或进行了运算Top
5 楼Favinc()回复于 2006-03-14 04:06:41 得分 0
OK,谢谢,我也刚刚发现,我刚开始否定了它是按单个字节进行异或处理的。后来没空就没理它了。
谢谢朱朱!Top
6 楼ykzhujiang(朱朱)回复于 2006-03-14 04:08:09 得分 0
呵呵,以前我写过类似的外挂程序,所以对简单的加密算法还是比较清楚的Top




