Star on GitHubStar1.1k stars

Tool

WasmLens: exploratory WebAssembly inspection

Python CLI with static paths for inspecting WebAssembly sections and function signatures, producing WAT-style instruction listings, and reconstructing limited C-like pseudocode. These are exploratory analysis aids for supported modules, not recovered original source or a complete WebAssembly runtime.

Targets
Binary
Category
WebAssembly tools
Relationship
Foundation tool
Sources reviewed

Requirements & limits

  • The reviewed package declares version 0.1.0 and Python >=3.10, with Typer, Rich, FastAPI, Uvicorn, Pydantic, NetworkX and python-multipart dependencies; pytest/httpx are development extras. The source includes an MIT LICENSE. Dependency lower bounds are declared.
  • The info, disasm and decompile commands read a supplied .wasm file through the same parser. That parser has no 0xFD SIMD decoding branch and may label unsupported opcodes as unknown.
  • The WAT-style module listing is not a lossless reassembly format: data segments are reduced to previews of up to 32 bytes and active offsets use a placeholder. The C-like reconstructor has no general fallback for unhandled instructions, uses only the first result type, and expresses branch labels in comments.
  • Its dispatch lacks handlers for operations including floating-point arithmetic and indirect calls, and an unhandled instruction can advance the program counter without implementing its effect.
  • Supply only modules you are permitted to analyze.

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  2. pyproject.toml GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  3. LICENSE GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  4. src/wasmlens/cli/main.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  5. src/wasmlens/parser/module.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  6. src/wasmlens/parser/section_parser.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  7. src/wasmlens/parser/opcodes.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  8. src/wasmlens/disassembler/wat_formatter.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  9. src/wasmlens/decompiler/reconstructor.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  10. src/wasmlens/decompiler/ast.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  11. src/wasmlens/emulator/vm.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  12. tests/test_decompiler.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc
  13. tests/test_parser.py GitHub · alexandrmotologa/wasmlens · Revision 2351ccc

More in Websites

All 61 entries in Websites

↑↓ move↵ open⌘↵ new tab