Debugging, Disassembly & Reversing in Linux for x64 Architecture
Learn how to debug, disassemble, and reverse-engineer applications on Linux for x64 architecture.
GNU Debugger (GDB) is used for debugging C/C++ programs in LINUX/UNIX environments. It is a good tool to investigate what is happening inside a program, and how the contents inside the memory are changed with the execution of the program.
The main focus of the course is the disassembly of the program, where we’ll use simple operations in C. With the help of GDB, we’ll examine the contents of the registers and memory. We’ll also learn how they are changed while executing basic operations. We’ll then explore the use of pointers, stack, and function parameters, and analyze how different registers update their values. With the help of disassembly output, we’ll learn how a simple C program can be reconstructed. The disassembly output is important for debugging and core dump analysis. We’ll use assembly language for x64 architecture.
By the end of this course, you should be able to debug the programs and memory contents at assembly level when a program executes or probe into the problem when a program crashes.
There are no reviews yet.