Bytecode Worm is a C++ program that disassembles Java class
        files, directories of Java class files, or JARs with Java class files.
        The program is freely available under the
        GNU GPL.
    
    The disassembler reads Java class files and produces something
       similar to the original Java source file with JVM instructions instead
       of Java sources.
    Installation
    Download the binary.zip archive of the latest version (see
    Download page)
    and unpack it. You will get bcw.exe. That's all.
    Usage
    
      - To disassemble a single class file: 
          bcw.exe {your_class_file}.class {output_directory}
      
      - To disassemble a directory of class file (including all its 
          subdirectories): 
          bcw.exe {input_directory} {output_directory}
      
      - To disassemble a JAR archive: 
          bcw.exe {your_archive}.jar {output_directory}
      
    The program will write the disassembled files into the specifying 
    {output directory}. If the input directory or the input JAR contain
    files other than Java class files then the program just copies those files
    into the new location.
    Limitations
    
    The only know limitation: the program doesn't parse generics. In the
    output the generic types are presented by the result of their descriptors
    parsing (i. e. as in Java prior to 1.5).
    
    Feedback
    
    Your can report a bug or submit a feature request on
     the project's tracker page.