SPI Slave Reverse Engineering!

Sure you can modify that. Just never call any method of the Serial object inside the ISR. Use flag variables to communicate with the main loop routine and don't forget to declare them volatile as they are accessed inside interrupt context, otherwise the compiler may optimize it away.