CS STUDENT // LOVE OF THE GAME // NONCHALANT

firstchronicle

19 year old CS student. Most of my time goes on low-level code, pulling systems apart to understand them, and building stuff that actually works.

0COMMUNITY MEMBERS
0LANGUAGES
0YEARS BUILDING
0SHIPPED PROJECTS

01.

About

I'm 19, studying computer science, and I've spent the last four years building things most people my age haven't touched and breaking things most people don't know exist.

My work lives at the bottom of the stack. Reverse engineering, native Windows tooling, kernel internals, static analysis, binary instrumentation. The parts of a system that most developers never see: the actual instruction stream the CPU executes, the page table walk that happens on every memory access, the IRP dispatch chain when you open a file. Not because any of this is obscure for the sake of it, but because understanding things at that level is the only way to reason clearly about performance, security, and correctness in software that actually matters.

It started with game cheating at 15. I couldn't afford commercial tools so I decided to build my own. That turned out to be a substantially more ambitious project than I anticipated. Reading process memory from outside a game requires a kernel driver. Writing a kernel driver means reading WDK documentation for weeks, learning to interpret BSODs as diagnostic signals rather than crashes, and understanding the EPROCESS structure well enough to know which offset holds the token for privilege escalation and which holds the doubly linked list of active processes. Anticheat operates at ring-0 too, so you end up in an arms race with professional engineers. Brutal and extremely effective as a school.

Two years of that produced Inverse X: a fully commercial cheat community that peaked at 11,000 members. I built every component myself. The ring-0 driver, the obfuscated C++ loader, the RSA-4096 hardware-bound auth backend, the React dashboard, billing, support tooling. Running production infrastructure solo at 16 taught me things university hasn't come close to touching. What it means when 11,000 people depend on something you wrote. What it's like to debug a kernel panic at 2am because a Windows patch changed an undocumented struct offset. How to build systems that degrade gracefully. I shut it down eventually because the operational overhead wasn't sustainable alongside everything else, but the technical foundation it gave me is the reason I can do what I do now.

The approach I've settled into is: understand a thing properly or don't use it. I wrote a PE loader from scratch not because LoadLibrary is bad, but because you can't reason about what the Windows loader is doing unless you've implemented it yourself and hit every edge case. IAT patching, base relocations, TLS callbacks, bound imports, delay-load descriptors. Each one is a line in winnt.h that only becomes meaningful when you've debugged why your loader crashes on it. Same reason I built a sandbox engine with inline hooking, wrote a custom memory allocator, and spent weeks stepping through ntdll in WinDbg. The pattern is consistent and I'm not apologising for it.

Right now I'm working on FCAT, a full PE static analysis suite in C# compiled to WebAssembly via Blazor. Client-side only, no file upload, no server, every byte stays on your machine. The interesting engineering problems are around the WASM memory model: how you process a 200MB binary in a linear memory sandbox without exhausting it, how you build an interactive entropy heatmap that stays responsive while scanning, how you implement packer detection heuristics that don't false-positive on legitimately compressed resources. I'm also working through the LLVM codebase methodically. The IR representation, the pass infrastructure, how SelectionDAG translates IR to machine instructions. The goal is a disassembly backend eventually. The longer direction is static analysis and security research tooling. I'd rather build the tool someone else uses than only know how to use tools.

Outside of that: competitive problem solving, reading. Currently working through Tanenbaum's Modern Operating Systems and the Intel Software Developer's Manual, which is not a comfortable read but is extremely useful. I find a lot of modern software unsatisfying because the people building it don't know what the machine is doing underneath. That probably says something about me.

Reverse Engineering Systems Programming Windows Internals Kernel Dev Static Analysis Binary Analysis C/C++ Architecture LLVM / Compiler Internals

02.

Work

ARCHIVED

Inverse X

Built and ran a custom game cheat community of 11,000 members requiring anticheat evasion and driver-level memory manipulation.

C++KERNELWIN32
ACTIVE

FCAT

A client-side file analysis tool for PE headers, string extraction, and entropy checks without leaving the browser.

C# / WASMSTATIC ANALYSIS
PERSONAL

PE Loader

A manual PE loader that maps, relocates, and executes a Windows executable entirely without calling the OS loader.

C++PE FORMATWIN32
ARCHIVED

Auth Microservice

The license validation backend behind Inverse X. Hardware-bound JWTs, asymmetric signature verification, sub-10ms auth under peak load.

NODE.JSCRYPTOREST API
PERSONAL

Memory Scanner

User-mode memory scanner that enumerates process memory, pattern-scans signatures, and manipulates addresses.

C++WIN32MEMORY
PERSONAL

Sandbox Engine

A user-mode sandboxing framework built entirely on API hooking to intercept and log filesystem, registry, and process activity.

C++DETOURSHOOKING
PERSONAL

Kernel Rootkit

A proof-of-concept Windows kernel rootkit demonstrating DKOM to hide processes from standard user-mode tools.

CKERNELWINDOWS
PERSONAL

Protocol Analyzer

A packet sniffer built using raw sockets and BPF syntax filtering that parses TCP/IP headers manually without any library.

CRAW SOCKETSNETWORKING

03.

Skills

Languages I actually use day to day, not just listed for the sake of it.

C++

Native tools, Win32 API, user-mode and driver-level dev, reverse engineering. My primary language for anything systems-adjacent.

SYSTEMSRE
C#

.NET internals, Blazor/WASM, backend tooling. Used heavily in FCAT and the Inverse X dashboard.

.NETBACKEND
C

OS theory, bare-metal programming, kernel driver development, and low-level Windows and Linux implementations.

LOW-LEVELOS
Assembly

x86/x64 instruction sets, reading compiler-generated disassembly, shellcode analysis, understanding compiler optimisations.

x64STATIC
Python

Fast automation, scripting, RE tooling, and backend API prototyping. Useful when I need results quickly without the C++ overhead.

SCRIPTINGAUTOMATION
JavaScript

Node.js backends, React frontends. Used for the Inverse X dashboard, admin panel, and the auth microservice API.

WEBNODE.JS
SQL

PostgreSQL schema design, query optimisation, and indexing. Learned properly through the Inverse X database under real load.

DATABASEPOSTGRESQL
Java

University requirements, complex OOP structures, algorithm theory. Not my preference but I know it well enough.

ACADEMICOOP
Rust

Actively learning. The borrow checker makes you think about ownership in a way that actually makes you better at C++ too.

LEARNINGSYSTEMS

TOOLS & ENVIRONMENT

REVERSE ENGINEERING
IDA Freex64dbgGhidraPE-bearCFF ExplorerDetect-It-Easy
DEVELOPMENT & DEBUG
Visual StudioWinDbgProcess HackerGitCMakeClang / LLVM
ANALYSIS
WiresharkSysinternals SuiteHxDProcmonDependency Walker
NETWORKING
ScapyNetcattcpdumpBurp Suite

04.

Writing

Writing about things I actually know. Not tutorial rehashes, just what I've learned the hard way.

C++~10 MIN READ

Why C++ Is Worth the Pain

Everyone hits a wall with C++ early on. Here's the honest case for why you should push through it anyway, and what you actually get on the other side.

C#~12 MIN READ

C# Is Faster Than You Think

Most people write C# like it's a scripting language and wonder why it doesn't perform. Here's what the runtime actually gives you when you use it properly.

WINDOWS INTERNALS~16 MIN READ

How Windows Actually Loads a DLL

What ntdll is really doing when you call LoadLibrary. PEB walkers, LDR data tables, TLS callbacks, and why DllMain has rules that exist for a reason.

KERNEL DEV~18 MIN READ

Writing Your First Kernel Driver

Ring-0 is a different world. IRPs, dispatch routines, IRQL constraints, and why forgetting to call IoCompleteRequest is a thread-hanging bug not a crash.

WINDOWS INTERNALS~14 MIN READ

How the Windows Scheduler Actually Works

Thread priorities, quantum expiry, and the distinction between processor affinity and NUMA locality. What happens when your thread gets preempted and why it matters.

RESOON

Reading Assembly Without a Disassembler

The registers, calling conventions, and instruction patterns that let you follow compiled code in your head without a tool mediating every line.

05.

Contact

If you want to work on something, or just think I'm worth talking to, reach out.

EMAIL fc@shss7.agency
DISCORD firstchronicle