|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
 |
|
|
|
 |
 |
|
|
|
|
|
|
|
|
|
SourceAgain Features
SourceAgain represents a new standard in Java decompilation technology.
Previous efforts at Java decompilation have fallen short, but
SourceAgain correctly decompiles all language constructs, including (but
not limited to):
- if-else and switch
- infinite loops
- for loop reconstruction
- arbitrary nesting of do, while, and for
loops
- all breaks and continues, including labeled
breaks and continues out of arbitrary
enclosing scopes
- arbitrary assignment inside of conditionals, including pre-
and post-increments
- += and -= optimizations
- arbitrary nesting of try-catch blocks, with full
support for finally
- the ternary ? : operator
- implicit types (boolean, char, short,
byte)
- synchronized blocks
- inner classes, both anonymous and nested
- Unicode
SourceAgain also supports several unique capabilities, such as:
- Decompilation of irreducible flowgraphs.
- Temporary variable introduction
- Polymorphic type inferencece
- Correctly assembled array initializers.
- Recognition of packages.
- Reconstruction of string concatenation using the + operator.
- User defined naming conventions for variables and fields.
- A heuristic for renaming "fishy" variable names.
- Cross module name and type unmangling
- Creation of a new class file with the correct line number table
for debugging.
- Some pretty-printing code transformations.
- A smart heuristic for printing integers in hexadecimal.
- Easy to read, recompilable output.
- Insensitivity to the original compiler.
- Support for the ZIP file format
|
|
|
|
|
|
|
|
|
| Home | Company | Products | Sales | Support |
©2004 Ahpah Software, Inc. info@ahpah.com
|