public static Int32 ToInt24(byte[] buffer, int index)
{
if (buffer[index+2] > 127)
return BitConverter.ToInt32(new byte[] { buffer[index], buffer[index+1], buffer[index+2], 255 }, 0);
else
return BitConverter.ToInt32(new byte[] { buffer[index], buffer[index+1], buffer[index+2], 0 }, 0);
}