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,32or64for respectively 16, 32 and 63 bits).-osa<size>β specify the size of the operand size attribute (16,32or64for respectively 16, 32 and 63 bits).-m<size>β specify the addressing mode (16,32or64).-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-ipdoes 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 πΈ
π¦ where this page comes from
- debian bookworm: fcml 1.2.2-2 Β· LGPL-2.1-or-later
- debian trixie: fcml 1.3.0-1.1+b1 Β· LGPL-2.1-or-later
- ubuntu jammy: fcml 1.2.2-2 Β· LGPL-2.1-or-later
- ubuntu noble: fcml 1.3.0-1.1build1 Β· LGPL-2.1-or-later
- ubuntu questing: fcml 1.3.0-1.1build1
- ubuntu resolute: fcml 1.3.0-2 Β· LGPL-2.1-or-later
- ubuntu stonking: fcml 1.3.0-2 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms