__int64 has an inconsistent alignment: 4 bytes on Unix, 8 bytes on PE.
Fix this by using INT64/UINT64 which has consistent alignment on both Unix and PE side.
This allows adding 64-bit fields at unaligned offset in the future, without triggering struct layout mismatch between Unix and PE due to inserted padding (which exists on PE but not on Unix).