Les auteurs présentent un pipeline pour récupérer du code source à partir de fonctions binaires supprimées en combinant l'ingénierie inverse, la récupération basée sur des ancres et le raisonnement par grands modèles de langage.
- La méthode identifie la fonction source dans une base de données plutôt que de générer du pseudocode décompilé.
- Des ancres tels que des chaînes, des constantes, des appels externes et des noms de fonctions sont extraits en utilisant Ghidra.
- Les candidats sont récupérés via une recherche par index inversé et réclassés par un LLM basé sur le désassemblage et les métadonnées.
Sur un binaire tcpdump supprimé avec une base de données haute fidélité, la méthode atteint 95,2 % de couverture des instructions d'assemblage.
Les expériences sur une base de données basée sur GitHub ont montré des performances inférieures avec 35,5 % de couverture moyenne des instructions en raison de manques de récupération.
Les résultats indiquent que la récupération binaire au niveau du code source est efficace lorsqu'elle est soutenue par des bases de données de haute qualité.