Descompilación Asistida por LLM: Estrategias y Herramientas en Evolución

El artículo discute los desafíos y estrategias en la descompilación asistida por LLM, particularmente utilizando Claude para descompilar juegos de Nintendo 64 como Snowboard Kids 2. Inicialmente, el progreso involucró una descompilación de un solo intento, aumentando el código coincidente de alrededor del 25% al 58%. Sin embargo, el progreso se desaceleró, lo que exigió un cambio de enfoque para finalmente alcanzar aproximadamente el 75% de funciones coincidentes.
Una estrategia crítica implicó priorizar qué funciones no coincidentes abordar, inicialmente utilizando un modelo de regresión logística para estimar la dificultad en función de características como el conteo de instrucciones y la complejidad del control de flujo. Cuando este enfoque llegó a un punto muerto, explorar la similitud de funciones a través de embebidos de texto de instrucciones de ensamblador resultó fructífero. Esto involucró el cálculo de funciones coincidentes similares para proporcionar referencias útiles, mejorando así el rendimiento de descompilación de Claude.
Para calcular la similitud, se discutieron los embebidos vectoriales, que a menudo se utilizan en sistemas RAG para una rápida recuperación. Sin embargo, para un proyecto con solo unos pocos miles de candidatos, el cálculo de similitud preciso era factible. Se utilizó inicialmente un puntaje de similitud compuesto que tenía en cuenta n-gramas de instrucción normalizados, patrones de control de flujo, desplazamientos de acceso a memoria y métricas estructurales, pero luego, el método más simple de Coddog para calcular la distancia de Levenshtein acotada sobre secuencias de opcode resultó igual de efectivo, reduciendo la complejidad.
Herramientas especializadas como gfxdis.f3dex2 y decomp-permuter también mejoraron el rendimiento de Claude. En particular, el uso de la biblioteca F3Dex2 hizo que el manejo del microcódigo del Procesador de Pantalla de Realidad (RDP) de la N64 fuera más manejable, evitando la necesidad de ingeniería inversa personalizada.
📖 Lee la fuente completa: HN LLM Tools
👀 Ver también

Desafíos y Lecciones del Desarrollo de un Sistema de Comercio con ML usando Claude
Desarrollar un sistema de trading algorítmico basado en ML utilizando Claude Opus 4.5 reveló problemas de integración con múltiples motores de ML, enfatizando la importancia de una verificación exhaustiva durante el proceso de desarrollo.

Construyendo un Sistema de Agente de IA Autónomo con Claude Code: Un Estudio de Caso
Un desarrollador creó Acrid, un agente de IA que gestiona una empresa llamada Acrid Automation utilizando Claude Code como su sistema operativo. El sistema cuenta con 14 habilidades de comandos de barra, 4 subagentes para delegación, memoria basada en archivos sin bases de datos vectoriales y una canalización de contenido automatizada que conecta Claude con n8n a través de GitHub.

Desarrollador crea aplicación bancaria para macOS con Claude Code en 6 semanas.
Un desarrollador creó simplebanking, una aplicación gratuita y de código abierto para macOS que se ubica en la barra de menús y está diseñada para bancos alemanes utilizando Claude Code. La aplicación muestra saldos en vivo en múltiples cuentas, ofrece búsqueda de transacciones, detección de suscripciones y mantiene todos los datos localmente.

Agencia: Un Mercado de Habilidades.md Construido con Claude en 3 Semanas
Agensi es un mercado de habilidades SKILL.md construido utilizando Claude Code, Lovable y Supabase. La plataforma incluye 37 habilidades en 8 categorías, con funciones como escaneo de seguridad automatizado, huella digital de descargas y un sistema de solicitudes de recompensas.