The long tail of LLM-assisted decompilation
L’auteur décrit l’évolution de son workflow de décompilation de Snowboard Kids 2, passant d’une approche one-shot rapide à une pratique plus mature et méthodique. La priorisation des fonctions non appariées alterne entre une estimation initiale de difficulté et une recherche de similarité via des embeddings d’instructions, complétée par un calcul exact de similarité entre paires de fonctions. Des outils spécialisés comme F3Dex2 et le permuter ont été utilisés, mais le permuteur a été retiré en raison d’artefacts et de détours qui n’amélioraient pas la validité. Pour soutenir l’échelle, l’auteur met en place des worktrees, des hooks pour Claude et un orchestrateur nommé Nigel le chat, et fait appel à Glaude avec GLM pour déléguer certaines tâches. Aujourd’hui, il reste 124 fonctions à traiter après être passé par 157, et Claude montre des difficultés sur les fonctions volumineuses, les macros et les calculs mathématiques, incitant à poursuivre l’expérimentation avec Nigel et des solutions alternatives.