An assembler and disassembler for the JVM (Java Virtual Machine)
...The disassembler takes binary Java class files and creates out of them assembler files suitable for the assembler.
In general (except for some very rare cases) Lilac tools allow a perfect round-trip, that is, if you disassemble a class file and then assemble it again, without making any changes, you'll get the original file.