Decompiler-VB.Net
BR
Entrar
VBReFormer Gen2 Motor reescrito do zero, P-code completo e o estúdio on-line em beta público. Ler o anúncio →
Início

Produto

VBReFormer, o descompilador VB nativo e P-Code para suas aplicações VB5 e VB6

Geração 2: a descompilação nativa e P-Code mais avançada. O motor interpreta o código de máquina e o P-Code, os dois modos de compilação do VB6, em vez de reconhecer padrões. Ele recupera o código-fonte, os formulários e os recursos de um EXE, DLL ou OCX e reconstrói um projeto que abre no IDE. Em um binário de referência de 9,35 MB: 1.976 procedimentos escritos, 0 corpos vazios, 0 marcadores de erro, em 12 segundos.

746.139+ downloads 27 anos de experiência
.exe.dll.ocx.scrVB5 VB6 código nativo e P-Code

Confiam em nós

e órgãos públicos, laboratórios de defesa e universidades em cinco continentes


Exemplo de código descompilado

Private Sub Form_Load()

Dim nRetVal As Long

Dim sBuffer As String

nRetVal = GetProfileStringA(

"Settings", "Language", "EN",

sBuffer, 255)

If nRetVal > 0 Then

Me.Caption = sBuffer

End If

End Sub

Geração 2 · Todas as edições

O descompilador nativo e P-Code mais avançado

O descompilador da geração 2 não reconhece padrões: ele interpreta o código, incluindo registradores, memória virtual e pilha da FPU, e depois o traduz de volta em Visual Basic legível. Ele trata igualmente código nativo e P-Code, os dois modos de compilação do VB6, e sua saída é medida em relação ao código-fonte original.

  • Interpretação abstrata do código de máquina, no lugar do reconhecimento de padrões
  • 1.164 instruções P-Code definidas, 1.158 traduzidas para VB6
  • Reconstrói chamadas de runtime (MSVBVM60.dll)
  • 15.680 declarações de API Win32, 6.442 constantes, 422 tipos
  • Inferência de tipos, nomes recuperados, limites de arrays, tabelas de salto Select Case
  • Quatro perfis de otimização do VB6 cobertos e medidos separadamente
Observação: a partir do VBReFormer 7, tanto P-Code quanto código nativo são descompilados. A geração anterior reconstruía apenas o código nativo.

90 % do código-fonte recuperado em média. Os nomes de variáveis locais e os símbolos privados não são armazenados no binário e ficam fora desse número.

Medido em um binário de referência de 9,35 MB, comparado com seu código-fonte original

Geração 1 Gen2 (V7)
Procedimentos escritos na exportação 1 799 1 976
Corpo vazio onde o original não está vazio 229 0
Marcadores de erro deixados no código renderizado 1 129 0
Assinaturas renderizadas como “As Unknow” 75 014 0
Abrir → projeto escrito ≈ 88 s 12 s

121 dos 149 projetos de um banco de testes recompilam sem alterações no IDE do Visual Basic 6.

Uma licença cobre as duas gerações: o VBReFormer 7 (Windows 10 e 11) e a geração 1 (Windows XP a 11) são baixados da mesma conta.

Ver a cobertura, função por função
Geração 2 · Todas as edições

Em torno do descompilador: análise e navegação

O código renderizado vem com suas ferramentas: desassemblador x86 e P-Code, grafos de chamadas e de fluxo de controle, inventário de símbolos, renomeação global, visualização hexadecimal. O que o motor leu e o que ele sintetizou permanecem distintos.

Desassembly de código de máquina → assembly
Grafo de chamadas – três escalas, filtros de chamador / chamado
Grafo de fluxo de controle, blocos inalcançáveis incluídos
Inventário de símbolos – nomes lidos versus nomes sintetizados
Renomeação global – os pontos de chamada em outros módulos acompanham
Visualização hexadecimal anotada e patches binários
Inferência de tipos, propagada a corpos e condições
Cabeçalhos que o VB6 exige para reabrir um arquivo
Todas as edições

Extração do design da interface

O VBReFormer extrai todos os artefatos de design visual do seu binário compilado, mesmo sem os arquivos originais do projeto.

  • Extrai o arquivo de projeto VB (.vbp)
  • Extrai formulários e controles (.frm, .ctl, .pag)
  • Extrai recursos binários (.frx, .ctx, .pgx)
  • Identifica todos os componentes externos COM, OLE e ActiveX
  • Extrai imagens e ícones incorporados

Saída reconstruída

Form1.frm — main form extracted

Form1.frx — binary resources

Module1.bas — standard module

Class1.cls — class module

UserCtrl.ctl — user control

Project.vbp — project file

Exclusivo · Todas as edições

Editor de Design de Interface Compilada

A única ferramenta do mercado que permite editar uma interface VB5/VB6 compilada sem nenhuma limitação de tamanho. Altere propriedades de controles, corrija legendas, substitua imagens – tudo diretamente no binário compilado.

  • Edite propriedades de controles no binário compilado
  • Sem limitação de tamanho (recurso exclusivo)
  • Substitua bitmaps e ícones incorporados
  • Adicione propriedades ocultas sem recompilação
  • Exporte recursos individuais para reutilização

A edição dentro do binário é feita pela geração 1, fornecida com a licença. A geração 2 lê a superfície de um formulário e todas as suas propriedades, sem ainda gravá-las de volta.

Propriedades editáveis

Caption "My Application v2.1"
BackColor &H00FFFFFF&
Font.Name "Arial"
Font.Size 12
Width 5280
Height 3840
Icon [binary resource]

Edições

Comparação de recursos

Todas as edições incluem todos os recursos técnicos. A diferença está no escopo da licença – o tamanho da organização beneficiária.

Edições

Small Business

Home / Education

79 €

Popular

Medium Business

10–249 Tamanho máximo da organização

349 €

Large Business

Gov · Military · 250+

799 €

Descompilador (P-Code e código nativo)
Reconstrução de código de máquina → Visual Basic
Reconstrução do P-code → Visual Basic
1.164 instruções P-Code definidas, 1.158 traduzidas para VB6
Reconstrói chamadas de runtime (MSVBVM60)
15.680 declarações de API Win32, 6.442 constantes, 422 tipos
Inferência de tipos, propagada a corpos e condições
121 de 149 projetos recompilam sem alterações
Desassemblador
Identificação de procedimentos (Formulários, Módulos, Classes…)
Desassembly de código de máquina → assembly
Realce de sintaxe assembly e VB
Mecanismo de busca no código desassemblado
Extração do design da interface
Extrai o arquivo de projeto (.vbp)
Extrai formulários (.frm, .ctl, .pag)
Arquivos de recursos binários (.frx, .ctx, .pgx)
Identificação de componentes COM / OLE / ActiveX
Extração de imagens e ícones incorporados
Editor de Design
Edite propriedades de controles no binário compilado
Sem limitação de tamanho (recurso exclusivo)
Substitua recursos incorporados (imagens, ícones)
Adicione propriedades ocultas sem recompilação
Geral
Suporte a Visual Basic 5 e 6
Formatos suportados: .exe .dll .ocx .scr
Windows 10 → Windows 11
Atualizações gratuitas do produto
Documentação on-line e guia do usuário
Escopo da licença
Tamanho máximo da organização < 10 funcionários · receita < 1 M€ 10–249 funcionários · receita < 50 M€ 250+ funcionários · ilimitado
Tipo de uso Pessoal · Acadêmico · Sem fins lucrativos Profissional comercial Comercial · Gov. · Militar
Instalação Por usuário ou por computador Por usuário ou por computador Por usuário ou por computador
Escolha sua licença Obter uma licença → Obter uma licença → Obter uma licença →

Licença válida por 1, 2 ou 3 anos, conforme o prazo escolhido ao finalizar a compra, com suporte e atualizações incluídos durante todo o período. IVA não aplicável – art. 293 B do Código Tributário francês.

Experimente grátis primeiro – a edição gratuita mostra o que o motor reconstrói a partir do seu binário → · Ou experimente on-line, nada para instalar → · Documentação

100 % francês

Projetado e desenvolvido na França

O VBReFormer é projetado, construído e mantido na França, entre Toulouse e a Saboia – expertise francesa e europeia em engenharia reversa, sem dependência fora da Europa.

Toulouse

Haute-Garonne · Occitânia

Saboia

Auvérnia-Ródano-Alpes

A ferramenta certa para o trabalho certo

.NET, C# ou VB.NET? Ferramentas gratuitas como dnSpy ou ILSpy dão conta muito bem. Nossa especialidade é o Visual Basic 5 e 6 – o problema realmente difícil, e o único que pretendemos resolver melhor do que qualquer um.

Por que esse foco →

Perguntas frequentes

Qual é a diferença entre P-Code e código nativo?

O VB6 compila em P-Code (pseudocódigo executado pela máquina virtual) ou em código nativo (instruções de máquina x86, a configuração padrão). A partir da geração 2 (VBReFormer 7), o mesmo motor descompila ambos em Visual Basic legível: 1.158 das 1.164 instruções P-Code definidas são traduzidas, uma medição publicada na página de cobertura. A geração anterior reconstruía apenas o código nativo.

O motor reconhece padrões ou interpreta o código?

Ele interpreta. A geração 1 reconhecia padrões no código compilado e renderizava apenas o que reconhecia. A geração 2 interpreta tanto o código de máquina quanto o P-Code para reconstruir expressões e tipos; o que ela não consegue reconstruir não é descartado nem adivinhado: é nomeado e explicado nas notas de exportação.

O VBReFormer consegue descompilar qualquer programa VB6?

O VBReFormer analisa todo executável compilado com Visual Basic 5 ou 6, tanto em P-Code quanto em código nativo. A interface – formulários, controles, recursos – é extraída integralmente em todos os casos. A reconstrução do código depende do que o binário preservou: a edição gratuita mostra isso no seu próprio arquivo, antes de qualquer compra.

O código descompilado recompila no IDE do Visual Basic 6?

Frequentemente: em um banco de 149 projetos, 121 recompilam sem alterações. A exportação escreve os cabeçalhos exigidos pelo IDE (VERSION, Attribute VB_Name), sem os quais o VB6 rejeita o arquivo. O que não pôde ser reconstruído é nomeado e explicado nas notas de exportação, em vez de preenchido com um valor plausível.

O que é recuperado de um executável, e o que se perde definitivamente?

Tudo o que o Visual Basic precisa em tempo de execução está no arquivo e volta: nomes de formulários, classes, módulos e controles, manipuladores de eventos, membros públicos de classes, propriedades de interface, chamadas de runtime, declarações de API. O que o compilador descartou não pode ser recuperado por ferramenta alguma: comentários, nomes de variáveis locais e de parâmetros, constantes nomeadas substituídas pelo seu valor e os nomes dos procedimentos em módulos .bas. Em média, 90 % do código-fonte é recuperado; o que falta se resume a esses elementos, ausentes do arquivo.

E se a descompilação não funcionar no meu binário?

É exatamente para isso que serve a edição gratuita: ela mostra, no SEU arquivo e antes de qualquer compra, o que pode ser extraído – formulários, recursos, estrutura do projeto. Recomendamos sempre experimentá-la primeiro. Como as licenças são conteúdo digital entregue imediatamente, as vendas são definitivas; se você encontrar um problema técnico, nosso suporte trabalhará com você em uma solução.

Existe uma versão gratuita?

Sim, e sem comprar nada. A edição gratuita para desktop é o mesmo instalador da edição licenciada: ela extrai a interface completa (formulários, recursos, estrutura do projeto) e mostra uma prévia do código descompilado, sem limite de tempo. O estúdio on-line, disponível em onze idiomas, faz o mesmo no navegador, sem nada para instalar: desassembly, P-Code, designer, projeto .vbp e recursos são fornecidos integralmente, e o código-fonte reconstruído como prévia. A licença desbloqueia o código completo e a exportação do projeto.

Por quanto tempo a licença é válida?

Pelo prazo que você escolher na compra: um, dois ou três anos. O suporte por e-mail e todas as atualizações lançadas nesse período estão incluídos, sem custo adicional. Ao expirar, o acesso termina e você pode adquirir uma nova licença. A edição gratuita continua utilizável sem limite de tempo.

É legal descompilar um programa?

Sim, quando você detém os direitos sobre o software – o caso típico é reconstruir seu próprio código-fonte perdido – ou dentro do quadro legal da interoperabilidade. Você deve possuir os direitos necessários sobre o programa analisado.

O VBReFormer descompila .NET, VB.NET ou C#?

Não. O VBReFormer trata Visual Basic 5 e 6: .exe, .dll, .ocx e .scr. Um assembly .NET requer um descompilador .NET; comparamos vários no blog.

Escolha sua licença

Responda a 2 perguntas sobre o seu perfil e selecionaremos a edição certa para você – em menos de 30 segundos.

Iniciar a seleção →