I cannot find the MSI format specification. It says that its an open standard, but I don\'t see any documentation - just bits and pieces of information here and there.
MSI files are COM structured storage, which is described here: Structured Storage (Windows).