I am trying to set a breakpoint (created in assembly) and step into an EXE file line by line to watch registers and memory behavior. I have done this easily with gdb under Linux like this.
gdb -q ./AssembledLinkedFile -tui break _start (or break *&code for C using shellcode) run stepi
This works perfectly. However, The documentation for Windbg does not seem so straight forward.
Since using GoLink adds several lines of asm, I need to find my assembly and start at the beginning (_start:)
- Write my assembly program.
- Assemble (on linux) - nasm -f win64 messageBox64bit.nasm -o messageBox64bit.obj
- Link with golink (Windows) - golink \console messageBox64bit.obj
- messageBox64bit.EXE created and works fine. Executed on Windows
After I open the messageBox64bit.EXE in Windbg, how can I set a breakpoint in my assembly (_start:), then step into?