Skip to main content
Be Bitwise
x86

x86 Assembly Track

12 modules · 48 lessons

Program at the hardware level with a security focus. Master x86-64 instructions, exploitation techniques, and binary hardening — the skills that power security research, reverse engineering, and exploit development.

1

x86 Basics & Environment

Get started with x86-64 assembly: set up NASM, understand registers and data sizes, and write your first program using Linux system calls.

2

Data Movement & Arithmetic

Master the fundamental x86 instructions: MOV, LEA, arithmetic operations, the flags register, and bitwise operations that underpin all low-level computation.

3

Control Flow

Learn how x86 implements decisions and repetition: conditional jumps, loop constructs, and how CMP and TEST set the flags that drive branching logic.

4

Stack & Calling Conventions

Understand the x86 stack: PUSH, POP, stack frames, the System V AMD64 ABI, and how to write proper functions with prologues and epilogues.

5

Memory Addressing & Strings

Master x86 addressing modes, array manipulation, and the powerful string instructions (MOVS, CMPS, STOS, SCAS) with REP prefixes.

6

Capstone: System Calls & I/O

Put your x86 skills to the test: master the Linux syscall interface, file descriptors, and socket programming to build an echo server entirely in assembly.

7

Linking & C Interop

Bridge the gap between assembly and C: learn object files, linking, calling C library functions from assembly, inline assembly, and position-independent code.

8

Security Foundations

Understand how security works at the instruction level: memory protections, stack canaries, ASLR, DEP/NX, and how these defenses are implemented in hardware and software.

9

Buffer Overflows

Dive into the most historically significant vulnerability class: understand stack-based buffer overflows at the instruction level, from anatomy to exploitation.

10

Shellcode Development

Learn to write position-independent shellcode: understand null-byte constraints, encoding techniques, and how to test and debug shellcode safely.

11

ROP & Advanced Techniques

When code injection fails, reuse existing code: learn Return-Oriented Programming, gadget hunting, chain construction, and how to bypass modern defenses like ASLR.

12

Reverse Engineering & Hardening

Complete the journey: read compiler output, identify vulnerabilities in disassembly, apply hardening techniques, and tackle a capstone that combines analysis with defense.