public static void Write(int arg, int offset, byte[] buffer) { if (buffer == null) { return; } if (offset > buffer.Length - 1) { return; } if (buffer.Length >= offset + sizeof(uint)) { unsafe { #if UNSAFE fixed (byte* Buffer = buffer) { *((int*)(Buffer + offset)) = arg; } #else buffer[offset] = (byte)(arg); buffer[offset + 1] = (byte)(arg >> 8); buffer[offset + 2] = (byte)(arg >> 16); buffer[offset + 3] = (byte)(arg >> 24); #endif } } }