Well from what I can see the entire matrix stack gets filled with NaNs. So that means the model matrix (the matrix that sets the position for the model in the scene) is just filled with NaNs instead of float values.

The NaNs also show up in the viewport data as broken light angles. Just the x/y/z angle is broken, the other parameters seem fine.

Nan values also leak into some of the ram models. (Models generated on the CPU and uploaded to the GPU).

So what is happening? I have a few theories.
Perhaps we have incomplete NaN emulation. Maybe there is some CPU mode which handles these numbers differently?
Other ideas are, maybe the game is reading the time, and if it hasn't been incremented between frames it gives a 0, which causes a divide by zero error.
Perhaps there is something the GPU is not returning in the stat packet, such as the frame number or some clock value, which should be incremented every frame, and this is causing a divide by zero error.
Maybe bad ROM ?