[lutz@kasperletheater] [0:26:20] [~/Projects/disasm] $ cat disas.py import x86disasm disassembler = x86disasm.X86_Disasm() data = "\x90\x90\xcd\x80\cafebabe" disassembled = 0 while disassembled < len(data): insn = disassembler.disasm( data, 0 , disassembled) if insn.size == 0: break print disassembled, insn.format( x86disasm.att_syntax) disassembled += insn.size [lutz@kasperletheater] [0:26:21] [~/Projects/disasm] $ python disas.py 0 nop 1 nop 2 int $0x80 4 pop %esp 5 arplw %sp, 102(%ecx) 8 boundl %gs:98(%ecx), %esp 12 invalid