So Plater, by doing it manually, do you mean something like this?

byte[] msgPrefix = new byte[8];

msgPrefix[0] = 0;
msgPrefix[1] = 0;
msgPrefix[2] = 0;
msgPrefix[3] = 0x44;
msgPrefix[4] = 0;
msgPrefix[5] = 0x3C;
msgPrefix[6] = 0;
msgPrefix[7] = 0;

...