# MS VC++2005 runtime library

@ thiscall -arch=i386 ??0__non_rtti_object@std@@QAE@ABV01@@Z(ptr ptr) msvcrt.??0__non_rtti_object@@QAE@ABV0@@Z
@ cdecl -arch=win64 ??0__non_rtti_object@std@@QEAA@AEBV01@@Z(ptr ptr) msvcrt.??0__non_rtti_object@@QEAA@AEBV0@@Z
@ cdecl -arch=win64 ??0__non_rtti_object@std@@QEAA@PEBD@Z(ptr ptr) msvcrt.??0__non_rtti_object@@QEAA@PEBD@Z
@ cdecl -arch=win64 ??0bad_cast@std@@AEAA@PEBQEBD@Z(ptr ptr) msvcrt.??0bad_cast@@AEAA@PEBQEBD@Z
@ thiscall -arch=i386 ??0bad_cast@std@@QAE@ABV01@@Z(ptr ptr) msvcrt.??0bad_cast@@QAE@ABV0@@Z
@ cdecl -arch=win64 ??0bad_cast@std@@QEAA@AEBV01@@Z(ptr ptr) msvcrt.??0bad_cast@@QEAA@AEBV0@@Z
@ thiscall -arch=i386 ??0bad_cast@std@@QAE@PBD@Z(ptr str) msvcrt.??0bad_cast@@QAE@PBD@Z
@ cdecl -arch=win64 ??0bad_cast@std@@QEAA@PEBD@Z(ptr str) msvcrt.??0bad_cast@@QEAA@PEBD@Z
@ thiscall -arch=i386 ??0bad_typeid@std@@QAE@ABV01@@Z(ptr ptr) msvcrt.??0bad_typeid@@QAE@ABV0@@Z
@ cdecl -arch=win64 ??0bad_typeid@std@@QEAA@AEBV01@@Z(ptr ptr) msvcrt.??0bad_typeid@@QEAA@AEBV0@@Z
@ thiscall -arch=i386 ??0bad_typeid@std@@QAE@PBD@Z(ptr str) msvcrt.??0bad_typeid@@QAE@PBD@Z
@ cdecl -arch=win64 ??0bad_typeid@std@@QEAA@PEBD@Z(ptr str) msvcrt.??0bad_typeid@@QEAA@PEBD@Z
@ thiscall -arch=i386 ??0exception@std@@QAE@ABQBD@Z(ptr ptr) msvcrt.??0exception@@QAE@ABQBD@Z
@ cdecl -arch=win64 ??0exception@std@@QEAA@AEBQEBD@Z(ptr ptr) msvcrt.??0exception@@QEAA@AEBQEBD@Z
@ thiscall -arch=i386 ??0exception@std@@QAE@ABQBDH@Z(ptr ptr long) msvcrt.??0exception@@QAE@ABQBDH@Z
@ cdecl -arch=win64 ??0exception@std@@QEAA@AEBQEBDH@Z(ptr ptr long) msvcrt.??0exception@@QEAA@AEBQEBDH@Z
@ thiscall -arch=i386 ??0exception@std@@QAE@ABV01@@Z(ptr ptr) msvcrt.??0exception@@QAE@ABV0@@Z
@ cdecl -arch=win64 ??0exception@std@@QEAA@AEBV01@@Z(ptr ptr) msvcrt.??0exception@@QEAA@AEBV0@@Z
@ thiscall -arch=i386 ??0exception@std@@QAE@XZ(ptr) msvcrt.??0exception@@QAE@XZ
@ cdecl -arch=win64 ??0exception@std@@QEAA@XZ(ptr) msvcrt.??0exception@@QEAA@XZ
@ thiscall -arch=i386 ??1__non_rtti_object@std@@UAE@XZ(ptr) msvcrt.??1__non_rtti_object@@UAE@XZ
@ cdecl -arch=win64 ??1__non_rtti_object@std@@UEAA@XZ(ptr) msvcrt.??1__non_rtti_object@@UEAA@XZ
@ thiscall -arch=i386 ??1bad_cast@std@@UAE@XZ(ptr) msvcrt.??1bad_cast@@UAE@XZ
@ cdecl -arch=win64 ??1bad_cast@std@@UEAA@XZ(ptr) msvcrt.??1bad_cast@@UEAA@XZ
@ thiscall -arch=i386 ??1bad_typeid@std@@UAE@XZ(ptr) msvcrt.??1bad_typeid@@UAE@XZ
@ cdecl -arch=win64 ??1bad_typeid@std@@UEAA@XZ(ptr) msvcrt.??1bad_typeid@@UEAA@XZ
@ thiscall -arch=i386 ??1exception@std@@UAE@XZ(ptr) msvcrt.??1exception@@UAE@XZ
@ cdecl -arch=win64 ??1exception@std@@UEAA@XZ(ptr) msvcrt.??1exception@@UEAA@XZ
@ thiscall -arch=i386 ??1type_info@@UAE@XZ(ptr) msvcrt.??1type_info@@UAE@XZ
@ cdecl -arch=win64 ??1type_info@@UEAA@XZ(ptr) msvcrt.??1type_info@@UEAA@XZ
@ cdecl -arch=win32 ??2@YAPAXI@Z(long) msvcrt.??2@YAPAXI@Z
@ cdecl -arch=win64 ??2@YAPEAX_K@Z(long) msvcrt.??2@YAPEAX_K@Z
@ cdecl -arch=win32 ??2@YAPAXIHPBDH@Z(long long str long) msvcrt.??2@YAPAXIHPBDH@Z
@ cdecl -arch=win64 ??2@YAPEAX_KHPEBDH@Z(long long str long) msvcrt.??2@YAPEAX_KHPEBDH@Z
@ cdecl -arch=win32 ??3@YAXPAX@Z(ptr) msvcrt.??3@YAXPAX@Z
@ cdecl -arch=win64 ??3@YAXPEAX@Z(ptr) msvcrt.??3@YAXPEAX@Z
@ thiscall -arch=i386 ??4__non_rtti_object@std@@QAEAAV01@ABV01@@Z(ptr ptr) msvcrt.??4__non_rtti_object@@QAEAAV0@ABV0@@Z
@ cdecl -arch=win64 ??4__non_rtti_object@std@@QEAAAEAV01@AEBV01@@Z(ptr ptr) msvcrt.??4__non_rtti_object@@QEAAAEAV0@AEBV0@@Z
@ thiscall -arch=i386 ??4bad_cast@std@@QAEAAV01@ABV01@@Z(ptr ptr) msvcrt.??4bad_cast@@QAEAAV0@ABV0@@Z
@ cdecl -arch=win64 ??4bad_cast@std@@QEAAAEAV01@AEBV01@@Z(ptr ptr) msvcrt.??4bad_cast@@QEAAAEAV0@AEBV0@@Z
@ thiscall -arch=i386 ??4bad_typeid@std@@QAEAAV01@ABV01@@Z(ptr ptr) msvcrt.??4bad_typeid@@QAEAAV0@ABV0@@Z
@ cdecl -arch=win64 ??4bad_typeid@std@@QEAAAEAV01@AEBV01@@Z(ptr ptr) msvcrt.??4bad_typeid@@QEAAAEAV0@AEBV0@@Z
@ thiscall -arch=i386 ??4exception@std@@QAEAAV01@ABV01@@Z(ptr ptr) msvcrt.??4exception@@QAEAAV0@ABV0@@Z
@ cdecl -arch=win64 ??4exception@std@@QEAAAEAV01@AEBV01@@Z(ptr ptr) msvcrt.??4exception@@QEAAAEAV0@AEBV0@@Z
@ thiscall -arch=i386 ??8type_info@@QBE_NABV0@@Z(ptr ptr) msvcrt.??8type_info@@QBEHABV0@@Z
@ cdecl -arch=win64 ??8type_info@@QEBA_NAEBV0@@Z(ptr ptr) msvcrt.??8type_info@@QEBAHAEBV0@@Z
@ thiscall -arch=i386 ??9type_info@@QBE_NABV0@@Z(ptr ptr) msvcrt.??9type_info@@QBEHABV0@@Z
@ cdecl -arch=win64 ??9type_info@@QEBA_NAEBV0@@Z(ptr ptr) msvcrt.??9type_info@@QEBAHAEBV0@@Z
@ extern ??_7__non_rtti_object@std@@6B@ msvcrt.??_7__non_rtti_object@@6B@
@ extern ??_7bad_cast@std@@6B@ msvcrt.??_7bad_cast@@6B@
@ extern ??_7bad_typeid@std@@6B@ msvcrt.??_7bad_typeid@@6B@
@ extern ??_7exception@@6B@ msvcrt.??_7exception@@6B@
@ extern ??_7exception@std@@6B@ msvcrt.??_7exception@@6B@
@ thiscall -arch=i386 ??_Fbad_cast@std@@QAEXXZ(ptr) msvcrt.??_Fbad_cast@@QAEXXZ
@ cdecl -arch=win64 ??_Fbad_cast@std@@QEAAXXZ(ptr) msvcrt.??_Fbad_cast@@QEAAXXZ
@ thiscall -arch=i386 ??_Fbad_typeid@std@@QAEXXZ(ptr) msvcrt.??_Fbad_typeid@@QAEXXZ
@ cdecl -arch=win64 ??_Fbad_typeid@std@@QEAAXXZ(ptr) msvcrt.??_Fbad_typeid@@QEAAXXZ
@ cdecl -arch=win32 ??_U@YAPAXI@Z(long) msvcrt.??_U@YAPAXI@Z
@ cdecl -arch=win64 ??_U@YAPEAX_K@Z(long) msvcrt.??_U@YAPEAX_K@Z
@ cdecl -arch=win32 ??_U@YAPAXIHPBDH@Z(long long str long) msvcrt.??_U@YAPAXIHPBDH@Z
@ cdecl -arch=win64 ??_U@YAPEAX_KHPEBDH@Z(long long str long) msvcrt.??_U@YAPEAX_KHPEBDH@Z
@ cdecl -arch=win32 ??_V@YAXPAX@Z(ptr) msvcrt.??_V@YAXPAX@Z
@ cdecl -arch=win64 ??_V@YAXPEAX@Z(ptr) msvcrt.??_V@YAXPEAX@Z
@ stub -arch=win32 ?_Name_base@type_info@@CAPBDPBV1@PAU__type_info_node@@@Z  # private: static char const * __cdecl type_info::_Name_base(class type_info const *,struct __type_info_node *)
@ stub -arch=win64 ?_Name_base@type_info@@CAPEBDPEBV1@PEAU__type_info_node@@@Z  # private: static char const * __ptr64 __cdecl type_info::_Name_base(class type_info const * __ptr64,struct __type_info_node * __ptr64)
@ stub -arch=win32 ?_Name_base_internal@type_info@@CAPBDPBV1@PAU__type_info_node@@@Z  # private: static char const * __cdecl type_info::_Name_base_internal(class type_info const *,struct __type_info_node *)
@ stub -arch=win64 ?_Name_base_internal@type_info@@CAPEBDPEBV1@PEAU__type_info_node@@@Z  # private: static char const * __ptr64 __cdecl type_info::_Name_base_internal(class type_info const * __ptr64,struct __type_info_node * __ptr64)
@ stub -arch=win32 ?_Type_info_dtor@type_info@@CAXPAV1@@Z  # private: static void __cdecl type_info::_Type_info_dtor(class type_info *)
@ stub -arch=win64 ?_Type_info_dtor@type_info@@CAXPEAV1@@Z  # private: static void __cdecl type_info::_Type_info_dtor(class type_info * __ptr64)
@ stub -arch=win32 ?_Type_info_dtor_internal@type_info@@CAXPAV1@@Z  # private: static void __cdecl type_info::_Type_info_dtor_internal(class type_info *)
@ stub -arch=win64 ?_Type_info_dtor_internal@type_info@@CAXPEAV1@@Z  # private: static void __cdecl type_info::_Type_info_dtor_internal(class type_info * __ptr64)
@ stub -arch=win32 ?_ValidateExecute@@YAHP6GHXZ@Z  # int __cdecl _ValidateExecute(int (__stdcall*)(void))
@ stub -arch=win64 ?_ValidateExecute@@YAHP6A_JXZ@Z  # int __cdecl _ValidateExecute(__int64 (__cdecl*)(void))
@ stub -arch=win32 ?_ValidateRead@@YAHPBXI@Z  # int __cdecl _ValidateRead(void const *,unsigned int)
@ stub -arch=win64 ?_ValidateRead@@YAHPEBXI@Z  # int __cdecl _ValidateRead(void const * __ptr64,unsigned int)
@ stub -arch=win32 ?_ValidateWrite@@YAHPAXI@Z  # int __cdecl _ValidateWrite(void *,unsigned int)
@ stub -arch=win64 ?_ValidateWrite@@YAHPEAXI@Z  # int __cdecl _ValidateWrite(void * __ptr64,unsigned int)
@ cdecl __uncaught_exception() msvcrt.__uncaught_exception
@ stub ?_inconsistency@@YAXXZ
@ cdecl -arch=win32 ?_invalid_parameter@@YAXPBG00II@Z(wstr wstr wstr long long) msvcrt._invalid_parameter
@ cdecl -arch=win64 ?_invalid_parameter@@YAXPEBG00I_K@Z(wstr wstr wstr long long) msvcrt._invalid_parameter
@ stub -arch=win32 ?_is_exception_typeof@@YAHABVtype_info@@PAU_EXCEPTION_POINTERS@@@Z  # int __cdecl _is_exception_typeof(class type_info const &,struct _EXCEPTION_POINTERS *)
@ stub -arch=win64 ?_is_exception_typeof@@YAHAEBVtype_info@@PEAU_EXCEPTION_POINTERS@@@Z  # int __cdecl _is_exception_typeof(class type_info const & __ptr64,struct _EXCEPTION_POINTERS * __ptr64)
@ thiscall -arch=i386 ?_name_internal_method@type_info@@QBEPBDPAU__type_info_node@@@Z(ptr ptr) msvcr100.?_name_internal_method@type_info@@QBEPBDPAU__type_info_node@@@Z
@ cdecl -arch=win64 ?_name_internal_method@type_info@@QEBAPEBDPEAU__type_info_node@@@Z(ptr ptr) msvcr100.?_name_internal_method@type_info@@QEBAPEBDPEAU__type_info_node@@@Z
@ varargs -arch=win32 ?_open@@YAHPBDHH@Z(str long) msvcrt._open
@ varargs -arch=win64 ?_open@@YAHPEBDHH@Z(str long) msvcrt._open
@ cdecl -arch=win32 ?_query_new_handler@@YAP6AHI@ZXZ() msvcrt.?_query_new_handler@@YAP6AHI@ZXZ
@ cdecl -arch=win64 ?_query_new_handler@@YAP6AH_K@ZXZ() msvcrt.?_query_new_handler@@YAP6AH_K@ZXZ
@ cdecl ?_query_new_mode@@YAHXZ() msvcrt.?_query_new_mode@@YAHXZ
@ stub -arch=win32 ?_set_new_handler@@YAP6AHI@ZH@Z  # int (__cdecl*__cdecl _set_new_handler(int))(unsigned int)
@ stub -arch=win64 ?_set_new_handler@@YAP6AH_K@ZH@Z  # int (__cdecl*__cdecl _set_new_handler(int))(unsigned __int64)
@ cdecl -arch=win32 ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z(ptr) msvcrt.?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z
@ cdecl -arch=win64 ?_set_new_handler@@YAP6AH_K@ZP6AH0@Z@Z(ptr) msvcrt.?_set_new_handler@@YAP6AH_K@ZP6AH0@Z@Z
@ cdecl ?_set_new_mode@@YAHH@Z(long) msvcrt.?_set_new_mode@@YAHH@Z
@ stub -arch=win32 ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZH@Z  # void (__cdecl*__cdecl _set_se_translator(int))(unsigned int,struct _EXCEPTION_POINTERS *)
@ stub -arch=win64 ?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZH@Z  # void (__cdecl*__cdecl _set_se_translator(int))(unsigned int,struct _EXCEPTION_POINTERS * __ptr64)
@ cdecl -arch=win32 ?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z(ptr) msvcrt.?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z
@ cdecl -arch=win64 ?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z(ptr) msvcrt.?_set_se_translator@@YAP6AXIPEAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z
@ cdecl -arch=win32 ?_sopen@@YAHPBDHHH@Z(str long long long) msvcrt._sopen
@ cdecl -arch=win64 ?_sopen@@YAHPEBDHHH@Z(str long long long) msvcrt._sopen
@ stub -arch=win32 ?_type_info_dtor_internal_method@type_info@@QAEXXZ  # public: void __thiscall type_info::_type_info_dtor_internal_method(void)
@ stub -arch=win64 ?_type_info_dtor_internal_method@type_info@@QEAAXXZ  # public: void __cdecl type_info::_type_info_dtor_internal_method(void) __ptr64
@ cdecl -arch=win32 ?_wopen@@YAHPB_WHH@Z(wstr long long) msvcrt._wopen
@ cdecl -arch=win64 ?_wopen@@YAHPEB_WHH@Z(wstr long long) msvcrt._wopen
@ cdecl -arch=win32 ?_wsopen@@YAHPB_WHHH@Z(wstr long long long) msvcrt._wsopen
@ cdecl -arch=win64 ?_wsopen@@YAHPEB_WHHH@Z(wstr long long long) msvcrt._wsopen
@ thiscall -arch=i386 ?before@type_info@@QBEHABV1@@Z(ptr ptr) msvcrt.?before@type_info@@QBEHABV1@@Z
@ cdecl -arch=win64 ?before@type_info@@QEBAHAEBV1@@Z(ptr ptr) msvcrt.?before@type_info@@QEBAHAEBV1@@Z
@ stub -arch=win32 ?name@type_info@@QBEPBDPAU__type_info_node@@@Z  # public: char const * __thiscall type_info::name(struct __type_info_node *)const
@ stub -arch=win64 ?name@type_info@@QEBAPEBDPEAU__type_info_node@@@Z  # public: char const * __ptr64 __cdecl type_info::name(struct __type_info_node * __ptr64)const __ptr64
@ thiscall -arch=i386 ?raw_name@type_info@@QBEPBDXZ(ptr) msvcrt.?raw_name@type_info@@QBEPBDXZ
@ cdecl -arch=win64 ?raw_name@type_info@@QEBAPEBDXZ(ptr) msvcrt.?raw_name@type_info@@QEBAPEBDXZ
@ cdecl ?set_new_handler@@YAP6AXXZP6AXXZ@Z(ptr) msvcrt.?set_new_handler@@YAP6AXXZP6AXXZ@Z
@ stub ?set_terminate@@YAP6AXXZH@Z
@ cdecl ?set_terminate@@YAP6AXXZP6AXXZ@Z(ptr) msvcrt.?set_terminate@@YAP6AXXZP6AXXZ@Z
@ stub ?set_unexpected@@YAP6AXXZH@Z
@ cdecl ?set_unexpected@@YAP6AXXZP6AXXZ@Z(ptr) msvcrt.?set_unexpected@@YAP6AXXZP6AXXZ@Z
@ varargs ?swprintf@@YAHPAGIPBGZZ(ptr long wstr) msvcrt._snwprintf
@ varargs ?swprintf@@YAHPA_WIPB_WZZ(ptr long wstr) msvcrt._snwprintf
@ cdecl ?terminate@@YAXXZ() msvcrt.?terminate@@YAXXZ
@ cdecl ?unexpected@@YAXXZ() msvcrt.?unexpected@@YAXXZ
@ cdecl ?vswprintf@@YAHPA_WIPB_WPAD@Z(ptr long wstr ptr) msvcrt._vsnwprintf
@ thiscall -arch=i386 ?what@exception@std@@UBEPBDXZ(ptr) msvcrt.?what@exception@@UBEPBDXZ
@ cdecl -arch=win64 ?what@exception@std@@UEBAPEBDXZ(ptr) msvcrt.?what@exception@@UEBAPEBDXZ
@ stub @_calloc_crt@8
@ cdecl @_malloc_crt@4(long) msvcrt.malloc
@ stub @_realloc_crt@8
@ cdecl -norelay $I10_OUTPUT(double long long long ptr) msvcrt.$I10_OUTPUT
@ cdecl -arch=i386 _CIacos() msvcrt._CIacos
@ cdecl -arch=i386 _CIasin() msvcrt._CIasin
@ cdecl -arch=i386 _CIatan() msvcrt._CIatan
@ cdecl -arch=i386 _CIatan2() msvcrt._CIatan2
@ cdecl -arch=i386 _CIcos() msvcrt._CIcos
@ cdecl -arch=i386 _CIcosh() msvcrt._CIcosh
@ cdecl -arch=i386 _CIexp() msvcrt._CIexp
@ cdecl -arch=i386 _CIfmod() msvcrt._CIfmod
@ cdecl -arch=i386 _CIlog() msvcrt._CIlog
@ cdecl -arch=i386 _CIlog10() msvcrt._CIlog10
@ cdecl -arch=i386 _CIpow() msvcrt._CIpow
@ cdecl -arch=i386 _CIsin() msvcrt._CIsin
@ cdecl -arch=i386 _CIsinh() msvcrt._CIsinh
@ cdecl -arch=i386 _CIsqrt() msvcrt._CIsqrt
@ cdecl -arch=i386 _CItan() msvcrt._CItan
@ cdecl -arch=i386 _CItanh() msvcrt._CItanh
@ cdecl _CRT_RTC_INIT(ptr ptr long long long) msvcr100._CRT_RTC_INIT
@ cdecl _CRT_RTC_INITW(ptr ptr long long long) msvcr100._CRT_RTC_INITW
@ stub _CreateFrameInfo
@ stdcall _CxxThrowException(long long) msvcrt._CxxThrowException
@ cdecl -arch=i386 -norelay _EH_prolog() msvcrt._EH_prolog
@ stub _FindAndUnlinkFrame
@ stub -arch=win64 _GetImageBase
@ stub -arch=win64 _GetThrowImageBase
@ cdecl _Getdays() msvcrt._Getdays
@ cdecl _Getmonths() msvcrt._Getmonths
@ cdecl _Gettnames() msvcrt._Gettnames
@ extern _HUGE msvcrt._HUGE
@ stub _IsExceptionObjectToBeDestroyed
@ stub -arch=i386 _NLG_Dispatch2
@ stub -arch=arm,win64 __NLG_Dispatch2
@ stub -arch=i386 _NLG_Return
@ stub -arch=i386 _NLG_Return2
@ stub -arch=arm,win64 __NLG_Return2
@ stub -arch=win64 _SetImageBase
@ stub -arch=win64 _SetThrowImageBase
@ cdecl _Strftime(str long str ptr ptr) msvcrt._Strftime
@ cdecl _XcptFilter(long ptr) msvcrt._XcptFilter
@ stub __AdjustPointer
@ stub __BuildCatchObject
@ stub __BuildCatchObjectHelper
@ stdcall -arch=x86_64 __C_specific_handler(ptr long ptr ptr) msvcrt.__C_specific_handler
@ cdecl -arch=i386,x86_64,arm __CppXcptFilter(long ptr) msvcrt.__CppXcptFilter
@ stub __CxxCallUnwindDelDtor
@ stub __CxxCallUnwindDtor
@ stub __CxxCallUnwindStdDelDtor
@ stub __CxxCallUnwindVecDtor
@ cdecl -arch=i386,x86_64,arm __CxxDetectRethrow(ptr) msvcrt.__CxxDetectRethrow
@ stub __CxxExceptionFilter
@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler
@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler2(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler2
@ cdecl -arch=i386,x86_64,arm -norelay __CxxFrameHandler3(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler3
@ stdcall -arch=i386 __CxxLongjmpUnwind(ptr) msvcrt.__CxxLongjmpUnwind
@ cdecl -arch=i386,x86_64,arm __CxxQueryExceptionSize() msvcrt.__CxxQueryExceptionSize
@ stub __CxxRegisterExceptionObject
@ stub __CxxUnregisterExceptionObject
@ stub __DestructExceptionObject
@ stub __FrameUnwindFilter
@ cdecl __RTCastToVoid(ptr) msvcrt.__RTCastToVoid
@ cdecl __RTDynamicCast(ptr long ptr ptr long) msvcrt.__RTDynamicCast
@ cdecl __RTtypeid(ptr) msvcrt.__RTtypeid
@ cdecl __STRINGTOLD(ptr ptr str long) msvcrt.__STRINGTOLD
@ stub __STRINGTOLD_L
@ stub __TypeMatch
@ cdecl ___lc_codepage_func() msvcrt.___lc_codepage_func
@ cdecl ___lc_collate_cp_func() msvcrt.___lc_collate_cp_func
@ cdecl ___lc_handle_func() msvcrt.___lc_handle_func
@ cdecl ___mb_cur_max_func() msvcrt.___mb_cur_max_func
@ cdecl ___mb_cur_max_l_func(ptr) msvcrt.___mb_cur_max_l_func
@ cdecl ___setlc_active_func() msvcrt.___setlc_active_func
@ cdecl ___unguarded_readlc_active_add_func() msvcrt.___unguarded_readlc_active_add_func
@ extern __argc msvcrt.__argc
@ extern __argv msvcrt.__argv
### extern __badioinfo #don't forward to msvcrt.__badioinfo, it has different size
@ cdecl __clean_type_info_names_internal(ptr) msvcr100.__clean_type_info_names_internal
@ cdecl -arch=i386 __control87_2(long long ptr ptr) msvcrt.__control87_2
@ stub __create_locale
@ cdecl __crtCompareStringA(long long str long str long) msvcrt.__crtCompareStringA
@ cdecl __crtCompareStringW(long long wstr long wstr long) msvcrt.__crtCompareStringW
@ cdecl __crtGetLocaleInfoW(long long ptr long) msvcrt.__crtGetLocaleInfoW
@ cdecl __crtGetStringTypeW(long long wstr long ptr) msvcrt.__crtGetStringTypeW
@ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA
@ cdecl __crtLCMapStringW(long long wstr long ptr long long long) msvcrt.__crtLCMapStringW
@ cdecl __daylight() msvcrt.__daylight
@ cdecl __dllonexit(ptr ptr ptr) msvcrt.__dllonexit
@ cdecl __doserrno() msvcrt.__doserrno
@ stub __dstbias
@ stub -arch=i386 ___fls_getvalue@4
@ stub -arch=x86_64 __fls_getvalue
@ stub -arch=i386 ___fls_setvalue@8
@ stub -arch=x86_64 __fls_setvalue
@ cdecl __fpecode() msvcrt.__fpecode
@ stub __free_locale
@ stub __get_app_type
@ stub __get_current_locale
@ stub __get_flsindex
@ stub __get_tlsindex
@ cdecl __getmainargs(ptr ptr ptr long ptr) msvcrt.__getmainargs
@ extern __initenv msvcrt.__initenv
@ cdecl __iob_func() msvcrt.__iob_func
@ cdecl __isascii(long) msvcrt.__isascii
@ cdecl __iscsym(long) msvcrt.__iscsym
@ cdecl __iscsymf(long) msvcrt.__iscsymf
@ stub __iswcsym
@ stub __iswcsymf
# extern __lc_clike
@ extern __lc_codepage msvcrt.__lc_codepage
@ extern __lc_collate_cp msvcrt.__lc_collate_cp
@ extern __lc_handle msvcrt.__lc_handle
# extern __lconv
@ cdecl __lconv_init() msvcrt.__lconv_init
@ cdecl -arch=i386 __libm_sse2_acos() msvcrt.__libm_sse2_acos
@ cdecl -arch=i386 __libm_sse2_acosf() msvcrt.__libm_sse2_acosf
@ cdecl -arch=i386 __libm_sse2_asin() msvcrt.__libm_sse2_asin
@ cdecl -arch=i386 __libm_sse2_asinf() msvcrt.__libm_sse2_asinf
@ cdecl -arch=i386 __libm_sse2_atan() msvcrt.__libm_sse2_atan
@ cdecl -arch=i386 __libm_sse2_atan2() msvcrt.__libm_sse2_atan2
@ cdecl -arch=i386 __libm_sse2_atanf() msvcrt.__libm_sse2_atanf
@ cdecl -arch=i386 __libm_sse2_cos() msvcrt.__libm_sse2_cos
@ cdecl -arch=i386 __libm_sse2_cosf() msvcrt.__libm_sse2_cosf
@ cdecl -arch=i386 __libm_sse2_exp() msvcrt.__libm_sse2_exp
@ cdecl -arch=i386 __libm_sse2_expf() msvcrt.__libm_sse2_expf
@ cdecl -arch=i386 __libm_sse2_log() msvcrt.__libm_sse2_log
@ cdecl -arch=i386 __libm_sse2_log10() msvcrt.__libm_sse2_log10
@ cdecl -arch=i386 __libm_sse2_log10f() msvcrt.__libm_sse2_log10f
@ cdecl -arch=i386 __libm_sse2_logf() msvcrt.__libm_sse2_logf
@ cdecl -arch=i386 __libm_sse2_pow() msvcrt.__libm_sse2_pow
@ cdecl -arch=i386 __libm_sse2_powf() msvcrt.__libm_sse2_powf
@ cdecl -arch=i386 __libm_sse2_sin() msvcrt.__libm_sse2_sin
@ cdecl -arch=i386 __libm_sse2_sinf() msvcrt.__libm_sse2_sinf
@ cdecl -arch=i386 __libm_sse2_tan() msvcrt.__libm_sse2_tan
@ cdecl -arch=i386 __libm_sse2_tanf() msvcrt.__libm_sse2_tanf
@ extern __mb_cur_max msvcrt.__mb_cur_max
@ cdecl __p___argc() msvcrt.__p___argc
@ cdecl __p___argv() msvcrt.__p___argv
@ cdecl __p___initenv() msvcrt.__p___initenv
@ cdecl __p___mb_cur_max() msvcrt.__p___mb_cur_max
@ cdecl __p___wargv() msvcrt.__p___wargv
@ cdecl __p___winitenv() msvcrt.__p___winitenv
@ cdecl __p__acmdln() msvcrt.__p__acmdln
@ cdecl __p__amblksiz() msvcrt.__p__amblksiz
@ cdecl __p__commode() msvcrt.__p__commode
@ cdecl __p__daylight() msvcrt.__p__daylight
@ cdecl __p__dstbias() msvcrt.__p__dstbias
@ cdecl __p__environ() msvcrt.__p__environ
@ cdecl __p__fmode() msvcrt.__p__fmode
@ cdecl __p__iob() msvcrt.__p__iob
@ cdecl __p__mbcasemap() msvcrt.__p__mbcasemap
@ cdecl __p__mbctype() msvcrt.__p__mbctype
@ stub __p__osplatform
@ cdecl __p__osver() msvcrt.__p__osver
@ cdecl __p__pctype() msvcrt.__p__pctype
@ cdecl __p__pgmptr() msvcrt.__p__pgmptr
@ cdecl __p__pwctype() msvcrt.__p__pwctype
@ cdecl __p__timezone() msvcrt.__p__timezone
@ cdecl __p__tzname() msvcrt.__p__tzname
@ cdecl __p__wcmdln() msvcrt.__p__wcmdln
@ cdecl __p__wenviron() msvcrt.__p__wenviron
@ cdecl __p__winmajor() msvcrt.__p__winmajor
@ cdecl __p__winminor() msvcrt.__p__winminor
@ cdecl __p__winver() msvcrt.__p__winver
@ cdecl __p__wpgmptr() msvcrt.__p__wpgmptr
@ cdecl __pctype_func() msvcrt.__pctype_func
#FIXME: add correct __pioinfo implementation
@ extern __pioinfo msvcrt.__pioinfo
@ stub __pwctype_func
@ cdecl __pxcptinfoptrs() msvcrt.__pxcptinfoptrs
@ stub __report_gsfailure
@ cdecl __set_app_type(long) msvcrt.__set_app_type
@ stub __set_flsgetvalue
@ extern __setlc_active msvcrt.__setlc_active
@ cdecl __setusermatherr(ptr) msvcrt.__setusermatherr
@ stub __strncnt
@ stub __swprintf_l
@ cdecl __sys_errlist() msvcr100.__sys_errlist
@ cdecl __sys_nerr() msvcr100.__sys_nerr
@ cdecl __threadhandle() msvcrt.__threadhandle
@ cdecl __threadid() msvcrt.__threadid
@ cdecl __timezone() msvcrt.__p__timezone
@ cdecl __toascii(long) msvcrt.__toascii
@ cdecl __tzname() msvcrt.__p__tzname
@ cdecl __unDName(ptr str long ptr ptr long) msvcrt.__unDName
@ cdecl __unDNameEx(ptr str long ptr ptr ptr long) msvcrt.__unDNameEx
@ stub __unDNameHelper
@ extern __unguarded_readlc_active msvcrt.__unguarded_readlc_active
@ cdecl __vswprintf_l(ptr wstr ptr ptr) msvcrt._vswprintf_l
@ extern __wargv msvcrt.__wargv
@ cdecl __wcserror(wstr) msvcrt.__wcserror
@ cdecl __wcserror_s(ptr long wstr) msvcrt.__wcserror_s
@ stub __wcsncnt
@ cdecl __wgetmainargs(ptr ptr ptr long ptr) msvcrt.__wgetmainargs
@ extern __winitenv msvcrt.__winitenv
@ cdecl _abnormal_termination() msvcrt._abnormal_termination
@ cdecl -ret64 _abs64(int64) msvcrt._abs64
@ cdecl _access(str long) msvcrt._access
@ cdecl _access_s(str long) msvcrt._access_s
@ extern _acmdln msvcrt._acmdln
@ stdcall -arch=i386 _adj_fdiv_m16i(long) msvcrt._adj_fdiv_m16i
@ stdcall -arch=i386 _adj_fdiv_m32(long) msvcrt._adj_fdiv_m32
@ stdcall -arch=i386 _adj_fdiv_m32i(long) msvcrt._adj_fdiv_m32i
@ stdcall -arch=i386 _adj_fdiv_m64(int64) msvcrt._adj_fdiv_m64
@ cdecl -arch=i386 _adj_fdiv_r() msvcrt._adj_fdiv_r
@ stdcall -arch=i386 _adj_fdivr_m16i(long) msvcrt._adj_fdivr_m16i
@ stdcall -arch=i386 _adj_fdivr_m32(long) msvcrt._adj_fdivr_m32
@ stdcall -arch=i386 _adj_fdivr_m32i(long) msvcrt._adj_fdivr_m32i
@ stdcall -arch=i386 _adj_fdivr_m64(int64) msvcrt._adj_fdivr_m64
@ cdecl -arch=i386 _adj_fpatan() msvcrt._adj_fpatan
@ cdecl -arch=i386 _adj_fprem() msvcrt._adj_fprem
@ cdecl -arch=i386 _adj_fprem1() msvcrt._adj_fprem1
@ cdecl -arch=i386 _adj_fptan() msvcrt._adj_fptan
@ extern -arch=i386 _adjust_fdiv msvcrt._adjust_fdiv
@ extern _aexit_rtn msvcrt._aexit_rtn
@ cdecl _aligned_free(ptr) msvcrt._aligned_free
@ cdecl _aligned_malloc(long long) msvcrt._aligned_malloc
@ cdecl _aligned_msize(ptr long long) msvcr100._aligned_msize
@ cdecl _aligned_offset_malloc(long long long) msvcrt._aligned_offset_malloc
@ cdecl _aligned_offset_realloc(ptr long long long) msvcrt._aligned_offset_realloc
@ stub _aligned_offset_recalloc
@ cdecl _aligned_realloc(ptr long long) msvcrt._aligned_realloc
@ stub _aligned_recalloc
@ cdecl _amsg_exit(long) msvcrt._amsg_exit
@ cdecl _assert(str str long) msvcrt._assert
@ cdecl _atodbl(ptr str) msvcrt._atodbl
@ cdecl _atodbl_l(ptr str ptr) msvcrt._atodbl_l
@ cdecl _atof_l(str ptr) msvcrt._atof_l
@ cdecl _atoflt(ptr str) msvcr100._atoflt
@ cdecl _atoflt_l(ptr str ptr) msvcrt._atoflt_l
@ cdecl -ret64 _atoi64(str) msvcrt._atoi64
@ stub _atoi64_l
@ cdecl _atoi_l(str ptr) msvcrt._atoi_l
@ stub _atol_l
@ cdecl _atoldbl(ptr str) msvcrt._atoldbl
@ stub _atoldbl_l
@ cdecl _beep(long long) msvcrt._beep
@ cdecl _beginthread(ptr long ptr) msvcrt._beginthread
@ cdecl _beginthreadex(ptr long ptr ptr long ptr) msvcrt._beginthreadex
@ cdecl _byteswap_uint64(int64) msvcr100._byteswap_uint64
@ cdecl _byteswap_ulong(long) msvcr100._byteswap_ulong
@ cdecl _byteswap_ushort(long) msvcr100._byteswap_ushort
@ cdecl _c_exit() msvcrt._c_exit
@ cdecl _cabs(long) msvcrt._cabs
@ cdecl _callnewh(long) msvcrt._callnewh
@ cdecl _calloc_crt(long long) msvcrt.calloc
@ cdecl _cexit() msvcrt._cexit
@ cdecl _cgets(ptr) msvcrt._cgets
@ stub _cgets_s
@ stub _cgetws
@ stub _cgetws_s
@ cdecl _chdir(str) msvcrt._chdir
@ cdecl _chdrive(long) msvcrt._chdrive
@ cdecl _chgsign(double) msvcrt._chgsign
@ cdecl -arch=arm,x86_64 _chgsignf(float) msvcrt._chgsignf
@ cdecl -arch=i386 -norelay _chkesp() msvcrt._chkesp
@ cdecl _chmod(str long) msvcrt._chmod
@ cdecl _chsize(long long) msvcrt._chsize
@ cdecl _chsize_s(long int64) msvcrt._chsize_s
@ cdecl _clearfp() msvcrt._clearfp
@ cdecl _close(long) msvcrt._close
@ cdecl _commit(long) msvcrt._commit
@ extern _commode msvcrt._commode
@ cdecl _configthreadlocale(long) msvcrt._configthreadlocale
@ cdecl _control87(long long) msvcrt._control87
@ cdecl _controlfp(long long) msvcrt._controlfp
@ cdecl _controlfp_s(ptr long long) msvcrt._controlfp_s
@ cdecl _copysign(double double) msvcrt._copysign
@ cdecl -arch=arm,x86_64 _copysignf(float float) msvcrt._copysignf
@ varargs _cprintf(str) msvcrt._cprintf
@ stub _cprintf_l
@ stub _cprintf_p
@ stub _cprintf_p_l
@ stub _cprintf_s
@ stub _cprintf_s_l
@ cdecl _cputs(str) msvcrt._cputs
@ cdecl _cputws(wstr) msvcrt._cputws
@ cdecl _creat(str long) msvcrt._creat
@ cdecl _create_locale(long str) msvcrt._create_locale
@ stub -arch=i386 _crt_debugger_hook
@ stub -arch=arm,win64 __crt_debugger_hook
@ varargs _cscanf(str) msvcrt._cscanf
@ varargs _cscanf_l(str ptr) msvcrt._cscanf_l
@ varargs _cscanf_s(str) msvcrt._cscanf_s
@ varargs _cscanf_s_l(str ptr) msvcrt._cscanf_s_l
@ cdecl _ctime32(ptr) msvcrt._ctime32
@ cdecl _ctime32_s(str long ptr) msvcrt._ctime32_s
@ cdecl _ctime64(ptr) msvcrt._ctime64
@ cdecl _ctime64_s(str long ptr) msvcrt._ctime64_s
@ cdecl _cwait(ptr long long) msvcrt._cwait
@ varargs _cwprintf(wstr) msvcrt._cwprintf
@ stub _cwprintf_l
@ stub _cwprintf_p
@ stub _cwprintf_p_l
@ stub _cwprintf_s
@ stub _cwprintf_s_l
@ varargs _cwscanf(wstr) msvcrt._cwscanf
@ varargs _cwscanf_l(wstr ptr) msvcrt._cwscanf_l
@ varargs _cwscanf_s(wstr) msvcrt._cwscanf_s
@ varargs _cwscanf_s_l(wstr ptr) msvcrt._cwscanf_s_l
@ extern _daylight msvcrt._daylight
@ cdecl _decode_pointer(ptr) MSVCR80__decode_pointer
@ cdecl _difftime32(long long) msvcrt._difftime32
@ cdecl _difftime64(long long) msvcrt._difftime64
@ stub _dosmaperr
@ extern _dstbias msvcrt._dstbias
@ cdecl _dup(long) msvcrt._dup
@ cdecl _dup2(long long) msvcrt._dup2
@ cdecl _dupenv_s(ptr ptr str) msvcrt._dupenv_s
@ cdecl _ecvt(double long ptr ptr) msvcrt._ecvt
@ cdecl _ecvt_s(str long double long ptr ptr) msvcrt._ecvt_s
@ cdecl _encode_pointer(ptr) MSVCR80__encode_pointer
@ cdecl _encoded_null() msvcr100._encoded_null
@ cdecl _endthread() msvcrt._endthread
@ cdecl _endthreadex(long) msvcrt._endthreadex
@ extern _environ msvcrt._environ
@ cdecl _eof(long) msvcrt._eof
@ cdecl _errno() msvcrt._errno
@ cdecl -arch=i386 _except_handler2(ptr ptr ptr ptr) msvcrt._except_handler2
@ cdecl -arch=i386 _except_handler3(ptr ptr ptr ptr) msvcrt._except_handler3
@ cdecl -arch=i386 _except_handler4_common(ptr ptr ptr ptr ptr ptr) msvcrt._except_handler4_common
@ varargs _execl(str str) msvcrt._execl
@ varargs _execle(str str) msvcrt._execle
@ varargs _execlp(str str) msvcrt._execlp
@ varargs _execlpe(str str) msvcrt._execlpe
@ cdecl _execv(str ptr) msvcrt._execv
@ cdecl _execve(str ptr ptr) msvcrt._execve
@ cdecl _execvp(str ptr) msvcrt._execvp
@ cdecl _execvpe(str ptr ptr) msvcrt._execvpe
@ cdecl _exit(long) msvcrt._exit
@ cdecl _expand(ptr long) msvcrt._expand
@ stub _fclose_nolock
@ cdecl _fcloseall() msvcrt._fcloseall
@ cdecl _fcvt(double long ptr ptr) msvcrt._fcvt
@ cdecl _fcvt_s(ptr long double long ptr ptr) msvcrt._fcvt_s
@ cdecl _fdopen(long str) msvcrt._fdopen
@ stub _fflush_nolock
@ cdecl _fgetchar() msvcrt._fgetchar
@ stub _fgetwc_nolock
@ cdecl _fgetwchar() msvcrt._fgetwchar
@ cdecl _filbuf(ptr) msvcrt._filbuf
@ cdecl _filelength(long) msvcrt._filelength
@ cdecl -ret64 _filelengthi64(long) msvcrt._filelengthi64
@ cdecl _fileno(ptr) msvcrt._fileno
@ cdecl _findclose(long) msvcrt._findclose
@ cdecl _findfirst32(str ptr) msvcrt._findfirst32
@ stub _findfirst32i64
@ cdecl _findfirst64(str ptr) msvcrt._findfirst64
@ cdecl _findfirst64i32(str ptr) msvcrt._findfirst64i32
@ cdecl _findnext32(long ptr) msvcrt._findnext32
@ stub _findnext32i64
@ cdecl _findnext64(long ptr) msvcrt._findnext64
@ cdecl _findnext64i32(long ptr) msvcrt._findnext64i32
@ cdecl _finite(double) msvcrt._finite
@ cdecl -arch=arm,x86_64 _finitef(float) msvcrt._finitef
@ cdecl _flsbuf(long ptr) msvcrt._flsbuf
@ cdecl _flushall() msvcrt._flushall
@ extern _fmode msvcrt._fmode
@ cdecl _fpclass(double) msvcrt._fpclass
# stub -arch=x86_64 _fpclassf
@ cdecl _fpieee_flt(long ptr ptr) msvcrt._fpieee_flt
@ cdecl _fpreset() msvcrt._fpreset
@ stub _fprintf_l
@ stub _fprintf_p
@ stub _fprintf_p_l
@ stub _fprintf_s_l
@ cdecl _fputchar(long) msvcrt._fputchar
@ stub _fputwc_nolock
@ cdecl _fputwchar(long) msvcrt._fputwchar
@ stub _fread_nolock
@ stub _fread_nolock_s
@ cdecl _free_locale(ptr) msvcrt._free_locale
@ stub _freea
@ stub _freea_s
@ stub _freefls
@ varargs _fscanf_l(ptr str ptr) msvcrt._fscanf_l
@ varargs _fscanf_s_l(ptr str ptr) msvcrt._fscanf_s_l
@ stub _fseek_nolock
@ cdecl _fseeki64(ptr int64 long) msvcrt._fseeki64
@ stub _fseeki64_nolock
@ cdecl _fsopen(str str long) msvcrt._fsopen
@ cdecl _fstat32(long ptr) msvcrt._fstat32
@ stub _fstat32i64
@ cdecl _fstat64(long ptr) msvcrt._fstat64
@ cdecl _fstat64i32(long ptr) msvcrt._fstat64i32
@ stub _ftell_nolock
@ cdecl -ret64 _ftelli64(ptr) msvcrt._ftelli64
@ stub _ftelli64_nolock
@ cdecl _ftime32(ptr) msvcrt._ftime32
@ cdecl _ftime32_s(ptr) msvcrt._ftime32_s
@ cdecl _ftime64(ptr) msvcrt._ftime64
@ cdecl _ftime64_s(ptr) msvcrt._ftime64_s
@ cdecl -arch=i386 -ret64 _ftol() msvcrt._ftol
@ cdecl _fullpath(ptr str long) msvcrt._fullpath
@ cdecl _futime32(long ptr) msvcrt._futime32
@ cdecl _futime64(long ptr) msvcrt._futime64
@ varargs _fwprintf_l(ptr wstr ptr) msvcrt._fwprintf_l
@ stub _fwprintf_p
@ stub _fwprintf_p_l
@ stub _fwprintf_s_l
@ stub _fwrite_nolock
@ varargs _fwscanf_l(ptr wstr ptr) msvcrt._fwscanf_l
@ varargs _fwscanf_s_l(ptr wstr ptr) msvcrt._fwscanf_s_l
@ cdecl _gcvt(double long str) msvcrt._gcvt
@ cdecl _gcvt_s(ptr long  double long) msvcrt._gcvt_s
@ stub _get_amblksiz
@ cdecl _get_current_locale() msvcrt._get_current_locale
@ cdecl _get_daylight(ptr) msvcr100._get_daylight
@ cdecl _get_doserrno(ptr) msvcrt._get_doserrno
@ stub _get_dstbias
@ cdecl _get_errno(ptr) msvcrt._get_errno
@ cdecl _get_fmode(ptr) msvcrt._get_fmode
@ cdecl _get_heap_handle() msvcrt._get_heap_handle
@ cdecl _get_invalid_parameter_handler() msvcrt._get_invalid_parameter_handler
@ cdecl _get_osfhandle(long) msvcrt._get_osfhandle
@ cdecl _get_osplatform(ptr) msvcrt._get_osplatform
@ stub _get_osver
@ cdecl _get_output_format() msvcrt._get_output_format
@ cdecl _get_pgmptr(ptr) msvcrt._get_pgmptr
@ cdecl _get_printf_count_output() msvcrt._get_printf_count_output
@ stub _get_purecall_handler
@ cdecl _get_sbh_threshold() msvcrt._get_sbh_threshold
@ cdecl _get_terminate() msvcrt._get_terminate
@ cdecl _get_timezone(ptr) msvcr100._get_timezone
@ cdecl _get_tzname(ptr str long long) msvcrt._get_tzname
@ cdecl _get_unexpected() msvcrt._get_unexpected
@ stub _get_winmajor
@ stub _get_winminor
@ stub _get_winver
@ cdecl _get_wpgmptr(ptr) msvcrt._get_wpgmptr
@ cdecl _getch() msvcrt._getch
@ stub _getch_nolock
@ cdecl _getche() msvcrt._getche
@ stub _getche_nolock
@ cdecl _getcwd(str long) msvcrt._getcwd
@ cdecl _getdcwd(long str long) msvcrt._getdcwd
@ stub _getdcwd_nolock
@ cdecl _getdiskfree(long ptr) msvcrt._getdiskfree
@ cdecl _getdllprocaddr(long str long) msvcrt._getdllprocaddr
@ cdecl _getdrive() msvcrt._getdrive
@ cdecl _getdrives() msvcrt._getdrives
@ cdecl _getmaxstdio() msvcrt._getmaxstdio
@ cdecl _getmbcp() msvcrt._getmbcp
@ cdecl _getpid() msvcrt._getpid
@ cdecl _getptd() msvcrt._getptd
@ cdecl _getsystime(ptr) msvcrt._getsystime
@ cdecl _getw(ptr) msvcrt._getw
@ stub _getwch
@ stub _getwch_nolock
@ stub _getwche
@ stub _getwche_nolock
@ cdecl _getws(ptr) msvcrt._getws
@ stub _getws_s
@ cdecl -arch=i386 _global_unwind2(ptr) msvcrt._global_unwind2
@ cdecl _gmtime32(ptr) msvcrt._gmtime32
@ cdecl _gmtime32_s(ptr ptr) msvcrt._gmtime32_s
@ cdecl _gmtime64(ptr) msvcrt._gmtime64
@ cdecl _gmtime64_s(ptr ptr) msvcrt._gmtime64_s
@ cdecl _heapadd(ptr long) msvcrt._heapadd
@ cdecl _heapchk() msvcrt._heapchk
@ cdecl _heapmin() msvcrt._heapmin
@ cdecl _heapset(long) msvcrt._heapset
@ cdecl _heapused(ptr ptr) msvcrt._heapused
@ cdecl _heapwalk(ptr) msvcrt._heapwalk
@ cdecl _hypot(double double) msvcrt._hypot
@ cdecl _hypotf(float float) msvcrt._hypotf
@ cdecl _i64toa(int64 ptr long) msvcrt._i64toa
@ cdecl _i64toa_s(int64 ptr long long) msvcrt._i64toa_s
@ cdecl _i64tow(int64 ptr long) msvcrt._i64tow
@ cdecl _i64tow_s(int64 ptr long long) msvcrt._i64tow_s
@ stub _initptd
@ cdecl _initterm(ptr ptr) msvcrt._initterm
@ cdecl _initterm_e(ptr ptr) msvcrt._initterm_e
@ cdecl -arch=i386 _inp(long) msvcrt._inp
@ cdecl -arch=i386 _inpd(long) msvcrt._inpd
@ cdecl -arch=i386 _inpw(long) msvcrt._inpw
@ cdecl _invalid_parameter(wstr wstr wstr long long) msvcrt._invalid_parameter
@ cdecl _invalid_parameter_noinfo() msvcr100._invalid_parameter_noinfo
@ stub _invoke_watson
@ extern _iob msvcrt._iob
@ cdecl _isalnum_l(long ptr) msvcrt._isalnum_l
@ cdecl _isalpha_l(long ptr) msvcrt._isalpha_l
@ cdecl _isatty(long) msvcrt._isatty
@ cdecl _iscntrl_l(long ptr) msvcrt._iscntrl_l
@ cdecl _isctype(long long) msvcrt._isctype
@ cdecl _isctype_l(long long ptr) msvcrt._isctype_l
@ cdecl _isdigit_l(long ptr) msvcrt._isdigit_l
@ cdecl _isgraph_l(long ptr) msvcrt._isgraph_l
@ cdecl _isleadbyte_l(long ptr) msvcrt._isleadbyte_l
@ cdecl _islower_l(long ptr) msvcrt._islower_l
@ cdecl _ismbbalnum(long) msvcrt._ismbbalnum
@ stub _ismbbalnum_l
@ cdecl _ismbbalpha(long) msvcrt._ismbbalpha
@ stub _ismbbalpha_l
@ cdecl _ismbbgraph(long) msvcrt._ismbbgraph
@ stub _ismbbgraph_l
@ cdecl _ismbbkalnum(long) msvcrt._ismbbkalnum
@ stub _ismbbkalnum_l
@ cdecl _ismbbkana(long) msvcrt._ismbbkana
@ stub _ismbbkana_l
@ cdecl _ismbbkprint(long) msvcrt._ismbbkprint
@ stub _ismbbkprint_l
@ cdecl _ismbbkpunct(long) msvcrt._ismbbkpunct
@ stub _ismbbkpunct_l
@ cdecl _ismbblead(long) msvcrt._ismbblead
@ stub _ismbblead_l
@ cdecl _ismbbprint(long) msvcrt._ismbbprint
@ stub _ismbbprint_l
@ cdecl _ismbbpunct(long) msvcrt._ismbbpunct
@ stub _ismbbpunct_l
@ cdecl _ismbbtrail(long) msvcrt._ismbbtrail
@ stub _ismbbtrail_l
@ cdecl _ismbcalnum(long) msvcrt._ismbcalnum
@ stub _ismbcalnum_l
@ cdecl _ismbcalpha(long) msvcrt._ismbcalpha
@ stub _ismbcalpha_l
@ cdecl _ismbcdigit(long) msvcrt._ismbcdigit
@ stub _ismbcdigit_l
@ cdecl _ismbcgraph(long) msvcrt._ismbcgraph
@ stub _ismbcgraph_l
@ cdecl _ismbchira(long) msvcrt._ismbchira
@ stub _ismbchira_l
@ cdecl _ismbckata(long) msvcrt._ismbckata
@ stub _ismbckata_l
@ cdecl _ismbcl0(long) msvcrt._ismbcl0
@ stub _ismbcl0_l
@ cdecl _ismbcl1(long) msvcrt._ismbcl1
@ stub _ismbcl1_l
@ cdecl _ismbcl2(long) msvcrt._ismbcl2
@ stub _ismbcl2_l
@ cdecl _ismbclegal(long) msvcrt._ismbclegal
@ stub _ismbclegal_l
@ cdecl _ismbclower(long) msvcrt._ismbclower
@ stub _ismbclower_l
@ cdecl _ismbcprint(long) msvcrt._ismbcprint
@ stub _ismbcprint_l
@ cdecl _ismbcpunct(long) msvcrt._ismbcpunct
@ stub _ismbcpunct_l
@ cdecl _ismbcspace(long) msvcrt._ismbcspace
@ stub _ismbcspace_l
@ cdecl _ismbcsymbol(long) msvcrt._ismbcsymbol
@ stub _ismbcsymbol_l
@ cdecl _ismbcupper(long) msvcrt._ismbcupper
@ stub _ismbcupper_l
@ cdecl _ismbslead(ptr ptr) msvcrt._ismbslead
@ stub _ismbslead_l
@ cdecl _ismbstrail(ptr ptr) msvcrt._ismbstrail
@ stub _ismbstrail_l
@ cdecl _isnan(double) msvcrt._isnan
@ cdecl -arch=arm,x86_64 _isnanf(float) msvcrt._isnanf
@ cdecl _isprint_l(long ptr) msvcrt._isprint_l
@ stub _ispunct_l
@ cdecl _isspace_l(long ptr) msvcrt._isspace_l
@ cdecl _isupper_l(long ptr) msvcrt._isupper_l
@ stub _iswalnum_l
@ cdecl _iswalpha_l(long ptr) msvcrt._iswalpha_l
@ stub _iswcntrl_l
@ stub _iswcsym_l
@ stub _iswcsymf_l
@ stub _iswctype_l
@ cdecl _iswdigit_l(long ptr) msvcrt._iswdigit_l
@ stub _iswgraph_l
@ stub _iswlower_l
@ stub _iswprint_l
@ stub _iswpunct_l
@ stub _iswspace_l
@ stub _iswupper_l
@ stub _iswxdigit_l
@ cdecl _isxdigit_l(long ptr) msvcrt._isxdigit_l
@ cdecl _itoa(long ptr long) msvcrt._itoa
@ cdecl _itoa_s(long ptr long long) msvcrt._itoa_s
@ cdecl _itow(long ptr long) msvcrt._itow
@ cdecl _itow_s(long ptr long long) msvcrt._itow_s
@ cdecl _j0(double) msvcrt._j0
@ cdecl _j1(double) msvcrt._j1
@ cdecl _jn(long double) msvcrt._jn
@ cdecl _kbhit() msvcrt._kbhit
@ cdecl _lfind(ptr ptr ptr long ptr) msvcrt._lfind
@ stub _lfind_s
@ cdecl _loaddll(str) msvcrt._loaddll
@ cdecl -arch=x86_64 _local_unwind(ptr ptr) msvcrt._local_unwind
@ cdecl -arch=i386 _local_unwind2(ptr long) msvcrt._local_unwind2
@ cdecl -arch=i386 _local_unwind4(ptr ptr long) msvcrt._local_unwind4
@ cdecl _localtime32(ptr) msvcrt._localtime32
@ cdecl _localtime32_s(ptr ptr) msvcrt._localtime32_s
@ cdecl _localtime64(ptr) msvcrt._localtime64
@ cdecl _localtime64_s(ptr ptr) msvcrt._localtime64_s
@ cdecl _lock(long) msvcrt._lock
@ cdecl _lock_file(ptr) msvcrt._lock_file
@ cdecl _locking(long long long) msvcrt._locking
@ cdecl _logb(double) msvcrt._logb
@ cdecl -arch=arm,x86_64 _logbf(float) msvcrt._logbf
@ cdecl -arch=i386 _longjmpex(ptr long) msvcrt._longjmpex
@ cdecl _lrotl(long long) msvcrt._lrotl
@ cdecl _lrotr(long long) msvcrt._lrotr
@ cdecl _lsearch(ptr ptr ptr long ptr) msvcrt._lsearch
@ stub _lsearch_s
@ cdecl _lseek(long long long) msvcrt._lseek
@ cdecl -ret64 _lseeki64(long int64 long) msvcrt._lseeki64
@ cdecl _ltoa(long ptr long) msvcrt._ltoa
@ cdecl _ltoa_s(long ptr long long) msvcrt._ltoa_s
@ cdecl _ltow(long ptr long) msvcrt._ltow
@ cdecl _ltow_s(long ptr long long) msvcrt._ltow_s
@ cdecl _makepath(ptr str str str str) msvcrt._makepath
@ cdecl _makepath_s(ptr long str str str str) msvcrt._makepath_s
@ cdecl _malloc_crt(long) msvcrt.malloc
@ cdecl _mbbtombc(long) msvcrt._mbbtombc
@ stub _mbbtombc_l
@ cdecl _mbbtype(long long) msvcrt._mbbtype
@ stub _mbbtype_l
# extern _mbcasemap
@ cdecl _mbccpy(ptr str) msvcrt._mbccpy
@ stub _mbccpy_l
@ stub _mbccpy_s
@ stub _mbccpy_s_l
@ cdecl _mbcjistojms(long) msvcrt._mbcjistojms
@ stub _mbcjistojms_l
@ cdecl _mbcjmstojis(long) msvcrt._mbcjmstojis
@ stub _mbcjmstojis_l
@ cdecl _mbclen(ptr) msvcrt._mbclen
@ stub _mbclen_l
@ cdecl _mbctohira(long) msvcrt._mbctohira
@ stub _mbctohira_l
@ cdecl _mbctokata(long) msvcrt._mbctokata
@ stub _mbctokata_l
@ cdecl _mbctolower(long) msvcrt._mbctolower
@ stub _mbctolower_l
@ cdecl _mbctombb(long) msvcrt._mbctombb
@ stub _mbctombb_l
@ cdecl _mbctoupper(long) msvcrt._mbctoupper
@ stub _mbctoupper_l
@ extern _mbctype msvcrt._mbctype
@ stub _mblen_l
@ cdecl _mbsbtype(str long) msvcrt._mbsbtype
@ stub _mbsbtype_l
@ stub _mbscat_s
@ stub _mbscat_s_l
@ cdecl _mbschr(str long) msvcrt._mbschr
@ stub _mbschr_l
@ cdecl _mbscmp(str str) msvcrt._mbscmp
@ stub _mbscmp_l
@ cdecl _mbscoll(str str) msvcrt._mbscoll
@ cdecl _mbscoll_l(str str ptr) msvcrt._mbscoll_l
@ stub _mbscpy_s
@ stub _mbscpy_s_l
@ cdecl _mbscspn(str str) msvcrt._mbscspn
@ stub _mbscspn_l
@ cdecl _mbsdec(ptr ptr) msvcrt._mbsdec
@ stub _mbsdec_l
@ cdecl _mbsicmp(str str) msvcrt._mbsicmp
@ stub _mbsicmp_l
@ cdecl _mbsicoll(str str) msvcrt._mbsicoll
@ cdecl _mbsicoll_l(str str ptr) msvcrt._mbsicoll_l
@ cdecl _mbsinc(str) msvcrt._mbsinc
@ stub _mbsinc_l
@ cdecl _mbslen(str) msvcrt._mbslen
@ stub _mbslen_l
@ cdecl _mbslwr(str) msvcrt._mbslwr
@ stub _mbslwr_l
@ cdecl _mbslwr_s(str long) msvcrt._mbslwr_s
@ stub _mbslwr_s_l
@ cdecl _mbsnbcat(str str long) msvcrt._mbsnbcat
@ stub _mbsnbcat_l
@ cdecl _mbsnbcat_s(str long ptr long) msvcrt._mbsnbcat_s
@ stub _mbsnbcat_s_l
@ cdecl _mbsnbcmp(str str long) msvcrt._mbsnbcmp
@ stub _mbsnbcmp_l
@ cdecl _mbsnbcnt(ptr long) msvcrt._mbsnbcnt
@ stub _mbsnbcnt_l
@ cdecl _mbsnbcoll(str str long) msvcrt._mbsnbcoll
@ cdecl _mbsnbcoll_l(str str long ptr) msvcrt._mbsnbcoll_l
@ cdecl _mbsnbcpy(ptr str long) msvcrt._mbsnbcpy
@ stub _mbsnbcpy_l
@ cdecl _mbsnbcpy_s(ptr long str long) msvcrt._mbsnbcpy_s
@ stub _mbsnbcpy_s_l
@ cdecl _mbsnbicmp(str str long) msvcrt._mbsnbicmp
@ stub _mbsnbicmp_l
@ cdecl _mbsnbicoll(str str long) msvcrt._mbsnbicoll
@ cdecl _mbsnbicoll_l(str str long ptr) msvcrt._mbsnbicoll_l
@ cdecl _mbsnbset(ptr long long) msvcrt._mbsnbset
@ stub _mbsnbset_l
@ stub _mbsnbset_s
@ stub _mbsnbset_s_l
@ cdecl _mbsncat(str str long) msvcrt._mbsncat
@ stub _mbsncat_l
@ stub _mbsncat_s
@ stub _mbsncat_s_l
@ cdecl _mbsnccnt(str long) msvcrt._mbsnccnt
@ stub _mbsnccnt_l
@ cdecl _mbsncmp(str str long) msvcrt._mbsncmp
@ stub _mbsncmp_l
@ cdecl _mbsncoll(str str long) msvcrt._mbsncoll
@ stub _mbsncoll_l
@ cdecl _mbsncpy(ptr str long) msvcrt._mbsncpy
@ stub _mbsncpy_l
@ stub _mbsncpy_s
@ stub _mbsncpy_s_l
@ cdecl _mbsnextc(str) msvcrt._mbsnextc
@ stub _mbsnextc_l
@ cdecl _mbsnicmp(str str long) msvcrt._mbsnicmp
@ stub _mbsnicmp_l
@ cdecl _mbsnicoll(str str long) msvcrt._mbsnicoll
@ stub _mbsnicoll_l
@ cdecl _mbsninc(str long) msvcrt._mbsninc
@ stub _mbsninc_l
@ stub _mbsnlen
@ stub _mbsnlen_l
@ cdecl _mbsnset(ptr long long) msvcrt._mbsnset
@ stub _mbsnset_l
@ stub _mbsnset_s
@ stub _mbsnset_s_l
@ cdecl _mbspbrk(str str) msvcrt._mbspbrk
@ stub _mbspbrk_l
@ cdecl _mbsrchr(str long) msvcrt._mbsrchr
@ stub _mbsrchr_l
@ cdecl _mbsrev(str) msvcrt._mbsrev
@ stub _mbsrev_l
@ cdecl _mbsset(ptr long) msvcrt._mbsset
@ stub _mbsset_l
@ stub _mbsset_s
@ stub _mbsset_s_l
@ cdecl _mbsspn(str str) msvcrt._mbsspn
@ stub _mbsspn_l
@ cdecl _mbsspnp(str str) msvcrt._mbsspnp
@ stub _mbsspnp_l
@ cdecl _mbsstr(str str) msvcrt._mbsstr
@ stub _mbsstr_l
@ cdecl _mbstok(str str) msvcr100._mbstok #don't forward to msvcrt
@ cdecl _mbstok_l(str str ptr) msvcrt._mbstok_l
@ cdecl _mbstok_s(str str ptr) msvcrt._mbstok_s
@ cdecl _mbstok_s_l(str str ptr ptr) msvcrt._mbstok_s_l
@ cdecl _mbstowcs_l(ptr str long ptr) msvcrt._mbstowcs_l
@ cdecl _mbstowcs_s_l(ptr ptr long str long ptr) msvcrt._mbstowcs_s_l
@ cdecl _mbstrlen(str) msvcrt._mbstrlen
@ cdecl _mbstrlen_l(str ptr) msvcrt._mbstrlen_l
@ stub _mbstrnlen
@ stub _mbstrnlen_l
@ cdecl _mbsupr(str) msvcrt._mbsupr
@ stub _mbsupr_l
@ cdecl _mbsupr_s(str long) msvcrt._mbsupr_s
@ stub _mbsupr_s_l
@ cdecl _mbtowc_l(ptr str long ptr) msvcrt._mbtowc_l
@ cdecl _memccpy(ptr ptr long long) msvcrt._memccpy
@ cdecl _memicmp(str str long) msvcrt._memicmp
@ stub _memicmp_l
@ cdecl _mkdir(str) msvcrt._mkdir
@ cdecl _mkgmtime32(ptr) msvcrt._mkgmtime32
@ cdecl _mkgmtime64(ptr) msvcrt._mkgmtime64
@ cdecl _mktemp(str) msvcrt._mktemp
@ cdecl _mktemp_s(str long) msvcrt._mktemp_s
@ cdecl _mktime32(ptr) msvcrt._mktime32
@ cdecl _mktime64(ptr) msvcrt._mktime64
@ cdecl _msize(ptr) msvcrt._msize
@ cdecl _nextafter(double double) msvcrt._nextafter
@ cdecl -arch=arm,x86_64 _nextafterf(float float) msvcrt._nextafterf
@ cdecl _onexit(ptr) msvcrt._onexit
@ varargs _open(str long) msvcrt._open
@ cdecl _open_osfhandle(long long) msvcrt._open_osfhandle
@ extern _osplatform msvcrt._osplatform
@ extern _osver msvcrt._osver
@ cdecl -arch=i386 _outp(long long) msvcrt._outp
@ cdecl -arch=i386 _outpd(long long) msvcrt._outpd
@ cdecl -arch=i386 _outpw(long long) msvcrt._outpw
@ cdecl _pclose(ptr) msvcrt._pclose
@ extern _pctype msvcrt._pctype
@ extern _pgmptr msvcrt._pgmptr
@ cdecl _pipe(ptr long long) msvcrt._pipe
@ cdecl _popen(str str) msvcrt._popen
@ stub _printf_l
@ stub _printf_p
@ stub _printf_p_l
@ stub _printf_s_l
@ cdecl _purecall() msvcrt._purecall
@ cdecl _putch(long) msvcrt._putch
@ stub _putch_nolock
@ cdecl _putenv(str) msvcrt._putenv
@ cdecl _putenv_s(str str) msvcrt._putenv_s
@ cdecl _putw(long ptr) msvcrt._putw
@ cdecl _putwch(long) msvcrt._putwch
@ stub _putwch_nolock
@ cdecl _putws(wstr) msvcrt._putws
# extern _pwctype
@ cdecl _read(long ptr long) msvcrt._read
@ cdecl _realloc_crt(ptr long) msvcrt.realloc
@ cdecl _recalloc(ptr long long) msvcr100._recalloc
@ stub _recalloc_crt
@ cdecl _resetstkoflw() msvcrt._resetstkoflw
@ cdecl _rmdir(str) msvcrt._rmdir
@ cdecl _rmtmp() msvcrt._rmtmp
@ cdecl _rotl(long long) msvcrt._rotl
@ cdecl -ret64 _rotl64(int64 long) msvcrt._rotl64
@ cdecl _rotr(long long) msvcrt._rotr
@ cdecl -ret64 _rotr64(int64 long) msvcrt._rotr64
@ cdecl -arch=i386 _safe_fdiv() msvcrt._safe_fdiv
@ cdecl -arch=i386 _safe_fdivr() msvcrt._safe_fdivr
@ cdecl -arch=i386 _safe_fprem() msvcrt._safe_fprem
@ cdecl -arch=i386 _safe_fprem1() msvcrt._safe_fprem1
@ cdecl _scalb(double long) msvcrt._scalb
@ cdecl -arch=arm,x86_64 _scalbf(float long) msvcrt._scalbf
@ varargs _scanf_l(str ptr) msvcrt._scanf_l
@ varargs _scanf_s_l(str ptr) msvcrt._scanf_s_l
@ varargs _scprintf(str) msvcrt._scprintf
@ stub _scprintf_l
@ stub _scprintf_p
@ stub _scprintf_p_l
@ varargs _scwprintf(wstr) msvcrt._scwprintf
@ stub _scwprintf_l
@ stub _scwprintf_p
@ stub _scwprintf_p_l
@ cdecl _searchenv(str str ptr) msvcrt._searchenv
@ cdecl _searchenv_s(str str ptr long) msvcrt._searchenv_s
@ stdcall -arch=i386 _seh_longjmp_unwind4(ptr) msvcrt._seh_longjmp_unwind4
@ stdcall -arch=i386 _seh_longjmp_unwind(ptr) msvcrt._seh_longjmp_unwind
@ cdecl _set_SSE2_enable(long) msvcrt._set_SSE2_enable
@ cdecl _set_abort_behavior(long long) msvcrt._set_abort_behavior
@ stub _set_amblksiz
@ cdecl _set_controlfp(long long) msvcrt._set_controlfp
@ cdecl _set_doserrno(long) msvcrt._set_doserrno
@ cdecl _set_errno(long) msvcrt._set_errno
@ cdecl _set_error_mode(long) msvcrt._set_error_mode
@ cdecl _set_fmode(long) msvcrt._set_fmode
@ cdecl _set_invalid_parameter_handler(ptr) msvcrt._set_invalid_parameter_handler
@ stub _set_malloc_crt_max_wait
@ cdecl _set_output_format(long) msvcrt._set_output_format
@ cdecl _set_printf_count_output(long) msvcrt._set_printf_count_output
@ cdecl _set_purecall_handler(ptr) msvcrt._set_purecall_handler
@ cdecl _set_sbh_threshold(long) msvcrt._set_sbh_threshold
@ cdecl _seterrormode(long) msvcrt._seterrormode
@ cdecl -arch=i386,x86_64,arm -norelay _setjmp(ptr) msvcrt._setjmp
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) msvcrt._setjmp3
@ cdecl -arch=x86_64,arm -norelay _setjmpex(ptr ptr) msvcrt._setjmpex
@ cdecl _setmaxstdio(long) msvcrt._setmaxstdio
@ cdecl _setmbcp(long) msvcrt._setmbcp
@ cdecl _setmode(long long) msvcrt._setmode
@ cdecl _setsystime(ptr long) msvcrt._setsystime
@ cdecl _sleep(long) msvcrt._sleep
@ varargs _snprintf(ptr long str) msvcrt._snprintf
@ stub _snprintf_c
@ stub _snprintf_c_l
@ stub _snprintf_l
@ varargs _snprintf_s(ptr long long str) msvcrt._snprintf_s
@ stub _snprintf_s_l
@ varargs _snscanf(str long str) msvcrt._snscanf
@ varargs _snscanf_l(str long str ptr) msvcrt._snscanf_l
@ varargs _snscanf_s(str long str) msvcrt._snscanf_s
@ varargs _snscanf_s_l(str long str ptr) msvcrt._snscanf_s_l
@ varargs _snwprintf(ptr long wstr) msvcrt._snwprintf
@ varargs _snwprintf_l(ptr long wstr ptr) msvcrt._snwprintf_l
@ varargs _snwprintf_s(ptr long long wstr) msvcrt._snwprintf_s
@ varargs _snwprintf_s_l(ptr long long wstr ptr) msvcrt._snwprintf_s_l
@ varargs _snwscanf(wstr long wstr) msvcrt._snwscanf
@ varargs _snwscanf_l(wstr long wstr ptr) msvcrt._snwscanf_l
@ varargs _snwscanf_s(wstr long wstr) msvcrt._snwscanf_s
@ varargs _snwscanf_s_l(wstr long wstr ptr) msvcrt._snwscanf_s_l
@ varargs _sopen(str long long) msvcrt._sopen
@ cdecl _sopen_s(ptr str long long long) msvcrt._sopen_s
@ varargs _spawnl(long str str) msvcrt._spawnl
@ varargs _spawnle(long str str) msvcrt._spawnle
@ varargs _spawnlp(long str str) msvcrt._spawnlp
@ varargs _spawnlpe(long str str) msvcrt._spawnlpe
@ cdecl _spawnv(long str ptr) msvcrt._spawnv
@ cdecl _spawnve(long str ptr ptr) msvcrt._spawnve
@ cdecl _spawnvp(long str ptr) msvcrt._spawnvp
@ cdecl _spawnvpe(long str ptr ptr) msvcrt._spawnvpe
@ cdecl _splitpath(str ptr ptr ptr ptr) msvcrt._splitpath
@ cdecl _splitpath_s(str ptr long ptr long ptr long ptr long) msvcrt._splitpath_s
@ stub _sprintf_l
@ varargs _sprintf_p(ptr long str) msvcr100._sprintf_p
@ varargs _sprintf_p_l(ptr long str ptr) msvcrt._sprintf_p_l
@ stub _sprintf_s_l
@ varargs _sscanf_l(str str ptr) msvcrt._sscanf_l
@ varargs _sscanf_s_l(str str ptr) msvcrt._sscanf_s_l
@ cdecl _stat32(str ptr) msvcr100._stat32
@ cdecl _stat32i64(str ptr) msvcr100._stat32i64
@ cdecl _stat64(str ptr) msvcrt._stat64
@ cdecl _stat64i32(str ptr) msvcr100._stat64i32
@ cdecl _statusfp() msvcrt._statusfp
@ cdecl -arch=i386 _statusfp2(ptr ptr) msvcrt._statusfp2
@ cdecl _strcoll_l(str str ptr) msvcrt._strcoll_l
@ cdecl _strdate(ptr) msvcrt._strdate
@ cdecl _strdate_s(ptr long) msvcrt._strdate_s
@ cdecl _strdup(str) msvcrt._strdup
@ cdecl _strerror(long) msvcrt._strerror
@ stub _strerror_s
@ stub _strftime_l
@ cdecl _stricmp(str str) msvcrt._stricmp
@ cdecl _stricmp_l(str str ptr) msvcrt._stricmp_l
@ cdecl _stricoll(str str) msvcrt._stricoll
@ cdecl _stricoll_l(str str ptr) msvcrt._stricoll_l
@ cdecl _strlwr(str) msvcrt._strlwr
@ cdecl _strlwr_l(str ptr) msvcrt._strlwr_l
@ cdecl _strlwr_s(ptr long) msvcrt._strlwr_s
@ cdecl _strlwr_s_l(ptr long ptr) msvcrt._strlwr_s_l
@ cdecl _strncoll(str str long) msvcrt._strncoll
@ cdecl _strncoll_l(str str long ptr) msvcrt._strncoll_l
@ cdecl _strnicmp(str str long) msvcrt._strnicmp
@ cdecl _strnicmp_l(str str long ptr) msvcrt._strnicmp_l
@ cdecl _strnicoll(str str long) msvcrt._strnicoll
@ cdecl _strnicoll_l(str str long ptr) msvcrt._strnicoll_l
@ cdecl _strnset(str long long) msvcrt._strnset
@ stub _strnset_s
@ cdecl _strrev(str) msvcrt._strrev
@ cdecl _strset(str long) msvcrt._strset
@ stub _strset_s
@ cdecl _strtime(ptr) msvcrt._strtime
@ cdecl _strtime_s(ptr long) msvcrt._strtime_s
@ cdecl _strtod_l(str ptr ptr) msvcrt._strtod_l
@ cdecl -ret64 _strtoi64(str ptr long) msvcrt._strtoi64
@ cdecl -ret64 _strtoi64_l(str ptr long ptr) msvcrt._strtoi64_l
@ stub _strtol_l
@ cdecl -ret64 _strtoui64(str ptr long) msvcrt._strtoui64
@ cdecl -ret64 _strtoui64_l(str ptr long ptr) msvcrt._strtoui64_l
@ stub _strtoul_l
@ cdecl _strupr(str) msvcrt._strupr
@ cdecl _strupr_l(str ptr) msvcrt._strupr_l
@ cdecl _strupr_s(str long) msvcrt._strupr_s
@ cdecl _strupr_s_l(str long ptr) msvcrt._strupr_s_l
@ stub _strxfrm_l
@ cdecl _swab(str str long) msvcrt._swab
@ varargs _swprintf(ptr wstr) msvcrt._swprintf
@ stub _swprintf_c
@ stub _swprintf_p
@ varargs _swprintf_p_l(ptr long wstr ptr) msvcrt._swprintf_p_l
@ varargs _swprintf_s_l(ptr long wstr ptr) msvcrt._swprintf_s_l
@ varargs _swscanf_l(wstr wstr ptr) msvcrt._swscanf_l
@ varargs _swscanf_s_l(wstr wstr ptr) msvcrt._swscanf_s_l
@ extern _sys_errlist msvcrt._sys_errlist
@ extern _sys_nerr msvcrt._sys_nerr
@ cdecl _tell(long) msvcrt._tell
@ cdecl -ret64 _telli64(long) msvcrt._telli64
@ cdecl _tempnam(str str) msvcrt._tempnam
@ cdecl _time32(ptr) msvcrt._time32
@ cdecl _time64(ptr) msvcrt._time64
@ extern _timezone msvcrt._timezone
@ cdecl _tolower(long) msvcrt._tolower
@ cdecl _tolower_l(long ptr) msvcrt._tolower_l
@ cdecl _toupper(long) msvcrt._toupper
@ cdecl _toupper_l(long ptr) msvcrt._toupper_l
@ cdecl _towlower_l(long ptr) msvcrt._towlower_l
@ cdecl _towupper_l(long ptr) msvcrt._towupper_l
@ extern _tzname msvcrt._tzname
@ cdecl _tzset() msvcrt._tzset
@ cdecl _ui64toa(int64 ptr long) msvcrt._ui64toa
@ cdecl _ui64toa_s(int64 ptr long long) msvcrt._ui64toa_s
@ cdecl _ui64tow(int64 ptr long) msvcrt._ui64tow
@ cdecl _ui64tow_s(int64 ptr long long) msvcrt._ui64tow_s
@ cdecl _ultoa(long ptr long) msvcrt._ultoa
@ cdecl _ultoa_s(long ptr long long) msvcrt._ultoa_s
@ cdecl _ultow(long ptr long) msvcrt._ultow
@ cdecl _ultow_s(long ptr long long) msvcrt._ultow_s
@ cdecl _umask(long) msvcrt._umask
@ stub _umask_s
@ stub _ungetc_nolock
@ cdecl _ungetch(long) msvcrt._ungetch
@ stub _ungetch_nolock
@ stub _ungetwc_nolock
@ stub _ungetwch
@ stub _ungetwch_nolock
@ cdecl _unlink(str) msvcrt._unlink
@ cdecl _unloaddll(long) msvcrt._unloaddll
@ cdecl _unlock(long) msvcrt._unlock
@ cdecl _unlock_file(ptr) msvcrt._unlock_file
@ cdecl _utime32(str ptr) msvcrt._utime32
@ cdecl _utime64(str ptr) msvcrt._utime64
@ cdecl _vcprintf(str ptr) msvcrt._vcprintf
@ stub _vcprintf_l
@ stub _vcprintf_p
@ stub _vcprintf_p_l
@ stub _vcprintf_s
@ stub _vcprintf_s_l
@ cdecl _vcwprintf(wstr ptr) msvcrt._vcwprintf
@ stub _vcwprintf_l
@ stub _vcwprintf_p
@ stub _vcwprintf_p_l
@ stub _vcwprintf_s
@ stub _vcwprintf_s_l
@ stub _vfprintf_l
@ stub _vfprintf_p
@ stub _vfprintf_p_l
@ stub _vfprintf_s_l
@ cdecl _vfwprintf_l(ptr wstr ptr ptr) msvcrt._vfwprintf_l
@ stub _vfwprintf_p
@ stub _vfwprintf_p_l
@ stub _vfwprintf_s_l
@ stub _vprintf_l
@ stub _vprintf_p
@ stub _vprintf_p_l
@ stub _vprintf_s_l
@ cdecl _vscprintf(str ptr) msvcrt._vscprintf
@ stub _vscprintf_l
@ stub _vscprintf_p
@ stub _vscprintf_p_l
@ cdecl _vscwprintf(wstr ptr) msvcrt._vscwprintf
@ cdecl _vscwprintf_l(wstr ptr ptr) msvcrt._vscwprintf_l
@ cdecl _vscwprintf_p(wstr ptr) msvcr100._vscwprintf_p
@ cdecl _vscwprintf_p_l(wstr ptr ptr) msvcrt._vscwprintf_p_l
@ cdecl _vsnprintf(ptr long str ptr) msvcrt._vsnprintf
@ cdecl _vsnprintf_c(ptr long str ptr) msvcrt._vsnprintf_c
@ cdecl _vsnprintf_c_l(ptr long str ptr ptr) msvcrt._vsnprintf_c_l
@ cdecl _vsnprintf_l(ptr long str ptr ptr) msvcrt._vsnprintf_l
@ cdecl _vsnprintf_s(ptr long long str ptr) msvcrt._vsnprintf_s
@ cdecl _vsnprintf_s_l(ptr long long str ptr ptr) msvcrt._vsnprintf_s_l
@ cdecl _vsnwprintf(ptr long wstr ptr) msvcrt._vsnwprintf
@ cdecl _vsnwprintf_l(ptr long wstr ptr ptr) msvcrt._vsnwprintf_l
@ cdecl _vsnwprintf_s(ptr long long wstr ptr) msvcrt._vsnwprintf_s
@ cdecl _vsnwprintf_s_l(ptr long long wstr ptr ptr) msvcrt._vsnwprintf_s_l
@ stub _vsprintf_l
@ cdecl _vsprintf_p(ptr long str ptr) msvcrt._vsprintf_p
@ cdecl _vsprintf_p_l(ptr long str ptr ptr) msvcrt._vsprintf_p_l
@ stub _vsprintf_s_l
@ cdecl _vswprintf(ptr wstr ptr) msvcrt._vswprintf
@ cdecl _vswprintf_c(ptr long wstr ptr) msvcrt._vswprintf_c
@ cdecl _vswprintf_c_l(ptr long wstr ptr ptr) msvcrt._vswprintf_c_l
@ cdecl _vswprintf_l(ptr wstr ptr ptr) msvcrt._vswprintf_l
@ cdecl _vswprintf_p(ptr long wstr ptr) msvcr100._vswprintf_p
@ cdecl _vswprintf_p_l(ptr long wstr ptr ptr) msvcrt._vswprintf_p_l
@ cdecl _vswprintf_s_l(ptr long wstr ptr ptr) msvcrt._vswprintf_s_l
@ stub _vwprintf_l
@ stub _vwprintf_p
@ stub _vwprintf_p_l
@ stub _vwprintf_s_l
@ cdecl _waccess(wstr long) msvcrt._waccess
@ cdecl _waccess_s(wstr long) msvcrt._waccess_s
@ cdecl _wasctime(ptr) msvcrt._wasctime
@ cdecl _wasctime_s(ptr long ptr) msvcrt._wasctime_s
@ cdecl _wassert(wstr wstr long) msvcrt._wassert
@ cdecl _wchdir(wstr) msvcrt._wchdir
@ cdecl _wchmod(wstr long) msvcrt._wchmod
@ extern _wcmdln msvcrt._wcmdln
@ cdecl _wcreat(wstr long) msvcrt._wcreat
@ cdecl _wcscoll_l(wstr wstr ptr) msvcrt._wcscoll_l
@ cdecl _wcsdup(wstr) msvcrt._wcsdup
@ cdecl _wcserror(long) msvcrt._wcserror
@ cdecl _wcserror_s(ptr long long) msvcrt._wcserror_s
@ stub _wcsftime_l
@ cdecl _wcsicmp(wstr wstr) msvcrt._wcsicmp
@ cdecl _wcsicmp_l(wstr wstr ptr) msvcrt._wcsicmp_l
@ cdecl _wcsicoll(wstr wstr) msvcrt._wcsicoll
@ cdecl _wcsicoll_l(wstr wstr ptr) msvcrt._wcsicoll_l
@ cdecl _wcslwr(wstr) msvcrt._wcslwr
@ stub _wcslwr_l
@ cdecl _wcslwr_s(wstr long) msvcrt._wcslwr_s
@ stub _wcslwr_s_l
@ cdecl _wcsncoll(wstr wstr long) msvcrt._wcsncoll
@ cdecl _wcsncoll_l(wstr wstr long ptr) msvcrt._wcsncoll_l
@ cdecl _wcsnicmp(wstr wstr long) msvcrt._wcsnicmp
@ stub _wcsnicmp_l
@ cdecl _wcsnicoll(wstr wstr long) msvcrt._wcsnicoll
@ cdecl _wcsnicoll_l(wstr wstr long ptr) msvcrt._wcsnicoll_l
@ cdecl _wcsnset(wstr long long) msvcrt._wcsnset
@ stub _wcsnset_s
@ cdecl _wcsrev(wstr) msvcrt._wcsrev
@ cdecl _wcsset(wstr long) msvcrt._wcsset
@ stub _wcsset_s
@ cdecl _wcstod_l(wstr ptr) msvcrt._wcstod_l
@ cdecl -ret64 _wcstoi64(wstr ptr long) msvcrt._wcstoi64
@ cdecl -ret64 _wcstoi64_l(wstr ptr long ptr) msvcrt._wcstoi64_l
@ cdecl _wcstol_l(wstr ptr long ptr) msvcrt._wcstol_l
@ cdecl _wcstombs_l(ptr ptr long ptr) msvcrt._wcstombs_l
@ cdecl _wcstombs_s_l(ptr ptr long wstr long ptr) msvcrt._wcstombs_s_l
@ cdecl -ret64 _wcstoui64(wstr ptr long) msvcrt._wcstoui64
@ cdecl -ret64 _wcstoui64_l(wstr ptr long ptr) msvcrt._wcstoui64_l
@ cdecl _wcstoul_l(wstr ptr long ptr) msvcrt._wcstoul_l
@ cdecl _wcsupr(wstr) msvcrt._wcsupr
@ stub _wcsupr_l
@ cdecl _wcsupr_s(wstr long) msvcrt._wcsupr_s
@ cdecl _wcsupr_s_l(wstr long ptr) msvcrt._wcsupr_s_l
@ stub _wcsxfrm_l
@ cdecl _wctime32(ptr) msvcrt._wctime32
@ stub _wctime32_s
@ cdecl _wctime64(ptr) msvcrt._wctime64
@ stub _wctime64_s
@ cdecl _wctomb_l(ptr long ptr) msvcrt._wctomb_l
@ cdecl _wctomb_s_l(ptr ptr long long ptr) msvcrt._wctomb_s_l
# extern _wctype
@ cdecl _wdupenv_s(ptr ptr wstr) msvcrt._wdupenv_s
@ extern _wenviron msvcrt._wenviron
@ varargs _wexecl(wstr wstr) msvcrt._wexecl
@ varargs _wexecle(wstr wstr) msvcrt._wexecle
@ varargs _wexeclp(wstr wstr) msvcrt._wexeclp
@ varargs _wexeclpe(wstr wstr) msvcrt._wexeclpe
@ cdecl _wexecv(wstr ptr) msvcrt._wexecv
@ cdecl _wexecve(wstr ptr ptr) msvcrt._wexecve
@ cdecl _wexecvp(wstr ptr) msvcrt._wexecvp
@ cdecl _wexecvpe(wstr ptr ptr) msvcrt._wexecvpe
@ cdecl _wfdopen(long wstr) msvcrt._wfdopen
@ cdecl _wfindfirst32(wstr ptr) msvcrt._wfindfirst32
@ stub _wfindfirst32i64
@ cdecl _wfindfirst64(wstr ptr) msvcrt._wfindfirst64
@ cdecl _wfindfirst64i32(wstr ptr) msvcrt._wfindfirst64i32
@ stub _wfindnext32
@ stub _wfindnext32i64
@ cdecl _wfindnext64(long ptr) msvcrt._wfindnext64
@ cdecl _wfindnext64i32(long ptr) msvcrt._wfindnext64i32
@ cdecl _wfopen(wstr wstr) msvcrt._wfopen
@ cdecl _wfopen_s(ptr wstr wstr) msvcrt._wfopen_s
@ cdecl _wfreopen(wstr wstr ptr) msvcrt._wfreopen
@ cdecl _wfreopen_s(ptr wstr wstr ptr) msvcrt._wfreopen_s
@ cdecl _wfsopen(wstr wstr long) msvcrt._wfsopen
@ cdecl _wfullpath(ptr wstr long) msvcrt._wfullpath
@ cdecl _wgetcwd(wstr long) msvcrt._wgetcwd
@ cdecl _wgetdcwd(long wstr long) msvcrt._wgetdcwd
@ stub _wgetdcwd_nolock
@ cdecl _wgetenv(wstr) msvcrt._wgetenv
@ cdecl _wgetenv_s(ptr ptr long wstr) msvcrt._wgetenv_s
@ extern _winmajor msvcrt._winmajor
@ extern _winminor msvcrt._winminor
@ extern _winver msvcrt._winver
@ cdecl _wmakepath(ptr wstr wstr wstr wstr) msvcrt._wmakepath
@ cdecl _wmakepath_s(ptr long wstr wstr wstr wstr) msvcrt._wmakepath_s
@ cdecl _wmkdir(wstr) msvcrt._wmkdir
@ cdecl _wmktemp(wstr) msvcrt._wmktemp
@ cdecl _wmktemp_s(wstr long) msvcrt._wmktemp_s
@ varargs _wopen(wstr long) msvcrt._wopen
@ cdecl _wperror(wstr) msvcrt._wperror
@ extern _wpgmptr msvcrt._wpgmptr
@ cdecl _wpopen(wstr wstr) msvcrt._wpopen
@ stub _wprintf_l
@ stub _wprintf_p
@ stub _wprintf_p_l
@ stub _wprintf_s_l
@ cdecl _wputenv(wstr) msvcrt._wputenv
@ cdecl _wputenv_s(wstr wstr) msvcrt._wputenv_s
@ cdecl _wremove(wstr) msvcrt._wremove
@ cdecl _wrename(wstr wstr) msvcrt._wrename
@ cdecl _write(long ptr long) msvcrt._write
@ cdecl _wrmdir(wstr) msvcrt._wrmdir
@ varargs _wscanf_l(wstr ptr) msvcrt._wscanf_l
@ varargs _wscanf_s_l(wstr ptr) msvcrt._wscanf_s_l
@ cdecl _wsearchenv(wstr wstr ptr) msvcrt._wsearchenv
@ cdecl _wsearchenv_s(wstr wstr ptr long) msvcrt._wsearchenv_s
@ cdecl _wsetlocale(long wstr) msvcrt._wsetlocale
@ varargs _wsopen(wstr long long) msvcrt._wsopen
@ cdecl _wsopen_s(ptr wstr long long long) msvcrt._wsopen_s
@ varargs _wspawnl(long wstr wstr) msvcrt._wspawnl
@ varargs _wspawnle(long wstr wstr) msvcrt._wspawnle
@ varargs _wspawnlp(long wstr wstr) msvcrt._wspawnlp
@ varargs _wspawnlpe(long wstr wstr) msvcrt._wspawnlpe
@ cdecl _wspawnv(long wstr ptr) msvcrt._wspawnv
@ cdecl _wspawnve(long wstr ptr ptr) msvcrt._wspawnve
@ cdecl _wspawnvp(long wstr ptr) msvcrt._wspawnvp
@ cdecl _wspawnvpe(long wstr ptr ptr) msvcrt._wspawnvpe
@ cdecl _wsplitpath(wstr ptr ptr ptr ptr) msvcrt._wsplitpath
@ cdecl _wsplitpath_s(wstr ptr long ptr long ptr long ptr long) msvcrt._wsplitpath_s
@ cdecl _wstat32(wstr ptr) msvcr100._wstat32
@ cdecl _wstat32i64(wstr ptr) msvcr100._wstat32i64
@ cdecl _wstat64(wstr ptr) msvcrt._wstat64
@ cdecl _wstat64i32(wstr ptr) msvcr100._wstat64i32
@ cdecl _wstrdate(ptr) msvcrt._wstrdate
@ cdecl _wstrdate_s(ptr long) msvcrt._wstrdate_s
@ cdecl _wstrtime(ptr) msvcrt._wstrtime
@ cdecl _wstrtime_s(ptr long) msvcrt._wstrtime_s
@ cdecl _wsystem(wstr) msvcrt._wsystem
@ cdecl _wtempnam(wstr wstr) msvcrt._wtempnam
@ cdecl _wtmpnam(ptr) msvcrt._wtmpnam
@ stub _wtmpnam_s
@ cdecl _wtof(wstr) msvcrt._wtof
@ cdecl _wtof_l(wstr ptr) msvcrt._wtof_l
@ cdecl _wtoi(wstr) msvcrt._wtoi
@ cdecl -ret64 _wtoi64(wstr) msvcrt._wtoi64
@ stub _wtoi64_l
@ cdecl _wtoi_l(wstr ptr) msvcrt._wtoi_l
@ cdecl _wtol(wstr) msvcrt._wtol
@ cdecl _wtol_l(wstr ptr) msvcrt._wtol_l
@ cdecl _wunlink(wstr) msvcrt._wunlink
@ cdecl _wutime32(wstr ptr) msvcrt._wutime32
@ cdecl _wutime64(wstr ptr) msvcrt._wutime64
@ cdecl _y0(double) msvcrt._y0
@ cdecl _y1(double) msvcrt._y1
@ cdecl _yn(long double) msvcrt._yn
@ cdecl abort() msvcrt.abort
@ cdecl abs(long) msvcrt.abs
@ cdecl acos(double) msvcrt.acos
@ cdecl -arch=arm,x86_64 acosf(float) msvcrt.acosf
@ cdecl asctime(ptr) msvcrt.asctime
@ cdecl asctime_s(ptr long ptr) msvcrt.asctime_s
@ cdecl asin(double) msvcrt.asin
@ cdecl -arch=arm,x86_64 asinf(float) msvcrt.asinf
@ cdecl atan(double) msvcrt.atan
@ cdecl -arch=arm,x86_64 atanf(float) msvcrt.atanf
@ cdecl atan2(double double) msvcrt.atan2
@ cdecl -arch=arm,x86_64 atan2f(float float) msvcrt.atan2f
@ cdecl atexit(ptr) msvcrt.atexit
@ cdecl atof(str) msvcrt.atof
@ cdecl atoi(str) msvcr100.atoi #don't forward to msvcrt
@ cdecl atol(str) msvcrt.atol
@ cdecl bsearch(ptr ptr long long ptr) msvcrt.bsearch
@ cdecl bsearch_s(ptr ptr long long ptr ptr) msvcrt.bsearch_s
@ cdecl btowc(long) msvcrt.btowc
@ cdecl calloc(long long) msvcrt.calloc
@ cdecl ceil(double) msvcrt.ceil
@ cdecl -arch=arm,x86_64 ceilf(float) msvcrt.ceilf
@ cdecl clearerr(ptr) msvcrt.clearerr
@ stub clearerr_s
@ cdecl clock() msvcrt.clock
@ cdecl cos(double) msvcrt.cos
@ cdecl -arch=arm,x86_64 cosf(float) msvcrt.cosf
@ cdecl cosh(double) msvcrt.cosh
@ cdecl -arch=arm,x86_64 coshf(float) msvcrt.coshf
@ cdecl -ret64 div(long long) msvcrt.div
@ cdecl exit(long) msvcrt.exit
@ cdecl exp(double) msvcrt.exp
@ cdecl -arch=arm,x86_64 expf(float) msvcrt.expf
@ cdecl fabs(double) msvcrt.fabs
@ cdecl fclose(ptr) msvcrt.fclose
@ cdecl feof(ptr) msvcrt.feof
@ cdecl ferror(ptr) msvcrt.ferror
@ cdecl fflush(ptr) msvcrt.fflush
@ cdecl fgetc(ptr) msvcrt.fgetc
@ cdecl fgetpos(ptr ptr) msvcrt.fgetpos
@ cdecl fgets(ptr long ptr) msvcrt.fgets
@ cdecl fgetwc(ptr) msvcrt.fgetwc
@ cdecl fgetws(ptr long ptr) msvcrt.fgetws
@ cdecl floor(double) msvcrt.floor
@ cdecl -arch=arm,x86_64 floorf(float) msvcrt.floorf
@ cdecl fmod(double double) msvcrt.fmod
@ cdecl -arch=arm,x86_64 fmodf(float float) msvcrt.fmodf
@ cdecl fopen(str str) msvcrt.fopen
@ cdecl fopen_s(ptr str str) msvcrt.fopen_s
@ varargs fprintf(ptr str) msvcrt.fprintf
@ varargs fprintf_s(ptr str) msvcrt.fprintf_s
@ cdecl fputc(long ptr) msvcrt.fputc
@ cdecl fputs(str ptr) msvcrt.fputs
@ cdecl fputwc(long ptr) msvcrt.fputwc
@ cdecl fputws(wstr ptr) msvcrt.fputws
@ cdecl fread(ptr long long ptr) msvcrt.fread
@ cdecl fread_s(ptr long long long ptr) msvcrt.fread_s
@ cdecl free(ptr) msvcrt.free
@ cdecl freopen(str str ptr) msvcrt.freopen
@ cdecl freopen_s(ptr str str ptr) msvcrt.freopen_s
@ cdecl frexp(double ptr) msvcrt.frexp
@ varargs fscanf(ptr str) msvcrt.fscanf
@ varargs fscanf_s(ptr str) msvcrt.fscanf_s
@ cdecl fseek(ptr long long) msvcrt.fseek
@ cdecl fsetpos(ptr ptr) msvcrt.fsetpos
@ cdecl ftell(ptr) msvcrt.ftell
@ varargs fwprintf(ptr wstr) msvcrt.fwprintf
@ varargs fwprintf_s(ptr wstr) msvcrt.fwprintf_s
@ cdecl fwrite(ptr long long ptr) msvcrt.fwrite
@ varargs fwscanf(ptr wstr) msvcrt.fwscanf
@ varargs fwscanf_s(ptr wstr) msvcrt.fwscanf_s
@ cdecl getc(ptr) msvcrt.getc
@ cdecl getchar() msvcrt.getchar
@ cdecl getenv(str) msvcrt.getenv
@ cdecl getenv_s(ptr ptr long str) msvcrt.getenv_s
@ cdecl gets(str) msvcrt.gets
@ stub gets_s
@ cdecl getwc(ptr) msvcrt.getwc
@ cdecl getwchar() msvcrt.getwchar
@ cdecl is_wctype(long long) msvcrt.is_wctype
@ cdecl isalnum(long) msvcrt.isalnum
@ cdecl isalpha(long) msvcrt.isalpha
@ cdecl iscntrl(long) msvcrt.iscntrl
@ cdecl isdigit(long) msvcrt.isdigit
@ cdecl isgraph(long) msvcrt.isgraph
@ cdecl isleadbyte(long) msvcrt.isleadbyte
@ cdecl islower(long) msvcrt.islower
@ cdecl isprint(long) msvcrt.isprint
@ cdecl ispunct(long) msvcrt.ispunct
@ cdecl isspace(long) msvcrt.isspace
@ cdecl isupper(long) msvcrt.isupper
@ cdecl iswalnum(long) msvcrt.iswalnum
@ cdecl iswalpha(long) msvcrt.iswalpha
@ cdecl iswascii(long) msvcrt.iswascii
@ cdecl iswcntrl(long) msvcrt.iswcntrl
@ cdecl iswctype(long long) msvcrt.iswctype
@ cdecl iswdigit(long) msvcrt.iswdigit
@ cdecl iswgraph(long) msvcrt.iswgraph
@ cdecl iswlower(long) msvcrt.iswlower
@ cdecl iswprint(long) msvcrt.iswprint
@ cdecl iswpunct(long) msvcrt.iswpunct
@ cdecl iswspace(long) msvcrt.iswspace
@ cdecl iswupper(long) msvcrt.iswupper
@ cdecl iswxdigit(long) msvcrt.iswxdigit
@ cdecl isxdigit(long) msvcrt.isxdigit
@ cdecl labs(long) msvcrt.labs
@ cdecl ldexp(double long) msvcrt.ldexp
@ cdecl ldiv(long long) msvcrt.ldiv
@ cdecl localeconv() msvcrt.localeconv
@ cdecl log(double) msvcrt.log
@ cdecl -arch=arm,x86_64 logf(float) msvcrt.logf
@ cdecl log10(double) msvcrt.log10
@ cdecl -arch=arm,x86_64 log10f(float) msvcrt.log10f
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) msvcrt.longjmp
@ cdecl malloc(long) msvcrt.malloc
@ cdecl mblen(ptr long) msvcrt.mblen
@ cdecl mbrlen(ptr long ptr) msvcrt.mbrlen
@ cdecl mbrtowc(ptr str long ptr) msvcrt.mbrtowc
@ cdecl mbsrtowcs(ptr ptr long ptr) msvcrt.mbsrtowcs
@ stub mbsrtowcs_s
@ cdecl mbstowcs(ptr str long) msvcrt.mbstowcs
@ cdecl mbstowcs_s(ptr ptr long str long) msvcrt.mbstowcs_s
@ cdecl mbtowc(ptr str long) msvcrt.mbtowc
@ cdecl memchr(ptr long long) msvcrt.memchr
@ cdecl memcmp(ptr ptr long) msvcrt.memcmp
@ cdecl memcpy(ptr ptr long) msvcrt.memcpy
@ cdecl memcpy_s(ptr long ptr long) msvcrt.memcpy_s
@ cdecl memmove(ptr ptr long) msvcrt.memmove
@ cdecl memmove_s(ptr long ptr long) msvcrt.memmove_s
@ cdecl memset(ptr long long) msvcrt.memset
@ cdecl modf(double ptr) msvcrt.modf
@ cdecl -arch=arm,x86_64 modff(float ptr) msvcrt.modff
@ cdecl perror(str) msvcrt.perror
@ cdecl pow(double double) msvcrt.pow
@ cdecl -arch=arm,x86_64 powf(float float) msvcrt.powf
@ varargs printf(str) msvcrt.printf
@ varargs printf_s(str) msvcrt.printf_s
@ cdecl putc(long ptr) msvcrt.putc
@ cdecl putchar(long) msvcrt.putchar
@ cdecl puts(str) msvcrt.puts
@ cdecl putwc(long ptr) msvcrt.putwc
@ cdecl putwchar(long) msvcrt.putwchar
@ cdecl qsort(ptr long long ptr) msvcrt.qsort
@ cdecl qsort_s(ptr long long ptr ptr) msvcrt.qsort_s
@ cdecl raise(long) msvcrt.raise
@ cdecl rand() msvcrt.rand
@ cdecl rand_s(ptr) msvcrt.rand_s
@ cdecl realloc(ptr long) msvcrt.realloc
@ cdecl remove(str) msvcrt.remove
@ cdecl rename(str str) msvcrt.rename
@ cdecl rewind(ptr) msvcrt.rewind
@ varargs scanf(str) msvcrt.scanf
@ varargs scanf_s(str) msvcrt.scanf_s
@ cdecl setbuf(ptr ptr) msvcrt.setbuf
@ cdecl -arch=arm,x86_64 -norelay -private setjmp(ptr) msvcrt.setjmp
@ cdecl setlocale(long str) msvcrt.setlocale
@ cdecl setvbuf(ptr str long long) msvcrt.setvbuf
@ cdecl signal(long long) msvcrt.signal
@ cdecl sin(double) msvcrt.sin
@ cdecl -arch=arm,x86_64 sinf(float) msvcrt.sinf
@ cdecl sinh(double) msvcrt.sinh
@ cdecl -arch=arm,x86_64 sinhf(float) msvcrt.sinhf
@ varargs sprintf(ptr str) msvcrt.sprintf
@ varargs sprintf_s(ptr long str) msvcrt.sprintf_s
@ cdecl sqrt(double) msvcrt.sqrt
@ cdecl -arch=arm,x86_64 sqrtf(float) msvcrt.sqrtf
@ cdecl srand(long) msvcrt.srand
@ varargs sscanf(str str) msvcrt.sscanf
@ varargs sscanf_s(str str) msvcrt.sscanf_s
@ cdecl strcat(str str) msvcrt.strcat
@ cdecl strcat_s(str long str) msvcrt.strcat_s
@ cdecl strchr(str long) msvcrt.strchr
@ cdecl strcmp(str str) msvcrt.strcmp
@ cdecl strcoll(str str) msvcrt.strcoll
@ cdecl strcpy(ptr str) msvcrt.strcpy
@ cdecl strcpy_s(ptr long str) msvcrt.strcpy_s
@ cdecl strcspn(str str) msvcrt.strcspn
@ cdecl strerror(long) msvcrt.strerror
@ cdecl strerror_s(ptr long long) msvcrt.strerror_s
@ cdecl strftime(str long str ptr) msvcrt.strftime
@ cdecl strlen(str) msvcrt.strlen
@ cdecl strncat(str str long) msvcrt.strncat
@ cdecl strncat_s(str long str long) msvcrt.strncat_s
@ cdecl strncmp(str str long) msvcrt.strncmp
@ cdecl strncpy(ptr str long) msvcrt.strncpy
@ cdecl strncpy_s(ptr long str long) msvcrt.strncpy_s
@ cdecl strnlen(str long) msvcrt.strnlen
@ cdecl strpbrk(str str) msvcrt.strpbrk
@ cdecl strrchr(str long) msvcrt.strrchr
@ cdecl strspn(str str) msvcrt.strspn
@ cdecl strstr(str str) msvcrt.strstr
@ cdecl strtod(str ptr) msvcrt.strtod
@ cdecl strtok(str str) msvcrt.strtok
@ cdecl strtok_s(ptr str ptr) msvcrt.strtok_s
@ cdecl strtol(str ptr long) msvcrt.strtol
@ cdecl strtoul(str ptr long) msvcrt.strtoul
@ cdecl strxfrm(ptr str long) msvcrt.strxfrm
@ varargs swprintf_s(ptr long wstr) msvcrt.swprintf_s
@ varargs swscanf(wstr wstr) msvcrt.swscanf
@ varargs swscanf_s(wstr wstr) msvcrt.swscanf_s
@ cdecl system(str) msvcrt.system
@ cdecl tan(double) msvcrt.tan
@ cdecl -arch=arm,x86_64 tanf(float) msvcrt.tanf
@ cdecl tanh(double) msvcrt.tanh
@ cdecl -arch=arm,x86_64 tanhf(float) msvcrt.tanhf
@ cdecl tmpfile() msvcrt.tmpfile
@ cdecl tmpfile_s(ptr) msvcrt.tmpfile_s
@ cdecl tmpnam(ptr) msvcrt.tmpnam
@ stub tmpnam_s
@ cdecl tolower(long) msvcrt.tolower
@ cdecl toupper(long) msvcrt.toupper
@ cdecl towlower(long) msvcrt.towlower
@ cdecl towupper(long) msvcrt.towupper
@ cdecl ungetc(long ptr) msvcrt.ungetc
@ cdecl ungetwc(long ptr) msvcrt.ungetwc
@ cdecl vfprintf(ptr str ptr) msvcrt.vfprintf
@ cdecl vfprintf_s(ptr str ptr) msvcrt.vfprintf_s
@ cdecl vfwprintf(ptr wstr ptr) msvcrt.vfwprintf
@ cdecl vfwprintf_s(ptr wstr ptr) msvcrt.vfwprintf_s
@ cdecl vprintf(str ptr) msvcrt.vprintf
@ cdecl vprintf_s(str ptr) msvcrt.vprintf_s
@ cdecl vsprintf(ptr str ptr) msvcrt.vsprintf
@ cdecl vsprintf_s(ptr long str ptr) msvcrt.vsprintf_s
@ cdecl vswprintf_s(ptr long wstr ptr) msvcrt.vswprintf_s
@ cdecl vwprintf(wstr ptr) msvcrt.vwprintf
@ cdecl vwprintf_s(wstr ptr) msvcrt.vwprintf_s
@ cdecl wcrtomb(ptr long ptr) msvcrt.wcrtomb
@ stub wcrtomb_s
@ cdecl wcscat(wstr wstr) msvcrt.wcscat
@ cdecl wcscat_s(wstr long wstr) msvcrt.wcscat_s
@ cdecl wcschr(wstr long) msvcrt.wcschr
@ cdecl wcscmp(wstr wstr) msvcrt.wcscmp
@ cdecl wcscoll(wstr wstr) msvcrt.wcscoll
@ cdecl wcscpy(ptr wstr) msvcrt.wcscpy
@ cdecl wcscpy_s(ptr long wstr) msvcrt.wcscpy_s
@ cdecl wcscspn(wstr wstr) msvcrt.wcscspn
@ cdecl wcsftime(ptr long wstr ptr) msvcrt.wcsftime
@ cdecl wcslen(wstr) msvcrt.wcslen
@ cdecl wcsncat(wstr wstr long) msvcrt.wcsncat
@ cdecl wcsncat_s(wstr long wstr long) msvcrt.wcsncat_s
@ cdecl wcsncmp(wstr wstr long) msvcrt.wcsncmp
@ cdecl wcsncpy(ptr wstr long) msvcrt.wcsncpy
@ cdecl wcsncpy_s(ptr long wstr long) msvcrt.wcsncpy_s
@ cdecl wcsnlen(wstr long) msvcrt.wcsnlen
@ cdecl wcspbrk(wstr wstr) msvcrt.wcspbrk
@ cdecl wcsrchr(wstr long) msvcrt.wcsrchr
@ cdecl wcsrtombs(ptr ptr long ptr) msvcrt.wcsrtombs
@ cdecl wcsrtombs_s(ptr ptr long ptr long ptr) msvcrt.wcsrtombs_s
@ cdecl wcsspn(wstr wstr) msvcrt.wcsspn
@ cdecl wcsstr(wstr wstr) msvcrt.wcsstr
@ cdecl wcstod(wstr ptr) msvcrt.wcstod
@ cdecl wcstok(wstr wstr) msvcrt.wcstok
@ cdecl wcstok_s(ptr wstr ptr) msvcrt.wcstok_s
@ cdecl wcstol(wstr ptr long) msvcrt.wcstol
@ cdecl wcstombs(ptr ptr long) msvcrt.wcstombs
@ cdecl wcstombs_s(ptr ptr long wstr long) msvcrt.wcstombs_s
@ cdecl wcstoul(wstr ptr long) msvcrt.wcstoul
@ cdecl wcsxfrm(ptr wstr long) msvcrt.wcsxfrm
@ cdecl wctob(long) msvcrt.wctob
@ cdecl wctomb(ptr long) msvcrt.wctomb
@ cdecl wctomb_s(ptr ptr long long) msvcrt.wctomb_s
@ varargs wprintf(wstr) msvcrt.wprintf
@ varargs wprintf_s(wstr) msvcrt.wprintf_s
@ varargs wscanf(wstr) msvcrt.wscanf
@ varargs wscanf_s(wstr) msvcrt.wscanf_s
