From 00fc6c96d415bd31ee5ecbec70a8e4de141674cd Mon Sep 17 00:00:00 2001 From: Peter LaFosse Date: Thu, 16 Aug 2018 22:30:15 -0400 Subject: Adding EXTERN_PTR type --- examples/mlil_parser/src/mlil_parser.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'examples/mlil_parser/src/mlil_parser.cpp') diff --git a/examples/mlil_parser/src/mlil_parser.cpp b/examples/mlil_parser/src/mlil_parser.cpp index 0e621ead..a4c10f61 100644 --- a/examples/mlil_parser/src/mlil_parser.cpp +++ b/examples/mlil_parser/src/mlil_parser.cpp @@ -59,6 +59,7 @@ static void PrintOperation(BNMediumLevelILOperation operation) ENUM_PRINTER(MLIL_ADDRESS_OF_FIELD) ENUM_PRINTER(MLIL_CONST) ENUM_PRINTER(MLIL_CONST_PTR) + ENUM_PRINTER(MLIL_EXTERN_PTR) ENUM_PRINTER(MLIL_ADD) ENUM_PRINTER(MLIL_ADC) ENUM_PRINTER(MLIL_SUB) @@ -326,6 +327,7 @@ int main(int argc, char *argv[]) { case MLIL_CONST: case MLIL_CONST_PTR: + case MLIL_EXTERN_PTR: printf(" Found constant 0x%" PRIx64 "\n", expr.GetConstant()); return false; // Done parsing this default: @@ -345,6 +347,12 @@ int main(int argc, char *argv[]) expr.GetSourceExpr().GetConstant()); return false; // Done parsing this } + else if (expr.GetSourceExpr().operation == MLIL_EXTERN_PTR) + { + printf(" Loading from address 0x%" PRIx64 "\n", + expr.GetSourceExpr().GetConstant()); + return false; // Done parsing this + } break; default: break; -- cgit v1.3.1