-
Notifications
You must be signed in to change notification settings - Fork 268
Description
Version and Platform (required):
- Binary Ninja Version: 5.3.8837-dev Ultimate, d2d9934a
- OS: macos
- OS Version: 26.2.0
- CPU Architecture: arm64
Bug Description:
If a BNDB is generated headless, the _DllMainCRTStartup LibraryFunctionSymbol does not show in the Symbols pane when opening this database in the GUI. The symbol is there in both cases, but it will not show when the database is opened later in the GUI. Below I have shown the symbol list at that location showing the expected symbol, but check the screenshot (or a bndb you make yourself) and the Symbols pane does not show this symbol for some reason.
Steps To Reproduce:
In the following pf is just the raw file in the project.
bv = binaryninja.load(pf)
tdp = pathlib.Path(td)
dest = tdp.joinpath(f'{pf.name}.bndb')
bv.create_database(dest)
bv.file.close()
p.create_file_from_path(dest, f, dest.name)Expected Behavior:
The BNDB created in the GUI should be the same as one created headless.
Screenshots:
Created in GUI:
Generated headless:
Binary:
Example Database Generated Headless: geometric night breaks personally
Original Binary: sun quartz bootstraps equally
Additional Information:
Symbol List GUI:
>>> bv.get_symbols(current_function.start)
[<FunctionSymbol: "_start" @ 0x1801d4880>, <LibraryFunctionSymbol: "_DllMainCRTStartup" @ 0x1801d4880>]
And Headless:
>>> bv.get_symbols(current_function.start)
[<FunctionSymbol: "_start" @ 0x1801d4880>, <LibraryFunctionSymbol: "_DllMainCRTStartup" @ 0x1801d4880>]