Step to Return sometimes does not stop at caller's next instruction, execution continues running instead
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 331
- Forks
- 33
- PR merge metrics
- No merged PRs in 30d
Description
Version and Platform (required):
- Binary Ninja Version: 6.1.10562
- OS: Windows 11
- OS Version: 10.0.26200 N/A Build 26200
- CPU Architecture: x64
- Local or Remote Debugging: Local
Bug Description:
When debugging locally and clicking "Step to Return" while inside a function that was entered via "Step Into", execution continues running to completion instead of stopping at the instruction after the call in the caller.
Steps To Reproduce:
- Open md5.exe in Binary Ninja
- Launch with command line arguments:
.\helloworld.exe - At
006c2054 sub_6c19f0(*eax_10, esi_1), click "Step Into" to entersub_6c19f0 - Click "Step to Return"
- Observe that the program runs to completion instead of stopping at the instruction following the call at
006c2054
Expected Behavior:
Clicking "Step to Return" should stop execution at the instruction immediately after the call at 006c2054 in the caller, not run the program to completion.
Screenshots/Video Recording:
https://github.com/user-attachments/assets/60a0fe75-fb54-4ade-93ae-93988af5652d
Binary:
md5.exe
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue in Binary Ninja using test/binaries/Windows-x86_64/md5.exe: enter sub_6c19f0 with Step Into at 006c2054, then use Step to Return. Trace the debugger's Step to Return handling and verify that execution stops at the instruction immediately after the caller's call rather than running to completion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- devtools, reverse-engineering
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 72/100