Skip to content

Settings

UI

settings

Binary Ninja provides various settings which are available via the [CMD/CTRL] , hotkey for User settings and the [CMD/CTRL] . hotkey for Resource settings which apply to the current BinaryView. 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 Alternate Type Propagation Enable an alternate approach for function type propagation. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.alternateTypePropagation
analysis Automatic Name Variables Automatically name variables according to their usage. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.autoNameVariables
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. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.correlatedMemoryValuePropagation
analysis Early Stack Constant Propagation Propagate constants stored on the stack during Low Level IL analysis. This allows stack offsets to be resolved when stack pointer updates use constants placed on the stack. string inlined [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.earlyStackConstantPropagation
enum: Do not perform early constant propagation for stack variables enum off
enum: Only perform early constant propagation when one or more functions have been inlined into the function enum on
enum: Always perform early constant propagation for stack variables enum inlined
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 Global Pointer Value Minimum Majority Votes Minimum number of votes to accept a global pointer value. number 2 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.globalPointerValueMinimumMajorityVotes
analysis Gratuitous Function Update Force the function update cycle to always end with an IncrementalAutoFunctionUpdate type. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.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.heuristicRangeClamp
analysis Initial Analysis Hold When enabled, this setting pauses analysis upon opening the file, preventing all further analysis updates until the hold is manually cleared. It applies once per file load and must be set again for each new session, if needed. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.initialAnalysisHold
analysis Keep Dead Code Branches Keep unreachable code branches and associated basic blocks in HLIL. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.keepDeadCodeBranches
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 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.returnValuePropagation
analysis Auto Function Analysis Suppression Enable suppressing analysis of automatically discovered functions. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.suppressNewAutoFunctionAnalysis
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.translateWindowsCfgCalls
analysis.conservative 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.database Purge Original Filename Path When saving a database, remove all path information from the Original Filename field boolean False [SettingsProjectScope, SettingsUserScope] analysis.database.purgeOriginalFilenamePath
analysis.database Purge Snapshots When saving a database, purge old snapshots keeping only the current snapshot. boolean False [SettingsProjectScope, SettingsUserScope] analysis.database.purgeSnapshots
analysis.database Purge Undo History When saving a database, purge current and existing undo history. boolean False [SettingsProjectScope, SettingsUserScope] analysis.database.purgeUndoHistory
analysis.database 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.debugInfo Debug File Directories Paths to folder containing DWARF debug info stored by build id. array [] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.debugDirectories
analysis.debugInfo Enable Debug File Directories Enable searching local debug directories for DWARF debug info. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.enableDebugDirectories
analysis.debugInfo External Debug Info File Separate file to attempt to parse and import debug information from. string [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.external
analysis.debugInfo Import Debug Information Attempt to parse and apply debug information from each file opened. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.internal
analysis.debugInfo Enable Loading of Sibling Debug Files Enable automatic loading of X.debug and X.dSYM files next to a file named X. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.debugInfo.loadSiblingDebugFiles
analysis.hlil Aggressive Condition Complexity Removal Threshold High Level IL tuning parameter (deprecated). number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.aggressiveConditionComplexityRemovalThreshold
analysis.hlil Code Duplication Limit Maximum number of lines of code to duplicate to reduce control flow complexity. number 2 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.codeDuplicationLimit
analysis.hlil Control Flow Resolution Strategy Method used for resolving control flow in HLIL. string graphTransformation [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.controlFlowResolution
enum: Use condition graphs to resolve control flow (deprecated). enum conditionGraph
enum: Use graph transformations to resolve control flow. enum graphTransformation
analysis.hlil Graph Optimizer Limit High Level IL tuning parameter. number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.graphOptimizerLimit
analysis.hlil Max Condition Complexity High Level IL tuning parameter (deprecated). number 1024 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxConditionComplexity
analysis.hlil Max Condition Reduce Iterations High Level IL tuning parameter (deprecated). number 1024 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxConditionReduceIterations
analysis.hlil Maximum Expression Count High Level IL tuning parameter. number 1048576 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxExpressionCount
analysis.hlil Max Intermediate Condition Complexity High Level IL tuning parameter. number 1048576 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.maxIntermediateConditionComplexity
analysis.hlil 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.hlil Strict Memory Ordering Prevents reordering of memory reads during HLIL optimization. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.strictMemoryOrdering
analysis.hlil Switch Case Node Threshold High Level IL tuning parameter. number 4 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.switchCaseNodeThreshold
analysis.hlil Switch Case Value Count Threshold High Level IL tuning parameter. number 6 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.switchCaseValueCountThreshold
analysis.hlil Target Max Condition Complexity High Level IL tuning parameter (deprecated). number 16 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.hlil.targetMaxConditionComplexity
analysis.limits 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.limits Maximum Recursion Depth for Expression Value Computation Maximum depth to recurse when computing the value for an expression via mlil ssa. number 512 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.expressionValueComputeMaxDepth
analysis.limits 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.limits Max Function Size Any functions over this size will not be automatically analyzed. A value of 0 disables this feature. Size is specified in bytes. number 65536 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxFunctionSize
analysis.limits 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.limits Max Global Pointer Values Updates The maximum number of global pointer value updates due to analysis. number 10 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxGlobalPointerValueUpdates
analysis.limits Max Lookup Table Size Limits the maximum number of entries for a lookup table. number 4095 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxLookupTableSize
analysis.limits Maximum String Length The maximum string length that will be copied. number 16384 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.maxStringLength
analysis.limits Minimum String Length The minimum length for strings created during auto-analysis number 4 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.minStringLength
analysis.limits Maximum String Search Maximum number of strings to find before giving up. number 1048576 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.limits.stringSearch
analysis.limits Worker Thread Count The number of worker threads available for concurrent analysis activities. number 15 [SettingsUserScope] analysis.limits.workerThreadCount
analysis.linearSweep Autorun Linear Sweep Automatically run linear sweep when opening a binary for analysis. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.autorun
analysis.linearSweep 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.linearSweep Detailed Linear Sweep Log Information Linear sweep generates additional log information at the InfoLog level. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.detailedLogInfo
analysis.linearSweep 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.linearSweep 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.linearSweep 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.linearSweep Max Linear Sweep Work Queues The number of binary regions under concurrent analysis. number 64 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.linearSweep.maxWorkQueues
analysis.linearSweep 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.mainFunctionDetection Program's Exit Symbol List A list of common 'exit' symbols to search for when 'Navigate to Program's Main' is enabled. array [_cexit, _exit, _o__cexit, _o_exit, common_exit, doexit, exit] [SettingsUserScope] analysis.mainFunctionDetection.exitSymbols
analysis.mainFunctionDetection Program's Main Symbol List A list of common 'main' symbols to search for when 'Navigate to Program's Main' is enabled. array [WinMain, _main, main, wWinMain] [SettingsUserScope] analysis.mainFunctionDetection.mainSymbols
analysis.mlil 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.outlining Builtin Outlining of Constant Expressions Enable outlining of constant expression compiler emitted builtins. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.outlining.builtins
analysis.pointerSweep Autorun Pointer Sweep Automatically run pointer sweep when opening a binary for analysis. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.pointerSweep.autorun
analysis.signatureMatcher 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.svd Add Bitfields Whether to add bitfields. Bitfields are not supported by Binary Ninja, so this is a workaround using unions. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.svd.addBitfields
analysis.svd Add Comments Whether to add comments. If you see comment placement is off, try disabling this. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.svd.addComments
analysis.svd SVD File The SVD File to automatically load when opening the view. string [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.svd.autoLoadFile
analysis.svd SVD Loader This analysis step applies SVD info to the view... boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.svd.loader
analysis.types Language Specific Types Use language specific type rendering and parsing when available. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.types.languageSpecificTypes
analysis.types Padding Threshold Specify the minimum number of undefined bytes in a structure type before __padding notation is used when rendering the type to text. This setting does not affect exporting types to a file, where the __padding notation will always be used. number 65536 [SettingsUserScope] analysis.types.paddingThreshold
analysis.types Type Parser Default Arguments Specify the default arguments to be passed into the Type Parser for all strings parsed into types. Currently only applies to User Scope (you can use a UIContextNotification plugin as a work-around for now). string [SettingsUserScope] analysis.types.parserDefaultArgs
analysis.types Type Parser Specify the implementation used for parsing types from text. string ClangTypeParser [SettingsUserScope] analysis.types.parserName
enum ClangTypeParser
analysis.types Type Printer Specify the implementation used for formatting types into text. string CoreTypePrinter [SettingsUserScope] analysis.types.printerName
enum CoreTypePrinter
enum RustTypePrinter
analysis.types 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 Unicode Blocks Defines which unicode blocks to consider when searching for strings useful for specifying different UTF code pages. array [] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.blocks
analysis.unicode 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.unicode 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.unicode UTF-8 Encoding Whether or not to consider UTF-8 code points when searching for strings. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.unicode.utf8
analysis.workflows Function Workflow Specifies the workflow to be used for function-level analysis, including tasks such as disassembly and IL transformations. string core.function.metaAnalysis [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.workflows.functionWorkflow
enum: This workflow defines the base function analysis provided by Binary Ninja. enum core.function.baseAnalysis
enum: Shared Cache Workflow enum core.function.dsc
enum: This workflow defines the adaptive function analysis for Binary Ninja, enabling adaptive composability of the default function analysis. enum core.function.metaAnalysis
enum: Enhanced analysis for Objective-C code. enum core.function.objectiveC
analysis.workflows Module Workflow Specifies the workflow to be used for module-level analysis, focusing on processing module-level data and coordinating function analyses. string core.module.metaAnalysis [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] analysis.workflows.moduleWorkflow
enum: This workflow defines the base module analysis for Binary Ninja. enum core.module.baseAnalysis
enum: This workflow defines the adaptive module analysis for Binary Ninja, enabling adaptive composability of the default module analysis. enum core.module.metaAnalysis
arch.aarch64 AARCH64 Alignment Requirement Require instructions be on 4-byte aligned addresses to be disassembled. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] arch.aarch64.disassembly.alignRequired
arch.aarch64 AARCH64 Prefer Intrinsics for Vector Operations Prefer generating calls to intrinsics (where one is available) to lifting vector operations as unrolled loops (where available). Note that not all vector operations are currently lifted as either intrinsics or unrolled loops. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] arch.aarch64.disassembly.preferIntrinsics
arch.mips MIPS Disassembly Pseudo-Op Enable use of pseudo-op instructions in MIPS disassembly. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] arch.mips.disassembly.pseudoOps
arch.x86 x86 Disassembly Case Specify the case for opcodes, operands, and registers. boolean True [SettingsUserScope] arch.x86.disassembly.lowercase
arch.x86 x86 Disassembly Separator Specify the token separator between operands. string , [SettingsUserScope] arch.x86.disassembly.separator
arch.x86 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
core.function Conditional No Returns This analysis step attempts to identify no return calls that are conditional based upon passed in parameters. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.function.analyzeConditionalNoReturns
core.function Dataflow-Based Return Analysis This analysis step transforms LLIL_RET instructions into other control flow based on dataflow information obtained from MLIL. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.function.analyzeReturns
core.function Tail Call Heuristics This analysis step attempts to recover function starts that may be obscured by tail call optimization (TCO). The stack pointer, and other heuristics are applied to branch targets within a function to determine if they are function starts. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.function.analyzeTailCalls
core.function Tail Call Translation This analysis step transforms LLIL_JUMP instructions into LLIL_TAILCALL instructions when the jump target is a function start. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.function.translateTailCalls
core.module Configure Extended Analysis This analysis step configures the extended analysis. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.module.configureExtendedAnalysis
core.module Initial Pointer Analysis This analysis step creates pointers for relocation entries in the binary. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.module.initialPointerAnalysis
core.module Load Debug Info This analysis step attempts to parse and load debug information from internal and external sources. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.module.loadDebugInfo
core.module Strings Analysis Enable automatic detection and analysis of strings within the binary. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] core.module.stringsAnalysis
corePlugins Crypto Plugin Enable the built-in crypto plugin. boolean True [SettingsUserScope] corePlugins.crypto
corePlugins Database Viewer (Debug) Enable the built-in Database Viewer plugin. Be aware this is a debug feature and may not be well-behaved. boolean False [SettingsUserScope] corePlugins.databaseViewer
corePlugins Debugger Enable the built-in debugger plugin. boolean True [SettingsUserScope] corePlugins.debugger
corePlugins DWARF Export Plugin Enable the DWARF export plugin. boolean True [SettingsUserScope] corePlugins.dwarfExport
corePlugins DWARF Import Plugin Enable the DWARF import plugin. boolean True [SettingsUserScope] corePlugins.dwarfImport
corePlugins IDB Import Plugin Enable the IDB import plugin. boolean True [SettingsUserScope] corePlugins.idbImport
corePlugins MSVC RTTI Plugin Enable the built-in MSVC RTTI plugin. boolean True [SettingsUserScope] corePlugins.msvcRTTI
corePlugins PDB Import Plugin Enable the built-in PDB import plugin. boolean True [SettingsUserScope] corePlugins.pdbImport
corePlugins Stack Render Layer Plugin Enable the built-in Stack Render Layer plugin. boolean True [SettingsUserScope] corePlugins.stackRenderLayer
corePlugins SVD Plugin Enable the built-in SVD plugin. boolean True [SettingsUserScope] corePlugins.svd
corePlugins Triage Plugin Enable the built-in triage plugin. boolean True [SettingsUserScope] corePlugins.triage
corePlugins Type Archive Inspector (Debug) Enable the built-in Type Archive Inspector plugin. Be aware this is a debug feature and may not be well-behaved. boolean False [SettingsUserScope] corePlugins.typeArchiveViewer
corePlugins WARP Plugin Enable the built-in WARP plugin. (Experimental). boolean False [SettingsUserScope] corePlugins.warp
corePlugins.architectures Aarch64 Architecture Enable the built-in Aarch64 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.aarch64
corePlugins.architectures ARMv7 Architecture Enable the built-in ARMv7 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.armv7
corePlugins.architectures MIPS Architecture Enable the built-in MIPS architecture module. boolean True [SettingsUserScope] corePlugins.architectures.mips
corePlugins.architectures MSP430 Architecture Enable the built-in MSP430 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.msp430
corePlugins.architectures PowerPC Architecture Enable the built-in PowerPC architecture module. boolean True [SettingsUserScope] corePlugins.architectures.powerpc
corePlugins.architectures RISC-V Architecture Enable the built-in RISC-V architecture module. boolean True [SettingsUserScope] corePlugins.architectures.riscv
corePlugins.architectures x86/x86_64 Architecture Enable the built-in x86/x86_64 architecture module. boolean True [SettingsUserScope] corePlugins.architectures.x86
corePlugins.demangler GNU3 Demangler Enable the built-in GNU3 Demangler module. boolean True [SettingsUserScope] corePlugins.demangler.gnu3
corePlugins.demangler MSVC Demangler Enable the built-in MSVC Demangler module. boolean True [SettingsUserScope] corePlugins.demangler.msvc
corePlugins.formatters Generic Formatter Enable the built-in generic formatter plugin. boolean True [SettingsUserScope] corePlugins.formatters.generic
corePlugins.languages Pseudo C Enable the built-in Pseudo C plugin. boolean True [SettingsUserScope] corePlugins.languages.pseudoC
corePlugins.languages Pseudo Rust Enable the built-in Pseudo Rust plugin. boolean True [SettingsUserScope] corePlugins.languages.pseudoRust
corePlugins.platforms DECREE Platform Enable the built-in DECREE platform module. boolean True [SettingsUserScope] corePlugins.platforms.decree
corePlugins.platforms EFI Platform Enable the built-in EFI platform module. boolean True [SettingsUserScope] corePlugins.platforms.efi
corePlugins.platforms FreeBSD Platform Enable the built-in FreeBSD platform module. boolean True [SettingsUserScope] corePlugins.platforms.freebsd
corePlugins.platforms Linux Platform Enable the built-in Linux platform module. boolean True [SettingsUserScope] corePlugins.platforms.linux
corePlugins.platforms macOS Platform Enable the built-in macOS platform module. boolean True [SettingsUserScope] corePlugins.platforms.mac
corePlugins.platforms Windows Platform Enable the built-in Windows platform module. boolean True [SettingsUserScope] corePlugins.platforms.windows
corePlugins.platforms Windows Kernel Platform Enable the built-in Window Kernel platform module. boolean True [SettingsUserScope] corePlugins.platforms.windows_kernel
corePlugins.view ELF View Enable the built-in ELF view module. boolean True [SettingsUserScope] corePlugins.view.elf
corePlugins.view Mach-O View Enable the built-in Mach-O view module. boolean True [SettingsUserScope] corePlugins.view.macho
corePlugins.view MD1Rom View Enable the built-in MD1Rom view module. boolean True [SettingsUserScope] corePlugins.view.md1rom
corePlugins.view PE/COFF View Enable the built-in PE/COFF view module. boolean True [SettingsUserScope] corePlugins.view.pe
corePlugins.view Shared Cache View Enable the built-in dyld_shared_cache view plugin. boolean True [SettingsUserScope] corePlugins.view.sharedCache
corePlugins.workflows Workflows Example Plugins Enable the built-in example plugins. boolean False [SettingsUserScope] corePlugins.workflows.examples
corePlugins.workflows Objective-C Enable the built-in Objective-C plugin. boolean True [SettingsUserScope] corePlugins.workflows.objc
debugger Update the analysis aggressively Whether to aggressively update the memory cache and analysis. If the target has self-modifying code, turning this on makes sure every function is re-analyzed every time the target stops, which gives the most accurate analysis. However, for large binaries with lots of functions, this may cause performance issues. boolean False [SettingsUserScope] debugger.aggressiveAnalysisUpdate
debugger Confirm on first launch Asks the user to confirm the operation when the target is launched for the first time. boolean True [SettingsUserScope] debugger.confirmFirstLaunch
debugger Output current state when the DbgEng engine stops Output the current state (e.g., register values, next instruction) in the debugger console when the target stops. boolean True [SettingsUserScope] debugger.dbgEngOutputStateOnStop
debugger Hold Analysis During Debugging When enabled, this holds the analysis for the binary view during debugging to increase performance. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] debugger.holdAnalysis
debugger Safe Mode When enabled, this prevents the debugger from launching any file. boolean False [SettingsUserScope] debugger.safeMode
debugger Stack Variable Annotations Add stack variable annotations boolean False [SettingsUserScope] debugger.stackVariableAnnotations
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.elf Enable ARM BE8 binary detection Enable ARM BE8 binary detection for mixed little/big endianness for code/data boolean True [SettingsUserScope] files.elf.detectARMBE8Binary
files.elf Maximum ELF Section Header Count Maximum number of entries to include in section header array number 100 [SettingsResourceScope, SettingsUserScope] files.elf.maxSectionHeaderCount
files.pic Auto Rebase Load File Automatically rebase a relocatable image which has a default load address of zero to 4MB for 64-bit binaries, or 64KB for 32-bit binaries. boolean True [SettingsProjectScope, SettingsUserScope] files.pic.autoRebase
files.text Auto Detect and Parse Binary-Encoded Text Formats Automatically detect and parse text-based file formats that encode binary data when opening a file. Supported formats include Intel Hex, Motorola S-Record, and TI-TXT. boolean True [SettingsProjectScope, SettingsUserScope] files.text.autoDetectFormat
files.text Merge Adjacent Segments in Parsed Text Formats Merges contiguous segments into a single memory region when parsing binary-encoded text formats. Memory holes are padded with zeros. boolean True [SettingsProjectScope, SettingsUserScope] files.text.mergeSegments
files.universal 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 Debuginfod Server URLs Servers to use for fetching DWARF debug info for files with a .note.gnu.build-id section. array [] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] network.debuginfodServers
network Download Provider Specify the registered DownloadProvider which enables resource fetching over HTTPS. string CoreDownloadProvider [SettingsUserScope] network.downloadProviderName
enum CoreDownloadProvider
enum PythonDownloadProvider
network Enable Debuginfod Support Enable using Debuginfod servers to fetch DWARF debug info for files with a .note.gnu.build-id section. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] network.enableDebuginfod
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 Networking Allow Binary Ninja to connect to GitHub and 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 Automatically Check Updates Allow Binary Ninja to automatically 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 Log Downloads When enabled, will log all URLs through the download provider. boolean False [SettingsUserScope] network.logDownloads
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.features Allow Unnamed Untyped Symbols 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.features.allowUnnamedVoidSymbols
pdb.features Allow Untyped Symbols Allow creation of symbols that have no type, and will be created as void-typed symbols. Generally, this happens in a stripped PDB when a Global symbol's mangled name does not contain type information. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.allowVoidGlobals
pdb.features Create Missing Named Types Allow creation of types named by function signatures which are not found in the PDB's types list or the Binary View. These types are usually found in stripped PDBs that have no type information but function signatures reference the stripped types. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.createMissingNamedTypes
pdb.features Expand RTTI Structures Create structures for RTTI symbols with variable-sized names and arrays. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.expandRTTIStructures
pdb.features Generate Virtual Table Structures Create Virtual Table (VTable) structures for C++ classes found when parsing. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.generateVTables
pdb.features 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.features.loadGlobalSymbols
pdb.features Load Mismatched PDB If a manually loaded PDB has a mismatched GUID, should it be loaded? string ask [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.loadMismatchedPDB
enum: Always load the PDB enum true
enum: Use the Interaction system to ask if the PDB should be loaded enum ask
enum: Never load the PDB enum false
pdb.features Parse PDB Symbols Parse Symbol names and types. If you turn this off, you will only load Types. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.features.parseSymbols
pdb.files Local Symbol Store Absolute Path Absolute path specifying where the PDB symbol store exists on this machine, overrides relative path. string [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.files.localStoreAbsolute
pdb.files Cache Downloaded PDBs in Local Store Store PDBs downloaded from Symbol Servers in the local Symbol Store Path. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.files.localStoreCache
pdb.files Local Symbol Store Relative Path Path relative to the binaryninja user directory, specifying the pdb symbol store. If the Local Symbol Store Absolute Path is specified, this is ignored. string symbols [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.files.localStoreRelative
pdb.files Symbol Server List List of servers to query for pdb symbols. array [https://msdl.microsoft.com/download/symbols] [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] pdb.files.symbolServerList
platform Automatically Load Platform Type Libraries Automatically load type libraries during platform initialization. boolean True [SettingsUserScope] platform.autoLoadTypeLibs
plugin.msvc MSVC RTTI Analysis This analysis step attempts to parse and symbolize msvc rtti information. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] plugin.msvc.rttiAnalysis
plugin.msvc MSVC VFT Analysis This analysis step attempts to parse and symbolize msvc virtual function table information. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] plugin.msvc.vftAnalysis
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, for internal Vector 35 use. enum test
pluginManager Debug Plugin Manager Internal use only. May prevent your ability to install official plugins. boolean False [SettingsUserScope] pluginManager.debug
pluginManager Official Plugin Repository Whether the official plugin repository is enabled boolean True [SettingsUserScope] pluginManager.officialRepo
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
pluginManager Use Short URL When enabled, will use a shortened URL for package installation which contributes to total install counts. boolean True [SettingsUserScope] pluginManager.useShortUrl
projects Project Folder Import Follows Symlinks If enabled, follow symlinks when importing a folder to a project. boolean False [SettingsUserScope] projects.folderImportFollowsSymlinks
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 Python Virtual Environment Site-Packages The 'site-packages' directory for your python virtual environment. string [SettingsUserScope] python.virtualenv
python.log 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
rendering Show variable and integer annotations Show variable and integer annotations in disassembly i.e. boolean True [SettingsUserScope] rendering.annotations
rendering Maximum Rendered Array Entries in Structs The maximum number of array entries to render for arrays inside structures. number 4096 [SettingsUserScope] rendering.maxSubArrayLength
rendering Maximum Rendered Hex Lines in Structs The maximum number of hex dump lines to render between elements inside structures. number 4096 [SettingsUserScope] rendering.maxSubHexLines
rendering.debug Show All Expression Types in Debug Reports Enables the "Show All Expression Types" option in debug reports. boolean False [SettingsUserScope] rendering.debug.types
rendering.format Allow Wide Lines If the view is wider than the default line length, allow lines to expand to fit the view. boolean False [SettingsUserScope] rendering.format.allowWideLines
rendering.format Default Line Length The default number characters per line. number 100 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] rendering.format.defaultLineLength
rendering.format Formatter Specify the implementation used for formatting high level representations. string GenericLineFormatter [SettingsUserScope] rendering.format.formatterName
enum GenericLineFormatter
rendering.format Language Specific Formatters Use language specific formatting when available. boolean True [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] rendering.format.languageSpecificFormatters
rendering.format Minimum Line Content Length The minimum number of characters per line, not including indentation, before splitting across multiple lines. number 40 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] rendering.format.minimumLineContentLength
rendering.format Add New Lines Around Scopes Add extra newlines in high level representations between closing scopes and the following statements. number 1 [SettingsUserScope] rendering.format.newLinesAroundScopes
rendering.format Render Braces Around Single-Statement Blocks If High Level Scoping Style is braces or bracesNewLine, should braces be rendered around if-statements, for-loops, etc. when the body is only one statement. string exceptDeepest [SettingsUserScope] rendering.format.renderBracesSingleStatement
enum: Always add braces, even around single-statement blocks enum always
enum: Skip rendering braces around the deepest nested statement, but otherwise render them enum exceptDeepest
enum: Skip rendering braces around any block with only one statement enum never
rendering.format High Level Scoping Style Controls the display of new scopes in high level representations. string default [SettingsUserScope] rendering.format.scopingStyle
enum: Default scoping style for the target language. For HLIL, omits braces around scopes. enum default
enum: Braces around scopes, same line. enum braces
enum: Braces around scopes, new line. enum bracesNewLine
rendering.format Tab Width Width (in characters) of a single tab/indent in high level representations. number 4 [SettingsUserScope] rendering.format.tabWidth
rendering.graph Default Graph Layout Specify the default layout implementation used when generating flow graphs. string CoreFlowGraphLayout [SettingsUserScope] rendering.graph.defaultLayout
enum CoreFlowGraphLayout
rendering.strings Maximum String Annotation Length The maximum substring length that will be shown in string annotations. number 32 [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] rendering.strings.maxAnnotationLength
snippets Indentation Syntax Highlighting String to use for indentation in snippets (tip: to use a tab, copy/paste a tab from another text field and paste here) string [SettingsUserScope] snippets.indentation
snippets Syntax Highlighting Whether to syntax highlight (may be performance problems with very large snippets and the current highlighting implementation.) boolean True [SettingsUserScope] snippets.syntaxHighlight
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 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 Input Field History Limit Controls the number of history entries to store for input dialogs. number 50 [SettingsUserScope] ui.inputHistoryCount
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 Rainbow Braces Colorize matching pairs of braces. boolean True [SettingsUserScope] ui.rainbowBraces
ui Recent Command Limit Specify a limit for the recent command palette history. number 5 [SettingsUserScope] ui.recentCommandLimit
ui New Tab 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.experimental Typelib Explorer Enables Type Library Explorer tools. Requires a restart and creates a new sidebar icon that can be enabled. boolean False [SettingsUserScope] ui.experimental.typelibExplorer
ui.experimental Developer Tools Enables Qt UI development tooling. Requires a restart and creates a new sidebar icon that can be enabled. boolean False [SettingsUserScope] ui.experimental.uiDeveloperTools
ui.featureMap Feature Map Enable the feature map which displays a visual overview of the BinaryView. boolean True [SettingsUserScope] ui.featureMap.enable
ui.featureMap 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.featureMap Linear Feature Map Show feature map in one dimension instead of two. boolean False [SettingsProjectScope, SettingsResourceScope, SettingsUserScope] ui.featureMap.linear
ui.featureMap 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.files 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.files 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.files 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 DSCView
enum ELF
enum Mach-O
enum Universal
enum MD1Rom
enum PE
enum COFF
enum TE
ui.files 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.files 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.files 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.files 'Save All' for Databases Only Only save existing databases when using 'Save All' boolean False [SettingsUserScope] ui.files.saveAllOnlyDatabases
ui.font 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.font 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.font Application Font Size The desired font size (in points) for interface elements. number 12 [SettingsUserScope] ui.font.app.size
ui.font Emoji Font Name The font to be used in for rendering emoji. string Apple Color Emoji [SettingsUserScope] ui.font.emoji.name
ui.font Emoji Font Style The subfamily of the emoji font that should be used. string [SettingsUserScope] ui.font.emoji.style
ui.font Allow Bold View Fonts Should bold view fonts be allowed? boolean True [SettingsUserScope] ui.font.view.bold
ui.font 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.font View Font Size The desired font size (in points) for the view font. number 12 [SettingsUserScope] ui.font.view.size
ui.font View Line Spacing How much additional spacing should be inserted between baselines in views. number 1 [SettingsUserScope] ui.font.view.spacing
ui.font View Font Style The subfamily (e.g. Regular, Medium) of the view font that should be used. string [SettingsUserScope] ui.font.view.style
ui.log Maximum UI Log Size Set the maximum number of lines for the UI log. number 10000 [SettingsUserScope] ui.log.maxSize
ui.log 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.log Word Wrap UI Log Enable word wrapping in the UI log. boolean False [SettingsUserScope] ui.log.wordWrap
ui.newtab New Tab Compact Mode Display mode for files in Recent File list string Normal [SettingsUserScope] ui.newtab.compactMode
enum: Show both basename and full path. enum Normal
enum: Show only the basename enum CompactBase
enum: Show only the filepath enum CompactFile
enum: Show a styled filepath enum CompactFileStyled
ui.panes Desired Maximum Columns for Split Panes Number of horizontal splits (columns) before defaulting to a vertical split. number 2 [SettingsUserScope] ui.panes.columnCount
ui.panes 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.panes 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.panes 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.panes 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.panes Sync Panes by Default Sync current location between panes by default. boolean True [SettingsUserScope] ui.panes.sync
ui.scripting 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 Scripting Provider Fuzzy Search Use fuzzy search matching for tab completion results in the Scripting Console. boolean False [SettingsUserScope] ui.scripting.fuzzySearch
ui.scripting Scripting Provider History Size Specify the maximum number of lines contained in the scripting history. number 1000 [SettingsUserScope] ui.scripting.historySize
ui.settings Display Settings Identifiers Display setting identifiers in the UI settings view. boolean False [SettingsUserScope] ui.settings.displayIdentifiers
ui.sidebar Default Sidebar Content on Open Specify the sidebar widgets to automatically activate when opening a file. array [Cross References, Symbols] [SettingsUserScope] ui.sidebar.defaultWidgets
ui.sidebar Extend Left Sidebar to Bottom of Window When the left sidebar is open, the sidebar contents will extend to the bottom of the window. If not set, the bottom area will extend to the left edge of the window even when the left sidebar is open. boolean True [SettingsUserScope] ui.sidebar.extendLeftToBottom
ui.sidebar Extend Right Sidebar to Bottom of Window When the right sidebar is open, the sidebar contents will extend to the bottom of the window. If not set, the bottom area will extend to the right edge of the window even when the right sidebar is open. boolean False [SettingsUserScope] ui.sidebar.extendRightToBottom
ui.sidebar Sidebar Icon Size Size of the icons in the sidebar. string standard [SettingsUserScope] ui.sidebar.iconSize
enum: Compact icons to maximize available screen space. enum compact
enum: Default icon size. enum standard
enum: Large icons for more visibility. enum large
ui.sidebar Left Sidebar Reference Area Toggle Mode Clicking on sidebar icons below the divider in the left sidebar will toggle the visibility of the icon clicked, regardless of how many sidebar icons are already active in that area. This mode can be used regardless of this setting by shift clicking the sidebar icon. boolean True [SettingsUserScope] ui.sidebar.leftReferenceAreaToggleMode
ui.sidebar 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.sidebar Open Sidebar on Startup Open sidebar to default widgets when Binary Ninja is initially launched. boolean False [SettingsUserScope] ui.sidebar.openOnStartup
ui.sidebar Right Sidebar Reference Area Toggle Mode Clicking on sidebar icons below the divider in the right sidebar will toggle the visibility of the icon clicked, regardless of how many sidebar icons are already active in that area. This mode can be used regardless of this setting by shift clicking the sidebar icon. boolean True [SettingsUserScope] ui.sidebar.rightReferenceAreaToggleMode
ui.tabs Max Tab Filename Length Truncate filenames longer than this in tab titles. number 25 [SettingsUserScope] ui.tabs.maxFileLength
ui.tags Prompt for Bookmark Text When creating a bookmark from an action, prompt for text input. boolean False [SettingsUserScope] ui.tags.promptForBookmarkText
ui.theme Color Blind Mode Choose colors that are visible to those with red/green color blindness. boolean False [SettingsUserScope] ui.theme.colorBlind
ui.theme Theme Customize the appearance and style of Binary Ninja. string Ninja Edit [SettingsUserScope] ui.theme.name
ui.theme Random Theme on Startup Randomize the theme on application startup. boolean False [SettingsUserScope] ui.theme.randomize
ui.theme Use transient scrollbars Enables transient scrollbar support provided by Qt. boolean False [SettingsUserScope] ui.theme.transientScrollbars
ui.types Check for Type Errors Before Accept When changing a type in the change type dialog, check your input for type errors before pressing Accept. This may cause slowdowns in analyses containing large numbers of times. boolean True [SettingsUserScope] ui.types.checkParse
ui.types Match Types by Substring When changing a type in the change type dialog, if this setting is enabled all substrings will be matched instead of only startsWith style matching boolean False [SettingsUserScope] ui.types.substring
ui.view Comment Width Maximum width of comment before wrapping, in characters. A value of 0x0 means no wrapping. number 80 [SettingsUserScope] ui.view.common.commentWidth
ui.view 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.view Maximum Symbol Name Length Maximum allowed length of symbol names (in characters) before truncation is used. number 64 [SettingsUserScope] ui.view.common.maxSymbolWidth
ui.view Minimum Comment Spacing Minimum amount of characters from the beginning of line before showing comments. number 0 [SettingsUserScope] ui.view.common.minimumCommentSpacing
ui.view Graph View IL Carousel Specify the IL view types and order for use with the 'Cycle IL' actions in Graph view. array [Disassembly, HighLevelIL, LowLevelIL, MediumLevelIL] [SettingsUserScope] ui.view.graph.carousel
ui.view Show Entry/Exit Indicators on Blocks Draws an extra line to indicate which blocks in Graph View are entry / exit points in the function. Blocks that do not return have their indicators drawn in a different color. boolean True [SettingsUserScope] ui.view.graph.entryExitBlockIndicators
ui.view 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
ui.view Graph View Padding Add extra space around graphs, proportional to the view's size. number 0.0 [SettingsProjectScope, SettingsUserScope] ui.view.graph.padding
ui.view 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.view Linear View IL Carousel Specify the IL view types and order for use with the 'Cycle IL' actions in Linear view. array [Disassembly, HighLevelIL, LowLevelIL, MediumLevelIL] [SettingsUserScope] ui.view.linear.carousel
ui.view Enable Linear View Sticky Header Show sticky header at the top of linear view. boolean True [SettingsUserScope] ui.view.linear.enableStickyHeader
ui.view Linear View Gutter Width Linear view gutter and tags width, in characters. number 5 [SettingsUserScope] ui.view.linear.gutterWidth
ui.view 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
ui.view Display Raw Symbol Name Display the original, unaltered name of a symbol as extracted from a load file. The name may be mangled. boolean False [SettingsUserScope] ui.view.symbols.displayRawNames
ui.view Display Short Symbol Name Display a shortened version of the full, human-readable representation of the symbol name. boolean False [SettingsUserScope] ui.view.symbols.displayShortNames
ui.view Hide Auto Symbols Hide all symbols that are not explicitly defined by a user. boolean False [SettingsUserScope] ui.view.symbols.hideAutoSymbols
ui.view Hide External Symbols Hide all external symbols in the symbols view. boolean False [SettingsUserScope] ui.view.symbols.hideExternalSymbols
ui.view Symbols Hierarchy Mode Enables hierarchical organization of symbols in the UI. boolean True [SettingsUserScope] ui.view.symbols.hierarchyMode
ui.view Seamless Navigation Enables uninterrupted navigation on item selection without losing focus. boolean False [SettingsUserScope] ui.view.symbols.seamlessNavigation
ui.view Show Exported Data Variables Show exported data variables in the symbols view. boolean False [SettingsUserScope] ui.view.symbols.showExportedDataVariables
ui.view Show Exported Functions Show exported functions in the symbols view. boolean True [SettingsUserScope] ui.view.symbols.showExportedFunctions
ui.view Show Folders First Show folders at the top of the view when sorting items in symbols view. boolean False [SettingsUserScope] ui.view.symbols.showFoldersFirst
ui.view Show Imports Show imports in the symbols view. boolean True [SettingsUserScope] ui.view.symbols.showImports
ui.view Show Local Data Variables Show local data variables in the symbols view. boolean False [SettingsUserScope] ui.view.symbols.showLocalDataVariables
ui.view Show Local Functions Show local functions in the symbols view. boolean True [SettingsUserScope] ui.view.symbols.showLocalFunctions
ui.view Filter Exact Matches on Top When searching for types, show types exactly matching the query on top (instead of alphabetically in order). boolean False [SettingsUserScope] ui.view.types.exactMatchesFirst
ui.view Maximum Lines for Wrapping in Editor The maximum number of lines in rendered types before line wrapping is always disabled. number 10000 [SettingsUserScope] ui.view.types.maxLinesForWrapping
ui.view Maximum Types in Editor The maximum number of types to render in the type editor in Types View. number 100 [SettingsUserScope] ui.view.types.maxTypesInEditor
ui.view 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.window 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 dev (4.3.7070-dev) [] 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