0

enter image description hereMy question is, when i dont use any breakpoint it show the message saying "You made it, now keygen me!", but when i put a breakpoint in the main, or any other place it will show a message about __libc_start_main, and will not show the message saying "You made it, now keygen me!", why this happens because of the breakpoint?

when i run with breakWhen i run without break

3
  • This would be easier to answer if you provided the binary you are working on.
    – the_endian
    Commented Apr 19, 2020 at 10:21
  • I added the disassembly main image Commented Apr 19, 2020 at 10:40
  • @AlexandreGonçalves could you please add disassembly as text instead of images? This way it's easier to read by search engines and screen readers
    – Igor Skochinsky
    Commented Apr 19, 2020 at 15:35

1 Answer 1

2

From GDB documentation:

Warning: If you use the step command while control is within a function that was compiled without debugging information, execution proceeds until control reaches a function that does have debugging information.

and:

next [count]

Continue to the next source line in the current (innermost) stack frame. This is similar to step, but function calls that appear within the line of code are executed without stopping.

The file you are analysing was not compiled with debug information - GDB in fact tells you that by:

"Single stepping until exit from function main, which has no line information."

According to the same GDB docs, to step over one assembly line, which, I assume is what you want to do, you can use nexti (ni) command.

1
  • But even using (ni) it will show that message Commented Apr 19, 2020 at 11:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.