angr 9.2.133__py3-none-win_amd64.whl → 9.2.134__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/cfg/indirect_jump_resolvers/jumptable.py +6 -6
- angr/analyses/decompiler/structured_codegen/c.py +15 -5
- angr/lib/angr_native.dll +0 -0
- angr/storage/memory_mixins/name_resolution_mixin.py +1 -1
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/METADATA +6 -6
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/RECORD +11 -11
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/LICENSE +0 -0
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/WHEEL +0 -0
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/entry_points.txt +0 -0
- {angr-9.2.133.dist-info → angr-9.2.134.dist-info}/top_level.txt +0 -0
angr/__init__.py
CHANGED
|
@@ -1639,7 +1639,7 @@ class JumpTableResolver(IndirectJumpResolver):
|
|
|
1639
1639
|
# If we're just reading a constant, don't bother with the rest of this mess!
|
|
1640
1640
|
if isinstance(load_stmt, pyvex.IRStmt.WrTmp):
|
|
1641
1641
|
assert isinstance(load_stmt.data, pyvex.IRExpr.Load)
|
|
1642
|
-
if
|
|
1642
|
+
if isinstance(load_stmt.data.addr, pyvex.IRExpr.Const):
|
|
1643
1643
|
# It's directly loading from a constant address
|
|
1644
1644
|
# e.g.,
|
|
1645
1645
|
# ldr r0, =main+1
|
|
@@ -1656,7 +1656,7 @@ class JumpTableResolver(IndirectJumpResolver):
|
|
|
1656
1656
|
l.info("Resolved constant indirect jump from %#08x to %#08x", addr, jump_target_addr)
|
|
1657
1657
|
return jump_target
|
|
1658
1658
|
|
|
1659
|
-
elif isinstance(load_stmt, pyvex.IRStmt.LoadG) and
|
|
1659
|
+
elif isinstance(load_stmt, pyvex.IRStmt.LoadG) and isinstance(load_stmt.addr, pyvex.IRExpr.Const):
|
|
1660
1660
|
# It's directly loading from a constant address
|
|
1661
1661
|
# e.g.,
|
|
1662
1662
|
# 4352c SUB R1, R11, #0x1000
|
|
@@ -2269,9 +2269,9 @@ class JumpTableResolver(IndirectJumpResolver):
|
|
|
2269
2269
|
|
|
2270
2270
|
if isinstance(load_stmt, pyvex.IRStmt.WrTmp):
|
|
2271
2271
|
assert isinstance(load_stmt.data, pyvex.IRExpr.Load)
|
|
2272
|
-
if
|
|
2272
|
+
if isinstance(load_stmt.data.addr, pyvex.IRExpr.RdTmp):
|
|
2273
2273
|
load_addr_tmp = load_stmt.data.addr.tmp
|
|
2274
|
-
elif
|
|
2274
|
+
elif isinstance(load_stmt.data.addr, pyvex.IRExpr.Const):
|
|
2275
2275
|
# It's directly loading from a constant address
|
|
2276
2276
|
# e.g.,
|
|
2277
2277
|
# ldr r0, =main+1
|
|
@@ -2280,9 +2280,9 @@ class JumpTableResolver(IndirectJumpResolver):
|
|
|
2280
2280
|
jump_target_addr = load_stmt.data.addr.con.value
|
|
2281
2281
|
return claripy.BVV(jump_target_addr, state.arch.bits)
|
|
2282
2282
|
elif isinstance(load_stmt, pyvex.IRStmt.LoadG):
|
|
2283
|
-
if
|
|
2283
|
+
if isinstance(load_stmt.addr, pyvex.IRExpr.RdTmp):
|
|
2284
2284
|
load_addr_tmp = load_stmt.addr.tmp
|
|
2285
|
-
elif
|
|
2285
|
+
elif isinstance(load_stmt.addr, pyvex.IRExpr.Const):
|
|
2286
2286
|
# It's directly loading from a constant address
|
|
2287
2287
|
# e.g.,
|
|
2288
2288
|
# 4352c SUB R1, R11, #0x1000
|
|
@@ -1221,20 +1221,30 @@ class CAssignment(CStatement):
|
|
|
1221
1221
|
"Shl": "<<",
|
|
1222
1222
|
"Sar": ">>",
|
|
1223
1223
|
}
|
|
1224
|
+
commutative_ops = {"Add", "Mul", "And", "Xor", "Or"}
|
|
1224
1225
|
|
|
1226
|
+
compound_expr_rhs = None
|
|
1225
1227
|
if (
|
|
1226
1228
|
self.codegen.use_compound_assignments
|
|
1227
1229
|
and isinstance(self.lhs, CVariable)
|
|
1228
1230
|
and isinstance(self.rhs, CBinaryOp)
|
|
1229
|
-
and isinstance(self.rhs.lhs, CVariable)
|
|
1230
|
-
and self.lhs.unified_variable is not None
|
|
1231
|
-
and self.rhs.lhs.unified_variable is not None
|
|
1232
|
-
and self.lhs.unified_variable is self.rhs.lhs.unified_variable
|
|
1233
1231
|
and self.rhs.op in compound_assignment_ops
|
|
1232
|
+
and self.lhs.unified_variable is not None
|
|
1234
1233
|
):
|
|
1234
|
+
if isinstance(self.rhs.lhs, CVariable) and self.lhs.unified_variable is self.rhs.lhs.unified_variable:
|
|
1235
|
+
compound_expr_rhs = self.rhs.rhs
|
|
1236
|
+
elif (
|
|
1237
|
+
self.rhs.op in commutative_ops
|
|
1238
|
+
and isinstance(self.rhs.rhs, CVariable)
|
|
1239
|
+
and self.lhs.unified_variable is self.rhs.rhs.unified_variable
|
|
1240
|
+
):
|
|
1241
|
+
compound_expr_rhs = self.rhs.lhs
|
|
1242
|
+
|
|
1243
|
+
if compound_expr_rhs is not None:
|
|
1235
1244
|
# a = a + x => a += x
|
|
1245
|
+
# a = x + a => a += x
|
|
1236
1246
|
yield f" {compound_assignment_ops[self.rhs.op]}= ", self
|
|
1237
|
-
yield from CExpression._try_c_repr_chunks(
|
|
1247
|
+
yield from CExpression._try_c_repr_chunks(compound_expr_rhs)
|
|
1238
1248
|
else:
|
|
1239
1249
|
yield " = ", self
|
|
1240
1250
|
yield from CExpression._try_c_repr_chunks(self.rhs)
|
angr/lib/angr_native.dll
CHANGED
|
Binary file
|
|
@@ -33,7 +33,7 @@ class NameResolutionMixin(MemoryMixin):
|
|
|
33
33
|
self.store("cc_dep1", _get_flags(self.state)) # constraints cannot be added by this
|
|
34
34
|
self.store("cc_op", 0) # OP_COPY
|
|
35
35
|
return self.state.arch.registers["cc_dep1"]
|
|
36
|
-
if is_arm_arch(self.state.arch) and name == "flags":
|
|
36
|
+
if (is_arm_arch(self.state.arch) or self.state.arch.name == "AARCH64") and name == "flags":
|
|
37
37
|
if not is_write:
|
|
38
38
|
self.store("cc_dep1", _get_flags(self.state))
|
|
39
39
|
self.store("cc_op", 0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: angr
|
|
3
|
-
Version: 9.2.
|
|
3
|
+
Version: 9.2.134
|
|
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
|
|
@@ -16,13 +16,13 @@ Description-Content-Type: text/markdown
|
|
|
16
16
|
License-File: LICENSE
|
|
17
17
|
Requires-Dist: CppHeaderParser
|
|
18
18
|
Requires-Dist: GitPython
|
|
19
|
-
Requires-Dist: ailment==9.2.
|
|
20
|
-
Requires-Dist: archinfo==9.2.
|
|
19
|
+
Requires-Dist: ailment==9.2.134
|
|
20
|
+
Requires-Dist: archinfo==9.2.134
|
|
21
21
|
Requires-Dist: cachetools
|
|
22
22
|
Requires-Dist: capstone==5.0.3
|
|
23
23
|
Requires-Dist: cffi>=1.14.0
|
|
24
|
-
Requires-Dist: claripy==9.2.
|
|
25
|
-
Requires-Dist: cle==9.2.
|
|
24
|
+
Requires-Dist: claripy==9.2.134
|
|
25
|
+
Requires-Dist: cle==9.2.134
|
|
26
26
|
Requires-Dist: itanium-demangler
|
|
27
27
|
Requires-Dist: mulpyplexer
|
|
28
28
|
Requires-Dist: nampa
|
|
@@ -31,7 +31,7 @@ Requires-Dist: protobuf>=5.28.2
|
|
|
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.134
|
|
35
35
|
Requires-Dist: rich>=13.1.0
|
|
36
36
|
Requires-Dist: sortedcontainers
|
|
37
37
|
Requires-Dist: sympy
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
angr/__init__.py,sha256=
|
|
1
|
+
angr/__init__.py,sha256=RdEZBtno9mn8PRTf_VSkaLK0AnqKMT1zIMQkRyqJAfI,9153
|
|
2
2
|
angr/__main__.py,sha256=XeawhF6Cco9eWcfMTDWzYYggLB3qjnQ87IIeFOplaHM,2873
|
|
3
3
|
angr/annocfg.py,sha256=0NIvcuCskwz45hbBzigUTAuCrYutjDMwEXtMJf0y0S0,10742
|
|
4
4
|
angr/blade.py,sha256=NhesOPloKJC1DQJRv_HBT18X7oNxK16JwAfNz2Lc1o0,15384
|
|
@@ -80,7 +80,7 @@ angr/analyses/cfg/indirect_jump_resolvers/amd64_pe_iat.py,sha256=cE713VrHJdNZrB9
|
|
|
80
80
|
angr/analyses/cfg/indirect_jump_resolvers/arm_elf_fast.py,sha256=AIA6YeWlzBAOwhdDolHfxoEWvSsvNPo73KDRIjbHdtY,5202
|
|
81
81
|
angr/analyses/cfg/indirect_jump_resolvers/const_resolver.py,sha256=xD-iVlOmYljEwubiff5tNPvdEl7aQhzMQWWjA7l2C_s,5277
|
|
82
82
|
angr/analyses/cfg/indirect_jump_resolvers/default_resolvers.py,sha256=v555keK0pfM451YzWbIC0pMG1pQu1wCme1moWaMPqGo,1541
|
|
83
|
-
angr/analyses/cfg/indirect_jump_resolvers/jumptable.py,sha256=
|
|
83
|
+
angr/analyses/cfg/indirect_jump_resolvers/jumptable.py,sha256=KdCaHa4i0ZS3KleySPB46JIswoOid2MWlwgxnhWgkzE,104709
|
|
84
84
|
angr/analyses/cfg/indirect_jump_resolvers/mips_elf_fast.py,sha256=SSwWVKCqMNxdqTeMkLqXk5UFmzgxJDm8H-xLNBr1Hnc,10173
|
|
85
85
|
angr/analyses/cfg/indirect_jump_resolvers/mips_elf_got.py,sha256=DT1tomUTCXmhD8N_V4KMeyS-YecDlR7f4kOANiKyGeI,5213
|
|
86
86
|
angr/analyses/cfg/indirect_jump_resolvers/propagator_utils.py,sha256=ppqn5vYGOD8HknweabD7NWgZmoBgjkOC6m9t-XD46T0,992
|
|
@@ -249,7 +249,7 @@ angr/analyses/decompiler/ssailification/traversal_engine.py,sha256=dczhUEuoBTg0w
|
|
|
249
249
|
angr/analyses/decompiler/ssailification/traversal_state.py,sha256=_AsCnLiI2HFdM6WrPyAudhc0X4aU_PziznbOgmzpDzQ,1313
|
|
250
250
|
angr/analyses/decompiler/structured_codegen/__init__.py,sha256=mxG4yruPAab8735wVgXZ1zu8qFPz-njKe0m5UcywE3o,633
|
|
251
251
|
angr/analyses/decompiler/structured_codegen/base.py,sha256=DEeNrBOC8AAJb-qFyUoYeX8fpHSPmAsutCDF-0UhaQ4,3782
|
|
252
|
-
angr/analyses/decompiler/structured_codegen/c.py,sha256=
|
|
252
|
+
angr/analyses/decompiler/structured_codegen/c.py,sha256=MJk6QzT3V9xnAeHfvcruyFdrS7g8xXyktqJthp2QYxo,141432
|
|
253
253
|
angr/analyses/decompiler/structured_codegen/dummy.py,sha256=JZLeovXE-8C-unp2hbejxCG30l-yCx4sWFh7JMF_iRM,570
|
|
254
254
|
angr/analyses/decompiler/structured_codegen/dwarf_import.py,sha256=J6V40RuIyKXN7r6ESftIYfoREgmgFavnUL5m3lyTzlM,7072
|
|
255
255
|
angr/analyses/decompiler/structuring/__init__.py,sha256=kEFP-zv9CZrhJtLTKwT9-9cGVTls71wLYaLDUuYorBU,711
|
|
@@ -548,7 +548,7 @@ angr/knowledge_plugins/xrefs/__init__.py,sha256=5PhqVOtTZ27lCjJ9wp7akUeJydqILbyC
|
|
|
548
548
|
angr/knowledge_plugins/xrefs/xref.py,sha256=U2H1rfffp5EXoh0awlGxMBxA4K5MIwl3CXjV3Uih3tA,4856
|
|
549
549
|
angr/knowledge_plugins/xrefs/xref_manager.py,sha256=Yb88z3L8Y26TfGeRHdsGWQlT9f6oWntjEg6s-kcVtUQ,4040
|
|
550
550
|
angr/knowledge_plugins/xrefs/xref_types.py,sha256=LcQ9pD4E4XlC51Us49xiqAoGAFGpnCrpYO4mOzILiKI,308
|
|
551
|
-
angr/lib/angr_native.dll,sha256=
|
|
551
|
+
angr/lib/angr_native.dll,sha256=sheMFMJemYLopeg_kzLQOp8xd5GZG38LUByWMjkfTAU,19319808
|
|
552
552
|
angr/misc/__init__.py,sha256=FoUwjk1DhqlIsr2sBN0MlR8MnSOGQv9QJhxmq32RYuA,355
|
|
553
553
|
angr/misc/ansi.py,sha256=nPJHC0SKfqasMQZ0LxdmmIYojjmk4nr5jI6FrzoTwS0,811
|
|
554
554
|
angr/misc/autoimport.py,sha256=iZagpuPwZWczUTYIqs-JkDMQjftMqc_cchcm7OBFiEg,3450
|
|
@@ -1295,7 +1295,7 @@ angr/storage/memory_mixins/keyvalue_memory_mixin.py,sha256=tqjpvMaGyXeKIPTO669qM
|
|
|
1295
1295
|
angr/storage/memory_mixins/label_merger_mixin.py,sha256=zPCM7I7zEgFzk3pwqeFKFs_clv5qMBaoPnuHxRKv4dY,897
|
|
1296
1296
|
angr/storage/memory_mixins/memory_mixin.py,sha256=ccvxbjLMO98C-PPlRCtTKDrB53eWtq2VAkhSkcADOiM,6474
|
|
1297
1297
|
angr/storage/memory_mixins/multi_value_merger_mixin.py,sha256=ubmdwqxuQVL9LheJ9u_fjfira9yRaRB-Ibv-YQbpbmU,3310
|
|
1298
|
-
angr/storage/memory_mixins/name_resolution_mixin.py,sha256=
|
|
1298
|
+
angr/storage/memory_mixins/name_resolution_mixin.py,sha256=xfqeZZ8DB6NdQawpDhWRdwR2jQcFgu1NWCgqhR7mYYQ,3434
|
|
1299
1299
|
angr/storage/memory_mixins/simple_interface_mixin.py,sha256=isJ3_vuElWtLTW7MxweHs5WJOuawr1LmLlS7-yakWd4,2576
|
|
1300
1300
|
angr/storage/memory_mixins/simplification_mixin.py,sha256=ajjiQ4ulbVQ1WgygR7WuM7vrOzsFGa4D-11R7ipmr1c,594
|
|
1301
1301
|
angr/storage/memory_mixins/size_resolution_mixin.py,sha256=7LwcgsuJpwPlQ8LzX5q0bZj2PTkLs_cngrd3lDiHd2s,5728
|
|
@@ -1354,9 +1354,9 @@ angr/utils/timing.py,sha256=ELuRPzdRSHzOATgtAzTFByMlVr021ypMrsvtpopreLg,1481
|
|
|
1354
1354
|
angr/utils/ssa/__init__.py,sha256=OD3eTWAiH9QXGpwliNBCTC3Z4bux9iBX3Sp50aUNHvI,8758
|
|
1355
1355
|
angr/utils/ssa/tmp_uses_collector.py,sha256=rSpvMxBHzg-tmvhsfjn3iLyPEKzaZN-xpQrdslMq3J4,793
|
|
1356
1356
|
angr/utils/ssa/vvar_uses_collector.py,sha256=8gfAWdRMz73Deh-ZshDM3GPAot9Lf-rHzCiaCil0hlE,1342
|
|
1357
|
-
angr-9.2.
|
|
1358
|
-
angr-9.2.
|
|
1359
|
-
angr-9.2.
|
|
1360
|
-
angr-9.2.
|
|
1361
|
-
angr-9.2.
|
|
1362
|
-
angr-9.2.
|
|
1357
|
+
angr-9.2.134.dist-info/LICENSE,sha256=cgL_ho5B1NH8UxwtBuqThRWdjear8b7hktycaS1sz6g,1327
|
|
1358
|
+
angr-9.2.134.dist-info/METADATA,sha256=IKFjsjKCZv9OxYMSldNSRRrLcVwKOhVkTyxynRJ6ml8,4882
|
|
1359
|
+
angr-9.2.134.dist-info/WHEEL,sha256=z8gukVdnGwjcwo0VnsfJMrhPu5QJT68VcMWmAgvAufw,97
|
|
1360
|
+
angr-9.2.134.dist-info/entry_points.txt,sha256=Vjh1C8PMyr5dZFMnik5WkEP01Uwr2T73I3a6N32sgQU,44
|
|
1361
|
+
angr-9.2.134.dist-info/top_level.txt,sha256=dKw0KWTbwLXytFvv15oAAG4sUs3ey47tt6DorJG9-hw,5
|
|
1362
|
+
angr-9.2.134.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|