Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
windbg-decompile-ext — Extensão do WinDbg x64 que desmonta funções ativas e usa um LLM para produzir pseudocódigo verificado. | Kitploit
Ferramentas/GitHubGitHub/kernullist/windbg-decompile-ext
Análise EstáticaAnálise Dinâmica (Sandboxing)Análise de CódigoEngenharia ReversaDepuradoresAnálise de MalwareAnálise de BináriosAprendizado e EducaçãoEngenharia Reversa Assistida por IAAnálise de FirmwareExploração de Binários
1121164há 3 mesesRevisado pelo Kitploit
GitHubkernullist/windbg-decompile-ext

windbg-decompile-ext

Extensão do WinDbg x64 que desmonta funções ativas e usa um LLM para produzir pseudocódigo verificado.

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Extensão de Decompilação do Windbg via LLM

native decompile viewer

screenshot

Este projeto é um esqueleto de extensão WinDbg para Windows x64 que resolve uma função por nome ou endereço, reconstrói uma visão determinística de fluxo de controle e consulta diretamente um LLM a partir da extensão para produzir pseudocódigo.

Layout

  • src/extension: DLL de extensão do WinDbg e comando !decomp.
  • src/shared: código JSON, analisador, protocolo e verificador compartilhado pela extensão.
  • scripts: auxiliares de build e cópia de fornecedores.
  • third_party/dbgeng: cópia opcional embutida de dbgeng.h e dbgeng.lib.
  • third_party/zydis: árvore de origem estável do Zydis embutida, usada por padrão quando presente.

Escopo Atual

  • premissas somente para x64
  • análise de memória ao vivo por meio do DbgEng
  • desmontagem estruturada baseada em Zydis para recuperação estável de mnemônicos/operandos
  • recuperação de região de símbolo, unwind e intervalo de função heurístico
  • recuperação estilo SSA-lite para argumentos de registradores recebidos, locais de slot de pilha, candidatos a mesclagem e condições de desvio normalizadas
  • fatos de valor IR de baixo nível com dicas de def-uso, expressões de cópia/constante canonizadas e marcadores de definição morta
  • fatos de estado de valor em nível de bloco para definições alcançadas live-in/live-out convergidas entre registradores e locais de pilha
  • fatos de região de fluxo de controle apoiados por dominância para laços naturais, candidatos if/else, candidatos switch, metadados de indução de laço e metadados de intervalo/padrão de switch
  • fatos ABI x64 para slots shadow/home, deltas de ponteiro de pilha, reconhecimento de prólogo/epílogo, chamadas sem retorno, chamadas de cauda, thunks, candidatos a wrapper de importação e argumentos de chamada recuperados de registradores/pilha
  • recuperação de argumentos x64 da Microsoft ciente de SIMD/FP para xmm0 até xmm3, com guardas de idioma vetorial zero para evitar argumentos recebidos falsos
  • dicas de recuperação de tipo para valores semelhantes a ponteiros, locais de pilha, deslocamentos de campo, arrays de índice escalado, comparações semelhantes a enum, testes de bitflag e candidatos a vtable
  • fatos de idioma e padrão de biblioteca para auxiliares de memória/string, cookies de segurança, sondas de pilha, alocadores, inicializadores agregados e cargas RIP-relativas de global/importação
  • fatos de alvo de chamada para chamadas diretas, chamadas indiretas por registrador/memória, candidatos a chamada virtual/deslocamento de vtable, tipo de retorno, modelo de parâmetros, efeitos colaterais, efeitos de memória, dicas de propriedade e confiança
  • fatos de ofuscação estilo OLLVM para dispatchers de achatamento de fluxo de controle, arestas semânticas recuperadas, arestas mortas de predicado opaco e idiomas de substituição escalar de instrução
  • fatos de prontidão para desofuscação além do controle /deobf:on|off sobre se os fatos de ofuscação recuperados podem guiar a reescrita de pseudo-C
  • fatos de grafo de evidência que vinculam fatos de alta confiança do analisador, PDB e comportamento observado de volta ao ancoramento de instrução/bloco
  • prompting refine-first com um esqueleto de pseudocódigo gerado pelo analisador, resumos cientes de grafo para regiões de CFG, condições e blocos importantes, seleção ranqueada de fatos de alto sinal e amostragem distribuída para grandes conjuntos de fatos
  • links DML do WinDbg para navegação de entrada/bloco básico/evidência/alvo de chamada quando o callback de saída suporta DML
  • modos de resultado separados para resumo breve, explicação de evidência, somente fatos, prompt de depuração, JSON e saída estilo modelo de dados
  • interruptores de correção do usuário para dicas de sem retorno, tipo, campo e renomeação
  • fatos de política de análise cientes de sessão para sessões ao vivo, despejo, kernel e semelhantes a TTD
  • fatos de comportamento observado do contexto atual do depurador, incluindo amostras de argumentos de registradores, pontos quentes de memória e sugestões de consulta TTD quando disponíveis
  • classificação de string/global/IAT RIP-relativa e dicas de assinatura de alvo de chamada para prompting de LLM
  • dicas de protótipo, parâmetro/local com escopo, campo, enum e linha de origem cientes de PDB carregado para prompting de LLM
  • chamadas LLM diretas no processo a partir da extensão
  • adaptador HTTP compatível com OpenAI ou fallback simulado determinístico
  • passe de verificação sobre a saída do LLM

Uso no WinDbg

Carregue a extensão a partir da saída do build e então execute !decomp contra um símbolo ou um endereço:```text .load C:\path\to\decomp.dll !decomp /doctor !decomp module!FunctionName !decomp 0x7ffb`12345678

Use `/doctor` quando a configuração parecer errada ou antes de ativar um provedor de LLM:```text
!decomp /doctor
!decomp /doctor:net
  • /doctor não requer um alvo e não chama o provedor. Ele relata o caminho de configuração/estado de carregamento, resumo de provedor/modelo/endpoint, presença de autenticação sem segredos, configurações de timeout/token/chunking, suporte a DML, classe/qualificador de sessão, tipo de processador e ressalvas do PDB.
  • /doctor:net é aceito como uma solicitação explícita de verificação de rede, mas atualmente relata que o ping do provedor é ignorado. A extensão não realiza uma sondagem de rede no modo doctor.
  • Valores secretos, como chaves de API, tokens de acesso, tokens de atualização e strings de consulta de URL, não são impressos.

Alvos podem ser símbolos públicos/privados, nomes de funções exportadas ou endereços. Se o alvo resolver para um endereço dentro de uma função, a extensão tenta recuperar o intervalo da função que o contém a partir de símbolos, dados de unwind e heurísticas de fluxo de controle. Coloque aspas em alvos que contenham espaços:```text !decomp "my module!Function With Spaces"

O caminho de comando normal realiza análise local, constrói fatos do analisador, opcionalmente chama o endpoint de LLM configurado, verifica a resposta contra as evidências recuperadas e imprime pseudo-C mais confiança, avisos e notas de incerteza:```text
!decomp ntdll!RtlAllocateHeap
!decomp kernel32!Sleep
!decomp game.exe!CheckIntegrity

A saída normal, brief e explain inclui um fluxo de progresso compacto mesmo sem /verbose. Execuções longas de LLM mostram a conclusão da análise local, o progresso dos blocos, avisos de nova tentativa, início da mesclagem, verificação e a dica de cancelamento Ctrl+Break. Modos legíveis por máquina, como /view:json, /view:facts, /view:prompt e /view:data, suprimem linhas de progresso e links auxiliares de DML, para que os scripts recebam apenas o payload solicitado.

Baixar ferramenta