about summary refs log tree commit diff stats
path: root/example/jitter/arm.py
diff options
context:
space:
mode:
Diffstat (limited to 'example/jitter/arm.py')
-rw-r--r--example/jitter/arm.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/example/jitter/arm.py b/example/jitter/arm.py
new file mode 100644
index 00000000..5342ee6d
--- /dev/null
+++ b/example/jitter/arm.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+#-*- coding:utf-8 -*-
+import logging
+from pdb import pm
+
+from miasm2.analysis.sandbox import Sandbox_Linux_arml
+
+# Get arguments
+parser = Sandbox_Linux_arml.parser(description="""Sandbox an elf binary with arm
+ engine (ex: jit_arm.py samples/md5_arm -a A684)""")
+parser.add_argument("filename", help="ELF Filename")
+parser.add_argument('-v', "--verbose", help="verbose mode", action="store_true")
+options = parser.parse_args()
+
+# Prepare the sandbox
+sb = Sandbox_Linux_arml(options.filename, options, globals())
+
+# Handle 'verbose' option
+if options.verbose is True:
+    logging.basicConfig(level=logging.INFO)
+else:
+    logging.basicConfig(level=logging.WARNING)
+
+if options.verbose is True:
+    sb.jitter.vm.dump_memory_page_pool()
+
+if options.address is None:
+    raise ValueError('Invalid address')
+
+# Run the code
+sb.run()