From my understanding, after each "word", there's a number composed of 5 bytes. Imho, that number should not be read in hexa. I'll explain:
After the first group (COLOR) the number is 4, meaning the following are 4 bytes of color: 00, 99, 99, 99 (an ARGB color).
Then the next group tells CUE. The magic number is 12. If I'd convert it to hexa it would do wrong, but if I read it as decimal 12, then it matches: the next 12 bytes are the useful data 00 00 00 00 00 19 00 CC 00 00 00 00. Maybe the first 8 bytes are some Time (int64 time_t?) and the rest of 4 bytes are an ARGB black.
I hope it helps somebody...
Huh, that is quite helpful.
But, why would it need a transparency value in the colours? That's the confusing part.
EDIT: I had figured that the 12 was a control character, but everything else lines up with your theory.