pyvex 9.2.173__py3-none-macosx_10_12_x86_64.whl → 9.2.175__py3-none-macosx_10_12_x86_64.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 pyvex might be problematic. Click here for more details.
- pyvex/__init__.py +1 -1
- pyvex/lib/libpyvex.dylib +0 -0
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/METADATA +3 -3
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/RECORD +9 -9
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/WHEEL +0 -0
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/licenses/LICENSE +0 -0
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/licenses/pyvex_c/LICENSE +0 -0
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/licenses/vex/LICENSE.GPL +0 -0
- {pyvex-9.2.173.dist-info → pyvex-9.2.175.dist-info}/licenses/vex/LICENSE.README +0 -0
pyvex/__init__.py
CHANGED
|
@@ -3,7 +3,7 @@ PyVEX provides an interface that translates binary code into the VEX intermediat
|
|
|
3
3
|
For an introduction to VEX, take a look here: https://docs.angr.io/advanced-topics/ir
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
-
__version__ = "9.2.
|
|
6
|
+
__version__ = "9.2.175"
|
|
7
7
|
|
|
8
8
|
from . import const, expr, stmt
|
|
9
9
|
from .arches import (
|
pyvex/lib/libpyvex.dylib
CHANGED
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyvex
|
|
3
|
-
Version: 9.2.
|
|
3
|
+
Version: 9.2.175
|
|
4
4
|
Summary: A Python interface to libVEX and VEX IR
|
|
5
5
|
License-Expression: BSD-2-Clause AND GPL-2.0-only
|
|
6
6
|
License-File: LICENSE
|
|
@@ -106,7 +106,7 @@ print(irsb.tyenv.types)
|
|
|
106
106
|
print(irsb.tyenv.types[0])
|
|
107
107
|
```
|
|
108
108
|
|
|
109
|
-
Keep in mind that this is a *syntactic*
|
|
109
|
+
Keep in mind that this is a *syntactic* representation of a basic block. That is, it'll tell you what the block means, but you don't have any context to say, for example, what *actual* data is written by a store instruction.
|
|
110
110
|
|
|
111
111
|
## VEX Intermediate Representation
|
|
112
112
|
|
|
@@ -114,7 +114,7 @@ To deal with widely diverse architectures, it is useful to carry out analyses on
|
|
|
114
114
|
An IR abstracts away several architecture differences when dealing with different architectures, allowing a single analysis to be run on all of them:
|
|
115
115
|
|
|
116
116
|
- **Register names.** The quantity and names of registers differ between architectures, but modern CPU designs hold to a common theme: each CPU contains several general purpose registers, a register to hold the stack pointer, a set of registers to store condition flags, and so forth. The IR provides a consistent, abstracted interface to registers on different platforms. Specifically, VEX models the registers as a separate memory space, with integer offsets (i.e., AMD64's `rax` is stored starting at address 16 in this memory space).
|
|
117
|
-
- **Memory access.** Different architectures access memory in different ways. For example, ARM can access memory in both little-endian and big-endian modes. The IR must
|
|
117
|
+
- **Memory access.** Different architectures access memory in different ways. For example, ARM can access memory in both little-endian and big-endian modes. The IR must abstract away these differences.
|
|
118
118
|
- **Memory segmentation.** Some architectures, such as x86, support memory segmentation through the use of special segment registers. The IR understands such memory access mechanisms.
|
|
119
119
|
- **Instruction side-effects.** Most instructions have side-effects. For example, most operations in Thumb mode on ARM update the condition flags, and stack push/pop instructions update the stack pointer. Tracking these side-effects in an *ad hoc* manner in the analysis would be crazy, so the IR makes these effects explicit.
|
|
120
120
|
|
|
@@ -2,7 +2,7 @@ pyvex/_register_info.py,sha256=obrahVpfLzJ4TdawSLha-xNdyv6zA87NKlTC2JwsR6I,49630
|
|
|
2
2
|
pyvex/enums.py,sha256=2GI9ftx4ytaL-AmQmetB8e2jKGCcwb6X4kWI35P8l7Y,4475
|
|
3
3
|
pyvex/vex_ffi.py,sha256=mIxoEB58d4Wnr37iI5Poj28u3RBJ_5qbnwCHz91xVgs,66426
|
|
4
4
|
pyvex/stmt.py,sha256=spT_JF1Jj6PxhH3ER2XW8i2JFGdhGRW4GYGHX3UJH10,22290
|
|
5
|
-
pyvex/__init__.py,sha256=
|
|
5
|
+
pyvex/__init__.py,sha256=e4Z3pYwAHVhZs5gShEn-Se_9QNSyLwZ4tE7kZe9DCrM,1854
|
|
6
6
|
pyvex/native.py,sha256=nV1lwY8eJmLG49KatF2t4rdfSitqhUZaC9ug5dpFUYs,1832
|
|
7
7
|
pyvex/types.py,sha256=9m0fgYoRF7VVb5tByClPdqkAGi-nm-G7Uhqjs5YW_DQ,1005
|
|
8
8
|
pyvex/utils.py,sha256=2yjR371Jdg6YbVAG8v4_1TvvYN0EAjNZspCTfa0WXZo,1429
|
|
@@ -33,7 +33,7 @@ pyvex/include/libvex_guest_offsets.h,sha256=RfBTxdlWA-c7k3X6efxyUdU_nHBM0xdezWS_
|
|
|
33
33
|
pyvex/include/libvex_s390x_common.h,sha256=97CQbrtTdzYUHMsbJ0pn_cfCu16uFTaf97P1yX-4vqg,5025
|
|
34
34
|
pyvex/include/pyvex.h,sha256=Gn_TGMXO5l6-1nSnwLvANMfQhE3YdBTyLgSuCbAWy0Q,1962
|
|
35
35
|
pyvex/include/libvex_guest_s390x.h,sha256=MjcE7V0ohBO6_2cSZfMSQJZQpvy5sFRZV3qlAyZmNhg,7258
|
|
36
|
-
pyvex/lib/libpyvex.dylib,sha256=
|
|
36
|
+
pyvex/lib/libpyvex.dylib,sha256=Z8ubLvI5QZDJ3laBdI34sjSnEzpxxwqEQcZNHd7mTz4,3729880
|
|
37
37
|
pyvex/lifting/lifter.py,sha256=E9-vL-uxidsfTf3Ah5p315l_lwVMwH499WaHAnSGodE,5808
|
|
38
38
|
pyvex/lifting/post_processor.py,sha256=bPnJsJdfMMPGeU4Rihhpe9_MBv2I9bRh-EbHz3nI7xQ,289
|
|
39
39
|
pyvex/lifting/__init__.py,sha256=qJulYcyrKrWF7rNcm62rg7g2Jkuem0OFAC2N23Wblfo,689
|
|
@@ -50,10 +50,10 @@ pyvex/lifting/gym/arm_spotter.py,sha256=6T-XzpO1AN4lbu0O80xFDtaUy7eIFEAW56g37csE
|
|
|
50
50
|
pyvex/lifting/gym/__init__.py,sha256=4MMhN4POLhKNjrSIY3KBV5PGn8uHiUHcY_7Wnnmc6DM,204
|
|
51
51
|
pyvex/lifting/gym/README.md,sha256=QBGSa2oXRpY0AJm8evY1mtiJDaahYnPALVVXj88UoJ8,220
|
|
52
52
|
pyvex/lifting/gym/x86_spotter.py,sha256=HGvZ-nAfESIwjV2KG6hrQDg_4j5mYfYMjYDJ_ASBF9Q,4067
|
|
53
|
-
pyvex-9.2.
|
|
54
|
-
pyvex-9.2.
|
|
55
|
-
pyvex-9.2.
|
|
56
|
-
pyvex-9.2.
|
|
57
|
-
pyvex-9.2.
|
|
58
|
-
pyvex-9.2.
|
|
59
|
-
pyvex-9.2.
|
|
53
|
+
pyvex-9.2.175.dist-info/RECORD,,
|
|
54
|
+
pyvex-9.2.175.dist-info/WHEEL,sha256=y7piY18rIOu8EHF_JB_5d6y8gvYo_03jEZ1lXJymxeY,140
|
|
55
|
+
pyvex-9.2.175.dist-info/METADATA,sha256=cvKkCpNgFTktkiPO2tRz6TBNxlgqQ5njz4UF_ASGPWg,10191
|
|
56
|
+
pyvex-9.2.175.dist-info/licenses/LICENSE,sha256=cgL_ho5B1NH8UxwtBuqThRWdjear8b7hktycaS1sz6g,1327
|
|
57
|
+
pyvex-9.2.175.dist-info/licenses/pyvex_c/LICENSE,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
|
|
58
|
+
pyvex-9.2.175.dist-info/licenses/vex/LICENSE.GPL,sha256=5tagCVBeNF_pSeExAzT8sHR_KNrihWdZ3hAqtmtyLLQ,18011
|
|
59
|
+
pyvex-9.2.175.dist-info/licenses/vex/LICENSE.README,sha256=l2bDDkbW7bgEzAwFYtTEUto7yT_Aph9Sc5EZ1uNYWts,996
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|