Vector35 / Vector35/binaryninja-api

Offer to hide variables that are removed by dead-store elimination in stack view and disassembly view

Open
#5,316 2 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Right now we show the variables removed by dead-store elimination with a dimmed color. Which is good in most cases, however, sometimes we might wish to have the removed completely.

Screenshot 2024-04-24 at 9 36 11 AM

I have seen a binary that, for unknown reason, always moves the frame pointer 0x1000 below the stack pointer (at the function entry). I do not exactly understand what is trying to do.

Right now it is causing an inconvenience that the useful part of the stack are all outside of the bottom of the view by default, and I have to scroll to it to see its content. If we can limit the stack to all the used vars, the situation would be much better

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

Start by inspecting the stack view and disassembly view handling for variables removed by dead-store elimination, including where their dimmed presentation is configured. Determine how a visibility option could apply to both views and verify that the useful stack range is shown when removed variables are hidden.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering
Issue type
Feature
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.