# Old C runtime library. All functions provided by msvcrt

@ cdecl ??2@YAPAXI@Z(long) msvcrt.??2@YAPAXI@Z
@ cdecl ??3@YAXPAX@Z(ptr) msvcrt.??3@YAXPAX@Z
@ cdecl ?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z(ptr) msvcrt.?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z
@ cdecl _CIacos() msvcrt._CIacos
@ cdecl _CIasin() msvcrt._CIasin
@ cdecl _CIatan() msvcrt._CIatan
@ cdecl _CIatan2() msvcrt._CIatan2
@ cdecl _CIcos() msvcrt._CIcos
@ cdecl _CIcosh() msvcrt._CIcosh
@ cdecl _CIexp() msvcrt._CIexp
@ cdecl _CIfmod() msvcrt._CIfmod
@ cdecl _CIlog() msvcrt._CIlog
@ cdecl _CIlog10() msvcrt._CIlog10
@ cdecl _CIpow() msvcrt._CIpow
@ cdecl _CIsin() msvcrt._CIsin
@ cdecl _CIsinh() msvcrt._CIsinh
@ cdecl _CIsqrt() msvcrt._CIsqrt
@ cdecl _CItan() msvcrt._CItan
@ cdecl _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__basemajor_dll
@ extern _baseversion_dll CRTDLL__basemajor_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(str) 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 _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 str) msvcrt._execv
@ cdecl _execve(str str str) msvcrt._execve
@ cdecl _execvp(str str) msvcrt._execvp
@ cdecl _execvpe(str str str) 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 _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 _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 _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 long 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(str str str str str) msvcrt._makepath
@ cdecl _matherr(ptr) msvcrt._matherr
@ cdecl _mbbtombc(long) msvcrt._mbbtombc
@ cdecl _mbbtype(long long) msvcrt._mbbtype
@ cdecl _mbccpy(str 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(str 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(str str long) msvcrt._mbsncpy
@ cdecl _mbsnextc(str) msvcrt._mbsnextc
@ cdecl _mbsnicmp(str str long) msvcrt._mbsnicmp
@ cdecl _mbsninc(str long) msvcrt._mbsninc
@ cdecl _mbsnset(str long long) msvcrt._mbsnset
@ cdecl _mbspbrk(str str) msvcrt._mbspbrk
@ cdecl _mbsrchr(str long) msvcrt._mbsrchr
@ cdecl _mbsrev(str) msvcrt._mbsrev
@ cdecl _mbsset(str 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 -i386 _setjmp(ptr) msvcrt._setjmp
@ cdecl _setmode(long long) msvcrt._setmode
@ cdecl _setsystime(ptr long) msvcrt._setsystime
@ cdecl _sleep(long) msvcrt._sleep
@ varargs _snprintf(str long str) msvcrt._snprintf
@ varargs _snwprintf(wstr 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 ptr ptr) msvcrt._vsnprintf
@ cdecl _vsnwprintf(ptr long wstr long) 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 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 -i386 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(wstr 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(wstr 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(str) 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 long) msvcrt.vfprintf
@ cdecl vfwprintf(ptr wstr long) msvcrt.vfwprintf
@ cdecl vprintf(str long) msvcrt.vprintf
@ cdecl vsprintf(ptr str ptr) msvcrt.vsprintf
@ cdecl vswprintf(ptr wstr long) msvcrt.vswprintf
@ cdecl vwprintf(wstr long) 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
