hv.ms
Get in touch

hv.ms

Beneath the surface.
Binary analysis. Reverse engineering.
Windows kernel & hypervisor security.

The research journal.

Implementation changes, failed experiments, and the evidence behind them.

All notes · 9 notes

More from the journal

Browse all journal entries

Start with the fundamentals

ANALYSIS

A binary is more than its instructions.

3 min read

Instructions describe operations, but an executable also contains a contract with its loader. Sections, imports, relocations, and exception metadata influence how those operations become a running program.

Start with the file format. Map file offsets to virtual addresses before trusting a disassembly, identify the entry point, and distinguish initialized data from memory that only exists at runtime. An address in the file is not necessarily an address in memory.

Then connect the static picture to observed behavior. A debugger can validate whether a suspected path executes and what values reach it. Treat the disassembler's labels and inferred types as hypotheses, not ground truth.

Continue with the Microsoft PE specification
ANALYSIS

Control flow is a map, not the territory.

2 min read

A control-flow graph is a model of possible transfers between blocks. Its usefulness depends on which transfers the analysis can recover.

Indirect branches, exceptions, and code generated at runtime can leave gaps in a static graph. An observed execution trace helps confirm edges, but one trace cannot establish that an unobserved path is impossible.

Keep those two forms of evidence separate. Record which edges were inferred and which were observed, then design a small experiment around the uncertainty that matters.

PRACTICE

Make the experiment repeatable.

2 min read

A useful finding should survive a fresh environment and a second pair of eyes. Preserve the original input, record its hash, and write down the toolchain and operating system versions.

Reduce the test case until it isolates the behavior. Change one variable at a time, save the exact invocation, and capture the output needed to distinguish the expected result from the observed one.

Finally, document the limits: what the experiment demonstrates, what it leaves open, and which assumptions would invalidate the conclusion.

Based on project reports. Implementation evidence and open research questions are kept distinct. Diagrams are illustrative; project findings are drawn from the cited reports.

Ideas, made executable.

Research platforms and works in progress.

PE header growth: file offsets move, RVAs stay fixed Illustrative address example from the PE builder article. Inserting 0x200 bytes changes SizeOfHeaders from 0x400 to 0x600 and the instruction file offset from 0x520 to 0x720. The instruction RVA remains 0x1120. Different file. Same address. PE header growth · illustrative address comparison BeforeAfter +0x200 bytes HeadersHeaders Inserted space .text.text 0x5200x720 Instruction file offset Instruction RVA0x1120 0x1120 Virtual placement is preserved. File-backed bytes move.
Inspect the PE snapshot
aegis.exePE32+ / AMD64
MZ

Inside the executable.

6 sections. 76.7 MiB.
Headers read from a local Aegis build.

Actual PE section metadata from the local Aegis executable
SectionRVAVirtual bytesAccess
.text0x0000100079,877,089RX
.rdata0x04C2F000519,626R
.data0x04CAE0004,200RW
.pdata0x04CB000029,328R
.rsrc0x04CB8000480R
Illustrative PE layout · expand for the local build snapshot

AegisVM

EXPERIMENTAL PLATFORM

Windows binary protection,
from the inside out.

Read the engineering note

A binary-to-binary protection compiler exploring PE rewriting, program transformation, and virtualized execution. Deterministic builds make experiments reproducible; conservative admission keeps unsupported functions out of the protected path.

PE binaryTyped IRTransformRuntime

In development. New analysis and encoded-state components are not yet a complete protection backend.

HyperRev executable-state lifecycle: publish, active use, retire Conceptual ownership lifecycle. Publish a committed generation, account for active consumers, and drain consumers before reclamation. Publication consistency and safe reclamation are separate obligations. This diagram does not claim a completed runtime validation of the proposed acceptance observations. Ownership outlives the address. Executable state · conceptual lifecycle Publish Active use Retire Commit a generation Track every consumer Drain, then reclaim Consistent snapshot ≠ safe reclamation A lifecycle model, not a completed runtime result.

Hypervisor Research Platform

RESEARCH IN PROGRESS

Exploring AMD SVM and Hyper-V, guest CR3 observation, NPT contexts, and multi-vCPU synchronization. The question: how can execution context be established independently of guest-maintained bookkeeping?

Virtualization / Windows / Instrumentation
AI evaluation mechanism: artifacts, external observation, recovery and cost The six-variant lab freezes artifacts, accepts external observations, and can summarize semantic recovery against measured cost. External observations have not been imported into this six-variant lab. A separate semantic reference passes 168 of 168 oracle comparisons across 14 executable shapes; those comparisons are not an AI resistance score. Measure the recovered meaning. Evaluation mechanism · six-variant lab Frozen artifacts Six named variants Fixed ground truth External observation Agent + tool policy Recorded evidence Recovery + cost Semantic success Tokens · time · calls Separate semantic reference 168 / 168 Oracle comparisons · 14 shapes Six-variant external observations Not imported Recovery and effort remain unmeasured Oracle agreement establishes a reference, not an AI resistance score.

AI-Assisted Reverse Engineering

EVALUATION FRAMEWORK IN DEVELOPMENT

Studying how automated analysis fails under binary transformation. Current work separates semantic correctness, structural complexity, and measured analyst or agent effort.

Read the methodology

Beyond security

Music, infrastructure & systems

Immersive Now Playing

A Windows music experience unifying playback metadata, lyric timing, and real-time visual themes.

Systems & infrastructure

Other work spans an event-driven trading platform, architecture refactoring for [REDACTED], and a cross-device AI agent control plane currently in design.

Under the hood.

Three ways to look deeper.

NVIDIA GB200 compute board photographed at COMPUTEX by Geekerwan
NVIDIA GB200 · Geekerwan / CC BY 3.0

Windows kernel security

Memory management, page tables, drivers, and the security boundaries that change as the operating system evolves.

Windows Internals / VAD & PTE / VBS

Hypervisor research

Observing guest execution through CPU state, memory translation, and virtualization-layer instrumentation.

AMD SVM / Hyper-V / NPT / VMEXIT

Game security & trust

Anti-cheat architecture and remote attestation: what can a server still trust when part of the client is compromised?

Anti-Cheat / Measured Boot / Hardware Trust

Curiosity is
the entry point.

Master’s studies in Cyber Security
UNSW Sydney

I build low-level systems to understand how software actually executes.

I’m Maxed, an offensive security engineer and researcher. hv.ms is where I share binary analysis, reverse engineering, and software security research, from Windows PE binaries to the kernel and virtualization layer.

I start with a question: what is the CPU, operating system, or program really doing here? Then I build the tools and experiments to find out.

First principles. Reproducible evidence. Explicit trust boundaries.

View my experience & resume

There’s always
another layer.

Keep looking. Keep questioning.

Back to the surface

Search hv.ms

21 results