Maxim Integrated's IoT development kit.

Dependencies:   MAX30101 MAX30003 MAX113XX_Pixi MAX30205 max32630fthr USBDevice

Revision:
1:efe9cad8942f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/Cppcheck-1.78/cfg/windows.cfg	Tue Mar 13 14:52:59 2018 +0300
@@ -0,0 +1,3387 @@
+<?xml version="1.0"?>
+<def format="1">
+  <platformtype name="__int8" value="char">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="__int16" value="short">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="__int32" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="__int64" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+    <long/>
+  </platformtype>
+  <platformtype name="ACCESS_MASK" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+    <unsigned/>
+  </platformtype>
+  <platformtype name="ATOM" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="BOOL" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="BOOLEAN" value="char">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="BYTE" value="char">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="CCHAR" value="char">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="CHAR" value="char">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="COLORREF" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="DWORD" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="DWORD32" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="DWORD64" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="DWORD_PTR" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="DWORD_PTR" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="FLOAT" value="float">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HACCEL" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HANDLE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HAGENT" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HAGENTSESSION" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HBITMAP" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HBRUSH" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HCOLORSPACE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HCURSOR" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HCONV" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HCONVLIST" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HDC" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HDDEDATA" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HDESK" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HDROP" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HDWP" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HENHMETAFILE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HFILE" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HFONT" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HGDIOBJ" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HGLOBAL" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HHOOK" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HICON" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HINSTANCE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HKEY" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HKL" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HLOCAL" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HMENU" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HMETAFILE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HMODULE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HMONITOR" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HPALETTE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HPEN" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HRESULT" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HRGN" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HRSRC" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HWND" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HSZ" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HWINSTA" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HALF_PTR" value="short">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="HALF_PTR" value="int">
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HCALL" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HLINE" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HLINEAPP" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HPHONE" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="HPHONEAPP" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT8" value="char">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT16" value="short">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT32" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT64" value="long">
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="INT_PTR" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="INT_PTR" value="long">
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LANGID" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LCID" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LCTYPE" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LGRPID" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LONG" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LONG32" value="int">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LONG64" value="long">
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LONGLONG" value="long">
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LONG_PTR" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="LONG_PTR" value="long">
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPBOOL" value="int">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPARAM" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="LPARAM" value="long">
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPBYTE" value="char">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPCOLORREF" value="long">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPCSTR" value="char">
+    <const_ptr/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPCTSTR" value="char">
+    <const_ptr/>
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="LPCTSTR" value="wchar_t">
+    <const_ptr/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPCVOID" value="void">
+    <const_ptr/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPCWSTR" value="wchar_t">
+    <const_ptr/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPDWORD" value="long">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPINT" value="int">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPLONG" value="long">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPSTR" value="char">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPTSTR" value="char">
+    <pointer/>
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="LPTSTR" value="wchar_t">
+    <pointer/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPVOID" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPWORD" value="short">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LPWSTR" value="wchar_t">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="LRESULT" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="LRESULT" value="long">
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="MMRESULT" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="NTSTATUS" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PBOOL" value="int">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PBOOLEAN" value="char">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PBYTE" value="char">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PCHAR" value="char">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PCSTR" value="char">
+    <const_ptr/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PCTSTR" value="char">
+    <const_ptr/>
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="PCTSTR" value="wchar_t">
+    <const_ptr/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PDWORD" value="long">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PHANDLE" value="void">
+    <ptr_ptr/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PINT" value="int">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PLONG" value="long">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PSTR" value="char">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PTSTR" value="char">
+    <pointer/>
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="PTSTR" value="wchar_t">
+    <pointer/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PUCHAR" value="char">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PULONG" value="long">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PUSHORT" value="short">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PVOID" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PWCHAR" value="wchar_t">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PWORD" value="short">
+    <unsigned/>
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="PWSTR" value="wchar_t">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="QWORD" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SC_LOCK" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SC_HANDLE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SERVICE_STATUS_HANDLE" value="void">
+    <pointer/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SHORT" value="short">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SIZE_T" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="SIZE_T" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SOCKET" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="SSIZE_T" value="long">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="SSIZE_T" value="long">
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="TBYTE" value="char">
+    <unsigned/>
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="TBYTE" value="wchar_t">
+    <unsigned/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="TCHAR" value="char">
+    <platform type="win32A"/>
+  </platformtype>
+  <platformtype name="TCHAR" value="wchar_t">
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UCHAR" value="char">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UHALF_PTR" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="UHALF_PTR" value="int">
+    <unsigned/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT8" value="char">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT16" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT32" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT64" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="UINT_PTR" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="UINT_PTR" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win64"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="ULONG" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="ULONG32" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="ULONG64" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="ULONGLONG" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="ULONG_PTR" value="long">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="ULONG_PTR" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="USHORT" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="USN" value="long">
+    <long/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="VOID" value="void">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="WCHAR" value="wchar_t">
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="WORD" value="short">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+    <platform type="win64"/>
+  </platformtype>
+  <platformtype name="WPARAM" value="int">
+    <unsigned/>
+    <platform type="win32A"/>
+    <platform type="win32W"/>
+  </platformtype>
+  <platformtype name="WPARAM" value="long">
+    <unsigned/>
+    <long/>
+    <platform type="win64"/>
+  </platformtype>
+  <resource>
+    <alloc init="true">CreatePen</alloc>
+    <alloc init="true">CreateBrushIndirect</alloc>
+    <alloc init="true">CreateDIBPatternBrush</alloc>
+    <alloc init="true">CreateDIBPatternBrushPt</alloc>
+    <alloc init="true">CreateHatchBrush</alloc>
+    <alloc init="true">CreatePatternBrush</alloc>
+    <alloc init="true">CreateSolidBrush</alloc>
+    <alloc init="true">CreateFont</alloc>
+    <alloc init="true">CreateFontIndirect</alloc>
+    <alloc init="true">CreateFontIndirectEx</alloc>
+    <alloc init="true">CreateBitmap</alloc>
+    <alloc init="true">CreateBitmapIndirect</alloc>
+    <alloc init="true">CreateCompatibleBitmap</alloc>
+    <alloc init="true">CreateDIBitmap</alloc>
+    <alloc init="true">CreateDIBSection</alloc>
+    <alloc init="true">CreateDiscardableBitmap</alloc>
+    <alloc init="true">CreateEllipticRgn</alloc>
+    <alloc init="true">CreateEllipticRgnIndirect</alloc>
+    <alloc init="true">CreatePolygonRgn</alloc>
+    <alloc init="true">CreatePolyPolygonRgn</alloc>
+    <alloc init="true">CreateRectRgn</alloc>
+    <alloc init="true">CreateRectRgnIndirect</alloc>
+    <alloc init="true">CreateRoundRectRgn</alloc>
+    <alloc init="true">CreateHalftonePalette</alloc>
+    <alloc init="true">CreatePalette</alloc>
+    <dealloc>DeleteObject</dealloc>
+  </resource>
+  <resource>
+    <dealloc>closesocket</dealloc>
+    <alloc init="true">socket</alloc>
+  </resource>
+  <resource>
+    <alloc init="true">CreateThread</alloc>
+    <alloc init="true">CreateFile</alloc>
+    <alloc init="true">OpenFile</alloc>
+    <alloc init="true">CreateJobObject</alloc>
+    <alloc init="true">CreateRemoteThread</alloc>
+    <alloc init="true">CreateConsoleScreenBuffer</alloc>
+    <alloc init="true">OpenBackupEventLog</alloc>
+    <alloc init="true">OpenEventLog</alloc>
+    <alloc init="true">CreateFileMapping</alloc>
+    <alloc init="true">CreateFileMappingFromApp</alloc>
+    <alloc init="true">CreateFileMappingNuma</alloc>
+    <alloc init="true">CreateMemoryResourceNotification</alloc>
+    <alloc init="true">OpenFileMapping</alloc>
+    <alloc init="true">CreateNamedPipe</alloc>
+    <alloc init="true">CreateEvent</alloc>
+    <alloc init="true">CreateMutex</alloc>
+    <alloc init="true">CreateSemaphore</alloc>
+    <alloc init="true">CreateTimerQueue</alloc>
+    <alloc init="true">CreateWaitableTimer</alloc>
+    <alloc init="true">OpenEvent</alloc>
+    <alloc init="true">OpenMutex</alloc>
+    <alloc init="true">OpenSemaphore</alloc>
+    <alloc init="true">OpenWaitableTimer</alloc>
+    <alloc init="true">OpenJobObject</alloc>
+    <alloc init="true">OpenProcess</alloc>
+    <alloc init="true">OpenThread</alloc>
+    <alloc init="true">CreateMailslot</alloc>
+    <dealloc>CloseHandle</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">FindFirstFile</alloc>
+    <alloc init="true">FindFirstFileW</alloc>
+    <alloc init="true">FindFirstFileA</alloc>
+    <alloc init="true">FindFirstFileEx</alloc>
+    <alloc init="true">FindFirstFileExW</alloc>
+    <alloc init="true">FindFirstFileExA</alloc>
+    <alloc init="true">FindFirstFileNameW</alloc>
+    <alloc init="true">FindFirstFileNameTransactedW</alloc>
+    <alloc init="true">FindFirstStreamTransactedW</alloc>
+    <alloc init="true">FindFirstFileTransacted</alloc>
+    <alloc init="true">FindFirstStreamW</alloc>
+    <dealloc>FindClose</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">OpenSCManager</alloc>
+    <alloc init="true">OpenService</alloc>
+    <alloc init="true">CreateService</alloc>
+    <dealloc>CloseServiceHandle</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">LockServiceDatabase</alloc>
+    <dealloc>UnlockServiceDatabase</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">HeapCreate</alloc>
+    <dealloc>HeapDestroy</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">_wfopen</alloc>
+    <alloc init="true">_tfopen</alloc>
+    <alloc init="true" arg="1">_wfopen_s</alloc>
+    <alloc init="true" arg="1">_tfopen_s</alloc>
+    <dealloc>fclose</dealloc>
+    <dealloc>_fcloseall</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">_open</alloc>
+    <alloc init="true">_topen</alloc>
+    <alloc init="true">_wopen</alloc>
+    <dealloc>_close</dealloc>
+  </resource>
+  <resource>
+    <alloc init="true">_popen</alloc>
+    <alloc init="true">_wpopen</alloc>
+    <alloc init="true">_tpopen</alloc>
+    <dealloc>_pclose</dealloc>
+  </resource>
+  <memory>
+    <alloc>ExAllocatePool</alloc>
+    <alloc>ExAllocatePoolWithQuota</alloc>
+    <alloc>ExAllocatePoolWithQuotaTag</alloc>
+    <alloc>ExAllocatePoolWithTag</alloc>
+    <alloc>ExAllocatePoolWithTagPriority</alloc>
+    <dealloc>ExFreePool</dealloc>
+    <dealloc>ExFreePoolWithTag</dealloc>
+  </memory>
+  <memory>
+    <alloc>HeapAlloc</alloc>
+    <alloc>HeapReAlloc</alloc>
+    <dealloc arg="3">HeapFree</dealloc>
+  </memory>
+  <memory>
+    <alloc>IoAllocateErrorLogEntry</alloc>
+    <dealloc>IoWriteErrorLogEntry</dealloc>
+    <dealloc>IoFreeErrorLogEntry</dealloc>
+  </memory>
+  <memory>
+    <alloc init="true">IoAllocateIrp</alloc>
+    <dealloc>IoFreeIrp</dealloc>
+    <dealloc>IofCallDriver</dealloc>
+    <dealloc arg="2">IoCallDriver</dealloc>
+  </memory>
+  <memory>
+    <alloc>IoAllocateMdl</alloc>
+    <dealloc>IoFreeMdl</dealloc>
+  </memory>
+  <memory>
+    <alloc>MmAllocateContiguousMemory</alloc>
+    <dealloc>MmFreeContiguousMemory</dealloc>
+  </memory>
+  <memory>
+    <alloc>MmAllocateContiguousMemorySpecifyCache</alloc>
+    <alloc>MmAllocateContiguousMemorySpecifyCacheNode</alloc>
+    <dealloc>MmFreeContiguousMemorySpecifyCache</dealloc>
+  </memory>
+  <memory>
+    <alloc>IoAllocateWorkItem</alloc>
+    <dealloc>IoFreeWorkItem</dealloc>
+  </memory>
+  <memory>
+    <alloc>RtlAllocateHeap</alloc>
+    <dealloc>RtlFreeHeap</dealloc>
+  </memory>
+  <memory>
+    <alloc>ExAllocateFromPagedLookasideList</alloc>
+    <dealloc arg="2">ExFreeToPagedLookasideList</dealloc>
+  </memory>
+  <memory>
+    <alloc>ExAllocateFromNPagedLookasideList</alloc>
+    <dealloc arg="2">ExFreeToNPagedLookasideList</dealloc>
+  </memory>
+  <memory>
+    <alloc>AllocateHeap</alloc>
+    <dealloc>FreeHeap</dealloc>
+  </memory>
+  <memory>
+    <alloc>AllocateLsaHeap</alloc>
+    <dealloc>FreeLsaHeap</dealloc>
+  </memory>
+  <memory>
+    <alloc>AllocatePrivateHeap</alloc>
+    <dealloc>FreePrivateHeap</dealloc>
+  </memory>
+  <memory>
+    <alloc>VirtualAlloc</alloc>
+    <dealloc>VirtualFree</dealloc>
+  </memory>
+  <memory>
+    <alloc>VirtualAllocEx</alloc>
+    <alloc>VirtualAllocExNuma</alloc>
+    <dealloc arg="2">VirtualFreeEx</dealloc>
+  </memory>
+  <memory>
+    <alloc>LocalAlloc</alloc>
+    <dealloc>LocalFree</dealloc>
+  </memory>
+  <memory>
+    <alloc>GlobalAlloc</alloc>
+    <dealloc>GlobalFree</dealloc>
+    <dealloc arg="2">SetClipboardData</dealloc>
+  </memory>
+  <memory>
+    <alloc init="true">MapViewOfFile</alloc>
+    <alloc init="true">MapViewOfFileEx</alloc>
+    <alloc init="true">MapViewOfFileExNuma</alloc>
+    <alloc init="true">MapViewOfFileFromApp</alloc>
+    <dealloc>UnmapViewOfFile</dealloc>
+  </memory>
+  <memory>
+    <alloc init="true">RtlCreateHeap</alloc>
+    <dealloc>RtlDestroyHeap</dealloc>
+  </memory>
+  <memory>
+    <alloc init="true">wcsdup</alloc>
+    <alloc init="true">_strdup</alloc>
+    <alloc init="true">_wcsdup</alloc>
+    <alloc init="true">_mbsdup</alloc>
+    <alloc init="true">_tcsdup</alloc>
+    <alloc init="true">_malloc_dbg</alloc>
+    <alloc init="true">_aligned_malloc</alloc>
+    <alloc init="true">_aligned_malloc_dbg</alloc>
+    <alloc init="true">_aligned_offset_malloc</alloc>
+    <alloc init="true">_strdup_dbg</alloc>
+    <alloc init="true">_wcsdup_dbg</alloc>
+    <alloc init="true">_tcsdup_dbg</alloc>
+    <dealloc>free</dealloc>
+  </memory>
+  <memory>
+    <alloc>CoTaskMemAlloc</alloc>
+    <dealloc>CoTaskMemFree</dealloc>
+  </memory>
+  <function name="RtlCompareMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlCopyBytes">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlCopyMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlEqualMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlFillBytes">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="RtlFillMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="RtlMoveMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlSecureZeroMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlZeroBytes">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="RtlZeroMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- void CopyMemory(
+  _In_       PVOID  Destination,
+  _In_ const VOID   *Source,
+  _In_       SIZE_T Length); -->
+  <function name="CopyMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="FillMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="MoveMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="SecureZeroMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="ZeroMemory">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <function name="KeBugCheck">
+    <noreturn>true</noreturn>
+  </function>
+  <function name="KeBugCheckEx">
+    <noreturn>true</noreturn>
+  </function>
+  <!-- void CString::Format(LPCTSTR lpszFormat, ... ); -->
+  <function name="CString::Format">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- void CString::AppendFormat(LPCTSTR lpszFormat, ... ); -->
+  <function name="CString::AppendFormat">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="printf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="wprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="fprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="fwprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="_snprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="4">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="_snwprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <formatstr secure="true"/>
+    <arg nr="4">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="DbgPrint">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="DbgPrintEx">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="3">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="vDbgPrintEx">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="3">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="vDbgPrintExWithPrefix">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="4">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="scanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="wscanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="1">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="sscanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="fscanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="fwscanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="swscanf_s">
+    <noreturn>false</noreturn>
+    <formatstr scan="true" secure="true"/>
+    <arg nr="2">
+      <formatstr/>
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI CloseHandle(_In_  HANDLE hObject); -->
+  <function name="CloseHandle">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="OpenFile">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+    <arg nr="2"/>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI BuildCommDCB(
+  _In_   LPCTSTR lpDef,
+  _Out_  LPDCB lpDCB); -->
+  <function name="BuildCommDCB">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2"/>
+  </function>
+  <!-- BOOL WINAPI BuildCommDCBAndTimeouts(
+  _In_   LPCTSTR lpDef,
+  _Out_  LPDCB lpDCB,
+  _Out_  LPCOMMTIMEOUTS lpCommTimeouts); -->
+  <function name="BuildCommDCBAndTimeouts">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2"/>
+    <arg nr="3"/>
+  </function>
+  <!-- BOOL WINAPI WriteFile(
+  _In_         HANDLE hFile,
+  _In_         LPCVOID lpBuffer,
+  _In_         DWORD nNumberOfBytesToWrite,
+  _Out_opt_    LPDWORD lpNumberOfBytesWritten,
+  _Inout_opt_  LPOVERLAPPED lpOverlapped); -->
+  <function name="WriteFile">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4"/>
+    <arg nr="5"/>
+  </function>
+  <!-- BOOL WINAPI ReadFile(
+  _In_         HANDLE hFile,
+  _Out_        LPVOID lpBuffer,
+  _In_         DWORD nNumberOfBytesToRead,
+  _Out_opt_    LPDWORD lpNumberOfBytesRead,
+  _Inout_opt_  LPOVERLAPPED lpOverlapped); -->
+  <function name="ReadFile">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4"/>
+    <arg nr="5"/>
+  </function>
+  <!-- HANDLE WINAPI CreateFile(
+  _In_      LPCTSTR lpFileName,
+  _In_      DWORD dwDesiredAccess,
+  _In_      DWORD dwShareMode,
+  _In_opt_  LPSECURITY_ATTRIBUTES lpSecurityAttributes,
+  _In_      DWORD dwCreationDisposition,
+  _In_      DWORD dwFlagsAndAttributes,
+  _In_opt_  HANDLE hTemplateFile); -->
+  <function name="CreateFile">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+    <arg nr="7">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetCommTimeouts(
+  _In_  HANDLE hFile,
+  _In_  LPCOMMTIMEOUTS lpCommTimeouts); -->
+  <function name="SetCommTimeouts">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetCommState(
+  _In_  HANDLE hFile,
+  _In_  LPDCB lpDCB);-->
+  <function name="SetCommState">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbstok(unsigned char *strToken, const unsigned char *strDelimit);  -->
+  <function name="_mbstok,_tcstok">
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbstok(unsigned char *strToken, const unsigned char *strDelimit, _locale_t locale );  -->
+  <function name="_mbstok">
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- char *_strtok_s_l(char *strToken, const char *strDelimit, char **context,_locale_t locale ); -->
+  <!-- wchar_t *_wcstok_s_l(wchar_t *strToken, const wchar_t *strDelimit, wchar_t**context,_locale_t locale); -->
+  <!-- unsigned char *_mbstok_s_l(unsigned char*strToken, const unsigned char *strDelimit, char **context,_locale_t locale); -->
+  <function name="_strtok_s_l,_wcstok_s_l,_mbstok_s,_tcstok_s_l">
+    <!-- strtok may modify the first argument, so using the return value is not mandatory -->
+    <noreturn>false</noreturn>
+    <pure/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- char *strtok_s(char *strToken, const char *strDelimit, char **context); -->
+  <!-- wchar_t *wcstok_s(wchar_t *strToken, const wchar_t *strDelimit, wchar_t**context); -->
+  <!-- unsigned char *_mbstok_s(unsigned char*strToken, const unsigned char *strDelimit, char **context); -->
+  <function name="strtok_s,wcstok_s,_mbstok_s,_tcstok_s">
+    <!-- strtok may modify the first argument, so using the return value is not mandatory -->
+    <noreturn>false</noreturn>
+    <pure/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- char *_getcwd(char *buffer, int maxlen); -->
+  <!-- wchar_t *_wgetcwd(wchar_t *buffer, int maxlen);-->
+  <function name="_getcwd,_wgetcwd">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- HRESULT SHGetFolderPath(
+  _In_  HWND   hwndOwner,
+  _In_  int    nFolder,
+  _In_  HANDLE hToken,
+  _In_  DWORD  dwFlags,
+  _Out_ LPTSTR pszPath);-->
+  <function name="SHGetFolderPath,SHGetFolderPathA,SHGetFolderPathW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- LONG WINAPI RegQueryValueEx(
+  _In_        HKEY    hKey,
+  _In_opt_    LPCTSTR lpValueName,
+  _Reserved_  LPDWORD lpReserved,
+  _Out_opt_   LPDWORD lpType,
+  _Out_opt_   LPBYTE  lpData,
+  _Inout_opt_ LPDWORD lpcbData);-->
+  <function name="RegQueryValueEx,RegQueryValueExA,RegQueryValueExW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="6"/>
+  </function>
+  <!-- LONG WINAPI RegCloseKey(_In_ HKEY hKey );-->
+  <function name="RegCloseKey">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int stricmp(const char *s1, const char *s2); -->
+  <!-- int _stricmp(const char *s1, const char *s2); -->
+  <!-- int wcsicmp(const wchar_t *s1, const wchar_t *s2); -->
+  <!-- int _wcsicmp(const wchar_t *s1, const wchar_t *s2); -->
+  <!-- int _mbsicmp(const unsigned char *string1, const unsigned char *string2); -->
+  <function name="stricmp,_stricmp,wcsicmp,_wcsicmp,_mbsicmp">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <!-- DWORD WINAPI GetFileAttributes(_In_ LPCTSTR lpFileName);-->
+  <function name="GetFileAttributes,GetFileAttributesA,GetFileAttributesW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- LONG WINAPI RegOpenKeyEx(
+  _In_     HKEY    hKey,
+  _In_opt_ LPCTSTR lpSubKey,
+  _In_     DWORD   ulOptions,
+  _In_     REGSAM  samDesired,
+  _Out_    PHKEY   phkResult); -->
+  <function name="RegOpenKeyEx,RegOpenKeyExA,RegOpenKeyExW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5"/>
+  </function>
+  <!-- int __cdecl wsprintf(_Out_ LPTSTR  lpOut, _In_  LPCTSTR lpFmt, _In_ ...);-->
+  <function name="wsprintf,wsprintfA,wsprintfW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <minsize type="strlen" arg="2"/>
+    </arg>
+    <formatstr/>
+    <arg nr="2">
+      <formatstr/>
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int swprintf_s(wchar_t *buffer, size_t sizeOfBuffer, const wchar_t *format, ...); -->
+  <function name="swprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <formatstr/>
+    <arg nr="3">
+      <formatstr/>
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _sprintf_s_l(char *buffer, size_t sizeOfBuffer, const char *format, locale_t locale, ... ); 
+       int _swprintf_s_l(wchar_t *buffer, size_t sizeOfBuffer, const wchar_t *format, locale_t locale, ...);-->
+  <function name="_sprintf_s_l,_swprintf_s_l">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <formatstr/>
+    <arg nr="3">
+      <formatstr/>
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- LONG WINAPI RegEnumKeyEx(
+  _In_        HKEY      hKey,
+  _In_        DWORD     dwIndex,
+  _Out_       LPTSTR    lpName,
+  _Inout_     LPDWORD   lpcName,
+  _Reserved_  LPDWORD   lpReserved,
+  _Inout_     LPTSTR    lpClass,
+  _Inout_opt_ LPDWORD   lpcClass,
+  _Out_opt_   PFILETIME lpftLastWriteTime); -->
+  <function name="RegEnumKeyEx,RegEnumKeyExA,RegEnumKeyExW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="8"/>
+  </function>
+  <!-- 
+HFONT CreateFont(
+  _In_  int nHeight,
+  _In_  int nWidth,
+  _In_  int nEscapement,
+  _In_  int nOrientation,
+  _In_  int fnWeight,
+  _In_  DWORD fdwItalic,
+  _In_  DWORD fdwUnderline,
+  _In_  DWORD fdwStrikeOut,
+  _In_  DWORD fdwCharSet,
+  _In_  DWORD fdwOutputPrecision,
+  _In_  DWORD fdwClipPrecision,
+  _In_  DWORD fdwQuality,
+  _In_  DWORD fdwPitchAndFamily,
+  _In_  LPCTSTR lpszFace
+);
+-->
+  <function name="CreateFont">
+    <noreturn>false</noreturn>
+    <arg nr="any">
+      <not-uninit/>
+    </arg>
+    <arg nr="14"/>
+  </function>
+  <podtype name="LARGE_INTEGER" sign="s" size="8"/>
+  <podtype name="POINTER_SIGNED" sign="s"/>
+  <podtype name="POINTER_UNSIGNED" sign="u"/>
+  <podtype name="ULARGE_INTEGER" sign="u" size="8"/>
+  <define name="INVALID_HANDLE_VALUE" value="0"/>
+  <define name="afx_msg" value=""/>
+  <define name="DEBUG_NEW" value="new"/>
+  <define name="DECLARE_MESSAGE_MAP()" value=""/>
+  <define name="DECLARE_DYNAMIC(x)" value=""/>
+  <define name="DECLARE_DYNAMIC_CLASS(x)" value=""/>
+  <define name="DECLARE_DYNCREATE(x)" value=""/>
+  <function name="CaptureStackBackTrace">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="4"/>
+  </function>
+  <!-- int _vsnprintf(char *buffer, size_t count, const char *format, va_list argptr);
+       int _vsnwprintf(wchar_t *buffer, size_t count, const wchar_t *format, va_list argptr);-->
+  <function name="_vsnprintf,_vsnwprintf">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="4"/>
+  </function>
+  <!-- int _vsnprintf_l (char *buffer   , size_t count, const char *format, locale_t locale,  va_list argptr); 
+       int _vsnwprintf_l(wchar_t *buffer, size_t count, const wchar_t *format, locale_t locale, va_list argptr); 
+       int _vswprintf_l(wchar_t *buffer,  size_t count, const wchar_t *format, locale_t locale, va_list argptr);-->
+  <function name="_vsnprintf_l,_vsnwprintf_l,_vswprintf_l">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5"/>
+  </function>
+  <!-- int vsnprintf_s(char *buffer, size_t sizeOfBuffer, size_t count, const char *format, va_list argptr); 
+       int _vsnprintf_s( char *buffer, size_t sizeOfBuffer, size_t count, const char *format, va_list argptr);
+       int _vsnwprintf_s( wchar_t *buffer, size_t sizeOfBuffer, size_t count, const wchar_t *format, va_list argptr); -->
+  <function name="vsnprintf_s,_vsnprintf_s,_vsnwprintf_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="4">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="5"/>
+  </function>
+  <!-- int _vsnprintf_s_l(char *buffer, size_t sizeOfBuffer, size_t count, const char *format, locale_t locale,  va_list argptr); 
+       int _vsnwprintf_s_l(wchar_t *buffer, size_t sizeOfBuffer, size_t count, const wchar_t *format, locale_t locale, va_list argptr); -->
+  <function name="_vsnprintf_s_l,_vsnwprintf_s_l">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="4">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6"/>
+  </function>
+  <!-- int _vsprintf_l(char *buffer, const char *format, locale_t locale, va_list argptr); 
+      int __vswprintf_l(wchar_t *buffer, const wchar_t *format, locale_t locale, va_list argptr);-->
+  <function name="_vsprintf_l, __vswprintf_l">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4"/>
+  </function>
+  <!-- char *_strdup(const char *strSource);
+    wchar_t *_wcsdup(const wchar_t *strSource);
+    unsigned char *_mbsdup(const unsigned char *strSource);-->
+  <function name="_strdup,_wcsdup,_mbsdup,_tcsdup">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- char *_strdup_dbg(const char *strSource, int blockType, const char *filename, int linenumber );  
+       wchar_t *_wcsdup_dbg(const wchar_t *strSource, int blockType, const char *filename, int linenumber);-->
+  <function name="_strdup_dbg,_wcsdup_dbg,_tcsdup_dbg">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- int _mbscmp(const unsigned char *string1, const unsigned char *string2); -->
+  <function name="_mbscmp,_tcscmp">
+    <use-retval/>
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <!-- int _snprintf(char *s, size_t n, const char *format, ...); 
+       int _snwprintf(wchar_t *buffer, size_t count, const wchar_t *format, ...);-->
+  <function name="_snprintf,_snwprintf,_sntprintf">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <formatstr/>
+    <arg nr="3">
+      <formatstr/>
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- errno_t strcpy_s(char *strDestination, size_t numberOfElements, const char *strSource);
+       errno_t wcscpy_s(wchar_t *strDestination, size_t numberOfElements, const wchar_t *strSource);
+       errno_t _mbscpy_s(unsigned char *strDestination, size_t numberOfElements, const unsigned char *strSource); -->
+  <function name="strcpy_s,wcscpy_s,_mbscpy_s,_tcscpy_s">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _CrtSetDbgFlag(int newFlag); -->
+  <function name="_CrtSetDbgFlag">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _stat(const char *path, struct _stat *buffer);
+       int _stat32(const char *path, struct __stat32 *buffer);
+       int _stat64(const char *path, struct __stat64 *buffer);
+       int _stati64(const char *path, struct _stati64 *buffer);
+       int _stat32i64(const char *path, struct _stat32i64 *buffer);
+       int _stat64i32(const char *path, struct _stat64i32 *buffer);
+       int _wstat(const wchar_t *path, struct _stat *buffer);
+       int _wstat32(const wchar_t *path, struct __stat32 *buffer);
+       int _wstat64(const wchar_t *path, struct __stat64 *buffer);
+       int _wstati64(const wchar_t *path, struct _stati64 *buffer);
+       int _wstat32i64(const wchar_t *path, struct _stat32i64 *buffer);
+       int _wstat64i32(const wchar_t *path, struct _stat64i32 *buffer); -->
+  <function name="_stat,_stat32,_stat64,_stati64,_stat32i64,_stat64i32,_wstat,_wstat32,_wstat64,_wstati64,_wstat32i64,_wstat64i32">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- int _fseeki64(FILE *stream, __int64 offset, int origin); -->
+  <function name="_fseeki64">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- __int64 _ftelli64(FILE *stream); 
+         long _ftell_nolock(FILE *stream);  
+       __int64 _ftelli64_nolock(FILE *stream); -->
+  <function name="_ftelli64,_ftell_nolock,_ftelli64_nolock">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <use-retval/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- FILE *_wfopen(const wchar_t *filename, const wchar_t *mode); -->
+  <function name="_wfopen,_tfopen">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- size_t strnlen_s(const char *str, size_t numberOfElements);
+       size_t wcsnlen_s(const wchar_t *str, size_t numberOfElements);
+       size_t _mbsnlen(const unsigned char *str, size_t numberOfElements);
+       size_t _mbstrnlen(const char *str, size_t numberOfElements);-->
+  <function name="strnlen_s,wcsnlen_s,_mbsnlen,_mbstrnlen">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- size_t _mbsnlen_l(const unsigned char *str, size_t numberOfElements, _locale_t locale);
+       size_t _mbstrnlen_l(const char *str, size_t numberOfElements, _locale_t locale);-->
+  <function name="_mbsnlen_l,_mbstrnlen_l">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int WideCharToMultiByte(
+  _In_      UINT    CodePage,
+  _In_      DWORD   dwFlags,
+  _In_      LPCWSTR lpWideCharStr,
+  _In_      int     cchWideChar,
+  _Out_opt_ LPSTR   lpMultiByteStr,
+  _In_      int     cbMultiByte,
+  _In_opt_  LPCSTR  lpDefaultChar,
+  _Out_opt_ LPBOOL  lpUsedDefaultChar
+  ); -->
+  <function name="WideCharToMultiByte">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+    <arg nr="7">
+      <not-uninit/>
+    </arg>
+    <arg nr="8"/>
+  </function>
+  <!-- BOOL PathIsDirectory(_In_ LPCTSTR pszPath);-->
+  <function name="PathIsDirectory,PathIsDirectoryA,PathIsDirectoryW">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetConsoleTextAttribute(
+  _In_ HANDLE hConsoleOutput,
+  _In_ WORD   wAttributes); -->
+  <function name="SetConsoleTextAttribute">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- errno_t _wfopen_s(FILE** pFile, const wchar_t *filename, const wchar_t *mode); -->
+  <function name="_wfopen_s,_tfopen_s">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI DeleteFile(_In_ LPCTSTR lpFileName);-->
+  <function name="DeleteFile,DeleteFileA,DeleteFileW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- HANDLE WINAPI GetStdHandle(_In_ DWORD nStdHandle); -->
+  <function name="GetStdHandle">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetStdHandle(_In_ DWORD  nStdHandle, _In_ HANDLE hHandle); -->
+  <function name="SetStdHandle">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _access(const char *path, int mode);
+       int _waccess(const wchar_t *path, int mode); -->
+  <function name="_access,_waccess,_taccess">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="PeekMessage,PeekMessageA,PeekMessageW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="GetMessage,GetMessageA,GetMessageW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="TranslateMessage">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="DispatchMessage,DispatchMessageA,DispatchMessageW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="SendMessage,SendMessageA,SendMessageW,PostMessage,PostMessageA,PostMessageW">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="PostQuitMessage">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="DefWindowProc,DefWindowProcA,DefWindowProcW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="GetPrivateProfileInt,GetPrivateProfileIntA,GetPrivateProfileIntW">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <function name="GetPrivateProfileSection,GetPrivateProfileSectionA,GetPrivateProfileSectionW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <function name="GetPrivateProfileSectionNames,GetPrivateProfileSectionNamesA,GetPrivateProfileSectionNamesW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <minsize type="argvalue" arg="2"/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <function name="GetPrivateProfileString,GetPrivateProfileStringA,GetPrivateProfileStringW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-null/>
+      <minsize type="argvalue" arg="5"/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <function name="GetPrivateProfileStruct,GetPrivateProfileStructA,GetPrivateProfileStructW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+      <minsize type="argvalue" arg="4"/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <function name="BeginPaint">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <function name="EndPaint">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <function name="GetStockObject">
+    <noreturn>false</noreturn>
+    <pure/>
+    <use-retval/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="LoadIcon,LoadIconA,LoadIconW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <use-retval/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="CreateSolidBrush">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <use-retval/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="UpdateWindow">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="EnableWindow">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="CreateWindow,CreateWindowA,CreateWindowW">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+    <arg nr="7">
+      <not-uninit/>
+    </arg>
+    <arg nr="8">
+      <not-uninit/>
+    </arg>
+    <arg nr="9">
+      <not-uninit/>
+    </arg>
+    <arg nr="10">
+      <not-uninit/>
+    </arg>
+    <arg nr="11">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="CreateWindowEx,CreateWindowExA,CreateWindowExW">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+    <arg nr="7">
+      <not-uninit/>
+    </arg>
+    <arg nr="8">
+      <not-uninit/>
+    </arg>
+    <arg nr="9">
+      <not-uninit/>
+    </arg>
+    <arg nr="10">
+      <not-uninit/>
+    </arg>
+    <arg nr="11">
+      <not-uninit/>
+    </arg>
+    <arg nr="12">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="SetWindowText,SetWindowTextA,SetWindowTextW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="GetModuleHandle,GetModuleHandleA,GetModuleHandleW">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="RegisterClass,RegisterClassEx">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="UnregisterClass,UnregisterClassA,UnregisterClassW">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="MessageBox,MessageBoxA,MessageBoxW">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="GlobalLock,GlobalUnlock">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+  </function>
+  <function name="OpenClipboard">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <function name="EmptyClipboard,CloseClipboard">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+  </function>
+  <function name="SetClipboardData">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _rmdir(const char *dirname); 
+       int _wrmdir(const wchar_t *dirname);-->
+  <function name="_rmdir,_wrmdir">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _mkdir(const char *dirname);
+       int _wmkdir(const wchar_t *dirname); -->
+  <function name="_mkdir,_wmkdir">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!--__int64 _abs64( __int64 n);-->
+  <function name="_abs64">
+    <use-retval/>
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <returnValue>arg1&gt;0?arg1:-arg1</returnValue>
+    <arg nr="1">
+      <not-uninit/>
+      <not-bool/>
+    </arg>
+  </function>
+  <!-- Ignore WINAPI -->
+  <define name="WINAPI" value=""/>
+  <!-- HANDLE WINAPI CreateWaitableTimer(
+  _In_opt_ LPSECURITY_ATTRIBUTES lpTimerAttributes,
+  _In_     BOOL                  bManualReset,
+  _In_opt_ LPCTSTR               lpTimerName );-->
+  <function name="CreateWaitableTimer">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetWaitableTimer(
+  _In_           HANDLE           hTimer,
+  _In_     const LARGE_INTEGER    *pDueTime,
+  _In_           LONG             lPeriod,
+  _In_opt_       PTIMERAPCROUTINE pfnCompletionRoutine,
+  _In_opt_       LPVOID           lpArgToCompletionRoutine,
+  _In_           BOOL             fResume);-->
+  <function name="SetWaitableTimer">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <not-null/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- DWORD WINAPI WaitForSingleObject(
+  _In_ HANDLE hHandle,
+  _In_ DWORD  dwMilliseconds); -->
+  <function name="WaitForSingleObject">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _pclose(FILE *stream); -->
+  <function name="_pclose">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- FILE *_popen( const char *command, const char *mode ); 
+       FILE *_wpopen(const wchar_t *command, const wchar_t *mode);-->
+  <function name="_popen,_wpopen,_tpopen">
+    <noreturn>false</noreturn>
+    <use-retval/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- char *_mktemp(char *template);
+       wchar_t *_wmktemp(wchar_t *template); -->
+  <function name="_mktemp,_wmktemp">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- HANDLE WINAPI FindFirstFileEx(
+  _In_       LPCTSTR            lpFileName,
+  _In_       FINDEX_INFO_LEVELS fInfoLevelId,
+  _Out_      LPVOID             lpFindFileData,
+  _In_       FINDEX_SEARCH_OPS  fSearchOp,
+  _Reserved_ LPVOID             lpSearchFilter,
+  _In_       DWORD              dwAdditionalFlags
+); -->
+  <function name="FindFirstFileEx,FindFirstFileExA,FindFirstFileExW">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-null/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="6">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- HANDLE WINAPI FindFirstFile(
+  _In_  LPCTSTR           lpFileName,
+  _Out_ LPWIN32_FIND_DATA lpFindFileData); -->
+  <function name="FindFirstFile,FindFirstFileW,FindFirstFileA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI FindClose(_Inout_ HANDLE hFindFile); -->
+  <function name="FindClose">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- HANDLE WINAPI CreateThread(
+  _In_opt_  LPSECURITY_ATTRIBUTES  lpThreadAttributes,
+  _In_      SIZE_T                 dwStackSize,
+  _In_      LPTHREAD_START_ROUTINE lpStartAddress,
+  _In_opt_  LPVOID                 lpParameter,
+  _In_      DWORD                  dwCreationFlags,
+  _Out_opt_ LPDWORD                lpThreadId); -->
+  <function name="CreateThread">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5">
+      <not-uninit/>
+    </arg>
+    <arg nr="6"/>
+  </function>
+  <!-- BOOL WINAPI FindNextFile(
+  _In_  HANDLE            hFindFile,
+  _Out_ LPWIN32_FIND_DATA lpFindFileData); -->
+  <function name="FindNextFile,FindNextFileW,FindNextFileA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI SetEnvironmentVariable(
+  _In_     LPCTSTR lpName,
+  _In_opt_ LPCTSTR lpValue);-->
+  <function name="SetEnvironmentVariable,SetEnvironmentVariableW,SetEnvironmentVariableA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2"/>
+  </function>
+  <!-- DWORD WINAPI QueryDosDevice(
+  _In_opt_ LPCTSTR lpDeviceName,
+  _Out_    LPTSTR  lpTargetPath,
+  _In_     DWORD   ucchMax);-->
+  <function name="QueryDosDevice,QueryDosDeviceW,QueryDosDeviceA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL WINAPI GetDefaultCommConfig(
+  _In_    LPCTSTR      lpszName,
+  _Out_   LPCOMMCONFIG lpCC,
+  _Inout_ LPDWORD      lpdwSize);-->
+  <function name="GetDefaultCommConfig,GetDefaultCommConfigW,GetDefaultCommConfigA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+    <arg nr="3"/>
+  </function>
+  <!-- DWORD WINAPI GetTempPath(
+  _In_  DWORD  nBufferLength,
+  _Out_ LPTSTR lpBuffer);-->
+  <function name="GetTempPath,GetTempPathW,GetTempPathA">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <valid>0:</valid>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+    </arg>
+  </function>
+  <!-- BOOL SetupDiDestroyDeviceInfoList(_In_ HDEVINFO DeviceInfoSet);-->
+  <function name="SetupDiDestroyDeviceInfoList">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- BOOL SetupDiGetDeviceInstanceId(
+  _In_      HDEVINFO         DeviceInfoSet,
+  _In_      PSP_DEVINFO_DATA DeviceInfoData,
+  _Out_opt_ PTSTR            DeviceInstanceId,
+  _In_      DWORD            DeviceInstanceIdSize,
+  _Out_opt_ PDWORD           RequiredSize);-->
+  <function name="SetupDiGetDeviceInstanceId">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+    <arg nr="5"/>
+  </function>
+  <!-- BOOL SetupDiEnumDeviceInfo(
+  _In_  HDEVINFO         DeviceInfoSet,
+  _In_  DWORD            MemberIndex,
+  _Out_ PSP_DEVINFO_DATA DeviceInfoData);-->
+  <function name="SetupDiEnumDeviceInfo">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3"/>
+  </function>
+  <!-- HDEVINFO SetupDiGetClassDevs(
+  _In_opt_ const GUID   *ClassGuid,
+  _In_opt_       PCTSTR Enumerator,
+  _In_opt_       HWND   hwndParent,
+  _In_           DWORD  Flags ); -->
+  <function name="SetupDiGetClassDevs">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbsstr(const unsigned char *str, const unsigned char *strSearch  -->
+  <function name="_mbsstr,_tcsstr">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbsstr_l(const unsigned char *str, const unsigned char *strSearch, _locale_t locale )-->
+  <function name="_mbsstr_l">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- void *_memccpy(void *dest, const void *src, int c, size_t n);-->
+  <function name="_memccpy">
+    <leak-ignore/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <minsize type="sizeof" arg="2"/>
+      <minsize type="argvalue" arg="4"/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- int _fcloseall( void ); -->
+  <function name="_fcloseall">
+    <noreturn>false</noreturn>
+  </function>
+  <!-- int _open(const char *filename,  int oflag [, int pmode] );
+       int _wopen(  const wchar_t *filename,  int oflag [, int pmode]); -->
+  <function name="_open,_wopen,_topen">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- int _close(int fildes); -->
+  <function name="_close">
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- void _swab(char *src, char *dest, int n);-->
+  <function name="_swab">
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- int _strnicmp(const char *string1, const char *string2, size_t count); -->
+  <!-- int _wcsnicmp(const wchar_t *string1, const wchar_t *string2, size_t count); -->
+  <!-- int _mbsnicmp(const unsigned char *string1, const unsigned char *string2, size_t count); -->
+  <function name="_strnicmp,_wcsnicmp,_mbsnicmp,_tcsncicmp,_tcsnicmp">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- int _strnicmp_l(const char *string1, const char *string2, size_t count, _locale_t locale); -->
+  <!-- int _wcsnicmp_l(const wchar_t *string1, const wchar_t *string2, size_t count, _locale_t locale); -->
+  <!-- int _mbsnicmp_l(const unsigned char *string1, const unsigned char *string2, size_t count,  _locale_t locale); -->
+  <function name="_strnicmp_l,_wcsnicmp_l,_mbsnicmp_l,_tcsncicmp_l">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="2">
+      <not-null/>
+      <not-uninit/>
+      <minsize type="argvalue" arg="3"/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+      <not-bool/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- void *_malloc_dbg(size_t size, int blockType, const char *filename, int linenumber); -->
+  <!-- void * _aligned_malloc_dbg(size_t size, size_t alignment, const char *filename, int linenumber); -->
+  <function name="_malloc_dbg,_aligned_malloc_dbg">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+    <arg nr="4">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+  </function>
+  <!-- void * _aligned_malloc(size_t size, size_t alignment); -->
+  <function name="_aligned_malloc">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <arg nr="1">
+      <not-uninit/>
+      <valid>0:</valid>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- size_t _mbslen_l( const unsigned char *str, _locale_t locale);  -->
+  <!-- size_t _mbstrlen_l( const char *str, _locale_t locale ); -->
+  <function name="_mbslen_l,_mbstrlen_l,_tcsclen_l">
+    <use-retval/>
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <returnValue>strlen(arg1)</returnValue>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- size_t _mbslen( const unsigned char *str );  -->
+  <!-- size_t _mbstrlen( const char *str ); -->
+  <function name="_mbslen,_mbstrlen,_tcslen,_tcsclen">
+    <use-retval/>
+    <pure/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <returnValue>strlen(arg1)</returnValue>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+      <strz/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbsrchr_l(const unsigned char *str, unsigned int c, _locale_t locale ); // C only  
+       unsigned char *_mbsrchr_(unsigned char *str, unsigned int c, _locale_t locale ); // C++ only  
+       const unsigned char *_mbsrchr_(const unsigned char *str, unsigned int c, _locale_t locale ); // C++ only-->
+  <function name="_mbsrchr_l">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+    <arg nr="3">
+      <not-uninit/>
+    </arg>
+  </function>
+  <!-- unsigned char *_mbsrchr(const unsigned char *str, unsigned int c); // C only  
+       unsigned char *_mbsrchr(unsigned char *str, unsigned int c); // C++ only  
+       const unsigned char *_mbsrchr(const unsigned char *str, unsigned int c); // C++ only-->
+  <function name="_mbsrchr,_tcsrchr">
+    <use-retval/>
+    <noreturn>false</noreturn>
+    <leak-ignore/>
+    <arg nr="1">
+      <not-null/>
+      <not-uninit/>
+    </arg>
+    <arg nr="2">
+      <not-uninit/>
+    </arg>
+  </function>
+</def>