I am comfortable in C#/Java, and I know C and C++ fairly well. However, I want to dig deeper and learn more bare-metal stuff. For example, a simple console program in C++:
int main()
{
char *ptr = "helloworld";
return 1;
}
I opened it in Visual Studio using the debugger (after deleting the pdb file) to step through the code in assembly. I am also using HxD hex editor to look at the binary.
Obviously I am far from understanding what's going on. I want to learn how to trace code as it's executing for a binary I don't have the source to (if possible), or just learn as much about this subject as I can. I understand step-through debugging with source as I use it every day at work, but without it I am helpless.
Is there a 'ground up' tutorial for this type of thing? What tools/walkthroughs can you recommend?
Thank you.
If you want to go deeper take a look at Ollydbg and some reversing/cracking tutorials.. That will take deep for sure :) And you will learn how stuff works :) Reverse Engineering Team is a good starting point.. Any search engine will give you lots of stuff with the right keywords.. :)