angr 9.2.161__cp310-abi3-manylinux2014_aarch64.whl → 9.2.162__cp310-abi3-manylinux2014_aarch64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of angr might be problematic. Click here for more details.

Files changed (40) hide show
  1. angr/__init__.py +1 -1
  2. angr/analyses/analysis.py +0 -1
  3. angr/analyses/cfg/cfg_base.py +5 -1
  4. angr/analyses/decompiler/ail_simplifier.py +20 -1
  5. angr/analyses/decompiler/block_simplifier.py +6 -3
  6. angr/analyses/decompiler/condition_processor.py +24 -0
  7. angr/analyses/decompiler/counters/call_counter.py +11 -1
  8. angr/analyses/decompiler/decompiler.py +3 -1
  9. angr/analyses/decompiler/graph_region.py +11 -2
  10. angr/analyses/decompiler/optimization_passes/const_prop_reverter.py +1 -1
  11. angr/analyses/decompiler/optimization_passes/lowered_switch_simplifier.py +1 -0
  12. angr/analyses/decompiler/optimization_passes/optimization_pass.py +31 -11
  13. angr/analyses/decompiler/optimization_passes/return_duplicator_low.py +2 -0
  14. angr/analyses/decompiler/region_simplifiers/goto.py +3 -3
  15. angr/analyses/decompiler/region_simplifiers/if_.py +2 -2
  16. angr/analyses/decompiler/region_simplifiers/loop.py +2 -2
  17. angr/analyses/decompiler/structured_codegen/c.py +3 -3
  18. angr/analyses/decompiler/structuring/dream.py +1 -1
  19. angr/analyses/decompiler/structuring/phoenix.py +119 -67
  20. angr/analyses/decompiler/structuring/recursive_structurer.py +3 -2
  21. angr/analyses/decompiler/structuring/sailr.py +51 -43
  22. angr/analyses/decompiler/structuring/structurer_base.py +2 -3
  23. angr/analyses/deobfuscator/string_obf_opt_passes.py +1 -1
  24. angr/analyses/disassembly.py +1 -1
  25. angr/analyses/reaching_definitions/function_handler.py +1 -0
  26. angr/analyses/s_propagator.py +2 -2
  27. angr/analyses/variable_recovery/engine_base.py +8 -0
  28. angr/knowledge_plugins/functions/function.py +1 -1
  29. angr/knowledge_plugins/functions/function_manager.py +1 -2
  30. angr/rustylib.abi3.so +0 -0
  31. angr/simos/javavm.py +1 -1
  32. angr/utils/graph.py +28 -12
  33. angr/utils/library.py +13 -12
  34. angr/utils/ssa/__init__.py +54 -2
  35. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/METADATA +5 -5
  36. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/RECORD +40 -40
  37. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/WHEEL +0 -0
  38. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/entry_points.txt +0 -0
  39. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/licenses/LICENSE +0 -0
  40. {angr-9.2.161.dist-info → angr-9.2.162.dist-info}/top_level.txt +0 -0
@@ -178,6 +178,14 @@ class SimEngineVRBase(
178
178
  for var_stack_offset, var in self.state.extract_variables(v):
179
179
  existing_vars.append((var, var_stack_offset))
180
180
 
181
+ if not existing_vars:
182
+ existing_vars = [
183
+ (v, 0)
184
+ for v in self.state.variable_manager[self.func_addr].find_variables_by_stack_offset(
185
+ stack_offset
186
+ )
187
+ ]
188
+
181
189
  if not existing_vars:
182
190
  # no variables exist
183
191
  lea_size = 1
@@ -1666,7 +1666,7 @@ class Function(Serializable):
1666
1666
  if self.is_rust_function():
1667
1667
  ast = pydemumble.demangle(self.name)
1668
1668
  return Function._rust_fmt_node(ast.split("::")[-2])
1669
- func_name = get_cpp_function_name(self.demangled_name, specialized=False, qualified=True)
1669
+ func_name = get_cpp_function_name(self.demangled_name)
1670
1670
  return func_name.split("::")[-1]
1671
1671
 
1672
1672
  def get_unambiguous_name(self, display_name: str | None = None) -> str:
@@ -154,8 +154,7 @@ class FunctionManager(KnowledgeBasePlugin, collections.abc.Mapping):
154
154
  :return: None
155
155
  """
156
156
  with open(filepath, "w", encoding="utf-8") as f:
157
- for src, dst in self.callgraph.edges():
158
- f.write(f"{src:#x}\tDirectEdge\t{dst:#x}\n")
157
+ f.writelines(f"{src:#x}\tDirectEdge\t{dst:#x}\n" for src, dst in self.callgraph.edges())
159
158
 
160
159
  def _addr_in_plt_cached_ranges(self, addr: int) -> bool:
161
160
  if self._rplt_cache_ranges is None:
angr/rustylib.abi3.so CHANGED
Binary file
angr/simos/javavm.py CHANGED
@@ -255,7 +255,7 @@ class SimJavaVM(SimOS):
255
255
  upper = native_arg_value.get_bytes(0, 4)
256
256
  lower = native_arg_value.get_bytes(4, 4)
257
257
  idx = args.index(arg)
258
- args = args[:idx] + (SootArgument(upper, "int"), SootArgument(lower, "int")) + args[idx + 1 :]
258
+ args = (*args[:idx], SootArgument(upper, "int"), SootArgument(lower, "int"), *args[idx + 1 :])
259
259
  native_arg_values += [upper, lower]
260
260
  continue
261
261
  if type(arg.value) is BV and len(arg.value) > arg_ty.size:
angr/utils/graph.py CHANGED
@@ -55,7 +55,7 @@ def inverted_idoms(graph: networkx.DiGraph) -> tuple[networkx.DiGraph, dict | No
55
55
 
56
56
 
57
57
  def to_acyclic_graph(
58
- graph: networkx.DiGraph, ordered_nodes: list | None = None, loop_heads: list | None = None
58
+ graph: networkx.DiGraph, node_order: dict[Any, int] | None = None, loop_heads: list | None = None
59
59
  ) -> networkx.DiGraph:
60
60
  """
61
61
  Convert a given DiGraph into an acyclic graph.
@@ -66,21 +66,22 @@ def to_acyclic_graph(
66
66
  :return: The converted acyclic graph.
67
67
  """
68
68
 
69
- if ordered_nodes is None:
69
+ if node_order is None:
70
70
  # take the quasi-topological order of the graph
71
71
  ordered_nodes = GraphUtils.quasi_topological_sort_nodes(graph, loop_heads=loop_heads)
72
-
73
- acyclic_graph = networkx.DiGraph()
72
+ node_order = {n: i for i, n in enumerate(ordered_nodes)}
74
73
 
75
74
  # add each node and its edge into the graph
76
- visited = set()
77
- for node in ordered_nodes:
78
- visited.add(node)
79
- acyclic_graph.add_node(node)
80
- for successor in graph.successors(node):
81
- if successor not in visited:
82
- acyclic_graph.add_edge(node, successor)
83
-
75
+ edges_to_remove = []
76
+ for src, dst in graph.edges():
77
+ src_order = node_order[src]
78
+ dst_order = node_order[dst]
79
+ if src_order > dst_order:
80
+ # this is a back edge, we need to remove it
81
+ edges_to_remove.append((src, dst))
82
+
83
+ acyclic_graph = graph.copy()
84
+ acyclic_graph.remove_edges_from(edges_to_remove)
84
85
  return acyclic_graph
85
86
 
86
87
 
@@ -672,6 +673,21 @@ class GraphUtils:
672
673
 
673
674
  return list(widening_addrs)
674
675
 
676
+ @staticmethod
677
+ def dfs_postorder_nodes_deterministic(graph: networkx.DiGraph, source):
678
+ visited = set()
679
+ stack = [source]
680
+ while stack:
681
+ node = stack[-1]
682
+ if node not in visited:
683
+ visited.add(node)
684
+ for succ in sorted(graph.successors(node), key=GraphUtils._sort_node):
685
+ if succ not in visited:
686
+ stack.append(succ)
687
+ else:
688
+ yield node
689
+ stack.pop()
690
+
675
691
  @staticmethod
676
692
  def reverse_post_order_sort_nodes(graph, nodes=None):
677
693
  """
angr/utils/library.py CHANGED
@@ -168,7 +168,7 @@ def parsedcprotos2py(
168
168
  proto_.returnty = SimTypeFd(label=proto_.returnty.label)
169
169
  for i, arg in enumerate(proto_.args):
170
170
  if (func_name, i) in fd_spots:
171
- proto_.args = proto_.args[:i] + (SimTypeFd(label=arg.label),) + proto_.args[i + 1 :]
171
+ proto_.args = (*proto_.args[:i], SimTypeFd(label=arg.label), *proto_.args[i + 1 :])
172
172
 
173
173
  line1 = " " * 8 + "#" + ((" " + decl) if decl else "") + "\n"
174
174
  line2 = " " * 8 + repr(func_name) + ": " + (proto_._init_str() if proto_ is not None else "None") + "," + "\n"
@@ -195,17 +195,18 @@ def cprotos2py(cprotos: list[str], fd_spots=frozenset(), remove_sys_prefix=False
195
195
  return parsedcprotos2py(parsed_cprotos, fd_spots=fd_spots, remove_sys_prefix=remove_sys_prefix)
196
196
 
197
197
 
198
- def get_cpp_function_name(demangled_name, specialized=True, qualified=True):
199
- # remove "<???>"s
200
- name = normalize_cpp_function_name(demangled_name) if not specialized else demangled_name
198
+ def get_cpp_function_name(demangled_name: str) -> str:
199
+ """
200
+ Parse a demangled C++ declaration into a function name.
201
201
 
202
- if not qualified:
203
- # remove leading namespaces
204
- chunks = name.split("::")
205
- name = "::".join(chunks[2:])
202
+ Note that the extracted name may include template instantiation, for example:
206
203
 
207
- # remove arguments
208
- if "(" in name:
209
- name = name[: name.find("(")]
204
+ example_func<int>
210
205
 
211
- return name
206
+ :param demangled_name: The demangled C++ function name.
207
+ :return: The qualified function name, excluding return type and parameters.
208
+ """
209
+ func_decls, _ = parse_cpp_file(demangled_name)
210
+ if func_decls and len(func_decls) == 1:
211
+ return next(iter(func_decls))
212
+ return normalize_cpp_function_name(demangled_name)
@@ -6,7 +6,7 @@ from typing import Any, Literal, overload
6
6
  import networkx
7
7
 
8
8
  import archinfo
9
- from angr.ailment import Expression, Block
9
+ from angr.ailment import Expression, Block, UnaryOp
10
10
  from angr.ailment.expression import (
11
11
  VirtualVariable,
12
12
  Const,
@@ -42,7 +42,7 @@ def get_reg_offset_base_and_size(
42
42
 
43
43
  def get_reg_offset_base_and_size(
44
44
  reg_offset: int, arch: archinfo.Arch, size: int | None = None, resilient: bool = True
45
- ) -> tuple[int, int] | None:
45
+ ) -> tuple[int, int | None] | None:
46
46
  """
47
47
  Translate a given register offset into the offset of its full register and obtain the size of the full register.
48
48
 
@@ -278,6 +278,31 @@ def has_tmp_expr(expr: Expression) -> bool:
278
278
  return walker.has_blacklisted_exprs
279
279
 
280
280
 
281
+ class AILReferenceFinder(AILBlockWalkerBase):
282
+ """
283
+ Walks an AIL expression or statement and finds if it contains references to certain expressions.
284
+ """
285
+
286
+ def __init__(self, vvar_id: int):
287
+ super().__init__()
288
+ self.vvar_id = vvar_id
289
+ self.has_references_to_vvar = False
290
+
291
+ def _handle_UnaryOp(
292
+ self, expr_idx: int, expr: UnaryOp, stmt_idx: int, stmt: Statement | None, block: Block | None
293
+ ) -> Any:
294
+ if expr.op == "Reference" and isinstance(expr.operand, VirtualVariable) and expr.operand.varid == self.vvar_id:
295
+ self.has_references_to_vvar = True
296
+ return None
297
+ return super()._handle_UnaryOp(expr_idx, expr, stmt_idx, stmt, block)
298
+
299
+
300
+ def has_reference_to_vvar(stmt: Statement, vvar_id: int) -> bool:
301
+ walker = AILReferenceFinder(vvar_id)
302
+ walker.walk_statement(stmt)
303
+ return walker.has_references_to_vvar
304
+
305
+
281
306
  def check_in_between_stmts(
282
307
  graph: networkx.DiGraph,
283
308
  blocks: dict[tuple[int, int | None], Block],
@@ -358,6 +383,33 @@ def has_load_expr_in_between_stmts(
358
383
  )
359
384
 
360
385
 
386
+ def is_vvar_propagatable(vvar: VirtualVariable, def_stmt: Statement | None) -> bool:
387
+ if vvar.was_tmp or vvar.was_reg or vvar.was_parameter:
388
+ return True
389
+ if vvar.was_stack and isinstance(def_stmt, Assignment):
390
+ if isinstance(def_stmt.src, Const):
391
+ return True
392
+ if (
393
+ isinstance(def_stmt.src, VirtualVariable)
394
+ and def_stmt.src.was_stack
395
+ and def_stmt.src.stack_offset == vvar.stack_offset
396
+ ):
397
+ # special case: the following block
398
+ # ## Block 401e98
399
+ # 00 | 0x401e98 | LABEL_401e98:
400
+ # 01 | 0x401e98 | vvar_227{stack -12} = 𝜙@32b [((4202088, None), vvar_277{stack -12}), ((4202076, None),
401
+ # vvar_278{stack -12})]
402
+ # 02 | 0x401ea0 | return Conv(32->64, vvar_227{stack -12});
403
+ # might be simplified to the following block after return duplication
404
+ # ## Block 401e98.1
405
+ # 00 | 0x401e98 | LABEL_401e98__1:
406
+ # 01 | 0x401e98 | vvar_279{stack -12} = vvar_277{stack -12}
407
+ # 02 | 0x401ea0 | return Conv(32->64, vvar_279{stack -12});
408
+ # in this case, vvar_279 is eliminatable.
409
+ return True
410
+ return False
411
+
412
+
361
413
  def is_vvar_eliminatable(vvar: VirtualVariable, def_stmt: Statement | None) -> bool:
362
414
  if vvar.was_tmp or vvar.was_reg or vvar.was_parameter:
363
415
  return True
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: angr
3
- Version: 9.2.161
3
+ Version: 9.2.162
4
4
  Summary: A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries
5
5
  License: BSD-2-Clause
6
6
  Project-URL: Homepage, https://angr.io/
@@ -16,12 +16,12 @@ Description-Content-Type: text/markdown
16
16
  License-File: LICENSE
17
17
  Requires-Dist: cxxheaderparser
18
18
  Requires-Dist: GitPython
19
- Requires-Dist: archinfo==9.2.161
19
+ Requires-Dist: archinfo==9.2.162
20
20
  Requires-Dist: cachetools
21
21
  Requires-Dist: capstone==5.0.3
22
22
  Requires-Dist: cffi>=1.14.0
23
- Requires-Dist: claripy==9.2.161
24
- Requires-Dist: cle==9.2.161
23
+ Requires-Dist: claripy==9.2.162
24
+ Requires-Dist: cle==9.2.162
25
25
  Requires-Dist: mulpyplexer
26
26
  Requires-Dist: networkx!=2.8.1,>=2.0
27
27
  Requires-Dist: protobuf>=5.28.2
@@ -30,7 +30,7 @@ Requires-Dist: pycparser>=2.18
30
30
  Requires-Dist: pydemumble
31
31
  Requires-Dist: pyformlang
32
32
  Requires-Dist: pypcode<4.0,>=3.2.1
33
- Requires-Dist: pyvex==9.2.161
33
+ Requires-Dist: pyvex==9.2.162
34
34
  Requires-Dist: rich>=13.1.0
35
35
  Requires-Dist: sortedcontainers
36
36
  Requires-Dist: sympy
@@ -1,4 +1,4 @@
1
- angr/__init__.py,sha256=mTOm8j6yao9yvo4UH5hEsEQqWkyiAcmR1vMM7MYr5lQ,9246
1
+ angr/__init__.py,sha256=0P-HJdufts3cRObA3N0C7FJYnel9RPfvVXWaN9hfMxE,9246
2
2
  angr/__main__.py,sha256=AK9V6uPZ58UuTKmmiH_Kgn5pG9AvjnmJCPOku69A-WU,4993
3
3
  angr/annocfg.py,sha256=0NIvcuCskwz45hbBzigUTAuCrYutjDMwEXtMJf0y0S0,10742
4
4
  angr/blade.py,sha256=NhesOPloKJC1DQJRv_HBT18X7oNxK16JwAfNz2Lc1o0,15384
@@ -15,7 +15,7 @@ angr/keyed_region.py,sha256=Cx6dadqFgEvRmEHTbCJpg9mXkBtKGc_BKckHc6bk1IU,17992
15
15
  angr/knowledge_base.py,sha256=hRoSLuLaOXmddTSF9FN5TVs7liftpBGq_IICz5AaYBk,4533
16
16
  angr/project.py,sha256=96j1q8aUamVSnn0gqj3mIGIIvwctfv0ZzVf-HTO_CQU,37962
17
17
  angr/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
18
- angr/rustylib.abi3.so,sha256=vGpDwbcSzBzzpvloAOFqvUnDHZPLdwztYxgQw4aJZLU,5622768
18
+ angr/rustylib.abi3.so,sha256=fX09mIZ049LxbFk61ys6TsIs_eJZZW5or55_jqVnT2M,5624192
19
19
  angr/serializable.py,sha256=l908phj_KcqopEEL_oCufbP_H6cm3Wc9v-5xdux1-6g,1533
20
20
  angr/sim_manager.py,sha256=w7yTfWR-P9yoN5x85eeiNpj9dTrnjpJ3o5aoFpDAPnc,39396
21
21
  angr/sim_options.py,sha256=tfl57MFECmA7uvMMtQrRRbpG8g_A9jKOzwY6nApTW6Y,17782
@@ -42,7 +42,7 @@ angr/ailment/statement.py,sha256=3JEhg-JDRrNjaeHFgO-liEIrZRW6v5sIsOqcGHiuM3A,304
42
42
  angr/ailment/tagged_object.py,sha256=48xIMC5WKebEpA12Zq6dQz3evvKxT3ULEu2cPdw9w-Y,1566
43
43
  angr/ailment/utils.py,sha256=YprhO7yJcd5jUKDbCXFMmPdCd8BIOhqXti-zb3mtxRQ,2830
44
44
  angr/analyses/__init__.py,sha256=KFu0Otm7bqAcjX8dsnQzphJmkUVxMLssjFIJJOci32U,3479
45
- angr/analyses/analysis.py,sha256=vXjgq9LlBhROX-QH-V3Y5DZAM7T5r1Qvv5mXjNF9dtw,14909
45
+ angr/analyses/analysis.py,sha256=9FRa8ojMPhfzfLm7qsuBrrJeMKq2gTXF6pGfdA8o4yQ,14890
46
46
  angr/analyses/backward_slice.py,sha256=fdE1GbppXjGufLzfOQkeuIzGX0yx9ISHJlOGqS6m1lg,27218
47
47
  angr/analyses/binary_optimizer.py,sha256=xFDv8c1s5nQUKY_EWYRCuVroSXFkMiSLl5LngPiysDA,26145
48
48
  angr/analyses/bindiff.py,sha256=ysphJ9cg7yxnW7HxOSLYEohrTdq9ZK-8cVvKQ0U9u9M,64020
@@ -56,7 +56,7 @@ angr/analyses/complete_calling_conventions.py,sha256=nVrDHhCV3cawD_KxkAYj2fsszAs
56
56
  angr/analyses/congruency_check.py,sha256=QeYRrdrs_iluLLnKz3KUHkCTPRVl5PgM2T0ZXd786HA,16165
57
57
  angr/analyses/datagraph_meta.py,sha256=Ng0jqLD5ucRn_fBXhYq3l6scs3kczRk6Sk-Sen1forc,3414
58
58
  angr/analyses/ddg.py,sha256=AWPPsL2bfTAua5meuQfPFL6b29PLpCLZzw-LGCv5iVo,63214
59
- angr/analyses/disassembly.py,sha256=p2jEYVhoAoInW-vNeJ4UZqw3jod4Ir8SRVHLNgb-3w8,46227
59
+ angr/analyses/disassembly.py,sha256=YgU--tr1mZtlNhXTTWLBD4s-4g8vUs-01Vk6A04f5ng,46192
60
60
  angr/analyses/disassembly_utils.py,sha256=Pj9vnyji9fBDL3a3vAo2D3H4CfB-XrvVDLIsNXrp9pU,2877
61
61
  angr/analyses/dominance_frontier.py,sha256=kRoOCr3EaIUW1YnvtjmKFJW65zYsJHNe-HtVx2LR15s,2002
62
62
  angr/analyses/find_objects_static.py,sha256=27uxIeRA8nJ1XiuGay0oGVYKDvWOI9HFVSuPVXHJT7U,10264
@@ -68,7 +68,7 @@ angr/analyses/pathfinder.py,sha256=_prNqmRUSuSt2ZCP8qbvNN7pw7mtM8pWr9IL0AO6XL8,1
68
68
  angr/analyses/proximity_graph.py,sha256=KoRvdQswRrDygotrY_6hPnrzUf1U5c5mht-b7lowyFM,16087
69
69
  angr/analyses/reassembler.py,sha256=UXrDQNJtn4RUurpbIyMVpQ3AZ0VGVQZatoGHziEHvU0,98357
70
70
  angr/analyses/s_liveness.py,sha256=mSWwwAPpXl-dIZNx5pAHA5vWXqCO_OivOXWoiaI7tss,7984
71
- angr/analyses/s_propagator.py,sha256=VbIrH8H_xiS9dOGNPxlAtilHCjFeFoKIVsrpy1Bw7Tw,24872
71
+ angr/analyses/s_propagator.py,sha256=pEq11sNPZoR0PrWLdIIjE0s5IEmOpCpNxYYnf2qMURY,24872
72
72
  angr/analyses/smc.py,sha256=UyVaTBms0KI9jRUBhbnz1s6ez_K_oRy4qoPsvxwnoQY,5177
73
73
  angr/analyses/soot_class_hierarchy.py,sha256=R4xeacn-a_Q7PxSyj_stu5mnglZkPB5US5srKChX3mk,8740
74
74
  angr/analyses/stack_pointer_tracker.py,sha256=MX4wcvmTpV9HsCybYofYdkSt3aaCwXL94RSJJ1tPD5o,38082
@@ -86,7 +86,7 @@ angr/analyses/cfg/__init__.py,sha256=-w8Vd6FD6rtjlQaQ7MxwmliFgS2zt-kZepAY4gHas04
86
86
  angr/analyses/cfg/cfb.py,sha256=scykl1FJvqcTe2x69zreWi0PG_zYMbka3k6tlRwaD_g,15367
87
87
  angr/analyses/cfg/cfg.py,sha256=dc9M91CaLeEKduYfMwpsT_01x6XyYuoNvgvcDKtbN-I,3177
88
88
  angr/analyses/cfg/cfg_arch_options.py,sha256=_XRewFZ51SeNaxChadb6_ER7-8LW8KXeTIpoP8_iRj0,3506
89
- angr/analyses/cfg/cfg_base.py,sha256=pcbDLbuIqrJ9phLn3cS-allL-ZTIxWCUh7bhypW7-Hg,124454
89
+ angr/analyses/cfg/cfg_base.py,sha256=ias2sLiZPGQkfYTCSSYyQsHpndOxnRagBf7GJxg3cCs,124664
90
90
  angr/analyses/cfg/cfg_emulated.py,sha256=wL0ABJMZ8EwKbNjrpE_eqCkZpHDt4y6lmoQOmAIcJMQ,148235
91
91
  angr/analyses/cfg/cfg_fast.py,sha256=bNVUjqY3Zx-zB_6sCh9xf7rYAEwBLAyx2lBzBE45F60,231271
92
92
  angr/analyses/cfg/cfg_fast_soot.py,sha256=8YgMtY_8w4nAMcHR6n-q_eFvKwsvNz0anUH7EzIL1B4,25924
@@ -116,21 +116,21 @@ angr/analyses/data_dep/data_dependency_analysis.py,sha256=_vQPkw1NMrzD7kAFeotOaa
116
116
  angr/analyses/data_dep/dep_nodes.py,sha256=LcNcxeuKXMMc0GkmvKqqFwNlAk3GhzBR8ixM4CD305k,4640
117
117
  angr/analyses/data_dep/sim_act_location.py,sha256=EXmfFF3lV9XogcB2gFRMUoJCbjpDYiSKNyfafkBfiY8,1564
118
118
  angr/analyses/decompiler/__init__.py,sha256=eyxt2UKvPkbuS_l_1GPb0CJ6hrj2wTavh-mVf23wwiQ,1162
119
- angr/analyses/decompiler/ail_simplifier.py,sha256=8iev7hxXKO-nkqJ9Dt4uPb7RIxEkOgyGZ5QZd364hFE,91597
119
+ angr/analyses/decompiler/ail_simplifier.py,sha256=Y4kyCHuWcVubZIy4Sys4CIHJCkD0ktVQp7ehfBgADQc,92294
120
120
  angr/analyses/decompiler/ailgraph_walker.py,sha256=m71HCthOr9J8PZoMxJzCPskay8yfCZ2j8esWT4Ka3KI,1630
121
121
  angr/analyses/decompiler/block_io_finder.py,sha256=9J56W0_SQPczZ2-VoxqSv61T57foHmzy7wPtUtQKffU,10943
122
122
  angr/analyses/decompiler/block_similarity.py,sha256=S1lTlXFyOmJlQa7I3y7xgLsENLS4XGET7tdD55k_6Vg,6859
123
- angr/analyses/decompiler/block_simplifier.py,sha256=hyrRwWyQxHzOH0HYRP2tUnZEQvo9qsqI_R8OOM_kfb4,14470
123
+ angr/analyses/decompiler/block_simplifier.py,sha256=XcX9wsBM4AL_WWqmFrtSUDeSv0a125cC1-Q1NhmTrNE,14777
124
124
  angr/analyses/decompiler/callsite_maker.py,sha256=QxdNvnPt0oyRtsbFLCVpWdI7NL1LdT-TlEq27X5RAqA,23150
125
125
  angr/analyses/decompiler/clinic.py,sha256=zu0t1FtjfdsVkpMXvFvuOraYbx0IFNtARKh0K_3tfUQ,150858
126
- angr/analyses/decompiler/condition_processor.py,sha256=r1lVXkFLai8DtU5gqtvxz3kpjW2S4oP4mNSx7iqzQ38,53175
126
+ angr/analyses/decompiler/condition_processor.py,sha256=g8sknCiCoBx3rXsHy2nx0VKDymSoSyLpq5zMpvFUhWg,54441
127
127
  angr/analyses/decompiler/decompilation_cache.py,sha256=gAZtyXs-eoFj3680bTrJVAZcIoaPsFK0kayu30NYLb4,1509
128
128
  angr/analyses/decompiler/decompilation_options.py,sha256=NDB67DI1L-stvJ4b1eQkfV26HgDJ_rG9-6PEv08G9-8,8195
129
- angr/analyses/decompiler/decompiler.py,sha256=5_ifidQ9u5lUupyZD9AVHWmJCzviGsqrZhneZNv4dqw,30479
129
+ angr/analyses/decompiler/decompiler.py,sha256=3TsG9Tz4OQInSXcHhoASqxY7VhRsaK8xw-ZV9-Y-zhc,30533
130
130
  angr/analyses/decompiler/empty_node_remover.py,sha256=4CdxTM1AVmRoEdRIwJg1YEy10AgkEoRmJ8SU7xGbKnM,7424
131
131
  angr/analyses/decompiler/expression_narrower.py,sha256=lBtcsPu4V5JJ_u25GF-BJ3vaybu8TRr9XxmnjOrA4J8,10367
132
132
  angr/analyses/decompiler/goto_manager.py,sha256=wVoeXJcadIda84LloGgqW-rL0QHLv3fx4vZHLhmz-_o,4027
133
- angr/analyses/decompiler/graph_region.py,sha256=P9QplvE0RmsuNOxn-meO10xJ3r3Sf4EOsyTDmUpaXrQ,16532
133
+ angr/analyses/decompiler/graph_region.py,sha256=D6Hw_n05_KyyvQSkNbX_mj5jh6_3GRsml8E0ENSiGjI,17201
134
134
  angr/analyses/decompiler/jump_target_collector.py,sha256=CucT99luxIVrioM-keMMjyNKWE5QaXEFQOFphtyU8b4,1189
135
135
  angr/analyses/decompiler/jumptable_entry_condition_rewriter.py,sha256=f_JyNiSZfoudElfl2kIzONoYCiosR4xYFOe8Q5SkvLg,2176
136
136
  angr/analyses/decompiler/label_collector.py,sha256=fsCkldy8ZKH4FjkREByg-NDmfCd7Pmuz2K1Dks9oVjM,814
@@ -148,7 +148,7 @@ angr/analyses/decompiler/ccall_rewriters/rewriter_base.py,sha256=9BiexqY0fgB_UTm
148
148
  angr/analyses/decompiler/ccall_rewriters/x86_ccalls.py,sha256=dvdiAXWGte_4xcDZnP7h980DVZqpxMgQt-fTC1nxChQ,13437
149
149
  angr/analyses/decompiler/counters/__init__.py,sha256=UT5K0cWgkVTAXZxy1qBBzrQip3YR2BOBVpxlAuNlt5o,480
150
150
  angr/analyses/decompiler/counters/boolean_counter.py,sha256=FG3M8dMpbU_WAyr8PV2iEI43OLUxoZ6JQ1johkMtivw,893
151
- angr/analyses/decompiler/counters/call_counter.py,sha256=-98sirPUvqcRIbVtuTsGRkeRNU8yDmg22QmVdE8iCDs,1427
151
+ angr/analyses/decompiler/counters/call_counter.py,sha256=qf6IZYMIqv2NpYtbJEUfxMW638jDRYMaQkalqxILsCU,1839
152
152
  angr/analyses/decompiler/counters/expression_counters.py,sha256=8O9pKz2J8z30nxnAIGz0kcMKI2JsPZYIt5Wt77Mh3PM,2875
153
153
  angr/analyses/decompiler/counters/seq_cf_structure_counter.py,sha256=gyNYOAo3baoh13D3puv8oWV33aJM1eVBdpou8FBWveU,2336
154
154
  angr/analyses/decompiler/dephication/__init__.py,sha256=xd6YSsoXLKVB2g52l-TZGsDwN5Vm3p4b35lqAYcrlhU,280
@@ -164,7 +164,7 @@ angr/analyses/decompiler/optimization_passes/call_stmt_rewriter.py,sha256=INLmzf
164
164
  angr/analyses/decompiler/optimization_passes/code_motion.py,sha256=fdUvRseuFiH6ehpk9uWWMityDuBs_kqmIjYMi92dDkw,15353
165
165
  angr/analyses/decompiler/optimization_passes/condition_constprop.py,sha256=8UBN17ya-Nstwzj7OXYxrhsZIdHT-NG1eIpFMu8kiPU,9126
166
166
  angr/analyses/decompiler/optimization_passes/const_derefs.py,sha256=-vvd0QvLCmnRREmvN5LCLeKpUqisyPWj0yw1CHY8TwQ,10505
167
- angr/analyses/decompiler/optimization_passes/const_prop_reverter.py,sha256=s8uWg7ML-SGL8m24lz22rqDKtxtBInZBTtG_h2r7uiY,13263
167
+ angr/analyses/decompiler/optimization_passes/const_prop_reverter.py,sha256=uccjVWihM5Vu7k8JcEwDhvuAQqdmbOWDBQ6Df0frdzo,13260
168
168
  angr/analyses/decompiler/optimization_passes/cross_jump_reverter.py,sha256=DzvgsAhU4GqvS0yN0Q2JezkJAuo2KInCgZ7fsB-ibz4,4021
169
169
  angr/analyses/decompiler/optimization_passes/deadblock_remover.py,sha256=KJlq6ViNxyWpbRIkGfHMb08TxlXqfnEU4YpS8Hj8hFE,2717
170
170
  angr/analyses/decompiler/optimization_passes/determine_load_sizes.py,sha256=cyDEGP7be5FAHX32eTE6FD_RZHF6G3vRo5rCYrNCfJM,2246
@@ -176,15 +176,15 @@ angr/analyses/decompiler/optimization_passes/flip_boolean_cmp.py,sha256=ez0tzV2M
176
176
  angr/analyses/decompiler/optimization_passes/inlined_string_transformation_simplifier.py,sha256=CLljV06M63QRbyA-HW5ArXA9c2F3qlfOJgul7UWxJOo,25456
177
177
  angr/analyses/decompiler/optimization_passes/ite_expr_converter.py,sha256=DA2H1Uk8ZUTBcebQ3SFFl5n8pDSsZnQZC1Hnjv-A1a0,7835
178
178
  angr/analyses/decompiler/optimization_passes/ite_region_converter.py,sha256=8Q2Yh7QcKuoO51zfEa0abnTPES_QQRWbjiu3ZUntwvQ,13792
179
- angr/analyses/decompiler/optimization_passes/lowered_switch_simplifier.py,sha256=XSw7-npq1q_xNbCEEqgg4h7LyHEvBpuD-m1A9a9ok-k,42083
179
+ angr/analyses/decompiler/optimization_passes/lowered_switch_simplifier.py,sha256=YMJDmKsGkF9_32w1_7EAWpH4m7jLU4rZPtWVysAwhis,42129
180
180
  angr/analyses/decompiler/optimization_passes/mod_simplifier.py,sha256=9ekxyvxF8g3tN5oanUg96HaYiyYVbj5Nf-vSeeq86kI,3384
181
- angr/analyses/decompiler/optimization_passes/optimization_pass.py,sha256=MBez99mdjsRs7j7ZQVkVqf5LHW16ypX-fbAmwqMG5Rk,26712
181
+ angr/analyses/decompiler/optimization_passes/optimization_pass.py,sha256=gbgqCCPOs_9kyf4p1I3PPffZrjd5lGAvZS3n9ihcQBY,27845
182
182
  angr/analyses/decompiler/optimization_passes/register_save_area_simplifier.py,sha256=-MoVamrPN9fMakQMZPwRYQ5rbeuQURXvyELuUhPVXKI,9088
183
183
  angr/analyses/decompiler/optimization_passes/ret_addr_save_simplifier.py,sha256=A7azHMeTQDXPFj44lI-mK7wnbJZ6cdSL-lwwqxiBTk0,6420
184
184
  angr/analyses/decompiler/optimization_passes/ret_deduplicator.py,sha256=hqOBkbiyQwGDoPdkMLwJjJOI_90QQ2R6ESs2HQ4z0iw,8005
185
185
  angr/analyses/decompiler/optimization_passes/return_duplicator_base.py,sha256=cU4p-QGklqgillWLdD-o1nBPAsrfZS66GfAhuhHSz1I,27395
186
186
  angr/analyses/decompiler/optimization_passes/return_duplicator_high.py,sha256=iOaouK9G6GkDyQ-IH_VVoi_JAyiriUK3YBGN0l13LaM,2084
187
- angr/analyses/decompiler/optimization_passes/return_duplicator_low.py,sha256=IpNF3O678m9ey4RSHzmD4FXdeqrNRRbiclyA-wwIomY,10086
187
+ angr/analyses/decompiler/optimization_passes/return_duplicator_low.py,sha256=Y1r4PBfnh5P3TZHxwQo6oPuKk7V-BJ45PVCZSMeax4s,10167
188
188
  angr/analyses/decompiler/optimization_passes/stack_canary_simplifier.py,sha256=z8Fz1DXuwe0FVAvwPTJfrl6G9QsHoX0RI7gcB57jupU,14709
189
189
  angr/analyses/decompiler/optimization_passes/switch_default_case_duplicator.py,sha256=154pzAHjRaDJA1bc69Z49qDBouToemUL0BoT2ybmjw8,6476
190
190
  angr/analyses/decompiler/optimization_passes/switch_reused_entry_rewriter.py,sha256=6-b3u4zCwSQkMaYXDP4aTjTZdFTlIWlYfd8zC1vNuRM,4035
@@ -261,10 +261,10 @@ angr/analyses/decompiler/region_simplifiers/__init__.py,sha256=BSD9osrReTEdapOMm
261
261
  angr/analyses/decompiler/region_simplifiers/cascading_cond_transformer.py,sha256=xVY1NUqFudjdcFFO5RAfbdIlHyCRPLYDVPM8Z4J6uic,3832
262
262
  angr/analyses/decompiler/region_simplifiers/cascading_ifs.py,sha256=kPWajH8__ap-7713B-rT3Dun_O1gYW-AoS5gJHRoMlY,2610
263
263
  angr/analyses/decompiler/region_simplifiers/expr_folding.py,sha256=naCgnDUjdiDsh6dvoNO-VARfbTfaEYpu3EX9HkJ1cqE,31790
264
- angr/analyses/decompiler/region_simplifiers/goto.py,sha256=PjJZSgWRecqZ87MLWDO2ZlEq8lcYi6xH9XsVlN5b3xs,6116
265
- angr/analyses/decompiler/region_simplifiers/if_.py,sha256=3rW0zeflahjWvCVrifNv53Lp4mjtkLSRpNmoq5-J96k,4422
264
+ angr/analyses/decompiler/region_simplifiers/goto.py,sha256=z2fZYNK5DsiHdOBLSEeZ-_CC6_5bBZDVV7N6z-wD_TE,6117
265
+ angr/analyses/decompiler/region_simplifiers/if_.py,sha256=FPTNUKPB-7kABEXntq6x5pUfVzGgVR25h18h2HTTv5E,4422
266
266
  angr/analyses/decompiler/region_simplifiers/ifelse.py,sha256=rU01g103DJXtHBX72A2gbZJYlpVnmjLxL5Oo0FfjrVs,3808
267
- angr/analyses/decompiler/region_simplifiers/loop.py,sha256=-OuNrjKUdq-ttign-Za-N56cAx3flRd5_pzNAY1mTjg,6331
267
+ angr/analyses/decompiler/region_simplifiers/loop.py,sha256=iU2lG-O0HUqxkKtY3ydmKh2pL1TPxEttdUV_oiB3qn8,6331
268
268
  angr/analyses/decompiler/region_simplifiers/node_address_finder.py,sha256=saxgjw416DtUlMsE7kvLL5pTr5CUffRNHWwvXhEe9-s,616
269
269
  angr/analyses/decompiler/region_simplifiers/region_simplifier.py,sha256=kN8NWmdNrZIY-YiwQFE2PsvxgCupyGCczH7kmKPfUQM,9536
270
270
  angr/analyses/decompiler/region_simplifiers/switch_cluster_simplifier.py,sha256=QYrSLtD9zvfJnU8VwFa0E7NaDfKkA8vF32s2G08wTho,24926
@@ -279,15 +279,15 @@ angr/analyses/decompiler/ssailification/traversal_engine.py,sha256=MdmNKWN2LVQ9f
279
279
  angr/analyses/decompiler/ssailification/traversal_state.py,sha256=RDs2mTc6GYnbMom2gBfNfNMcazKMSkhemEmse8uELTY,1558
280
280
  angr/analyses/decompiler/structured_codegen/__init__.py,sha256=mxG4yruPAab8735wVgXZ1zu8qFPz-njKe0m5UcywE3o,633
281
281
  angr/analyses/decompiler/structured_codegen/base.py,sha256=DEeNrBOC8AAJb-qFyUoYeX8fpHSPmAsutCDF-0UhaQ4,3782
282
- angr/analyses/decompiler/structured_codegen/c.py,sha256=jJzPOZoaZYv2NacAQ6Rhh4BoTl2FV7PqGtIgWBsZi1Y,148274
282
+ angr/analyses/decompiler/structured_codegen/c.py,sha256=MvVnWYmvV5KhcQY9bg8X56z45HnRkSwM0XKKXvhuz0g,148169
283
283
  angr/analyses/decompiler/structured_codegen/dummy.py,sha256=JZLeovXE-8C-unp2hbejxCG30l-yCx4sWFh7JMF_iRM,570
284
284
  angr/analyses/decompiler/structured_codegen/dwarf_import.py,sha256=J6V40RuIyKXN7r6ESftIYfoREgmgFavnUL5m3lyTzlM,7072
285
285
  angr/analyses/decompiler/structuring/__init__.py,sha256=kEFP-zv9CZrhJtLTKwT9-9cGVTls71wLYaLDUuYorBU,711
286
- angr/analyses/decompiler/structuring/dream.py,sha256=JfH5uIc8nwUhMYgbHH1FI8avRii34AWLSJJiHTUSsJM,48736
287
- angr/analyses/decompiler/structuring/phoenix.py,sha256=0kPItjEm2puUKyxyYGOJBDqxjlkCKOCnsGwfE3F34Mo,139866
288
- angr/analyses/decompiler/structuring/recursive_structurer.py,sha256=4lHkzsEDSGsiEHrAImaJ4cQOmoZes87_GDSzOby90Rc,7219
289
- angr/analyses/decompiler/structuring/sailr.py,sha256=6lM9cK3iU1kQ_eki7v1Z2VxTiX5OwQzIRF_BbEsw67Q,5721
290
- angr/analyses/decompiler/structuring/structurer_base.py,sha256=VsmpptsIwX2e5-U3K2px3snhrOAu7qUU3nqjA7Be0xs,47415
286
+ angr/analyses/decompiler/structuring/dream.py,sha256=_4JrXwF32UKoUOak_matUa81MwRptyXvEmOfygt-ix0,48736
287
+ angr/analyses/decompiler/structuring/phoenix.py,sha256=3FvdB3r3IjA9y-kpFogatnGgYU_pbqH5m1etxZD0H7I,141714
288
+ angr/analyses/decompiler/structuring/recursive_structurer.py,sha256=P8kT4rzvSzpFr9jB1OCK6QLgPsgrFFJE1S4CjweSdIg,7353
289
+ angr/analyses/decompiler/structuring/sailr.py,sha256=aJCES4r5HaLs-l1tXagIPtXpWnqY_uTlJn7wCYKnwTg,6127
290
+ angr/analyses/decompiler/structuring/structurer_base.py,sha256=HDztcvr4eJx5oqzZIXRjS8AhYBT1RESxLnaC4C4ISoI,47427
291
291
  angr/analyses/decompiler/structuring/structurer_nodes.py,sha256=fh06tMCVW3VTPH4fY9W9CwVq3h6ml-xUkNcWhoW6lEU,12713
292
292
  angr/analyses/deobfuscator/__init__.py,sha256=7DgTLEs8P6fWJYkMcAjxnS4jjBDX2jJr8bjYvsTua2c,648
293
293
  angr/analyses/deobfuscator/api_obf_finder.py,sha256=044ZCXK6D5BZjVyPfe0isAFDzDDDDzy_oJrfm5fDLew,13686
@@ -295,7 +295,7 @@ angr/analyses/deobfuscator/api_obf_peephole_optimizer.py,sha256=jtUxKYTdmGu0c_8z
295
295
  angr/analyses/deobfuscator/api_obf_type2_finder.py,sha256=tPUfe_2jJV1uZB5cetgglf3T75E_UQZYVUFAfMACV9g,6389
296
296
  angr/analyses/deobfuscator/irsb_reg_collector.py,sha256=q91IYpepptTQWcF0MJLHVCuvUsUuzPcL2XbbcIDV4eo,1290
297
297
  angr/analyses/deobfuscator/string_obf_finder.py,sha256=bCd5Weos3Xn5nQUdoQfq2MioouTP-DdN0LUmxxmMK3s,36440
298
- angr/analyses/deobfuscator/string_obf_opt_passes.py,sha256=9A4-FVpvqSNPCnyvXlcKFaXP4hi5hBebeIkNSxpy7lg,5360
298
+ angr/analyses/deobfuscator/string_obf_opt_passes.py,sha256=YzrsEKsUaUPshB8LqfwDso8aK7m0ySmR3i50T5ZiwNo,5360
299
299
  angr/analyses/deobfuscator/string_obf_peephole_optimizer.py,sha256=_VQv2E2yOAZDAi53smQL5KcSLNe5FMqNUYC8jNSYXGs,1957
300
300
  angr/analyses/fcp/__init__.py,sha256=E9dxFckDM9DijfU4RRg9SGL6xDKCz7yBBP-XSkS-S9U,115
301
301
  angr/analyses/fcp/fcp.py,sha256=mJzCZ-JQ9Rv15qnVyqAzAhS8UJHldxbjvLieffG-nn0,16285
@@ -360,7 +360,7 @@ angr/analyses/reaching_definitions/dep_graph.py,sha256=yOuYhAYQQSi2aN6GIWYkgzquq
360
360
  angr/analyses/reaching_definitions/engine_ail.py,sha256=PPIqp8XaERWXLNUQN_ALzFcQeKHQe5nZdwoHtoLxWwg,46639
361
361
  angr/analyses/reaching_definitions/engine_vex.py,sha256=K486MkRAvTcTFD52pJtmjWbuVw7KURtGCEC0EDhJmRk,45601
362
362
  angr/analyses/reaching_definitions/external_codeloc.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
363
- angr/analyses/reaching_definitions/function_handler.py,sha256=yS3NC6e-wIDSUisEvPSng4H4ODtdiBzXKTvGe_GfZFs,29166
363
+ angr/analyses/reaching_definitions/function_handler.py,sha256=iVxGGZ0u0iua4ZAvgLfcFVDxBcI7kkTVntjiSzcJb-8,29223
364
364
  angr/analyses/reaching_definitions/heap_allocator.py,sha256=NQ9wBolyyUlCnQl8K0Gt0XVHhQAkRhNGa1MM9gRV9s8,2626
365
365
  angr/analyses/reaching_definitions/rd_initializer.py,sha256=z6LzV6UOWYg0G-Jnp4M16eFzOeX910YDt1rc-FEA4Kk,11156
366
366
  angr/analyses/reaching_definitions/rd_state.py,sha256=nVtfjqGMNBCgM7yGczkBwPn7XEkfOeIO6qGyxONvcnY,22870
@@ -390,7 +390,7 @@ angr/analyses/unpacker/packing_detector.py,sha256=SO6aXR1gZkQ7w17AAv3C1-U2KAc0yL
390
390
  angr/analyses/variable_recovery/__init__.py,sha256=eA1SHzfSx8aPufUdkvgMmBnbI6VDYKKMJklcOoCO7Ao,208
391
391
  angr/analyses/variable_recovery/annotations.py,sha256=2va7cXnRHYqVqXeVt00QanxfAo3zanL4BkAcC0-Bk20,1438
392
392
  angr/analyses/variable_recovery/engine_ail.py,sha256=8yqrl_qfO_DCvaIxwsa_eits5rIbly4rBEFh5W_U2O4,33709
393
- angr/analyses/variable_recovery/engine_base.py,sha256=d1Hx-pIYlflgAlLDyiNma6_fEGkuhZeTyVP_D5Bfb4Y,53047
393
+ angr/analyses/variable_recovery/engine_base.py,sha256=XAwYN1CsJ_urgQ0j7net9zZw7o6dxBxtWxCZ62een6Y,53381
394
394
  angr/analyses/variable_recovery/engine_vex.py,sha256=5Q2S1jAr7tALa0m0okqBHBe3cUePmJlnV1Grxos1xbo,21344
395
395
  angr/analyses/variable_recovery/irsb_scanner.py,sha256=1dL2IC7fZGuRrhmcpa2Q-G666aMPmbM8zSzmIRpLNSY,5141
396
396
  angr/analyses/variable_recovery/variable_recovery.py,sha256=I45eVUpOOcSobA_QyXl3aRNa0kppJH_7YOj95fPPTdE,22272
@@ -559,8 +559,8 @@ angr/knowledge_plugins/cfg/cfg_node.py,sha256=mAvQ8XAEURM7y0suc_S9lfxCmfXSTJHmWB
559
559
  angr/knowledge_plugins/cfg/indirect_jump.py,sha256=W3KWpH7Sx-6Z7h_BwQjCK_XfP3ce_MaeAu_Aaq3D3qg,2072
560
560
  angr/knowledge_plugins/cfg/memory_data.py,sha256=QLxFZfrtwz8u6UJn1L-Sxa-C8S0Gy9IOlfNfHCLPIow,5056
561
561
  angr/knowledge_plugins/functions/__init__.py,sha256=asiLNiT6sHbjP6eU-kDpawIoVxv4J35cwz5yQHtQ2E0,167
562
- angr/knowledge_plugins/functions/function.py,sha256=HUg5e5z7cIJScD-OB0g7u7R3wCFcIpluqIDD9V0_atM,71215
563
- angr/knowledge_plugins/functions/function_manager.py,sha256=VHkQWCrEgv-eFCAouztU0UTXI38L6RJuviokEPrerSc,23474
562
+ angr/knowledge_plugins/functions/function.py,sha256=8DsaHa_mcMZ79zRw804f5q6Vj1XRCwL7XUZVA3F2X88,71180
563
+ angr/knowledge_plugins/functions/function_manager.py,sha256=StsK3biTFRRA2ugrmeQLuHiN894p789Tlw1CIKlE0PY,23462
564
564
  angr/knowledge_plugins/functions/function_parser.py,sha256=DTdVwYt6nXLMc0EOh-V_GhvZYQ947UNBaA77qn7Y6Vo,12379
565
565
  angr/knowledge_plugins/functions/soot_function.py,sha256=OzCvQPWxnjbwPWTW0JXrQey4zyaayHD_v6ZA7nJ4YJw,4850
566
566
  angr/knowledge_plugins/key_definitions/__init__.py,sha256=-x1VGH3LHMze3T-RygodvUG3oXXa5jhKvjXoPKyiU_0,432
@@ -1277,7 +1277,7 @@ angr/protos/variables_pb2.py,sha256=fZ0sMXZFrSgs9G7Hzt7zSlDUN5gMKaAcdppsR7TQKF8,
1277
1277
  angr/protos/xrefs_pb2.py,sha256=wznhpgAE5rSVyP_E8wdFZF6OyIYEwtcZ8aq0zx8FXzs,1101
1278
1278
  angr/simos/__init__.py,sha256=viflGa2m57GOjuWxFM80osoFZmGEGhA6Ot1ElVau6Xg,1002
1279
1279
  angr/simos/cgc.py,sha256=LoBl_csMIVqn7WDqmspqAN5ETnTUoUv4PkVqobxqspU,5592
1280
- angr/simos/javavm.py,sha256=xPhWuvSdDG-GskoPPrLRfoJGABQ8J3H6SjpH1VoZTUQ,20566
1280
+ angr/simos/javavm.py,sha256=8WatgrjfiSPyUyHmRhrKWvKxYCvUG3F3xh3LSJDpxhQ,20566
1281
1281
  angr/simos/linux.py,sha256=ShLsqFIut1jGuo6NGQSlT7ymoaEEwgTNkloJNN0pDDI,23204
1282
1282
  angr/simos/simos.py,sha256=L43oFMGRWiVEpfMWhb_Y_iawsaxm7qw_fG-sfKF344M,18464
1283
1283
  angr/simos/snimmuc_nxp.py,sha256=kMBcgEJ1gyYRXtgYD8H4edQ2rKGIc2rGysnwTY9HaXw,5592
@@ -1387,21 +1387,21 @@ angr/utils/enums_conv.py,sha256=fA6qeoRZ6Cj6gCIS_PZbP4PX7E8IybnYQ90OZGnBVrc,2746
1387
1387
  angr/utils/env.py,sha256=aO4N2h7DUsUQtTgnC5J_oPHvMxJRur20m5UFSkmy4XU,398
1388
1388
  angr/utils/formatting.py,sha256=OWzSfAlKcL09cEtcqxszYWHsRO9tih7hvXD2K9kUZc8,4343
1389
1389
  angr/utils/funcid.py,sha256=Rd4r8juv2IpeMtCpPp4wxJoEZTnZZ1NsxdT42tvrKVA,6353
1390
- angr/utils/graph.py,sha256=gLLwLuhNtt2cXmqEZvtK2-3CQDBiaa9XqllO0vfaUBc,32319
1390
+ angr/utils/graph.py,sha256=-8MF0_gQLPeXD4CWdpOlZ4rG9KOcAnJQMn6jzWi0x00,32954
1391
1391
  angr/utils/lazy_import.py,sha256=7Mx-y-aZFsXX9jNxvEcXT-rO8tL8rknb6D6RbSFOI1M,343
1392
- angr/utils/library.py,sha256=z3rFYm7ePZTXNZJuKiQrR0SnlbVb-OzkX0t0U44nXDk,7181
1392
+ angr/utils/library.py,sha256=_3R3so_CApzIFE4n87atJgWLkvzt3yHPEttUJsenqXw,7342
1393
1393
  angr/utils/loader.py,sha256=5PtUlonkbqENNg3AMJ4YI3-g5dyyXJ0GP83SwO2dECY,1951
1394
1394
  angr/utils/mp.py,sha256=y6Q0nDOykRZvcQ805DZpcJHQTGN-gqFi0eERGNhb3C0,1903
1395
1395
  angr/utils/orderedset.py,sha256=aGfmLdOS77nzz2eoPpCqRICqzaAeBnuis1Et_I_hiZg,2047
1396
1396
  angr/utils/tagged_interval_map.py,sha256=rXKBuT14N23AAntpOKhZhmA-qqymnsvjpheFXoTRVRA,4417
1397
1397
  angr/utils/timing.py,sha256=n-YZ86g0ZWmLhsoNvcimRpKzewR5hmquLZe6fagxlBw,2224
1398
1398
  angr/utils/types.py,sha256=688trvR0_j93sfeRgFT1npcmjNGSx99m_IPe9Xyy9WY,4967
1399
- angr/utils/ssa/__init__.py,sha256=F0HR0vok7_K-vPp6hV334XtvCZflyh5HnYMGAmGgeJo,15290
1399
+ angr/utils/ssa/__init__.py,sha256=xbuVllFoPane9lHACdRQP5OO99Mca-4sqpFrtoAvnxo,17464
1400
1400
  angr/utils/ssa/tmp_uses_collector.py,sha256=digAUQpYoFR1VYfwoXlF3T1pYdDi6Pdq_ck54SjMabQ,813
1401
1401
  angr/utils/ssa/vvar_uses_collector.py,sha256=HewqUQluNE9EsaiLeFo7LaBvws_DDBDYNt9RBExy464,1367
1402
- angr-9.2.161.dist-info/licenses/LICENSE,sha256=PmWf0IlSz6Jjp9n7nyyBQA79Q5C2ma68LRykY1V3GF0,1456
1403
- angr-9.2.161.dist-info/METADATA,sha256=4w136XFYvE-fQgzJUo-9NmD2l2ym_Cp-cFukBkFBiQc,4343
1404
- angr-9.2.161.dist-info/WHEEL,sha256=-b00sLH3UnxFBjNQ7S7EFPw4mOqhGcI2pA2tUueoluM,112
1405
- angr-9.2.161.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
1406
- angr-9.2.161.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
1407
- angr-9.2.161.dist-info/RECORD,,
1402
+ angr-9.2.162.dist-info/licenses/LICENSE,sha256=PmWf0IlSz6Jjp9n7nyyBQA79Q5C2ma68LRykY1V3GF0,1456
1403
+ angr-9.2.162.dist-info/METADATA,sha256=xXSlP5zh0KsGEXThVzvDgUodrYqk_5nmKI7wNQJE1VA,4343
1404
+ angr-9.2.162.dist-info/WHEEL,sha256=-b00sLH3UnxFBjNQ7S7EFPw4mOqhGcI2pA2tUueoluM,112
1405
+ angr-9.2.162.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
1406
+ angr-9.2.162.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
1407
+ angr-9.2.162.dist-info/RECORD,,
File without changes