Introduction To Software Reverse Engineering With Ghidra Session 2: C To ASM
Introduction To Software Reverse Engineering With Ghidra Session 2: C To ASM
• Within the ELF header, there is an e_entry field, this field points to
the _start() function
• This is what eventually calls main!
• We can use the information from this ABI to help us when reverse
engineering
• main() is our entry point
• The arguments to main are determined by the ABI!
• When importing a binary, users can also specify a path for libraries
that are imported
IfHere weless
it was are than
comparing
100 wea jump
variable
to
pointed to otherwise
0x4005C7, on the stack
wetocontinue
100 to
0x4005BB
• The expression for the case must have the same data type as the
variable in the switch
Middle
ForwardclickInst
highlights
Slice
highlights
a variable
usages
moving forward in the
function
Low Address
0x400530
RSP ???
RSI
???
EDI
RSP RBP RBP
… High Address
• The epilogue cleans up the stack frame and returns it to it’s original
state
• The exercises for this course are available on the GitHub page!