Blog
Occasional writing on software, security and whatever I happen to be building or breaking.
Cracking fn_801B3DE4: The Function That Started It All
21 June 2026One function in my Star Fox Adventures decomp held out for fifteen sessions, a fine-tuned model, two corpus brute-forces, decomp-permuter, even reverse-engineering the compiler itself, and every frontier AI I could throw at it — all of which kept insisting it was impossible. Here's the long road to a byte-perfect match — the daft no-op hack that first forced it, and the plain, idiomatic C I eventually found that did it the way a human actually would.
Reverse-Engineering Star Fox Adventures Live with Claude and a Dolphin MCP
17 June 2026I built an MCP server that drives Dolphin's built-in GDB debugger, then handed it to Claude and just played the game. It set its own breakpoints and narrated an entire boss fight back to me — and along the way we renamed a mystery struct field and found a piece of cut content.
Teaching a Model to Decompile: From "100% Match!" to a More Interesting Truth
15 June 2026I tried fine-tuning a local LLM to decompile PowerPC assembly into byte-matching C for my Star Fox Adventures decomp. This is the working log — including all the parts where I was wrong, the benchmarks that lied to me, and the surprising thing the model turned out to be good for.
How I Finally Got to Give Back to a Childhood Favourite
3 June 2026Star Fox Adventures has been my favourite game since I was a kid. Here's how a speedrunning video, a Discord server, and a wave of AI-assisted decompilation finally let me contribute to the community behind it.
Don't Hash Trash
22 March 2021Hashing only protects you when it's done right. A look at what hashing actually is, why salts matter, and how I once found a passwordless auth system you could quietly predict your way into.