fcml-disasm(1)

πŸ’– fcml-disasm πŸ’– β€” the single-line disassembler (General Commands Manual, bestie, that's the whole vibe)

okay so imagine you have some raw machine code and you're like "what even IS this" β€” that's literally what this lil icon does 🫢


✨ NAME ✨

fcml-disasm β€” single-line disassembler. that's it. that's the name. short, sweet, slays.


πŸŽ€ SYNOPSIS πŸŽ€

fcml-disasm [-s] [-e] [-rc] [-rh] [-rz] [-rs] [-gas] [-asa<size>]
[-osa<size>] -m<size> -ip <address> <code>

🌸 DESCRIPTION 🌸

fcml-disasm is a single-line disassembler for Intel iAPx86, IA-32 and EM64T CPUs, plus compatible CPUs from other manufacturers. so like, not just Intel's own babies β€” the lookalikes get love too πŸ’…

and here's the part that's genuinely giving main character energy: it shows you all possible interpretations of the machine code you hand it. not one answer. ALL of them. because machine code is ambiguous and honestly? relatable. 😭


✨ OPTIONS ✨

fcml-disasm accepts the following options:

  • -s β€” prefer short instruction forms. keep it cute, keep it compact πŸŽ€
  • -e β€” extend displacement sizes to address size attribute.
  • -rc β€” render instruction code.
  • -rh β€” render immediate values and displacements as hexadecimal.
  • -rz β€” remove leading zeroes. (not the zeroes slaying, the zeroes padding. we're cleaning house ✨)
  • -rs β€” render segment prefixes even when they are optional. yes, even the optional ones. no skipping.
  • -gas β€” use GNU Assembler dialect (also known as AT&T). the Intel dialect is used by default, iykyk πŸ‘‘
  • -asa<size> β€” specify the size of the address size attribute (16, 32 or 64 for respectively 16, 32 and 63 bits).
  • -osa<size> β€” specify the size of the operand size attribute (16, 32 or 64 for respectively 16, 32 and 63 bits).
  • -m<size> β€” specify the addressing mode (16, 32 or 64).
  • -ip <address> β€” specify the instruction pointer address (IP, EIP or RIP). know your place bestie, literally, in memory πŸ’œ
heads up: <size> goes in with the flag β€” no space, like -m64. and -ip does take a space before the <address>. the way they're formatted differently is lowkey chaotic but that's the assignment 🀷

πŸ’– AUTHORS πŸ’–

fcml-disasm was written by Slawomir Wojtasiak. absolute legend, no cap 🫢

this manual page was written by Stephen Kitt <skitt@debian.org>, for the Debian GNU/Linux system (but may be used by others). sharing is caring, periodt ✨


and that's the whole page bestie!! this lil manual came from the fcml fam and it's dated February 2, 2015 β€” an elder, but a gorgeous one πŸ’…πŸ¦‹ go disassemble something and think of me 🌸