Skip to content

Why do some local variables have second numbers? #3003

Answered by fuzyll
seanthegeek asked this question in Q&A
Discussion options

You must be logged in to vote

Hey Sean! I got your email about this as well. Sorry for the long wait for a response.

This isn't a "bug" - it's just a difference in how Binary Ninja did its analysis. (Although, we do currently lack the ability for you to manually merge them if this happens in HLIL instead of disassembly, which is a bug/missing feature: #1887.)

If you click on each version of var_28 and hit "y", you'll see they're typed differently: var_28 is an int32_t, var_28_1 is a void*, and var_28_2 is an HMODULE. (I'm not sure why var_28 is used after var_28_1, but it's probably related to the order in which types were applied while the function was being analyzed.) Because the type differs in each usage, Binary N…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@psifertex
Comment options

Answer selected by fuzyll
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
3 participants