You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guide/warp.md
+16-14Lines changed: 16 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,9 @@
1
1
# WARP
2
2
3
-
Binary Ninja ships a first party plugin for [WARP] a format for transferring analysis
4
-
information, such as function names and types. This integration is responsible for matching unique functions in a binary
5
-
and automatically applying information to the analysis. As well as providing the user the ability to select from a set
6
-
of possible functions, when identifying the unique function fails.
3
+
Binary Ninja ships a first party plugin for [WARP], a format for transferring analysis information including function
4
+
names, parameter names, and types. The plugin is responsible for matching unique functions in a binary and automatically
5
+
applying information to the analysis. It also provides the user the ability to select from a set of possible functions
6
+
when identifying the unique function fails.
7
7
8
8
The bundled plugin is open source and is located [here](https://github.com/Vector35/binaryninja-api/tree/dev/plugins/warp).
9
9
@@ -12,8 +12,8 @@ The bundled plugin is open source and is located [here](https://github.com/Vecto
12
12
## How WARP Works
13
13
14
14
WARP works by making a function GUID based off the byte contents of the function. Because WARP creates this GUID based
15
-
off the byte contents, the functions are expected to be an exact match, aside from variant instructions.
16
-
To use WARP, you only need to know that the function GUID's must match across binaries for the function information to be considered.
15
+
off the byte contents, the functions are expected to be an exact match, aside from variant instructions. To use WARP,
16
+
you only need to know that the function GUID's must match across binaries for the function information to be considered.
17
17
18
18
To read more about how WARP works, please see the GitHub repository [here](https://github.com/vector35/warp).
19
19
@@ -46,13 +46,14 @@ Files are automatically loaded from two locations when Binary Ninja starts:
46
46
- Can be disabled using the setting `warp.container.loadUserFiles`.
47
47
48
48
???+ Danger "Warning"
49
-
Always place your signature libraries in your user directory. The installation path is wiped whenever Binary Ninja auto-updates. You can locate it with `Open Plugin Folder` in the command palette and navigate "up" a directory.
49
+
Always place your signature libraries in your user directory. The installation path is wiped whenever Binary Ninja
50
+
auto-updates. You can locate it with `Open Plugin Folder` in the command palette and navigate "up" a directory.
50
51
51
52
### Manually
52
53
53
-
Aside from using the signature directory you can load any WARP file manually using the
54
-
command `WARP\\Load File` or via the UI sidebar, they both do the same thing. Once the file is
55
-
loaded, you do not need to load if for every view, it is available globally.
54
+
Aside from using the signature directory you can load any WARP file manually using the command `WARP\\Load File` or via
55
+
the UI sidebar, they both do the same thing. Once the file is loaded, you do not need to load it for every view, it is
56
+
available globally.
56
57
57
58
???+ Info "Tip"
58
59
When loading signatures you may encounter a dialog asking to "Override file target?" this happens when your file
@@ -114,9 +115,10 @@ make the files load quicker, turn off compression.
114
115
115
116
## Networked Functionality
116
117
117
-
WARP for Binary Ninja provides the ability to lazily pull data (functions, types) from a WARP server, by default, networked
118
-
functionality is disabled, as it requires sending the functions platform (`windows-x86`) and GUID (`2f893a32-8592-54e2-8052-207603976686`)
119
-
which can be considered sensitive information, see [Connecting](#connecting) to learn how to enable this functionality.
118
+
WARP for Binary Ninja provides the ability to lazily pull data (functions, types) from a WARP server. By default,
119
+
networked functionality is disabled since it requires sending the functions platform (`windows-x86`) and GUID
120
+
(`2f893a32-8592-54e2-8052-207603976686`) which can be considered sensitive information. See [Connecting](#connecting) to
121
+
learn how to enable this functionality.
120
122
121
123
### Connecting
122
124
@@ -228,7 +230,7 @@ The function GUID will differ if the instruction highlights are not exactly the
228
230
229
231
When running the matcher manually, you may get a warning about no relocatable regions found; this means you have no defined
230
232
sections or segments in your view. For WARP to work we must have some range of address space to work with, without it the
231
-
function GUID's will likely be inconsistent if the functions can be based at different addresses.
233
+
function GUIDs will likely be inconsistent if the functions can be based at different addresses.
0 commit comments