about summary refs log tree commit diff stats
path: root/miasm/expression/expression.py
diff options
context:
space:
mode:
authorserpilliere <devnull@localhost>2012-02-02 09:29:50 +0100
committerserpilliere <devnull@localhost>2012-02-02 09:29:50 +0100
commit7cd05b55b9171a8e54859cb88a51ab9d24aa4cca (patch)
tree324ce363e8f07a40ecabd3e0404faec21d239719 /miasm/expression/expression.py
parent0ec9723acb6cc6cf2401c61110e154fb42c93bea (diff)
downloadfocaccia-miasm-7cd05b55b9171a8e54859cb88a51ab9d24aa4cca.tar.gz
focaccia-miasm-7cd05b55b9171a8e54859cb88a51ab9d24aa4cca.zip
fix log; fix winapi
Diffstat (limited to 'miasm/expression/expression.py')
-rw-r--r--miasm/expression/expression.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/miasm/expression/expression.py b/miasm/expression/expression.py
index 07cb0e1f..fd560c54 100644
--- a/miasm/expression/expression.py
+++ b/miasm/expression/expression.py
@@ -280,7 +280,7 @@ class ExprAff(Expr):
             raise ValueError("get mod slice not on expraff slice", str(self))
         modified_s = []
         for x in self.src.args:
-            if x.arg.arg != dst or x.start != x.arg.start or x.stop != x.arg.stop:
+            if not isinstance(x.arg, ExprSlice) or x.arg.arg != dst or x.start != x.arg.start or x.stop != x.arg.stop:
                 modified_s.append(x)
 
         return modified_s
@@ -507,12 +507,13 @@ class ExprOp(Expr):
                             self.args[0].toC(),
                             self.args[1].toC())
 
-            elif self.op == 'imul32_lo':
+            elif self.op in ['imul16_lo', 'imul32_lo']:
                 return 'imul_lo_op_%s(%s, %s)' %(
                             self.args[0].get_size(),
                             self.args[0].toC(),
                             self.args[1].toC())
-            elif self.op == 'imul32_hi':
+
+            elif self.op in ['imul16_hi', 'imul32_hi']:
                 return 'imul_hi_op_%s(%s, %s)' %(
                             self.args[0].get_size(),
                             self.args[0].toC(),