Indeed, it can quickly disassemble the ROM, find where the PC landed, then the source line...
But in this case the corruption happened well before: con-handler.c stores an IORequest struct inside its instance, just before various settings.
This request was initialized by copying an IOExtSer, with a longer length, and thus serial.device thought it would be ok to scribble all over the context of con-handler 🙂