Decompiler-VB.Net
ES
Iniciar sesión
VBReFormer Gen2 Motor reescrito por completo, P-code íntegro y el estudio en línea en beta pública. Leer el anuncio
Documentación
VBReFormer Online

Manual de VBReFormer Online

Manual de uso de VBReFormer Online: soltar un ejecutable VB6 en el navegador, explorar su código reconstruido, descargar un proyecto recargable en el IDE.

Actualizado el 20/9/202611 capítulos

El estudio en su navegador. Suelta un ejecutable Visual Basic 5 o 6, explora su código reconstruido y se marcha con un archivo comprimido que el IDE de VB6 vuelve a abrir. Nada que instalar, en cualquier sistema — incluidos macOS, Linux y los Windows demasiado antiguos para la aplicación de escritorio.

1. Abrir el estudio

No hay nada que instalar, nada que configurar y ninguna cuenta que crear para empezar: abra la dirección del estudio en un navegador reciente, y ya está dentro.

  • Cualquier sistema — el estudio solo depende del navegador. Es la única forma de usar VBReFormer desde un Mac, un equipo Linux o un Windows anterior a 10.
  • Once idiomas — el estudio web se sirve en once idiomas, casi cuatro veces más que la aplicación de escritorio. El selector está en la cabecera.
  • Tema claro u oscuro — el estudio sigue el ajuste de su sistema, y puede forzarlo (Claro / Oscuro).

Français · English · Español · Deutsch · Italiano · Português · 日本語 · 简体中文 · Українська · हिन्दी · العربية

2. Soltar un binario

  1. Marque la declaración. El estudio le pide que declare que es propietario del programa, o que tiene derecho a analizar su código. Es una condición de uso, no una formalidad.
  2. Suelte el archivo. Arrástrelo a la zona prevista, o examine sus archivos. Formatos aceptados: .exe, .dll, .ocx. Tamaño máximo: 64 MB — el límite se muestra en pantalla en lugar de descubrirse tras una subida fallida.
  3. Deje que el análisis se desarrolle. El estudio anuncia cada etapa por su nombre, con un contador: Recibiendo el archivo → Analizando el binario → Descompilando → Inventariando los símbolos → Grafo de llamadas → Flujo de control.

La duración depende del tamaño y de la naturaleza del binario. Como referencia, un ejecutable de 9,35 MB pasa de la apertura al proyecto escrito en una docena de segundos.

Una vez terminado el análisis, el estudio también le dice la naturaleza de lo que ha encontrado: código nativo, P-code, o naturaleza indeterminada.

3. Qué ocurre con su archivo

El archivo se analiza y luego se borra con su sesión. No se conserva nada.

Está escrito en la página de depósito, y es el funcionamiento real: su binario se procesa mientras dura su sesión de trabajo, y desaparece con ella. No se archiva, no se indexa, no se reutiliza.

Lo que también implica. Su trabajo no sobrevive a la sesión. Si cierra la pestaña o la sesión caduca, hay que volver a soltar el binario. Descargue su archivo comprimido antes de irse. Un reinicio del servicio también desconecta las sesiones en curso — sin riesgo para su archivo original, que está en su máquina, pero perderá la exploración en curso.

Si la confidencialidad de su binario es una cuestión contractual, sepa que la edición Desktop procesa localmente todo lo que corresponde a la lectura del archivo — formato, bytes, desensamblado, recursos — y solo envía al servicio lo que corresponde a la reconstrucción.

4. Cuatro formas de entrar en un binario

El panel izquierdo ofrece cuatro entradas, y responden a cuatro preguntas distintas.

pestaña la pregunta a la que responde
Proyecto «¿Cómo está organizado este programa?» — el árbol de formularios, clases, módulos y sus procedimientos, tal como VB6 lo veía.
Símbolos «¿Dónde está definido esto?» — el inventario completo, con la naturaleza y el contenedor de cada símbolo. Distingue los nombres leídos de los nombres sintetizados, lo que le dice de entrada de qué puede fiarse.
Búsqueda «¿Dónde aparece este texto?» — tanto en el código reconstruido como en las secciones del diseñador.
Recursos «¿Qué hay además de código?» — iconos, cursores, mapas de bits, tablas de cadenas, información de versión, con su tipo, su tamaño y su contenido. Servido sin licencia: un recurso se lee, no se reconstruye.

En el árbol, cada miembro lleva su visibilidad tal como el binario la declara — (Public), (Private), (Friend). Un miembro cuya visibilidad no se ha podido leer no lleva ninguna marca: no se escribe lo que no se sabe.

Renombrar

El estudio web permite renombrar los símbolos, y el renombrado es global: los sitios de llamada de los demás módulos siguen. Es el gesto central del trabajo sobre un binario — el descompilador le devuelve la lógica, usted le devuelve los nombres.

5. Las vistas

Siete vistas, y el propio estudio dice, bajo cada una, lo que muestra y si requiere licencia.

vista lo que muestra licencia
Fuente el código VB6 reconstruido vista previa sin licencia
IR lo que ve el descompilador antes de reconstruir el flujo vista previa sin licencia
Ensamblador código máquina x86, símbolos resueltos servida entera
P-code opcodes de la máquina virtual VB6 servida entera
Diseñador la sección del diseñador del formulario servida entera
Proyecto el .vbp reconstruido servida entera
Estructura las estructuras del formato tal como se han leído servida entera

La línea que separa. Lo que se lee en su archivo es gratuito; lo que se reconstruye se vende. El desensamblado, la estructura, el diseñador y el .vbp salen de tablas presentes en su ejecutable. La fuente VB6, en cambio, no existe en ninguna parte — hay que reconstruirla, y ese trabajo es el producto.

Bajo el código, el estudio muestra también lo que el descompilador señala para el procedimiento actual: los diagnósticos, es decir, lo que no ha podido hacer y por qué. Es el reflejo que hay que tener en cuanto un resultado sorprende.

6. Lo que la compilación conserva, y lo que desecha

Este capítulo explica por qué sus formularios salen muy legibles y sus módulos .bas con nombres técnicos. La regla es sencilla:

Lo que Visual Basic necesita durante la ejecución, lo escribió en el archivo: VBReFormer lo recupera. Lo que ya no necesitaba después de la compilación, lo desechó — y nadie puede recuperarlo.

Lo que sobrevive: nombres de formularios, clases y módulos · nombres de los controles · manejadores de eventos · miembros públicos de las clases · propiedades de interfaz · llamadas al runtime de VB (635 funciones) · API Win32 (15 680 firmas) · la estructura del código · las cadenas.

Lo que no está en el archivo: los comentarios · los nombres de las variables locales · los nombres de los parámetros · las constantes con nombre, sustituidas por su valor · los nombres de los procedimientos de módulos .bas · la sangría original.

Un ejemplo verificable

El extracto siguiente procede de SETUP1.EXE, el asistente de instalación entregado con Visual Basic 6 — cuyo código fuente distribuye Microsoft. La comparación puede, por tanto, rehacerla cualquiera que tenga VB6.

Fuente original, COMMON.BAS:

Sub AddDirSep(strPathName As String)
    If Right(Trim(strPathName), Len(gstrSEP_URLDIR)) <> gstrSEP_URLDIR And _
       Right(Trim(strPathName), Len(gstrSEP_DIR)) <> gstrSEP_DIR Then
        strPathName = RTrim$(strPathName) & gstrSEP_DIR
    End If
End Sub

Generado por VBReFormer:

Public Sub proc_42C506(ByRef arg_8 As String)
    If ((Right(Trim(arg_8), Len("/")) <> "/") And (Right(Trim(arg_8), Len("\")) <> "\")) <> 0 Then
        arg_8 = (RTrim$(arg_8) & "\")
    End If
End Sub

Lógica idéntica, línea por línea. Right, Trim, Len, RTrim$ tienen nombre; el paso ByRef se deduce. En cambio, el nombre del procedimiento y el del parámetro se han perdido, y las constantes aparecen con su valor — las sustituyó el compilador, no VBReFormer.

Los marcadores

VBReFormer nunca adivina: un valor que no puede establecerse se marca en lugar de inventarse.

marcador significado qué hacer
proc_42C506 procedimiento designado por su dirección renombrarlo — el nombre se propaga
var_18, arg_8 variable local o parámetro leer su uso, luego renombrar
? valor no establecido consultar la vista Ensamblador en el mismo punto

Un archivo que contenga un ? será rechazado por el IDE de VB6. El marcador está ahí para que usted decida, no para recompilarse tal cual. Un valor verosímil y falso es el peor resultado que un descompilador puede producir.

7. Los grafos

Dos grafos, y no cuentan la misma historia.

  • Llamadas — quién llama a qué: la arquitectura del programa. Filtros Llamadores, Llamados o Ambos, y una opción para ocultar los nodos aislados.
  • Flujo — por dónde pasa la ejecución: los bloques, la entrada, las cabeceras de bucle, los retornos de bucle y los bloques marcados INALCANZABLE.

Cinco formas de leer un bloque

Seleccione un bloque del grafo y elija lo que quiere ver en él: Forma, IR, VB6, Ensamblador o P-code. Es la misma porción de programa, a cinco niveles de lectura.

La honestidad del renderizado. El estudio indica cuántos bloques están anclados sobre las líneas del listado, y cuántos están sin dirección probada — sus instrucciones caen entonces en el tramo anterior. Así sabe qué parte de la división es segura.

Los grafos requieren licencia: quién llama a qué y por dónde pasa la ejecución es la arquitectura del programa. El desensamblado y la estructura siguen abiertos sin ella.

8. La vista previa y la licencia

Sin licencia, la vista Fuente no se le niega: se muestra parcialmente enmascarada. Ve la estructura, los nombres recuperados y la calidad real de la reconstrucción — sobre su propio binario — antes de pagar nada.

Es una decisión deliberada: un visitante que no ve nada no puede juzgar. Y si una suscripción caduca, ve lo que recuperaría en lugar de una puerta cerrada.

Un puesto a la vez

Una licencia VBReFormer abre un puesto a la vez — y un navegador cuenta como un puesto. Si la suya trabaja en otro sitio, el estudio le propone transferirla aquí desde su cuenta, o añadir un puesto. Es un rechazo suave: usted ha pagado, no le falta nada.

9. Descargar sus fuentes

El panel de entrega produce un archivo .zip que contiene el .vbp y sus archivos — .bas, .cls, .frm — escritos en ANSI, como el IDE los espera. El panel anuncia el número de archivos y el peso antes de la descarga.

Lea las notas antes de abrir el proyecto

El estudio muestra «Lo que no se ha podido reconstruir», con un por qué para cada entrada. Cierta información — las referencias externas, las opciones de compilación, el modo de arranque — no está en ninguna estructura del binario: no se borró, nunca estuvo ahí. Se señala, por tanto, en lugar de inventarse.

En el IDE, si falta una referencia, añádala por Proyecto ▸ Referencias. Los eventuales marcadores ? hay que tratarlos a mano.

El panel propone a continuación analizar otro binario: la sesión vuelve a empezar de cero, y el archivo anterior se borra.

10. ¿Online o Desktop?

Las dos ediciones comparten el mismo motor y producen el mismo código. No sirven al mismo uso.

Online Desktop
Instalación ninguna MSI, Windows 10+
Sistemas todos Windows 10 y 11
Idiomas de la interfaz 11 3
Árbol, símbolos, búsqueda, renombrado
Las siete vistas
Grafos de llamadas y de flujo
Exportación del proyecto ✔ (zip) ✔ (carpeta)
Vista hexadecimal anotada
Recursos: inventario y contenido
Recursos: extracción a archivo
Diseñador pintado, exportación de imagen (sección solo en texto)
Parches binarios
Referencias cruzadas
Object Browser, API Browser
Marcadores, opciones de renderizado
El trabajo sobrevive a la sesión
Facturación créditos suscripción

En resumen — Online para abrir un binario, entender lo que hace y marcharse con las fuentes. Desktop para trabajar mucho tiempo sobre un binario: bytes, recursos, referencias cruzadas, parches, y un trabajo que no desaparece al cerrar la pestaña.

11. Preguntas frecuentes

¿Se conserva mi binario? No. Se analiza y luego se borra con su sesión. Véase el capítulo 3.

Mi archivo pesa más de 64 MB. Es el límite del estudio, anunciado antes del depósito. Para un binario más grande, la edición Desktop no tiene esa restricción de subida.

¿Dónde están los recursos del binario? En la pestaña Recursos, a la izquierda — sin licencia. Allí ve cada entrada con su tipo y su tamaño, y su contenido al abrirla: la imagen se pinta, el texto se muestra, y el resto se enseña en bytes en lugar de ocultarse. La extracción a archivo, en cambio, es propia de la edición Desktop, como la vista hexadecimal.

¿Por qué el código se detiene en mitad de un procedimiento? Es la vista previa: sin licencia, la edición gratuita muestra la estructura, los nombres y el desensamblado completo, pero el cuerpo reconstruido requiere licencia.

He cerrado la pestaña y lo he perdido todo. El trabajo no sobrevive a la sesión. Descargue el archivo comprimido antes de irse; el binario, en cambio, sigue en su máquina.

¿El código exportado se recompila tal cual? A menudo: en un banco de 149 proyectos, 121 se recompilan sin retoques. Los demás piden añadir una referencia o tratar algunos marcadores.

Mi ejecutable está comprimido (packer). Hay que descomprimirlo antes, si no las estructuras VB6 no son visibles en el archivo.

¿Es legal? Depende de su jurisdicción y de sus derechos sobre el binario — es el sentido de la declaración marcada en el depósito. El uso previsto es la recuperación de su propio código, o de un código sobre el que posee los derechos o una autorización.