# Old C runtime library. All functions provided by msvcrt

@ 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 ??3@YAXPAX@Z(ptr) msvcrt.??3@YAXPAX@Z
@ cdecl -arch=win64 ??3@YAXPEAX@Z(ptr) msvcrt.??3@YAXPEAX@Z
@ 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 -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
@ extern _HUGE_dll msvcrt._HUGE
@ cdecl _XcptFilter(long ptr) msvcrt._XcptFilter
@ cdecl __GetMainArgs(ptr ptr ptr long)
@ extern __argc_dll msvcrt.__argc
@ extern __argv_dll msvcrt.__argv
@ cdecl __dllonexit(ptr ptr ptr) msvcrt.__dllonexit
@ cdecl __doserrno() msvcrt.__doserrno
@ cdecl __fpecode() msvcrt.__fpecode
@ cdecl __isascii(long) msvcrt.__isascii
@ cdecl __iscsym(long) msvcrt.__iscsym
@ cdecl __iscsymf(long) msvcrt.__iscsymf
@ extern __mb_cur_max_dll msvcrt.__mb_cur_max
@ cdecl __pxcptinfoptrs() msvcrt.__pxcptinfoptrs
@ cdecl __threadhandle() msvcrt.__threadhandle
@ cdecl __threadid() msvcrt.__threadid
@ cdecl __toascii(long) msvcrt.__toascii
@ cdecl _abnormal_termination() msvcrt._abnormal_termination
@ cdecl _access(str long) msvcrt._access
@ extern _acmdln_dll msvcrt._acmdln
@ extern _aexit_rtn_dll msvcrt._aexit_rtn
@ cdecl _amsg_exit(long) msvcrt._amsg_exit
@ cdecl _assert(str str long) msvcrt._assert
@ extern _basemajor_dll CRTDLL__basemajor_dll
@ extern _baseminor_dll CRTDLL__baseminor_dll
@ extern _baseversion_dll CRTDLL__baseversion_dll
@ cdecl _beep(long long) msvcrt._beep
@ cdecl _beginthread(ptr long ptr) msvcrt._beginthread
@ cdecl _c_exit() msvcrt._c_exit
@ cdecl _cabs(long) msvcrt._cabs
@ cdecl _cexit() msvcrt._cexit
@ cdecl _cgets(ptr) msvcrt._cgets
@ cdecl _chdir(str) msvcrt._chdir
@ cdecl _chdrive(long) msvcrt._chdrive
@ cdecl _chgsign(double) msvcrt._chgsign
@ cdecl _chmod(str long) msvcrt._chmod
@ cdecl _chsize(long long) msvcrt._chsize
@ cdecl _clearfp() msvcrt._clearfp
@ cdecl _close(long) msvcrt._close
@ cdecl _commit(long) msvcrt._commit
@ extern _commode_dll msvcrt._commode
@ cdecl _control87(long long) msvcrt._control87
@ cdecl _controlfp(long long) msvcrt._controlfp
@ cdecl _copysign(double double) msvcrt._copysign
@ varargs _cprintf(str) msvcrt._cprintf
@ extern _cpumode_dll CRTDLL__cpumode_dll
@ cdecl _cputs(str) msvcrt._cputs
@ cdecl _creat(str long) msvcrt._creat
@ varargs _cscanf(str) msvcrt._cscanf
@ extern _ctype msvcrt._ctype
@ cdecl _cwait(ptr long long) msvcrt._cwait
@ extern _daylight_dll msvcrt._daylight
@ cdecl _dup(long) msvcrt._dup
@ cdecl _dup2(long long) msvcrt._dup2
@ cdecl _ecvt(double long ptr ptr) msvcrt._ecvt
@ cdecl _endthread() msvcrt._endthread
@ extern _environ_dll msvcrt._environ
@ cdecl _eof(long) msvcrt._eof
@ cdecl _errno() msvcrt._errno
@ cdecl -arch=i386 _except_handler2(ptr ptr ptr ptr) msvcrt._except_handler2
@ 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
@ cdecl _fcloseall() msvcrt._fcloseall
@ cdecl _fcvt(double long ptr ptr) msvcrt._fcvt
@ cdecl _fdopen(long str) msvcrt._fdopen
@ cdecl _fgetchar() msvcrt._fgetchar
@ cdecl _fgetwchar() msvcrt._fgetwchar
@ cdecl _filbuf(ptr) msvcrt._filbuf
@ extern _fileinfo_dll msvcrt._fileinfo
@ cdecl _filelength(long) msvcrt._filelength
@ cdecl _fileno(ptr) msvcrt._fileno
@ cdecl _findclose(long) msvcrt._findclose
@ cdecl _findfirst(str ptr) msvcrt._findfirst
@ cdecl _findnext(long ptr) msvcrt._findnext
@ cdecl _finite(double) msvcrt._finite
@ cdecl _flsbuf(long ptr) msvcrt._flsbuf
@ cdecl _flushall() msvcrt._flushall
@ extern _fmode_dll msvcrt._fmode
@ cdecl _fpclass(double) msvcrt._fpclass
@ cdecl _fpieee_flt(long ptr ptr) msvcrt._fpieee_flt
@ cdecl _fpreset() msvcrt._fpreset
@ cdecl _fputchar(long) msvcrt._fputchar
@ cdecl _fputwchar(long) msvcrt._fputwchar
@ cdecl _fsopen(str str long) msvcrt._fsopen
@ cdecl _fstat(long ptr) CRTDLL__fstat
@ cdecl _ftime(ptr) msvcrt._ftime
@ cdecl -arch=i386 -ret64 _ftol() msvcrt._ftol
@ cdecl _fullpath(ptr str long) msvcrt._fullpath
@ cdecl _futime(long ptr) msvcrt._futime
@ cdecl _gcvt(double long str) msvcrt._gcvt
@ cdecl _get_osfhandle(long) msvcrt._get_osfhandle
@ cdecl _getch() msvcrt._getch
@ cdecl _getche() msvcrt._getche
@ cdecl _getcwd(str long) msvcrt._getcwd
@ cdecl _getdcwd(long str long) msvcrt._getdcwd
@ cdecl _getdiskfree(long ptr) msvcrt._getdiskfree
@ cdecl _getdllprocaddr(long str long) msvcrt._getdllprocaddr
@ cdecl _getdrive() msvcrt._getdrive
@ cdecl _getdrives() msvcrt._getdrives
@ cdecl _getpid() msvcrt._getpid
@ cdecl _getsystime(ptr) msvcrt._getsystime
@ cdecl _getw(ptr) msvcrt._getw
@ cdecl -arch=i386 _global_unwind2(ptr) msvcrt._global_unwind2
@ cdecl _heapchk() msvcrt._heapchk
@ cdecl _heapmin() msvcrt._heapmin
@ cdecl _heapset(long) msvcrt._heapset
@ cdecl _heapwalk(ptr) msvcrt._heapwalk
@ cdecl _hypot(double double) msvcrt._hypot
@ cdecl _initterm(ptr ptr) msvcrt._initterm
@ extern _iob msvcrt._iob
@ cdecl _isatty(long) msvcrt._isatty
@ cdecl _isctype(long long) msvcrt._isctype
@ cdecl _ismbbalnum(long) msvcrt._ismbbalnum
@ cdecl _ismbbalpha(long) msvcrt._ismbbalpha
@ cdecl _ismbbgraph(long) msvcrt._ismbbgraph
@ cdecl _ismbbkalnum(long) msvcrt._ismbbkalnum
@ cdecl _ismbbkana(long) msvcrt._ismbbkana
@ cdecl _ismbbkpunct(long) msvcrt._ismbbkpunct
@ cdecl _ismbblead(long) msvcrt._ismbblead
@ cdecl _ismbbprint(long) msvcrt._ismbbprint
@ cdecl _ismbbpunct(long) msvcrt._ismbbpunct
@ cdecl _ismbbtrail(long) msvcrt._ismbbtrail
@ cdecl _ismbcalpha(long) msvcrt._ismbcalpha
@ cdecl _ismbcdigit(long) msvcrt._ismbcdigit
@ cdecl _ismbchira(long) msvcrt._ismbchira
@ cdecl _ismbckata(long) msvcrt._ismbckata
@ cdecl _ismbcl0(long) msvcrt._ismbcl0
@ cdecl _ismbcl1(long) msvcrt._ismbcl1
@ cdecl _ismbcl2(long) msvcrt._ismbcl2
@ cdecl _ismbclegal(long) msvcrt._ismbclegal
@ cdecl _ismbclower(long) msvcrt._ismbclower
@ cdecl _ismbcprint(long) msvcrt._ismbcprint
@ cdecl _ismbcspace(long) msvcrt._ismbcspace
@ cdecl _ismbcsymbol(long) msvcrt._ismbcsymbol
@ cdecl _ismbcupper(long) msvcrt._ismbcupper
@ cdecl _ismbslead(ptr ptr) msvcrt._ismbslead
@ cdecl _ismbstrail(ptr ptr) msvcrt._ismbstrail
@ cdecl _isnan(double) msvcrt._isnan
@ cdecl _itoa(long ptr long) msvcrt._itoa
@ cdecl _itow(long ptr long) msvcrt._itow
@ 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
@ cdecl _loaddll(str) msvcrt._loaddll
@ cdecl -arch=i386 _local_unwind2(ptr long) msvcrt._local_unwind2
@ cdecl _locking(long long long) msvcrt._locking
@ cdecl _logb(double) msvcrt._logb
@ cdecl _lrotl(long long) msvcrt._lrotl
@ cdecl _lrotr(long long) msvcrt._lrotr
@ cdecl _lsearch(ptr ptr ptr long ptr) msvcrt._lsearch
@ cdecl _lseek(long long long) msvcrt._lseek
@ cdecl _ltoa(long ptr long) msvcrt._ltoa
@ cdecl _ltow(long ptr long) msvcrt._ltow
@ cdecl _makepath(ptr str str str str) msvcrt._makepath
@ cdecl _matherr(ptr) msvcrt._matherr
@ cdecl _mbbtombc(long) msvcrt._mbbtombc
@ cdecl _mbbtype(long long) msvcrt._mbbtype
@ cdecl _mbccpy(ptr str) msvcrt._mbccpy
@ cdecl _mbcjistojms(long) msvcrt._mbcjistojms
@ cdecl _mbcjmstojis(long) msvcrt._mbcjmstojis
@ cdecl _mbclen(ptr) msvcrt._mbclen
@ cdecl _mbctohira(long) msvcrt._mbctohira
@ cdecl _mbctokata(long) msvcrt._mbctokata
@ cdecl _mbctolower(long) msvcrt._mbctolower
@ cdecl _mbctombb(long) msvcrt._mbctombb
@ cdecl _mbctoupper(long) msvcrt._mbctoupper
@ extern _mbctype msvcrt._mbctype
@ cdecl _mbsbtype(str long) msvcrt._mbsbtype
@ cdecl _mbscat(str str) msvcrt._mbscat
@ cdecl _mbschr(str long) msvcrt._mbschr
@ cdecl _mbscmp(str str) msvcrt._mbscmp
@ cdecl _mbscpy(ptr str) msvcrt._mbscpy
@ cdecl _mbscspn(str str) msvcrt._mbscspn
@ cdecl _mbsdec(ptr ptr) msvcrt._mbsdec
@ cdecl _mbsdup(str) msvcrt._mbsdup
@ cdecl _mbsicmp(str str) msvcrt._mbsicmp
@ cdecl _mbsinc(str) msvcrt._mbsinc
@ cdecl _mbslen(str) msvcrt._mbslen
@ cdecl _mbslwr(str) msvcrt._mbslwr
@ cdecl _mbsnbcat(str str long) msvcrt._mbsnbcat
@ cdecl _mbsnbcmp(str str long) msvcrt._mbsnbcmp
@ cdecl _mbsnbcnt(ptr long) msvcrt._mbsnbcnt
@ cdecl _mbsnbcpy(ptr str long) msvcrt._mbsnbcpy
@ cdecl _mbsnbicmp(str str long) msvcrt._mbsnbicmp
@ cdecl _mbsnbset(ptr long long) msvcrt._mbsnbset
@ cdecl _mbsncat(str str long) msvcrt._mbsncat
@ cdecl _mbsnccnt(str long) msvcrt._mbsnccnt
@ cdecl _mbsncmp(str str long) msvcrt._mbsncmp
@ cdecl _mbsncpy(ptr str long) msvcrt._mbsncpy
@ cdecl _mbsnextc(str) msvcrt._mbsnextc
@ cdecl _mbsnicmp(str str long) msvcrt._mbsnicmp
@ cdecl _mbsninc(str long) msvcrt._mbsninc
@ cdecl _mbsnset(ptr long long) msvcrt._mbsnset
@ cdecl _mbspbrk(str str) msvcrt._mbspbrk
@ cdecl _mbsrchr(str long) msvcrt._mbsrchr
@ cdecl _mbsrev(str) msvcrt._mbsrev
@ cdecl _mbsset(ptr long) msvcrt._mbsset
@ cdecl _mbsspn(str str) msvcrt._mbsspn
@ cdecl _mbsspnp(str str) msvcrt._mbsspnp
@ cdecl _mbsstr(str str) msvcrt._mbsstr
@ cdecl _mbstok(str str) msvcrt._mbstok
@ cdecl _mbstrlen(str) msvcrt._mbstrlen
@ cdecl _mbsupr(str) msvcrt._mbsupr
@ cdecl _memccpy(ptr ptr long long) msvcrt._memccpy
@ cdecl _memicmp(str str long) msvcrt._memicmp
@ cdecl _mkdir(str) msvcrt._mkdir
@ cdecl _mktemp(str) msvcrt._mktemp
@ 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 _osmajor_dll CRTDLL__osmajor_dll
@ extern _osminor_dll CRTDLL__osminor_dll
@ extern _osmode_dll CRTDLL__osmode_dll
@ extern _osver_dll msvcrt._osver
@ extern _osversion_dll CRTDLL__osversion_dll
@ cdecl _pclose(ptr) msvcrt._pclose
@ extern _pctype_dll msvcrt._pctype
@ extern _pgmptr_dll msvcrt._pgmptr
@ cdecl _pipe(ptr long long) msvcrt._pipe
@ cdecl _popen(str str) msvcrt._popen
@ cdecl _purecall() msvcrt._purecall
@ cdecl _putch(long) msvcrt._putch
@ cdecl _putenv(str) msvcrt._putenv
@ cdecl _putw(long ptr) msvcrt._putw
@ extern _pwctype_dll msvcrt._pwctype
@ cdecl _read(long ptr long) msvcrt._read
@ cdecl _rmdir(str) msvcrt._rmdir
@ cdecl _rmtmp() msvcrt._rmtmp
@ cdecl _rotl(long long) msvcrt._rotl
@ cdecl _rotr(long long) msvcrt._rotr
@ cdecl _scalb(double long) msvcrt._scalb
@ cdecl _searchenv(str str ptr) msvcrt._searchenv
@ cdecl _seterrormode(long) msvcrt._seterrormode
@ cdecl -arch=i386,x86_64,arm -norelay _setjmp(ptr) msvcrt._setjmp
@ cdecl _setmode(long long) msvcrt._setmode
@ cdecl _setsystime(ptr long) msvcrt._setsystime
@ cdecl _sleep(long) msvcrt._sleep
@ varargs _snprintf(ptr long str) msvcrt._snprintf
@ varargs _snwprintf(ptr long wstr) msvcrt._snwprintf
@ varargs _sopen(str long long) msvcrt._sopen
@ 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 _stat(str ptr) CRTDLL__stat
@ cdecl _statusfp() msvcrt._statusfp
@ cdecl _strcmpi(str str) msvcrt._strcmpi
@ cdecl _strdate(ptr) msvcrt._strdate
@ cdecl _strdec(str str)
@ cdecl _strdup(str) msvcrt._strdup
@ cdecl _strerror(long) msvcrt._strerror
@ cdecl _stricmp(str str) msvcrt._stricmp
@ cdecl _stricoll(str str) msvcrt._stricoll
@ cdecl _strinc(str)
@ cdecl _strlwr(str) msvcrt._strlwr
@ cdecl _strncnt(str long)
@ cdecl _strnextc(str)
@ cdecl _strnicmp(str str long) msvcrt._strnicmp
@ cdecl _strninc(str long)
@ cdecl _strnset(str long long) msvcrt._strnset
@ cdecl _strrev(str) msvcrt._strrev
@ cdecl _strset(str long) msvcrt._strset
@ cdecl _strspnp(str str)
@ cdecl _strtime(ptr) msvcrt._strtime
@ cdecl _strupr(str) msvcrt._strupr
@ cdecl _swab(str str long) msvcrt._swab
@ extern _sys_errlist msvcrt._sys_errlist
@ extern _sys_nerr_dll msvcrt._sys_nerr
@ cdecl _tell(long) msvcrt._tell
@ cdecl _tempnam(str str) msvcrt._tempnam
@ extern _timezone_dll msvcrt._timezone
@ cdecl _tolower(long) msvcrt._tolower
@ cdecl _toupper(long) msvcrt._toupper
@ extern _tzname msvcrt._tzname
@ cdecl _tzset() msvcrt._tzset
@ cdecl _ultoa(long ptr long) msvcrt._ultoa
@ cdecl _umask(long) msvcrt._umask
@ cdecl _ungetch(long) msvcrt._ungetch
@ cdecl _unlink(str) msvcrt._unlink
@ cdecl _unloaddll(long) msvcrt._unloaddll
@ cdecl _utime(str ptr) msvcrt._utime
@ cdecl _vsnprintf(ptr long str ptr) msvcrt._vsnprintf
@ cdecl _vsnwprintf(ptr long wstr ptr) msvcrt._vsnwprintf
@ cdecl _wcsdup(wstr) msvcrt._wcsdup
@ cdecl _wcsicmp(wstr wstr) msvcrt._wcsicmp
@ cdecl _wcsicoll(wstr wstr) msvcrt._wcsicoll
@ cdecl _wcslwr(wstr) msvcrt._wcslwr
@ cdecl _wcsnicmp(wstr wstr long) msvcrt._wcsnicmp
@ cdecl _wcsnset(wstr long long) msvcrt._wcsnset
@ cdecl _wcsrev(wstr) msvcrt._wcsrev
@ cdecl _wcsset(wstr long) msvcrt._wcsset
@ cdecl _wcsupr(wstr) msvcrt._wcsupr
@ extern _winmajor_dll msvcrt._winmajor
@ extern _winminor_dll msvcrt._winminor
@ extern _winver_dll msvcrt._winver
@ cdecl _write(long ptr long) msvcrt._write
@ cdecl _wtoi(wstr) msvcrt._wtoi
@ cdecl _wtol(wstr) msvcrt._wtol
@ 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 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 calloc(long long) msvcrt.calloc
@ cdecl ceil(double) msvcrt.ceil
@ cdecl clearerr(ptr) msvcrt.clearerr
@ cdecl clock() msvcrt.clock
@ cdecl cos(double) msvcrt.cos
@ cdecl cosh(double) msvcrt.cosh
@ cdecl ctime(ptr) msvcrt.ctime
@ cdecl difftime(long long) msvcrt.difftime
@ 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 floor(double) msvcrt.floor
@ cdecl fmod(double double) msvcrt.fmod
@ cdecl fopen(str str) msvcrt.fopen
@ varargs fprintf(ptr str) msvcrt.fprintf
@ cdecl fputc(long ptr) msvcrt.fputc
@ cdecl fputs(str ptr) msvcrt.fputs
@ cdecl fputwc(long ptr) msvcrt.fputwc
@ cdecl fread(ptr long long ptr) msvcrt.fread
@ cdecl free(ptr) msvcrt.free
@ cdecl freopen(str str ptr) msvcrt.freopen
@ cdecl frexp(double ptr) msvcrt.frexp
@ varargs fscanf(ptr str) msvcrt.fscanf
@ cdecl fseek(ptr long long) msvcrt.fseek
@ cdecl fsetpos(ptr ptr) msvcrt.fsetpos
@ cdecl ftell(ptr) msvcrt.ftell
@ varargs fwprintf(ptr wstr) msvcrt.fwprintf
@ cdecl fwrite(ptr long long ptr) msvcrt.fwrite
@ varargs fwscanf(ptr wstr) msvcrt.fwscanf
@ cdecl getc(ptr) msvcrt.getc
@ cdecl getchar() msvcrt.getchar
@ cdecl getenv(str) msvcrt.getenv
@ cdecl gets(str) msvcrt.gets
@ cdecl gmtime(ptr) msvcrt.gmtime
@ 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 localtime(ptr) msvcrt.localtime
@ cdecl log(double) msvcrt.log
@ cdecl log10(double) msvcrt.log10
@ cdecl -arch=i386,x86_64,arm longjmp(ptr long) msvcrt.longjmp
@ cdecl malloc(long) msvcrt.malloc
@ cdecl mblen(ptr long) msvcrt.mblen
@ cdecl mbstowcs(ptr str long) msvcrt.mbstowcs
@ 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 memmove(ptr ptr long) msvcrt.memmove
@ cdecl memset(ptr long long) msvcrt.memset
@ cdecl mktime(ptr) msvcrt.mktime
@ cdecl modf(double ptr) msvcrt.modf
@ cdecl perror(str) msvcrt.perror
@ cdecl pow(double double) msvcrt.pow
@ varargs printf(str) msvcrt.printf
@ cdecl putc(long ptr) msvcrt.putc
@ cdecl putchar(long) msvcrt.putchar
@ cdecl puts(str) msvcrt.puts
@ cdecl qsort(ptr long long ptr) msvcrt.qsort
@ cdecl raise(long) msvcrt.raise
@ cdecl rand() msvcrt.rand
@ 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
@ 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
@ cdecl sqrt(double) msvcrt.sqrt
@ cdecl srand(long) msvcrt.srand
@ varargs sscanf(str str) msvcrt.sscanf
@ cdecl strcat(str str) msvcrt.strcat
@ 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 strcspn(str str) msvcrt.strcspn
@ cdecl strerror(long) msvcrt.strerror
@ cdecl strftime(str long str ptr) msvcrt.strftime
@ cdecl strlen(str) msvcrt.strlen
@ cdecl strncat(str str long) msvcrt.strncat
@ cdecl strncmp(str str long) msvcrt.strncmp
@ cdecl strncpy(ptr str long) msvcrt.strncpy
@ 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 strtol(str ptr long) msvcrt.strtol
@ cdecl strtoul(str ptr long) msvcrt.strtoul
@ cdecl strxfrm(ptr str long) msvcrt.strxfrm
@ varargs swprintf(ptr wstr) msvcrt.swprintf
@ varargs swscanf(wstr wstr) msvcrt.swscanf
@ cdecl system(str) msvcrt.system
@ cdecl tan(double) msvcrt.tan
@ cdecl tanh(double) msvcrt.tanh
@ cdecl time(ptr) msvcrt.time
@ cdecl tmpfile() msvcrt.tmpfile
@ cdecl tmpnam(ptr) msvcrt.tmpnam
@ 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 vfwprintf(ptr wstr ptr) msvcrt.vfwprintf
@ cdecl vprintf(str ptr) msvcrt.vprintf
@ cdecl vsprintf(ptr str ptr) msvcrt.vsprintf
@ cdecl vswprintf(ptr wstr ptr) msvcrt.vswprintf
@ cdecl vwprintf(wstr ptr) msvcrt.vwprintf
@ cdecl wcscat(wstr wstr) msvcrt.wcscat
@ 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 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 wcsncmp(wstr wstr long) msvcrt.wcsncmp
@ cdecl wcsncpy(ptr wstr long) msvcrt.wcsncpy
@ cdecl wcspbrk(wstr wstr) msvcrt.wcspbrk
@ cdecl wcsrchr(wstr long) msvcrt.wcsrchr
@ 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 wcstol(wstr ptr long) msvcrt.wcstol
@ cdecl wcstombs(ptr ptr long) msvcrt.wcstombs
@ cdecl wcstoul(wstr ptr long) msvcrt.wcstoul
@ cdecl wcsxfrm(ptr wstr long) msvcrt.wcsxfrm
@ cdecl wctomb(ptr long) msvcrt.wctomb
@ varargs wprintf(wstr) msvcrt.wprintf
@ varargs wscanf(wstr) msvcrt.wscanf
