Tiny Online Tools logoTiny Online ToolssearchBuscar herramientas…grid_viewTodas las herramientas
Iniciochevron_rightHerramientas de ingeniería inversachevron_rightDescompilador WASMDescompilador WASM

Descompilador WASM

Convierte un binario WebAssembly en texto WAT legible, con un grafo de llamadas por función, forma de flujo de control y una estimación de la cadena de compilación.

upload_file

Haz clic para buscar o arrastra y suelta archivos aqui

Suelta un archivo .wasm para descompilarlo

Aceptado: .wasm

Herramientas similares

Analizador de Tamaño WASM

Analizador de Tamaño WASM

Descubre qué funciones y segmentos de datos dominan el tamaño de un módulo WebAssembly, con un desglose exacto ordenado y un mapa de árbol visual.

Visualizador de Importaciones/Exportaciones WASM

Visualizador de Importaciones/Exportaciones WASM

Descubre qué necesita un módulo WebAssembly de su anfitrión y qué ofrece a cambio, agrupado por espacio de nombres, lado a lado.

Explorador Binario WASM

Explorador Binario WASM

Explora las secciones, funciones, importaciones, exportaciones, memorias, tablas y globales de un módulo WebAssembly con desplazamientos y tamaños exactos en bytes.

Ofuscador de JavaScript

Ofuscador de JavaScript

Renombra variables locales, oculta cadenas de texto y aplana el flujo de control en JavaScript, todo en tu navegador, sin subir nada.

Invertir Texto

Invertir Texto

Invierte los caracteres de una cadena de texto.

Generador de favicon

Generador de favicon

Genera todos los tamaños de favicon a partir de cualquier imagen, con fragmentos de etiquetas HTML listos para usar.

PDF a WebP

PDF a WebP

Convierte páginas PDF en imágenes WebP de alta calidad dentro de tu navegador.

apps

Mas herramientas

Explora nuestra coleccion completa de herramientas gratuitas en linea.

Un binario .wasm no está pensado para leerse directamente, pero puede convertirse a WAT, el formato de texto legible de WebAssembly, y analizarse estructuralmente más allá del flujo de instrucciones. El Descompilador WASM hace ambas cosas, todo en tu navegador.

Seamos claros sobre lo que esto es y no es. Esta herramienta no recupera el código fuente original en Rust, C o C++ — esa información desaparece una vez que el compilador genera WASM. Lo que sí recupera con precisión:

  • Desensamblado WAT completo, producido por wabt (el WebAssembly Binary Toolkit), con nombres de depuración aplicados cuando el módulo lleva una sección "name".
  • Un grafo de llamadas, construido recorriendo el bytecode real de cada función en busca de instrucciones call y call_indirect — no adivinado a partir del texto WAT. Un call_indirect muestra qué firma de tipo de función apunta, nunca una función concreta adivinada, porque el objetivo real solo se resuelve en tiempo de ejecución — eso es un hecho estructural del código, no una limitación de esta herramienta.
  • Forma del flujo de control por función: profundidad máxima de anidamiento de block/loop/if, y el conteo de cada uno, dando una idea aproximada de cuán compleja es estructuralmente una función sin necesitar un grafo de flujo de control completo.
  • Una estimación de la cadena de compilación basada en evidencia — "probablemente Rust", "probablemente Emscripten (C/C++)" o "probablemente AssemblyScript" — basada en evidencia real y verificable: los prefijos de símbolos mangled de Rust, las importaciones características del runtime de Emscripten (emscripten_*, __cxa_*, __wasm_call_ctors), o las cadenas de ruta ~lib/ de la biblioteca estándar de AssemblyScript encontradas en los segmentos de datos del módulo. La herramienta siempre muestra la evidencia específica que encontró y formula el resultado como "probablemente" — nunca una certeza, y nunca una suposición sin nada detrás.

Una función cuyo bytecode usa una instrucción fuera del conjunto de opcodes que modela la herramienta (SIMD, atómicos, operaciones de memoria masiva) se marca como "desensamblado parcial" en lugar de mostrarse silenciosamente como completa — la honestidad sobre los límites del análisis importa más que un resultado prolijo.

Útil para auditar la estructura de un módulo .wasm de terceros, entender cómo se llaman entre sí sus funciones, o hacerse una primera idea de un binario desconocido antes de un análisis más profundo.