Projects / The bastard disassembler

The bastard disassembler

The bastard disassembler is a disassembler written for x86 ELF targets on Linux. Other file formats/CPUs can be 'plugged in'. It has a command-line interface and is meant to be used as a backend or engine. Support for controlling the disassembler via pipes is provided. Note that this disassembler does not rely on libopcodes to do its disassembly. Rather, the 'libi386' plugin is a standard .so that can be reused by other projects.

Operating Systems

RSS Recent releases

Release Notes: Library signature recognition is now supported via the signatures plugin; control-flow graph generation and output of graphs in GDL format is now supported via the graph plugin. Both PE and AR file formats are supported. Autodecection of the target file format is now supported via a 'magic(5)'-style conf file as used by file(1). An ncurses front-end named 'bda' has been provided.

Release Notes: Fixes for build errors and disassembler bugs, new output plugins, system call recognition, new man pages, and new UNIX interpreter-style behavior (support for #! scripts).

  •  01 Dec 2001 00:41

Release Notes: Bugs in the disassembler (disp32, 0x0F bugs) have been fixed. A GUI frontend has been added to the main Makefile, and autogen/configure has been replaced with more simple, more reliable Makefiles.

  •  12 Nov 2001 14:57

Release Notes: This is very much a bugfix, "caveat compilor" release. The API function names have changed, and are now broken up into files in include/api. The docs have been munged with sed to reflect this, but no real attempt at redocumenting has been made for this release. Thus, in all cases where the documentation seems inaccurate, refer to the source and .bc scripts. Further, there is an experimental UI in src/sob. The UI was created with Glade and is far from complete. However, it is somewhat useable and permits niceties like DB browsing. The UI is to be considered extremely unsupported.

  •  11 Sep 2001 06:14

Release Notes: Bugs in the install process have been fixed (EiC and the DBs now behave correctly). ~/.bastard directory was added to store target DBs as they are being worked on. config.db was replaced with a ~/.bastard/cmd_history. Support for ~/.bastard/bastard.rc and /etc/bastard.rc added. CLI access to options using "SET" and "SHOW" was refined.


Project Spotlight


A Debian GNU/Linux and Apache Solr-based live system.


Project Spotlight


A modern software IP load balancer.