title: Reducing memory footprint of large unfamiliar codebase
body: <p>Suppose you have a fairly large (~2.2 MLOC), fairly old (started more than 10 years ago) Windows desktop application in C/C++. About 10% of modules are external and don't have sources, only debug symbols.</p>
  
  <p>How would you go about reducing application's memory footprint in half? At least, what would you do to find out where memory is consumed?</p>