angr 9.2.109__py3-none-win_amd64.whl → 9.2.111__py3-none-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.
- angr/__init__.py +1 -1
- angr/analyses/decompiler/condition_processor.py +1 -3
- angr/analyses/decompiler/peephole_optimizations/inlined_strcpy.py +2 -1
- angr/analyses/decompiler/peephole_optimizations/inlined_wstrcpy.py +2 -1
- angr/engines/light/engine.py +6 -0
- angr/lib/angr_native.dll +0 -0
- angr/utils/endness.py +17 -0
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/METADATA +6 -6
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/RECORD +13 -12
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/WHEEL +1 -1
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/LICENSE +0 -0
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/entry_points.txt +0 -0
- {angr-9.2.109.dist-info → angr-9.2.111.dist-info}/top_level.txt +0 -0
angr/__init__.py
CHANGED
|
@@ -752,9 +752,7 @@ class ConditionProcessor:
|
|
|
752
752
|
f"ailexpr_{repr(condition)}-{condition.variable.ident}", condition.bits, explicit_name=True
|
|
753
753
|
)
|
|
754
754
|
else:
|
|
755
|
-
var = claripy.BVS(
|
|
756
|
-
"ailexpr_%s-%d" % (repr(condition), condition.idx), condition.bits, explicit_name=True
|
|
757
|
-
)
|
|
755
|
+
var = claripy.BVS(f"ailexpr_{repr(condition)}-{condition.idx}", condition.bits, explicit_name=True)
|
|
758
756
|
self._condition_mapping[var.args[0]] = condition
|
|
759
757
|
return var
|
|
760
758
|
elif isinstance(condition, ailment.Expr.Convert):
|
|
@@ -6,6 +6,7 @@ from archinfo import Endness
|
|
|
6
6
|
from ailment.expression import Const, StackBaseOffset
|
|
7
7
|
from ailment.statement import Call, Store
|
|
8
8
|
|
|
9
|
+
from angr.utils.endness import ail_const_to_be
|
|
9
10
|
from .base import PeepholeOptimizationStmtBase
|
|
10
11
|
|
|
11
12
|
|
|
@@ -102,7 +103,7 @@ class InlinedStrcpy(PeepholeOptimizationStmtBase):
|
|
|
102
103
|
continue
|
|
103
104
|
if isinstance(stmt, Store) and isinstance(stmt.addr, StackBaseOffset) and isinstance(stmt.addr.offset, int):
|
|
104
105
|
if isinstance(stmt.data, Const):
|
|
105
|
-
r[stmt.addr.offset] = idx, stmt.data
|
|
106
|
+
r[stmt.addr.offset] = idx, ail_const_to_be(stmt.data, stmt.endness)
|
|
106
107
|
else:
|
|
107
108
|
r[stmt.addr.offset] = idx, None
|
|
108
109
|
|
|
@@ -6,6 +6,7 @@ from archinfo import Endness
|
|
|
6
6
|
from ailment.expression import Const, StackBaseOffset
|
|
7
7
|
from ailment.statement import Call, Store
|
|
8
8
|
|
|
9
|
+
from angr.utils.endness import ail_const_to_be
|
|
9
10
|
from .base import PeepholeOptimizationStmtBase
|
|
10
11
|
|
|
11
12
|
|
|
@@ -102,7 +103,7 @@ class InlinedWstrcpy(PeepholeOptimizationStmtBase):
|
|
|
102
103
|
continue
|
|
103
104
|
if isinstance(stmt, Store) and isinstance(stmt.addr, StackBaseOffset) and isinstance(stmt.addr.offset, int):
|
|
104
105
|
if isinstance(stmt.data, Const):
|
|
105
|
-
r[stmt.addr.offset] = idx, stmt.data
|
|
106
|
+
r[stmt.addr.offset] = idx, ail_const_to_be(stmt.data, stmt.endness)
|
|
106
107
|
else:
|
|
107
108
|
r[stmt.addr.offset] = idx, None
|
|
108
109
|
|
angr/engines/light/engine.py
CHANGED
|
@@ -72,6 +72,12 @@ class SimEngineLightMixin:
|
|
|
72
72
|
return 0
|
|
73
73
|
elif isinstance(spoffset_expr.args[1], claripy.ast.Base) and spoffset_expr.args[1].op == "BVV":
|
|
74
74
|
return spoffset_expr.args[1].args[0]
|
|
75
|
+
elif spoffset_expr.op == "__sub__":
|
|
76
|
+
if len(spoffset_expr.args) == 1:
|
|
77
|
+
# Unexpected but fine
|
|
78
|
+
return 0
|
|
79
|
+
elif isinstance(spoffset_expr.args[1], claripy.ast.Base) and spoffset_expr.args[1].op == "BVV":
|
|
80
|
+
return -spoffset_expr.args[1].args[0] & ((1 << spoffset_expr.size()) - 1)
|
|
75
81
|
return None
|
|
76
82
|
|
|
77
83
|
|
angr/lib/angr_native.dll
CHANGED
|
Binary file
|
angr/utils/endness.py
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from ailment.expression import Const
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def ail_const_to_be(expr: Const, endness: str) -> Const:
|
|
5
|
+
if endness == "Iend_LE" and expr.size > 1:
|
|
6
|
+
# reverse the expression
|
|
7
|
+
v = expr.value
|
|
8
|
+
lst = []
|
|
9
|
+
while len(lst) < expr.size:
|
|
10
|
+
lst.append(v & 0xFF)
|
|
11
|
+
v >>= 8
|
|
12
|
+
v = 0
|
|
13
|
+
for elem in lst:
|
|
14
|
+
v <<= 8
|
|
15
|
+
v += elem
|
|
16
|
+
return Const(expr.idx, None, v, expr.bits, **expr.tags)
|
|
17
|
+
return expr
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: angr
|
|
3
|
-
Version: 9.2.
|
|
3
|
+
Version: 9.2.111
|
|
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
|
Home-page: https://github.com/angr/angr
|
|
6
6
|
License: BSD-2-Clause
|
|
@@ -15,13 +15,13 @@ Description-Content-Type: text/markdown
|
|
|
15
15
|
License-File: LICENSE
|
|
16
16
|
Requires-Dist: CppHeaderParser
|
|
17
17
|
Requires-Dist: GitPython
|
|
18
|
-
Requires-Dist: ailment ==9.2.
|
|
19
|
-
Requires-Dist: archinfo ==9.2.
|
|
18
|
+
Requires-Dist: ailment ==9.2.111
|
|
19
|
+
Requires-Dist: archinfo ==9.2.111
|
|
20
20
|
Requires-Dist: cachetools
|
|
21
21
|
Requires-Dist: capstone ==5.0.0.post1
|
|
22
22
|
Requires-Dist: cffi >=1.14.0
|
|
23
|
-
Requires-Dist: claripy ==9.2.
|
|
24
|
-
Requires-Dist: cle ==9.2.
|
|
23
|
+
Requires-Dist: claripy ==9.2.111
|
|
24
|
+
Requires-Dist: cle ==9.2.111
|
|
25
25
|
Requires-Dist: dpkt
|
|
26
26
|
Requires-Dist: itanium-demangler
|
|
27
27
|
Requires-Dist: mulpyplexer
|
|
@@ -31,7 +31,7 @@ Requires-Dist: protobuf >=3.19.0
|
|
|
31
31
|
Requires-Dist: psutil
|
|
32
32
|
Requires-Dist: pycparser >=2.18
|
|
33
33
|
Requires-Dist: pyformlang
|
|
34
|
-
Requires-Dist: pyvex ==9.2.
|
|
34
|
+
Requires-Dist: pyvex ==9.2.111
|
|
35
35
|
Requires-Dist: rich >=13.1.0
|
|
36
36
|
Requires-Dist: rpyc
|
|
37
37
|
Requires-Dist: sortedcontainers
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
angr/__init__.py,sha256=
|
|
1
|
+
angr/__init__.py,sha256=Kf0h-gf3w0Msnfqn-ZlTg2_pLo9i_vygjYlrf1-vibA,3708
|
|
2
2
|
angr/__main__.py,sha256=kaO56Te6h73SM94BVtASF00q5QbBbC3eBs9poVc9sVI,1887
|
|
3
3
|
angr/annocfg.py,sha256=1tnBfxgLJh9I6Brm1JDdsWLHGmCQYdD6PTC_bFTOMrg,10775
|
|
4
4
|
angr/blade.py,sha256=B8QXVQ93jz1YCIlb-dZLeBqYmVFdMXI5GleP1Wnxjrw,15519
|
|
@@ -97,7 +97,7 @@ angr/analyses/decompiler/block_simplifier.py,sha256=78vfpaG13JWCxijDrp3Q4wyiEw7h
|
|
|
97
97
|
angr/analyses/decompiler/call_counter.py,sha256=V3TIaSvLUy9vLEWErnvlCS--_ubGWQAeU0tqq6XYeOU,1205
|
|
98
98
|
angr/analyses/decompiler/callsite_maker.py,sha256=GUgUkSsOznUaTIB9PUoBFyWJp9WkH4T8jf5xBIE5p9M,15909
|
|
99
99
|
angr/analyses/decompiler/clinic.py,sha256=81gi7DBCaZy-xK_TZGrApUEz00y756V4ZKVAHtugmwk,95748
|
|
100
|
-
angr/analyses/decompiler/condition_processor.py,sha256=
|
|
100
|
+
angr/analyses/decompiler/condition_processor.py,sha256=dEJIc3RYbrn_JIX0wYGH332VxTld0OVMYTTa5wCqFwg,49847
|
|
101
101
|
angr/analyses/decompiler/decompilation_cache.py,sha256=NKbvKYZOe7791udwdf70tq9hJe79GMS6M1jaDJC8lSQ,1130
|
|
102
102
|
angr/analyses/decompiler/decompilation_options.py,sha256=FMfcQ0aFDMPW9d0sYpqCwrOVYoq75YkExAvR6CjZCt4,8224
|
|
103
103
|
angr/analyses/decompiler/decompiler.py,sha256=152EWqKPC2J_JcC3_rnJPNL9iDbFTm-AXamm3hjzfFE,22253
|
|
@@ -168,9 +168,9 @@ angr/analyses/decompiler/peephole_optimizations/conv_a_sub0_shr_and.py,sha256=vz
|
|
|
168
168
|
angr/analyses/decompiler/peephole_optimizations/conv_shl_shr.py,sha256=0IHIk7uxIC70140k3VcXlnx4QcunAeoETXF1ZgJi2Pk,2070
|
|
169
169
|
angr/analyses/decompiler/peephole_optimizations/eager_eval.py,sha256=3Ak_Xb5r9DhYFKPPE1pIOtpnxNOsDsWgI_ld7g0N8H4,10207
|
|
170
170
|
angr/analyses/decompiler/peephole_optimizations/extended_byte_and_mask.py,sha256=ymP9tDU4NipGOdFWsmLHrR6dKVcEFiaTgM1-L_dfmOM,2015
|
|
171
|
-
angr/analyses/decompiler/peephole_optimizations/inlined_strcpy.py,sha256=
|
|
171
|
+
angr/analyses/decompiler/peephole_optimizations/inlined_strcpy.py,sha256=31xruAOQ0gtySg6xQiuZCPeBoH9JaIxLv3aeyXyB6wY,5772
|
|
172
172
|
angr/analyses/decompiler/peephole_optimizations/inlined_strcpy_consolidation.py,sha256=xyiXyjOJ0NWgnTcN8ij3i7w997LGmw1ECnKh1z6F73k,4632
|
|
173
|
-
angr/analyses/decompiler/peephole_optimizations/inlined_wstrcpy.py,sha256=
|
|
173
|
+
angr/analyses/decompiler/peephole_optimizations/inlined_wstrcpy.py,sha256=FyxnWgM3EW2Zy7JXTMUS9fturIxlwk6zV5-OrY6VO2A,6304
|
|
174
174
|
angr/analyses/decompiler/peephole_optimizations/invert_negated_logical_conjuction_disjunction.py,sha256=a0IDp0kKBrPwhDVejPFhcNseZdprF_5EZRZs7KTR4gA,2084
|
|
175
175
|
angr/analyses/decompiler/peephole_optimizations/one_sub_bool.py,sha256=kW8AbWfMqFzI1CVFp79TFX60IZxaQhRG8XUckuc-vGI,1136
|
|
176
176
|
angr/analyses/decompiler/peephole_optimizations/remove_cascading_conversions.py,sha256=3a1ZoTq66HTU68y5DCC2sLvItPmqF_Kv05uvOacxsRM,591
|
|
@@ -337,7 +337,7 @@ angr/engines/syscall.py,sha256=LNMC3zyis3OiWC7_8Zn1blMw1EDib5FjUqepXlaWDTI,2177
|
|
|
337
337
|
angr/engines/unicorn.py,sha256=gf7LjjWyaaujqSuCq3d-BGm8t5sdZjzsJeBevGfdiLw,24447
|
|
338
338
|
angr/engines/light/__init__.py,sha256=j9vH2fU9MaNVQ8NT3Ek3Tj2zkGlVxlKyzia8zVTofYs,186
|
|
339
339
|
angr/engines/light/data.py,sha256=jZBAJxor2zg5m4s63joSrjUs8H-OeHBZiqZmc3dqEQQ,23132
|
|
340
|
-
angr/engines/light/engine.py,sha256=
|
|
340
|
+
angr/engines/light/engine.py,sha256=4JNJO9kOkINMRwEyRpKKotXPEzMBJrExJk3Nr1CeRNE,45469
|
|
341
341
|
angr/engines/pcode/__init__.py,sha256=UwMEwXQvHXIIgedJn2ZOvBBEgfHg2rfREBSpcTSXCZ4,83
|
|
342
342
|
angr/engines/pcode/behavior.py,sha256=BuzA_nX_ebuFiGgup7aJ-bgD9KmUR2dPSGUM51MKxOM,29290
|
|
343
343
|
angr/engines/pcode/cc.py,sha256=CUKkivYUddt8McAYLwAPO5btzDHwO65yBQvWs3CV9dU,3085
|
|
@@ -489,7 +489,7 @@ angr/knowledge_plugins/xrefs/__init__.py,sha256=-5A2h048WTRu6Et7q7bqlc-AyBXNuJ9A
|
|
|
489
489
|
angr/knowledge_plugins/xrefs/xref.py,sha256=1BMphrr8iViDtVWPXWidmY1_uNmw9LRvEwwZLt3Zqw8,4907
|
|
490
490
|
angr/knowledge_plugins/xrefs/xref_manager.py,sha256=a4uvTJkdM0PQIuyYcd7t76IddrrVjPGe9SZrRaqp2II,3980
|
|
491
491
|
angr/knowledge_plugins/xrefs/xref_types.py,sha256=VR3xLQQ-gUg25oX0OL3BJHyQRlZh2A8syBac9ZMS9n4,271
|
|
492
|
-
angr/lib/angr_native.dll,sha256=
|
|
492
|
+
angr/lib/angr_native.dll,sha256=00Q3QZlb88519E_wp4Vz6eTpDtnMQl0ucCqZdjdE7jg,19241984
|
|
493
493
|
angr/misc/__init__.py,sha256=Ct-Q6-c-Frdz5Ihkqmou3j_1jyJi8WJXlQxs-gPQg0Y,237
|
|
494
494
|
angr/misc/ansi.py,sha256=m5RY65yyvluUJErkvCF4I4z1o5kXi2xb3Yuvt9bITCA,776
|
|
495
495
|
angr/misc/autoimport.py,sha256=vSXclz6pss3lMecoT5_doX0SvORNmZPIvVyDm4je4HE,3419
|
|
@@ -1280,6 +1280,7 @@ angr/utils/algo.py,sha256=abkp6yy6FMqJSt0VfOpy5eSqWnheLLqOQ_kAAyhLXFc,1003
|
|
|
1280
1280
|
angr/utils/constants.py,sha256=hxSJHIILsDP8ZOpw76BxMLu2Q_s2-rxTjACh7RL5wJs,209
|
|
1281
1281
|
angr/utils/cowdict.py,sha256=GlvZxwYPJRPrmgbcB8Tay-q1KBNeJDU3oKwoxZ-aUFs,2160
|
|
1282
1282
|
angr/utils/dynamic_dictlist.py,sha256=-85XkPEjVWhGDRteUsTXqOQ4StmySUuvpDzHaFN9Nn8,3073
|
|
1283
|
+
angr/utils/endness.py,sha256=gfeFyA-4SrBDlKfz5WjHVKxmpNUHKZ6caILLjrSiPy0,466
|
|
1283
1284
|
angr/utils/enums_conv.py,sha256=YdnZzvuVc_BW1EuC4OtEo7LqB35XkPrXICyWox8Posg,2091
|
|
1284
1285
|
angr/utils/env.py,sha256=wWlmjLp7CtafKItn7xq2RW3UzGGgxw58Wc8fSm3EZJQ,363
|
|
1285
1286
|
angr/utils/formatting.py,sha256=tSnCLNIAWRhYyYF4HpNrlTlX6ny2taEEnxDUKDb1d-o,4207
|
|
@@ -1292,9 +1293,9 @@ angr/utils/mp.py,sha256=cv_NeysxLgyCdE-Euefnfv078ia5maHSnUn9f23zz88,1882
|
|
|
1292
1293
|
angr/utils/segment_list.py,sha256=5nnuVtdZk9NS2y_xUBVA9khWPueP_zagNtPSjaoMHbA,20410
|
|
1293
1294
|
angr/utils/timing.py,sha256=uOowCP8kotDrKDOjlAod-guBuYkAA8zEtiAwpdwMlIU,1334
|
|
1294
1295
|
angr/utils/typing.py,sha256=pCjA7JZAzcvrk-iyIE2cRHc1G66AMSGEON3aFfjtPVc,431
|
|
1295
|
-
angr-9.2.
|
|
1296
|
-
angr-9.2.
|
|
1297
|
-
angr-9.2.
|
|
1298
|
-
angr-9.2.
|
|
1299
|
-
angr-9.2.
|
|
1300
|
-
angr-9.2.
|
|
1296
|
+
angr-9.2.111.dist-info/LICENSE,sha256=cgL_ho5B1NH8UxwtBuqThRWdjear8b7hktycaS1sz6g,1327
|
|
1297
|
+
angr-9.2.111.dist-info/METADATA,sha256=AdfibFk8gO1qUCPt5-JCT9WLvObuKydbKVTE9GIrwLQ,4822
|
|
1298
|
+
angr-9.2.111.dist-info/WHEEL,sha256=HCBekDYvSbcke7r9H9NVZ4Qauq9vgcRvTniTe1vqLk0,97
|
|
1299
|
+
angr-9.2.111.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
|
|
1300
|
+
angr-9.2.111.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
|
|
1301
|
+
angr-9.2.111.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|