Something you should understand is that serial is magnitudes slower than Arduino. Your code should treat it like package deliveries coming to the door a few times a day, not like as soon as the first char arrives the rest are right there too.
2400 baud =is= 240 chars per second. That's 66,666 cycles in between arrivals that processing can be done. That is a lot of computing when it's not wasted.
I see you have delays to slow the Arduino down and just fyi, that's a very poor solution where better ways are taught.
You may not have to buffer anything to find a string in serial data. You only need a copy of what to match, a counter to store how many chars have matched and code that can move the match process along.
Could that be embedded in other hex? FFFF01000700575F33 or will the string to match start after a delimiter like a space, comma or new line?