angr 9.2.178__cp310-abi3-win_amd64.whl → 9.2.180__cp310-abi3-win_amd64.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.

@@ -357,26 +357,27 @@ class ProximityGraphAnalysis(Analysis):
357
357
  def _handle_Call(
358
358
  stmt_idx: int, stmt: ailment.Stmt.Call, block: ailment.Block | None # pylint:disable=unused-argument
359
359
  ): # pylint:disable=unused-argument
360
- func_node = self.kb.functions[stmt.target.value]
361
- ref_at = {stmt.ins_addr}
362
-
363
- # extract arguments
364
- args = []
365
- if stmt.args:
366
- for arg in stmt.args:
367
- self._arg_handler(arg, args, string_refs)
368
-
369
- if (
370
- self._expand_funcs and func_node.addr in self._expand_funcs
371
- ): # pylint:disable=unsupported-membership-test
372
- new_node = FunctionProxiNode(func_node, ref_at=ref_at)
373
- if new_node not in to_expand:
374
- to_expand.append(new_node)
375
- else:
376
- new_node = CallProxiNode(func_node, ref_at=ref_at, args=tuple(args) if args is not None else None)
360
+ if isinstance(stmt.target, ailment.Expr.Const) and self.kb.functions.contains_addr(stmt.target.value):
361
+ func_node = self.kb.functions[stmt.target.value]
362
+ ref_at = {stmt.ins_addr}
363
+
364
+ # extract arguments
365
+ args = []
366
+ if stmt.args:
367
+ for arg in stmt.args:
368
+ self._arg_handler(arg, args, string_refs)
369
+
370
+ if (
371
+ self._expand_funcs and func_node.addr in self._expand_funcs
372
+ ): # pylint:disable=unsupported-membership-test
373
+ new_node = FunctionProxiNode(func_node, ref_at=ref_at)
374
+ if new_node not in to_expand:
375
+ to_expand.append(new_node)
376
+ else:
377
+ new_node = CallProxiNode(func_node, ref_at=ref_at, args=tuple(args) if args is not None else None)
377
378
 
378
- # stmt has been properly handled, add the proxi node to the list
379
- self.handled_stmts.append(new_node)
379
+ # stmt has been properly handled, add the proxi node to the list
380
+ self.handled_stmts.append(new_node)
380
381
 
381
382
  # This should have the same functionality as the previous handler
382
383
  def _handle_CallExpr(
angr/flirt/__init__.py CHANGED
@@ -26,6 +26,60 @@ LIBRARY_TO_SIGNATURES: dict[str, list[FlirtSignature]] = defaultdict(list)
26
26
  STRING_TO_LIBRARIES: dict[str, set[str]] = defaultdict(set)
27
27
 
28
28
 
29
+ def load_signature(sig_path: str, meta_path: str | None = None) -> tuple[str, FlirtSignature] | None:
30
+ """
31
+ Load a single FLIRT signature from a specific path.
32
+
33
+ :param sig_path: Location of the FLIRT signature.
34
+ :return: A FlirtSignature object if loading was successful, None otherwise.
35
+ """
36
+
37
+ # parse it
38
+ try:
39
+ with open(sig_path, "rb") as f:
40
+ sig_parsed = FlirtSignatureParsed.parse(f)
41
+ except FlirtSignatureError:
42
+ return None
43
+
44
+ # is there a meta data file?
45
+ if meta_path is not None and os.path.isfile(meta_path):
46
+ # yes!
47
+ with open(meta_path) as f:
48
+ meta = json.load(f)
49
+
50
+ arch = str(meta.get("arch", "Unknown"))
51
+ platform = str(meta.get("platform", "UnknownOS"))
52
+ os_name = meta.get("os", None)
53
+ os_version = meta.get("os_version", None)
54
+ compiler = meta.get("compiler", None)
55
+ compiler_version = meta.get("compiler_version", None)
56
+ unique_strings = meta.get("unique_strings", None)
57
+
58
+ else:
59
+ # nope... we need to extract information from the signature file
60
+ arch = flirt_arch_to_arch_name(sig_parsed.arch, sig_parsed.app_types)
61
+ platform = flirt_os_type_to_os_name(sig_parsed.os_types)
62
+ os_name = None
63
+ os_version = None
64
+ unique_strings = None
65
+ compiler = None
66
+ compiler_version = None
67
+
68
+ signature = FlirtSignature(
69
+ arch,
70
+ platform,
71
+ sig_parsed.libname,
72
+ sig_path,
73
+ unique_strings=unique_strings,
74
+ compiler=compiler,
75
+ compiler_version=compiler_version,
76
+ os_name=os_name,
77
+ os_version=os_version,
78
+ )
79
+
80
+ return arch, signature
81
+
82
+
29
83
  def load_signatures(path: str) -> None:
30
84
  """
31
85
  Recursively load all FLIRT signatures under a specific path.
@@ -40,52 +94,14 @@ def load_signatures(path: str) -> None:
40
94
  for root, _, filenames in os.walk(path):
41
95
  for filename in filenames:
42
96
  if filename.endswith(".sig"):
43
- # parse it
44
97
  sig_path = os.path.join(root, filename)
45
- try:
46
- with open(sig_path, "rb") as f:
47
- sig_parsed = FlirtSignatureParsed.parse(f)
48
- except FlirtSignatureError:
98
+ meta_path = os.path.join(root, filename[:-4] + ".meta")
99
+ r = load_signature(sig_path, meta_path=meta_path)
100
+ if r is None:
49
101
  _l.warning("Failed to load FLIRT signature file %s.", sig_path)
50
102
  continue
51
103
 
52
- # is there a meta data file?
53
- meta_path = os.path.join(root, filename[:-4] + ".meta")
54
- if os.path.isfile(meta_path):
55
- # yes!
56
- with open(meta_path) as f:
57
- meta = json.load(f)
58
-
59
- arch = str(meta.get("arch", "Unknown"))
60
- platform = str(meta.get("platform", "UnknownOS"))
61
- os_name = meta.get("os", None)
62
- os_version = meta.get("os_version", None)
63
- compiler = meta.get("compiler", None)
64
- compiler_version = meta.get("compiler_version", None)
65
- unique_strings = meta.get("unique_strings", None)
66
-
67
- else:
68
- # nope... we need to extract information from the signature file
69
- arch = flirt_arch_to_arch_name(sig_parsed.arch, sig_parsed.app_types)
70
- platform = flirt_os_type_to_os_name(sig_parsed.os_types)
71
- os_name = None
72
- os_version = None
73
- unique_strings = None
74
- compiler = None
75
- compiler_version = None
76
-
77
- signature = FlirtSignature(
78
- arch,
79
- platform,
80
- sig_parsed.libname,
81
- sig_path,
82
- unique_strings=unique_strings,
83
- compiler=compiler,
84
- compiler_version=compiler_version,
85
- os_name=os_name,
86
- os_version=os_version,
87
- )
88
-
104
+ arch, signature = r
89
105
  FLIRT_SIGNATURES_BY_ARCH[arch].append(signature)
90
106
 
91
107
  # fill in LIBRARY_TO_SIGNATURES and STRING_TO_LIBRARIES
@@ -95,3 +111,14 @@ def load_signatures(path: str) -> None:
95
111
  if sig.unique_strings:
96
112
  for us in sig.unique_strings:
97
113
  STRING_TO_LIBRARIES[us].add(sig.sig_name)
114
+
115
+
116
+ __all__ = (
117
+ "FLIRT_SIGNATURES_BY_ARCH",
118
+ "FS",
119
+ "LIBRARY_TO_SIGNATURES",
120
+ "STRING_TO_LIBRARIES",
121
+ "FlirtSignature",
122
+ "load_signature",
123
+ "load_signatures",
124
+ )
@@ -419,7 +419,8 @@ class LiveDefinitions:
419
419
  sp_v = sp_values.one_value()
420
420
  if sp_v is None:
421
421
  values = [v for v in next(iter(sp_values.values())) if self.get_stack_offset(v) is not None]
422
- assert len({self.get_stack_offset(v) for v in values}) == 1
422
+ if len({self.get_stack_offset(v) for v in values}) != 1:
423
+ return None
423
424
  return self.get_stack_offset(values[0])
424
425
 
425
426
  return self.get_stack_offset(sp_v)
angr/rustylib.pyd CHANGED
Binary file
angr/unicornlib.dll CHANGED
Binary file
angr/utils/types.py CHANGED
@@ -97,6 +97,8 @@ def dereference_simtype(
97
97
  continue
98
98
  if real_type is None:
99
99
  raise AngrMissingTypeError(f"Missing type {t.name}")
100
+ if t._arch is not None:
101
+ real_type = real_type.with_arch(t._arch)
100
102
  return dereference_simtype(real_type, type_collections, memo=memo)
101
103
 
102
104
  # the following code prepares a real_type SimType object that will be returned at the end of this method
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: angr
3
- Version: 9.2.178
3
+ Version: 9.2.180
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.178
19
+ Requires-Dist: archinfo==9.2.180
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.178
24
- Requires-Dist: cle==9.2.178
23
+ Requires-Dist: claripy==9.2.180
24
+ Requires-Dist: cle==9.2.180
25
25
  Requires-Dist: msgspec
26
26
  Requires-Dist: mulpyplexer
27
27
  Requires-Dist: networkx!=2.8.1,>=2.0
@@ -31,7 +31,7 @@ Requires-Dist: pycparser>=2.18
31
31
  Requires-Dist: pydemumble
32
32
  Requires-Dist: pyformlang
33
33
  Requires-Dist: pypcode<4.0,>=3.2.1
34
- Requires-Dist: pyvex==9.2.178
34
+ Requires-Dist: pyvex==9.2.180
35
35
  Requires-Dist: rich>=13.1.0
36
36
  Requires-Dist: sortedcontainers
37
37
  Requires-Dist: sympy
@@ -66,7 +66,7 @@ Project repository: https://github.com/angr/angr
66
66
 
67
67
  Documentation: https://docs.angr.io
68
68
 
69
- API Documentation: https://api.angr.io/en/latest/
69
+ API Documentation: https://docs.angr.io/en/latest/api.html
70
70
 
71
71
  ## What is angr?
72
72
 
@@ -80,7 +80,7 @@ angr is a suite of Python 3 libraries that let you load a binary and do a lot of
80
80
  - Value-set analysis (VSA)
81
81
  - Decompilation
82
82
 
83
- The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings.
83
+ The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel) and their docstrings.
84
84
 
85
85
  The short version of "how to install angr" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`.
86
86
 
@@ -108,5 +108,5 @@ project.execute()
108
108
  - Documentation as [HTML](https://docs.angr.io/) and sources in the angr [Github repository](https://github.com/angr/angr/tree/master/docs)
109
109
  - Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel)
110
110
  - [Examples using angr to solve CTF challenges](https://docs.angr.io/examples).
111
- - [API Reference](https://angr.io/api-doc/)
111
+ - [API Reference](https://docs.angr.io/en/latest/api.html)
112
112
  - [awesome-angr repo](https://github.com/degrigis/awesome-angr)
@@ -1,4 +1,4 @@
1
- angr/__init__.py,sha256=vN_wwQPUaez8llCxHPyGbA0xDZPdNi9jbjCSU0hqngI,9246
1
+ angr/__init__.py,sha256=N3ua9-w9Q01-Id9XrkKAweYGX66vX0iiOx_JPukGv8Q,9246
2
2
  angr/__main__.py,sha256=N6uAG4GA5S02pSDUKcWFmTuWiT-qiO7OP7kSfXsF4nQ,6142
3
3
  angr/annocfg.py,sha256=0NIvcuCskwz45hbBzigUTAuCrYutjDMwEXtMJf0y0S0,10742
4
4
  angr/blade.py,sha256=OGGW-oggqI9_LvgZhiQuh9Ktkvf3vhRBmH0XviNyZ6o,15801
@@ -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=sXHWI8EVNK8Ax6--yNOMhyt77Mcxg6shzD1NbMf0GT0,38267
17
17
  angr/py.typed,sha256=la67KBlbjXN-_-DfGNcdOcjYumVpKG_Tkw-8n5dnGB4,8
18
- angr/rustylib.pyd,sha256=6l2QyD79YlwqkUBigSAzWJHi0AhZMfeFW9TBh7L9ph0,4460032
18
+ angr/rustylib.pyd,sha256=gW0fuxa9XER0OdxjTRwqsGs4I-qEOIpSoCkcrjcO3-8,4432384
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=WNLSnmn7gqKBYgQs3Me2H3zKusgt0WVqFzsBuzEZpoU,17436
@@ -27,7 +27,7 @@ angr/sim_variable.py,sha256=3DssmMw5G7m_-MYToJ3LBP-ooy2UQEuI2YgxIuX3d4Y,13177
27
27
  angr/slicer.py,sha256=DND0BERanYKafasRH9MDFAng0rSjdjmzXj2-phCD6CQ,10634
28
28
  angr/state_hierarchy.py,sha256=qDQCUGXmQm3vOxE3CSoiqTH4OAFFOWZZt9BLhNpeOhA,8484
29
29
  angr/tablespecs.py,sha256=Kx1e87FxTx3_ZN7cAHWZSRpdInT4Vfj5gExAWtLkLTw,3259
30
- angr/unicornlib.dll,sha256=Jvlbjqib-vjFw4Ohe5_aR3Bv7CB_p_DGMOyFIyovb14,813568
30
+ angr/unicornlib.dll,sha256=5aF90U__q67MEybXG-BJMXze1uiDFMAwR_7s_jX-VGw,813568
31
31
  angr/vaults.py,sha256=D_gkDegCyPlZMKGC5E8zINYAaZfSXNWbmhX0rXCYpvM,9718
32
32
  angr/ailment/__init__.py,sha256=X1LTS6MuTovGtbXBjZendUVOzRk-ib-bP0imuqJDOYI,2039
33
33
  angr/ailment/block.py,sha256=rkmimsNPhrUabVVbRd2IgCaW0hA2_isvAsKlYtHZhgY,2428
@@ -35,7 +35,7 @@ angr/ailment/block_walker.py,sha256=pAIHNaN0BMxz8iEy-_4qWz1xX-QFSSPr_iA1qqIWsa8,
35
35
  angr/ailment/constant.py,sha256=UG4OKm6VL3uBW_0NxlosWKBqK49gyduJjw64nBcfFfE,64
36
36
  angr/ailment/converter_common.py,sha256=6MxxI3PRZBlFlIP2uZhQAa8vDvJr0nMDd-QnTbPLn6o,180
37
37
  angr/ailment/converter_pcode.py,sha256=6kJmHk2WjPtfQDu_k-4ncRIaNayvxOdsyMFVNUwzUg0,23958
38
- angr/ailment/converter_vex.py,sha256=yIe0hFwuc_2mHVWw_F31u7hDPBQ-7VwuPXaQyNmqfXo,28159
38
+ angr/ailment/converter_vex.py,sha256=PSZvU83HCtRpVax87QUJXWiAshuZ02pNjyU9TbyJ8iU,29091
39
39
  angr/ailment/expression.py,sha256=8gmRcBOBdNitm9xLj7ZRyc8OWhYHep5ANSyQo7EIcms,48632
40
40
  angr/ailment/manager.py,sha256=N6yMJnBdxJfj568KYZbKYERHmQIQpMf_hZPwfpdk9Y8,699
41
41
  angr/ailment/statement.py,sha256=3JEhg-JDRrNjaeHFgO-liEIrZRW6v5sIsOqcGHiuM3A,30472
@@ -56,7 +56,7 @@ angr/analyses/complete_calling_conventions.py,sha256=a-hJQ6yRusDhRADGcLxjY6ETlD1
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=YgU--tr1mZtlNhXTTWLBD4s-4g8vUs-01Vk6A04f5ng,46192
59
+ angr/analyses/disassembly.py,sha256=ukPUguw1WhjsUsXSb-ZbTPbQeN2BuY_UneccNdru20o,48912
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
@@ -65,7 +65,7 @@ angr/analyses/loop_analysis.py,sha256=up6N3SZzya6N6OlKldo_MP36DqiY_tMbVdFWSM8fBy
65
65
  angr/analyses/loopfinder.py,sha256=eNH41_3MW10ccwzw6SGsAuILTKttxikDm2e3c-FUlVI,7030
66
66
  angr/analyses/patchfinder.py,sha256=yf8FwkWPVOrvMRA90dKZizVz4s4QE-upq6B0Xxn8wj8,5063
67
67
  angr/analyses/pathfinder.py,sha256=_prNqmRUSuSt2ZCP8qbvNN7pw7mtM8pWr9IL0AO6XL8,11496
68
- angr/analyses/proximity_graph.py,sha256=KoRvdQswRrDygotrY_6hPnrzUf1U5c5mht-b7lowyFM,16087
68
+ angr/analyses/proximity_graph.py,sha256=iZU1fIUnfg3HEC0E9x4cVC8WC3V0cUbgVQ9CoAbVj0Q,16270
69
69
  angr/analyses/reassembler.py,sha256=UXrDQNJtn4RUurpbIyMVpQ3AZ0VGVQZatoGHziEHvU0,98357
70
70
  angr/analyses/s_liveness.py,sha256=mSWwwAPpXl-dIZNx5pAHA5vWXqCO_OivOXWoiaI7tss,7984
71
71
  angr/analyses/s_propagator.py,sha256=-pqaSlP6TmonDylPbQeHz1DirlpDBq0cMn29LuEzsU8,25157
@@ -83,7 +83,7 @@ angr/analyses/calling_convention/calling_convention.py,sha256=UfMXXoa51UvqHS5XGy
83
83
  angr/analyses/calling_convention/fact_collector.py,sha256=9qx3jvBBrhKvRoZrCir61KZBqFtduiFzhbHAtWFvMic,28762
84
84
  angr/analyses/calling_convention/utils.py,sha256=twkO073RvkkFXnOTc-KYQT1GKUtz0OPjxh0N6AWIriQ,2110
85
85
  angr/analyses/cfg/__init__.py,sha256=-w8Vd6FD6rtjlQaQ7MxwmliFgS2zt-kZepAY4gHas04,446
86
- angr/analyses/cfg/cfb.py,sha256=HI25OJKs2OUlWkOSG4kLsZQFnBJcfDwSQKp6_ZRsoQY,15353
86
+ angr/analyses/cfg/cfb.py,sha256=IpHAvGQPkzY7p_HDSCjVc5cJOXFK-z3scJR9CP4Cr9I,15918
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
89
  angr/analyses/cfg/cfg_base.py,sha256=AdFw6ujMKc0nqLGymiYACOUSNYXTf-5cOjnPeGTaF0U,125012
@@ -116,13 +116,13 @@ 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=1qzHYpc5zS9Ei0wstbNUgbV7wkb0z0-6dPJEvK_Vh1g,95948
119
+ angr/analyses/decompiler/ail_simplifier.py,sha256=RAhozYRT21_c80-8czvAwrCzo7eTInIPmHio764uU4s,95944
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
123
  angr/analyses/decompiler/block_simplifier.py,sha256=vjlugXCB3xFYBDBn3LPxOtU1dDc76PpYtVEoju3i9-4,15513
124
124
  angr/analyses/decompiler/callsite_maker.py,sha256=O7vjwNTmCLijzjKgSCaoX3IX4_sC-u-OqoKhE7lahlc,23427
125
- angr/analyses/decompiler/clinic.py,sha256=src88SCieo4EXC-n9_vRPzMFsKMnBvxN4y--AXl4v7U,151838
125
+ angr/analyses/decompiler/clinic.py,sha256=Yo1OGf5jGDseCOQZt01DqgTi9Ds1QHtEgK4LLB01wWA,152135
126
126
  angr/analyses/decompiler/condition_processor.py,sha256=ALx1EO82EWOfj1mjWhS_8GNMLdEO98jqnIqB-CtfELg,56692
127
127
  angr/analyses/decompiler/decompilation_cache.py,sha256=06oiG299mVpGOTL54Xy1CUxz5s8QLgYJn5XIvKFLYkU,1566
128
128
  angr/analyses/decompiler/decompilation_options.py,sha256=bs6CNpU3UxepgBB_9eUH4jriNpGoryyPP0sR1hDWpTk,8477
@@ -142,7 +142,7 @@ angr/analyses/decompiler/return_maker.py,sha256=sUxRx4LRt1lf-N7x93t7W04lDgJomt_l
142
142
  angr/analyses/decompiler/seq_to_blocks.py,sha256=4-tqstendHHO2J0WD3JHQkm8c4c2KG3AO3mYWrn4xvg,569
143
143
  angr/analyses/decompiler/sequence_walker.py,sha256=_-kUn01iU7iGdrzOPpwzquwk9CVDUL7QfQkv2OT9r8Y,10083
144
144
  angr/analyses/decompiler/stack_item.py,sha256=4HpYE54sOnODzMLrNX1m-Mb9RlQYjojJqNKjjDz9jxU,814
145
- angr/analyses/decompiler/utils.py,sha256=B7YwnEBF6AZ5DG3E7zHK0TF7zOLeiMWEcc18YL_eUyA,43074
145
+ angr/analyses/decompiler/utils.py,sha256=eM1pOuoEUzT-7wd8waRrUvZk7bgA3MamzbyjLv4ETs8,43451
146
146
  angr/analyses/decompiler/ccall_rewriters/__init__.py,sha256=TrnykR5cGCXy85f8OApJBjWSQ8WQSzjrnpND2fODWG8,207
147
147
  angr/analyses/decompiler/ccall_rewriters/amd64_ccalls.py,sha256=pANATa8vdZ9zeVau_VHatCY3ZeSmMszjDpfNI0r3C-4,26634
148
148
  angr/analyses/decompiler/ccall_rewriters/rewriter_base.py,sha256=c7-GxWZbFfJvmg4DPdjYgLXyiasmfgmiQ6IY4fjOVWs,727
@@ -221,7 +221,7 @@ angr/analyses/decompiler/peephole_optimizations/basepointeroffset_and_mask.py,sh
221
221
  angr/analyses/decompiler/peephole_optimizations/bitwise_or_to_logical_or.py,sha256=09PA82Sg2FlBp2XZd4-WSES-8BQesXPXvIlpuuGByvM,1306
222
222
  angr/analyses/decompiler/peephole_optimizations/bool_expr_xor_1.py,sha256=vLXt0ekjRep4SgaNq1wyxVkBTzOMTa03d3rgkjUOcUg,995
223
223
  angr/analyses/decompiler/peephole_optimizations/bswap.py,sha256=fXV_a58W2X30KCanYeSHdZ2yPcfDlyZq_OkYNMkglrg,6420
224
- angr/analyses/decompiler/peephole_optimizations/cas_intrinsics.py,sha256=lzlyhe1RP020ezYN77QRFu5p7zNaH4XSMkpBhxRP7ms,7959
224
+ angr/analyses/decompiler/peephole_optimizations/cas_intrinsics.py,sha256=xfLNvquH6x_-NtEHJpbBJBPTIcBQW6-JpDmcHeuRTxA,7957
225
225
  angr/analyses/decompiler/peephole_optimizations/cmpord_rewriter.py,sha256=sJV-8aP9KUx5Kt7pZmb3M28K3z2bGD3NWJFZOdYaBYc,2662
226
226
  angr/analyses/decompiler/peephole_optimizations/coalesce_adjacent_shrs.py,sha256=fXq-qFe7JUdD5LdtUhoA9AF3LnY-3Jrmo4t3ZRJIIiQ,1414
227
227
  angr/analyses/decompiler/peephole_optimizations/coalesce_same_cascading_ifs.py,sha256=--C1JQluHt8ltdfUPBHvRD3SjW_ZcBU3oWdFwpCtpuw,1072
@@ -271,17 +271,17 @@ angr/analyses/decompiler/presets/preset.py,sha256=LvX7ydyO0ZzQsC0M2fy1wXA_0ygSqe
271
271
  angr/analyses/decompiler/region_simplifiers/__init__.py,sha256=BSD9osrReTEdapOMmyI1kFiN7AmE1EeJGLBV7i0u-Uc,117
272
272
  angr/analyses/decompiler/region_simplifiers/cascading_cond_transformer.py,sha256=xVY1NUqFudjdcFFO5RAfbdIlHyCRPLYDVPM8Z4J6uic,3832
273
273
  angr/analyses/decompiler/region_simplifiers/cascading_ifs.py,sha256=kPWajH8__ap-7713B-rT3Dun_O1gYW-AoS5gJHRoMlY,2610
274
- angr/analyses/decompiler/region_simplifiers/expr_folding.py,sha256=naCgnDUjdiDsh6dvoNO-VARfbTfaEYpu3EX9HkJ1cqE,31790
274
+ angr/analyses/decompiler/region_simplifiers/expr_folding.py,sha256=OkKG5u5EONaQ5IOO87ZF04Y3Xsha3dzgNJsSJ1C6cHE,32822
275
275
  angr/analyses/decompiler/region_simplifiers/goto.py,sha256=z2fZYNK5DsiHdOBLSEeZ-_CC6_5bBZDVV7N6z-wD_TE,6117
276
276
  angr/analyses/decompiler/region_simplifiers/if_.py,sha256=FPTNUKPB-7kABEXntq6x5pUfVzGgVR25h18h2HTTv5E,4422
277
277
  angr/analyses/decompiler/region_simplifiers/ifelse.py,sha256=rU01g103DJXtHBX72A2gbZJYlpVnmjLxL5Oo0FfjrVs,3808
278
278
  angr/analyses/decompiler/region_simplifiers/loop.py,sha256=iU2lG-O0HUqxkKtY3ydmKh2pL1TPxEttdUV_oiB3qn8,6331
279
279
  angr/analyses/decompiler/region_simplifiers/node_address_finder.py,sha256=saxgjw416DtUlMsE7kvLL5pTr5CUffRNHWwvXhEe9-s,616
280
- angr/analyses/decompiler/region_simplifiers/region_simplifier.py,sha256=kN8NWmdNrZIY-YiwQFE2PsvxgCupyGCczH7kmKPfUQM,9536
280
+ angr/analyses/decompiler/region_simplifiers/region_simplifier.py,sha256=9Kt6TmXFoL0h4ml2GwQRsN9LQApBR-V8Oj02cbsmvXw,9744
281
281
  angr/analyses/decompiler/region_simplifiers/switch_cluster_simplifier.py,sha256=QYrSLtD9zvfJnU8VwFa0E7NaDfKkA8vF32s2G08wTho,24926
282
282
  angr/analyses/decompiler/region_simplifiers/switch_expr_simplifier.py,sha256=YSmBBC1MIr4Na1DDFiw-309nkyNTnL-9hucM8gZf-C0,3351
283
283
  angr/analyses/decompiler/ssailification/__init__.py,sha256=zcHoI7e2El2RSU_bHTpQRd1XRLHOfFScG6f3cm5y_lQ,108
284
- angr/analyses/decompiler/ssailification/rewriting.py,sha256=aIYuFGlroEXqxaf6lZCfodLD2B53Sb8UJgl2nNb4lg8,15076
284
+ angr/analyses/decompiler/ssailification/rewriting.py,sha256=opMP9ONIx-cQ26PSyXO_NR9MTM_LaH-MObFk8C2uXto,15143
285
285
  angr/analyses/decompiler/ssailification/rewriting_engine.py,sha256=wGUdybrGWTlE73hwS3gzyRiTtXL03tq8FL7-qYNl_X8,41486
286
286
  angr/analyses/decompiler/ssailification/rewriting_state.py,sha256=NAwVcBYh-BQo9K7nfnUlNDBAYflfFMgBYzsVD3BwiN8,1898
287
287
  angr/analyses/decompiler/ssailification/ssailification.py,sha256=LGRFDz6tQmKeJKomSQlxTTr3ILdJaI0iYBaizE5BNCI,11288
@@ -290,12 +290,12 @@ angr/analyses/decompiler/ssailification/traversal_engine.py,sha256=MdmNKWN2LVQ9f
290
290
  angr/analyses/decompiler/ssailification/traversal_state.py,sha256=RDs2mTc6GYnbMom2gBfNfNMcazKMSkhemEmse8uELTY,1558
291
291
  angr/analyses/decompiler/structured_codegen/__init__.py,sha256=mxG4yruPAab8735wVgXZ1zu8qFPz-njKe0m5UcywE3o,633
292
292
  angr/analyses/decompiler/structured_codegen/base.py,sha256=mb5d5iQO1N2wMl7QySvfHemXM-e0yQBhjtlmnLsVSgE,5134
293
- angr/analyses/decompiler/structured_codegen/c.py,sha256=7rcmoqzbUa_Cv9Dnab1Vs72gVAOb2gGYR17G33BoQ98,150245
293
+ angr/analyses/decompiler/structured_codegen/c.py,sha256=fgkU26x8sNFZij1h7GTkFGlQYG6oKn5L9tFBVQa8j0c,152371
294
294
  angr/analyses/decompiler/structured_codegen/dummy.py,sha256=JZLeovXE-8C-unp2hbejxCG30l-yCx4sWFh7JMF_iRM,570
295
295
  angr/analyses/decompiler/structured_codegen/dwarf_import.py,sha256=J6V40RuIyKXN7r6ESftIYfoREgmgFavnUL5m3lyTzlM,7072
296
296
  angr/analyses/decompiler/structuring/__init__.py,sha256=kEFP-zv9CZrhJtLTKwT9-9cGVTls71wLYaLDUuYorBU,711
297
297
  angr/analyses/decompiler/structuring/dream.py,sha256=QNZ8dKk79Uq0urUEpwmBgX2Ak3ZQLhiydcSKJTx968c,48738
298
- angr/analyses/decompiler/structuring/phoenix.py,sha256=-yGUKZt37N0tbqTJoRI4Pk_ohZhYaxT22wWEWsblzZ4,164692
298
+ angr/analyses/decompiler/structuring/phoenix.py,sha256=Ekifz6wkQ0LI0s4Ar7aKBCj65jTzXc8VOaijf3p9eI8,167978
299
299
  angr/analyses/decompiler/structuring/recursive_structurer.py,sha256=iWFZdM54C1q2ezL7ouhH6rygJiGO2OCUH5JKXKgrf6w,7422
300
300
  angr/analyses/decompiler/structuring/sailr.py,sha256=aJCES4r5HaLs-l1tXagIPtXpWnqY_uTlJn7wCYKnwTg,6127
301
301
  angr/analyses/decompiler/structuring/structurer_base.py,sha256=xzQMYBInNyeRYibbiuk6EYbvPO235El3guT1yh1qAxw,50690
@@ -548,7 +548,7 @@ angr/exploration_techniques/timeout.py,sha256=JbKoV1MXYHVaiMERUy0gbEV7yeRy_uDjsg
548
548
  angr/exploration_techniques/tracer.py,sha256=QqxsNn4jPwbpquZfjZDMlyIyAoZa1cOodDJhvS41Cx4,50111
549
549
  angr/exploration_techniques/unique.py,sha256=UqB8dUzvgaSfYBfm15g8XYlBsS8Out0z1loN4sjBsNw,4453
550
550
  angr/exploration_techniques/veritesting.py,sha256=8F7emyvQa8SOjr7Ztk7Bw-aIrYjrvmXBeaavMlNLvxs,1392
551
- angr/flirt/__init__.py,sha256=uPA4ff2d8FQYfGzq2rgM5pJ9PAH82275On3EFKqXktE,3514
551
+ angr/flirt/__init__.py,sha256=HXFNQiXaGhcnJVaTXKhkXVywO_8uLCQHXW4y9FbnXdM,3783
552
552
  angr/flirt/build_sig.py,sha256=AO48uuWi76eMiw4-RTJn58j6DDyziy7HCuWMNpApcOQ,10020
553
553
  angr/knowledge_plugins/__init__.py,sha256=T8ovRNYYhqk_QkKN2OU5JXzeYZob8iq3v0ZlnX8_Hho,1160
554
554
  angr/knowledge_plugins/callsite_prototypes.py,sha256=ZVqTebckIj2VonQSGLFYW6TUgft1J5sOpSwE0K1Nyuk,1587
@@ -581,7 +581,7 @@ angr/knowledge_plugins/key_definitions/definition.py,sha256=AAePJW3BYV0Ju3ZFdqVJ
581
581
  angr/knowledge_plugins/key_definitions/environment.py,sha256=UbXUgv2vjz_dbG_gF2iNK6ZztKt2vgxov9SXdVEWFXk,3886
582
582
  angr/knowledge_plugins/key_definitions/heap_address.py,sha256=YF5k7saQTQA7cz3Sz0PbW7N3qpNZoVrlpOvq1L6gvFI,919
583
583
  angr/knowledge_plugins/key_definitions/key_definition_manager.py,sha256=LYLFUutUqWB1jSOjWh7b_JQtIaT08duv8_TUZIt5R-k,3313
584
- angr/knowledge_plugins/key_definitions/live_definitions.py,sha256=Cehc8UIj8D174Iy7wLvHfElRq-caFCms09AbxGVpWu4,38964
584
+ angr/knowledge_plugins/key_definitions/live_definitions.py,sha256=y5oFS8du8TYSDN_d26aW-83WaZ8_PGs1TkaDcAdZwYA,38989
585
585
  angr/knowledge_plugins/key_definitions/liveness.py,sha256=FtbfnQTtILx3a3j21MKVVuZX4lN3x7n6ccYuIVDo2CY,6933
586
586
  angr/knowledge_plugins/key_definitions/rd_model.py,sha256=wJUpQ1-QkNNOTYqPrlCY840SrG3KUns8fJahIqvcdTM,7105
587
587
  angr/knowledge_plugins/key_definitions/tag.py,sha256=QWtBe5yuMei6t2NRPwolVyUa1XyY2khMeU6pQwb66iQ,1710
@@ -1393,14 +1393,14 @@ angr/utils/orderedset.py,sha256=aGfmLdOS77nzz2eoPpCqRICqzaAeBnuis1Et_I_hiZg,2047
1393
1393
  angr/utils/strings.py,sha256=iv3Mg_KCyyPx9dkIw-O0ZidWyGl8mqPDkyNJwZYQr_U,688
1394
1394
  angr/utils/tagged_interval_map.py,sha256=rXKBuT14N23AAntpOKhZhmA-qqymnsvjpheFXoTRVRA,4417
1395
1395
  angr/utils/timing.py,sha256=n-YZ86g0ZWmLhsoNvcimRpKzewR5hmquLZe6fagxlBw,2224
1396
- angr/utils/types.py,sha256=688trvR0_j93sfeRgFT1npcmjNGSx99m_IPe9Xyy9WY,4967
1396
+ angr/utils/types.py,sha256=_DklLSyARlUJyEf4Viub95lYWF7Yh9PmKAd74munutQ,5052
1397
1397
  angr/utils/vex.py,sha256=epcrCexi_NjKnPGM2gfpiRsUea_Scd-71UMuF32ZAQo,306
1398
1398
  angr/utils/ssa/__init__.py,sha256=rKlgdaTSouwofsLNMa8MKfWb_tqntfp_B5nm-FOeh2Y,17390
1399
1399
  angr/utils/ssa/tmp_uses_collector.py,sha256=digAUQpYoFR1VYfwoXlF3T1pYdDi6Pdq_ck54SjMabQ,813
1400
1400
  angr/utils/ssa/vvar_uses_collector.py,sha256=HewqUQluNE9EsaiLeFo7LaBvws_DDBDYNt9RBExy464,1367
1401
- angr-9.2.178.dist-info/licenses/LICENSE,sha256=PmWf0IlSz6Jjp9n7nyyBQA79Q5C2ma68LRykY1V3GF0,1456
1402
- angr-9.2.178.dist-info/METADATA,sha256=5S5i0ouGRfaEj1PUUCnHHUGpkh7-JaTm28FhF1h_5NY,4524
1403
- angr-9.2.178.dist-info/WHEEL,sha256=OJ2zpOfp3Fst0GC5jHtFuY8tAf46LLgZ9O920dE4b3c,100
1404
- angr-9.2.178.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
1405
- angr-9.2.178.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
1406
- angr-9.2.178.dist-info/RECORD,,
1401
+ angr-9.2.180.dist-info/licenses/LICENSE,sha256=PmWf0IlSz6Jjp9n7nyyBQA79Q5C2ma68LRykY1V3GF0,1456
1402
+ angr-9.2.180.dist-info/METADATA,sha256=1_x78tjck5wIwyCHF4YuOG-MvbhjIt3_HJJv-6s-xj4,4557
1403
+ angr-9.2.180.dist-info/WHEEL,sha256=OJ2zpOfp3Fst0GC5jHtFuY8tAf46LLgZ9O920dE4b3c,100
1404
+ angr-9.2.180.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
1405
+ angr-9.2.180.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
1406
+ angr-9.2.180.dist-info/RECORD,,
File without changes