Need to read up to 43 bytes of data, reading incorrectly.

Each incoming byte causes an interrupt. The received byte gets placed into a buffer. Providing you don't have interrupts turned off for too long, or let the buffer overflow, you should be OK.