Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !
regenerator2000 — Un désassembleur interactif pour le CPU 6502, axé sur les ordinateurs 8 bits de Commodore. Propose une TUI avec des fonctionnalités modernes comme les références croisées (x-ref), l'annulation/refaire (undo/redo), les flèches de flux, une navigation au clavier, un serveur MCP pour l'analyse automatique, le débogueur VICE et plus encore ! | Kitploit
Un désassembleur interactif pour le CPU 6502, axé sur les ordinateurs 8 bits de Commodore. Propose une TUI avec des fonctionnalités modernes comme les références croisées (x-ref), l'annulation/refaire (undo/redo), les flèches de flux, une navigation au clavier, un serveur MCP pour l'analyse automatique, le débogueur VICE et plus encore !
Partager
Regenerator 2000
Un désassembleur 6502 moderne et interactif pour les machines 8-bit Commodore. Une version modernisée de Regenerator.
🕹️ Analyse manuelle — Une ILC (interface en ligne de commande) rapide et centrée sur le clavier pour une exploration pratique : naviguer dans le code, définir les données, étiqueter les sous-routines, ajouter des commentaires et affiner itérativement votre désassemblage.
🤖 Analyse automatisée — Un serveur MCP intégré permet aux assistants IA de piloter le désassembleur par programmation. Associé à des compétences spécialement conçues, il peut analyser des programmes entiers — classer des blocs, tracer des routines et nommer des symboles — avec une intervention humaine minimale.
Utilisez l'un ou l'autre flux de travail seul, ou combinez-les : laissez l'IA faire un premier passage, puis affinez les résultats de manière interactive.
Consultez les Exemples pour voir ce qui peut être accompli, avec des jeux pré-désassemblés sur différentes plateformes Commodore !
Fonctionnalités
Regenerator 2000 apporte des outils modernes au désassemblage 6502 :
Désassemblage : Prise en charge complète du 6502, y compris les opcodes non documentés.
Vue hexadécimale :
Affichage côte à côte avec le désassemblage.
Navigation synchronisée ou indépendante.
Jeu de caractères PETSCII non décalé ou décalé et Screencode.
Sprites :
Affichage côte à côte avec le désassemblage.
Multicolore ou monochrome
Bitmap :
Affichage côte à côte avec le désassemblage.
Haute résolution (320x200) et multicolore (160x200).
Utilise le rendu par blocs de quadrants pour une résolution complète dans l'ILC.
Jeu de caractères :
Affichage côte à côte avec le désassemblage.
Multicolore ou monochrome
Blocs :
Affichage côte à côte avec le désassemblage.
Débogueur : Connectez-vous à VICE pour un désassemblage en direct, points d'arrêt, exécution/pas à pas (F2–F9) ; panneau de débogage dans le volet de droite.
Mini-carte : Mini-carte du fichier en cours d'analyse.
Systèmes : Prend en charge les machines 8-bit Commodore : C64, C128, VIC-20, Plus/4, PET 4.0, PET 2.0 et 1541.
Importation : Charger les formats de fichier suivants
PRG : Fichiers PRG
CRT : Images de cartouche avec support de sélection de banque
D64 : Images de disque 35/40/42 pistes
D71 : Images de disque double face 70/80 pistes
D81 : Images de disque 80 pistes
T64 : Images de cassette
VSF : Fichiers de session VICE
RAW / BIN : Fichiers binaires bruts
DIS65 : Fichiers de projet 6502bench
REGEN2000PROJ : Fichiers de projet Regenerator 2000
Décompresseur binaire : Émule un bac à sable 6502 précis au cycle près en arrière-plan pour décompresser automatiquement les programmes C64 compressés.
Exportation vers .asm ou HTML. Assembleurs pris en charge :
64tass
ACME
Kick Assembler
ca65
Gestion de projet : Sauvegarder et charger votre travail
Analyse : Analyse automatique pour identifier les régions de code et de données.
Édition :
Étiquettes : Ajouter, modifier et supprimer des étiquettes locales et globales.
Énumérations : Définir et appliquer des mappages valeur-nom à trois niveaux (Système, Global, Projet) pour remplacer les nombres magiques dans le désassemblage et les données par des noms sémantiques.
Commentaires : Ajouter des commentaires latéraux et des commentaires de ligne.
Origine : Modifier l'adresse de chargement/origine du binaire.
Types de données : Convertir des régions en Code, Octet, Mot, Adresse, Adresse Lo/Hi, Adresse Hi/Lo, Mot Lo/Hi, Mot Hi/Lo, Texte PETSCII, Texte Screencode, Fichier externe ou Indéfini.
Annuler/Rétablir : Prise en charge complète de l'historique pour toutes les actions.
Navigation :
Sauter : Aller à des adresses spécifiques, des numéros de ligne spécifiques, ou suivre les opérandes.
Réf. croisées : Inspecter les références croisées pour les étiquettes/adresses.
Historique : Revenir aux emplacements précédents.
Personnalisation :
Configurer les paramètres du document (max réf. croisées, système, assembleur).
Options d'affichage personnalisables (afficher/masquer toutes les étiquettes, etc.).
ILC (Interface en Ligne de Commande) :
Interface utilisateur textuelle
Tout peut être fait depuis le clavier
Mode visuel : Sélection de type Vim pour les opérations par lots.
Serveur MCP :
Prise en charge du serveur Model Context Protocol (MCP) pour un accès programmatique
Modes de transport HTTP et stdio
Outils pour la manipulation du désassemblage, la recherche en mémoire, les opérations sur les blocs
Ressources pour accéder aux données binaires et aux vues
Compétences d'analyse intégrées qui automatisent la classification des blocs, le traçage des routines et le nommage des symboles
Rapide :
Extrêmement rapide
Prérequis
Terminaux recommandés
Pour garantir la meilleure expérience, notamment en ce qui concerne les raccourcis clavier et le rendu, nous recommandons d'utiliser un terminal moderne.
git clone https://github.com/ricardoquesada/regenerator2000.git
cd regenerator2000
cargo install --path .
Démarrage rapide avec les agents IA
Pour commencer rapidement à analyser des binaires à l'aide d'un agent IA (tel qu'Antigravity ou Claude Code), vous pouvez utiliser le dépôt regenerator2000-template. Il est préconfiguré avec toutes les compétences et autorisations d'agent nécessaires pour que vous puissiez commencer à analyser et rétro-ingénierer des binaires immédiatement.
Utilisation
Lancez l'application avec un fichier optionnel à charger :
root@kitploit:~
regenerator2000 [OPTIONS] [path/to/file.prg]
Options en ligne de commande
--help : Affiche le message d'aide
--version : Affiche les informations de version
--import_lbl <CHEMIN> : Importe les étiquettes VICE depuis le fichier spécifié
--export_lbl <CHEMIN> : Exporte les étiquettes vers le fichier spécifié (après analyse/importation)
--export_asm <CHEMIN> : Exporte l'assembly vers le fichier spécifié (après analyse/importation)
--export_html <CHEMIN> : Exporte le HTML vers le fichier spécifié (après analyse/importation)
--assembler <NOM> : Remplace le format d'assembleur pour l'exportation. Valeurs valides : 64tass, acme, ca65, kick
--headless : Exécute en mode headless (sans ILC), utile pour le traitement par lots
--verify : Vérifie le cycle d'exportation complet (exportation → assemblage → diff) pour tous les assembleurs. Implique --headless
--mcp-server : Exécute le serveur MCP (HTTP sur le port 3000)
--mcp-server-stdio : Exécute le serveur MCP via stdio
--vice <HÔTE:PORT> : Se connecte automatiquement au moniteur binaire VICE au démarrage (par ex. --vice localhost:6502)
--dump-system-config-files <CHEMIN> : Décharge tous les fichiers de configuration système intégrés (system-*.toml) dans le répertoire spécifié et quitte. Utile pour inspecter ou personnaliser les définitions système.
--dump-theme-files <CHEMIN> : Décharge tous les fichiers de thème intégrés (theme-*.toml) dans le répertoire spécifié et quitte. Modifiez-les et placez-les dans le répertoire de configuration pour créer des thèmes personnalisés.
--dump-enum-files <CHEMIN> : Décharge tous les fichiers d'énumération intégrés (enum-*.toml) dans le répertoire spécifié et quitte. Modifiez-les et placez-les dans le répertoire de configuration pour créer des énumérations personnalisées.
Formats de fichier pris en charge : .prg, .crt, .d64, .d71, .d81, .t64, .vsf, 6502bench (.dis65), .bin, .raw, et .regen2000proj.
Exemples : Vitrine de jeux et logiciels Commodore désassemblés, démontrant ce qui peut être réalisé avec Regenerator 2000 sur diverses plateformes prises en charge.
Support sur Discord (rejoignez le canal #regenerator2000, dans "Projets divers")
Contribuer
Les contributions sont les bienvenues ! N'hésitez pas à soumettre une Pull Request.
Remerciements
Regenerator : Le désassembleur 6502 original pour Windows.
unp64 : Le décompresseur binaire C64 par iAN CooG, sur lequel le module de décompression est basé.