Bits
Bits
Application Binary Interface (ABI) Series
Read this when an ordinary-looking function call crosses a language, platform, hook, tracer, or FFI boundary and starts behaving like a packet format.
All 9 parts are now live.
Recent Systems Writing
Systems and security pieces outside the ABI sequence.
- Abradeessay | Jul 9, 2026Abrade After the Happy PathAbrade v0.3.0 updates a small C++ crawler for modern TLS, body-level evidence, clearer automation, and repeatable releases.
- C++essay | May 20, 2026C Constructs That Still Don’t Work in C++ — and a Few That ChangedA language-mode-aware update on the C constructs that still break or change meaning in modern C++.
- Security researchessay | May 13, 2026Gargoyle, a decade laterA nearly decade-later look at Gargoyle as temporal memory-state research: what the original Win32 proof taught, what the refresh fixed, and why better evidence matters.
- Aviation cybersecurityexternal | Sep 1, 2022ExternalAirborne Connectivity Doesn't Need to Come with Cybersecurity BaggageAn Aerospace America essay on aviation connectivity, cybersecurity risk, and designing protection into aircraft systems.
- external | Mar 1, 2022ExternalProtecting Against Aviation Cyber AttacksAn Aerospace America essay on aviation cybersecurity, embedded systems, and visibility into aircraft data.
- external | Jan 13, 2022ExternalSpace Race Needs Better CybersecurityAn opinion essay on space-system cybersecurity and the need to invest in resilient space infrastructure.
ABI Sequence
The nine-part path through hidden arguments, malformed call packets, varargs, ARM64 platform rules, unwinding, FFI boundaries, and call-site hardening.
- ABI seriesessay | May 29, 2026The Function Signature Is a LieHidden result storage shows why the source signature is not the whole call.
- ABI seriesessay | Jun 1, 2026Same Function, Three RealitiesA side-by-side ABI comparison built around one boring five-integer function.
- ABI seriesessay | Jun 2, 2026The Bugs That Make ABI Rules MemorableThe adversarial post in the ABI series: learn ABI rules by watching what breaks when the call packet is malformed.
- ABI seriesessay | Jun 3, 2026Hidden Arguments Are EverywhereResult storage, receivers, runtime context, and adjusted object pointers are fields the source call may not spell.
- ABI seriesessay | Jun 4, 2026Varargs: The Function Call With Missing Type InformationA focused post on System V AMD64 varargs, Windows x64 floating-point duplication, and the practical advice to avoid variadic FFI.
- ABI seriesessay | Jun 5, 2026ARM64 Is Not Just x64 With More RegistersARM64 separates ISA facts from platform ABI rules: link registers, x18, stack policy, and ARM64EC all live at different layers.
- ABI seriesessay | Jun 8, 2026It Works Until the Stack Walker ArrivesA post about the failure path: modern ABI contracts must be explainable to unwinders and tooling, not just executable on the sunny path.
- ABI seriesessay | Jun 9, 2026The ABI Is the BoundaryNative boundaries stay hard even when high-level languages make them look ergonomic.
- ABI seriesessay | Jun 10, 2026Calls Are Now a Security SurfaceThe finale: calls and returns are no longer just conventions; platforms increasingly enforce parts of the control-flow protocol.
Systems and C++
Representation, language edges, lifetimes, and the mechanical side of software that still matters after the abstraction story ends.
- Abradeessay | Jul 9, 2026Abrade After the Happy PathAbrade v0.3.0 updates a small C++ crawler for modern TLS, body-level evidence, clearer automation, and repeatable releases.
- C++essay | May 20, 2026C Constructs That Still Don’t Work in C++ — and a Few That ChangedA language-mode-aware update on the C constructs that still break or change meaning in modern C++.
- C++note | Apr 28, 2019C Constructs That Don't Work in C++C idioms that fail or change meaning in C++, from pointer conversions to prototypes.
Security and Reverse Engineering
Artifact-bound security writing, disclosure, and the practice of recovering mechanism from binaries and old systems.
- Security researchessay | May 13, 2026Gargoyle, a decade laterA nearly decade-later look at Gargoyle as temporal memory-state research: what the original Win32 proof taught, what the refresh fixed, and why better evidence matters.
- Aviation cybersecurityexternal | Sep 1, 2022ExternalAirborne Connectivity Doesn't Need to Come with Cybersecurity BaggageAn Aerospace America essay on aviation connectivity, cybersecurity risk, and designing protection into aircraft systems.
- external | Mar 1, 2022ExternalProtecting Against Aviation Cyber AttacksAn Aerospace America essay on aviation cybersecurity, embedded systems, and visibility into aircraft data.
- external | Jan 13, 2022ExternalSpace Race Needs Better CybersecurityAn opinion essay on space-system cybersecurity and the need to invest in resilient space infrastructure.
- external | Apr 19, 2021ExternalEmerging Themes in Cybersecurity - 2021A co-authored First In essay on cybersecurity themes and where technical pressure was accumulating in 2021.
- Disclosurenote | Oct 16, 2017Vulnerability Patched in Democratic Donor DatabaseA responsible-disclosure writeup on predictable subscription-management links, entropy, and unauthenticated account portals.
- Reverse engineeringnote | Mar 6, 2015Getting Started with Reverse EngineeringA static-analysis walkthrough using strings, dumpbin, and IDA on a tiny Windows binary.