Advanced Software Reverse Engineering - SlashSRE


Slash Advanced Software Reverse Engineering (SlashSRE) is an online training program that provides all the high-level skills required for professional reverse engineering against modern software. Reverse engineering is widely used to verify if there are any major security flaws or vulnerabilities in the system and applications. It helps to make a system robust, thereby protecting it from hackers and spyware.

This training is focused on advanced topics related to binary analysis and auditing, control flow execution, manipulating, modifying, debugging, uncovering vulnerabilities in binaries, software, and embedded systems by discovering the elements of modern CPU architecture and the advanced assembly language.


SlashSRE is advanced training that requires the following pre-requisites:

# Basic knowledge of Network Protocols: TCP, UDP, ARP, ICMP, etc.

# Basic knowledge of x86 & x64 bit assembly programming languages.

# One year in an information security role or equivalent experience

is recommended.

hackerSlash SlashSRE training provides most of the above pre-requisites.


Slash Advanced Software Reverse Engineering (SlashSRE) training is

beneficial for:

# Malware Analysts

# Incident Responders

# Penetration Testers

# Digital Forensic Examiners

# IT Security professionals with a technical background


Once you satisfy the requirements of the final practical certification test, you will be awarded an “Slash Advanced Software Reverse Engineering - SlashSRE” certificate and will hold the SlashSRE certification.


SlashSRE training All concepts and materials presented are reinforced with demonstrations, real-world case studies, follow-along exercises, and student labs to allow candidates to practice what they have learned.

This training is focused on binary code analysis is a core skill for software security engineers, malware analysts, and penetration testers.

Module 1 : Introduction to Reverse Engineering

Module 2 : Reverse Engineering Lab Setup

Module 3 : Assembly Language Needs and Requirements

Module 4 : Assembly Language Programming - Practical

Module 5 : Improving Binary Code Analysis - Practical

Module 6 : Practical Reverse Engineering Techniques

Module 7 : Reverse Engineering Applications

Module 8 : Overview of Portable executable/ PE

Module 9 : Introduction to Packers and Protectors

Module 10 : Detecting and Defeating Anti-reverse Engineering Techniques

Module 11 : Methodologies and Techniques for Reverse Engineering


Introduction to Reverse Engineering

Introduction to Reverse Engineering

Why Reverse Engineering is Important

Reversing Engineering in Software Development


Reverse Engineering Lab Setup

Setting up your Reverse Engineering lab

Setting up the tools in your Reverse Engineering lab


Assembly Language Needs and Requirements

Why do we need Assembly language Knowledge

Is it necessary to learn Assembly language

Why does Assembly seem so important in IT security

What is the role of assembly language in Cyber Security

why are assembly languages useful for Penetration Tester


Assembly Language Programming - Practical

Assembly language - Basic Syntax

Assembly language - Memory Segments

Assembly language - Registers

Assembly language - System Calls

Assembly language - Addressing Modes

Assembly language - Variables

Assembly language - Constants


Improving Binary Code Analysis - Practical

Common uses for Reverse Engineering

Reverse Engineering Code with Ollydbg and IDA

Understanding Address Spaces and DLL imports

Techniques and pitfalls of analyzing compiled code

Identifying calling conventions of Applications

Identifying Control Flows of Applications

Identifying the Win32 API of Applications

Software and Hardware Breakpoints


Practical Reverse Engineering Techniques

How to navigate x86 assembly using Debuggers

Using a debugger to aid Reverse Engineering

Windows Assembly Code Concept for Reverse-Engineering

Linux Assembly Code Concept for Reverse-Engineering

Dynamic Analysis tools and Reverse Engineering techniques

Demonstrate how to navigate x86 assembly code while avoiding tangents

Provide detailed knowledge on Reverse Engineering methodology & tools


Reverse Engineering Applications

Reversing Applications: Protected Software

Reversing Applications: Auditing Program Binaries

Reversing Applications: Different Softwares & Applications

Reversing Applications: Reversing Cryptographic Applications


Overview of Portable executable/ PE

Introduction Portable executable/ PE

Understanding Portable executable Structure

Portable executable File Headers and Sections

Portable executable/ PE Header Analysis

Linked Libraries and Functions


Introduction to Packers and Protectors

UPX unpacking Manual/Automated

Handling Packed and Protected Executables


Detecting & Defeating Anti-reverse Engineering Techniques

Basic anti-reversing strategies

Anti-disassembly and Detecting debuggers

Detecting VM presence

Analyzing packed executables

Popular packers (UPX, PECompact, ASPack, etc.)

Simple obfuscation techniques (XOR swap, junk code, etc.)

Obscuring through data flow and control flow

Base64 and other encoding schemes

Common ciphers and encoding schemes

Hiding Strings and API Calls

Identifying Control-flow Obfuscation

Messing with Function Calls and Returns

Tracing Difficult Function Calls and Returns


Methodologies & Techniques for Reverse Engineering

Confidential Information Leakage - Insecure Backup Storage

Confidential Info Leakage - Screen Capture on Personal Data

Confidential Info Leakage - Application Level Denial-of Service

Confidential Info Leak - Personal Data using Virtual Keyboard

Confidential Info Leak - Sensitive Data Copied to Clipboard

Confidential Info Leak - Data Disclosure Through UserInterface

Confidential Info Leak - Sensitive data Cleartext Storage in Memory


USD $100 Only

Contact us:
Need Technical Assistance? Speak with a support representitive by 
Mailing -