UMBC Training Centers logo

Introduction to Reverse Engineering


Course Description | Outline | Software Development Training | IT Training

Course Description

This course is an introduction to the basic concepts of reverse engineering. Emphasis is placed on methodologies, and tools. This course will not go in depth on any tool specific, but be an introduction to the skills required for reverse engineering and debugging. Students will use various tools to accomplish multiple reversing labs.

Course Objectives

  • Describe the reverse engineering methodology
  • Identify and use various reversing tools
  • Demonstrate how to setup a reversing environment
  • Explain when an isolated safe reversing environment is needed
  • Demonstrate proficiency in static analysis
  • Demonstrate proficiency in dynamic analysis
  • Demonstrate proficiency in combining static and dynamic analysis together
  • Describe the methods of Anti-Debugging, PSP Avoidance and VM Detection
  • Explain the application of re-use and re-purposing of reversed binaries

Course Topics

  • Introduction to Reverse Engineering
  • VM tools and creating the testing environment
  • Dynamic analysis tools and methodologies
  • Static analysis tools and methodologies
  • Combined reverse engineering
  • Re-use and re-purpose

Course Prerequisites

  • Students should have significant training or experience in a high level language such as C / C++.
  • Students should have working knowledge of the x86 architecture and assembly language.
  • Students should have a good working knowledge of Windows operating system concepts.

Course Duration

5 days



Contact Information

E-mail Heith Hart or call (443) 692-6599 if you have any questions about this course or if you would like to be added to the interest or wait list.