
Plasma est un désassembleur interactif pour x86/ARM/MIPS. Il peut générer du pseudo-code indenté avec une syntaxe colorée.
L'ancien nom du projet était Reverse.
PLASMA est un désassembleur interactif. Il peut générer un assemblage plus lisible (pseudo-code) avec une syntaxe colorée. Vous pouvez écrire des scripts avec l'API Python disponible (voir un exemple ci-dessous). Le projet est encore en plein développement.
wiki : liste TODO et documentation.
Il supporte :
Attention : tant que les structures et les définitions de types ne sont pas implémentées, la compatibilité de la base de données pourrait être rompue.
c++filt (disponible dans le paquet binutils de Linux)--nocolor)Optionnel :
python-qt4 utilisé pour la carte mémoire./install.sh
Ou si vous avez déjà installé les prérequis avec la commande précédente :
./install.sh --update
Vérifier les tests :
make
....................................................................................
84/84 tests réussis avec succès en 2.777975s
analyzer tests...
...
$ plasma -i tests/server.bin
>> v main
# vous pouvez appuyer sur tab pour afficher la pseudo-décompilation
# | pour diviser la fenêtre
# Voir l'aide de la commande pour tous les raccourcis

Prenez le contrôle du graphe de flot en inversant les sauts conditionnels :

Voir plus sur le wiki pour l'API.
Quelques exemples (ces scripts sont placés dans plasma/scripts) :
$ plasma -i FILE
plasma> py !strings.py # affiche toutes les chaînes
plasma> py !xrefsto.py FUNCTION # graphe d'appels xdot
plasma> py !crypto.py # détecte certaines constantes cryptographiques
plasma> py !asm.py CODE # assemble avec keystone
plasma> py !disasm.py HEX_STRING # désassemble un tampon