diff options
Diffstat (limited to 'capstone/arch/EVM/EVMInstPrinter.c')
-rw-r--r-- | capstone/arch/EVM/EVMInstPrinter.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/capstone/arch/EVM/EVMInstPrinter.c b/capstone/arch/EVM/EVMInstPrinter.c new file mode 100644 index 000000000..7f452800e --- /dev/null +++ b/capstone/arch/EVM/EVMInstPrinter.c @@ -0,0 +1,20 @@ +/* Capstone Disassembly Engine */ +/* By Nguyen Anh Quynh, 2018 */ + +#include "EVMInstPrinter.h" +#include "EVMMapping.h" + + +void EVM_printInst(MCInst *MI, struct SStream *O, void *PrinterInfo) +{ + SStream_concat(O, EVM_insn_name((csh)MI->csh, MI->Opcode)); + + if (MI->Opcode >= EVM_INS_PUSH1 && MI->Opcode <= EVM_INS_PUSH32) { + unsigned int i; + + SStream_concat0(O, "\t"); + for (i = 0; i < MI->Opcode - EVM_INS_PUSH1 + 1; i++) { + SStream_concat(O, "%02x", MI->evm_data[i]); + } + } +} |