dara0418 发表于 2015-5-28 02:37:42

kuulf 发表于 2015-5-27 00:13
8e -- ff        1000 1110 --1111 1111 =======> 1000 1110 ~ 0111 0001 = 1111 1111
00 -- 71        0000 0000 --0 ...

我也刚知道,我对于各种位操作实在有点蒙,当初没学好,所以看不出来。已经自己写了程序还原了DLL,可以逆向出C#代码。谢谢你了

七少月 发表于 2015-5-29 13:43:59

dara0418 发表于 2015-5-28 02:37
我也刚知道,我对于各种位操作实在有点蒙,当初没学好,所以看不出来。已经自己写了程序还原了DLL,可以 ...

能否把你写的程序分享出来呢,文件太大,用HEX计算器无法一次就转换好,或者告诉我们你是怎么做的,
谢谢

dara0418 发表于 2015-5-29 22:35:43

七少月 发表于 2015-5-29 13:43
能否把你写的程序分享出来呢,文件太大,用HEX计算器无法一次就转换好,或者告诉我们你是怎么做的,
谢谢 ...

很简单的一段代码,所有的字节都和0x71异或然后写入到文件。

import java.util.Arrays;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class XorMain {
    public static void main(String[] args) {
      try {
            Path path = Paths.get("Assembly-CSharp.dll");
            byte[] bytes = Files.readAllBytes(path);
            byte[] result = new byte;

            for (int i = 0; i < bytes.length; i++) {
                result = (byte)((int)bytes ^ 0x71);
            }

            path = Paths.get("Real.dll");
            Files.write(path, result);
      }
      catch (IOException e) {
            e.printStackTrace();
      }
    }
}

七少月 发表于 2015-5-30 16:07:13

多谢兄弟分享,正是需要的

七少月 发表于 2015-5-30 16:16:40

dara0418 发表于 2015-5-29 22:35
很简单的一段代码,所有的字节都和0x71异或然后写入到文件。

import java.util. ...

朋友,能不能留下联系方式QQ,我的是397216633,一起交流,如今有的dll还被换位,加上混淆,等等

zhoubo5256 发表于 2015-6-3 01:21:13

楼主 我也遇到这个问题了 求助啊能留下联系方式吗
这个应该是5D异或加密吧   这样的DLL怎么处理啊,用Reflctor反编译时提示File is not a portable executable. DOS header does not contain 'MZ' signatur

zhoubo5256 发表于 2015-6-3 02:17:32

根据楼主的代码 对DLL进行了解密但是仍File is not a portable executable. DOS header does not contain 'MZ' signatur
说明解密失败,估计这个dll异或不止用了5D还用了其他的

但是非常谢谢楼主的代码!!!!非常感谢!!!!!

黑人 发表于 2015-6-25 11:22:06

都很牛逼的大侠,膜拜

963726021 发表于 2015-7-11 20:28:54

zhoubo5256 发表于 2015-6-3 02:17
根据楼主的代码 对DLL进行了解密但是仍File is not a portable executable. DOS header does not contain ...

代码怎么用
页: 1 [2]
查看完整版本: 新手请教加密的DLL文件怎么解密