- _shader_transparent_chicago_create: per-map shader_map_verify(map,
map_index) call as in the exact generic sibling (January's inlined
TRUE-returning verify leaves its store in the loop tail) (park reopen)
- _complete_key_exchange: plain short packet locals replace a long/short
union type-pun (park reopen)
- _debug_realloc: parameter-home reuse and a block-local old_header,
both proven by January's frame (park reopen)
- _lra_allocate: single-exit size check and a conditional round-up
`size = (size & 3) ? (size | 3) + 1 : size` (disclosed) (park reopen)
- _game_state_open_persistent_storage: single-exit success flag (park reopen)
- _progress_bar_create_noise_texture: symbols.json renames _code_000d16d0
in place (static) to the name the 2001-09-25 Xbox linker maps give; an
empty static step called from progress_bar_setup (call position
inferred from map order; the call is required for emission)
Stable diff: 0 regressions; active parks 206 -> 201.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Recover the least-recently-allocated cache primitive from the January
object: 0x3c-byte lra_cache ('lrac' signature, name, size,
base_address, malloced flag, last_block, update/delete procs) and
0x10-byte in-buffer lra_block headers ('Ablh' signature with locked
and deleted flag bits, user address pointer, size, forward chain).
Seven of fourteen functions are proven exact: lra_full, lra_new,
lra_dispose, lra_flush, the default update/delete callbacks and the
block-invalidate helper code_0010ba10 with its ESI/ECX register
convention. The remaining seven are byte-complete reconstructions
blocked on a single interlocked register-allocation choice (cache in
EBX versus EDI) shared by the verify helpers and their callers, plus
one callee-saved-count difference in lra_allocate.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>