unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll

百度搜索unity dll 加密会出来很多加密的方式,其中有一种就是改mz头, 这里借用下unity大神雨松的图片

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第1张图片

data是Assembly-CSharp.dll中的内容,上面代码的意思就是让data[0]这个字节-1

下面我们用reflector来打开某游戏dll来看看

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第2张图片

会发现反编译失败,错误提示是这个dll不包含mz头文件, 然后我们用文本打开看看

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第3张图片

nz?

在ASCII码中L是92 M是93 N是94(最下方有ASCII表)

这个可以当成一个简单的算术题来做

加密方式data[0]-1  正常第一位是M,M的ASCII码是93 93-1是92  去ASCII码查一下知道92表示的是L

加密方式data[0]+1 正常第一位是M,M的ASCII码是93 93+1是94  去ASCII码查一下知道94表示的是M

这个nz明显就是做了加法

我们这里直接打开到文本改成MZ就Ok了

还有一种方式是改文件的hex代码

我们用vs选择二进制的方式打开这个加密的dll

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第4张图片

把4E 5A改成4D 5A就ok了,然后拽到reflector里就ok了

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第5张图片

unity逆向破解(一) 打开简单加密的Assembly-CSharp.dll_第6张图片

你可能感兴趣的:(unity逆向,unity,加密,破解,反编译,二进制)