ddisasm is a bi-directional disassembler-assembler.

It allows one to disassemble (not decompile) a binary, modiry the
assembly and then assemble it back into a binary.

In order to do this, it establises a sophisticated relation in a
clever version of prolog. (Which is insanely cool.)

It builds its dependencies statically, including "capstone", so you do
not need to install it separately.

It is written in souffle.
