Home - Forums-.NET - Spices.Net - Something drastically wrong with AntiILDASM option ????

Spices.Net

NET code security, tools to protect, obfuscate, tamper defense, code and data safety, recover, convert, optimize, explore, browse and analyze .Net software.

This forum related to following products: Spices.Net Suite, Spices.Net Obfuscator, Spices.Net Decompiler

Something drastically wrong with AntiILDASM option ????
Link Posted: 04-Nov-2005 01:26
I wrote a simple console 'Hello World' program and obfuscated it using the [Members : Full] option and the [AntiILDASM : Complete] option.  

Lutz Roeder's Reflector effortly disassembles it.  Also mot of the time when I try and use any of the AntiILDASM option the obfuscation fails with an error saying something like :

Index was outside the bounds of the array.
   at \u15\u2.\u11.\u19(\uf , \u19 , \u2 , String , String , String , Byte[] )
   at \u15\u2.\u11.\u19(\uf , \u19 , \u2 , Hashtable , Boolean , Boolean )
   at \u15\u2.\u11.\u19(\uf , \u19 , Boolean , \u1 )
   at \u15\u2.\u11.\u12(\u1 , \uf , \u19 )
   at \u15\u2.\u11.\u19(String , \uf , \u19 , Boolean , Boolean )
   at \u16.\u16.\u16(String , \uf , \u19 , StringEncryptionMode , \u17 , Boolean )
   at \u16.\u16.\u16(Project )


Any Idea what I can do to fix this ?
Link Posted: 04-Nov-2005 10:42
I see that I can disassemble any thing protected by spices with Reflector, Including all of the Spices  dll and executables.  Thus I assume it is safe to say that the AntiILDASM simply does not work,  I will thus not attempt using that feature - rather write my code in such a fassion that it is difficult to follow after symbol obfuscation.
Link Posted: 15-Nov-2005 04:20
hy!!

i've the same problem. if using [AntiILDASM : Complete] or [AntiILDASM : Full] i get also an error:

Index was outside the bounds of the array.
   at \u18\u1.\u17.\u5(\ue , \u12 , \u1 , String , String , String , Byte[] )
   at \u18\u1.\u17.\u5(\ue , \u12 , \u1 , Hashtable , Boolean , Boolean )
   at \u18\u1.\u17.\u5(\ue , \u12 , Boolean , \u16 )
   at \u18\u1.\u17.\u16(\u16 , \ue , \u12 )
   at \u18\u1.\u17.\u5(String , \ue , \u12 , Boolean , Boolean )
   at \u16.\u16.\u16(String , \ue , \u12 , StringEncryptionMode , \u3 , Boolean )
   at \u16.\u16.\u16(Project )

my version is 4.5.5.9
Link Posted: 15-Nov-2005 15:40
Can you send us (to develop at 9rays.net ) original assembly (please zip) that produce this error to fix this problem?
Link Posted: 15-Nov-2005 21:42
hy!

i created a test project that produces the same error, i think the problem only occurs when using generics.

i've sent you an email with the dll file.
Link Posted: 16-Nov-2005 07:12
Thanks for your help,
corrected version is available for downloading (both of the problems -
antiILDASM and generics verification, are solved).
Link Posted: 10-Dec-2005 09:23
I have Spices.Net v4.5.6.0. Lutz Roeder's Reflector disassembled the
Assemblies Spices produced. I can see nearly all my source code on the Reflector's screen.

Does any one have solutions to stop Reflector disassembling?
Link Posted: 11-Dec-2005 13:44
Reflector can decompile only some parts of your assembly, you can't  receive full disassembly/decompilation of your assembly with Reflector.
Yes, Spices.Obfuscator prevents from disassembly and decompilation by most of decompilers (including Spices.Decompiler) but Reflector still can do it. To improve quality of decompilation use:
1. ObfuscationOptions.Naming = NonDisplayble (in this case names will generated with non-printable, incorrectly displayed symbols).
2. ObfuscationOptions.NamespacesRestructuring = AllTypesOneNamespace or EachTypeOneNamespace , in this case some "visible" releations between classes will breaked.
Also you can send us (develop[at]9rays.net) your assembly(please zip) and we'll give recommendations and assist to create optimal Spices.Project for your assembly obfuscation.