Please note this page is massively out of date...

Here are some example decompilations:

TestApp 1OriginalDecompiled
ArithExp_ReplaceOriginalDecompiled

Here's a list of known issues with the decompiler at the moment:

  • Extraneous local assignments generated for returns
  • String concatenations created using object array
  • Objects inheriting from 'object' make inheritance explicit
  • Overuse of 'this' keyword when not needed to resolve scope
  • No detection of appropriate namespaces to import

Below is a list of how well the decompiler can cope with each of its own classes

AboutForm.csNo decompilation
Access.csNo decompilation
AccessModifier.csNo decompilation
ActualParam.csNo decompilation
Argument.csNo decompilation
ArithExp.csRecompilable, shows string concatenation and return variable issues
ArrayElement.csNo decompilation
Asgn.csRecompilable, shows string concatenation, return variable and inheriting from object issues
AssemblyInfo.csNo decompilation
BiOp.csRecompilable
Block.csNo decompilation
BlockProcessor.csNo decompilation
BlockRef.csNo decompilation
BoolExp.csNo decompilation
BoolOp.csNo decompilation
Break.csNo decompilation
BytecodeReader.csNo decompilation
CSharpWriter.csNo decompilation
CallBlock.csNo decompilation
CallExp.csNo decompilation
Class.csNo decompilation
ClassType.csNo decompilation
CodeBlock.csNo decompilation
CondData.csNo decompilation
CondExp.csNo decompilation
Conditional.csNo decompilation
Constant.csNo decompilation
Constructor.csNo decompilation
ControlFlowAnalyser.csNo decompilation
DataFlowAnalyser.csNo decompilation
Domain.csNo decompilation
DomainModifier.csNo decompilation
ExceptionCatch.csNo decompilation
ExceptionData.csNo decompilation
Expression.csNo decompilation
FallBlock.csNo decompilation
Field.csNo decompilation
FieldExp.csNo decompilation
FieldId.csNo decompilation
FieldName.csNo decompilation
Goto.csNo decompilation
Identifier.csNo decompilation
Inst.csNo decompilation
InstList.csNo decompilation
Instruction.csNo decompilation
IntOp.csNo decompilation
Interval.csNo decompilation
JavaReader.csNo decompilation
Jcond.csNo decompilation
Jmp.csNo decompilation
Local.csNo decompilation
LocalVar.csNo decompilation
Loop.csNo decompilation
LoopData.csNo decompilation
LoopType.csNo decompilation
MSILReader.csNo decompilation
MainForm.csNo decompilation
Member.csNo decompilation
MemberBuilder.csNo decompilation
Method.csNo decompilation
MethodModifier.csNo decompilation
MiscExp.csNo decompilation
MiscOp.csNo decompilation
NWayBlock.csNo decompilation
NoneOp.csNo decompilation
OneWayBlock.csNo decompilation
Operator.csNo decompilation
OperatorType.csNo decompilation
Operators.csNo decompilation
Ops.csNo decompilation
ParamType.csNo decompilation
Parameter.csNo decompilation
Params.csNo decompilation
Pop.csNo decompilation
ProcId.csNo decompilation
ProcName.csNo decompilation
Push.csNo decompilation
Recomposer.csNo decompilation
Reference.csNo decompilation
Register.csNo decompilation
RelOp.csNo decompilation
Ret.csNo decompilation
RetBlock.csNo decompilation
SourceWriter.csNo decompilation
Statement.csNo decompilation
Switch.csNo decompilation
SwitchCase.csNo decompilation
Sys.csNo decompilation
SysOp.csNo decompilation
TriOp.csNo decompilation
TryCatch.csNo decompilation
TwoWayBlock.csNo decompilation
TypeRef.csNo decompilation
UnOp.csNo decompilation