Vector35 / Vector35/binaryninja-api

Collapsing IL function in linear view causes extra bytes to show up

Open
#7,580 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component: UI Impact: Low UI: Linear
Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

Version and Platform (required):

  • Binary Ninja Version: 5.2.8585

Bug Description:
Collapsing a function in linear view with any IL level active shows extra bytes at the beginning of .text

Steps To Reproduce:
Please provide all steps required to reproduce the behavior:

  1. Open ls.txt
  2. Go to any IL in linear view
  3. Go to the function at 0x4030c0
  4. Collapse the function
  5. Notice lots of new bytes showing up at the beginning of .text

Expected Behavior:
Collapsing a function shouldn't affect the display of anything outside of the function

Screenshots/Video Recording:
Image

Additional Information:
I think this is a weird interaction with some functions having basic blocks at the beginning of .text, you can see this in disassembly

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue by opening ls.txt, selecting an IL level in linear view, navigating to 0x4030c0, and collapsing the function. Compare the displayed bytes at the beginning of .text before and after collapsing, including the basic blocks noted in the disassembly. Done means collapsing the function no longer changes content outside that function.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.