24,428 courses · 2,504 curriculum guides Sponsored by eAgentic Software Sponsored by eAgentic Software

CAP4136: Malware Analysis

CAP4136 — Malware Analysis and Reverse Engineering
← Course Modules
3 credit hours 45 contact hours Prerequisites: CDA 3101 (computer organization) at UWF -- ⚠ the most load-bearing prerequisite in this batch. The course IS reading assembly: registers, the stack, calling conventions, memory layout. A student shaky there will decode the language rather than analyse the behaviour. ⚠ Unlisted but decisive: C programming, operating systems (Windows internals especially), networking and Python. ⚠⚠ Read this guide's legal section before the course starts. v1.0

Course Description

CAP4136 Malware Analysis is the course in reverse engineering hostile software — taking a compiled executable apart to determine what it does, how it does it, and how to detect and defeat it.

The course is offered at a small number of Florida institutions, including the University of Florida, the University of South Florida and the University of West Florida. ⚠ Institution count is low, so expect more variation than for a widely offered course — particularly in how much time goes to static versus dynamic analysis and in which tooling is taught.

The University of West Florida places it in the College of Science and Engineering, Department of Cybersecurity and Information Technology at 3 semester hours, requires CDA 3101, and describes "software reverse engineering of executable code (or malware) to determine its function and affects or to recover the source code implementation." The University of Florida carries it as Malware Reverse Engineering — a title that names the method rather than the object, and describes the same course.

⚠⚠ Read the legal and ethical section of this guide before you read anything else about this course. Handling live malware carries real risk to you, to your institution and to third parties, and the legal boundaries around this work are strict. Nothing else on this page matters as much.

Why the prerequisite is CDA3101, and why it is exactly right. Malware analysis is the practical application of computer organisation. You are reading assembly — the compiled output of a program whose source you do not have — and reasoning about registers, the stack, calling conventions, memory layout and the instruction set.A student who found computer organisation difficult will find this course very difficult, because it is that material used in anger, on code deliberately written to be hard to read. This repository publishes a guide for CDA3101; it is the foundation this course stands on.

The discipline divides into two complementary approaches, and the course teaches both because neither is sufficient.

The adversarial character is what makes the subject genuinely interesting.Malware is written by people who know it will be analysed and who are actively trying to prevent it. Packing and runtime unpacking, anti-debugging checks, virtual machine and sandbox detection, control flow flattening, encrypted strings decoded only at use, and timing checks. Every technique in the course has a counter-technique, and the course is in part a history of that arms race.

The tooling is specific and learnable. Ghidra — the NSA's reverse engineering suite, released free and open-source, and now the standard teaching tool — and IDA Pro, the long-standing commercial equivalent; x64dbg and OllyDbg for debugging; Wireshark for network behaviour; Process Monitor and the rest of the Sysinternals suite for host behaviour; and YARA for writing the detection rules that turn an analysis into something operationally useful.

Writing a YARA rule is frequently the course's culminating skill, and it is the right one: it converts private understanding of a sample into a shareable, deployable detection artefact — which is what the job actually produces.

Learning Outcomes

Required Outcomes

Optional Outcomes

Major Topics

Required Topics

Optional Topics

Resources & Tools

Career Pathways

This is a specialist skill with a small candidate pool and persistent demand — one of the few undergraduate courses whose specific content is directly hired for.

Practical advice for entering this field: take Security+ early; complete Flare-On challenges and publish your write-ups; keep a public portfolio of analyses of samples you obtained legitimately; and apply for the CyberCorps: Scholarship for Service programme, which funds study at CAE institutions in exchange for federal service and is consistently under-applied for.

Special Information

⚠⚠⚠ Legal and ethical constraints — read this before the course starts

This course teaches you to analyse working malicious software. The constraints are not classroom etiquette; they are law, and violations end careers before they begin.

⚠ Prerequisites — and why CDA3101 is not negotiable

UWF requires CDA3101 (introduction to computer organization). ⚠ This is the most genuinely load-bearing prerequisite in this batch of guides. The course consists of reading assembly, and that means you must already understand:

A student without solid assembly will spend the course decoding the language rather than analysing the behaviour. If your computer organisation is shaky, revisit it before the term starts — Compiler Explorer (godbolt.org) is free and is the fastest way to rebuild the C-to-assembly intuition this course runs on.

Other unlisted but genuinely useful preparation: C programming (you are recovering C-like code, so knowing what compiles to what is decisive); operating systems — particularly Windows internals, processes, threads and the registry; networking for the traffic analysis; and Python for automation.

The course sits in the senior year of a cybersecurity or computer science programme, typically after computer organisation, operating systems and an introductory security course.

Title variation

UWF and the statewide inventory: Malware Analysis. UF: Malware Reverse Engineering. ⚠ The same course under two names — one naming the object of study, the other the method. The number is CAP4136 at all three institutions, so articulation is clean. Benign title drift.

Course format and workload

3 credits, 45 contact hours — lecture with heavy hands-on work. ⚠ No C suffix at UWF, so laboratory work is assigned rather than timetabled — the practical hours come out of your own week.

Expect 10–12 hours per week outside class, and expect it to be lumpy. Analysis is not steadily paced: a sample can yield in an hour or resist for eight, and you cannot reliably predict which. Starting an analysis assignment the night before it is due is the single most common failure mode in this course.

Assessment typically includes analysis assignments with written reports, practical examinations, and often a substantial final analysis project.

Set up your analysis environment in week one. Virtual machine, snapshots, host-only networking, FLARE-VM or REMnux. Environment problems block assignments rather than merely delaying them, and a misconfigured environment is also the scenario in which something escapes.

⚠ What students find hardest

Articulation and transfer

CAP4136 is a 4000-level upper-division course, not offered at Florida College System institutions, and taken after transfer. The number is consistent at the three Florida institutions that carry it, so SCNS articulation is clean.

Prefix note. CAP is computer applications (AI, graphics, and specialised applied topics); CIS computer information systems; COP programming; CDA computer organisation; CNT networking; CEN software engineering; CET computer engineering technology. ⚠ Cybersecurity content is distributed across CAP, CIS, CNT and CET depending on the institutionsearch by subject rather than by prefix when checking whether a receiving programme's requirement is met. Related: CDA3101 (the prerequisite — a guide exists in this repository), CIS4368 (database security), and various numbers for network security and digital forensics.

AI Integration

Malware analysis sits directly on the front line of AI's security consequences, in both directions, and a current course should say so.

Where AI is used defensively — and it is used heavily: malware classification at scale is machine learning work, because no human workforce can triage the volume; behavioural anomaly detection on endpoints; automated triage to route the small fraction of samples worth human attention; and similarity clustering to link samples to known families.

The critical limitation, and it is this course's argument for its own existence: classifiers are trained on known malware and are systematically weakest on the novel. A genuinely new technique is precisely what the model has not seen — and the novel case is the one that matters most. Human analysis is what handles it, and human analysis is what generates the labels the next model trains on.

Where AI is used offensively: adversarial evasion — modifying a sample to defeat a classifier while preserving function — is an active research and criminal practice area; automated obfuscation and polymorphism; and AI-assisted development of malicious code, which lowers the skill floor for attackers even where guardrails prevent the most direct requests. ⚠ The most consequential near-term effect is arguably not on malware at all but on social engineering, where convincing phishing at scale is now trivially cheap — and credential theft remains one of the main routes to deploying malware in the first place.

Using AI tools in this course. Models are genuinely useful for explaining an unfamiliar assembly instruction or Windows API call, for hypothesising what a decompiled function might be doing, for writing Python automation and Ghidra scripts, and for drafting the narrative sections of a report. ⚠ These are legitimate and are becoming normal professional practice.

Where they fail, specifically:

⚠⚠ Two rules that are not negotiable. First: never paste malware samples, or code extracted from them, into a public AI service. You are transmitting potentially malicious code to a third party, you may be disclosing information about a live incident, and in a professional setting it is an operational security failure. Second: AI assistance does not extend authorisation. A model will explain a technique without any knowledge of whether you are permitted to apply it. The legal boundary is yours alone, and it is the one thing on this page with consequences that outlast the course.

Academic integrity. Read the syllabus; computing departments have generally written specific policies. ⚠ As noted above, an academic integrity finding in this discipline is reportable in background investigations and can be disqualifying for a clearance — which makes the stakes here materially higher than a grade.


Generated September 8, 2026 · Updated September 8, 2026