Вы можете использовать libbfd и libopcodes, которые являются библиотеками, распространяемыми как часть binutils.
http://www.gnu.org/software/binutils/
В качестве примера возможностей этих библиотек, посмотрите Online Disassembler (ODA).
http://www.onlinedisassembler.com
ODA поддерживает множество архитектур и предоставляет базовый набор функций. Вы можете ввести двоичные данные в режиме Live View и наблюдать, как дизассемблируется, когда вы печатаете, или вы можете загрузить файл для дизассемблирования. Приятной особенностью этого сайта является то, что вы можете поделиться ссылкой на разборку с другими.