Spices.Net Decompiler features

Feature Description
Multiple languages decompilation/disassembling Generates well-formed and optimized code for 3 languages: MSIL, C#, VB
Language features supported See the list of C#/VB language features supported
Well-formed and optimized code Generates well-formed code with syntax highlighting, indenting, folding (outlining) and active hints support
Own metadata access engine Uses own metadata access engine, that not crashes on incorrect MSIL
Visual Decompiler Visual Decompiler is one of the key Spices.Net novelties. Now the user may build a code flow diagram enabling to analyze the code execution.
All types of .Net assemblies Correctly decompiles all types of assemblies - managed (C#, VB.Net, Delphi.Net), CompactFramework and mixed code(managed c++) assemblies.
Any scope of decompilation/disassembling You can choose any scope for decompilation in the assembly browser
.Net versions, frameworks, platforms and technologies supported See the list
Output directions Spices.Net Decompiler can generate code for displaying in the Spices.Net syntax highlighted editor or output to files (with classes separation to namespaces or class names).
Multiple selection decompilation User can choose multiple selection of members for decompilation.
Whole assembly decompilation Whole assembly decompilation with resources and assembly information extraction is possible.
Optimizations/refactoring Can produce unoptimized(raw) code or optimized(refactored) code. Wide range of code optimization/refactoring procedures is constantly renewed.
Active hints Code generated and displayed in the Spices.Net is live - user can receive detailed info about member at mouse cursor and go to this member in the assembly browser.
Code outlining/folding Code golding/outlining is supported on all languages.
Supports all modifiers Supports all modifiers.
Supports all keywords Supports all keywords.
Complex Nested statements Recognizes complex statements such as iteration (for, while, foreach), condition (if, else if, if-else if-else) and switch statements.
Variables arrangement Arranges variables at their scope of usage.
Variable names extraction Extracts variable names from .PDB files (if avaialble).
COM/Interop/Unmanaged code Fully decompiles COM/Interop/Unmanaged code.
Unsafe code, pointers Marks as unsafe code with pointers.
Custom attributes Extracts all custom attributes information.
Method overloading, interface implementation, overriding recognition Recognizes method overloading, interface implementation, overriding.
Generics support Supports generics.
IDE's integration Spices.Net Decompiler fully integrates into Spices.Net and Visual Studio as part of Spices.VSIP.Net (Visual Studio Integration Package).
and more...