IT之家 Informations du 13 octobre : le développeur Maurice Heumann a publié le 9 octobre un rapport de projet ; l'équipe a travaillé pendant 3 mois et consommé plus de 500 milliards de jetons (tokens), enfaisant appel à des agents IA pour décompiler le jeu Call of Duty: Modern Warfare 2 de 2009 et le reconstruire en code source C++.
Concernant l'équipe, le projet a été mené par Heumann, avec l'aide de RektInator, Future, st0rm et d'autres membres de la communauté.
Concernant l'appel aux IA, l'équipe a d'abord utilisé simultanément les abonnements Claude Max (20x) et Codex Pro, en exécutant des agents IA dans Claude Code CLI et Codex CLI. Les modèles comprenaient Sonnet 5, Opus 5.5, Luna, Sol et Terra ; les agents suivaient les tâches via GitHub Issues et échangeaient des informations via Discord.

Le premier mois du projet, 4 agents ont été déployés, dont 3 chargés de la décompilation et de la soumission de code, et 1 chargé de la révision. À ce stade, environ 80 % des fonctions ont été réalisées : le jeu pouvait se lancer, afficher le menu principal et charger des cartes ; mais l'équipe a constaté que, bien que le code fût lisible, il comportait des erreurs sémantiques au niveau des signatures de fonctions, des types, de la disposition des structures et de la logique.
L'équipe a ensuite introduit un mécanisme de vérification par « décompilation avec correspondance octet par octet ». Ce mécanisme reconstruit les fichiers objets avec le compilateur du jeu original et compare les fonctions reconstruites octet par octet avec les fonctions de l'EXE / PDB original ; celles qui passent sont marquées PASS, celles qui échouent sont retravaillées par les agents.
Pour empêcher les agents de contourner la vérification, l'équipe a interdit l'assembleur en ligne, les fonctions nues, les correctifs d'objets et l'incorporation d'octets dans le code, et a comparé via CI le hachage du script de vérification avec un GitHub Actions secret. Ce mécanisme a permis même aux modèles à faible coût d'accomplir des tâches de haute précision sous retour strict, et a remplacé la révision humaine ou par agent.

En fin de projet, 14 agents Luna et 2 agents Opus 5.5 étaient principalement en exécution, les agents soumettant le code via des branches indépendantes et des Pull Request.Au final, 99 % des fonctions du jeu ont été intégrées au code source reconstruit, et 83 % des fonctions atteignent une correspondance octet par octet; les autres fonctions sont difficiles à faire correspondre entièrement en raison de caractéristiques non déterministes ou du comportement de l'éditeur de liens.
La correspondance octet par octet (Byte-for-byte Matching) désigne la comparaison octet par octet des données binaires des fonctions compilées du code reconstruit avec les fonctions correspondantes du programme original. Si les données sont identiques, cela indique généralement que la fonction a conservé la même sémantique et le même comportement que l'original dans l'environnement de compilation cible.

Heumann a indiqué qu'il ne rendrait pas le code public ; le résultat de la reconstruction restera à usage privé.
IT之家 fournit la référence :
Déclaration publicitaire : les liens de redirection externes contenus dans le texte (y compris mais sans s'y limiter les hyperliens, codes QR, mots de passe, etc.) servent à transmettre davantage d'informations et à gagner du temps de tri ; les résultats sont donnés à titre indicatif uniquement. Tous les articles de IT之家 contenant des liens externes incluent cette déclaration.
