machine.mem32[4 * 9999999] causes an out of bounds read that's trapped by the WASM runtime. Likewise writes.
After recent error handling improvements we stop the sim in the out of bounds cases. Corruption we can't do much about.
I think there are a small number of common scenarios where we might want to support read/write from particular addresses that won't be valid in the sim but could be intercepted by the HAL. More thought required.