summaryrefslogtreecommitdiff
path: root/examples/mlil_parser/src/mlil_parser.cpp
diff options
context:
space:
mode:
authorKyleMiles <krm504@nyu.edu>2022-01-27 22:43:28 -0500
committerKyleMiles <krm504@nyu.edu>2022-01-28 00:24:06 -0500
commit6812c973c9fa9b4ad642ab81856c05f87bd6fcc4 (patch)
treedace4156d03148bcaf02df138ab4e0d93e61bc6f /examples/mlil_parser/src/mlil_parser.cpp
parent519c9db22367f2659d1a54599fab47e6313be06e (diff)
Format All Files
Diffstat (limited to 'examples/mlil_parser/src/mlil_parser.cpp')
-rw-r--r--examples/mlil_parser/src/mlil_parser.cpp222
1 files changed, 111 insertions, 111 deletions
diff --git a/examples/mlil_parser/src/mlil_parser.cpp b/examples/mlil_parser/src/mlil_parser.cpp
index e14c9317..c31ec035 100644
--- a/examples/mlil_parser/src/mlil_parser.cpp
+++ b/examples/mlil_parser/src/mlil_parser.cpp
@@ -9,16 +9,16 @@ using namespace std;
#ifndef _WIN32
-#include <libgen.h>
-#include <dlfcn.h>
+ #include <libgen.h>
+ #include <dlfcn.h>
static string GetPluginsDirectory()
{
Dl_info info;
- if (!dladdr((void *)BNGetBundledPluginDirectory, &info))
+ if (!dladdr((void*)BNGetBundledPluginDirectory, &info))
return NULL;
stringstream ss;
- ss << dirname((char *)info.dli_fname) << "/plugins/";
+ ss << dirname((char*)info.dli_fname) << "/plugins/";
return ss.str();
}
#else
@@ -45,106 +45,106 @@ static void PrintOperation(BNMediumLevelILOperation operation)
switch (operation)
{
- ENUM_PRINTER(MLIL_NOP)
- ENUM_PRINTER(MLIL_SET_VAR)
- ENUM_PRINTER(MLIL_SET_VAR_FIELD)
- ENUM_PRINTER(MLIL_SET_VAR_SPLIT)
- ENUM_PRINTER(MLIL_LOAD)
- ENUM_PRINTER(MLIL_LOAD_STRUCT)
- ENUM_PRINTER(MLIL_STORE)
- ENUM_PRINTER(MLIL_STORE_STRUCT)
- ENUM_PRINTER(MLIL_VAR)
- ENUM_PRINTER(MLIL_VAR_FIELD)
- ENUM_PRINTER(MLIL_ADDRESS_OF)
- 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)
- ENUM_PRINTER(MLIL_SBB)
- ENUM_PRINTER(MLIL_AND)
- ENUM_PRINTER(MLIL_OR)
- ENUM_PRINTER(MLIL_XOR)
- ENUM_PRINTER(MLIL_LSL)
- ENUM_PRINTER(MLIL_LSR)
- ENUM_PRINTER(MLIL_ASR)
- ENUM_PRINTER(MLIL_ROL)
- ENUM_PRINTER(MLIL_RLC)
- ENUM_PRINTER(MLIL_ROR)
- ENUM_PRINTER(MLIL_RRC)
- ENUM_PRINTER(MLIL_MUL)
- ENUM_PRINTER(MLIL_MULU_DP)
- ENUM_PRINTER(MLIL_MULS_DP)
- ENUM_PRINTER(MLIL_DIVU)
- ENUM_PRINTER(MLIL_DIVU_DP)
- ENUM_PRINTER(MLIL_DIVS)
- ENUM_PRINTER(MLIL_DIVS_DP)
- ENUM_PRINTER(MLIL_MODU)
- ENUM_PRINTER(MLIL_MODU_DP)
- ENUM_PRINTER(MLIL_MODS)
- ENUM_PRINTER(MLIL_MODS_DP)
- ENUM_PRINTER(MLIL_NEG)
- ENUM_PRINTER(MLIL_NOT)
- ENUM_PRINTER(MLIL_SX)
- ENUM_PRINTER(MLIL_ZX)
- ENUM_PRINTER(MLIL_LOW_PART)
- ENUM_PRINTER(MLIL_JUMP)
- ENUM_PRINTER(MLIL_JUMP_TO)
- ENUM_PRINTER(MLIL_CALL)
- ENUM_PRINTER(MLIL_CALL_UNTYPED)
- ENUM_PRINTER(MLIL_CALL_OUTPUT)
- ENUM_PRINTER(MLIL_CALL_PARAM)
- ENUM_PRINTER(MLIL_RET)
- ENUM_PRINTER(MLIL_NORET)
- ENUM_PRINTER(MLIL_IF)
- ENUM_PRINTER(MLIL_GOTO)
- ENUM_PRINTER(MLIL_CMP_E)
- ENUM_PRINTER(MLIL_CMP_NE)
- ENUM_PRINTER(MLIL_CMP_SLT)
- ENUM_PRINTER(MLIL_CMP_ULT)
- ENUM_PRINTER(MLIL_CMP_SLE)
- ENUM_PRINTER(MLIL_CMP_ULE)
- ENUM_PRINTER(MLIL_CMP_SGE)
- ENUM_PRINTER(MLIL_CMP_UGE)
- ENUM_PRINTER(MLIL_CMP_SGT)
- ENUM_PRINTER(MLIL_CMP_UGT)
- ENUM_PRINTER(MLIL_TEST_BIT)
- ENUM_PRINTER(MLIL_BOOL_TO_INT)
- ENUM_PRINTER(MLIL_ADD_OVERFLOW)
- ENUM_PRINTER(MLIL_SYSCALL)
- ENUM_PRINTER(MLIL_SYSCALL_UNTYPED)
- ENUM_PRINTER(MLIL_TAILCALL)
- ENUM_PRINTER(MLIL_TAILCALL_UNTYPED)
- ENUM_PRINTER(MLIL_BP)
- ENUM_PRINTER(MLIL_TRAP)
- ENUM_PRINTER(MLIL_UNDEF)
- ENUM_PRINTER(MLIL_UNIMPL)
- ENUM_PRINTER(MLIL_UNIMPL_MEM)
- ENUM_PRINTER(MLIL_SET_VAR_SSA)
- ENUM_PRINTER(MLIL_SET_VAR_SSA_FIELD)
- ENUM_PRINTER(MLIL_SET_VAR_SPLIT_SSA)
- ENUM_PRINTER(MLIL_SET_VAR_ALIASED)
- ENUM_PRINTER(MLIL_SET_VAR_ALIASED_FIELD)
- ENUM_PRINTER(MLIL_VAR_SSA)
- ENUM_PRINTER(MLIL_VAR_SSA_FIELD)
- ENUM_PRINTER(MLIL_VAR_ALIASED)
- ENUM_PRINTER(MLIL_VAR_ALIASED_FIELD)
- ENUM_PRINTER(MLIL_CALL_SSA)
- ENUM_PRINTER(MLIL_CALL_UNTYPED_SSA)
- ENUM_PRINTER(MLIL_SYSCALL_SSA)
- ENUM_PRINTER(MLIL_SYSCALL_UNTYPED_SSA)
- ENUM_PRINTER(MLIL_TAILCALL_SSA)
- ENUM_PRINTER(MLIL_TAILCALL_UNTYPED_SSA)
- ENUM_PRINTER(MLIL_CALL_PARAM_SSA)
- ENUM_PRINTER(MLIL_CALL_OUTPUT_SSA)
- ENUM_PRINTER(MLIL_LOAD_SSA)
- ENUM_PRINTER(MLIL_LOAD_STRUCT_SSA)
- ENUM_PRINTER(MLIL_STORE_SSA)
- ENUM_PRINTER(MLIL_STORE_STRUCT_SSA)
- ENUM_PRINTER(MLIL_VAR_PHI)
- ENUM_PRINTER(MLIL_MEM_PHI)
+ ENUM_PRINTER(MLIL_NOP)
+ ENUM_PRINTER(MLIL_SET_VAR)
+ ENUM_PRINTER(MLIL_SET_VAR_FIELD)
+ ENUM_PRINTER(MLIL_SET_VAR_SPLIT)
+ ENUM_PRINTER(MLIL_LOAD)
+ ENUM_PRINTER(MLIL_LOAD_STRUCT)
+ ENUM_PRINTER(MLIL_STORE)
+ ENUM_PRINTER(MLIL_STORE_STRUCT)
+ ENUM_PRINTER(MLIL_VAR)
+ ENUM_PRINTER(MLIL_VAR_FIELD)
+ ENUM_PRINTER(MLIL_ADDRESS_OF)
+ 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)
+ ENUM_PRINTER(MLIL_SBB)
+ ENUM_PRINTER(MLIL_AND)
+ ENUM_PRINTER(MLIL_OR)
+ ENUM_PRINTER(MLIL_XOR)
+ ENUM_PRINTER(MLIL_LSL)
+ ENUM_PRINTER(MLIL_LSR)
+ ENUM_PRINTER(MLIL_ASR)
+ ENUM_PRINTER(MLIL_ROL)
+ ENUM_PRINTER(MLIL_RLC)
+ ENUM_PRINTER(MLIL_ROR)
+ ENUM_PRINTER(MLIL_RRC)
+ ENUM_PRINTER(MLIL_MUL)
+ ENUM_PRINTER(MLIL_MULU_DP)
+ ENUM_PRINTER(MLIL_MULS_DP)
+ ENUM_PRINTER(MLIL_DIVU)
+ ENUM_PRINTER(MLIL_DIVU_DP)
+ ENUM_PRINTER(MLIL_DIVS)
+ ENUM_PRINTER(MLIL_DIVS_DP)
+ ENUM_PRINTER(MLIL_MODU)
+ ENUM_PRINTER(MLIL_MODU_DP)
+ ENUM_PRINTER(MLIL_MODS)
+ ENUM_PRINTER(MLIL_MODS_DP)
+ ENUM_PRINTER(MLIL_NEG)
+ ENUM_PRINTER(MLIL_NOT)
+ ENUM_PRINTER(MLIL_SX)
+ ENUM_PRINTER(MLIL_ZX)
+ ENUM_PRINTER(MLIL_LOW_PART)
+ ENUM_PRINTER(MLIL_JUMP)
+ ENUM_PRINTER(MLIL_JUMP_TO)
+ ENUM_PRINTER(MLIL_CALL)
+ ENUM_PRINTER(MLIL_CALL_UNTYPED)
+ ENUM_PRINTER(MLIL_CALL_OUTPUT)
+ ENUM_PRINTER(MLIL_CALL_PARAM)
+ ENUM_PRINTER(MLIL_RET)
+ ENUM_PRINTER(MLIL_NORET)
+ ENUM_PRINTER(MLIL_IF)
+ ENUM_PRINTER(MLIL_GOTO)
+ ENUM_PRINTER(MLIL_CMP_E)
+ ENUM_PRINTER(MLIL_CMP_NE)
+ ENUM_PRINTER(MLIL_CMP_SLT)
+ ENUM_PRINTER(MLIL_CMP_ULT)
+ ENUM_PRINTER(MLIL_CMP_SLE)
+ ENUM_PRINTER(MLIL_CMP_ULE)
+ ENUM_PRINTER(MLIL_CMP_SGE)
+ ENUM_PRINTER(MLIL_CMP_UGE)
+ ENUM_PRINTER(MLIL_CMP_SGT)
+ ENUM_PRINTER(MLIL_CMP_UGT)
+ ENUM_PRINTER(MLIL_TEST_BIT)
+ ENUM_PRINTER(MLIL_BOOL_TO_INT)
+ ENUM_PRINTER(MLIL_ADD_OVERFLOW)
+ ENUM_PRINTER(MLIL_SYSCALL)
+ ENUM_PRINTER(MLIL_SYSCALL_UNTYPED)
+ ENUM_PRINTER(MLIL_TAILCALL)
+ ENUM_PRINTER(MLIL_TAILCALL_UNTYPED)
+ ENUM_PRINTER(MLIL_BP)
+ ENUM_PRINTER(MLIL_TRAP)
+ ENUM_PRINTER(MLIL_UNDEF)
+ ENUM_PRINTER(MLIL_UNIMPL)
+ ENUM_PRINTER(MLIL_UNIMPL_MEM)
+ ENUM_PRINTER(MLIL_SET_VAR_SSA)
+ ENUM_PRINTER(MLIL_SET_VAR_SSA_FIELD)
+ ENUM_PRINTER(MLIL_SET_VAR_SPLIT_SSA)
+ ENUM_PRINTER(MLIL_SET_VAR_ALIASED)
+ ENUM_PRINTER(MLIL_SET_VAR_ALIASED_FIELD)
+ ENUM_PRINTER(MLIL_VAR_SSA)
+ ENUM_PRINTER(MLIL_VAR_SSA_FIELD)
+ ENUM_PRINTER(MLIL_VAR_ALIASED)
+ ENUM_PRINTER(MLIL_VAR_ALIASED_FIELD)
+ ENUM_PRINTER(MLIL_CALL_SSA)
+ ENUM_PRINTER(MLIL_CALL_UNTYPED_SSA)
+ ENUM_PRINTER(MLIL_SYSCALL_SSA)
+ ENUM_PRINTER(MLIL_SYSCALL_UNTYPED_SSA)
+ ENUM_PRINTER(MLIL_TAILCALL_SSA)
+ ENUM_PRINTER(MLIL_TAILCALL_UNTYPED_SSA)
+ ENUM_PRINTER(MLIL_CALL_PARAM_SSA)
+ ENUM_PRINTER(MLIL_CALL_OUTPUT_SSA)
+ ENUM_PRINTER(MLIL_LOAD_SSA)
+ ENUM_PRINTER(MLIL_LOAD_STRUCT_SSA)
+ ENUM_PRINTER(MLIL_STORE_SSA)
+ ENUM_PRINTER(MLIL_STORE_STRUCT_SSA)
+ ENUM_PRINTER(MLIL_VAR_PHI)
+ ENUM_PRINTER(MLIL_MEM_PHI)
default:
printf("<invalid operation %" PRId32 ">", operation);
break;
@@ -248,7 +248,7 @@ static void PrintILExpr(const MediumLevelILInstruction& instr, size_t indent)
}
-int main(int argc, char *argv[])
+int main(int argc, char* argv[])
{
if (argc != 2)
{
@@ -313,7 +313,7 @@ int main(int argc, char *argv[])
vector<InstructionTextToken> tokens;
il->GetInstructionText(func, func->GetArchitecture(), instrIndex, tokens);
printf(" %" PRIdPTR " @ 0x%" PRIx64 " ", instrIndex, instr.address);
- for (auto& token: tokens)
+ for (auto& token : tokens)
printf("%s", token.text.c_str());
printf("\n");
@@ -336,20 +336,20 @@ int main(int argc, char *argv[])
if (expr.GetSourceExpr<MLIL_LOAD>().operation == MLIL_CONST_PTR)
{
printf(" Loading from address 0x%" PRIx64 "\n",
- expr.GetSourceExpr<MLIL_LOAD>().GetConstant<MLIL_CONST_PTR>());
- return false; // Done parsing this
+ expr.GetSourceExpr<MLIL_LOAD>().GetConstant<MLIL_CONST_PTR>());
+ return false; // Done parsing this
}
else if (expr.GetSourceExpr<MLIL_LOAD>().operation == MLIL_EXTERN_PTR)
{
printf(" Loading from address 0x%" PRIx64 "\n",
- expr.GetSourceExpr<MLIL_LOAD>().GetConstant<MLIL_EXTERN_PTR>());
- return false; // Done parsing this
+ expr.GetSourceExpr<MLIL_LOAD>().GetConstant<MLIL_EXTERN_PTR>());
+ return false; // Done parsing this
}
break;
default:
break;
}
- return true; // Parse any subexpressions
+ return true; // Parse any subexpressions
});
}
}