Miasm2
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Properties
Macros
miasm2
ir
translators
miasm.py
Go to the documentation of this file.
1
from
miasm2.ir.translators.translator
import
Translator
2
3
4
class
TranslatorMiasm
(
Translator
):
5
"Translate a Miasm expression to its Python building form"
6
7
__LANG__ =
"Miasm"
8
9
def
from_ExprId
(self, expr):
10
return
"ExprId(%s, size=%d)"
% (repr(expr.name), expr.size)
11
12
def
from_ExprInt
(self, expr):
13
return
"ExprInt(0x%x, %d)"
% (int(expr.arg), expr.size)
14
15
def
from_ExprCond
(self, expr):
16
return
"ExprCond(%s, %s, %s)"
% (self.
from_expr
(expr.cond),
17
self.
from_expr
(expr.src1),
18
self.
from_expr
(expr.src2))
19
20
def
from_ExprSlice
(self, expr):
21
return
"ExprSlice(%s, %d, %d)"
% (self.
from_expr
(expr.arg),
22
expr.start,
23
expr.stop)
24
25
def
from_ExprOp
(self, expr):
26
return
"ExprOp(%s, %s)"
% (repr(expr.op),
27
", "
.join(map(self.
from_expr
, expr.args)))
28
29
def
from_ExprCompose
(self, expr):
30
args = [
"(%s, %d, %d)"
% (self.
from_expr
(arg), start, stop)
31
for
arg, start, stop
in
expr.args]
32
return
"ExprCompose([%s])"
%
", "
.join(args)
33
34
def
from_ExprAff
(self, expr):
35
return
"ExprAff(%s, %s)"
% (self.
from_expr
(expr.dst),
36
self.
from_expr
(expr.src))
37
38
def
from_ExprMem
(self, expr):
39
return
"ExprMem(%s, size=%d)"
% (self.
from_expr
(expr.arg), expr.size)
40
41
42
# Register the class
43
Translator.register(TranslatorMiasm)
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprAff
def from_ExprAff
Definition:
miasm.py:34
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprMem
def from_ExprMem
Definition:
miasm.py:38
miasm2.ir.translators.translator.Translator.from_expr
def from_expr
Definition:
translator.py:92
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprId
def from_ExprId
Definition:
miasm.py:9
miasm2.ir.translators.translator.Translator
Definition:
translator.py:5
miasm2.ir.translators.translator
Definition:
translator.py:1
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprOp
def from_ExprOp
Definition:
miasm.py:25
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprCompose
def from_ExprCompose
Definition:
miasm.py:29
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprCond
def from_ExprCond
Definition:
miasm.py:15
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprSlice
def from_ExprSlice
Definition:
miasm.py:20
miasm2.ir.translators.miasm.TranslatorMiasm.from_ExprInt
def from_ExprInt
Definition:
miasm.py:12
miasm2.ir.translators.miasm.TranslatorMiasm
Definition:
miasm.py:4
Generated by
1.8.8