title: Microsoft Security Catalog Format Documentation and API Samples
body: <p>I'm looking for any documentation on the API for working with Microsoft Security Catalogs, or in lieu of that, information on the file format so that I may write my own parser. </p>
  
  <p>In short, I have some .cat files that I need to be able to work with. Looking at the file in a hex editor, they obviously have different regions, which are delimited somehow (looks like typical binary saved structs). I need to get certain information out of them, and ignore other information. </p>
  
  <p>I could probably reverse engineer the format and parse out what I need, but I'd prefer to do that either through the Win32 API, or at least write my parser to be correct for the format, instead of just "able to do what I need it to do". </p>
  
  <p>MSCAT32.DLL seems to be the signficant one, but I'm not sure it has exports to do what I need... It's a bit cryptic (no pun intended). </p>
  
  <p>Any information at all would be helpful. </p>
  
  <p>Just to toss a few more keywords in here... </p>
  
  <p>The MIME type is: application/vnd.ms-pki.seccat
  The magic header bytes are: 30 80 09 06
  The field delimiters in the file seem to be: EOT (04) and € (80)
  A program that generates them is: MakeCat.exe</p>