| Age | Commit message (Collapse) | Author |
|
|
|
Extra noise in the CMake configure step, much of the value from these has been removed after the refactor(s), e.g. metadata version is no longer used
|
|
functions as apart of initial analysis
This is off by default for the obvious reasons, we may also in the future want to expand upon this with a "matched view" such that the first step a user can take after loading is to validate what functions were matched and decide if they want to keep any of that data.
This fetch happens as apart of the initial analysis, such that a headless script will not return from the load function until it has finished fetching. We may want to add a configurable timeout, and/or run the fetch out of band (let load return before fetching finishes).
|
|
|
|
|
|
- Respects views fetch batch size and allowed tags
- Saves and loads from the view settings instead of qt settings
|
|
This then allows us to group the settings into more understandable subgroups such as fetcher & matcher
|
|
This fixes an issue where the commit dialog would not fill in the newly added network source
|
|
This helps when you have analyzed large binaries and want to create signatures after-the-fact, skipping analysis. This can speed up the time to create large datasets drastically.
|
|
Fixes https://github.com/Vector35/binaryninja-api/issues/7268
|
|
Also makes it so that constraints with an exact offset match are displayed differently.
|
|
|
|
|
|
|
|
This makes them immediately available, and works around the issue of invalidating the entire cache to allow for retrieving of locally pushed data
|
|
|
|
|
|
container transforms.
|
|
the payload.
|
|
|
|
|
|
|
|
|
|
- Improve error messages to include what exactly caused the parsing to fail
- Relaxed the parsing validation to allow for more files to be parsed
- Added a form dialog to improve discoverability of load settings
We still need to relax optional fields failing to parse if they have no child, as that is considered an error, even with no validation.
|
|
|
|
operations
A new activity is added that will remove calls to `objc_retain`,
`objc_release`, `objc_autorelease`, and related functions. It is
disabled by default due to the fact it changes the semantics of the
code. It can be enabled on a per-function basis via the Function
Settings context menu or command palette entry. Alternatively, it can be
enabled in Open with Options or in user settings if a user would prefer
it be on for an entire file or for all files they open.
For now the activity is only eligible within arm64 binaries. Supporting
x86_64 will require matching some slightly different IL patterns.
|
|
|
|
|
|
|
|
`LC_FUNCTION_STARTS` includes both functions and jump tables. We want to
avoid calling `AddFunctionForAnalysis` on jump tables since it can
result in a function being created at the jump table's location with a
bogus body.
We already skip adding functions for entries in `LC_FUNCTION_STARTS` if
the lifting of their first few bytes end up including `LLIL_UNDEF`.
However, arm64 intentionally lifts `udf` instructions (i.e., opcodes in
the Permanently Undefined range) to `LLIL_TRAP` in order to preserve the
immediate portion of the instruction.
To address this, `MachoView::IsValidFunctionStart` now returns false if
the first lifted instruction is `LLIL_TRAP` in addition to when the
lifting contains `LLIL_UNDEF`.
|
|
|
|
|
|
|
|
|
|
Most members were initialized within the constructor, but a couple were
only initialized later and could in some cases be accessed before being
initialized.
Members of types without default constructors are now initialized via
default member initializers unless they're initialized in the class's
member initializer list.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LowLevelILFunction objects can be constructed without a owner
function. BNGetLowLevelILOwnerFunction can return NULL and must be
checked before creating a Function object.
|
|
Required for implementing guided analysis mode in custom
implementations of analyze_basic_blocks
|
|
|
|
This allows types to propagate to thunks in cases where there are
GOT entries for internal functions
|
|
|
|
|
|
|
|
|
|
|