0x1A BNLS_VERSIONCHECKEX2 (DWORD) Product ID.*(DWORD) Flags.**(DWORD) Cookie.(ULONGLONG) Timestamp for version check archive.(STRING) Version check archive filename.(STRING) Checksum formula
I don't think PHP supports 64-bit ints, if not, just treat it as a set of 2 32-bit ints. Its jsut the filetime, not really used for anything.
Every generation of humans believed it had all the answers it needed, except for a few mysteries they assumed would be solved at any moment. And they all believed their ancestors were simplistic and deluded. What are the odds that you are the first generation of humans who will understand reality?
You've just located global warming.
typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime;} FILETIME, *PFILETIME;
A FILETIME is defined as ...Code: [Select]typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime;} FILETIME, *PFILETIME;... per MSDN.
Quote from: chyea on February 17, 2009, 04:22 pmA FILETIME is defined as ...Code: [Select]typedef struct _FILETIME { DWORD dwLowDateTime; DWORD dwHighDateTime;} FILETIME, *PFILETIME;... per MSDN.That definition is written in that manner because, back in the day, there wasn't support in C compilers for __int64. While it's technically accurate it really doesn't provide any meaningful value to someone who's trying to reverse-engineer the actual date, other than to say that you could possibly translate with some fancy bit math.
The size of an integer is platform-dependent, although a maximum value of about two billion is the usual value (that's 32 bits signed). PHP does not support unsigned integers. Integer size can be determined using the constant PHP_INT_SIZE, and maximum value using the constant PHP_INT_MAX since PHP 4.4.0 and PHP 5.0.5.