Skip to main content

MA 200 - Assembly for Reverse Engineers

Assembly for Reverse Engineers was designed for those entering the field of Malware Analysis. The course will teach you the common assembly statements and operands as well as how to write and reverse assembly.

Request Course Details

Attending students will learn

  • Data Representation
  • Stack Memory, Heap Memory, Stack Tracing
  • Common Assembly Instructions
  • x86 Addressing Modes
  • Repetition, Branching, and Function Calls
  • Writing ASSM Statements in C
  • Encryption and Obfuscation of Assembly

Who should attend

  • Forensic Investigators who need to identify and examine malicious code on systems
  • Exploitation Analysts needing reverse engineering skills
  • Penetration Testers who want to develop their own tools
  • Malware Analysts requiring a thorough understanding malicious code


  • Previous knowledge of C programming as well as a solid understanding of operating systems is recommended.
  • Introduction to C Programming and Operating Systems Fundamentals are good preparatory classes.

Course Outline

Day 1

  • What is Assembly?
  • Computer Architecture Review
  • X86 Memory Layout
  • Essential Assembly Instructions

Day 2

  • X86 Memory Addressing Modes
  • Strings and Arrays
  • Control Structures
  • Functions

Day 3

  • How Compilers Work
  • Modern Compilers
  • PE File Structure
  • Dynamic Memory Allocation
  • Floating Point Arithmetic
  • Identifying Developer Code

Day 4

  • Malware Specific Assembly Analysis

Day 5 – Student Practical Demonstration

Using the tools, skills, and methodologies taught in Days 1 through 4 of the class, students will derive answers in a Stack Tracing Assignment. Upon completion, each student will reverse engineer a binary application to uncover its capabilities and document its procedures and code paths.

Courses That Follow This Course

Request More Info About This Course

contact Focal Point

tweets by @FocalPointDR

Loading Tweets...