Intro to ACTP
An introductory class establishing the base for both 10-week CNO courses (Windows & Linux).Course Description
This class will familiarize students with some of the computing concepts to help build a clear picture of how to interact with the machine. This course was specially crafted by ACTP instructors to build and strengthen the core skills that will be the foundation of our other ACTP offerings. The concentrated material will provide essential understanding that will be helpful for any student looking to start with systems engineering and reverse engineering.
Prerequisites
Students should have a solid understanding of programming in a systems programming language.
What You Will Learn
Daily Agenda
Day 1: Computer Architecture & Coding Environments
A look at how computing takes place from an architectural level, giving a better understanding of the context around code. Also introduces compilers, linkers, and other pieces of the build toolchain.
Day 2: Documentation & C Programming
Introduces system documentation to feel comfortable navigating unfamiliar APIs and tools. Also covers common pitfalls, frustrations, and design patterns in the C programming language.
Day 3: Introduction to x86 Assembly
A look at how computing takes place from an architectural level, giving a better understanding of the context around code. Also introduces compilers, linkers, and other pieces of the build toolchain.
Day 4: Debugging
A basic introduction to assembly, allowing students to grow comfortable reading and writing assembly, as well as understanding the connection between C code and its associated assembly.
Day 5: Reverse Engineering & Final Exam
Gain experience using a debugger, finding bugs, and eliminating them. Students will also use a variety of debugging tools that provide specialized views into a process.