# MS VC++2005 runtime library

@ thiscall -arch=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??0exception@std@@QAE@XZ(ptr) msvcrt.??0exception@@QAE@XZ
@ cdecl -arch=win64 ??0exception@std@@QEAA@XZ(ptr) msvcrt.??0exception@@QEAA@XZ
@ thiscall -arch=win32 ??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=win32 ??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=win32 ??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=win32 ??1exception@std@@UAE@XZ(ptr) msvcrt.??1exception@@UAE@XZ
@ cdecl -arch=win64 ??1exception@std@@UEAA@XZ(ptr) msvcrt.??1exception@@UEAA@XZ
@ thiscall -arch=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??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=win32 ??_Fbad_cast@std@@QAEXXZ(ptr) msvcrt.??_Fbad_cast@@QAEXXZ
@ cdecl -arch=win64 ??_Fbad_cast@std@@QEAAXXZ(ptr) msvcrt.??_Fbad_cast@@QEAAXXZ
@ thiscall -arch=win32 ??_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=win32 ?_name_internal_method@type_info@@QBEPBDPAU__type_info_node@@@Z(ptr ptr) msvcr90.?_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) msvcr90.?_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=win32 ?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=win32 ?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=win32 ?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) msvcr90._CRT_RTC_INIT
@ cdecl _CRT_RTC_INITW(ptr ptr long long long) msvcr90._CRT_RTC_INITW
@ stub _CreateFrameInfo
@ stdcall _CxxThrowException(long long) msvcrt._CxxThrowException
@ cdecl -i386 -norelay _EH_prolog() msvcrt._EH_prolog
@ stub _FindAndUnlinkFrame
@ cdecl _Getdays() msvcrt._Getdays
@ cdecl _Getmonths() msvcrt._Getmonths
@ cdecl _Gettnames() msvcrt._Gettnames
@ extern _HUGE msvcrt._HUGE
@ stub _IsExceptionObjectToBeDestroyed
@ stub _NLG_Dispatch2
@ stub _NLG_Return
@ stub _NLG_Return2
@ 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 __CppXcptFilter(long ptr) msvcrt.__CppXcptFilter
@ stub __CxxCallUnwindDelDtor
@ stub __CxxCallUnwindDtor
@ stub __CxxCallUnwindStdDelDtor
@ stub __CxxCallUnwindVecDtor
@ cdecl -arch=i386,x86_64 __CxxDetectRethrow(ptr) msvcrt.__CxxDetectRethrow
@ stub __CxxExceptionFilter
@ cdecl -arch=i386,x86_64 -norelay __CxxFrameHandler(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler
@ cdecl -arch=i386,x86_64 -norelay __CxxFrameHandler2(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler2
@ cdecl -arch=i386,x86_64 -norelay __CxxFrameHandler3(ptr ptr ptr ptr) msvcrt.__CxxFrameHandler3
@ stdcall -i386 __CxxLongjmpUnwind(ptr) msvcrt.__CxxLongjmpUnwind
@ cdecl -arch=i386,x86_64 __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) msvcr90.__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 ___fls_getvalue@4
@ stub ___fls_setvalue@8
@ 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
### extern __pioinfo #don't forward to msvcrt.__pioinfo, it has different size
@ 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() msvcr90.__sys_errlist
@ cdecl __sys_nerr() msvcr90.__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
@ stub _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
@ stub _atodbl_l
@ cdecl _atof_l(str ptr) msvcrt._atof_l
@ cdecl _atoflt(ptr str) msvcr90._atoflt
@ cdecl _atoflt_l(ptr str ptr) msvcrt._atoflt_l
@ cdecl -ret64 _atoi64(str) msvcrt._atoi64
@ stub _atoi64_l
@ stub _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) msvcr90._byteswap_uint64
@ cdecl _byteswap_ulong(long) msvcr90._byteswap_ulong
@ cdecl _byteswap_ushort(long) msvcr90._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 -i386 -norelay _chkesp() msvcrt._chkesp
@ cdecl _chmod(str long) msvcrt._chmod
@ cdecl _chsize(long long) msvcrt._chsize
@ stub _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
@ 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 _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) msvcr90._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) msvcr90._encode_pointer
@ cdecl _encoded_null() msvcr90._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 -i386 _except_handler2(ptr ptr ptr ptr) msvcrt._except_handler2
@ cdecl -i386 _except_handler3(ptr ptr ptr ptr) msvcrt._except_handler3
@ cdecl -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 _flsbuf(long ptr) msvcrt._flsbuf
@ cdecl _flushall() msvcrt._flushall
@ extern _fmode msvcrt._fmode
@ cdecl _fpclass(double) msvcrt._fpclass
@ 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) msvcr90._fstat32
@ stub _fstat32i64
@ cdecl _fstat64(long ptr) msvcrt._fstat64
@ cdecl _fstat64i32(long ptr) msvcr90._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 -ret64 _ftol() msvcrt._ftol
@ cdecl _fullpath(ptr str long) msvcrt._fullpath
@ cdecl _futime32(long ptr) msvcrt._futime32
@ cdecl _futime64(long ptr) msvcrt._futime64
@ stub _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
@ stub _get_daylight
@ cdecl _get_doserrno(ptr) msvcrt._get_doserrno
@ stub _get_dstbias
@ cdecl _get_errno(ptr) msvcrt._get_errno
@ stub _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
@ stub _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 -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() msvcr90._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 _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 -i386 _local_unwind2(ptr long) msvcrt._local_unwind2
@ cdecl -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 -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
@ stub _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
@ stub _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
@ stub _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
@ stub _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) msvcrt._mbstok
@ stub _mbstok_l
@ stub _mbstok_s
@ stub _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
@ stub _mktemp_s
@ cdecl _mktime32(ptr) msvcrt._mktime32
@ cdecl _mktime64(ptr) msvcrt._mktime64
@ cdecl _msize(ptr) msvcrt._msize
@ cdecl _nextafter(double double) msvcrt._nextafter
@ 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) msvcr90._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
@ 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 -i386 _seh_longjmp_unwind4(ptr) msvcrt._seh_longjmp_unwind4
@ stdcall -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
@ stub _set_fmode
@ cdecl _set_invalid_parameter_handler(ptr) msvcrt._set_invalid_parameter_handler
@ stub _set_malloc_crt_max_wait
@ stub _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 -norelay _setjmp(ptr) msvcrt._setjmp
@ cdecl -arch=i386 -norelay _setjmp3(ptr long) msvcrt._setjmp3
@ 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
@ stub _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
@ stub _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) msvcr90._stat32
@ stub _stat32i64
@ cdecl _stat64(str ptr) msvcrt._stat64
@ cdecl _stat64i32(str ptr) msvcr90._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
@ stub _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
@ stub _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
@ stub _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
@ stub _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
@ stub _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) msvcr90._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
@ stub _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
@ stub _wcsicmp_l
@ cdecl _wcsicoll(wstr wstr) msvcrt._wcsicoll
@ stub _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
@ stub _wcsncoll_l
@ cdecl _wcsnicmp(wstr wstr long) msvcrt._wcsnicmp
@ stub _wcsnicmp_l
@ cdecl _wcsnicoll(wstr wstr long) msvcrt._wcsnicoll
@ stub _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
@ stub _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
@ stub _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
@ stub _wctomb_l
@ stub _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
@ stub _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
@ stub _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) msvcr90._wstat32
@ stub _wstat32i64
@ cdecl _wstat64(wstr ptr) msvcrt._wstat64
@ cdecl _wstat64i32(wstr ptr) msvcr90._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
@ stub _wtoi_l
@ cdecl _wtol(wstr) msvcrt._wtol
@ stub _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 asctime(ptr) msvcrt.asctime
@ cdecl asctime_s(ptr long ptr) msvcrt.asctime_s
@ cdecl asin(double) msvcrt.asin
@ cdecl atan(double) msvcrt.atan
@ cdecl atan2(double double) msvcrt.atan2
@ cdecl atexit(ptr) msvcrt.atexit
@ cdecl atof(str) msvcrt.atof
@ cdecl atoi(str) msvcrt.atoi
@ 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 clearerr(ptr) msvcrt.clearerr
@ stub clearerr_s
@ cdecl clock() msvcrt.clock
@ cdecl cos(double) msvcrt.cos
@ cdecl cosh(double) msvcrt.cosh
@ cdecl -ret64 div(long long) msvcrt.div
@ cdecl exit(long) msvcrt.exit
@ cdecl exp(double) msvcrt.exp
@ 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 fmod(double double) msvcrt.fmod
@ 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
@ stub 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 log10(double) msvcrt.log10
@ cdecl -arch=i386,x86_64 longjmp(ptr long) msvcrt.longjmp
@ cdecl malloc(long) msvcrt.malloc
@ cdecl mblen(ptr long) msvcrt.mblen
@ stub mbrlen
@ stub mbrtowc
@ stub 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 perror(str) msvcrt.perror
@ cdecl pow(double double) msvcrt.pow
@ 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 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 sinh(double) msvcrt.sinh
@ varargs sprintf(ptr str) msvcrt.sprintf
@ varargs sprintf_s(ptr long str) msvcrt.sprintf_s
@ cdecl sqrt(double) msvcrt.sqrt
@ 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 tanh(double) msvcrt.tanh
@ 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
@ stub 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
@ stub 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
