start) command's goal is to find and break at the
most obvious entry point available in the binary. Since the binary will start
running, some of the
PLT entries will also be resolved, making further
It will perform the following actions:
- Look up a
mainsymbol. If found, set a temporary breakpoint and go.
- Otherwise, it will look up for
__libc_start_main. If found, set a temporary breakpoint and go.
- Finally, if the previous two symbols are not found, it will get the entry point from the ELF header, set a breakpoint and run. This case should never fail if the ELF binary has a valid structure.