Skip to content

Settings

UI

settings >

Binary Ninja provides various settings which are available via the [CMD/CTRL] , hotkey. These settings allow a wide variety of customization of the user interface and functional aspects of the analysis environment.

Several search keywords are available in the settings UI. Those include:

  • @default - Shows settings that are in the default scope
  • @user - Shows only settings that the user has changed
  • @project - Shows settings scoped to the current project
  • @resource - Shows settings scoped to the current resource (for example if you used open-with-options and changed settings)
  • @modified - Shows settings that are changed from their default values

There are several scopes available for settings:

  • User Settings - Settings that apply globally and override the defaults. These settings are stored in settings.json within the User Folder.
  • Project Settings - Settings which only apply if a project is opened. These settings are stored in .binaryninja/settings.json within a Project Folder. Project Folders can exist anywhere except within the User Folder. These settings apply to all files contained in the Project Folder and override the default and user settings. In order to activate this feature, select the Project Settings tab and a clickable "Open Project" link will appear at the top right of the view. Clicking this will create .binaryninja/settings.json in the folder of the currently selected binary view. If it already exists, this link will be replaced with the path of the project folder.
  • Resource Settings - Settings which only apply to a specific BinaryView object within a file. These settings persist in a Binary Ninja Database (.bndb) database or ephemerally in a BinaryView object if a database does not yet exist for a file.
Tip

Both the Project and Resource tabs have a drop down indicator (▾) that can be clicked to select the project or resource whose settings you want to adjust.

All settings are uniquely identified with an identifier string. Identifiers are available in the settings UI via the context menu and are useful for finding settings using the search box and for programmatically interacting with settings.

Note: In order to facilitate reproducible analysis results, when opening a file for the first time, all of the analysis settings are automatically serialized into the Resource Setting scope. This prevents subsequent User and Project setting modifications from unintentionally changing existing analysis results.

All Settings

Category Setting Description Type Default Scope Key
analysis Disallow Branch to String Enable the ability to halt analysis of branch targets that fall within a string reference. This setting may be useful for malformed binaries. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.conservative.disallowBranchToString
analysis Purge Snapshots When saving a database, purge old snapshots keeping only the current snapshot. boolean False [SettingsProjectScope, SettingsUserScope] analysis.database.purgeSnapshots
analysis Purge Undo History When saving a database, purge current and existing undo history. boolean False [SettingsProjectScope, SettingsUserScope] analysis.database.purgeUndoHistory
analysis Suppress Reanalysis Disable function reanalysis on database load when the product version or analysis settings change. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.database.suppressReanalysis
analysis External Debug Info File Separate file to attempt to parse and import debug information from. string [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.external
analysis Import Debug Information Attempt to parse and apply debug information from each file opened. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.internal
analysis Alternate Type Propagation Enable an alternate approach for function type propagation. This setting is experimental and may be useful for some binaries. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.alternateTypePropagation
analysis Correlated Memory Value Propagation Attempt to propagate the value of an expression from a memory definition to a usage. Currently this feature is simplistic and the scope is a single basic block. This setting is experimental and may be useful for some binaries. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.correlatedMemoryValuePropagation
analysis Gratuitous Function Update Force the function update cycle to always end with an IncrementalAutoFunctionUpdate type. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.gratuitousFunctionUpdate
analysis Heuristic Value Range Clamping Use DataVariable state inferencing to help determine the possible size of a lookup table. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.heuristicRangeClamp
analysis Keep Dead Code Branches Keep unreachable code branches and associated basic blocks in HLIL. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.keepDeadCodeBranches
analysis Return Value Propagation Propagate and use constant return values from functions in the caller in order to simplify downstream expressions. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.returnValuePropagation
analysis Translate Windows CFG Calls Attempt to identify and translate calls to _guard_dispatch_icall_nop to improve analysis of control flow guard binaries. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.experimental.translateWindowsCfgCalls
analysis Extract Types From Mangled Names Attempt to extract types from mangled names using the demangler. This can lead to recovering inaccurate parameters. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.extractTypesFromMangledNames
analysis Always Analyze Indirect Branches When using faster analysis modes, perform full analysis of functions containing indirect branches. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.forceIndirectBranches
analysis Aggressive Condition Complexity Removal Threshold High Level IL tuning parameter. number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.aggressiveConditionComplexityRemovalThreshold
analysis Max Condition Complexity High Level IL tuning parameter. number 1024 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxConditionComplexity
analysis Max Condition Reduce Iterations High Level IL tuning parameter. number 1024 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxConditionReduceIterations
analysis Max Intermediate Condition Complexity High Level IL tuning parameter. number 1048576 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxIntermediateConditionComplexity
analysis Eliminate Pure Calls during HLIL Optimization Whether or not pure calls (calls to functions with no side-effects) are removed during HLIL optimizations. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.pureCallElimination
analysis Switch Case Node Threshold High Level IL tuning parameter. number 4 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.switchCaseNodeThreshold
analysis Switch Case Value Count Threshold High Level IL tuning parameter. number 6 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.switchCaseValueCountThreshold
analysis Target Max Condition Complexity High Level IL tuning parameter. number 16 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.targetMaxConditionComplexity
analysis Initial Analysis Hold Enabling the analysis hold discards all future analysis updates until clearing the hold. This setting only applies to analysis in the InitialState. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.initialAnalysisHold
analysis Advanced Analysis Cache Size Controls the number of functions for which the most recent generated advanced analysis is cached. Large values may result in very high memory utilization. number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.cacheSize
analysis Max Function Analysis Time Any functions that exceed this analysis time are deferred. A value of 0 disables this feature. The default value is 20 seconds. Time is specified in milliseconds. number 20000 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxFunctionAnalysisTime
analysis Max Function Size Any functions over this size will not be automatically analyzed. A value of 0 disables analysis of functions and suppresses the related log warning. To override see FunctionAnalysisSkipOverride. Size is specified in bytes. number 65536 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxFunctionSize
analysis Max Function Update Count Any functions that exceed this incremental update count are deferred. A value of 0 disables this feature. number 100 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxFunctionUpdateCount
analysis Max Lookup Table Size Limits the maximum number of entries for a lookup table. number 4095 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxLookupTableSize
analysis Minimum String Length The minimum length for strings created during auto-analysis number 4 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.minStringLength
analysis Maximum String Search Maximum number of strings to find before giving up. number 1048576 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.stringSearch
analysis Worker Thread Count The number of worker threads available for concurrent analysis activities. number 9 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.workerThreadCount
analysis Autorun Linear Sweep Automatically run linear sweep when opening a binary for analysis. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.autorun
analysis Control Flow Graph Analysis Enable the control flow graph analysis (Analysis Phase 3) portion of linear sweep. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.controlFlowGraph
analysis Detailed Linear Sweep Log Information Linear sweep generates additional log information at the InfoLog level. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.detailedLogInfo
analysis Entropy Heuristics for Linear Sweep Enable the application of entropy based heuristics to the function search space for linear sweep. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.entropyHeuristics
analysis High Entropy Threshold for Linear Sweep Regions in the binary at or above this threshold are not included in the search space for linear sweep. number 0.82 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.entropyThresholdHigh
analysis Low Entropy Threshold for Linear Sweep Regions in the binary at or below this threshold are not included in the search space for linear sweep. number 0.025 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.entropyThresholdLow
analysis Max Linear Sweep Work Queues The number of binary regions under concurrent analysis. number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.maxWorkQueues
analysis Permissive Linear Sweep Permissive linear sweep searches all executable segments regardless of read/write permissions. By default, linear sweep searches sections that are ReadOnlyCodeSectionSemantics, or if no sections are defined, segments that are read/execute. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.permissive
analysis Load/Store Splitting Controls splitting of oversized variable field accesses into appropriately sized accesses string validFieldsOnly [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.mlil.loadStoreSplitting
enum: Do not split oversized accesses to fields enum off
enum: Split oversized accesses to valid fields and hide accessed gaps/alignment/padding bytes enum validFieldsOnly
enum: Split oversized accesses to valid fields and include accessed gaps/alignment/padding bytes enum allOffsets
analysis Analysis Mode Controls the amount of analysis performed on functions. string full [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.mode
enum: Only perform control flow analysis on the binary. Cross references are valid only for direct function calls. [Disassembly Only] enum controlFlow
enum: Perform fast initial analysis of the binary. This mode does not analyze types or data flow through stack variables. [LLIL and Equivalents] enum basic
enum: Perform analysis which includes type propagation and data flow. [MLIL and Equivalents] enum intermediate
enum: Perform full analysis of the binary. enum full
analysis Autorun Function Signature Matcher Automatically run the function signature matcher when opening a binary for analysis. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.signatureMatcher.autorun
analysis Auto Function Analysis Suppression Enable suppressing analysis of automatically discovered functions. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.suppressNewAutoFunctionAnalysis
analysis Tail Call Heuristics Attempts to recover function starts that may be obscured by tail call optimization (TCO). Specifically, branch targets within a function are analyzed as potential function starts. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.tailCallHeuristics
analysis Tail Call Translation Performs tail call translation for jump instructions where the target is an existing function start. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.tailCallTranslation
analysis Type Parser Specify the implementation used for parsing types from text. string ClangTypeParser [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.types.parserName
enum CoreTypeParser
enum ClangTypeParser
analysis Type Printer Specify the implementation used for formatting types into text. string CoreTypePrinter [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.types.printerName
enum CoreTypePrinter
analysis Simplify Templates Simplify common C++ templates that are expanded with default arguments at compile time (eg. std::__cxx11::basic_string<wchar, std::char_traits<wchar>, std::allocator<wchar> > to std::wstring). boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.types.templateSimplifier
analysis Unicode Blocks Defines which unicode blocks to consider when searching for strings. array [] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.blocks
analysis UTF-16 Encoding Whether or not to consider UTF-16 code points when searching for strings. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.utf16
analysis UTF-32 Encoding Whether or not to consider UTF-32 code points when searching for strings. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.utf32
analysis UTF-8 Encoding Whether or not to consider UTF-8 code points when searching for strings. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.utf8
arch x86 Disassembly Case Specify the case for opcodes, operands, and registers. boolean True [SettingsUserScope] arch.x86.disassembly.lowercase
arch x86 Disassembly Separator Specify the token separator between operands. string , [SettingsUserScope] arch.x86.disassembly.separator
arch x86 Disassembly Syntax Specify disassembly syntax for the x86/x86_64 architectures. string BN_INTEL [SettingsUserScope] arch.x86.disassembly.syntax
enum: Sets the disassembly syntax to a simplified Intel format. (TBD) enum BN_INTEL
enum: Sets the disassembly syntax to Intel format. (Destination on the left) enum INTEL
enum: Sets the disassembly syntax to AT&T format. (Destination on the right) enum AT&T
corePlugins Aarch64 Architecture Enable the built-in Aarch64 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.aarch64
corePlugins ARMv7 Architecture Enable the built-in ARMv7 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.armv7
corePlugins MIPS Architecture Enable the built-in MIPS architecture module. boolean True [SettingsUserScope] corePlugins.architectures.mips
corePlugins PowerPC Architecture Enable the built-in PowerPC architecture module. boolean True [SettingsUserScope] corePlugins.architectures.powerpc
corePlugins x86/x86_64 Architecture Enable the built-in x86/x86_64 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.x86
corePlugins Crypto Plugin Enable the built-in crypto plugin. boolean True [SettingsUserScope] corePlugins.crypto
corePlugins Debugger Enable the built-in debugger plugin. boolean True [SettingsUserScope] corePlugins.debugger
corePlugins IDB Import Plugin (Beta) Enable the built-in IDB import plugin. boolean False [SettingsUserScope] corePlugins.idbImport
corePlugins PDB Import Plugin Enable the built-in PDB import plugin. boolean True [SettingsUserScope] corePlugins.pdbImport
corePlugins DECREE Platform Enable the built-in DECREE platform module. boolean True [SettingsUserScope] corePlugins.platforms.decree
corePlugins FreeBSD Platform Enable the built-in FreeBSD platform module. boolean True [SettingsUserScope] corePlugins.platforms.freebsd
corePlugins Linux Platform Enable the built-in Linux platform module. boolean True [SettingsUserScope] corePlugins.platforms.linux
corePlugins macOS Platform Enable the built-in macOS platform module. boolean True [SettingsUserScope] corePlugins.platforms.mac
corePlugins Windows Platform Enable the built-in Windows platform module. boolean True [SettingsUserScope] corePlugins.platforms.windows
corePlugins Triage Plugin Enable the built-in triage plugin. boolean True [SettingsUserScope] corePlugins.triage
corePlugins Objective-C Enable the built-in Objective-C plugin. boolean True [SettingsUserScope] corePlugins.workflows.objc
debugger Stop At Entry Point Stop the target at program entry point boolean True [SettingsUserScope] debugger.stopAtEntryPoint
debugger Stop At System Entry Point Stop the target at system entry point boolean False [SettingsUserScope] debugger.stopAtSystemEntryPoint
files Auto Rebase Load File When opening a file with options, automatically rebase an image which has a default load address of zero to 4MB for 64-bit binaries, or 64KB for 32-bit binaries. boolean False [SettingsProjectScope, SettingsUserScope] files.pic.autoRebase
files Universal Mach-O Architecture Preference Specify an architecture preference for automatic loading of a Mach-O file from a Universal archive. By default, the first object file in the listing is loaded. array [] [SettingsUserScope] files.universal.architecturePreference
network Download Provider Specify the registered DownloadProvider which enables resource fetching over HTTPS. string CoreDownloadProvider [SettingsUserScope] network.downloadProviderName
enum CoreDownloadProvider
enum PythonDownloadProvider
network Enable External Resources Allow Binary Ninja to download external images and resources when displaying markdown content (e.g. plugin descriptions). boolean True [SettingsUserScope] network.enableExternalResources
network Enable External URLs Allow Binary Ninja to download and open external URLs. boolean True [SettingsUserScope] network.enableExternalUrls
network Enable Plugin Manager Allow Binary Ninja to connect to the update server to check for new plugins and plugin updates. boolean True [SettingsUserScope] network.enablePluginManager
network Enable Release Notes Allow Binary Ninja to connect to the update server to display release notes on new tabs. boolean True [SettingsUserScope] network.enableReleaseNotes
network Enable Update Channel List Allow Binary Ninja to connect to the update server to determine which update channels are available. boolean True [SettingsUserScope] network.enableUpdateChannelList
network Enable Updates Allow Binary Ninja to connect to the update server to check for updates. boolean True [SettingsUserScope] network.enableUpdates
network HTTPS Proxy Override default HTTPS proxy settings. By default, HTTPS Proxy settings are detected and used automatically via environment variables (e.g., https_proxy). Alternatively, proxy settings are obtained from the Internet Settings section of the Windows registry, or the Mac OS X System Configuration Framework. string [SettingsUserScope] network.httpsProxy
network Enable Auto Downloading PDBs Automatically search for and download pdb files from specified symbol servers. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] network.pdbAutoDownload
network Websocket Provider Specify the registered WebsocketProvider which enables communication over HTTPS. string CoreWebsocketProvider [SettingsUserScope] network.websocketProviderName
enum CoreWebsocketProvider
pdb Allow Unnamed Void Symbol Types Allow creation of symbols with no name and void types, often used as static local variables. Generally, these are just noisy and not relevant. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.allowUnnamedVoidSymbols
pdb Expand RTTI Structures Create structures for RTTI symbols with variable-sized names and arrays. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.expandRTTIStructures
pdb Generate Virtual Table Structures Create Virtual Table (VTable) structures for C++ classes found when parsing. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.generateVTables
pdb Load Global Module Symbols Load symbols in the Global module of the PDB. These symbols have generally lower quality types due to relying on the demangler. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.loadGlobalSymbols
pdb Absolute PDB Symbol Store Path Absolute path specifying where the PDB symbol store exists on this machine, overrides relative path. string [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.localStoreAbsolute
pdb Cache Downloaded PDBs in Local Store Store PDBs downloaded from Symbol Servers in the local Symbol Store Path. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.localStoreCache
pdb Relative PDB Symbol Store Path Path relative to the binaryninja user directory, specifying the pdb symbol store. string symbols [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.localStoreRelative
pdb Symbol Server List List of servers to query for pdb symbols. array [https://msdl.microsoft.com/download/symbols] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.symbolServerList
pluginManager Community Plugin Repository Whether the community plugin repository is enabled boolean True [SettingsUserScope] pluginManager.communityRepo
pluginManager Community Plugin Manager Update Channel Specify which community update channel the Plugin Manager should update plugins from. string master [SettingsUserScope] pluginManager.communityUpdateChannel
enum: The default channel. This setting should be used unless you are testing the Plugin Manager. enum master
enum: Plugin Manager test channel. enum test
pluginManager Debug Plugin Manager Enable debug functionality for the Plugin Manager. boolean False [SettingsUserScope] pluginManager.debug
pluginManager Official Plugin Repository Whether the official plugin repository is enabled boolean True [SettingsUserScope] pluginManager.officialRepo
pluginManager Official Plugin Manager Update Channel Specify which official update channel the Plugin Manager should update plugins from. string master [SettingsUserScope] pluginManager.officialUpdateChannel
enum: The default channel. This setting should be used unless you are testing the Plugin Manager. enum master
enum: Plugin Manager test channel. enum test
pluginManager Unofficial 3rd Party Plugin Repository Display Name Specify display name of 3rd party plugin repository. string [SettingsUserScope] pluginManager.unofficialName
pluginManager Unofficial 3rd Party Plugin Repository URL Specify URL of 3rd party plugin string [SettingsUserScope] pluginManager.unofficialUrl
python Python Path Override Python interpreter binary which may be necessary to install plugin dependencies. Should be the same version as the one specified in the 'Python Interpreter' setting string [SettingsUserScope] python.binaryOverride
python Python Interpreter Python interpreter library(dylib/dll/so.1) to load if one is not already present when plugins are loaded. string [SettingsUserScope] python.interpreter
python Minimum Python Log Level Set the minimum Python log level which applies in headless operation only. The log is connected to stderr. Additionally, stderr must be associated with a terminal device. string WarningLog [SettingsUserScope] python.log.minLevel
enum: Print Debug, Info, Warning, Error, and Alert messages to stderr on the terminal device. enum DebugLog
enum: Print Info, Warning, Error, and Alert messages to stderr on the terminal device. enum InfoLog
enum: Print Warning, Error, and Alert messages to stderr on the terminal device. enum WarningLog
enum: Print Error and Alert messages to stderr on the terminal device. enum ErrorLog
enum: Print Alert messages to stderr on the terminal device. enum AlertLog
enum: Disable all logging in headless operation. enum Disabled
python Python Virtual Environment Site-Packages The 'site-packages' directory for your python virtual environment. string [SettingsUserScope] python.virtualenv
rendering Show variable and integer annotations Show variable and integer annotations in disassembly i.e. {var_8} boolean True [SettingsUserScope] rendering.annotations
rendering Show All Expression Types in Debug Reports Enables the "Show All Expression Types" option in debug reports. boolean False [SettingsUserScope] rendering.debug.types
rendering HLIL Scoping Style Controls the display of new scopes in HLIL. string default [SettingsUserScope] rendering.hlil.scopingStyle
enum: Default BNIL scoping style. enum default
enum: Braces around scopes, same line. enum braces
enum: Braces around scopes, new line. enum bracesNewLine
rendering Tab Width Width (in characters) of a single tab/indent in HLIL. number 4 [SettingsUserScope] rendering.hlil.tabWidth
rendering Maximum String Annotation Length The maximum substring length that will be shown in string annotations. number 32 [SettingsUserScope] rendering.strings.maxAnnotationLength
triage Triage Analysis Mode Controls the amount of analysis performed on functions when opening for triage. string basic [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] triage.analysisMode
enum: Only perform control flow analysis on the binary. Cross references are valid only for direct function calls. enum controlFlow
enum: Perform fast initial analysis of the binary. This mode does not analyze types or data flow through stack variables. enum basic
enum: Perform full analysis of the binary. enum full
triage Triage Shows Hidden Files Whether the Triage file picker shows hidden files. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] triage.hiddenFiles
triage Triage Linear Sweep Mode Controls the level of linear sweep performed when opening for triage. string partial [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] triage.linearSweep
enum: Do not perform linear sweep of the binary. enum none
enum: Perform linear sweep on the binary, but skip the control flow graph analysis phase. enum partial
enum: Perform full linear sweep on the binary. enum full
triage Always Prefer Triage Summary View Always prefer opening binaries in Triage Summary view, even when performing full analysis. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] triage.preferSummaryView
triage Prefer Triage Summary View for Raw Files Prefer opening raw files in Triage Summary view. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] triage.preferSummaryViewForRaw
ui Allow Welcome Popup By default, the welcome window will only show up when it has changed and this install has not seen it. However, disabling this setting will prevent even that. boolean True [SettingsUserScope] ui.allowWelcome
ui Developer Mode Enable developer preferences. boolean False [SettingsUserScope] ui.developerMode
ui Dock Window Title Bars Enable to display title bars for dockable windows attached to a main window. boolean True [SettingsUserScope] ui.docks.titleBars
ui Feature Map Enable the feature map which displays a visual overview of the BinaryView. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] ui.featureMap.enable
ui Feature Map File-Backed Only Mode Exclude mapped regions that are not backed by a load file. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] ui.featureMap.fileBackedOnly
ui Feature Map Location Location of the feature map. string right [SettingsUserScope] ui.featureMap.location
enum: Feature map appears on the right side of the window. enum right
enum: Feature map appears at the top of the window. enum top
ui File Contents Lock Lock the file contents to prevent accidental edits from the UI. File modification via API and menu based patching is explicitly allowed while the lock is enabled. boolean True [SettingsUserScope] ui.fileContentsLock
ui Existing Database Detection When opening a file in the UI, detect if a database exists and offer to open the database. string prompt [SettingsUserScope] ui.files.detection.database
enum: Enable detection and generate prompt. enum prompt
enum: Enable detection and automatically open the file or database, if found. enum always
enum: Disable detection. enum disable
ui Existing Downloaded URL View Detection When opening a database from an external URL in the UI, detect if an unsaved database from the same URL is already open and offer to navigate in that open view. string prompt [SettingsUserScope] ui.files.detection.openExistingViewFromUrl
enum: Enable detection and generate prompt. enum prompt
enum: Enable detection and automatically switch to the open view, if found. enum always
enum: Disable detection. enum disable
ui Auto Open with Options Specify the file types which automatically open using the 'Open with Options' dialog. array [Mapped, Universal] [SettingsUserScope] ui.files.detection.openWithOptions
enum Mapped
enum ELF
enum Mach-O
enum COFF
enum PE
enum Universal
ui Programmer's Main Symbol List A list of common 'main' symbols to search for when 'Navigate to Programmer's Main' is enabled. array [main, _main, WinMain] [SettingsUserScope] ui.files.navigation.mainSymbols
ui Navigate to Programmer's Main Detect and navigate to the 'main' function, rather than the entry point, after opening a binary. boolean True [SettingsUserScope] ui.files.navigation.preferMain
ui Restore Recent Open with Options Restores previously modified settings in the 'Open with Options' dialog when opening or reopening files (databases excluded). Load options are only included when reopening the same file. string disable [SettingsUserScope] ui.files.restore.viewOptions
enum: Only restore settings for files with existing history. enum strict
enum: Restore settings for files with existing history and propagate most recently used settings for new files. enum flexible
enum: Disable the settings history for 'Open with Options'. enum disable
ui Restore View State for File Restores the last view state when reopening a file. The view state includes the layout and location. boolean True [SettingsUserScope] ui.files.restore.viewState
ui Font Antialiasing Style Which antialiasing style should be used when drawing fonts. string subpixel [SettingsUserScope] ui.font.antialiasing
enum: Perform subpixel antialiasing on fonts. enum subpixel
enum: Avoid subpixel antialiasing on fonts if possible. enum grayscale
enum: No subpixel antialiasing at High DPI. enum hidpi
enum: No font antialiasing. enum none
ui Application Font Name The font to be used in UI elements, e.g. buttons, text fields, etc. string Inter [SettingsUserScope] ui.font.app.name
ui Application Font Size The desired font size (in points) for interface elements. number 11 [SettingsUserScope] ui.font.app.size
ui Emoji Font Name The font to be used in for rendering emoji. string Apple Color Emoji [SettingsUserScope] ui.font.emoji.name
ui Emoji Font Style The subfamily of the emoji font that should be used. string [SettingsUserScope] ui.font.emoji.style
ui Allow Bold View Fonts Should bold view fonts be allowed? boolean True [SettingsUserScope] ui.font.view.bold
ui View Font Name The font to be used in disassembly views, the hex editor, and anywhere a monospaced font is appropriate. string Roboto Mono [SettingsUserScope] ui.font.view.name
ui View Font Size The desired font size (in points) for the view font. number 12 [SettingsUserScope] ui.font.view.size
ui View Line Spacing How much additional spacing should be inserted between baselines in views. number 1 [SettingsUserScope] ui.font.view.spacing
ui View Font Style The subfamily (e.g. Regular, Medium) of the view font that should be used. string [SettingsUserScope] ui.font.view.style
ui Input Field History Limit Controls the number of history entries to store for input dialogs. number 50 [SettingsUserScope] ui.inputHistoryCount
ui Maximum UI Log Size Set the maximum number of lines for the UI log. number 10000 [SettingsUserScope] ui.log.maxSize
ui Minimum UI Log Level Set the minimum log level for the UI log. string InfoLog [SettingsUserScope] ui.log.minLevel
enum: Display Debug, Info, Warning, Error, and Alert messages to log console. enum DebugLog
enum: Display Info, Warning, Error, and Alert messages to log console. enum InfoLog
enum: Display Warning, Error, and Alert messages to log console. enum WarningLog
enum: Display Error and Alert messages to log console. enum ErrorLog
enum: Display Alert messages to log console. enum AlertLog
ui Manual Tooltip Enable to prevent tooltips from showing without <ctrl> being held. boolean False [SettingsUserScope] ui.manualTooltip
ui Maximum Number of Cross-reference Items The number of cross-reference items to show in the cross-reference widget. Value 0 means no limit. number 1000 [SettingsUserScope] ui.maxXrefItems
ui Middle Click Navigation Action Customize action on middle click (scroll wheel click) string NewPane [SettingsUserScope] ui.middleClickNavigationAction
enum: Split to new pane and navigate enum NewPane
enum: Split to new tab and navigate enum NewTab
enum: Split to new window and navigate enum NewWindow
ui Shift + Middle Click Navigation Action Customize action on shift + middle click (scroll wheel click) string NewTab [SettingsUserScope] ui.middleClickShiftNavigationAction
enum: Split to new pane and navigate enum NewPane
enum: Split to new tab and navigate enum NewTab
enum: Split to new window and navigate enum NewWindow
ui Desired Maximum Columns for Split Panes Number of horizontal splits (columns) before defaulting to a vertical split. number 2 [SettingsUserScope] ui.panes.columnCount
ui Show Pane Headers Enable to display headers containing the current view and options at the top of every pane. When headers are disabled, use the Command Palette or keyboard shortcuts to manage panes. boolean True [SettingsUserScope] ui.panes.headers
ui Preferred Location for New Panes Default corner for placement of new panes. Split will occur horizontally up to the maximum column setting, then vertically in the corner specified by this setting. string bottomRight [SettingsUserScope] ui.panes.newPaneLocation
enum: Left side for horizontal split, top side for vertical split. enum topLeft
enum: Right side for horizontal split, top side for vertical split. enum topRight
enum: Left side for horizontal split, bottom side for vertical split. enum bottomLeft
enum: Right side for horizontal split, bottom side for vertical split. enum bottomRight
ui Default Split Direction Default direction for splitting panes. string horizontal [SettingsUserScope] ui.panes.splitDirection
enum: Horizontal split (columns). enum horizontal
enum: Vertical split (rows). enum vertical
ui Always Show Pane Options in Status Bar Enable to always show options for the active pane in the status bar. boolean False [SettingsUserScope] ui.panes.statusBarOptions
ui Sync Panes by Default Sync current location between panes by default. boolean True [SettingsUserScope] ui.panes.sync
ui Recent Command Limit Specify a limit for the recent command palette history. number 5 [SettingsUserScope] ui.recentCommandLimit
ui Recent File Limit Specify a limit for the recent file history in the new tab window. number 10 [SettingsUserScope] ui.recentFileLimit
ui Show Indentation Guides Show indentation markers in linear high-level IL boolean True [SettingsUserScope] ui.renderIndentGuides
ui Default Scripting Provider Specify the registered ScriptingProvider for the default scripting console in the UI. string Python [SettingsUserScope] ui.scripting.defaultProvider
enum Python
enum Debugger
enum Target
ui Scripting Provider History Size Specify the maximum number of lines contained in the scripting history. number 1000 [SettingsUserScope] ui.scripting.historySize
ui Display Settings Identifiers Display setting identifiers in the UI settings view. boolean False [SettingsUserScope] ui.settings.displayIdentifiers
ui Default Sidebar Content on Open Specify a sidebar widget to automatically activate in the content area when opening a file. string Symbols [SettingsUserScope] ui.sidebar.defaultContentWidget
enum None
enum Symbols
enum Types
enum Variables
enum Stack
enum Strings
enum Tags
enum Memory Map
enum Debugger
ui Default Sidebar Reference on Open Specify a sidebar widget to automatically activate in the reference area when opening a file. string Cross References [SettingsUserScope] ui.sidebar.defaultReferenceWidget
enum None
enum Mini Graph
enum Cross References
ui Sidebar Mode Select how the sidebar should react to tab changes. string perTab [SettingsUserScope] ui.sidebar.mode
enum: Sidebar layout and size is per tab and is remembered when moving between tabs. enum perTab
enum: Sidebar widgets are per tab but the size of the sidebar is static and does not change. enum staticSize
enum: Sidebar layout is fully static and stays in the current layout when moving between tabs. enum static
ui Open Sidebar on Startup Open sidebar to default widgets when Binary Ninja is initially launched. boolean False [SettingsUserScope] ui.sidebar.openOnStartup
ui Show Exported Data Variables Show exported data variables in the symbol list. boolean False [SettingsProjectScope, SettingsUserScope] ui.symbolList.showExportedDataVars
ui Show Exported Functions Show exported functions in the symbol list. boolean True [SettingsProjectScope, SettingsUserScope] ui.symbolList.showExportedFunctions
ui Show Imports Show imports in the symbol list. boolean True [SettingsProjectScope, SettingsUserScope] ui.symbolList.showImports
ui Show Local Data Variables Show local data variables in the symbol list. boolean False [SettingsProjectScope, SettingsUserScope] ui.symbolList.showLocalDataVars
ui Show Local Functions Show local functions in the symbol list. boolean True [SettingsProjectScope, SettingsUserScope] ui.symbolList.showLocalFunctions
ui Max Tab Filename Length Truncate filenames longer than this in tab titles. number 25 [SettingsUserScope] ui.tabs.maxFileLength
ui Color Blind Mode Choose colors that are visible to those with red/green color blindness. boolean False [SettingsUserScope] ui.theme.colorBlind
ui Theme Customize the appearance and style of Binary Ninja. string Dark [SettingsUserScope] ui.theme.name
ui Random Theme on Startup Randomize the theme on application startup. boolean False [SettingsUserScope] ui.theme.randomize
ui Disassembly Width Maximum width of disassembly output, in characters. Not used in cases where disassembly width is automatically calculated, e.g. Linear View. number 80 [SettingsUserScope] ui.view.common.disassemblyWidth
ui Maximum Symbol Name Length Maximum allowed length of symbol names (in characters) before truncation is used. number 64 [SettingsUserScope] ui.view.common.maxSymbolWidth
ui Graph View IL Carousel Specify the IL view types and order for use with the 'Cycle IL' actions in Graph view. array [Disassembly, LowLevelIL, MediumLevelIL, HighLevelIL] [SettingsUserScope] ui.view.graph.carousel
enum Disassembly
enum LowLevelIL
enum LiftedIL
enum LowLevelILSSAForm
enum MediumLevelIL
enum MediumLevelILSSAForm
enum MappedMediumLevelIL
enum MappedMediumLevelILSSAForm
enum HighLevelIL
enum HighLevelILSSAForm
enum PseudoC
ui Default IL for Graph View Default IL for graph view. Other settings (e.g. 'ui.files.restore.viewState') have precedence over the default behavior. string Disassembly [SettingsUserScope] ui.view.graph.il
enum Disassembly
enum LowLevelIL
enum LiftedIL
enum LowLevelILSSAForm
enum MediumLevelIL
enum MediumLevelILSSAForm
enum MappedMediumLevelIL
enum MappedMediumLevelILSSAForm
enum HighLevelIL
enum HighLevelILSSAForm
enum PseudoC
ui Graph View Padding Add extra space around graphs, proportional to the view's size. number 0.0 [SettingsProjectScope, SettingsUserScope] ui.view.graph.padding
ui Prefer Graph View Default view preference between graph and linear view. User navigation to either view implicitly sets a run-time preference, and takes precedence over the default. boolean False [SettingsUserScope] ui.view.graph.preferred
ui Linear View IL Carousel Specify the IL view types and order for use with the 'Cycle IL' actions in Linear view. array [Disassembly, LowLevelIL, MediumLevelIL, HighLevelIL] [SettingsUserScope] ui.view.linear.carousel
enum Disassembly
enum LowLevelIL
enum LiftedIL
enum LowLevelILSSAForm
enum MediumLevelIL
enum MediumLevelILSSAForm
enum MappedMediumLevelIL
enum MappedMediumLevelILSSAForm
enum HighLevelIL
enum HighLevelILSSAForm
enum PseudoC
ui Linear View Gutter Width Linear view gutter and tags width, in characters. number 5 [SettingsUserScope] ui.view.linear.gutterWidth
ui Default IL for Linear View Default IL for linear view. Other settings (e.g. 'ui.files.restore.viewState') have precedence over the default behavior. string HighLevelIL [SettingsUserScope] ui.view.linear.il
enum Disassembly
enum LowLevelIL
enum LiftedIL
enum LowLevelILSSAForm
enum MediumLevelIL
enum MediumLevelILSSAForm
enum MappedMediumLevelIL
enum MappedMediumLevelILSSAForm
enum HighLevelIL
enum HighLevelILSSAForm
enum PseudoC
ui Default filter for types view Default type filter to use in types view. string user [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] ui.view.types.defaultTypeFilter
enum all
enum user
ui TypeView Line Numbers Controls the display of line numbers in the types view. boolean True [SettingsUserScope] ui.view.types.lineNumbers
ui Possible Value Set Function Complexity Limit Function complexity limit for showing possible value set information. Complexity is calculated as the total number of outgoing edges in the function's MLIL SSA form. number 25 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] ui.view.variables.pvsComplexityLimit
ui File Path in Window Title Controls whether the window title includes the full file path for the current file. boolean False [SettingsUserScope] ui.window.title.showPath
updates Update Channel Preferences Select update channel and version. string None [] updates.channelPreferences
updates Show All Versions Show all versions that are available for the current update channel in the UI. boolean False [SettingsUserScope] updates.showAllVersions
user Email The email that will be shown when collaborating with other users. string [SettingsUserScope] user.email
user Name The name that will be shown when collaborating with other users. string [SettingsUserScope] user.name
workflows Workflows Analysis Orchestration Framework Enable the analysis orchestration framework. This feature is currently under active development. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] workflows.enable
workflows Workflows Example Plugins Enable the built-in example plugins. boolean False [SettingsUserScope] workflows.examples
workflows Function Workflow Workflow selection for function-based analysis. string core.function.defaultAnalysis [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] workflows.functionWorkflow
enum core.function.defaultAnalysis
enum core.function.objectiveC
enum core.module.defaultAnalysis
workflows Module Workflow Workflow selection for module-based analysis. Note: Module-based workflows incomplete. string core.module.defaultAnalysis [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] workflows.moduleWorkflow
enum core.module.defaultAnalysis
Back to top