Skip to main content

Advanced Static Analysis

Learn how to identify code constructs and examine the assembly code of malware.

Task 1: Introduction

Task 2: Malware Analysis: Overview

Task 3: Connecting to the VM

Task 4: Ghidra: A Quick Overview

Task 5: Identifying C Code Constructs in Assembly

Task 6: An Overview of Windows API Calls

Task 7: Common APIs used by Malware

Task 8: Process Hollowing: Overview

Task 9: Analyzing Process Hollowing

Task 10: Conclusion

Back to all walkthroughs
Room Icon

Advanced Static Analysis

Max room.

Learn how to identify code constructs and examine the assembly code of malware.

medium

120 min

9,973

User profile photo.
User profile photo.

To access material, start machines and answer questions login.

In the Basic room, we looked at the characteristics of malware, like strings, hashes, import functions, and other key information in the header, to get an idea about the purpose of a given malware. In Advanced Static Analysis, we will move further and reverse engineer malware into the disassembled code and analyze the assembly instructions to understand the malware's core functionality in a better way.

Advanced Static Analysis

Advanced static analysis is a technique used to analyze the code and structure of malware without executing it. This can help us identify the malware's behavior and weaknesses and develop signatures for antivirus software to detect it. By analyzing the code and structure of malware, researchers can also better understand how it works and develop new techniques for defending against it.

Learning Objectives

Reverse Engineering Process simplified

This room is designed to help you acquire the knowledge needed to reverse engineer malware effectively. It will teach you to approach assembly instructions more systematically, enabling you to identify important functions more easily instead of getting carried away by each instruction.

Some of the topics that are covered in this room are:

  • Understand how advanced static analysis is performed.
  • Exploring 's disassembler functionality.
  • Understanding and identifying different C constructs in assembly.

Prerequisites

Participants are expected to have completed the following rooms to understand better.

Let's begin learning.

Answer the questions below

I have completed the prerequisites.