Skip to main content

Assembly for Reverse Engineers

Many analysts and programmers have not yet learned assembly language - a skill that will save them precious time when effective analysis is needed most. Designed for malware analysts and code developers alike, Assembly for Reverse Engineers will equip you with the know-how to effectively read Assembly, review statements, and reverse machine code back to its higher-level equivalent. Learn and practice development techniques to improve the speed and quality of static analysis during this week-long, lab-intensive course.

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...