WABT(1)
π WABT(1) β the manual, bestie edition
okay so real talk, this page lives in the WABT(1) manual, and it's all about wasm-decompile, the little icon that takes your gnarly WebAssembly binary and hands you back something you can actually read. No cap.
β¨ NAME β¨
wasm-decompile β translate from the binary format to readable C-like syntax π¦
πΈ SYNOPSIS πΈ
wasm-decompile [options] file
π DESCRIPTION π
wasm-decompile reads a file in the WebAssembly binary format, and converts it to a decompiled text file. that's it, that's the whole glow-up β¨ binary in, C-like cuteness out.
the options are as follows, and yes we're going through all of them, no skipping, i don't play like that:
--helpβ prints a help message π«Ά--versionβ prints version information π-o,--output=FILENAMEβ where the decompiled file goes. by default it just uses stdout, so it'll spill right into your terminal π--enable-exceptionsβ enable Experimental exception handling--disable-mutable-globalsβ disable Import/export mutable globals--disable-saturating-float-to-intβ disable Saturating float-to-int operators--disable-sign-extensionβ disable Sign-extension operators--disable-simdβ disable SIMD support--enable-threadsβ enable Threading support--enable-function-referencesβ enable Typed function references--disable-multi-valueβ disable Multi-value--enable-tail-callβ enable Tail-call support--disable-bulk-memoryβ disable Bulk-memory operations--disable-reference-typesβ disable Reference types (externref)--enable-annotationsβ enable Custom annotation syntax--enable-code-metadataβ enable Code metadata--enable-gcβ enable Garbage collection--enable-memory64β enable 64-bit memory--enable-multi-memoryβ enable Multi-memory--enable-extended-constβ enable Extended constant expressions--enable-allβ enable all features π₯--ignore-custom-section-errorsβ ignore errors in custom sections
heads up bestie, notice how some of these are--enable-and some are--disable-? that's not a typo, that's literally the flag names. copy them exactly or the whole vibe check fails π
π EXAMPLES π
parse the binary file test.wasm and write the text file test.dcmp:
$ wasm-decompile test.wasm -o test.dcmp
look at her go. iconic behaviour, honestly π
π¦ SEE ALSO π¦
the whole friend group, all serving looks:
wasm-interp(1)wasm-objdump(1)wasm-stats(1)wasm-strip(1)wasm-validate(1)wasm2c(1)wasm2wat(1)wast2json(1)wat-desugar(1)wat2wasm(1)spectest-interp(1)
π BUGS π
if you find a bug, please report it at https://github.com/WebAssembly/wabt/issues β don't just suffer in silence, that's not the energy we're on π«Ά
and that's the whole page, babe. this one ships from Debian, stamped with $Mdocdate$, and it's filed under WABT(1). go decompile something cute πβ¨
π¦ where this page comes from
- debian trixie: wabt 1.0.36+dfsg+~cs1.0.36-2 Β· Apache-2.0
- fedora 43: wabt 1.0.37-2.fc43 Β· Apache-2.0
- fedora 44: wabt 1.0.39-2.fc44 Β· Apache-2.0
- fedora 44: wabt 1.0.40-1.fc44 Β· Apache-2.0
- nixos 26.05: wabt 1.0.41
- nixpkgs unstable: wabt 1.0.41
- ubuntu noble: wabt 1.0.34+dsfg2+~cs1.0.32-1ubuntu2 Β· Apache-2.0
- ubuntu resolute: wabt 1.0.36+dfsg+~cs1.0.36-2ubuntu1 Β· Apache-2.0
- ubuntu stonking: wabt 1.0.36+dfsg+~cs1.0.36-2ubuntu4 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms