internal static void CompressNum(uint val, MemoryStream sig)
{
if (val <= 0x7F) {
sig.WriteByte((byte)val);
} else if (val <= 0x3FFF) {
byte b1 = (byte)((val >> 8) | 0x80);
byte b2 = (byte)(val & FileImage.iByteMask[0]);
sig.WriteByte(b1);
sig.WriteByte(b2);
} else {
byte b1 = (byte)((val >> 24) | 0xC0);
byte b2 = (byte)((val & FileImage.iByteMask[2]) >> 16);
byte b3 = (byte)((val & FileImage.iByteMask[1]) >> 8);;
byte b4 = (byte)(val & FileImage.iByteMask[0]);
sig.WriteByte(b1);
sig.WriteByte(b2);
sig.WriteByte(b3);
sig.WriteByte(b4);
}
}