diff options
| author | Alexander Taylor <alex@vector35.com> | 2024-07-10 18:16:30 -0400 |
|---|---|---|
| committer | Alexander Taylor <alex@vector35.com> | 2024-07-10 18:18:31 -0400 |
| commit | 290e44dc0dad5ad655e71dc18d9f031c6301c563 (patch) | |
| tree | a63f7a457d51dd2573167a3eac50c92542b54206 /docs | |
| parent | 42b3b1c9e3df2d1f7aaa189b41125f00fa547bb4 (diff) | |
Add the start of docs for large binaries.
Closes #4684.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/guide/troubleshooting.md | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/guide/troubleshooting.md b/docs/guide/troubleshooting.md index 9f4fd056..cf605b8f 100644 --- a/docs/guide/troubleshooting.md +++ b/docs/guide/troubleshooting.md @@ -239,6 +239,17 @@ With the addition of [projects](../guide/projects.md) and [type archives](../gui 1. Re-run the [`linux-setup.sh`](https://github.com/Vector35/binaryninja-api/blob/dev/scripts/linux-setup.sh) script. The appropriate copy is available wherever you installed Binary Ninja inside the `scripts/` subfolder. +## Working with Large or Complex Binaries + +By default, Binary Ninja does full analysis of the binary and decompiles every function. On large binaries (or binaries that are complex due to e.g. heavy obfuscation), this might not be desirable due to how long it will take and/or how much memory it will use. There are a few settings available that you should look into tweaking to make this a better experience: + +* Making `analysis.limits.cacheSize` smaller can help bring down memory utilization by limiting the number of functions Binary Ninja caches analysis for. +* Changing `analysis.mode` to an option less than `full` will prevent Binary Ninja from doing full decompilation for every function. +* Turning on `analysis.suppressNewAutoFunctionAnalysis` will prevent new functions from being analyzed at all until they are accessed. + +Other [analysis settings](settings.md#all-settings) can also help. Check the descriptions to see what they do. + + ## Collaboration Issues !!! note |
