View Single Post
  #5  
Old 04-25-2008, 07:59 PM
MOID MOID is offline
Junior Member
 
Join Date: Sep 2007
Posts: 1
Default

Good:
  • String decryption.
  • Renaming. I like that it has button1_Click, is that automatic?
Bad:
  • Control flow deobfuscation
Sometimes control flow deobfuscation doesn't work and leaves obfuscated code (for instance Namespace_02.Class_02.ctor), sometimes it leaves broken code! For example Namespace_02.Class_02.Method_02 in your version:
Code:
public static byte[] Method_02()
{
    // This item is obfuscated and can not be translated.
    byte[] destinationArray = new byte[Field_08.Length];
    Array.Copy(Field_08, destinationArray, Field_08.Length);
    int num = 0;
    if (num >= destinationArray.Length)
    {
        return destinationArray;
    }
}
Good version:
Code:
public static byte[] Method_2()
{
    byte[] destinationArray = new byte[Field_8.Length];
    Array.Copy(Field_8, destinationArray, Field_8.Length);
    for (int i = 0; i < destinationArray.Length; i++)
    {
        destinationArray[i] = (byte) (destinationArray[i] ^ 0x40);
    }
    return destinationArray;
}
Here's my deobfuscated version of LibX's crackme, with my control flow deobfuscator and Kurapica's renamer:
http://rapidshare.com/files/110427787/my_TestRun.exe
Reply With Quote