The binboy.mdx file is made up of a header followed by an entry for each article. Types ----- Numbers are stored as a 4 byte int. Strings are stored as a 4-byte length (int) followed by the actual bytes in the string, if any. The character string is not null- terminated. FILETIME is a standard Win32 structure containing a 64-bit value representing the number of 100-nanosecond intervals since Jan 1, 1601. Divide by 10,000,000 to convert to seconds. The overall .mdx file format consists of a header followed by 0 or more records containing message-ids: Header Record Record Record ... Predefined values ------------------ Signature = 0x36519861 // Signature identifying the type of file Version = 1 // Current version Header -------------- int Signature int Version int number of entries ... Message-Id records follow ... Each Record ------------- string Message-Id without the enclosing .'<' and '>' int Flags. FILETIME Time the id was added. Time is in 64-bit FILETIME format. Flag format Bit Meaning -------------- 0 Searched (Currently not actually used) 1 Header has been downloaded 2 Whole article has been downloaded. 3-31 Reserved