ExamineAssembly()
Syntaxe
Resultat = ExamineAssembly(*Adresse [, *AdresseFin])Description
Initialise le désassemblage des instructions à l'adresse spécifiée.
Important: Les commandes de désassemblage utilisent la bibliothèque Udis86 disassembler pour décoder les instructions. Elle est disponible sous license BSD qui peut être consultée ici. Si ExamineAssembly() et ses autres commandes relatives sont utilisées dans un programme, le texte de licence ci-dessus devra être inclu avec le logiciel.
Arguments
'*Adresse' indique l'adresse de la première instruction à désassembler. Si '*AdresseFin' est spécifiée, le désassemblage se terminera dès que '*AdresseFin' sera atteinte (et NextInstruction() reverra 0).
Valeur de retour
Renvoie une valeur différente de zéro si le désassemblage est possible.
Exemple
DisableDebugger ; do not disassemble any debugger related instructions
Code_Start:
; Place code to be disassembled here
a = (Random(100) * 5) + 2000
Code_End:
Text$ = "Disassembled code: " + Chr(13)
If ExamineAssembly(?Code_Start, ?Code_End)
While NextInstruction()
Text$ + RSet(Hex(InstructionAddress()), SizeOf(Integer)*2, "0")
Text$ + " " + InstructionString() + Chr(13)
Wend
EndIf
MessageRequester("Result", Text$)
OS Supportés
Windows, Linux, MacOS X (x86)