AMI-Aptio-BIOS-Reversed / AmiModulePkg / OemActivation / OA3 / OA3_SMM /
@Ajax Dong Ajax Dong authored 7 days ago
..
OA3_SMM.c Recovering names 7 days ago
OA3_SMM.h Recovering names 7 days ago
OA3_SMM.md Recovering names 7 days ago
README.md Recovering names 7 days ago
README.md

OA3_SMM

  • Index: 0198
  • Size: 5,476 bytes (5.3 KB)
  • Phase: SMM (System Management Mode)
  • PE Format: PE32+ x86-64, 5 sections (.text, .rdata, .data, section_3, .xdata)

Overview

SMM driver for OA3 (OEM Activation 3.0 / OA3.x) digital entitlement and product activation. Part of the AmiModulePkg/OemActivation/OA3 package. OA3 is Microsoft's OEM activation mechanism where the product key and activation data are embedded in the firmware rather than provided on a sticker. This SMM driver manages the secure storage and retrieval of OA3 activation tokens, including the OA3xProductKey and OA3xRMP (Microsoft-trusted certificate table). Operating in SMM ensures activation data is protected from OS-level tampering.

Key Functions

  • ModuleEntryPoint -- Standard SMM driver entry; library init and OA3 activation setup
  • Oa3SmmAutoGenConstructor -- Auto-generated constructor/bootstrap for OA3 SMM AutoGen state
  • Oa3SmmInitHook -- AutoGen pre-entry gate check before OA3 logic starts
  • Oa3SmmInitialize -- Core OA3 SMM initialization (token management and activation-data setup)
  • Oa3SmmAutoGenDestructor -- Auto-generated destructor for OA3 SMM AutoGen context
  • Oa3SmmUnload -- Manual unload helper used by AutoGen unwind path
  • Oa3SmmDebugAssert -- Internal assertion handler used in unreachable error-path checks

Protocols

  • SmmBase2 Protocol -- SMM framework entry
  • OA3 Protocol -- OA3 activation data access (product key, RMP table)
  • Variable Services (SMM) -- Non-volatile storage of activation tokens

Platform

  • Build: HR6N0XMLK DEBUG_VS2015 X64
  • Source: AmiModulePkg/OemActivation/OA3/OA3_SMM/OA3_SMM
  • Part of: HR650X BIOS SMM infrastructure (indices 0195-0199, 0201-0203)