about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorserpilliere <devnull@localhost>2012-10-05 14:28:54 +0200
committerserpilliere <devnull@localhost>2012-10-05 14:28:54 +0200
commit693d47e58fa50bd4570fb58f30723e3980c5aeef (patch)
treefbfe5cd507c1655cc75ea38dd02bd030032f16c2
parent164f9cd0ded717282b31ddd3922201a5021dea5f (diff)
downloadmiasm-693d47e58fa50bd4570fb58f30723e3980c5aeef.tar.gz
miasm-693d47e58fa50bd4570fb58f30723e3980c5aeef.zip
asmbloc: add mnemo to disasmcallback args
Diffstat (limited to '')
-rw-r--r--miasm/core/asmbloc.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/miasm/core/asmbloc.py b/miasm/core/asmbloc.py
index 25bde036..c7ce5b00 100644
--- a/miasm/core/asmbloc.py
+++ b/miasm/core/asmbloc.py
@@ -336,7 +336,7 @@ def dis_bloc(mnemo, pool_bin, cur_bloc, offset, job_done, symbol_pool,
         break
 
     if dis_bloc_callback != None:
-        dis_bloc_callback(cur_bloc, offsets_to_dis, symbol_pool)
+        dis_bloc_callback(mnemo, cur_bloc, offsets_to_dis, symbol_pool)
     return offsets_to_dis
 
 
@@ -350,7 +350,7 @@ def dis_i(mnemo, pool_bin, offset, symbol_pool):
         return None
     return dum_b.lines[0]
 
-def split_bloc(all_bloc, symbol_pool, more_ref = None, dis_bloc_callback = None):
+def split_bloc(mnemo, all_bloc, symbol_pool, more_ref = None, dis_bloc_callback = None):
     i = -1
     err = False
     if not more_ref:
@@ -375,7 +375,7 @@ def split_bloc(all_bloc, symbol_pool, more_ref = None, dis_bloc_callback = None)
                         err = True
                         break
                     if dis_bloc_callback:
-                        dis_bloc_callback(new_b, [x.label.offset for x in new_b.bto if isinstance(x.label, asm_label)],
+                        dis_bloc_callback(mnemo, new_b, [x.label.offset for x in new_b.bto if isinstance(x.label, asm_label)],
                                           symbol_pool)
                     all_bloc.append(new_b)
             """
@@ -431,7 +431,7 @@ def dis_bloc_all(mnemo, pool_bin, offset, job_done, symbol_pool, dont_dis = [],
         all_bloc.append(cur_bloc)
 
 
-    return split_bloc(all_bloc, symbol_pool, dis_bloc_callback = dis_bloc_callback)
+    return split_bloc(mnemo, all_bloc, symbol_pool, dis_bloc_callback = dis_bloc_callback)
 
 
 def bloc2graph(blocs, label = False, lines = True):
@@ -1269,7 +1269,7 @@ def steal_bytes(in_str, arch_mn, ad, l):
         erased_asm+=str(lines[-1])+'\n'
     return lines, total_bytes
 
-def dis_multi_func(in_str, mn, symbol_pool, ad, dont_dis = [], follow_call = False, dontdis_retcall = False, dis_bloc_callback  =None ):
+def dis_multi_func(in_str, mnemo, symbol_pool, ad, dont_dis = [], follow_call = False, dontdis_retcall = False, dis_bloc_callback  =None ):
     todo = ad[:]
     done = set()
     all_bloc = []
@@ -1281,7 +1281,7 @@ def dis_multi_func(in_str, mn, symbol_pool, ad, dont_dis = [], follow_call = Fal
         if ad in done:
             continue
         done.add(ad)
-        all_bloc__ = dis_bloc_all(mn, in_str, ad, job_done, symbol_pool, dont_dis, follow_call, False, dontdis_retcall, all_bloc = all_bloc, dis_bloc_callback = dis_bloc_callback )
+        all_bloc__ = dis_bloc_all(mnemo, in_str, ad, job_done, symbol_pool, dont_dis, follow_call, False, dontdis_retcall, all_bloc = all_bloc, dis_bloc_callback = dis_bloc_callback )
         for b in all_bloc:
             if not b.lines:
                 #XXX not lines in bloc ???
@@ -1293,7 +1293,7 @@ def dis_multi_func(in_str, mn, symbol_pool, ad, dont_dis = [], follow_call = Fal
 
             todo.append(dst)
             call_ad.add(dst)
-    all_bloc = split_bloc(all_bloc, symbol_pool, more_ref = call_ad)
+    all_bloc = split_bloc(mnemo, all_bloc, symbol_pool, more_ref = call_ad)
     return all_bloc
 
 def dis_one_bloc(in_str, mnemo, ad, **kargs):