Sto scrivendo uno script per il disassemblatore IDA Pro in Python usando il plugin idapython
. Usando questo, sono in grado di colmare le lacune in cui l'auto-analisi di IDA è insufficiente.Nome CML maneggiando a mano
Un'area che mi ha bloccato è denominazione di posizioni/funzioni con (per mancanza di un termine migliore) "nomi carini". Un esempio di quello che voglio dire è illustrato di seguito:
idapython
e IDA Pro se stesso solo mi permette di inserire i nomi di base C-ish funzione. Se inserisco simboli non consentiti (ad esempio l'operatore di risoluzione scope), vengono sostituiti con caratteri di sottolineatura. Tuttavia,, se inserisco un nome storpiato a mano (ad esempio __ZN9IOService15powerChangeDoneEm
), IDA Pro sarà per me.
Quindi la mia domanda: come posso generare nomi storti per passare attraverso idapython
? È disponibile una libreria di maneggevolezza dei nomi? Uno è disponibile in Python? La mia unica speranza è di strappare la funzionalità di maneggevolezza da g++
e aggirare il problema?
Mi auguro ci sia qualche doc in giro che si poteva guardare in ... buona fortuna! –