| author | |
| committer | |
| log | 7f89b5860c765b76c0ef4f07c214e5110ed59bec |
| tree | f24fbdb9b41445c55c6f515c462842ae95322301 |
| parent | e118484c098264fa930f25f19d66e90c8de269aa |
| signature |
121 files changed, 7523 insertions(+), 5006 deletions(-)
lib/libc/mingw/crt/crt_handler.c+40-197| ... | ... | @@ -13,9 +13,14 @@ |
| 13 | 13 | #include <signal.h> |
| 14 | 14 | #include <stdio.h> |
| 15 | 15 | |
| 16 | EXCEPTION_DISPOSITION __cdecl __mingw_SEH_error_handler(struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *); | |
| 17 | ||
| 18 | #if defined(__x86_64__) && !defined(_MSC_VER) && !defined(__SEH__) | |
| 19 | ||
| 16 | 20 | #pragma pack(push,1) |
| 17 | 21 | typedef struct _UNWIND_INFO { |
| 18 | BYTE VersionAndFlags; | |
| 22 | BYTE Version:3; | |
| 23 | BYTE Flags:5; | |
| 19 | 24 | BYTE PrologSize; |
| 20 | 25 | BYTE CountOfUnwindCodes; |
| 21 | 26 | BYTE FrameRegisterAndOffset; |
| ... | ... | @@ -27,16 +32,11 @@ PIMAGE_SECTION_HEADER _FindPESectionByName (const char *); |
| 27 | 32 | PIMAGE_SECTION_HEADER _FindPESectionExec (size_t); |
| 28 | 33 | PBYTE _GetPEImageBase (void); |
| 29 | 34 | |
| 30 | int __mingw_init_ehandler (void); | |
| 31 | extern void _fpreset (void); | |
| 32 | ||
| 33 | #if defined(__x86_64__) && !defined(_MSC_VER) && !defined(__SEH__) | |
| 34 | EXCEPTION_DISPOSITION __mingw_SEH_error_handler(struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *); | |
| 35 | ||
| 36 | 35 | #define MAX_PDATA_ENTRIES 32 |
| 37 | 36 | static RUNTIME_FUNCTION emu_pdata[MAX_PDATA_ENTRIES]; |
| 38 | 37 | static UNWIND_INFO emu_xdata[MAX_PDATA_ENTRIES]; |
| 39 | 38 | |
| 39 | int __mingw_init_ehandler (void); | |
| 40 | 40 | int |
| 41 | 41 | __mingw_init_ehandler (void) |
| 42 | 42 | { |
| ... | ... | @@ -55,7 +55,8 @@ __mingw_init_ehandler (void) |
| 55 | 55 | /* Fill tables and entries. */ |
| 56 | 56 | while (e < MAX_PDATA_ENTRIES && (pSec = _FindPESectionExec (e)) != NULL) |
| 57 | 57 | { |
| 58 | emu_xdata[e].VersionAndFlags = 9; /* UNW_FLAG_EHANDLER | UNW_VERSION */ | |
| 58 | emu_xdata[e].Version = 1; | |
| 59 | emu_xdata[e].Flags = UNW_FLAG_EHANDLER; | |
| 59 | 60 | emu_xdata[e].AddressOfExceptionHandler = |
| 60 | 61 | 	(DWORD)(size_t) ((LPBYTE)__mingw_SEH_error_handler - _ImageBase); |
| 61 | 62 | emu_pdata[e].BeginAddress = pSec->VirtualAddress; |
| ... | ... | @@ -74,203 +75,45 @@ __mingw_init_ehandler (void) |
| 74 | 75 | return 1; |
| 75 | 76 | } |
| 76 | 77 | |
| 77 | extern void _fpreset (void); | |
| 78 | #endif | |
| 78 | 79 | |
| 79 | EXCEPTION_DISPOSITION | |
| 80 | #if defined(__i386__) | |
| 81 | /* We need to make sure that we align the stack to 16 bytes for the sake of SSE */ | |
| 82 | __attribute__((force_align_arg_pointer)) | |
| 83 | #endif | |
| 84 | EXCEPTION_DISPOSITION __cdecl | |
| 80 | 85 | __mingw_SEH_error_handler (struct _EXCEPTION_RECORD* ExceptionRecord, |
| 81 | 86 | 			 void *EstablisherFrame __attribute__ ((unused)), |
| 82 | 			 struct _CONTEXT* ContextRecord __attribute__ ((unused)), | |
| 87 | 			 struct _CONTEXT* ContextRecord, | |
| 83 | 88 | 			 void *DispatcherContext __attribute__ ((unused))) |
| 84 | 89 | { |
| 85 | EXCEPTION_DISPOSITION action = ExceptionContinueSearch; /* EXCEPTION_CONTINUE_SEARCH; */ | |
| 86 | void (*old_handler) (int); | |
| 87 | int reset_fpu = 0; | |
| 88 | ||
| 89 | switch (ExceptionRecord->ExceptionCode) | |
| 90 | long action; | |
| 91 | ||
| 92 | if (ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING) | |
| 93 | return ExceptionContinueSearch; | |
| 94 | ||
| 95 | /* Despite that the CRT _XcptFilter() function is SEH __except filter function, | |
| 96 | * it directly executes the handler registered by CRT signal() function. Normally | |
| 97 | * the SEH __except handler is called based on the SEH __except filter result. | |
| 98 | * | |
| 99 | * If the CRT signal handler function (called by _XcptFilter() function) returns | |
| 100 | * then the CRT _XcptFilter() returns back to us and the action is set to: | |
| 101 | * EXCEPTION_CONTINUE_EXECUTION - execution of the process should continue | |
| 102 | * EXCEPTION_EXECUTE_HANDLER - execution of the process should be aborted | |
| 103 | * EXCEPTION_CONTINUE_SEARCH - parent SEH handler should be called | |
| 104 | */ | |
| 105 | action = _XcptFilter(ExceptionRecord->ExceptionCode, &(EXCEPTION_POINTERS){.ExceptionRecord = ExceptionRecord, .ContextRecord = ContextRecord}); | |
| 106 | switch (action) | |
| 90 | 107 | { |
| 91 | case EXCEPTION_ACCESS_VIOLATION: | |
| 92 | /* test if the user has set SIGSEGV */ | |
| 93 | old_handler = signal (SIGSEGV, SIG_DFL); | |
| 94 | if (old_handler == SIG_IGN) | |
| 95 | 	{ | |
| 96 | 	 /* this is undefined if the signal was raised by anything other | |
| 97 | 	 than raise (). */ | |
| 98 | 	 signal (SIGSEGV, SIG_IGN); | |
| 99 | 	 action = 0; //EXCEPTION_CONTINUE_EXECUTION; | |
| 100 | 	} | |
| 101 | else if (old_handler != SIG_DFL) | |
| 102 | 	{ | |
| 103 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 104 | 	 (*old_handler) (SIGSEGV); | |
| 105 | 	 action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 106 | 	} | |
| 107 | else | |
| 108 | action = 4; /* EXCEPTION_EXECUTE_HANDLER; */ | |
| 109 | break; | |
| 110 | case EXCEPTION_ILLEGAL_INSTRUCTION: | |
| 111 | case EXCEPTION_PRIV_INSTRUCTION: | |
| 112 | /* test if the user has set SIGILL */ | |
| 113 | old_handler = signal (SIGILL, SIG_DFL); | |
| 114 | if (old_handler == SIG_IGN) | |
| 115 | 	{ | |
| 116 | 	 /* this is undefined if the signal was raised by anything other | |
| 117 | 	 than raise (). */ | |
| 118 | 	 signal (SIGILL, SIG_IGN); | |
| 119 | 	 action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 120 | 	} | |
| 121 | else if (old_handler != SIG_DFL) | |
| 122 | 	{ | |
| 123 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 124 | 	 (*old_handler) (SIGILL); | |
| 125 | 	 action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 126 | 	} | |
| 127 | else | |
| 128 | action = 4; /* EXCEPTION_EXECUTE_HANDLER;*/ | |
| 129 | break; | |
| 130 | case EXCEPTION_FLT_INVALID_OPERATION: | |
| 131 | case EXCEPTION_FLT_DIVIDE_BY_ZERO: | |
| 132 | case EXCEPTION_FLT_DENORMAL_OPERAND: | |
| 133 | case EXCEPTION_FLT_OVERFLOW: | |
| 134 | case EXCEPTION_FLT_UNDERFLOW: | |
| 135 | case EXCEPTION_FLT_INEXACT_RESULT: | |
| 136 | reset_fpu = 1; | |
| 137 | /* fall through. */ | |
| 138 | ||
| 139 | case EXCEPTION_INT_DIVIDE_BY_ZERO: | |
| 140 | /* test if the user has set SIGFPE */ | |
| 141 | old_handler = signal (SIGFPE, SIG_DFL); | |
| 142 | if (old_handler == SIG_IGN) | |
| 143 | 	{ | |
| 144 | 	 signal (SIGFPE, SIG_IGN); | |
| 145 | 	 if (reset_fpu) | |
| 146 | 	 _fpreset (); | |
| 147 | 	 action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 148 | 	} | |
| 149 | else if (old_handler != SIG_DFL) | |
| 150 | 	{ | |
| 151 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 152 | 	 (*old_handler) (SIGFPE); | |
| 153 | 	 action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 154 | 	} | |
| 155 | break; | |
| 156 | case EXCEPTION_DATATYPE_MISALIGNMENT: | |
| 157 | case EXCEPTION_ARRAY_BOUNDS_EXCEEDED: | |
| 158 | case EXCEPTION_FLT_STACK_CHECK: | |
| 159 | case EXCEPTION_INT_OVERFLOW: | |
| 160 | case EXCEPTION_INVALID_HANDLE: | |
| 161 | /*case EXCEPTION_POSSIBLE_DEADLOCK: */ | |
| 162 | action = 0; // EXCEPTION_CONTINUE_EXECUTION; | |
| 163 | break; | |
| 164 | default: | |
| 165 | break; | |
| 166 | } | |
| 167 | return action; | |
| 168 | } | |
| 108 | case EXCEPTION_CONTINUE_SEARCH: | |
| 109 | return ExceptionContinueSearch; | |
| 169 | 110 | |
| 170 | #endif | |
| 111 | case EXCEPTION_CONTINUE_EXECUTION: | |
| 112 | return ExceptionContinueExecution; | |
| 171 | 113 | |
| 172 | LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler = NULL; | |
| 173 | ||
| 174 | long CALLBACK | |
| 175 | _gnu_exception_handler (EXCEPTION_POINTERS *exception_data); | |
| 176 | ||
| 177 | #define GCC_MAGIC (('G' << 16) | ('C' << 8) | 'C' | (1U << 29)) | |
| 178 | ||
| 179 | long CALLBACK | |
| 180 | _gnu_exception_handler (EXCEPTION_POINTERS *exception_data) | |
| 181 | { | |
| 182 | void (*old_handler) (int); | |
| 183 | long action = EXCEPTION_CONTINUE_SEARCH; | |
| 184 | int reset_fpu = 0; | |
| 185 | ||
| 186 | #ifdef __SEH__ | |
| 187 | if ((exception_data->ExceptionRecord->ExceptionCode & 0x20ffffff) == GCC_MAGIC) | |
| 188 | { | |
| 189 | if ((exception_data->ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE) == 0) | |
| 190 | return EXCEPTION_CONTINUE_EXECUTION; | |
| 191 | } | |
| 192 | #endif | |
| 193 | ||
| 194 | switch (exception_data->ExceptionRecord->ExceptionCode) | |
| 195 | { | |
| 196 | case EXCEPTION_ACCESS_VIOLATION: | |
| 197 | /* test if the user has set SIGSEGV */ | |
| 198 | old_handler = signal (SIGSEGV, SIG_DFL); | |
| 199 | if (old_handler == SIG_IGN) | |
| 200 | 	{ | |
| 201 | 	 /* this is undefined if the signal was raised by anything other | |
| 202 | 	 than raise (). */ | |
| 203 | 	 signal (SIGSEGV, SIG_IGN); | |
| 204 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 205 | 	} | |
| 206 | else if (old_handler != SIG_DFL) | |
| 207 | 	{ | |
| 208 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 209 | 	 (*old_handler) (SIGSEGV); | |
| 210 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 211 | 	} | |
| 212 | break; | |
| 213 | ||
| 214 | case EXCEPTION_ILLEGAL_INSTRUCTION: | |
| 215 | case EXCEPTION_PRIV_INSTRUCTION: | |
| 216 | /* test if the user has set SIGILL */ | |
| 217 | old_handler = signal (SIGILL, SIG_DFL); | |
| 218 | if (old_handler == SIG_IGN) | |
| 219 | 	{ | |
| 220 | 	 /* this is undefined if the signal was raised by anything other | |
| 221 | 	 than raise (). */ | |
| 222 | 	 signal (SIGILL, SIG_IGN); | |
| 223 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 224 | 	} | |
| 225 | else if (old_handler != SIG_DFL) | |
| 226 | 	{ | |
| 227 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 228 | 	 (*old_handler) (SIGILL); | |
| 229 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 230 | 	} | |
| 231 | break; | |
| 232 | ||
| 233 | case EXCEPTION_FLT_INVALID_OPERATION: | |
| 234 | case EXCEPTION_FLT_DIVIDE_BY_ZERO: | |
| 235 | case EXCEPTION_FLT_DENORMAL_OPERAND: | |
| 236 | case EXCEPTION_FLT_OVERFLOW: | |
| 237 | case EXCEPTION_FLT_UNDERFLOW: | |
| 238 | case EXCEPTION_FLT_INEXACT_RESULT: | |
| 239 | reset_fpu = 1; | |
| 240 | /* fall through. */ | |
| 241 | ||
| 242 | case EXCEPTION_INT_DIVIDE_BY_ZERO: | |
| 243 | /* test if the user has set SIGFPE */ | |
| 244 | old_handler = signal (SIGFPE, SIG_DFL); | |
| 245 | if (old_handler == SIG_IGN) | |
| 246 | 	{ | |
| 247 | 	 signal (SIGFPE, SIG_IGN); | |
| 248 | 	 if (reset_fpu) | |
| 249 | 	 _fpreset (); | |
| 250 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 251 | 	} | |
| 252 | else if (old_handler != SIG_DFL) | |
| 253 | 	{ | |
| 254 | 	 /* This means 'old' is a user defined function. Call it */ | |
| 255 | 	 (*old_handler) (SIGFPE); | |
| 256 | 	 action = EXCEPTION_CONTINUE_EXECUTION; | |
| 257 | 	} | |
| 258 | break; | |
| 259 | #ifdef _WIN64 | |
| 260 | case EXCEPTION_DATATYPE_MISALIGNMENT: | |
| 261 | case EXCEPTION_ARRAY_BOUNDS_EXCEEDED: | |
| 262 | case EXCEPTION_FLT_STACK_CHECK: | |
| 263 | case EXCEPTION_INT_OVERFLOW: | |
| 264 | case EXCEPTION_INVALID_HANDLE: | |
| 265 | /*case EXCEPTION_POSSIBLE_DEADLOCK: */ | |
| 266 | action = EXCEPTION_CONTINUE_EXECUTION; | |
| 267 | break; | |
| 268 | #endif | |
| 114 | case EXCEPTION_EXECUTE_HANDLER: | |
| 269 | 115 | default: |
| 270 | break; | |
| 116 | /* msvc CRT EXE exception handler just exit process with exception code */ | |
| 117 | _exit(ExceptionRecord->ExceptionCode); | |
| 271 | 118 | } |
| 272 | ||
| 273 | if (action == EXCEPTION_CONTINUE_SEARCH && __mingw_oldexcpt_handler) | |
| 274 | action = (*__mingw_oldexcpt_handler)(exception_data); | |
| 275 | return action; | |
| 276 | 119 | } |
lib/libc/mingw/crt/crtdll.c+3-2| ... | ... | @@ -4,7 +4,6 @@ |
| 4 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| 5 | 5 | */ |
| 6 | 6 | |
| 7 | #include <oscalls.h> | |
| 8 | 7 | #include <internal.h> |
| 9 | 8 | #include <stdlib.h> |
| 10 | 9 | #include <windows.h> |
| ... | ... | @@ -147,7 +146,9 @@ DllMainCRTStartup (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) |
| 147 | 146 | { |
| 148 | 147 | WINBOOL retcode = TRUE; |
| 149 | 148 | |
| 150 | __mingw_app_type = 0; | |
| 149 | if (dwReason == DLL_PROCESS_ATTACH) | |
| 150 | __mingw_app_type = 0; | |
| 151 | ||
| 151 | 152 | __native_dllmain_reason = dwReason; |
| 152 | 153 | if (dwReason == DLL_PROCESS_DETACH && __proc_attached <= 0) |
| 153 | 154 | { |
lib/libc/mingw/crt/crtexe.c+144-121| ... | ... | @@ -4,25 +4,37 @@ |
| 4 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| 5 | 5 | */ |
| 6 | 6 | |
| 7 | #include <oscalls.h> | |
| 8 | 7 | #include <internal.h> |
| 8 | #include <excpt.h> | |
| 9 | 9 | #include <process.h> |
| 10 | 10 | #include <signal.h> |
| 11 | 11 | #include <math.h> |
| 12 | 12 | #include <stdlib.h> |
| 13 | #include <stdio.h> | |
| 13 | 14 | #include <tchar.h> |
| 14 | 15 | #include <sect_attribs.h> |
| 15 | 16 | #include <locale.h> |
| 17 | #include <float.h> | |
| 16 | 18 | #include <corecrt_startup.h> |
| 17 | 19 | |
| 18 | 20 | #if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7) |
| 19 | 21 | #define SEH_INLINE_ASM |
| 22 | #ifdef __arm__ | |
| 23 | #define ASM_SEH_EXCEPT "%%except" | |
| 24 | #else | |
| 25 | #define ASM_SEH_EXCEPT "@except" | |
| 26 | #endif | |
| 27 | #ifdef __arm64ec__ | |
| 28 | #define ASM_SEH_PREFIX "\"#" | |
| 29 | #define ASM_SEH_SUFFIX "\"" | |
| 30 | #else | |
| 31 | #define ASM_SEH_PREFIX "" | |
| 32 | #define ASM_SEH_SUFFIX "" | |
| 33 | #endif | |
| 20 | 34 | #endif |
| 21 | 35 | |
| 22 | 36 | extern IMAGE_DOS_HEADER __ImageBase; |
| 23 | 37 | |
| 24 | extern void _fpreset (void); | |
| 25 | ||
| 26 | 38 | int *__cdecl __p__commode(void); |
| 27 | 39 | |
| 28 | 40 | #undef _fmode |
| ... | ... | @@ -30,8 +42,7 @@ extern int _fmode; |
| 30 | 42 | #undef _commode |
| 31 | 43 | extern int _commode; |
| 32 | 44 | extern int _dowildcard; |
| 33 | ||
| 34 | extern _CRTIMP void __cdecl _initterm(_PVFV *, _PVFV *); | |
| 45 | extern int __globallocalestatus; | |
| 35 | 46 | |
| 36 | 47 | static int __cdecl check_managed_app (void); |
| 37 | 48 | |
| ... | ... | @@ -51,19 +62,15 @@ extern void __main(void); |
| 51 | 62 | static _TCHAR **argv; |
| 52 | 63 | static _TCHAR **envp; |
| 53 | 64 | |
| 54 | static int mainret=0; | |
| 55 | 65 | static int managedapp; |
| 56 | 66 | static int has_cctor = 0; |
| 57 | extern LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler; | |
| 58 | 67 | |
| 59 | 68 | extern void _pei386_runtime_relocator (void); |
| 60 | long CALLBACK _gnu_exception_handler (EXCEPTION_POINTERS * exception_data); | |
| 61 | static void duplicate_ppstrings (int ac, _TCHAR ***av); | |
| 62 | ||
| 63 | static int __cdecl pre_c_init (void); | |
| 64 | static void __cdecl pre_cpp_init (void); | |
| 65 | _CRTALLOC(".CRT$XIAA") _PIFV __mingw_pcinit = pre_c_init; | |
| 66 | _CRTALLOC(".CRT$XCAA") _PVFV __mingw_pcppinit = pre_cpp_init; | |
| 69 | EXCEPTION_DISPOSITION __cdecl __mingw_SEH_error_handler (struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *); | |
| 70 | #if defined(__x86_64__) && !defined(SEH_INLINE_ASM) | |
| 71 | int __mingw_init_ehandler (void); | |
| 72 | #endif | |
| 73 | static int duplicate_ppstrings (int ac, _TCHAR ***av); | |
| 67 | 74 | |
| 68 | 75 | extern int _MINGW_INSTALL_DEBUG_MATHERR; |
| 69 | 76 | |
| ... | ... | @@ -85,112 +92,58 @@ __mingw_invalidParameterHandler (const wchar_t * __UNUSED_PARAM_1(expression), |
| 85 | 92 | #endif |
| 86 | 93 | } |
| 87 | 94 | |
| 88 | static int __cdecl | |
| 89 | pre_c_init (void) | |
| 90 | { | |
| 91 | int ret; | |
| 92 | managedapp = check_managed_app (); | |
| 93 | if (__mingw_app_type) | |
| 94 | __set_app_type(_GUI_APP); | |
| 95 | else | |
| 96 | __set_app_type (_CONSOLE_APP); | |
| 97 | ||
| 98 | * __p__fmode() = _fmode; | |
| 99 | * __p__commode() = _commode; | |
| 95 | #define GCC_MAGIC (('G' << 16) | ('C' << 8) | 'C' | (1U << 29)) | |
| 100 | 96 | |
| 101 | #ifdef _UNICODE | |
| 102 | ret = _wsetargv(); | |
| 103 | #else | |
| 104 | ret = _setargv(); | |
| 97 | #if defined(__i386__) || defined(_X86_) | |
| 98 | /* We need to make sure that we align the stack to 16 bytes for the sake of SSE */ | |
| 99 | __attribute__((force_align_arg_pointer)) | |
| 105 | 100 | #endif |
| 106 | if (ret < 0) | |
| 107 | _amsg_exit(8); /* _RT_SPACEARG */ | |
| 108 | if (_MINGW_INSTALL_DEBUG_MATHERR == 1) | |
| 109 | { | |
| 110 | __setusermatherr (_matherr); | |
| 111 | } | |
| 112 | ||
| 113 | if (__globallocalestatus == -1) | |
| 114 | { | |
| 115 | } | |
| 116 | return 0; | |
| 101 | static LONG WINAPI | |
| 102 | cpp_unhandled_exception_filter (EXCEPTION_POINTERS *exception_data) | |
| 103 | { | |
| 104 | /* C++ gcc SEH exception is thrown by the libgcc __cxa_throw() function | |
| 105 | * (which calls _Unwind_RaiseException()) or _Unwind_ForcedUnwind() function | |
| 106 | * as a normal continuable SEH exception with the STATUS_GCC_THROW (0x20474343) | |
| 107 | * or STATUS_GCC_FORCED (0x22474343) exception code via the WinAPI RaiseException() | |
| 108 | * call. Both _Unwind_RaiseException() and _Unwind_ForcedUnwind() are expected | |
| 109 | * to return back to the caller (for example __cxa_throw()) if the exception | |
| 110 | * was not handled. So if the gcc SEH exception reaches the application | |
| 111 | * top-level exception handler then handler needs to return execution back to | |
| 112 | * the place which called the RaiseException(). This is done by returning the | |
| 113 | * EXCEPTION_CONTINUE_EXECUTION value from the handler itself. | |
| 114 | * This is needed for proper propagation of unhandled C++ gcc exceptions | |
| 115 | * into the std::terminate() call or into the application handler | |
| 116 | * registered by the std::set_terminate() call. | |
| 117 | */ | |
| 118 | if ((exception_data->ExceptionRecord->ExceptionCode & 0x20ffffff) == GCC_MAGIC && | |
| 119 | !(exception_data->ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE)) | |
| 120 | return EXCEPTION_CONTINUE_EXECUTION; | |
| 121 | ||
| 122 | return EXCEPTION_CONTINUE_SEARCH; | |
| 117 | 123 | } |
| 118 | 124 | |
| 119 | static void __cdecl | |
| 120 | pre_cpp_init (void) | |
| 125 | static void | |
| 126 | safe_flush (void) | |
| 121 | 127 | { |
| 122 | _startupinfo startinfo; | |
| 123 | int argret; | |
| 124 | ||
| 125 | startinfo.newmode = _newmode; | |
| 126 | ||
| 127 | #ifdef _UNICODE | |
| 128 | argret = __wgetmainargs(&argc,&argv,&envp,_dowildcard,&startinfo); | |
| 129 | #else | |
| 130 | argret = __getmainargs(&argc,&argv,&envp,_dowildcard,&startinfo); | |
| 131 | #endif | |
| 132 | if (argret < 0) | |
| 133 | _amsg_exit(8); /* _RT_SPACEARG */ | |
| 128 | fflush (NULL); | |
| 134 | 129 | } |
| 135 | 130 | |
| 136 | 131 | static int __tmainCRTStartup (void); |
| 137 | 132 | |
| 138 | 133 | int WinMainCRTStartup (void); |
| 139 | ||
| 140 | 134 | __attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */ |
| 141 | 135 | int WinMainCRTStartup (void) |
| 142 | 136 | { |
| 143 | int ret = 255; | |
| 144 | #ifdef SEH_INLINE_ASM | |
| 145 | asm ("\t.l_startw:\n"); | |
| 146 | #endif | |
| 147 | 137 | __mingw_app_type = 1; |
| 148 | ret = __tmainCRTStartup (); | |
| 149 | #ifdef SEH_INLINE_ASM | |
| 150 | asm ("\tnop\n" | |
| 151 | "\t.l_endw: nop\n" | |
| 152 | #ifdef __arm__ | |
| 153 | "\t.seh_handler __C_specific_handler, %except\n" | |
| 154 | #else | |
| 155 | "\t.seh_handler __C_specific_handler, @except\n" | |
| 156 | #endif | |
| 157 | "\t.seh_handlerdata\n" | |
| 158 | "\t.long 1\n" | |
| 159 | "\t.rva .l_startw, .l_endw, _gnu_exception_handler ,.l_endw\n" | |
| 160 | "\t.text"); | |
| 161 | #endif | |
| 162 | return ret; | |
| 138 | return __tmainCRTStartup (); | |
| 163 | 139 | } |
| 164 | 140 | |
| 165 | 141 | int mainCRTStartup (void); |
| 166 | ||
| 167 | #if defined(__x86_64__) && !defined(__SEH__) | |
| 168 | int __mingw_init_ehandler (void); | |
| 169 | #endif | |
| 170 | ||
| 171 | 142 | __attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */ |
| 172 | 143 | int mainCRTStartup (void) |
| 173 | 144 | { |
| 174 | int ret = 255; | |
| 175 | #ifdef SEH_INLINE_ASM | |
| 176 | asm ("\t.l_start:\n"); | |
| 177 | #endif | |
| 178 | 145 | __mingw_app_type = 0; |
| 179 | ret = __tmainCRTStartup (); | |
| 180 | #ifdef SEH_INLINE_ASM | |
| 181 | asm ("\tnop\n" | |
| 182 | "\t.l_end: nop\n" | |
| 183 | #ifdef __arm__ | |
| 184 | "\t.seh_handler __C_specific_handler, %except\n" | |
| 185 | #else | |
| 186 | "\t.seh_handler __C_specific_handler, @except\n" | |
| 187 | #endif | |
| 188 | "\t.seh_handlerdata\n" | |
| 189 | "\t.long 1\n" | |
| 190 | "\t.rva .l_start, .l_end, _gnu_exception_handler ,.l_end\n" | |
| 191 | "\t.text"); | |
| 192 | #endif | |
| 193 | return ret; | |
| 146 | return __tmainCRTStartup (); | |
| 194 | 147 | } |
| 195 | 148 | |
| 196 | 149 | static |
| ... | ... | @@ -202,9 +155,27 @@ __attribute__((force_align_arg_pointer)) |
| 202 | 155 | __declspec(noinline) int |
| 203 | 156 | __tmainCRTStartup (void) |
| 204 | 157 | { |
| 158 | /* Registration of SEH error handler __mingw_SEH_error_handler used for | |
| 159 | * delivering SEH exceptions to registered CRT signal handlers. */ | |
| 160 | #if defined(__i386__) | |
| 161 | EXCEPTION_REGISTRATION_RECORD exception_record = { | |
| 162 | .Next = (EXCEPTION_REGISTRATION_RECORD *)__readfsdword (0), | |
| 163 | .Handler = (PEXCEPTION_ROUTINE)(INT_PTR)__mingw_SEH_error_handler, | |
| 164 | }; | |
| 165 | __writefsdword (0, (DWORD)&exception_record); /* dynamically register SEH error handler, it is active until manually unregistered */ | |
| 166 | #elif defined(SEH_INLINE_ASM) | |
| 167 | asm volatile (".seh_handler " ASM_SEH_PREFIX "%c0" ASM_SEH_SUFFIX ", " ASM_SEH_EXCEPT :: "i" (__mingw_SEH_error_handler)); /* statically register SEH error handler, it is active only in the current function */ | |
| 168 | #elif defined(__x86_64__) | |
| 169 | __mingw_init_ehandler (); /* dynamically register SEH error handler for all functions, it is active until program terminates */ | |
| 170 | #else | |
| 171 | #error unsupported platform | |
| 172 | #endif | |
| 173 | ||
| 205 | 174 | void *lock_free = NULL; |
| 206 | 175 | void *fiberid = ((PNT_TIB)NtCurrentTeb())->StackBase; |
| 207 | 176 | BOOL nested = FALSE; |
| 177 | _startupinfo startinfo; | |
| 178 | int ret = 0; | |
| 208 | 179 | while((lock_free = InterlockedCompareExchangePointer (&__native_startup_lock, |
| 209 | 180 | 							 fiberid, NULL)) != 0) |
| 210 | 181 | { |
| ... | ... | @@ -222,48 +193,97 @@ __tmainCRTStartup (void) |
| 222 | 193 | else if (__native_startup_state == __uninitialized) |
| 223 | 194 | { |
| 224 | 195 | 	__native_startup_state = __initializing; |
| 196 | ||
| 197 | 	/* Before the UCRT stderr could be opened in full buffering | |
| 198 | 	 * mode, for example when output goes to a pipe. | |
| 199 | 	 * | |
| 200 | 	 * The C standard disallows full buffering on stderr. Note | |
| 201 | 	 * that line buffering is the same as full buffering in the | |
| 202 | 	 * Windows CRT, so we have to disable buffering altogether. | |
| 203 | 	 */ | |
| 204 | 	setvbuf (stderr, NULL, _IONBF, 0); | |
| 205 | ||
| 206 | 	/* The C RunTime library flushes stdio streams in response to | |
| 207 | 	 * DLL_PROCESS_DETACH. This is not entirely safe; other DLLs | |
| 208 | 	 * may cause instant termination during process shutdown. | |
| 209 | 	 * Here we add an exit handler to flush streams safely. | |
| 210 | 	 */ | |
| 211 | 	if (atexit (safe_flush) != 0) | |
| 212 | 	 abort (); | |
| 213 | ||
| 214 | 	_pei386_runtime_relocator (); | |
| 215 | 	_set_invalid_parameter_handler (__mingw_invalidParameterHandler); | |
| 216 | 	_fpreset (); | |
| 217 | ||
| 218 | 	managedapp = check_managed_app (); | |
| 219 | 	if (__mingw_app_type) | |
| 220 | 	 __set_app_type (_GUI_APP); | |
| 221 | 	else | |
| 222 | 	 __set_app_type (_CONSOLE_APP); | |
| 223 | ||
| 224 | 	*__p__fmode () = _fmode; | |
| 225 | 	*__p__commode () = _commode; | |
| 226 | ||
| 227 | #ifdef _UNICODE | |
| 228 | 	ret = _wsetargv (); | |
| 229 | #else | |
| 230 | 	ret = _setargv (); | |
| 231 | #endif | |
| 232 | 	if (ret < 0) | |
| 233 | 	 _amsg_exit (8); /* _RT_SPACEARG */ | |
| 234 | ||
| 235 | 	if (_MINGW_INSTALL_DEBUG_MATHERR == 1) | |
| 236 | 	 __setusermatherr (_matherr); | |
| 237 | ||
| 238 | 	if (__globallocalestatus == -1) | |
| 239 | 	 _configthreadlocale (-1); | |
| 240 | ||
| 225 | 241 | 	if (_initterm_e (__xi_a, __xi_z) != 0) |
| 226 | 	 return 255; | |
| 227 | } | |
| 228 | else | |
| 229 | has_cctor = 1; | |
| 242 | 	 _amsg_exit (10); /* _RT_ABORT */ | |
| 230 | 243 | |
| 231 | if (__native_startup_state == __initializing) | |
| 232 | { | |
| 244 | 	startinfo.newmode = _newmode; | |
| 245 | #ifdef _UNICODE | |
| 246 | 	ret = __wgetmainargs (&argc, &argv, &envp, _dowildcard, &startinfo); | |
| 247 | #else | |
| 248 | 	ret = __getmainargs (&argc, &argv, &envp, _dowildcard, &startinfo); | |
| 249 | #endif | |
| 250 | 	if (ret < 0) | |
| 251 | 	 _amsg_exit (8); /* _RT_SPACEARG */ | |
| 252 | ||
| 253 | 	ret = duplicate_ppstrings (argc, &argv); | |
| 254 | 	if (ret != 0) | |
| 255 | 	 _amsg_exit (8); /* _RT_SPACEARG */ | |
| 256 | ||
| 257 | 	SetUnhandledExceptionFilter (cpp_unhandled_exception_filter); | |
| 233 | 258 | 	_initterm (__xc_a, __xc_z); |
| 259 | 	__main (); /* C++ initialization. */ | |
| 260 | ||
| 234 | 261 | 	__native_startup_state = __initialized; |
| 235 | 262 | } |
| 236 | _ASSERTE(__native_startup_state == __initialized); | |
| 263 | else | |
| 264 | has_cctor = 1; | |
| 237 | 265 | if (! nested) |
| 238 | 266 | (VOID)InterlockedExchangePointer (&__native_startup_lock, NULL); |
| 239 | 267 | |
| 240 | 268 | if (__dyn_tls_init_callback != NULL) |
| 241 | 269 | __dyn_tls_init_callback (NULL, DLL_THREAD_ATTACH, NULL); |
| 242 | ||
| 243 | _pei386_runtime_relocator (); | |
| 244 | __mingw_oldexcpt_handler = SetUnhandledExceptionFilter (_gnu_exception_handler); | |
| 245 | #if defined(__x86_64__) && !defined(__SEH__) | |
| 246 | __mingw_init_ehandler (); | |
| 247 | #endif | |
| 248 | _set_invalid_parameter_handler (__mingw_invalidParameterHandler); | |
| 249 | ||
| 250 | _fpreset (); | |
| 251 | 270 | |
| 252 | duplicate_ppstrings (argc, &argv); | |
| 253 | __main (); /* C++ initialization. */ | |
| 254 | 271 | #ifdef _UNICODE |
| 255 | 272 | __winitenv = envp; |
| 256 | 273 | #else |
| 257 | 274 | __initenv = envp; |
| 258 | 275 | #endif |
| 259 | mainret = _tmain (argc, argv, envp); | |
| 276 | ret = _tmain (argc, argv, envp); | |
| 260 | 277 | if (!managedapp) |
| 261 | exit (mainret); | |
| 278 | exit (ret); | |
| 262 | 279 | |
| 263 | 280 | if (has_cctor == 0) |
| 264 | 281 | _cexit (); |
| 265 | 282 | |
| 266 | return mainret; | |
| 283 | #if defined(__i386__) | |
| 284 | __writefsdword (0, (DWORD)exception_record.Next); /* dynamically unregister SEH error handler */ | |
| 285 | #endif | |
| 286 | return ret; | |
| 267 | 287 | } |
| 268 | 288 | |
| 269 | 289 | extern int __mingw_initltsdrot_force; |
| ... | ... | @@ -307,21 +327,24 @@ check_managed_app (void) |
| 307 | 327 | return 0; |
| 308 | 328 | } |
| 309 | 329 | |
| 310 | static void duplicate_ppstrings (int ac, _TCHAR ***av) | |
| 330 | static int duplicate_ppstrings (int ac, _TCHAR ***av) | |
| 311 | 331 | { |
| 312 | 332 | 	_TCHAR **avl; |
| 313 | 333 | 	int i; |
| 314 | 334 | 	_TCHAR **n = (_TCHAR **) malloc (sizeof (_TCHAR *) * (ac + 1)); |
| 335 | 	if (!n) return 1; | |
| 315 | 336 | 	 |
| 316 | 337 | 	avl=*av; |
| 317 | 338 | 	for (i=0; i < ac; i++) |
| 318 | 339 | 	 { |
| 319 | 340 | 		size_t l = sizeof (_TCHAR) * (_tcslen (avl[i]) + 1); |
| 320 | 341 | 		n[i] = (_TCHAR *) malloc (l); |
| 342 | 		if (!n[i]) return 1; | |
| 321 | 343 | 		memcpy (n[i], avl[i], l); |
| 322 | 344 | 	 } |
| 323 | 345 | 	n[i] = NULL; |
| 324 | 346 | 	*av = n; |
| 347 | 	return 0; | |
| 325 | 348 | } |
| 326 | 349 | |
| 327 | 350 | int __cdecl atexit (_PVFV func) |
lib/libc/mingw/crt/crtexewin.c+1-5| ... | ... | @@ -7,10 +7,6 @@ |
| 7 | 7 | #include <tchar.h> |
| 8 | 8 | #include <corecrt_startup.h> |
| 9 | 9 | |
| 10 | #ifndef _UNICODE | |
| 11 | #include <mbctype.h> | |
| 12 | #endif | |
| 13 | ||
| 14 | 10 | #define SPACECHAR _T(' ') |
| 15 | 11 | #define DQUOTECHAR _T('\"') |
| 16 | 12 | |
| ... | ... | @@ -40,7 +36,7 @@ int _tmain (int __UNUSED_PARAM(argc), |
| 40 | 36 | if (*lpCmdLine == DQUOTECHAR) |
| 41 | 37 | inDoubleQuote = !inDoubleQuote; |
| 42 | 38 | #ifndef _UNICODE |
| 43 | if (_ismbblead (*lpCmdLine)) | |
| 39 | if (IsDBCSLeadByte (*lpCmdLine)) | |
| 44 | 40 | { |
| 45 | 41 | if (lpCmdLine[1]) |
| 46 | 42 | ++lpCmdLine; |
lib/libc/mingw/crt/gccmain.c+1| ... | ... | @@ -49,6 +49,7 @@ __do_global_ctors (void) |
| 49 | 49 | |
| 50 | 50 | static int initialized = 0; |
| 51 | 51 | |
| 52 | __attribute__((used)) /* required for gcc -flto -Ofast */ | |
| 52 | 53 | void |
| 53 | 54 | __main (void) |
| 54 | 55 | { |
lib/libc/mingw/crt/pseudo-reloc.c+2-6| ... | ... | @@ -141,8 +141,7 @@ __report_error (const char *msg, ...) |
| 141 | 141 | cygwin_internal (CW_EXIT_PROCESS, |
| 142 | 142 | STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION, |
| 143 | 143 | 1); |
| 144 | /* not reached, but silences noreturn warning */ | |
| 145 | abort (); | |
| 144 | __builtin_unreachable (); | |
| 146 | 145 | #else |
| 147 | 146 | va_list argp; |
| 148 | 147 | va_start (argp, msg); |
| ... | ... | @@ -196,7 +195,6 @@ mark_section_writable (LPVOID addr) |
| 196 | 195 | if (!h) |
| 197 | 196 | { |
| 198 | 197 | __report_error ("Address %p has no image-section", addr); |
| 199 | return; | |
| 200 | 198 | } |
| 201 | 199 | the_secs[i].hash = h; |
| 202 | 200 | the_secs[i].old_protect = 0; |
| ... | ... | @@ -206,7 +204,6 @@ mark_section_writable (LPVOID addr) |
| 206 | 204 | { |
| 207 | 205 | __report_error (" VirtualQuery failed for %d bytes at address %p", |
| 208 | 206 | 		 (int) h->Misc.VirtualSize, the_secs[i].sec_start); |
| 209 | return; | |
| 210 | 207 | } |
| 211 | 208 | |
| 212 | 209 | if (b.Protect != PAGE_EXECUTE_READWRITE && b.Protect != PAGE_READWRITE |
| ... | ... | @@ -380,7 +377,6 @@ do_pseudo_reloc (void * start, void * end, void * base) |
| 380 | 377 | { |
| 381 | 378 | __report_error (" Unknown pseudo relocation protocol version %d.\n", |
| 382 | 379 | 		 (int) v2_hdr->version); |
| 383 | return; | |
| 384 | 380 | } |
| 385 | 381 | |
| 386 | 382 | /************************* |
| ... | ... | @@ -480,7 +476,7 @@ do_pseudo_reloc (void * start, void * end, void * base) |
| 480 | 476 | } |
| 481 | 477 | } |
| 482 | 478 | |
| 483 | __attribute__((used)) /* required due to bug in gcc / ld */ | |
| 479 | __attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30343 */ | |
| 484 | 480 | void |
| 485 | 481 | _pei386_runtime_relocator (void) |
| 486 | 482 | { |
lib/libc/mingw/ctype/_iscsym_l.c created+22| ... | ... | @@ -0,0 +1,22 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define __MSVCRT_VERSION__ 0x0800 | |
| 9 | ||
| 10 | #define _CTYPE_DISABLE_MACROS | |
| 11 | #include <ctype.h> | |
| 12 | ||
| 13 | /** | |
| 14 | * See ctype.h for rationale. | |
| 15 | * | |
| 16 | * Note that import symbol __MINGW_IMP_SYMBOL(_iscsym_l) is not provided on | |
| 17 | * purpose. | |
| 18 | */ | |
| 19 | ||
| 20 | int __cdecl _iscsym_l (wint_t _C, _locale_t _Locale) { | |
| 21 | return (_isalnum_l (_C, _Locale) || _C == '_'); | |
| 22 | } |
lib/libc/mingw/ctype/_iscsymf_l.c created+22| ... | ... | @@ -0,0 +1,22 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define __MSVCRT_VERSION__ 0x0800 | |
| 9 | ||
| 10 | #define _CTYPE_DISABLE_MACROS | |
| 11 | #include <ctype.h> | |
| 12 | ||
| 13 | /** | |
| 14 | * See ctype.h for rationale. | |
| 15 | * | |
| 16 | * Note that import symbol __MINGW_IMP_SYMBOL(_iscsymf_l) is not provided on | |
| 17 | * purpose. | |
| 18 | */ | |
| 19 | ||
| 20 | int __cdecl _iscsymf_l (wint_t _C, _locale_t _Locale) { | |
| 21 | return (_isalpha_l (_C, _Locale) || _C == '_'); | |
| 22 | } |
lib/libc/mingw/ctype/iswctype.c created+43| ... | ... | @@ -0,0 +1,43 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define _CTYPE_DISABLE_MACROS | |
| 8 | #include <wctype.h> | |
| 9 | ||
| 10 | /** | |
| 11 | * CRT's `iswctype` has inconsistent behavior for TAB character when used with | |
| 12 | * `wctype_t` objects returned by `wctype` function which contain `_BLANK` bit. | |
| 13 | * | |
| 14 | * In all CRTs up to msvcrt.dll version 6.1, it returns zero in "C" locale | |
| 15 | * and non-zero otherwise. | |
| 16 | * | |
| 17 | * Since msvcr70.dll up to msvcr110.dll it always returns non-zero; | |
| 18 | * OS-specific versions of msvcrt.dll follow this behavior. | |
| 19 | * | |
| 20 | * In msvcr120.dll and UCRT it always returns zero. | |
| 21 | * | |
| 22 | * This behavior affects both `iswblank` and `iswprint` functions; | |
| 23 | * either or both of them have non-conforming behavior. | |
| 24 | */ | |
| 25 | ||
| 26 | /** | |
| 27 | * This is CRT's `iswctype` renamed to `__msvcrt_iswctype`. | |
| 28 | */ | |
| 29 | extern int (__cdecl *__MINGW_IMP_SYMBOL(__msvcrt_iswctype)) (wint_t, wctype_t); | |
| 30 | ||
| 31 | int iswctype (wint_t _C, wctype_t _Type) { | |
| 32 | /** | |
| 33 | * `wctype_t` object returned for "print" character class contains _BLANK; | |
| 34 | * make sure TAB is handled correctly. | |
| 35 | */ | |
| 36 | if (_C == L'\t' && (_Type & _BLANK)) { | |
| 37 | return (_Type == _BLANK ? _BLANK : 0); | |
| 38 | } | |
| 39 | ||
| 40 | return __MINGW_IMP_SYMBOL (__msvcrt_iswctype) (_C, _Type); | |
| 41 | } | |
| 42 | ||
| 43 | int (__cdecl *__MINGW_IMP_SYMBOL (iswctype)) (wint_t, wctype_t) = iswctype; |
lib/libc/mingw/ctype/towctrans.c created+33| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define _CTYPE_DISABLE_MACROS | |
| 8 | #include <wctype.h> | |
| 9 | ||
| 10 | /** | |
| 11 | * Both `wctrans` and `towctrans` functions were added in msvcr120.dll. | |
| 12 | * | |
| 13 | * CRT's `towctrans` does not properly handle case when second argument is | |
| 14 | * `(wctrans_t)0`. | |
| 15 | */ | |
| 16 | ||
| 17 | /** | |
| 18 | * This is CRT's `towctrans` renamed to `__msvcrt_towctrans`. | |
| 19 | */ | |
| 20 | extern wint_t (__cdecl *__MINGW_IMP_SYMBOL (__msvcrt_towctrans)) (wint_t, wctrans_t); | |
| 21 | ||
| 22 | wint_t __cdecl towctrans (wint_t _C, wctrans_t _Type) { | |
| 23 | /** | |
| 24 | * POSIX requires that if `_Type` is zero, `_C` is returned unchanged. | |
| 25 | */ | |
| 26 | if (_Type == (wctrans_t) 0) { | |
| 27 | return _C; | |
| 28 | } | |
| 29 | ||
| 30 | return __MINGW_IMP_SYMBOL (__msvcrt_towctrans) (_C, _Type); | |
| 31 | } | |
| 32 | ||
| 33 | wint_t (__cdecl *__MINGW_IMP_SYMBOL (towctrans)) (wint_t, wctrans_t) = towctrans; |
lib/libc/mingw/def-include/crt-aliases.def.in+45-18| ... | ... | @@ -64,20 +64,13 @@ ADD_UNDERSCORE(filelength) |
| 64 | 64 | ADD_UNDERSCORE(fileno) |
| 65 | 65 | ; ADD_UNDERSCORE(flushall) |
| 66 | 66 | ADD_UNDERSCORE(fputchar) |
| 67 | #ifdef FIXED_SIZE_SYMBOLS | |
| 68 | #ifndef CRTDLL | |
| 69 | ADD_UNDERSCORE(fstat) | |
| 70 | #endif | |
| 71 | #else | |
| 67 | #if defined(UCRTBASE) | |
| 72 | 68 | F32(fstat == _fstat32) |
| 73 | 69 | F64(fstat == _fstat64i32) |
| 74 | #endif | |
| 75 | #ifdef FIXED_SIZE_SYMBOLS | |
| 76 | ADD_UNDERSCORE(ftime) | |
| 77 | 70 | #else |
| 78 | F32(ftime == _ftime32) | |
| 79 | F64(ftime == _ftime64) | |
| 71 | ; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat | |
| 80 | 72 | #endif |
| 73 | ; ftime is provided in misc/ftime32.c or misc/ftime64.c as MS _ftime is not ABI compatible with POSIX ftime | |
| 81 | 74 | #if defined(UCRTBASE) |
| 82 | 75 | ; HUGE alias and _HUGE variable are provided by math/_huge.c |
| 83 | 76 | #elif defined(CRTDLL) |
| ... | ... | @@ -232,7 +225,7 @@ ADD_UNDERSCORE(wcsupr) |
| 232 | 225 | #ifdef UCRTBASE |
| 233 | 226 | ; hypot is natively exported from UCRT |
| 234 | 227 | #else |
| 235 | ADD_UNDERSCORE(hypot) | |
| 228 | ; hypot is provided by math/hypot.c as a wrapper around _hypot | |
| 236 | 229 | #endif |
| 237 | 230 | ADD_UNDERSCORE(j0) |
| 238 | 231 | ADD_UNDERSCORE(j1) |
| ... | ... | @@ -248,9 +241,6 @@ getwchar == _fgetwchar |
| 248 | 241 | putwc == fputwc |
| 249 | 242 | putwchar == _fputwchar |
| 250 | 243 | #endif |
| 251 | #ifdef USE_WCSTOK_S_FOR_WCSTOK | |
| 252 | wcstok == wcstok_s | |
| 253 | #endif | |
| 254 | 244 | |
| 255 | 245 | ; This is list of symbol aliases for C99 functions |
| 256 | 246 | ; ADD_UNDERSCORE(logb) |
| ... | ... | @@ -292,29 +282,46 @@ ADD_DOUBLE_UNDERSCORE(toascii) |
| 292 | 282 | ADD_UNDERSCORE(pclose) |
| 293 | 283 | ADD_UNDERSCORE(popen) |
| 294 | 284 | #endif |
| 285 | fseeko == fseek | |
| 286 | ftello == ftell | |
| 287 | ftruncate == _chsize | |
| 295 | 288 | ; ADD_UNDERSCORE(scalb) |
| 296 | 289 | |
| 297 | 290 | ; This is list of symbol aliases for Large File Specification (extension to Single UNIX Specification) |
| 291 | ; https://unix.org/version2/whatsnew/lfs20mar.html#3.1 section 3.1 Transitional Extensions | |
| 292 | creat64 == _creat | |
| 293 | open64 == _open | |
| 294 | fopen64 == fopen | |
| 295 | freopen64 == freopen | |
| 296 | #ifndef NO_TMPFILE_ALIAS | |
| 297 | tmpfile64 == tmpfile | |
| 298 | #endif | |
| 298 | 299 | #ifndef NO_FPOS64_ALIASES |
| 299 | 300 | ; fgetpos and fsetpos are already 64-bit |
| 300 | 301 | fgetpos64 == fgetpos |
| 301 | 302 | fsetpos64 == fsetpos |
| 303 | lseek64 == _lseeki64 | |
| 302 | 304 | #endif |
| 303 | 305 | #ifdef UCRTBASE |
| 306 | fstat32 == _fstat32 | |
| 307 | fstat32i64 == _fstat32i64 | |
| 308 | fstat64 == _fstat64 | |
| 309 | fstat64i32 == _fstat64i32 | |
| 304 | 310 | stat32 == _stat32 |
| 305 | 311 | stat32i64 == _stat32i64 |
| 306 | 312 | stat64 == _stat64 |
| 307 | 313 | stat64i32 == _stat64i32 |
| 308 | 314 | #else |
| 315 | ; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat | |
| 309 | 316 | ; stat for non-UCRT is provided by mingw to workaround trailing slash issue in _stat |
| 310 | 317 | #endif |
| 311 | 318 | #ifdef FIXED_SIZE_SYMBOLS |
| 312 | // NO_FIXED_SIZE_64_ALIAS means that DLL provides the native _fstat64 symbol | |
| 313 | #if defined(NO_FIXED_SIZE_64_ALIAS) && !defined(NO_FSTAT64_ALIAS) | |
| 314 | fstat64 == _fstat64 | |
| 319 | #ifdef WITH_FSEEKO64_ALIAS | |
| 320 | fseeko64 == _fseeki64 | |
| 315 | 321 | #endif |
| 316 | 322 | #else |
| 317 | fstat64 == _fstat64 | |
| 323 | fseeko64 == _fseeki64 | |
| 324 | ftello64 == _ftelli64 | |
| 318 | 325 | #endif |
| 319 | 326 | |
| 320 | 327 | ; This is list of symbol aliases for GNU functions which are not part of POSIX or ISO C |
| ... | ... | @@ -325,6 +332,25 @@ strncasecmp == _strnicmp |
| 325 | 332 | ; Some symbols in some version of CRT library were added and some other symbols were removed or renamed |
| 326 | 333 | ; This list provides some level of backward and forward compatibility |
| 327 | 334 | |
| 335 | #ifdef WITH_SETJMP3_ALIAS | |
| 336 | ; crtdll.dll and msvcrt10.dll have only old _setjmp function which does not take | |
| 337 | ; additional variadic arguments and uses smaller jmpbuf structure. | |
| 338 | ; mingw-w64 calls _setjmp3 only with zero additional arguments and because number | |
| 339 | ; of additional arguments is passed on the stack which is cleanup by the caller, | |
| 340 | ; it means that the mingw-w64 usage of _setjmp3 is ABI compatible with the old | |
| 341 | ; _setjmp function which is available also in crtdll.dll and msvcrt10.dll libs. | |
| 342 | ; It heavily depends on the mingw-w64-headers/crt/setjmp.h implementation. | |
| 343 | ; So this definition allows crtdll.dll and msvcrt10.dll applications to call | |
| 344 | ; setjmp() macro from setjmp.h, which expands to _setjmp3() function call and | |
| 345 | ; which is aliased to _setjmp symbol for crtdll.dll and msvcrt10.dll libraries. | |
| 346 | F_I386(_setjmp3 == _setjmp) | |
| 347 | #endif | |
| 348 | ||
| 349 | #ifdef UCRTBASE | |
| 350 | F_NON_ARM64(_setjmp == __intrinsic_setjmp) | |
| 351 | F64(_setjmpex == __intrinsic_setjmpex) | |
| 352 | #endif | |
| 353 | ||
| 328 | 354 | #ifndef NO_STRCMPI_ALIAS |
| 329 | 355 | _strcmpi == _stricmp |
| 330 | 356 | #endif |
| ... | ... | @@ -551,6 +577,7 @@ __p__daylight == __daylight |
| 551 | 577 | __p__dstbias == __dstbias |
| 552 | 578 | __p__timezone == __timezone |
| 553 | 579 | __p__tzname == __tzname |
| 580 | _XcptFilter == _seh_filter_exe | |
| 554 | 581 | #endif |
| 555 | 582 | |
| 556 | 583 | ; This is list of printf/scanf symbol aliases with __ms_ prefix |
lib/libc/mingw/def-include/func.def.in+16-4| ... | ... | @@ -16,29 +16,35 @@ |
| 16 | 16 | #define F64(x) x |
| 17 | 17 | #define F_X64(x) x |
| 18 | 18 | #define F_X86_ANY(x) x |
| 19 | #define F_X86_NATIVE(x) x | |
| 19 | 20 | #define F_NON_I386(x) x |
| 20 | 21 | #define F_NON_ARM64(x) x |
| 22 | #if defined(__arm64ec__) | |
| 23 | #define F_ARM_ANY(x) x | |
| 24 | #undef F_X86_NATIVE | |
| 25 | #endif | |
| 21 | 26 | #elif defined(__i386__) |
| 22 | 27 | #define F32(x) x |
| 23 | 28 | #define F_I386(x) x |
| 24 | 29 | #define F_X86_ANY(x) x |
| 30 | #define F_X86_NATIVE(x) x | |
| 25 | 31 | #define F_NON_X64(x) x |
| 26 | 32 | #define F_NON_ARM64(x) x |
| 27 | 33 | #elif defined(__arm__) |
| 28 | 34 | #define F32(x) x |
| 29 | 35 | #define F_ARM32(x) x |
| 30 | #define F_ARM_ANY(x) x | |
| 36 | #define F_ARM_NATIVE(x) x | |
| 31 | 37 | #define F_NON_I386(x) x |
| 32 | 38 | #define F_NON_X64(x) x |
| 33 | 39 | #define F_NON_ARM64(x) x |
| 34 | 40 | #elif defined(__aarch64__) |
| 35 | 41 | #define F64(x) x |
| 36 | 42 | #define F_ARM64(x) x |
| 37 | #define F_ARM_ANY(x) x | |
| 43 | #define F_ARM_NATIVE(x) x | |
| 38 | 44 | #define F_NON_I386(x) x |
| 39 | 45 | #define F_NON_X64(x) x |
| 40 | 46 | #else |
| 41 | #error No DEF_<ARCH> is defined | |
| 47 | #error Unrecognized architecture | |
| 42 | 48 | #endif |
| 43 | 49 | |
| 44 | 50 | #ifndef F32 |
| ... | ... | @@ -50,14 +56,20 @@ |
| 50 | 56 | #ifndef F_X86_ANY |
| 51 | 57 | #define F_X86_ANY(x) |
| 52 | 58 | #endif |
| 59 | #ifndef F_X86_NATIVE(x) | |
| 60 | #define F_X86_NATIVE(x) | |
| 61 | #endif | |
| 53 | 62 | #ifndef F_I386 |
| 54 | 63 | #define F_I386(x) |
| 55 | 64 | #endif |
| 56 | 65 | #ifndef F_X64 |
| 57 | 66 | #define F_X64(x) |
| 58 | 67 | #endif |
| 68 | #ifndef F_ARM_NATIVE | |
| 69 | #define F_ARM_NATIVE(x) | |
| 70 | #endif | |
| 59 | 71 | #ifndef F_ARM_ANY |
| 60 | #define F_ARM_ANY(x) | |
| 72 | #define F_ARM_ANY(x) F_ARM_NATIVE(x) | |
| 61 | 73 | #endif |
| 62 | 74 | #ifndef F_ARM32 |
| 63 | 75 | #define F_ARM32(x) |
lib/libc/mingw/gdtoa/dtoa.c+1-1| ... | ... | @@ -109,7 +109,7 @@ char *__dtoa (double d0, int mode, int ndigits, int *decpt, int *sign, char **rv |
| 109 | 109 | 	*/ |
| 110 | 110 | |
| 111 | 111 | 	int bbits, b2, b5, be, dig, i, ieps, ilim, ilim0, ilim1, |
| 112 | 		j, j2, k, k0, k_check, leftright, m2, m5, s2, s5, | |
| 112 | 		j, j2 = 0, k, k0, k_check, leftright, m2, m5, s2, s5, | |
| 113 | 113 | 		spec_case, try_quick; |
| 114 | 114 | 	Long L; |
| 115 | 115 | #ifndef Sudden_Underflow |
lib/libc/mingw/gdtoa/g__fmt.c+1-1| ... | ... | @@ -172,7 +172,7 @@ __add_nanbits_D2A(char *b, size_t blen, ULong *bits, int nb) |
| 172 | 172 | 	char *rv; |
| 173 | 173 | 	int i, j; |
| 174 | 174 | 	size_t L; |
| 175 | 	static char Hexdig[16] = "0123456789abcdef"; | |
| 175 | 	static char Hexdig[17] = "0123456789abcdef"; | |
| 176 | 176 | |
| 177 | 177 | 	while(!bits[--nb]) |
| 178 | 178 | 		if (!nb) |
lib/libc/mingw/include/oscalls.h deleted-60| ... | ... | @@ -1,60 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #ifndef _INC_OSCALLS | |
| 8 | #define _INC_OSCALLS | |
| 9 | ||
| 10 | #ifndef _CRTBLD | |
| 11 | #error ERROR: Use of C runtime library internal header file. | |
| 12 | #endif | |
| 13 | ||
| 14 | #include <crtdefs.h> | |
| 15 | ||
| 16 | #ifdef NULL | |
| 17 | #undef NULL | |
| 18 | #endif | |
| 19 | ||
| 20 | #define NOMINMAX | |
| 21 | ||
| 22 | #define _WIN32_FUSION 0x0100 | |
| 23 | #include <windows.h> | |
| 24 | ||
| 25 | #ifndef NULL | |
| 26 | #ifdef __cplusplus | |
| 27 | #define NULL 0 | |
| 28 | #else | |
| 29 | #define NULL ((void *)0) | |
| 30 | #endif | |
| 31 | #endif | |
| 32 | ||
| 33 | #ifdef _MSC_VER | |
| 34 | #pragma warning(push) | |
| 35 | #pragma warning(disable:4214) | |
| 36 | #endif | |
| 37 | ||
| 38 | typedef struct _FTIME | |
| 39 | { | |
| 40 | unsigned short twosecs : 5; | |
| 41 | unsigned short minutes : 6; | |
| 42 | unsigned short hours : 5; | |
| 43 | } FTIME; | |
| 44 | ||
| 45 | typedef FTIME *PFTIME; | |
| 46 | ||
| 47 | typedef struct _FDATE | |
| 48 | { | |
| 49 | unsigned short day : 5; | |
| 50 | unsigned short month : 4; | |
| 51 | unsigned short year : 7; | |
| 52 | } FDATE; | |
| 53 | ||
| 54 | #ifdef _MSC_VER | |
| 55 | #pragma warning(pop) | |
| 56 | #endif | |
| 57 | ||
| 58 | typedef FDATE *PFDATE; | |
| 59 | ||
| 60 | #endif |
lib/libc/mingw/include/sect_attribs.h+43-50| ... | ... | @@ -6,60 +6,54 @@ |
| 6 | 6 | |
| 7 | 7 | #if defined(_MSC_VER) |
| 8 | 8 | |
| 9 | #if defined(_M_IA64) || defined(_M_AMD64) | |
| 10 | #define _ATTRIBUTES | |
| 11 | #else | |
| 12 | #define _ATTRIBUTES shared | |
| 13 | #endif | |
| 14 | ||
| 15 | 9 | /* Reference list of existing section for msvcrt. */ |
| 16 | #pragma section(".CRTMP$XCA",long,_ATTRIBUTES) | |
| 17 | #pragma section(".CRTMP$XCZ",long,_ATTRIBUTES) | |
| 18 | #pragma section(".CRTMP$XIA",long,_ATTRIBUTES) | |
| 19 | #pragma section(".CRTMP$XIZ",long,_ATTRIBUTES) | |
| 10 | #pragma section(".CRTMP$XCA", long, read) | |
| 11 | #pragma section(".CRTMP$XCZ", long, read) | |
| 12 | #pragma section(".CRTMP$XIA", long, read) | |
| 13 | #pragma section(".CRTMP$XIZ", long, read) | |
| 20 | 14 | |
| 21 | #pragma section(".CRTMA$XCA",long,_ATTRIBUTES) | |
| 22 | #pragma section(".CRTMA$XCZ",long,_ATTRIBUTES) | |
| 23 | #pragma section(".CRTMA$XIA",long,_ATTRIBUTES) | |
| 24 | #pragma section(".CRTMA$XIZ",long,_ATTRIBUTES) | |
| 15 | #pragma section(".CRTMA$XCA", long, read) | |
| 16 | #pragma section(".CRTMA$XCZ", long, read) | |
| 17 | #pragma section(".CRTMA$XIA", long, read) | |
| 18 | #pragma section(".CRTMA$XIZ", long, read) | |
| 25 | 19 | |
| 26 | #pragma section(".CRTVT$XCA",long,_ATTRIBUTES) | |
| 27 | #pragma section(".CRTVT$XCZ",long,_ATTRIBUTES) | |
| 20 | #pragma section(".CRTVT$XCA", long, read) | |
| 21 | #pragma section(".CRTVT$XCZ", long, read) | |
| 28 | 22 | |
| 29 | #pragma section(".CRT$XCA",long,_ATTRIBUTES) | |
| 30 | #pragma section(".CRT$XCAA",long,_ATTRIBUTES) | |
| 31 | #pragma section(".CRT$XCC",long,_ATTRIBUTES) | |
| 32 | #pragma section(".CRT$XCZ",long,_ATTRIBUTES) | |
| 33 | #pragma section(".CRT$XDA",long,_ATTRIBUTES) | |
| 34 | #pragma section(".CRT$XDC",long,_ATTRIBUTES) | |
| 35 | #pragma section(".CRT$XDZ",long,_ATTRIBUTES) | |
| 36 | #pragma section(".CRT$XIA",long,_ATTRIBUTES) | |
| 37 | #pragma section(".CRT$XIAA",long,_ATTRIBUTES) | |
| 38 | #pragma section(".CRT$XIC",long,_ATTRIBUTES) | |
| 39 | #pragma section(".CRT$XID",long,_ATTRIBUTES) | |
| 40 | #pragma section(".CRT$XIY",long,_ATTRIBUTES) | |
| 41 | #pragma section(".CRT$XIZ",long,_ATTRIBUTES) | |
| 42 | #pragma section(".CRT$XLA",long,_ATTRIBUTES) | |
| 43 | #pragma section(".CRT$XLC",long,_ATTRIBUTES) | |
| 44 | #pragma section(".CRT$XLD",long,_ATTRIBUTES) | |
| 45 | #pragma section(".CRT$XLZ",long,_ATTRIBUTES) | |
| 46 | #pragma section(".CRT$XPA",long,_ATTRIBUTES) | |
| 47 | #pragma section(".CRT$XPX",long,_ATTRIBUTES) | |
| 48 | #pragma section(".CRT$XPXA",long,_ATTRIBUTES) | |
| 49 | #pragma section(".CRT$XPZ",long,_ATTRIBUTES) | |
| 50 | #pragma section(".CRT$XTA",long,_ATTRIBUTES) | |
| 51 | #pragma section(".CRT$XTB",long,_ATTRIBUTES) | |
| 52 | #pragma section(".CRT$XTX",long,_ATTRIBUTES) | |
| 53 | #pragma section(".CRT$XTZ",long,_ATTRIBUTES) | |
| 54 | #pragma section(".rdata$T",long,read) | |
| 55 | #pragma section(".rtc$IAA",long,read) | |
| 56 | #pragma section(".rtc$IZZ",long,read) | |
| 57 | #pragma section(".rtc$TAA",long,read) | |
| 58 | #pragma section(".rtc$TZZ",long,read) | |
| 23 | #pragma section(".CRT$XCA", long, read) | |
| 24 | #pragma section(".CRT$XCAA", long, read) | |
| 25 | #pragma section(".CRT$XCC", long, read) | |
| 26 | #pragma section(".CRT$XCZ", long, read) | |
| 27 | #pragma section(".CRT$XDA", long, read) | |
| 28 | #pragma section(".CRT$XDC", long, read) | |
| 29 | #pragma section(".CRT$XDZ", long, read) | |
| 30 | #pragma section(".CRT$XIA", long, read) | |
| 31 | #pragma section(".CRT$XIAA", long, read) | |
| 32 | #pragma section(".CRT$XIC", long, read) | |
| 33 | #pragma section(".CRT$XID", long, read) | |
| 34 | #pragma section(".CRT$XIY", long, read) | |
| 35 | #pragma section(".CRT$XIZ", long, read) | |
| 36 | #pragma section(".CRT$XLA", long, read) | |
| 37 | #pragma section(".CRT$XLC", long, read) | |
| 38 | #pragma section(".CRT$XLD", long, read) | |
| 39 | #pragma section(".CRT$XLZ", long, read) | |
| 40 | #pragma section(".CRT$XPA", long, read) | |
| 41 | #pragma section(".CRT$XPX", long, read) | |
| 42 | #pragma section(".CRT$XPXA", long, read) | |
| 43 | #pragma section(".CRT$XPZ", long, read) | |
| 44 | #pragma section(".CRT$XTA", long, read) | |
| 45 | #pragma section(".CRT$XTB", long, read) | |
| 46 | #pragma section(".CRT$XTX", long, read) | |
| 47 | #pragma section(".CRT$XTZ", long, read) | |
| 48 | #pragma section(".rdata$T", long, read) | |
| 49 | #pragma section(".rtc$IAA", long, read) | |
| 50 | #pragma section(".rtc$IZZ", long, read) | |
| 51 | #pragma section(".rtc$TAA", long, read) | |
| 52 | #pragma section(".rtc$TZZ", long, read) | |
| 59 | 53 | /* for tlssup.c: */ |
| 60 | #pragma section(".tls",long,read,write) | |
| 61 | #pragma section(".tls$AAA",long,read,write) | |
| 62 | #pragma section(".tls$ZZZ",long,read,write) | |
| 54 | #pragma section(".tls", long) | |
| 55 | #pragma section(".tls$AAA", long) | |
| 56 | #pragma section(".tls$ZZZ", long) | |
| 63 | 57 | #endif /* _MSC_VER */ |
| 64 | 58 | |
| 65 | 59 | #if defined(_MSC_VER) |
| ... | ... | @@ -69,4 +63,3 @@ |
| 69 | 63 | #else |
| 70 | 64 | #error Your compiler is not supported. |
| 71 | 65 | #endif |
| 72 |
lib/libc/mingw/lib-common/api-ms-win-crt-convert-l1-1-0.def.in+2-2| ... | ... | @@ -93,7 +93,7 @@ atof |
| 93 | 93 | atoi |
| 94 | 94 | atol |
| 95 | 95 | atoll |
| 96 | btowc | |
| 96 | ; btowc ; replaced for consistency with wctob | |
| 97 | 97 | c16rtomb |
| 98 | 98 | c32rtomb |
| 99 | 99 | mbrtoc16 |
| ... | ... | @@ -128,7 +128,7 @@ wcstombs_s |
| 128 | 128 | wcstoul |
| 129 | 129 | wcstoull |
| 130 | 130 | wcstoumax |
| 131 | wctob | |
| 131 | ; wctob ; replaced, CRT version may sign-extend its return value | |
| 132 | 132 | wctomb |
| 133 | 133 | wctomb_s |
| 134 | 134 | wctrans |
lib/libc/mingw/lib-common/api-ms-win-crt-filesystem-l1-1-0.def.in+3| ... | ... | @@ -37,10 +37,13 @@ F64(_fstat == _fstat64i32) |
| 37 | 37 | F32(_fstati64 == _fstat32i64) |
| 38 | 38 | F64(_fstati64 == _fstat64) |
| 39 | 39 | _fstat32 |
| 40 | fstat32 == _fstat32 | |
| 40 | 41 | _fstat32i64 |
| 42 | fstat32i64 == _fstat32i64 | |
| 41 | 43 | _fstat64 |
| 42 | 44 | fstat64 == _fstat64 |
| 43 | 45 | _fstat64i32 |
| 46 | fstat64i32 == _fstat64i32 | |
| 44 | 47 | _fullpath |
| 45 | 48 | _getdiskfree |
| 46 | 49 | _getdrive |
lib/libc/mingw/lib-common/api-ms-win-crt-math-l1-1-0.def.in+1-1| ... | ... | @@ -266,7 +266,7 @@ expm1 |
| 266 | 266 | expm1f |
| 267 | 267 | F_LD64(expm1l) ; Can't use long double functions from the CRT on x86 |
| 268 | 268 | fabs |
| 269 | F_ARM_ANY(fabsf) | |
| 269 | F_ARM_NATIVE(fabsf) | |
| 270 | 270 | fdim |
| 271 | 271 | fdimf |
| 272 | 272 | F_LD64(fdiml) ; Can't use long double functions from the CRT on x86 |
lib/libc/mingw/lib-common/api-ms-win-crt-private-l1-1-0.def.in+4-2| ... | ... | @@ -12,8 +12,8 @@ _FindAndUnlinkFrame |
| 12 | 12 | F_X64(_GetImageBase) |
| 13 | 13 | F_X64(_GetThrowImageBase) |
| 14 | 14 | _IsExceptionObjectToBeDestroyed |
| 15 | F_I386(_NLG_Dispatch2@4) | |
| 16 | F_I386(_NLG_Return@12) | |
| 15 | F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4) | |
| 16 | F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12) | |
| 17 | 17 | F_I386(_NLG_Return2) |
| 18 | 18 | F_X64(_SetImageBase) |
| 19 | 19 | F_X64(_SetThrowImageBase) |
| ... | ... | @@ -46,7 +46,9 @@ __dcrt_get_wide_environment_from_os |
| 46 | 46 | __dcrt_initial_narrow_environment DATA |
| 47 | 47 | F_I386(__intrinsic_abnormal_termination) |
| 48 | 48 | F_NON_ARM64(__intrinsic_setjmp) |
| 49 | F_NON_ARM64(_setjmp == __intrinsic_setjmp) | |
| 49 | 50 | F64(__intrinsic_setjmpex) |
| 51 | F64(_setjmpex == __intrinsic_setjmpex) | |
| 50 | 52 | __processing_throw |
| 51 | 53 | __report_gsfailure |
| 52 | 54 | __std_exception_copy |
lib/libc/mingw/lib-common/api-ms-win-crt-runtime-l1-1-0.def.in+2-1| ... | ... | @@ -24,7 +24,7 @@ __threadid |
| 24 | 24 | __wcserror |
| 25 | 25 | __wcserror_s |
| 26 | 26 | ; DATA set manually |
| 27 | _assert | |
| 27 | __msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol | |
| 28 | 28 | _beginthread |
| 29 | 29 | _beginthreadex |
| 30 | 30 | _c_exit |
| ... | ... | @@ -73,6 +73,7 @@ _register_thread_local_exe_atexit_callback |
| 73 | 73 | _resetstkoflw |
| 74 | 74 | _seh_filter_dll |
| 75 | 75 | _seh_filter_exe |
| 76 | _XcptFilter == _seh_filter_exe | |
| 76 | 77 | _set_abort_behavior |
| 77 | 78 | _set_app_type |
| 78 | 79 | __set_app_type == _set_app_type |
lib/libc/mingw/lib-common/api-ms-win-crt-stdio-l1-1-0.def+11| ... | ... | @@ -25,12 +25,14 @@ __stdio_common_vswprintf_s |
| 25 | 25 | __stdio_common_vswscanf |
| 26 | 26 | _chsize |
| 27 | 27 | chsize == _chsize |
| 28 | ftruncate == _chsize | |
| 28 | 29 | _chsize_s |
| 29 | 30 | _close |
| 30 | 31 | close == _close |
| 31 | 32 | _commit |
| 32 | 33 | _creat |
| 33 | 34 | creat == _creat |
| 35 | creat64 == _creat | |
| 34 | 36 | _dup |
| 35 | 37 | dup == _dup |
| 36 | 38 | _dup2 |
| ... | ... | @@ -63,10 +65,12 @@ _fread_nolock |
| 63 | 65 | _fread_nolock_s |
| 64 | 66 | _fseek_nolock |
| 65 | 67 | _fseeki64 |
| 68 | fseeko64 == _fseeki64 | |
| 66 | 69 | _fseeki64_nolock |
| 67 | 70 | _fsopen |
| 68 | 71 | _ftell_nolock |
| 69 | 72 | _ftelli64 |
| 73 | ftello64 == _ftelli64 | |
| 70 | 74 | _ftelli64_nolock |
| 71 | 75 | _fwrite_nolock |
| 72 | 76 | _get_fmode |
| ... | ... | @@ -91,11 +95,13 @@ _locking |
| 91 | 95 | _lseek |
| 92 | 96 | lseek == _lseek |
| 93 | 97 | _lseeki64 |
| 98 | lseek64 == _lseeki64 | |
| 94 | 99 | _mktemp |
| 95 | 100 | mktemp == _mktemp |
| 96 | 101 | _mktemp_s |
| 97 | 102 | _open |
| 98 | 103 | open == _open |
| 104 | open64 == _open | |
| 99 | 105 | _open_osfhandle |
| 100 | 106 | _pclose |
| 101 | 107 | pclose == _pclose |
| ... | ... | @@ -160,6 +166,7 @@ fgets |
| 160 | 166 | fgetwc |
| 161 | 167 | fgetws |
| 162 | 168 | fopen |
| 169 | fopen64 == fopen | |
| 163 | 170 | fopen_s |
| 164 | 171 | fputc |
| 165 | 172 | fputs |
| ... | ... | @@ -168,11 +175,14 @@ fputws |
| 168 | 175 | fread |
| 169 | 176 | fread_s |
| 170 | 177 | freopen |
| 178 | freopen64 == freopen | |
| 171 | 179 | freopen_s |
| 172 | 180 | fseek |
| 181 | fseeko == fseek | |
| 173 | 182 | fsetpos |
| 174 | 183 | fsetpos64 == fsetpos |
| 175 | 184 | ftell |
| 185 | ftello == ftell | |
| 176 | 186 | fwrite |
| 177 | 187 | getc |
| 178 | 188 | getchar |
| ... | ... | @@ -189,6 +199,7 @@ rewind |
| 189 | 199 | setbuf |
| 190 | 200 | setvbuf |
| 191 | 201 | tmpfile |
| 202 | tmpfile64 == tmpfile | |
| 192 | 203 | tmpfile_s |
| 193 | 204 | tmpnam |
| 194 | 205 | tmpnam_s |
lib/libc/mingw/lib-common/api-ms-win-crt-string-l1-1-0.def+2-2| ... | ... | @@ -147,7 +147,7 @@ iswalpha |
| 147 | 147 | iswascii |
| 148 | 148 | iswblank |
| 149 | 149 | iswcntrl |
| 150 | iswctype | |
| 150 | __msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype | |
| 151 | 151 | iswdigit |
| 152 | 152 | iswgraph |
| 153 | 153 | iswlower |
| ... | ... | @@ -183,7 +183,7 @@ strtok_s |
| 183 | 183 | strxfrm |
| 184 | 184 | tolower |
| 185 | 185 | toupper |
| 186 | towctrans | |
| 186 | __msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans | |
| 187 | 187 | towlower |
| 188 | 188 | towupper |
| 189 | 189 | wcscat |
lib/libc/mingw/lib-common/kernel32.def.in+7| ... | ... | @@ -203,6 +203,8 @@ CreateActCtxWWorker |
| 203 | 203 | CreateBoundaryDescriptorA |
| 204 | 204 | CreateBoundaryDescriptorW |
| 205 | 205 | CreateConsoleScreenBuffer |
| 206 | CreateDirectory2A | |
| 207 | CreateDirectory2W | |
| 206 | 208 | CreateDirectoryA |
| 207 | 209 | CreateDirectoryExA |
| 208 | 210 | CreateDirectoryExW |
| ... | ... | @@ -217,6 +219,7 @@ CreateEventW |
| 217 | 219 | CreateFiber |
| 218 | 220 | CreateFiberEx |
| 219 | 221 | CreateFile2 |
| 222 | CreateFile3 | |
| 220 | 223 | CreateFileA |
| 221 | 224 | CreateFileMappingA |
| 222 | 225 | CreateFileMappingFromApp |
| ... | ... | @@ -302,6 +305,8 @@ DeleteAtom |
| 302 | 305 | DeleteBoundaryDescriptor |
| 303 | 306 | DeleteCriticalSection |
| 304 | 307 | DeleteFiber |
| 308 | DeleteFile2A | |
| 309 | DeleteFile2W | |
| 305 | 310 | DeleteFileA |
| 306 | 311 | DeleteFileTransactedA |
| 307 | 312 | DeleteFileTransactedW |
| ... | ... | @@ -1290,6 +1295,8 @@ ReleaseSRWLockExclusive |
| 1290 | 1295 | ReleaseSRWLockShared |
| 1291 | 1296 | ReleaseSemaphore |
| 1292 | 1297 | ReleaseSemaphoreWhenCallbackReturns |
| 1298 | RemoveDirectory2A | |
| 1299 | RemoveDirectory2W | |
| 1293 | 1300 | RemoveDirectoryA |
| 1294 | 1301 | RemoveDirectoryTransactedA |
| 1295 | 1302 | RemoveDirectoryTransactedW |
lib/libc/mingw/lib-common/ntdll.def.in+7-7| ... | ... | @@ -228,7 +228,7 @@ LdrSetMUICacheType |
| 228 | 228 | LdrShutdownProcess |
| 229 | 229 | LdrShutdownThread |
| 230 | 230 | LdrStandardizeSystemPath |
| 231 | LdrSystemDllInitBlock F_ARM_ANY(DATA) | |
| 231 | LdrSystemDllInitBlock DATA | |
| 232 | 232 | LdrUnloadAlternateResourceModule |
| 233 | 233 | LdrUnloadAlternateResourceModuleEx |
| 234 | 234 | LdrUnloadDll |
| ... | ... | @@ -455,7 +455,7 @@ NtLoadDriver |
| 455 | 455 | NtLoadEnclaveData |
| 456 | 456 | NtLoadKey |
| 457 | 457 | NtLoadKey2 |
| 458 | F_ARM_ANY(NtLoadKey3) | |
| 458 | NtLoadKey3 | |
| 459 | 459 | NtLoadKeyEx |
| 460 | 460 | NtLockFile |
| 461 | 461 | NtLockProductActivationKeys |
| ... | ... | @@ -1643,8 +1643,8 @@ F_X86_ANY(RtlUTF8StringToUnicodeString) |
| 1643 | 1643 | RtlUTF8ToUnicodeN |
| 1644 | 1644 | RtlUdiv128 |
| 1645 | 1645 | F_X64(RtlUmsThreadYield) |
| 1646 | F_ARM_ANY(RtlUlongByteSwap) | |
| 1647 | F_ARM_ANY(RtlUlonglongByteSwap) | |
| 1646 | F_ARM_NATIVE(RtlUlongByteSwap) | |
| 1647 | F_ARM_NATIVE(RtlUlonglongByteSwap) | |
| 1648 | 1648 | RtlUnhandledExceptionFilter |
| 1649 | 1649 | RtlUnhandledExceptionFilter2 |
| 1650 | 1650 | RtlUnicodeStringToAnsiSize |
| ... | ... | @@ -1690,7 +1690,7 @@ RtlUpperString |
| 1690 | 1690 | F_X86_ANY(RtlUsageHeap) |
| 1691 | 1691 | RtlUserFiberStart |
| 1692 | 1692 | RtlUserThreadStart |
| 1693 | F_ARM_ANY(RtlUshortByteSwap) | |
| 1693 | F_ARM_NATIVE(RtlUshortByteSwap) | |
| 1694 | 1694 | RtlValidAcl |
| 1695 | 1695 | RtlValidProcessProtection |
| 1696 | 1696 | RtlValidRelativeSecurityDescriptor |
| ... | ... | @@ -1758,7 +1758,7 @@ RtlpConvertRelativeToAbsoluteSecurityAttribute |
| 1758 | 1758 | RtlpCreateProcessRegistryInfo |
| 1759 | 1759 | RtlpEnsureBufferSize |
| 1760 | 1760 | F_X64(RtlpExecuteUmsThread) |
| 1761 | RtlpFreezeTimeBias F_ARM_ANY(DATA) | |
| 1761 | RtlpFreezeTimeBias DATA | |
| 1762 | 1762 | RtlpGetDeviceFamilyInfoEnum |
| 1763 | 1763 | RtlpGetLCIDFromLangInfoNode |
| 1764 | 1764 | RtlpGetNameFromLangInfoNode |
| ... | ... | @@ -2114,7 +2114,7 @@ ZwLoadDriver |
| 2114 | 2114 | ZwLoadEnclaveData |
| 2115 | 2115 | ZwLoadKey |
| 2116 | 2116 | ZwLoadKey2 |
| 2117 | F_ARM_ANY(ZwLoadKey3) | |
| 2117 | ZwLoadKey3 | |
| 2118 | 2118 | ZwLoadKeyEx |
| 2119 | 2119 | ZwLockFile |
| 2120 | 2120 | ZwLockProductActivationKeys |
lib/libc/mingw/lib-common/ntdllcrt.def.in+168-140| ... | ... | @@ -1,225 +1,253 @@ |
| 1 | 1 | #include "func.def.in" |
| 2 | 2 | |
| 3 | LIBRARY "ntdll.dll" | |
| 3 | LIBRARY "NTDLL.dll" | |
| 4 | 4 | EXPORTS |
| 5 | #ifdef __i386__ | |
| 6 | _CIcos | |
| 7 | _CIlog | |
| 8 | _CIpow | |
| 9 | _CIsin | |
| 10 | _CIsqrt | |
| 11 | #endif | |
| 12 | F_NON_I386(__C_specific_handler) | |
| 13 | F_NON_I386(;__chkstk) | |
| 14 | __isascii | |
| 15 | __iscsym | |
| 16 | __iscsymf | |
| 17 | F_X64(__misaligned_access) | |
| 18 | F_ARM32(__jump_unwind) | |
| 19 | __toascii | |
| 20 | #ifdef __i386__ | |
| 21 | _alldiv | |
| 22 | _alldvrm@16 | |
| 23 | _allmul@16 | |
| 24 | _alloca_probe | |
| 25 | _alloca_probe_16 | |
| 26 | _alloca_probe_8 | |
| 27 | _allrem@16 | |
| 28 | _allshl | |
| 29 | _allshr | |
| 30 | #endif | |
| 31 | _atoi64 | |
| 32 | #ifdef __i386__ | |
| 33 | _aulldiv@16 | |
| 34 | _aulldvrm@16 | |
| 35 | _aullrem@16 | |
| 36 | _aullshr | |
| 37 | ;_chkstk | |
| 38 | #endif | |
| 39 | _errno | |
| 40 | F_I386(_except_handler4_common) | |
| 5 | ||
| 6 | ; This is list of symbols available since Windows NT 3.5 | |
| 7 | ; Windows NT 3.1, Win32s and Win9x versions do not contain any CRT symbol | |
| 8 | F_I386(_CIpow) | |
| 9 | ; _abnormal_termination ; removed in Windows NT 3.51 | |
| 10 | ; F_I386(_chkstk) | |
| 11 | ; _except_handler2 ; removed in Windows NT 3.51 | |
| 41 | 12 | _fltused DATA |
| 42 | #ifdef __i386__ | |
| 43 | _ftol | |
| 44 | _ftol2 | |
| 45 | _ftol2_sse | |
| 46 | #endif | |
| 47 | _i64toa | |
| 48 | _i64toa_s | |
| 49 | _i64tow | |
| 50 | _i64tow_s | |
| 13 | F_I386(_ftol) | |
| 14 | ; _global_unwind2 ; removed in Windows NT 3.51 | |
| 51 | 15 | _itoa |
| 52 | _itoa_s | |
| 53 | _itow | |
| 54 | _itow_s | |
| 55 | _lfind | |
| 56 | F64(_local_unwind) | |
| 57 | F_I386(_local_unwind4) | |
| 16 | ; _local_unwind2 ; removed in Windows NT 3.51 | |
| 58 | 17 | _ltoa |
| 59 | _ltoa_s | |
| 60 | _ltow | |
| 61 | _ltow_s | |
| 62 | _makepath_s | |
| 63 | 18 | _memccpy |
| 64 | 19 | _memicmp |
| 65 | F_X64(_setjmp) | |
| 66 | F_ARM32(_setjmp) | |
| 67 | F_NON_I386(_setjmpex) | |
| 68 | 20 | _snprintf |
| 69 | _snprintf_s | |
| 70 | _snscanf_s | |
| 71 | 21 | _snwprintf |
| 72 | _snwprintf_s | |
| 73 | _snwscanf_s | |
| 74 | 22 | _splitpath |
| 75 | _splitpath_s | |
| 76 | 23 | _strcmpi |
| 77 | 24 | _stricmp |
| 78 | 25 | _strlwr |
| 79 | strlwr == _strlwr | |
| 80 | _strlwr_s | |
| 26 | strlwr == _strlwr ; manual alias | |
| 81 | 27 | _strnicmp |
| 82 | _strnset_s | |
| 83 | _strset_s | |
| 84 | 28 | _strupr |
| 85 | _strupr_s | |
| 86 | _swprintf | |
| 87 | F_X86_ANY(_tolower) | |
| 88 | F_X86_ANY(_toupper) | |
| 89 | _ui64toa | |
| 90 | _ui64toa_s | |
| 91 | _ui64tow | |
| 92 | _ui64tow_s | |
| 93 | 29 | _ultoa |
| 94 | _ultoa_s | |
| 95 | _ultow | |
| 96 | _ultow_s | |
| 97 | _vscprintf | |
| 98 | _vscwprintf | |
| 99 | 30 | _vsnprintf |
| 100 | _vsnprintf_s | |
| 101 | _vsnwprintf | |
| 102 | _vsnwprintf_s | |
| 103 | _vswprintf | |
| 104 | 31 | _wcsicmp |
| 105 | 32 | _wcslwr |
| 106 | wcslwr == _wcslwr | |
| 107 | _wcslwr_s | |
| 33 | wcslwr == _wcslwr ; manual alias | |
| 108 | 34 | _wcsnicmp |
| 109 | _wcsnset_s | |
| 110 | _wcsset_s | |
| 111 | _wcstoi64 | |
| 112 | _wcstoui64 | |
| 113 | 35 | _wcsupr |
| 114 | _wcsupr_s | |
| 115 | _wmakepath_s | |
| 116 | _wsplitpath_s | |
| 117 | _wtoi | |
| 118 | _wtoi64 | |
| 119 | _wtol | |
| 120 | 36 | abs |
| 121 | atan F_X86_ANY(DATA) | |
| 122 | atan2 | |
| 37 | atan F_X86_ANY(DATA) ; replaced by emu | |
| 123 | 38 | atoi |
| 124 | 39 | atol |
| 125 | bsearch | |
| 126 | bsearch_s | |
| 127 | 40 | ceil |
| 128 | cos F_X86_ANY(DATA) | |
| 129 | fabs F_X86_ANY(DATA) | |
| 130 | floor F_X86_ANY(DATA) | |
| 131 | isalnum | |
| 41 | cos F_X86_ANY(DATA) ; replaced by emu | |
| 42 | fabs F_X86_ANY(DATA) ; replaced by emu | |
| 43 | floor F_X86_ANY(DATA) ; replaced by emu | |
| 132 | 44 | isalpha |
| 133 | iscntrl | |
| 134 | 45 | isdigit |
| 135 | isgraph | |
| 136 | 46 | islower |
| 137 | 47 | isprint |
| 138 | ispunct | |
| 139 | 48 | isspace |
| 140 | 49 | isupper |
| 141 | iswalnum | |
| 142 | 50 | iswalpha |
| 143 | iswascii | |
| 144 | 51 | iswctype |
| 145 | iswdigit | |
| 146 | iswgraph | |
| 147 | iswlower | |
| 148 | iswprint | |
| 149 | iswspace | |
| 150 | iswxdigit | |
| 151 | 52 | isxdigit |
| 152 | 53 | labs |
| 153 | 54 | log |
| 154 | F_NON_I386(longjmp) | |
| 155 | 55 | mbstowcs |
| 156 | 56 | memchr |
| 157 | 57 | memcmp |
| 158 | 58 | memcpy |
| 159 | memcpy_s | |
| 160 | 59 | memmove |
| 161 | memmove_s | |
| 162 | 60 | memset |
| 163 | 61 | pow |
| 164 | 62 | qsort |
| 165 | qsort_s | |
| 166 | 63 | sin |
| 167 | 64 | sprintf |
| 168 | sprintf_s | |
| 169 | 65 | sqrt |
| 170 | 66 | sscanf |
| 171 | sscanf_s | |
| 172 | 67 | strcat |
| 173 | strcat_s | |
| 174 | 68 | strchr |
| 175 | 69 | strcmp |
| 176 | 70 | strcpy |
| 177 | strcpy_s | |
| 178 | 71 | strcspn |
| 179 | 72 | strlen |
| 180 | 73 | strncat |
| 181 | strncat_s | |
| 182 | 74 | strncmp |
| 183 | 75 | strncpy |
| 184 | strncpy_s | |
| 185 | strnlen | |
| 186 | 76 | strpbrk |
| 187 | 77 | strrchr |
| 188 | 78 | strspn |
| 189 | 79 | strstr |
| 190 | strtok_s | |
| 191 | strtol | |
| 192 | strtoul | |
| 193 | 80 | swprintf |
| 194 | swprintf_s | |
| 195 | swscanf_s | |
| 196 | 81 | tan |
| 197 | 82 | tolower |
| 198 | 83 | toupper |
| 199 | 84 | towlower |
| 200 | 85 | towupper |
| 201 | 86 | vsprintf |
| 202 | vsprintf_s | |
| 203 | vswprintf_s | |
| 204 | 87 | wcscat |
| 205 | wcscat_s | |
| 206 | 88 | wcschr |
| 207 | 89 | wcscmp |
| 208 | 90 | wcscpy |
| 209 | wcscpy_s | |
| 210 | 91 | wcscspn |
| 211 | 92 | wcslen |
| 212 | 93 | wcsncat |
| 213 | wcsncat_s | |
| 214 | 94 | wcsncmp |
| 215 | 95 | wcsncpy |
| 216 | wcsncpy_s | |
| 217 | wcsnlen | |
| 218 | 96 | wcspbrk |
| 219 | 97 | wcsrchr |
| 220 | 98 | wcsspn |
| 221 | 99 | wcsstr |
| 222 | wcstok_s | |
| 100 | ; wcstok ; removed in Windows NT 4.0 | |
| 223 | 101 | wcstol |
| 224 | 102 | wcstombs |
| 225 | 103 | wcstoul |
| 104 | ||
| 105 | ; This is list of symbols added in Windows NT 3.51 | |
| 106 | F_I386(_alloca_probe) | |
| 107 | ||
| 108 | ; This is list of symbols added in Windows NT 4.0 | |
| 109 | __isascii | |
| 110 | __iscsym | |
| 111 | __iscsymf | |
| 112 | __toascii | |
| 113 | F_I386(_alldiv@16) ; stdcall | |
| 114 | F_I386(_allmul@16) ; stdcall | |
| 115 | F_I386(_allrem@16) ; stdcall | |
| 116 | F_I386(_allshl) | |
| 117 | F_I386(_allshr) | |
| 118 | _atoi64 | |
| 119 | F_I386(_aulldiv@16) ; stdcall | |
| 120 | F_I386(_aullrem@16) ; stdcall | |
| 121 | F_I386(_aullshr) | |
| 122 | _i64toa | |
| 123 | _i64tow | |
| 124 | _itow | |
| 125 | _ltow | |
| 126 | F_X86_ANY(_tolower) ; removed in Windows Vista | |
| 127 | F_X86_ANY(_toupper) ; removed in Windows Vista | |
| 128 | _ultow | |
| 129 | _wtoi | |
| 130 | _wtoi64 | |
| 131 | _wtol | |
| 132 | isalnum | |
| 133 | iscntrl | |
| 134 | isgraph | |
| 135 | ispunct | |
| 136 | strtol | |
| 137 | strtoul | |
| 138 | ||
| 139 | ; This is list of symbols added in Windows 2000 | |
| 140 | _ui64toa | |
| 141 | iswdigit | |
| 142 | iswlower | |
| 143 | iswspace | |
| 144 | iswxdigit | |
| 145 | ||
| 146 | ; This is list of symbols added in Windows XP | |
| 147 | F_I386(_CIcos) | |
| 148 | F_I386(_CIlog) | |
| 149 | F_I386(_CIsin) | |
| 150 | F_I386(_CIsqrt) | |
| 151 | F_I386(_alldvrm@16) ; stdcall | |
| 152 | F_I386(_aulldvrm@16) ; stdcall | |
| 153 | _lfind | |
| 154 | _ui64tow | |
| 155 | _vsnwprintf | |
| 156 | bsearch | |
| 157 | ||
| 158 | ; This is list of symbols added in Windows Server 2003 | |
| 159 | _vscwprintf | |
| 160 | _wcstoui64 | |
| 161 | ||
| 162 | ; This is list of symbols added in Windows Server 2003 SP1 / Windows XP x64 SP1 | |
| 163 | F_NON_I386(__C_specific_handler) | |
| 164 | ; F_NON_I386(__chkstk) | |
| 165 | F_X64(__misaligned_access) | |
| 166 | F64(_local_unwind) | |
| 167 | F_NON_I386(F_NON_ARM64(_setjmp)) | |
| 168 | F_NON_I386(_setjmpex) | |
| 169 | F_NON_I386(longjmp) | |
| 170 | ||
| 171 | ; This is list of symbols added in Windows Vista | |
| 172 | F_I386(_alloca_probe_16) | |
| 173 | F_I386(_alloca_probe_8) | |
| 174 | _swprintf | |
| 175 | _vswprintf | |
| 176 | ||
| 177 | ; This is list of symbols added in Windows 7 | |
| 178 | _i64toa_s | |
| 179 | _i64tow_s | |
| 180 | _itoa_s | |
| 181 | _itow_s | |
| 182 | _ltoa_s | |
| 183 | _ltow_s | |
| 184 | _makepath_s | |
| 185 | _snprintf_s | |
| 186 | _snscanf_s | |
| 187 | _snwprintf_s | |
| 188 | _snwscanf_s | |
| 189 | _splitpath_s | |
| 190 | _strnset_s | |
| 191 | _strset_s | |
| 192 | _ui64toa_s | |
| 193 | _ui64tow_s | |
| 194 | _ultoa_s | |
| 195 | _ultow_s | |
| 196 | _vsnprintf_s | |
| 197 | _vsnwprintf_s | |
| 198 | _wcsnset_s | |
| 199 | _wcsset_s | |
| 200 | _wmakepath_s | |
| 201 | _wsplitpath_s | |
| 202 | memcpy_s | |
| 203 | memmove_s | |
| 204 | sprintf_s | |
| 205 | sscanf_s | |
| 206 | strcat_s | |
| 207 | strcpy_s | |
| 208 | strncat_s | |
| 209 | strncpy_s | |
| 210 | strnlen | |
| 211 | strtok_s | |
| 212 | swprintf_s | |
| 213 | swscanf_s | |
| 214 | vsprintf_s | |
| 215 | vswprintf_s | |
| 216 | wcscat_s | |
| 217 | wcscpy_s | |
| 218 | wcsncat_s | |
| 219 | wcsncpy_s | |
| 220 | wcsnlen | |
| 221 | ||
| 222 | ; This is list of symbols added in Windows 8 | |
| 223 | F_ARM32(__jump_unwind) | |
| 224 | _errno | |
| 225 | F_I386(_except_handler4_common) | |
| 226 | F_I386(_ftol2) | |
| 227 | F_I386(_ftol2_sse) | |
| 228 | F_I386(_local_unwind4) | |
| 229 | _strlwr_s | |
| 230 | _strupr_s | |
| 231 | _wcslwr_s | |
| 232 | _wcstoi64 | |
| 233 | _wcsupr_s | |
| 234 | iswalnum | |
| 235 | iswascii | |
| 236 | iswgraph | |
| 237 | iswprint | |
| 238 | qsort_s | |
| 239 | wcstok_s | |
| 240 | ||
| 241 | ; This is list of symbols added in Windows 10 (Threshold / 1507) | |
| 242 | atan2 | |
| 243 | ||
| 244 | ; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 245 | bsearch_s | |
| 246 | ||
| 247 | ; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 248 | _vscprintf | |
| 249 | ||
| 250 | ; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) | |
| 251 | ; _libm_sse2_cos_precise | |
| 252 | ; _libm_sse2_sin_precise | |
| 253 | ; _libm_sse2_sqrt_precise |
lib/libc/mingw/lib-common/oleacc.def+10-5| ... | ... | @@ -1,10 +1,13 @@ |
| 1 | 1 | ; |
| 2 | 2 | ; Definition file of OLEACC.dll |
| 3 | ; Automatic generated by gendef | |
| 4 | ; written by Kai Tietz 2008-2014 | |
| 3 | ; Automatic generated by gendef 1.1 | |
| 4 | ; written by Kai Tietz 2008 | |
| 5 | ; The def file has to be processed by --kill-at (-k) option of dlltool or ld | |
| 5 | 6 | ; |
| 6 | 7 | LIBRARY "OLEACC.dll" |
| 7 | 8 | EXPORTS |
| 9 | ;DllRegisterServer | |
| 10 | ;DllUnregisterServer | |
| 8 | 11 | AccGetRunningUtilityState |
| 9 | 12 | AccNotifyTouchInteraction |
| 10 | 13 | AccSetRunningUtilityState |
| ... | ... | @@ -16,15 +19,17 @@ AccessibleObjectFromWindowTimeout |
| 16 | 19 | CreateStdAccessibleObject |
| 17 | 20 | CreateStdAccessibleProxyA |
| 18 | 21 | CreateStdAccessibleProxyW |
| 22 | ;DllCanUnloadNow | |
| 23 | ;DllGetClassObject | |
| 19 | 24 | GetOleaccVersionInfo |
| 20 | 25 | GetProcessHandleFromHwnd |
| 21 | 26 | GetRoleTextA |
| 22 | 27 | GetRoleTextW |
| 23 | 28 | GetStateTextA |
| 24 | 29 | GetStateTextW |
| 25 | IID_IAccessible | |
| 26 | IID_IAccessibleHandler | |
| 27 | LIBID_Accessibility | |
| 30 | ;IID_IAccessible DATA | |
| 31 | ;IID_IAccessibleHandler DATA | |
| 32 | ;LIBID_Accessibility DATA | |
| 28 | 33 | LresultFromObject |
| 29 | 34 | ObjectFromLresult |
| 30 | 35 | PropMgrClient_LookupProp |
lib/libc/mingw/lib-common/ucrtbase-common.def.in+9-9| ... | ... | @@ -75,8 +75,8 @@ _IsExceptionObjectToBeDestroyed |
| 75 | 75 | _LCbuild |
| 76 | 76 | _LCmulcc |
| 77 | 77 | _LCmulcr |
| 78 | F_I386(_NLG_Dispatch2@4) | |
| 79 | F_I386(_NLG_Return@12) | |
| 78 | F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4) | |
| 79 | F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12) | |
| 80 | 80 | F_I386(_NLG_Return2) |
| 81 | 81 | F_X64(_SetImageBase) |
| 82 | 82 | F_X64(_SetThrowImageBase) |
| ... | ... | @@ -246,7 +246,7 @@ _aligned_realloc |
| 246 | 246 | F_DEBUG(_aligned_realloc_dbg) |
| 247 | 247 | _aligned_recalloc |
| 248 | 248 | F_DEBUG(_aligned_recalloc_dbg) |
| 249 | _assert | |
| 249 | __msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol | |
| 250 | 250 | _atodbl |
| 251 | 251 | _atodbl_l |
| 252 | 252 | _atof_l |
| ... | ... | @@ -1656,7 +1656,7 @@ _o_exp2f |
| 1656 | 1656 | F_LD64(_o_exp2l) ; Can't use long double functions from the CRT on x86 |
| 1657 | 1657 | F_NON_I386(_o_expf) |
| 1658 | 1658 | _o_fabs |
| 1659 | F_ARM_ANY(_o_fabsf) | |
| 1659 | F_ARM_NATIVE(_o_fabsf) | |
| 1660 | 1660 | _o_fclose |
| 1661 | 1661 | _o_feof |
| 1662 | 1662 | _o_ferror |
| ... | ... | @@ -2233,7 +2233,7 @@ atol |
| 2233 | 2233 | atoll |
| 2234 | 2234 | bsearch |
| 2235 | 2235 | bsearch_s |
| 2236 | btowc | |
| 2236 | ; btowc ; replaced for consistency with wctob | |
| 2237 | 2237 | c16rtomb |
| 2238 | 2238 | c32rtomb |
| 2239 | 2239 | cabs |
| ... | ... | @@ -2338,7 +2338,7 @@ expm1 |
| 2338 | 2338 | expm1f |
| 2339 | 2339 | F_LD64(expm1l) ; Can't use long double functions from the CRT on x86 |
| 2340 | 2340 | fabs |
| 2341 | F_ARM_ANY(fabsf) | |
| 2341 | F_ARM_NATIVE(fabsf) | |
| 2342 | 2342 | fclose |
| 2343 | 2343 | fdim |
| 2344 | 2344 | fdimf |
| ... | ... | @@ -2424,7 +2424,7 @@ iswalpha |
| 2424 | 2424 | iswascii |
| 2425 | 2425 | iswblank |
| 2426 | 2426 | iswcntrl |
| 2427 | iswctype | |
| 2427 | __msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype | |
| 2428 | 2428 | iswdigit |
| 2429 | 2429 | iswgraph |
| 2430 | 2430 | iswlower |
| ... | ... | @@ -2609,7 +2609,7 @@ tmpnam |
| 2609 | 2609 | tmpnam_s |
| 2610 | 2610 | tolower |
| 2611 | 2611 | toupper |
| 2612 | towctrans | |
| 2612 | __msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans | |
| 2613 | 2613 | towlower |
| 2614 | 2614 | towupper |
| 2615 | 2615 | trunc |
| ... | ... | @@ -2656,7 +2656,7 @@ wcstoul |
| 2656 | 2656 | wcstoull |
| 2657 | 2657 | wcstoumax |
| 2658 | 2658 | wcsxfrm |
| 2659 | wctob | |
| 2659 | ; wctob ; replaced, CRT version may sign-extend its return value | |
| 2660 | 2660 | wctomb |
| 2661 | 2661 | wctomb_s |
| 2662 | 2662 | wctrans |
lib/libc/mingw/lib-common/vcruntime140-common.def.in+2-2| ... | ... | @@ -4,8 +4,8 @@ F_NON_I386(_CxxThrowException) |
| 4 | 4 | F_I386(_EH_prolog) |
| 5 | 5 | _FindAndUnlinkFrame |
| 6 | 6 | _IsExceptionObjectToBeDestroyed |
| 7 | F_I386(_NLG_Dispatch2@4) | |
| 8 | F_I386(_NLG_Return@12) | |
| 7 | F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4) | |
| 8 | F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12) | |
| 9 | 9 | F_I386(_NLG_Return2) |
| 10 | 10 | _SetWinRTOutOfMemoryExceptionCallback |
| 11 | 11 | __AdjustPointer |
lib/libc/mingw/lib32/advapi32.def+843-653| ... | ... | @@ -1,369 +1,80 @@ |
| 1 | ; | |
| 2 | ; Definition file of ADVAPI32.dll | |
| 3 | ; Automatic generated by gendef | |
| 4 | ; written by Kai Tietz 2008 | |
| 5 | ; | |
| 6 | 1 | LIBRARY "ADVAPI32.dll" |
| 7 | 2 | EXPORTS |
| 8 | ord_1000@8 @1000 | |
| 9 | I_ScGetCurrentGroupStateW@12 | |
| 10 | A_SHAFinal@8 | |
| 11 | A_SHAInit@4 | |
| 12 | A_SHAUpdate@12 | |
| 3 | ||
| 4 | ; This file is a comprehensive documentation for 32-bit x86 advapi32.dll symbols. | |
| 5 | ; It covers all 3 platforms (Win32s, Win9x and WinNT) and contains information | |
| 6 | ; from native advapi32.dll libraries on 32-bit Windows systems and also from | |
| 7 | ; 32-bit WoW64 advapi32.dll libraries on 64-bit Windows systems. Symbols in this | |
| 8 | ; file are ordered by increasing Windows version in which they were introduced. | |
| 9 | ; First are Win32s versions, then followed by Win9x versions and then WinNT | |
| 10 | ; because logically Win32s symbols are a subset of Win9x symbols which are a | |
| 11 | ; subset of WinNT symbols. Comments contains additional information with exceptions. | |
| 12 | ; | |
| 13 | ; BEWARE that this file contains only information about symbol availability and | |
| 14 | ; whether it is possible to load an application or library which references these | |
| 15 | ; symbols. It does not contain information if the particular Windows version | |
| 16 | ; supports or implements corresponding API functions. Lots of -W functions are | |
| 17 | ; unimplemented on Win32s and Win9x platforms and simply signal | |
| 18 | ; ERROR_CALL_NOT_IMPLEMENTED. | |
| 19 | ||
| 20 | ; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1; | |
| 21 | ; Win9x since Windows 95; WinNT since Windows NT 3.1) | |
| 13 | 22 | AbortSystemShutdownA@4 |
| 14 | 23 | AbortSystemShutdownW@4 |
| 15 | 24 | AccessCheck@32 |
| 16 | 25 | AccessCheckAndAuditAlarmA@44 |
| 17 | 26 | AccessCheckAndAuditAlarmW@44 |
| 18 | AccessCheckByType@44 | |
| 19 | AccessCheckByTypeAndAuditAlarmA@64 | |
| 20 | AccessCheckByTypeAndAuditAlarmW@64 | |
| 21 | AccessCheckByTypeResultList@44 | |
| 22 | AccessCheckByTypeResultListAndAuditAlarmA@64 | |
| 23 | AccessCheckByTypeResultListAndAuditAlarmByHandleA@68 | |
| 24 | AccessCheckByTypeResultListAndAuditAlarmByHandleW@68 | |
| 25 | AccessCheckByTypeResultListAndAuditAlarmW@64 | |
| 26 | 27 | AddAccessAllowedAce@16 |
| 27 | AddAccessAllowedAceEx@20 | |
| 28 | AddAccessAllowedObjectAce@28 | |
| 29 | 28 | AddAccessDeniedAce@16 |
| 30 | AddAccessDeniedAceEx@20 | |
| 31 | AddAccessDeniedObjectAce@28 | |
| 32 | 29 | AddAce@20 |
| 33 | 30 | AddAuditAccessAce@24 |
| 34 | AddAuditAccessAceEx@28 | |
| 35 | AddAuditAccessObjectAce@36 | |
| 36 | AddConditionalAce@32 | |
| 37 | AddMandatoryAce@20 | |
| 38 | AddUsersToEncryptedFile@8 | |
| 39 | AddUsersToEncryptedFileEx@16 | |
| 40 | 31 | AdjustTokenGroups@24 |
| 41 | 32 | AdjustTokenPrivileges@24 |
| 42 | 33 | AllocateAndInitializeSid@44 |
| 43 | 34 | AllocateLocallyUniqueId@4 |
| 44 | 35 | AreAllAccessesGranted@8 |
| 45 | 36 | AreAnyAccessesGranted@8 |
| 46 | AuditComputeEffectivePolicyBySid@16 | |
| 47 | AuditComputeEffectivePolicyByToken@16 | |
| 48 | AuditEnumerateCategories@8 | |
| 49 | AuditEnumeratePerUserPolicy@4 | |
| 50 | AuditEnumerateSubCategories@16 | |
| 51 | AuditFree@4 | |
| 52 | AuditLookupCategoryGuidFromCategoryId@8 | |
| 53 | AuditLookupCategoryIdFromCategoryGuid@8 | |
| 54 | AuditLookupCategoryNameA@8 | |
| 55 | AuditLookupCategoryNameW@8 | |
| 56 | AuditLookupSubCategoryNameA@8 | |
| 57 | AuditLookupSubCategoryNameW@8 | |
| 58 | AuditQueryGlobalSaclA@8 | |
| 59 | AuditQueryGlobalSaclW@8 | |
| 60 | AuditQueryPerUserPolicy@16 | |
| 61 | AuditQuerySecurity@8 | |
| 62 | AuditQuerySystemPolicy@12 | |
| 63 | AuditSetGlobalSaclA@8 | |
| 64 | AuditSetGlobalSaclW@8 | |
| 65 | AuditSetPerUserPolicy@12 | |
| 66 | AuditSetSecurity@8 | |
| 67 | AuditSetSystemPolicy@8 | |
| 68 | 37 | BackupEventLogA@8 |
| 69 | 38 | BackupEventLogW@8 |
| 70 | BaseRegCloseKey@4 | |
| 71 | BaseRegCreateKey@32 | |
| 72 | BaseRegDeleteKeyEx@16 | |
| 73 | BaseRegDeleteValue@8 | |
| 74 | BaseRegFlushKey@4 | |
| 75 | BaseRegGetVersion@8 | |
| 76 | BaseRegLoadKey@12 | |
| 77 | BaseRegOpenKey@20 | |
| 78 | BaseRegRestoreKey@12 | |
| 79 | BaseRegSaveKeyEx@16 | |
| 80 | BaseRegSetKeySecurity@12 | |
| 81 | BaseRegSetValue@20 | |
| 82 | BaseRegUnLoadKey@8 | |
| 83 | BuildExplicitAccessWithNameA@20 | |
| 84 | BuildExplicitAccessWithNameW@20 | |
| 85 | BuildImpersonateExplicitAccessWithNameA@24 | |
| 86 | BuildImpersonateExplicitAccessWithNameW@24 | |
| 87 | BuildImpersonateTrusteeA@8 | |
| 88 | BuildImpersonateTrusteeW@8 | |
| 89 | BuildSecurityDescriptorA@36 | |
| 90 | BuildSecurityDescriptorW@36 | |
| 91 | BuildTrusteeWithNameA@8 | |
| 92 | BuildTrusteeWithNameW@8 | |
| 93 | BuildTrusteeWithObjectsAndNameA@24 | |
| 94 | BuildTrusteeWithObjectsAndNameW@24 | |
| 95 | BuildTrusteeWithObjectsAndSidA@20 | |
| 96 | BuildTrusteeWithObjectsAndSidW@20 | |
| 97 | BuildTrusteeWithSidA@8 | |
| 98 | BuildTrusteeWithSidW@8 | |
| 99 | CancelOverlappedAccess@4 | |
| 100 | ChangeServiceConfig2A@12 | |
| 101 | ChangeServiceConfig2W@12 | |
| 102 | 39 | ChangeServiceConfigA@44 |
| 103 | 40 | ChangeServiceConfigW@44 |
| 104 | CheckForHiberboot@8 | |
| 105 | CheckTokenMembership@12 | |
| 106 | 41 | ClearEventLogA@8 |
| 107 | 42 | ClearEventLogW@8 |
| 108 | CloseCodeAuthzLevel@4 | |
| 109 | CloseEncryptedFileRaw@4 | |
| 110 | 43 | CloseEventLog@4 |
| 111 | 44 | CloseServiceHandle@4 |
| 112 | CloseThreadWaitChainSession@4 | |
| 113 | CloseTrace@8 | |
| 114 | CommandLineFromMsiDescriptor@12 | |
| 115 | ComputeAccessTokenFromCodeAuthzLevel@20 | |
| 116 | 45 | ControlService@12 |
| 117 | ControlServiceExA@16 | |
| 118 | ControlServiceExW@16 | |
| 119 | ControlTraceA@20 | |
| 120 | ControlTraceW@20 | |
| 121 | ConvertAccessToSecurityDescriptorA@20 | |
| 122 | ConvertAccessToSecurityDescriptorW@20 | |
| 123 | ConvertSDToStringSDDomainW@28 | |
| 124 | ConvertSDToStringSDRootDomainA@24 | |
| 125 | ConvertSDToStringSDRootDomainW@24 | |
| 126 | ConvertSecurityDescriptorToAccessA@28 | |
| 127 | ConvertSecurityDescriptorToAccessNamedA@28 | |
| 128 | ConvertSecurityDescriptorToAccessNamedW@28 | |
| 129 | ConvertSecurityDescriptorToAccessW@28 | |
| 130 | ConvertSecurityDescriptorToStringSecurityDescriptorA@20 | |
| 131 | ConvertSecurityDescriptorToStringSecurityDescriptorW@20 | |
| 132 | ConvertSidToStringSidA@8 | |
| 133 | ConvertSidToStringSidW@8 | |
| 134 | ConvertStringSDToSDDomainA@24 | |
| 135 | ConvertStringSDToSDDomainW@24 | |
| 136 | ConvertStringSDToSDRootDomainA@20 | |
| 137 | ConvertStringSDToSDRootDomainW@20 | |
| 138 | ConvertStringSecurityDescriptorToSecurityDescriptorA@16 | |
| 139 | ConvertStringSecurityDescriptorToSecurityDescriptorW@16 | |
| 140 | ConvertStringSidToSidA@8 | |
| 141 | ConvertStringSidToSidW@8 | |
| 142 | ConvertToAutoInheritPrivateObjectSecurity@24 | |
| 143 | 46 | CopySid@12 |
| 144 | CreateCodeAuthzLevel@20 | |
| 145 | 47 | CreatePrivateObjectSecurity@24 |
| 146 | CreatePrivateObjectSecurityEx@32 | |
| 147 | CreatePrivateObjectSecurityWithMultipleInheritance@36 | |
| 148 | CreateProcessAsUserA@44 | |
| 149 | CreateProcessAsUserW@44 | |
| 150 | CreateProcessWithLogonW@44 | |
| 151 | CreateProcessWithTokenW@36 | |
| 152 | CreateRestrictedToken@36 | |
| 153 | 48 | CreateServiceA@52 |
| 154 | 49 | CreateServiceW@52 |
| 155 | CreateTraceInstanceId@8 | |
| 156 | CreateWellKnownSid@16 | |
| 157 | CredBackupCredentials@20 | |
| 158 | CredDeleteA@12 | |
| 159 | CredDeleteW@12 | |
| 160 | CredEncryptAndMarshalBinaryBlob@12 | |
| 161 | CredEnumerateA@16 | |
| 162 | CredEnumerateW@16 | |
| 163 | CredFindBestCredentialA@16 | |
| 164 | CredFindBestCredentialW@16 | |
| 165 | CredFree@4 | |
| 166 | CredGetSessionTypes@8 | |
| 167 | CredGetTargetInfoA@12 | |
| 168 | CredGetTargetInfoW@12 | |
| 169 | CredIsMarshaledCredentialA@4 | |
| 170 | CredIsMarshaledCredentialW@4 | |
| 171 | CredIsProtectedA@8 | |
| 172 | CredIsProtectedW@8 | |
| 173 | CredMarshalCredentialA@12 | |
| 174 | CredMarshalCredentialW@12 | |
| 175 | CredProfileLoaded@0 | |
| 176 | CredProfileUnloaded@0 | |
| 177 | CredProtectA@24 | |
| 178 | CredProtectW@24 | |
| 179 | CredReadA@16 | |
| 180 | CredReadByTokenHandle@20 | |
| 181 | CredReadDomainCredentialsA@16 | |
| 182 | CredReadDomainCredentialsW@16 | |
| 183 | CredReadW@16 | |
| 184 | CredRenameA@16 | |
| 185 | CredRenameW@16 | |
| 186 | CredRestoreCredentials@16 | |
| 187 | CredUnmarshalCredentialA@12 | |
| 188 | CredUnmarshalCredentialW@12 | |
| 189 | CredUnprotectA@20 | |
| 190 | CredUnprotectW@20 | |
| 191 | CredWriteA@8 | |
| 192 | CredWriteDomainCredentialsA@12 | |
| 193 | CredWriteDomainCredentialsW@12 | |
| 194 | CredWriteW@8 | |
| 195 | CredpConvertCredential@16 | |
| 196 | CredpConvertOneCredentialSize@8 | |
| 197 | CredpConvertTargetInfo@16 | |
| 198 | CredpDecodeCredential@4 | |
| 199 | CredpEncodeCredential@4 | |
| 200 | CredpEncodeSecret@20 | |
| 201 | CryptAcquireContextA@20 | |
| 202 | CryptAcquireContextW@20 | |
| 203 | CryptContextAddRef@12 | |
| 204 | CryptCreateHash@20 | |
| 205 | CryptDecrypt@24 | |
| 206 | CryptDeriveKey@20 | |
| 207 | CryptDestroyHash@4 | |
| 208 | CryptDestroyKey@4 | |
| 209 | CryptDuplicateHash@16 | |
| 210 | CryptDuplicateKey@16 | |
| 211 | CryptEncrypt@28 | |
| 212 | CryptEnumProviderTypesA@24 | |
| 213 | CryptEnumProviderTypesW@24 | |
| 214 | CryptEnumProvidersA@24 | |
| 215 | CryptEnumProvidersW@24 | |
| 216 | CryptExportKey@24 | |
| 217 | CryptGenKey@16 | |
| 218 | CryptGenRandom@12 | |
| 219 | CryptGetDefaultProviderA@20 | |
| 220 | CryptGetDefaultProviderW@20 | |
| 221 | CryptGetHashParam@20 | |
| 222 | CryptGetKeyParam@20 | |
| 223 | CryptGetProvParam@20 | |
| 224 | CryptGetUserKey@12 | |
| 225 | CryptHashData@16 | |
| 226 | CryptHashSessionKey@12 | |
| 227 | CryptImportKey@24 | |
| 228 | CryptReleaseContext@8 | |
| 229 | CryptSetHashParam@16 | |
| 230 | CryptSetKeyParam@16 | |
| 231 | CryptSetProvParam@16 | |
| 232 | CryptSetProviderA@8 | |
| 233 | CryptSetProviderExA@16 | |
| 234 | CryptSetProviderExW@16 | |
| 235 | CryptSetProviderW@8 | |
| 236 | CryptSignHashA@24 | |
| 237 | CryptSignHashW@24 | |
| 238 | CryptVerifySignatureA@24 | |
| 239 | CryptVerifySignatureW@24 | |
| 240 | CveEventWrite@8 | |
| 241 | DecryptFileA@8 | |
| 242 | DecryptFileW@8 | |
| 243 | 50 | DeleteAce@8 |
| 244 | 51 | DeleteService@4 |
| 245 | 52 | DeregisterEventSource@4 |
| 246 | 53 | DestroyPrivateObjectSecurity@4 |
| 247 | DuplicateEncryptionInfoFile@20 | |
| 248 | 54 | DuplicateToken@12 |
| 249 | DuplicateTokenEx@24 | |
| 250 | ElfBackupEventLogFileA@8 | |
| 251 | ElfBackupEventLogFileW@8 | |
| 252 | ElfChangeNotify@8 | |
| 253 | ElfClearEventLogFileA@8 | |
| 254 | ElfClearEventLogFileW@8 | |
| 255 | ElfCloseEventLog@4 | |
| 256 | ElfDeregisterEventSource@4 | |
| 257 | ElfFlushEventLog@4 | |
| 258 | ElfNumberOfRecords@8 | |
| 259 | ElfOldestRecord@8 | |
| 260 | ElfOpenBackupEventLogA@12 | |
| 261 | ElfOpenBackupEventLogW@12 | |
| 262 | ElfOpenEventLogA@12 | |
| 263 | ElfOpenEventLogW@12 | |
| 264 | ElfReadEventLogA@28 | |
| 265 | ElfReadEventLogW@28 | |
| 266 | ElfRegisterEventSourceA@12 | |
| 267 | ElfRegisterEventSourceW@12 | |
| 268 | ElfReportEventA@48 | |
| 269 | ElfReportEventAndSourceW@60 | |
| 270 | ElfReportEventW@48 | |
| 271 | EnableTrace@24 | |
| 272 | EnableTraceEx2@44 | |
| 273 | EnableTraceEx@48 | |
| 274 | EncryptFileA@4 | |
| 275 | EncryptFileW@4 | |
| 276 | EncryptedFileKeyInfo@12 | |
| 277 | EncryptionDisable@8 | |
| 278 | 55 | EnumDependentServicesA@24 |
| 279 | 56 | EnumDependentServicesW@24 |
| 280 | EnumDynamicTimeZoneInformation@8 | |
| 281 | EnumServiceGroupW@36 | |
| 282 | 57 | EnumServicesStatusA@32 |
| 283 | EnumServicesStatusExA@40 | |
| 284 | EnumServicesStatusExW@40 | |
| 285 | 58 | EnumServicesStatusW@32 |
| 286 | EnumerateTraceGuids@12 | |
| 287 | EnumerateTraceGuidsEx@24 | |
| 288 | EqualDomainSid@12 | |
| 289 | 59 | EqualPrefixSid@8 |
| 290 | 60 | EqualSid@8 |
| 291 | EventAccessControl@20 | |
| 292 | EventAccessQuery@12 | |
| 293 | EventAccessRemove@4 | |
| 294 | EventActivityIdControl@8 | |
| 295 | EventEnabled@12 | |
| 296 | EventProviderEnabled@20 | |
| 297 | EventRegister@16 | |
| 298 | EventSetInformation@20 | |
| 299 | EventUnregister@8 | |
| 300 | EventWrite@20 | |
| 301 | EventWriteEndScenario@20 | |
| 302 | EventWriteEx@40 | |
| 303 | EventWriteStartScenario@20 | |
| 304 | EventWriteString@24 | |
| 305 | EventWriteTransfer@28 | |
| 306 | FileEncryptionStatusA@8 | |
| 307 | FileEncryptionStatusW@8 | |
| 308 | 61 | FindFirstFreeAce@8 |
| 309 | FlushEfsCache@4 | |
| 310 | FlushTraceA@16 | |
| 311 | FlushTraceW@16 | |
| 312 | FreeEncryptedFileKeyInfo@4 | |
| 313 | FreeEncryptedFileMetadata@4 | |
| 314 | FreeEncryptionCertificateHashList@4 | |
| 315 | FreeInheritedFromArray@12 | |
| 316 | 62 | FreeSid@4 |
| 317 | GetAccessPermissionsForObjectA@36 | |
| 318 | GetAccessPermissionsForObjectW@36 | |
| 319 | 63 | GetAce@12 |
| 320 | 64 | GetAclInformation@16 |
| 321 | GetAuditedPermissionsFromAclA@16 | |
| 322 | GetAuditedPermissionsFromAclW@16 | |
| 323 | GetCurrentHwProfileA@4 | |
| 324 | GetCurrentHwProfileW@4 | |
| 325 | GetDynamicTimeZoneInformationEffectiveYears@12 | |
| 326 | GetEffectiveRightsFromAclA@12 | |
| 327 | GetEffectiveRightsFromAclW@12 | |
| 328 | GetEncryptedFileMetadata@12 | |
| 329 | GetEventLogInformation@20 | |
| 330 | GetExplicitEntriesFromAclA@12 | |
| 331 | GetExplicitEntriesFromAclW@12 | |
| 332 | 65 | GetFileSecurityA@20 |
| 333 | 66 | GetFileSecurityW@20 |
| 334 | GetInformationCodeAuthzLevelW@20 | |
| 335 | GetInformationCodeAuthzPolicyW@24 | |
| 336 | GetInheritanceSourceA@40 | |
| 337 | GetInheritanceSourceW@40 | |
| 338 | 67 | GetKernelObjectSecurity@20 |
| 339 | 68 | GetLengthSid@4 |
| 340 | GetLocalManagedApplicationData@12 | |
| 341 | GetLocalManagedApplications@12 | |
| 342 | GetManagedApplicationCategories@8 | |
| 343 | GetManagedApplications@20 | |
| 344 | GetMangledSiteSid@12 | |
| 345 | GetMultipleTrusteeA@4 | |
| 346 | GetMultipleTrusteeOperationA@4 | |
| 347 | GetMultipleTrusteeOperationW@4 | |
| 348 | GetMultipleTrusteeW@4 | |
| 349 | GetNamedSecurityInfoA@32 | |
| 350 | GetNamedSecurityInfoExA@36 | |
| 351 | GetNamedSecurityInfoExW@36 | |
| 352 | GetNamedSecurityInfoW@32 | |
| 353 | 69 | GetNumberOfEventLogRecords@8 |
| 354 | 70 | GetOldestEventLogRecord@8 |
| 355 | GetOverlappedAccessResults@16 | |
| 356 | 71 | GetPrivateObjectSecurity@20 |
| 357 | 72 | GetSecurityDescriptorControl@12 |
| 358 | 73 | GetSecurityDescriptorDacl@16 |
| 359 | 74 | GetSecurityDescriptorGroup@12 |
| 360 | 75 | GetSecurityDescriptorLength@4 |
| 361 | 76 | GetSecurityDescriptorOwner@12 |
| 362 | GetSecurityDescriptorRMControl@8 | |
| 363 | 77 | GetSecurityDescriptorSacl@16 |
| 364 | GetSecurityInfo@32 | |
| 365 | GetSecurityInfoExA@36 | |
| 366 | GetSecurityInfoExW@36 | |
| 367 | 78 | GetServiceDisplayNameA@16 |
| 368 | 79 | GetServiceDisplayNameW@16 |
| 369 | 80 | GetServiceKeyNameA@16 |
| ... | ... | @@ -372,65 +83,20 @@ GetSidIdentifierAuthority@4 |
| 372 | 83 | GetSidLengthRequired@4 |
| 373 | 84 | GetSidSubAuthority@8 |
| 374 | 85 | GetSidSubAuthorityCount@4 |
| 375 | GetStringConditionFromBinary@16 | |
| 376 | GetSiteDirectoryA@12 | |
| 377 | GetSiteDirectoryW@12 | |
| 378 | GetSiteNameFromSid@8 | |
| 379 | GetSiteSidFromToken@4 | |
| 380 | GetSiteSidFromUrl@4 | |
| 381 | GetThreadWaitChain@28 | |
| 382 | 86 | GetTokenInformation@20 |
| 383 | GetTraceEnableFlags@8 | |
| 384 | GetTraceEnableLevel@8 | |
| 385 | GetTraceLoggerHandle@4 | |
| 386 | GetTrusteeFormA@4 | |
| 387 | GetTrusteeFormW@4 | |
| 388 | GetTrusteeNameA@4 | |
| 389 | GetTrusteeNameW@4 | |
| 390 | GetTrusteeTypeA@4 | |
| 391 | GetTrusteeTypeW@4 | |
| 392 | 87 | GetUserNameA@8 |
| 393 | 88 | GetUserNameW@8 |
| 394 | GetWindowsAccountDomainSid@12 | |
| 395 | I_QueryTagInformation@12 | |
| 396 | I_ScIsSecurityProcess@0 | |
| 397 | I_ScPnPGetServiceName@12 | |
| 398 | I_ScQueryServiceConfig@12 | |
| 399 | I_ScSendPnPMessage@24 | |
| 400 | I_ScSendTSMessage@16 | |
| 401 | I_ScSetServiceBitsA@20 | |
| 402 | I_ScSetServiceBitsW@20 | |
| 403 | I_ScValidatePnPService@12 | |
| 404 | IdentifyCodeAuthzLevelW@16 | |
| 405 | ImpersonateAnonymousToken@4 | |
| 406 | ImpersonateLoggedOnUser@4 | |
| 407 | 89 | ImpersonateNamedPipeClient@4 |
| 408 | 90 | ImpersonateSelf@4 |
| 409 | 91 | InitializeAcl@12 |
| 410 | 92 | InitializeSecurityDescriptor@8 |
| 411 | 93 | InitializeSid@12 |
| 412 | InitiateShutdownA@20 | |
| 413 | InitiateShutdownW@20 | |
| 414 | 94 | InitiateSystemShutdownA@20 |
| 415 | InitiateSystemShutdownExA@24 | |
| 416 | InitiateSystemShutdownExW@24 | |
| 417 | 95 | InitiateSystemShutdownW@20 |
| 418 | InstallApplication@4 | |
| 419 | IsProcessRestricted@0 | |
| 420 | IsTextUnicode@12 | |
| 421 | IsTokenRestricted@4 | |
| 422 | IsTokenUntrusted@4 | |
| 423 | 96 | IsValidAcl@4 |
| 424 | IsValidRelativeSecurityDescriptor@12 | |
| 425 | 97 | IsValidSecurityDescriptor@4 |
| 426 | 98 | IsValidSid@4 |
| 427 | IsWellKnownSid@8 | |
| 428 | 99 | LockServiceDatabase@4 |
| 429 | LogonUserA@24 | |
| 430 | LogonUserExA@40 | |
| 431 | LogonUserExExW@44 | |
| 432 | LogonUserExW@40 | |
| 433 | LogonUserW@24 | |
| 434 | 100 | LookupAccountNameA@28 |
| 435 | 101 | LookupAccountNameW@28 |
| 436 | 102 | LookupAccountSidA@28 |
| ... | ... | @@ -441,115 +107,18 @@ LookupPrivilegeNameA@16 |
| 441 | 107 | LookupPrivilegeNameW@16 |
| 442 | 108 | LookupPrivilegeValueA@12 |
| 443 | 109 | LookupPrivilegeValueW@12 |
| 444 | LookupSecurityDescriptorPartsA@28 | |
| 445 | LookupSecurityDescriptorPartsW@28 | |
| 446 | LsaAddAccountRights@16 | |
| 447 | LsaAddPrivilegesToAccount@8 | |
| 448 | LsaClearAuditLog@4 | |
| 449 | LsaClose@4 | |
| 450 | LsaConfigureAutoLogonCredentials@0 | |
| 451 | LsaCreateAccount@16 | |
| 452 | LsaCreateSecret@16 | |
| 453 | LsaCreateTrustedDomain@16 | |
| 454 | LsaCreateTrustedDomainEx@20 | |
| 455 | LsaDelete@4 | |
| 456 | LsaDeleteTrustedDomain@8 | |
| 457 | LsaDisableUserArso@4 | |
| 458 | LsaEnableUserArso@4 | |
| 459 | LsaEnumerateAccountRights@16 | |
| 460 | LsaEnumerateAccounts@20 | |
| 461 | LsaEnumerateAccountsWithUserRight@16 | |
| 462 | LsaEnumeratePrivileges@20 | |
| 463 | LsaEnumeratePrivilegesOfAccount@8 | |
| 464 | LsaEnumerateTrustedDomains@20 | |
| 465 | LsaEnumerateTrustedDomainsEx@20 | |
| 466 | LsaFreeMemory@4 | |
| 467 | LsaGetAppliedCAPIDs@12 | |
| 468 | LsaGetDeviceRegistrationInfo@4 | |
| 469 | LsaGetQuotasForAccount@8 | |
| 470 | LsaGetRemoteUserName@12 | |
| 471 | LsaGetSystemAccessAccount@8 | |
| 472 | LsaGetUserName@8 | |
| 473 | LsaICLookupNames@40 | |
| 474 | LsaICLookupNamesWithCreds@48 | |
| 475 | LsaICLookupSids@36 | |
| 476 | LsaICLookupSidsWithCreds@48 | |
| 477 | LsaInvokeTrustScanner@16 | |
| 478 | LsaIsUserArsoAllowed@4 | |
| 479 | LsaIsUserArsoEnabled@8 | |
| 480 | LsaLookupNames2@24 | |
| 481 | LsaLookupNames@20 | |
| 482 | LsaLookupPrivilegeDisplayName@16 | |
| 483 | LsaLookupPrivilegeName@12 | |
| 484 | LsaLookupPrivilegeValue@12 | |
| 485 | LsaLookupSids2@24 | |
| 486 | LsaLookupSids@20 | |
| 487 | LsaManageSidNameMapping@12 | |
| 488 | LsaNtStatusToWinError@4 | |
| 489 | LsaOpenAccount@16 | |
| 490 | LsaOpenPolicy@16 | |
| 491 | LsaOpenPolicySce@16 | |
| 492 | LsaOpenSecret@16 | |
| 493 | LsaOpenTrustedDomain@16 | |
| 494 | LsaOpenTrustedDomainByName@16 | |
| 495 | LsaProfileDeleted@4 | |
| 496 | LsaQueryCAPs@16 | |
| 497 | LsaQueryDomainInformationPolicy@12 | |
| 498 | LsaQueryForestTrustInformation2@16 | |
| 499 | LsaQueryForestTrustInformation@12 | |
| 500 | LsaQueryInfoTrustedDomain@12 | |
| 501 | LsaQueryInformationPolicy@12 | |
| 502 | LsaQuerySecret@20 | |
| 503 | LsaQuerySecurityObject@12 | |
| 504 | LsaQueryTrustedDomainInfo@16 | |
| 505 | LsaQueryTrustedDomainInfoByName@16 | |
| 506 | LsaRemoveAccountRights@20 | |
| 507 | LsaRemovePrivilegesFromAccount@12 | |
| 508 | LsaRetrievePrivateData@12 | |
| 509 | LsaSetCAPs@12 | |
| 510 | LsaSetDomainInformationPolicy@12 | |
| 511 | LsaSetForestTrustInformation2@24 | |
| 512 | LsaSetForestTrustInformation@20 | |
| 513 | LsaSetInformationPolicy@12 | |
| 514 | LsaSetInformationTrustedDomain@12 | |
| 515 | LsaSetQuotasForAccount@8 | |
| 516 | LsaSetSecret@12 | |
| 517 | LsaSetSecurityObject@12 | |
| 518 | LsaSetSystemAccessAccount@8 | |
| 519 | LsaSetTrustedDomainInfoByName@16 | |
| 520 | LsaSetTrustedDomainInformation@16 | |
| 521 | LsaStorePrivateData@12 | |
| 522 | LsaValidateProcUniqueLuid@4 | |
| 523 | MD4Final@4 | |
| 524 | MD4Init@4 | |
| 525 | MD4Update@12 | |
| 526 | MD5Final@4 | |
| 527 | MD5Init@4 | |
| 528 | MD5Update@12 | |
| 529 | MSChapSrvChangePassword2@28 | |
| 530 | MSChapSrvChangePassword@28 | |
| 531 | MakeAbsoluteSD2@8 | |
| 532 | 110 | MakeAbsoluteSD@44 |
| 533 | 111 | MakeSelfRelativeSD@12 |
| 534 | 112 | MapGenericMask@8 |
| 535 | 113 | NotifyBootConfigStatus@4 |
| 536 | NotifyChangeEventLog@8 | |
| 537 | NotifyServiceStatusChange@12 | |
| 538 | NotifyServiceStatusChangeA@12 | |
| 539 | NotifyServiceStatusChangeW@12 | |
| 540 | NpGetUserName@12 | |
| 541 | 114 | ObjectCloseAuditAlarmA@12 |
| 542 | 115 | ObjectCloseAuditAlarmW@12 |
| 543 | ObjectDeleteAuditAlarmA@12 | |
| 544 | ObjectDeleteAuditAlarmW@12 | |
| 545 | 116 | ObjectOpenAuditAlarmA@48 |
| 546 | 117 | ObjectOpenAuditAlarmW@48 |
| 547 | 118 | ObjectPrivilegeAuditAlarmA@24 |
| 548 | 119 | ObjectPrivilegeAuditAlarmW@24 |
| 549 | 120 | OpenBackupEventLogA@8 |
| 550 | 121 | OpenBackupEventLogW@8 |
| 551 | OpenEncryptedFileRawA@12 | |
| 552 | OpenEncryptedFileRawW@12 | |
| 553 | 122 | OpenEventLogA@8 |
| 554 | 123 | OpenEventLogW@8 |
| 555 | 124 | OpenProcessToken@12 |
| ... | ... | @@ -558,97 +127,28 @@ OpenSCManagerW@12 |
| 558 | 127 | OpenServiceA@12 |
| 559 | 128 | OpenServiceW@12 |
| 560 | 129 | OpenThreadToken@16 |
| 561 | OpenThreadWaitChainSession@8 | |
| 562 | OpenTraceA@4 | |
| 563 | OpenTraceW@4 | |
| 564 | OperationEnd@4 | |
| 565 | OperationStart@4 | |
| 566 | PerfAddCounters@12 | |
| 567 | PerfCloseQueryHandle@4 | |
| 568 | PerfCreateInstance@16 | |
| 569 | PerfDecrementULongCounterValue@16 | |
| 570 | PerfDecrementULongLongCounterValue@20 | |
| 571 | PerfDeleteCounters@12 | |
| 572 | PerfDeleteInstance@8 | |
| 573 | PerfEnumerateCounterSet@16 | |
| 574 | PerfEnumerateCounterSetInstances@20 | |
| 575 | PerfIncrementULongCounterValue@16 | |
| 576 | PerfIncrementULongLongCounterValue@20 | |
| 577 | PerfOpenQueryHandle@8 | |
| 578 | PerfQueryCounterData@16 | |
| 579 | PerfQueryCounterInfo@16 | |
| 580 | PerfQueryCounterSetRegistrationInfo@28 | |
| 581 | PerfQueryInstance@16 | |
| 582 | PerfRegCloseKey@4 | |
| 583 | PerfRegEnumKey@24 | |
| 584 | PerfRegEnumValue@32 | |
| 585 | PerfRegQueryInfoKey@44 | |
| 586 | PerfRegQueryValue@28 | |
| 587 | PerfRegSetValue@24 | |
| 588 | PerfSetCounterRefValue@16 | |
| 589 | PerfSetCounterSetInfo@12 | |
| 590 | PerfSetULongCounterValue@16 | |
| 591 | PerfSetULongLongCounterValue@20 | |
| 592 | PerfStartProvider@12 | |
| 593 | PerfStartProviderEx@12 | |
| 594 | PerfStopProvider@4 | |
| 595 | 130 | PrivilegeCheck@12 |
| 596 | 131 | PrivilegedServiceAuditAlarmA@20 |
| 597 | 132 | PrivilegedServiceAuditAlarmW@20 |
| 598 | ProcessIdleTasks@0 | |
| 599 | ProcessIdleTasksW@16 | |
| 600 | ProcessTrace@16 | |
| 601 | QueryAllTracesA@12 | |
| 602 | QueryAllTracesW@12 | |
| 603 | QueryRecoveryAgentsOnEncryptedFile@8 | |
| 604 | QuerySecurityAccessMask@8 | |
| 605 | QueryServiceConfig2A@20 | |
| 606 | QueryServiceConfig2W@20 | |
| 607 | 133 | QueryServiceConfigA@16 |
| 608 | 134 | QueryServiceConfigW@16 |
| 609 | QueryServiceDynamicInformation@12 | |
| 610 | 135 | QueryServiceLockStatusA@16 |
| 611 | 136 | QueryServiceLockStatusW@16 |
| 612 | 137 | QueryServiceObjectSecurity@20 |
| 613 | 138 | QueryServiceStatus@8 |
| 614 | QueryServiceStatusEx@20 | |
| 615 | QueryTraceA@16 | |
| 616 | QueryTraceProcessingHandle@32 | |
| 617 | QueryTraceW@16 | |
| 618 | QueryUsersOnEncryptedFile@8 | |
| 619 | QueryWindows31FilesMigration@4 | |
| 620 | ReadEncryptedFileRaw@12 | |
| 621 | 139 | ReadEventLogA@28 |
| 622 | 140 | ReadEventLogW@28 |
| 623 | 141 | RegCloseKey@4 |
| 624 | 142 | RegConnectRegistryA@12 |
| 625 | RegConnectRegistryExA@16 | |
| 626 | RegConnectRegistryExW@16 | |
| 627 | 143 | RegConnectRegistryW@12 |
| 628 | RegCopyTreeA@12 | |
| 629 | RegCopyTreeW@12 | |
| 630 | 144 | RegCreateKeyA@12 |
| 631 | 145 | RegCreateKeyExA@36 |
| 632 | 146 | RegCreateKeyExW@36 |
| 633 | RegCreateKeyTransactedA@44 | |
| 634 | RegCreateKeyTransactedW@44 | |
| 635 | 147 | RegCreateKeyW@12 |
| 636 | 148 | RegDeleteKeyA@8 |
| 637 | 149 | RegDeleteKeyW@8 |
| 638 | RegDeleteKeyExA@16 | |
| 639 | RegDeleteKeyExW@16 | |
| 640 | RegDeleteKeyTransactedA@24 | |
| 641 | RegDeleteKeyTransactedW@24 | |
| 642 | RegDeleteKeyValueA@12 | |
| 643 | RegDeleteKeyValueW@12 | |
| 644 | RegDeleteTreeA@8 | |
| 645 | RegDeleteTreeW@8 | |
| 646 | 150 | RegDeleteValueA@8 |
| 647 | 151 | RegDeleteValueW@8 |
| 648 | RegDisablePredefinedCache@0 | |
| 649 | RegDisablePredefinedCacheEx@0 | |
| 650 | RegDisableReflectionKey@4 | |
| 651 | RegEnableReflectionKey@4 | |
| 652 | 152 | RegEnumKeyA@16 |
| 653 | 153 | RegEnumKeyExA@32 |
| 654 | 154 | RegEnumKeyExW@32 |
| ... | ... | @@ -657,45 +157,26 @@ RegEnumValueA@32 |
| 657 | 157 | RegEnumValueW@32 |
| 658 | 158 | RegFlushKey@4 |
| 659 | 159 | RegGetKeySecurity@16 |
| 660 | RegGetValueA@28 | |
| 661 | RegGetValueW@28 | |
| 662 | RegLoadAppKeyA@20 | |
| 663 | RegLoadAppKeyW@20 | |
| 664 | 160 | RegLoadKeyA@12 |
| 665 | 161 | RegLoadKeyW@12 |
| 666 | RegLoadMUIStringA@28 | |
| 667 | RegLoadMUIStringW@28 | |
| 668 | 162 | RegNotifyChangeKeyValue@20 |
| 669 | RegOpenCurrentUser@8 | |
| 670 | 163 | RegOpenKeyA@12 |
| 671 | 164 | RegOpenKeyExA@20 |
| 672 | 165 | RegOpenKeyExW@20 |
| 673 | RegOpenKeyTransactedA@28 | |
| 674 | RegOpenKeyTransactedW@28 | |
| 675 | 166 | RegOpenKeyW@12 |
| 676 | RegOpenUserClassesRoot@16 | |
| 677 | RegOverridePredefKey@8 | |
| 678 | 167 | RegQueryInfoKeyA@48 |
| 679 | 168 | RegQueryInfoKeyW@48 |
| 680 | RegQueryMultipleValuesA@20 | |
| 681 | RegQueryMultipleValuesW@20 | |
| 682 | RegQueryReflectionKey@8 | |
| 683 | 169 | RegQueryValueA@16 |
| 684 | 170 | RegQueryValueExA@24 |
| 685 | 171 | RegQueryValueExW@24 |
| 686 | 172 | RegQueryValueW@16 |
| 687 | RegRenameKey@12 | |
| 688 | 173 | RegReplaceKeyA@16 |
| 689 | 174 | RegReplaceKeyW@16 |
| 690 | 175 | RegRestoreKeyA@12 |
| 691 | 176 | RegRestoreKeyW@12 |
| 692 | 177 | RegSaveKeyA@12 |
| 693 | RegSaveKeyExA@16 | |
| 694 | RegSaveKeyExW@16 | |
| 695 | 178 | RegSaveKeyW@12 |
| 696 | 179 | RegSetKeySecurity@12 |
| 697 | RegSetKeyValueA@24 | |
| 698 | RegSetKeyValueW@24 | |
| 699 | 180 | RegSetValueA@20 |
| 700 | 181 | RegSetValueExA@24 |
| 701 | 182 | RegSetValueExW@24 |
| ... | ... | @@ -704,88 +185,92 @@ RegUnLoadKeyA@8 |
| 704 | 185 | RegUnLoadKeyW@8 |
| 705 | 186 | RegisterEventSourceA@8 |
| 706 | 187 | RegisterEventSourceW@8 |
| 707 | RegisterIdleTask@16 | |
| 708 | 188 | RegisterServiceCtrlHandlerA@8 |
| 709 | RegisterServiceCtrlHandlerExA@12 | |
| 710 | RegisterServiceCtrlHandlerExW@12 | |
| 711 | 189 | RegisterServiceCtrlHandlerW@8 |
| 712 | RegisterTraceGuidsA@32 | |
| 713 | RegisterTraceGuidsW@32 | |
| 714 | RegisterWaitChainCOMCallback@8 | |
| 715 | RemoteRegEnumKeyWrapper@20 | |
| 716 | RemoteRegEnumValueWrapper@28 | |
| 717 | RemoteRegQueryInfoKeyWrapper@40 | |
| 718 | RemoteRegQueryMultipleValues2Wrapper@24 | |
| 719 | RemoteRegQueryMultipleValuesWrapper@20 | |
| 720 | RemoteRegQueryValueWrapper@24 | |
| 721 | RemoveTraceCallback@4 | |
| 722 | RemoveUsersFromEncryptedFile@8 | |
| 723 | 190 | ReportEventA@36 |
| 724 | 191 | ReportEventW@36 |
| 725 | 192 | RevertToSelf@0 |
| 726 | SafeBaseRegGetKeySecurity@16 | |
| 727 | SaferCloseLevel@4 | |
| 728 | SaferComputeTokenFromLevel@20 | |
| 729 | SaferCreateLevel@20 | |
| 730 | SaferGetLevelInformation@20 | |
| 731 | SaferGetPolicyInformation@24 | |
| 732 | SaferIdentifyLevel@16 | |
| 733 | SaferRecordEventLogEntry@12 | |
| 734 | SaferSetLevelInformation@16 | |
| 735 | SaferSetPolicyInformation@20 | |
| 736 | SaferiChangeRegistryScope@8 | |
| 737 | SaferiCompareTokenLevels@12 | |
| 738 | SaferiIsDllAllowed@12 | |
| 739 | SaferiIsExecutableFileType@8 | |
| 740 | SaferiPopulateDefaultsInRegistry@8 | |
| 741 | SaferiRecordEventLogEntry@12 | |
| 742 | SaferiSearchMatchingHashRules@24 | |
| 743 | 193 | SetAclInformation@16 |
| 744 | SetEncryptedFileMetadata@24 | |
| 745 | SetEntriesInAccessListA@24 | |
| 746 | SetEntriesInAccessListW@24 | |
| 747 | SetEntriesInAclA@16 | |
| 748 | SetEntriesInAclW@16 | |
| 749 | SetEntriesInAuditListA@24 | |
| 750 | SetEntriesInAuditListW@24 | |
| 751 | 194 | SetFileSecurityA@12 |
| 752 | 195 | SetFileSecurityW@12 |
| 753 | SetInformationCodeAuthzLevelW@16 | |
| 754 | SetInformationCodeAuthzPolicyW@20 | |
| 755 | 196 | SetKernelObjectSecurity@12 |
| 756 | SetNamedSecurityInfoA@28 | |
| 757 | SetNamedSecurityInfoExA@36 | |
| 758 | SetNamedSecurityInfoExW@36 | |
| 759 | SetNamedSecurityInfoW@28 | |
| 760 | 197 | SetPrivateObjectSecurity@20 |
| 761 | SetPrivateObjectSecurityEx@24 | |
| 762 | SetSecurityAccessMask@8 | |
| 763 | SetSecurityDescriptorControl@12 | |
| 764 | 198 | SetSecurityDescriptorDacl@16 |
| 765 | 199 | SetSecurityDescriptorGroup@12 |
| 766 | 200 | SetSecurityDescriptorOwner@12 |
| 767 | SetSecurityDescriptorRMControl@8 | |
| 768 | 201 | SetSecurityDescriptorSacl@16 |
| 769 | SetSecurityInfo@28 | |
| 770 | SetSecurityInfoExA@36 | |
| 771 | SetSecurityInfoExW@36 | |
| 772 | SetServiceBits@16 | |
| 773 | 202 | SetServiceObjectSecurity@12 |
| 774 | 203 | SetServiceStatus@8 |
| 775 | SetThreadToken@8 | |
| 776 | 204 | SetTokenInformation@16 |
| 777 | SetTraceCallback@8 | |
| 778 | SetUserFileEncryptionKey@4 | |
| 779 | SetUserFileEncryptionKeyEx@16 | |
| 780 | 205 | StartServiceA@12 |
| 781 | 206 | StartServiceCtrlDispatcherA@4 |
| 782 | 207 | StartServiceCtrlDispatcherW@4 |
| 783 | 208 | StartServiceW@12 |
| 784 | StartTraceA@12 | |
| 785 | StartTraceW@12 | |
| 786 | SynchronizeWindows31FilesAndWindowsNTRegistry@16 | |
| 787 | StopTraceA@16 | |
| 788 | StopTraceW@16 | |
| 209 | UnlockServiceDatabase@4 | |
| 210 | ||
| 211 | ; This is list of symbols added in Win32s 1.20 and available in all Win9x and WinNT versions | |
| 212 | SetThreadToken@8 | |
| 213 | ||
| 214 | ; This is list of symbols added in Win32s 1.20 and available in all WinNT versions, but not in Win9x | |
| 215 | ElfBackupEventLogFileA@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 216 | ElfBackupEventLogFileW@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 217 | ElfChangeNotify@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 218 | ElfClearEventLogFileA@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 219 | ElfClearEventLogFileW@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 220 | ElfCloseEventLog@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 221 | ElfDeregisterEventSource@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 222 | ElfNumberOfRecords@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 223 | ElfOldestRecord@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 224 | ElfOpenBackupEventLogA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 225 | ElfOpenBackupEventLogW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 226 | ElfOpenEventLogA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 227 | ElfOpenEventLogW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 228 | ElfReadEventLogA@28 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 229 | ElfReadEventLogW@28 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 230 | ElfRegisterEventSourceA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 231 | ElfRegisterEventSourceW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 232 | ElfReportEventA@48 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 233 | ElfReportEventW@48 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 234 | I_ScSetServiceBitsA@20 | |
| 235 | I_ScSetServiceBitsW@20 | |
| 236 | LsaAddPrivilegesToAccount@8 | |
| 237 | LsaClearAuditLog@4 | |
| 238 | LsaClose@4 | |
| 239 | LsaCreateAccount@16 | |
| 240 | LsaCreateSecret@16 | |
| 241 | LsaCreateTrustedDomain@16 | |
| 242 | LsaDelete@4 | |
| 243 | LsaEnumerateAccounts@20 | |
| 244 | LsaEnumeratePrivileges@20 | |
| 245 | LsaEnumeratePrivilegesOfAccount@8 | |
| 246 | LsaEnumerateTrustedDomains@20 | |
| 247 | LsaFreeMemory@4 | |
| 248 | LsaGetQuotasForAccount@8 | |
| 249 | LsaGetSystemAccessAccount@8 | |
| 250 | LsaICLookupNames@40 ; Win32s has ABI "LsaICLookupNames@40", Windows NT 3.1-4.0 has ABI "LsaICLookupNames@28", Windows 2000 has ABI "LsaICLookupNames@32", Windows XP and new has ABI "LsaICLookupNames@40" | |
| 251 | LsaICLookupSids@36 ; Win32s has ABI "LsaICLookupSids@36", Windows NT 3.1-4.0 has ABI "LsaICLookupSids@28", Windows 2000 has ABI "LsaICLookupSids@32", Windows XP and new has ABI "LsaICLookupSids@36" | |
| 252 | LsaLookupNames@20 | |
| 253 | LsaLookupPrivilegeDisplayName@16 | |
| 254 | LsaLookupPrivilegeName@12 | |
| 255 | LsaLookupPrivilegeValue@12 | |
| 256 | LsaLookupSids@20 | |
| 257 | LsaOpenAccount@16 | |
| 258 | LsaOpenPolicy@16 | |
| 259 | LsaOpenSecret@16 | |
| 260 | LsaOpenTrustedDomain@16 | |
| 261 | LsaQueryInfoTrustedDomain@12 | |
| 262 | LsaQueryInformationPolicy@12 | |
| 263 | LsaQuerySecret@20 | |
| 264 | LsaQuerySecurityObject@12 | |
| 265 | LsaRemovePrivilegesFromAccount@12 | |
| 266 | LsaSetInformationPolicy@12 | |
| 267 | LsaSetInformationTrustedDomain@12 | |
| 268 | LsaSetQuotasForAccount@8 | |
| 269 | LsaSetSecret@12 | |
| 270 | LsaSetSecurityObject@12 | |
| 271 | LsaSetSystemAccessAccount@8 | |
| 272 | QueryWindows31FilesMigration@4 ; removed in Windows Server 2003 | |
| 273 | SynchronizeWindows31FilesAndWindowsNTRegistry@16 ; removed in Windows Server 2003 | |
| 789 | 274 | SystemFunction001@12 |
| 790 | 275 | SystemFunction002@12 |
| 791 | 276 | SystemFunction003@8 |
| ... | ... | @@ -817,61 +302,766 @@ SystemFunction028@8 |
| 817 | 302 | SystemFunction029@8 |
| 818 | 303 | SystemFunction030@8 |
| 819 | 304 | SystemFunction031@8 |
| 305 | ||
| 306 | ; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.5 | |
| 307 | IsTextUnicode@12 | |
| 308 | NotifyChangeEventLog@8 | |
| 309 | SetServiceBits@16 | |
| 310 | ||
| 311 | ; This is list of symbols added in Win32s 1.20, available since Windows NT 3.5, but not available in Win9x | |
| 820 | 312 | SystemFunction032@8 |
| 821 | 313 | SystemFunction033@8 |
| 822 | SystemFunction034@12 | |
| 823 | SystemFunction035@4 | |
| 824 | SystemFunction036@8 | |
| 825 | SystemFunction040@12 | |
| 826 | SystemFunction041@12 | |
| 827 | TraceEvent@12 | |
| 828 | TraceEventInstance@20 | |
| 829 | TraceMessage | |
| 830 | TraceMessageVa@24 | |
| 831 | TraceQueryInformation@24 | |
| 832 | TraceSetInformation@20 | |
| 833 | TreeResetNamedSecurityInfoA@44 | |
| 834 | TreeResetNamedSecurityInfoW@44 | |
| 835 | TreeSetNamedSecurityInfoA@44 | |
| 836 | TreeSetNamedSecurityInfoW@44 | |
| 314 | ||
| 315 | ; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.51 | |
| 316 | CreateProcessAsUserA@44 | |
| 317 | CreateProcessAsUserW@44 | |
| 318 | ImpersonateLoggedOnUser@4 | |
| 319 | LogonUserA@24 | |
| 320 | LogonUserW@24 | |
| 321 | ||
| 322 | ; This is list of symbols added in Win32s 1.25, available since Windows NT 3.51, but not available in Win9x | |
| 323 | LsaAddAccountRights@16 | |
| 324 | LsaDeleteTrustedDomain@8 | |
| 325 | LsaEnumerateAccountRights@16 | |
| 326 | LsaEnumerateAccountsWithUserRight@16 | |
| 327 | LsaQueryTrustedDomainInfo@16 | |
| 328 | LsaRemoveAccountRights@20 | |
| 329 | LsaRetrievePrivateData@12 | |
| 330 | LsaSetTrustedDomainInformation@16 | |
| 331 | LsaStorePrivateData@12 | |
| 332 | ||
| 333 | ; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.51 | |
| 334 | RegQueryMultipleValuesA@20 | |
| 335 | RegQueryMultipleValuesW@20 | |
| 336 | ||
| 337 | ; This is list of symbols added in Win32s 1.30, available since Windows NT 3.51, but not available in Win9x | |
| 338 | LsaNtStatusToWinError@4 | |
| 339 | ||
| 340 | ;; This is end of Win32s symbols ;; | |
| 341 | ||
| 342 | ; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT | |
| 343 | ; RegRemapPreDefKey@8 | |
| 344 | ||
| 345 | ; This is list of symbols added in Windows 95 OSR2 and also since Windows NT 4.0, but not available in Win32s | |
| 346 | CryptAcquireContextA@20 | |
| 347 | CryptCreateHash@20 | |
| 348 | CryptDecrypt@24 | |
| 349 | CryptDeriveKey@20 | |
| 350 | CryptDestroyHash@4 | |
| 351 | CryptDestroyKey@4 | |
| 352 | CryptEncrypt@28 | |
| 353 | CryptExportKey@24 | |
| 354 | CryptGenKey@16 | |
| 355 | CryptGenRandom@12 | |
| 356 | CryptGetHashParam@20 | |
| 357 | CryptGetKeyParam@20 | |
| 358 | CryptGetProvParam@20 | |
| 359 | CryptGetUserKey@12 | |
| 360 | CryptHashData@16 | |
| 361 | CryptHashSessionKey@12 | |
| 362 | CryptImportKey@24 | |
| 363 | CryptReleaseContext@8 | |
| 364 | CryptSetHashParam@16 | |
| 365 | CryptSetKeyParam@16 | |
| 366 | CryptSetProvParam@16 | |
| 367 | CryptSetProviderA@8 | |
| 368 | CryptSignHashA@24 | |
| 369 | CryptVerifySignatureA@24 | |
| 370 | ||
| 371 | ; This is list of symbols added in Windows 98 and also since Windows NT 4.0, but not available in Win32s | |
| 372 | BuildExplicitAccessWithNameA@20 | |
| 373 | BuildExplicitAccessWithNameW@20 | |
| 374 | BuildImpersonateExplicitAccessWithNameA@24 | |
| 375 | BuildImpersonateExplicitAccessWithNameW@24 | |
| 376 | BuildImpersonateTrusteeA@8 | |
| 377 | BuildImpersonateTrusteeW@8 | |
| 378 | BuildSecurityDescriptorA@36 | |
| 379 | BuildSecurityDescriptorW@36 | |
| 380 | BuildTrusteeWithNameA@8 | |
| 381 | BuildTrusteeWithNameW@8 | |
| 382 | BuildTrusteeWithSidA@8 | |
| 383 | BuildTrusteeWithSidW@8 | |
| 384 | CryptAcquireContextW@20 | |
| 385 | CryptSetProviderW@8 | |
| 386 | CryptSignHashW@24 | |
| 387 | CryptVerifySignatureW@24 | |
| 388 | DuplicateTokenEx@24 | |
| 389 | GetAuditedPermissionsFromAclA@16 | |
| 390 | GetAuditedPermissionsFromAclW@16 | |
| 391 | GetCurrentHwProfileA@4 | |
| 392 | GetCurrentHwProfileW@4 | |
| 393 | GetEffectiveRightsFromAclA@12 | |
| 394 | GetEffectiveRightsFromAclW@12 | |
| 395 | GetExplicitEntriesFromAclA@12 | |
| 396 | GetExplicitEntriesFromAclW@12 | |
| 397 | GetMultipleTrusteeA@4 | |
| 398 | GetMultipleTrusteeOperationA@4 | |
| 399 | GetMultipleTrusteeOperationW@4 | |
| 400 | GetMultipleTrusteeW@4 | |
| 401 | GetNamedSecurityInfoA@32 | |
| 402 | GetNamedSecurityInfoW@32 | |
| 403 | GetSecurityInfo@32 | |
| 404 | GetTrusteeNameA@4 | |
| 405 | GetTrusteeNameW@4 | |
| 406 | GetTrusteeTypeA@4 | |
| 407 | GetTrusteeTypeW@4 | |
| 408 | LookupSecurityDescriptorPartsA@28 | |
| 409 | LookupSecurityDescriptorPartsW@28 | |
| 410 | ObjectDeleteAuditAlarmA@12 | |
| 411 | ObjectDeleteAuditAlarmW@12 | |
| 412 | SetEntriesInAclA@16 | |
| 413 | SetEntriesInAclW@16 | |
| 414 | SetNamedSecurityInfoA@28 | |
| 415 | SetNamedSecurityInfoW@28 | |
| 416 | SetSecurityInfo@28 | |
| 417 | ||
| 418 | ; This is list of symbols added in Windows 98 and also since Windows NT 4.0 SP4, but not available in Win32s | |
| 419 | CancelOverlappedAccess@4 | |
| 420 | ConvertAccessToSecurityDescriptorA@20 | |
| 421 | ConvertAccessToSecurityDescriptorW@20 | |
| 422 | ConvertSecurityDescriptorToAccessA@28 | |
| 423 | ConvertSecurityDescriptorToAccessNamedA@28 | |
| 424 | ConvertSecurityDescriptorToAccessNamedW@28 | |
| 425 | ConvertSecurityDescriptorToAccessW@28 | |
| 426 | GetAccessPermissionsForObjectA@36 | |
| 427 | GetAccessPermissionsForObjectW@36 | |
| 428 | GetNamedSecurityInfoExA@36 | |
| 429 | GetNamedSecurityInfoExW@36 | |
| 430 | GetOverlappedAccessResults@16 | |
| 431 | GetSecurityInfoExA@36 | |
| 432 | GetSecurityInfoExW@36 | |
| 433 | SetEntriesInAccessListA@24 | |
| 434 | SetEntriesInAccessListW@24 | |
| 435 | SetEntriesInAuditListA@24 | |
| 436 | SetEntriesInAuditListW@24 | |
| 437 | SetNamedSecurityInfoExA@36 | |
| 438 | SetNamedSecurityInfoExW@36 | |
| 439 | SetSecurityInfoExA@36 | |
| 440 | SetSecurityInfoExW@36 | |
| 837 | 441 | TrusteeAccessToObjectA@24 |
| 838 | 442 | TrusteeAccessToObjectW@24 |
| 839 | UninstallApplication@8 | |
| 840 | UnlockServiceDatabase@4 | |
| 841 | UnregisterIdleTask@12 | |
| 842 | UnregisterTraceGuids@8 | |
| 843 | UpdateTraceA@16 | |
| 844 | UpdateTraceW@16 | |
| 845 | UsePinForEncryptedFilesA@12 | |
| 846 | UsePinForEncryptedFilesW@12 | |
| 847 | WaitServiceState@16 | |
| 848 | WmiCloseBlock@4 | |
| 849 | WmiDevInstToInstanceNameA@16 | |
| 850 | WmiDevInstToInstanceNameW@16 | |
| 851 | WmiEnumerateGuids@8 | |
| 852 | WmiExecuteMethodA@28 | |
| 853 | WmiExecuteMethodW@28 | |
| 854 | WmiFileHandleToInstanceNameA@16 | |
| 855 | WmiFileHandleToInstanceNameW@16 | |
| 856 | WmiFreeBuffer@4 | |
| 857 | WmiMofEnumerateResourcesA@12 | |
| 858 | WmiMofEnumerateResourcesW@12 | |
| 859 | WmiNotificationRegistrationA@20 | |
| 860 | WmiNotificationRegistrationW@20 | |
| 861 | WmiOpenBlock@12 | |
| 862 | WmiQueryAllDataA@12 | |
| 863 | WmiQueryAllDataMultipleA@16 | |
| 864 | WmiQueryAllDataMultipleW@16 | |
| 865 | WmiQueryAllDataW@12 | |
| 866 | WmiQueryGuidInformation@8 | |
| 867 | WmiQuerySingleInstanceA@16 | |
| 868 | WmiQuerySingleInstanceMultipleA@20 | |
| 869 | WmiQuerySingleInstanceMultipleW@20 | |
| 870 | WmiQuerySingleInstanceW@16 | |
| 871 | WmiReceiveNotificationsA@16 | |
| 872 | WmiReceiveNotificationsW@16 | |
| 873 | WmiSetSingleInstanceA@20 | |
| 874 | WmiSetSingleInstanceW@20 | |
| 875 | WmiSetSingleItemA@24 | |
| 876 | WmiSetSingleItemW@24 | |
| 877 | WriteEncryptedFileRaw@12 | |
| 443 | ||
| 444 | ; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s | |
| 445 | CryptContextAddRef@12 | |
| 446 | CryptDuplicateHash@16 | |
| 447 | CryptDuplicateKey@16 | |
| 448 | CryptEnumProviderTypesA@24 | |
| 449 | CryptEnumProviderTypesW@24 | |
| 450 | CryptEnumProvidersA@24 | |
| 451 | CryptEnumProvidersW@24 | |
| 452 | CryptGetDefaultProviderA@20 | |
| 453 | CryptGetDefaultProviderW@20 | |
| 454 | CryptSetProviderExA@16 | |
| 455 | CryptSetProviderExW@16 | |
| 456 | ||
| 457 | ; This is list of symbols added in Windows ME, but not available in Win32s and WinNT | |
| 458 | ; CryptGetLocalKeyLimits@16 | |
| 459 | ||
| 460 | ;; This is end of Win9x symbols ;; | |
| 461 | ||
| 462 | ; This is list of symbols (not mentioned in previous sections) added in Windows NT 4.0, but not available in Win32s and Win9x | |
| 463 | ; BuildAccessRequestA@12 ; removed in Windows NT 4.0 SP4 | |
| 464 | ; BuildAccessRequestW@12 ; removed in Windows NT 4.0 SP4 | |
| 465 | ; DenyAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 466 | ; DenyAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 467 | EnumServiceGroupW@36 | |
| 468 | ; GetAuditedPermissionsFromSDA@16 ; removed in Windows NT 4.0 SP4 | |
| 469 | ; GetAuditedPermissionsFromSDW@16 ; removed in Windows NT 4.0 SP4 | |
| 470 | ; GetEffectiveAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 471 | ; GetEffectiveAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 472 | ; GetEffectiveRightsFromSDA@12 ; removed in Windows NT 4.0 SP4 | |
| 473 | ; GetEffectiveRightsFromSDW@12 ; removed in Windows NT 4.0 SP4 | |
| 474 | ; GetExplicitAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 475 | ; GetExplicitAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 476 | ; GrantAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 477 | ; GrantAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 478 | I_ScGetCurrentGroupStateW@12 | |
| 479 | ; IsAccessPermittedA@20 ; removed in Windows NT 4.0 SP4 | |
| 480 | ; IsAccessPermittedW@20 ; removed in Windows NT 4.0 SP4 | |
| 481 | LsaGetUserName@8 | |
| 482 | ; NTAccessMaskToProvAccessRights@12 ; removed in Windows NT 4.0 SP4 | |
| 483 | ; ProvAccessRightsToNTAccessMask@8 ; removed in Windows NT 4.0 SP4 | |
| 484 | ; ReplaceAllAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 485 | ; ReplaceAllAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 486 | ; RevokeExplicitAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 487 | ; RevokeExplicitAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 488 | ; SetAccessRightsA@16 ; removed in Windows NT 4.0 SP4 | |
| 489 | ; SetAccessRightsW@16 ; removed in Windows NT 4.0 SP4 | |
| 490 | ||
| 491 | ; This is list of symbols (not mentioned in previous sections) added in Windows NT 4.0 SP4, but not available in Win32s and Win9x | |
| 492 | EnumServicesStatusExA@40 | |
| 493 | EnumServicesStatusExW@40 | |
| 494 | LsaGetRemoteUserName@12 | |
| 495 | QueryServiceStatusEx@20 | |
| 496 | ||
| 497 | ; This is list of symbols added in Windows 2000 | |
| 498 | AccessCheckByType@44 | |
| 499 | AccessCheckByTypeAndAuditAlarmA@64 | |
| 500 | AccessCheckByTypeAndAuditAlarmW@64 | |
| 501 | AccessCheckByTypeResultList@44 | |
| 502 | AccessCheckByTypeResultListAndAuditAlarmA@64 | |
| 503 | AccessCheckByTypeResultListAndAuditAlarmByHandleA@68 | |
| 504 | AccessCheckByTypeResultListAndAuditAlarmByHandleW@68 | |
| 505 | AccessCheckByTypeResultListAndAuditAlarmW@64 | |
| 506 | AddAccessAllowedAceEx@20 | |
| 507 | AddAccessAllowedObjectAce@28 | |
| 508 | AddAccessDeniedAceEx@20 | |
| 509 | AddAccessDeniedObjectAce@28 | |
| 510 | AddAuditAccessAceEx@28 | |
| 511 | AddAuditAccessObjectAce@36 | |
| 512 | AddUsersToEncryptedFile@8 | |
| 513 | BuildTrusteeWithObjectsAndNameA@24 | |
| 514 | BuildTrusteeWithObjectsAndNameW@24 | |
| 515 | BuildTrusteeWithObjectsAndSidA@20 | |
| 516 | BuildTrusteeWithObjectsAndSidW@20 | |
| 517 | ChangeServiceConfig2A@12 | |
| 518 | ChangeServiceConfig2W@12 | |
| 519 | CheckTokenMembership@12 | |
| 520 | CloseEncryptedFileRaw@4 | |
| 521 | CloseTrace@8 | |
| 522 | CommandLineFromMsiDescriptor@12 | |
| 523 | ControlTraceA@20 | |
| 524 | ControlTraceW@20 | |
| 525 | ConvertSDToStringSDRootDomainA@24 | |
| 526 | ConvertSDToStringSDRootDomainW@24 | |
| 527 | ConvertSecurityDescriptorToStringSecurityDescriptorA@20 | |
| 528 | ConvertSecurityDescriptorToStringSecurityDescriptorW@20 | |
| 529 | ConvertSidToStringSidA@8 | |
| 530 | ConvertSidToStringSidW@8 | |
| 531 | ConvertStringSDToSDRootDomainA@20 | |
| 532 | ConvertStringSDToSDRootDomainW@20 | |
| 533 | ConvertStringSecurityDescriptorToSecurityDescriptorA@16 | |
| 534 | ConvertStringSecurityDescriptorToSecurityDescriptorW@16 | |
| 535 | ConvertStringSidToSidA@8 | |
| 536 | ConvertStringSidToSidW@8 | |
| 537 | ConvertToAutoInheritPrivateObjectSecurity@24 | |
| 538 | CreatePrivateObjectSecurityEx@32 | |
| 539 | CreateProcessWithLogonW@44 | |
| 540 | CreateRestrictedToken@36 | |
| 541 | CreateTraceInstanceId@8 | |
| 542 | DecryptFileA@8 | |
| 543 | DecryptFileW@8 | |
| 544 | DuplicateEncryptionInfoFile@20 ; Windows 2000 has ABI "DuplicateEncryptionInfoFile@8", Windows XP and new has ABI "DuplicateEncryptionInfoFile@20" | |
| 545 | EnableTrace@24 | |
| 546 | EncryptFileA@4 | |
| 547 | EncryptFileW@4 | |
| 548 | EncryptionDisable@8 | |
| 549 | FileEncryptionStatusA@8 | |
| 550 | FileEncryptionStatusW@8 | |
| 551 | FreeEncryptionCertificateHashList@4 | |
| 552 | GetEventLogInformation@20 | |
| 553 | GetLocalManagedApplications@12 | |
| 554 | GetManagedApplications@20 | |
| 555 | GetMangledSiteSid@12 ; removed in Windows XP | |
| 556 | GetSecurityDescriptorRMControl@8 | |
| 557 | GetSiteDirectoryA@12 ; removed in Windows XP | |
| 558 | GetSiteDirectoryW@12 ; removed in Windows XP | |
| 559 | GetSiteNameFromSid@8 ; removed in Windows XP | |
| 560 | GetSiteSidFromToken@4 ; removed in Windows XP | |
| 561 | GetSiteSidFromUrl@4 ; removed in Windows XP | |
| 562 | GetTraceEnableFlags@8 | |
| 563 | GetTraceEnableLevel@8 | |
| 564 | GetTraceLoggerHandle@4 | |
| 565 | GetTrusteeFormA@4 | |
| 566 | GetTrusteeFormW@4 | |
| 567 | I_ScIsSecurityProcess@0 | |
| 568 | I_ScPnPGetServiceName@12 | |
| 569 | ImpersonateAnonymousToken@4 | |
| 570 | InitiateSystemShutdownExA@24 | |
| 571 | InitiateSystemShutdownExW@24 | |
| 572 | InstallApplication@4 | |
| 573 | ; IsInSandbox@0 ; removed in Windows XP | |
| 574 | IsProcessRestricted@0 ; removed in Windows XP | |
| 575 | IsTokenRestricted@4 | |
| 576 | LsaCreateTrustedDomainEx@20 | |
| 577 | LsaEnumerateTrustedDomainsEx@20 | |
| 578 | LsaOpenTrustedDomainByName@16 | |
| 579 | LsaQueryDomainInformationPolicy@12 | |
| 580 | LsaQueryTrustedDomainInfoByName@16 | |
| 581 | LsaSetDomainInformationPolicy@12 | |
| 582 | LsaSetTrustedDomainInfoByName@16 | |
| 583 | MakeAbsoluteSD2@8 | |
| 584 | OpenEncryptedFileRawA@12 | |
| 585 | OpenEncryptedFileRawW@12 | |
| 586 | OpenTraceA@4 | |
| 587 | OpenTraceW@4 | |
| 588 | ProcessTrace@16 | |
| 589 | QueryAllTracesA@12 | |
| 590 | QueryAllTracesW@12 | |
| 591 | QueryRecoveryAgentsOnEncryptedFile@8 | |
| 592 | QueryServiceConfig2A@20 | |
| 593 | QueryServiceConfig2W@20 | |
| 594 | QueryUsersOnEncryptedFile@8 | |
| 595 | ReadEncryptedFileRaw@12 | |
| 596 | RegDisablePredefinedCache@0 | |
| 597 | RegOpenCurrentUser@8 | |
| 598 | RegOpenUserClassesRoot@16 | |
| 599 | RegOverridePredefKey@8 | |
| 600 | RegisterServiceCtrlHandlerExA@12 | |
| 601 | RegisterServiceCtrlHandlerExW@12 | |
| 602 | RegisterTraceGuidsA@32 | |
| 603 | RegisterTraceGuidsW@32 | |
| 604 | RemoveTraceCallback@4 | |
| 605 | RemoveUsersFromEncryptedFile@8 | |
| 606 | SetPrivateObjectSecurityEx@24 | |
| 607 | SetSecurityDescriptorControl@12 | |
| 608 | SetSecurityDescriptorRMControl@8 | |
| 609 | SetTraceCallback@8 | |
| 610 | SetUserFileEncryptionKey@4 | |
| 611 | StartTraceA@12 | |
| 612 | StartTraceW@12 | |
| 613 | SystemFunction034@12 | |
| 614 | SystemFunction035@4 | |
| 615 | TraceEvent@12 | |
| 616 | TraceEventInstance@20 | |
| 617 | UninstallApplication@8 ; Windows 2000 has ABI "UninstallApplication@4", Windows XP and new has ABI "UninstallApplication@8" | |
| 618 | UnregisterTraceGuids@8 | |
| 619 | WmiCloseBlock@4 | |
| 620 | WmiDevInstToInstanceNameA@16 | |
| 621 | WmiDevInstToInstanceNameW@16 | |
| 622 | WmiEnumerateGuids@8 | |
| 623 | WmiExecuteMethodA@28 | |
| 624 | WmiExecuteMethodW@28 | |
| 625 | WmiFileHandleToInstanceNameA@16 | |
| 626 | WmiFileHandleToInstanceNameW@16 | |
| 627 | WmiFreeBuffer@4 | |
| 628 | WmiMofEnumerateResourcesA@12 | |
| 629 | WmiMofEnumerateResourcesW@12 | |
| 630 | WmiNotificationRegistrationA@20 | |
| 631 | WmiNotificationRegistrationW@20 | |
| 632 | WmiOpenBlock@12 | |
| 633 | WmiQueryAllDataA@12 | |
| 634 | WmiQueryAllDataW@12 | |
| 635 | WmiQueryGuidInformation@8 | |
| 636 | WmiQuerySingleInstanceA@16 | |
| 637 | WmiQuerySingleInstanceW@16 | |
| 638 | WmiSetSingleInstanceA@20 | |
| 639 | WmiSetSingleInstanceW@20 | |
| 640 | WmiSetSingleItemA@24 | |
| 641 | WmiSetSingleItemW@24 | |
| 642 | WriteEncryptedFileRaw@12 | |
| 643 | ||
| 644 | ; In Windows 2000 SP1 there was no new symbol | |
| 645 | ||
| 646 | ; This is list of symbols added in Windows 2000 SP2 | |
| 647 | EqualDomainSid@12 | |
| 648 | ||
| 649 | ; This is list of symbols added in Windows 2000 SP3 | |
| 650 | CreateWellKnownSid@16 | |
| 651 | GetWindowsAccountDomainSid@12 | |
| 652 | IsWellKnownSid@8 | |
| 653 | LsaOpenPolicySce@16 | |
| 654 | SystemFunction040@12 | |
| 655 | SystemFunction041@12 | |
| 656 | ||
| 657 | ; This is list of symbols added in Windows 2000 SP4 and Windows XP SP2 (not available in Windows XP and Windows XP SP1) | |
| 658 | ; CreateProcessAsUserSecure@0 ; removed in Windows Server 2003 | |
| 659 | ElfFlushEventLog@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 660 | ||
| 661 | ; This is list of symbols added in Windows XP | |
| 662 | A_SHAFinal@8 | |
| 663 | A_SHAInit@4 | |
| 664 | A_SHAUpdate@12 | |
| 665 | CloseCodeAuthzLevel@4 | |
| 666 | ComputeAccessTokenFromCodeAuthzLevel@20 | |
| 667 | ConvertStringSDToSDDomainA@24 | |
| 668 | ConvertStringSDToSDDomainW@24 | |
| 669 | CreateCodeAuthzLevel@20 | |
| 670 | CreatePrivateObjectSecurityWithMultipleInheritance@36 | |
| 671 | CredDeleteA@12 | |
| 672 | CredDeleteW@12 | |
| 673 | CredEnumerateA@16 | |
| 674 | CredEnumerateW@16 | |
| 675 | CredFree@4 | |
| 676 | CredGetSessionTypes@8 | |
| 677 | CredGetTargetInfoA@12 | |
| 678 | CredGetTargetInfoW@12 | |
| 679 | CredIsMarshaledCredentialA@4 | |
| 680 | CredIsMarshaledCredentialW@4 | |
| 681 | CredMarshalCredentialA@12 | |
| 682 | CredMarshalCredentialW@12 | |
| 683 | CredProfileLoaded@0 | |
| 684 | CredReadA@16 | |
| 685 | CredReadDomainCredentialsA@16 | |
| 686 | CredReadDomainCredentialsW@16 | |
| 687 | CredReadW@16 | |
| 688 | CredRenameA@16 | |
| 689 | CredRenameW@16 | |
| 690 | CredUnmarshalCredentialA@12 | |
| 691 | CredUnmarshalCredentialW@12 | |
| 692 | CredWriteA@8 | |
| 693 | CredWriteDomainCredentialsA@12 | |
| 694 | CredWriteDomainCredentialsW@12 | |
| 695 | CredWriteW@8 | |
| 696 | CredpConvertCredential@16 | |
| 697 | CredpConvertTargetInfo@16 | |
| 698 | CredpDecodeCredential@4 | |
| 699 | CredpEncodeCredential@4 | |
| 700 | EncryptedFileKeyInfo@12 | |
| 701 | EnumerateTraceGuids@12 | |
| 702 | FlushTraceA@16 | |
| 703 | FlushTraceW@16 | |
| 704 | FreeEncryptedFileKeyInfo@4 | |
| 705 | FreeInheritedFromArray@12 | |
| 706 | GetInformationCodeAuthzLevelW@20 | |
| 707 | GetInformationCodeAuthzPolicyW@24 | |
| 708 | GetInheritanceSourceA@40 | |
| 709 | GetInheritanceSourceW@40 | |
| 710 | GetLocalManagedApplicationData@12 | |
| 711 | GetManagedApplicationCategories@8 | |
| 712 | I_ScSendTSMessage@16 | |
| 713 | IdentifyCodeAuthzLevelW@16 | |
| 714 | IsTokenUntrusted@4 | |
| 715 | LogonUserExA@40 | |
| 716 | LogonUserExW@40 | |
| 717 | LsaICLookupNamesWithCreds@48 | |
| 718 | LsaICLookupSidsWithCreds@48 | |
| 719 | LsaLookupNames2@24 | |
| 720 | LsaQueryForestTrustInformation@12 | |
| 721 | LsaSetForestTrustInformation@20 | |
| 722 | MD4Final@4 | |
| 723 | MD4Init@4 | |
| 724 | MD4Update@12 | |
| 725 | MD5Final@4 | |
| 726 | MD5Init@4 | |
| 727 | MD5Update@12 | |
| 728 | MSChapSrvChangePassword2@28 | |
| 729 | MSChapSrvChangePassword@28 | |
| 730 | ProcessIdleTasks@0 | |
| 731 | QueryTraceA@16 | |
| 732 | QueryTraceW@16 | |
| 733 | RegSaveKeyExA@16 | |
| 734 | RegSaveKeyExW@16 | |
| 735 | RegisterIdleTask@16 | |
| 736 | SaferCloseLevel@4 | |
| 737 | SaferComputeTokenFromLevel@20 | |
| 738 | SaferCreateLevel@20 | |
| 739 | SaferGetLevelInformation@20 | |
| 740 | SaferGetPolicyInformation@24 | |
| 741 | SaferIdentifyLevel@16 | |
| 742 | SaferRecordEventLogEntry@12 | |
| 743 | SaferSetLevelInformation@16 | |
| 744 | SaferSetPolicyInformation@20 | |
| 745 | SaferiChangeRegistryScope@8 | |
| 746 | SaferiCompareTokenLevels@12 | |
| 747 | SaferiIsExecutableFileType@8 | |
| 748 | SaferiPopulateDefaultsInRegistry@8 | |
| 749 | SaferiRecordEventLogEntry@12 | |
| 750 | ; SaferiReplaceProcessThreadTokens@12 ; removed in Windows 7 | |
| 751 | SaferiSearchMatchingHashRules@24 | |
| 752 | SetInformationCodeAuthzLevelW@16 | |
| 753 | SetInformationCodeAuthzPolicyW@20 | |
| 754 | StopTraceA@16 | |
| 755 | StopTraceW@16 | |
| 756 | SystemFunction036@8 | |
| 757 | TraceMessage ; cdecl | |
| 758 | TraceMessageVa@24 | |
| 759 | TreeResetNamedSecurityInfoA@44 | |
| 760 | TreeResetNamedSecurityInfoW@44 | |
| 761 | UnregisterIdleTask@12 | |
| 762 | UpdateTraceA@16 | |
| 763 | UpdateTraceW@16 | |
| 764 | ; WdmWmiServiceMain@8 ; removed in Windows Vista | |
| 765 | ; WmiGetFirstTraceOffset@4 ; removed in Windows Vista | |
| 766 | ; WmiGetTraceHeader@12 ; removed in Windows Vista | |
| 767 | ; WmiParseTraceEvent@20 ; removed in Windows Vista | |
| 768 | WmiQueryAllDataMultipleA@16 | |
| 769 | WmiQueryAllDataMultipleW@16 | |
| 770 | WmiQuerySingleInstanceMultipleA@20 | |
| 771 | WmiQuerySingleInstanceMultipleW@20 | |
| 772 | WmiReceiveNotificationsA@16 | |
| 773 | WmiReceiveNotificationsW@16 | |
| 774 | ; Wow64Win32ApiEntry@12 ; removed in Windows 7 | |
| 775 | ||
| 776 | ; This is list of symbols added in Windows XP SP1 | |
| 777 | ; WmiCloseTraceWithCursor@4 ; removed in Windows Vista | |
| 778 | ; WmiConvertTimestamp@12 ; removed in Windows Vista | |
| 779 | ; WmiGetNextEvent@4 ; removed in Windows Vista | |
| 780 | ; WmiOpenTraceWithCursor@4 ; removed in Windows Vista | |
| 781 | ||
| 782 | ; In Windows XP SP2 there was no new symbol | |
| 783 | ||
| 784 | ; This is list of symbols added in Windows XP SP3 and Windows Vista (not available in any version of Windows Server 2003) | |
| 785 | RegDisablePredefinedCacheEx@0 | |
| 786 | ||
| 787 | ; This is list of symbols added in Windows Server 2003 | |
| 788 | CreateProcessWithTokenW@36 | |
| 789 | ||
| 790 | ; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version) | |
| 791 | ElfReportEventAndSourceW@60 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 792 | I_QueryTagInformation@12 | |
| 793 | RegConnectRegistryExA@16 | |
| 794 | RegConnectRegistryExW@16 | |
| 795 | RegDeleteKeyExA@16 | |
| 796 | RegDeleteKeyExW@16 | |
| 797 | RegDisableReflectionKey@4 | |
| 798 | RegEnableReflectionKey@4 | |
| 799 | RegGetValueA@28 | |
| 800 | RegGetValueW@28 | |
| 801 | RegQueryReflectionKey@8 | |
| 802 | ||
| 803 | ; In Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version) there was no new symbol | |
| 804 | ||
| 805 | ; This is list of symbols added in Windows Vista | |
| 806 | AddMandatoryAce@20 | |
| 807 | AddUsersToEncryptedFileEx@16 | |
| 808 | AuditComputeEffectivePolicyBySid@16 | |
| 809 | AuditComputeEffectivePolicyByToken@16 | |
| 810 | AuditEnumerateCategories@8 | |
| 811 | AuditEnumeratePerUserPolicy@4 | |
| 812 | AuditEnumerateSubCategories@16 | |
| 813 | AuditFree@4 | |
| 814 | AuditLookupCategoryGuidFromCategoryId@8 | |
| 815 | AuditLookupCategoryIdFromCategoryGuid@8 | |
| 816 | AuditLookupCategoryNameA@8 | |
| 817 | AuditLookupCategoryNameW@8 | |
| 818 | AuditLookupSubCategoryNameA@8 | |
| 819 | AuditLookupSubCategoryNameW@8 | |
| 820 | AuditQueryPerUserPolicy@16 | |
| 821 | AuditQuerySecurity@8 | |
| 822 | AuditQuerySystemPolicy@12 | |
| 823 | AuditSetPerUserPolicy@12 | |
| 824 | AuditSetSecurity@8 | |
| 825 | AuditSetSystemPolicy@8 | |
| 826 | ; CheckAppInitBlockedServiceIdentity@4 ; removed in Windows 7 | |
| 827 | CloseThreadWaitChainSession@4 | |
| 828 | ControlServiceExA@16 | |
| 829 | ControlServiceExW@16 | |
| 830 | CredBackupCredentials@20 | |
| 831 | CredEncryptAndMarshalBinaryBlob@12 | |
| 832 | CredFindBestCredentialA@16 | |
| 833 | CredFindBestCredentialW@16 | |
| 834 | CredIsProtectedA@8 | |
| 835 | CredIsProtectedW@8 | |
| 836 | CredProfileUnloaded@0 | |
| 837 | CredProtectA@24 | |
| 838 | CredProtectW@24 | |
| 839 | CredReadByTokenHandle@20 | |
| 840 | CredRestoreCredentials@16 | |
| 841 | CredUnprotectA@20 | |
| 842 | CredUnprotectW@20 | |
| 843 | CredpConvertOneCredentialSize@8 | |
| 844 | CredpEncodeSecret@20 | |
| 845 | EnableTraceEx@48 | |
| 846 | EnumerateTraceGuidsEx@24 | |
| 847 | EventAccessControl@20 | |
| 848 | EventAccessQuery@12 | |
| 849 | EventAccessRemove@4 | |
| 850 | EventActivityIdControl@8 | |
| 851 | EventEnabled@12 | |
| 852 | EventProviderEnabled@20 | |
| 853 | EventRegister@16 | |
| 854 | EventUnregister@8 | |
| 855 | EventWrite@20 | |
| 856 | EventWriteEndScenario@20 | |
| 857 | EventWriteStartScenario@20 | |
| 858 | EventWriteString@24 | |
| 859 | EventWriteTransfer@28 | |
| 860 | FlushEfsCache@4 | |
| 861 | FreeEncryptedFileMetadata@4 | |
| 862 | GetEncryptedFileMetadata@12 | |
| 863 | GetThreadWaitChain@28 | |
| 864 | I_ScQueryServiceConfig@12 | |
| 865 | I_ScSendPnPMessage@24 | |
| 866 | I_ScValidatePnPService@12 | |
| 867 | InitiateShutdownA@20 | |
| 868 | InitiateShutdownW@20 | |
| 869 | IsValidRelativeSecurityDescriptor@12 | |
| 870 | LogonUserExExW@44 | |
| 871 | LsaManageSidNameMapping@12 | |
| 872 | NotifyServiceStatusChange@12 | |
| 873 | NotifyServiceStatusChangeA@12 | |
| 874 | NotifyServiceStatusChangeW@12 | |
| 875 | OpenThreadWaitChainSession@8 | |
| 876 | PerfAddCounters@12 | |
| 877 | PerfCloseQueryHandle@4 | |
| 878 | PerfCreateInstance@16 | |
| 879 | PerfDecrementULongCounterValue@16 | |
| 880 | PerfDecrementULongLongCounterValue@20 | |
| 881 | PerfDeleteCounters@12 | |
| 882 | PerfDeleteInstance@8 | |
| 883 | PerfEnumerateCounterSet@16 | |
| 884 | PerfEnumerateCounterSetInstances@20 | |
| 885 | PerfIncrementULongCounterValue@16 | |
| 886 | PerfIncrementULongLongCounterValue@20 | |
| 887 | PerfOpenQueryHandle@8 | |
| 888 | PerfQueryCounterData@16 | |
| 889 | PerfQueryCounterInfo@16 | |
| 890 | PerfQueryCounterSetRegistrationInfo@28 | |
| 891 | PerfQueryInstance@16 | |
| 892 | PerfSetCounterRefValue@16 | |
| 893 | PerfSetCounterSetInfo@12 | |
| 894 | PerfSetULongCounterValue@16 | |
| 895 | PerfSetULongLongCounterValue@20 | |
| 896 | PerfStartProvider@12 | |
| 897 | PerfStartProviderEx@12 | |
| 898 | PerfStopProvider@4 | |
| 899 | ProcessIdleTasksW@16 | |
| 900 | QuerySecurityAccessMask@8 | |
| 901 | RegCopyTreeA@12 | |
| 902 | RegCopyTreeW@12 | |
| 903 | RegCreateKeyTransactedA@44 | |
| 904 | RegCreateKeyTransactedW@44 | |
| 905 | RegDeleteKeyTransactedA@24 | |
| 906 | RegDeleteKeyTransactedW@24 | |
| 907 | RegDeleteKeyValueA@12 | |
| 908 | RegDeleteKeyValueW@12 | |
| 909 | RegDeleteTreeA@8 | |
| 910 | RegDeleteTreeW@8 | |
| 911 | RegLoadAppKeyA@20 | |
| 912 | RegLoadAppKeyW@20 | |
| 913 | RegLoadMUIStringA@28 | |
| 914 | RegLoadMUIStringW@28 | |
| 915 | RegOpenKeyTransactedA@28 | |
| 916 | RegOpenKeyTransactedW@28 | |
| 917 | RegRenameKey@12 | |
| 918 | RegSetKeyValueA@24 | |
| 919 | RegSetKeyValueW@24 | |
| 920 | RegisterWaitChainCOMCallback@8 | |
| 921 | SetEncryptedFileMetadata@24 | |
| 922 | SetSecurityAccessMask@8 | |
| 923 | SetUserFileEncryptionKeyEx@16 | |
| 924 | TreeSetNamedSecurityInfoA@44 | |
| 925 | TreeSetNamedSecurityInfoW@44 | |
| 926 | UsePinForEncryptedFilesA@12 | |
| 927 | UsePinForEncryptedFilesW@12 | |
| 928 | ||
| 929 | ; In Windows Vista SP1 there was no new symbol | |
| 930 | ||
| 931 | ; In Windows Vista SP2 there was no new symbol | |
| 932 | ||
| 933 | ; This is list of symbols added in Windows 7 | |
| 934 | AddConditionalAce@32 | |
| 935 | AuditQueryGlobalSaclA@8 | |
| 936 | AuditQueryGlobalSaclW@8 | |
| 937 | AuditSetGlobalSaclA@8 | |
| 938 | AuditSetGlobalSaclW@8 | |
| 939 | EnableTraceEx2@44 | |
| 940 | EventWriteEx@40 | |
| 941 | SaferiIsDllAllowed@8 ; Windows 7 has ABI "SaferiIsDllAllowed@12", Windows 8 and new has ABI "SaferiIsDllAllowed@8" | |
| 942 | TraceSetInformation@20 | |
| 943 | ||
| 944 | ; This is list of ordinal-only symbols added in Windows 7 | |
| 945 | ; Symbol names are taken from: | |
| 946 | ; https://www.geoffchappell.com/studies/windows/win32/advapi32/history/ords61.htm | |
| 947 | SaferiRegisterExtensionDll@8 @1000 NONAME | |
| 948 | ||
| 949 | ; In Windows 7 SP1 there was no new symbol | |
| 950 | ||
| 951 | ; This is list of symbols added in Windows 8 | |
| 952 | BaseRegCloseKey@4 | |
| 953 | BaseRegCreateKey@32 | |
| 954 | BaseRegDeleteKeyEx@16 | |
| 955 | BaseRegDeleteValue@8 | |
| 956 | BaseRegFlushKey@4 | |
| 957 | BaseRegGetVersion@8 | |
| 958 | BaseRegLoadKey@12 | |
| 959 | BaseRegOpenKey@20 | |
| 960 | BaseRegRestoreKey@12 | |
| 961 | BaseRegSaveKeyEx@16 | |
| 962 | BaseRegSetKeySecurity@12 | |
| 963 | BaseRegSetValue@20 | |
| 964 | BaseRegUnLoadKey@8 | |
| 965 | CheckForHiberboot@8 | |
| 966 | ConvertSDToStringSDDomainW@28 | |
| 967 | ; CredProfileLoadedEx@4 | |
| 968 | EnumDynamicTimeZoneInformation@8 | |
| 969 | ; EtwLogSysConfigExtension@8 ; removed in Windows 10 Anniversary Update (Redstone / 1607) | |
| 970 | EventSetInformation@20 | |
| 971 | GetDynamicTimeZoneInformationEffectiveYears@12 | |
| 972 | GetStringConditionFromBinary@16 | |
| 973 | ; I_ScRegisterPreshutdownRestart@8 | |
| 974 | LsaGetAppliedCAPIDs@12 | |
| 975 | LsaLookupSids2@24 | |
| 976 | LsaQueryCAPs@16 | |
| 977 | LsaSetCAPs@12 | |
| 978 | ; MIDL_user_free_Ext@4 | |
| 979 | OperationEnd@4 | |
| 980 | OperationStart@4 | |
| 981 | PerfRegCloseKey@4 | |
| 982 | PerfRegEnumKey@24 | |
| 983 | PerfRegEnumValue@32 | |
| 984 | PerfRegQueryInfoKey@44 | |
| 985 | PerfRegQueryValue@28 | |
| 986 | PerfRegSetValue@24 | |
| 987 | ; PsmActivateApplication@12 ; removed in Windows 8.1 | |
| 988 | ; PsmAdjustActivationToken@24 ; removed in Windows 8.1 | |
| 989 | ; PsmQueryBackgroundActivationType@8 ; removed in Windows 8.1 | |
| 990 | ; PsmRegisterApplicationProcess@8 ; removed in Windows 8.1 | |
| 991 | QueryServiceDynamicInformation@12 | |
| 992 | RemoteRegEnumKeyWrapper@20 | |
| 993 | RemoteRegEnumValueWrapper@28 | |
| 994 | RemoteRegQueryInfoKeyWrapper@40 | |
| 995 | RemoteRegQueryValueWrapper@24 | |
| 996 | SafeBaseRegGetKeySecurity@16 | |
| 997 | TraceQueryInformation@24 | |
| 998 | WaitServiceState@16 | |
| 999 | ||
| 1000 | ; In Windows 8.1 there was no new symbol | |
| 1001 | ||
| 1002 | ; This is list of symbols added in Windows 10 (Threshold / 1507) | |
| 1003 | NpGetUserName@12 | |
| 1004 | ||
| 1005 | ; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511) | |
| 1006 | ; I_ScReparseServiceDatabase@4 | |
| 1007 | ; QueryLocalUserServiceName@12 | |
| 1008 | ; QueryUserServiceName@20 | |
| 1009 | ||
| 1010 | ; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607) | |
| 1011 | CveEventWrite@8 | |
| 1012 | ||
| 1013 | ; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 1014 | ; QueryUserServiceNameForContext@20 | |
| 1015 | ||
| 1016 | ; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 1017 | ; CreateServiceEx@56 | |
| 1018 | QueryTraceProcessingHandle@32 | |
| 1019 | RemoteRegQueryMultipleValues2Wrapper@24 | |
| 1020 | RemoteRegQueryMultipleValuesWrapper@20 | |
| 1021 | ||
| 1022 | ; In Windows 10 April 2018 Update (Redstone 4 / 1803) there was no new symbol | |
| 1023 | ||
| 1024 | ; In Windows 10 October 2018 Update (Redstone 5 / 1809) there was no new symbl | |
| 1025 | ||
| 1026 | ; In Windows 10 May 2019 Update (19H1 / 1903) there was no new symbol | |
| 1027 | ||
| 1028 | ; In Windows 10 November 2019 Update (19H2 /1909) there was no new symbol | |
| 1029 | ||
| 1030 | ; In Windows 10 May 2020 Update (20H1 / 2004) there was no new symbol | |
| 1031 | ||
| 1032 | ; In Windows 10 October 2020 Update (20H2) there was no new symbol | |
| 1033 | ||
| 1034 | ; In Windows 10 May 2021 Update (21H1) there was no new symbol | |
| 1035 | ||
| 1036 | ; In Windows 10 November 2021 Update (21H2) there was no new symbol | |
| 1037 | ||
| 1038 | ; This is list of symbols added in Windows 10 2022 Update (22H2) and Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) (not available in Windows 11 (Sun Valley / 21H2)) | |
| 1039 | LsaInvokeTrustScanner@16 | |
| 1040 | LsaQueryForestTrustInformation2@16 | |
| 1041 | LsaSetForestTrustInformation2@24 | |
| 1042 | ||
| 1043 | ; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version) | |
| 1044 | LsaConfigureAutoLogonCredentials@0 | |
| 1045 | ; LsaDisablePasswordLessCurrentUser@0 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 1046 | LsaDisableUserArso@4 | |
| 1047 | ; LsaEnablePasswordLessCurrentUser@0 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2) | |
| 1048 | LsaEnableUserArso@4 | |
| 1049 | LsaGetDeviceRegistrationInfo@4 | |
| 1050 | LsaIsUserArsoAllowed@4 | |
| 1051 | LsaIsUserArsoEnabled@8 | |
| 1052 | LsaProfileDeleted@4 | |
| 1053 | LsaValidateProcUniqueLuid@4 | |
| 1054 | ||
| 1055 | ; In Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) there was no new symbol | |
| 1056 | ||
| 1057 | ; In Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version) there was no new symbol | |
| 1058 | ||
| 1059 | ; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) | |
| 1060 | ; LsaIOpenPolicyWithCreds@24 ; removed in Windows 11 2025 Update (Hudson Valley 2 / 25H2) | |
| 1061 | ||
| 1062 | ; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version) | |
| 1063 | ; LogonSecondaryUserIntoSessionW@20 | |
| 1064 | ; LsaPurgeLocalSystemAccessTable@0 | |
| 1065 | LsaQueryLocalSystemAccess@8 | |
| 1066 | LsaQueryLocalSystemAccessAll@4 | |
| 1067 | LsaSetLocalSystemAccess@4 |
lib/libc/mingw/lib32/kernel32.def+1768-1234| ... | ... | @@ -1,391 +1,100 @@ |
| 1 | ; | |
| 2 | ; Definition file of KERNEL32.dll | |
| 3 | ; Automatic generated by gendef | |
| 4 | ; written by Kai Tietz 2008 | |
| 5 | ; | |
| 6 | 1 | LIBRARY "KERNEL32.dll" |
| 7 | 2 | EXPORTS |
| 8 | BaseThreadInitThunk@4 | |
| 9 | InterlockedPushListSList@8 | |
| 10 | AcquireSRWLockExclusive@4 | |
| 11 | AcquireSRWLockShared@4 | |
| 12 | ActivateActCtx@8 | |
| 13 | ActivateActCtxWorker@8 | |
| 14 | ActivatePackageVirtualizationContext@8 | |
| 3 | ||
| 4 | ; This file is a comprehensive documentation for 32-bit x86 kernel32.dll symbols. | |
| 5 | ; It covers all 3 platforms Win32s, Win9x and WinNT and contains information | |
| 6 | ; from native kernel32.dll libraries on 32-bit Windows systems and also from | |
| 7 | ; 32-bit WoW64 kernel32.dll libraries on 64-bit Windows systems. Symbols in this | |
| 8 | ; file are ordered by increasing Windows version in which they were introduced. | |
| 9 | ; For example symbols added in Windows 98 (which is version 4.10) are after | |
| 10 | ; Windows NT 4.0 symbols. Note that some symbols are available in Windows NT 3.1, | |
| 11 | ; missing in Windows 98 (4.10), but are again available in Windows 2000 (5.0). | |
| 12 | ; This is always mentioned in the header of section which lists symbols. | |
| 13 | ; | |
| 14 | ; BEWARE that this file contains only information about symbol availability and | |
| 15 | ; whether it is possible to load application or library which references symbol. | |
| 16 | ; It does not contain information if the particular Windows version supports and | |
| 17 | ; implements corresponding API function. Lot of -W functions are unimplemented | |
| 18 | ; on Win32s and Win9x platforms and simply signals ERROR_CALL_NOT_IMPLEMENTED. | |
| 19 | ||
| 20 | ; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1; Win9x since Windows 95; WinNT since Windows NT 3.1) | |
| 15 | 21 | AddAtomA@4 |
| 16 | 22 | AddAtomW@4 |
| 17 | AddConsoleAliasA@12 | |
| 18 | AddConsoleAliasW@12 | |
| 19 | AddDllDirectory@4 | |
| 20 | AddIntegrityLabelToBoundaryDescriptor@8 | |
| 21 | AddLocalAlternateComputerNameA@8 | |
| 22 | AddLocalAlternateComputerNameW@8 | |
| 23 | AddRefActCtx@4 | |
| 24 | AddRefActCtxWorker@4 | |
| 25 | AddResourceAttributeAce@28 | |
| 26 | AddSIDToBoundaryDescriptor@8 | |
| 27 | AddScopedPolicyIDAce@20 | |
| 28 | AddSecureMemoryCacheCallback@4 | |
| 29 | AddVectoredContinueHandler@8 | |
| 30 | AddVectoredExceptionHandler@8 | |
| 31 | AdjustCalendarDate@12 | |
| 32 | 23 | AllocConsole@0 |
| 33 | AllocConsoleWithOptions@8 | |
| 34 | AllocateUserPhysicalPages@12 | |
| 35 | AllocateUserPhysicalPagesNuma@16 | |
| 36 | AppPolicyGetClrCompat@8 | |
| 37 | AppPolicyGetCreateFileAccess@8 | |
| 38 | AppPolicyGetLifecycleManagement@8 | |
| 39 | AppPolicyGetMediaFoundationCodecLoading@8 | |
| 40 | AppPolicyGetProcessTerminationMethod@8 | |
| 41 | AppPolicyGetShowDeveloperDiagnostic@8 | |
| 42 | AppPolicyGetThreadInitializationType@8 | |
| 43 | AppPolicyGetWindowingModel@8 | |
| 44 | AppXGetOSMaxVersionTested@8 | |
| 45 | ApplicationRecoveryFinished@4 | |
| 46 | ApplicationRecoveryInProgress@4 | |
| 47 | AreFileApisANSI@0 | |
| 48 | AreShortNamesEnabled@8 | |
| 49 | AssignProcessToJobObject@8 | |
| 50 | AttachConsole@4 | |
| 51 | 24 | BackupRead@28 |
| 52 | 25 | BackupSeek@24 |
| 53 | 26 | BackupWrite@28 |
| 54 | BaseAttachCompleteThunk@0 | |
| 55 | BaseCheckAppcompatCache@16 | |
| 56 | BaseCheckAppcompatCacheEx@24 | |
| 57 | BaseCheckAppcompatCacheExWorker@36 | |
| 58 | BaseCheckAppcompatCacheWorker@16 | |
| 59 | BaseCheckElevation@48 | |
| 60 | BaseCheckRunApp@52 | |
| 61 | BaseCleanupAppcompatCacheSupport@4 | |
| 62 | BaseDllReadWriteIniFile@32 | |
| 63 | BaseDumpAppcompatCache@0 | |
| 64 | BaseDumpAppcompatCacheWorker@0 | |
| 65 | BaseElevationPostProcessing@12 | |
| 66 | BaseFlushAppcompatCache@0 | |
| 67 | BaseFlushAppcompatCacheWorker@0 | |
| 68 | BaseFormatObjectAttributes@16 | |
| 69 | BaseFormatTimeOut@8 | |
| 70 | BaseFreeAppCompatDataForProcessWorker@4 | |
| 71 | BaseGenerateAppCompatData@24 | |
| 72 | BaseGetNamedObjectDirectory@4 | |
| 73 | BaseInitAppcompatCacheSupport@0 | |
| 74 | BaseInitAppcompatCacheSupportWorker@0 | |
| 75 | BaseIsAppcompatInfrastructureDisabled@0 | |
| 76 | BaseIsAppcompatInfrastructureDisabledWorker@0 | |
| 77 | BaseIsDosApplication@8 | |
| 78 | BaseQueryModuleData@28 | |
| 79 | BaseReadAppCompatDataForProcessWorker@12 | |
| 80 | BaseSetLastNTError@4 | |
| 81 | BaseUpdateAppcompatCache@12 | |
| 82 | BaseUpdateAppcompatCacheWorker@12 | |
| 83 | BaseUpdateVDMEntry@16 | |
| 84 | BaseVerifyUnicodeString@4 | |
| 85 | BaseWriteErrorElevationRequiredEvent@0 | |
| 86 | Basep8BitStringToDynamicUnicodeString@8 | |
| 87 | BasepAllocateActivationContextActivationBlock@16 | |
| 88 | BasepAnsiStringToDynamicUnicodeString@8 | |
| 89 | BasepAppContainerEnvironmentExtension@12 | |
| 90 | BasepAppXExtension@24 | |
| 91 | BasepCheckAppCompat@16 | |
| 92 | BasepCheckBadapp@56 | |
| 93 | BasepCheckWebBladeHashes@4 | |
| 94 | BasepCheckWinSaferRestrictions@28 | |
| 95 | BasepConstructSxsCreateProcessMessage@80 | |
| 96 | BasepCopyEncryption@12 | |
| 97 | BasepFreeActivationContextActivationBlock@4 | |
| 98 | BasepFreeAppCompatData@12 | |
| 99 | BasepGetAppCompatData@60 | |
| 100 | BasepGetComputerNameFromNtPath@16 | |
| 101 | BasepGetExeArchType@12 | |
| 102 | BasepInitAppCompatData@12 | |
| 103 | BasepIsProcessAllowed@4 | |
| 104 | BasepMapModuleHandle@8 | |
| 105 | BasepNotifyLoadStringResource@16 | |
| 106 | BasepPostSuccessAppXExtension@8 | |
| 107 | BasepProcessInvalidImage@84 | |
| 108 | BasepQueryAppCompat@72 | |
| 109 | BasepQueryModuleChpeSettings@40 | |
| 110 | BasepReleaseAppXContext@4 | |
| 111 | BasepReleaseSxsCreateProcessUtilityStruct@4 | |
| 112 | BasepReportFault@8 | |
| 113 | BasepSetFileEncryptionCompression@32 | |
| 114 | 27 | Beep@8 |
| 115 | 28 | BeginUpdateResourceA@8 |
| 116 | 29 | BeginUpdateResourceW@8 |
| 117 | BindIoCompletionCallback@12 | |
| 118 | 30 | BuildCommDCBA@8 |
| 119 | 31 | BuildCommDCBAndTimeoutsA@12 |
| 120 | 32 | BuildCommDCBAndTimeoutsW@12 |
| 121 | 33 | BuildCommDCBW@8 |
| 122 | BuildIoRingCancelRequest@20 | |
| 123 | BuildIoRingFlushFile@24 | |
| 124 | BuildIoRingReadFile@44 | |
| 125 | BuildIoRingReadFileScatter@40 | |
| 126 | BuildIoRingRegisterBuffers@16 | |
| 127 | BuildIoRingRegisterFileHandles@16 | |
| 128 | BuildIoRingWriteFile@48 | |
| 129 | BuildIoRingWriteFileGather@44 | |
| 130 | 34 | CallNamedPipeA@28 |
| 131 | 35 | CallNamedPipeW@28 |
| 132 | CallbackMayRunLong@4 | |
| 133 | CancelDeviceWakeupRequest@4 | |
| 134 | CancelIo@4 | |
| 135 | CancelIoEx@8 | |
| 136 | CancelSynchronousIo@4 | |
| 137 | CancelThreadpoolIo@4 | |
| 138 | CancelTimerQueueTimer@8 | |
| 139 | CancelWaitableTimer@4 | |
| 140 | CeipIsOptedIn@0 | |
| 141 | ChangeTimerQueueTimer@16 | |
| 142 | CheckAllowDecryptedRemoteDestinationPolicy@0 | |
| 143 | CheckElevation@20 | |
| 144 | CheckElevationEnabled@4 | |
| 145 | CheckForReadOnlyResource@8 | |
| 146 | CheckForReadOnlyResourceFilter@4 | |
| 147 | CheckNameLegalDOS8Dot3A@20 | |
| 148 | CheckNameLegalDOS8Dot3W@20 | |
| 149 | CheckRemoteDebuggerPresent@8 | |
| 150 | CheckTokenCapability@12 | |
| 151 | CheckTokenMembershipEx@16 | |
| 152 | 36 | ClearCommBreak@4 |
| 153 | 37 | ClearCommError@12 |
| 154 | CloseConsoleHandle@4 | |
| 155 | 38 | CloseHandle@4 |
| 156 | CloseIoRing@4 | |
| 157 | ClosePackageInfo@4 | |
| 158 | ClosePrivateNamespace@8 | |
| 159 | 39 | CloseProfileUserMapping@0 |
| 160 | ClosePseudoConsole@4 | |
| 161 | CloseState@4 | |
| 162 | CloseThreadpool@4 | |
| 163 | CloseThreadpoolCleanupGroup@4 | |
| 164 | CloseThreadpoolCleanupGroupMembers@12 | |
| 165 | CloseThreadpoolIo@4 | |
| 166 | CloseThreadpoolTimer@4 | |
| 167 | CloseThreadpoolWait@4 | |
| 168 | CloseThreadpoolWork@4 | |
| 169 | CmdBatNotification@4 | |
| 170 | CommConfigDialogA@12 | |
| 171 | CommConfigDialogW@12 | |
| 172 | CompareCalendarDates@12 | |
| 173 | 40 | CompareFileTime@8 |
| 174 | CompareStringA@24 | |
| 175 | CompareStringEx@36 | |
| 176 | CompareStringOrdinal@20 | |
| 177 | 41 | CompareStringW@24 |
| 178 | 42 | ConnectNamedPipe@8 |
| 179 | ConsoleIMERoutine@4 | |
| 180 | ConsoleMenuControl@12 | |
| 181 | 43 | ContinueDebugEvent@12 |
| 182 | ConvertCalDateTimeToSystemTime@8 | |
| 183 | ConvertDefaultLocale@4 | |
| 184 | ConvertFiberToThread@0 | |
| 185 | ConvertNLSDayOfWeekToWin32DayOfWeek@4 | |
| 186 | ConvertSystemTimeToCalDateTime@12 | |
| 187 | ConvertThreadToFiber@4 | |
| 188 | ConvertThreadToFiberEx@8 | |
| 189 | ConvertToGlobalHandle@4 | |
| 190 | CopyContext@12 | |
| 191 | CopyFile2@12 | |
| 192 | 44 | CopyFileA@12 |
| 193 | CopyFileExA@24 | |
| 194 | CopyFileExW@24 | |
| 195 | CopyFileTransactedA@28 | |
| 196 | CopyFileTransactedW@28 | |
| 197 | 45 | CopyFileW@12 |
| 198 | CopyLZFile@8 | |
| 199 | CreateActCtxA@4 | |
| 200 | CreateActCtxW@4 | |
| 201 | CreateActCtxWWorker@4 | |
| 202 | CreateBoundaryDescriptorA@8 | |
| 203 | CreateBoundaryDescriptorW@8 | |
| 204 | 46 | CreateConsoleScreenBuffer@20 |
| 205 | 47 | CreateDirectoryA@8 |
| 206 | 48 | CreateDirectoryExA@12 |
| 207 | 49 | CreateDirectoryExW@12 |
| 208 | CreateDirectoryTransactedA@16 | |
| 209 | CreateDirectoryTransactedW@16 | |
| 210 | 50 | CreateDirectoryW@8 |
| 211 | CreateEnclave@32 | |
| 212 | 51 | CreateEventA@16 |
| 213 | CreateEventExA@16 | |
| 214 | CreateEventExW@16 | |
| 215 | 52 | CreateEventW@16 |
| 216 | CreateFiber@12 | |
| 217 | CreateFiberEx@20 | |
| 218 | CreateFile2@20 | |
| 219 | 53 | CreateFileA@28 |
| 220 | 54 | CreateFileMappingA@24 |
| 221 | CreateFileMappingFromApp@24 | |
| 222 | CreateFileMappingNumaA@28 | |
| 223 | CreateFileMappingNumaW@28 | |
| 224 | 55 | CreateFileMappingW@24 |
| 225 | CreateFileTransactedA@40 | |
| 226 | CreateFileTransactedW@40 | |
| 227 | 56 | CreateFileW@28 |
| 228 | CreateHardLinkA@12 | |
| 229 | CreateHardLinkTransactedA@16 | |
| 230 | CreateHardLinkTransactedW@16 | |
| 231 | CreateHardLinkW@12 | |
| 232 | CreateIoCompletionPort@16 | |
| 233 | CreateIoRing@24 | |
| 234 | CreateJobObjectA@8 | |
| 235 | CreateJobObjectW@8 | |
| 236 | CreateJobSet@12 | |
| 237 | 57 | CreateMailslotA@16 |
| 238 | 58 | CreateMailslotW@16 |
| 239 | CreateMemoryResourceNotification@4 | |
| 240 | 59 | CreateMutexA@12 |
| 241 | CreateMutexExA@16 | |
| 242 | CreateMutexExW@16 | |
| 243 | 60 | CreateMutexW@12 |
| 244 | 61 | CreateNamedPipeA@32 |
| 245 | 62 | CreateNamedPipeW@32 |
| 246 | CreatePackageVirtualizationContext@8 | |
| 247 | 63 | CreatePipe@16 |
| 248 | CreatePrivateNamespaceA@12 | |
| 249 | CreatePrivateNamespaceW@12 | |
| 250 | 64 | CreateProcessA@40 |
| 251 | ; MSDN says these are exported from ADVAPI32.DLL. | |
| 252 | ; CreateProcessAsUserA@44 | |
| 253 | ; CreateProcessAsUserW@44 | |
| 254 | CreateProcessInternalA@48 | |
| 255 | CreateProcessInternalW@48 | |
| 256 | 65 | CreateProcessW@40 |
| 257 | CreatePseudoConsole@20 | |
| 258 | 66 | CreateRemoteThread@28 |
| 259 | CreateRemoteThreadEx@32 | |
| 260 | 67 | CreateSemaphoreA@16 |
| 261 | CreateSemaphoreExA@24 | |
| 262 | CreateSemaphoreExW@24 | |
| 263 | 68 | CreateSemaphoreW@16 |
| 264 | CreateSocketHandle@0 | |
| 265 | CreateSymbolicLinkA@12 | |
| 266 | CreateSymbolicLinkTransactedA@16 | |
| 267 | CreateSymbolicLinkTransactedW@16 | |
| 268 | CreateSymbolicLinkW@12 | |
| 269 | 69 | CreateTapePartition@16 |
| 270 | 70 | CreateThread@24 |
| 271 | CreateThreadpool@4 | |
| 272 | CreateThreadpoolCleanupGroup@0 | |
| 273 | CreateThreadpoolIo@16 | |
| 274 | CreateThreadpoolTimer@12 | |
| 275 | CreateThreadpoolWait@12 | |
| 276 | CreateThreadpoolWork@12 | |
| 277 | CreateTimerQueue@0 | |
| 278 | CreateTimerQueueTimer@28 | |
| 279 | CreateToolhelp32Snapshot@8 | |
| 280 | CreateVirtualBuffer@12 | |
| 281 | CreateWaitableTimerA@12 | |
| 282 | CreateWaitableTimerExA@16 | |
| 283 | CreateWaitableTimerExW@16 | |
| 284 | CreateWaitableTimerW@12 | |
| 285 | CtrlRoutine@4 | |
| 286 | DeactivateActCtx@8 | |
| 287 | DeactivateActCtxWorker@8 | |
| 288 | DeactivatePackageVirtualizationContext@4 | |
| 289 | 71 | DebugActiveProcess@4 |
| 290 | DebugActiveProcessStop@4 | |
| 291 | 72 | DebugBreak@0 |
| 292 | DebugBreakProcess@4 | |
| 293 | DebugSetProcessKillOnExit@4 | |
| 294 | DecodePointer@4 | |
| 295 | DecodeSystemPointer@4 | |
| 296 | 73 | DefineDosDeviceA@12 |
| 297 | 74 | DefineDosDeviceW@12 |
| 298 | DelayLoadFailureHook@8 | |
| 299 | 75 | DeleteAtom@4 |
| 300 | DeleteBoundaryDescriptor@4 | |
| 301 | 76 | DeleteCriticalSection@4 |
| 302 | DeleteFiber@4 | |
| 303 | 77 | DeleteFileA@4 |
| 304 | DeleteFileTransactedA@8 | |
| 305 | DeleteFileTransactedW@8 | |
| 306 | 78 | DeleteFileW@4 |
| 307 | DeleteProcThreadAttributeList@4 | |
| 308 | DeleteSynchronizationBarrier@4 | |
| 309 | DeleteTimerQueue@4 | |
| 310 | DeleteTimerQueueEx@8 | |
| 311 | DeleteTimerQueueTimer@12 | |
| 312 | DeleteVolumeMountPointA@4 | |
| 313 | DeleteVolumeMountPointW@4 | |
| 314 | 79 | DeviceIoControl@32 |
| 315 | DisableThreadLibraryCalls@4 | |
| 316 | DisableThreadProfiling@4 | |
| 317 | DisassociateCurrentThreadFromCallback@4 | |
| 318 | DiscardVirtualMemory@8 | |
| 319 | 80 | DisconnectNamedPipe@4 |
| 320 | DnsHostnameToComputerNameA@12 | |
| 321 | DnsHostnameToComputerNameExW@12 | |
| 322 | DnsHostnameToComputerNameW@12 | |
| 323 | 81 | DosDateTimeToFileTime@12 |
| 324 | DosPathToSessionPathA@12 | |
| 325 | DosPathToSessionPathW@12 | |
| 326 | DuplicateConsoleHandle@16 | |
| 327 | DuplicateEncryptionInfoFileExt@20 | |
| 328 | 82 | DuplicateHandle@28 |
| 329 | DuplicatePackageVirtualizationContext@8 | |
| 330 | EnableProcessOptionalXStateFeatures@8 | |
| 331 | EnableThreadProfiling@20 | |
| 332 | EncodePointer@4 | |
| 333 | EncodeSystemPointer@4 | |
| 334 | 83 | EndUpdateResourceA@8 |
| 335 | 84 | EndUpdateResourceW@8 |
| 336 | 85 | EnterCriticalSection@4 |
| 337 | EnterSynchronizationBarrier@8 | |
| 338 | EnumCalendarInfoA@16 | |
| 339 | EnumCalendarInfoExA@16 | |
| 340 | EnumCalendarInfoExEx@24 | |
| 341 | EnumCalendarInfoExW@16 | |
| 342 | EnumCalendarInfoW@16 | |
| 343 | EnumDateFormatsA@12 | |
| 344 | EnumDateFormatsExA@12 | |
| 345 | EnumDateFormatsExEx@16 | |
| 346 | EnumDateFormatsExW@12 | |
| 347 | EnumDateFormatsW@12 | |
| 348 | EnumLanguageGroupLocalesA@16 | |
| 349 | EnumLanguageGroupLocalesW@16 | |
| 350 | 86 | EnumResourceLanguagesA@20 |
| 351 | EnumResourceLanguagesExA@28 | |
| 352 | EnumResourceLanguagesExW@28 | |
| 353 | 87 | EnumResourceLanguagesW@20 |
| 354 | 88 | EnumResourceNamesA@16 |
| 355 | EnumResourceNamesExA@24 | |
| 356 | EnumResourceNamesExW@24 | |
| 357 | 89 | EnumResourceNamesW@16 |
| 358 | 90 | EnumResourceTypesA@12 |
| 359 | EnumResourceTypesExA@20 | |
| 360 | EnumResourceTypesExW@20 | |
| 361 | 91 | EnumResourceTypesW@12 |
| 362 | EnumSystemCodePagesA@8 | |
| 363 | EnumSystemCodePagesW@8 | |
| 364 | EnumSystemFirmwareTables@12 | |
| 365 | EnumSystemGeoID@12 | |
| 366 | EnumSystemGeoNames@12 | |
| 367 | EnumSystemLanguageGroupsA@12 | |
| 368 | EnumSystemLanguageGroupsW@12 | |
| 369 | EnumSystemLocalesA@8 | |
| 370 | EnumSystemLocalesEx@16 | |
| 371 | EnumSystemLocalesW@8 | |
| 372 | EnumTimeFormatsA@12 | |
| 373 | EnumTimeFormatsEx@16 | |
| 374 | EnumTimeFormatsW@12 | |
| 375 | EnumUILanguagesA@12 | |
| 376 | EnumUILanguagesW@12 | |
| 377 | EnumerateLocalComputerNamesA@16 | |
| 378 | EnumerateLocalComputerNamesW@16 | |
| 379 | 92 | EraseTape@12 |
| 380 | 93 | EscapeCommFunction@8 |
| 381 | 94 | ExitProcess@4 |
| 382 | 95 | ExitThread@4 |
| 383 | ExitVDM@8 | |
| 384 | 96 | ExpandEnvironmentStringsA@12 |
| 385 | 97 | ExpandEnvironmentStringsW@12 |
| 386 | ExpungeConsoleCommandHistoryA@4 | |
| 387 | ExpungeConsoleCommandHistoryW@4 | |
| 388 | ExtendVirtualBuffer@8 | |
| 389 | 98 | FatalAppExitA@8 |
| 390 | 99 | FatalAppExitW@8 |
| 391 | 100 | FatalExit@4 |
| ... | ... | @@ -395,11 +104,6 @@ FileTimeToSystemTime@8 |
| 395 | 104 | FillConsoleOutputAttribute@20 |
| 396 | 105 | FillConsoleOutputCharacterA@20 |
| 397 | 106 | FillConsoleOutputCharacterW@20 |
| 398 | FindActCtxSectionGuid@20 | |
| 399 | FindActCtxSectionGuidWorker@20 | |
| 400 | FindActCtxSectionStringA@20 | |
| 401 | FindActCtxSectionStringW@20 | |
| 402 | FindActCtxSectionStringWWorker@20 | |
| 403 | 107 | FindAtomA@4 |
| 404 | 108 | FindAtomW@4 |
| 405 | 109 | FindClose@4 |
| ... | ... | @@ -407,96 +111,29 @@ FindCloseChangeNotification@4 |
| 407 | 111 | FindFirstChangeNotificationA@12 |
| 408 | 112 | FindFirstChangeNotificationW@12 |
| 409 | 113 | FindFirstFileA@8 |
| 410 | FindFirstFileExA@24 | |
| 411 | FindFirstFileExW@24 | |
| 412 | FindFirstFileNameTransactedW@20 | |
| 413 | FindFirstFileNameW@16 | |
| 414 | FindFirstFileTransactedA@28 | |
| 415 | FindFirstFileTransactedW@28 | |
| 416 | 114 | FindFirstFileW@8 |
| 417 | FindFirstStreamTransactedW@20 | |
| 418 | FindFirstStreamW@16 | |
| 419 | FindFirstVolumeA@8 | |
| 420 | FindFirstVolumeMountPointA@12 | |
| 421 | FindFirstVolumeMountPointW@12 | |
| 422 | FindFirstVolumeW@8 | |
| 423 | FindNLSString@28 | |
| 424 | FindNLSStringEx@40 | |
| 425 | 115 | FindNextChangeNotification@4 |
| 426 | 116 | FindNextFileA@8 |
| 427 | FindNextFileNameW@12 | |
| 428 | 117 | FindNextFileW@8 |
| 429 | FindNextStreamW@8 | |
| 430 | FindNextVolumeA@12 | |
| 431 | FindNextVolumeMountPointA@12 | |
| 432 | FindNextVolumeMountPointW@12 | |
| 433 | FindNextVolumeW@12 | |
| 434 | FindPackagesByPackageFamily@28 | |
| 435 | 118 | FindResourceA@12 |
| 436 | 119 | FindResourceExA@16 |
| 437 | 120 | FindResourceExW@16 |
| 438 | 121 | FindResourceW@12 |
| 439 | FindStringOrdinal@24 | |
| 440 | FindVolumeClose@4 | |
| 441 | FindVolumeMountPointClose@4 | |
| 442 | FlsAlloc@4 | |
| 443 | FlsFree@4 | |
| 444 | FlsGetValue2@4 | |
| 445 | FlsGetValue@4 | |
| 446 | FlsSetValue@8 | |
| 447 | 122 | FlushConsoleInputBuffer@4 |
| 448 | 123 | FlushFileBuffers@4 |
| 449 | 124 | FlushInstructionCache@12 |
| 450 | FlushProcessWriteBuffers@0 | |
| 451 | 125 | FlushViewOfFile@8 |
| 452 | FoldStringA@20 | |
| 453 | 126 | FoldStringW@20 |
| 454 | FormatApplicationUserModelId@16 | |
| 455 | 127 | FormatMessageA@28 |
| 456 | 128 | FormatMessageW@28 |
| 457 | 129 | FreeConsole@0 |
| 458 | FreeEnvironmentStringsA@4 | |
| 459 | FreeEnvironmentStringsW@4 | |
| 460 | 130 | FreeLibrary@4 |
| 461 | FreeLibraryAndExitThread@8 | |
| 462 | FreeLibraryWhenCallbackReturns@8 | |
| 463 | FreeMemoryJobObject@4 | |
| 464 | 131 | FreeResource@4 |
| 465 | FreeUserPhysicalPages@12 | |
| 466 | FreeVirtualBuffer@4 | |
| 467 | 132 | GenerateConsoleCtrlEvent@8 |
| 468 | 133 | GetACP@0 |
| 469 | GetActiveProcessorCount@4 | |
| 470 | GetActiveProcessorGroupCount@0 | |
| 471 | GetAppContainerAce@16 | |
| 472 | GetAppContainerNamedObjectPath@20 | |
| 473 | GetApplicationRecoveryCallback@20 | |
| 474 | GetApplicationRecoveryCallbackWorker@20 | |
| 475 | GetApplicationRestartSettings@16 | |
| 476 | GetApplicationRestartSettingsWorker@16 | |
| 477 | GetApplicationUserModelId@12 | |
| 478 | 134 | GetAtomNameA@12 |
| 479 | 135 | GetAtomNameW@12 |
| 480 | GetBinaryType@8 | |
| 481 | GetBinaryTypeA@8 | |
| 482 | GetBinaryTypeW@8 | |
| 483 | GetCPFileNameFromRegistry@12 | |
| 484 | 136 | GetCPInfo@8 |
| 485 | GetCPInfoExA@12 | |
| 486 | GetCPInfoExW@12 | |
| 487 | GetCachedSigningLevel@24 | |
| 488 | GetCalendarDateFormat@24 | |
| 489 | GetCalendarDateFormatEx@24 | |
| 490 | GetCalendarDaysInMonth@16 | |
| 491 | GetCalendarDifferenceInDays@12 | |
| 492 | GetCalendarInfoA@24 | |
| 493 | GetCalendarInfoEx@28 | |
| 494 | GetCalendarInfoW@24 | |
| 495 | GetCalendarMonthsInYear@12 | |
| 496 | GetCalendarSupportedDateRange@12 | |
| 497 | GetCalendarWeekNumber@16 | |
| 498 | GetComPlusPackageInstallStatus@0 | |
| 499 | GetCommConfig@12 | |
| 500 | 137 | GetCommMask@8 |
| 501 | 138 | GetCommModemStatus@8 |
| 502 | 139 | GetCommProperties@8 |
| ... | ... | @@ -504,295 +141,85 @@ GetCommState@8 |
| 504 | 141 | GetCommTimeouts@8 |
| 505 | 142 | GetCommandLineA@0 |
| 506 | 143 | GetCommandLineW@0 |
| 507 | GetCompressedFileSizeA@8 | |
| 508 | GetCompressedFileSizeTransactedA@12 | |
| 509 | GetCompressedFileSizeTransactedW@12 | |
| 510 | GetCompressedFileSizeW@8 | |
| 511 | 144 | GetComputerNameA@8 |
| 512 | GetComputerNameExA@12 | |
| 513 | GetComputerNameExW@12 | |
| 514 | 145 | GetComputerNameW@8 |
| 515 | GetConsoleAliasA@16 | |
| 516 | GetConsoleAliasExesA@8 | |
| 517 | GetConsoleAliasExesLengthA@0 | |
| 518 | GetConsoleAliasExesLengthW@0 | |
| 519 | GetConsoleAliasExesW@8 | |
| 520 | GetConsoleAliasW@16 | |
| 521 | GetConsoleAliasesA@12 | |
| 522 | GetConsoleAliasesLengthA@4 | |
| 523 | GetConsoleAliasesLengthW@4 | |
| 524 | GetConsoleAliasesW@12 | |
| 525 | 146 | GetConsoleCP@0 |
| 526 | GetConsoleCharType@12 | |
| 527 | GetConsoleCommandHistoryA@12 | |
| 528 | GetConsoleCommandHistoryLengthA@4 | |
| 529 | GetConsoleCommandHistoryLengthW@4 | |
| 530 | GetConsoleCommandHistoryW@12 | |
| 531 | 147 | GetConsoleCursorInfo@8 |
| 532 | GetConsoleCursorMode@12 | |
| 533 | GetConsoleDisplayMode@4 | |
| 534 | GetConsoleFontInfo@16 | |
| 535 | GetConsoleFontSize@8 | |
| 536 | GetConsoleHardwareState@12 | |
| 537 | GetConsoleHistoryInfo@4 | |
| 538 | GetConsoleInputExeNameA@8 | |
| 539 | GetConsoleInputExeNameW@8 | |
| 540 | GetConsoleInputWaitHandle@0 | |
| 541 | GetConsoleKeyboardLayoutNameA@4 | |
| 542 | GetConsoleKeyboardLayoutNameW@4 | |
| 543 | 148 | GetConsoleMode@8 |
| 544 | GetConsoleNlsMode@8 | |
| 545 | GetConsoleOriginalTitleA@8 | |
| 546 | GetConsoleOriginalTitleW@8 | |
| 547 | 149 | GetConsoleOutputCP@0 |
| 548 | GetConsoleProcessList@8 | |
| 549 | 150 | GetConsoleScreenBufferInfo@8 |
| 550 | GetConsoleScreenBufferInfoEx@8 | |
| 551 | GetConsoleSelectionInfo@4 | |
| 552 | 151 | GetConsoleTitleA@8 |
| 553 | 152 | GetConsoleTitleW@8 |
| 554 | GetConsoleWindow@0 | |
| 555 | GetCurrencyFormatA@24 | |
| 556 | GetCurrencyFormatEx@24 | |
| 557 | GetCurrencyFormatW@24 | |
| 558 | GetCurrentActCtx@4 | |
| 559 | GetCurrentActCtxWorker@4 | |
| 560 | GetCurrentApplicationUserModelId@8 | |
| 561 | GetCurrentConsoleFont@12 | |
| 562 | GetCurrentConsoleFontEx@12 | |
| 563 | 153 | GetCurrentDirectoryA@8 |
| 564 | 154 | GetCurrentDirectoryW@8 |
| 565 | GetCurrentPackageFamilyName@8 | |
| 566 | GetCurrentPackageFullName@8 | |
| 567 | GetCurrentPackageId@8 | |
| 568 | GetCurrentPackageInfo@16 | |
| 569 | GetCurrentPackagePath@8 | |
| 570 | GetCurrentPackageVirtualizationContext@0 | |
| 571 | 155 | GetCurrentProcess@0 |
| 572 | 156 | GetCurrentProcessId@0 |
| 573 | GetCurrentProcessorNumber@0 | |
| 574 | GetCurrentProcessorNumberEx@4 | |
| 575 | 157 | GetCurrentThread@0 |
| 576 | 158 | GetCurrentThreadId@0 |
| 577 | GetCurrentThreadStackLimits@8 | |
| 578 | GetDateFormatA@24 | |
| 579 | GetDateFormatAWorker@28 | |
| 580 | GetDateFormatEx@28 | |
| 581 | 159 | GetDateFormatW@24 |
| 582 | GetDateFormatWWorker@28 | |
| 583 | GetDefaultCommConfigA@12 | |
| 584 | GetDefaultCommConfigW@12 | |
| 585 | GetDevicePowerState@8 | |
| 586 | 160 | GetDiskFreeSpaceA@20 |
| 587 | GetDiskFreeSpaceExA@16 | |
| 588 | GetDiskFreeSpaceExW@16 | |
| 589 | 161 | GetDiskFreeSpaceW@20 |
| 590 | GetDiskSpaceInformationA@8 | |
| 591 | GetDiskSpaceInformationW@8 | |
| 592 | GetDllDirectoryA@8 | |
| 593 | GetDllDirectoryW@8 | |
| 594 | 162 | GetDriveTypeA@4 |
| 595 | 163 | GetDriveTypeW@4 |
| 596 | GetDurationFormat@32 | |
| 597 | GetDurationFormatEx@32 | |
| 598 | GetDynamicTimeZoneInformation@4 | |
| 599 | GetEnabledXStateFeatures@0 | |
| 600 | GetEncryptedFileVersionExt@8 | |
| 601 | 164 | GetEnvironmentStrings@0 |
| 602 | GetEnvironmentStringsA@0 | |
| 603 | GetEnvironmentStringsW@0 | |
| 604 | 165 | GetEnvironmentVariableA@12 |
| 605 | 166 | GetEnvironmentVariableW@12 |
| 606 | GetEraNameCountedString@16 | |
| 607 | GetErrorMode@0 | |
| 608 | 167 | GetExitCodeProcess@8 |
| 609 | 168 | GetExitCodeThread@8 |
| 610 | GetExpandedNameA@8 | |
| 611 | GetExpandedNameW@8 | |
| 612 | 169 | GetFileAttributesA@4 |
| 613 | GetFileAttributesExA@12 | |
| 614 | GetFileAttributesExW@12 | |
| 615 | GetFileAttributesTransactedA@16 | |
| 616 | GetFileAttributesTransactedW@16 | |
| 617 | 170 | GetFileAttributesW@4 |
| 618 | GetFileBandwidthReservation@24 | |
| 619 | 171 | GetFileInformationByHandle@8 |
| 620 | GetFileInformationByHandleEx@16 | |
| 621 | GetFileInformationByName@16 | |
| 622 | GetFileMUIInfo@16 | |
| 623 | GetFileMUIPath@28 | |
| 624 | 172 | GetFileSize@8 |
| 625 | GetFileSizeEx@8 | |
| 626 | 173 | GetFileTime@16 |
| 627 | 174 | GetFileType@4 |
| 628 | GetFinalPathNameByHandleA@16 | |
| 629 | GetFinalPathNameByHandleW@16 | |
| 630 | GetFirmwareEnvironmentVariableA@16 | |
| 631 | GetFirmwareEnvironmentVariableExA@20 | |
| 632 | GetFirmwareEnvironmentVariableExW@20 | |
| 633 | GetFirmwareEnvironmentVariableW@16 | |
| 634 | GetFirmwareType@4 | |
| 635 | 175 | GetFullPathNameA@16 |
| 636 | GetFullPathNameTransactedA@20 | |
| 637 | GetFullPathNameTransactedW@20 | |
| 638 | 176 | GetFullPathNameW@16 |
| 639 | GetGeoInfoA@20 | |
| 640 | GetGeoInfoEx@16 | |
| 641 | GetGeoInfoW@20 | |
| 642 | GetHandleContext@4 | |
| 643 | GetHandleInformation@8 | |
| 644 | GetIoRingInfo@8 | |
| 645 | GetLargePageMinimum@0 | |
| 646 | 177 | GetLargestConsoleWindowSize@4 |
| 647 | 178 | GetLastError@0 |
| 648 | 179 | GetLocalTime@4 |
| 649 | GetLocaleInfoA@16 | |
| 650 | GetLocaleInfoEx@16 | |
| 651 | 180 | GetLocaleInfoW@16 |
| 652 | 181 | GetLogicalDriveStringsA@8 |
| 653 | 182 | GetLogicalDriveStringsW@8 |
| 654 | 183 | GetLogicalDrives@0 |
| 655 | GetLogicalProcessorInformation@8 | |
| 656 | GetLogicalProcessorInformationEx@12 | |
| 657 | GetLongPathNameA@12 | |
| 658 | GetLongPathNameTransactedA@16 | |
| 659 | GetLongPathNameTransactedW@16 | |
| 660 | GetLongPathNameW@12 | |
| 661 | GetMachineTypeAttributes@8 | |
| 662 | 184 | GetMailslotInfo@20 |
| 663 | GetMaximumProcessorCount@4 | |
| 664 | GetMaximumProcessorGroupCount@0 | |
| 665 | GetMemoryErrorHandlingCapabilities@4 | |
| 666 | 185 | GetModuleFileNameA@12 |
| 667 | 186 | GetModuleFileNameW@12 |
| 668 | 187 | GetModuleHandleA@4 |
| 669 | GetModuleHandleExA@12 | |
| 670 | GetModuleHandleExW@12 | |
| 671 | 188 | GetModuleHandleW@4 |
| 672 | GetNLSVersion@12 | |
| 673 | GetNLSVersionEx@12 | |
| 674 | GetNamedPipeAttribute@20 | |
| 675 | GetNamedPipeClientComputerNameA@12 | |
| 676 | GetNamedPipeClientComputerNameW@12 | |
| 677 | GetNamedPipeClientProcessId@8 | |
| 678 | GetNamedPipeClientSessionId@8 | |
| 679 | 189 | GetNamedPipeHandleStateA@28 |
| 680 | 190 | GetNamedPipeHandleStateW@28 |
| 681 | 191 | GetNamedPipeInfo@20 |
| 682 | GetNamedPipeServerProcessId@8 | |
| 683 | GetNamedPipeServerSessionId@8 | |
| 684 | GetNativeSystemInfo@4 | |
| 685 | GetNextVDMCommand@4 | |
| 686 | GetNumaAvailableMemoryNode@8 | |
| 687 | GetNumaAvailableMemoryNodeEx@8 | |
| 688 | GetNumaHighestNodeNumber@4 | |
| 689 | GetNumaNodeNumberFromHandle@8 | |
| 690 | GetNumaNodeProcessorMask2@16 | |
| 691 | GetNumaNodeProcessorMask@8 | |
| 692 | GetNumaNodeProcessorMaskEx@8 | |
| 693 | GetNumaProcessorNode@8 | |
| 694 | GetNumaProcessorNodeEx@8 | |
| 695 | GetNumaProximityNode@8 | |
| 696 | GetNumaProximityNodeEx@8 | |
| 697 | GetNumberFormatA@24 | |
| 698 | GetNumberFormatEx@24 | |
| 699 | GetNumberFormatW@24 | |
| 700 | GetNumberOfConsoleFonts@0 | |
| 701 | 192 | GetNumberOfConsoleInputEvents@8 |
| 702 | 193 | GetNumberOfConsoleMouseButtons@4 |
| 703 | 194 | GetOEMCP@0 |
| 704 | 195 | GetOverlappedResult@16 |
| 705 | GetOverlappedResultEx@20 | |
| 706 | GetPackageApplicationIds@16 | |
| 707 | GetPackageFamilyName@12 | |
| 708 | GetPackageFullName@12 | |
| 709 | GetPackageId@12 | |
| 710 | GetPackageInfo@20 | |
| 711 | GetPackagePath@16 | |
| 712 | GetPackagePathByFullName@12 | |
| 713 | GetPackagesByPackageFamily@20 | |
| 714 | GetPhysicallyInstalledSystemMemory@4 | |
| 715 | 196 | GetPriorityClass@4 |
| 716 | 197 | GetPrivateProfileIntA@16 |
| 717 | 198 | GetPrivateProfileIntW@16 |
| 718 | 199 | GetPrivateProfileSectionA@16 |
| 719 | GetPrivateProfileSectionNamesA@12 | |
| 720 | GetPrivateProfileSectionNamesW@12 | |
| 721 | 200 | GetPrivateProfileSectionW@16 |
| 722 | 201 | GetPrivateProfileStringA@24 |
| 723 | 202 | GetPrivateProfileStringW@24 |
| 724 | GetPrivateProfileStructA@20 | |
| 725 | GetPrivateProfileStructW@20 | |
| 726 | 203 | GetProcAddress@8 |
| 727 | GetProcessAffinityMask@12 | |
| 728 | GetProcessDEPPolicy@12 | |
| 729 | GetProcessDefaultCpuSetMasks@16 | |
| 730 | GetProcessDefaultCpuSets@16 | |
| 731 | GetProcessGroupAffinity@12 | |
| 732 | GetProcessHandleCount@8 | |
| 733 | 204 | GetProcessHeap@0 |
| 734 | GetProcessHeaps@8 | |
| 735 | GetProcessId@4 | |
| 736 | GetProcessIdOfThread@4 | |
| 737 | GetProcessInformation@16 | |
| 738 | GetProcessIoCounters@8 | |
| 739 | GetProcessMitigationPolicy@16 | |
| 740 | GetProcessPreferredUILanguages@16 | |
| 741 | GetProcessPriorityBoost@8 | |
| 742 | 205 | GetProcessShutdownParameters@8 |
| 743 | 206 | GetProcessTimes@20 |
| 744 | GetProcessUserModeExceptionPolicy@4 | |
| 745 | GetProcessVersion@4 | |
| 746 | GetProcessWorkingSetSize@12 | |
| 747 | GetProcessWorkingSetSizeEx@16 | |
| 748 | GetProcessesInVirtualizationContext@12 | |
| 749 | GetProcessorSystemCycleTime@12 | |
| 750 | GetProductInfo@20 | |
| 751 | GetProductName@8 | |
| 752 | 207 | GetProfileIntA@12 |
| 753 | 208 | GetProfileIntW@12 |
| 754 | 209 | GetProfileSectionA@12 |
| 755 | 210 | GetProfileSectionW@12 |
| 756 | 211 | GetProfileStringA@20 |
| 757 | 212 | GetProfileStringW@20 |
| 758 | GetQueuedCompletionStatus@20 | |
| 759 | GetQueuedCompletionStatusEx@24 | |
| 760 | GetShortPathNameA@12 | |
| 761 | GetShortPathNameW@12 | |
| 762 | GetStagedPackagePathByFullName@12 | |
| 763 | 213 | GetStartupInfoA@4 |
| 764 | 214 | GetStartupInfoW@4 |
| 765 | GetStateFolder@16 | |
| 766 | 215 | GetStdHandle@4 |
| 767 | GetStringScripts@20 | |
| 768 | GetStringTypeA@20 | |
| 769 | GetStringTypeExA@20 | |
| 770 | GetStringTypeExW@20 | |
| 771 | 216 | GetStringTypeW@16 |
| 772 | GetSystemAppDataKey@16 | |
| 773 | GetSystemCpuSetInformation@20 | |
| 774 | GetSystemDEPPolicy@0 | |
| 775 | 217 | GetSystemDefaultLCID@0 |
| 776 | 218 | GetSystemDefaultLangID@0 |
| 777 | GetSystemDefaultLocaleName@8 | |
| 778 | GetSystemDefaultUILanguage@0 | |
| 779 | 219 | GetSystemDirectoryA@8 |
| 780 | 220 | GetSystemDirectoryW@8 |
| 781 | GetSystemFileCacheSize@12 | |
| 782 | GetSystemFirmwareTable@16 | |
| 783 | 221 | GetSystemInfo@4 |
| 784 | GetSystemPowerStatus@4 | |
| 785 | GetSystemPreferredUILanguages@16 | |
| 786 | GetSystemRegistryQuota@8 | |
| 787 | 222 | GetSystemTime@4 |
| 788 | GetSystemTimeAdjustment@12 | |
| 789 | GetSystemTimeAsFileTime@4 | |
| 790 | GetSystemTimePreciseAsFileTime@4 | |
| 791 | GetSystemTimes@12 | |
| 792 | GetSystemWindowsDirectoryA@8 | |
| 793 | GetSystemWindowsDirectoryW@8 | |
| 794 | GetSystemWow64DirectoryA@8 | |
| 795 | GetSystemWow64DirectoryW@8 | |
| 796 | 223 | GetTapeParameters@16 |
| 797 | 224 | GetTapePosition@20 |
| 798 | 225 | GetTapeStatus@4 |
| ... | ... | @@ -800,63 +227,22 @@ GetTempFileNameA@16 |
| 800 | 227 | GetTempFileNameW@16 |
| 801 | 228 | GetTempPathA@8 |
| 802 | 229 | GetTempPathW@8 |
| 803 | GetTempPath2A@8 | |
| 804 | GetTempPath2W@8 | |
| 230 | GetTickCount@0 | |
| 805 | 231 | GetThreadContext@8 |
| 806 | GetThreadDescription@8 | |
| 807 | GetThreadEnabledXStateFeatures@0 | |
| 808 | GetThreadErrorMode@0 | |
| 809 | GetThreadGroupAffinity@8 | |
| 810 | GetThreadIOPendingFlag@8 | |
| 811 | GetThreadId@4 | |
| 812 | GetThreadIdealProcessorEx@8 | |
| 813 | GetThreadInformation@16 | |
| 814 | 232 | GetThreadLocale@0 |
| 815 | GetThreadPreferredUILanguages@16 | |
| 816 | 233 | GetThreadPriority@4 |
| 817 | GetThreadPriorityBoost@8 | |
| 818 | GetThreadSelectedCpuSetMasks@16 | |
| 819 | GetThreadSelectedCpuSets@16 | |
| 820 | 234 | GetThreadSelectorEntry@12 |
| 821 | 235 | GetThreadTimes@20 |
| 822 | GetThreadUILanguage@0 | |
| 823 | GetTickCount64@0 | |
| 824 | GetTickCount@0 | |
| 825 | GetTimeFormatA@24 | |
| 826 | GetTimeFormatAWorker@28 | |
| 827 | GetTimeFormatEx@24 | |
| 828 | 236 | GetTimeFormatW@24 |
| 829 | GetTimeFormatWWorker@24 | |
| 830 | 237 | GetTimeZoneInformation@4 |
| 831 | GetTimeZoneInformationForYear@12 | |
| 832 | GetUILanguageInfo@20 | |
| 833 | GetUserDefaultGeoName@8 | |
| 834 | 238 | GetUserDefaultLCID@0 |
| 835 | 239 | GetUserDefaultLangID@0 |
| 836 | GetUserDefaultLocaleName@8 | |
| 837 | GetUserDefaultUILanguage@0 | |
| 838 | GetUserGeoID@4 | |
| 839 | GetUserPreferredUILanguages@16 | |
| 840 | GetVDMCurrentDirectories@8 | |
| 841 | 240 | GetVersion@0 |
| 842 | GetVersionExA@4 | |
| 843 | GetVersionExW@4 | |
| 844 | 241 | GetVolumeInformationA@32 |
| 845 | GetVolumeInformationByHandleW@32 | |
| 846 | 242 | GetVolumeInformationW@32 |
| 847 | GetVolumeNameForVolumeMountPointA@12 | |
| 848 | GetVolumeNameForVolumeMountPointW@12 | |
| 849 | GetVolumePathNameA@12 | |
| 850 | GetVolumePathNameW@12 | |
| 851 | GetVolumePathNamesForVolumeNameA@16 | |
| 852 | GetVolumePathNamesForVolumeNameW@16 | |
| 853 | 243 | GetWindowsDirectoryA@8 |
| 854 | 244 | GetWindowsDirectoryW@8 |
| 855 | GetWriteWatch@24 | |
| 856 | GetXStateFeaturesMask@8 | |
| 857 | 245 | GlobalAddAtomA@4 |
| 858 | GlobalAddAtomExA@8 | |
| 859 | GlobalAddAtomExW@8 | |
| 860 | 246 | GlobalAddAtomW@4 |
| 861 | 247 | GlobalAlloc@8 |
| 862 | 248 | GlobalCompact@4 |
| ... | ... | @@ -871,67 +257,23 @@ GlobalGetAtomNameW@12 |
| 871 | 257 | GlobalHandle@4 |
| 872 | 258 | GlobalLock@4 |
| 873 | 259 | GlobalMemoryStatus@4 |
| 874 | GlobalMemoryStatusEx@4 | |
| 875 | GlobalMemoryStatusVlm@4 | |
| 876 | 260 | GlobalReAlloc@12 |
| 877 | 261 | GlobalSize@4 |
| 878 | 262 | GlobalUnWire@4 |
| 879 | 263 | GlobalUnfix@4 |
| 880 | 264 | GlobalUnlock@4 |
| 881 | 265 | GlobalWire@4 |
| 882 | Heap32First@12 | |
| 883 | Heap32ListFirst@8 | |
| 884 | Heap32ListNext@8 | |
| 885 | Heap32Next@4 | |
| 886 | 266 | HeapAlloc@12 |
| 887 | HeapCompact@8 | |
| 888 | 267 | HeapCreate@12 |
| 889 | HeapCreateTagsW@16 | |
| 890 | 268 | HeapDestroy@4 |
| 891 | HeapExtend@16 | |
| 892 | 269 | HeapFree@12 |
| 893 | HeapLock@4 | |
| 894 | HeapQueryInformation@20 | |
| 895 | HeapQueryTagW@20 | |
| 896 | 270 | HeapReAlloc@16 |
| 897 | HeapSetInformation@16 | |
| 898 | 271 | HeapSize@12 |
| 899 | HeapSummary@12 | |
| 900 | HeapUnlock@4 | |
| 901 | HeapUsage@20 | |
| 902 | HeapValidate@12 | |
| 903 | HeapWalk@8 | |
| 904 | IdnToAscii@20 | |
| 905 | IdnToNameprepUnicode@20 | |
| 906 | IdnToUnicode@20 | |
| 907 | 272 | InitAtomTable@4 |
| 908 | 273 | InitializeCriticalSection@4 |
| 909 | InitOnceBeginInitialize@16 | |
| 910 | InitOnceComplete@12 | |
| 911 | InitOnceExecuteOnce@16 | |
| 912 | InitOnceInitialize@4 | |
| 913 | InitializeConditionVariable@4 | |
| 914 | InitializeContext2@24 | |
| 915 | InitializeContext@16 | |
| 916 | InitializeCriticalSectionAndSpinCount@8 | |
| 917 | InitializeCriticalSectionEx@12 | |
| 918 | InitializeEnclave@20 | |
| 919 | InitializeProcThreadAttributeList@16 | |
| 920 | InitializeSListHead@4 | |
| 921 | InitializeSRWLock@4 | |
| 922 | InitializeSynchronizationBarrier@12 | |
| 923 | InstallELAMCertificateInfo@4 | |
| 924 | InterlockedCompareExchange64@20 DATA ; FIXME: this is for Vista+. forwards to NTDLL.RtlInterlockedCompareExchange64@20 | |
| 925 | InterlockedCompareExchange@12 DATA | |
| 926 | InterlockedDecrement@4 DATA | |
| 927 | InterlockedExchange@8 DATA | |
| 928 | InterlockedExchangeAdd@8 DATA | |
| 929 | InterlockedFlushSList@4 | |
| 930 | InterlockedIncrement@4 DATA | |
| 931 | InterlockedPopEntrySList@4 | |
| 932 | InterlockedPushEntrySList@8 | |
| 933 | InterlockedPushListSListEx@16 | |
| 934 | InvalidateConsoleDIBits@8 | |
| 274 | InterlockedDecrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 275 | InterlockedExchange@8 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 276 | InterlockedIncrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 935 | 277 | IsBadCodePtr@4 |
| 936 | 278 | IsBadHugeReadPtr@8 |
| 937 | 279 | IsBadHugeWritePtr@8 |
| ... | ... | @@ -939,93 +281,19 @@ IsBadReadPtr@8 |
| 939 | 281 | IsBadStringPtrA@8 |
| 940 | 282 | IsBadStringPtrW@8 |
| 941 | 283 | IsBadWritePtr@8 |
| 942 | IsCalendarLeapDay@20 | |
| 943 | IsCalendarLeapMonth@16 | |
| 944 | IsCalendarLeapYear@12 | |
| 945 | 284 | IsDBCSLeadByte@4 |
| 946 | IsDBCSLeadByteEx@8 | |
| 947 | IsDebuggerPresent@0 | |
| 948 | IsEnclaveTypeSupported@4 | |
| 949 | IsIoRingOpSupported@8 | |
| 950 | IsNLSDefinedString@20 | |
| 951 | IsNativeVhdBoot@4 | |
| 952 | IsNormalizedString@12 | |
| 953 | IsProcessCritical@8 | |
| 954 | IsProcessInJob@12 | |
| 955 | IsProcessorFeaturePresent@4 | |
| 956 | IsSystemResumeAutomatic@0 | |
| 957 | IsThreadAFiber@0 | |
| 958 | IsThreadpoolTimerSet@4 | |
| 959 | IsTimeZoneRedirectionEnabled@0 | |
| 960 | IsUserCetAvailableInEnvironment@4 | |
| 961 | IsValidCalDateTime@8 | |
| 962 | 285 | IsValidCodePage@4 |
| 963 | IsValidLanguageGroup@8 | |
| 964 | IsValidLocale@8 | |
| 965 | IsValidLocaleName@4 | |
| 966 | IsValidNLSVersion@12 | |
| 967 | IsWow64GuestMachineSupported@8 | |
| 968 | IsWow64Process2@12 | |
| 969 | IsWow64Process@8 | |
| 970 | K32EmptyWorkingSet@4 | |
| 971 | K32EnumDeviceDrivers@12 | |
| 972 | K32EnumPageFilesA@8 | |
| 973 | K32EnumPageFilesW@8 | |
| 974 | K32EnumProcessModules@16 | |
| 975 | K32EnumProcessModulesEx@20 | |
| 976 | K32EnumProcesses@12 | |
| 977 | K32GetDeviceDriverBaseNameA@12 | |
| 978 | K32GetDeviceDriverBaseNameW@12 | |
| 979 | K32GetDeviceDriverFileNameA@12 | |
| 980 | K32GetDeviceDriverFileNameW@12 | |
| 981 | K32GetMappedFileNameA@16 | |
| 982 | K32GetMappedFileNameW@16 | |
| 983 | K32GetModuleBaseNameA@16 | |
| 984 | K32GetModuleBaseNameW@16 | |
| 985 | K32GetModuleFileNameExA@16 | |
| 986 | K32GetModuleFileNameExW@16 | |
| 987 | K32GetModuleInformation@16 | |
| 988 | K32GetPerformanceInfo@8 | |
| 989 | K32GetProcessImageFileNameA@12 | |
| 990 | K32GetProcessImageFileNameW@12 | |
| 991 | K32GetProcessMemoryInfo@12 | |
| 992 | K32GetWsChanges@12 | |
| 993 | K32GetWsChangesEx@12 | |
| 994 | K32InitializeProcessForWsWatch@4 | |
| 995 | K32QueryWorkingSet@12 | |
| 996 | K32QueryWorkingSetEx@12 | |
| 997 | LCIDToLocaleName@16 | |
| 998 | LCMapStringA@24 | |
| 999 | LCMapStringEx@36 | |
| 1000 | 286 | LCMapStringW@24 |
| 1001 | LZClose@4 | |
| 1002 | LZCloseFile@4 | |
| 1003 | LZCopy@8 | |
| 1004 | LZCreateFileW@20 | |
| 1005 | LZDone@0 | |
| 1006 | LZInit@4 | |
| 1007 | LZOpenFileA@12 | |
| 1008 | LZOpenFileW@12 | |
| 1009 | LZRead@12 | |
| 1010 | LZSeek@12 | |
| 1011 | LZStart@0 | |
| 1012 | 287 | LeaveCriticalSection@4 |
| 1013 | LeaveCriticalSectionWhenCallbackReturns@8 | |
| 1014 | LoadAppInitDlls@0 | |
| 1015 | LoadEnclaveData@36 | |
| 1016 | 288 | LoadLibraryA@4 |
| 1017 | 289 | LoadLibraryExA@12 |
| 1018 | 290 | LoadLibraryExW@12 |
| 1019 | 291 | LoadLibraryW@4 |
| 1020 | 292 | LoadModule@8 |
| 1021 | LoadPackagedLibrary@8 | |
| 1022 | 293 | LoadResource@8 |
| 1023 | LoadStringBaseExW@20 | |
| 1024 | LoadStringBaseW@16 | |
| 1025 | 294 | LocalAlloc@8 |
| 1026 | 295 | LocalCompact@4 |
| 1027 | 296 | LocalFileTimeToFileTime@8 |
| 1028 | LocalFileTimeToLocalSystemTime@12 | |
| 1029 | 297 | LocalFlags@4 |
| 1030 | 298 | LocalFree@4 |
| 1031 | 299 | LocalHandle@4 |
| ... | ... | @@ -1033,164 +301,44 @@ LocalLock@4 |
| 1033 | 301 | LocalReAlloc@12 |
| 1034 | 302 | LocalShrink@8 |
| 1035 | 303 | LocalSize@4 |
| 1036 | LocalSystemTimeToLocalFileTime@12 | |
| 1037 | 304 | LocalUnlock@4 |
| 1038 | LocaleNameToLCID@8 | |
| 1039 | LocateXStateFeature@12 | |
| 1040 | 305 | LockFile@20 |
| 1041 | 306 | LockFileEx@24 |
| 1042 | 307 | LockResource@4 |
| 1043 | MapUserPhysicalPages@12 | |
| 1044 | MapUserPhysicalPagesScatter@12 | |
| 1045 | 308 | MapViewOfFile@20 |
| 1046 | 309 | MapViewOfFileEx@24 |
| 1047 | MapViewOfFileExNuma@28 | |
| 1048 | MapViewOfFileVlm@28 | |
| 1049 | MapViewOfFileFromApp@20 | |
| 1050 | Module32First@8 | |
| 1051 | Module32FirstW@8 | |
| 1052 | Module32Next@8 | |
| 1053 | Module32NextW@8 | |
| 1054 | 310 | MoveFileA@8 |
| 1055 | 311 | MoveFileExA@12 |
| 1056 | 312 | MoveFileExW@12 |
| 1057 | MoveFileTransactedA@24 | |
| 1058 | MoveFileTransactedW@24 | |
| 1059 | 313 | MoveFileW@8 |
| 1060 | MoveFileWithProgressA@20 | |
| 1061 | MoveFileWithProgressW@20 | |
| 1062 | 314 | MulDiv@12 |
| 1063 | 315 | MultiByteToWideChar@24 |
| 1064 | NeedCurrentDirectoryForExePathA@4 | |
| 1065 | NeedCurrentDirectoryForExePathW@4 | |
| 1066 | NlsCheckPolicy@8 | |
| 1067 | NlsConvertIntegerToString@20 | |
| 1068 | NlsEventDataDescCreate@16 | |
| 1069 | NlsGetCacheUpdateCount@0 | |
| 1070 | NlsUpdateLocale@8 | |
| 1071 | NlsUpdateSystemLocale@8 | |
| 1072 | NlsWriteEtwEvent@20 | |
| 1073 | NormalizeString@20 | |
| 1074 | NotifyMountMgr@12 | |
| 1075 | NotifyUILanguageChange@20 | |
| 1076 | NtVdm64CreateProcessInternalW@48 | |
| 1077 | OOBEComplete@4 | |
| 1078 | OfferVirtualMemory@12 | |
| 1079 | OpenConsoleW@16 | |
| 1080 | OpenConsoleWStub@16 | |
| 1081 | 316 | OpenEventA@12 |
| 1082 | 317 | OpenEventW@12 |
| 1083 | 318 | OpenFile@12 |
| 1084 | OpenFileById@24 | |
| 1085 | 319 | OpenFileMappingA@12 |
| 1086 | 320 | OpenFileMappingW@12 |
| 1087 | OpenJobObjectA@12 | |
| 1088 | OpenJobObjectW@12 | |
| 1089 | 321 | OpenMutexA@12 |
| 1090 | 322 | OpenMutexW@12 |
| 1091 | OpenPackageInfoByFullName@12 | |
| 1092 | OpenPrivateNamespaceA@8 | |
| 1093 | OpenPrivateNamespaceW@8 | |
| 1094 | 323 | OpenProcess@12 |
| 1095 | ; MSDN says OpenProcessToken is from Advapi32.dll, not Kernel32.dll | |
| 1096 | ; OpenProcessToken@12 | |
| 1097 | 324 | OpenProfileUserMapping@0 |
| 1098 | 325 | OpenSemaphoreA@12 |
| 1099 | 326 | OpenSemaphoreW@12 |
| 1100 | OpenState@0 | |
| 1101 | OpenStateExplicit@8 | |
| 1102 | OpenThread@12 | |
| 1103 | ; MSDN says this is exported from ADVAPI32.DLL. | |
| 1104 | ; OpenThreadToken@16 | |
| 1105 | OpenWaitableTimerA@12 | |
| 1106 | OpenWaitableTimerW@12 | |
| 1107 | 327 | OutputDebugStringA@4 |
| 1108 | 328 | OutputDebugStringW@4 |
| 1109 | PackageFamilyNameFromFullName@12 | |
| 1110 | PackageFamilyNameFromId@12 | |
| 1111 | PackageFullNameFromId@12 | |
| 1112 | PackageIdFromFullName@16 | |
| 1113 | PackageNameAndPublisherIdFromFamilyName@20 | |
| 1114 | ParseApplicationUserModelId@20 | |
| 1115 | 329 | PeekConsoleInputA@16 |
| 1116 | 330 | PeekConsoleInputW@16 |
| 1117 | 331 | PeekNamedPipe@24 |
| 1118 | PopIoRingCompletion@8 | |
| 1119 | PostQueuedCompletionStatus@16 | |
| 1120 | PowerClearRequest@8 | |
| 1121 | PowerCreateRequest@4 | |
| 1122 | PowerSetRequest@8 | |
| 1123 | PrefetchVirtualMemory@16 | |
| 1124 | 332 | PrepareTape@12 |
| 1125 | PrivCopyFileExW@24 | |
| 1126 | PrivMoveFileIdentityW@12 | |
| 1127 | Process32First@8 | |
| 1128 | Process32FirstW@8 | |
| 1129 | Process32Next@8 | |
| 1130 | Process32NextW@8 | |
| 1131 | ProcessIdToSessionId@8 | |
| 1132 | PssCaptureSnapshot@16 | |
| 1133 | PssDuplicateSnapshot@20 | |
| 1134 | PssFreeSnapshot@8 | |
| 1135 | PssQuerySnapshot@16 | |
| 1136 | PssWalkMarkerCreate@8 | |
| 1137 | PssWalkMarkerFree@4 | |
| 1138 | PssWalkMarkerGetPosition@8 | |
| 1139 | PssWalkMarkerRewind@4 | |
| 1140 | PssWalkMarkerSeek@8 | |
| 1141 | PssWalkMarkerSeekToBeginning@4 | |
| 1142 | PssWalkMarkerSetPosition@8 | |
| 1143 | PssWalkMarkerTell@8 | |
| 1144 | PssWalkSnapshot@20 | |
| 1145 | 333 | PulseEvent@4 |
| 1146 | 334 | PurgeComm@8 |
| 1147 | QueryActCtxSettingsW@28 | |
| 1148 | QueryActCtxSettingsWWorker@28 | |
| 1149 | QueryActCtxW@28 | |
| 1150 | QueryActCtxWWorker@28 | |
| 1151 | QueryDepthSList@4 | |
| 1152 | 335 | QueryDosDeviceA@12 |
| 1153 | 336 | QueryDosDeviceW@12 |
| 1154 | QueryFullProcessImageNameA@16 | |
| 1155 | QueryFullProcessImageNameW@16 | |
| 1156 | QueryIdleProcessorCycleTime@8 | |
| 1157 | QueryIdleProcessorCycleTimeEx@12 | |
| 1158 | QueryInformationJobObject@20 | |
| 1159 | QueryIoRateControlInformationJobObject@16 | |
| 1160 | QueryIoRingCapabilities@4 | |
| 1161 | QueryMemoryResourceNotification@8 | |
| 1162 | 337 | QueryPerformanceCounter@4 |
| 1163 | 338 | QueryPerformanceFrequency@4 |
| 1164 | QueryProcessAffinityUpdateMode@8 | |
| 1165 | QueryProcessCycleTime@8 | |
| 1166 | QueryProtectedPolicy@8 | |
| 1167 | QueryThreadCycleTime@8 | |
| 1168 | QueryThreadProfiling@8 | |
| 1169 | QueryThreadpoolStackInformation@8 | |
| 1170 | QueryUnbiasedInterruptTime@4 | |
| 1171 | QueueUserAPC2@16 | |
| 1172 | QueueUserAPC@12 | |
| 1173 | QueueUserWorkItem@12 | |
| 1174 | QueryWin31IniFilesMappedToRegistry@16 | |
| 1175 | QuirkGetData2Worker@8 | |
| 1176 | QuirkGetDataWorker@8 | |
| 1177 | QuirkIsEnabled2Worker@12 | |
| 1178 | QuirkIsEnabled3Worker@8 | |
| 1179 | QuirkIsEnabledForPackage2Worker@24 | |
| 1180 | QuirkIsEnabledForPackage3Worker@20 | |
| 1181 | QuirkIsEnabledForPackage4Worker@20 | |
| 1182 | QuirkIsEnabledForPackageWorker@16 | |
| 1183 | QuirkIsEnabledForProcessWorker@12 | |
| 1184 | QuirkIsEnabledWorker@4 | |
| 1185 | 339 | RaiseException@16 |
| 1186 | RaiseFailFastException@12 | |
| 1187 | RaiseInvalid16BitExeError@4 | |
| 1188 | ReOpenFile@16 | |
| 1189 | ReclaimVirtualMemory@8 | |
| 1190 | 340 | ReadConsoleA@20 |
| 1191 | 341 | ReadConsoleInputA@16 |
| 1192 | ReadConsoleInputExA@20 | |
| 1193 | ReadConsoleInputExW@20 | |
| 1194 | 342 | ReadConsoleInputW@16 |
| 1195 | 343 | ReadConsoleOutputA@20 |
| 1196 | 344 | ReadConsoleOutputAttribute@20 |
| ... | ... | @@ -1198,447 +346,112 @@ ReadConsoleOutputCharacterA@20 |
| 1198 | 346 | ReadConsoleOutputCharacterW@20 |
| 1199 | 347 | ReadConsoleOutputW@20 |
| 1200 | 348 | ReadConsoleW@20 |
| 1201 | ReadDirectoryChangesExW@36 | |
| 1202 | ReadDirectoryChangesW@32 | |
| 1203 | 349 | ReadFile@20 |
| 1204 | 350 | ReadFileEx@20 |
| 1205 | ReadFileScatter@20 | |
| 1206 | ReadFileVlm@20 | |
| 1207 | 351 | ReadProcessMemory@20 |
| 1208 | ReadThreadProfilingData@12 | |
| 1209 | ; | |
| 1210 | ; MSDN says these functions are exported | |
| 1211 | ; from advapi32.dll. Commented out for | |
| 1212 | ; compatibility with older versions of | |
| 1213 | ; Windows. | |
| 1214 | ; | |
| 1215 | ; RegKrnGetGlobalState and RegKrnInitialize | |
| 1216 | ; are known exceptions. | |
| 1217 | ; | |
| 1218 | ;RegCloseKey@4 | |
| 1219 | ;RegCopyTreeW@12 | |
| 1220 | ;RegCreateKeyExA@36 | |
| 1221 | ;RegCreateKeyExW@36 | |
| 1222 | ;RegDeleteKeyExA@16 | |
| 1223 | ;RegDeleteKeyExW@16 | |
| 1224 | ;RegDeleteTreeA@8 | |
| 1225 | ;RegDeleteTreeW@8 | |
| 1226 | ;RegDeleteValueA@8 | |
| 1227 | ;RegDeleteValueW@8 | |
| 1228 | ;RegDisablePredefinedCacheEx@0 | |
| 1229 | ;RegEnumKeyExA@32 | |
| 1230 | ;RegEnumKeyExW@32 | |
| 1231 | ;RegEnumValueA@32 | |
| 1232 | ;RegEnumValueW@32 | |
| 1233 | ;RegFlushKey@4 | |
| 1234 | ;RegGetKeySecurity@16 | |
| 1235 | ;RegGetValueA@28 | |
| 1236 | ;RegGetValueW@28 | |
| 1237 | ;RegLoadKeyA@12 | |
| 1238 | ;RegLoadKeyW@12 | |
| 1239 | ;RegLoadMUIStringA@28 | |
| 1240 | ;RegLoadMUIStringW@28 | |
| 1241 | ;RegNotifyChangeKeyValue@20 | |
| 1242 | ;RegOpenCurrentUser@8 | |
| 1243 | ;RegOpenKeyExA@20 | |
| 1244 | ;RegOpenKeyExW@20 | |
| 1245 | ;RegOpenUserClassesRoot@16 | |
| 1246 | ;RegQueryInfoKeyA@48 | |
| 1247 | ;RegQueryInfoKeyW@48 | |
| 1248 | ;RegQueryValueExA@24 | |
| 1249 | ;RegQueryValueExW@24 | |
| 1250 | ;RegRestoreKeyA@12 | |
| 1251 | ;RegRestoreKeyW@12 | |
| 1252 | ;RegSaveKeyExA@16 | |
| 1253 | ;RegSaveKeyExW@16 | |
| 1254 | ;RegSetKeySecurity@12 | |
| 1255 | ;RegSetValueExA@24 | |
| 1256 | ;RegSetValueExW@24 | |
| 1257 | ;RegUnLoadKeyA@8 | |
| 1258 | ;RegUnLoadKeyW@8 | |
| 1259 | RegisterApplicationRecoveryCallback@16 | |
| 1260 | RegisterApplicationRestart@8 | |
| 1261 | RegisterBadMemoryNotification@4 | |
| 1262 | RegisterConsoleIME@8 | |
| 1263 | RegisterConsoleOS2@4 | |
| 1264 | RegisterConsoleVDM@44 | |
| 1265 | RegisterWaitForInputIdle@4 | |
| 1266 | RegisterWaitForSingleObject@24 | |
| 1267 | RegisterWaitForSingleObjectEx@20 | |
| 1268 | RegisterWaitUntilOOBECompleted@12 | |
| 1269 | RegisterWowBaseHandlers@4 | |
| 1270 | RegisterWowExec@4 | |
| 1271 | ReleaseActCtx@4 | |
| 1272 | ReleaseActCtxWorker@4 | |
| 1273 | 352 | ReleaseMutex@4 |
| 1274 | ReleaseMutexWhenCallbackReturns@8 | |
| 1275 | ReleasePackageVirtualizationContext@4 | |
| 1276 | ReleasePseudoConsole@4 | |
| 1277 | ReleaseSRWLockExclusive@4 | |
| 1278 | ReleaseSRWLockShared@4 | |
| 1279 | 353 | ReleaseSemaphore@12 |
| 1280 | ReleaseSemaphoreWhenCallbackReturns@12 | |
| 1281 | ResolveLocaleName@12 | |
| 1282 | 354 | RemoveDirectoryA@4 |
| 1283 | RemoveDirectoryTransactedA@8 | |
| 1284 | RemoveDirectoryTransactedW@8 | |
| 1285 | 355 | RemoveDirectoryW@4 |
| 1286 | RemoveDllDirectory@4 | |
| 1287 | RemoveLocalAlternateComputerNameA@8 | |
| 1288 | RemoveLocalAlternateComputerNameW@8 | |
| 1289 | RemoveSecureMemoryCacheCallback@4 | |
| 1290 | RemoveVectoredContinueHandler@4 | |
| 1291 | RemoveVectoredExceptionHandler@4 | |
| 1292 | ReplaceFile@24 | |
| 1293 | ReplaceFileA@24 | |
| 1294 | ReplaceFileW@24 | |
| 1295 | ReplacePartitionUnit@12 | |
| 1296 | RequestDeviceWakeup@4 | |
| 1297 | RequestWakeupLatency@4 | |
| 1298 | 356 | ResetEvent@4 |
| 1299 | ResetWriteWatch@8 | |
| 1300 | ResizePseudoConsole@8 | |
| 1301 | ResolveDelayLoadedAPI@24 | |
| 1302 | ResolveDelayLoadsFromDll@12 | |
| 1303 | RestoreLastError@4 | |
| 1304 | 357 | ResumeThread@4 |
| 1305 | RtlCaptureContext@4 | |
| 1306 | RtlCaptureStackBackTrace@16 | |
| 1307 | RtlFillMemory@12 | |
| 1308 | 358 | RtlMoveMemory@12 |
| 1309 | RtlPcToFileHeader@8 | |
| 1310 | 359 | RtlUnwind@16 |
| 1311 | 360 | RtlZeroMemory@8 |
| 1312 | 361 | ScrollConsoleScreenBufferA@20 |
| 1313 | 362 | ScrollConsoleScreenBufferW@20 |
| 1314 | 363 | SearchPathA@24 |
| 1315 | 364 | SearchPathW@24 |
| 1316 | SetCachedSigningLevel@16 | |
| 1317 | SetCalendarInfoA@16 | |
| 1318 | SetCalendarInfoW@16 | |
| 1319 | SetClientTimeZoneInformation@4 | |
| 1320 | SetComPlusPackageInstallStatus@4 | |
| 1321 | 365 | SetCommBreak@4 |
| 1322 | SetCommConfig@12 | |
| 1323 | 366 | SetCommMask@8 |
| 1324 | 367 | SetCommState@8 |
| 1325 | 368 | SetCommTimeouts@8 |
| 1326 | 369 | SetComputerNameA@4 |
| 1327 | SetComputerNameEx2W@12 | |
| 1328 | SetComputerNameExA@8 | |
| 1329 | SetComputerNameExW@8 | |
| 1330 | 370 | SetComputerNameW@4 |
| 1331 | 371 | SetConsoleActiveScreenBuffer@4 |
| 1332 | 372 | SetConsoleCP@4 |
| 1333 | SetConsoleCommandHistoryMode@4 | |
| 1334 | 373 | SetConsoleCtrlHandler@8 |
| 1335 | SetConsoleCursor@8 | |
| 1336 | 374 | SetConsoleCursorInfo@8 |
| 1337 | SetConsoleCursorMode@12 | |
| 1338 | 375 | SetConsoleCursorPosition@8 |
| 1339 | SetConsoleDisplayMode@12 | |
| 1340 | SetConsoleFont@8 | |
| 1341 | SetConsoleHardwareState@12 | |
| 1342 | SetConsoleHistoryInfo@4 | |
| 1343 | SetConsoleIcon@4 | |
| 1344 | SetConsoleInputExeNameA@4 | |
| 1345 | SetConsoleInputExeNameW@4 | |
| 1346 | SetConsoleKeyShortcuts@16 | |
| 1347 | SetConsoleLocalEUDC@16 | |
| 1348 | SetConsoleMaximumWindowSize@8 | |
| 1349 | SetConsoleMenuClose@4 | |
| 1350 | 376 | SetConsoleMode@8 |
| 1351 | SetConsoleNlsMode@8 | |
| 1352 | SetConsoleNumberOfCommandsA@8 | |
| 1353 | SetConsoleNumberOfCommandsW@8 | |
| 1354 | SetConsoleOS2OemFormat@4 | |
| 1355 | 377 | SetConsoleOutputCP@4 |
| 1356 | SetConsolePalette@12 | |
| 1357 | SetConsoleScreenBufferInfoEx@8 | |
| 1358 | 378 | SetConsoleScreenBufferSize@8 |
| 1359 | 379 | SetConsoleTextAttribute@8 |
| 1360 | 380 | SetConsoleTitleA@4 |
| 1361 | 381 | SetConsoleTitleW@4 |
| 1362 | 382 | SetConsoleWindowInfo@12 |
| 1363 | SetCriticalSectionSpinCount@8 | |
| 1364 | SetCurrentConsoleFontEx@12 | |
| 1365 | 383 | SetCurrentDirectoryA@4 |
| 1366 | 384 | SetCurrentDirectoryW@4 |
| 1367 | SetDefaultCommConfigA@12 | |
| 1368 | SetDefaultCommConfigW@12 | |
| 1369 | SetDefaultDllDirectories@4 | |
| 1370 | SetDllDirectoryA@4 | |
| 1371 | SetDllDirectoryW@4 | |
| 1372 | SetDynamicTimeZoneInformation@4 | |
| 1373 | 385 | SetEndOfFile@4 |
| 1374 | SetEnvironmentStringsA@4 | |
| 1375 | SetEnvironmentStringsW@4 | |
| 1376 | 386 | SetEnvironmentVariableA@8 |
| 1377 | 387 | SetEnvironmentVariableW@8 |
| 1378 | 388 | SetErrorMode@4 |
| 1379 | 389 | SetEvent@4 |
| 1380 | SetEventWhenCallbackReturns@8 | |
| 1381 | SetFileApisToANSI@0 | |
| 1382 | 390 | SetFileApisToOEM@0 |
| 1383 | 391 | SetFileAttributesA@8 |
| 1384 | SetFileAttributesTransactedA@12 | |
| 1385 | SetFileAttributesTransactedW@12 | |
| 1386 | 392 | SetFileAttributesW@8 |
| 1387 | SetFileBandwidthReservation@24 | |
| 1388 | SetFileCompletionNotificationModes@8 | |
| 1389 | SetFileInformationByHandle@16 | |
| 1390 | SetFileIoOverlappedRange@12 | |
| 1391 | 393 | SetFilePointer@16 |
| 1392 | SetFilePointerEx@20 | |
| 1393 | SetFileShortNameA@8 | |
| 1394 | SetFileShortNameW@8 | |
| 1395 | 394 | SetFileTime@16 |
| 1396 | SetFileValidData@12 | |
| 1397 | SetFirmwareEnvironmentVariableA@16 | |
| 1398 | SetFirmwareEnvironmentVariableExA@20 | |
| 1399 | SetFirmwareEnvironmentVariableExW@20 | |
| 1400 | SetFirmwareEnvironmentVariableW@16 | |
| 1401 | SetHandleContext@8 | |
| 1402 | 395 | SetHandleCount@4 |
| 1403 | SetHandleInformation@12 | |
| 1404 | SetInformationJobObject@16 | |
| 1405 | SetIoRateControlInformationJobObject@8 | |
| 1406 | SetIoRingCompletionEvent@8 | |
| 1407 | SetLastConsoleEventActive@0 | |
| 1408 | 396 | SetLastError@4 |
| 1409 | SetLocalPrimaryComputerNameA@8 | |
| 1410 | SetLocalPrimaryComputerNameW@8 | |
| 1411 | 397 | SetLocalTime@4 |
| 1412 | SetLocaleInfoA@12 | |
| 1413 | SetLocaleInfoW@12 | |
| 1414 | 398 | SetMailslotInfo@8 |
| 1415 | SetMessageWaitingIndicator@8 | |
| 1416 | SetNamedPipeAttribute@20 | |
| 1417 | 399 | SetNamedPipeHandleState@16 |
| 1418 | 400 | SetPriorityClass@8 |
| 1419 | SetProcessAffinityMask@8 | |
| 1420 | SetProcessAffinityUpdateMode@8 | |
| 1421 | SetProcessDEPPolicy@4 | |
| 1422 | SetProcessDefaultCpuSetMasks@12 | |
| 1423 | SetProcessDefaultCpuSets@12 | |
| 1424 | SetProcessDynamicEHContinuationTargets@12 | |
| 1425 | SetProcessDynamicEnforcedCetCompatibleRanges@12 | |
| 1426 | SetProcessInformation@16 | |
| 1427 | SetProcessMitigationPolicy@12 | |
| 1428 | SetProcessPreferredUILanguages@12 | |
| 1429 | SetProcessPriorityBoost@8 | |
| 1430 | 401 | SetProcessShutdownParameters@8 |
| 1431 | SetProcessUserModeExceptionPolicy@4 | |
| 1432 | SetProcessWorkingSetSize@12 | |
| 1433 | SetProcessWorkingSetSizeEx@16 | |
| 1434 | SetProtectedPolicy@12 | |
| 1435 | SetSearchPathMode@4 | |
| 1436 | 402 | SetStdHandle@8 |
| 1437 | SetStdHandleEx@12 | |
| 1438 | SetSystemFileCacheSize@12 | |
| 1439 | SetSystemPowerState@8 | |
| 1440 | 403 | SetSystemTime@4 |
| 1441 | SetSystemTimeAdjustment@8 | |
| 1442 | 404 | SetTapeParameters@12 |
| 1443 | 405 | SetTapePosition@24 |
| 1444 | SetTermsrvAppInstallMode@4 | |
| 1445 | SetThreadAffinityMask@8 | |
| 1446 | 406 | SetThreadContext@8 |
| 1447 | SetThreadDescription@8 | |
| 1448 | SetThreadErrorMode@8 | |
| 1449 | SetThreadExecutionState@4 | |
| 1450 | SetThreadGroupAffinity@12 | |
| 1451 | SetThreadIdealProcessor@8 | |
| 1452 | SetThreadIdealProcessorEx@12 | |
| 1453 | SetThreadInformation@16 | |
| 1454 | 407 | SetThreadLocale@4 |
| 1455 | SetThreadPreferredUILanguages@12 | |
| 1456 | 408 | SetThreadPriority@8 |
| 1457 | SetThreadPriorityBoost@8 | |
| 1458 | SetThreadSelectedCpuSetMasks@12 | |
| 1459 | SetThreadSelectedCpuSets@12 | |
| 1460 | SetThreadStackGuarantee@4 | |
| 1461 | ; MSDN says this is exported from ADVAPI32.DLL. | |
| 1462 | ; SetThreadToken@8 | |
| 1463 | SetThreadUILanguage@4 | |
| 1464 | SetThreadpoolStackInformation@8 | |
| 1465 | SetThreadpoolThreadMaximum@8 | |
| 1466 | SetThreadpoolThreadMinimum@8 | |
| 1467 | SetThreadpoolTimer@16 | |
| 1468 | SetThreadpoolTimerEx@16 | |
| 1469 | SetThreadpoolWait@12 | |
| 1470 | SetThreadpoolWaitEx@16 | |
| 1471 | 409 | SetTimeZoneInformation@4 |
| 1472 | SetTimerQueueTimer@24 | |
| 1473 | 410 | SetUnhandledExceptionFilter@4 |
| 1474 | SetUserGeoID@4 | |
| 1475 | SetUserGeoName@4 | |
| 1476 | SetVDMCurrentDirectories@8 | |
| 1477 | 411 | SetVolumeLabelA@8 |
| 1478 | 412 | SetVolumeLabelW@8 |
| 1479 | SetVolumeMountPointA@8 | |
| 1480 | SetVolumeMountPointW@8 | |
| 1481 | SetVolumeMountPointWStub@8 | |
| 1482 | SetWaitableTimer@24 | |
| 1483 | SetWaitableTimerEx@28 | |
| 1484 | SetXStateFeaturesMask@12 | |
| 1485 | 413 | SetupComm@12 |
| 1486 | ShowConsoleCursor@8 | |
| 1487 | SignalObjectAndWait@16 | |
| 1488 | 414 | SizeofResource@8 |
| 1489 | 415 | Sleep@4 |
| 1490 | SleepConditionVariableCS@12 | |
| 1491 | SleepConditionVariableSRW@16 | |
| 1492 | 416 | SleepEx@8 |
| 1493 | SortCloseHandle@4 | |
| 1494 | SortGetHandle@12 | |
| 1495 | StartThreadpoolIo@4 | |
| 1496 | SubmitIoRing@16 | |
| 1497 | SubmitThreadpoolWork@4 | |
| 1498 | 417 | SuspendThread@4 |
| 1499 | SwitchToFiber@4 | |
| 1500 | SwitchToThread@0 | |
| 1501 | 418 | SystemTimeToFileTime@8 |
| 1502 | SystemTimeToTzSpecificLocalTime@12 | |
| 1503 | SystemTimeToTzSpecificLocalTimeEx@12 | |
| 1504 | TerminateJobObject@8 | |
| 1505 | 419 | TerminateProcess@8 |
| 1506 | 420 | TerminateThread@8 |
| 1507 | TermsrvAppInstallMode@0 | |
| 1508 | TermsrvConvertSysRootToUserDir@8 | |
| 1509 | TermsrvCreateRegEntry@20 | |
| 1510 | TermsrvDeleteKey@4 | |
| 1511 | TermsrvDeleteValue@8 | |
| 1512 | TermsrvGetPreSetValue@16 | |
| 1513 | TermsrvGetWindowsDirectoryA@8 | |
| 1514 | TermsrvGetWindowsDirectoryW@8 | |
| 1515 | TermsrvOpenRegEntry@12 | |
| 1516 | TermsrvOpenUserClasses@8 | |
| 1517 | TermsrvRestoreKey@12 | |
| 1518 | TermsrvSetKeySecurity@12 | |
| 1519 | TermsrvSetValueKey@24 | |
| 1520 | TermsrvSyncUserIniFileExt@4 | |
| 1521 | Thread32First@8 | |
| 1522 | Thread32Next@8 | |
| 1523 | 421 | TlsAlloc@0 |
| 1524 | 422 | TlsFree@4 |
| 1525 | TlsGetValue2@4 | |
| 1526 | 423 | TlsGetValue@4 |
| 1527 | 424 | TlsSetValue@8 |
| 1528 | Toolhelp32ReadProcessMemory@20 | |
| 1529 | 425 | TransactNamedPipe@28 |
| 1530 | 426 | TransmitCommChar@8 |
| 1531 | TrimVirtualBuffer@4 | |
| 1532 | TryAcquireSRWLockExclusive@4 | |
| 1533 | TryAcquireSRWLockShared@4 | |
| 1534 | TryEnterCriticalSection@4 | |
| 1535 | TrySubmitThreadpoolCallback@12 | |
| 1536 | TzSpecificLocalTimeToSystemTime@12 | |
| 1537 | TzSpecificLocalTimeToSystemTimeEx@12 | |
| 1538 | UTRegister@28 | |
| 1539 | UTUnRegister@4 | |
| 1540 | 427 | UnhandledExceptionFilter@4 |
| 1541 | 428 | UnlockFile@20 |
| 1542 | 429 | UnlockFileEx@20 |
| 1543 | 430 | UnmapViewOfFile@4 |
| 1544 | UnmapViewOfFileEx@8 | |
| 1545 | UnmapViewOfFileVlm@4 | |
| 1546 | UnregisterApplicationRecoveryCallback@0 | |
| 1547 | UnregisterApplicationRestart@0 | |
| 1548 | UnregisterBadMemoryNotification@4 | |
| 1549 | UnregisterConsoleIME@0 | |
| 1550 | UnregisterWait@4 | |
| 1551 | UnregisterWaitEx@8 | |
| 1552 | UnregisterWaitUntilOOBECompleted@4 | |
| 1553 | UpdateCalendarDayOfWeek@4 | |
| 1554 | UpdateProcThreadAttribute@28 | |
| 1555 | 431 | UpdateResourceA@24 |
| 1556 | 432 | UpdateResourceW@24 |
| 1557 | VDMConsoleOperation@8 | |
| 1558 | VDMOperationStarted@4 | |
| 1559 | 433 | VerLanguageNameA@12 |
| 1560 | 434 | VerLanguageNameW@12 |
| 1561 | VerSetConditionMask@16 | |
| 1562 | VerifyConsoleIoHandle@4 | |
| 1563 | VerifyScripts@20 | |
| 1564 | VerifyVersionInfoA@16 | |
| 1565 | VerifyVersionInfoW@16 | |
| 1566 | 435 | VirtualAlloc@16 |
| 1567 | VirtualAllocEx@20 | |
| 1568 | VirtualAllocExNuma@24 | |
| 1569 | VirtualAllocVlm@24 | |
| 1570 | VirtualBufferExceptionHandler@12 | |
| 1571 | 436 | VirtualFree@12 |
| 1572 | VirtualFreeEx@16 | |
| 1573 | VirtualFreeVlm@20 | |
| 1574 | 437 | VirtualLock@8 |
| 1575 | 438 | VirtualProtect@16 |
| 1576 | 439 | VirtualProtectEx@20 |
| 1577 | VirtualProtectVlm@24 | |
| 1578 | 440 | VirtualQuery@12 |
| 1579 | 441 | VirtualQueryEx@16 |
| 1580 | VirtualQueryVlm@16 | |
| 1581 | 442 | VirtualUnlock@8 |
| 1582 | WTSGetActiveConsoleSessionId@0 | |
| 1583 | 443 | WaitCommEvent@12 |
| 1584 | 444 | WaitForDebugEvent@8 |
| 1585 | WaitForDebugEventEx@8 | |
| 1586 | 445 | WaitForMultipleObjects@16 |
| 1587 | 446 | WaitForMultipleObjectsEx@20 |
| 1588 | 447 | WaitForSingleObject@8 |
| 1589 | 448 | WaitForSingleObjectEx@12 |
| 1590 | WaitForThreadpoolIoCallbacks@8 | |
| 1591 | WaitForThreadpoolTimerCallbacks@8 | |
| 1592 | WaitForThreadpoolWaitCallbacks@8 | |
| 1593 | WaitForThreadpoolWorkCallbacks@8 | |
| 1594 | 449 | WaitNamedPipeA@8 |
| 1595 | 450 | WaitNamedPipeW@8 |
| 1596 | WakeAllConditionVariable@4 | |
| 1597 | WakeConditionVariable@4 | |
| 1598 | WerGetFlags@8 | |
| 1599 | WerGetFlagsWorker@8 | |
| 1600 | WerRegisterAdditionalProcess@8 | |
| 1601 | WerRegisterAppLocalDump@4 | |
| 1602 | WerRegisterCustomMetadata@8 | |
| 1603 | WerRegisterExcludedMemoryBlock@8 | |
| 1604 | WerRegisterFile@12 | |
| 1605 | WerRegisterFileWorker@12 | |
| 1606 | WerRegisterMemoryBlock@8 | |
| 1607 | WerRegisterMemoryBlockWorker@8 | |
| 1608 | WerRegisterRuntimeExceptionModule@8 | |
| 1609 | WerRegisterRuntimeExceptionModuleWorker@8 | |
| 1610 | WerSetFlags@4 | |
| 1611 | WerSetFlagsWorker@4 | |
| 1612 | WerUnregisterAdditionalProcess@4 | |
| 1613 | WerUnregisterAppLocalDump@0 | |
| 1614 | WerUnregisterCustomMetadata@4 | |
| 1615 | WerUnregisterExcludedMemoryBlock@4 | |
| 1616 | WerUnregisterFile@4 | |
| 1617 | WerUnregisterFileWorker@4 | |
| 1618 | WerUnregisterMemoryBlock@4 | |
| 1619 | WerUnregisterMemoryBlockWorker@4 | |
| 1620 | WerUnregisterRuntimeExceptionModule@8 | |
| 1621 | WerUnregisterRuntimeExceptionModuleWorker@8 | |
| 1622 | WerpCleanupMessageMapping@0 | |
| 1623 | WerpGetDebugger@8 | |
| 1624 | WerpInitiateRemoteRecovery@4 | |
| 1625 | WerpNotifyLoadStringResource@16 | |
| 1626 | WerpNotifyLoadStringResourceEx@20 | |
| 1627 | WerpNotifyUseStringResource@4 | |
| 1628 | WerpStringLookup@8 | |
| 1629 | 451 | WideCharToMultiByte@32 |
| 1630 | 452 | WinExec@8 |
| 1631 | Wow64DisableWow64FsRedirection@4 | |
| 1632 | Wow64EnableWow64FsRedirection@4 | |
| 1633 | Wow64GetThreadContext@8 | |
| 1634 | Wow64GetThreadSelectorEntry@12 | |
| 1635 | Wow64RevertWow64FsRedirection@4 | |
| 1636 | Wow64SetThreadContext@8 | |
| 1637 | Wow64SuspendThread@4 | |
| 1638 | 453 | WriteConsoleA@20 |
| 1639 | 454 | WriteConsoleInputA@16 |
| 1640 | WriteConsoleInputVDMA@16 | |
| 1641 | WriteConsoleInputVDMW@16 | |
| 1642 | 455 | WriteConsoleInputW@16 |
| 1643 | 456 | WriteConsoleOutputA@20 |
| 1644 | 457 | WriteConsoleOutputAttribute@20 |
| ... | ... | @@ -1648,23 +461,16 @@ WriteConsoleOutputW@20 |
| 1648 | 461 | WriteConsoleW@20 |
| 1649 | 462 | WriteFile@20 |
| 1650 | 463 | WriteFileEx@20 |
| 1651 | WriteFileGather@20 | |
| 1652 | WriteFileVlm@20 | |
| 1653 | 464 | WritePrivateProfileSectionA@12 |
| 1654 | 465 | WritePrivateProfileSectionW@12 |
| 1655 | 466 | WritePrivateProfileStringA@16 |
| 1656 | 467 | WritePrivateProfileStringW@16 |
| 1657 | WritePrivateProfileStructA@20 | |
| 1658 | WritePrivateProfileStructW@20 | |
| 1659 | 468 | WriteProcessMemory@20 |
| 1660 | WriteProcessMemoryVlm@20 | |
| 1661 | 469 | WriteProfileSectionA@8 |
| 1662 | 470 | WriteProfileSectionW@8 |
| 1663 | 471 | WriteProfileStringA@12 |
| 1664 | 472 | WriteProfileStringW@12 |
| 1665 | 473 | WriteTapemark@16 |
| 1666 | ZombifyActCtx@4 | |
| 1667 | ZombifyActCtxWorker@4 | |
| 1668 | 474 | _hread@12 |
| 1669 | 475 | _hwrite@12 |
| 1670 | 476 | _lclose@4 |
| ... | ... | @@ -1673,32 +479,1760 @@ _llseek@12 |
| 1673 | 479 | _lopen@8 |
| 1674 | 480 | _lread@12 |
| 1675 | 481 | _lwrite@12 |
| 1676 | lstrcat@8 | |
| 1677 | 482 | lstrcatA@8 |
| 1678 | 483 | lstrcatW@8 |
| 1679 | lstrcmp@8 | |
| 1680 | 484 | lstrcmpA@8 |
| 1681 | 485 | lstrcmpW@8 |
| 1682 | lstrcmpi@8 | |
| 1683 | 486 | lstrcmpiA@8 |
| 1684 | 487 | lstrcmpiW@8 |
| 1685 | lstrcpy@8 | |
| 1686 | 488 | lstrcpyA@8 |
| 1687 | 489 | lstrcpyW@8 |
| 1688 | lstrcpyn@12 | |
| 490 | lstrlenA@4 | |
| 491 | lstrlenW@4 | |
| 492 | ||
| 493 | ; This is list of symbols available only in Win32s (not available in Win9x and WinNT) | |
| 494 | ; BaseRtlAllocateHandle@4 | |
| 495 | ; BaseRtlDestroyHandleTable@4 | |
| 496 | ; BaseRtlFreeHandle@8 | |
| 497 | ; BaseRtlInitializeHandleTable@8 | |
| 498 | ; Free32bDLLCbEntries@8 | |
| 499 | ; Get16DLLAddress@8 | |
| 500 | ; GetDOSFileHandle@4 | |
| 501 | ; GetUserNameA@8 ; MSDN says this is exported from advapi32.dll | |
| 502 | ; GetUserNameW@8 ; MSDN says this is exported from advapi32.dll | |
| 503 | ; OpenThread@4 ; Win32s OpenThread takes one DWORD threadid argument, Windows ME and Windows 2000+ contain "OpenThread" symbol but ABI is "OpenThread@12" | |
| 504 | ; PrivateFreeLibrary@4 | |
| 505 | ; PrivateLoadLibrary@4 | |
| 506 | ; RtlCreateHeap@24 ; MSDN says this is exported from ntdll.dll | |
| 507 | ; RtlDestroyHeap@4 ; MSDN says this is exported from ntdll.dll | |
| 508 | ; RtlExAllocateHeap@12 ; MSDN says this is exported from ntdll.dll | |
| 509 | ; RtlExFreeHeap@12 ; MSDN says this is exported from ntdll.dll | |
| 510 | ; RtlExReAllocateHeap@16 ; MSDN says this is exported from ntdll.dll | |
| 511 | ; RtlExSizeHeap@12 ; MSDN says this is exported from ntdll.dll | |
| 512 | ; SetLastErrorEx@8 ; MSDN says this is exported from user32.dll | |
| 513 | ||
| 514 | ; This is list of symbols available in all Win32s and Win9x versions and since Windows 2000 | |
| 515 | UTRegister@28 | |
| 516 | UTUnRegister@4 | |
| 517 | ||
| 518 | ; This is list of symbols added in Win32s 1.15, available in all Win9x versions and since Windows NT 3.5 | |
| 519 | ; Note that Win32s 1.15 and all later versions merged advapi32.dll, gdi32.dll, | |
| 520 | ; kernel32.dll, ntdll.dll, user32.dll (and Win32s 1.25a and later also mpr.dll) | |
| 521 | ; libraries into one big w32scomb.dll library and made those libraries as alias | |
| 522 | ; to w32scomb.dll, which effectively means that every symbol from every library | |
| 523 | ; is available also from kernel32.dll (aliased to w32scomb.dll). Below are only | |
| 524 | ; those Win32s symbols which are available in some Win9x or WinNT version of | |
| 525 | ; kernel32.dll or logically belongs to kernel32.dll. | |
| 526 | CompareStringA@24 | |
| 527 | ConvertDefaultLocale@4 | |
| 528 | EnumCalendarInfoA@16 | |
| 529 | EnumCalendarInfoW@16 | |
| 530 | EnumDateFormatsA@12 | |
| 531 | EnumDateFormatsW@12 | |
| 532 | EnumSystemCodePagesA@8 | |
| 533 | EnumSystemCodePagesW@8 | |
| 534 | EnumSystemLocalesA@8 | |
| 535 | EnumSystemLocalesW@8 | |
| 536 | EnumTimeFormatsA@12 | |
| 537 | EnumTimeFormatsW@12 | |
| 538 | GetCurrencyFormatA@24 | |
| 539 | GetCurrencyFormatW@24 | |
| 540 | GetDateFormatA@24 | |
| 541 | GetLocaleInfoA@16 | |
| 542 | GetNumberFormatA@24 | |
| 543 | GetNumberFormatW@24 | |
| 544 | GetTimeFormatA@24 | |
| 545 | GetVersionExA@4 | |
| 546 | GetVersionExW@4 | |
| 547 | HeapValidate@12 | |
| 548 | IsValidLocale@8 | |
| 549 | LCMapStringA@24 | |
| 550 | SetLocaleInfoA@12 | |
| 551 | SetLocaleInfoW@12 | |
| 1689 | 552 | lstrcpynA@12 |
| 1690 | 553 | lstrcpynW@12 |
| 554 | ||
| 555 | ; This is list of symbols added in Win32s 1.15 and available only in Win32s (not available in Win9x and WinNT) | |
| 556 | ; Insert16hInWin32s@4 | |
| 557 | ; PrivateGetModuleUsage@4 | |
| 558 | ||
| 559 | ; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.1 | |
| 560 | GetBinaryType@8 | |
| 561 | RtlFillMemory@12 | |
| 562 | lstrcat@8 | |
| 563 | lstrcmp@8 | |
| 564 | lstrcmpi@8 | |
| 565 | lstrcpy@8 | |
| 1691 | 566 | lstrlen@4 |
| 1692 | lstrlenA@4 | |
| 1693 | lstrlenW@4 | |
| 1694 | ; | |
| 1695 | ; MSDN says these functions are exported | |
| 1696 | ; from winmm.dll. Commented out for | |
| 1697 | ; compatibility with older versions of | |
| 1698 | ; Windows. | |
| 1699 | ; | |
| 1700 | ;timeBeginPeriod@4 | |
| 1701 | ;timeEndPeriod@4 | |
| 1702 | ;timeGetDevCaps@8 | |
| 1703 | ;timeGetSystemTime@8 | |
| 1704 | ;timeGetTime@0 | |
| 567 | ||
| 568 | ; This is list of symbols added in Win32s 1.20, available since Windows NT 3.1, but not available in Win9x | |
| 569 | AddConsoleAliasW@12 | |
| 570 | BaseAttachCompleteThunk@0 ; FIXME: All WinNT versions have ABI "BaseAttachCompleteThunk@16", removed in Windows XP | |
| 571 | ; BasepDebugDump@4 ; removed in Windows NT 3.51 | |
| 572 | CloseConsoleHandle@4 | |
| 573 | CmdBatNotification@4 | |
| 574 | ConsoleMenuControl@12 | |
| 575 | ; ConsoleSubst@16 ; removed in Windows NT 3.51 | |
| 576 | CreateVirtualBuffer@12 ; removed in Windows Server 2003 SP1 | |
| 577 | DuplicateConsoleHandle@16 | |
| 578 | ExitVDM@8 | |
| 579 | ExpungeConsoleCommandHistoryA@4 | |
| 580 | ExpungeConsoleCommandHistoryW@4 | |
| 581 | ExtendVirtualBuffer@8 ; removed in Windows Server 2003 SP1 | |
| 582 | FreeVirtualBuffer@4 ; removed in Windows Server 2003 SP1 | |
| 583 | GetConsoleAliasA@16 | |
| 584 | GetConsoleAliasExesA@8 | |
| 585 | GetConsoleAliasExesLengthA@0 | |
| 586 | GetConsoleAliasExesLengthW@0 | |
| 587 | GetConsoleAliasExesW@8 | |
| 588 | GetConsoleAliasW@16 | |
| 589 | GetConsoleAliasesA@12 | |
| 590 | GetConsoleAliasesLengthA@4 | |
| 591 | GetConsoleAliasesLengthW@4 | |
| 592 | GetConsoleAliasesW@12 | |
| 593 | GetConsoleCommandHistoryA@12 | |
| 594 | GetConsoleCommandHistoryLengthA@4 | |
| 595 | GetConsoleCommandHistoryLengthW@4 | |
| 596 | GetConsoleCommandHistoryW@12 | |
| 597 | GetConsoleDisplayMode@4 | |
| 598 | GetConsoleFontInfo@16 | |
| 599 | GetConsoleFontSize@8 | |
| 600 | GetConsoleHardwareState@12 | |
| 601 | GetConsoleInputWaitHandle@0 | |
| 602 | GetCurrentConsoleFont@12 | |
| 603 | GetNextVDMCommand@4 | |
| 604 | GetNumberOfConsoleFonts@0 | |
| 605 | GetVDMCurrentDirectories@8 | |
| 606 | InvalidateConsoleDIBits@8 | |
| 607 | OpenConsoleW@16 | |
| 608 | QueryWin31IniFilesMappedToRegistry@16 ; removed in Windows Server 2003 | |
| 609 | RegisterConsoleVDM@44 | |
| 610 | RegisterWaitForInputIdle@4 | |
| 611 | SetConsoleCommandHistoryMode@4 ; removed in Windows Vista | |
| 612 | SetConsoleCursor@8 | |
| 613 | SetConsoleDisplayMode@12 | |
| 614 | SetConsoleFont@8 | |
| 615 | SetConsoleHardwareState@12 | |
| 616 | SetConsoleKeyShortcuts@16 | |
| 617 | SetConsoleMaximumWindowSize@8 | |
| 618 | SetConsoleMenuClose@4 | |
| 619 | SetConsoleNumberOfCommandsA@8 | |
| 620 | SetConsoleNumberOfCommandsW@8 | |
| 621 | SetConsolePalette@12 | |
| 622 | SetLastConsoleEventActive@0 | |
| 623 | SetVDMCurrentDirectories@8 | |
| 624 | ShowConsoleCursor@8 | |
| 625 | TrimVirtualBuffer@4 ; removed in Windows Server 2003 SP1 | |
| 626 | VDMConsoleOperation@8 | |
| 627 | VDMOperationStarted@4 | |
| 628 | VerifyConsoleIoHandle@4 | |
| 629 | VirtualBufferExceptionHandler@12 ; removed in Windows Server 2003 SP1 | |
| 630 | WriteConsoleInputVDMA@16 | |
| 631 | WriteConsoleInputVDMW@16 | |
| 632 | ||
| 633 | ; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.5 | |
| 634 | CommConfigDialogA@12 | |
| 635 | CommConfigDialogW@12 | |
| 636 | CreateIoCompletionPort@16 | |
| 637 | DisableThreadLibraryCalls@4 | |
| 638 | FoldStringA@20 | |
| 639 | FreeEnvironmentStringsA@4 | |
| 640 | FreeEnvironmentStringsW@4 | |
| 641 | FreeLibraryAndExitThread@8 | |
| 642 | GetBinaryTypeA@8 | |
| 643 | GetBinaryTypeW@8 | |
| 644 | GetCommConfig@12 | |
| 645 | GetCompressedFileSizeA@8 | |
| 646 | GetCompressedFileSizeW@8 | |
| 647 | GetDefaultCommConfigA@12 | |
| 648 | GetDefaultCommConfigW@12 | |
| 649 | GetEnvironmentStringsA@0 | |
| 650 | GetEnvironmentStringsW@0 | |
| 651 | GetHandleInformation@8 | |
| 652 | GetProcessAffinityMask@12 | |
| 653 | GetProcessWorkingSetSize@12 | |
| 654 | GetQueuedCompletionStatus@20 | |
| 655 | GetShortPathNameA@12 | |
| 656 | GetShortPathNameW@12 | |
| 657 | GetStringTypeA@20 | |
| 658 | GetStringTypeExA@20 | |
| 659 | GetStringTypeExW@20 | |
| 660 | GetSystemTimeAdjustment@12 | |
| 661 | IsDBCSLeadByteEx@8 | |
| 662 | SetCommConfig@12 | |
| 663 | SetDefaultCommConfigA@12 | |
| 664 | SetDefaultCommConfigW@12 | |
| 665 | SetHandleInformation@12 | |
| 666 | SetProcessWorkingSetSize@12 | |
| 667 | SetSystemTimeAdjustment@8 | |
| 668 | SetThreadAffinityMask@8 | |
| 669 | SystemTimeToTzSpecificLocalTime@12 | |
| 670 | lstrcpyn@12 | |
| 671 | ||
| 672 | ; This is list of symbols added in Win32s 1.20, available since Windows NT 3.5, but not available in Win9x | |
| 673 | RegisterWowBaseHandlers@4 | |
| 674 | RegisterWowExec@4 | |
| 675 | ||
| 676 | ; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.5 | |
| 677 | AreFileApisANSI@0 | |
| 678 | GetProcessHeaps@8 | |
| 679 | SetFileApisToANSI@0 | |
| 680 | ||
| 681 | ; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.51 | |
| 682 | GetPrivateProfileSectionNamesA@12 | |
| 683 | GetPrivateProfileSectionNamesW@12 | |
| 684 | GetPrivateProfileStructA@20 | |
| 685 | GetPrivateProfileStructW@20 | |
| 686 | GetSystemPowerStatus@4 | |
| 687 | ||
| 688 | ; This is list of symbols added in Win32s 1.25, available since Windows NT 3.1, but not available in Win9x | |
| 689 | AddConsoleAliasA@12 | |
| 690 | ||
| 691 | ; This is list of symbols added in Win32s 1.25, available since Windows 2000, but not available in Win9x | |
| 692 | GetConsoleCharType@12 | |
| 693 | GetConsoleCursorMode@12 | |
| 694 | GetConsoleNlsMode@8 | |
| 695 | SetConsoleCursorMode@12 | |
| 696 | SetConsoleLocalEUDC@16 | |
| 697 | SetConsoleNlsMode@8 | |
| 698 | ||
| 699 | ; This is list of symbols added in Win32s 1.25 and available only in Win32s (not available in Win9x and WinNT) | |
| 700 | ; TlsCleanEntries@4 | |
| 701 | ||
| 702 | ; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.5 | |
| 703 | HeapCompact@8 | |
| 704 | HeapLock@4 | |
| 705 | HeapUnlock@4 | |
| 706 | HeapWalk@8 | |
| 707 | ||
| 708 | ; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.51 | |
| 709 | GetProcessVersion@4 | |
| 710 | GetSystemTimeAsFileTime@4 | |
| 711 | PostQueuedCompletionStatus@16 | |
| 712 | SetSystemPowerState@8 | |
| 713 | WritePrivateProfileStructA@20 | |
| 714 | WritePrivateProfileStructW@20 | |
| 715 | ||
| 716 | ; This is list of symbols added in Win32s 1.30, available since Windows 98 and since Windows NT 3.51 | |
| 717 | IsDebuggerPresent@0 | |
| 718 | ||
| 719 | ; This is list of symbols added in Win32s 1.30, available since Windows NT 3.51, but not available in Win9x | |
| 720 | HeapCreateTagsW@16 ; removed in Windows Vista | |
| 721 | HeapExtend@16 ; removed in Windows Vista | |
| 722 | HeapQueryTagW@20 ; removed in Windows Vista | |
| 723 | HeapSummary@12 | |
| 724 | HeapUsage@20 ; removed in Windows Vista | |
| 725 | ||
| 726 | ;; This is end of Win32s symbols ;; | |
| 727 | ||
| 728 | ||
| 729 | ; This is list of symbols available only in Windows NT 3.1, not available in Win32s and Win9x | |
| 730 | ; ValidateLCID@8 ; removed in Windows NT 3.5 | |
| 731 | ||
| 732 | ;; This is end of Windows NT 3.1 symbols ;; | |
| 733 | ||
| 734 | ||
| 735 | ; This is list of symbols added in Windows NT 3.51 SP3 and Windows 98, but not available in Win32s | |
| 736 | ConvertThreadToFiber@4 | |
| 737 | CreateFiber@12 | |
| 738 | DeleteFiber@4 | |
| 739 | ReadDirectoryChangesW@32 | |
| 740 | SwitchToFiber@4 | |
| 741 | ||
| 742 | ;; This is end of Windows NT 3.51 symbols ;; | |
| 743 | ||
| 744 | ||
| 745 | ; This is list of symbols added in Windows NT 4.0 and available also in all Win9x versions, but not available in Win32s | |
| 746 | QueueUserAPC@12 | |
| 747 | ||
| 748 | ; This is list of symbols added in Windows NT 4.0 and Windows 95 OSR2, but not available in Win32s | |
| 749 | GetDiskFreeSpaceExA@16 | |
| 750 | GetDiskFreeSpaceExW@16 | |
| 751 | ||
| 752 | ; This is list of symbols added in Windows NT 4.0 and Windows 98, but not available in Win32s | |
| 753 | CancelIo@4 | |
| 754 | CancelWaitableTimer@4 | |
| 755 | CopyFileExA@24 | |
| 756 | CopyFileExW@24 | |
| 757 | CreateWaitableTimerA@12 | |
| 758 | CreateWaitableTimerW@12 | |
| 759 | FindFirstFileExA@24 | |
| 760 | FindFirstFileExW@24 | |
| 761 | GetFileAttributesExA@12 | |
| 762 | GetFileAttributesExW@12 | |
| 763 | GetProcessPriorityBoost@8 | |
| 764 | GetThreadPriorityBoost@8 | |
| 765 | InterlockedCompareExchange@12 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 766 | InterlockedExchangeAdd@8 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 767 | IsProcessorFeaturePresent@4 | |
| 768 | OpenWaitableTimerA@12 | |
| 769 | OpenWaitableTimerW@12 | |
| 770 | SetProcessAffinityMask@8 | |
| 771 | SetProcessPriorityBoost@8 | |
| 772 | SetThreadIdealProcessor@8 | |
| 773 | SetThreadPriorityBoost@8 | |
| 774 | SetWaitableTimer@24 | |
| 775 | SignalObjectAndWait@16 | |
| 776 | SwitchToThread@0 | |
| 777 | TryEnterCriticalSection@4 | |
| 778 | VirtualAllocEx@20 | |
| 779 | VirtualFreeEx@16 | |
| 780 | ||
| 781 | ; This is list of symbols added in Windows NT 4.0, but not available in Win9x and Win32s | |
| 782 | GetConsoleInputExeNameA@8 | |
| 783 | GetConsoleInputExeNameW@8 | |
| 784 | GetConsoleKeyboardLayoutNameA@4 | |
| 785 | GetConsoleKeyboardLayoutNameW@4 | |
| 786 | ReadConsoleInputExA@20 | |
| 787 | ReadConsoleInputExW@20 | |
| 788 | SetConsoleIcon@4 | |
| 789 | SetConsoleInputExeNameA@4 | |
| 790 | SetConsoleInputExeNameW@4 | |
| 791 | ||
| 792 | ; This is list of symbols added in Windows NT 4.0 SP2 and Windows 98, but not available in Win32s | |
| 793 | ReadFileScatter@20 | |
| 794 | WriteFileGather@20 | |
| 795 | ||
| 796 | ; This is list of symbols added in Windows NT 4.0 SP3 and Windows 98, but not available in Win32s | |
| 797 | InitializeCriticalSectionAndSpinCount@8 | |
| 798 | SetCriticalSectionSpinCount@8 | |
| 799 | ||
| 800 | ; This is list of symbols added in Windows NT 4.0 SP4, but not available in Win32s and Win9x | |
| 801 | VerifyVersionInfoA@16 | |
| 802 | VerifyVersionInfoW@16 | |
| 803 | ||
| 804 | ;; This is end of Windows NT 4.0 symbols ;; | |
| 805 | ||
| 806 | ||
| 807 | ; This is list of symbols available in all Win9x versions and also since Windows 2000, but not available in Win32s | |
| 808 | CreateToolhelp32Snapshot@8 | |
| 809 | Heap32First@12 | |
| 810 | Heap32ListFirst@8 | |
| 811 | Heap32ListNext@8 | |
| 812 | Heap32Next@4 | |
| 813 | Module32First@8 | |
| 814 | Module32Next@8 | |
| 815 | Process32First@8 | |
| 816 | Process32Next@8 | |
| 817 | Thread32First@8 | |
| 818 | Thread32Next@8 | |
| 819 | Toolhelp32ReadProcessMemory@20 | |
| 820 | ||
| 821 | ; This is list of symbols available in all Win9x versions and also since Windows XP, but not available in Win32s | |
| 822 | CreateSocketHandle@0 | |
| 823 | GetHandleContext@4 | |
| 824 | SetHandleContext@8 | |
| 825 | ||
| 826 | ; This is list of symbols available in all Win9x versions and also since Windows Vista, but not available in Win32s | |
| 827 | GetErrorMode@0 | |
| 828 | ||
| 829 | ; This is list of ordinal-only symbols available in all Win9x versions, but not available in Win32s and WinNT | |
| 830 | ; Symbol names are taken from: | |
| 831 | ; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords40.htm | |
| 832 | ; VxDCall0@4 @1 NONAME ; stdcall+regs | |
| 833 | ; VxDCall1@8 @2 NONAME ; stdcall+regs | |
| 834 | ; VxDCall2@12 @3 NONAME ; stdcall+regs | |
| 835 | ; VxDCall3@16 @4 NONAME ; stdcall+regs | |
| 836 | ; VxDCall4@20 @5 NONAME ; stdcall+regs | |
| 837 | ; VxDCall5@24 @6 NONAME ; stdcall+regs | |
| 838 | ; VxDCall6@28 @7 NONAME ; stdcall+regs | |
| 839 | ; VxDCall7@32 @8 NONAME ; stdcall+regs | |
| 840 | ; VxDCall8@36 @9 NONAME ; stdcall+regs | |
| 841 | ; k32CharToOemA@8 @10 NONAME | |
| 842 | ; k32CharToOemBuffA@12 @11 NONAME | |
| 843 | ; k32OemToCharA@8 @12 NONAME | |
| 844 | ; k32OemToCharBuffA@12 @13 NONAME | |
| 845 | ; k32LoadStringA@16 @14 NONAME | |
| 846 | ; k32wsprintfA @15 NONAME ; cdecl/varargs | |
| 847 | ; k32wvsprintfA@12 @16 NONAME | |
| 848 | ; CommonUnimpStub @17 NONAME ; regs | |
| 849 | ; GetProcessDword@8 @18 NONAME | |
| 850 | ; ThunkTheTemplateHandle@4 @19 NONAME | |
| 851 | ; DosFileHandleToWin32Handle@4 @20 NONAME | |
| 852 | ; Win32HandleToDosFileHandle@4 @21 NONAME | |
| 853 | ; DisposeLZ32Handle@4 @22 NONAME | |
| 854 | ; GDIReallyCares@4 @23 NONAME | |
| 855 | ; GlobalAlloc16@8 @24 NONAME | |
| 856 | ; GlobalLock16@4 @25 NONAME | |
| 857 | ; GlobalUnlock16@4 @26 NONAME | |
| 858 | ; GlobalFix16@4 @27 NONAME | |
| 859 | ; GlobalUnfix16@4 @28 NONAME | |
| 860 | ; GlobalWire16@4 @29 NONAME | |
| 861 | ; GlobalUnWire16@4 @30 NONAME | |
| 862 | ; GlobalFree16@4 @31 NONAME | |
| 863 | ; GlobalSize16@4 @32 NONAME | |
| 864 | ; HouseCleanLogicallyDeadHandles@0 @33 NONAME | |
| 865 | ; GetWin16DOSEnv@0 @34 NONAME | |
| 866 | ; LoadLibrary16@4 @35 NONAME | |
| 867 | ; FreeLibrary16@4 @36 NONAME | |
| 868 | ; GetProcAddress16@8 @37 NONAME | |
| 869 | ; AllocMappedBuffer @38 NONAME ; regs | |
| 870 | ; FreeMappedBuffer @39 NONAME ; regs | |
| 871 | ; OT_32ThkLSF @40 NONAME ; regs | |
| 872 | ; ThunkInitLSF@20 @41 NONAME | |
| 873 | ; LogApiThkLSF@4 @42 NONAME | |
| 874 | ; ThunkInitLS@20 @43 NONAME | |
| 875 | ; LogApiThkSL@4 @44 NONAME | |
| 876 | ; Common32ThkLS @45 NONAME ; regs+stack | |
| 877 | ; ThunkInitSL@20 @46 NONAME | |
| 878 | ; LogCBThkSL@4 @47 NONAME | |
| 879 | ; ReleaseThunkLock@4 @48 NONAME | |
| 880 | ; RestoreThunkLock@4 @49 NONAME | |
| 881 | ; AddAtomA@4 @50 ; Ordinal 50 is exported also with symbol name AddAtomA | |
| 882 | ; W32S_BackTo32 @51 NONAME ; regs+stack | |
| 883 | ; GetThunkBuff@0 @52 NONAME | |
| 884 | ; GetThunkStuff@8 @53 NONAME | |
| 885 | ; WOWCallback16@8 @54 NONAME ; MSDN says this is exported from wow32.dll | |
| 886 | ; WOWCallback16Ex@20 @55 NONAME ; MSDN says this is exported from wow32.dll | |
| 887 | ; WOWGetVDMPointer@12 @56 NONAME ; MSDN says this is exported from wow32.dll | |
| 888 | ; WOWHandle32@8 @57 NONAME ; MSDN says this is exported from wow32.dll | |
| 889 | ; WOWHandle16@8 @58 NONAME ; MSDN says this is exported from wow32.dll | |
| 890 | ; WOWGlobalAlloc16@8 @59 NONAME ; MSDN says this is exported from wow32.dll | |
| 891 | ; WOWGlobalLock16@4 @60 NONAME ; MSDN says this is exported from wow32.dll | |
| 892 | ; WOWGlobalUnlock16@4 @61 NONAME ; MSDN says this is exported from wow32.dll | |
| 893 | ; WOWGlobalFree16@4 @62 NONAME ; MSDN says this is exported from wow32.dll | |
| 894 | ; WOWGlobalAllocLock16@12 @63 NONAME ; MSDN says this is exported from wow32.dll | |
| 895 | ; WOWGlobalUnlockFree16@4 @64 NONAME ; MSDN says this is exported from wow32.dll | |
| 896 | ; WOWGlobalLockSize16@8 @65 NONAME ; MSDN says this is exported from wow32.dll | |
| 897 | ; WOWYield16@0 @66 NONAME ; MSDN says this is exported from wow32.dll | |
| 898 | ; WOWDirectedYield16@4 @67 NONAME ; MSDN says this is exported from wow32.dll | |
| 899 | ; WOWGetVDMPointerFix@12 @68 NONAME ; MSDN says this is exported from wow32.dll | |
| 900 | ; WOWGetVDMPointerUnfix@4 @69 NONAME ; MSDN says this is exported from wow32.dll | |
| 901 | ; WOWGetDescriptor@8 @70 NONAME ; MSDN says this is exported from wow32.dll | |
| 902 | ; IsThreadId@4 @71 NONAME | |
| 903 | ; RtlLargeIntegerAdd@16 @72 NONAME ; MSDN says this is exported from ntdll.dll | |
| 904 | ; RtlEnlargedIntegerMultiply@8 @73 NONAME ; MSDN says this is exported from ntdll.dll | |
| 905 | ; RtlEnlargedUnsignedMultiply@8 @74 NONAME ; MSDN says this is exported from ntdll.dll | |
| 906 | ; RtlEnlargedUnsignedDivide@16 @75 NONAME ; MSDN says this is exported from ntdll.dll | |
| 907 | ; RtlEnlargedIntegerDivide@16 @76 NONAME ; MSDN says this is exported from ntdll.dll | |
| 908 | ; RtlExtendedMagicDivide@20 @77 NONAME ; MSDN says this is exported from ntdll.dll | |
| 909 | ; RtlExtendedIntegerMultiply@12 @78 NONAME ; MSDN says this is exported from ntdll.dll | |
| 910 | ; RtlLargeIntegerShiftLeft@12 @79 NONAME ; MSDN says this is exported from ntdll.dll | |
| 911 | ; RtlLargeIntegerShiftRight@12 @80 NONAME ; MSDN says this is exported from ntdll.dll | |
| 912 | ; RtlLargeIntegerArithmeticShift@12 @81 NONAME ; MSDN says this is exported from ntdll.dll | |
| 913 | ; RtlLargeIntegerNegate@8 @82 NONAME ; MSDN says this is exported from ntdll.dll | |
| 914 | ; RtlLargeIntegerSubtract@16 @83 NONAME ; MSDN says this is exported from ntdll.dll | |
| 915 | ; RtlConvertLongToLargeInteger@4 @84 NONAME ; MSDN says this is exported from ntdll.dll | |
| 916 | ; RtlConvertUlongToLargeInteger@4 @85 NONAME ; MSDN says this is exported from ntdll.dll | |
| 917 | ; _LeaveSysLevel_NoThk@4 @86 NONAME | |
| 918 | ; SSOnBigStack@0 @87 NONAME | |
| 919 | ; SSCall @88 NONAME ; cdecl/varargs | |
| 920 | ; FT_PrologPrime @89 NONAME ; regs+stack | |
| 921 | ; QT_ThunkPrime @90 NONAME ; regs+stack | |
| 922 | ; PK16FNF@4 @91 NONAME | |
| 923 | ; GetPK16SysVar@0 @92 NONAME | |
| 924 | ; GetpWin16Lock@4 @93 NONAME | |
| 925 | ; _CheckNotSysLevel@4 @94 NONAME | |
| 926 | ; _ConfirmSysLevel@4 @95 NONAME | |
| 927 | ; _ConfirmWin16Lock@0 @96 NONAME | |
| 928 | ; _EnterSysLevel@4 @97 NONAME ; really stdcall @4; gendef detects it incorrectly | |
| 929 | ; _LeaveSysLevel@4 @98 NONAME | |
| 930 | ; RefreshDaylightInformation@4 @99 NONAME | |
| 931 | ; TerminateThreadEx@12 @100 NONAME | |
| 932 | ; BoostFileCache@4 @101 NONAME | |
| 933 | ||
| 934 | ; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT | |
| 935 | ; AllocLSCallback@8 | |
| 936 | ; AllocSLCallback@8 | |
| 937 | ; Callback12@12 | |
| 938 | ; Callback16@16 | |
| 939 | ; Callback20@20 | |
| 940 | ; Callback24@24 | |
| 941 | ; Callback28@28 | |
| 942 | ; Callback32@32 | |
| 943 | ; Callback36@36 | |
| 944 | ; Callback40@40 | |
| 945 | ; Callback44@44 | |
| 946 | ; Callback48@48 | |
| 947 | ; Callback4@4 | |
| 948 | ; Callback52@52 | |
| 949 | ; Callback56@56 | |
| 950 | ; Callback60@60 | |
| 951 | ; Callback64@64 | |
| 952 | ; Callback8@8 | |
| 953 | ; CloseSystemHandle@4 | |
| 954 | ; ConvertToGlobalHandle@4 | |
| 955 | ; CreateKernelThread@24 | |
| 956 | ; FT_Exit0 ; no stdcall decoration in msvc thunk32.lib | |
| 957 | ; FT_Exit12 ; no stdcall decoration in msvc thunk32.lib | |
| 958 | ; FT_Exit16 ; no stdcall decoration in msvc thunk32.lib | |
| 959 | ; FT_Exit20 ; no stdcall decoration in msvc thunk32.lib | |
| 960 | ; FT_Exit24 ; no stdcall decoration in msvc thunk32.lib | |
| 961 | ; FT_Exit28 ; no stdcall decoration in msvc thunk32.lib | |
| 962 | ; FT_Exit32 ; no stdcall decoration in msvc thunk32.lib | |
| 963 | ; FT_Exit36 ; no stdcall decoration in msvc thunk32.lib | |
| 964 | ; FT_Exit4 ; no stdcall decoration in msvc thunk32.lib | |
| 965 | ; FT_Exit40 ; no stdcall decoration in msvc thunk32.lib | |
| 966 | ; FT_Exit44 ; no stdcall decoration in msvc thunk32.lib | |
| 967 | ; FT_Exit48 ; no stdcall decoration in msvc thunk32.lib | |
| 968 | ; FT_Exit52 ; no stdcall decoration in msvc thunk32.lib | |
| 969 | ; FT_Exit56 ; no stdcall decoration in msvc thunk32.lib | |
| 970 | ; FT_Exit8 ; no stdcall decoration in msvc thunk32.lib | |
| 971 | ; FT_Prolog ; no stdcall decoration in msvc thunk32.lib | |
| 972 | ; FT_Thunk ; no stdcall decoration in msvc thunk32.lib | |
| 973 | ; FreeLSCallback@4 | |
| 974 | ; FreeSLCallback@4 | |
| 975 | ; GetDaylightFlag@0 | |
| 976 | ; GetLSCallbackTarget@4 | |
| 977 | ; GetLSCallbackTemplate@4 | |
| 978 | ; GetProcessFlags@4 | |
| 979 | ; GetProductName@8 | |
| 980 | ; GetSLCallbackTarget@4 | |
| 981 | ; GetSLCallbackTemplate@4 | |
| 982 | ; HeapSetFlags@8 | |
| 983 | ; InvalidateNLSCache@0 | |
| 984 | ; IsLSCallback@4 | |
| 985 | ; IsSLCallback@4 | |
| 986 | ; K32Thk1632Epilog@0 | |
| 987 | ; K32Thk1632Prolog@0 | |
| 988 | ; MakeCriticalSectionGlobal@4 | |
| 989 | ; MapHInstLS ; no stdcall decoration in msvc thunk32.lib | |
| 990 | ; MapHInstLS_PN ; no stdcall decoration in msvc thunk32.lib | |
| 991 | ; MapHInstSL ; no stdcall decoration in msvc thunk32.lib | |
| 992 | ; MapHInstSL_PN ; no stdcall decoration in msvc thunk32.lib | |
| 993 | ; MapHModuleLS@4 | |
| 994 | ; MapHModuleSL@4 | |
| 995 | ; MapLS@4 | |
| 996 | ; MapSL@4 | |
| 997 | ; MapSLFix@4 | |
| 998 | ; NotifyNLSUserCache@12 | |
| 999 | ; OpenVxDHandle@4 | |
| 1000 | ; QT_Thunk ; no stdcall decoration in msvc thunk32.lib | |
| 1001 | ; QueryNumberOfEventLogRecords@8 | |
| 1002 | ; QueryOldestEventLogRecord@8 | |
| 1003 | ; RegisterServiceProcess@8 | |
| 1004 | ; ReinitializeCriticalSection@4 | |
| 1005 | ; SMapLS ; no stdcall decoration in msvc thunk32.lib | |
| 1006 | ; SMapLS_IP_EBP_12 ; no stdcall decoration in msvc thunk32.lib | |
| 1007 | ; SMapLS_IP_EBP_16 ; no stdcall decoration in msvc thunk32.lib | |
| 1008 | ; SMapLS_IP_EBP_20 ; no stdcall decoration in msvc thunk32.lib | |
| 1009 | ; SMapLS_IP_EBP_24 ; no stdcall decoration in msvc thunk32.lib | |
| 1010 | ; SMapLS_IP_EBP_28 ; no stdcall decoration in msvc thunk32.lib | |
| 1011 | ; SMapLS_IP_EBP_32 ; no stdcall decoration in msvc thunk32.lib | |
| 1012 | ; SMapLS_IP_EBP_36 ; no stdcall decoration in msvc thunk32.lib | |
| 1013 | ; SMapLS_IP_EBP_40 ; no stdcall decoration in msvc thunk32.lib | |
| 1014 | ; SMapLS_IP_EBP_8 ; no stdcall decoration in msvc thunk32.lib | |
| 1015 | ; SUnMapLS ; no stdcall decoration in msvc thunk32.lib | |
| 1016 | ; SUnMapLS_IP_EBP_12 ; no stdcall decoration in msvc thunk32.lib | |
| 1017 | ; SUnMapLS_IP_EBP_16 ; no stdcall decoration in msvc thunk32.lib | |
| 1018 | ; SUnMapLS_IP_EBP_20 ; no stdcall decoration in msvc thunk32.lib | |
| 1019 | ; SUnMapLS_IP_EBP_24 ; no stdcall decoration in msvc thunk32.lib | |
| 1020 | ; SUnMapLS_IP_EBP_28 ; no stdcall decoration in msvc thunk32.lib | |
| 1021 | ; SUnMapLS_IP_EBP_32 ; no stdcall decoration in msvc thunk32.lib | |
| 1022 | ; SUnMapLS_IP_EBP_36 ; no stdcall decoration in msvc thunk32.lib | |
| 1023 | ; SUnMapLS_IP_EBP_40 ; no stdcall decoration in msvc thunk32.lib | |
| 1024 | ; SUnMapLS_IP_EBP_8 ; no stdcall decoration in msvc thunk32.lib | |
| 1025 | ; SetDaylightFlag@4 | |
| 1026 | ; ThunkConnect32@24 | |
| 1027 | ; TlsAllocInternal@0 | |
| 1028 | ; TlsFreeInternal@4 | |
| 1029 | ; UnMapLS@4 | |
| 1030 | ; UnMapSLFixArray@8 | |
| 1031 | ; UninitializeCriticalSection@4 | |
| 1032 | ; _DebugOut | |
| 1033 | ; _DebugPrintf | |
| 1034 | ; dprintf | |
| 1035 | ||
| 1036 | ; This is list of ordinal-only symbols added in Windows 98, but not available in Win32s and WinNT | |
| 1037 | ; Symbol names are taken from: | |
| 1038 | ; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords410.htm | |
| 1039 | ; TlsAllocGlobal@0 @102 NONAME | |
| 1040 | ; TlsFreeGlobal@4 @103 NONAME | |
| 1041 | ; RPCHACKORAMA@0 @104 NONAME | |
| 1042 | ; lstrtolW@12 @105 NONAME | |
| 1043 | ; k32wcsicmp@8 @106 NONAME | |
| 1044 | ; k32wcsupr@4 @107 NONAME | |
| 1045 | ; lstrchrA@8 @108 NONAME | |
| 1046 | ; lstrcspnA@8 @109 NONAME | |
| 1047 | ; lstrncpyA@12 @110 NONAME | |
| 1048 | ; lstrrchrA@8 @111 NONAME | |
| 1049 | ; lstrstrA@8 @112 NONAME | |
| 1050 | ; lstrchrW@8 @113 NONAME | |
| 1051 | ; k32wcscmp@8 @114 NONAME | |
| 1052 | ; k32wcsncmp@12 @115 NONAME | |
| 1053 | ; lstrncpyW@12 @116 NONAME | |
| 1054 | ; k32iswctype@8 @117 NONAME | |
| 1055 | ; AddAtomW@4 @118 ; Ordinal 118 is exported also with symbol name AddAtomW, Windows 95 exports AddAtomW with ordinal 102 | |
| 1056 | ; k32towupper@4 @119 NONAME | |
| 1057 | ; GetCryptApiExponentValue@0 @120 NONAME | |
| 1058 | ; ThunkConnect32NonLocking@24 @121 NONAME | |
| 1059 | ; SetTaskmonControl@8 @122 NONAME | |
| 1060 | ||
| 1061 | ; This is list of symbols added in Windows 98, but not available in Win32s and WinNT | |
| 1062 | ; K32_NtCreateFile@44 | |
| 1063 | ; K32_RtlNtStatusToDosError@4 | |
| 1064 | ; RegisterSysMsgHandler@20 | |
| 1065 | ; ResetNLSUserInfoCache@0 | |
| 1066 | ; SignalSysMsgHandlers@16 | |
| 1067 | ||
| 1068 | ; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s | |
| 1069 | CancelDeviceWakeupRequest@4 | |
| 1070 | EnumCalendarInfoExA@16 | |
| 1071 | EnumCalendarInfoExW@16 | |
| 1072 | EnumDateFormatsExA@12 | |
| 1073 | EnumDateFormatsExW@12 | |
| 1074 | GetCPInfoExA@12 | |
| 1075 | GetCPInfoExW@12 | |
| 1076 | GetCalendarInfoA@24 | |
| 1077 | GetCalendarInfoW@24 | |
| 1078 | GetDevicePowerState@8 | |
| 1079 | GetLongPathNameA@12 | |
| 1080 | GetLongPathNameW@12 | |
| 1081 | GetWriteWatch@24 | |
| 1082 | IsSystemResumeAutomatic@0 | |
| 1083 | RequestDeviceWakeup@4 | |
| 1084 | RequestWakeupLatency@4 | |
| 1085 | ResetWriteWatch@8 | |
| 1086 | SetCalendarInfoA@16 | |
| 1087 | SetCalendarInfoW@16 | |
| 1088 | SetMessageWaitingIndicator@8 | |
| 1089 | SetThreadExecutionState@4 | |
| 1090 | ||
| 1091 | ; This is list of ordinal-only symbols added in Windows ME, but not available in Win32s and WinNT | |
| 1092 | ; Symbol names are taken from: | |
| 1093 | ; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords490.htm | |
| 1094 | ; GetModuleNameFromProc@16 @123 NONAME | |
| 1095 | ||
| 1096 | ; This is list of symbols added in Windows ME and also since Windows 2000, but not available in Win32s | |
| 1097 | EnumLanguageGroupLocalesA@16 | |
| 1098 | EnumLanguageGroupLocalesW@16 | |
| 1099 | EnumSystemLanguageGroupsA@12 | |
| 1100 | EnumSystemLanguageGroupsW@12 | |
| 1101 | EnumUILanguagesA@12 | |
| 1102 | EnumUILanguagesW@12 | |
| 1103 | GetSystemDefaultUILanguage@0 | |
| 1104 | GetUserDefaultUILanguage@0 | |
| 1105 | IsValidLanguageGroup@8 | |
| 1106 | OpenThread@12 ; Win32s contains "OpenThread" symbol but ABI is "OpenThread@4" | |
| 1107 | ||
| 1108 | ; This is list of symbols added in Windows ME and also since Windows XP, but not available in Win32s | |
| 1109 | EnumSystemGeoID@12 | |
| 1110 | GetGeoInfoA@20 | |
| 1111 | GetGeoInfoW@20 | |
| 1112 | GetUserGeoID@4 | |
| 1113 | SetUserGeoID@4 | |
| 1114 | ||
| 1115 | ;; This is end of Win9x symbols ;; | |
| 1116 | ||
| 1117 | ||
| 1118 | ; This is list of symbols added in Windows 2000 | |
| 1119 | AllocateUserPhysicalPages@12 | |
| 1120 | AssignProcessToJobObject@8 | |
| 1121 | BindIoCompletionCallback@12 | |
| 1122 | CancelTimerQueueTimer@8 | |
| 1123 | ChangeTimerQueueTimer@16 | |
| 1124 | CreateHardLinkA@12 | |
| 1125 | CreateHardLinkW@12 | |
| 1126 | CreateJobObjectA@8 | |
| 1127 | CreateJobObjectW@8 | |
| 1128 | CreateTimerQueue@0 | |
| 1129 | CreateTimerQueueTimer@28 | |
| 1130 | DelayLoadFailureHook@8 | |
| 1131 | DeleteTimerQueue@4 | |
| 1132 | DeleteTimerQueueEx@8 | |
| 1133 | DeleteTimerQueueTimer@12 | |
| 1134 | DeleteVolumeMountPointA@4 | |
| 1135 | DeleteVolumeMountPointW@4 | |
| 1136 | DnsHostnameToComputerNameA@12 | |
| 1137 | DnsHostnameToComputerNameW@12 | |
| 1138 | DosPathToSessionPathA@12 | |
| 1139 | DosPathToSessionPathW@12 | |
| 1140 | FindFirstVolumeA@8 | |
| 1141 | FindFirstVolumeMountPointA@12 | |
| 1142 | FindFirstVolumeMountPointW@12 | |
| 1143 | FindFirstVolumeW@8 | |
| 1144 | FindNextVolumeA@12 | |
| 1145 | FindNextVolumeMountPointA@12 | |
| 1146 | FindNextVolumeMountPointW@12 | |
| 1147 | FindNextVolumeW@12 | |
| 1148 | FindVolumeClose@4 | |
| 1149 | FindVolumeMountPointClose@4 | |
| 1150 | FreeUserPhysicalPages@12 | |
| 1151 | GetComputerNameExA@12 | |
| 1152 | GetComputerNameExW@12 | |
| 1153 | GetConsoleWindow@0 | |
| 1154 | ; GetDefaultSortkeySize@4 ; removed in Windows Vista | |
| 1155 | GetFileSizeEx@8 | |
| 1156 | ; GetLinguistLangSize@4 ; removed in Windows Vista | |
| 1157 | ; GetNlsSectionName@24 ; FIXME: Windows 2000 and Windows XP prior SP1 has ABI "GetNlsSectionName@20", Windows XP SP1 and new has ABI "GetNlsSectionName@24", removed in Windows Vista | |
| 1158 | GetProcessIoCounters@8 | |
| 1159 | GetSystemWindowsDirectoryA@8 | |
| 1160 | GetSystemWindowsDirectoryW@8 | |
| 1161 | GetVolumeNameForVolumeMountPointA@12 | |
| 1162 | GetVolumeNameForVolumeMountPointW@12 | |
| 1163 | GetVolumePathNameA@12 | |
| 1164 | GetVolumePathNameW@12 | |
| 1165 | GlobalMemoryStatusEx@4 | |
| 1166 | MapUserPhysicalPages@12 | |
| 1167 | MapUserPhysicalPagesScatter@12 | |
| 1168 | Module32FirstW@8 | |
| 1169 | Module32NextW@8 | |
| 1170 | MoveFileWithProgressA@20 | |
| 1171 | MoveFileWithProgressW@20 | |
| 1172 | NlsConvertIntegerToString@20 ; removed in Windows 7 | |
| 1173 | NlsGetCacheUpdateCount@0 | |
| 1174 | ; NlsResetProcessLocale@0 ; removed in Windows Vista | |
| 1175 | ; OpenDataFile@8 ; removed in Windows Vista | |
| 1176 | OpenJobObjectA@12 | |
| 1177 | OpenJobObjectW@12 | |
| 1178 | PrivCopyFileExW@24 | |
| 1179 | PrivMoveFileIdentityW@12 | |
| 1180 | Process32FirstW@8 | |
| 1181 | Process32NextW@8 | |
| 1182 | ProcessIdToSessionId@8 | |
| 1183 | QueryInformationJobObject@20 | |
| 1184 | QueueUserWorkItem@12 | |
| 1185 | RegisterConsoleIME@8 | |
| 1186 | RegisterConsoleOS2@4 | |
| 1187 | RegisterWaitForSingleObject@24 | |
| 1188 | RegisterWaitForSingleObjectEx@20 | |
| 1189 | ReplaceFile@24 | |
| 1190 | ReplaceFileA@24 | |
| 1191 | ReplaceFileW@24 | |
| 1192 | ; SetCPGlobal@4 ; removed in Windows Vista | |
| 1193 | SetComputerNameExA@8 | |
| 1194 | SetComputerNameExW@8 | |
| 1195 | SetConsoleOS2OemFormat@4 | |
| 1196 | SetFilePointerEx@20 | |
| 1197 | SetInformationJobObject@16 | |
| 1198 | SetTermsrvAppInstallMode@4 | |
| 1199 | SetTimerQueueTimer@24 | |
| 1200 | SetVolumeMountPointA@8 | |
| 1201 | SetVolumeMountPointW@8 | |
| 1202 | TerminateJobObject@8 | |
| 1203 | TermsrvAppInstallMode@0 | |
| 1204 | UnregisterConsoleIME@0 | |
| 1205 | UnregisterWait@4 | |
| 1206 | UnregisterWaitEx@8 | |
| 1207 | ; ValidateLCType@16 ; removed in Windows Vista | |
| 1208 | ; ValidateLocale@4 ; removed in Windows Vista | |
| 1209 | VerSetConditionMask@16 | |
| 1210 | ||
| 1211 | ; In Windows 2000 SP1 was not added any new symbol | |
| 1212 | ||
| 1213 | ; In Windows 2000 SP2 was not added any new symbol | |
| 1214 | ||
| 1215 | ; This is list of symbols added in Windows 2000 SP3 | |
| 1216 | CreateFiberEx@20 | |
| 1217 | CreateProcessInternalA@48 ; FIXME: Windows 2000 SP3 and SP4 has ABI "CreateProcessInternalA@44", Windows XP and new has ABI "CreateProcessInternalA@48" | |
| 1218 | CreateProcessInternalW@48 ; FIXME: Windows 2000 SP3 and SP4 has ABI "CreateProcessInternalW@44", Windows XP and new has ABI "CreateProcessInternalW@48" | |
| 1219 | ||
| 1220 | ; This is list of symbols added in Windows 2000 SP4 | |
| 1221 | ; CreateProcessInternalWSecure@0 ; CreateProcessInternalWSecure is not available in Windows XP prior SP2, removed in Windows Server 2003 | |
| 1222 | ||
| 1223 | ; This is list of symbols added in Windows XP | |
| 1224 | ActivateActCtx@8 | |
| 1225 | AddLocalAlternateComputerNameA@8 | |
| 1226 | AddLocalAlternateComputerNameW@8 | |
| 1227 | AddRefActCtx@4 | |
| 1228 | AddVectoredExceptionHandler@8 | |
| 1229 | AttachConsole@4 | |
| 1230 | BaseCheckAppcompatCache@16 | |
| 1231 | ; BaseCleanupAppcompatCache@0 ; removed in Windows Server 2003 | |
| 1232 | BaseCleanupAppcompatCacheSupport@4 | |
| 1233 | BaseDumpAppcompatCache@0 | |
| 1234 | BaseFlushAppcompatCache@0 | |
| 1235 | ; BaseInitAppcompatCache@0 ; removed in Windows Server 2003 | |
| 1236 | BaseInitAppcompatCacheSupport@0 | |
| 1237 | ; BaseProcessInitPostImport@0 ; removed in Windows Vista | |
| 1238 | BaseUpdateAppcompatCache@12 | |
| 1239 | ConvertFiberToThread@0 | |
| 1240 | ; CopyLZFile@8 ; MSDN says this is exported from lz32.dll | |
| 1241 | CreateActCtxA@4 | |
| 1242 | CreateActCtxW@4 | |
| 1243 | CreateJobSet@12 | |
| 1244 | CreateMemoryResourceNotification@4 | |
| 1245 | DeactivateActCtx@8 | |
| 1246 | DebugActiveProcessStop@4 | |
| 1247 | DebugBreakProcess@4 | |
| 1248 | DebugSetProcessKillOnExit@4 | |
| 1249 | EnumerateLocalComputerNamesA@16 | |
| 1250 | EnumerateLocalComputerNamesW@16 | |
| 1251 | FindActCtxSectionGuid@20 | |
| 1252 | FindActCtxSectionStringA@20 | |
| 1253 | FindActCtxSectionStringW@20 | |
| 1254 | GetComPlusPackageInstallStatus@0 | |
| 1255 | GetConsoleProcessList@8 | |
| 1256 | GetConsoleSelectionInfo@4 | |
| 1257 | GetCurrentActCtx@4 | |
| 1258 | ; GetExpandedNameA@8 ; MSDN says this is exported from lz32.dll | |
| 1259 | ; GetExpandedNameW@8 ; MSDN says this is exported from lz32.dll | |
| 1260 | GetFirmwareEnvironmentVariableA@16 | |
| 1261 | GetFirmwareEnvironmentVariableW@16 | |
| 1262 | GetModuleHandleExA@12 | |
| 1263 | GetModuleHandleExW@12 | |
| 1264 | GetNativeSystemInfo@4 | |
| 1265 | ; GetNumaAvailableMemory@12 ; removed in Windows Server 2003 | |
| 1266 | GetNumaAvailableMemoryNode@8 | |
| 1267 | GetNumaHighestNodeNumber@4 | |
| 1268 | GetNumaNodeProcessorMask@8 | |
| 1269 | ; GetNumaProcessorMap@12 ; removed in Windows Server 2003 | |
| 1270 | GetNumaProcessorNode@8 | |
| 1271 | GetSystemWow64DirectoryA@8 | |
| 1272 | GetSystemWow64DirectoryW@8 | |
| 1273 | GetVolumePathNamesForVolumeNameA@16 | |
| 1274 | GetVolumePathNamesForVolumeNameW@16 | |
| 1275 | HeapQueryInformation@20 | |
| 1276 | HeapSetInformation@16 | |
| 1277 | InitializeSListHead@4 | |
| 1278 | InterlockedFlushSList@4 | |
| 1279 | InterlockedPopEntrySList@4 | |
| 1280 | InterlockedPushEntrySList@8 | |
| 1281 | IsProcessInJob@12 | |
| 1282 | ; IsValidUILanguage@4 ; removed in Windows Vista | |
| 1283 | IsWow64Process@8 | |
| 1284 | ; LZClose@4 ; MSDN says this is exported from lz32.dll | |
| 1285 | ; LZCloseFile@4 ; MSDN says this is exported from lz32.dll | |
| 1286 | ; LZCopy@8 ; MSDN says this is exported from lz32.dll | |
| 1287 | ; LZCreateFileW@20 ; MSDN says this is exported from lz32.dll | |
| 1288 | ; LZDone@0 ; MSDN says this is exported from lz32.dll | |
| 1289 | ; LZInit@4 ; MSDN says this is exported from lz32.dll | |
| 1290 | ; LZOpenFileA@12 ; MSDN says this is exported from lz32.dll | |
| 1291 | ; LZOpenFileW@12 ; MSDN says this is exported from lz32.dll | |
| 1292 | ; LZRead@12 ; MSDN says this is exported from lz32.dll | |
| 1293 | ; LZSeek@12 ; MSDN says this is exported from lz32.dll | |
| 1294 | ; LZStart@0 ; MSDN says this is exported from lz32.dll | |
| 1295 | ; NumaVirtualQueryNode@16 ; removed in Windows Server 2003 | |
| 1296 | QueryActCtxW@28 | |
| 1297 | QueryDepthSList@4 | |
| 1298 | QueryMemoryResourceNotification@8 | |
| 1299 | ReleaseActCtx@4 | |
| 1300 | RemoveLocalAlternateComputerNameA@8 | |
| 1301 | RemoveLocalAlternateComputerNameW@8 | |
| 1302 | RemoveVectoredExceptionHandler@4 | |
| 1303 | RestoreLastError@4 | |
| 1304 | RtlCaptureContext@4 | |
| 1305 | RtlCaptureStackBackTrace@16 | |
| 1306 | SetClientTimeZoneInformation@4 ; removed in Windows 8 | |
| 1307 | SetComPlusPackageInstallStatus@4 | |
| 1308 | SetFileShortNameA@8 | |
| 1309 | SetFileShortNameW@8 | |
| 1310 | SetFileValidData@12 | |
| 1311 | SetFirmwareEnvironmentVariableA@16 | |
| 1312 | SetFirmwareEnvironmentVariableW@16 | |
| 1313 | SetLocalPrimaryComputerNameA@8 | |
| 1314 | SetLocalPrimaryComputerNameW@8 | |
| 1315 | SetThreadUILanguage@4 | |
| 1316 | TzSpecificLocalTimeToSystemTime@12 | |
| 1317 | WTSGetActiveConsoleSessionId@0 | |
| 1318 | ZombifyActCtx@4 | |
| 1319 | ||
| 1320 | ; This is list of symbols added in Windows XP SP1 | |
| 1321 | CheckNameLegalDOS8Dot3A@20 | |
| 1322 | CheckNameLegalDOS8Dot3W@20 | |
| 1323 | CheckRemoteDebuggerPresent@8 | |
| 1324 | ; CreateNlsSecurityDescriptor@12 ; removed in Windows Vista | |
| 1325 | GetCPFileNameFromRegistry@12 ; removed in Windows 7 | |
| 1326 | GetDllDirectoryA@8 | |
| 1327 | GetDllDirectoryW@8 | |
| 1328 | GetProcessHandleCount@8 | |
| 1329 | GetProcessId@4 | |
| 1330 | GetSystemRegistryQuota@8 | |
| 1331 | GetSystemTimes@12 | |
| 1332 | GetThreadIOPendingFlag@8 | |
| 1333 | SetDllDirectoryA@4 | |
| 1334 | SetDllDirectoryW@4 | |
| 1335 | ||
| 1336 | ; This is list of symbols added in Windows XP SP2 and Windows Server 2003 SP1 (not available in Server 2003 without SP1) | |
| 1337 | BaseQueryModuleData@28 ; FIXME: Windows XP and Server 2003 has ABI "BaseQueryModuleData@20", Windows Vista and new has ABI "BaseQueryModuleData@28" | |
| 1338 | BasepCheckWinSaferRestrictions@28 ; FIXME: Windows XP and Server 2003 has ABI "BasepCheckWinSaferRestrictions@24", Windows Vista has ABI "BasepCheckWinSaferRestrictions@28", Windows 7 has ABI "BasepCheckWinSaferRestrictions@12", Windows 8 and new has ABI "BasepCheckWinSaferRestrictions@16" | |
| 1339 | DecodePointer@4 | |
| 1340 | DecodeSystemPointer@4 | |
| 1341 | EncodePointer@4 | |
| 1342 | EncodeSystemPointer@4 | |
| 1343 | ||
| 1344 | ; This is list of symbols added in Windows XP SP3 | |
| 1345 | GetLogicalProcessorInformation@8 | |
| 1346 | ||
| 1347 | ; This is list of symbols added in Windows XP SP3 and Windows Vista SP1 (not available in any version of Windows Server 2003, not available in Windows Vista without SP1) | |
| 1348 | GetProcessDEPPolicy@12 | |
| 1349 | GetSystemDEPPolicy@0 | |
| 1350 | SetProcessDEPPolicy@4 | |
| 1351 | ||
| 1352 | ; This is list of symbols added in Windows Server 2003 | |
| 1353 | BaseIsAppcompatInfrastructureDisabled@0 | |
| 1354 | ConvertThreadToFiberEx@8 | |
| 1355 | FindFirstStreamW@16 | |
| 1356 | FindNextStreamW@8 | |
| 1357 | FlsAlloc@4 | |
| 1358 | FlsFree@4 | |
| 1359 | FlsGetValue@4 | |
| 1360 | FlsSetValue@8 | |
| 1361 | GetCurrentProcessorNumber@0 | |
| 1362 | GetLargePageMinimum@0 | |
| 1363 | GetNLSVersion@12 | |
| 1364 | GetProcessIdOfThread@4 | |
| 1365 | GetProcessWorkingSetSizeEx@16 | |
| 1366 | GetThreadId@4 | |
| 1367 | InterlockedCompareExchange64@20 DATA ; FIXME: why is decorated stdcall function symbol disabled? | |
| 1368 | IsNLSDefinedString@20 | |
| 1369 | IsTimeZoneRedirectionEnabled@0 ; removed in Windows 8 | |
| 1370 | NeedCurrentDirectoryForExePathA@4 | |
| 1371 | NeedCurrentDirectoryForExePathW@4 | |
| 1372 | ReOpenFile@16 | |
| 1373 | SetEnvironmentStringsA@4 | |
| 1374 | SetEnvironmentStringsW@4 | |
| 1375 | SetProcessWorkingSetSizeEx@16 | |
| 1376 | Wow64EnableWow64FsRedirection@4 | |
| 1377 | ||
| 1378 | ; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version) | |
| 1379 | AddVectoredContinueHandler@8 | |
| 1380 | BaseCheckRunApp@52 ; FIXME: Windows Server 2003 has ABI "BaseCheckRunApp@40", Windows Vista and 7 has ABI "BaseCheckRunApp@52", Windows 8 has ABI "BaseCheckRunApp@56", Windows 8.1 has ABI "BaseCheckRunApp@60", removed in Windows 10 | |
| 1381 | ; BaseProcessStartThunk@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows Vista | |
| 1382 | ; BaseThreadStartThunk@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows Vista | |
| 1383 | BasepCheckBadapp@56 ; FIXME: Windows Server 2003 has ABI "BasepCheckBadapp@36", Windows Vista has ABI "BasepCheckBadapp@56", Windows 7 has ABI "BasepCheckBadapp@60", Windows 8 and Windows 8.1 has ABI "BasepCheckBadapp@72", removed in Windows 10 | |
| 1384 | BasepFreeAppCompatData@12 ; FIXME: Windows Server 2003 has ABI "BasepFreeAppCompatData@8", Windows Vista and new has ABI "BasepFreeAppCompatData@12" | |
| 1385 | ConsoleIMERoutine@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1386 | CtrlRoutine@4 ; available only in 32-bit WoW64 version on 64-bit system, since Windows 7 available also on 32-bit system | |
| 1387 | EnumSystemFirmwareTables@12 | |
| 1388 | GetSystemFileCacheSize@12 | |
| 1389 | GetSystemFirmwareTable@16 | |
| 1390 | RemoveVectoredContinueHandler@4 | |
| 1391 | SetSystemFileCacheSize@12 | |
| 1392 | SetThreadStackGuarantee@4 | |
| 1393 | Wow64DisableWow64FsRedirection@4 | |
| 1394 | Wow64RevertWow64FsRedirection@4 | |
| 1395 | ||
| 1396 | ; This is list of symbols added in Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version) | |
| 1397 | SetFileCompletionNotificationModes@8 | |
| 1398 | ||
| 1399 | ; This is list of symbols added in Windows Vista | |
| 1400 | AcquireSRWLockExclusive@4 | |
| 1401 | AcquireSRWLockShared@4 | |
| 1402 | AddSIDToBoundaryDescriptor@8 | |
| 1403 | AdjustCalendarDate@12 | |
| 1404 | AllocateUserPhysicalPagesNuma@16 | |
| 1405 | ApplicationRecoveryFinished@4 | |
| 1406 | ApplicationRecoveryInProgress@4 | |
| 1407 | BaseGenerateAppCompatData@24 | |
| 1408 | BaseThreadInitThunk@4 ; FIXME: Windows Vista has ABI "BaseThreadInitThunk@8", Windows Vista WoW64 has ABI "BaseThreadInitThunk@4", Windows Vista SP1 has ABI "BaseThreadInitThunk@16", Windows Vista SP2 has ABI "BaseThreadInitThunk@20", Windows 7 has ABI "BaseThreadInitThunk@8", Windows 8 and new has ABI "BaseThreadInitThunk@4" | |
| 1409 | CallbackMayRunLong@4 | |
| 1410 | CancelIoEx@8 | |
| 1411 | CancelSynchronousIo@4 | |
| 1412 | CancelThreadpoolIo@4 | |
| 1413 | CheckElevation@20 | |
| 1414 | CheckElevationEnabled@4 | |
| 1415 | CheckForReadOnlyResource@8 | |
| 1416 | ClosePrivateNamespace@8 | |
| 1417 | CloseThreadpool@4 | |
| 1418 | CloseThreadpoolCleanupGroup@4 | |
| 1419 | CloseThreadpoolCleanupGroupMembers@12 | |
| 1420 | CloseThreadpoolIo@4 | |
| 1421 | CloseThreadpoolTimer@4 | |
| 1422 | CloseThreadpoolWait@4 | |
| 1423 | CloseThreadpoolWork@4 | |
| 1424 | CompareCalendarDates@12 | |
| 1425 | CompareStringEx@36 | |
| 1426 | CompareStringOrdinal@20 | |
| 1427 | ConvertCalDateTimeToSystemTime@8 | |
| 1428 | ConvertNLSDayOfWeekToWin32DayOfWeek@4 | |
| 1429 | ConvertSystemTimeToCalDateTime@12 | |
| 1430 | CopyFileTransactedA@28 | |
| 1431 | CopyFileTransactedW@28 | |
| 1432 | CreateBoundaryDescriptorA@8 | |
| 1433 | CreateBoundaryDescriptorW@8 | |
| 1434 | CreateDirectoryTransactedA@16 | |
| 1435 | CreateDirectoryTransactedW@16 | |
| 1436 | CreateEventExA@16 | |
| 1437 | CreateEventExW@16 | |
| 1438 | CreateFileMappingNumaA@28 | |
| 1439 | CreateFileMappingNumaW@28 | |
| 1440 | CreateFileTransactedA@40 | |
| 1441 | CreateFileTransactedW@40 | |
| 1442 | CreateHardLinkTransactedA@16 | |
| 1443 | CreateHardLinkTransactedW@16 | |
| 1444 | CreateMutexExA@16 | |
| 1445 | CreateMutexExW@16 | |
| 1446 | CreatePrivateNamespaceA@12 | |
| 1447 | CreatePrivateNamespaceW@12 | |
| 1448 | CreateSemaphoreExA@24 | |
| 1449 | CreateSemaphoreExW@24 | |
| 1450 | CreateSymbolicLinkA@12 | |
| 1451 | CreateSymbolicLinkTransactedA@16 | |
| 1452 | CreateSymbolicLinkTransactedW@16 | |
| 1453 | CreateSymbolicLinkW@12 | |
| 1454 | CreateThreadpool@4 | |
| 1455 | CreateThreadpoolCleanupGroup@0 | |
| 1456 | CreateThreadpoolIo@16 | |
| 1457 | CreateThreadpoolTimer@12 | |
| 1458 | CreateThreadpoolWait@12 | |
| 1459 | CreateThreadpoolWork@12 | |
| 1460 | CreateWaitableTimerExA@16 | |
| 1461 | CreateWaitableTimerExW@16 | |
| 1462 | DeleteBoundaryDescriptor@4 | |
| 1463 | DeleteFileTransactedA@8 | |
| 1464 | DeleteFileTransactedW@8 | |
| 1465 | DeleteProcThreadAttributeList@4 | |
| 1466 | DisassociateCurrentThreadFromCallback@4 | |
| 1467 | EnumCalendarInfoExEx@24 | |
| 1468 | EnumDateFormatsExEx@16 | |
| 1469 | EnumResourceLanguagesExA@28 | |
| 1470 | EnumResourceLanguagesExW@28 | |
| 1471 | EnumResourceNamesExA@24 | |
| 1472 | EnumResourceNamesExW@24 | |
| 1473 | EnumResourceTypesExA@20 | |
| 1474 | EnumResourceTypesExW@20 | |
| 1475 | EnumSystemLocalesEx@16 | |
| 1476 | EnumTimeFormatsEx@16 | |
| 1477 | FindFirstFileNameTransactedW@20 | |
| 1478 | FindFirstFileNameW@16 | |
| 1479 | FindFirstFileTransactedA@28 | |
| 1480 | FindFirstFileTransactedW@28 | |
| 1481 | FindFirstStreamTransactedW@20 | |
| 1482 | FindNLSString@28 | |
| 1483 | FindNLSStringEx@40 | |
| 1484 | FindNextFileNameW@12 | |
| 1485 | FlushProcessWriteBuffers@0 | |
| 1486 | FreeLibraryWhenCallbackReturns@8 | |
| 1487 | GetApplicationRecoveryCallback@20 | |
| 1488 | GetApplicationRestartSettings@16 | |
| 1489 | GetCalendarDateFormat@24 | |
| 1490 | GetCalendarDateFormatEx@24 | |
| 1491 | GetCalendarDaysInMonth@16 | |
| 1492 | GetCalendarDifferenceInDays@12 | |
| 1493 | GetCalendarInfoEx@28 | |
| 1494 | GetCalendarMonthsInYear@12 | |
| 1495 | GetCalendarSupportedDateRange@12 | |
| 1496 | GetCalendarWeekNumber@16 | |
| 1497 | GetCompressedFileSizeTransactedA@12 | |
| 1498 | GetCompressedFileSizeTransactedW@12 | |
| 1499 | GetConsoleHistoryInfo@4 | |
| 1500 | GetConsoleOriginalTitleA@8 | |
| 1501 | GetConsoleOriginalTitleW@8 | |
| 1502 | GetConsoleScreenBufferInfoEx@8 | |
| 1503 | GetCurrencyFormatEx@24 | |
| 1504 | GetCurrentConsoleFontEx@12 | |
| 1505 | GetDateFormatEx@28 | |
| 1506 | GetDurationFormat@32 | |
| 1507 | GetDurationFormatEx@32 | |
| 1508 | GetDynamicTimeZoneInformation@4 | |
| 1509 | GetFileAttributesTransactedA@16 | |
| 1510 | GetFileAttributesTransactedW@16 | |
| 1511 | GetFileBandwidthReservation@24 | |
| 1512 | GetFileInformationByHandleEx@16 | |
| 1513 | GetFileMUIInfo@16 | |
| 1514 | GetFileMUIPath@28 | |
| 1515 | GetFinalPathNameByHandleA@16 | |
| 1516 | GetFinalPathNameByHandleW@16 | |
| 1517 | GetFullPathNameTransactedA@20 | |
| 1518 | GetFullPathNameTransactedW@20 | |
| 1519 | GetLocaleInfoEx@16 | |
| 1520 | GetLongPathNameTransactedA@16 | |
| 1521 | GetLongPathNameTransactedW@16 | |
| 1522 | GetNLSVersionEx@12 | |
| 1523 | GetNamedPipeAttribute@20 | |
| 1524 | GetNamedPipeClientComputerNameA@12 | |
| 1525 | GetNamedPipeClientComputerNameW@12 | |
| 1526 | GetNamedPipeClientProcessId@8 | |
| 1527 | GetNamedPipeClientSessionId@8 | |
| 1528 | GetNamedPipeServerProcessId@8 | |
| 1529 | GetNamedPipeServerSessionId@8 | |
| 1530 | GetNumaProximityNode@8 | |
| 1531 | GetNumberFormatEx@24 | |
| 1532 | GetProductInfo@20 | |
| 1533 | GetQueuedCompletionStatusEx@24 | |
| 1534 | GetStringScripts@20 | |
| 1535 | GetSystemDefaultLocaleName@8 | |
| 1536 | GetSystemPreferredUILanguages@16 | |
| 1537 | GetThreadPreferredUILanguages@16 | |
| 1538 | GetThreadUILanguage@0 | |
| 1539 | GetTickCount64@0 | |
| 1540 | GetTimeFormatEx@24 | |
| 1541 | GetUILanguageInfo@20 | |
| 1542 | GetUserDefaultLocaleName@8 | |
| 1543 | GetUserPreferredUILanguages@16 | |
| 1544 | GetVolumeInformationByHandleW@32 | |
| 1545 | IdnToAscii@20 | |
| 1546 | IdnToNameprepUnicode@20 | |
| 1547 | IdnToUnicode@20 | |
| 1548 | InitOnceBeginInitialize@16 | |
| 1549 | InitOnceComplete@12 | |
| 1550 | InitOnceExecuteOnce@16 | |
| 1551 | InitOnceInitialize@4 | |
| 1552 | InitializeConditionVariable@4 | |
| 1553 | InitializeCriticalSectionEx@12 | |
| 1554 | InitializeProcThreadAttributeList@16 | |
| 1555 | InitializeSRWLock@4 | |
| 1556 | @InterlockedPushListSList@16 ; really fastcall calling convention | |
| 1557 | IsCalendarLeapDay@20 | |
| 1558 | IsCalendarLeapMonth@16 | |
| 1559 | IsCalendarLeapYear@12 | |
| 1560 | IsNormalizedString@12 | |
| 1561 | IsThreadAFiber@0 | |
| 1562 | IsThreadpoolTimerSet@4 | |
| 1563 | IsValidCalDateTime@8 | |
| 1564 | IsValidLocaleName@4 | |
| 1565 | LCIDToLocaleName@16 | |
| 1566 | LCMapStringEx@36 | |
| 1567 | LeaveCriticalSectionWhenCallbackReturns@8 | |
| 1568 | LoadStringBaseExW@20 | |
| 1569 | LoadStringBaseW@16 | |
| 1570 | LocaleNameToLCID@8 | |
| 1571 | MapViewOfFileExNuma@28 | |
| 1572 | MoveFileTransactedA@24 | |
| 1573 | MoveFileTransactedW@24 | |
| 1574 | NlsCheckPolicy@8 | |
| 1575 | NlsEventDataDescCreate@16 ; removed in Windows 10 May 2020 Update (20H1) | |
| 1576 | NlsUpdateLocale@8 | |
| 1577 | NlsUpdateSystemLocale@8 | |
| 1578 | NlsWriteEtwEvent@20 ; removed in Windows 10 May 2020 Update (20H1) | |
| 1579 | NormalizeString@20 | |
| 1580 | NotifyUILanguageChange@20 | |
| 1581 | OpenFileById@24 | |
| 1582 | OpenPrivateNamespaceA@8 | |
| 1583 | OpenPrivateNamespaceW@8 | |
| 1584 | QueryActCtxSettingsW@28 | |
| 1585 | QueryFullProcessImageNameA@16 | |
| 1586 | QueryFullProcessImageNameW@16 | |
| 1587 | QueryIdleProcessorCycleTime@8 | |
| 1588 | QueryProcessCycleTime@8 | |
| 1589 | QueryThreadCycleTime@8 | |
| 1590 | RegisterApplicationRecoveryCallback@16 | |
| 1591 | RegisterApplicationRestart@8 | |
| 1592 | ReleaseMutexWhenCallbackReturns@8 | |
| 1593 | ReleaseSRWLockExclusive@4 | |
| 1594 | ReleaseSRWLockShared@4 | |
| 1595 | ReleaseSemaphoreWhenCallbackReturns@12 | |
| 1596 | RemoveDirectoryTransactedA@8 | |
| 1597 | RemoveDirectoryTransactedW@8 | |
| 1598 | SetConsoleHistoryInfo@4 | |
| 1599 | SetConsoleScreenBufferInfoEx@8 | |
| 1600 | SetCurrentConsoleFontEx@12 | |
| 1601 | SetDynamicTimeZoneInformation@4 | |
| 1602 | SetEventWhenCallbackReturns@8 | |
| 1603 | SetFileAttributesTransactedA@12 | |
| 1604 | SetFileAttributesTransactedW@12 | |
| 1605 | SetFileBandwidthReservation@24 | |
| 1606 | SetFileInformationByHandle@16 | |
| 1607 | SetFileIoOverlappedRange@12 | |
| 1608 | SetNamedPipeAttribute@20 | |
| 1609 | SetStdHandleEx@12 | |
| 1610 | SetThreadPreferredUILanguages@12 | |
| 1611 | SetThreadpoolThreadMaximum@8 | |
| 1612 | SetThreadpoolThreadMinimum@8 | |
| 1613 | SetThreadpoolTimer@16 | |
| 1614 | SetThreadpoolWait@12 | |
| 1615 | SleepConditionVariableCS@12 | |
| 1616 | SleepConditionVariableSRW@16 | |
| 1617 | StartThreadpoolIo@4 | |
| 1618 | SubmitThreadpoolWork@4 | |
| 1619 | TrySubmitThreadpoolCallback@12 | |
| 1620 | UnregisterApplicationRecoveryCallback@0 | |
| 1621 | UnregisterApplicationRestart@0 | |
| 1622 | UpdateCalendarDayOfWeek@4 | |
| 1623 | UpdateProcThreadAttribute@28 | |
| 1624 | VerifyScripts@20 | |
| 1625 | VirtualAllocExNuma@24 | |
| 1626 | WaitForThreadpoolIoCallbacks@8 | |
| 1627 | WaitForThreadpoolTimerCallbacks@8 | |
| 1628 | WaitForThreadpoolWaitCallbacks@8 | |
| 1629 | WaitForThreadpoolWorkCallbacks@8 | |
| 1630 | WakeAllConditionVariable@4 | |
| 1631 | WakeConditionVariable@4 | |
| 1632 | WerGetFlags@8 | |
| 1633 | WerRegisterFile@12 | |
| 1634 | WerRegisterMemoryBlock@8 | |
| 1635 | WerSetFlags@4 | |
| 1636 | WerUnregisterFile@4 | |
| 1637 | WerUnregisterMemoryBlock@4 | |
| 1638 | WerpCleanupMessageMapping@0 ; removed in Windows 10 Fall Creators Update (Redstone 3) | |
| 1639 | WerpInitiateRemoteRecovery@4 | |
| 1640 | WerpNotifyLoadStringResource@16 ; removed in Windows 10 Fall Creators Update (Redstone 3) | |
| 1641 | WerpNotifyLoadStringResourceEx@20 ; removed in Windows 10 Fall Creators Update (Redstone 3) | |
| 1642 | WerpNotifyUseStringResource@4 ; removed in Windows 10 Fall Creators Update (Redstone 3) | |
| 1643 | WerpStringLookup@8 ; removed in Windows 10 Fall Creators Update (Redstone 3) | |
| 1644 | Wow64GetThreadContext@8 | |
| 1645 | Wow64SetThreadContext@8 | |
| 1646 | Wow64SuspendThread@4 | |
| 1647 | ||
| 1648 | ; This is list of symbols added in Windows Vista SP1 | |
| 1649 | AddSecureMemoryCacheCallback@4 | |
| 1650 | GetPhysicallyInstalledSystemMemory@4 | |
| 1651 | GetTimeZoneInformationForYear@12 | |
| 1652 | QueryProcessAffinityUpdateMode@8 | |
| 1653 | RemoveSecureMemoryCacheCallback@4 | |
| 1654 | ReplacePartitionUnit@12 | |
| 1655 | SetProcessAffinityUpdateMode@8 | |
| 1656 | ||
| 1657 | ; This is list of symbols added in Windows Vista SP2 | |
| 1658 | SetSearchPathMode@4 | |
| 1659 | ||
| 1660 | ; This is list of symbols added in Windows 7 | |
| 1661 | AddIntegrityLabelToBoundaryDescriptor@8 | |
| 1662 | BaseCheckAppcompatCacheEx@24 ; FIXME: Windows 7 has ABI "BaseCheckAppcompatCacheEx@24", Windows 8 has ABI "BaseCheckAppcompatCacheEx@32" | |
| 1663 | BaseDllReadWriteIniFile@32 | |
| 1664 | BaseFormatObjectAttributes@16 | |
| 1665 | BaseFormatTimeOut@8 | |
| 1666 | BaseGetNamedObjectDirectory@4 | |
| 1667 | BaseSetLastNTError@4 | |
| 1668 | BaseVerifyUnicodeString@4 ; removed in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) | |
| 1669 | Basep8BitStringToDynamicUnicodeString@8 | |
| 1670 | BasepAllocateActivationContextActivationBlock@16 | |
| 1671 | BasepAnsiStringToDynamicUnicodeString@8 | |
| 1672 | BasepCheckAppCompat@16 | |
| 1673 | BasepFreeActivationContextActivationBlock@4 | |
| 1674 | BasepMapModuleHandle@8 | |
| 1675 | ; CopyExtendedContext@12 ; removed in Windows 7 SP1 | |
| 1676 | ; CreateProcessAsUserW@44 ; MSDN says this is exported from advapi32.dll | |
| 1677 | CreateRemoteThreadEx@32 | |
| 1678 | DisableThreadProfiling@4 | |
| 1679 | EnableThreadProfiling@20 | |
| 1680 | FindStringOrdinal@24 | |
| 1681 | GetActiveProcessorCount@4 | |
| 1682 | GetActiveProcessorGroupCount@0 | |
| 1683 | GetCurrentProcessorNumberEx@4 | |
| 1684 | ; GetEnabledExtendedFeatures@8 ; removed in Windows 7 SP1 | |
| 1685 | GetEraNameCountedString@16 | |
| 1686 | ; GetExtendedContextLength@8 ; removed in Windows 7 SP1 | |
| 1687 | ; GetExtendedFeaturesMask@4 ; removed in Windows 7 SP1 | |
| 1688 | GetLogicalProcessorInformationEx@12 | |
| 1689 | GetMaximumProcessorCount@4 | |
| 1690 | GetMaximumProcessorGroupCount@0 | |
| 1691 | GetNumaAvailableMemoryNodeEx@8 | |
| 1692 | GetNumaNodeNumberFromHandle@8 | |
| 1693 | GetNumaNodeProcessorMaskEx@8 | |
| 1694 | GetNumaProcessorNodeEx@8 | |
| 1695 | GetNumaProximityNodeEx@8 | |
| 1696 | GetProcessGroupAffinity@12 | |
| 1697 | GetProcessPreferredUILanguages@16 | |
| 1698 | GetProcessorSystemCycleTime@12 | |
| 1699 | GetThreadErrorMode@0 | |
| 1700 | GetThreadGroupAffinity@8 | |
| 1701 | GetThreadIdealProcessorEx@8 | |
| 1702 | ; InitializeExtendedContext@12 ; removed in Windows 7 SP1 | |
| 1703 | K32EmptyWorkingSet@4 | |
| 1704 | K32EnumDeviceDrivers@12 | |
| 1705 | K32EnumPageFilesA@8 | |
| 1706 | K32EnumPageFilesW@8 | |
| 1707 | K32EnumProcessModules@16 | |
| 1708 | K32EnumProcessModulesEx@20 | |
| 1709 | K32EnumProcesses@12 | |
| 1710 | K32GetDeviceDriverBaseNameA@12 | |
| 1711 | K32GetDeviceDriverBaseNameW@12 | |
| 1712 | K32GetDeviceDriverFileNameA@12 | |
| 1713 | K32GetDeviceDriverFileNameW@12 | |
| 1714 | K32GetMappedFileNameA@16 | |
| 1715 | K32GetMappedFileNameW@16 | |
| 1716 | K32GetModuleBaseNameA@16 | |
| 1717 | K32GetModuleBaseNameW@16 | |
| 1718 | K32GetModuleFileNameExA@16 | |
| 1719 | K32GetModuleFileNameExW@16 | |
| 1720 | K32GetModuleInformation@16 | |
| 1721 | K32GetPerformanceInfo@8 | |
| 1722 | K32GetProcessImageFileNameA@12 | |
| 1723 | K32GetProcessImageFileNameW@12 | |
| 1724 | K32GetProcessMemoryInfo@12 | |
| 1725 | K32GetWsChanges@12 | |
| 1726 | K32GetWsChangesEx@12 | |
| 1727 | K32InitializeProcessForWsWatch@4 | |
| 1728 | K32QueryWorkingSet@12 | |
| 1729 | K32QueryWorkingSetEx@12 | |
| 1730 | LoadAppInitDlls@0 | |
| 1731 | ; LocateExtendedFeature@12 ; removed in Windows 7 SP1 | |
| 1732 | ; LocateLegacyContext@8 ; removed in Windows 7 SP1 | |
| 1733 | NotifyMountMgr@12 | |
| 1734 | ; OpenProcessToken@12 ; MSDN says this is exported from advapi32.dll | |
| 1735 | ; OpenThreadToken@16 ; MSDN says this is exported from advapi32.dll | |
| 1736 | PowerClearRequest@8 | |
| 1737 | PowerCreateRequest@4 | |
| 1738 | PowerSetRequest@8 | |
| 1739 | QueryIdleProcessorCycleTimeEx@12 | |
| 1740 | QueryThreadProfiling@8 | |
| 1741 | QueryThreadpoolStackInformation@8 | |
| 1742 | QueryUnbiasedInterruptTime@4 | |
| 1743 | RaiseFailFastException@12 | |
| 1744 | ReadThreadProfilingData@12 | |
| 1745 | ; RegCloseKey@4 ; MSDN says this is exported from advapi32.dll | |
| 1746 | ; RegCreateKeyExA@36 ; MSDN says this is exported from advapi32.dll | |
| 1747 | ; RegCreateKeyExW@36 ; MSDN says this is exported from advapi32.dll | |
| 1748 | ; RegDeleteKeyExA@16 ; MSDN says this is exported from advapi32.dll | |
| 1749 | ; RegDeleteKeyExW@16 ; MSDN says this is exported from advapi32.dll | |
| 1750 | ; RegDeleteTreeA@8 ; MSDN says this is exported from advapi32.dll | |
| 1751 | ; RegDeleteTreeW@8 ; MSDN says this is exported from advapi32.dll | |
| 1752 | ; RegDeleteValueA@8 ; MSDN says this is exported from advapi32.dll | |
| 1753 | ; RegDeleteValueW@8 ; MSDN says this is exported from advapi32.dll | |
| 1754 | ; RegDisablePredefinedCacheEx@0 ; MSDN says this is exported from advapi32.dll | |
| 1755 | ; RegEnumKeyExA@32 ; MSDN says this is exported from advapi32.dll | |
| 1756 | ; RegEnumKeyExW@32 ; MSDN says this is exported from advapi32.dll | |
| 1757 | ; RegEnumValueA@32 ; MSDN says this is exported from advapi32.dll | |
| 1758 | ; RegEnumValueW@32 ; MSDN says this is exported from advapi32.dll | |
| 1759 | ; RegFlushKey@4 ; MSDN says this is exported from advapi32.dll | |
| 1760 | ; RegGetKeySecurity@16 ; MSDN says this is exported from advapi32.dll | |
| 1761 | ; RegGetValueA@28 ; MSDN says this is exported from advapi32.dll | |
| 1762 | ; RegGetValueW@28 ; MSDN says this is exported from advapi32.dll | |
| 1763 | ; RegKrnGetGlobalState@0 ; removed in Windows 8 | |
| 1764 | ; RegKrnInitialize@12 ; removed in Windows 8 | |
| 1765 | ; RegLoadKeyA@12 ; MSDN says this is exported from advapi32.dll | |
| 1766 | ; RegLoadKeyW@12 ; MSDN says this is exported from advapi32.dll | |
| 1767 | ; RegLoadMUIStringA@28 ; MSDN says this is exported from advapi32.dll | |
| 1768 | ; RegLoadMUIStringW@28 ; MSDN says this is exported from advapi32.dll | |
| 1769 | ; RegNotifyChangeKeyValue@20 ; MSDN says this is exported from advapi32.dll | |
| 1770 | ; RegOpenCurrentUser@8 ; MSDN says this is exported from advapi32.dll | |
| 1771 | ; RegOpenKeyExA@20 ; MSDN says this is exported from advapi32.dll | |
| 1772 | ; RegOpenKeyExW@20 ; MSDN says this is exported from advapi32.dll | |
| 1773 | ; RegOpenUserClassesRoot@16 ; MSDN says this is exported from advapi32.dll | |
| 1774 | ; RegQueryInfoKeyA@48 ; MSDN says this is exported from advapi32.dll | |
| 1775 | ; RegQueryInfoKeyW@48 ; MSDN says this is exported from advapi32.dll | |
| 1776 | ; RegQueryValueExA@24 ; MSDN says this is exported from advapi32.dll | |
| 1777 | ; RegQueryValueExW@24 ; MSDN says this is exported from advapi32.dll | |
| 1778 | ; RegRestoreKeyA@12 ; MSDN says this is exported from advapi32.dll | |
| 1779 | ; RegRestoreKeyW@12 ; MSDN says this is exported from advapi32.dll | |
| 1780 | ; RegSaveKeyExA@16 ; MSDN says this is exported from advapi32.dll | |
| 1781 | ; RegSaveKeyExW@16 ; MSDN says this is exported from advapi32.dll | |
| 1782 | ; RegSetKeySecurity@12 ; MSDN says this is exported from advapi32.dll | |
| 1783 | ; RegSetValueExA@24 ; MSDN says this is exported from advapi32.dll | |
| 1784 | ; RegSetValueExW@24 ; MSDN says this is exported from advapi32.dll | |
| 1785 | ; RegUnLoadKeyA@8 ; MSDN says this is exported from advapi32.dll | |
| 1786 | ; RegUnLoadKeyW@8 ; MSDN says this is exported from advapi32.dll | |
| 1787 | ResolveLocaleName@12 | |
| 1788 | ; SetExtendedFeaturesMask@12 ; removed in Windows 7 SP1 | |
| 1789 | SetProcessPreferredUILanguages@12 | |
| 1790 | SetThreadErrorMode@8 | |
| 1791 | SetThreadGroupAffinity@12 | |
| 1792 | SetThreadIdealProcessorEx@12 | |
| 1793 | ; SetThreadToken@8 ; MSDN says this is exported from advapi32.dll | |
| 1794 | SetThreadpoolStackInformation@8 | |
| 1795 | SetWaitableTimerEx@28 | |
| 1796 | SortCloseHandle@4 | |
| 1797 | SortGetHandle@12 | |
| 1798 | TryAcquireSRWLockExclusive@4 | |
| 1799 | TryAcquireSRWLockShared@4 | |
| 1800 | WerRegisterRuntimeExceptionModule@8 | |
| 1801 | WerUnregisterRuntimeExceptionModule@8 | |
| 1802 | Wow64GetThreadSelectorEntry@12 | |
| 1803 | ||
| 1804 | ; This is list of symbols added in Windows 7 SP1 | |
| 1805 | CopyContext@12 | |
| 1806 | GetEnabledXStateFeatures@0 | |
| 1807 | GetProcessUserModeExceptionPolicy@4 ; removed in Windows 8 | |
| 1808 | GetXStateFeaturesMask@8 | |
| 1809 | InitializeContext@16 | |
| 1810 | LocateXStateFeature@12 | |
| 1811 | SetProcessUserModeExceptionPolicy@4 ; removed in Windows 8 | |
| 1812 | SetXStateFeaturesMask@12 | |
| 1813 | ||
| 1814 | ; This is list of symbols added in Windows 8 | |
| 1815 | ; AcquireStateLock@12 ; removed in Windows 8.1 | |
| 1816 | ActivateActCtxWorker@8 | |
| 1817 | AddDllDirectory@4 | |
| 1818 | AddRefActCtxWorker@4 | |
| 1819 | AddResourceAttributeAce@28 | |
| 1820 | AddScopedPolicyIDAce@20 | |
| 1821 | ; AppContainerDeriveSidFromMoniker@8 ; removed in Windows 8.1 | |
| 1822 | ; AppContainerFreeMemory@4 ; removed in Windows 8.1 | |
| 1823 | ; AppContainerLookupDisplayNameMrtReference@8 ; removed in Windows 8.1 | |
| 1824 | ; AppContainerLookupMoniker@8 ; removed in Windows 8.1 | |
| 1825 | ; AppContainerRegisterSid@12 ; removed in Windows 8.1 | |
| 1826 | ; AppContainerUnregisterSid@4 ; removed in Windows 8.1 | |
| 1827 | ; AppXFreeMemory@4 ; removed in Windows 8.1 | |
| 1828 | ; AppXGetApplicationData@32 ; removed in Windows 8.1 | |
| 1829 | ; AppXGetDevelopmentMode@8 ; removed in Windows 8.1 | |
| 1830 | AppXGetOSMaxVersionTested@8 | |
| 1831 | ; AppXGetOSMinVersion@8 ; removed in Windows 8.1 | |
| 1832 | ; AppXGetPackageCapabilities@16 ; removed in Windows 8.1 | |
| 1833 | ; AppXGetPackageSid@8 ; removed in Windows 8.1 | |
| 1834 | ; AppXGetPackageState@8 ; removed in Windows 8.1 | |
| 1835 | ; AppXLookupDisplayName@8 ; removed in Windows 8.1 | |
| 1836 | ; AppXLookupMoniker@8 ; removed in Windows 8.1 | |
| 1837 | ; AppXSetPackageState@12 ; removed in Windows 8.1 | |
| 1838 | BaseCheckAppcompatCacheExWorker@36 ; FIXME: Windows 8 and Windows 8.1 has ABI "BaseCheckAppcompatCacheExWorker@32", Windows 10 has ABI "BaseCheckAppcompatCacheExWorker@36" | |
| 1839 | BaseCheckAppcompatCacheWorker@16 | |
| 1840 | BaseCheckElevation@48 | |
| 1841 | ; BaseCleanupAppcompatCacheSupportWorker@4 | |
| 1842 | ; BaseDestroyVDMEnvironment@8 | |
| 1843 | BaseDumpAppcompatCacheWorker@0 | |
| 1844 | BaseElevationPostProcessing@12 | |
| 1845 | BaseFlushAppcompatCacheWorker@0 | |
| 1846 | BaseInitAppcompatCacheSupportWorker@0 | |
| 1847 | BaseIsAppcompatInfrastructureDisabledWorker@0 | |
| 1848 | BaseIsDosApplication@8 | |
| 1849 | BaseUpdateAppcompatCacheWorker@12 | |
| 1850 | BaseUpdateVDMEntry@16 | |
| 1851 | BaseWriteErrorElevationRequiredEvent@0 | |
| 1852 | ; BasepAppCompatHookDLL@8 ; removed in Windows 8.1 | |
| 1853 | BasepAppContainerEnvironmentExtension@12 | |
| 1854 | BasepAppXExtension@24 | |
| 1855 | BasepCheckWebBladeHashes@4 | |
| 1856 | BasepConstructSxsCreateProcessMessage@80 ; FIXME: Windows 8 has ABI "BasepConstructSxsCreateProcessMessage@80", Windows 8.1 and Windows 10 has ABI "BasepConstructSxsCreateProcessMessage@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepConstructSxsCreateProcessMessage@80" | |
| 1857 | BasepCopyEncryption@12 ; FIXME: Windows 8, Windows 8.1 and Windows 10 has ABI "BasepCopyEncryption@56", Windows 10 November Update (Threshold 2) has ABI "BasepCopyEncryption@12" | |
| 1858 | BasepGetAppCompatData@60 ; FIXME: Windows 8 and Windows 8.1 has ABI "BasepGetAppCompatData@80", Windows 10 has ABI "BasepGetAppCompatData@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepGetAppCompatData@56", Windows 10 May 2019 Update (19H1) has ABI "BasepGetAppCompatData@60" | |
| 1859 | BasepGetComputerNameFromNtPath@16 | |
| 1860 | BasepGetExeArchType@12 | |
| 1861 | BasepIsProcessAllowed@4 | |
| 1862 | BasepNotifyLoadStringResource@16 | |
| 1863 | BasepPostSuccessAppXExtension@8 | |
| 1864 | BasepProcessInvalidImage@84 | |
| 1865 | BasepQueryAppCompat@72 ; FIXME: Windows 8 and Windows 8.1 has ABI BasepQueryAppCompat@80, Windows 10 has ABI "BasepQueryAppCompat@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepQueryAppCompat@72" | |
| 1866 | BasepReleaseAppXContext@4 | |
| 1867 | BasepReleaseSxsCreateProcessUtilityStruct@4 | |
| 1868 | BasepReportFault@8 | |
| 1869 | BasepSetFileEncryptionCompression@32 ; FIXME: Windows 8 has ABI "BasepSetFileEncryptionCompression@28", Windows 8.1 has ABI "BasepSetFileEncryptionCompression@32" | |
| 1870 | CeipIsOptedIn@0 | |
| 1871 | CheckAllowDecryptedRemoteDestinationPolicy@0 | |
| 1872 | CheckForReadOnlyResourceFilter@4 | |
| 1873 | CheckTokenCapability@12 | |
| 1874 | CheckTokenMembershipEx@16 | |
| 1875 | ClosePackageInfo@4 | |
| 1876 | CloseState@4 | |
| 1877 | ; CloseStateAtom@4 ; removed in Windows 8.1 | |
| 1878 | ; CloseStateChangeNotification@4 ; removed in Windows 8.1 | |
| 1879 | ; CloseStateContainer@4 ; removed in Windows 8.1 | |
| 1880 | ; CloseStateLock@4 ; removed in Windows 8.1 | |
| 1881 | ; CommitStateAtom@12 ; removed in Windows 8.1 | |
| 1882 | CopyFile2@12 | |
| 1883 | CreateActCtxWWorker@4 | |
| 1884 | CreateFile2@20 | |
| 1885 | CreateFileMappingFromApp@24 | |
| 1886 | ; CreateStateAtom@0 ; removed in Windows 8.1 | |
| 1887 | ; CreateStateChangeNotification@4 ; removed in Windows 8.1 | |
| 1888 | ; CreateStateContainer@16 ; removed in Windows 8.1 | |
| 1889 | ; CreateStateLock@4 ; removed in Windows 8.1 | |
| 1890 | ; CreateStateSubcontainer@12 ; removed in Windows 8.1 | |
| 1891 | DeactivateActCtxWorker@8 | |
| 1892 | ; DeleteStateAtomValue@8 ; removed in Windows 8.1 | |
| 1893 | ; DeleteStateContainer@8 ; removed in Windows 8.1 | |
| 1894 | ; DeleteStateContainerValue@8 ; removed in Windows 8.1 | |
| 1895 | DuplicateEncryptionInfoFileExt@20 | |
| 1896 | ; DuplicateStateContainerHandle@4 ; removed in Windows 8.1 | |
| 1897 | ; EnumerateStateAtomValues@12 ; removed in Windows 8.1 | |
| 1898 | ; EnumerateStateContainerItems@16 ; removed in Windows 8.1 | |
| 1899 | FindActCtxSectionGuidWorker@20 | |
| 1900 | FindActCtxSectionStringWWorker@20 | |
| 1901 | GetAppContainerAce@16 | |
| 1902 | GetAppContainerNamedObjectPath@20 | |
| 1903 | GetApplicationRecoveryCallbackWorker@20 | |
| 1904 | GetApplicationRestartSettingsWorker@16 | |
| 1905 | GetApplicationUserModelId@12 | |
| 1906 | GetCachedSigningLevel@24 | |
| 1907 | GetCurrentActCtxWorker@4 | |
| 1908 | GetCurrentApplicationUserModelId@8 | |
| 1909 | GetCurrentPackageFamilyName@8 | |
| 1910 | GetCurrentPackageFullName@8 | |
| 1911 | GetCurrentPackageId@8 | |
| 1912 | GetCurrentPackageInfo@16 | |
| 1913 | GetCurrentPackagePath@8 | |
| 1914 | GetCurrentThreadStackLimits@8 | |
| 1915 | GetDateFormatAWorker@28 | |
| 1916 | GetDateFormatWWorker@28 | |
| 1917 | GetFirmwareEnvironmentVariableExA@20 | |
| 1918 | GetFirmwareEnvironmentVariableExW@20 | |
| 1919 | GetFirmwareType@4 | |
| 1920 | ; GetHivePath@16 ; removed in Windows 8.1 | |
| 1921 | GetMemoryErrorHandlingCapabilities@4 | |
| 1922 | GetOverlappedResultEx@20 | |
| 1923 | GetPackageFamilyName@12 | |
| 1924 | GetPackageFullName@12 | |
| 1925 | GetPackageId@12 | |
| 1926 | GetPackageInfo@20 | |
| 1927 | GetPackagePath@16 | |
| 1928 | GetPackagesByPackageFamily@20 | |
| 1929 | GetProcessInformation@16 | |
| 1930 | GetProcessMitigationPolicy@16 | |
| 1931 | ; GetRoamingLastObservedChangeTime@8 ; removed in Windows 8.1 | |
| 1932 | ; GetSerializedAtomBytes@12 ; removed in Windows 8.1 | |
| 1933 | ; GetStateContainerDepth@8 ; removed in Windows 8.1 | |
| 1934 | GetStateFolder@16 | |
| 1935 | ; GetStateRootFolder@12 ; removed in Windows 8.1 | |
| 1936 | ; GetStateSettingsFolder@12 ; removed in Windows 8.1 | |
| 1937 | ; GetStateVersion@12 ; removed in Windows 8.1 | |
| 1938 | ; GetSystemAppDataFolder@12 ; removed in Windows 8.1 | |
| 1939 | GetSystemAppDataKey@16 | |
| 1940 | GetSystemTimePreciseAsFileTime@4 | |
| 1941 | GetThreadInformation@16 | |
| 1942 | GetTimeFormatAWorker@28 | |
| 1943 | GetTimeFormatWWorker@24 | |
| 1944 | GlobalAddAtomExA@8 | |
| 1945 | GlobalAddAtomExW@8 | |
| 1946 | InterlockedPushListSListEx@16 | |
| 1947 | IsNativeVhdBoot@4 | |
| 1948 | IsValidNLSVersion@12 | |
| 1949 | LoadPackagedLibrary@8 | |
| 1950 | MapViewOfFileFromApp@20 | |
| 1951 | NtVdm64CreateProcessInternalW@48 | |
| 1952 | OpenConsoleWStub@16 | |
| 1953 | OpenPackageInfoByFullName@12 | |
| 1954 | OpenState@0 | |
| 1955 | ; OpenStateAtom@8 ; removed in Windows 8.1 | |
| 1956 | OpenStateExplicit@8 | |
| 1957 | ; OverrideRoamingDataModificationTimesInRange@16 ; removed in Windows 8.1 | |
| 1958 | PackageFamilyNameFromFullName@12 | |
| 1959 | PackageFamilyNameFromId@12 | |
| 1960 | PackageFullNameFromId@12 | |
| 1961 | PackageIdFromFullName@16 | |
| 1962 | PackageNameAndPublisherIdFromFamilyName@20 | |
| 1963 | PrefetchVirtualMemory@16 | |
| 1964 | ; PublishStateChangeNotification@4 ; removed in Windows 8.1 | |
| 1965 | QueryActCtxSettingsWWorker@28 | |
| 1966 | QueryActCtxWWorker@28 | |
| 1967 | ; QueryStateAtomValueInfo@12 ; removed in Windows 8.1 | |
| 1968 | ; QueryStateContainerItemInfo@12 ; removed in Windows 8.1 | |
| 1969 | RaiseInvalid16BitExeError@4 | |
| 1970 | ; ReadStateAtomValue@20 ; removed in Windows 8.1 | |
| 1971 | ; ReadStateContainerValue@20 ; removed in Windows 8.1 | |
| 1972 | ; RegCopyTreeW@12 ; MSDN says this function is exported from advapi32.dll | |
| 1973 | RegisterBadMemoryNotification@4 | |
| 1974 | ; RegisterStateChangeNotification@8 ; removed in Windows 8.1 | |
| 1975 | ; RegisterStateLock@4 ; removed in Windows 8.1 | |
| 1976 | ReleaseActCtxWorker@4 | |
| 1977 | ; ReleaseStateLock@4 ; removed in Windows 8.1 | |
| 1978 | RemoveDllDirectory@4 | |
| 1979 | ; ResetState@4 ; removed in Windows 8.1 | |
| 1980 | ResolveDelayLoadedAPI@24 | |
| 1981 | ResolveDelayLoadsFromDll@12 | |
| 1982 | SetCachedSigningLevel@16 | |
| 1983 | SetDefaultDllDirectories@4 | |
| 1984 | SetFirmwareEnvironmentVariableExA@20 | |
| 1985 | SetFirmwareEnvironmentVariableExW@20 | |
| 1986 | SetProcessInformation@16 | |
| 1987 | SetProcessMitigationPolicy@12 | |
| 1988 | ; SetRoamingLastObservedChangeTime@8 ; removed in Windows 8.1 | |
| 1989 | ; SetStateVersion@8 ; removed in Windows 8.1 | |
| 1990 | SetThreadInformation@16 | |
| 1991 | SetThreadpoolTimerEx@16 | |
| 1992 | SetThreadpoolWaitEx@16 | |
| 1993 | SetVolumeMountPointWStub@8 | |
| 1994 | ; SubscribeStateChangeNotification@12 ; removed in Windows 8.1 | |
| 1995 | SystemTimeToTzSpecificLocalTimeEx@12 | |
| 1996 | TermsrvConvertSysRootToUserDir@8 | |
| 1997 | TermsrvCreateRegEntry@20 | |
| 1998 | TermsrvDeleteKey@4 | |
| 1999 | TermsrvDeleteValue@8 | |
| 2000 | TermsrvGetPreSetValue@16 | |
| 2001 | TermsrvGetWindowsDirectoryA@8 | |
| 2002 | TermsrvGetWindowsDirectoryW@8 | |
| 2003 | TermsrvOpenRegEntry@12 | |
| 2004 | TermsrvOpenUserClasses@8 | |
| 2005 | TermsrvRestoreKey@12 | |
| 2006 | TermsrvSetKeySecurity@12 | |
| 2007 | TermsrvSetValueKey@24 | |
| 2008 | TermsrvSyncUserIniFileExt@4 | |
| 2009 | TzSpecificLocalTimeToSystemTimeEx@12 | |
| 2010 | UnmapViewOfFileEx@8 | |
| 2011 | UnregisterBadMemoryNotification@4 | |
| 2012 | ; UnregisterStateChangeNotification@4 ; removed in Windows 8.1 | |
| 2013 | ; UnregisterStateLock@8 ; removed in Windows 8.1 | |
| 2014 | ; UnsubscribeStateChangeNotification@4 ; removed in Windows 8.1 | |
| 2015 | WerRegisterFileWorker@12 | |
| 2016 | WerRegisterMemoryBlockWorker@8 | |
| 2017 | WerRegisterRuntimeExceptionModuleWorker@8 | |
| 2018 | WerUnregisterFileWorker@4 | |
| 2019 | WerUnregisterMemoryBlockWorker@4 | |
| 2020 | WerUnregisterRuntimeExceptionModuleWorker@8 | |
| 2021 | WerpGetDebugger@8 ; FIXME: Windows 8 and Windows 8.1 has ABI "WerpGetDebugger@20", Windows 10 has ABI "WerpGetDebugger@8" | |
| 2022 | ; WerpLaunchAeDebug@24 | |
| 2023 | ; WerpNotifyLoadStringResourceWorker@16 | |
| 2024 | ; WerpNotifyUseStringResourceWorker@4 | |
| 2025 | ; WriteStateAtomValue@20 ; removed in Windows 8.1 | |
| 2026 | ; WriteStateContainerValue@24 ; removed in Windows 8.1 | |
| 2027 | ZombifyActCtxWorker@4 | |
| 2028 | ; timeBeginPeriod@4 ; MSDN says this is exported from winmm.dll | |
| 2029 | ; timeEndPeriod@4 ; MSDN says this is exported from winmm.dll | |
| 2030 | ; timeGetDevCaps@8 ; MSDN says this is exported from winmm.dll | |
| 2031 | ; timeGetSystemTime@8 ; MSDN says this is exported from winmm.dll | |
| 2032 | ; timeGetTime@0 ; MSDN says this is exported from winmm.dll | |
| 2033 | ||
| 2034 | ; This is list of symbols added in Windows 8.1 | |
| 2035 | BaseFreeAppCompatDataForProcessWorker@4 | |
| 2036 | BaseReadAppCompatDataForProcessWorker@12 | |
| 2037 | ; CalloutOnFiberStack@12 ; removed in Windows 10 November Update (Threshold 2) | |
| 2038 | DeleteSynchronizationBarrier@4 | |
| 2039 | DnsHostnameToComputerNameExW@12 | |
| 2040 | EnterSynchronizationBarrier@8 | |
| 2041 | FindPackagesByPackageFamily@28 | |
| 2042 | FormatApplicationUserModelId@16 | |
| 2043 | GetEncryptedFileVersionExt@8 | |
| 2044 | GetPackageApplicationIds@16 | |
| 2045 | GetPackagePathByFullName@12 | |
| 2046 | GetStagedPackagePathByFullName@12 | |
| 2047 | InitializeSynchronizationBarrier@12 | |
| 2048 | InstallELAMCertificateInfo@4 | |
| 2049 | IsProcessCritical@8 | |
| 2050 | OOBEComplete@4 | |
| 2051 | ParseApplicationUserModelId@20 | |
| 2052 | PssCaptureSnapshot@16 | |
| 2053 | PssDuplicateSnapshot@20 | |
| 2054 | PssFreeSnapshot@8 | |
| 2055 | PssQuerySnapshot@16 | |
| 2056 | PssWalkMarkerCreate@8 | |
| 2057 | PssWalkMarkerFree@4 | |
| 2058 | PssWalkMarkerGetPosition@8 | |
| 2059 | PssWalkMarkerRewind@4 | |
| 2060 | PssWalkMarkerSeek@8 | |
| 2061 | PssWalkMarkerSeekToBeginning@4 | |
| 2062 | PssWalkMarkerSetPosition@8 | |
| 2063 | PssWalkMarkerTell@8 | |
| 2064 | PssWalkSnapshot@20 | |
| 2065 | QuirkGetData2Worker@8 | |
| 2066 | QuirkGetDataWorker@8 | |
| 2067 | QuirkIsEnabled2Worker@12 | |
| 2068 | QuirkIsEnabled3Worker@8 | |
| 2069 | QuirkIsEnabledForPackage2Worker@24 | |
| 2070 | QuirkIsEnabledForPackageWorker@16 | |
| 2071 | QuirkIsEnabledForProcessWorker@12 | |
| 2072 | QuirkIsEnabledWorker@4 | |
| 2073 | RegisterWaitUntilOOBECompleted@12 | |
| 2074 | SetComputerNameEx2W@12 | |
| 2075 | UnregisterWaitUntilOOBECompleted@4 | |
| 2076 | ||
| 2077 | ; This is list of symbols added in Windows 10 (Threshold / 1507) | |
| 2078 | ; CreateProcessAsUserA@44 ; MSDN says this is exported from advapi32.dll | |
| 2079 | DiscardVirtualMemory@8 | |
| 2080 | FreeMemoryJobObject@4 | |
| 2081 | GetProcessDefaultCpuSets@16 | |
| 2082 | GetSystemCpuSetInformation@20 | |
| 2083 | GetThreadSelectedCpuSets@16 | |
| 2084 | OfferVirtualMemory@12 | |
| 2085 | QueryIoRateControlInformationJobObject@16 | |
| 2086 | QueryProtectedPolicy@8 | |
| 2087 | QuirkIsEnabledForPackage3Worker@20 | |
| 2088 | QuirkIsEnabledForPackage4Worker@20 | |
| 2089 | ReclaimVirtualMemory@8 | |
| 2090 | RtlPcToFileHeader@8 | |
| 2091 | SetIoRateControlInformationJobObject@8 | |
| 2092 | SetProcessDefaultCpuSets@12 | |
| 2093 | SetProtectedPolicy@12 | |
| 2094 | SetThreadSelectedCpuSets@12 | |
| 2095 | WaitForDebugEventEx@8 | |
| 2096 | WerGetFlagsWorker@8 | |
| 2097 | WerSetFlagsWorker@4 | |
| 2098 | ||
| 2099 | ; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511) | |
| 2100 | CreateEnclave@32 | |
| 2101 | InitializeEnclave@20 | |
| 2102 | IsEnclaveTypeSupported@4 | |
| 2103 | LoadEnclaveData@36 | |
| 2104 | ||
| 2105 | ; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607) | |
| 2106 | AppPolicyGetClrCompat@8 | |
| 2107 | AppPolicyGetCreateFileAccess@8 | |
| 2108 | AppPolicyGetLifecycleManagement@8 | |
| 2109 | AppPolicyGetMediaFoundationCodecLoading@8 | |
| 2110 | AppPolicyGetProcessTerminationMethod@8 | |
| 2111 | AppPolicyGetShowDeveloperDiagnostic@8 | |
| 2112 | AppPolicyGetThreadInitializationType@8 | |
| 2113 | AppPolicyGetWindowingModel@8 | |
| 2114 | ; Wow64Transition DATA ; available only in 32-bit WoW64 version on 64-bit system | |
| 2115 | ||
| 2116 | ; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2117 | BasepInitAppCompatData@12 | |
| 2118 | GetThreadDescription@8 | |
| 2119 | SetThreadDescription@8 | |
| 2120 | WerRegisterAdditionalProcess@8 | |
| 2121 | WerRegisterCustomMetadata@8 | |
| 2122 | WerRegisterExcludedMemoryBlock@8 | |
| 2123 | WerUnregisterAdditionalProcess@4 | |
| 2124 | WerUnregisterCustomMetadata@4 | |
| 2125 | WerUnregisterExcludedMemoryBlock@4 | |
| 2126 | ||
| 2127 | ; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2128 | BasepQueryModuleChpeSettings@40 ; FIXME: Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) changed ABI to "BasepQueryModuleChpeSettings@44" | |
| 2129 | EnumSystemGeoNames@12 | |
| 2130 | GetGeoInfoEx@16 | |
| 2131 | GetUserDefaultGeoName@8 | |
| 2132 | IsWow64GuestMachineSupported@8 | |
| 2133 | IsWow64Process2@12 | |
| 2134 | ReadDirectoryChangesExW@36 | |
| 2135 | SetUserGeoName@4 | |
| 2136 | WerRegisterAppLocalDump@4 | |
| 2137 | WerUnregisterAppLocalDump@0 | |
| 2138 | ||
| 2139 | ; In Windows 10 April 2018 Update (Redstone 4 / 1803) was not added any new symbol | |
| 2140 | ||
| 2141 | ; This is list of symbols added in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2142 | ClosePseudoConsole@4 | |
| 2143 | CreatePseudoConsole@20 | |
| 2144 | GetDiskSpaceInformationA@8 | |
| 2145 | GetDiskSpaceInformationW@8 | |
| 2146 | InitializeContext2@24 | |
| 2147 | LocalFileTimeToLocalSystemTime@12 | |
| 2148 | LocalSystemTimeToLocalFileTime@12 | |
| 2149 | ResizePseudoConsole@8 | |
| 2150 | ||
| 2151 | ; In Windows 10 May 2019 Update (19H1 / 1903) was not added any new symbol | |
| 2152 | ||
| 2153 | ; In Windows 10 November 2019 Update (19H2 /1909) was not added any new symbol | |
| 2154 | ||
| 2155 | ; This is list of symbols added in Windows 10 May 2020 Update (20H1 / 2004) | |
| 2156 | ; BasepFinishPackageActivationForSxS@24 | |
| 2157 | ; BasepGetPackageActivationTokenForSxS@12 | |
| 2158 | IsUserCetAvailableInEnvironment@4 | |
| 2159 | SetProcessDynamicEHContinuationTargets@12 | |
| 2160 | ||
| 2161 | ; In Windows 10 October 2020 Update (20H2) was not added any new symbol | |
| 2162 | ||
| 2163 | ; This is list of symbols added in Windows 10 May 2021 Update (21H1) | |
| 2164 | ; CheckIsMSIXPackage@8 ; removed in Windows 11 (Sun Valley / 21H2) (WoW64 version) | |
| 2165 | SetProcessDynamicEnforcedCetCompatibleRanges@12 | |
| 2166 | ||
| 2167 | ; In Windows 10 November 2021 Update (21H2) was not added any new symbol | |
| 2168 | ||
| 2169 | ; In Windows 10 2022 Update (22H2) was not added any new symbol | |
| 2170 | ||
| 2171 | ; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version) | |
| 2172 | ActivatePackageVirtualizationContext@8 | |
| 2173 | AreShortNamesEnabled@8 | |
| 2174 | ; BasepFinishPackageActivation@28 | |
| 2175 | ; BasepGetPackageActivationTokenForFilePath@12 | |
| 2176 | ; BasepGetPackagedAppInfoForFile@16 | |
| 2177 | ; BasepReleasePackagedAppInfo@4 | |
| 2178 | CreatePackageVirtualizationContext@8 | |
| 2179 | DeactivatePackageVirtualizationContext@4 | |
| 2180 | DuplicatePackageVirtualizationContext@8 | |
| 2181 | EnableProcessOptionalXStateFeatures@8 | |
| 2182 | GetCurrentPackageVirtualizationContext@0 | |
| 2183 | GetMachineTypeAttributes@8 | |
| 2184 | GetNumaNodeProcessorMask2@16 | |
| 2185 | GetProcessDefaultCpuSetMasks@16 | |
| 2186 | GetProcessesInVirtualizationContext@12 | |
| 2187 | GetTempPath2A@8 | |
| 2188 | GetTempPath2W@8 | |
| 2189 | GetThreadEnabledXStateFeatures@0 | |
| 2190 | GetThreadSelectedCpuSetMasks@16 | |
| 2191 | QueueUserAPC2@16 | |
| 2192 | ReleasePackageVirtualizationContext@4 | |
| 2193 | SetProcessDefaultCpuSetMasks@12 | |
| 2194 | SetThreadSelectedCpuSetMasks@12 | |
| 2195 | ||
| 2196 | ; This is list of symbols added in Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) | |
| 2197 | BuildIoRingCancelRequest@20 | |
| 2198 | BuildIoRingFlushFile@24 | |
| 2199 | BuildIoRingReadFile@44 | |
| 2200 | BuildIoRingRegisterBuffers@16 | |
| 2201 | BuildIoRingRegisterFileHandles@16 | |
| 2202 | BuildIoRingWriteFile@48 | |
| 2203 | CloseIoRing@4 | |
| 2204 | CreateIoRing@24 | |
| 2205 | GetIoRingInfo@8 | |
| 2206 | IsIoRingOpSupported@8 | |
| 2207 | PopIoRingCompletion@8 | |
| 2208 | QueryIoRingCapabilities@4 | |
| 2209 | SetIoRingCompletionEvent@8 | |
| 2210 | SubmitIoRing@16 | |
| 2211 | ||
| 2212 | ; In Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version) was not added any new symbol | |
| 2213 | ||
| 2214 | ; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) | |
| 2215 | AllocConsoleWithOptions@8 | |
| 2216 | ; BackupReadEx@24 | |
| 2217 | ; BackupWriteEx@24 | |
| 2218 | ; BasepCheckPplSupport@8 | |
| 2219 | ; BasepFreeActivationTokenInfo@4 | |
| 2220 | ; BasepGetPackageActivationTokenForFilePath2@12 | |
| 2221 | ; BasepGetPackageActivationTokenForSxS2@12 | |
| 2222 | BuildIoRingReadFileScatter@40 | |
| 2223 | BuildIoRingWriteFileGather@44 | |
| 2224 | FlsGetValue2@4 | |
| 2225 | GetFileInformationByName@16 | |
| 2226 | ; LogUnexpectedCodepath@4 | |
| 2227 | ReleasePseudoConsole@4 | |
| 2228 | TlsGetValue2@4 | |
| 2229 | ||
| 2230 | ; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version) | |
| 2231 | ; BasepGetPackageActivationTokenForSxS3@16 | |
| 2232 | CreateDirectory2A@20 | |
| 2233 | CreateDirectory2W@20 | |
| 2234 | CreateFile3@20 | |
| 2235 | DeleteFile2A@8 | |
| 2236 | DeleteFile2W@8 | |
| 2237 | RemoveDirectory2A@8 | |
| 2238 | RemoveDirectory2W@8 |
lib/libc/mingw/lib32/ntdll.def+2344-1757| ... | ... | @@ -1,1013 +1,433 @@ |
| 1 | ; | |
| 2 | ; Definition file of ntdll.dll | |
| 3 | ; Automatic generated by gendef | |
| 4 | ; written by Kai Tietz 2008 | |
| 5 | ; | |
| 6 | LIBRARY "ntdll.dll" | |
| 1 | LIBRARY "NTDLL.dll" | |
| 7 | 2 | EXPORTS |
| 8 | RtlDispatchAPC@12 | |
| 9 | RtlActivateActivationContextUnsafeFast@0 | |
| 10 | RtlDeactivateActivationContextUnsafeFast@0 | |
| 11 | RtlInterlockedPushListSList@8 | |
| 12 | @RtlUlongByteSwap@4 | |
| 13 | @RtlUlonglongByteSwap@8 | |
| 14 | @RtlUshortByteSwap@4 | |
| 15 | ExpInterlockedPopEntrySListEnd@0 | |
| 16 | ExpInterlockedPopEntrySListFault@0 | |
| 17 | ExpInterlockedPopEntrySListResume@0 | |
| 18 | RtlpInterlockedPopEntrySeqSListEnd@0 | |
| 19 | RtlpInterlockedPopEntrySeqSListFault@0 | |
| 20 | RtlpInterlockedPopEntrySeqSListResume@0 | |
| 21 | A_SHAFinal@8 | |
| 22 | A_SHAInit@4 | |
| 23 | A_SHAUpdate@12 | |
| 24 | AlpcAdjustCompletionListConcurrencyCount@8 | |
| 25 | AlpcFreeCompletionListMessage@8 | |
| 26 | AlpcGetCompletionListLastMessageInformation@12 | |
| 27 | AlpcGetCompletionListMessageAttributes@8 | |
| 28 | AlpcGetHeaderSize@4 | |
| 29 | AlpcGetMessageAttribute@8 | |
| 30 | AlpcGetMessageFromCompletionList@8 | |
| 31 | AlpcGetOutstandingCompletionListMessageCount@4 | |
| 32 | AlpcInitializeMessageAttribute@16 | |
| 33 | AlpcMaxAllowedMessageLength@0 | |
| 34 | AlpcRegisterCompletionList@20 | |
| 35 | AlpcRegisterCompletionListWorkerThread@4 | |
| 36 | AlpcRundownCompletionList@4 | |
| 37 | AlpcUnregisterCompletionList@4 | |
| 38 | AlpcUnregisterCompletionListWorkerThread@4 | |
| 39 | ApiSetQueryApiSetPresence@8 | |
| 40 | ApiSetQueryApiSetPresenceEx@12 | |
| 41 | CsrAllocateCaptureBuffer@8 | |
| 3 | ||
| 4 | ; This file is a comprehensive documentation for 32-bit x86 ntdll.dll symbols. | |
| 5 | ; It covers all 3 platforms Win32s, Win9x and WinNT and contains information | |
| 6 | ; from native ntdll.dll libraries on 32-bit Windows systems and also from | |
| 7 | ; 32-bit WoW64 ntdll.dll libraries on 64-bit Windows systems. Symbols in this | |
| 8 | ; file are ordered by increasing Windows version in which they were introduced. | |
| 9 | ; First are Win32s versions, then followed by Win9x versions and then WinNT | |
| 10 | ; because logically Win32s symbols are subset of Win9x symbols which is subset | |
| 11 | ; of WinNT symbols. Comments contains additional information with exceptions. | |
| 12 | ||
| 13 | ; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1; Win9x since Windows 95; WinNT since Windows NT 3.1) | |
| 14 | DbgBreakPoint@0 | |
| 15 | DbgPrint ; cdecl | |
| 16 | DbgPrompt@12 | |
| 17 | NtCurrentTeb@0 | |
| 18 | NtQueryEaFile@36 | |
| 19 | NtQueryPerformanceCounter@8 | |
| 20 | NtSetEaFile@16 | |
| 21 | RtlCreateHeap@24 | |
| 22 | RtlEnlargedIntegerMultiply@8 | |
| 23 | RtlExtendedIntegerMultiply@12 | |
| 24 | RtlExtendedLargeIntegerDivide@16 | |
| 25 | RtlImageDirectoryEntryToData@16 | |
| 26 | RtlImageNtHeader@4 | |
| 27 | RtlLargeIntegerSubtract@16 | |
| 28 | RtlUnwind@16 | |
| 29 | RtlValidateHeap@12 ; Win32s, Win9x and Windows NT 3.1 has ABI "RtlValidateHeap@4", Windows NT 3.5 and new has ABI "RtlValidateHeap@12" | |
| 30 | ||
| 31 | ; This is list of symbols available only in Win32s (not available in Win9x and WinNT) | |
| 32 | ; RtlProcessHeap@0 | |
| 33 | ||
| 34 | ; This is list of symbols available in Win32s and Win9x but not in WinNT | |
| 35 | ; RtlExFreeHeap@12 | |
| 36 | ; RtlExReAllocateHeap@16 | |
| 37 | ; RtlExSizeHeap@12 | |
| 38 | ||
| 39 | ; This is list of symbols added in Win32s 1.15 and available in all Win9x and WinNT versions | |
| 40 | ; Note that Win32s 1.15 and all later versions merged advapi32.dll, gdi32.dll, | |
| 41 | ; kernel32.dll, ntdll.dll, user32.dll (and Win32s 1.25a and later also mpr.dll) | |
| 42 | ; libraries into one big w32scomb.dll library and made those libraries as alias | |
| 43 | ; to w32scomb.dll, which effectively means that every symbol from every library | |
| 44 | ; is available also from ntdll.dll (aliased to w32scomb.dll). Below are only | |
| 45 | ; those Win32s symbols which are available in some Win9x or WinNT version of | |
| 46 | ; ntdll.dll or logically belongs to ntdll.dll. | |
| 47 | RtlAnsiStringToUnicodeString@12 | |
| 48 | RtlDestroyHeap@4 | |
| 49 | ||
| 50 | ; This is list of symbols added in Win32s 1.15 and available only in Win32s (not available in Win9x and WinNT) | |
| 51 | ; _RtlCopyMemory@12 | |
| 52 | ; _RtlMultiByteToUnicodeN@20 ; WinNT has this symbol without leading underline | |
| 53 | ; _RtlUnicodeToMultiByteN@20 ; WinNT has this symbol without leading underline | |
| 54 | ||
| 55 | ; This is list of symbols added in Win32s 1.15 and available in all Win9x version, but not in WinNT | |
| 56 | ; RtlExAllocateHeap@12 | |
| 57 | ||
| 58 | ; This is list of symbols added in Win32s 1.15 and available in all WinNT version, but not in Win9x | |
| 59 | NtCreateSection@28 | |
| 60 | NtMapViewOfSection@40 | |
| 61 | NtOpenDirectoryObject@12 | |
| 62 | NtUnmapViewOfSection@8 | |
| 63 | RtlInitAnsiString@8 | |
| 64 | RtlInitUnicodeString@8 | |
| 65 | RtlMoveMemory@12 | |
| 66 | RtlZeroMemory@8 | |
| 67 | ||
| 68 | ; This is list of symbols added in Win32s 1.15a and available in all Win9x and WinNT versions | |
| 69 | RtlUnicodeStringToAnsiString@12 | |
| 70 | ||
| 71 | ; This is list of symbols added in Win32s 1.15a and available in all WinNT version, but not in Win9x | |
| 72 | RtlAnsiStringToUnicodeSize@4 | |
| 73 | RtlInitString@8 | |
| 74 | RtlIntegerToUnicodeString@12 | |
| 75 | RtlUnicodeStringToAnsiSize@4 | |
| 76 | RtlUnicodeStringToInteger@12 | |
| 77 | ||
| 78 | ; This is list of symbols added in Win32s 1.20 and available in all WinNT version, but not in Win9x | |
| 79 | NtClose@4 | |
| 80 | NtCreateSemaphore@20 ; Win32s has ABI "NtCreateSemaphore@36", WinNT has ABI "NtCreateSemaphore@20" | |
| 81 | NtReleaseSemaphore@12 | |
| 82 | NtWaitForSingleObject@12 | |
| 83 | RtlCreateSecurityDescriptor@8 | |
| 84 | RtlFillMemory@12 | |
| 85 | RtlSetDaclSecurityDescriptor@16 | |
| 86 | ||
| 87 | ;; This is end of Win32s symbols ;; | |
| 88 | ||
| 89 | ||
| 90 | ; This is list of symbols available in all Win9x and WinNT versions, but not available in Win32s | |
| 91 | RtlAllocateHeap@12 ; Win9x has ABI "RtlAllocateHeap@8", WinNT has ABI "RtlAllocateHeap@12" | |
| 92 | RtlConvertLongToLargeInteger@4 | |
| 93 | RtlConvertUlongToLargeInteger@4 | |
| 94 | RtlEnlargedUnsignedDivide@16 ; removed in Windows 8 | |
| 95 | RtlEnlargedUnsignedMultiply@8 | |
| 96 | RtlExtendedMagicDivide@20 | |
| 97 | RtlFreeHeap@12 ; Win9x has ABI "RtlFreeHeap@8", WinNT has ABI "RtlFreeHeap@12" | |
| 98 | RtlLargeIntegerAdd@16 | |
| 99 | RtlLargeIntegerArithmeticShift@12 | |
| 100 | RtlLargeIntegerDivide@20 | |
| 101 | RtlLargeIntegerNegate@8 | |
| 102 | RtlLargeIntegerShiftLeft@12 | |
| 103 | RtlLargeIntegerShiftRight@12 | |
| 104 | RtlMultiByteToUnicodeN@20 ; Win9x has ABI "RtlMultiByteToUnicodeN@16", WinNT has ABI "RtlMultiByteToUnicodeN@20" | |
| 105 | RtlReAllocateHeap@16 ; Win9x has ABI "RtlReAllocateHeap@12", WinNT has ABI "RtlReAllocateHeap@16" | |
| 106 | RtlSizeHeap@12 ; Win9x has ABI "RtlSizeHeap@8", WinNT has ABI "RtlSizeHeap@12" | |
| 107 | RtlUnicodeToMultiByteN@20 ; Win9x has ABI "RtlUnicodeToMultiByteN@16", WinNT has ABI "RtlUnicodeToMultiByteN@20" | |
| 108 | ||
| 109 | ; This is list of symbols available in all Win9x versions, in Windows NT 3.1, but not available in Win32s, Windows NT 3.5 and new | |
| 110 | ; RtlGetHandleValueHeap@8 ; Win9x ABI | |
| 111 | ; RtlGetHandleValueHeap@12 ; Windows NT 3.1 ABI | |
| 112 | ; RtlSetHandleValueHeap@12 ; Win9x ABI | |
| 113 | ; RtlSetHandleValueHeap@16 ; Windows NT 3.1 ABI | |
| 114 | ||
| 115 | ; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT | |
| 116 | ; RtlGrowHeap@8 | |
| 117 | ||
| 118 | ; This is list of symbols added in Windows 98, available also in all WinNT versions, but not available in Win32s | |
| 119 | NtCreateFile@44 | |
| 120 | RtlNtStatusToDosError@4 | |
| 121 | ||
| 122 | ; This is list of symbols added in Windows 98, but not available in Win32s and WinNT | |
| 123 | ; IoUnregisterDeviceInterface@4 | |
| 124 | ; NtGetDevnodeFromFileHandle@8 | |
| 125 | ||
| 126 | ; This is list of symbols added in Windows 98 and also since Windows NT 3.51, but not available in Win32s | |
| 127 | NtSetSystemPowerState@12 | |
| 128 | ||
| 129 | ; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s | |
| 130 | NtInitiatePowerAction@16 | |
| 131 | NtPowerInformation@20 | |
| 132 | NtRequestWakeupLatency@4 ; removed in Windows 7 | |
| 133 | ||
| 134 | ;; This is end of Win9x symbols ;; | |
| 135 | ||
| 136 | ||
| 137 | ; This is list of symbols available since Windows NT 3.1 | |
| 138 | CsrAllocateCaptureBuffer@8 ; Windows NT 3.1-4.0 has ABI "CsrAllocateCaptureBuffer@12", Windows 2000 and new has ABI "CsrAllocateCaptureBuffer@8" | |
| 139 | ; CsrAllocateCapturePointer@12 ; removed in Windows 2000 | |
| 42 | 140 | CsrAllocateMessagePointer@12 |
| 43 | 141 | CsrCaptureMessageBuffer@16 |
| 44 | CsrCaptureMessageMultiUnicodeStringsInPlace@12 | |
| 45 | 142 | CsrCaptureMessageString@20 |
| 46 | 143 | CsrCaptureTimeout@8 |
| 47 | 144 | CsrClientCallServer@16 |
| 48 | CsrClientConnectToServer@20 | |
| 145 | CsrClientConnectToServer@20 ; Windows NT 3.1-2000 has ABI "CsrClientConnectToServer@24", Windows XP and new has ABI "CsrClientConnectToServer@20" | |
| 146 | ; CsrClientMaxMessage@0 ; removed in Windows NT 4.0 | |
| 147 | ; CsrClientSendMessage@0 ; removed in Windows NT 4.0 | |
| 148 | ; CsrClientThreadConnect@0 ; removed in Windows NT 4.0 | |
| 149 | ; CsrDumpProfile@0 ; removed in Windows NT 3.5 | |
| 49 | 150 | CsrFreeCaptureBuffer@4 |
| 50 | CsrGetProcessId@0 | |
| 51 | 151 | CsrIdentifyAlertableThread@0 |
| 52 | CsrNewThread@0 | |
| 53 | CsrProbeForRead@12 | |
| 54 | CsrProbeForWrite@12 | |
| 152 | CsrNewThread@0 ; removed in Windows Vista SP1 | |
| 153 | CsrProbeForRead@12 ; removed in Windows Vista | |
| 154 | CsrProbeForWrite@12 ; removed in Windows Vista | |
| 55 | 155 | CsrSetPriorityClass@8 |
| 56 | CsrVerifyRegion@8 | |
| 57 | DbgBreakPoint@0 | |
| 58 | DbgPrint | |
| 59 | DbgPrintEx | |
| 60 | DbgPrintReturnControlC | |
| 61 | DbgPrompt@12 | |
| 62 | DbgQueryDebugFilterState@8 | |
| 63 | DbgSetDebugFilterState@12 | |
| 64 | DbgSsHandleKmApiMsg@8 | |
| 65 | DbgSsInitialize@16 | |
| 156 | ; CsrStartProfile@0 ; removed in Windows NT 3.5 | |
| 157 | ; CsrStopDumpProfile@0 ; removed in Windows NT 3.5 | |
| 158 | ; CsrStopProfile@0 ; removed in Windows NT 3.5 | |
| 159 | ; CsrpProcessCallbackRequest@4 ; removed in Windows NT 4.0 | |
| 160 | DbgSsHandleKmApiMsg@8 ; removed in Windows XP | |
| 161 | DbgSsInitialize@16 ; removed in Windows XP | |
| 66 | 162 | DbgUiConnectToDbg@0 |
| 67 | 163 | DbgUiContinue@8 |
| 68 | DbgUiConvertStateChangeStructure@8 | |
| 69 | DbgUiConvertStateChangeStructureEx@8 | |
| 70 | DbgUiDebugActiveProcess@4 | |
| 71 | DbgUiGetThreadDebugObject@0 | |
| 72 | DbgUiIssueRemoteBreakin@4 | |
| 73 | DbgUiRemoteBreakin@4 | |
| 74 | DbgUiSetThreadDebugObject@4 | |
| 75 | DbgUiStopDebugging@4 | |
| 76 | 164 | DbgUiWaitStateChange@8 |
| 77 | 165 | DbgUserBreakPoint@0 |
| 78 | EtwCheckCoverage@4 | |
| 79 | EtwCreateTraceInstanceId@8 | |
| 80 | EtwDeliverDataBlock@4 | |
| 81 | EtwEnumerateProcessRegGuids@12 | |
| 82 | EtwEventActivityIdControl@8 | |
| 83 | EtwEventEnabled@12 | |
| 84 | EtwEventProviderEnabled@20 | |
| 85 | EtwEventRegister@16 | |
| 86 | EtwEventSetInformation@20 | |
| 87 | EtwEventUnregister@8 | |
| 88 | EtwEventWrite@20 | |
| 89 | EtwEventWriteEndScenario@20 | |
| 90 | EtwEventWriteEx@40 | |
| 91 | EtwEventWriteFull@32 | |
| 92 | EtwEventWriteNoRegistration@16 | |
| 93 | EtwEventWriteStartScenario@20 | |
| 94 | EtwEventWriteString@24 | |
| 95 | EtwEventWriteTransfer@28 | |
| 96 | EtwGetTraceEnableFlags@8 | |
| 97 | EtwGetTraceEnableLevel@8 | |
| 98 | EtwGetTraceLoggerHandle@4 | |
| 99 | EtwLogTraceEvent@12 | |
| 100 | EtwNotificationRegister@20 | |
| 101 | EtwNotificationUnregister@12 | |
| 102 | EtwProcessPrivateLoggerRequest@4 | |
| 103 | EtwRegisterSecurityProvider@0 | |
| 104 | EtwRegisterTraceGuidsA@32 | |
| 105 | EtwRegisterTraceGuidsW@32 | |
| 106 | EtwReplyNotification@4 | |
| 107 | EtwSendNotification@20 | |
| 108 | EtwSetMark@16 | |
| 109 | EtwTraceEventInstance@20 | |
| 110 | EtwTraceMessage | |
| 111 | EtwTraceMessageVa@24 | |
| 112 | EtwUnregisterTraceGuids@8 | |
| 113 | EtwWriteUMSecurityEvent@16 | |
| 114 | EtwpCreateEtwThread@8 | |
| 115 | EtwpGetCpuSpeed@8 | |
| 116 | ;EtwpNotificationThread | |
| 117 | EvtIntReportAuthzEventAndSourceAsync@44 | |
| 118 | EvtIntReportEventAndSourceAsync@44 | |
| 119 | KiFastSystemCall@0 | |
| 120 | KiFastSystemCallRet@0 | |
| 121 | KiIntSystemCall@0 | |
| 122 | KiRaiseUserExceptionDispatcher@0 | |
| 123 | KiUserApcDispatcher@20 | |
| 124 | KiUserCallbackDispatcher@12 | |
| 166 | KiUserApcDispatcher@20 ; really stdcall @20, gendef detects it incorrectly | |
| 125 | 167 | KiUserExceptionDispatcher@8 |
| 126 | 168 | LdrAccessResource@16 |
| 127 | LdrAddDllDirectory@8 | |
| 128 | LdrAddLoadAsDataTable@16; Check!!! gendef says @20 | |
| 129 | LdrAddRefDll@8 | |
| 130 | LdrAlternateResourcesEnabled@0 | |
| 131 | LdrAppxHandleIntegrityFailure@4 | |
| 132 | LdrCallEnclave@12 | |
| 133 | LdrControlFlowGuardEnforced@0 | |
| 134 | LdrCreateEnclave@36 | |
| 135 | LdrDeleteEnclave@4 | |
| 136 | LdrDisableThreadCalloutsForDll@4 | |
| 137 | LdrEnumResources@20 | |
| 138 | LdrEnumerateLoadedModules@12 | |
| 139 | LdrFastFailInLoaderCallout@0 | |
| 140 | 169 | LdrFindEntryForAddress@8 |
| 141 | 170 | LdrFindResourceDirectory_U@16 |
| 142 | LdrFindResourceEx_U@20 | |
| 143 | 171 | LdrFindResource_U@16 |
| 144 | LdrFlushAlternateResourceModules@0 | |
| 145 | LdrGetDllDirectory@4 | |
| 146 | LdrGetDllFullName@8 | |
| 147 | 172 | LdrGetDllHandle@16 |
| 148 | LdrGetDllHandleByMapping@8 | |
| 149 | LdrGetDllHandleByName@12 | |
| 150 | LdrGetDllHandleEx@20 | |
| 151 | LdrGetDllPath@16 | |
| 152 | LdrGetFailureData@0 | |
| 153 | LdrGetFileNameFromLoadAsDataTable@8 | |
| 154 | 173 | LdrGetProcedureAddress@16 |
| 155 | LdrGetProcedureAddressEx@20 | |
| 156 | LdrGetProcedureAddressForCaller@24 | |
| 157 | LdrHotPatchRoutine@0 | |
| 158 | LdrInitShimEngineDynamic@4 | |
| 159 | LdrInitializeEnclave@20 | |
| 160 | LdrInitializeThunk@16 | |
| 161 | LdrIsModuleSxsRedirected@4 | |
| 162 | LdrLoadAlternateResourceModule@16 | |
| 163 | LdrLoadAlternateResourceModuleEx@20 | |
| 174 | LdrInitializeThunk@16 ; really stdcall @16, gendef detects it incorrectly | |
| 164 | 175 | LdrLoadDll@16 |
| 165 | LdrLoadEnclaveModule@12 | |
| 166 | LdrLockLoaderLock@12 | |
| 167 | LdrOpenImageFileOptionsKey@12 | |
| 168 | LdrParentInterlockedPopEntrySList@0 | |
| 169 | LdrParentRtlInitializeNtUserPfn@0 | |
| 170 | LdrParentRtlResetNtUserPfn@0 | |
| 171 | LdrParentRtlRetrieveNtUserPfn@0 | |
| 172 | 176 | LdrProcessRelocationBlock@16 |
| 173 | LdrProcessRelocationBlockEx@20 | |
| 174 | 177 | LdrQueryImageFileExecutionOptions@24 |
| 175 | LdrQueryImageFileExecutionOptionsEx@28 | |
| 176 | LdrQueryImageFileKeyOption@24 | |
| 177 | LdrQueryModuleServiceTags@12 | |
| 178 | LdrQueryOptionalDelayLoadedAPI@16 | |
| 179 | 178 | LdrQueryProcessModuleInformation@12 |
| 180 | LdrRegisterDllNotification@16 | |
| 181 | LdrRemoveDllDirectory@4 | |
| 182 | LdrRemoveLoadAsDataTable@16 | |
| 183 | LdrResFindResource@36 | |
| 184 | LdrResFindResourceDirectory@28 | |
| 185 | LdrResGetRCConfig@20 | |
| 186 | LdrResRelease@12 | |
| 187 | LdrResSearchResource@32 | |
| 188 | LdrResolveDelayLoadedAPI@24 | |
| 189 | LdrResolveDelayLoadsFromDll@12 | |
| 190 | LdrRscIsTypeExist@16 | |
| 191 | LdrSetAppCompatDllRedirectionCallback@12 | |
| 192 | LdrSetDefaultDllDirectories@4 | |
| 193 | LdrSetDllDirectory@4 | |
| 194 | LdrSetDllManifestProber@4 | |
| 195 | LdrSetImplicitPathOptions@8 | |
| 196 | LdrSetMUICacheType@4 | |
| 197 | 179 | LdrShutdownProcess@0 |
| 198 | 180 | LdrShutdownThread@0 |
| 199 | LdrStandardizeSystemPath@4 | |
| 200 | LdrSystemDllInitBlock@0 | |
| 201 | LdrUnloadAlternateResourceModule@4 | |
| 202 | LdrUnloadAlternateResourceModuleEx@8 | |
| 203 | 181 | LdrUnloadDll@4 |
| 204 | LdrUnlockLoaderLock@8 | |
| 205 | LdrUnregisterDllNotification@4 | |
| 206 | LdrUpdatePackageSearchPath@4 | |
| 207 | LdrVerifyImageMatchesChecksum@16 | |
| 208 | LdrVerifyImageMatchesChecksumEx@8 | |
| 209 | LdrpChildNtdll@0 | |
| 210 | LdrpResGetMappingSize@16 | |
| 211 | LdrpResGetRCConfig@20 | |
| 212 | LdrpResGetResourceDirectory@20 | |
| 213 | LdrWx86FormatVirtualImage@12 | |
| 214 | MD4Final@4 | |
| 215 | MD4Init@4 | |
| 216 | MD4Update@12 | |
| 217 | MD5Final@4 | |
| 218 | MD5Init@4 | |
| 219 | MD5Update@12 | |
| 220 | NlsAnsiCodePage DATA | |
| 221 | NlsMbCodePageTag DATA | |
| 222 | NlsMbOemCodePageTag DATA | |
| 182 | LdrVerifyImageMatchesChecksum@16 ; Windows NT 3.1-3.51 has ABI "LdrVerifyImageMatchesChecksum@4", Windows NT 4.0 and new has ABI "LdrVerifyImageMatchesChecksum@16" | |
| 223 | 183 | NtAcceptConnectPort@24 |
| 224 | 184 | NtAccessCheck@32 |
| 225 | 185 | NtAccessCheckAndAuditAlarm@44 |
| 226 | NtAccessCheckByType@44 | |
| 227 | NtAccessCheckByTypeAndAuditAlarm@64 | |
| 228 | NtAccessCheckByTypeResultList@44 | |
| 229 | NtAccessCheckByTypeResultListAndAuditAlarm@64 | |
| 230 | NtAccessCheckByTypeResultListAndAuditAlarmByHandle@68 | |
| 231 | NtAcquireCrossVmMutant@8 | |
| 232 | NtAcquireProcessActivityReference@12 | |
| 233 | NtAcquireCMFViewOwnership@12 | |
| 234 | NtAddAtom@12 | |
| 235 | NtAddAtomEx@16 | |
| 236 | NtAddBootEntry@8 | |
| 237 | NtAddDriverEntry@8 | |
| 238 | 186 | NtAdjustGroupsToken@24 |
| 239 | 187 | NtAdjustPrivilegesToken@24 |
| 240 | NtAdjustTokenClaimsAndDeviceGroups@64 | |
| 241 | 188 | NtAlertResumeThread@8 |
| 242 | 189 | NtAlertThread@4 |
| 243 | NtAlertThreadByThreadId@4 | |
| 244 | 190 | NtAllocateLocallyUniqueId@4 |
| 245 | NtAllocateReserveObject@12 | |
| 246 | NtAllocateUserPhysicalPages@12 | |
| 247 | NtAllocateUserPhysicalPagesEx@20 | |
| 248 | NtAllocateUuids@16 | |
| 249 | 191 | NtAllocateVirtualMemory@24 |
| 250 | NtAllocateVirtualMemoryEx@28 | |
| 251 | NtAlpcAcceptConnectPort@36 | |
| 252 | NtAlpcCancelMessage@12 | |
| 253 | NtAlpcConnectPort@44 | |
| 254 | NtAlpcConnectPortEx@44 | |
| 255 | NtAlpcCreatePort@12 | |
| 256 | NtAlpcCreatePortSection@24 | |
| 257 | NtAlpcCreateResourceReserve@16 | |
| 258 | NtAlpcCreateSectionView@12 | |
| 259 | NtAlpcCreateSecurityContext@12 | |
| 260 | NtAlpcDeletePortSection@12 | |
| 261 | NtAlpcDeleteResourceReserve@12 | |
| 262 | NtAlpcDeleteSectionView@12 | |
| 263 | NtAlpcDeleteSecurityContext@12 | |
| 264 | NtAlpcDisconnectPort@8 | |
| 265 | NtAlpcImpersonateClientContainerOfPort@12 | |
| 266 | NtAlpcImpersonateClientOfPort@12 | |
| 267 | NtAlpcOpenSenderProcess@24 | |
| 268 | NtAlpcOpenSenderThread@24 | |
| 269 | NtAlpcQueryInformation@20 | |
| 270 | NtAlpcQueryInformationMessage@24 | |
| 271 | NtAlpcRevokeSecurityContext@12 | |
| 272 | NtAlpcSendWaitReceivePort@32 | |
| 273 | NtAlpcSetInformation@16 | |
| 274 | NtApphelpCacheControl@8 | |
| 275 | NtAreMappedFilesTheSame@8 | |
| 276 | NtAssignProcessToJobObject@8 | |
| 277 | NtAssociateWaitCompletionPacket@32 | |
| 278 | NtCallEnclave@16 | |
| 279 | NtCallbackReturn@12 | |
| 280 | NtCancelDeviceWakeupRequest@4 | |
| 281 | 192 | NtCancelIoFile@8 |
| 282 | NtCancelIoFileEx@12 | |
| 283 | NtCancelSynchronousIoFile@12 | |
| 284 | NtCancelTimer2@8 | |
| 285 | 193 | NtCancelTimer@8 |
| 286 | NtCancelWaitCompletionPacket@8 | |
| 287 | NtChangeProcessState@24 | |
| 288 | NtChangeThreadState@24 | |
| 289 | NtClearEvent@4 | |
| 290 | NtClose@4 | |
| 291 | 194 | NtCloseObjectAuditAlarm@12 |
| 292 | NtCommitComplete@8 | |
| 293 | NtCommitEnlistment@8 | |
| 294 | NtCommitRegistryTransaction@8 | |
| 295 | NtCommitTransaction@8 | |
| 296 | NtCompactKeys@8 | |
| 297 | NtCompareObjects@8 | |
| 298 | NtCompareSigningLevels@8 | |
| 299 | NtCompareTokens@12 | |
| 300 | 195 | NtCompleteConnectPort@4 |
| 301 | NtCompressKey@4 | |
| 302 | 196 | NtConnectPort@32 |
| 303 | 197 | NtContinue@8 |
| 304 | NtContinueEx@8 | |
| 305 | NtConvertBetweenAuxiliaryCounterAndPerformanceCounter@16 | |
| 306 | NtCreateCrossVmEvent@24 | |
| 307 | NtCreateCrossVmMutant@24 | |
| 308 | NtCreateDebugObject@16 | |
| 309 | 198 | NtCreateDirectoryObject@12 |
| 310 | NtCreateDirectoryObjectEx@20 | |
| 311 | NtCreateEnclave@36 | |
| 312 | NtCreateEnlistment@32 | |
| 313 | 199 | NtCreateEvent@20 |
| 314 | 200 | NtCreateEventPair@12 |
| 315 | NtCreateFile@44 | |
| 316 | NtCreateIRTimer@12 | |
| 317 | NtCreateIoCompletion@16 | |
| 318 | NtCreateIoRing@20 | |
| 319 | NtCreateJobObject@12 | |
| 320 | NtCreateJobSet@12 | |
| 321 | 201 | NtCreateKey@28 |
| 322 | NtCreateKeyTransacted@32 | |
| 323 | NtCreateKeyedEvent@16 | |
| 324 | NtCreateLowBoxToken@36 | |
| 325 | 202 | NtCreateMailslotFile@32 |
| 326 | 203 | NtCreateMutant@16 |
| 327 | 204 | NtCreateNamedPipeFile@56 |
| 328 | 205 | NtCreatePagingFile@16 |
| 329 | NtCreatePartition@16 | |
| 330 | 206 | NtCreatePort@20 |
| 331 | NtCreatePrivateNamespace@16 | |
| 332 | 207 | NtCreateProcess@32 |
| 333 | NtCreateProcessEx@36 | |
| 334 | NtCreateProcessStateChange@20 | |
| 335 | NtCreateProfile@36 | |
| 336 | NtCreateProfileEx@40 | |
| 337 | NtCreateRegistryTransaction@16 | |
| 338 | NtCreateResourceManager@28 | |
| 339 | NtCreateSection@28 | |
| 340 | NtCreateSectionEx@36 | |
| 341 | NtCreateSemaphore@20 | |
| 208 | NtCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "NtCreateProfile@28", Windows NT 3.51 and new has ABI "NtCreateProfile@36" | |
| 342 | 209 | NtCreateSymbolicLinkObject@16 |
| 343 | 210 | NtCreateThread@32 |
| 344 | NtCreateThreadEx@44 | |
| 345 | NtCreateThreadStateChange@20 | |
| 346 | NtCreateTimer2@20 | |
| 347 | NtCreateTimer@16 | |
| 211 | NtCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "NtCreateTimer@12", Windows NT 4.0 and new has ABI "NtCreateTimer@16" | |
| 348 | 212 | NtCreateToken@52 |
| 349 | NtCreateTokenEx@68 | |
| 350 | NtCreateTransaction@40 | |
| 351 | NtCreateTransactionManager@24 | |
| 352 | NtCreateUserProcess@44 | |
| 353 | NtCreateWaitCompletionPacket@12 | |
| 354 | NtCreateWaitablePort@20 | |
| 355 | NtCreateWnfStateName@28 | |
| 356 | NtCreateWorkerFactory@40 | |
| 357 | NtCurrentTeb@0 | |
| 358 | NtDebugActiveProcess@8 | |
| 359 | NtDebugContinue@12 | |
| 360 | 213 | NtDelayExecution@8 |
| 361 | NtDeleteAtom@4 | |
| 362 | NtDeleteBootEntry@4 | |
| 363 | NtDeleteDriverEntry@4 | |
| 364 | NtDeleteFile@4 | |
| 365 | 214 | NtDeleteKey@4 |
| 366 | NtDeleteObjectAuditAlarm@12 | |
| 367 | NtDeletePrivateNamespace@4 | |
| 368 | 215 | NtDeleteValueKey@8 |
| 369 | NtDeleteWnfStateData@8 | |
| 370 | NtDeleteWnfStateName@4 | |
| 371 | 216 | NtDeviceIoControlFile@40 |
| 372 | NtDirectGraphicsCall@20 | |
| 373 | NtDisableLastKnownGood@0 | |
| 374 | 217 | NtDisplayString@4 |
| 375 | NtDrawText@4 | |
| 376 | 218 | NtDuplicateObject@28 |
| 377 | 219 | NtDuplicateToken@24 |
| 378 | NtEnableLastKnownGood@0 | |
| 379 | NtEnumerateBootEntries@8 | |
| 380 | NtEnumerateDriverEntries@8 | |
| 381 | 220 | NtEnumerateKey@24 |
| 382 | NtEnumerateSystemEnvironmentValuesEx@12 | |
| 383 | NtEnumerateTransactionObject@20 | |
| 384 | 221 | NtEnumerateValueKey@24 |
| 385 | 222 | NtExtendSection@8 |
| 386 | NtFilterBootOption@20 | |
| 387 | NtFilterToken@24 | |
| 388 | NtFilterTokenEx@56 | |
| 389 | NtFindAtom@12 | |
| 390 | 223 | NtFlushBuffersFile@8 |
| 391 | NtFlushBuffersFileEx@20 | |
| 392 | NtFlushInstallUILanguage@8 | |
| 393 | 224 | NtFlushInstructionCache@12 |
| 394 | 225 | NtFlushKey@4 |
| 395 | NtFlushProcessWriteBuffers@0 | |
| 396 | 226 | NtFlushVirtualMemory@16 |
| 397 | 227 | NtFlushWriteBuffer@0 |
| 398 | NtFreeUserPhysicalPages@12 | |
| 399 | 228 | NtFreeVirtualMemory@16 |
| 400 | NtFreezeRegistry@4 | |
| 401 | NtFreezeTransactions@8 | |
| 402 | 229 | NtFsControlFile@40 |
| 403 | NtGetCachedSigningLevel@24 | |
| 404 | NtGetCompleteWnfStateSubscription@24 | |
| 405 | 230 | NtGetContextThread@8 |
| 406 | NtGetCurrentProcessorNumber@0 | |
| 407 | NtGetCurrentProcessorNumberEx@4 | |
| 408 | NtGetDevicePowerState@8 | |
| 409 | NtGetMUIRegistryInfo@12 | |
| 410 | NtGetNextProcess@20 | |
| 411 | NtGetNextThread@24 | |
| 412 | NtGetNlsSectionPtr@20 | |
| 413 | NtGetNotificationResourceManager@28 | |
| 414 | NtGetPlugPlayEvent@16 | |
| 415 | NtGetTickCount@0 | |
| 416 | NtGetWriteWatch@28 | |
| 417 | NtImpersonateAnonymousToken@4 | |
| 231 | ; NtGetTickCount@0 ; removed in Windows XP | |
| 418 | 232 | NtImpersonateClientOfPort@8 |
| 419 | 233 | NtImpersonateThread@12 |
| 420 | NtInitializeEnclave@20 | |
| 421 | NtInitializeNlsFiles@16 ;Check!!! gendef says 12 | |
| 422 | 234 | NtInitializeRegistry@4 |
| 423 | NtInitiatePowerAction@16 | |
| 424 | NtIsProcessInJob@8 | |
| 425 | NtIsSystemResumeAutomatic@0 | |
| 426 | NtIsUILanguageComitted@0 | |
| 235 | ; NtInitializeVDM@0 ; removed in Windows NT 3.5 | |
| 427 | 236 | NtListenPort@8 |
| 428 | 237 | NtLoadDriver@4 |
| 429 | NtLoadEnclaveData@36 | |
| 430 | NtLoadKey2@12 | |
| 431 | NtLoadKey3@32 | |
| 432 | 238 | NtLoadKey@8 |
| 433 | NtLoadKeyEx@32 | |
| 434 | 239 | NtLockFile@40 |
| 435 | NtLockProductActivationKeys@8 | |
| 436 | NtLockRegistryKey@4 | |
| 437 | 240 | NtLockVirtualMemory@16 |
| 438 | NtMakePermanentObject@4 | |
| 439 | 241 | NtMakeTemporaryObject@4 |
| 440 | NtManageHotPatch@16 | |
| 441 | NtManagePartition@20 | |
| 442 | NtMapCMFModule@24 | |
| 443 | NtMapUserPhysicalPages@12 | |
| 444 | NtMapUserPhysicalPagesScatter@12 | |
| 445 | NtMapViewOfSection@40 | |
| 446 | NtMapViewOfSectionEx@36 | |
| 447 | NtModifyBootEntry@4 | |
| 448 | NtModifyDriverEntry@4 | |
| 449 | 242 | NtNotifyChangeDirectoryFile@36 |
| 450 | NtNotifyChangeDirectoryFileEx@40 | |
| 451 | 243 | NtNotifyChangeKey@40 |
| 452 | NtNotifyChangeMultipleKeys@48 | |
| 453 | NtNotifyChangeSession@32 | |
| 454 | NtOpenDirectoryObject@12 | |
| 455 | NtOpenEnlistment@20 | |
| 456 | 244 | NtOpenEvent@12 |
| 457 | 245 | NtOpenEventPair@12 |
| 458 | 246 | NtOpenFile@24 |
| 459 | NtOpenIoCompletion@12 | |
| 460 | NtOpenJobObject@12 | |
| 461 | 247 | NtOpenKey@12 |
| 462 | NtOpenKeyEx@16 | |
| 463 | NtOpenKeyTransacted@16 | |
| 464 | NtOpenKeyTransactedEx@20 | |
| 465 | NtOpenKeyedEvent@12 | |
| 466 | 248 | NtOpenMutant@12 |
| 467 | 249 | NtOpenObjectAuditAlarm@48 |
| 468 | NtOpenPartition@12 | |
| 469 | NtOpenPrivateNamespace@16 | |
| 470 | 250 | NtOpenProcess@16 |
| 471 | 251 | NtOpenProcessToken@12 |
| 472 | NtOpenProcessTokenEx@16 | |
| 473 | NtOpenRegistryTransaction@12 | |
| 474 | NtOpenResourceManager@20 | |
| 475 | 252 | NtOpenSection@12 |
| 476 | 253 | NtOpenSemaphore@12 |
| 477 | NtOpenSession@12 | |
| 478 | 254 | NtOpenSymbolicLinkObject@12 |
| 479 | 255 | NtOpenThread@16 |
| 480 | 256 | NtOpenThreadToken@16 |
| 481 | NtOpenThreadTokenEx@20 | |
| 482 | 257 | NtOpenTimer@12 |
| 483 | NtOpenTransaction@20 | |
| 484 | NtOpenTransactionManager@24 | |
| 485 | NtPlugPlayControl@12 | |
| 486 | NtPowerInformation@20 | |
| 487 | NtPrePrepareComplete@8 | |
| 488 | NtPrePrepareEnlistment@8 | |
| 489 | NtPrepareComplete@8 | |
| 490 | NtPrepareEnlistment@8 | |
| 491 | 258 | NtPrivilegeCheck@12 |
| 492 | 259 | NtPrivilegeObjectAuditAlarm@24 |
| 493 | 260 | NtPrivilegedServiceAuditAlarm@20 |
| 494 | NtPropagationComplete@16 | |
| 495 | NtPropagationFailed@12 | |
| 496 | 261 | NtProtectVirtualMemory@20 |
| 497 | NtPssCaptureVaSpaceBulk@20 | |
| 498 | 262 | NtPulseEvent@8 |
| 499 | NtQueryAttributesFile@8 | |
| 500 | NtQueryAuxiliaryCounterFrequency@4 | |
| 501 | NtQueryBootEntryOrder@8 | |
| 502 | NtQueryBootOptions@8 | |
| 503 | NtQueryDebugFilterState@8 | |
| 504 | 263 | NtQueryDefaultLocale@8 |
| 505 | NtQueryDefaultUILanguage@4 | |
| 506 | 264 | NtQueryDirectoryFile@44 |
| 507 | NtQueryDirectoryFileEx@40 | |
| 508 | 265 | NtQueryDirectoryObject@28 |
| 509 | NtQueryDriverEntryOrder@8 | |
| 510 | NtQueryEaFile@36 | |
| 511 | 266 | NtQueryEvent@20 |
| 512 | NtQueryFullAttributesFile@8 | |
| 513 | NtQueryInformationAtom@20 | |
| 514 | NtQueryInformationByName@20 | |
| 515 | NtQueryInformationEnlistment@20 | |
| 516 | 267 | NtQueryInformationFile@20 |
| 517 | NtQueryInformationJobObject@20 | |
| 518 | 268 | NtQueryInformationPort@20 |
| 519 | 269 | NtQueryInformationProcess@20 |
| 520 | NtQueryInformationResourceManager@20 | |
| 521 | 270 | NtQueryInformationThread@20 |
| 522 | 271 | NtQueryInformationToken@20 |
| 523 | NtQueryInformationTransaction@20 | |
| 524 | NtQueryInformationTransactionManager@20 | |
| 525 | NtQueryInformationWorkerFactory@20 | |
| 526 | NtQueryInstallUILanguage@4 | |
| 527 | NtQueryIntervalProfile@8 | |
| 528 | NtQueryIoCompletion@20 | |
| 529 | NtQueryIoRingCapabilities@8 | |
| 272 | NtQueryIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtQueryIntervalProfile@4", Windows NT 3.51 and new has ABI "NtQueryIntervalProfile@8" | |
| 530 | 273 | NtQueryKey@20 |
| 531 | NtQueryLicenseValue@20 | |
| 532 | NtQueryMultipleValueKey@24 | |
| 533 | 274 | NtQueryMutant@20 |
| 534 | 275 | NtQueryObject@20 |
| 535 | NtQueryOpenSubKeys@8 | |
| 536 | NtQueryOpenSubKeysEx@16 | |
| 537 | NtQueryPerformanceCounter@8 | |
| 538 | NtQueryPortInformationProcess@0 | |
| 539 | NtQueryQuotaInformationFile@36 | |
| 540 | 276 | NtQuerySection@20 |
| 541 | NtQuerySecurityAttributesToken@24 | |
| 542 | 277 | NtQuerySecurityObject@20 |
| 543 | NtQuerySecurityPolicy@24 | |
| 544 | 278 | NtQuerySemaphore@20 |
| 545 | 279 | NtQuerySymbolicLinkObject@12 |
| 546 | 280 | NtQuerySystemEnvironmentValue@16 |
| 547 | NtQuerySystemEnvironmentValueEx@20 | |
| 548 | 281 | NtQuerySystemInformation@16 |
| 549 | NtQuerySystemInformationEx@24 | |
| 550 | 282 | NtQuerySystemTime@4 |
| 551 | 283 | NtQueryTimer@20 |
| 552 | NtQueryTimerResolution@12 | |
| 553 | 284 | NtQueryValueKey@24 |
| 554 | 285 | NtQueryVirtualMemory@24 |
| 555 | 286 | NtQueryVolumeInformationFile@20 |
| 556 | NtQueryWnfStateData@24 | |
| 557 | NtQueryWnfStateNameInformation@20 | |
| 558 | NtQueueApcThread@20 | |
| 559 | NtQueueApcThreadEx2@28 | |
| 560 | NtQueueApcThreadEx@24 | |
| 561 | 287 | NtRaiseException@12 |
| 562 | 288 | NtRaiseHardError@24 |
| 563 | 289 | NtReadFile@36 |
| 564 | NtReadFileScatter@36 | |
| 565 | NtReadOnlyEnlistment@8 | |
| 566 | 290 | NtReadRequestData@24 |
| 567 | 291 | NtReadVirtualMemory@20 |
| 568 | NtReadVirtualMemoryEx@24 | |
| 569 | NtRecoverEnlistment@8 | |
| 570 | NtRecoverResourceManager@4 | |
| 571 | NtRecoverTransactionManager@4 | |
| 572 | NtRegisterProtocolAddressInformation@20 | |
| 573 | 292 | NtRegisterThreadTerminatePort@4 |
| 574 | NtReleaseCMFViewOwnership@0 | |
| 575 | NtReleaseKeyedEvent@16 | |
| 576 | 293 | NtReleaseMutant@8 |
| 577 | NtReleaseSemaphore@12 | |
| 578 | NtReleaseWorkerFactoryWorker@4 | |
| 579 | NtRemoveIoCompletion@20 | |
| 580 | NtRemoveIoCompletionEx@24 | |
| 581 | NtRemoveProcessDebug@8 | |
| 582 | NtRenameKey@8 | |
| 583 | NtRenameTransactionManager@8 | |
| 294 | ; NtReleaseProcessMutant@0 ; removed in Windows NT 4.0 | |
| 295 | ; NtRenameValueKey@16 ; removed in Windows NT 3.5 | |
| 584 | 296 | NtReplaceKey@12 |
| 585 | NtReplacePartitionUnit@12 | |
| 586 | 297 | NtReplyPort@8 |
| 587 | 298 | NtReplyWaitReceivePort@16 |
| 588 | NtReplyWaitReceivePortEx@20 | |
| 589 | 299 | NtReplyWaitReplyPort@8 |
| 590 | NtRequestDeviceWakeup@4 | |
| 591 | 300 | NtRequestPort@8 |
| 592 | 301 | NtRequestWaitReplyPort@12 |
| 593 | NtRequestWakeupLatency@4 | |
| 594 | 302 | NtResetEvent@8 |
| 595 | NtResetWriteWatch@12 | |
| 596 | 303 | NtRestoreKey@12 |
| 597 | NtResumeProcess@4 | |
| 598 | 304 | NtResumeThread@8 |
| 599 | NtRevertContainerImpersonation@0 | |
| 600 | NtRollbackComplete@8 | |
| 601 | NtRollbackEnlistment@8 | |
| 602 | NtRollbackRegistryTransaction@8 | |
| 603 | NtRollbackTransaction@8 | |
| 604 | NtRollforwardTransactionManager@8 | |
| 605 | 305 | NtSaveKey@8 |
| 606 | NtSaveKeyEx@12 | |
| 607 | NtSaveMergedKeys@12 | |
| 608 | NtSecureConnectPort@36 | |
| 609 | NtSerializeBoot@0 | |
| 610 | NtSetBootEntryOrder@8 | |
| 611 | NtSetBootOptions@8 | |
| 612 | NtSetCachedSigningLevel2@24 | |
| 613 | NtSetCachedSigningLevel@20 | |
| 614 | 306 | NtSetContextThread@8 |
| 615 | NtSetDebugFilterState@12 | |
| 616 | 307 | NtSetDefaultHardErrorPort@4 |
| 617 | 308 | NtSetDefaultLocale@8 |
| 618 | NtSetDefaultUILanguage@4 | |
| 619 | NtSetDriverEntryOrder@8 | |
| 620 | NtSetEaFile@16 | |
| 621 | 309 | NtSetEvent@8 |
| 622 | NtSetEventBoostPriority@4 | |
| 623 | 310 | NtSetHighEventPair@4 |
| 624 | 311 | NtSetHighWaitLowEventPair@4 |
| 625 | NtSetIRTimer@8 | |
| 626 | NtSetInformationDebugObject@20 | |
| 627 | NtSetInformationEnlistment@16 | |
| 312 | ; NtSetHighWaitLowThread@0 ; removed in Windows 2000 | |
| 628 | 313 | NtSetInformationFile@20 |
| 629 | NtSetInformationIoRing@16 | |
| 630 | NtSetInformationJobObject@16 | |
| 631 | 314 | NtSetInformationKey@16 |
| 632 | NtSetInformationObject@16 | |
| 633 | 315 | NtSetInformationProcess@16 |
| 634 | NtSetInformationResourceManager@16 | |
| 635 | NtSetInformationSymbolicLink@16 | |
| 636 | 316 | NtSetInformationThread@16 |
| 637 | 317 | NtSetInformationToken@16 |
| 638 | NtSetInformationTransaction@16 | |
| 639 | NtSetInformationTransactionManager@16 | |
| 640 | NtSetInformationVirtualMemory@24 | |
| 641 | NtSetInformationWorkerFactory@16 | |
| 642 | NtSetIntervalProfile@8 | |
| 643 | NtSetIoCompletion@20 | |
| 644 | NtSetIoCompletionEx@24 | |
| 318 | NtSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtSetIntervalProfile@4", Windows NT 3.51 and new has ABI "NtSetIntervalProfile@8" | |
| 645 | 319 | NtSetLdtEntries@24 |
| 646 | 320 | NtSetLowEventPair@4 |
| 647 | 321 | NtSetLowWaitHighEventPair@4 |
| 648 | NtSetQuotaInformationFile@16 | |
| 322 | ; NtSetLowWaitHighThread@0 ; removed in Windows 2000 | |
| 649 | 323 | NtSetSecurityObject@12 |
| 650 | 324 | NtSetSystemEnvironmentValue@8 |
| 651 | NtSetSystemEnvironmentValueEx@20 | |
| 652 | NtSetSystemInformation@12 | |
| 653 | NtSetSystemPowerState@12 | |
| 654 | 325 | NtSetSystemTime@8 |
| 655 | NtSetThreadExecutionState@8 | |
| 656 | NtSetTimer2@16 | |
| 657 | NtSetTimer@28 | |
| 658 | NtSetTimerEx@16 | |
| 659 | NtSetTimerResolution@12 | |
| 660 | NtSetUuidSeed@4 | |
| 326 | NtSetTimer@28 ; Windows NT 3.1-3.5 has ABI "NtSetTimer@20", Windows NT 3.51 has ABI "NtSetTimer@24", Windows NT 4.0 and new has ABI NtSetTimer@28 | |
| 661 | 327 | NtSetValueKey@24 |
| 662 | 328 | NtSetVolumeInformationFile@20 |
| 663 | NtSetWnfProcessNotificationEvent@4 | |
| 664 | 329 | NtShutdownSystem@4 |
| 665 | NtShutdownWorkerFactory@8 | |
| 666 | NtSignalAndWaitForSingleObject@16 | |
| 667 | NtSinglePhaseReject@8 | |
| 668 | 330 | NtStartProfile@4 |
| 669 | 331 | NtStopProfile@4 |
| 670 | NtSubmitIoRing@16 | |
| 671 | NtSubscribeWnfStateChange@16 | |
| 672 | NtSuspendProcess@4 | |
| 673 | 332 | NtSuspendThread@8 |
| 674 | 333 | NtSystemDebugControl@24 |
| 675 | NtTerminateEnclave@8 | |
| 676 | NtTerminateJobObject@8 | |
| 677 | 334 | NtTerminateProcess@8 |
| 678 | 335 | NtTerminateThread@8 |
| 679 | 336 | NtTestAlert@0 |
| 680 | NtThawRegistry@0 | |
| 681 | NtThawTransactions@0 | |
| 682 | NtTraceControl@24 | |
| 683 | NtTraceEvent@16 | |
| 684 | NtTranslateFilePath@16 | |
| 685 | NtUmsThreadYield@4 | |
| 686 | 337 | NtUnloadDriver@4 |
| 687 | NtUnloadKey2@8 | |
| 688 | 338 | NtUnloadKey@4 |
| 689 | NtUnloadKeyEx@8 | |
| 690 | 339 | NtUnlockFile@20 |
| 691 | 340 | NtUnlockVirtualMemory@16 |
| 692 | NtUnmapViewOfSection@8 | |
| 693 | NtUnmapViewOfSectionEx@12 | |
| 694 | NtUnsubscribeWnfStateChange@4 | |
| 695 | NtUpdateWnfStateData@28 | |
| 696 | NtVdmControl@8 | |
| 697 | NtWaitForAlertByThreadId@8 | |
| 698 | NtWaitForDebugEvent@16 | |
| 699 | NtWaitForKeyedEvent@16 | |
| 700 | NtWaitForMultipleObjects32@20 | |
| 341 | NtVdmControl@8 ; Windows NT 3.1 has ABI "NtVdmControl@16", Windows NT 3.5 and new has ABI "NtVdmControl@8" | |
| 342 | ; NtVdmStartExecution@0 ; removed in Windows NT 3.5 | |
| 701 | 343 | NtWaitForMultipleObjects@20 |
| 702 | NtWaitForSingleObject@12 | |
| 703 | NtWaitForWorkViaWorkerFactory@8 | |
| 344 | ; NtWaitForProcessMutant@0 ; removed in Windows NT 4.0 | |
| 704 | 345 | NtWaitHighEventPair@4 |
| 705 | 346 | NtWaitLowEventPair@4 |
| 706 | NtWorkerFactoryWorkerReady@4 | |
| 707 | NtWow64CallFunction64@28 | |
| 708 | NtWow64CsrAllocateCaptureBuffer@8 | |
| 709 | NtWow64CsrAllocateMessagePointer@12 | |
| 710 | NtWow64CsrCaptureMessageBuffer@16 | |
| 711 | NtWow64CsrCaptureMessageString@20 | |
| 712 | NtWow64CsrClientCallServer@16 | |
| 713 | NtWow64CsrClientConnectToServer@20 | |
| 714 | NtWow64CsrFreeCaptureBuffer@4 | |
| 715 | NtWow64CsrGetProcessId@0 | |
| 716 | NtWow64CsrIdentifyAlertableThread@0 | |
| 717 | NtWow64CsrVerifyRegion@8 | |
| 718 | NtWow64DebuggerCall@20 | |
| 719 | NtWow64GetCurrentProcessorNumberEx@4 | |
| 720 | NtWow64GetNativeSystemInformation@16 | |
| 721 | NtWow64InterlockedPopEntrySList@4 | |
| 722 | NtWow64QueryInformationProcess64@20 | |
| 723 | NtWow64QueryVirtualMemory64@32 | |
| 724 | NtWow64ReadVirtualMemory64@28 | |
| 725 | NtWow64WriteVirtualMemory64@28 | |
| 726 | 347 | NtWriteFile@36 |
| 727 | NtWriteFileGather@36 | |
| 728 | 348 | NtWriteRequestData@24 |
| 729 | 349 | NtWriteVirtualMemory@20 |
| 730 | NtYieldExecution@0 | |
| 731 | ; Not sure, but we assume here standard DefWindowProc arguments | |
| 732 | NtdllDefWindowProc_A@16 | |
| 733 | NtdllDefWindowProc_W@16 | |
| 734 | ; Not sure, but we assume here standard DefDlgProc arguments | |
| 735 | NtdllDialogWndProc_A@16 | |
| 736 | NtdllDialogWndProc_W@16 | |
| 737 | 350 | PfxFindPrefix@8 |
| 738 | 351 | PfxInitialize@4 |
| 739 | 352 | PfxInsertPrefix@12 |
| 740 | 353 | PfxRemovePrefix@8 |
| 741 | PssNtCaptureSnapshot@16 | |
| 742 | PssNtDuplicateSnapshot@20 | |
| 743 | PssNtFreeRemoteSnapshot@8 | |
| 744 | PssNtFreeSnapshot@4 | |
| 745 | PssNtFreeWalkMarker@4 | |
| 746 | PssNtQuerySnapshot@16 | |
| 747 | PssNtValidateDescriptor@8 | |
| 748 | PssNtWalkSnapshot@20 | |
| 749 | 354 | RtlAbortRXact@4 |
| 750 | 355 | RtlAbsoluteToSelfRelativeSD@12 |
| 751 | 356 | RtlAcquirePebLock@0 |
| 752 | RtlAcquirePrivilege@16 | |
| 753 | RtlAcquireReleaseSRWLockExclusive@4 | |
| 754 | 357 | RtlAcquireResourceExclusive@8 |
| 755 | 358 | RtlAcquireResourceShared@8 |
| 756 | RtlAcquireSRWLockExclusive@4 | |
| 757 | RtlAcquireSRWLockShared@4 | |
| 758 | RtlActivateActivationContext@12 | |
| 759 | RtlActivateActivationContextEx@16 | |
| 760 | 359 | RtlAddAccessAllowedAce@16 |
| 761 | RtlAddAccessAllowedAceEx@20 | |
| 762 | RtlAddAccessAllowedObjectAce@28 | |
| 763 | 360 | RtlAddAccessDeniedAce@16 |
| 764 | RtlAddAccessDeniedAceEx@20 | |
| 765 | RtlAddAccessDeniedObjectAce@28 | |
| 766 | RtlAddAccessFilterAce@32 | |
| 767 | 361 | RtlAddAce@20 |
| 768 | 362 | RtlAddActionToRXact@24 |
| 769 | RtlAddAtomToAtomTable@12 | |
| 770 | 363 | RtlAddAttributeActionToRXact@32 |
| 771 | 364 | RtlAddAuditAccessAce@24 |
| 772 | RtlAddAuditAccessAceEx@28 | |
| 773 | RtlAddAuditAccessObjectAce@36 | |
| 774 | RtlAddCompoundAce@24 | |
| 775 | RtlAddIntegrityLabelToBoundaryDescriptor@8 | |
| 776 | RtlAddMandatoryAce@24 | |
| 777 | RtlAddProcessTrustLabelAce@24 | |
| 778 | RtlAddRefActivationContext@4 | |
| 779 | RtlAddRange@36 | |
| 780 | RtlAddRefMemoryStream@4 | |
| 781 | RtlAddResourceAttributeAce@28 | |
| 782 | RtlAddSIDToBoundaryDescriptor@8 | |
| 783 | RtlAddScopedPolicyIDAce@20 | |
| 784 | RtlAddVectoredContinueHandler@8 | |
| 785 | RtlAddVectoredExceptionHandler@8 | |
| 786 | RtlAddressInSectionTable@12 | |
| 787 | 365 | RtlAdjustPrivilege@16 |
| 788 | RtlAllocateActivationContextStack@4 | |
| 789 | 366 | RtlAllocateAndInitializeSid@44 |
| 790 | RtlAllocateAndInitializeSidEx@16 | |
| 791 | RtlAllocateHandle@8 | |
| 792 | RtlAllocateHeap@12 | |
| 793 | RtlAllocateMemoryBlockLookaside@12 | |
| 794 | RtlAllocateMemoryZone@12 | |
| 795 | RtlAllocateWnfSerializationGroup@0 | |
| 367 | ; RtlAnalyzeProfile@0 ; removed in Windows NT 3.5 | |
| 796 | 368 | RtlAnsiCharToUnicodeChar@4 |
| 797 | RtlAnsiStringToUnicodeSize@4 | |
| 798 | RtlAnsiStringToUnicodeString@12 | |
| 799 | 369 | RtlAppendAsciizToString@8 |
| 800 | RtlAppendPathElement@12 | |
| 801 | 370 | RtlAppendStringToString@8 |
| 802 | 371 | RtlAppendUnicodeStringToString@8 |
| 803 | 372 | RtlAppendUnicodeToString@8 |
| 804 | RtlApplicationVerifierStop@40 | |
| 805 | 373 | RtlApplyRXact@4 |
| 806 | 374 | RtlApplyRXactNoFlush@4 |
| 807 | RtlAppxIsFileOwnedByTrustedInstaller@8 | |
| 808 | 375 | RtlAreAllAccessesGranted@8 |
| 809 | 376 | RtlAreAnyAccessesGranted@8 |
| 810 | 377 | RtlAreBitsClear@12 |
| 811 | 378 | RtlAreBitsSet@12 |
| 812 | RtlAreLongPathsEnabled@0 | |
| 813 | 379 | RtlAssert@16 |
| 814 | RtlAvlInsertNodeEx@16 | |
| 815 | RtlAvlRemoveNode@8 | |
| 816 | RtlBarrier@8 | |
| 817 | RtlBarrierForDelete@8 | |
| 818 | RtlCallbackLpcClient@12 | |
| 819 | RtlCancelTimer@8 | |
| 820 | RtlCanonicalizeDomainName@12 | |
| 821 | RtlCapabilityCheck@12 | |
| 822 | RtlCapabilityCheckForSingleSessionSku@12 | |
| 823 | RtlCaptureContext@4 | |
| 824 | 380 | RtlCaptureStackBackTrace@16 |
| 825 | RtlCaptureStackContext@12 | |
| 826 | 381 | RtlCharToInteger@12 |
| 827 | RtlCheckBootStatusIntegrity@8 | |
| 828 | RtlCheckForOrphanedCriticalSections@4 | |
| 829 | RtlCheckPortableOperatingSystem@4 | |
| 830 | 382 | RtlCheckRegistryKey@8 |
| 831 | RtlCheckSandboxedToken@8 | |
| 832 | RtlCheckSystemBootStatusIntegrity@4 | |
| 833 | RtlCheckTokenCapability@12 | |
| 834 | RtlCheckTokenMembership@12 | |
| 835 | RtlCheckTokenMembershipEx@16 | |
| 836 | RtlCleanUpTEBLangLists@0 | |
| 837 | 383 | RtlClearAllBits@4 |
| 838 | RtlClearBit@8 | |
| 839 | 384 | RtlClearBits@12 |
| 840 | RtlClearThreadWorkOnBehalfTicket@0 | |
| 841 | RtlCloneMemoryStream@8 | |
| 842 | RtlCloneUserProcess@20 | |
| 843 | RtlCmDecodeMemIoResource@8 | |
| 844 | RtlCmEncodeMemIoResource@24 | |
| 845 | RtlCommitDebugInfo@8 | |
| 846 | RtlCommitMemoryStream@8 | |
| 847 | 385 | RtlCompactHeap@8 |
| 848 | RtlCompareAltitudes@8 | |
| 849 | RtlCompareExchangePointerMapping@16 | |
| 850 | RtlCompareExchangePropertyStore@16 | |
| 851 | 386 | RtlCompareMemory@12 |
| 852 | 387 | RtlCompareMemoryUlong@12 |
| 853 | 388 | RtlCompareString@12 |
| 854 | 389 | RtlCompareUnicodeString@12 |
| 855 | RtlCompareUnicodeStrings@20 | |
| 856 | RtlCompressBuffer@32 | |
| 857 | RtlComputeCrc32@12 | |
| 858 | RtlComputeImportTableHash@12 | |
| 859 | RtlComputePrivatizedDllName_U@12 | |
| 860 | RtlConnectToSm@16 | |
| 861 | 390 | RtlConsoleMultiByteToUnicodeN@24 |
| 862 | RtlConstructCrossVmEventPath@12 | |
| 863 | RtlConstructCrossVmMutexPath@12 | |
| 864 | RtlContractHashTable@4 | |
| 865 | RtlConvertDeviceFamilyInfoToString@16 | |
| 866 | 391 | RtlConvertExclusiveToShared@4 |
| 867 | RtlConvertLCIDToString@20 | |
| 868 | RtlConvertLongToLargeInteger@4 | |
| 869 | RtlConvertSRWLockExclusiveToShared@4 | |
| 870 | 392 | RtlConvertSharedToExclusive@4 |
| 871 | 393 | RtlConvertSidToUnicodeString@12 |
| 872 | RtlConvertToAutoInheritSecurityObject@24 | |
| 873 | RtlConvertUiListToApiList@12 | |
| 874 | RtlConvertUlongToLargeInteger@4 | |
| 875 | RtlCopyBitMap@12 | |
| 876 | RtlCopyContext@12 | |
| 877 | RtlCopyExtendedContext@12 | |
| 394 | RtlConvertUiListToApiList@12 ; removed in Windows 8.1 | |
| 878 | 395 | RtlCopyLuid@8 |
| 879 | 396 | RtlCopyLuidAndAttributesArray@12 |
| 880 | RtlCopyMappedMemory@12 | |
| 881 | RtlCopyMemoryStreamTo@24 | |
| 882 | RtlCopyOutOfProcessMemoryStreamTo@24 | |
| 883 | RtlCopyRangeList@8 | |
| 884 | 397 | RtlCopySecurityDescriptor@8 |
| 885 | 398 | RtlCopySid@12 |
| 886 | 399 | RtlCopySidAndAttributesArray@28 |
| 887 | 400 | RtlCopyString@8 |
| 888 | 401 | RtlCopyUnicodeString@8 |
| 889 | RtlCrc32@12 | |
| 890 | RtlCrc64@16 | |
| 891 | 402 | RtlCreateAcl@12 |
| 892 | RtlCreateActivationContext@24 | |
| 893 | 403 | RtlCreateAndSetSD@20 |
| 894 | RtlCreateAtomTable@8 | |
| 895 | RtlCreateBootStatusDataFile@4 | |
| 896 | RtlCreateBoundaryDescriptor@8 | |
| 897 | 404 | RtlCreateEnvironment@8 |
| 898 | RtlCreateEnvironmentEx@12 | |
| 899 | RtlCreateHashTable@12 | |
| 900 | RtlCreateHashTableEx@16 | |
| 901 | RtlCreateHeap@24 | |
| 902 | RtlCreateLpcServer@24 | |
| 903 | RtlCreateMemoryBlockLookaside@20 | |
| 904 | RtlCreateMemoryZone@12 | |
| 905 | 405 | RtlCreateProcessParameters@40 |
| 906 | RtlCreateProcessParametersEx@44 | |
| 907 | RtlCreateProcessParametersWithTemplate@12 | |
| 908 | RtlCreateProcessReflection@24 | |
| 909 | RtlCreateQueryDebugBuffer@8 | |
| 910 | 406 | RtlCreateRegistryKey@8 |
| 911 | RtlCreateSecurityDescriptor@8 | |
| 912 | RtlCreateServiceSid@12 | |
| 913 | RtlCreateSystemVolumeInformationFolder@4 | |
| 914 | RtlCreateTagHeap@16 | |
| 915 | RtlCreateTimer@28 | |
| 916 | RtlCreateTimerQueue@4 | |
| 917 | 407 | RtlCreateUnicodeString@8 |
| 918 | 408 | RtlCreateUnicodeStringFromAsciiz@8 |
| 919 | 409 | RtlCreateUserProcess@40 |
| 920 | RtlCreateUserProcessEx@20 | |
| 921 | 410 | RtlCreateUserSecurityObject@28 |
| 922 | RtlCreateUserStack@24 | |
| 923 | 411 | RtlCreateUserThread@40 |
| 924 | RtlCreateVirtualAccountSid@16 | |
| 925 | RtlCultureNameToLCID@8 | |
| 926 | 412 | RtlCustomCPToUnicodeN@24 |
| 927 | RtlCutoverTimeToSystemTime@16 | |
| 928 | RtlDeCommitDebugInfo@12 | |
| 929 | 413 | RtlDeNormalizeProcessParams@4 |
| 930 | RtlDeactivateActivationContext@8 | |
| 931 | RtlDebugPrintTimes@0 | |
| 932 | RtlDecodePointer@4 | |
| 933 | RtlDecodeRemotePointer@12 | |
| 934 | RtlDecodeSystemPointer@4 | |
| 935 | RtlDecompressBuffer@24 | |
| 936 | RtlDecompressBufferEx@28 | |
| 937 | RtlDecompressFragment@32 | |
| 938 | RtlDefaultNpAcl@4 | |
| 939 | RtlDelayExecution@8 | |
| 940 | 414 | RtlDelete@4 |
| 941 | 415 | RtlDeleteAce@8 |
| 942 | RtlDeleteAtomFromAtomTable@8 | |
| 943 | RtlDeleteBarrier@4 | |
| 944 | RtlDeleteBoundaryDescriptor@4 | |
| 945 | 416 | RtlDeleteCriticalSection@4 |
| 946 | 417 | RtlDeleteElementGenericTable@8 |
| 947 | RtlDeleteElementGenericTableAvl@8 | |
| 948 | RtlDeleteElementGenericTableAvlEx@8 | |
| 949 | RtlDeleteHashTable@4 | |
| 950 | RtlDeleteNoSplay@8 | |
| 951 | RtlDeleteOwnersRanges@8 | |
| 952 | RtlDeleteRange@24 | |
| 953 | 418 | RtlDeleteRegistryValue@12 |
| 954 | 419 | RtlDeleteResource@4 |
| 955 | 420 | RtlDeleteSecurityObject@4 |
| 956 | RtlDeleteTimer@12 | |
| 957 | RtlDeleteTimerQueue@4 | |
| 958 | RtlDeleteTimerQueueEx@8 | |
| 959 | RtlDeregisterSecureMemoryCacheCallback@4 | |
| 960 | RtlDeregisterWait@4 | |
| 961 | RtlDeregisterWaitEx@8 | |
| 962 | RtlDeriveCapabilitySidsFromName@12 | |
| 963 | RtlDestroyAtomTable@4 | |
| 964 | 421 | RtlDestroyEnvironment@4 |
| 965 | RtlDestroyHandleTable@4 | |
| 966 | RtlDestroyHeap@4 | |
| 967 | RtlDestroyMemoryBlockLookaside@4 | |
| 968 | RtlDestroyMemoryZone@4 | |
| 969 | 422 | RtlDestroyProcessParameters@4 |
| 970 | RtlDestroyQueryDebugBuffer@4 | |
| 971 | RtlDetectHeapLeaks@0 | |
| 972 | 423 | RtlDetermineDosPathNameType_U@4 |
| 973 | RtlDisableThreadProfiling@4 | |
| 974 | RtlDllShutdownInProgress@0 | |
| 975 | RtlDnsHostNameToComputerName@12 | |
| 976 | 424 | RtlDoesFileExists_U@4 |
| 977 | RtlDoesNameContainWildCards@4 | |
| 978 | RtlDosApplyFileIsolationRedirection_Ustr@36 | |
| 979 | RtlDosLongPathNameToNtPathName_U_WithStatus@16 | |
| 980 | RtlDosLongPathNameToRelativeNtPathName_U_WithStatus@16 | |
| 981 | 425 | RtlDosPathNameToNtPathName_U@16 |
| 982 | RtlDosPathNameToNtPathName_U_WithStatus@16 | |
| 983 | RtlDosPathNameToRelativeNtPathName_U@16 | |
| 984 | RtlDosPathNameToRelativeNtPathName_U_WithStatus@16 | |
| 985 | 426 | RtlDosSearchPath_U@24 |
| 986 | RtlDosSearchPath_Ustr@36 | |
| 987 | RtlDowncaseUnicodeChar@4 | |
| 988 | RtlDowncaseUnicodeString@12 | |
| 989 | 427 | RtlDumpResource@4 |
| 990 | RtlDuplicateUnicodeString@12 | |
| 991 | RtlEmptyAtomTable@8 | |
| 992 | RtlEnableEarlyCriticalSectionEventCreation@0 | |
| 993 | RtlEnableThreadProfiling@20 | |
| 994 | RtlEncodePointer@4 | |
| 995 | RtlEncodeRemotePointer@12 | |
| 996 | RtlEncodeSystemPointer@4 | |
| 997 | RtlEndEnumerationHashTable@8 | |
| 998 | RtlEndStrongEnumerationHashTable@8 | |
| 999 | RtlEndWeakEnumerationHashTable@8 | |
| 1000 | RtlEnlargedIntegerMultiply@8 | |
| 1001 | RtlEnlargedUnsignedDivide@16 | |
| 1002 | RtlEnlargedUnsignedMultiply@8 | |
| 1003 | 428 | RtlEnterCriticalSection@4 |
| 1004 | RtlEnumProcessHeaps@8 | |
| 1005 | RtlEnumerateEntryHashTable@8 | |
| 1006 | 429 | RtlEnumerateGenericTable@8 |
| 1007 | RtlEnumerateGenericTableAvl@8 | |
| 1008 | RtlEnumerateGenericTableLikeADirectory@28 | |
| 1009 | 430 | RtlEnumerateGenericTableWithoutSplaying@8 |
| 1010 | RtlEnumerateGenericTableWithoutSplayingAvl@8 | |
| 1011 | 431 | RtlEqualComputerName@8 |
| 1012 | 432 | RtlEqualDomainName@8 |
| 1013 | 433 | RtlEqualLuid@8 |
| ... | ... | @@ -1015,600 +435,141 @@ RtlEqualPrefixSid@8 |
| 1015 | 435 | RtlEqualSid@8 |
| 1016 | 436 | RtlEqualString@12 |
| 1017 | 437 | RtlEqualUnicodeString@12 |
| 1018 | RtlEqualWnfChangeStamps@8 | |
| 1019 | 438 | RtlEraseUnicodeString@4 |
| 1020 | RtlEthernetAddressToStringA@8 | |
| 1021 | RtlEthernetAddressToStringW@8 | |
| 1022 | RtlEthernetStringToAddressA@12 | |
| 1023 | RtlEthernetStringToAddressW@12 | |
| 1024 | RtlExitUserProcess@4 | |
| 1025 | RtlExitUserThread@4 ; Not sure, but we assume @4 | |
| 1026 | RtlExpandEnvironmentStrings@24 | |
| 439 | ; RtlExpandEnvironmentStrings@16 ; removed in Windows NT 3.5 | |
| 1027 | 440 | RtlExpandEnvironmentStrings_U@16 |
| 1028 | RtlExpandHashTable@4 | |
| 1029 | RtlExtendCorrelationVector@4 | |
| 1030 | RtlExtendMemoryBlockLookaside@8 | |
| 1031 | RtlExtendMemoryZone@8 | |
| 1032 | RtlExtendedIntegerMultiply@12 | |
| 1033 | RtlExtendedLargeIntegerDivide@16 | |
| 1034 | RtlExtendedMagicDivide@20 | |
| 1035 | RtlExtractBitMap@16 | |
| 1036 | RtlExtendHeap@16 | |
| 1037 | RtlFillMemory@12 | |
| 1038 | 441 | RtlFillMemoryUlong@12 |
| 1039 | RtlFillMemoryUlonglong@16 | |
| 1040 | RtlFinalReleaseOutOfProcessMemoryStream@4 | |
| 1041 | RtlFindAceByType@12 | |
| 1042 | RtlFindActivationContextSectionGuid@20 | |
| 1043 | RtlFindActivationContextSectionString@20 | |
| 1044 | RtlFindCharInUnicodeString@16 | |
| 1045 | 442 | RtlFindClearBits@12 |
| 1046 | 443 | RtlFindClearBitsAndSet@12 |
| 1047 | RtlFindClearRuns@16 | |
| 1048 | RtlFindClosestEncodableLength@12 | |
| 1049 | RtlFindExportedRoutineByName@8 | |
| 1050 | RtlFindLastBackwardRunClear@12 | |
| 1051 | RtlFindLeastSignificantBit@8 | |
| 1052 | 444 | RtlFindLongestRunClear@8 |
| 1053 | RtlFindLongestRunSet@8 | |
| 445 | RtlFindLongestRunSet@8 ; removed in Windows 2000 | |
| 1054 | 446 | RtlFindMessage@20 |
| 1055 | RtlFindMostSignificantBit@8 | |
| 1056 | RtlFindNextForwardRunClear@12 | |
| 1057 | RtlFindRange@48 | |
| 1058 | 447 | RtlFindSetBits@12 |
| 1059 | 448 | RtlFindSetBitsAndClear@12 |
| 1060 | RtlFindUnicodeSubstring@12 | |
| 1061 | RtlFirstEntrySList@4 | |
| 1062 | 449 | RtlFirstFreeAce@8 |
| 1063 | RtlFlsAlloc@8 | |
| 1064 | RtlFlsFree@4 | |
| 1065 | RtlFlsGetValue@8 | |
| 1066 | RtlFlsSetValue@8 | |
| 1067 | RtlFlushHeaps@0 | |
| 1068 | RtlFlushSecureMemoryCache@8 | |
| 1069 | RtlFormatCurrentUserKeyPath@4 | |
| 1070 | 450 | RtlFormatMessage@36 |
| 1071 | RtlFormatMessageEx@40 | |
| 1072 | RtlFreeActivationContextStack@4 | |
| 1073 | 451 | RtlFreeAnsiString@4 |
| 1074 | RtlFreeHandle@8 | |
| 1075 | RtlFreeHeap@12 | |
| 1076 | RtlFreeMemoryBlockLookaside@8 | |
| 1077 | 452 | RtlFreeOemString@4 |
| 1078 | 453 | RtlFreeSid@4 |
| 1079 | RtlFreeThreadActivationContextStack@0 | |
| 1080 | RtlFreeUTF8String@4 | |
| 1081 | 454 | RtlFreeUnicodeString@4 |
| 1082 | RtlFreeUserStack@4 | |
| 1083 | RtlFreeUserThreadStack@8 | |
| 1084 | RtlGUIDFromString@8 | |
| 1085 | RtlGenerate8dot3Name@16 | |
| 455 | RtlGenerate8dot3Name@16 ; Windows NT 3.1 has ABI "RtlGenerate8dot3Name@12", Windows NT 3.5 and new has ABI "RtlGenerate8dot3Name@16" | |
| 1086 | 456 | RtlGetAce@12 |
| 1087 | RtlGetActiveActivationContext@4 | |
| 1088 | RtlGetActiveConsoleId@0 | |
| 1089 | RtlGetAppContainerNamedObjectPath@16 | |
| 1090 | RtlGetAppContainerParent@8 | |
| 1091 | RtlGetAppContainerSidType@8 | |
| 1092 | 457 | RtlGetCallersAddress@8 |
| 1093 | RtlGetCompressionWorkSpaceSize@12 | |
| 1094 | RtlGetConsoleSessionForegroundProcessId@0 | |
| 1095 | 458 | RtlGetControlSecurityDescriptor@12 |
| 1096 | RtlGetCriticalSectionRecursionCount@4 | |
| 1097 | 459 | RtlGetCurrentDirectory_U@8 |
| 1098 | RtlGetCurrentPeb@0 | |
| 1099 | RtlGetCurrentProcessorNumber@0 | |
| 1100 | RtlGetCurrentProcessorNumberEx@4 | |
| 1101 | RtlGetCurrentServiceSessionId@0 | |
| 1102 | RtlGetCurrentTransaction@0 | |
| 1103 | 460 | RtlGetDaclSecurityDescriptor@16 |
| 1104 | RtlGetDeviceFamilyInfoEnum@12 | |
| 1105 | 461 | RtlGetElementGenericTable@8 |
| 1106 | RtlGetElementGenericTableAvl@8 | |
| 1107 | RtlGetEnabledExtendedFeatures@8 | |
| 1108 | RtlGetExePath@8 | |
| 1109 | RtlGetExtendedContextLength2@16 | |
| 1110 | RtlGetExtendedContextLength@8 | |
| 1111 | RtlGetExtendedFeaturesMask@4 | |
| 1112 | RtlGetFileMUIPath@28 | |
| 1113 | RtlGetFirstRange@12 | |
| 1114 | RtlGetFrame@0 | |
| 1115 | 462 | RtlGetFullPathName_U@16 |
| 1116 | RtlGetFullPathName_UEx@20 | |
| 1117 | RtlGetFullPathName_UstrEx@32 | |
| 1118 | 463 | RtlGetGroupSecurityDescriptor@12 |
| 1119 | RtlGetImageFileMachines@8 | |
| 1120 | RtlGetIntegerAtom@8 | |
| 1121 | RtlGetInterruptTimePrecise@4 | |
| 1122 | RtlGetLastNtStatus@0 | |
| 1123 | RtlGetLastWin32Error@0 | |
| 1124 | RtlGetLengthWithoutLastFullDosOrNtPathElement@12 | |
| 1125 | RtlGetLengthWithoutTrailingPathSeperators@12 | |
| 1126 | RtlGetLocaleFileMappingAddress@12 | |
| 1127 | RtlGetLongestNtPathLength@0 | |
| 1128 | RtlGetMultiTimePrecise@12 | |
| 1129 | RtlGetNativeSystemInformation@16 | |
| 1130 | RtlGetNextRange@12 | |
| 1131 | RtlGetNextEntryHashTable@8 | |
| 464 | ; RtlGetHeapUserValue@4 ; removed in Windows NT 3.5 | |
| 1132 | 465 | RtlGetNtGlobalFlags@0 |
| 1133 | 466 | RtlGetNtProductType@4 |
| 1134 | RtlGetNtSystemRoot@0 | |
| 1135 | RtlGetNtVersionNumbers@12 | |
| 1136 | 467 | RtlGetOwnerSecurityDescriptor@12 |
| 1137 | RtlGetParentLocaleName@16 | |
| 1138 | RtlGetPersistedStateLocation@28 | |
| 1139 | RtlGetProcessHeaps@8 | |
| 1140 | RtlGetProcessPreferredUILanguages@16 | |
| 1141 | RtlGetProductInfo@20 | |
| 1142 | RtlGetReturnAddressHijackTarget@0 | |
| 1143 | 468 | RtlGetSaclSecurityDescriptor@16 |
| 1144 | RtlGetSearchPath@4 | |
| 1145 | RtlGetSecurityDescriptorRMControl@8 | |
| 1146 | RtlGetSessionProperties@8 | |
| 1147 | RtlGetSetBootStatusData@24 | |
| 1148 | RtlGetSuiteMask@0 | |
| 1149 | RtlGetSystemBootStatus@16 | |
| 1150 | RtlGetSystemBootStatusEx@12 | |
| 1151 | RtlGetSystemGlobalData@12 | |
| 1152 | RtlGetSystemPreferredUILanguages@20 | |
| 1153 | RtlGetSystemTimeAndBias@12 | |
| 1154 | RtlGetSystemTimePrecise@0 | |
| 1155 | RtlGetThreadErrorMode@0 | |
| 1156 | RtlGetThreadLangIdByIndex@16 | |
| 1157 | RtlGetThreadPreferredUILanguages@16 | |
| 1158 | RtlGetThreadWorkOnBehalfTicket@8 | |
| 1159 | RtlGetTokenNamedObjectPath@12 | |
| 1160 | RtlGetUILanguageInfo@20 | |
| 1161 | RtlGetUnloadEventTrace@0 | |
| 1162 | RtlGetUnloadEventTraceEx@12 | |
| 1163 | RtlGetUserInfoHeap@20 | |
| 1164 | RtlGetUserPreferredUILanguages@20 | |
| 1165 | RtlGetVersion@4 | |
| 1166 | RtlGuardCheckLongJumpTarget@12 | |
| 1167 | RtlHashUnicodeString@16 | |
| 1168 | RtlHeapTrkInitialize@4 | |
| 1169 | 469 | RtlIdentifierAuthoritySid@4 |
| 1170 | RtlIdnToAscii@20 | |
| 1171 | RtlIdnToNameprepUnicode@20 | |
| 1172 | RtlIdnToUnicode@20 | |
| 1173 | RtlImageDirectoryEntryToData@16 | |
| 1174 | RtlImageNtHeader@4 | |
| 1175 | RtlImageNtHeaderEx@20 | |
| 1176 | RtlImageRvaToSection@12 | |
| 1177 | RtlImageRvaToVa@16 | |
| 1178 | RtlImpersonateLpcClient@8 | |
| 1179 | 470 | RtlImpersonateSelf@4 |
| 1180 | RtlImpersonateSelfEx@12 | |
| 1181 | RtlIncrementCorrelationVector@4 | |
| 1182 | RtlInitAnsiString@8 | |
| 1183 | RtlInitAnsiStringEx@8 | |
| 1184 | RtlInitBarrier@12 | |
| 1185 | 471 | RtlInitCodePageTable@8 |
| 1186 | RtlInitEnumerationHashTable@8 | |
| 1187 | RtlInitMemoryStream@4 | |
| 1188 | 472 | RtlInitNlsTables@16 |
| 1189 | RtlInitOutOfProcessMemoryStream@4 | |
| 1190 | RtlInitString@8 | |
| 1191 | RtlInitStringEx@8 | |
| 1192 | RtlInitStrongEnumerationHashTable@8 | |
| 1193 | RtlInitUTF8String@8 | |
| 1194 | RtlInitUTF8StringEx@8 | |
| 1195 | RtlInitUnicodeString@8 | |
| 1196 | RtlInitUnicodeStringEx@8 | |
| 1197 | RtlInitWeakEnumerationHashTable@8 | |
| 1198 | RtlInitializeAtomPackage@4 | |
| 1199 | 473 | RtlInitializeBitMap@12 |
| 1200 | RtlInitializeConditionVariable@4 | |
| 1201 | 474 | RtlInitializeContext@20 |
| 1202 | RtlInitializeCorrelationVector@12 | |
| 1203 | 475 | RtlInitializeCriticalSection@4 |
| 1204 | RtlInitializeCriticalSectionAndSpinCount@8 | |
| 1205 | RtlInitializeCriticalSectionEx@12 | |
| 1206 | RtlInitializeExceptionChain@4 | |
| 1207 | RtlInitializeExtendedContext2@20 | |
| 1208 | RtlInitializeExtendedContext@12 | |
| 1209 | 476 | RtlInitializeGenericTable@20 |
| 1210 | RtlInitializeGenericTableAvl@20 | |
| 1211 | RtlInitializeHandleTable@12 | |
| 1212 | RtlInitializeNtUserPfn@24 | |
| 477 | ; RtlInitializeProfile@4 ; removed in Windows NT 3.5 | |
| 1213 | 478 | RtlInitializeRXact@12 |
| 1214 | 479 | RtlInitializeResource@4 |
| 1215 | RtlInitializeSListHead@4 | |
| 1216 | RtlInitializeSRWLock@4 | |
| 1217 | 480 | RtlInitializeSid@12 |
| 1218 | RtlInitializeSidEx@0 | |
| 481 | ; RtlInitializeStackTraceDataBase@12 ; removed in Windows NT 3.51, added back in Windows XP SP2 and removed again in Windows Server 2003 | |
| 1219 | 482 | RtlInsertElementGenericTable@16 |
| 1220 | RtlInsertElementGenericTableAvl@16 | |
| 1221 | RtlInsertElementGenericTableFull@24 | |
| 1222 | RtlInsertElementGenericTableFullAvl@24 | |
| 1223 | RtlInsertEntryHashTable@16 | |
| 1224 | RtlInt64ToUnicodeString@16 | |
| 1225 | 483 | RtlIntegerToChar@16 |
| 1226 | RtlIntegerToUnicodeString@12 | |
| 1227 | RtlInterlockedClearBitRun@12 | |
| 1228 | RtlInterlockedCompareExchange64@20 | |
| 1229 | RtlInterlockedFlushSList@4 | |
| 1230 | RtlInterlockedPopEntrySList@4 | |
| 1231 | RtlInterlockedPushEntrySList@8 | |
| 1232 | RtlInterlockedPushListSListEx@16 | |
| 1233 | RtlInvertRangeList@8 | |
| 1234 | RtlInterlockedSetBitRun@12 | |
| 1235 | RtlIoDecodeMemIoResource@16 | |
| 1236 | RtlIoEncodeMemIoResource@40 | |
| 1237 | RtlIpv4AddressToStringA@8 | |
| 1238 | RtlIpv4AddressToStringExA@16 | |
| 1239 | RtlIpv4AddressToStringExW@16 | |
| 1240 | RtlIpv4AddressToStringW@8 | |
| 1241 | RtlIpv4StringToAddressA@16 | |
| 1242 | RtlIpv4StringToAddressExA@16 | |
| 1243 | RtlIpv4StringToAddressExW@16 | |
| 1244 | RtlIpv4StringToAddressW@16 | |
| 1245 | RtlIpv6AddressToStringA@8 | |
| 1246 | RtlIpv6AddressToStringExA@20 | |
| 1247 | RtlIpv6AddressToStringExW@20 | |
| 1248 | RtlIpv6AddressToStringW@8 | |
| 1249 | RtlIpv6StringToAddressA@12 | |
| 1250 | RtlIpv6StringToAddressExA@16 | |
| 1251 | RtlIpv6StringToAddressExW@16 | |
| 1252 | RtlIpv6StringToAddressW@12 | |
| 1253 | RtlIsActivationContextActive@4 | |
| 1254 | RtlIsApiSetImplemented@4 | |
| 1255 | RtlIsCapabilitySid@4 | |
| 1256 | RtlIsCloudFilesPlaceholder@8 | |
| 1257 | RtlIsCriticalSectionLocked@4 | |
| 1258 | RtlIsCriticalSectionLockedByThread@4 | |
| 1259 | RtlIsCurrentProcess@4 | |
| 1260 | RtlIsCurrentThread@4 | |
| 1261 | RtlIsCurrentThreadAttachExempt@0 | |
| 1262 | 484 | RtlIsDosDeviceName_U@4 |
| 1263 | RtlIsElevatedRid@4 | |
| 1264 | RtlIsEnclaveFeaturePresent@4 | |
| 1265 | 485 | RtlIsGenericTableEmpty@4 |
| 1266 | RtlIsGenericTableEmptyAvl@4 | |
| 1267 | RtlIsMultiSessionSku@0 | |
| 1268 | RtlIsMultiUsersInSessionSku@0 | |
| 1269 | RtlIsNameInExpression@16 | |
| 1270 | RtlIsNameInUnUpcasedExpression@16 | |
| 1271 | RtlIsNameLegalDOS8Dot3@12 | |
| 1272 | RtlIsNonEmptyDirectoryReparsePointAllowed@4 | |
| 1273 | RtlIsNormalizedString@16 | |
| 1274 | RtlIsPackageSid@4 | |
| 1275 | RtlIsParentOfChildAppContainer@8 | |
| 1276 | RtlIsPartialPlaceholder@8 | |
| 1277 | RtlIsPartialPlaceholderFileHandle@8 | |
| 1278 | RtlIsPartialPlaceholderFileInfo@12 | |
| 1279 | RtlIsProcessorFeaturePresent@4 | |
| 1280 | RtlIsRangeAvailable@40 | |
| 1281 | RtlIsStateSeparationEnabled@0 | |
| 1282 | RtlIsTextUnicode@12 | |
| 1283 | RtlIsThreadWithinLoaderCallout@0 | |
| 1284 | RtlIsUntrustedObject@12 | |
| 1285 | RtlIsValidHandle@8 | |
| 1286 | RtlIsValidIndexHandle@12 | |
| 1287 | RtlIsValidLocaleName@8 | |
| 1288 | RtlIsValidProcessTrustLabelSid@4 | |
| 1289 | RtlIsZeroMemory@8 | |
| 1290 | RtlKnownExceptionFilter@4 | |
| 1291 | RtlLCIDToCultureName@8 | |
| 1292 | RtlLargeIntegerAdd@16 | |
| 1293 | RtlLargeIntegerArithmeticShift@12 | |
| 1294 | RtlLargeIntegerDivide@20 | |
| 1295 | RtlLargeIntegerNegate@8 | |
| 1296 | RtlLargeIntegerShiftLeft@12 | |
| 1297 | RtlLargeIntegerShiftRight@12 | |
| 1298 | RtlLargeIntegerSubtract@16 | |
| 1299 | 486 | RtlLargeIntegerToChar@16 |
| 1300 | RtlLcidToLocaleName@16 | |
| 1301 | 487 | RtlLeaveCriticalSection@4 |
| 1302 | 488 | RtlLengthRequiredSid@4 |
| 1303 | 489 | RtlLengthSecurityDescriptor@4 |
| 1304 | 490 | RtlLengthSid@4 |
| 1305 | RtlLengthSidAsUnicodeString@8 | |
| 1306 | RtlLoadString@32 | |
| 1307 | 491 | RtlLocalTimeToSystemTime@8 |
| 1308 | RtlLocaleNameToLcid@12 | |
| 1309 | RtlLocateExtendedFeature2@16 | |
| 1310 | RtlLocateExtendedFeature@12 | |
| 1311 | RtlLocateLegacyContext@8 | |
| 1312 | RtlLockBootStatusData@4 | |
| 1313 | RtlLockCurrentThread@0 | |
| 1314 | 492 | RtlLockHeap@4 |
| 1315 | RtlLockMemoryBlockLookaside@4 | |
| 1316 | RtlLockMemoryStreamRegion@24 | |
| 1317 | RtlLockMemoryZone@4 | |
| 1318 | RtlLockModuleSection@4 | |
| 1319 | RtlLogStackBackTrace@0 | |
| 1320 | RtlLookupAtomInAtomTable@12 | |
| 493 | ; RtlLogStackBackTrace@0 ; removed in Windows NT 3.51 | |
| 1321 | 494 | RtlLookupElementGenericTable@8 |
| 1322 | RtlLookupElementGenericTableAvl@8 | |
| 1323 | RtlLookupElementGenericTableFull@16 | |
| 1324 | RtlLookupElementGenericTableFullAvl@16 | |
| 1325 | RtlLookupEntryHashTable@12 | |
| 1326 | RtlLookupFirstMatchingElementGenericTableAvl@12 | |
| 495 | ; RtlLookupSymbolByAddress@24 ; removed in Windows NT 3.51 | |
| 496 | ; RtlLookupSymbolByName@16 ; removed in Windows NT 3.51 | |
| 1327 | 497 | RtlMakeSelfRelativeSD@12 |
| 1328 | 498 | RtlMapGenericMask@8 |
| 1329 | RtlMapSecurityErrorToNtStatus@4 | |
| 1330 | RtlMergeRangeLists@16 | |
| 1331 | RtlMoveMemory@12 | |
| 1332 | RtlMultiAppendUnicodeStringBuffer@12 | |
| 1333 | RtlMultiByteToUnicodeN@20 | |
| 1334 | 499 | RtlMultiByteToUnicodeSize@12 |
| 1335 | RtlMultipleAllocateHeap@20 | |
| 1336 | RtlMultipleFreeHeap@16 | |
| 1337 | 500 | RtlNewInstanceSecurityObject@40 |
| 1338 | 501 | RtlNewSecurityGrantedAccess@24 |
| 1339 | 502 | RtlNewSecurityObject@24 |
| 1340 | RtlNewSecurityObjectEx@32 | |
| 1341 | RtlNewSecurityObjectWithMultipleInheritance@36 | |
| 1342 | 503 | RtlNormalizeProcessParams@4 |
| 1343 | RtlNormalizeSecurityDescriptor@20 | |
| 1344 | RtlNormalizeString@20 | |
| 1345 | RtlNotifyFeatureUsage@4 | |
| 1346 | RtlNtPathNameToDosPathName@16 | |
| 1347 | RtlNtStatusToDosError@4 | |
| 1348 | RtlNtStatusToDosErrorNoTeb@4 | |
| 1349 | 504 | RtlNumberGenericTableElements@4 |
| 1350 | RtlNumberGenericTableElementsAvl@4 | |
| 1351 | 505 | RtlNumberOfClearBits@4 |
| 1352 | RtlNumberOfClearBitsInRange@12 | |
| 1353 | 506 | RtlNumberOfSetBits@4 |
| 1354 | RtlNumberOfSetBitsInRange@12 | |
| 1355 | RtlNumberOfSetBitsUlongPtr@4 | |
| 1356 | 507 | RtlOemStringToUnicodeSize@4 |
| 1357 | 508 | RtlOemStringToUnicodeString@12 |
| 1358 | 509 | RtlOemToUnicodeN@20 |
| 1359 | 510 | RtlOpenCurrentUser@8 |
| 1360 | RtlOsDeploymentState@4 | |
| 1361 | RtlOwnerAcesPresent@4 | |
| 1362 | 511 | RtlPcToFileHeader@8 |
| 1363 | RtlPinAtomInAtomTable@8 | |
| 1364 | RtlPopFrame@4 | |
| 1365 | 512 | RtlPrefixString@12 |
| 1366 | 513 | RtlPrefixUnicodeString@12 |
| 1367 | RtlProcessFlsData@4 | |
| 1368 | RtlProtectHeap@8 | |
| 1369 | RtlPublishWnfStateData@24 | |
| 1370 | RtlPushFrame@4 | |
| 1371 | RtlQueryActivationContextApplicationSettings@28 | |
| 1372 | RtlQueryAllFeatureConfigurations@16 | |
| 1373 | RtlQueryAtomInAtomTable@24 | |
| 1374 | RtlQueryCriticalSectionOwner@4 | |
| 1375 | RtlQueryDepthSList@4 | |
| 1376 | RtlQueryDynamicTimeZoneInformation@4 | |
| 1377 | RtlQueryElevationFlags@4 | |
| 1378 | RtlQueryEnvironmentVariable@24 | |
| 514 | ; RtlQueryEnvironmentVariable@0 ; removed in Windows NT 3.5 | |
| 1379 | 515 | RtlQueryEnvironmentVariable_U@12 |
| 1380 | RtlQueryFeatureConfiguration@16 | |
| 1381 | RtlQueryFeatureConfigurationChangeStamp@0 | |
| 1382 | RtlQueryFeatureUsageNotificationSubscriptions@8 | |
| 1383 | RtlQueryHeapInformation@20 | |
| 1384 | RtlQueryImageMitigationPolicy@20 | |
| 1385 | 516 | RtlQueryInformationAcl@16 |
| 1386 | RtlQueryInformationActivationContext@28 | |
| 1387 | RtlQueryInformationActiveActivationContext@16 | |
| 1388 | RtlQueryInterfaceMemoryStream@12 | |
| 1389 | RtlQueryModuleInformation@12 | |
| 1390 | RtlQueryPackageClaims@32 | |
| 1391 | RtlQueryPackageIdentity@24 | |
| 1392 | RtlQueryPackageIdentityEx@28 | |
| 1393 | RtlQueryPerformanceCounter@4 | |
| 1394 | RtlQueryPerformanceFrequency@4 | |
| 1395 | RtlQueryPointerMapping@8 | |
| 1396 | RtlQueryProcessBackTraceInformation@4 | |
| 1397 | RtlQueryProcessDebugInformation@12 | |
| 1398 | RtlQueryProcessHeapInformation@4 | |
| 1399 | RtlQueryProcessLockInformation@4 | |
| 1400 | RtlQueryProcessPlaceholderCompatibilityMode@0 | |
| 1401 | RtlQueryPropertyStore@8 | |
| 1402 | RtlQueryProtectedPolicy@8 | |
| 1403 | RtlQueryRegistryValueWithFallback@28 | |
| 517 | ; RtlQueryModuleInformation@24 ; removed in Windows NT 3.51 | |
| 518 | RtlQueryProcessBackTraceInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessBackTraceInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessBackTraceInformation@4" | |
| 519 | RtlQueryProcessHeapInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessHeapInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessHeapInformation@4" | |
| 520 | RtlQueryProcessLockInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessLockInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessLockInformation@4" | |
| 1404 | 521 | RtlQueryRegistryValues@20 |
| 1405 | RtlQueryRegistryValuesEx@20 | |
| 1406 | RtlQueryResourcePolicy@16 | |
| 1407 | 522 | RtlQuerySecurityObject@20 |
| 1408 | RtlQueryTagHeap@20 | |
| 1409 | RtlQueryThreadPlaceholderCompatibilityMode@0 | |
| 1410 | RtlQueryThreadProfiling@8 | |
| 1411 | 523 | RtlQueryTimeZoneInformation@4 |
| 1412 | RtlQueryTokenHostIdAsUlong64@8 | |
| 1413 | RtlQueryUnbiasedInterruptTime@4 | |
| 1414 | RtlQueryValidationRunlevel@4 | |
| 1415 | RtlQueryWnfMetaNotification@20 | |
| 1416 | RtlQueryWnfStateData@24 | |
| 1417 | RtlQueryWnfStateDataWithExplicitScope@28 | |
| 1418 | RtlQueueApcWow64Thread@20 | |
| 1419 | RtlQueueWorkItem@12 | |
| 1420 | RtlRaiseCustomSystemEventTrigger@4 | |
| 1421 | 524 | RtlRaiseException@4 |
| 1422 | 525 | RtlRaiseStatus@4 |
| 1423 | 526 | RtlRandom@4 |
| 1424 | RtlRandomEx@4 | |
| 1425 | RtlRbInsertNodeEx@16 | |
| 1426 | RtlRbRemoveNode@8 | |
| 1427 | RtlReAllocateHeap@16 | |
| 1428 | RtlReadMemoryStream@16 | |
| 1429 | RtlReadOutOfProcessMemoryStream@16 | |
| 1430 | RtlReadThreadProfilingData@12 | |
| 1431 | 527 | RtlRealPredecessor@4 |
| 1432 | 528 | RtlRealSuccessor@4 |
| 1433 | RtlRegisterFeatureConfigurationChangeNotification@16 | |
| 1434 | RtlRegisterForWnfMetaNotification@24 | |
| 1435 | RtlRegisterSecureMemoryCacheCallback@4 | |
| 1436 | RtlRegisterThreadWithCsrss@0 | |
| 1437 | RtlRegisterWait@24 | |
| 1438 | RtlReleaseActivationContext@4 | |
| 1439 | RtlReleaseMemoryStream@4 | |
| 1440 | RtlReleasePath@4 | |
| 1441 | 529 | RtlReleasePebLock@0 |
| 1442 | RtlReleasePrivilege@4 | |
| 1443 | RtlReleaseRelativeName@4 | |
| 1444 | 530 | RtlReleaseResource@4 |
| 1445 | RtlReleaseSRWLockExclusive@4 | |
| 1446 | RtlReleaseSRWLockShared@4 | |
| 1447 | 531 | RtlRemoteCall@28 |
| 1448 | RtlRemoveEntryHashTable@12 | |
| 1449 | RtlRemovePointerMapping@8 | |
| 1450 | RtlRemovePrivileges@12 | |
| 1451 | RtlRemovePropertyStore@8 | |
| 1452 | RtlRemoveVectoredContinueHandler@4 | |
| 1453 | RtlRemoveVectoredExceptionHandler@4 | |
| 1454 | RtlReplaceSidInSd@16 | |
| 1455 | RtlReplaceSystemDirectoryInPath@16 | |
| 1456 | RtlReportException@12 | |
| 1457 | RtlReportExceptionEx@20 | |
| 1458 | RtlReportSilentProcessExit@8 | |
| 1459 | RtlReportSqmEscalation@24 | |
| 1460 | RtlResetMemoryBlockLookaside@4 | |
| 1461 | RtlResetMemoryZone@4 | |
| 1462 | RtlResetNtUserPfn@0 | |
| 1463 | 532 | RtlResetRtlTranslations@4 |
| 1464 | RtlRestoreBootStatusDefaults@4 | |
| 1465 | RtlRestoreContext@8 | |
| 1466 | RtlRestoreLastWin32Error@4 | |
| 1467 | RtlRestoreSystemBootStatusDefaults@0 | |
| 1468 | RtlRestoreThreadPreferredUILanguages@4 | |
| 1469 | RtlRetrieveNtUserPfn@12 | |
| 1470 | RtlRevertMemoryStream@4 | |
| 1471 | 533 | RtlRunDecodeUnicodeString@8 |
| 1472 | 534 | RtlRunEncodeUnicodeString@8 |
| 1473 | RtlRunOnceBeginInitialize@12 | |
| 1474 | RtlRunOnceComplete@12 | |
| 1475 | RtlRunOnceExecuteOnce@16 | |
| 1476 | RtlRunOnceInitialize@4 | |
| 1477 | 535 | RtlSecondsSince1970ToTime@8 |
| 1478 | 536 | RtlSecondsSince1980ToTime@8 |
| 1479 | RtlSeekMemoryStream@20 | |
| 1480 | RtlSelfRelativeToAbsoluteSD2@8 | |
| 1481 | 537 | RtlSelfRelativeToAbsoluteSD@44 |
| 1482 | RtlSendMsgToSm@8 | |
| 1483 | 538 | RtlSetAllBits@4 |
| 1484 | RtlSetAttributesSecurityDescriptor@12 | |
| 1485 | RtlSetBit@8 | |
| 1486 | 539 | RtlSetBits@12 |
| 1487 | RtlSetControlSecurityDescriptor@12 | |
| 1488 | RtlSetCriticalSectionSpinCount@8 | |
| 1489 | 540 | RtlSetCurrentDirectory_U@4 |
| 1490 | 541 | RtlSetCurrentEnvironment@8 |
| 1491 | RtlSetCurrentTransaction@4 | |
| 1492 | RtlSetDaclSecurityDescriptor@16 | |
| 1493 | RtlSetDynamicTimeZoneInformation@4 | |
| 1494 | RtlSetEnvironmentStrings@8 | |
| 1495 | RtlSetEnvironmentVar@20 | |
| 1496 | 542 | RtlSetEnvironmentVariable@12 |
| 1497 | RtlSetExtendedFeaturesMask@12 | |
| 1498 | RtlSetFeatureConfigurations@16 | |
| 1499 | 543 | RtlSetGroupSecurityDescriptor@12 |
| 1500 | RtlSetHeapInformation@16 | |
| 1501 | RtlSetImageMitigationPolicy@20 | |
| 544 | ; RtlSetHeapUserValue@8 ; removed in Windows NT 3.5 | |
| 1502 | 545 | RtlSetInformationAcl@16 |
| 1503 | RtlSetIoCompletionCallback@12 | |
| 1504 | RtlSetLastWin32Error@4 | |
| 1505 | RtlSetLastWin32ErrorAndNtStatusFromNtStatus@4 | |
| 1506 | RtlSetMemoryStreamSize@12 | |
| 1507 | 546 | RtlSetOwnerSecurityDescriptor@12 |
| 1508 | RtlSetPortableOperatingSystem@4 | |
| 1509 | RtlSetProcessDebugInformation@12 | |
| 1510 | RtlSetProcessIsCritical@0 | |
| 1511 | RtlSetProcessPlaceholderCompatibilityMode@4 | |
| 1512 | RtlSetProcessPreferredUILanguages@12 | |
| 1513 | RtlSetProtectedPolicy@12 | |
| 1514 | RtlSetProxiedProcessId@4 | |
| 1515 | 547 | RtlSetSaclSecurityDescriptor@16 |
| 1516 | RtlSetSearchPathMode@4 | |
| 1517 | RtlSetSecurityDescriptorRMControl@8 | |
| 1518 | 548 | RtlSetSecurityObject@20 |
| 1519 | RtlSetSecurityObjectEx@24 | |
| 1520 | RtlSetSystemBootStatus@16 | |
| 1521 | RtlSetSystemBootStatusEx@12 | |
| 1522 | RtlSetThreadErrorMode@8 | |
| 1523 | RtlSetThreadIsCritical@0 | |
| 1524 | RtlSetThreadPlaceholderCompatibilityMode@4 | |
| 1525 | RtlSetThreadPoolStartFunc@8 | |
| 1526 | RtlSetThreadPreferredUILanguages2@16 | |
| 1527 | RtlSetThreadPreferredUILanguages@12 | |
| 1528 | RtlSetThreadSubProcessTag@4 | |
| 1529 | RtlSetThreadWorkOnBehalfTicket@4 | |
| 1530 | 549 | RtlSetTimeZoneInformation@4 |
| 1531 | RtlSetTimer@28 | |
| 1532 | RtlSetUnhandledExceptionFilter@4 | |
| 1533 | RtlSetUserCallbackExceptionFilter@4 | |
| 1534 | RtlSetUserFlagsHeap@20 | |
| 1535 | RtlSetUserValueHeap@16 | |
| 1536 | RtlShutdownLpcServer@4 | |
| 1537 | RtlSidDominates@12 | |
| 1538 | RtlSidDominatesForTrust@12 | |
| 1539 | RtlSidEqualLevel@12 | |
| 1540 | RtlSidHashInitialize@12 | |
| 1541 | RtlSidHashLookup@8 | |
| 1542 | RtlSidIsHigherLevel@12 | |
| 1543 | RtlSizeHeap@12 | |
| 1544 | RtlSleepConditionVariableCS@12 | |
| 1545 | RtlSleepConditionVariableSRW@16 | |
| 550 | ; RtlSnapShotHeap@16 ; removed in Windows NT 3.51 | |
| 1546 | 551 | RtlSplay@4 |
| 552 | ; RtlStartProfile@0 ; removed in Windows NT 3.5 | |
| 1547 | 553 | RtlStartRXact@4 |
| 1548 | RtlStatMemoryStream@12 | |
| 1549 | RtlStringFromGUID@8 | |
| 1550 | RtlStringFromGUIDEx@12 | |
| 1551 | RtlStronglyEnumerateEntryHashTable@8 | |
| 554 | ; RtlStopProfile@0 ; removed in Windows NT 3.5 | |
| 1552 | 555 | RtlSubAuthorityCountSid@4 |
| 1553 | 556 | RtlSubAuthoritySid@8 |
| 1554 | RtlSubscribeForFeatureUsageNotification@8 | |
| 1555 | RtlSubscribeWnfStateChangeNotification@36 | |
| 1556 | 557 | RtlSubtreePredecessor@4 |
| 1557 | 558 | RtlSubtreeSuccessor@4 |
| 1558 | RtlSwitchedVVI@16 | |
| 1559 | 559 | RtlSystemTimeToLocalTime@8 |
| 1560 | RtlTestAndPublishWnfStateData@28 | |
| 1561 | RtlTestBit@8 | |
| 1562 | RtlTestProtectedAccess@8 | |
| 1563 | 560 | RtlTimeFieldsToTime@8 |
| 1564 | 561 | RtlTimeToElapsedTimeFields@8 |
| 1565 | 562 | RtlTimeToSecondsSince1970@8 |
| 1566 | 563 | RtlTimeToSecondsSince1980@8 |
| 1567 | 564 | RtlTimeToTimeFields@8 |
| 1568 | RtlTraceDatabaseAdd@16 | |
| 1569 | RtlTraceDatabaseCreate@20 | |
| 1570 | RtlTraceDatabaseDestroy@4 | |
| 1571 | RtlTraceDatabaseEnumerate@12 | |
| 1572 | RtlTraceDatabaseFind@16 | |
| 1573 | RtlTraceDatabaseLock@4 | |
| 1574 | RtlTraceDatabaseUnlock@4 | |
| 1575 | RtlTraceDatabaseValidate@4 | |
| 1576 | RtlTryAcquirePebLock@0 | |
| 1577 | RtlTryAcquireSRWLockExclusive@4 | |
| 1578 | RtlTryAcquireSRWLockShared@4 | |
| 1579 | RtlTryConvertSRWLockSharedToExclusiveOrRelease@4 | |
| 1580 | RtlTryEnterCriticalSection@4 | |
| 1581 | RtlUTF8StringToUnicodeString@12 | |
| 1582 | RtlUTF8ToUnicodeN@20 | |
| 1583 | RtlUdiv128@28 | |
| 1584 | RtlUnhandledExceptionFilter2@8 | |
| 1585 | RtlUnhandledExceptionFilter@4 | |
| 1586 | RtlUnicodeStringToAnsiSize@4 | |
| 1587 | RtlUnicodeStringToAnsiString@12 | |
| 1588 | 565 | RtlUnicodeStringToCountedOemString@12 |
| 1589 | RtlUnicodeStringToInteger@12 | |
| 1590 | 566 | RtlUnicodeStringToOemSize@4 |
| 1591 | 567 | RtlUnicodeStringToOemString@12 |
| 1592 | RtlUnicodeStringToUTF8String@12 | |
| 1593 | 568 | RtlUnicodeToCustomCPN@24 |
| 1594 | RtlUnicodeToMultiByteN@20 | |
| 1595 | 569 | RtlUnicodeToMultiByteSize@12 |
| 1596 | 570 | RtlUnicodeToOemN@20 |
| 1597 | RtlUnicodeToUTF8N@20 | |
| 1598 | 571 | RtlUniform@4 |
| 1599 | RtlUnlockBootStatusData@4 | |
| 1600 | RtlUnlockCurrentThread@0 | |
| 1601 | 572 | RtlUnlockHeap@4 |
| 1602 | RtlUnlockMemoryBlockLookaside@4 | |
| 1603 | RtlUnlockMemoryStreamRegion@24 | |
| 1604 | RtlUnlockMemoryZone@4 | |
| 1605 | RtlUnlockModuleSection@4 | |
| 1606 | RtlUnregisterFeatureConfigurationChangeNotification@4 | |
| 1607 | RtlUnsubscribeFromFeatureUsageNotifications@8 | |
| 1608 | RtlUnsubscribeWnfNotificationWaitForCompletion@4 | |
| 1609 | RtlUnsubscribeWnfNotificationWithCompletionCallback@12 | |
| 1610 | RtlUnsubscribeWnfStateChangeNotification@4 | |
| 1611 | RtlUnwind@16 | |
| 1612 | 573 | RtlUpcaseUnicodeChar@4 |
| 1613 | 574 | RtlUpcaseUnicodeString@12 |
| 1614 | 575 | RtlUpcaseUnicodeStringToAnsiString@12 |
| ... | ... | @@ -1617,712 +578,2338 @@ RtlUpcaseUnicodeStringToOemString@12 |
| 1617 | 578 | RtlUpcaseUnicodeToCustomCPN@24 |
| 1618 | 579 | RtlUpcaseUnicodeToMultiByteN@20 |
| 1619 | 580 | RtlUpcaseUnicodeToOemN@20 |
| 1620 | RtlUpdateClonedCriticalSection@4 | |
| 1621 | RtlUpdateClonedSRWLock@8 | |
| 1622 | RtlUpdateTimer@16 | |
| 1623 | 581 | RtlUpperChar@4 |
| 1624 | 582 | RtlUpperString@8 |
| 1625 | RtlUsageHeap@12 | |
| 1626 | ; Not sure. | |
| 1627 | RtlUserThreadStart | |
| 1628 | 583 | RtlValidAcl@4 |
| 1629 | RtlValidProcessProtection@4 | |
| 1630 | RtlValidRelativeSecurityDescriptor@12 | |
| 1631 | 584 | RtlValidSecurityDescriptor@4 |
| 1632 | 585 | RtlValidSid@4 |
| 1633 | RtlValidateCorrelationVector@4 | |
| 1634 | RtlValidateHeap@12 | |
| 1635 | RtlValidateProcessHeaps@0 | |
| 1636 | RtlValidateUnicodeString@8 | |
| 1637 | RtlVerifyVersionInfo@16 | |
| 1638 | RtlWaitForWnfMetaNotification@24 | |
| 1639 | RtlWaitOnAddress@16 | |
| 1640 | RtlWakeAddressAll@4 | |
| 1641 | RtlWakeAddressAllNoFence@4 | |
| 1642 | RtlWakeAddressSingle@4 | |
| 1643 | RtlWakeAddressSingleNoFence@4 | |
| 1644 | RtlWakeAllConditionVariable@4 | |
| 1645 | RtlWakeConditionVariable@4 | |
| 1646 | RtlWalkFrameChain@12 | |
| 1647 | RtlWalkHeap@8 | |
| 1648 | RtlWeaklyEnumerateEntryHashTable@8 | |
| 1649 | RtlWerpReportException@16 | |
| 1650 | RtlWnfCompareChangeStamp@8 | |
| 1651 | RtlWnfDllUnloadCallback@4 | |
| 1652 | RtlWow64CallFunction64@28 | |
| 1653 | RtlWow64EnableFsRedirection@4 | |
| 1654 | RtlWow64EnableFsRedirectionEx@8 | |
| 1655 | RtlWow64GetCurrentMachine@0 | |
| 1656 | RtlWow64GetEquivalentMachineCHPE@4 | |
| 1657 | RtlWow64GetProcessMachines@12 | |
| 1658 | RtlWow64GetSharedInfoProcess@12 | |
| 1659 | RtlWow64IsWowGuestMachineSupported@8 | |
| 1660 | RtlWow64LogMessageInEventLogger@12 | |
| 1661 | RtlWriteMemoryStream@16 | |
| 1662 | 586 | RtlWriteRegistryValue@24 |
| 1663 | RtlZeroHeap@8 | |
| 1664 | RtlZeroMemory@8 | |
| 1665 | RtlZombifyActivationContext@4 | |
| 1666 | RtlpApplyLengthFunction@16 | |
| 1667 | RtlpCheckDynamicTimeZoneInformation@8 | |
| 1668 | RtlpCleanupRegistryKeys@0 | |
| 1669 | RtlpConvertAbsoluteToRelativeSecurityAttribute@12 | |
| 1670 | RtlpConvertCultureNamesToLCIDs@8 | |
| 1671 | RtlpConvertLCIDsToCultureNames@8 | |
| 1672 | RtlpConvertRelativeToAbsoluteSecurityAttribute@16 | |
| 1673 | RtlpCreateProcessRegistryInfo@4 | |
| 1674 | RtlpEnsureBufferSize@12 | |
| 1675 | RtlpFreezeTimeBias@0 | |
| 1676 | RtlpGetDeviceFamilyInfoEnum@12 | |
| 1677 | RtlpGetLCIDFromLangInfoNode@12 | |
| 1678 | RtlpGetNameFromLangInfoNode@12 | |
| 1679 | RtlpGetSystemDefaultUILanguage@4 ; Check!!! gendef says @8 | |
| 1680 | RtlpGetUserOrMachineUILanguage4NLS@12 | |
| 1681 | RtlpInitializeLangRegistryInfo@4 | |
| 1682 | RtlpIsQualifiedLanguage@12 | |
| 1683 | RtlpLoadMachineUIByPolicy@12 | |
| 1684 | RtlpLoadUserUIByPolicy@12 | |
| 1685 | RtlpMergeSecurityAttributeInformation@16 | |
| 1686 | RtlpMuiFreeLangRegistryInfo@4 | |
| 1687 | RtlpMuiRegCreateRegistryInfo@0 | |
| 1688 | RtlpMuiRegFreeRegistryInfo@8 | |
| 1689 | RtlpMuiRegLoadRegistryInfo@8 | |
| 1690 | RtlpNotOwnerCriticalSection@0 ; Check!!! gebdef says @4 | |
| 587 | ; RtlpInitializeRtl@12 ; removed in Windows NT 4.0 | |
| 1691 | 588 | RtlpNtCreateKey@24 |
| 1692 | 589 | RtlpNtEnumerateSubKey@16 |
| 1693 | 590 | RtlpNtMakeTemporaryKey@4 |
| 1694 | 591 | RtlpNtOpenKey@16 |
| 1695 | 592 | RtlpNtQueryValueKey@20 |
| 1696 | 593 | RtlpNtSetValueKey@16 |
| 1697 | RtlpQueryDefaultUILanguage@8 | |
| 1698 | ; Not sure. | |
| 1699 | RtlpQueryProcessDebugInformationRemote | |
| 1700 | RtlpRefreshCachedUILanguage@8 | |
| 1701 | RtlpSetInstallLanguage@8 | |
| 1702 | RtlpSetPreferredUILanguages@12 | |
| 1703 | RtlpSetUserPreferredUILanguages@12 | |
| 1704 | RtlpTimeFieldsToTime@12 | |
| 1705 | RtlpTimeToTimeFields@12 | |
| 1706 | 594 | RtlpUnWaitCriticalSection@4 |
| 1707 | RtlpVerifyAndCommitUILanguageSettings@4 | |
| 1708 | 595 | RtlpWaitForCriticalSection@4 |
| 1709 | RtlxAnsiStringToUnicodeSize@4 | |
| 1710 | RtlxOemStringToUnicodeSize@4 | |
| 1711 | RtlxUnicodeStringToAnsiSize@4 | |
| 1712 | RtlxUnicodeStringToOemSize@4 | |
| 1713 | SbExecuteProcedure@20 | |
| 1714 | SbSelectProcedure@16 | |
| 1715 | ShipAssert@8 | |
| 1716 | ShipAssertGetBufferInfo@8 | |
| 1717 | ShipAssertMsgA@12 | |
| 1718 | ShipAssertMsgW@12 | |
| 1719 | TpAllocAlpcCompletion@20 | |
| 1720 | TpAllocAlpcCompletionEx@20 | |
| 1721 | TpAllocCleanupGroup@4 | |
| 1722 | TpAllocIoCompletion@20 | |
| 1723 | TpAllocJobNotification@20 | |
| 1724 | TpAllocPool@8 | |
| 1725 | TpAllocTimer@16 | |
| 1726 | TpAllocWait@16 | |
| 1727 | TpAllocWork@16 | |
| 1728 | TpAlpcRegisterCompletionList@4 | |
| 1729 | TpAlpcUnregisterCompletionList@4 | |
| 1730 | TpCallbackDetectedUnrecoverableError@4 | |
| 1731 | TpCallbackIndependent@4 | |
| 1732 | TpCallbackLeaveCriticalSectionOnCompletion@8 | |
| 1733 | TpCallbackMayRunLong@4 | |
| 1734 | TpCallbackReleaseMutexOnCompletion@8 | |
| 1735 | TpCallbackReleaseSemaphoreOnCompletion@12 | |
| 1736 | TpCallbackSendAlpcMessageOnCompletion@16 | |
| 1737 | TpCallbackSendPendingAlpcMessage@4 | |
| 1738 | TpCallbackSetEventOnCompletion@8 | |
| 1739 | TpCallbackUnloadDllOnCompletion@8 | |
| 1740 | TpCancelAsyncIoOperation@4 | |
| 1741 | TpCaptureCaller@4 | |
| 1742 | TpCheckTerminateWorker@4 | |
| 1743 | TpDbgDumpHeapUsage@12 | |
| 1744 | TpDbgGetFreeInfo@8 | |
| 1745 | TpDbgSetLogRoutine@4 | |
| 1746 | TpDisablePoolCallbackChecks@4 | |
| 1747 | TpDisassociateCallback@4 | |
| 1748 | TpIsTimerSet@4 | |
| 1749 | TpPoolFreeUnusedNodes@4 | |
| 1750 | TpPostWork@4 | |
| 1751 | TpQueryPoolStackInformation@8 | |
| 1752 | TpReleaseAlpcCompletion@4 | |
| 1753 | TpReleaseCleanupGroup@4 | |
| 1754 | TpReleaseCleanupGroupMembers@12 | |
| 1755 | TpReleaseIoCompletion@4 | |
| 1756 | TpReleaseJobNotification@4 | |
| 1757 | TpReleasePool@4 | |
| 1758 | TpReleaseTimer@4 | |
| 1759 | TpReleaseWait@4 | |
| 1760 | TpReleaseWork@4 | |
| 1761 | TpSetDefaultPoolMaxThreads@4 | |
| 1762 | TpSetDefaultPoolStackInformation@4 | |
| 1763 | TpSetPoolMaxThreads@8 | |
| 1764 | TpSetPoolMaxThreadsSoftLimit@8 | |
| 1765 | TpSetPoolMinThreads@8 | |
| 1766 | TpSetPoolStackInformation@8 | |
| 1767 | TpSetPoolThreadBasePriority@8 | |
| 1768 | TpSetPoolThreadCpuSets@12 | |
| 1769 | TpSetPoolWorkerThreadIdleTimeout@12 | |
| 1770 | TpSetTimer@16 | |
| 1771 | TpSetTimerEx@16 | |
| 1772 | TpSetWait@12 | |
| 1773 | TpSetWaitEx@16 | |
| 1774 | TpSimpleTryPost@12 | |
| 1775 | TpStartAsyncIoOperation@4 | |
| 1776 | TpTimerOutstandingCallbackCount@4 | |
| 1777 | TpTrimPools@0 | |
| 1778 | TpWaitForAlpcCompletion@4 | |
| 1779 | TpWaitForIoCompletion@8 | |
| 1780 | TpWaitForJobNotification@4 | |
| 1781 | TpWaitForTimer@8 | |
| 1782 | TpWaitForWait@8 | |
| 1783 | TpWaitForWork@8 | |
| 1784 | VerSetConditionMask@16 | |
| 1785 | WerCheckEventEscalation@8 | |
| 1786 | WerReportExceptionWorker@4 | |
| 1787 | WerReportSQMEvent@12 | |
| 1788 | WerReportWatsonEvent@16 | |
| 1789 | WerReportSQMEvent@16 | |
| 1790 | WinSqmAddToAverageDWORD@12 | |
| 1791 | WinSqmAddToStream@16 | |
| 1792 | WinSqmAddToStreamEx@20 | |
| 1793 | WinSqmCheckEscalationAddToStreamEx@20 | |
| 1794 | WinSqmCheckEscalationSetDWORD64@20 | |
| 1795 | WinSqmCheckEscalationSetDWORD@16 | |
| 1796 | WinSqmCheckEscalationSetString@16 | |
| 1797 | WinSqmCommonDatapointDelete@4 | |
| 1798 | WinSqmCommonDatapointSetDWORD64@16 | |
| 1799 | WinSqmCommonDatapointSetDWORD@12 | |
| 1800 | WinSqmCommonDatapointSetStreamEx@20 | |
| 1801 | WinSqmCommonDatapointSetString@12 | |
| 1802 | WinSqmEndSession@4 | |
| 1803 | WinSqmEventEnabled@8 | |
| 1804 | WinSqmEventWrite@12 | |
| 1805 | WinSqmGetEscalationRuleStatus@8 | |
| 1806 | WinSqmGetInstrumentationProperty@16 | |
| 1807 | WinSqmIncrementDWORD@12 | |
| 1808 | WinSqmIsOptedIn@0 | |
| 1809 | WinSqmIsOptedInEx@4 | |
| 1810 | WinSqmIsSessionDisabled@4 | |
| 1811 | WinSqmSetDWORD64@16 | |
| 1812 | WinSqmSetDWORD@12 | |
| 1813 | WinSqmSetEscalationInfo@16 | |
| 1814 | WinSqmSetIfMaxDWORD@12 | |
| 1815 | WinSqmSetIfMinDWORD@12 | |
| 1816 | WinSqmSetString@12 | |
| 1817 | WinSqmStartSession@12 | |
| 1818 | WinSqmStartSessionForPartner@16 | |
| 1819 | WinSqmStartSqmOptinListener@0 | |
| 1820 | 596 | ZwAcceptConnectPort@24 |
| 1821 | 597 | ZwAccessCheck@32 |
| 1822 | 598 | ZwAccessCheckAndAuditAlarm@44 |
| 1823 | ZwAccessCheckByType@44 | |
| 1824 | ZwAccessCheckByTypeAndAuditAlarm@64 | |
| 1825 | ZwAccessCheckByTypeResultList@44 | |
| 1826 | ZwAccessCheckByTypeResultListAndAuditAlarm@64 | |
| 1827 | ZwAccessCheckByTypeResultListAndAuditAlarmByHandle@68 | |
| 1828 | ZwAcquireCrossVmMutant@8 | |
| 1829 | ZwAcquireCMFViewOwnership@12 | |
| 1830 | ZwAcquireProcessActivityReference@12 | |
| 1831 | ZwAddAtom@12 | |
| 1832 | ZwAddAtomEx@16 | |
| 1833 | ZwAddBootEntry@8 | |
| 1834 | ZwAddDriverEntry@8 | |
| 1835 | 599 | ZwAdjustGroupsToken@24 |
| 1836 | 600 | ZwAdjustPrivilegesToken@24 |
| 1837 | ZwAdjustTokenClaimsAndDeviceGroups@64 | |
| 1838 | 601 | ZwAlertResumeThread@8 |
| 1839 | 602 | ZwAlertThread@4 |
| 1840 | ZwAlertThreadByThreadId@4 | |
| 1841 | 603 | ZwAllocateLocallyUniqueId@4 |
| 1842 | ZwAllocateReserveObject@12 | |
| 1843 | ZwAllocateUserPhysicalPages@12 | |
| 1844 | ZwAllocateUserPhysicalPagesEx@20 | |
| 1845 | ZwAllocateUuids@16 | |
| 1846 | 604 | ZwAllocateVirtualMemory@24 |
| 1847 | ZwAllocateVirtualMemoryEx@28 | |
| 1848 | ZwAlpcAcceptConnectPort@36 | |
| 1849 | ZwAlpcCancelMessage@12 | |
| 1850 | ZwAlpcConnectPort@44 | |
| 1851 | ZwAlpcConnectPortEx@44 | |
| 1852 | ZwAlpcCreatePort@12 | |
| 1853 | ZwAlpcCreatePortSection@24 | |
| 1854 | ZwAlpcCreateResourceReserve@16 | |
| 1855 | ZwAlpcCreateSectionView@12 | |
| 1856 | ZwAlpcCreateSecurityContext@12 | |
| 1857 | ZwAlpcDeletePortSection@12 | |
| 1858 | ZwAlpcDeleteResourceReserve@12 | |
| 1859 | ZwAlpcDeleteSectionView@12 | |
| 1860 | ZwAlpcDeleteSecurityContext@12 | |
| 1861 | ZwAlpcDisconnectPort@8 | |
| 1862 | ZwAlpcImpersonateClientContainerOfPort@12 | |
| 1863 | ZwAlpcImpersonateClientOfPort@12 | |
| 1864 | ZwAlpcOpenSenderProcess@24 | |
| 1865 | ZwAlpcOpenSenderThread@24 | |
| 1866 | ZwAlpcQueryInformation@20 | |
| 1867 | ZwAlpcQueryInformationMessage@24 | |
| 1868 | ZwAlpcRevokeSecurityContext@12 | |
| 1869 | ZwAlpcSendWaitReceivePort@32 | |
| 1870 | ZwAlpcSetInformation@16 | |
| 1871 | ZwApphelpCacheControl@8 | |
| 1872 | ZwAreMappedFilesTheSame@8 | |
| 1873 | ZwAssignProcessToJobObject@8 | |
| 1874 | ZwAssociateWaitCompletionPacket@32 | |
| 1875 | ZwCallEnclave@16 | |
| 1876 | ZwCallbackReturn@12 | |
| 1877 | ZwCancelDeviceWakeupRequest@4 | |
| 1878 | 605 | ZwCancelIoFile@8 |
| 1879 | ZwCancelIoFileEx@12 | |
| 1880 | ZwCancelSynchronousIoFile@12 | |
| 1881 | ZwCancelTimer2@8 | |
| 1882 | 606 | ZwCancelTimer@8 |
| 1883 | ZwCancelWaitCompletionPacket@8 | |
| 1884 | ZwChangeProcessState@24 | |
| 1885 | ZwChangeThreadState@24 | |
| 1886 | ZwClearEvent@4 | |
| 1887 | 607 | ZwClose@4 |
| 1888 | 608 | ZwCloseObjectAuditAlarm@12 |
| 1889 | ZwCommitComplete@8 | |
| 1890 | ZwCommitEnlistment@8 | |
| 1891 | ZwCommitRegistryTransaction@8 | |
| 1892 | ZwCommitTransaction@8 | |
| 1893 | ZwCompactKeys@8 | |
| 1894 | ZwCompareObjects@8 | |
| 1895 | ZwCompareSigningLevels@8 | |
| 1896 | ZwCompareTokens@12 | |
| 1897 | 609 | ZwCompleteConnectPort@4 |
| 1898 | ZwCompressKey@4 | |
| 1899 | 610 | ZwConnectPort@32 |
| 1900 | 611 | ZwContinue@8 |
| 1901 | ZwContinueEx@8 | |
| 1902 | ZwConvertBetweenAuxiliaryCounterAndPerformanceCounter@16 | |
| 1903 | ZwCreateCrossVmEvent@24 | |
| 1904 | ZwCreateCrossVmMutant@24 | |
| 1905 | ZwCreateDebugObject@16 | |
| 1906 | 612 | ZwCreateDirectoryObject@12 |
| 1907 | ZwCreateDirectoryObjectEx@20 | |
| 1908 | ZwCreateEnclave@36 | |
| 1909 | ZwCreateEnlistment@32 | |
| 1910 | 613 | ZwCreateEvent@20 |
| 1911 | 614 | ZwCreateEventPair@12 |
| 1912 | 615 | ZwCreateFile@44 |
| 1913 | ZwCreateIRTimer@12 | |
| 1914 | ZwCreateIoCompletion@16 | |
| 1915 | ZwCreateIoRing@20 | |
| 1916 | ZwCreateJobObject@12 | |
| 1917 | ZwCreateJobSet@12 | |
| 1918 | 616 | ZwCreateKey@28 |
| 1919 | ZwCreateKeyTransacted@32 | |
| 1920 | ZwCreateKeyedEvent@16 | |
| 1921 | ZwCreateLowBoxToken@36 | |
| 1922 | 617 | ZwCreateMailslotFile@32 |
| 1923 | 618 | ZwCreateMutant@16 |
| 1924 | 619 | ZwCreateNamedPipeFile@56 |
| 1925 | 620 | ZwCreatePagingFile@16 |
| 1926 | ZwCreatePartition@16 | |
| 1927 | 621 | ZwCreatePort@20 |
| 1928 | ZwCreatePrivateNamespace@16 | |
| 1929 | 622 | ZwCreateProcess@32 |
| 1930 | ZwCreateProcessEx@36 | |
| 1931 | ZwCreateProcessStateChange@20 | |
| 1932 | ZwCreateProfile@36 | |
| 1933 | ZwCreateProfileEx@40 | |
| 1934 | ZwCreateRegistryTransaction@16 | |
| 1935 | ZwCreateResourceManager@28 | |
| 623 | ZwCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "ZwCreateProfile@28", Windows NT 3.51 and new has ABI "ZwCreateProfile@36" | |
| 1936 | 624 | ZwCreateSection@28 |
| 1937 | ZwCreateSectionEx@36 | |
| 1938 | 625 | ZwCreateSemaphore@20 |
| 1939 | 626 | ZwCreateSymbolicLinkObject@16 |
| 1940 | 627 | ZwCreateThread@32 |
| 1941 | ZwCreateThreadEx@44 | |
| 1942 | ZwCreateThreadStateChange@20 | |
| 1943 | ZwCreateTimer2@20 | |
| 1944 | ZwCreateTimer@16 | |
| 628 | ZwCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "ZwCreateTimer@12", Windows NT 4.0 and new has ABI "ZwCreateTimer@16" | |
| 1945 | 629 | ZwCreateToken@52 |
| 1946 | ZwCreateTokenEx@68 | |
| 1947 | ZwCreateTransaction@40 | |
| 1948 | ZwCreateTransactionManager@24 | |
| 1949 | ZwCreateUserProcess@44 | |
| 1950 | ZwCreateWaitCompletionPacket@12 | |
| 1951 | ZwCreateWaitablePort@20 | |
| 1952 | ZwCreateWnfStateName@28 | |
| 1953 | ZwCreateWorkerFactory@40 | |
| 1954 | ZwDebugActiveProcess@8 | |
| 1955 | ZwDebugContinue@12 | |
| 1956 | 630 | ZwDelayExecution@8 |
| 1957 | ZwDeleteAtom@4 | |
| 1958 | ZwDeleteBootEntry@4 | |
| 1959 | ZwDeleteDriverEntry@4 | |
| 1960 | ZwDeleteFile@4 | |
| 1961 | 631 | ZwDeleteKey@4 |
| 1962 | ZwDeleteObjectAuditAlarm@12 | |
| 1963 | ZwDeletePrivateNamespace@4 | |
| 1964 | 632 | ZwDeleteValueKey@8 |
| 1965 | ZwDeleteWnfStateData@8 | |
| 1966 | ZwDeleteWnfStateName@4 | |
| 1967 | 633 | ZwDeviceIoControlFile@40 |
| 1968 | ZwDirectGraphicsCall@20 | |
| 1969 | ZwDisableLastKnownGood@0 | |
| 1970 | 634 | ZwDisplayString@4 |
| 1971 | ZwDrawText@4 | |
| 1972 | 635 | ZwDuplicateObject@28 |
| 1973 | 636 | ZwDuplicateToken@24 |
| 1974 | ZwEnableLastKnownGood@0 | |
| 1975 | ZwEnumerateBootEntries@8 | |
| 1976 | ZwEnumerateDriverEntries@8 | |
| 1977 | 637 | ZwEnumerateKey@24 |
| 1978 | ZwEnumerateSystemEnvironmentValuesEx@12 | |
| 1979 | ZwEnumerateTransactionObject@20 | |
| 1980 | 638 | ZwEnumerateValueKey@24 |
| 1981 | 639 | ZwExtendSection@8 |
| 1982 | ZwFilterBootOption@20 | |
| 1983 | ZwFilterToken@24 | |
| 1984 | ZwFilterTokenEx@56 | |
| 1985 | ZwFindAtom@12 | |
| 1986 | 640 | ZwFlushBuffersFile@8 |
| 1987 | ZwFlushBuffersFileEx@20 | |
| 1988 | ZwFlushInstallUILanguage@8 | |
| 1989 | 641 | ZwFlushInstructionCache@12 |
| 1990 | 642 | ZwFlushKey@4 |
| 1991 | ZwFlushProcessWriteBuffers@0 | |
| 1992 | 643 | ZwFlushVirtualMemory@16 |
| 1993 | 644 | ZwFlushWriteBuffer@0 |
| 1994 | ZwFreeUserPhysicalPages@12 | |
| 1995 | 645 | ZwFreeVirtualMemory@16 |
| 1996 | ZwFreezeRegistry@4 | |
| 1997 | ZwFreezeTransactions@8 | |
| 1998 | 646 | ZwFsControlFile@40 |
| 1999 | ZwGetCachedSigningLevel@24 | |
| 2000 | ZwGetCompleteWnfStateSubscription@24 | |
| 2001 | 647 | ZwGetContextThread@8 |
| 2002 | ZwGetCurrentProcessorNumber@0 | |
| 2003 | ZwGetCurrentProcessorNumberEx@4 | |
| 2004 | ZwGetDevicePowerState@8 | |
| 2005 | ZwGetMUIRegistryInfo@12 | |
| 2006 | ZwGetNextProcess@20 | |
| 2007 | ZwGetNextThread@24 | |
| 2008 | ZwGetNlsSectionPtr@20 | |
| 2009 | ZwGetNotificationResourceManager@28 | |
| 2010 | ZwGetPlugPlayEvent@16 | |
| 2011 | ZwGetTickCount@0 | |
| 2012 | ZwGetWriteWatch@28 | |
| 2013 | ZwImpersonateAnonymousToken@4 | |
| 648 | ZwGetTickCount@0 ; removed in Windows XP | |
| 2014 | 649 | ZwImpersonateClientOfPort@8 |
| 2015 | 650 | ZwImpersonateThread@12 |
| 2016 | ZwInitializeEnclave@20 | |
| 2017 | ZwInitializeNlsFiles@16 | |
| 2018 | 651 | ZwInitializeRegistry@4 |
| 2019 | ZwInitiatePowerAction@16 | |
| 2020 | ZwIsProcessInJob@8 | |
| 2021 | ZwIsSystemResumeAutomatic@0 | |
| 2022 | ZwIsUILanguageComitted@0 | |
| 652 | ; ZwInitializeVDM@0 ; removed in Windows NT 3.5 | |
| 2023 | 653 | ZwListenPort@8 |
| 2024 | 654 | ZwLoadDriver@4 |
| 2025 | ZwLoadEnclaveData@36 | |
| 2026 | ZwLoadKey2@12 | |
| 2027 | ZwLoadKey3@32 | |
| 2028 | 655 | ZwLoadKey@8 |
| 2029 | ZwLoadKeyEx@32 | |
| 2030 | 656 | ZwLockFile@40 |
| 2031 | ZwLockProductActivationKeys@8 | |
| 2032 | ZwLockRegistryKey@4 | |
| 2033 | 657 | ZwLockVirtualMemory@16 |
| 2034 | ZwMakePermanentObject@4 | |
| 2035 | 658 | ZwMakeTemporaryObject@4 |
| 2036 | ZwManageHotPatch@16 | |
| 2037 | ZwManagePartition@20 | |
| 2038 | ZwMapCMFModule@24 | |
| 2039 | ZwMapUserPhysicalPages@12 | |
| 2040 | ZwMapUserPhysicalPagesScatter@12 | |
| 2041 | 659 | ZwMapViewOfSection@40 |
| 2042 | ZwMapViewOfSectionEx@36 | |
| 2043 | ZwModifyBootEntry@4 | |
| 2044 | ZwModifyDriverEntry@4 | |
| 2045 | 660 | ZwNotifyChangeDirectoryFile@36 |
| 2046 | ZwNotifyChangeDirectoryFileEx@40 | |
| 2047 | 661 | ZwNotifyChangeKey@40 |
| 2048 | ZwNotifyChangeMultipleKeys@48 | |
| 2049 | ZwNotifyChangeSession@32 | |
| 2050 | 662 | ZwOpenDirectoryObject@12 |
| 2051 | ZwOpenEnlistment@20 | |
| 2052 | 663 | ZwOpenEvent@12 |
| 2053 | 664 | ZwOpenEventPair@12 |
| 2054 | 665 | ZwOpenFile@24 |
| 2055 | ZwOpenIoCompletion@12 | |
| 2056 | ZwOpenJobObject@12 | |
| 2057 | 666 | ZwOpenKey@12 |
| 2058 | ZwOpenKeyEx@16 | |
| 2059 | ZwOpenKeyTransacted@16 | |
| 2060 | ZwOpenKeyTransactedEx@20 | |
| 2061 | ZwOpenKeyedEvent@12 | |
| 2062 | 667 | ZwOpenMutant@12 |
| 2063 | 668 | ZwOpenObjectAuditAlarm@48 |
| 2064 | ZwOpenPartition@12 | |
| 2065 | ZwOpenPrivateNamespace@16 | |
| 2066 | 669 | ZwOpenProcess@16 |
| 2067 | 670 | ZwOpenProcessToken@12 |
| 2068 | ZwOpenProcessTokenEx@16 | |
| 2069 | ZwOpenRegistryTransaction@12 | |
| 2070 | ZwOpenResourceManager@20 | |
| 2071 | 671 | ZwOpenSection@12 |
| 2072 | 672 | ZwOpenSemaphore@12 |
| 2073 | ZwOpenSession@12 | |
| 2074 | 673 | ZwOpenSymbolicLinkObject@12 |
| 2075 | 674 | ZwOpenThread@16 |
| 2076 | 675 | ZwOpenThreadToken@16 |
| 2077 | ZwOpenThreadTokenEx@20 | |
| 2078 | 676 | ZwOpenTimer@12 |
| 2079 | ZwOpenTransaction@20 | |
| 2080 | ZwOpenTransactionManager@24 | |
| 2081 | ZwPlugPlayControl@12 | |
| 2082 | ZwPowerInformation@20 | |
| 2083 | ZwPrePrepareComplete@8 | |
| 2084 | ZwPrePrepareEnlistment@8 | |
| 2085 | ZwPrepareComplete@8 | |
| 2086 | ZwPrepareEnlistment@8 | |
| 2087 | 677 | ZwPrivilegeCheck@12 |
| 2088 | 678 | ZwPrivilegeObjectAuditAlarm@24 |
| 2089 | 679 | ZwPrivilegedServiceAuditAlarm@20 |
| 2090 | ZwPropagationComplete@16 | |
| 2091 | ZwPropagationFailed@12 | |
| 2092 | 680 | ZwProtectVirtualMemory@20 |
| 2093 | ZwPssCaptureVaSpaceBulk@20 | |
| 2094 | 681 | ZwPulseEvent@8 |
| 2095 | ZwQueryAttributesFile@8 | |
| 2096 | ZwQueryAuxiliaryCounterFrequency@4 | |
| 2097 | ZwQueryBootEntryOrder@8 | |
| 2098 | ZwQueryBootOptions@8 | |
| 2099 | ZwQueryDebugFilterState@8 | |
| 2100 | 682 | ZwQueryDefaultLocale@8 |
| 2101 | ZwQueryDefaultUILanguage@4 | |
| 2102 | 683 | ZwQueryDirectoryFile@44 |
| 2103 | ZwQueryDirectoryFileEx@40 | |
| 2104 | 684 | ZwQueryDirectoryObject@28 |
| 2105 | ZwQueryDriverEntryOrder@8 | |
| 2106 | 685 | ZwQueryEaFile@36 |
| 2107 | 686 | ZwQueryEvent@20 |
| 2108 | ZwQueryFullAttributesFile@8 | |
| 2109 | ZwQueryInformationAtom@20 | |
| 2110 | ZwQueryInformationByName@20 | |
| 2111 | ZwQueryInformationEnlistment@20 | |
| 2112 | 687 | ZwQueryInformationFile@20 |
| 2113 | ZwQueryInformationJobObject@20 | |
| 2114 | 688 | ZwQueryInformationPort@20 |
| 2115 | 689 | ZwQueryInformationProcess@20 |
| 2116 | ZwQueryInformationResourceManager@20 | |
| 2117 | 690 | ZwQueryInformationThread@20 |
| 2118 | 691 | ZwQueryInformationToken@20 |
| 2119 | ZwQueryInformationTransaction@20 | |
| 2120 | ZwQueryInformationTransactionManager@20 | |
| 2121 | ZwQueryInformationWorkerFactory@20 | |
| 2122 | ZwQueryInstallUILanguage@4 | |
| 2123 | ZwQueryIntervalProfile@8 | |
| 2124 | ZwQueryIoCompletion@20 | |
| 2125 | ZwQueryIoRingCapabilities@8 | |
| 692 | ZwQueryIntervalProfile@8 ; Windows NT 3.1-3.51 has ABI "ZwQueryIntervalProfile@4", Windows NT 4.0 and new has ABI "ZwQueryIntervalProfile@8" | |
| 2126 | 693 | ZwQueryKey@20 |
| 2127 | ZwQueryLicenseValue@20 | |
| 2128 | ZwQueryMultipleValueKey@24 | |
| 2129 | 694 | ZwQueryMutant@20 |
| 2130 | 695 | ZwQueryObject@20 |
| 2131 | ZwQueryOpenSubKeys@8 | |
| 2132 | ZwQueryOpenSubKeysEx@16 | |
| 2133 | 696 | ZwQueryPerformanceCounter@8 |
| 2134 | ZwQueryPortInformationProcess@0 | |
| 2135 | ZwQueryQuotaInformationFile@36 | |
| 2136 | 697 | ZwQuerySection@20 |
| 2137 | ZwQuerySecurityAttributesToken@24 | |
| 2138 | 698 | ZwQuerySecurityObject@20 |
| 2139 | ZwQuerySecurityPolicy@24 | |
| 2140 | 699 | ZwQuerySemaphore@20 |
| 2141 | 700 | ZwQuerySymbolicLinkObject@12 |
| 2142 | 701 | ZwQuerySystemEnvironmentValue@16 |
| 2143 | ZwQuerySystemEnvironmentValueEx@20 | |
| 2144 | 702 | ZwQuerySystemInformation@16 |
| 2145 | ZwQuerySystemInformationEx@24 | |
| 2146 | 703 | ZwQuerySystemTime@4 |
| 2147 | 704 | ZwQueryTimer@20 |
| 2148 | ZwQueryTimerResolution@12 | |
| 2149 | 705 | ZwQueryValueKey@24 |
| 2150 | 706 | ZwQueryVirtualMemory@24 |
| 2151 | 707 | ZwQueryVolumeInformationFile@20 |
| 2152 | ZwQueryWnfStateData@24 | |
| 2153 | ZwQueryWnfStateNameInformation@20 | |
| 2154 | ZwQueueApcThread@20 | |
| 2155 | ZwQueueApcThreadEx2@28 | |
| 2156 | ZwQueueApcThreadEx@24 | |
| 2157 | 708 | ZwRaiseException@12 |
| 2158 | 709 | ZwRaiseHardError@24 |
| 2159 | 710 | ZwReadFile@36 |
| 2160 | ZwReadFileScatter@36 | |
| 2161 | ZwReadOnlyEnlistment@8 | |
| 2162 | 711 | ZwReadRequestData@24 |
| 2163 | 712 | ZwReadVirtualMemory@20 |
| 2164 | ZwReadVirtualMemoryEx@24 | |
| 2165 | ZwRecoverEnlistment@8 | |
| 2166 | ZwRecoverResourceManager@4 | |
| 2167 | ZwRecoverTransactionManager@4 | |
| 2168 | ZwRegisterProtocolAddressInformation@20 | |
| 2169 | 713 | ZwRegisterThreadTerminatePort@4 |
| 2170 | ZwReleaseCMFViewOwnership@0 | |
| 2171 | ZwReleaseKeyedEvent@16 | |
| 2172 | 714 | ZwReleaseMutant@8 |
| 715 | ; ZwReleaseProcessMutant@0 ; removed in Windows NT 4.0 | |
| 2173 | 716 | ZwReleaseSemaphore@12 |
| 2174 | ZwReleaseWorkerFactoryWorker@4 | |
| 2175 | ZwRemoveIoCompletion@20 | |
| 2176 | ZwRemoveIoCompletionEx@24 | |
| 2177 | ZwRemoveProcessDebug@8 | |
| 2178 | ZwRenameKey@8 | |
| 2179 | ZwRenameTransactionManager@8 | |
| 717 | ; ZwRenameValueKey@16 ; removed in Windows NT 3.5 | |
| 2180 | 718 | ZwReplaceKey@12 |
| 2181 | ZwReplacePartitionUnit@12 | |
| 2182 | 719 | ZwReplyPort@8 |
| 2183 | 720 | ZwReplyWaitReceivePort@16 |
| 2184 | ZwReplyWaitReceivePortEx@20 | |
| 2185 | 721 | ZwReplyWaitReplyPort@8 |
| 2186 | ZwRequestDeviceWakeup@4 | |
| 2187 | 722 | ZwRequestPort@8 |
| 2188 | 723 | ZwRequestWaitReplyPort@12 |
| 2189 | ZwRequestWakeupLatency@4 | |
| 2190 | 724 | ZwResetEvent@8 |
| 2191 | ZwResetWriteWatch@12 | |
| 2192 | 725 | ZwRestoreKey@12 |
| 2193 | ZwResumeProcess@4 | |
| 2194 | 726 | ZwResumeThread@8 |
| 2195 | ZwRevertContainerImpersonation@0 | |
| 2196 | ZwRollbackComplete@8 | |
| 2197 | ZwRollbackEnlistment@8 | |
| 2198 | ZwRollbackRegistryTransaction@8 | |
| 2199 | ZwRollbackTransaction@8 | |
| 2200 | ZwRollforwardTransactionManager@8 | |
| 2201 | 727 | ZwSaveKey@8 |
| 2202 | ZwSaveKeyEx@12 | |
| 2203 | ZwSaveMergedKeys@12 | |
| 2204 | ZwSecureConnectPort@36 | |
| 2205 | ZwSerializeBoot@0 | |
| 2206 | ZwSetBootEntryOrder@8 | |
| 2207 | ZwSetBootOptions@8 | |
| 2208 | ZwSetCachedSigningLevel2@24 | |
| 2209 | ZwSetCachedSigningLevel@20 | |
| 2210 | 728 | ZwSetContextThread@8 |
| 2211 | ZwSetDebugFilterState@12 | |
| 2212 | 729 | ZwSetDefaultHardErrorPort@4 |
| 2213 | 730 | ZwSetDefaultLocale@8 |
| 2214 | ZwSetDefaultUILanguage@4 | |
| 2215 | ZwSetDriverEntryOrder@8 | |
| 2216 | 731 | ZwSetEaFile@16 |
| 2217 | 732 | ZwSetEvent@8 |
| 2218 | ZwSetEventBoostPriority@4 | |
| 2219 | 733 | ZwSetHighEventPair@4 |
| 2220 | 734 | ZwSetHighWaitLowEventPair@4 |
| 2221 | ZwSetIRTimer@8 | |
| 2222 | ZwSetInformationDebugObject@20 | |
| 2223 | ZwSetInformationEnlistment@16 | |
| 735 | ; ZwSetHighWaitLowThread@0 ; removed in Windows 2000 | |
| 2224 | 736 | ZwSetInformationFile@20 |
| 2225 | ZwSetInformationIoRing@16 | |
| 2226 | ZwSetInformationJobObject@16 | |
| 2227 | 737 | ZwSetInformationKey@16 |
| 2228 | ZwSetInformationObject@16 | |
| 2229 | 738 | ZwSetInformationProcess@16 |
| 2230 | ZwSetInformationResourceManager@16 | |
| 2231 | ZwSetInformationSymbolicLink@16 | |
| 2232 | 739 | ZwSetInformationThread@16 |
| 2233 | 740 | ZwSetInformationToken@16 |
| 2234 | ZwSetInformationTransaction@16 | |
| 2235 | ZwSetInformationTransactionManager@16 | |
| 2236 | ZwSetInformationVirtualMemory@24 | |
| 2237 | ZwSetInformationWorkerFactory@16 | |
| 2238 | ZwSetIntervalProfile@8 | |
| 2239 | ZwSetIoCompletion@20 | |
| 2240 | ZwSetIoCompletionEx@24 | |
| 741 | ZwSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "ZwSetIntervalProfile@4", Windows NT 3.51 and new has ABI "ZwSetIntervalProfile@8" | |
| 2241 | 742 | ZwSetLdtEntries@24 |
| 2242 | 743 | ZwSetLowEventPair@4 |
| 2243 | 744 | ZwSetLowWaitHighEventPair@4 |
| 2244 | ZwSetQuotaInformationFile@16 | |
| 745 | ; ZwSetLowWaitHighThread@0 ; removed in Windows 2000 | |
| 2245 | 746 | ZwSetSecurityObject@12 |
| 2246 | 747 | ZwSetSystemEnvironmentValue@8 |
| 2247 | ZwSetSystemEnvironmentValueEx@20 | |
| 2248 | ZwSetSystemInformation@12 | |
| 2249 | ZwSetSystemPowerState@12 | |
| 2250 | 748 | ZwSetSystemTime@8 |
| 2251 | ZwSetThreadExecutionState@8 | |
| 2252 | ZwSetTimer2@16 | |
| 2253 | ZwSetTimer@28 | |
| 2254 | ZwSetTimerEx@16 | |
| 2255 | ZwSetTimerResolution@12 | |
| 2256 | ZwSetUuidSeed@4 | |
| 749 | ZwSetTimer@28 ; Windows NT 3.1-3.5 has ABI "ZwSetTimer@20", Windows NT 3.51 has ABI "ZwSetTimer@24", Windows NT 4.0 and new has ABI "ZwSetTimer@28" | |
| 2257 | 750 | ZwSetValueKey@24 |
| 2258 | 751 | ZwSetVolumeInformationFile@20 |
| 2259 | ZwSetWnfProcessNotificationEvent@4 | |
| 2260 | 752 | ZwShutdownSystem@4 |
| 2261 | ZwShutdownWorkerFactory@8 | |
| 2262 | ZwSignalAndWaitForSingleObject@16 | |
| 2263 | ZwSinglePhaseReject@8 | |
| 2264 | 753 | ZwStartProfile@4 |
| 2265 | 754 | ZwStopProfile@4 |
| 2266 | ZwSubmitIoRing@16 | |
| 2267 | ZwSubscribeWnfStateChange@16 | |
| 2268 | ZwSuspendProcess@4 | |
| 2269 | 755 | ZwSuspendThread@8 |
| 2270 | 756 | ZwSystemDebugControl@24 |
| 2271 | ZwTerminateEnclave@8 | |
| 2272 | ZwTerminateJobObject@8 | |
| 2273 | 757 | ZwTerminateProcess@8 |
| 2274 | 758 | ZwTerminateThread@8 |
| 2275 | 759 | ZwTestAlert@0 |
| 2276 | ZwThawRegistry@0 | |
| 2277 | ZwThawTransactions@0 | |
| 2278 | ZwTraceControl@24 | |
| 2279 | ZwTraceEvent@16 | |
| 2280 | ZwTranslateFilePath@16 | |
| 2281 | ZwUmsThreadYield@4 | |
| 2282 | 760 | ZwUnloadDriver@4 |
| 2283 | ZwUnloadKey2@8 | |
| 2284 | 761 | ZwUnloadKey@4 |
| 2285 | ZwUnloadKeyEx@8 | |
| 2286 | 762 | ZwUnlockFile@20 |
| 2287 | 763 | ZwUnlockVirtualMemory@16 |
| 2288 | 764 | ZwUnmapViewOfSection@8 |
| 2289 | ZwUnmapViewOfSectionEx@12 | |
| 2290 | ZwUnsubscribeWnfStateChange@4 | |
| 2291 | ZwUpdateWnfStateData@28 | |
| 2292 | ZwVdmControl@8 | |
| 2293 | ZwWaitForAlertByThreadId@8 | |
| 2294 | ZwWaitForDebugEvent@16 | |
| 2295 | ZwWaitForKeyedEvent@16 | |
| 2296 | ZwWaitForMultipleObjects32@20 | |
| 765 | ZwVdmControl@8 ; Windows NT 3.1 has ABI "ZwVdmControl@16", Windows NT 3.5 and new has ABI "ZwVdmControl@8" | |
| 766 | ; ZwVdmStartExecution@0 ; removed in Windows NT 3.5 | |
| 2297 | 767 | ZwWaitForMultipleObjects@20 |
| 768 | ; ZwWaitForProcessMutant@0 ; removed in Windows NT 4.0 | |
| 2298 | 769 | ZwWaitForSingleObject@12 |
| 2299 | ZwWaitForWorkViaWorkerFactory@8 | |
| 2300 | 770 | ZwWaitHighEventPair@4 |
| 2301 | 771 | ZwWaitLowEventPair@4 |
| 2302 | ZwWorkerFactoryWorkerReady@4 | |
| 2303 | ZwWow64CallFunction64@28 | |
| 2304 | ZwWow64CsrAllocateCaptureBuffer@8 | |
| 2305 | ZwWow64CsrAllocateMessagePointer@12 | |
| 2306 | ZwWow64CsrCaptureMessageBuffer@16 | |
| 2307 | ZwWow64CsrCaptureMessageString@20 | |
| 2308 | ZwWow64CsrClientCallServer@16 | |
| 2309 | ZwWow64CsrClientConnectToServer@20 | |
| 2310 | ZwWow64CsrFreeCaptureBuffer@4 | |
| 2311 | ZwWow64CsrGetProcessId@0 | |
| 2312 | ZwWow64CsrIdentifyAlertableThread@0 | |
| 2313 | ZwWow64CsrVerifyRegion@8 | |
| 2314 | ZwWow64DebuggerCall@20 | |
| 2315 | ZwWow64GetCurrentProcessorNumberEx@4 | |
| 2316 | ZwWow64GetNativeSystemInformation@16 | |
| 2317 | ZwWow64InterlockedPopEntrySList@4 | |
| 2318 | ZwWow64QueryInformationProcess64@20 | |
| 2319 | ZwWow64QueryVirtualMemory64@32 | |
| 2320 | ZwWow64ReadVirtualMemory64@28 | |
| 2321 | ZwWow64WriteVirtualMemory64@28 | |
| 2322 | 772 | ZwWriteFile@36 |
| 2323 | ZwWriteFileGather@36 | |
| 2324 | 773 | ZwWriteRequestData@24 |
| 2325 | 774 | ZwWriteVirtualMemory@20 |
| 775 | ; xRtlDosPathNameToNtPathName@16 ; removed in Windows NT 3.5 | |
| 776 | ||
| 777 | ; This is list of non-stdcall FPU emulator symbols, available since Windows NT 3.1 and removed in Windows XP SP2 and Windows Server 2003 SP1 | |
| 778 | ; NPXEMULATORTABLE DATA ; removed in Windows XP | |
| 779 | ; RestoreEm87Context | |
| 780 | ; SaveEm87Context | |
| 781 | ; __eCommonExceptions | |
| 782 | ; __eEmulatorInit | |
| 783 | ; __eF2XM1 | |
| 784 | ; __eFABS | |
| 785 | ; __eFADD32 | |
| 786 | ; __eFADD64 | |
| 787 | ; __eFADDPreg | |
| 788 | ; __eFADDreg | |
| 789 | ; __eFADDtop | |
| 790 | ; __eFCHS | |
| 791 | ; __eFCOM32 | |
| 792 | ; __eFCOM64 | |
| 793 | ; __eFCOM | |
| 794 | ; __eFCOMP32 | |
| 795 | ; __eFCOMP64 | |
| 796 | ; __eFCOMP | |
| 797 | ; __eFCOMPP | |
| 798 | ; __eFCOS | |
| 799 | ; __eFDECSTP | |
| 800 | ; __eFDIV32 | |
| 801 | ; __eFDIV64 | |
| 802 | ; __eFDIVPreg | |
| 803 | ; __eFDIVR32 | |
| 804 | ; __eFDIVR64 | |
| 805 | ; __eFDIVRPreg | |
| 806 | ; __eFDIVRreg | |
| 807 | ; __eFDIVRtop | |
| 808 | ; __eFDIVreg | |
| 809 | ; __eFDIVtop | |
| 810 | ; __eFFREE | |
| 811 | ; __eFIADD16 | |
| 812 | ; __eFIADD32 | |
| 813 | ; __eFICOM16 | |
| 814 | ; __eFICOM32 | |
| 815 | ; __eFICOMP16 | |
| 816 | ; __eFICOMP32 | |
| 817 | ; __eFIDIV16 | |
| 818 | ; __eFIDIV32 | |
| 819 | ; __eFIDIVR16 | |
| 820 | ; __eFIDIVR32 | |
| 821 | ; __eFILD16 | |
| 822 | ; __eFILD32 | |
| 823 | ; __eFILD64 | |
| 824 | ; __eFIMUL16 | |
| 825 | ; __eFIMUL32 | |
| 826 | ; __eFINCSTP | |
| 827 | ; __eFINIT | |
| 828 | ; __eFIST16 | |
| 829 | ; __eFIST32 | |
| 830 | ; __eFISTP16 | |
| 831 | ; __eFISTP32 | |
| 832 | ; __eFISTP64 | |
| 833 | ; __eFISUB16 | |
| 834 | ; __eFISUB32 | |
| 835 | ; __eFISUBR16 | |
| 836 | ; __eFISUBR32 | |
| 837 | ; __eFLD1 | |
| 838 | ; __eFLD32 | |
| 839 | ; __eFLD64 | |
| 840 | ; __eFLD80 | |
| 841 | ; __eFLDCW | |
| 842 | ; __eFLDENV | |
| 843 | ; __eFLDL2E | |
| 844 | ; __eFLDLN2 | |
| 845 | ; __eFLDPI | |
| 846 | ; __eFLDZ | |
| 847 | ; __eFMUL32 | |
| 848 | ; __eFMUL64 | |
| 849 | ; __eFMULPreg | |
| 850 | ; __eFMULreg | |
| 851 | ; __eFMULtop | |
| 852 | ; __eFPATAN | |
| 853 | ; __eFPREM | |
| 854 | ; __eFPREM1 | |
| 855 | ; __eFPTAN | |
| 856 | ; __eFRNDINT | |
| 857 | ; __eFRSTOR | |
| 858 | ; __eFSAVE | |
| 859 | ; __eFSCALE | |
| 860 | ; __eFSIN | |
| 861 | ; __eFSQRT | |
| 862 | ; __eFST32 | |
| 863 | ; __eFST64 | |
| 864 | ; __eFST | |
| 865 | ; __eFSTCW | |
| 866 | ; __eFSTENV | |
| 867 | ; __eFSTP32 | |
| 868 | ; __eFSTP64 | |
| 869 | ; __eFSTP80 | |
| 870 | ; __eFSTP | |
| 871 | ; __eFSTSW | |
| 872 | ; __eFSUB32 | |
| 873 | ; __eFSUB64 | |
| 874 | ; __eFSUBPreg | |
| 875 | ; __eFSUBR32 | |
| 876 | ; __eFSUBR64 | |
| 877 | ; __eFSUBRPreg | |
| 878 | ; __eFSUBRreg | |
| 879 | ; __eFSUBRtop | |
| 880 | ; __eFSUBreg | |
| 881 | ; __eFSUBtop | |
| 882 | ; __eFTST | |
| 883 | ; __eFUCOM | |
| 884 | ; __eFUCOMP | |
| 885 | ; __eFUCOMPP | |
| 886 | ; __eFXAM | |
| 887 | ; __eFXCH | |
| 888 | ; __eFXTRACT | |
| 889 | ; __eFYL2X | |
| 890 | ; __eFYL2XP1 | |
| 891 | ; __eGetStatusWord | |
| 892 | ||
| 893 | ; This is list of symbols added in Windows NT 3.5 | |
| 894 | LdrDisableThreadCalloutsForDll@4 | |
| 895 | NlsMbCodePageTag DATA | |
| 896 | NlsMbOemCodePageTag DATA | |
| 897 | NtClearEvent@4 | |
| 898 | NtCreateIoCompletion@16 | |
| 899 | NtDeleteFile@4 | |
| 900 | NtOpenIoCompletion@12 | |
| 901 | NtQueryAttributesFile@8 | |
| 902 | NtQueryIoCompletion@20 | |
| 903 | NtQueryTimerResolution@12 | |
| 904 | NtRemoveIoCompletion@20 | |
| 905 | NtSetInformationObject@16 | |
| 906 | NtSetSystemInformation@12 | |
| 907 | NtSetTimerResolution@12 | |
| 908 | RtlCompressBuffer@32 | |
| 909 | RtlCutoverTimeToSystemTime@16 | |
| 910 | RtlDecompressBuffer@24 | |
| 911 | RtlDecompressFragment@32 | |
| 912 | RtlFormatCurrentUserKeyPath@4 | |
| 913 | RtlGetCompressionWorkSpaceSize@12 | |
| 914 | RtlGetLongestNtPathLength@0 | |
| 915 | ; RtlGetUserFlagsHeap@16 ; removed in Windows NT 3.51 | |
| 916 | ; RtlGetUserValueHeap@16 ; removed in Windows NT 3.51 | |
| 917 | RtlIsTextUnicode@12 | |
| 918 | RtlSetUserFlagsHeap@20 | |
| 919 | RtlSetUserValueHeap@16 | |
| 920 | RtlWalkHeap@8 | |
| 921 | RtlZeroHeap@8 | |
| 922 | RtlxAnsiStringToUnicodeSize@4 | |
| 923 | RtlxOemStringToUnicodeSize@4 | |
| 924 | RtlxUnicodeStringToAnsiSize@4 | |
| 925 | RtlxUnicodeStringToOemSize@4 | |
| 926 | ZwClearEvent@4 | |
| 927 | ZwCreateIoCompletion@16 | |
| 928 | ZwDeleteFile@4 | |
| 929 | ZwOpenIoCompletion@12 | |
| 930 | ZwQueryAttributesFile@8 | |
| 931 | ZwQueryIoCompletion@20 | |
| 932 | ZwQueryTimerResolution@12 | |
| 933 | ZwRemoveIoCompletion@20 | |
| 934 | ZwSetInformationObject@16 | |
| 935 | ZwSetSystemInformation@12 | |
| 936 | ZwSetTimerResolution@12 | |
| 937 | ||
| 938 | ; This is list of symbols added in Windows NT 3.51 | |
| 939 | KiUserCallbackDispatcher@12 ; really stdcall @12, gendef detects it incorrectly | |
| 940 | LdrEnumResources@20 | |
| 941 | NtAllocateUuids@16 ; Windows NT 3.51-4.0 has ABI "NtAllocateUuids@12", Windows 2000 and new has ABI "NtAllocateUuids@16" | |
| 942 | NtCallbackReturn@12 | |
| 943 | ; NtEnumerateBus@8 ; removed in Windows NT 4.0 | |
| 944 | NtGetPlugPlayEvent@16 ; removed in Windows 8 | |
| 945 | NtPlugPlayControl@12 ; Windows NT 3.51-4.0 has ABI "NtPlugPlayControl@16", Windows 2000 and new has ABI "NtPlugPlayControl@12" | |
| 946 | ; NtRegisterNewDevice@8 ; removed in Windows NT 4.0 | |
| 947 | NtSetIoCompletion@20 | |
| 948 | ; NtW32Call@20 ; removed in Windows NT 4.0 SP4 | |
| 949 | RtlCreateQueryDebugBuffer@8 | |
| 950 | RtlCreateTagHeap@16 | |
| 951 | RtlDestroyQueryDebugBuffer@4 | |
| 952 | RtlEnumProcessHeaps@8 | |
| 953 | RtlExtendHeap@16 ; removed in Windows Vista | |
| 954 | RtlGetProcessHeaps@8 | |
| 955 | RtlGetUserInfoHeap@20 | |
| 956 | RtlIsNameLegalDOS8Dot3@12 | |
| 957 | RtlProtectHeap@8 | |
| 958 | RtlQueryProcessDebugInformation@12 | |
| 959 | RtlQueryTagHeap@20 | |
| 960 | RtlUsageHeap@12 ; removed in Windows Vista | |
| 961 | RtlValidateProcessHeaps@0 | |
| 962 | ZwAllocateUuids@16 ; Windows NT 3.51-4.0 has ABI "ZwAllocateUuids@12", Windows 2000 and new has ABI "ZwAllocateUuids@16" | |
| 963 | ZwCallbackReturn@12 | |
| 964 | ; ZwEnumerateBus@8 ; remvoed in Windows NT 4.0 | |
| 965 | ZwGetPlugPlayEvent@16 ; removed in Windows 8 | |
| 966 | ZwPlugPlayControl@12 ; Windows NT 3.51-4.0 has ABI "ZwPlugPlayControl@16", Windows 2000 and new has ABI "ZwPlugPlayControl@12" | |
| 967 | ; ZwRegisterNewDevice@8 ; removed in Windows NT 4.0 | |
| 968 | ZwSetIoCompletion@20 | |
| 969 | ZwSetSystemPowerState@12 | |
| 970 | ; ZwW32Call@20 ; removed in Windows NT 4.0 SP4 | |
| 971 | ||
| 972 | ; This is list of symbols added in Windows NT 4.0 | |
| 973 | ; public: virtual void *__thiscall CBufferAllocator::Allocate(unsigned long) | |
| 974 | ; ?Allocate@CBufferAllocator@@UAEPAXK@Z ; has WINAPI (@4) ; removed in Windows 2000 | |
| 975 | KiRaiseUserExceptionDispatcher@0 | |
| 976 | NlsAnsiCodePage DATA | |
| 977 | NtAddAtom@12 ; Windows NT 4.0 has ABI "NtAddAtom@8", Windows 2000 and new has ABI "NtAddAtom@12" | |
| 978 | ; NtCreateChannel@8 ; removed in Windows XP | |
| 979 | NtDeleteAtom@4 | |
| 980 | NtDeleteObjectAuditAlarm@12 | |
| 981 | NtFindAtom@12 ; Windows NT 4.0 has ABI "NtFindAtom@8", Windows 2000 and new has ABI "NtFindAtom@12" | |
| 982 | ; NtListenChannel@8 ; removed in Windows XP | |
| 983 | NtLoadKey2@12 | |
| 984 | ; NtOpenChannel@8 ; removed in Windows XP | |
| 985 | NtQueryFullAttributesFile@8 | |
| 986 | NtQueryInformationAtom@20 | |
| 987 | NtQueryMultipleValueKey@24 | |
| 988 | ; NtQueryOleDirectoryFile@44 ; removed in Windows 2000 | |
| 989 | NtQueueApcThread@20 | |
| 990 | ; NtReplyWaitSendChannel@12 ; removed in Windows XP | |
| 991 | ; NtSendWaitReplyChannel@16 ; removed in Windows XP | |
| 992 | ; NtSetContextChannel@4 ; removed in Windows XP | |
| 993 | NtSignalAndWaitForSingleObject@16 | |
| 994 | NtYieldExecution@0 | |
| 995 | ; PropertyLengthAsVariant@16 ; removed in Windows Vista | |
| 996 | RtlAddAtomToAtomTable@12 | |
| 997 | RtlAddCompoundAce@24 | |
| 998 | RtlAllocateHandle@8 | |
| 999 | ; RtlClosePropertySet@4 ; removed in Windows 2000 | |
| 1000 | ; RtlCompareVariants@12 ; removed in Windows 2000 | |
| 1001 | ; RtlConvertPropertyToVariant@16 ; removed in Windows Vista | |
| 1002 | ; RtlConvertVariantToProperty@28 ; removed in Windows Vista | |
| 1003 | RtlCreateAtomTable@8 | |
| 1004 | ; RtlCreatePropertySet@36 ; removed in Windows 2000 | |
| 1005 | RtlDeleteAtomFromAtomTable@8 | |
| 1006 | RtlDeleteNoSplay@8 | |
| 1007 | RtlDestroyAtomTable@4 | |
| 1008 | RtlDestroyHandleTable@4 | |
| 1009 | RtlDowncaseUnicodeString@12 | |
| 1010 | RtlEmptyAtomTable@8 | |
| 1011 | ; RtlEnumerateProperties@24 ; removed in Windows 2000 | |
| 1012 | ; RtlFlushPropertySet@4 ; removed in Windows 2000 | |
| 1013 | RtlFreeHandle@8 | |
| 1014 | RtlFreeUserThreadStack@8 ; removed in Windows Vista | |
| 1015 | ; RtlGuidToPropertySetName@8 ; removed in Windows 2000 | |
| 1016 | RtlImageRvaToSection@12 | |
| 1017 | RtlImageRvaToVa@16 | |
| 1018 | RtlInitializeAtomPackage@4 | |
| 1019 | RtlInitializeHandleTable@12 | |
| 1020 | RtlIsValidHandle@8 | |
| 1021 | RtlIsValidIndexHandle@12 | |
| 1022 | RtlLookupAtomInAtomTable@12 | |
| 1023 | RtlPinAtomInAtomTable@8 | |
| 1024 | ; RtlPropertySetNameToGuid@12 ; removed in Windows 2000 | |
| 1025 | RtlQueryAtomInAtomTable@24 | |
| 1026 | ; RtlQueryProperties@28 ; removed in Windows 2000 | |
| 1027 | ; RtlQueryPropertyNames@16 ; removed in Windows 2000 | |
| 1028 | ; RtlQueryPropertySet@8 ; removed in Windows 2000 | |
| 1029 | RtlSetAttributesSecurityDescriptor@12 | |
| 1030 | ; RtlSetProperties@28 ; removed in Windows 2000 | |
| 1031 | ; RtlSetPropertyNames@16 ; removed in Windows 2000 | |
| 1032 | ; RtlSetPropertySetClassId@8 ; removed in Windows 2000 | |
| 1033 | ; RtlSetUnicodeCallouts@4 ; removed in Windows Vista | |
| 1034 | RtlTryEnterCriticalSection@4 | |
| 1035 | ZwAddAtom@12 ; Windows NT 4.0 has ABI "ZwAddAtom@8", Windows 2000 and new has ABI "ZwAddAtom@12" | |
| 1036 | ; ZwCreateChannel@8 ; removed in Windows XP | |
| 1037 | ZwDeleteAtom@4 | |
| 1038 | ZwDeleteObjectAuditAlarm@12 | |
| 1039 | ZwFindAtom@12 ; Windows NT 4.0 has ABI "ZwFindAtom@8", Windows 2000 and new has ABI "ZwFindAtom@12" | |
| 1040 | ; ZwListenChannel@8 ; removed in Windows XP | |
| 1041 | ZwLoadKey2@12 | |
| 1042 | ; ZwOpenChannel@8 ; removed in Windows XP | |
| 1043 | ZwQueryFullAttributesFile@8 | |
| 1044 | ZwQueryInformationAtom@20 | |
| 1045 | ZwQueryMultipleValueKey@24 | |
| 1046 | ; ZwQueryOleDirectoryFile@44 ; removed in Windows 2000 | |
| 1047 | ZwQueueApcThread@20 | |
| 1048 | ; ZwReplyWaitSendChannel@12 ; removed in Windows XP | |
| 1049 | ; ZwSendWaitReplyChannel@16 ; removed in Windows XP | |
| 1050 | ; ZwSetContextChannel@4 ; removed in Windows XP | |
| 1051 | ZwSignalAndWaitForSingleObject@16 | |
| 2326 | 1052 | ZwYieldExecution@0 |
| 2327 | vDbgPrintEx@16 | |
| 2328 | vDbgPrintExWithPrefix@20 | |
| 1053 | ||
| 1054 | ; In Windows NT 4.0 SP1 was not added any new symbol | |
| 1055 | ||
| 1056 | ; This is list of symbols added in Windows NT 4.0 SP2 | |
| 1057 | NtReadFileScatter@36 | |
| 1058 | NtWriteFileGather@36 | |
| 1059 | ; RtlOnMappedStreamEvent@12 ; removed in Windows 2000 | |
| 1060 | ZwReadFileScatter@36 | |
| 1061 | ZwWriteFileGather@36 | |
| 1062 | ||
| 1063 | ; This is list of symbols added in Windows NT 4.0 SP3 | |
| 1064 | RtlInitializeCriticalSectionAndSpinCount@8 | |
| 1065 | RtlSetCriticalSectionSpinCount@8 | |
| 1066 | ||
| 1067 | ; In Windows NT 4.0 SP4 was not added any new symbol but some were removed | |
| 1068 | ||
| 1069 | ; In Windows NT 4.0 SP5 was not added any new symbol | |
| 1070 | ||
| 1071 | ; In Windows NT 4.0 SP6 was not added any new symbol | |
| 1072 | ||
| 1073 | ; In Windows NT 4.0 SP6a was not added any new symbol | |
| 1074 | ||
| 1075 | ; This is list of symbols added in Windows 2000 | |
| 1076 | DbgPrintReturnControlC ; cdecl | |
| 1077 | LdrAlternateResourcesEnabled@0 ; removed in Windows Vista | |
| 1078 | LdrFlushAlternateResourceModules@0 | |
| 1079 | LdrLoadAlternateResourceModule@16 ; Windows 2000-2003 has ABI "LdrLoadAlternateResourceModule@8", Windows Vista and new has ABI "LdrLoadAlternateResourceModule@16" | |
| 1080 | LdrUnloadAlternateResourceModule@4 | |
| 1081 | NtAccessCheckByType@44 | |
| 1082 | NtAccessCheckByTypeAndAuditAlarm@64 | |
| 1083 | NtAccessCheckByTypeResultList@44 | |
| 1084 | NtAccessCheckByTypeResultListAndAuditAlarm@64 | |
| 1085 | NtAccessCheckByTypeResultListAndAuditAlarmByHandle@68 | |
| 1086 | NtAllocateUserPhysicalPages@12 | |
| 1087 | NtAreMappedFilesTheSame@8 | |
| 1088 | NtAssignProcessToJobObject@8 | |
| 1089 | NtCancelDeviceWakeupRequest@4 ; removed in Windows 7 | |
| 1090 | NtCreateJobObject@12 | |
| 1091 | NtCreateWaitablePort@20 | |
| 1092 | NtFilterToken@24 | |
| 1093 | NtFreeUserPhysicalPages@12 | |
| 1094 | NtGetDevicePowerState@8 | |
| 1095 | NtGetWriteWatch@28 | |
| 1096 | NtImpersonateAnonymousToken@4 | |
| 1097 | NtIsSystemResumeAutomatic@0 | |
| 1098 | NtMapUserPhysicalPages@12 | |
| 1099 | NtMapUserPhysicalPagesScatter@12 | |
| 1100 | NtNotifyChangeMultipleKeys@48 | |
| 1101 | NtOpenJobObject@12 | |
| 1102 | NtQueryDefaultUILanguage@4 | |
| 1103 | NtQueryInformationJobObject@20 | |
| 1104 | NtQueryInstallUILanguage@4 | |
| 1105 | NtQueryOpenSubKeys@8 | |
| 1106 | NtQueryQuotaInformationFile@36 | |
| 1107 | NtReplyWaitReceivePortEx@20 | |
| 1108 | NtRequestDeviceWakeup@4 ; removed in Windows 7 | |
| 1109 | NtResetWriteWatch@12 | |
| 1110 | NtSaveMergedKeys@12 | |
| 1111 | NtSecureConnectPort@36 | |
| 1112 | NtSetDefaultUILanguage@4 | |
| 1113 | NtSetInformationJobObject@16 | |
| 1114 | NtSetQuotaInformationFile@16 | |
| 1115 | NtSetThreadExecutionState@8 | |
| 1116 | NtSetUuidSeed@4 | |
| 1117 | NtTerminateJobObject@8 | |
| 1118 | RtlAddAccessAllowedAceEx@20 | |
| 1119 | RtlAddAccessAllowedObjectAce@28 | |
| 1120 | RtlAddAccessDeniedAceEx@20 | |
| 1121 | RtlAddAccessDeniedObjectAce@28 | |
| 1122 | RtlAddAuditAccessAceEx@28 | |
| 1123 | RtlAddAuditAccessObjectAce@36 | |
| 1124 | RtlAddRange@36 ; removed in Windows Server 2003 | |
| 1125 | RtlCallbackLpcClient@12 ; removed in Windows XP | |
| 1126 | RtlCancelTimer@8 | |
| 1127 | RtlCheckForOrphanedCriticalSections@4 | |
| 1128 | RtlConvertToAutoInheritSecurityObject@24 | |
| 1129 | RtlCopyRangeList@8 ; removed in Windows Server 2003 | |
| 1130 | RtlCreateLpcServer@24 ; removed in Windows XP | |
| 1131 | RtlCreateTimer@28 | |
| 1132 | RtlCreateTimerQueue@4 | |
| 1133 | RtlDebugPrintTimes@0 | |
| 1134 | RtlDefaultNpAcl@4 | |
| 1135 | RtlDeleteOwnersRanges@8 ; removed in Windows Server 2003 | |
| 1136 | RtlDeleteRange@24 ; removed in Windows Server 2003 | |
| 1137 | RtlDeleteTimer@12 | |
| 1138 | RtlDeleteTimerQueue@4 | |
| 1139 | RtlDeleteTimerQueueEx@8 | |
| 1140 | RtlDeregisterWait@4 | |
| 1141 | RtlDeregisterWaitEx@8 | |
| 1142 | RtlDnsHostNameToComputerName@12 | |
| 1143 | RtlEnableEarlyCriticalSectionEventCreation@0 | |
| 1144 | RtlFindLastBackwardRunClear@12 | |
| 1145 | RtlFindLeastSignificantBit@8 | |
| 1146 | RtlFindMostSignificantBit@8 | |
| 1147 | RtlFindNextForwardRunClear@12 | |
| 1148 | RtlFindRange@48 ; removed in Windows Server 2003 | |
| 1149 | ; RtlFreeRangeList@4 ; removed in Windows Server 2003 | |
| 1150 | RtlGUIDFromString@8 | |
| 1151 | RtlGetFirstRange@12 ; removed in Windows Server 2003 | |
| 1152 | RtlGetNextRange@12 ; removed in Windows Server 2003 | |
| 1153 | RtlGetSecurityDescriptorRMControl@8 | |
| 1154 | RtlGetVersion@4 | |
| 1155 | RtlImpersonateLpcClient@8 ; removed in Windows XP | |
| 1156 | ; RtlInitializeRangeList@4 ; removed in Windows Server 2003 | |
| 1157 | RtlInt64ToUnicodeString@16 | |
| 1158 | RtlInvertRangeList@8 ; removed in Windows Server 2003 | |
| 1159 | RtlIsRangeAvailable@40 ; removed in Windows Server 2003 | |
| 1160 | RtlMergeRangeLists@16 ; removed in Windows Server 2003 | |
| 1161 | RtlNewSecurityObjectEx@32 | |
| 1162 | RtlQueueWorkItem@12 | |
| 1163 | RtlRegisterWait@24 | |
| 1164 | RtlSelfRelativeToAbsoluteSD2@8 | |
| 1165 | RtlSetControlSecurityDescriptor@12 | |
| 1166 | RtlSetIoCompletionCallback@12 | |
| 1167 | RtlSetSecurityDescriptorRMControl@8 | |
| 1168 | RtlSetSecurityObjectEx@24 | |
| 1169 | RtlSetThreadPoolStartFunc@8 | |
| 1170 | RtlSetTimer@28 | |
| 1171 | RtlShutdownLpcServer@4 ; removed in Windows XP | |
| 1172 | RtlStringFromGUID@8 | |
| 1173 | @RtlUlongByteSwap@4 ; fastcall | |
| 1174 | @RtlUlonglongByteSwap@8 ; fastcall | |
| 1175 | RtlUpdateTimer@16 | |
| 1176 | @RtlUshortByteSwap@4 ; fastcall | |
| 1177 | RtlValidRelativeSecurityDescriptor@12 | |
| 1178 | RtlVerifyVersionInfo@16 | |
| 1179 | RtlWalkFrameChain@12 | |
| 1180 | VerSetConditionMask@16 | |
| 1181 | ZwAccessCheckByType@44 | |
| 1182 | ZwAccessCheckByTypeAndAuditAlarm@64 | |
| 1183 | ZwAccessCheckByTypeResultList@44 | |
| 1184 | ZwAccessCheckByTypeResultListAndAuditAlarm@64 | |
| 1185 | ZwAccessCheckByTypeResultListAndAuditAlarmByHandle@68 | |
| 1186 | ZwAllocateUserPhysicalPages@12 | |
| 1187 | ZwAreMappedFilesTheSame@8 | |
| 1188 | ZwAssignProcessToJobObject@8 | |
| 1189 | ZwCancelDeviceWakeupRequest@4 ; removed in Windows 7 | |
| 1190 | ZwCreateJobObject@12 | |
| 1191 | ZwCreateWaitablePort@20 | |
| 1192 | ZwFilterToken@24 | |
| 1193 | ZwFreeUserPhysicalPages@12 | |
| 1194 | ZwGetDevicePowerState@8 | |
| 1195 | ZwGetWriteWatch@28 | |
| 1196 | ZwImpersonateAnonymousToken@4 | |
| 1197 | ZwInitiatePowerAction@16 | |
| 1198 | ZwIsSystemResumeAutomatic@0 | |
| 1199 | ZwMapUserPhysicalPages@12 | |
| 1200 | ZwMapUserPhysicalPagesScatter@12 | |
| 1201 | ZwNotifyChangeMultipleKeys@48 | |
| 1202 | ZwOpenJobObject@12 | |
| 1203 | ZwPowerInformation@20 | |
| 1204 | ZwQueryDefaultUILanguage@4 | |
| 1205 | ZwQueryInformationJobObject@20 | |
| 1206 | ZwQueryInstallUILanguage@4 | |
| 1207 | ZwQueryOpenSubKeys@8 | |
| 1208 | ZwQueryQuotaInformationFile@36 | |
| 1209 | ZwReplyWaitReceivePortEx@20 | |
| 1210 | ZwRequestDeviceWakeup@4 ; removed in Windows 7 | |
| 1211 | ZwRequestWakeupLatency@4 ; removed in Windows 7 | |
| 1212 | ZwResetWriteWatch@12 | |
| 1213 | ZwSaveMergedKeys@12 | |
| 1214 | ZwSecureConnectPort@36 | |
| 1215 | ZwSetDefaultUILanguage@4 | |
| 1216 | ZwSetInformationJobObject@16 | |
| 1217 | ZwSetQuotaInformationFile@16 | |
| 1218 | ZwSetThreadExecutionState@8 | |
| 1219 | ZwSetUuidSeed@4 | |
| 1220 | ZwTerminateJobObject@8 | |
| 1221 | ||
| 1222 | ; This is list of symbols added in Windows 2000 SP1 | |
| 1223 | RtlTraceDatabaseAdd@16 | |
| 1224 | RtlTraceDatabaseCreate@20 | |
| 1225 | RtlTraceDatabaseDestroy@4 | |
| 1226 | RtlTraceDatabaseEnumerate@12 | |
| 1227 | RtlTraceDatabaseFind@16 | |
| 1228 | RtlTraceDatabaseLock@4 | |
| 1229 | RtlTraceDatabaseUnlock@4 | |
| 1230 | RtlTraceDatabaseValidate@4 | |
| 1231 | ||
| 1232 | ; In Windows 2000 SP2 was not added any new symbol | |
| 1233 | ||
| 1234 | ; In Windows 2000 SP3 was not added any new symbol | |
| 1235 | ||
| 1236 | ; In Windows 2000 SP4 was not added any new symbol | |
| 1237 | ||
| 1238 | ; This is list of symbols added in Windows XP | |
| 1239 | CsrCaptureMessageMultiUnicodeStringsInPlace@12 | |
| 1240 | CsrGetProcessId@0 | |
| 1241 | DbgPrintEx ; cdecl | |
| 1242 | DbgQueryDebugFilterState@8 | |
| 1243 | DbgSetDebugFilterState@12 | |
| 1244 | DbgUiConvertStateChangeStructure@8 | |
| 1245 | DbgUiDebugActiveProcess@4 | |
| 1246 | DbgUiGetThreadDebugObject@0 | |
| 1247 | DbgUiIssueRemoteBreakin@4 | |
| 1248 | DbgUiRemoteBreakin@4 | |
| 1249 | DbgUiSetThreadDebugObject@4 | |
| 1250 | DbgUiStopDebugging@4 | |
| 1251 | ; LdrAccessOutOfProcessResource@20 ; removed in Windows Vista | |
| 1252 | LdrAddRefDll@8 | |
| 1253 | ; LdrCreateOutOfProcessImage@20 ; Windows XP has ABI "LdrCreateOutOfProcessImage@16", Windows Server 2003 has ABI "LdrCreateOutOfProcessImage@20", removed in Windows Vista | |
| 1254 | ; LdrDestroyOutOfProcessImage@4 ; removed in Windows Vista | |
| 1255 | ; LdrFindCreateProcessManifest@20 ; removed in Windows Vista | |
| 1256 | LdrFindResourceEx_U@20 | |
| 1257 | LdrGetDllHandleEx@20 | |
| 1258 | LdrInitShimEngineDynamic@4 ; Windows XP-7 has ABI "LdrInitShimEngineDynamic@4", Windows 8 an new has ABI "LdrInitShimEngineDynamic@8" | |
| 1259 | LdrLockLoaderLock@12 | |
| 1260 | LdrSetAppCompatDllRedirectionCallback@12 | |
| 1261 | LdrSetDllManifestProber@4 ; Windows XP-Vista has ABI "LdrSetDllManifestProber@4", Windows 7 an new has ABI "LdrSetDllManifestProber@12" | |
| 1262 | LdrUnlockLoaderLock@8 | |
| 1263 | NtAddBootEntry@8 | |
| 1264 | NtCompactKeys@8 | |
| 1265 | NtCompareTokens@12 | |
| 1266 | NtCompressKey@4 | |
| 1267 | NtCreateDebugObject@16 | |
| 1268 | NtCreateJobSet@12 | |
| 1269 | NtCreateKeyedEvent@16 | |
| 1270 | NtCreateProcessEx@36 | |
| 1271 | NtDebugActiveProcess@8 | |
| 1272 | NtDebugContinue@12 | |
| 1273 | NtDeleteBootEntry@4 | |
| 1274 | NtEnumerateBootEntries@8 | |
| 1275 | NtEnumerateSystemEnvironmentValuesEx@12 | |
| 1276 | NtIsProcessInJob@8 | |
| 1277 | NtLockProductActivationKeys@8 | |
| 1278 | NtLockRegistryKey@4 | |
| 1279 | NtMakePermanentObject@4 | |
| 1280 | NtModifyBootEntry@4 | |
| 1281 | NtOpenKeyedEvent@12 | |
| 1282 | NtOpenProcessTokenEx@16 | |
| 1283 | NtOpenThreadTokenEx@20 | |
| 1284 | NtQueryBootEntryOrder@8 | |
| 1285 | NtQueryBootOptions@8 | |
| 1286 | NtQueryDebugFilterState@8 | |
| 1287 | NtQueryPortInformationProcess@0 | |
| 1288 | NtQuerySystemEnvironmentValueEx@20 | |
| 1289 | NtReleaseKeyedEvent@16 | |
| 1290 | NtRemoveProcessDebug@8 | |
| 1291 | NtRenameKey@8 | |
| 1292 | NtResumeProcess@4 | |
| 1293 | NtSaveKeyEx@12 | |
| 1294 | NtSetBootEntryOrder@8 | |
| 1295 | NtSetBootOptions@8 | |
| 1296 | NtSetDebugFilterState@12 | |
| 1297 | NtSetEventBoostPriority@4 | |
| 1298 | NtSetInformationDebugObject@20 | |
| 1299 | NtSetSystemEnvironmentValueEx@20 | |
| 1300 | NtSuspendProcess@4 | |
| 1301 | NtTraceEvent@16 | |
| 1302 | NtTranslateFilePath@16 | |
| 1303 | NtUnloadKeyEx@8 | |
| 1304 | NtWaitForDebugEvent@16 | |
| 1305 | NtWaitForKeyedEvent@16 | |
| 1306 | RtlActivateActivationContext@12 | |
| 1307 | RtlActivateActivationContextEx@16 | |
| 1308 | @RtlActivateActivationContextUnsafeFast@8 ; fastcall | |
| 1309 | RtlAddRefActivationContext@4 | |
| 1310 | RtlAddRefMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1311 | RtlAddVectoredExceptionHandler@8 | |
| 1312 | RtlAddressInSectionTable@12 | |
| 1313 | RtlAppendPathElement@12 | |
| 1314 | RtlApplicationVerifierStop@40 | |
| 1315 | ; RtlAssert2@20 ; removed in Windows Server 2003 | |
| 1316 | RtlCaptureContext@4 | |
| 1317 | RtlCaptureStackContext@12 | |
| 1318 | ; RtlCheckProcessParameters@16 ; removed in Windows Vista | |
| 1319 | RtlCloneMemoryStream@8 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1320 | RtlCommitMemoryStream@8 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1321 | RtlComputeCrc32@12 | |
| 1322 | RtlComputeImportTableHash@12 | |
| 1323 | RtlComputePrivatizedDllName_U@12 | |
| 1324 | RtlCopyMemoryStreamTo@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1325 | RtlCopyOutOfProcessMemoryStreamTo@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1326 | RtlCreateActivationContext@24 | |
| 1327 | RtlCreateBootStatusDataFile@4 ; Windows XP-2003 has ABI "RtlCreateBootStatusDataFile@0", Windows Vista and new has ABI "RtlCreateBootStatusDataFile@4" | |
| 1328 | RtlCreateSystemVolumeInformationFolder@4 | |
| 1329 | RtlDeactivateActivationContext@8 | |
| 1330 | @RtlDeactivateActivationContextUnsafeFast@4 ; fastcall | |
| 1331 | RtlDeleteElementGenericTableAvl@8 | |
| 1332 | RtlDllShutdownInProgress@0 | |
| 1333 | RtlDosApplyFileIsolationRedirection_Ustr@36 | |
| 1334 | RtlDosSearchPath_Ustr@36 | |
| 1335 | RtlDowncaseUnicodeChar@4 | |
| 1336 | RtlDuplicateUnicodeString@12 | |
| 1337 | RtlEnumerateGenericTableAvl@8 | |
| 1338 | RtlEnumerateGenericTableLikeADirectory@28 | |
| 1339 | RtlEnumerateGenericTableWithoutSplayingAvl@8 | |
| 1340 | RtlExitUserThread@4 | |
| 1341 | RtlFinalReleaseOutOfProcessMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1342 | RtlFindActivationContextSectionGuid@20 | |
| 1343 | RtlFindActivationContextSectionString@20 | |
| 1344 | RtlFindCharInUnicodeString@16 | |
| 1345 | RtlFindClearRuns@16 | |
| 1346 | RtlFirstEntrySList@4 | |
| 1347 | RtlFlushSecureMemoryCache@8 | |
| 1348 | RtlFreeThreadActivationContextStack@0 | |
| 1349 | RtlGetActiveActivationContext@4 | |
| 1350 | RtlGetCurrentPeb@0 | |
| 1351 | RtlGetElementGenericTableAvl@8 | |
| 1352 | RtlGetFrame@0 | |
| 1353 | RtlGetLastNtStatus@0 | |
| 1354 | RtlGetLastWin32Error@0 | |
| 1355 | RtlGetLengthWithoutLastFullDosOrNtPathElement@12 | |
| 1356 | RtlGetLengthWithoutTrailingPathSeperators@12 | |
| 1357 | RtlGetNativeSystemInformation@16 | |
| 1358 | RtlGetNtVersionNumbers@12 | |
| 1359 | RtlGetSetBootStatusData@24 | |
| 1360 | RtlHashUnicodeString@16 | |
| 1361 | RtlInitMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1362 | RtlInitOutOfProcessMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1363 | RtlInitUnicodeStringEx@8 | |
| 1364 | RtlInitializeGenericTableAvl@20 | |
| 1365 | RtlInitializeSListHead@4 | |
| 1366 | RtlInsertElementGenericTableAvl@16 | |
| 1367 | RtlInterlockedFlushSList@4 | |
| 1368 | RtlInterlockedPopEntrySList@4 | |
| 1369 | RtlInterlockedPushEntrySList@8 | |
| 1370 | @RtlInterlockedPushListSList@16 ; fastcall | |
| 1371 | RtlIpv4AddressToStringA@8 | |
| 1372 | RtlIpv4AddressToStringW@8 | |
| 1373 | RtlIpv4StringToAddressA@16 | |
| 1374 | RtlIpv4StringToAddressW@16 | |
| 1375 | RtlIpv6AddressToStringA@8 | |
| 1376 | RtlIpv6AddressToStringW@8 | |
| 1377 | RtlIpv6StringToAddressA@12 | |
| 1378 | RtlIpv6StringToAddressW@12 | |
| 1379 | RtlIsActivationContextActive@4 | |
| 1380 | RtlIsGenericTableEmptyAvl@4 | |
| 1381 | RtlLockBootStatusData@4 | |
| 1382 | RtlLockMemoryStreamRegion@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1383 | RtlLogStackBackTrace@0 | |
| 1384 | RtlLookupElementGenericTableAvl@8 | |
| 1385 | RtlMapSecurityErrorToNtStatus@4 | |
| 1386 | RtlMultiAppendUnicodeStringBuffer@12 | |
| 1387 | RtlNewSecurityObjectWithMultipleInheritance@36 | |
| 1388 | RtlNtPathNameToDosPathName@16 | |
| 1389 | RtlNtStatusToDosErrorNoTeb@4 | |
| 1390 | RtlNumberGenericTableElementsAvl@4 | |
| 1391 | RtlPopFrame@4 | |
| 1392 | RtlPushFrame@4 | |
| 1393 | RtlQueryDepthSList@4 | |
| 1394 | RtlQueryHeapInformation@20 | |
| 1395 | RtlQueryInformationActivationContext@28 | |
| 1396 | RtlQueryInformationActiveActivationContext@16 | |
| 1397 | RtlQueryInterfaceMemoryStream@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1398 | RtlQueueApcWow64Thread@20 | |
| 1399 | RtlRandomEx@4 | |
| 1400 | RtlReadMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1401 | RtlReadOutOfProcessMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1402 | RtlRegisterSecureMemoryCacheCallback@4 | |
| 1403 | RtlReleaseActivationContext@4 | |
| 1404 | RtlReleaseMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1405 | RtlRemoveVectoredExceptionHandler@4 | |
| 1406 | RtlRestoreLastWin32Error@4 | |
| 1407 | RtlRevertMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1408 | RtlSeekMemoryStream@20 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1409 | RtlSetHeapInformation@16 | |
| 1410 | RtlSetLastWin32Error@4 | |
| 1411 | RtlSetLastWin32ErrorAndNtStatusFromNtStatus@4 | |
| 1412 | RtlSetMemoryStreamSize@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1413 | RtlSetProcessIsCritical ; cdecl | |
| 1414 | RtlSetThreadIsCritical ; cdecl | |
| 1415 | RtlStatMemoryStream@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1416 | RtlUnhandledExceptionFilter2@8 | |
| 1417 | RtlUnhandledExceptionFilter@4 | |
| 1418 | RtlUnlockBootStatusData@4 | |
| 1419 | RtlUnlockMemoryStreamRegion@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1420 | RtlValidateUnicodeString@8 | |
| 1421 | RtlWriteMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version | |
| 1422 | RtlZombifyActivationContext@4 | |
| 1423 | RtlpApplyLengthFunction@16 | |
| 1424 | RtlpEnsureBufferSize@12 | |
| 1425 | RtlpNotOwnerCriticalSection@4 | |
| 1426 | ZwAddBootEntry@8 | |
| 1427 | ZwCompactKeys@8 | |
| 1428 | ZwCompareTokens@12 | |
| 1429 | ZwCompressKey@4 | |
| 1430 | ZwCreateDebugObject@16 | |
| 1431 | ZwCreateJobSet@12 | |
| 1432 | ZwCreateKeyedEvent@16 | |
| 1433 | ZwCreateProcessEx@36 | |
| 1434 | ZwDebugActiveProcess@8 | |
| 1435 | ZwDebugContinue@12 | |
| 1436 | ZwDeleteBootEntry@4 | |
| 1437 | ZwEnumerateBootEntries@8 | |
| 1438 | ZwEnumerateSystemEnvironmentValuesEx@12 | |
| 1439 | ZwIsProcessInJob@8 | |
| 1440 | ZwLockProductActivationKeys@8 | |
| 1441 | ZwLockRegistryKey@4 | |
| 1442 | ZwMakePermanentObject@4 | |
| 1443 | ZwModifyBootEntry@4 | |
| 1444 | ZwOpenKeyedEvent@12 | |
| 1445 | ZwOpenProcessTokenEx@16 | |
| 1446 | ZwOpenThreadTokenEx@20 | |
| 1447 | ZwQueryBootEntryOrder@8 | |
| 1448 | ZwQueryBootOptions@8 | |
| 1449 | ZwQueryDebugFilterState@8 | |
| 1450 | ZwQueryPortInformationProcess@0 | |
| 1451 | ZwQuerySystemEnvironmentValueEx@20 | |
| 1452 | ZwReleaseKeyedEvent@16 | |
| 1453 | ZwRemoveProcessDebug@8 | |
| 1454 | ZwRenameKey@8 | |
| 1455 | ZwResumeProcess@4 | |
| 1456 | ZwSaveKeyEx@12 | |
| 1457 | ZwSetBootEntryOrder@8 | |
| 1458 | ZwSetBootOptions@8 | |
| 1459 | ZwSetDebugFilterState@12 | |
| 1460 | ZwSetEventBoostPriority@4 | |
| 1461 | ZwSetInformationDebugObject@20 | |
| 1462 | ZwSetSystemEnvironmentValueEx@20 | |
| 1463 | ZwSuspendProcess@4 | |
| 1464 | ZwTraceEvent@16 | |
| 1465 | ZwTranslateFilePath@16 | |
| 1466 | ZwUnloadKeyEx@8 | |
| 1467 | ZwWaitForDebugEvent@16 | |
| 1468 | ZwWaitForKeyedEvent@16 | |
| 1469 | vDbgPrintEx@16 | |
| 1470 | vDbgPrintExWithPrefix@20 | |
| 1471 | ||
| 1472 | ; This is list of symbols added in Windows XP SP1 | |
| 1473 | LdrEnumerateLoadedModules@12 | |
| 1474 | RtlIsThreadWithinLoaderCallout@0 | |
| 1475 | ||
| 1476 | ; This is list of symbols added in Windows XP SP2 | |
| 1477 | LdrHotPatchRoutine@0 ; removed in Windows 8.1 | |
| 1478 | RtlGetUnloadEventTrace@0 | |
| 1479 | RtlIpv4AddressToStringExA@16 | |
| 1480 | RtlIpv4AddressToStringExW@16 | |
| 1481 | RtlIpv4StringToAddressExA@16 | |
| 1482 | RtlIpv4StringToAddressExW@16 | |
| 1483 | RtlIpv6AddressToStringExA@20 | |
| 1484 | RtlIpv6AddressToStringExW@20 | |
| 1485 | RtlIpv6StringToAddressExA@16 | |
| 1486 | RtlIpv6StringToAddressExW@16 | |
| 1487 | ||
| 1488 | ; This is list of symbols added in Windows XP SP2 and in Windows Server 2003 SP1 (not available in 2003 without SP1) | |
| 1489 | KiFastSystemCall@0 | |
| 1490 | KiFastSystemCallRet@0 | |
| 1491 | KiIntSystemCall@0 | |
| 1492 | RtlDecodePointer@4 | |
| 1493 | RtlDecodeSystemPointer@4 | |
| 1494 | RtlEncodePointer@4 | |
| 1495 | RtlEncodeSystemPointer@4 | |
| 1496 | ||
| 1497 | ; In Windows XP SP3 was not added any new symbol | |
| 1498 | ||
| 1499 | ; This is list of symbols added in Windows Server 2003 | |
| 1500 | ; EtwControlTraceA@20 ; removed in Windows Vista | |
| 1501 | ; EtwControlTraceW@20 ; removed in Windows Vista | |
| 1502 | EtwCreateTraceInstanceId@8 | |
| 1503 | ; EtwEnableTrace@24 ; removed in Windows Vista | |
| 1504 | ; EtwEnumerateTraceGuids@12 ; removed in Windows Vista | |
| 1505 | ; EtwFlushTraceA@16 ; removed in Windows Vista | |
| 1506 | ; EtwFlushTraceW@16 ; removed in Windows Vista | |
| 1507 | EtwGetTraceEnableFlags@8 | |
| 1508 | EtwGetTraceEnableLevel@8 | |
| 1509 | EtwGetTraceLoggerHandle@4 | |
| 1510 | ; EtwNotificationRegistrationA@20 ; removed in Windows Vista | |
| 1511 | ; EtwNotificationRegistrationW@20 ; removed in Windows Vista | |
| 1512 | ; EtwQueryAllTracesA@12 ; removed in Windows Vista | |
| 1513 | ; EtwQueryAllTracesW@12 ; removed in Windows Vista | |
| 1514 | ; EtwQueryTraceA@16 ; removed in Windows Vista | |
| 1515 | ; EtwQueryTraceW@16 ; removed in Windows Vista | |
| 1516 | ; EtwReceiveNotificationsA@16 ; removed in Windows Vista | |
| 1517 | ; EtwReceiveNotificationsW@16 ; removed in Windows Vista | |
| 1518 | EtwRegisterTraceGuidsA@32 | |
| 1519 | EtwRegisterTraceGuidsW@32 | |
| 1520 | ; EtwStartTraceA@12 ; removed in Windows Vista | |
| 1521 | ; EtwStartTraceW@12 ; removed in Windows Vista | |
| 1522 | ; EtwStopTraceA@16 ; removed in Windows Vista | |
| 1523 | ; EtwStopTraceW@16 ; removed in Windows Vista | |
| 1524 | ; EtwTraceEvent@12 ; removed in Windows Vista | |
| 1525 | EtwTraceEventInstance@20 | |
| 1526 | EtwTraceMessage ; cdecl | |
| 1527 | EtwTraceMessageVa@24 | |
| 1528 | EtwUnregisterTraceGuids@8 | |
| 1529 | ; EtwUpdateTraceA@16 ; removed in Windows Vista | |
| 1530 | ; EtwUpdateTraceW@16 ; removed in Windows Vista | |
| 1531 | ; EtwpGetTraceBuffer@16 ; removed in Windows Vista | |
| 1532 | ; EtwpSetHWConfigFunction@8 ; removed in Windows Vista | |
| 1533 | LdrQueryImageFileExecutionOptionsEx@28 | |
| 1534 | NtAddDriverEntry@8 | |
| 1535 | NtApphelpCacheControl@8 | |
| 1536 | NtDeleteDriverEntry@4 | |
| 1537 | NtEnumerateDriverEntries@8 | |
| 1538 | NtGetCurrentProcessorNumber@0 | |
| 1539 | NtGetTickCount@0 | |
| 1540 | NtLoadKeyEx@32 ; Windows Server 2003 has ABI "NtLoadKeyEx@16", Windows Vista and new has ABI "NtLoadKeyEx@32" | |
| 1541 | NtModifyDriverEntry@4 | |
| 1542 | NtQueryDriverEntryOrder@8 | |
| 1543 | NtQueryOpenSubKeysEx@16 | |
| 1544 | NtSetDriverEntryOrder@8 | |
| 1545 | NtUnloadKey2@8 | |
| 1546 | RtlCopyMappedMemory@12 | |
| 1547 | RtlDosPathNameToRelativeNtPathName_U@16 | |
| 1548 | RtlGetFullPathName_UstrEx@32 | |
| 1549 | RtlGetThreadErrorMode@0 | |
| 1550 | RtlImageNtHeaderEx@20 | |
| 1551 | RtlInitAnsiStringEx@8 | |
| 1552 | RtlInsertElementGenericTableFull@24 | |
| 1553 | RtlInsertElementGenericTableFullAvl@24 | |
| 1554 | RtlInterlockedCompareExchange64@20 | |
| 1555 | RtlLookupElementGenericTableFull@16 | |
| 1556 | RtlLookupElementGenericTableFullAvl@16 | |
| 1557 | RtlMultipleAllocateHeap@20 | |
| 1558 | RtlMultipleFreeHeap@16 | |
| 1559 | RtlReleaseRelativeName@4 | |
| 1560 | RtlSetEnvironmentStrings@8 | |
| 1561 | RtlSetThreadErrorMode@8 | |
| 1562 | RtlWow64EnableFsRedirection@4 | |
| 1563 | ZwAddDriverEntry@8 | |
| 1564 | ZwApphelpCacheControl@8 | |
| 1565 | ZwDeleteDriverEntry@4 | |
| 1566 | ZwEnumerateDriverEntries@8 | |
| 1567 | ZwGetCurrentProcessorNumber@0 | |
| 1568 | ZwLoadKeyEx@32 ; Windows Server 2003 has ABI "ZwLoadKeyEx@16", Windows Vista and new has ABI "ZwLoadKeyEx@32" | |
| 1569 | ZwModifyDriverEntry@4 | |
| 1570 | ZwQueryDriverEntryOrder@8 | |
| 1571 | ZwQueryOpenSubKeysEx@16 | |
| 1572 | ZwSetDriverEntryOrder@8 | |
| 1573 | ZwUnloadKey2@8 | |
| 1574 | ||
| 1575 | ; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version) | |
| 1576 | ExpInterlockedPopEntrySListEnd@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version | |
| 1577 | ExpInterlockedPopEntrySListFault@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version | |
| 1578 | ExpInterlockedPopEntrySListResume@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version | |
| 1579 | LdrOpenImageFileOptionsKey@12 | |
| 1580 | LdrQueryImageFileKeyOption@24 | |
| 1581 | NtWaitForMultipleObjects32@20 | |
| 1582 | NtWow64CsrAllocateCaptureBuffer@8 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1583 | NtWow64CsrAllocateMessagePointer@12 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1584 | NtWow64CsrCaptureMessageBuffer@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1585 | NtWow64CsrCaptureMessageString@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1586 | NtWow64CsrClientCallServer@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1587 | NtWow64CsrClientConnectToServer@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1588 | NtWow64CsrFreeCaptureBuffer@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1589 | NtWow64CsrGetProcessId@0 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1590 | NtWow64CsrIdentifyAlertableThread@0 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1591 | ; NtWow64CsrNewThread@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 1592 | ; NtWow64CsrSetPriorityClass@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 1593 | NtWow64DebuggerCall@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1594 | NtWow64GetNativeSystemInformation@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1595 | NtWow64QueryInformationProcess64@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1596 | NtWow64QueryVirtualMemory64@32 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507) | |
| 1597 | NtWow64ReadVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1598 | RtlAcquirePrivilege@16 | |
| 1599 | RtlAddVectoredContinueHandler@8 | |
| 1600 | RtlAllocateActivationContextStack@4 | |
| 1601 | RtlDosPathNameToNtPathName_U_WithStatus@16 | |
| 1602 | RtlDosPathNameToRelativeNtPathName_U_WithStatus@16 | |
| 1603 | RtlFormatMessageEx@40 | |
| 1604 | RtlFreeActivationContextStack@4 | |
| 1605 | RtlGetCriticalSectionRecursionCount@4 | |
| 1606 | RtlGetCurrentProcessorNumber@0 | |
| 1607 | RtlIsCriticalSectionLocked@4 | |
| 1608 | RtlIsCriticalSectionLockedByThread@4 | |
| 1609 | RtlReleasePrivilege@4 | |
| 1610 | RtlRemoveVectoredContinueHandler@4 | |
| 1611 | RtlSetUnhandledExceptionFilter@4 | |
| 1612 | RtlWow64EnableFsRedirectionEx@8 | |
| 1613 | ZwWaitForMultipleObjects32@20 | |
| 1614 | ZwWow64CsrAllocateCaptureBuffer@8 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1615 | ZwWow64CsrAllocateMessagePointer@12 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1616 | ZwWow64CsrCaptureMessageBuffer@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1617 | ZwWow64CsrCaptureMessageString@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1618 | ZwWow64CsrClientCallServer@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1619 | ZwWow64CsrClientConnectToServer@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1620 | ZwWow64CsrFreeCaptureBuffer@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1621 | ZwWow64CsrGetProcessId@0 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1622 | ZwWow64CsrIdentifyAlertableThread@0 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1623 | ; ZwWow64CsrNewThread@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 1624 | ; ZwWow64CsrSetPriorityClass@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 1625 | ZwWow64DebuggerCall@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1626 | ZwWow64GetNativeSystemInformation@16 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1627 | ZwWow64QueryInformationProcess64@20 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1628 | ZwWow64QueryVirtualMemory64@32 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507) | |
| 1629 | ZwWow64ReadVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1630 | ||
| 1631 | ; In Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version) was not added any new symbol | |
| 1632 | ||
| 1633 | ; This is list of symbols added in Windows Vista | |
| 1634 | A_SHAFinal@8 | |
| 1635 | A_SHAInit@4 | |
| 1636 | A_SHAUpdate@12 | |
| 1637 | AlpcAdjustCompletionListConcurrencyCount@8 | |
| 1638 | AlpcFreeCompletionListMessage@8 | |
| 1639 | AlpcGetCompletionListLastMessageInformation@12 | |
| 1640 | AlpcGetCompletionListMessageAttributes@8 | |
| 1641 | AlpcGetHeaderSize@4 | |
| 1642 | AlpcGetMessageAttribute@8 | |
| 1643 | AlpcGetMessageFromCompletionList@8 | |
| 1644 | AlpcGetOutstandingCompletionListMessageCount@4 | |
| 1645 | AlpcInitializeMessageAttribute@16 | |
| 1646 | AlpcMaxAllowedMessageLength@0 | |
| 1647 | AlpcRegisterCompletionList@20 | |
| 1648 | AlpcRegisterCompletionListWorkerThread@4 | |
| 1649 | AlpcUnregisterCompletionList@4 | |
| 1650 | AlpcUnregisterCompletionListWorkerThread@4 | |
| 1651 | CsrVerifyRegion@8 | |
| 1652 | EtwDeliverDataBlock@4 | |
| 1653 | EtwEnumerateProcessRegGuids@12 | |
| 1654 | EtwEventActivityIdControl@8 | |
| 1655 | EtwEventEnabled@12 | |
| 1656 | EtwEventProviderEnabled@20 | |
| 1657 | EtwEventRegister@16 | |
| 1658 | EtwEventUnregister@8 | |
| 1659 | EtwEventWrite@20 | |
| 1660 | EtwEventWriteEndScenario@20 | |
| 1661 | EtwEventWriteFull@32 | |
| 1662 | EtwEventWriteStartScenario@20 | |
| 1663 | EtwEventWriteString@24 | |
| 1664 | EtwEventWriteTransfer@28 | |
| 1665 | EtwLogTraceEvent@12 | |
| 1666 | EtwNotificationRegister@20 | |
| 1667 | EtwNotificationUnregister@12 | |
| 1668 | EtwProcessPrivateLoggerRequest@4 | |
| 1669 | EtwRegisterSecurityProvider@0 | |
| 1670 | EtwReplyNotification@4 | |
| 1671 | EtwSendNotification@20 | |
| 1672 | EtwSetMark@16 | |
| 1673 | EtwWriteUMSecurityEvent@16 | |
| 1674 | EtwpCreateEtwThread@8 | |
| 1675 | EtwpGetCpuSpeed@8 ; Windows Vista-8 has ABI "EtwpGetCpuSpeed@8", Windows 8.1 and new has ABI "EtwpGetCpuSpeed@4" | |
| 1676 | ; EtwpNotificationThread@0 ; removed in Windows 8.1 | |
| 1677 | LdrAddLoadAsDataTable@16 ; Windows Vista has ABI "LdrAddLoadAsDataTable@16", Windows 7 and new has ABI "LdrAddLoadAsDataTable@20" | |
| 1678 | LdrGetFailureData@0 | |
| 1679 | LdrGetFileNameFromLoadAsDataTable@8 | |
| 1680 | LdrGetProcedureAddressEx@20 | |
| 1681 | LdrLoadAlternateResourceModuleEx@20 | |
| 1682 | LdrQueryModuleServiceTags@12 | |
| 1683 | LdrRegisterDllNotification@16 | |
| 1684 | LdrRemoveLoadAsDataTable@16 | |
| 1685 | LdrResFindResource@36 | |
| 1686 | LdrResFindResourceDirectory@28 | |
| 1687 | LdrResRelease@12 | |
| 1688 | LdrResSearchResource@32 | |
| 1689 | LdrSetMUICacheType@4 | |
| 1690 | LdrUnloadAlternateResourceModuleEx@8 | |
| 1691 | LdrUnregisterDllNotification@4 | |
| 1692 | LdrVerifyImageMatchesChecksumEx@8 | |
| 1693 | MD4Final@4 | |
| 1694 | MD4Init@4 | |
| 1695 | MD4Update@12 | |
| 1696 | MD5Final@4 | |
| 1697 | MD5Init@4 | |
| 1698 | MD5Update@12 | |
| 1699 | NtAcquireCMFViewOwnership@12 ; removed in Windows 7 | |
| 1700 | NtAlpcAcceptConnectPort@36 | |
| 1701 | NtAlpcCancelMessage@12 | |
| 1702 | NtAlpcConnectPort@44 | |
| 1703 | NtAlpcCreatePort@12 | |
| 1704 | NtAlpcCreatePortSection@24 | |
| 1705 | NtAlpcCreateResourceReserve@16 | |
| 1706 | NtAlpcCreateSectionView@12 | |
| 1707 | NtAlpcCreateSecurityContext@12 | |
| 1708 | NtAlpcDeletePortSection@12 | |
| 1709 | NtAlpcDeleteResourceReserve@12 | |
| 1710 | NtAlpcDeleteSectionView@12 | |
| 1711 | NtAlpcDeleteSecurityContext@12 | |
| 1712 | NtAlpcDisconnectPort@8 | |
| 1713 | NtAlpcImpersonateClientOfPort@12 | |
| 1714 | NtAlpcOpenSenderProcess@24 | |
| 1715 | NtAlpcOpenSenderThread@24 | |
| 1716 | NtAlpcQueryInformation@20 | |
| 1717 | NtAlpcQueryInformationMessage@24 | |
| 1718 | NtAlpcRevokeSecurityContext@12 | |
| 1719 | NtAlpcSendWaitReceivePort@32 | |
| 1720 | NtAlpcSetInformation@16 | |
| 1721 | NtCancelIoFileEx@12 | |
| 1722 | NtCancelSynchronousIoFile@12 | |
| 1723 | ; NtClearAllSavepointsTransaction@4 ; removed in Windows Vista SP1 | |
| 1724 | ; NtClearSavepointTransaction@8 ; removed in Windows Vista SP1 | |
| 1725 | NtCommitComplete@8 | |
| 1726 | NtCommitEnlistment@8 | |
| 1727 | NtCommitTransaction@8 | |
| 1728 | NtCreateEnlistment@32 | |
| 1729 | NtCreateKeyTransacted@32 | |
| 1730 | NtCreatePrivateNamespace@16 | |
| 1731 | NtCreateResourceManager@28 | |
| 1732 | NtCreateThreadEx@44 | |
| 1733 | NtCreateTransaction@40 | |
| 1734 | NtCreateTransactionManager@24 | |
| 1735 | NtCreateUserProcess@44 | |
| 1736 | NtCreateWorkerFactory@40 | |
| 1737 | NtDeletePrivateNamespace@4 | |
| 1738 | NtEnumerateTransactionObject@20 | |
| 1739 | NtFlushInstallUILanguage@8 | |
| 1740 | NtFlushProcessWriteBuffers@0 | |
| 1741 | NtFreezeRegistry@4 | |
| 1742 | NtFreezeTransactions@8 | |
| 1743 | NtGetMUIRegistryInfo@12 | |
| 1744 | NtGetNextProcess@20 | |
| 1745 | NtGetNextThread@24 | |
| 1746 | NtGetNlsSectionPtr@20 | |
| 1747 | NtGetNotificationResourceManager@28 | |
| 1748 | NtInitializeNlsFiles@16 ; Windows Vista has ABI "NtInitializeNlsFiles@12", Windows Vista SP1 and SP2 has ABI "NtInitializeNlsFiles@16", Windows 7 and new has again ABI "NtInitializeNlsFiles@12" | |
| 1749 | NtIsUILanguageComitted@0 | |
| 1750 | ; NtListTransactions@12 ; removed in Windows Vista SP1 | |
| 1751 | NtMapCMFModule@24 | |
| 1752 | ; NtMarshallTransaction@24 ; removed in Windows Vista SP1 | |
| 1753 | NtOpenEnlistment@20 | |
| 1754 | NtOpenKeyTransacted@16 | |
| 1755 | NtOpenPrivateNamespace@16 | |
| 1756 | NtOpenResourceManager@20 | |
| 1757 | NtOpenSession@12 | |
| 1758 | NtOpenTransaction@20 | |
| 1759 | NtOpenTransactionManager@24 | |
| 1760 | NtPrePrepareComplete@8 | |
| 1761 | NtPrePrepareEnlistment@8 | |
| 1762 | NtPrepareComplete@8 | |
| 1763 | NtPrepareEnlistment@8 | |
| 1764 | NtPropagationComplete@16 | |
| 1765 | NtPropagationFailed@12 | |
| 1766 | ; NtPullTransaction@28 ; removed in Windows Vista SP1 | |
| 1767 | NtQueryInformationEnlistment@20 | |
| 1768 | NtQueryInformationResourceManager@20 | |
| 1769 | NtQueryInformationTransaction@20 | |
| 1770 | NtQueryInformationTransactionManager@20 | |
| 1771 | NtQueryInformationWorkerFactory@20 | |
| 1772 | NtQueryLicenseValue@20 | |
| 1773 | NtReadOnlyEnlistment@8 | |
| 1774 | NtRecoverEnlistment@8 | |
| 1775 | NtRecoverResourceManager@4 | |
| 1776 | NtRecoverTransactionManager@4 | |
| 1777 | NtRegisterProtocolAddressInformation@20 | |
| 1778 | NtReleaseCMFViewOwnership@0 ; removed in Windows 7 | |
| 1779 | NtReleaseWorkerFactoryWorker@4 | |
| 1780 | NtRemoveIoCompletionEx@24 | |
| 1781 | NtRollbackComplete@8 | |
| 1782 | NtRollbackEnlistment@8 | |
| 1783 | ; NtRollbackSavepointTransaction@8 ; removed in Windows Vista SP1 | |
| 1784 | NtRollbackTransaction@8 | |
| 1785 | NtRollforwardTransactionManager@8 | |
| 1786 | ; NtSavepointComplete@8 ; removed in Windows Vista SP1 | |
| 1787 | ; NtSavepointTransaction@12 ; removed in Windows Vista SP1 | |
| 1788 | NtSetInformationEnlistment@16 | |
| 1789 | NtSetInformationResourceManager@16 | |
| 1790 | NtSetInformationTransaction@16 | |
| 1791 | NtSetInformationTransactionManager@16 | |
| 1792 | NtSetInformationWorkerFactory@16 | |
| 1793 | NtShutdownWorkerFactory@8 | |
| 1794 | NtSinglePhaseReject@8 | |
| 1795 | ; NtStartTm@0 ; removed in Windows Vista SP1 | |
| 1796 | NtThawRegistry@0 | |
| 1797 | NtThawTransactions@0 | |
| 1798 | NtTraceControl@24 | |
| 1799 | NtWaitForWorkViaWorkerFactory@8 ; Windows Vista-7 has ABI "NtWaitForWorkViaWorkerFactory@8", Windows 8 has ABI "NtWaitForWorkViaWorkerFactory@16", Windows 8.1 and new has ABI "NtWaitForWorkViaWorkerFactory@20" | |
| 1800 | NtWorkerFactoryWorkerReady@4 | |
| 1801 | NtWow64CallFunction64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1802 | NtWow64CsrVerifyRegion@8 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1803 | NtWow64WriteVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1804 | ; ResCCloseRuntimeView@4 ; removed in Windows Vista SP1 | |
| 1805 | ; ResCCompareCacheIDs@8 ; removed in Windows Vista SP1 | |
| 1806 | ; ResCCreateCultureMap@12 ; removed in Windows Vista SP1 | |
| 1807 | ; ResCCreateDefaultCultureMap@4 ; removed in Windows Vista SP1 | |
| 1808 | ; ResCCreateRuntimeView@16 ; removed in Windows Vista SP1 | |
| 1809 | ; ResCDirectoryCreateAndPopulate@12 ; removed in Windows Vista SP1 | |
| 1810 | ; ResCDirectoryCreateMapping@16 ; removed in Windows Vista SP1 | |
| 1811 | ; ResCDirectoryFree@4 ; removed in Windows Vista SP1 | |
| 1812 | ; ResCDirectoryGetBaseFolder@4 ; removed in Windows Vista SP1 | |
| 1813 | ; ResCDirectoryGetEntry@24 ; removed in Windows Vista SP1 | |
| 1814 | ; ResCDirectoryGetEntryCopy@28 ; removed in Windows Vista SP1 | |
| 1815 | ; ResCDirectoryGetEntryEx@32 ; removed in Windows Vista SP1 | |
| 1816 | ; ResCDirectoryGetEntryExCopy@36 ; removed in Windows Vista SP1 | |
| 1817 | ; ResCDirectoryGetEntryIndex@24 ; removed in Windows Vista SP1 | |
| 1818 | ; ResCDirectoryGetEntryIndexEx@32 ; removed in Windows Vista SP1 | |
| 1819 | ; ResCDirectoryGetFirstEntry@20 ; removed in Windows Vista SP1 | |
| 1820 | ; ResCDirectoryGetFirstEntryIndex@20 ; removed in Windows Vista SP1 | |
| 1821 | ; ResCDirectoryGetSegmentIndex@8 ; removed in Windows Vista SP1 | |
| 1822 | ; ResCDirectoryGetSegmentName@8 ; removed in Windows Vista SP1 | |
| 1823 | ; ResCDirectoryLoadFixedSize@4 ; removed in Windows Vista SP1 | |
| 1824 | ; ResCDirectoryOpenMapping@8 ; removed in Windows Vista SP1 | |
| 1825 | ; ResCFreeCultureMap@4 ; removed in Windows Vista SP1 | |
| 1826 | ; ResCGetCacheIndices@16 ; removed in Windows Vista SP1 | |
| 1827 | ; ResCGetCultureID@8 ; removed in Windows Vista SP1 | |
| 1828 | ; ResCGetCultureIndex@8 ; removed in Windows Vista SP1 | |
| 1829 | ; ResCGetCultureName@16 ; removed in Windows Vista SP1 | |
| 1830 | ; ResCGetHighestCacheIndex@4 ; removed in Windows Vista SP1 | |
| 1831 | ; ResCGetHighestConsecutiveCacheIndex@12 ; removed in Windows Vista SP1 | |
| 1832 | ; ResCGetIndexedName@20 ; removed in Windows Vista SP1 | |
| 1833 | ; ResCGetName@16 ; removed in Windows Vista SP1 | |
| 1834 | ; ResCGetRegistryBaseFolder@16 ; removed in Windows Vista SP1 | |
| 1835 | ; ResCGetRegistryConfig@8 ; removed in Windows Vista SP1 | |
| 1836 | ; ResCGetRegistryLatestIndex@8 ; removed in Windows Vista SP1 | |
| 1837 | ; ResCGetRegistryMappingPrefix@16 ; removed in Windows Vista SP1 | |
| 1838 | ; ResCGetRegistryStatus@8 ; removed in Windows Vista SP1 | |
| 1839 | ; ResCGetSubIndexedName@24 ; removed in Windows Vista SP1 | |
| 1840 | ; ResCInitRuntimeView@8 ; removed in Windows Vista SP1 | |
| 1841 | ; ResCInitRuntimeViewEx@12 ; removed in Windows Vista SP1 | |
| 1842 | ; ResCKeDirectoryOpenMapping@20 ; removed in Windows Vista SP1 | |
| 1843 | ; ResCKeGetBaseFolder@8 ; removed in Windows Vista SP1 | |
| 1844 | ; ResCKeGetCacheIndices@8 ; removed in Windows Vista SP1 | |
| 1845 | ; ResCKeInitRuntimeViewEx@4 ; removed in Windows Vista SP1 | |
| 1846 | ; ResCKeSegmentOpenMapping@8 ; removed in Windows Vista SP1 | |
| 1847 | ; ResCLoadCultureMap@4 ; removed in Windows Vista SP1 | |
| 1848 | ; ResCOpenRegistryKey@24 ; removed in Windows Vista SP1 | |
| 1849 | ; ResCOpenRuntimeView@8 ; removed in Windows Vista SP1 | |
| 1850 | ; ResCReleaseInitMutex@4 ; removed in Windows Vista SP1 | |
| 1851 | ; ResCReloadCultureMap@4 ; removed in Windows Vista SP1 | |
| 1852 | ; ResCRequestInitMutex@8 ; removed in Windows Vista SP1 | |
| 1853 | ; ResCRuntimeGetAnySegmentData@20 ; removed in Windows Vista SP1 | |
| 1854 | ; ResCRuntimeGetCultureID@8 ; removed in Windows Vista SP1 | |
| 1855 | ; ResCRuntimeGetEntryData@8 ; removed in Windows Vista SP1 | |
| 1856 | ; ResCRuntimeGetEntryDataEx@12 ; removed in Windows Vista SP1 | |
| 1857 | ; ResCRuntimeGetResourceData@32 ; removed in Windows Vista SP1 | |
| 1858 | ; ResCRuntimeGetResourceDataEx@36 ; removed in Windows Vista SP1 | |
| 1859 | ; ResCRuntimeGetResourceDataForCulture@32 ; removed in Windows Vista SP1 | |
| 1860 | ; ResCRuntimeGetSegmentData@16 ; removed in Windows Vista SP1 | |
| 1861 | ; ResCRuntimeGetSegmentDataEx@20 ; removed in Windows Vista SP1 | |
| 1862 | ; ResCRuntimeViewLoadCultureMap@4 ; removed in Windows Vista SP1 | |
| 1863 | ; ResCSaveRegistryBaseFolder@8 ; removed in Windows Vista SP1 | |
| 1864 | ; ResCSaveRegistryConfig@8 ; removed in Windows Vista SP1 | |
| 1865 | ; ResCSaveRegistryLatestIndex@8 ; removed in Windows Vista SP1 | |
| 1866 | ; ResCSaveRegistryStatus@8 ; removed in Windows Vista SP1 | |
| 1867 | ; ResCSegmentCreateAndPopulate@12 ; removed in Windows Vista SP1 | |
| 1868 | ; ResCSegmentCreateMapping@20 ; removed in Windows Vista SP1 | |
| 1869 | ; ResCSegmentFree@4 ; removed in Windows Vista SP1 | |
| 1870 | ; ResCSegmentGetData@8 ; removed in Windows Vista SP1 | |
| 1871 | ; ResCSegmentLoadFixedSize@4 ; removed in Windows Vista SP1 | |
| 1872 | ; ResCSegmentOpenMapping@8 ; removed in Windows Vista SP1 | |
| 1873 | ; ResCSegmentReserveMapping@16 ; removed in Windows Vista SP1 | |
| 1874 | ; ResCSetCacheSecurityType@4 ; removed in Windows Vista SP1 | |
| 1875 | RtlAcquireSRWLockExclusive@4 | |
| 1876 | RtlAcquireSRWLockShared@4 | |
| 1877 | RtlAddMandatoryAce@24 | |
| 1878 | RtlAddSIDToBoundaryDescriptor@8 | |
| 1879 | RtlAllocateMemoryBlockLookaside@12 | |
| 1880 | RtlAllocateMemoryZone@12 | |
| 1881 | RtlBarrier@8 | |
| 1882 | RtlBarrierForDelete@8 | |
| 1883 | RtlCleanUpTEBLangLists@0 | |
| 1884 | RtlCloneUserProcess@20 | |
| 1885 | RtlCmDecodeMemIoResource@8 | |
| 1886 | RtlCmEncodeMemIoResource@24 | |
| 1887 | RtlCommitDebugInfo@8 | |
| 1888 | RtlCompareAltitudes@8 | |
| 1889 | RtlCompareUnicodeStrings@20 | |
| 1890 | RtlConnectToSm@16 | |
| 1891 | RtlConvertLCIDToString@20 | |
| 1892 | RtlCreateBoundaryDescriptor@8 | |
| 1893 | RtlCreateEnvironmentEx@12 | |
| 1894 | RtlCreateMemoryBlockLookaside@20 | |
| 1895 | RtlCreateMemoryZone@12 | |
| 1896 | RtlCreateProcessParametersEx@44 | |
| 1897 | RtlCreateServiceSid@12 | |
| 1898 | RtlCreateUserStack@24 | |
| 1899 | RtlCultureNameToLCID@8 | |
| 1900 | RtlDeCommitDebugInfo@12 | |
| 1901 | RtlDeleteBarrier@4 | |
| 1902 | RtlDeleteBoundaryDescriptor@4 | |
| 1903 | RtlDestroyMemoryBlockLookaside@4 | |
| 1904 | RtlDestroyMemoryZone@4 | |
| 1905 | RtlExitUserProcess@4 | |
| 1906 | RtlExpandEnvironmentStrings@24 | |
| 1907 | RtlExtendMemoryBlockLookaside@8 | |
| 1908 | RtlExtendMemoryZone@8 | |
| 1909 | RtlFindAceByType@12 | |
| 1910 | RtlFindClosestEncodableLength@12 | |
| 1911 | RtlFlsAlloc@8 | |
| 1912 | RtlFlsFree@4 | |
| 1913 | RtlFreeMemoryBlockLookaside@8 | |
| 1914 | RtlFreeUserStack@4 | |
| 1915 | RtlGetCurrentTransaction@0 | |
| 1916 | RtlGetFileMUIPath@28 | |
| 1917 | RtlGetIntegerAtom@8 | |
| 1918 | RtlGetParentLocaleName@16 | |
| 1919 | RtlGetProductInfo@20 | |
| 1920 | RtlGetSystemPreferredUILanguages@20 | |
| 1921 | RtlGetThreadLangIdByIndex@16 | |
| 1922 | RtlGetThreadPreferredUILanguages@16 | |
| 1923 | RtlGetUILanguageInfo@20 | |
| 1924 | RtlGetUnloadEventTraceEx@12 | |
| 1925 | RtlGetUserPreferredUILanguages@20 | |
| 1926 | RtlHeapTrkInitialize@4 | |
| 1927 | RtlIdnToAscii@20 | |
| 1928 | RtlIdnToNameprepUnicode@20 | |
| 1929 | RtlIdnToUnicode@20 | |
| 1930 | RtlImpersonateSelfEx@12 | |
| 1931 | RtlInitBarrier@12 | |
| 1932 | RtlInitializeConditionVariable@4 | |
| 1933 | RtlInitializeCriticalSectionEx@12 | |
| 1934 | RtlInitializeNtUserPfn@24 | |
| 1935 | RtlInitializeSRWLock@4 | |
| 1936 | RtlIoDecodeMemIoResource@16 | |
| 1937 | RtlIoEncodeMemIoResource@40 | |
| 1938 | RtlIsCurrentThreadAttachExempt@0 | |
| 1939 | RtlIsNormalizedString@16 | |
| 1940 | RtlIsValidLocaleName@8 | |
| 1941 | RtlLCIDToCultureName@8 | |
| 1942 | RtlLcidToLocaleName@16 | |
| 1943 | RtlLocaleNameToLcid@12 | |
| 1944 | RtlLockCurrentThread@0 | |
| 1945 | RtlLockMemoryBlockLookaside@4 | |
| 1946 | RtlLockMemoryZone@4 | |
| 1947 | RtlLockModuleSection@4 | |
| 1948 | RtlNormalizeString@20 | |
| 1949 | RtlOwnerAcesPresent@4 | |
| 1950 | RtlProcessFlsData@4 ; Windows Vista-10 has ABI "RtlProcessFlsData@4", Windows 10 May 2019 Update (19H1 / 1903) and new has ABI "RtlProcessFlsData@8" | |
| 1951 | RtlQueryActivationContextApplicationSettings@28 | |
| 1952 | RtlQueryCriticalSectionOwner@4 ; Windows Vista-8.1 has ABI "RtlQueryCriticalSectionOwner@4", Windows 10 and new has ABI "RtlQueryCriticalSectionOwner@8" | |
| 1953 | RtlQueryDynamicTimeZoneInformation@4 | |
| 1954 | RtlQueryElevationFlags@4 | |
| 1955 | RtlQueryEnvironmentVariable@24 | |
| 1956 | RtlQueryModuleInformation@12 | |
| 1957 | RtlRegisterThreadWithCsrss@0 | |
| 1958 | RtlReleaseSRWLockExclusive@4 | |
| 1959 | RtlReleaseSRWLockShared@4 | |
| 1960 | RtlRemovePrivileges@12 | |
| 1961 | RtlReportException@12 | |
| 1962 | RtlResetMemoryBlockLookaside@4 | |
| 1963 | RtlResetMemoryZone@4 | |
| 1964 | RtlRetrieveNtUserPfn@12 | |
| 1965 | RtlRunOnceBeginInitialize@12 | |
| 1966 | RtlRunOnceComplete@12 | |
| 1967 | RtlRunOnceExecuteOnce@16 | |
| 1968 | RtlRunOnceInitialize@4 | |
| 1969 | RtlSendMsgToSm@8 | |
| 1970 | RtlSetCurrentTransaction@4 | |
| 1971 | RtlSetDynamicTimeZoneInformation@4 | |
| 1972 | RtlSetEnvironmentVar@20 | |
| 1973 | RtlSetProcessDebugInformation@12 | |
| 1974 | RtlSetThreadPreferredUILanguages@12 | |
| 1975 | RtlSidDominates@12 | |
| 1976 | RtlSidEqualLevel@12 | |
| 1977 | RtlSidHashInitialize@12 | |
| 1978 | RtlSidHashLookup@8 | |
| 1979 | RtlSidIsHigherLevel@12 | |
| 1980 | RtlSleepConditionVariableCS@12 | |
| 1981 | RtlSleepConditionVariableSRW@16 | |
| 1982 | RtlTestBit@8 | |
| 1983 | RtlTryAcquirePebLock@0 | |
| 1984 | RtlUnlockCurrentThread@0 | |
| 1985 | RtlUnlockMemoryBlockLookaside@4 | |
| 1986 | RtlUnlockMemoryZone@4 | |
| 1987 | RtlUnlockModuleSection@4 | |
| 1988 | RtlUpdateClonedCriticalSection@4 | |
| 1989 | RtlUpdateClonedSRWLock@8 | |
| 1990 | RtlUserThreadStart@8 | |
| 1991 | RtlWakeAllConditionVariable@4 | |
| 1992 | RtlWakeConditionVariable@4 | |
| 1993 | RtlWerpReportException@16 ; Windows Vista-8 has ABI "RtlWerpReportException@16", Windows 8.1 and new has ABI "RtlWerpReportException@24" | |
| 1994 | RtlWow64CallFunction64@28 | |
| 1995 | RtlWow64LogMessageInEventLogger@12 ; available only in 32-bit WoW64 version on 64-bit system | |
| 1996 | RtlpCleanupRegistryKeys@0 | |
| 1997 | RtlpConvertCultureNamesToLCIDs@8 | |
| 1998 | RtlpConvertLCIDsToCultureNames@8 | |
| 1999 | RtlpCreateProcessRegistryInfo@4 | |
| 2000 | RtlpGetLCIDFromLangInfoNode@12 | |
| 2001 | RtlpGetNameFromLangInfoNode@12 | |
| 2002 | RtlpGetSystemDefaultUILanguage@4 ; Windows Vista has ABI "RtlpGetSystemDefaultUILanguage@4", Windows 7 and new has ABI "RtlpGetSystemDefaultUILanguage@8" | |
| 2003 | RtlpGetUserOrMachineUILanguage4NLS@12 | |
| 2004 | RtlpInitializeLangRegistryInfo@4 | |
| 2005 | RtlpIsQualifiedLanguage@12 | |
| 2006 | RtlpLoadMachineUIByPolicy@12 | |
| 2007 | RtlpLoadUserUIByPolicy@12 | |
| 2008 | RtlpMuiFreeLangRegistryInfo@4 | |
| 2009 | RtlpMuiRegCreateRegistryInfo@0 | |
| 2010 | RtlpMuiRegFreeRegistryInfo@8 | |
| 2011 | RtlpMuiRegLoadRegistryInfo@8 | |
| 2012 | RtlpQueryDefaultUILanguage@8 | |
| 2013 | RtlpQueryProcessDebugInformationRemote@4 ; available only in 32-bit WoW64 version on 64-bit system, since Windows 10 Creators Update (Redstone 2 / 1703) available also in non-WoW64 version | |
| 2014 | RtlpRefreshCachedUILanguage@8 | |
| 2015 | RtlpSetInstallLanguage@8 | |
| 2016 | RtlpSetPreferredUILanguages@12 | |
| 2017 | RtlpSetUserPreferredUILanguages@12 | |
| 2018 | RtlpVerifyAndCommitUILanguageSettings@4 | |
| 2019 | ShipAssert@8 | |
| 2020 | ShipAssertGetBufferInfo@8 | |
| 2021 | ShipAssertMsgA@12 | |
| 2022 | ShipAssertMsgW@12 | |
| 2023 | TpAllocAlpcCompletion@20 | |
| 2024 | TpAllocCleanupGroup@4 | |
| 2025 | TpAllocIoCompletion@20 | |
| 2026 | TpAllocPool@8 | |
| 2027 | TpAllocTimer@16 | |
| 2028 | TpAllocWait@16 | |
| 2029 | TpAllocWork@16 | |
| 2030 | TpCallbackLeaveCriticalSectionOnCompletion@8 | |
| 2031 | TpCallbackMayRunLong@4 | |
| 2032 | TpCallbackReleaseMutexOnCompletion@8 | |
| 2033 | TpCallbackReleaseSemaphoreOnCompletion@12 | |
| 2034 | TpCallbackSetEventOnCompletion@8 | |
| 2035 | TpCallbackUnloadDllOnCompletion@8 | |
| 2036 | TpCancelAsyncIoOperation@4 | |
| 2037 | TpCaptureCaller@4 | |
| 2038 | TpCheckTerminateWorker@4 | |
| 2039 | TpDbgDumpHeapUsage@12 | |
| 2040 | TpDbgSetLogRoutine@4 | |
| 2041 | TpDisassociateCallback@4 | |
| 2042 | TpIsTimerSet@4 | |
| 2043 | TpPostWork@4 | |
| 2044 | TpReleaseAlpcCompletion@4 | |
| 2045 | TpReleaseCleanupGroup@4 | |
| 2046 | TpReleaseCleanupGroupMembers@12 | |
| 2047 | TpReleaseIoCompletion@4 | |
| 2048 | TpReleasePool@4 | |
| 2049 | TpReleaseTimer@4 | |
| 2050 | TpReleaseWait@4 | |
| 2051 | TpReleaseWork@4 | |
| 2052 | TpSetPoolMaxThreads@8 | |
| 2053 | TpSetPoolMinThreads@8 | |
| 2054 | TpSetTimer@16 | |
| 2055 | TpSetWait@12 | |
| 2056 | TpSimpleTryPost@12 | |
| 2057 | TpStartAsyncIoOperation@4 | |
| 2058 | TpWaitForAlpcCompletion@4 | |
| 2059 | TpWaitForIoCompletion@8 | |
| 2060 | TpWaitForTimer@8 | |
| 2061 | TpWaitForWait@8 | |
| 2062 | TpWaitForWork@8 | |
| 2063 | WerCheckEventEscalation@8 ; removed in Windows 7 | |
| 2064 | WerReportSQMEvent@16 ; Windows Vista has ABI "WerReportSQMEvent@12", Windows 7 and new has ABI "WerReportSQMEvent@16" | |
| 2065 | WerReportWatsonEvent@16 ; removed in Windows 7 | |
| 2066 | WinSqmAddToStream@16 | |
| 2067 | WinSqmEndSession@4 | |
| 2068 | WinSqmEventEnabled@8 | |
| 2069 | WinSqmEventWrite@12 | |
| 2070 | WinSqmIsOptedIn@0 | |
| 2071 | WinSqmSetString@12 | |
| 2072 | WinSqmStartSession@12 | |
| 2073 | ZwAcquireCMFViewOwnership@12 ; removed in Windows 7 | |
| 2074 | ZwAlpcAcceptConnectPort@36 | |
| 2075 | ZwAlpcCancelMessage@12 | |
| 2076 | ZwAlpcConnectPort@44 | |
| 2077 | ZwAlpcCreatePort@12 | |
| 2078 | ZwAlpcCreatePortSection@24 | |
| 2079 | ZwAlpcCreateResourceReserve@16 | |
| 2080 | ZwAlpcCreateSectionView@12 | |
| 2081 | ZwAlpcCreateSecurityContext@12 | |
| 2082 | ZwAlpcDeletePortSection@12 | |
| 2083 | ZwAlpcDeleteResourceReserve@12 | |
| 2084 | ZwAlpcDeleteSectionView@12 | |
| 2085 | ZwAlpcDeleteSecurityContext@12 | |
| 2086 | ZwAlpcDisconnectPort@8 | |
| 2087 | ZwAlpcImpersonateClientOfPort@12 | |
| 2088 | ZwAlpcOpenSenderProcess@24 | |
| 2089 | ZwAlpcOpenSenderThread@24 | |
| 2090 | ZwAlpcQueryInformation@20 | |
| 2091 | ZwAlpcQueryInformationMessage@24 | |
| 2092 | ZwAlpcRevokeSecurityContext@12 | |
| 2093 | ZwAlpcSendWaitReceivePort@32 | |
| 2094 | ZwAlpcSetInformation@16 | |
| 2095 | ZwCancelIoFileEx@12 | |
| 2096 | ZwCancelSynchronousIoFile@12 | |
| 2097 | ; ZwClearAllSavepointsTransaction@4 ; removed in Windows Vista SP1 | |
| 2098 | ; ZwClearSavepointTransaction@8 ; removed in Windows Vista SP1 | |
| 2099 | ZwCommitComplete@8 | |
| 2100 | ZwCommitEnlistment@8 | |
| 2101 | ZwCommitTransaction@8 | |
| 2102 | ZwCreateEnlistment@32 | |
| 2103 | ZwCreateKeyTransacted@32 | |
| 2104 | ZwCreatePrivateNamespace@16 | |
| 2105 | ZwCreateResourceManager@28 | |
| 2106 | ZwCreateThreadEx@44 | |
| 2107 | ZwCreateTransaction@40 | |
| 2108 | ZwCreateTransactionManager@24 | |
| 2109 | ZwCreateUserProcess@44 | |
| 2110 | ZwCreateWorkerFactory@40 | |
| 2111 | ZwDeletePrivateNamespace@4 | |
| 2112 | ZwEnumerateTransactionObject@20 | |
| 2113 | ZwFlushInstallUILanguage@8 | |
| 2114 | ZwFlushProcessWriteBuffers@0 | |
| 2115 | ZwFreezeRegistry@4 | |
| 2116 | ZwFreezeTransactions@8 | |
| 2117 | ZwGetMUIRegistryInfo@12 | |
| 2118 | ZwGetNextProcess@20 | |
| 2119 | ZwGetNextThread@24 | |
| 2120 | ZwGetNlsSectionPtr@20 | |
| 2121 | ZwGetNotificationResourceManager@28 | |
| 2122 | ZwInitializeNlsFiles@16 ; Windows Vista has ABI "ZwInitializeNlsFiles@12", Windows Vista SP1 and SP2 has ABI "ZwInitializeNlsFiles@16", Windows 7 and new has again ABI "ZwInitializeNlsFiles@12" | |
| 2123 | ZwIsUILanguageComitted@0 | |
| 2124 | ; ZwListTransactions@12 ; removed in Windows Vista SP1 | |
| 2125 | ZwMapCMFModule@24 | |
| 2126 | ; ZwMarshallTransaction@24 ; removed in Windows Vista SP1 | |
| 2127 | ZwOpenEnlistment@20 | |
| 2128 | ZwOpenKeyTransacted@16 | |
| 2129 | ZwOpenPrivateNamespace@16 | |
| 2130 | ZwOpenResourceManager@20 | |
| 2131 | ZwOpenSession@12 | |
| 2132 | ZwOpenTransaction@20 | |
| 2133 | ZwOpenTransactionManager@24 | |
| 2134 | ZwPrePrepareComplete@8 | |
| 2135 | ZwPrePrepareEnlistment@8 | |
| 2136 | ZwPrepareComplete@8 | |
| 2137 | ZwPrepareEnlistment@8 | |
| 2138 | ZwPropagationComplete@16 | |
| 2139 | ZwPropagationFailed@12 | |
| 2140 | ; ZwPullTransaction@28 ; removed in Windows Vista SP1 | |
| 2141 | ZwQueryInformationEnlistment@20 | |
| 2142 | ZwQueryInformationResourceManager@20 | |
| 2143 | ZwQueryInformationTransaction@20 | |
| 2144 | ZwQueryInformationTransactionManager@20 | |
| 2145 | ZwQueryInformationWorkerFactory@20 | |
| 2146 | ZwQueryLicenseValue@20 | |
| 2147 | ZwReadOnlyEnlistment@8 | |
| 2148 | ZwRecoverEnlistment@8 | |
| 2149 | ZwRecoverResourceManager@4 | |
| 2150 | ZwRecoverTransactionManager@4 | |
| 2151 | ZwRegisterProtocolAddressInformation@20 | |
| 2152 | ZwReleaseCMFViewOwnership@0 ; removed in Windows 7 | |
| 2153 | ZwReleaseWorkerFactoryWorker@4 | |
| 2154 | ZwRemoveIoCompletionEx@24 | |
| 2155 | ZwRollbackComplete@8 | |
| 2156 | ZwRollbackEnlistment@8 | |
| 2157 | ; ZwRollbackSavepointTransaction@8 ; removed in Windows Vista SP1 | |
| 2158 | ZwRollbackTransaction@8 | |
| 2159 | ZwRollforwardTransactionManager@8 | |
| 2160 | ; ZwSavepointComplete@8 ; removed in Windows Vista SP1 | |
| 2161 | ; ZwSavepointTransaction@12 ; removed in Windows Vista SP1 | |
| 2162 | ZwSetInformationEnlistment@16 | |
| 2163 | ZwSetInformationResourceManager@16 | |
| 2164 | ZwSetInformationTransaction@16 | |
| 2165 | ZwSetInformationTransactionManager@16 | |
| 2166 | ZwSetInformationWorkerFactory@16 | |
| 2167 | ZwShutdownWorkerFactory@8 | |
| 2168 | ZwSinglePhaseReject@8 | |
| 2169 | ; ZwStartTm@0 ; removed in Windows Vista SP1 | |
| 2170 | ZwThawRegistry@0 | |
| 2171 | ZwThawTransactions@0 | |
| 2172 | ZwTraceControl@24 | |
| 2173 | ZwWaitForWorkViaWorkerFactory@8 ; Windows Vista-7 has ABI "ZwWaitForWorkViaWorkerFactory@8", Windows 8 has ABI "ZwWaitForWorkViaWorkerFactory@16", Windows 8.1 and new has ABI "ZwWaitForWorkViaWorkerFactory@20" | |
| 2174 | ZwWorkerFactoryWorkerReady@4 | |
| 2175 | ZwWow64CallFunction64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2176 | ZwWow64CsrVerifyRegion@8 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2177 | ZwWow64WriteVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2178 | ; _ResCGetRegistryFlags@16 ; removed in Windows Vista SP1 | |
| 2179 | ; _ResCMatchFlags@12 ; removed in Windows Vista SP1 | |
| 2180 | ; _ResCSaveRegistryFlags@16 ; removed in Windows Vista SP1 | |
| 2181 | ||
| 2182 | ; This is list of symbols added in Windows Vista SP1 | |
| 2183 | LdrpResGetMappingSize@16 | |
| 2184 | LdrpResGetRCConfig@20 ; removed in Windows 7 | |
| 2185 | LdrpResGetResourceDirectory@20 | |
| 2186 | NtRenameTransactionManager@8 | |
| 2187 | NtReplacePartitionUnit@12 | |
| 2188 | NtdllDefWindowProc_A@16 ; same as user32.DefWindowProcA | |
| 2189 | NtdllDefWindowProc_W@16 ; same as user32.DefWindowProcW | |
| 2190 | NtdllDialogWndProc_A@16 ; same as user32.DefDlgProcA | |
| 2191 | NtdllDialogWndProc_W@16 ; same as user32.DefDlgProcW | |
| 2192 | RtlDeregisterSecureMemoryCacheCallback@4 | |
| 2193 | RtlInitializeExceptionChain@4 | |
| 2194 | RtlNumberOfSetBitsUlongPtr@4 | |
| 2195 | RtlpCheckDynamicTimeZoneInformation@8 | |
| 2196 | ZwRenameTransactionManager@8 | |
| 2197 | ZwReplacePartitionUnit@12 | |
| 2198 | ||
| 2199 | ; This is list of symbols added in Windows Vista SP2 | |
| 2200 | RtlpInterlockedPopEntrySeqSListEnd@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 2201 | RtlpInterlockedPopEntrySeqSListFault@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 2202 | RtlpInterlockedPopEntrySeqSListResume@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7 | |
| 2203 | ||
| 2204 | ; This is list of symbols added in Windows 7 | |
| 2205 | AlpcRundownCompletionList@4 | |
| 2206 | EtwEventWriteEx@40 | |
| 2207 | EtwEventWriteNoRegistration@16 | |
| 2208 | EvtIntReportAuthzEventAndSourceAsync@44 | |
| 2209 | EvtIntReportEventAndSourceAsync@44 | |
| 2210 | LdrGetDllHandleByMapping@8 | |
| 2211 | LdrGetDllHandleByName@12 | |
| 2212 | LdrResGetRCConfig@20 | |
| 2213 | LdrRscIsTypeExist@16 | |
| 2214 | LdrWx86FormatVirtualImage@12 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2215 | NtAllocateReserveObject@12 | |
| 2216 | NtCreateProfileEx@40 | |
| 2217 | NtDisableLastKnownGood@0 | |
| 2218 | NtDrawText@4 | |
| 2219 | NtEnableLastKnownGood@0 | |
| 2220 | NtNotifyChangeSession@32 | |
| 2221 | NtOpenKeyEx@16 | |
| 2222 | NtOpenKeyTransactedEx@20 | |
| 2223 | NtQuerySecurityAttributesToken@24 | |
| 2224 | NtQuerySystemInformationEx@24 | |
| 2225 | NtQueueApcThreadEx@24 | |
| 2226 | NtSerializeBoot@0 | |
| 2227 | NtSetIoCompletionEx@24 | |
| 2228 | NtSetTimerEx@16 | |
| 2229 | NtUmsThreadYield@4 | |
| 2230 | NtWow64GetCurrentProcessorNumberEx@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2231 | NtWow64InterlockedPopEntrySList@4 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 8 | |
| 2232 | RtlAcquireReleaseSRWLockExclusive@4 | |
| 2233 | RtlAddIntegrityLabelToBoundaryDescriptor@8 | |
| 2234 | RtlContractHashTable@4 | |
| 2235 | RtlCopyExtendedContext@12 | |
| 2236 | RtlCreateHashTable@12 | |
| 2237 | RtlCreateProcessReflection@24 | |
| 2238 | RtlCreateVirtualAccountSid@16 | |
| 2239 | RtlDeleteHashTable@4 | |
| 2240 | RtlDetectHeapLeaks@0 | |
| 2241 | RtlDisableThreadProfiling@4 | |
| 2242 | RtlEnableThreadProfiling@20 | |
| 2243 | RtlEndEnumerationHashTable@8 | |
| 2244 | RtlEndWeakEnumerationHashTable@8 | |
| 2245 | RtlEnumerateEntryHashTable@8 | |
| 2246 | RtlEthernetAddressToStringA@8 | |
| 2247 | RtlEthernetAddressToStringW@8 | |
| 2248 | RtlEthernetStringToAddressA@12 | |
| 2249 | RtlEthernetStringToAddressW@12 | |
| 2250 | RtlExpandHashTable@4 | |
| 2251 | RtlFillMemoryUlonglong@16 | |
| 2252 | RtlGetCurrentProcessorNumberEx@4 | |
| 2253 | RtlGetEnabledExtendedFeatures@8 | |
| 2254 | RtlGetExtendedContextLength@8 | |
| 2255 | RtlGetExtendedFeaturesMask@4 | |
| 2256 | RtlGetFullPathName_UEx@20 | |
| 2257 | RtlGetLocaleFileMappingAddress@12 | |
| 2258 | RtlGetNextEntryHashTable@8 | |
| 2259 | RtlGetProcessPreferredUILanguages@16 | |
| 2260 | RtlInitEnumerationHashTable@8 | |
| 2261 | RtlInitWeakEnumerationHashTable@8 | |
| 2262 | RtlInitializeExtendedContext@12 | |
| 2263 | RtlInsertEntryHashTable@16 | |
| 2264 | RtlInterlockedClearBitRun@12 | |
| 2265 | RtlInterlockedSetBitRun@12 | |
| 2266 | RtlIsNameInExpression@16 | |
| 2267 | RtlKnownExceptionFilter@4 | |
| 2268 | RtlLoadString@32 | |
| 2269 | RtlLocateExtendedFeature@12 | |
| 2270 | RtlLocateLegacyContext@8 | |
| 2271 | RtlLookupEntryHashTable@12 | |
| 2272 | RtlQueryPerformanceCounter@4 | |
| 2273 | RtlQueryPerformanceFrequency@4 | |
| 2274 | RtlQueryThreadProfiling@8 | |
| 2275 | RtlReadThreadProfilingData@12 | |
| 2276 | RtlRemoveEntryHashTable@12 | |
| 2277 | RtlReplaceSidInSd@16 | |
| 2278 | RtlReportSilentProcessExit@8 | |
| 2279 | RtlReportSqmEscalation@24 | |
| 2280 | RtlSetExtendedFeaturesMask@12 | |
| 2281 | RtlSetProcessPreferredUILanguages@12 | |
| 2282 | RtlSetUserCallbackExceptionFilter@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2283 | RtlTryAcquireSRWLockExclusive@4 | |
| 2284 | RtlTryAcquireSRWLockShared@4 | |
| 2285 | RtlUTF8ToUnicodeN@20 | |
| 2286 | RtlUnicodeToUTF8N@20 | |
| 2287 | RtlWeaklyEnumerateEntryHashTable@8 | |
| 2288 | SbExecuteProcedure@20 | |
| 2289 | SbSelectProcedure@16 | |
| 2290 | TpAllocAlpcCompletionEx@20 | |
| 2291 | TpAlpcRegisterCompletionList@4 | |
| 2292 | TpAlpcUnregisterCompletionList@4 | |
| 2293 | TpCallbackIndependent@4 | |
| 2294 | TpDbgGetFreeInfo@8 ; removed in Windows 8 | |
| 2295 | TpDisablePoolCallbackChecks@4 | |
| 2296 | TpPoolFreeUnusedNodes@4 ; removed in Windows 8 | |
| 2297 | TpQueryPoolStackInformation@8 | |
| 2298 | TpSetDefaultPoolMaxThreads@4 | |
| 2299 | TpSetDefaultPoolStackInformation@4 | |
| 2300 | TpSetPoolStackInformation@8 | |
| 2301 | WinSqmAddToAverageDWORD@12 | |
| 2302 | WinSqmAddToStreamEx@20 | |
| 2303 | WinSqmCheckEscalationAddToStreamEx@20 | |
| 2304 | WinSqmCheckEscalationSetDWORD64@20 | |
| 2305 | WinSqmCheckEscalationSetDWORD@16 | |
| 2306 | WinSqmCheckEscalationSetString@16 | |
| 2307 | WinSqmCommonDatapointDelete@4 | |
| 2308 | WinSqmCommonDatapointSetDWORD64@16 | |
| 2309 | WinSqmCommonDatapointSetDWORD@12 | |
| 2310 | WinSqmCommonDatapointSetStreamEx@20 | |
| 2311 | WinSqmCommonDatapointSetString@12 | |
| 2312 | WinSqmGetEscalationRuleStatus@8 | |
| 2313 | WinSqmGetInstrumentationProperty@16 | |
| 2314 | WinSqmIncrementDWORD@12 | |
| 2315 | WinSqmIsOptedInEx@4 | |
| 2316 | WinSqmSetDWORD64@16 | |
| 2317 | WinSqmSetDWORD@12 | |
| 2318 | WinSqmSetEscalationInfo@16 | |
| 2319 | WinSqmSetIfMaxDWORD@12 | |
| 2320 | WinSqmSetIfMinDWORD@12 | |
| 2321 | ZwAllocateReserveObject@12 | |
| 2322 | ZwCreateProfileEx@40 | |
| 2323 | ZwDisableLastKnownGood@0 | |
| 2324 | ZwDrawText@4 | |
| 2325 | ZwEnableLastKnownGood@0 | |
| 2326 | ZwNotifyChangeSession@32 | |
| 2327 | ZwOpenKeyEx@16 | |
| 2328 | ZwOpenKeyTransactedEx@20 | |
| 2329 | ZwQuerySecurityAttributesToken@24 | |
| 2330 | ZwQuerySystemInformationEx@24 | |
| 2331 | ZwQueueApcThreadEx@24 | |
| 2332 | ZwSerializeBoot@0 | |
| 2333 | ZwSetIoCompletionEx@24 | |
| 2334 | ZwSetTimerEx@16 | |
| 2335 | ZwUmsThreadYield@4 | |
| 2336 | ZwWow64GetCurrentProcessorNumberEx@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2337 | ZwWow64InterlockedPopEntrySList@4 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507) | |
| 2338 | ||
| 2339 | ; This is list of ordinal-only symbols added in Windows 7 | |
| 2340 | ; Symbol names are taken from: | |
| 2341 | ; https://www.geoffchappell.com/studies/windows/win32/ntdll/history/ords61.htm | |
| 2342 | ; AitLogFeatureUsageByApp@4 @1 NONAME ; removed in Windows 10 (Threshold / 1507) | |
| 2343 | ; AitFireParentUsageEvent@16 @2 NONAME ; removed in Windows 10 (Threshold / 1507) | |
| 2344 | ; SbtLogSystemUsageByParent@32 @3 NONAME ; removed in Windows 10 (Threshold / 1507) | |
| 2345 | ; SbtLogSystemUsageByStack@28 @4 NONAME ; FIXME: Windows 7 has ABI @28, Windows 8 and 8.1 has ABI @20, removed in Windows 10 (Threshold / 1507) | |
| 2346 | ; SbtDisableForCurrentProcess@0 @5 NONAME ; removed in Windows 10 (Threshold / 1507) | |
| 2347 | ; SbtLogDllMapping@8 @6 NONAME ; FIXME: Windows 7 has ABI @8, Windows 8 and 8.1 has ABI @0, removed in Windows 10 (Threshold / 1507) | |
| 2348 | ; SbtLogExeInitializing@0 @7 NONAME ; removed in Windows 10 (Threshold / 1507) | |
| 2349 | ; RtlDispatchAPC@12 @8 NONAME ; since Windows 10 Creators Update (Redstone 2 / 1703) available as normal symbol | |
| 2350 | ||
| 2351 | ; This is list of symbols added in Windows 7 SP1 | |
| 2352 | RtlCopyContext@12 | |
| 2353 | ||
| 2354 | ; This is list of symbols added in Windows 8 | |
| 2355 | ApiSetQueryApiSetPresence@8 | |
| 2356 | EtwEventSetInformation@20 | |
| 2357 | LdrAddDllDirectory@8 | |
| 2358 | LdrAppxHandleIntegrityFailure@4 | |
| 2359 | LdrGetDllDirectory@4 | |
| 2360 | LdrGetDllFullName@8 | |
| 2361 | LdrGetDllPath@16 | |
| 2362 | LdrGetProcedureAddressForCaller@24 | |
| 2363 | LdrProcessRelocationBlockEx@20 | |
| 2364 | LdrQueryOptionalDelayLoadedAPI@16 | |
| 2365 | LdrRemoveDllDirectory@4 | |
| 2366 | LdrResolveDelayLoadedAPI@24 | |
| 2367 | LdrResolveDelayLoadsFromDll@12 | |
| 2368 | LdrSetDefaultDllDirectories@4 | |
| 2369 | LdrSetDllDirectory@4 | |
| 2370 | LdrStandardizeSystemPath@4 | |
| 2371 | LdrSystemDllInitBlock DATA | |
| 2372 | NtAddAtomEx@16 | |
| 2373 | NtAdjustTokenClaimsAndDeviceGroups@64 | |
| 2374 | NtAlertThreadByThreadId@4 | |
| 2375 | NtAlpcConnectPortEx@44 | |
| 2376 | NtAssociateWaitCompletionPacket@32 | |
| 2377 | NtCancelWaitCompletionPacket@8 | |
| 2378 | NtCreateDirectoryObjectEx@20 | |
| 2379 | NtCreateIRTimer@12 ; Windows 8-10 has ABI "NtCreateIRTimer@8", Windows 10 Creators Update (Redstone 2 / 1703) and new has ABI "NtCreateIRTimer@12" | |
| 2380 | NtCreateLowBoxToken@36 | |
| 2381 | NtCreateTokenEx@68 | |
| 2382 | NtCreateWaitCompletionPacket@12 | |
| 2383 | NtCreateWnfStateName@28 | |
| 2384 | NtDeleteWnfStateData@8 | |
| 2385 | NtDeleteWnfStateName@4 | |
| 2386 | NtFilterBootOption@20 | |
| 2387 | NtFilterTokenEx@56 | |
| 2388 | NtFlushBuffersFileEx@20 | |
| 2389 | NtGetCachedSigningLevel@24 | |
| 2390 | NtQueryWnfStateData@24 | |
| 2391 | NtQueryWnfStateNameInformation@20 | |
| 2392 | NtSetCachedSigningLevel@20 | |
| 2393 | NtSetIRTimer@8 | |
| 2394 | NtSetInformationVirtualMemory@24 | |
| 2395 | NtSubscribeWnfStateChange@16 | |
| 2396 | NtUnmapViewOfSectionEx@12 | |
| 2397 | NtUnsubscribeWnfStateChange@4 | |
| 2398 | NtUpdateWnfStateData@28 | |
| 2399 | NtWaitForAlertByThreadId@8 | |
| 2400 | ; NtWaitForWnfNotifications@8 ; removed in Windows 8.1 | |
| 2401 | ; NtWow64AllocateVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2402 | RtlAddResourceAttributeAce@28 | |
| 2403 | RtlAddScopedPolicyIDAce@20 | |
| 2404 | RtlAllocateWnfSerializationGroup@0 | |
| 2405 | RtlAppxIsFileOwnedByTrustedInstaller@8 | |
| 2406 | RtlAvlInsertNodeEx@16 | |
| 2407 | RtlAvlRemoveNode@8 | |
| 2408 | RtlCanonicalizeDomainName@12 | |
| 2409 | RtlCheckPortableOperatingSystem@4 | |
| 2410 | RtlCheckTokenCapability@12 | |
| 2411 | RtlCheckTokenMembership@12 | |
| 2412 | RtlCheckTokenMembershipEx@16 | |
| 2413 | RtlClearBit@8 | |
| 2414 | RtlCopyBitMap@12 | |
| 2415 | RtlCrc32@12 | |
| 2416 | RtlCrc64@16 | |
| 2417 | RtlCreateHashTableEx@16 | |
| 2418 | RtlDecompressBufferEx@28 | |
| 2419 | RtlDeleteElementGenericTableAvlEx@8 | |
| 2420 | RtlEqualWnfChangeStamps@8 | |
| 2421 | RtlExtractBitMap@16 | |
| 2422 | RtlFlushHeaps@0 | |
| 2423 | RtlGetAppContainerNamedObjectPath@16 | |
| 2424 | RtlGetExePath@8 | |
| 2425 | RtlGetSearchPath@4 | |
| 2426 | RtlGetSystemTimePrecise@0 | |
| 2427 | RtlInterlockedPushListSListEx@16 | |
| 2428 | RtlIsCapabilitySid@4 | |
| 2429 | RtlIsPackageSid@4 | |
| 2430 | RtlIsUntrustedObject@12 | |
| 2431 | RtlLengthSidAsUnicodeString@8 | |
| 2432 | RtlNumberOfClearBitsInRange@12 | |
| 2433 | RtlNumberOfSetBitsInRange@12 | |
| 2434 | RtlPublishWnfStateData@24 | |
| 2435 | RtlQueryPackageIdentity@24 | |
| 2436 | RtlQueryRegistryValuesEx@20 | |
| 2437 | RtlQueryUnbiasedInterruptTime@4 | |
| 2438 | RtlQueryValidationRunlevel@4 | |
| 2439 | RtlQueryWnfMetaNotification@20 | |
| 2440 | RtlQueryWnfStateData@24 | |
| 2441 | RtlQueryWnfStateDataWithExplicitScope@28 | |
| 2442 | RtlRbInsertNodeEx@16 | |
| 2443 | RtlRbRemoveNode@8 | |
| 2444 | RtlRegisterForWnfMetaNotification@24 | |
| 2445 | RtlReleasePath@4 | |
| 2446 | RtlResetNtUserPfn@0 | |
| 2447 | RtlSetBit@8 | |
| 2448 | RtlSetPortableOperatingSystem@4 | |
| 2449 | RtlSetSearchPathMode@4 | |
| 2450 | RtlSubscribeWnfStateChangeNotification@36 | |
| 2451 | RtlTestAndPublishWnfStateData@28 | |
| 2452 | RtlTryConvertSRWLockSharedToExclusiveOrRelease@4 | |
| 2453 | RtlUnsubscribeWnfNotificationWaitForCompletion@4 | |
| 2454 | RtlUnsubscribeWnfNotificationWithCompletionCallback@12 | |
| 2455 | RtlUnsubscribeWnfStateChangeNotification@4 | |
| 2456 | RtlWaitForWnfMetaNotification@24 | |
| 2457 | RtlWaitOnAddress@16 | |
| 2458 | RtlWakeAddressAll@4 | |
| 2459 | RtlWakeAddressAllNoFence@4 | |
| 2460 | RtlWakeAddressSingle@4 | |
| 2461 | RtlWakeAddressSingleNoFence@4 | |
| 2462 | RtlWnfCompareChangeStamp@8 ; removed in Windows 11 2024 Update (Hudson Valley / 24H2) | |
| 2463 | RtlWnfDllUnloadCallback@4 | |
| 2464 | RtlpConvertAbsoluteToRelativeSecurityAttribute@12 | |
| 2465 | RtlpConvertRelativeToAbsoluteSecurityAttribute@16 | |
| 2466 | RtlpFreezeTimeBias DATA | |
| 2467 | RtlpMergeSecurityAttributeInformation@16 | |
| 2468 | ; RtlpWnfNotificationThread@16 ; removed in Windows 8.1 | |
| 2469 | TpAllocJobNotification@20 | |
| 2470 | TpCallbackDetectedUnrecoverableError@4 | |
| 2471 | TpReleaseJobNotification@4 | |
| 2472 | TpSetPoolThreadBasePriority@8 | |
| 2473 | TpSetTimerEx@16 | |
| 2474 | TpSetWaitEx@16 | |
| 2475 | TpTimerOutstandingCallbackCount@4 | |
| 2476 | TpWaitForJobNotification@4 | |
| 2477 | WinSqmIsSessionDisabled@4 | |
| 2478 | ZwAddAtomEx@16 | |
| 2479 | ZwAdjustTokenClaimsAndDeviceGroups@64 | |
| 2480 | ZwAlertThreadByThreadId@4 | |
| 2481 | ZwAlpcConnectPortEx@44 | |
| 2482 | ZwAssociateWaitCompletionPacket@32 | |
| 2483 | ZwCancelWaitCompletionPacket@8 | |
| 2484 | ZwCreateDirectoryObjectEx@20 | |
| 2485 | ZwCreateIRTimer@12 ; Windows 8-10 has ABI "ZwCreateIRTimer@8", Windows 10 Creators Update (Redstone 2 / 1703) and new has ABI "ZwCreateIRTimer@12" | |
| 2486 | ZwCreateLowBoxToken@36 | |
| 2487 | ZwCreateTokenEx@68 | |
| 2488 | ZwCreateWaitCompletionPacket@12 | |
| 2489 | ZwCreateWnfStateName@28 | |
| 2490 | ZwDeleteWnfStateData@8 | |
| 2491 | ZwDeleteWnfStateName@4 | |
| 2492 | ZwFilterBootOption@20 | |
| 2493 | ZwFilterTokenEx@56 | |
| 2494 | ZwFlushBuffersFileEx@20 | |
| 2495 | ZwGetCachedSigningLevel@24 | |
| 2496 | ZwQueryWnfStateData@24 | |
| 2497 | ZwQueryWnfStateNameInformation@20 | |
| 2498 | ZwSetCachedSigningLevel@20 | |
| 2499 | ZwSetIRTimer@8 | |
| 2500 | ZwSetInformationVirtualMemory@24 | |
| 2501 | ZwSubscribeWnfStateChange@16 | |
| 2502 | ZwUnmapViewOfSectionEx@12 | |
| 2503 | ZwUnsubscribeWnfStateChange@4 | |
| 2504 | ZwUpdateWnfStateData@28 | |
| 2505 | ZwWaitForAlertByThreadId@8 | |
| 2506 | ; ZwWaitForWnfNotifications@8 ; removed in Windows 8.1 | |
| 2507 | ; ZwWow64AllocateVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2508 | ||
| 2509 | ; This is list of symbols added in Windows 8.1 | |
| 2510 | LdrSetImplicitPathOptions@8 | |
| 2511 | NtCancelTimer2@8 | |
| 2512 | NtCreateTimer2@20 | |
| 2513 | NtGetCompleteWnfStateSubscription@24 | |
| 2514 | NtSetTimer2@16 | |
| 2515 | NtSetWnfProcessNotificationEvent@4 | |
| 2516 | PssNtCaptureSnapshot@16 | |
| 2517 | PssNtDuplicateSnapshot@20 | |
| 2518 | PssNtFreeRemoteSnapshot@8 | |
| 2519 | PssNtFreeSnapshot@4 | |
| 2520 | PssNtFreeWalkMarker@4 | |
| 2521 | PssNtQuerySnapshot@16 | |
| 2522 | PssNtValidateDescriptor@8 | |
| 2523 | PssNtWalkSnapshot@20 | |
| 2524 | RtlAddProcessTrustLabelAce@24 | |
| 2525 | RtlAllocateAndInitializeSidEx@16 | |
| 2526 | RtlGetAppContainerParent@8 | |
| 2527 | RtlGetAppContainerSidType@8 | |
| 2528 | RtlIsParentOfChildAppContainer@8 | |
| 2529 | RtlIsValidProcessTrustLabelSid@4 | |
| 2530 | RtlQueryPackageIdentityEx@28 | |
| 2531 | RtlSidDominatesForTrust@12 | |
| 2532 | RtlStringFromGUIDEx@12 | |
| 2533 | RtlTestProtectedAccess@8 | |
| 2534 | RtlValidProcessProtection@4 | |
| 2535 | TpCallbackSendAlpcMessageOnCompletion@16 | |
| 2536 | TpCallbackSendPendingAlpcMessage@4 | |
| 2537 | WinSqmStartSessionForPartner@16 | |
| 2538 | ZwCancelTimer2@8 | |
| 2539 | ZwCreateTimer2@20 | |
| 2540 | ZwGetCompleteWnfStateSubscription@24 | |
| 2541 | ZwSetTimer2@16 | |
| 2542 | ZwSetWnfProcessNotificationEvent@4 | |
| 2543 | ||
| 2544 | ; This is list of symbols added in Windows 10 (Threshold / 1507) | |
| 2545 | DbgUiConvertStateChangeStructureEx@8 | |
| 2546 | LdrFastFailInLoaderCallout@0 | |
| 2547 | NtAlpcImpersonateClientContainerOfPort@12 | |
| 2548 | NtCompareObjects@8 | |
| 2549 | NtCreatePartition@16 ; Windows 10 has ABI "NtCreatePartition@20", Windows 10 November Update (Threshold 2 / 1511) and new has ABI "NtCreatePartition@16" | |
| 2550 | NtGetCurrentProcessorNumberEx@4 | |
| 2551 | NtManagePartition@20 | |
| 2552 | NtOpenPartition@12 | |
| 2553 | NtRevertContainerImpersonation@0 | |
| 2554 | NtSetInformationSymbolicLink@16 | |
| 2555 | ; NtWow64IsProcessorFeaturePresent@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2556 | RtlCapabilityCheck@12 | |
| 2557 | RtlCheckSandboxedToken@8 | |
| 2558 | RtlConvertDeviceFamilyInfoToString@16 | |
| 2559 | RtlConvertSRWLockExclusiveToShared@4 | |
| 2560 | RtlDecodeRemotePointer@12 | |
| 2561 | RtlDeriveCapabilitySidsFromName@12 | |
| 2562 | RtlEncodeRemotePointer@12 | |
| 2563 | RtlEndStrongEnumerationHashTable@8 | |
| 2564 | RtlFindUnicodeSubstring@12 | |
| 2565 | RtlGetDeviceFamilyInfoEnum@12 | |
| 2566 | RtlGetInterruptTimePrecise@4 | |
| 2567 | RtlInitStringEx@8 | |
| 2568 | RtlInitStrongEnumerationHashTable@8 | |
| 2569 | RtlInitializeSidEx@0 | |
| 2570 | RtlIsMultiSessionSku@0 | |
| 2571 | RtlIsProcessorFeaturePresent@4 | |
| 2572 | RtlOsDeploymentState@4 | |
| 2573 | RtlQueryPackageClaims@32 ; Windows 10 has ABI "RtlQueryPackageClaims@28", Windows 10 Anniversary Update (Redstone / 1607) and new has ABI "RtlQueryPackageClaims@32" | |
| 2574 | RtlQueryProtectedPolicy@8 | |
| 2575 | RtlQueryResourcePolicy@16 | |
| 2576 | RtlSetProtectedPolicy@12 | |
| 2577 | RtlSetThreadSubProcessTag@4 | |
| 2578 | RtlStronglyEnumerateEntryHashTable@8 | |
| 2579 | RtlSwitchedVVI@16 | |
| 2580 | RtlpGetDeviceFamilyInfoEnum@12 | |
| 2581 | TpSetPoolMaxThreadsSoftLimit@8 | |
| 2582 | TpSetPoolWorkerThreadIdleTimeout@12 | |
| 2583 | TpTrimPools@0 | |
| 2584 | WinSqmStartSqmOptinListener@0 | |
| 2585 | ZwAlpcImpersonateClientContainerOfPort@12 | |
| 2586 | ZwCompareObjects@8 | |
| 2587 | ZwCreatePartition@16 ; Windows 10 has ABI "ZwCreatePartition@20", Windows 10 November Update (Threshold 2 / 1511) and new has ABI "ZwCreatePartition@16" | |
| 2588 | ZwGetCurrentProcessorNumberEx@4 | |
| 2589 | ZwManagePartition@20 | |
| 2590 | ZwOpenPartition@12 | |
| 2591 | ZwRevertContainerImpersonation@0 | |
| 2592 | ZwSetInformationSymbolicLink@16 | |
| 2593 | ; ZwWow64IsProcessorFeaturePresent@4 ; available only in 32-bit WoW64 version on 64-bit system | |
| 2594 | ||
| 2595 | ; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511) | |
| 2596 | NtCreateEnclave@36 | |
| 2597 | NtInitializeEnclave@20 | |
| 2598 | NtLoadEnclaveData@36 | |
| 2599 | RtlGetCurrentServiceSessionId@0 | |
| 2600 | RtlWow64GetCurrentMachine@0 | |
| 2601 | ZwCreateEnclave@36 | |
| 2602 | ZwInitializeEnclave@20 | |
| 2603 | ZwLoadEnclaveData@36 | |
| 2604 | ||
| 2605 | ; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607) | |
| 2606 | NtCommitRegistryTransaction@8 | |
| 2607 | NtCreateRegistryTransaction@16 | |
| 2608 | NtOpenRegistryTransaction@12 | |
| 2609 | NtQuerySecurityPolicy@24 | |
| 2610 | NtRollbackRegistryTransaction@8 | |
| 2611 | NtSetCachedSigningLevel2@24 | |
| 2612 | RtlAreLongPathsEnabled@0 | |
| 2613 | RtlCheckBootStatusIntegrity@8 | |
| 2614 | RtlClearThreadWorkOnBehalfTicket@0 | |
| 2615 | RtlFindExportedRoutineByName@8 | |
| 2616 | RtlGetActiveConsoleId@0 | |
| 2617 | RtlGetConsoleSessionForegroundProcessId@0 | |
| 2618 | RtlGetSuiteMask@0 | |
| 2619 | RtlGetThreadWorkOnBehalfTicket@8 | |
| 2620 | RtlGuardCheckLongJumpTarget@12 | |
| 2621 | ; RtlIsLongPathAwareProcessByManifest@0 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2622 | RtlIsMultiUsersInSessionSku@0 | |
| 2623 | RtlLocateExtendedFeature2@16 | |
| 2624 | RtlReplaceSystemDirectoryInPath@16 | |
| 2625 | RtlReportExceptionEx@20 | |
| 2626 | RtlRestoreBootStatusDefaults@4 | |
| 2627 | RtlSetThreadWorkOnBehalfTicket@4 | |
| 2628 | ; RtlSparseBitmapCtxAreAllClear@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2629 | ; RtlSparseBitmapCtxAreAllSet@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2630 | ; RtlSparseBitmapCtxCheckBit@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2631 | ; RtlSparseBitmapCtxCleanup@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2632 | ; RtlSparseBitmapCtxClearBits@24 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2633 | ; RtlSparseBitmapCtxClearBitsEx@32 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2634 | ; RtlSparseBitmapCtxCountBitsSet@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2635 | ; RtlSparseBitmapCtxFindNextBitSet@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2636 | ; RtlSparseBitmapCtxFindSetRuns@36 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2637 | ; RtlSparseBitmapCtxInitialize@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2638 | ; RtlSparseBitmapCtxMetadataForBit@16 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2639 | ; RtlSparseBitmapCtxOrBitmap@8 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2640 | ; RtlSparseBitmapCtxPrepareBits@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2641 | ; RtlSparseBitmapCtxSetBits@24 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2642 | ; RtlSparseBitmapCtxSetBitsEx@32 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2643 | ; RtlSparseBitmapCtxStart@8 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2644 | ; RtlSparseBitmapCtxSubtractBitmap@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2645 | ; RtlSparseBitmapEnumerateBitmap@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2646 | RtlWow64GetProcessMachines@12 | |
| 2647 | RtlWow64IsWowGuestMachineSupported@8 | |
| 2648 | ; Wow64Transition DATA ; available only in 32-bit WoW64 version on 64-bit system | |
| 2649 | ZwCommitRegistryTransaction@8 | |
| 2650 | ZwCreateRegistryTransaction@16 | |
| 2651 | ZwOpenRegistryTransaction@12 | |
| 2652 | ZwQuerySecurityPolicy@24 | |
| 2653 | ZwRollbackRegistryTransaction@8 | |
| 2654 | ZwSetCachedSigningLevel2@24 | |
| 2655 | ||
| 2656 | ; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703) | |
| 2657 | LdrParentInterlockedPopEntrySList DATA | |
| 2658 | LdrParentRtlInitializeNtUserPfn DATA | |
| 2659 | LdrParentRtlResetNtUserPfn DATA | |
| 2660 | LdrParentRtlRetrieveNtUserPfn DATA | |
| 2661 | LdrUpdatePackageSearchPath@4 | |
| 2662 | LdrpChildNtdll DATA | |
| 2663 | NtAcquireProcessActivityReference@12 | |
| 2664 | NtCompareSigningLevels@8 | |
| 2665 | ; NtContinueCHPE@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2666 | NtConvertBetweenAuxiliaryCounterAndPerformanceCounter@16 | |
| 2667 | ; NtLoadHotPatch@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2668 | NtQueryAuxiliaryCounterFrequency@4 | |
| 2669 | NtQueryInformationByName@20 | |
| 2670 | RtlAddAccessFilterAce@32 | |
| 2671 | RtlCreateUserProcessEx@20 | |
| 2672 | RtlDispatchAPC@12 ; before Windows 10 Creators Update (Redstone 2 / 1703) available as ordinal-only symbol | |
| 2673 | RtlGetNtSystemRoot@0 | |
| 2674 | RtlGetSessionProperties@8 | |
| 2675 | RtlGetTokenNamedObjectPath@12 | |
| 2676 | RtlIsElevatedRid@4 | |
| 2677 | RtlIsNonEmptyDirectoryReparsePointAllowed@4 | |
| 2678 | ; RtlIsPlaceholderFileHandle@8 ; removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2679 | ; RtlIsPlaceholderFileInfo@12 ; removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2680 | RtlLookupFirstMatchingElementGenericTableAvl@12 | |
| 2681 | ; RtlLookupFunctionEntryCHPE@12 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2682 | ; RtlUnwindEx@24 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2683 | WerReportExceptionWorker@4 | |
| 2684 | ZwAcquireProcessActivityReference@12 | |
| 2685 | ZwCompareSigningLevels@8 | |
| 2686 | ; ZwContinueCHPE@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2687 | ZwConvertBetweenAuxiliaryCounterAndPerformanceCounter@16 | |
| 2688 | ; ZwLoadHotPatch@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2689 | ZwQueryAuxiliaryCounterFrequency@4 | |
| 2690 | ZwQueryInformationByName@20 | |
| 2691 | ||
| 2692 | ; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709) | |
| 2693 | EtwCheckCoverage@4 | |
| 2694 | LdrCallEnclave@12 | |
| 2695 | LdrControlFlowGuardEnforced@0 | |
| 2696 | LdrCreateEnclave@36 | |
| 2697 | LdrDeleteEnclave@4 | |
| 2698 | LdrInitializeEnclave@20 | |
| 2699 | LdrLoadEnclaveModule@12 | |
| 2700 | NtCallEnclave@16 | |
| 2701 | NtNotifyChangeDirectoryFileEx@40 | |
| 2702 | NtQueryDirectoryFileEx@40 | |
| 2703 | NtTerminateEnclave@8 | |
| 2704 | RtlCapabilityCheckForSingleSessionSku@12 | |
| 2705 | RtlCheckSystemBootStatusIntegrity@4 | |
| 2706 | RtlDosLongPathNameToNtPathName_U_WithStatus@16 | |
| 2707 | RtlDosLongPathNameToRelativeNtPathName_U_WithStatus@16 | |
| 2708 | RtlExtendCorrelationVector@4 | |
| 2709 | RtlGetSystemBootStatus@16 | |
| 2710 | RtlGetSystemBootStatusEx@12 | |
| 2711 | RtlIncrementCorrelationVector@4 | |
| 2712 | RtlInitializeCorrelationVector@12 | |
| 2713 | RtlIsCloudFilesPlaceholder@8 | |
| 2714 | RtlIsCurrentProcess@4 | |
| 2715 | RtlIsCurrentThread@4 | |
| 2716 | RtlIsPartialPlaceholder@8 | |
| 2717 | RtlIsPartialPlaceholderFileHandle@8 | |
| 2718 | RtlIsPartialPlaceholderFileInfo@12 | |
| 2719 | RtlIsStateSeparationEnabled@0 | |
| 2720 | RtlQueryImageMitigationPolicy@20 | |
| 2721 | RtlQueryThreadPlaceholderCompatibilityMode@0 | |
| 2722 | RtlRestoreSystemBootStatusDefaults@0 | |
| 2723 | RtlSetImageMitigationPolicy@20 | |
| 2724 | RtlSetProxiedProcessId@4 | |
| 2725 | RtlSetSystemBootStatus@16 | |
| 2726 | RtlSetSystemBootStatusEx@12 | |
| 2727 | RtlSetThreadPlaceholderCompatibilityMode@4 | |
| 2728 | RtlValidateCorrelationVector@4 | |
| 2729 | RtlWow64GetEquivalentMachineCHPE@4 | |
| 2730 | RtlWow64GetSharedInfoProcess@12 | |
| 2731 | ; RtlWow64PopAllCrossProcessWork@4 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2732 | ; RtlWow64PopCrossProcessWork@4 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2733 | ; RtlWow64PushCrossProcessWork@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2734 | ZwCallEnclave@16 | |
| 2735 | ZwNotifyChangeDirectoryFileEx@40 | |
| 2736 | ZwQueryDirectoryFileEx@40 | |
| 2737 | ZwTerminateEnclave@8 | |
| 2738 | ||
| 2739 | ; This is list of symbols added in Windows 10 April 2018 Update (Redstone 4 / 1803) | |
| 2740 | NtAllocateVirtualMemoryEx@28 | |
| 2741 | NtMapViewOfSectionEx@36 | |
| 2742 | RtlGetPersistedStateLocation@28 | |
| 2743 | RtlIsNameInUnUpcasedExpression@16 | |
| 2744 | RtlQueryProcessPlaceholderCompatibilityMode@0 | |
| 2745 | RtlQueryRegistryValueWithFallback@28 | |
| 2746 | RtlQueryTokenHostIdAsUlong64@8 | |
| 2747 | RtlRaiseCustomSystemEventTrigger@4 | |
| 2748 | RtlSetProcessPlaceholderCompatibilityMode@4 | |
| 2749 | ZwAllocateVirtualMemoryEx@28 | |
| 2750 | ZwMapViewOfSectionEx@36 | |
| 2751 | ||
| 2752 | ; This is list of symbols added in Windows 10 October 2018 Update (Redstone 5 / 1809) | |
| 2753 | ApiSetQueryApiSetPresenceEx@12 | |
| 2754 | LdrIsModuleSxsRedirected@4 | |
| 2755 | NtCreateSectionEx@36 | |
| 2756 | NtManageHotPatch@16 | |
| 2757 | RtlCreateProcessParametersWithTemplate@12 | |
| 2758 | RtlGetExtendedContextLength2@16 | |
| 2759 | RtlGetMultiTimePrecise@12 | |
| 2760 | RtlInitializeExtendedContext2@20 | |
| 2761 | ; RtlUserFiberStart@0 | |
| 2762 | RtlpTimeFieldsToTime@12 | |
| 2763 | RtlpTimeToTimeFields@12 | |
| 2764 | ZwCreateSectionEx@36 | |
| 2765 | ZwManageHotPatch@16 | |
| 2766 | ||
| 2767 | ; This is list of symbols added in Windows 10 May 2019 Update (19H1 / 1903) | |
| 2768 | NtCreateCrossVmEvent@24 | |
| 2769 | RtlConstructCrossVmEventPath@12 | |
| 2770 | RtlDoesNameContainWildCards@4 | |
| 2771 | RtlFlsGetValue@8 | |
| 2772 | RtlFlsSetValue@8 | |
| 2773 | RtlUdiv128@28 | |
| 2774 | TpSetPoolThreadCpuSets@12 | |
| 2775 | ZwCreateCrossVmEvent@24 | |
| 2776 | ||
| 2777 | ; In Windows 10 November 2019 Update (19H2 /1909) was not added any new symbol | |
| 2778 | ||
| 2779 | ; This is list of symbols added in Windows 10 May 2020 Update (20H1 / 2004) | |
| 2780 | NtAcquireCrossVmMutant@8 | |
| 2781 | NtAllocateUserPhysicalPagesEx@20 | |
| 2782 | NtContinueEx@8 | |
| 2783 | NtCreateCrossVmMutant@24 | |
| 2784 | NtDirectGraphicsCall@20 | |
| 2785 | NtLoadKey3@32 | |
| 2786 | NtPssCaptureVaSpaceBulk@20 | |
| 2787 | RtlConstructCrossVmMutexPath@12 | |
| 2788 | ; RtlDisownModuleHeapAllocation@8 | |
| 2789 | RtlFreeUTF8String@4 | |
| 2790 | RtlGetReturnAddressHijackTarget@0 | |
| 2791 | RtlInitUTF8String@8 | |
| 2792 | RtlInitUTF8StringEx@8 | |
| 2793 | RtlIsZeroMemory@8 | |
| 2794 | RtlNormalizeSecurityDescriptor@20 | |
| 2795 | RtlNotifyFeatureUsage@4 | |
| 2796 | RtlQueryAllFeatureConfigurations@16 | |
| 2797 | RtlQueryFeatureConfiguration@16 | |
| 2798 | RtlQueryFeatureConfigurationChangeStamp@0 | |
| 2799 | RtlQueryFeatureUsageNotificationSubscriptions@8 | |
| 2800 | RtlRegisterFeatureConfigurationChangeNotification@16 | |
| 2801 | RtlRestoreThreadPreferredUILanguages@4 | |
| 2802 | RtlSetFeatureConfigurations@16 | |
| 2803 | RtlSetThreadPreferredUILanguages2@16 | |
| 2804 | RtlSubscribeForFeatureUsageNotification@8 | |
| 2805 | RtlUTF8StringToUnicodeString@12 | |
| 2806 | RtlUnicodeStringToUTF8String@12 | |
| 2807 | RtlUnregisterFeatureConfigurationChangeNotification@4 | |
| 2808 | RtlUnsubscribeFromFeatureUsageNotifications@8 | |
| 2809 | ZwAcquireCrossVmMutant@8 | |
| 2810 | ZwAllocateUserPhysicalPagesEx@20 | |
| 2811 | ZwContinueEx@8 | |
| 2812 | ZwCreateCrossVmMutant@24 | |
| 2813 | ZwDirectGraphicsCall@20 | |
| 2814 | ZwLoadKey3@32 | |
| 2815 | ZwPssCaptureVaSpaceBulk@20 | |
| 2816 | ||
| 2817 | ; In Windows 10 October 2020 Update (20H2) was not added any new symbol | |
| 2818 | ||
| 2819 | ; In Windows 10 May 2021 Update (21H1) was not added any new symbol | |
| 2820 | ||
| 2821 | ; This is list of symbols added in Windows 10 November 2021 Update (21H2) | |
| 2822 | RtlGetSystemTimeAndBias@12 | |
| 2823 | ||
| 2824 | ; In Windows 10 2022 Update (22H2) was not added any new symbol | |
| 2825 | ||
| 2826 | ; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version) | |
| 2827 | ; LdrHotPatchNotify@4 | |
| 2828 | ; MicrosoftTelemetryAssertTriggeredUM@4 | |
| 2829 | NtChangeProcessState@24 | |
| 2830 | NtChangeThreadState@24 | |
| 2831 | NtCreateIoRing@20 | |
| 2832 | NtCreateProcessStateChange@20 | |
| 2833 | NtCreateThreadStateChange@20 | |
| 2834 | NtQueryIoRingCapabilities@8 | |
| 2835 | NtQueueApcThreadEx2@28 | |
| 2836 | NtReadVirtualMemoryEx@24 | |
| 2837 | NtSetInformationIoRing@16 | |
| 2838 | NtSubmitIoRing@16 | |
| 2839 | RtlCompareExchangePointerMapping@16 | |
| 2840 | RtlCompareExchangePropertyStore@16 | |
| 2841 | ; RtlConvertHostPerfCounterToPerfCounter@20 | |
| 2842 | RtlDelayExecution@8 | |
| 2843 | RtlGetImageFileMachines@8 | |
| 2844 | RtlGetSystemGlobalData@12 | |
| 2845 | RtlIsApiSetImplemented@4 | |
| 2846 | RtlIsEnclaveFeaturePresent@4 | |
| 2847 | RtlQueryPointerMapping@8 | |
| 2848 | RtlQueryPropertyStore@8 | |
| 2849 | RtlRemovePointerMapping@8 | |
| 2850 | RtlRemovePropertyStore@8 | |
| 2851 | RtlRestoreContext ; cdecl | |
| 2852 | ZwChangeProcessState@24 | |
| 2853 | ZwChangeThreadState@24 | |
| 2854 | ZwCreateIoRing@20 | |
| 2855 | ZwCreateProcessStateChange@20 | |
| 2856 | ZwCreateThreadStateChange@20 | |
| 2857 | ZwQueryIoRingCapabilities@8 | |
| 2858 | ZwQueueApcThreadEx2@28 | |
| 2859 | ZwReadVirtualMemoryEx@24 | |
| 2860 | ZwSetInformationIoRing@16 | |
| 2861 | ZwSubmitIoRing@16 | |
| 2862 | ||
| 2863 | ; This is list of symbols added in Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) | |
| 2864 | ; NtCopyFileChunk@40 | |
| 2865 | ; NtCreateCpuPartition@20 ; Windows 10 has ABI "NtCreateCpuPartition@12", Windows 11 2024 Update (Hudson Valley / 24H2) and new has ABI "NtCreateCpuPartition@20" | |
| 2866 | ; NtOpenCpuPartition@12 | |
| 2867 | ; NtQueryInformationCpuPartition@20 | |
| 2868 | ; NtSetInformationCpuPartition@28 | |
| 2869 | ; RtlOverwriteFeatureConfigurationBuffer@16 | |
| 2870 | ; TpWorkOnBehalfClearTicket@4 | |
| 2871 | ; TpWorkOnBehalfSetTicket@8 | |
| 2872 | ; ZwCopyFileChunk@40 | |
| 2873 | ; ZwCreateCpuPartition@20 ; Windows 10 has ABI "ZwCreateCpuPartition@12", Windows 11 2024 Update (Hudson Valley / 24H2) and new has ABI "ZwCreateCpuPartition@20" | |
| 2874 | ; ZwOpenCpuPartition@12 | |
| 2875 | ; ZwQueryInformationCpuPartition@20 | |
| 2876 | ; ZwSetInformationCpuPartition@28 | |
| 2877 | ||
| 2878 | ; This is list of symbols added in Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version) | |
| 2879 | ; RtlIsFeatureEnabledForEnterprise@4 | |
| 2880 | ||
| 2881 | ; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) | |
| 2882 | ; NtAlertMultipleThreadByThreadId@16 | |
| 2883 | ; NtAlertThreadByThreadIdEx@8 | |
| 2884 | ; NtSetEventEx@12 | |
| 2885 | ; NtWow64GetCurrentProcessorNumber@0 | |
| 2886 | ; RtlFlsAllocEx@12 | |
| 2887 | ; RtlFlsGetValue2@4 | |
| 2888 | ; RtlGetAcesBufferSize@8 | |
| 2889 | ; RtlGetCurrentThreadPrimaryGroup@0 | |
| 2890 | ; RtlGetFeatureToggleConfiguration@12 | |
| 2891 | ; RtlGetFeatureTogglesChangeToken@0 | |
| 2892 | ; RtlLogUnexpectedCodepath@4 | |
| 2893 | ; RtlNotifyFeatureToggleUsage@12 | |
| 2894 | ; RtlQueryAllInternalFeatureConfigurations@16 | |
| 2895 | ; RtlRcuAllocate@4 | |
| 2896 | ; RtlRcuFree@4 | |
| 2897 | ; RtlRcuReadLock@0 | |
| 2898 | ; RtlRcuReadUnlock@0 | |
| 2899 | ; RtlRcuSynchronize@4 | |
| 2900 | ; RtlTlsAlloc@4 | |
| 2901 | ; RtlTlsFree@4 | |
| 2902 | ; RtlTlsSetValue@8 | |
| 2903 | ; RtlValidateUserCallTarget@8 | |
| 2904 | ; RtlXRestore@12 | |
| 2905 | ; RtlXSave@12 | |
| 2906 | ; ZwAlertMultipleThreadByThreadId@16 | |
| 2907 | ; ZwAlertThreadByThreadIdEx@8 | |
| 2908 | ; ZwSetEventEx@12 | |
| 2909 | ; ZwWow64GetCurrentProcessorNumber@0 | |
| 2910 | ||
| 2911 | ; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version) | |
| 2912 | ; ApiSetGetImplementationHost@12 | |
| 2913 | ; ApiSetQuerySchema@8 | |
| 2914 | ; RtlQueryAllInternalRuntimeFeatureConfigurations@20 | |
| 2915 | ; RtlQueryInternalFeatureConfiguration@16 |
lib/libc/mingw/lib32/odbc32.def+4| ... | ... | @@ -6,6 +6,8 @@ CursorLibLockDbc@8 |
| 6 | 6 | CursorLibLockDesc@8 |
| 7 | 7 | CursorLibLockStmt@8 |
| 8 | 8 | CursorLibTransact@12 |
| 9 | DllBidEntryPoint@36 | |
| 10 | GetODBCSharedData@0 | |
| 9 | 11 | LockHandle@12 |
| 10 | 12 | MpHeapAlloc |
| 11 | 13 | MpHeapCompact |
| ... | ... | @@ -39,6 +41,7 @@ SQLBrowseConnectA@24 |
| 39 | 41 | SQLBrowseConnectW@24 |
| 40 | 42 | SQLBulkOperations@8 |
| 41 | 43 | SQLCancel@4 |
| 44 | SQLCancelHandle@8 | |
| 42 | 45 | SQLCloseCursor@4 |
| 43 | 46 | SQLColAttribute@28 |
| 44 | 47 | SQLColAttributeA@28 |
| ... | ... | @@ -52,6 +55,7 @@ SQLColumnPrivilegesW@36 |
| 52 | 55 | SQLColumns@36 |
| 53 | 56 | SQLColumnsA@36 |
| 54 | 57 | SQLColumnsW@36 |
| 58 | SQLCompleteAsync@12 | |
| 55 | 59 | SQLConnect@28 |
| 56 | 60 | SQLConnectA@28 |
| 57 | 61 | SQLConnectW@28 |
lib/libc/mingw/lib32/oleacc.def+10-5| ... | ... | @@ -1,21 +1,26 @@ |
| 1 | 1 | ; |
| 2 | 2 | ; Definition file of OLEACC.dll |
| 3 | ; Automatic generated by gendef | |
| 3 | ; Automatic generated by gendef 1.1 | |
| 4 | 4 | ; written by Kai Tietz 2008 |
| 5 | ; The def file has to be processed by --kill-at (-k) option of dlltool or ld | |
| 5 | 6 | ; |
| 6 | 7 | LIBRARY "OLEACC.dll" |
| 7 | 8 | EXPORTS |
| 8 | DllRegisterServer@0 | |
| 9 | DllUnregisterServer@0 | |
| 9 | ;DllRegisterServer@0 | |
| 10 | ;DllUnregisterServer@0 | |
| 11 | AccGetRunningUtilityState@12 | |
| 12 | AccNotifyTouchInteraction@16 | |
| 13 | AccSetRunningUtilityState@12 | |
| 10 | 14 | AccessibleChildren@20 |
| 11 | 15 | AccessibleObjectFromEvent@20 |
| 12 | 16 | AccessibleObjectFromPoint@16 |
| 13 | 17 | AccessibleObjectFromWindow@16 |
| 18 | AccessibleObjectFromWindowTimeout@24 | |
| 14 | 19 | CreateStdAccessibleObject@16 |
| 15 | 20 | CreateStdAccessibleProxyA@20 |
| 16 | 21 | CreateStdAccessibleProxyW@20 |
| 17 | DllCanUnloadNow@0 | |
| 18 | DllGetClassObject@12 | |
| 22 | ;DllCanUnloadNow@0 | |
| 23 | ;DllGetClassObject@12 | |
| 19 | 24 | GetOleaccVersionInfo@8 |
| 20 | 25 | GetProcessHandleFromHwnd@4 |
| 21 | 26 | GetRoleTextA@12 |
lib/libc/mingw/libsrc/ativscp-uuid.c deleted-16| ... | ... | @@ -1,16 +0,0 @@ |
| 1 | /* ativscp-uuid.c */ | |
| 2 | /* Generate GUIDs for ActiveScript interfaces */ | |
| 3 | ||
| 4 | /* All IIDs defined in this file were extracted from | |
| 5 | * HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\ */ | |
| 6 | ||
| 7 | /* All CLSIDs defined in this file were extracted from | |
| 8 | * HKEY_CLASSES_ROOT\CLSID\ */ | |
| 9 | ||
| 10 | #define INITGUID | |
| 11 | #include <basetyps.h> | |
| 12 | DEFINE_GUID(IID_IActiveScript,0xbb1a2ae1,0xa4f9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64); | |
| 13 | DEFINE_GUID(IID_IActiveScriptError,0xeae1ba61,0xa4ed,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64); | |
| 14 | DEFINE_GUID(IID_IActiveScriptParse,0xbb1a2ae2,0xa4f9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64); | |
| 15 | DEFINE_GUID(IID_IActiveScriptSite,0xdb01a1e3,0xa42b,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64); | |
| 16 | DEFINE_GUID(IID_IActiveScriptSiteWindow,0xd10f6761,0x83e9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64); |
lib/libc/mingw/libsrc/uuid.c+1| ... | ... | @@ -14,6 +14,7 @@ |
| 14 | 14 | #define INITGUID |
| 15 | 15 | #include <basetyps.h> |
| 16 | 16 | |
| 17 | #include <activscp.h> | |
| 17 | 18 | #include <credentialprovider.h> |
| 18 | 19 | #include <httprequest.h> |
| 19 | 20 | #include <functiondiscoverykeys.h> |
lib/libc/mingw/math/acospi.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl acospi(double x) | |
| 12 | { | |
| 13 | return acos(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/acospif.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl acospif(float x) | |
| 12 | { | |
| 13 | return acosf(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/acospil.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl acospil(long double x) | |
| 12 | { | |
| 13 | return acosl(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/asinpi.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl asinpi(double x) | |
| 12 | { | |
| 13 | return asin(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/asinpif.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl asinpif(float x) | |
| 12 | { | |
| 13 | return asinf(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/asinpil.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl asinpil(long double x) | |
| 12 | { | |
| 13 | return asinl(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/atan2pi.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl atan2pi(double y, double x) | |
| 12 | { | |
| 13 | return atan2(y, x) / __pi_type(y); | |
| 14 | } |
lib/libc/mingw/math/atan2pif.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl atan2pif(float y, float x) | |
| 12 | { | |
| 13 | return atan2f(y, x) / __pi_type(y); | |
| 14 | } |
lib/libc/mingw/math/atan2pil.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl atan2pil(long double y, long double x) | |
| 12 | { | |
| 13 | return atan2l(y, x) / __pi_type(y); | |
| 14 | } |
lib/libc/mingw/math/atanpi.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl atanpi(double x) | |
| 12 | { | |
| 13 | return atan(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/atanpif.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl atanpif(float x) | |
| 12 | { | |
| 13 | return atanf(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/atanpil.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl atanpil(long double x) | |
| 12 | { | |
| 13 | return atanl(x) / __pi_type(x); | |
| 14 | } |
lib/libc/mingw/math/cospi.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl cospi(double x) | |
| 12 | { | |
| 13 | x = fmod(x, 2.0); | |
| 14 | return cos(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/cospif.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl cospif(float x) | |
| 12 | { | |
| 13 | x = fmodf(x, 2.0F); | |
| 14 | return cosf(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/cospil.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl cospil(long double x) | |
| 12 | { | |
| 13 | x = fmodl(x, 2.0L); | |
| 14 | return cosl(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/pi_const.h created+17| ... | ... | @@ -0,0 +1,17 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define __pi_type(x) \ | |
| 8 | __builtin_choose_expr ( \ | |
| 9 | __builtin_types_compatible_p (__typeof__ (x), float), \ | |
| 10 | 3.14159265F, \ | |
| 11 | __builtin_choose_expr ( \ | |
| 12 | __builtin_types_compatible_p (__typeof__ (x), double), \ | |
| 13 | 3.14159265358979323846, \ | |
| 14 | __builtin_choose_expr ( \ | |
| 15 | __builtin_types_compatible_p (__typeof__ (x), long double), \ | |
| 16 | 3.1415926535897932384626433832795029L, \ | |
| 17 | __builtin_trap()))) |
lib/libc/mingw/math/sinpi.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl sinpi(double x) | |
| 12 | { | |
| 13 | x = remainder(x, 2.0); | |
| 14 | return sin(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/sinpif.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl sinpif(float x) | |
| 12 | { | |
| 13 | x = remainderf(x, 2.0F); | |
| 14 | return sinf(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/sinpil.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl sinpil(long double x) | |
| 12 | { | |
| 13 | x = remainderl(x, 2.0L); | |
| 14 | return sinl(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/tanpi.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | double __cdecl tanpi(double x) | |
| 12 | { | |
| 13 | x = remainder(x, 2.0); | |
| 14 | return tan(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/tanpif.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | float __cdecl tanpif(float x) | |
| 12 | { | |
| 13 | x = remainderf(x, 2.0F); | |
| 14 | return tanf(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/math/tanpil.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <math.h> | |
| 8 | ||
| 9 | #include "pi_const.h" | |
| 10 | ||
| 11 | long double __cdecl tanpil(long double x) | |
| 12 | { | |
| 13 | x = remainderl(x, 2.0L); | |
| 14 | return tanl(x * __pi_type(x)); | |
| 15 | } |
lib/libc/mingw/misc/__mingw_filename_cp.c created+33| ... | ... | @@ -0,0 +1,33 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #ifndef WIN32_LEAN_AND_MEAN | |
| 8 | #define WIN32_LEAN_AND_MEAN | |
| 9 | #endif | |
| 10 | #include <windows.h> | |
| 11 | #include <locale.h> | |
| 12 | ||
| 13 | /* By default the ANSI (ACP) is used, fallack to default ANSI when function AreFileApisANSI() is not available */ | |
| 14 | static BOOL WINAPI fallbackAreFileApisANSI(VOID) { return TRUE; } | |
| 15 | ||
| 16 | unsigned int __cdecl __mingw_filename_cp(void) | |
| 17 | { | |
| 18 | if (___lc_codepage_func() == CP_UTF8) | |
| 19 | return CP_UTF8; | |
| 20 | ||
| 21 | /* Function AreFileApisANSI() is not available in older Windows versions, so resolve it at runtime */ | |
| 22 | static __typeof__(AreFileApisANSI) *myAreFileApisANSI = NULL; | |
| 23 | if (!myAreFileApisANSI) { | |
| 24 | FARPROC farproc = NULL; | |
| 25 | HMODULE kernel32 = GetModuleHandleA("kernel32.dll"); | |
| 26 | if (kernel32) | |
| 27 | farproc = GetProcAddress(kernel32, "AreFileApisANSI"); | |
| 28 | if (!farproc) | |
| 29 | farproc = (FARPROC)(PVOID)fallbackAreFileApisANSI; | |
| 30 | (void)InterlockedExchangePointer((PVOID*)&myAreFileApisANSI, (PVOID)farproc); | |
| 31 | } | |
| 32 | return myAreFileApisANSI() ? CP_ACP : CP_OEMCP; | |
| 33 | } |
lib/libc/mingw/misc/__mingw_isleadbyte_cp.c created+42| ... | ... | @@ -0,0 +1,42 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #ifndef WIN32_LEAN_AND_MEAN | |
| 8 | #define WIN32_LEAN_AND_MEAN | |
| 9 | #endif | |
| 10 | #include <windows.h> | |
| 11 | #include <locale.h> | |
| 12 | ||
| 13 | static BOOL WINAPI fallback_IsDBCSLeadByteEx(UINT cp, BYTE c) | |
| 14 | { | |
| 15 | int i; | |
| 16 | CPINFO cp_info; | |
| 17 | if (GetCPInfo(cp, &cp_info) && cp_info.MaxCharSize == 2) { | |
| 18 | for (i = 0; i < MAX_LEADBYTES && cp_info.LeadByte[i]; i += 2) { | |
| 19 | if (c >= cp_info.LeadByte[i] && c <= cp_info.LeadByte[i+1]) | |
| 20 | return TRUE; | |
| 21 | } | |
| 22 | } | |
| 23 | return FALSE; | |
| 24 | } | |
| 25 | ||
| 26 | _Static_assert(__builtin_types_compatible_p(__typeof__(fallback_IsDBCSLeadByteEx), __typeof__(IsDBCSLeadByteEx)), | |
| 27 | "Functions fallback_IsDBCSLeadByteEx() and IsDBCSLeadByteEx() are not compatible"); | |
| 28 | ||
| 29 | int __cdecl __mingw_isleadbyte_cp(int c, unsigned int cp) | |
| 30 | { | |
| 31 | static __typeof__(IsDBCSLeadByteEx) *call_IsDBCSLeadByteEx = NULL; | |
| 32 | if (!call_IsDBCSLeadByteEx) { | |
| 33 | FARPROC farproc = NULL; | |
| 34 | HMODULE kernel32 = GetModuleHandleA("kernel32.dll"); | |
| 35 | if (kernel32) | |
| 36 | farproc = GetProcAddress(kernel32, "IsDBCSLeadByteEx"); | |
| 37 | if (!farproc) | |
| 38 | farproc = (FARPROC)(PVOID)fallback_IsDBCSLeadByteEx; | |
| 39 | (void)InterlockedExchangePointer((PVOID*)&call_IsDBCSLeadByteEx, (PVOID)farproc); | |
| 40 | } | |
| 41 | return call_IsDBCSLeadByteEx(cp, c); | |
| 42 | } |
lib/libc/mingw/misc/_assert.c created+46| ... | ... | @@ -0,0 +1,46 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <assert.h> | |
| 8 | #include <fcntl.h> | |
| 9 | #include <io.h> | |
| 10 | #include <stdio.h> | |
| 11 | #include <stdlib.h> | |
| 12 | ||
| 13 | /* This is import symbol name for "_assert" from CRT DLL library */ | |
| 14 | extern void (__cdecl *__MINGW_IMP_SYMBOL(__msvcrt_assert))(const char *message, const char *file, unsigned line); | |
| 15 | ||
| 16 | /* Turn off _O_WTEXT, _O_U16TEXT or _O_U8TEXT mode on stderr stream | |
| 17 | * by changing mode to _O_TEXT, because fprintf (called by __msvcrt_assert) | |
| 18 | * does not work (and does nothing) on FILE* stream in some of those modes. | |
| 19 | * Only fwprintf works with those modes, but _assert uses fprintf. | |
| 20 | * Before changing the FILE* stream mode, it is required to flush buffers. */ | |
| 21 | void __cdecl _assert(const char *message, const char *file, unsigned line) | |
| 22 | { | |
| 23 | /* stderr expands to function call */ | |
| 24 | FILE *stream = stderr; | |
| 25 | /* Cache fd used by `stderr` */ | |
| 26 | int fd = _fileno (stream); | |
| 27 | /* We need to restore previous mode in case `_assert` returns; it can happen | |
| 28 | * if program has called _set_error_mode(_OUT_TO_MSGBOX) and user pressed | |
| 29 | * "Ignore" button in popped up message box. */ | |
| 30 | int oldmode; | |
| 31 | ||
| 32 | /* Change `stderr` mode to `_O_TEXT` */ | |
| 33 | fflush(stream); | |
| 34 | oldmode = _setmode(fd, _O_TEXT); | |
| 35 | ||
| 36 | /* Call CRT `_assert` */ | |
| 37 | __MINGW_IMP_SYMBOL(__msvcrt_assert)(message, file, line); | |
| 38 | ||
| 39 | /* Restore `stderr` mode to `oldmode` */ | |
| 40 | fflush (stream); | |
| 41 | if (_setmode (fd, oldmode) != _O_TEXT) { | |
| 42 | abort (); | |
| 43 | } | |
| 44 | } | |
| 45 | ||
| 46 | void (__cdecl *__MINGW_IMP_SYMBOL(_assert))(const char *message, const char *file, unsigned line) = _assert; |
lib/libc/mingw/misc/btowc.c created+32| ... | ... | @@ -0,0 +1,32 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define __LARGE_MBSTATE_T | |
| 8 | ||
| 9 | #include <limits.h> /* MB_LEN_MAX */ | |
| 10 | #include <wchar.h> | |
| 11 | #include <stdio.h> /* EOF */ | |
| 12 | #include <stdlib.h> /* MB_CUR_MAX */ | |
| 13 | ||
| 14 | wint_t btowc (int c) | |
| 15 | { | |
| 16 | if (c == EOF) | |
| 17 | return (WEOF); | |
| 18 | ||
| 19 | /* Use dummy string so that mbrtowc will never return (size_t)-2 */ | |
| 20 | char str[MB_LEN_MAX] = {(unsigned char) c, 0, 0, 0, 0}; | |
| 21 | ||
| 22 | wint_t wc = WEOF; | |
| 23 | mbstate_t state = {0}; | |
| 24 | ||
| 25 | if (mbrtowc (&wc, (char *) str, MB_CUR_MAX, &state) == (size_t) -1) { | |
| 26 | return WEOF; | |
| 27 | } | |
| 28 | ||
| 29 | return wc; | |
| 30 | } | |
| 31 | ||
| 32 | wint_t (__cdecl *__MINGW_IMP_SYMBOL (btowc)) (int) = btowc; |
lib/libc/mingw/misc/dirent.c+14-2| ... | ... | @@ -152,7 +152,13 @@ _treaddir (_TDIR * dirp) |
| 152 | 152 | { |
| 153 | 153 | /* We haven't started the search yet. */ |
| 154 | 154 | /* Start the search */ |
| 155 | dirp->dd_handle = _tfindfirst (dirp->dd_name, &(dirp->dd_dta)); | |
| 155 | dirp->dd_handle = | |
| 156 | #ifdef _WIN64 | |
| 157 | 	_tfindfirst64i32 | |
| 158 | #else | |
| 159 | 	_tfindfirst32 | |
| 160 | #endif | |
| 161 | 	(dirp->dd_name, &(dirp->dd_dta)); | |
| 156 | 162 | |
| 157 | 163 | if (dirp->dd_handle == -1) |
| 158 | 164 | 	{ |
| ... | ... | @@ -168,7 +174,13 @@ _treaddir (_TDIR * dirp) |
| 168 | 174 | else |
| 169 | 175 | { |
| 170 | 176 | /* Get the next search entry. */ |
| 171 | if (_tfindnext (dirp->dd_handle, &(dirp->dd_dta))) | |
| 177 | if ( | |
| 178 | #ifdef _WIN64 | |
| 179 | 	 _tfindnext64i32 | |
| 180 | #else | |
| 181 | 	 _tfindnext32 | |
| 182 | #endif | |
| 183 | 	 (dirp->dd_handle, &(dirp->dd_dta))) | |
| 172 | 184 | 	{ |
| 173 | 185 | 	 /* We are off the end or otherwise error. |
| 174 | 186 | 	 _findnext sets errno to ENOENT if no more file |
lib/libc/mingw/misc/dirname.c+4-3| ... | ... | @@ -7,6 +7,7 @@ |
| 7 | 7 | #define WIN32_LEAN_AND_MEAN |
| 8 | 8 | #endif |
| 9 | 9 | #include <stdlib.h> |
| 10 | #include <locale.h> | |
| 10 | 11 | #include <libgen.h> |
| 11 | 12 | #include <windows.h> |
| 12 | 13 | |
| ... | ... | @@ -91,7 +92,7 @@ do_get_path_info(struct path_info* info, char* path) |
| 91 | 92 | int dbcs_tb, prev_dir_sep, dir_sep; |
| 92 | 93 | |
| 93 | 94 | /* Get the code page for paths in the same way as `fopen()`. */ |
| 94 | cp = AreFileApisANSI() ? CP_ACP : CP_OEMCP; | |
| 95 | cp = __mingw_filename_cp(); | |
| 95 | 96 | |
| 96 | 97 | /* Set the structure to 'no data'. */ |
| 97 | 98 | info->prefix_end = NULL; |
| ... | ... | @@ -112,7 +113,7 @@ do_get_path_info(struct path_info* info, char* path) |
| 112 | 113 | |
| 113 | 114 | if(dbcs_tb) |
| 114 | 115 | dbcs_tb = 0; |
| 115 | else if(IsDBCSLeadByteEx(cp, *pos)) | |
| 116 | else if(__mingw_isleadbyte_cp(*pos, cp)) | |
| 116 | 117 | dbcs_tb = 1; |
| 117 | 118 | else |
| 118 | 119 | dir_sep = IS_DIR_SEP(*pos); |
| ... | ... | @@ -156,7 +157,7 @@ do_get_path_info(struct path_info* info, char* path) |
| 156 | 157 | |
| 157 | 158 | if(dbcs_tb) |
| 158 | 159 | dbcs_tb = 0; |
| 159 | else if(IsDBCSLeadByteEx(cp, *pos)) | |
| 160 | else if(__mingw_isleadbyte_cp(*pos, cp)) | |
| 160 | 161 | dbcs_tb = 1; |
| 161 | 162 | else |
| 162 | 163 | dir_sep = IS_DIR_SEP(*pos); |
lib/libc/mingw/misc/dllmain.c+1-1| ... | ... | @@ -1,4 +1,4 @@ |
| 1 | #include <oscalls.h> | |
| 1 | #include <windows.h> | |
| 2 | 2 | #define _DECL_DLLMAIN |
| 3 | 3 | #include <process.h> |
| 4 | 4 |
lib/libc/mingw/misc/fedisableexcept.c created+11| ... | ... | @@ -0,0 +1,11 @@ |
| 1 | #define _GNU_SOURCE | |
| 2 | #include <fenv.h> | |
| 3 | #include <internal.h> | |
| 4 | ||
| 5 | int __cdecl fedisableexcept(int excepts) | |
| 6 | { | |
| 7 | if (excepts & ~FE_ALL_EXCEPT) return -1; | |
| 8 | int old_excepts = fegetexcept(); | |
| 9 | __mingw_controlfp(excepts, excepts); | |
| 10 | return old_excepts; | |
| 11 | } |
lib/libc/mingw/misc/feenableexcept.c created+11| ... | ... | @@ -0,0 +1,11 @@ |
| 1 | #define _GNU_SOURCE | |
| 2 | #include <fenv.h> | |
| 3 | #include <internal.h> | |
| 4 | ||
| 5 | int __cdecl feenableexcept(int excepts) | |
| 6 | { | |
| 7 | if (excepts & ~FE_ALL_EXCEPT) return -1; | |
| 8 | int old_excepts = fegetexcept(); | |
| 9 | __mingw_controlfp(0, excepts); | |
| 10 | return old_excepts; | |
| 11 | } |
lib/libc/mingw/misc/fegetenv.c+3-2| ... | ... | @@ -13,11 +13,12 @@ |
| 13 | 13 | int fegetenv(fenv_t *env) |
| 14 | 14 | { |
| 15 | 15 | #if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__)) |
| 16 | unsigned int x87, sse; | |
| 16 | unsigned int x87, sse = 0; | |
| 17 | 17 | __mingw_control87_2(0, 0, &x87, &sse); |
| 18 | 18 | env->_Fe_ctl = fenv_encode(x87, sse); |
| 19 | 19 | __mingw_setfp(NULL, 0, &x87, 0); |
| 20 | __mingw_setfp_sse(NULL, 0, &sse, 0); | |
| 20 | if (__mingw_has_sse()) | |
| 21 | __mingw_setfp_sse(NULL, 0, &sse, 0); | |
| 21 | 22 | env->_Fe_stat = fenv_encode(x87, sse); |
| 22 | 23 | #else |
| 23 | 24 | env->_Fe_ctl = fenv_encode(0, __mingw_controlfp(0, 0)); |
lib/libc/mingw/misc/fegetexcept.c created+8| ... | ... | @@ -0,0 +1,8 @@ |
| 1 | #define _GNU_SOURCE | |
| 2 | #include <fenv.h> | |
| 3 | #include <internal.h> | |
| 4 | ||
| 5 | int __cdecl fegetexcept(void) | |
| 6 | { | |
| 7 | return ~__mingw_controlfp(0, 0) & FE_ALL_EXCEPT; | |
| 8 | } |
lib/libc/mingw/misc/fegetexceptflag.c+3-2| ... | ... | @@ -15,9 +15,10 @@ |
| 15 | 15 | int fegetexceptflag(fexcept_t *status, int excepts) |
| 16 | 16 | { |
| 17 | 17 | #if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__)) |
| 18 | unsigned int x87, sse; | |
| 18 | unsigned int x87, sse = 0; | |
| 19 | 19 | __mingw_setfp(NULL, 0, &x87, 0); |
| 20 | __mingw_setfp_sse(NULL, 0, &sse, 0); | |
| 20 | if (__mingw_has_sse()) | |
| 21 | __mingw_setfp_sse(NULL, 0, &sse, 0); | |
| 21 | 22 | *status = fenv_encode(x87 & excepts, sse & excepts); |
| 22 | 23 | #else |
| 23 | 24 | *status = fenv_encode(0, __mingw_statusfp() & excepts); |
lib/libc/mingw/misc/ftime32.c created+38| ... | ... | @@ -0,0 +1,38 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <stdint.h> | |
| 8 | #include <errno.h> | |
| 9 | #include <sys/timeb.h> | |
| 10 | ||
| 11 | int __cdecl ftime32(struct __timeb32 *tb32); | |
| 12 | int __cdecl ftime32(struct __timeb32 *tb32) | |
| 13 | { | |
| 14 | /* | |
| 15 | * Both 32-bit and 64-bit MS _ftime functions have void return value and do not signal overflow. | |
| 16 | * So if 32-bit POSIX ftime function wants to detect overflow it has to call 64-bit _ftime function. | |
| 17 | * msvc defines ftime as alias to _ftime, which always fills all members even if they overflow. | |
| 18 | * So for compatibility with application code written for msvc ftime function, always fill | |
| 19 | * in our mingw-w64 POSIX ftime function all __timeb32 members, even if they are overflowed. | |
| 20 | * And if overflow happens, correctly sets errno to EOVERFLOW and returns negative value. | |
| 21 | */ | |
| 22 | struct __timeb64 tb64; | |
| 23 | _ftime64(&tb64); | |
| 24 | tb32->time = (__time32_t)tb64.time; /* truncate */ | |
| 25 | tb32->millitm = tb64.millitm; | |
| 26 | tb32->timezone = tb64.timezone; | |
| 27 | tb32->dstflag = tb64.dstflag; | |
| 28 | if (tb64.time < INT32_MIN || tb64.time > INT32_MAX) { | |
| 29 | errno = EOVERFLOW; | |
| 30 | return -1; | |
| 31 | } | |
| 32 | return 0; | |
| 33 | } | |
| 34 | ||
| 35 | /* On 32-bit systems is ftime ABI using 32-bit time_t */ | |
| 36 | #ifndef _WIN64 | |
| 37 | int __attribute__ ((alias("ftime32"))) __cdecl ftime(struct timeb *); | |
| 38 | #endif |
lib/libc/mingw/misc/ftime64.c created+19| ... | ... | @@ -0,0 +1,19 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <sys/timeb.h> | |
| 8 | ||
| 9 | int __cdecl ftime64(struct __timeb64 *tb64); | |
| 10 | int __cdecl ftime64(struct __timeb64 *tb64) | |
| 11 | { | |
| 12 | _ftime64(tb64); | |
| 13 | return 0; | |
| 14 | } | |
| 15 | ||
| 16 | /* On 64-bit systems is ftime ABI using 64-bit time_t */ | |
| 17 | #ifdef _WIN64 | |
| 18 | int __attribute__ ((alias("ftime64"))) __cdecl ftime(struct timeb *); | |
| 19 | #endif |
lib/libc/mingw/misc/ftruncate.c deleted-8| ... | ... | @@ -1,8 +0,0 @@ |
| 1 | ||
| 2 | int _chsize(int _FileHandle,long _Size); | |
| 3 | int ftruncate(int __fd,int __length); | |
| 4 | ||
| 5 | int ftruncate(int __fd,int __length) | |
| 6 | { | |
| 7 | return _chsize (__fd,__length); | |
| 8 | } |
lib/libc/mingw/misc/getopt.c+2-1| ... | ... | @@ -319,6 +319,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options, |
| 319 | 319 | { |
| 320 | 320 | 	char *oli;				/* option letter list index */ |
| 321 | 321 | 	int optchar, short_too; |
| 322 | 	size_t var_size; | |
| 322 | 323 | 	static int posixly_correct = -1; |
| 323 | 324 | |
| 324 | 325 | 	if (options == NULL) |
| ... | ... | @@ -339,7 +340,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options, |
| 339 | 340 | 	 * optreset != 0 for GNU compatibility. |
| 340 | 341 | 	 */ |
| 341 | 342 | 	if (posixly_correct == -1 || optreset != 0) |
| 342 | 		posixly_correct = (GetEnvironmentVariableW(L"POSIXLY_CORRECT", NULL, 0) != 0); | |
| 343 | 		posixly_correct = (getenv_s(&var_size, NULL, 0, "POSIXLY_CORRECT") == 0 && var_size > 0); | |
| 343 | 344 | 	if (*options == '-') |
| 344 | 345 | 		flags |= FLAG_ALLARGS; |
| 345 | 346 | 	else if (posixly_correct || *options == '+') |
lib/libc/mingw/misc/mb_wc_common.h deleted-9| ... | ... | @@ -1,9 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <_mingw.h> | |
| 8 | ||
| 9 | unsigned int __cdecl ___lc_codepage_func(void); |
lib/libc/mingw/misc/memalignment.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <stddef.h> | |
| 8 | ||
| 9 | size_t memalignment(const void *p); | |
| 10 | ||
| 11 | size_t memalignment(const void *p) | |
| 12 | { | |
| 13 | return (size_t)p & -(size_t)p; | |
| 14 | } |
lib/libc/mingw/misc/memset_explicit.c created+16| ... | ... | @@ -0,0 +1,16 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define __CRT__NO_INLINE | |
| 8 | #include <string.h> | |
| 9 | ||
| 10 | void * __cdecl | |
| 11 | memset_explicit (void *d, int c, size_t len) | |
| 12 | { | |
| 13 | memset(d, c, len); | |
| 14 | __asm__ __volatile__("" ::: "memory"); | |
| 15 | return d; | |
| 16 | } |
lib/libc/mingw/misc/mingw_controlfp.c+22-2| ... | ... | @@ -7,7 +7,14 @@ |
| 7 | 7 | #include "internal.h" |
| 8 | 8 | |
| 9 | 9 | #if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__)) |
| 10 | /* Internal MinGW version of _control87_2 */ | |
| 10 | /* Internal MinGW version of MS __control87_2 with following differences: | |
| 11 | * - Availability: | |
| 12 | * - MinGW provides both i386 and x64 implementation | |
| 13 | * - MS provides only i386 implementation and only for msvcr80+ | |
| 14 | * - Usage of x87 fwait instruction which triggers pending x87 exceptions: | |
| 15 | * - MinGW does not call it | |
| 16 | * - MS calls it before reading x87 cw | |
| 17 | */ | |
| 11 | 18 | int __mingw_control87_2( unsigned int newval, unsigned int mask, |
| 12 | 19 | unsigned int *x86_cw, unsigned int *sse2_cw ) |
| 13 | 20 | { |
| ... | ... | @@ -30,7 +37,20 @@ int __mingw_control87_2( unsigned int newval, unsigned int mask, |
| 30 | 37 | } |
| 31 | 38 | #endif |
| 32 | 39 | |
| 33 | /* Internal MinGW version of _control87 */ | |
| 40 | /* Internal MinGW version of MS _control87 with following differences: | |
| 41 | * - Usage of x87 fwait instruction which triggers pending x87 exceptions: | |
| 42 | * - MinGW does not call it | |
| 43 | * - MS x64 does not call it | |
| 44 | * - MS i386 calls it before reading x87 cw | |
| 45 | * - Source of the flags: | |
| 46 | * - MinGW i386 and x64 returns from both x87 and SSE2 | |
| 47 | * - MS i386 msvcrt from Vista+ and msvcr80+ returns from both x87 and SSE2 | |
| 48 | * - MS i386 msvcrt before Vista and pre-msvcr80 returns from x87 | |
| 49 | * - MS x64 returns from SSE2 | |
| 50 | * This makes behavior of MinGW version same for all builds, | |
| 51 | * always returns information from both x87 and SSE2 and | |
| 52 | * never triggers pending x87 exceptions. | |
| 53 | */ | |
| 34 | 54 | unsigned int __mingw_controlfp(unsigned int newval, unsigned int mask) |
| 35 | 55 | { |
| 36 | 56 | unsigned int flags = 0; |
lib/libc/mingw/misc/mingw_mbwc_convert.c+63-6| ... | ... | @@ -1,22 +1,51 @@ |
| 1 | 1 | #include <stdlib.h> |
| 2 | 2 | #include <stdio.h> |
| 3 | 3 | #include <wchar.h> |
| 4 | #include <errno.h> | |
| 4 | 5 | #include <windows.h> |
| 5 | 6 | #include <winnls.h> |
| 6 | 7 | |
| 7 | 8 | int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size_t *buflen) |
| 8 | 9 | { |
| 9 | size_t len; | |
| 10 | int len; | |
| 10 | 11 | char *buf; |
| 11 | 12 | int ret = 0; |
| 12 | 13 | |
| 13 | 14 | len = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, NULL, 0, NULL, NULL); /* Get utf-8 string length */ |
| 15 | if (len <= 0) { | |
| 16 | switch (GetLastError()) { | |
| 17 | case ERROR_INVALID_PARAMETER: /* CP_UTF8 is not supported */ | |
| 18 | case ERROR_INVALID_FLAGS: /* CP_UTF8 is not supported */ | |
| 19 | errno = ENOSYS; | |
| 20 | *mbptr = NULL; | |
| 21 | if (buflen != NULL) *buflen = 0; | |
| 22 | return 0; | |
| 23 | case NO_ERROR: | |
| 24 | if (len == 0) | |
| 25 | break; | |
| 26 | /* fallthrough */ | |
| 27 | default: | |
| 28 | errno = EINVAL; | |
| 29 | *mbptr = NULL; | |
| 30 | if (buflen != NULL) *buflen = 0; | |
| 31 | return 0; | |
| 32 | } | |
| 33 | } | |
| 14 | 34 | buf = calloc(len + 1, sizeof (char)); /* Can we assume sizeof char always = 1? */ |
| 15 | 35 | |
| 16 | 36 | if(!buf) len = 0; |
| 17 | 37 | else { |
| 18 | if (len != 0) ret = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, buf, len, NULL, NULL); /*Do actual conversion*/ | |
| 19 | buf[len] = '0'; /* Must terminate */ | |
| 38 | if (len != 0) { | |
| 39 | ret = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, buf, len, NULL, NULL); /*Do actual conversion*/ | |
| 40 | if (ret < 0 || (ret == 0 && GetLastError() != NO_ERROR)) { | |
| 41 | free(buf); | |
| 42 | errno = EINVAL; | |
| 43 | *mbptr = NULL; | |
| 44 | if (buflen != NULL) *buflen = 0; | |
| 45 | return 0; | |
| 46 | } | |
| 47 | } | |
| 48 | buf[len] = '\0'; /* Must terminate */ | |
| 20 | 49 | } |
| 21 | 50 | *mbptr = buf; /* Set string pointer to allocated buffer */ |
| 22 | 51 | if(buflen != NULL) *buflen = (len) * sizeof (char); /* Give length of allocated memory if needed. */ |
| ... | ... | @@ -25,17 +54,45 @@ int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size |
| 25 | 54 | |
| 26 | 55 | int __cdecl __mingw_str_utf8_wide(const char *const mbptr, wchar_t **wptr, size_t *buflen) |
| 27 | 56 | { |
| 28 | size_t len; | |
| 57 | int len; | |
| 29 | 58 | wchar_t *buf; |
| 30 | 59 | int ret = 0; |
| 31 | 60 | |
| 32 | 61 | len = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, NULL, 0); /* Get converted size */ |
| 62 | if (len <= 0) { | |
| 63 | switch (GetLastError()) { | |
| 64 | case ERROR_INVALID_PARAMETER: /* CP_UTF8 or MB_ERR_INVALID_CHARS is not supported */ | |
| 65 | case ERROR_INVALID_FLAGS: /* CP_UTF8 or MB_ERR_INVALID_CHARS is not supported */ | |
| 66 | errno = ENOSYS; | |
| 67 | *wptr = NULL; | |
| 68 | if (buflen != NULL) *buflen = 0; | |
| 69 | return 0; | |
| 70 | case NO_ERROR: | |
| 71 | if (len == 0) | |
| 72 | break; | |
| 73 | /* fallthrough */ | |
| 74 | default: | |
| 75 | errno = EINVAL; | |
| 76 | *wptr = NULL; | |
| 77 | if (buflen != NULL) *buflen = 0; | |
| 78 | return 0; | |
| 79 | } | |
| 80 | } | |
| 33 | 81 | buf = calloc(len + 1, sizeof (wchar_t)); /* Allocate memory accordingly */ |
| 34 | 82 | |
| 35 | 83 | if(!buf) len = 0; |
| 36 | 84 | else { |
| 37 | if (len != 0) ret = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, buf, len); /* Do conversion */ | |
| 38 | buf[len] = L'0'; /* Must terminate */ | |
| 85 | if (len != 0) { | |
| 86 | ret = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, buf, len); /* Do conversion */ | |
| 87 | if (ret < 0 || (ret == 0 && GetLastError() != NO_ERROR)) { | |
| 88 | free(buf); | |
| 89 | errno = EINVAL; | |
| 90 | *wptr = NULL; | |
| 91 | if (buflen != NULL) *buflen = 0; | |
| 92 | return 0; | |
| 93 | } | |
| 94 | } | |
| 95 | buf[len] = L'\0'; /* Must terminate */ | |
| 39 | 96 | } |
| 40 | 97 | *wptr = buf; /* Set string pointer to allocated buffer */ |
| 41 | 98 | if (buflen != NULL) *buflen = len * sizeof (wchar_t); /* Give length of allocated memory if needed. */ |
lib/libc/mingw/misc/mingw_setfp.c+45-31| ... | ... | @@ -118,18 +118,52 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask, |
| 118 | 118 | #if defined(__arm64ec__) |
| 119 | 119 | __mingw_setfp_sse(cw, cw_mask, sw, sw_mask); |
| 120 | 120 | #elif defined(__i386__) || defined(__x86_64__) |
| 121 | unsigned long oldcw = 0, newcw = 0; | |
| 122 | unsigned long oldsw = 0, newsw = 0; | |
| 121 | unsigned long newcw = 0, newsw = 0; | |
| 123 | 122 | unsigned int flags; |
| 123 | int use_fnstenv_fldenv; | |
| 124 | struct { | |
| 125 | WORD control_word; | |
| 126 | WORD unused1; | |
| 127 | WORD status_word; | |
| 128 | WORD unused2; | |
| 129 | WORD tag_word; | |
| 130 | WORD unused3; | |
| 131 | DWORD instruction_pointer; | |
| 132 | WORD code_segment; | |
| 133 | WORD unused4; | |
| 134 | DWORD operand_addr; | |
| 135 | WORD data_segment; | |
| 136 | WORD unused5; | |
| 137 | } fenv; | |
| 124 | 138 | |
| 125 | 139 | cw_mask &= _MCW_EM | _MCW_IC | _MCW_RC | _MCW_PC; |
| 126 | 140 | sw_mask &= _MCW_EM; |
| 127 | 141 | |
| 128 | if (sw) | |
| 142 | use_fnstenv_fldenv = ((sw && sw_mask != 0) || (cw && cw_mask != 0)); | |
| 143 | ||
| 144 | if (!use_fnstenv_fldenv) | |
| 145 | { | |
| 146 | /* Fast path: when we are not going to change sw/cw which is indicated | |
| 147 | * by zero mask then load sw/cw via fast fnstsw/fnstcw instruction. | |
| 148 | */ | |
| 149 | __asm__ __volatile__( "fnstsw %0" : "=m" (newsw) ); | |
| 150 | __asm__ __volatile__( "fnstcw %0" : "=m" (newcw) ); | |
| 151 | } | |
| 152 | else | |
| 129 | 153 | { |
| 130 | __asm__ __volatile__( "fstsw %0" : "=m" (newsw) ); | |
| 131 | oldsw = newsw; | |
| 154 | /* Slow path: when we are going to change sw/cw or we do not know yet then | |
| 155 | * load whole x87 env via slow fnstenv as it is needed for changing sw/cw. | |
| 156 | * Note that fnstenv masks all floating-point exceptions after storing the | |
| 157 | * x87 env. And after the fnstenv call, it is always required to restore | |
| 158 | * masking of previous floating-point exceptions via the fldenv call. | |
| 159 | */ | |
| 160 | __asm__ __volatile__( "fnstenv %0" : "=m" (fenv) ); | |
| 161 | newsw = fenv.status_word; | |
| 162 | newcw = fenv.control_word; | |
| 163 | } | |
| 132 | 164 | |
| 165 | if (sw) | |
| 166 | { | |
| 133 | 167 | flags = 0; |
| 134 | 168 | if (newsw & 0x1) flags |= _SW_INVALID; |
| 135 | 169 | if (newsw & 0x2) flags |= _SW_DENORMAL; |
| ... | ... | @@ -151,9 +185,6 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask, |
| 151 | 185 | |
| 152 | 186 | if (cw) |
| 153 | 187 | { |
| 154 | __asm__ __volatile__( "fstcw %0" : "=m" (newcw) ); | |
| 155 | oldcw = newcw; | |
| 156 | ||
| 157 | 188 | flags = 0; |
| 158 | 189 | if (newcw & 0x1) flags |= _EM_INVALID; |
| 159 | 190 | if (newcw & 0x2) flags |= _EM_DENORMAL; |
| ... | ... | @@ -198,35 +229,18 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask, |
| 198 | 229 | if (*cw & _IC_AFFINE) newcw |= 0x1000; |
| 199 | 230 | } |
| 200 | 231 | |
| 201 | if (oldsw != newsw && (newsw & 0x3f)) | |
| 232 | /* For changing sw/cw always use fldenv. | |
| 233 | * Do not use fldcw as it can generate pending floating-point exception. | |
| 234 | * When the fnstenv was called then it is required to call fldenv to | |
| 235 | * restore previous floating-point exceptions. | |
| 236 | */ | |
| 237 | if (use_fnstenv_fldenv) | |
| 202 | 238 | { |
| 203 | struct { | |
| 204 | WORD control_word; | |
| 205 | WORD unused1; | |
| 206 | WORD status_word; | |
| 207 | WORD unused2; | |
| 208 | WORD tag_word; | |
| 209 | WORD unused3; | |
| 210 | DWORD instruction_pointer; | |
| 211 | WORD code_segment; | |
| 212 | WORD unused4; | |
| 213 | DWORD operand_addr; | |
| 214 | WORD data_segment; | |
| 215 | WORD unused5; | |
| 216 | } fenv; | |
| 217 | ||
| 218 | __asm__ __volatile__( "fnstenv %0" : "=m" (fenv) ); | |
| 219 | 239 | fenv.control_word = newcw; |
| 220 | 240 | fenv.status_word = newsw; |
| 221 | 241 | __asm__ __volatile__( "fldenv %0" : : "m" (fenv) : "st", "st(1)", |
| 222 | 242 | "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)" ); |
| 223 | return; | |
| 224 | 243 | } |
| 225 | ||
| 226 | if (oldsw != newsw) | |
| 227 | __asm__ __volatile__( "fnclex" ); | |
| 228 | if (oldcw != newcw) | |
| 229 | __asm__ __volatile__( "fldcw %0" : : "m" (newcw) ); | |
| 230 | 244 | #elif defined(__aarch64__) |
| 231 | 245 | ULONG_PTR old_fpsr = 0, fpsr = 0, old_fpcr = 0, fpcr = 0; |
| 232 | 246 | unsigned int flags; |
lib/libc/mingw/misc/mingw_wcstold.c-2| ... | ... | @@ -23,8 +23,6 @@ |
| 23 | 23 | #include <string.h> |
| 24 | 24 | #include <mbstring.h> |
| 25 | 25 | |
| 26 | #include "mb_wc_common.h" | |
| 27 | ||
| 28 | 26 | long double __mingw_wcstold (const wchar_t * __restrict__ wcs, wchar_t ** __restrict__ wcse) |
| 29 | 27 | { |
| 30 | 28 | char * cs; |
lib/libc/mingw/misc/mkdtemp.c created+83| ... | ... | @@ -0,0 +1,83 @@ |
| 1 | #define _CRT_RAND_S | |
| 2 | #include <stdlib.h> | |
| 3 | #include <string.h> | |
| 4 | #include <direct.h> | |
| 5 | #include <errno.h> | |
| 6 | #include <time.h> | |
| 7 | #include <limits.h> | |
| 8 | ||
| 9 | /* | |
| 10 | The mkdtemp() function generates a unique temporary name from template, | |
| 11 | the creates the directory with that name and returns pointer to the modified | |
| 12 | template string. | |
| 13 | ||
| 14 | The template may be any name with at least six trailing Xs, for example | |
| 15 | /tmp/temp.XXXXXXXX. The trailing Xs are replaced with a unique digit and | |
| 16 | letter combination that makes the file name unique. Since it will be | |
| 17 | modified, template must not be a string constant, but should be declared as | |
| 18 | a character array. | |
| 19 | */ | |
| 20 | char *__cdecl mkdtemp (char *template_name) | |
| 21 | { | |
| 22 | int j, ret, len, index; | |
| 23 | unsigned int i, r; | |
| 24 | ||
| 25 | /* These are the (62) characters used in temporary filenames. */ | |
| 26 | static const char letters[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; | |
| 27 | ||
| 28 | /* The last six characters of template must be "XXXXXX" */ | |
| 29 | if (template_name == NULL || (len = strlen (template_name)) < 6 | |
| 30 | || memcmp (template_name + (len - 6), "XXXXXX", 6)) { | |
| 31 | errno = EINVAL; | |
| 32 | return NULL; | |
| 33 | } | |
| 34 | ||
| 35 | /* User may supply more than six trailing Xs */ | |
| 36 | for (index = len - 6; index > 0 && template_name[index - 1] == 'X'; index--); | |
| 37 | ||
| 38 | /* Like OpenBSD, mkdtemp() will try 2 ** 31 combinations before giving up. */ | |
| 39 | for (i = 0; i <= INT_MAX; i++) { | |
| 40 | for(j = index; j < len; j++) { | |
| 41 | if (rand_s(&r)) | |
| 42 | r = rand() ^ _time32(NULL); | |
| 43 | template_name[j] = letters[r % 62]; | |
| 44 | } | |
| 45 | ret = _mkdir(template_name); | |
| 46 | if (ret == 0) return template_name; | |
| 47 | if (ret != 0 && errno != EEXIST) return NULL; | |
| 48 | } | |
| 49 | ||
| 50 | return NULL; | |
| 51 | } | |
| 52 | ||
| 53 | #if 0 | |
| 54 | #include <stdio.h> | |
| 55 | int main () | |
| 56 | { | |
| 57 | int i; | |
| 58 | ||
| 59 | for (i = 0; i < 10; i++) { | |
| 60 | char template_name[] = { "temp_XXXXXX" }; | |
| 61 | char *name = mkdtemp (template_name); | |
| 62 | if (name) { | |
| 63 | fprintf (stderr, "name=%s\n", name); | |
| 64 | rmdir (name); | |
| 65 | } else { | |
| 66 | fprintf (stderr, "errno=%d\n", errno); | |
| 67 | } | |
| 68 | } | |
| 69 | ||
| 70 | for (i = 0; i < 10; i++) { | |
| 71 | char template_name[] = { "temp_XXXXXXXX" }; | |
| 72 | char *name = mkdtemp (template_name); | |
| 73 | if (name) { | |
| 74 | fprintf (stderr, "name=%s\n", name); | |
| 75 | rmdir (name); | |
| 76 | } else { | |
| 77 | fprintf (stderr, "errno=%d\n", errno); | |
| 78 | } | |
| 79 | } | |
| 80 | ||
| 81 | return 0; | |
| 82 | } | |
| 83 | #endif |
lib/libc/mingw/misc/mkstemp.c+2-1| ... | ... | @@ -4,6 +4,7 @@ |
| 4 | 4 | #include <string.h> |
| 5 | 5 | #include <io.h> |
| 6 | 6 | #include <errno.h> |
| 7 | #include <time.h> | |
| 7 | 8 | #include <share.h> |
| 8 | 9 | #include <fcntl.h> |
| 9 | 10 | #include <sys/stat.h> |
| ... | ... | @@ -46,7 +47,7 @@ int __cdecl mkstemp (char *template_name) |
| 46 | 47 | for (i = 0; i <= INT_MAX; i++) { |
| 47 | 48 | for(j = index; j < len; j++) { |
| 48 | 49 | if (rand_s(&r)) |
| 49 | r = rand(); | |
| 50 | r = rand() ^ _time32(NULL); | |
| 50 | 51 | template_name[j] = letters[r % 62]; |
| 51 | 52 | } |
| 52 | 53 | fd = _sopen(template_name, |
lib/libc/mingw/misc/ucrt_mbsinit.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define _UCRT | |
| 9 | #include <wchar.h> | |
| 10 | ||
| 11 | int __cdecl mbsinit(const mbstate_t *_P) | |
| 12 | { | |
| 13 | return (!_P || _P->_Wchar == 0); | |
| 14 | } |
lib/libc/mingw/misc/wctob.c created+39| ... | ... | @@ -0,0 +1,39 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #define __LARGE_MBSTATE_T | |
| 8 | ||
| 9 | #ifndef WIN32_LEAN_AND_MEAN | |
| 10 | #define WIN32_LEAN_AND_MEAN | |
| 11 | #endif | |
| 12 | #include <locale.h> | |
| 13 | #include <limits.h> | |
| 14 | #include <wchar.h> | |
| 15 | #include <stdio.h> | |
| 16 | #include <stdlib.h> | |
| 17 | #include <errno.h> | |
| 18 | #include <windows.h> | |
| 19 | ||
| 20 | int wctob (wint_t wc) | |
| 21 | { | |
| 22 | /* Return early */ | |
| 23 | if (IS_LOW_SURROGATE (wc) || IS_HIGH_SURROGATE (wc) || wc == WEOF) { | |
| 24 | return EOF; | |
| 25 | } | |
| 26 | ||
| 27 | mbstate_t state = {0}; | |
| 28 | /* Buffer large enough to hold any multibyte character */ | |
| 29 | char mbc[MB_LEN_MAX]; | |
| 30 | ||
| 31 | size_t length = wcrtomb (mbc, wc, &state); | |
| 32 | if (length > 1) { | |
| 33 | return EOF; | |
| 34 | } | |
| 35 | ||
| 36 | return (unsigned char) mbc[0]; | |
| 37 | } | |
| 38 | ||
| 39 | int (__cdecl *__MINGW_IMP_SYMBOL (wctob)) (wint_t) = wctob; |
lib/libc/mingw/stdio/__mingw_fix_fstat_finish.c created+18| ... | ... | @@ -0,0 +1,18 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <sys/stat.h> | |
| 8 | #include <windows.h> | |
| 9 | #include "__mingw_fix_stat.h" | |
| 10 | ||
| 11 | int __mingw_fix_fstat_finish(int ret, int fd, unsigned short *mode) | |
| 12 | { | |
| 13 | /* msvcrt's _fstat fills S_IFREG for directories. Fix it to S_IFDIR. */ | |
| 14 | BY_HANDLE_FILE_INFORMATION fi; | |
| 15 | if (ret == 0 && S_ISREG(*mode) && GetFileInformationByHandle((HANDLE)_get_osfhandle(fd), &fi) && (fi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) | |
| 16 | *mode = (*mode & ~S_IFMT) | S_IFDIR; | |
| 17 | return ret; | |
| 18 | } |
lib/libc/mingw/stdio/__mingw_fix_stat.h created+65| ... | ... | @@ -0,0 +1,65 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #ifndef __MINGW_FIX_STAT_H | |
| 8 | #define __MINGW_FIX_STAT_H | |
| 9 | ||
| 10 | char* __mingw_fix_stat_path (const char* _path); | |
| 11 | wchar_t* __mingw_fix_wstat_path (const wchar_t* _path); | |
| 12 | int __mingw_fix_stat_finish(int ret, const void *orig_path, void *used_path, | |
| 13 | unsigned short mode); | |
| 14 | int __mingw_fix_fstat_finish(int ret, int fd, unsigned short *mode); | |
| 15 | int __mingw_fix_wstat_fallback_fd(int ret, const wchar_t *filename, unsigned short mode); | |
| 16 | int __mingw_fix_stat_fallback_fd(int ret, const char *filename, unsigned short mode); | |
| 17 | ||
| 18 | #define __MINGW_FIXED_FSTAT(fstat_func, fd, obj) ({ \ | |
| 19 | int _fstat_ret = fstat_func(fd, obj); \ | |
| 20 | _fstat_ret = __mingw_fix_fstat_finish(_fstat_ret, fd, &(obj)->st_mode); \ | |
| 21 | _fstat_ret; \ | |
| 22 | }) | |
| 23 | ||
| 24 | #define __MINGW_CHOOSE_CHAR_WCHART_EXPR(var, char_expr, wchart_expr, other_expr) \ | |
| 25 | __builtin_choose_expr(__builtin_types_compatible_p(typeof(var), char), char_expr, \ | |
| 26 | __builtin_choose_expr(__builtin_types_compatible_p(typeof(var), wchar_t), wchart_expr, \ | |
| 27 | other_expr)) | |
| 28 | ||
| 29 | #define __MINGW_PATH_PTR_TYPE(path) \ | |
| 30 | typeof(__MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], (char*)0, (wchar_t*)0, (void)0)) | |
| 31 | ||
| 32 | #define __MINGW_FIX_STAT_PATH(path) \ | |
| 33 | __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], __mingw_fix_stat_path, __mingw_fix_wstat_path, NULL)(path) | |
| 34 | ||
| 35 | #define __MINGW_FIX_STAT_FALLBACK_FD(ret, path, mode) \ | |
| 36 | __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], __mingw_fix_stat_fallback_fd, __mingw_fix_wstat_fallback_fd, NULL)((ret), (path), (mode)) | |
| 37 | ||
| 38 | #define __MINGW_CREATE_FILE(path, ...) \ | |
| 39 | __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], CreateFileA, CreateFileW, NULL)((path), ##__VA_ARGS__) | |
| 40 | ||
| 41 | #define __MINGW_STR_PBRK(path, accept) \ | |
| 42 | __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], strpbrk, wcspbrk, NULL)((path), __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], accept, L##accept, NULL)) | |
| 43 | ||
| 44 | #define __MINGW_FIXED_STAT(fstat_func, stat_func, filename, obj) ({ \ | |
| 45 | /* First call CRT _stat function with mingw path correction */ \ | |
| 46 | int _stat_ret; \ | |
| 47 | __MINGW_PATH_PTR_TYPE(filename) path = __MINGW_FIX_STAT_PATH(filename); \ | |
| 48 | if (path == NULL && (filename) != NULL) { \ | |
| 49 | _stat_ret = -1; \ | |
| 50 | } else { \ | |
| 51 | _stat_ret = (stat_func)(path, (obj)); \ | |
| 52 | _stat_ret = __mingw_fix_stat_finish(_stat_ret, (filename), path, (obj)->st_mode); \ | |
| 53 | /* If the CRT _stat function failed then fallback to mingw fstat function */ \ | |
| 54 | int _stat_fd = __MINGW_FIX_STAT_FALLBACK_FD(_stat_ret, (filename), (obj)->st_mode); \ | |
| 55 | if (_stat_fd >= 0) { \ | |
| 56 | _stat_ret = fstat_func(_stat_fd, (void*)(obj)); \ | |
| 57 | int _stat_errno = errno; \ | |
| 58 | close(_stat_fd); \ | |
| 59 | errno = _stat_errno; \ | |
| 60 | } \ | |
| 61 | } \ | |
| 62 | _stat_ret; \ | |
| 63 | }) | |
| 64 | ||
| 65 | #endif |
lib/libc/mingw/stdio/__mingw_fix_stat_fallback_fd.c created+44| ... | ... | @@ -0,0 +1,44 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <sys/stat.h> | |
| 8 | #include <string.h> | |
| 9 | #include <wchar.h> | |
| 10 | #include <errno.h> | |
| 11 | #include <fcntl.h> | |
| 12 | #include <windows.h> | |
| 13 | #include "__mingw_fix_stat.h" | |
| 14 | ||
| 15 | #ifdef MINGW_FIX_STAT_IS_WIDE | |
| 16 | int __mingw_fix_wstat_fallback_fd(int ret, const wchar_t *filename, unsigned short mode) | |
| 17 | #else | |
| 18 | int __mingw_fix_stat_fallback_fd(int ret, const char *filename, unsigned short mode) | |
| 19 | #endif | |
| 20 | { | |
| 21 | int fd = -1; | |
| 22 | ||
| 23 | /* | |
| 24 | * CRT _stat does not handle paths with ? and * characters and returns ENOENT. | |
| 25 | * This prevents _stat from working on paths like \\?\C:\foo.txt. | |
| 26 | * CRT _stat incorrectly sets S_IFREG for pipe and char devices. | |
| 27 | * For these cases open specified filename and return its fd which will be passed to CRT fstat() by caller. | |
| 28 | */ | |
| 29 | if ((ret < 0 && errno == ENOENT && __MINGW_STR_PBRK((filename), "?*")) || (ret == 0 && S_ISREG(mode))) { | |
| 30 | HANDLE handle = __MINGW_CREATE_FILE((filename), FILE_READ_ATTRIBUTES, FILE_SHARE_VALID_FLAGS, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL); | |
| 31 | if (handle != NULL && handle != INVALID_HANDLE_VALUE) { | |
| 32 | /* Open filename and return fd if CRT _stat failed or if the file is not regular disk file. */ | |
| 33 | if (ret < 0 || GetFileType(handle) != FILE_TYPE_DISK) { | |
| 34 | int saved_errno = errno; | |
| 35 | fd = _open_osfhandle((intptr_t)handle, O_RDONLY); | |
| 36 | errno = saved_errno; | |
| 37 | } | |
| 38 | if (fd < 0) | |
| 39 | CloseHandle(handle); | |
| 40 | } | |
| 41 | } | |
| 42 | ||
| 43 | return fd; | |
| 44 | } |
lib/libc/mingw/stdio/__mingw_fix_stat_finish.c created+36| ... | ... | @@ -0,0 +1,36 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <sys/stat.h> | |
| 8 | #include <stdlib.h> | |
| 9 | #include <errno.h> | |
| 10 | #include "__mingw_fix_stat.h" | |
| 11 | ||
| 12 | int __mingw_fix_stat_finish(int ret, const void *orig_path, void *used_path, | |
| 13 | unsigned short mode) | |
| 14 | { | |
| 15 | /* | |
| 16 | * If the original pathname and used pathname differ, it means that | |
| 17 | * __mingw_fix_stat_path or __mingw_fix_wstat_path had to allocate | |
| 18 | * a temporary buffer and remove a trailing directory separator. | |
| 19 | * In this case the temporary allocation has to be freed, and the | |
| 20 | * stat function succeeds only if the pathname was a directory. | |
| 21 | */ | |
| 22 | if (orig_path != used_path) { | |
| 23 | /* Save errno because we call free. */ | |
| 24 | int saved_errno = errno; | |
| 25 | free(used_path); | |
| 26 | ||
| 27 | if (ret == 0 && !S_ISDIR(mode)) { | |
| 28 | ret = -1; | |
| 29 | saved_errno = ENOTDIR; | |
| 30 | } | |
| 31 | ||
| 32 | errno = saved_errno; | |
| 33 | } | |
| 34 | ||
| 35 | return ret; | |
| 36 | } |
lib/libc/mingw/stdio/__mingw_fix_stat_path.c+35-7| ... | ... | @@ -4,8 +4,21 @@ |
| 4 | 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. |
| 5 | 5 | */ |
| 6 | 6 | |
| 7 | #ifndef WIN32_LEAN_AND_MEAN | |
| 8 | #define WIN32_LEAN_AND_MEAN | |
| 9 | #endif | |
| 7 | 10 | #include <sys/stat.h> |
| 8 | 11 | #include <stdlib.h> |
| 12 | #include <locale.h> | |
| 13 | #include <windows.h> | |
| 14 | #include "__mingw_fix_stat.h" | |
| 15 | ||
| 16 | static const char* next_char (unsigned int cp, const char* p) | |
| 17 | { | |
| 18 | /* If it is a lead byte, skip the next byte except if it is \0. | |
| 19 | * If it is \0, it's not a valid DBCS string. */ | |
| 20 | return (__mingw_isleadbyte_cp (*p, cp) && p[1] != '\0') ? p + 2 : p + 1; | |
| 21 | } | |
| 9 | 22 | |
| 10 | 23 | /** |
| 11 | 24 | * Returns _path without trailing slash if any |
| ... | ... | @@ -17,10 +30,10 @@ |
| 17 | 30 | * to free it. |
| 18 | 31 | */ |
| 19 | 32 | |
| 20 | char* __mingw_fix_stat_path (const char* _path); | |
| 21 | 33 | char* __mingw_fix_stat_path (const char* _path) |
| 22 | 34 | { |
| 23 | int len; | |
| 35 | const unsigned int cp = __mingw_filename_cp (); | |
| 36 | size_t len; | |
| 24 | 37 | char *p; |
| 25 | 38 | |
| 26 | 39 | p = (char*)_path; |
| ... | ... | @@ -28,24 +41,27 @@ char* __mingw_fix_stat_path (const char* _path) |
| 28 | 41 | if (_path && *_path) { |
| 29 | 42 | len = strlen (_path); |
| 30 | 43 | |
| 31 | /* Ignore X:\ */ | |
| 32 | ||
| 44 | /* Ignore X:\ | |
| 45 | * No ANSI or OEM code page uses ':' as a trail byte. (The code page 1361 | |
| 46 | * cannot be used as ANSI or OEM code page.) */ | |
| 33 | 47 | if (len <= 1 || ((len == 2 || len == 3) && _path[1] == ':')) |
| 34 | 48 | return p; |
| 35 | 49 | |
| 50 | const char *r = _path; | |
| 51 | ||
| 36 | 52 | /* Check UNC \\abc\<name>\ */ |
| 37 | 53 | if ((_path[0] == '\\' || _path[0] == '/') |
| 38 | 54 | 	&& (_path[1] == '\\' || _path[1] == '/')) |
| 39 | 55 | { |
| 40 | 	const char *r = &_path[2]; | |
| 56 | 	r = &_path[2]; | |
| 41 | 57 | 	while (*r != 0 && *r != '\\' && *r != '/') |
| 42 | 	 ++r; | |
| 58 | 	 r = next_char (cp, r); | |
| 43 | 59 | 	if (*r != 0) |
| 44 | 60 | 	 ++r; |
| 45 | 61 | 	if (*r == 0) |
| 46 | 62 | 	 return p; |
| 47 | 63 | 	while (*r != 0 && *r != '\\' && *r != '/') |
| 48 | 	 ++r; | |
| 64 | 	 r = next_char (cp, r); | |
| 49 | 65 | 	if (*r != 0) |
| 50 | 66 | 	 ++r; |
| 51 | 67 | 	if (*r == 0) |
| ... | ... | @@ -54,7 +70,19 @@ char* __mingw_fix_stat_path (const char* _path) |
| 54 | 70 | |
| 55 | 71 | if (_path[len - 1] == '/' || _path[len - 1] == '\\') |
| 56 | 72 | { |
| 73 | 	/* Return if the last character is a double-byte character. | |
| 74 | 	 * Its trail byte could be a '\' which must not be interpret | |
| 75 | 	 * as a directory separator. */ | |
| 76 | 	while (r[1] != '\0') | |
| 77 | 	 { | |
| 78 | 	 r = next_char (cp, r); | |
| 79 | 	 if (*r == '\0') | |
| 80 | 	 return p; | |
| 81 | 	 } | |
| 82 | ||
| 57 | 83 | 	p = (char*)malloc (len); |
| 84 | 	if (p == NULL) | |
| 85 | 	 return NULL; /* malloc has set errno. */ | |
| 58 | 86 | 	memcpy (p, _path, len - 1); |
| 59 | 87 | 	p[len - 1] = '\0'; |
| 60 | 88 | } |
lib/libc/mingw/stdio/__mingw_fix_wstat_fallback_fd.c created+2| ... | ... | @@ -0,0 +1,2 @@ |
| 1 | #define MINGW_FIX_STAT_IS_WIDE | |
| 2 | #include "__mingw_fix_stat_fallback_fd.c" |
lib/libc/mingw/stdio/__mingw_fix_wstat_path.c+4-2| ... | ... | @@ -6,6 +6,7 @@ |
| 6 | 6 | |
| 7 | 7 | #include <sys/stat.h> |
| 8 | 8 | #include <stdlib.h> |
| 9 | #include "__mingw_fix_stat.h" | |
| 9 | 10 | |
| 10 | 11 | /** |
| 11 | 12 | * Returns _path without trailing slash if any |
| ... | ... | @@ -17,10 +18,9 @@ |
| 17 | 18 | * to free it. |
| 18 | 19 | */ |
| 19 | 20 | |
| 20 | wchar_t* __mingw_fix_wstat_path (const wchar_t* _path); | |
| 21 | 21 | wchar_t* __mingw_fix_wstat_path (const wchar_t* _path) |
| 22 | 22 | { |
| 23 | int len; | |
| 23 | size_t len; | |
| 24 | 24 | wchar_t *p; |
| 25 | 25 | |
| 26 | 26 | p = (wchar_t*)_path; |
| ... | ... | @@ -55,6 +55,8 @@ wchar_t* __mingw_fix_wstat_path (const wchar_t* _path) |
| 55 | 55 | if (_path[len - 1] == L'/' || _path[len - 1] == L'\\') |
| 56 | 56 | { |
| 57 | 57 | 	p = (wchar_t*)malloc (len * sizeof(wchar_t)); |
| 58 | 	if (p == NULL) | |
| 59 | 	 return NULL; /* malloc has set errno. */ | |
| 58 | 60 | 	memcpy (p, _path, (len - 1) * sizeof(wchar_t)); |
| 59 | 61 | 	p[len - 1] = L'\0'; |
| 60 | 62 | } |
lib/libc/mingw/stdio/fopen64.c deleted-11| ... | ... | @@ -1,11 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | #include <stdio.h> | |
| 7 | ||
| 8 | FILE* fopen64 (const char* filename, const char* mode) | |
| 9 | { | |
| 10 | return fopen (filename, mode); | |
| 11 | } |
lib/libc/mingw/stdio/fseeko32.c deleted-7| ... | ... | @@ -1,7 +0,0 @@ |
| 1 | /*non-standard*/ | |
| 2 | #include <stdio.h> | |
| 3 | ||
| 4 | int fseeko(FILE* stream, _off_t offset, int whence){ | |
| 5 | _off64_t off = offset; | |
| 6 | return fseeko64(stream,off,whence); | |
| 7 | } |
lib/libc/mingw/stdio/fseeko64.c deleted-34| ... | ... | @@ -1,34 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | #include <stdio.h> | |
| 7 | #include <io.h> | |
| 8 | #include <errno.h> | |
| 9 | ||
| 10 | int fseeko64 (FILE* stream, _off64_t offset, int whence) | |
| 11 | { | |
| 12 | fpos_t pos; | |
| 13 | if (whence == SEEK_CUR) | |
| 14 | { | |
| 15 | /* If stream is invalid, fgetpos sets errno. */ | |
| 16 | if (fgetpos (stream, &pos)) | |
| 17 | return (-1); | |
| 18 | pos += (fpos_t) offset; | |
| 19 | } | |
| 20 | else if (whence == SEEK_END) | |
| 21 | { | |
| 22 | /* If writing, we need to flush before getting file length. */ | |
| 23 | fflush (stream); | |
| 24 | pos = (fpos_t) (_filelengthi64 (_fileno (stream)) + offset); | |
| 25 | } | |
| 26 | else if (whence == SEEK_SET) | |
| 27 | pos = (fpos_t) offset; | |
| 28 | else | |
| 29 | { | |
| 30 | errno = EINVAL; | |
| 31 | return (-1); | |
| 32 | } | |
| 33 | return fsetpos (stream, &pos); | |
| 34 | } |
lib/libc/mingw/stdio/ftello.c deleted-5| ... | ... | @@ -1,5 +0,0 @@ |
| 1 | #include <stdio.h> | |
| 2 | ||
| 3 | _off_t ftello(FILE * stream){ | |
| 4 | return (_off_t) ftello64(stream); | |
| 5 | } |
lib/libc/mingw/stdio/ftello64.c deleted-16| ... | ... | @@ -1,16 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | #include <stdio.h> | |
| 7 | ||
| 8 | _off64_t | |
| 9 | ftello64 (FILE * stream) | |
| 10 | { | |
| 11 | fpos_t pos; | |
| 12 | if (fgetpos(stream, &pos)) | |
| 13 | return -1LL; | |
| 14 | else | |
| 15 | return ((off64_t) pos); | |
| 16 | } |
lib/libc/mingw/stdio/ftruncate64.c deleted-371| ... | ... | @@ -1,371 +0,0 @@ |
| 1 | #ifdef TEST_FTRUNCATE64 | |
| 2 | #include <fcntl.h> | |
| 3 | #include <sys/stat.h> | |
| 4 | #endif /* TEST_FTRUNCATE64 */ | |
| 5 | ||
| 6 | #include <stdio.h> | |
| 7 | #include <unistd.h> | |
| 8 | #include <io.h> | |
| 9 | #include <stdlib.h> | |
| 10 | #include <errno.h> | |
| 11 | #include <wchar.h> | |
| 12 | #include <windows.h> | |
| 13 | #include <psapi.h> | |
| 14 | ||
| 15 | /* Mutually exclusive methods | |
| 16 | We check disk space as truncating more than the allowed space results | |
| 17 | in file getting mysteriously deleted | |
| 18 | */ | |
| 19 | #define _CHECK_SPACE_BY_VOLUME_METHOD_ 1 /* Needs to walk through all volumes */ | |
| 20 | #define _CHECK_SPACE_BY_PSAPI_METHOD_ 0 /* Requires psapi.dll */ | |
| 21 | #define _CHECK_SPACE_BY_VISTA_METHOD_ 0 /* Won't work on XP */ | |
| 22 | ||
| 23 | #if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) /* Retrive actual volume path */ | |
| 24 | static LPWSTR getdirpath(const LPWSTR __str){ | |
| 25 | int len, walk = 0; | |
| 26 | LPWSTR dirname; | |
| 27 | while (__str[walk] != L'\0'){ | |
| 28 | walk++; | |
| 29 | if (__str[walk] == L'\\') len = walk + 1; | |
| 30 | } | |
| 31 | dirname = calloc(len + 1, sizeof(wchar_t)); | |
| 32 | if (!dirname) return dirname; /* memory error */ | |
| 33 | return wcsncpy(dirname,__str,len); | |
| 34 | } | |
| 35 | ||
| 36 | static LPWSTR xp_normalize_fn(const LPWSTR fn) { | |
| 37 | DWORD len, err, walker, isfound; | |
| 38 | LPWSTR drives = NULL; | |
| 39 | LPWSTR target = NULL; | |
| 40 | LPWSTR ret = NULL; | |
| 41 | wchar_t tmplt[3] = L" :"; /* Template */ | |
| 42 | ||
| 43 | /*Get list of drive letters */ | |
| 44 | len = GetLogicalDriveStringsW(0,NULL); | |
| 45 | drives = calloc(len,sizeof(wchar_t)); | |
| 46 | if (!drives) return NULL; | |
| 47 | len = GetLogicalDriveStringsW(len,drives); | |
| 48 | ||
| 49 | /*Allocatate memory */ | |
| 50 | target = calloc(MAX_PATH + 1,sizeof(wchar_t)); | |
| 51 | if (!target) { | |
| 52 | free(drives); | |
| 53 | return NULL; | |
| 54 | } | |
| 55 | ||
| 56 | walker = 0; | |
| 57 | while ((walker < len) && !(drives[walker] == L'\0' && drives[walker + 1] == L'\0')){ | |
| 58 | /* search through alphabets */ | |
| 59 | if(iswalpha(drives[walker])) { | |
| 60 | *tmplt = drives[walker]; /* Put drive letter */ | |
| 61 | err = QueryDosDeviceW(tmplt,target,MAX_PATH); | |
| 62 | if(!err) { | |
| 63 | free(drives); | |
| 64 | free(target); | |
| 65 | return NULL; | |
| 66 | } | |
| 67 | if( _wcsnicmp(target,fn,wcslen(target)) == 0) break; | |
| 68 | wmemset(target,L'\0',MAX_PATH); | |
| 69 | walker++; | |
| 70 | } else walker++; | |
| 71 | } | |
| 72 | ||
| 73 | if (!iswalpha(*tmplt)) { | |
| 74 | free(drives); | |
| 75 | free(target); | |
| 76 | return NULL; /* Finish walking without finding correct drive */ | |
| 77 | } | |
| 78 | ||
| 79 | ret = calloc(MAX_PATH + 1,sizeof(wchar_t)); | |
| 80 | if (!ret) { | |
| 81 | free(drives); | |
| 82 | free(target); | |
| 83 | return NULL; | |
| 84 | } | |
| 85 | _snwprintf(ret,MAX_PATH,L"%ws%ws",tmplt,fn+wcslen(target)); | |
| 86 | ||
| 87 | return ret; | |
| 88 | } | |
| 89 | ||
| 90 | /* XP method of retrieving filename from handles, based on: | |
| 91 | http://msdn.microsoft.com/en-us/library/aa366789%28VS.85%29.aspx | |
| 92 | */ | |
| 93 | static LPWSTR xp_getfilepath(const HANDLE f, const LARGE_INTEGER fsize){ | |
| 94 | HANDLE hFileMap = NULL; | |
| 95 | void* pMem = NULL; | |
| 96 | LPWSTR temp, ret; | |
| 97 | DWORD err; | |
| 98 | ||
| 99 | temp = calloc(MAX_PATH + 1, sizeof(wchar_t)); | |
| 100 | if (!temp) goto errormap; | |
| 101 | ||
| 102 | /* CreateFileMappingW limitation: Cannot map 0 byte files, so extend it to 1 byte */ | |
| 103 | if (!fsize.QuadPart) { | |
| 104 | SetFilePointer(f, 1, NULL, FILE_BEGIN); | |
| 105 | err = SetEndOfFile(f); | |
| 106 | if(!temp) goto errormap; | |
| 107 | } | |
| 108 | ||
| 109 | hFileMap = CreateFileMappingW(f,NULL,PAGE_READONLY,0,1,NULL); | |
| 110 | if(!hFileMap) goto errormap; | |
| 111 | pMem = MapViewOfFile(hFileMap, FILE_MAP_READ, 0, 0, 1); | |
| 112 | if(!pMem) goto errormap; | |
| 113 | err = GetMappedFileNameW(GetCurrentProcess(),pMem,temp,MAX_PATH); | |
| 114 | if(!err) goto errormap; | |
| 115 | ||
| 116 | if (pMem) UnmapViewOfFile(pMem); | |
| 117 | if (hFileMap) CloseHandle(hFileMap); | |
| 118 | ret = xp_normalize_fn(temp); | |
| 119 | free(temp); | |
| 120 | return ret; | |
| 121 | ||
| 122 | errormap: | |
| 123 | if (temp) free(temp); | |
| 124 | if (pMem) UnmapViewOfFile(pMem); | |
| 125 | if (hFileMap) CloseHandle(hFileMap); | |
| 126 | errno = EBADF; | |
| 127 | return NULL; | |
| 128 | } | |
| 129 | #endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */ | |
| 130 | ||
| 131 | static int | |
| 132 | checkfreespace (const HANDLE f, const ULONGLONG requiredspace) | |
| 133 | { | |
| 134 | LPWSTR dirpath, volumeid, volumepath; | |
| 135 | ULARGE_INTEGER freespace; | |
| 136 | LARGE_INTEGER currentsize; | |
| 137 | DWORD check, volumeserial; | |
| 138 | BY_HANDLE_FILE_INFORMATION fileinfo; | |
| 139 | HANDLE vol; | |
| 140 | ||
| 141 | /* Get current size */ | |
| 142 | check = GetFileSizeEx (f, &currentsize); | |
| 143 | if (!check) | |
| 144 | { | |
| 145 | errno = EBADF; | |
| 146 | return -1; /* Error checking file size */ | |
| 147 | } | |
| 148 | ||
| 149 | /* Short circuit disk space check if shrink operation */ | |
| 150 | if ((ULONGLONG)currentsize.QuadPart >= requiredspace) | |
| 151 | return 0; | |
| 152 | ||
| 153 | /* We check available space to user before attempting to truncate */ | |
| 154 | ||
| 155 | #if (_CHECK_SPACE_BY_VISTA_METHOD_ == 1) | |
| 156 | /* Get path length */ | |
| 157 | DWORD err; | |
| 158 | LPWSTR filepath = NULL; | |
| 159 | check = GetFinalPathNameByHandleW(f,filepath,0,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID); | |
| 160 | err = GetLastError(); | |
| 161 | if (err == ERROR_PATH_NOT_FOUND || err == ERROR_INVALID_PARAMETER) { | |
| 162 | errno = EINVAL; | |
| 163 | return -1; /* IO error */ | |
| 164 | } | |
| 165 | filepath = calloc(check + 1,sizeof(wchar_t)); | |
| 166 | if (!filepath) { | |
| 167 | errno = EBADF; | |
| 168 | return -1; /* Out of memory */ | |
| 169 | } | |
| 170 | check = GetFinalPathNameByHandleW(f,filepath,check,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID); | |
| 171 | /* FIXME: last error was set to error 87 (0x57) | |
| 172 | "The parameter is incorrect." for some reason but works out */ | |
| 173 | if (!check) { | |
| 174 | errno = EBADF; | |
| 175 | return -1; /* Error resolving filename */ | |
| 176 | } | |
| 177 | #endif /* _CHECK_SPACE_BY_VISTA_METHOD_ */ | |
| 178 | ||
| 179 | #if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) | |
| 180 | LPWSTR filepath = NULL; | |
| 181 | filepath = xp_getfilepath(f,currentsize); | |
| 182 | ||
| 183 | /* Get durectory path */ | |
| 184 | dirpath = getdirpath(filepath); | |
| 185 | free(filepath); | |
| 186 | filepath = NULL; | |
| 187 | if (!dirpath) { | |
| 188 | errno = EBADF; | |
| 189 | return -1; /* Out of memory */ | |
| 190 | } | |
| 191 | #endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */ | |
| 192 | ||
| 193 | #if _CHECK_SPACE_BY_VOLUME_METHOD_ | |
| 194 | if(!GetFileInformationByHandle(f,&fileinfo)) { | |
| 195 | errno = EINVAL; | |
| 196 | return -1; /* Resolution failure */ | |
| 197 | } | |
| 198 | ||
| 199 | volumeid = calloc(51,sizeof(wchar_t)); | |
| 200 | volumepath = calloc(MAX_PATH+2,sizeof(wchar_t)); | |
| 201 | if(!volumeid || !volumepath) { | |
| 202 | errno = EBADF; | |
| 203 | return -1; /* Out of memory */ | |
| 204 | } | |
| 205 | ||
| 206 | dirpath = NULL; | |
| 207 | ||
| 208 | vol = FindFirstVolumeW(volumeid,50); | |
| 209 | /* wprintf(L"%d - %ws\n",wcslen(volumeid),volumeid); */ | |
| 210 | do { | |
| 211 | check = GetVolumeInformationW(volumeid,volumepath,MAX_PATH+1,&volumeserial,NULL,NULL,NULL,0); | |
| 212 | /* wprintf(L"GetVolumeInformationW %d id %ws path %ws error %d\n",check,volumeid,volumepath,GetLastError()); */ | |
| 213 | if(volumeserial == fileinfo.dwVolumeSerialNumber) { | |
| 214 | dirpath = volumeid; | |
| 215 | break; | |
| 216 | } | |
| 217 | } while (FindNextVolumeW(vol,volumeid,50)); | |
| 218 | FindVolumeClose(vol); | |
| 219 | ||
| 220 | if(!dirpath) free(volumeid); /* we found the volume */ | |
| 221 | free(volumepath); | |
| 222 | #endif /* _CHECK_SPACE_BY_VOLUME_METHOD_ */ | |
| 223 | ||
| 224 | /* Get available free space */ | |
| 225 | check = GetDiskFreeSpaceExW(dirpath,&freespace,NULL,NULL); | |
| 226 | //wprintf(L"freespace %I64u\n",freespace); | |
| 227 | free(dirpath); | |
| 228 | if(!check) { | |
| 229 | errno = EFBIG; | |
| 230 | return -1; /* Error getting free space */ | |
| 231 | } | |
| 232 | ||
| 233 | /* Check space requirements */ | |
| 234 | if ((requiredspace - currentsize.QuadPart) > freespace.QuadPart) | |
| 235 | { | |
| 236 | errno = EFBIG; /* File too big for disk */ | |
| 237 | return -1; | |
| 238 | } /* We have enough space to truncate/expand */ | |
| 239 | return 0; | |
| 240 | } | |
| 241 | ||
| 242 | int ftruncate64(int __fd, _off64_t __length) { | |
| 243 | HANDLE f; | |
| 244 | LARGE_INTEGER quad; | |
| 245 | DWORD check; | |
| 246 | int ret = 0; | |
| 247 | __int64 pos; | |
| 248 | ||
| 249 | /* Sanity check */ | |
| 250 | if (__length < 0) { | |
| 251 | goto errorout; | |
| 252 | } | |
| 253 | ||
| 254 | /* Get Win32 Handle */ | |
| 255 | if(__fd == -1) { | |
| 256 | goto errorout; | |
| 257 | } | |
| 258 | ||
| 259 | f = (HANDLE)_get_osfhandle(__fd); | |
| 260 | if (f == INVALID_HANDLE_VALUE || (GetFileType(f) != FILE_TYPE_DISK)) { | |
| 261 | errno = EBADF; | |
| 262 | return -1; | |
| 263 | } | |
| 264 | ||
| 265 | ||
| 266 | /* Save position */ | |
| 267 | if((pos = _telli64(__fd)) == -1LL){ | |
| 268 | goto errorout; | |
| 269 | } | |
| 270 | ||
| 271 | /* Check available space */ | |
| 272 | check = checkfreespace(f,__length); | |
| 273 | if (check != 0) { | |
| 274 | return -1; /* Error, errno already set */ | |
| 275 | } | |
| 276 | ||
| 277 | quad.QuadPart = __length; | |
| 278 | check = SetFilePointer(f, (LONG)quad.LowPart, &(quad.HighPart), FILE_BEGIN); | |
| 279 | if (check == INVALID_SET_FILE_POINTER && quad.LowPart != INVALID_SET_FILE_POINTER) { | |
| 280 | switch (GetLastError()) { | |
| 281 | case ERROR_NEGATIVE_SEEK: | |
| 282 | errno = EFBIG; /* file too big? */ | |
| 283 | return -1; | |
| 284 | case INVALID_SET_FILE_POINTER: | |
| 285 | errno = EINVAL; /* shouldn't happen */ | |
| 286 | return -1; | |
| 287 | default: | |
| 288 | errno = EINVAL; /* shouldn't happen */ | |
| 289 | return -1; | |
| 290 | } | |
| 291 | } | |
| 292 | ||
| 293 | check = SetEndOfFile(f); | |
| 294 | if (!check) { | |
| 295 | goto errorout; | |
| 296 | } | |
| 297 | ||
| 298 | if(_lseeki64(__fd,pos,SEEK_SET) == -1LL){ | |
| 299 | goto errorout; | |
| 300 | } | |
| 301 | ||
| 302 | return ret; | |
| 303 | ||
| 304 | errorout: | |
| 305 | errno = EINVAL; | |
| 306 | return -1; | |
| 307 | } | |
| 308 | ||
| 309 | #if (TEST_FTRUNCATE64 == 1) | |
| 310 | int main(){ | |
| 311 | LARGE_INTEGER sz; | |
| 312 | ULARGE_INTEGER freespace; | |
| 313 | int f; | |
| 314 | LPWSTR path, dir; | |
| 315 | sz.QuadPart = 0LL; | |
| 316 | f = _open("XXX.tmp", _O_BINARY|_O_CREAT|_O_RDWR, _S_IREAD | _S_IWRITE); | |
| 317 | wprintf(L"%d\n",ftruncate64(f,12)); | |
| 318 | wprintf(L"%d\n",ftruncate64(f,20)); | |
| 319 | wprintf(L"%d\n",ftruncate64(f,15)); | |
| 320 | /* path = xp_getfilepath((HANDLE)_get_osfhandle(f),sz); | |
| 321 | dir = getdirpath(path); | |
| 322 | GetDiskFreeSpaceExW(dir,&freespace,NULL,NULL); | |
| 323 | wprintf(L"fs - %ws\n",path); | |
| 324 | wprintf(L"dirfs - %ws\n",dir); | |
| 325 | wprintf(L"free - %I64u\n",freespace.QuadPart); | |
| 326 | free(dir); | |
| 327 | free(path);*/ | |
| 328 | _close(f); | |
| 329 | return 0; | |
| 330 | } | |
| 331 | #endif /* TEST_FTRUNCATE64 */ | |
| 332 | ||
| 333 | #if (TEST_FTRUNCATE64 == 2) | |
| 334 | int main() { | |
| 335 | FILE *f; | |
| 336 | int fd; | |
| 337 | char buf[100]; | |
| 338 | int cnt; | |
| 339 | unlink("test.out"); | |
| 340 | f = fopen("test.out","w+"); | |
| 341 | fd = fileno(f); | |
| 342 | write(fd,"abc",3); | |
| 343 | fflush(f); | |
| 344 | printf ("err: %d\n", ftruncate64(fd,10)); | |
| 345 | cnt = read(fd,buf,100); | |
| 346 | printf("cnt = %d\n",cnt); | |
| 347 | return 0; | |
| 348 | } | |
| 349 | #endif /* TEST_FTRUNCATE64 */ | |
| 350 | ||
| 351 | #if (TEST_FTRUNCATE64 == 3) | |
| 352 | int main() { | |
| 353 | FILE *f; | |
| 354 | int fd; | |
| 355 | char buf[100]; | |
| 356 | int cnt; | |
| 357 | unlink("test.out"); | |
| 358 | f = fopen("test.out","w+"); | |
| 359 | fd = fileno(f); | |
| 360 | write(fd,"abc",3); | |
| 361 | fflush(f); | |
| 362 | ftruncate64(fd,0); | |
| 363 | write(fd,"def",3); | |
| 364 | fclose(f); | |
| 365 | f = fopen("test.out","r"); | |
| 366 | cnt = fread(buf,1,100,f); | |
| 367 | printf("cnt = %d\n",cnt); | |
| 368 | return 0; | |
| 369 | } | |
| 370 | #endif /* TEST_FTRUNCATE64 */ | |
| 371 |
lib/libc/mingw/stdio/lseek64.c deleted-12| ... | ... | @@ -1,12 +0,0 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | #include <io.h> | |
| 7 | ||
| 8 | _off64_t lseek64(int fd,_off64_t offset, int whence) | |
| 9 | { | |
| 10 | return _lseeki64(fd, (_off64_t) offset, whence); | |
| 11 | } | |
| 12 |
lib/libc/mingw/stdio/mingw_ftruncate64.c created+380| ... | ... | @@ -0,0 +1,380 @@ |
| 1 | #ifdef TEST_FTRUNCATE64 | |
| 2 | #include <fcntl.h> | |
| 3 | #include <sys/stat.h> | |
| 4 | #endif /* TEST_FTRUNCATE64 */ | |
| 5 | ||
| 6 | #include <stdio.h> | |
| 7 | #include <unistd.h> | |
| 8 | #include <io.h> | |
| 9 | #include <stdlib.h> | |
| 10 | #include <errno.h> | |
| 11 | #include <wchar.h> | |
| 12 | #include <windows.h> | |
| 13 | #include <psapi.h> | |
| 14 | ||
| 15 | #if 0 | |
| 16 | /* Mutually exclusive methods | |
| 17 | We check disk space as truncating more than the allowed space results | |
| 18 | in file getting mysteriously deleted | |
| 19 | */ | |
| 20 | #define _CHECK_SPACE_BY_VOLUME_METHOD_ 1 /* Needs to walk through all volumes */ | |
| 21 | #define _CHECK_SPACE_BY_PSAPI_METHOD_ 0 /* Requires psapi.dll */ | |
| 22 | #define _CHECK_SPACE_BY_VISTA_METHOD_ 0 /* Won't work on XP */ | |
| 23 | ||
| 24 | #if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) /* Retrive actual volume path */ | |
| 25 | static LPWSTR getdirpath(const LPWSTR __str){ | |
| 26 | int len, walk = 0; | |
| 27 | LPWSTR dirname; | |
| 28 | while (__str[walk] != L'\0'){ | |
| 29 | walk++; | |
| 30 | if (__str[walk] == L'\\') len = walk + 1; | |
| 31 | } | |
| 32 | dirname = calloc(len + 1, sizeof(wchar_t)); | |
| 33 | if (!dirname) return dirname; /* memory error */ | |
| 34 | return wcsncpy(dirname,__str,len); | |
| 35 | } | |
| 36 | ||
| 37 | static LPWSTR xp_normalize_fn(const LPWSTR fn) { | |
| 38 | DWORD len, err, walker, isfound; | |
| 39 | LPWSTR drives = NULL; | |
| 40 | LPWSTR target = NULL; | |
| 41 | LPWSTR ret = NULL; | |
| 42 | wchar_t tmplt[3] = L" :"; /* Template */ | |
| 43 | ||
| 44 | /*Get list of drive letters */ | |
| 45 | len = GetLogicalDriveStringsW(0,NULL); | |
| 46 | drives = calloc(len,sizeof(wchar_t)); | |
| 47 | if (!drives) return NULL; | |
| 48 | len = GetLogicalDriveStringsW(len,drives); | |
| 49 | ||
| 50 | /*Allocatate memory */ | |
| 51 | target = calloc(MAX_PATH + 1,sizeof(wchar_t)); | |
| 52 | if (!target) { | |
| 53 | free(drives); | |
| 54 | return NULL; | |
| 55 | } | |
| 56 | ||
| 57 | walker = 0; | |
| 58 | while ((walker < len) && !(drives[walker] == L'\0' && drives[walker + 1] == L'\0')){ | |
| 59 | /* search through alphabets */ | |
| 60 | if(iswalpha(drives[walker])) { | |
| 61 | *tmplt = drives[walker]; /* Put drive letter */ | |
| 62 | err = QueryDosDeviceW(tmplt,target,MAX_PATH); | |
| 63 | if(!err) { | |
| 64 | free(drives); | |
| 65 | free(target); | |
| 66 | return NULL; | |
| 67 | } | |
| 68 | if( _wcsnicmp(target,fn,wcslen(target)) == 0) break; | |
| 69 | wmemset(target,L'\0',MAX_PATH); | |
| 70 | walker++; | |
| 71 | } else walker++; | |
| 72 | } | |
| 73 | ||
| 74 | if (!iswalpha(*tmplt)) { | |
| 75 | free(drives); | |
| 76 | free(target); | |
| 77 | return NULL; /* Finish walking without finding correct drive */ | |
| 78 | } | |
| 79 | ||
| 80 | ret = calloc(MAX_PATH + 1,sizeof(wchar_t)); | |
| 81 | if (!ret) { | |
| 82 | free(drives); | |
| 83 | free(target); | |
| 84 | return NULL; | |
| 85 | } | |
| 86 | _snwprintf(ret,MAX_PATH,L"%ls%ls",tmplt,fn+wcslen(target)); | |
| 87 | ||
| 88 | return ret; | |
| 89 | } | |
| 90 | ||
| 91 | /* XP method of retrieving filename from handles, based on: | |
| 92 | http://msdn.microsoft.com/en-us/library/aa366789%28VS.85%29.aspx | |
| 93 | */ | |
| 94 | static LPWSTR xp_getfilepath(const HANDLE f, const LARGE_INTEGER fsize){ | |
| 95 | HANDLE hFileMap = NULL; | |
| 96 | void* pMem = NULL; | |
| 97 | LPWSTR temp, ret; | |
| 98 | DWORD err; | |
| 99 | ||
| 100 | temp = calloc(MAX_PATH + 1, sizeof(wchar_t)); | |
| 101 | if (!temp) goto errormap; | |
| 102 | ||
| 103 | /* CreateFileMappingW limitation: Cannot map 0 byte files, so extend it to 1 byte */ | |
| 104 | if (!fsize.QuadPart) { | |
| 105 | SetFilePointer(f, 1, NULL, FILE_BEGIN); | |
| 106 | err = SetEndOfFile(f); | |
| 107 | if(!temp) goto errormap; | |
| 108 | } | |
| 109 | ||
| 110 | hFileMap = CreateFileMappingW(f,NULL,PAGE_READONLY,0,1,NULL); | |
| 111 | if(!hFileMap) goto errormap; | |
| 112 | pMem = MapViewOfFile(hFileMap, FILE_MAP_READ, 0, 0, 1); | |
| 113 | if(!pMem) goto errormap; | |
| 114 | err = GetMappedFileNameW(GetCurrentProcess(),pMem,temp,MAX_PATH); | |
| 115 | if(!err) goto errormap; | |
| 116 | ||
| 117 | if (pMem) UnmapViewOfFile(pMem); | |
| 118 | if (hFileMap) CloseHandle(hFileMap); | |
| 119 | ret = xp_normalize_fn(temp); | |
| 120 | free(temp); | |
| 121 | return ret; | |
| 122 | ||
| 123 | errormap: | |
| 124 | if (temp) free(temp); | |
| 125 | if (pMem) UnmapViewOfFile(pMem); | |
| 126 | if (hFileMap) CloseHandle(hFileMap); | |
| 127 | errno = EBADF; | |
| 128 | return NULL; | |
| 129 | } | |
| 130 | #endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */ | |
| 131 | ||
| 132 | static int | |
| 133 | checkfreespace (const HANDLE f, const ULONGLONG requiredspace) | |
| 134 | { | |
| 135 | LPWSTR dirpath, volumeid, volumepath; | |
| 136 | ULARGE_INTEGER freespace; | |
| 137 | LARGE_INTEGER currentsize; | |
| 138 | DWORD check, volumeserial; | |
| 139 | BY_HANDLE_FILE_INFORMATION fileinfo; | |
| 140 | HANDLE vol; | |
| 141 | ||
| 142 | /* Get current size */ | |
| 143 | check = GetFileSizeEx (f, &currentsize); | |
| 144 | if (!check) | |
| 145 | { | |
| 146 | errno = EBADF; | |
| 147 | return -1; /* Error checking file size */ | |
| 148 | } | |
| 149 | ||
| 150 | /* Short circuit disk space check if shrink operation */ | |
| 151 | if ((ULONGLONG)currentsize.QuadPart >= requiredspace) | |
| 152 | return 0; | |
| 153 | ||
| 154 | /* We check available space to user before attempting to truncate */ | |
| 155 | ||
| 156 | #if (_CHECK_SPACE_BY_VISTA_METHOD_ == 1) | |
| 157 | /* Get path length */ | |
| 158 | DWORD err; | |
| 159 | LPWSTR filepath = NULL; | |
| 160 | check = GetFinalPathNameByHandleW(f,filepath,0,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID); | |
| 161 | err = GetLastError(); | |
| 162 | if (err == ERROR_PATH_NOT_FOUND || err == ERROR_INVALID_PARAMETER) { | |
| 163 | errno = EINVAL; | |
| 164 | return -1; /* IO error */ | |
| 165 | } | |
| 166 | filepath = calloc(check + 1,sizeof(wchar_t)); | |
| 167 | if (!filepath) { | |
| 168 | errno = EBADF; | |
| 169 | return -1; /* Out of memory */ | |
| 170 | } | |
| 171 | check = GetFinalPathNameByHandleW(f,filepath,check,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID); | |
| 172 | /* FIXME: last error was set to error 87 (0x57) | |
| 173 | "The parameter is incorrect." for some reason but works out */ | |
| 174 | if (!check) { | |
| 175 | errno = EBADF; | |
| 176 | return -1; /* Error resolving filename */ | |
| 177 | } | |
| 178 | #endif /* _CHECK_SPACE_BY_VISTA_METHOD_ */ | |
| 179 | ||
| 180 | #if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) | |
| 181 | LPWSTR filepath = NULL; | |
| 182 | filepath = xp_getfilepath(f,currentsize); | |
| 183 | ||
| 184 | /* Get durectory path */ | |
| 185 | dirpath = getdirpath(filepath); | |
| 186 | free(filepath); | |
| 187 | filepath = NULL; | |
| 188 | if (!dirpath) { | |
| 189 | errno = EBADF; | |
| 190 | return -1; /* Out of memory */ | |
| 191 | } | |
| 192 | #endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */ | |
| 193 | ||
| 194 | #if _CHECK_SPACE_BY_VOLUME_METHOD_ | |
| 195 | if(!GetFileInformationByHandle(f,&fileinfo)) { | |
| 196 | errno = EINVAL; | |
| 197 | return -1; /* Resolution failure */ | |
| 198 | } | |
| 199 | ||
| 200 | volumeid = calloc(51,sizeof(wchar_t)); | |
| 201 | volumepath = calloc(MAX_PATH+2,sizeof(wchar_t)); | |
| 202 | if(!volumeid || !volumepath) { | |
| 203 | errno = EBADF; | |
| 204 | return -1; /* Out of memory */ | |
| 205 | } | |
| 206 | ||
| 207 | dirpath = NULL; | |
| 208 | ||
| 209 | vol = FindFirstVolumeW(volumeid,50); | |
| 210 | /* wprintf(L"%d - %ls\n",wcslen(volumeid),volumeid); */ | |
| 211 | do { | |
| 212 | check = GetVolumeInformationW(volumeid,volumepath,MAX_PATH+1,&volumeserial,NULL,NULL,NULL,0); | |
| 213 | /* wprintf(L"GetVolumeInformationW %d id %ls path %ls error %d\n",check,volumeid,volumepath,GetLastError()); */ | |
| 214 | if(volumeserial == fileinfo.dwVolumeSerialNumber) { | |
| 215 | dirpath = volumeid; | |
| 216 | break; | |
| 217 | } | |
| 218 | } while (FindNextVolumeW(vol,volumeid,50)); | |
| 219 | FindVolumeClose(vol); | |
| 220 | ||
| 221 | if(!dirpath) free(volumeid); /* we found the volume */ | |
| 222 | free(volumepath); | |
| 223 | #endif /* _CHECK_SPACE_BY_VOLUME_METHOD_ */ | |
| 224 | ||
| 225 | /* Get available free space */ | |
| 226 | check = GetDiskFreeSpaceExW(dirpath,&freespace,NULL,NULL); | |
| 227 | //wprintf(L"freespace %I64u\n",freespace); | |
| 228 | free(dirpath); | |
| 229 | if(!check) { | |
| 230 | errno = EFBIG; | |
| 231 | return -1; /* Error getting free space */ | |
| 232 | } | |
| 233 | ||
| 234 | /* Check space requirements */ | |
| 235 | if ((requiredspace - currentsize.QuadPart) > freespace.QuadPart) | |
| 236 | { | |
| 237 | errno = EFBIG; /* File too big for disk */ | |
| 238 | return -1; | |
| 239 | } /* We have enough space to truncate/expand */ | |
| 240 | return 0; | |
| 241 | } | |
| 242 | #endif | |
| 243 | ||
| 244 | int __cdecl __mingw_ftruncate64(int __fd, _off64_t __length); | |
| 245 | int __cdecl __mingw_ftruncate64(int __fd, _off64_t __length) { | |
| 246 | HANDLE f; | |
| 247 | LARGE_INTEGER quad; | |
| 248 | DWORD check; | |
| 249 | int ret = 0; | |
| 250 | __int64 pos; | |
| 251 | ||
| 252 | /* Sanity check */ | |
| 253 | if (__length < 0) { | |
| 254 | goto errorout; | |
| 255 | } | |
| 256 | ||
| 257 | /* Get Win32 Handle */ | |
| 258 | if(__fd == -1) { | |
| 259 | goto errorout; | |
| 260 | } | |
| 261 | ||
| 262 | f = (HANDLE)_get_osfhandle(__fd); | |
| 263 | if (f == INVALID_HANDLE_VALUE || (GetFileType(f) != FILE_TYPE_DISK)) { | |
| 264 | errno = EBADF; | |
| 265 | return -1; | |
| 266 | } | |
| 267 | ||
| 268 | ||
| 269 | /* Save position */ | |
| 270 | if((pos = _telli64(__fd)) == -1LL){ | |
| 271 | goto errorout; | |
| 272 | } | |
| 273 | ||
| 274 | #if 0 | |
| 275 | /* Check available space */ | |
| 276 | check = checkfreespace(f,__length); | |
| 277 | if (check != 0) { | |
| 278 | return -1; /* Error, errno already set */ | |
| 279 | } | |
| 280 | #endif | |
| 281 | ||
| 282 | quad.QuadPart = __length; | |
| 283 | check = SetFilePointer(f, (LONG)quad.LowPart, &(quad.HighPart), FILE_BEGIN); | |
| 284 | if (check == INVALID_SET_FILE_POINTER && quad.LowPart != INVALID_SET_FILE_POINTER) { | |
| 285 | switch (GetLastError()) { | |
| 286 | case ERROR_NEGATIVE_SEEK: | |
| 287 | errno = EFBIG; /* file too big? */ | |
| 288 | return -1; | |
| 289 | case INVALID_SET_FILE_POINTER: | |
| 290 | errno = EINVAL; /* shouldn't happen */ | |
| 291 | return -1; | |
| 292 | default: | |
| 293 | errno = EINVAL; /* shouldn't happen */ | |
| 294 | return -1; | |
| 295 | } | |
| 296 | } | |
| 297 | ||
| 298 | check = SetEndOfFile(f); | |
| 299 | if (!check) { | |
| 300 | goto errorout; | |
| 301 | } | |
| 302 | ||
| 303 | if(_lseeki64(__fd,pos,SEEK_SET) == -1LL){ | |
| 304 | goto errorout; | |
| 305 | } | |
| 306 | ||
| 307 | return ret; | |
| 308 | ||
| 309 | errorout: | |
| 310 | errno = EINVAL; | |
| 311 | return -1; | |
| 312 | } | |
| 313 | ||
| 314 | #ifdef TEST_FTRUNCATE64 | |
| 315 | #define ftruncate64 __mingw_ftruncate64 | |
| 316 | #endif | |
| 317 | ||
| 318 | #if (TEST_FTRUNCATE64 == 1) | |
| 319 | int main(){ | |
| 320 | LARGE_INTEGER sz; | |
| 321 | ULARGE_INTEGER freespace; | |
| 322 | int f; | |
| 323 | LPWSTR path, dir; | |
| 324 | sz.QuadPart = 0LL; | |
| 325 | f = _open("XXX.tmp", _O_BINARY|_O_CREAT|_O_RDWR, _S_IREAD | _S_IWRITE); | |
| 326 | wprintf(L"%d\n",ftruncate64(f,12)); | |
| 327 | wprintf(L"%d\n",ftruncate64(f,20)); | |
| 328 | wprintf(L"%d\n",ftruncate64(f,15)); | |
| 329 | /* path = xp_getfilepath((HANDLE)_get_osfhandle(f),sz); | |
| 330 | dir = getdirpath(path); | |
| 331 | GetDiskFreeSpaceExW(dir,&freespace,NULL,NULL); | |
| 332 | wprintf(L"fs - %ls\n",path); | |
| 333 | wprintf(L"dirfs - %ls\n",dir); | |
| 334 | wprintf(L"free - %I64u\n",freespace.QuadPart); | |
| 335 | free(dir); | |
| 336 | free(path);*/ | |
| 337 | _close(f); | |
| 338 | return 0; | |
| 339 | } | |
| 340 | #endif /* TEST_FTRUNCATE64 */ | |
| 341 | ||
| 342 | #if (TEST_FTRUNCATE64 == 2) | |
| 343 | int main() { | |
| 344 | FILE *f; | |
| 345 | int fd; | |
| 346 | char buf[100]; | |
| 347 | int cnt; | |
| 348 | unlink("test.out"); | |
| 349 | f = fopen("test.out","w+"); | |
| 350 | fd = fileno(f); | |
| 351 | write(fd,"abc",3); | |
| 352 | fflush(f); | |
| 353 | printf ("err: %d\n", ftruncate64(fd,10)); | |
| 354 | cnt = read(fd,buf,100); | |
| 355 | printf("cnt = %d\n",cnt); | |
| 356 | return 0; | |
| 357 | } | |
| 358 | #endif /* TEST_FTRUNCATE64 */ | |
| 359 | ||
| 360 | #if (TEST_FTRUNCATE64 == 3) | |
| 361 | int main() { | |
| 362 | FILE *f; | |
| 363 | int fd; | |
| 364 | char buf[100]; | |
| 365 | int cnt; | |
| 366 | unlink("test.out"); | |
| 367 | f = fopen("test.out","w+"); | |
| 368 | fd = fileno(f); | |
| 369 | write(fd,"abc",3); | |
| 370 | fflush(f); | |
| 371 | ftruncate64(fd,0); | |
| 372 | write(fd,"def",3); | |
| 373 | fclose(f); | |
| 374 | f = fopen("test.out","r"); | |
| 375 | cnt = fread(buf,1,100,f); | |
| 376 | printf("cnt = %d\n",cnt); | |
| 377 | return 0; | |
| 378 | } | |
| 379 | #endif /* TEST_FTRUNCATE64 */ | |
| 380 |
lib/libc/mingw/stdio/mingw_pformat.c+127-24| ... | ... | @@ -66,6 +66,7 @@ |
| 66 | 66 | #include <limits.h> |
| 67 | 67 | #include <locale.h> |
| 68 | 68 | #include <wchar.h> |
| 69 | #include <winternl.h> | |
| 69 | 70 | |
| 70 | 71 | #ifdef __ENABLE_DFP |
| 71 | 72 | #ifndef __STDC_WANT_DEC_FP__ |
| ... | ... | @@ -163,6 +164,12 @@ typedef union ATTRIB_GCC_STRUCT __uI128 { |
| 163 | 164 | #define PFORMAT_XMASK 0x0000000F |
| 164 | 165 | #define PFORMAT_XSHIFT 0x00000004 |
| 165 | 166 | |
| 167 | /* `%b' and `%B' format digit extraction mask, and shift count... | |
| 168 | * (These are constant, and do not propagate through the flags). | |
| 169 | */ | |
| 170 | #define PFORMAT_BMASK 0x00000001 | |
| 171 | #define PFORMAT_BSHIFT 0x00000001 | |
| 172 | ||
| 166 | 173 | /* The radix point character, used in floating point formats, is |
| 167 | 174 | * localised on the basis of the active LC_NUMERIC locale category. |
| 168 | 175 | * It is stored locally, as a `wchar_t' entity, which is converted |
| ... | ... | @@ -361,6 +368,23 @@ void __bigint_to_stringx(const uint32_t *digits, const uint32_t digitlen, char * |
| 361 | 368 | buff[bufflen - 1] = '\0'; |
| 362 | 369 | } |
| 363 | 370 | |
| 371 | /* LSB first, binary version */ | |
| 372 | static | |
| 373 | void __bigint_to_stringb(const uint32_t *digits, const uint32_t digitlen, char *buff, const uint32_t bufflen){ | |
| 374 | const uint32_t digitsize = sizeof(*digits) * 8; | |
| 375 | const uint64_t bits = digitsize * digitlen; | |
| 376 | uint32_t pos = bufflen - 2; | |
| 377 | ||
| 378 | for(uint32_t i = 0; i < bits; i++){ | |
| 379 | buff[pos] = (digits[i / digitsize] & (1 << (i % digitsize))) ? '1' : '0'; | |
| 380 | if(!pos) break; /* sanity check */ | |
| 381 | pos--; | |
| 382 | } | |
| 383 | /* Fill any remaining leading positions with zeros */ | |
| 384 | memset(buff, '0', pos + 1); | |
| 385 | buff[bufflen - 1] = '\0'; | |
| 386 | } | |
| 387 | ||
| 364 | 388 | /* LSB first, octet version */ |
| 365 | 389 | static |
| 366 | 390 | void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char *buff, const uint32_t bufflen){ |
| ... | ... | @@ -377,8 +401,8 @@ void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char * |
| 377 | 401 | pos--; |
| 378 | 402 | } |
| 379 | 403 | } |
| 380 | if(pos < bufflen - 1) | |
| 381 | memset(buff,'0', pos + 1); | |
| 404 | /* Fill any remaining leading positions with zeros */ | |
| 405 | memset(buff, '0', pos + 1); | |
| 382 | 406 | buff[bufflen - 1] = '\0'; |
| 383 | 407 | } |
| 384 | 408 | #endif /* defined(__ENABLE_PRINTF128) */ |
| ... | ... | @@ -569,8 +593,8 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream ) |
| 569 | 593 | * output quota is honoured. |
| 570 | 594 | */ |
| 571 | 595 | char buf[16]; |
| 572 | mbstate_t state; | |
| 573 | int len = wcrtomb(buf, L'\0', &state); | |
| 596 | mbstate_t state = {0}; | |
| 597 | int len; | |
| 574 | 598 | |
| 575 | 599 | if( (stream->precision >= 0) && (count > stream->precision) ) |
| 576 | 600 | /* |
| ... | ... | @@ -657,7 +681,7 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream ) |
| 657 | 681 | __pformat_putc( '\x20', stream ); |
| 658 | 682 | |
| 659 | 683 | len = count; |
| 660 | while(len-- > 0 && *s != 0) | |
| 684 | while(len-- > 0) | |
| 661 | 685 | { |
| 662 | 686 | __pformat_putc(*s++, stream); |
| 663 | 687 | } |
| ... | ... | @@ -752,12 +776,12 @@ void __pformat_int( __pformat_intarg_t value, __pformat_t *stream ) |
| 752 | 776 | */ |
| 753 | 777 | __bigint_to_string(value.__pformat_u128_t.t128_2.digits32, |
| 754 | 778 | 4, tmp_buff, bufflen); |
| 755 | __bigint_trim_leading_zeroes(tmp_buff,1); | |
| 779 | __bigint_trim_leading_zeroes(tmp_buff, 0); | |
| 756 | 780 | |
| 757 | 781 | memset(p,0,bufflen); |
| 758 | 782 | for(int32_t i = strlen(tmp_buff) - 1; i >= 0; i--){ |
| 759 | if ( i && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0 | |
| 760 | && (i % 4) == 3) | |
| 783 | if (p != buf && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0 | |
| 784 | && ((p - buf) % 4) == 3) | |
| 761 | 785 | { |
| 762 | 786 | *p++ = ','; |
| 763 | 787 | } |
| ... | ... | @@ -883,7 +907,7 @@ while( value.__pformat_ullong_t ) |
| 883 | 907 | static |
| 884 | 908 | void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream ) |
| 885 | 909 | { |
| 886 | /* Handler for `%o', `%p', `%x' and `%X' conversions. | |
| 910 | /* Handler for `%o', `%p', `%x', `%X', `%b' and `%B' conversions. | |
| 887 | 911 | * |
| 888 | 912 | * These can be implemented using a simple `mask and shift' strategy; |
| 889 | 913 | * set up the mask and shift values appropriate to the conversion format, |
| ... | ... | @@ -891,7 +915,8 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream ) |
| 891 | 915 | * digits of the formatted value, in preparation for output. |
| 892 | 916 | */ |
| 893 | 917 | int width; |
| 894 | int shift = (fmt == 'o') ? PFORMAT_OSHIFT : PFORMAT_XSHIFT; | |
| 918 | int shift = (fmt == 'o') ? PFORMAT_OSHIFT : | |
| 919 | (fmt == 'b' || fmt == 'B') ? PFORMAT_BSHIFT : PFORMAT_XSHIFT; | |
| 895 | 920 | int bufflen = __pformat_int_bufsiz(2, shift, stream); |
| 896 | 921 | char *buf = NULL; |
| 897 | 922 | #ifdef __ENABLE_PRINTF128 |
| ... | ... | @@ -904,16 +929,19 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream ) |
| 904 | 929 | tmp_buf = alloca(bufflen); |
| 905 | 930 | if(fmt == 'o'){ |
| 906 | 931 | __bigint_to_stringo(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen); |
| 932 | } else if(fmt == 'b' || fmt == 'B'){ | |
| 933 | __bigint_to_stringb(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen); | |
| 907 | 934 | } else { |
| 908 | 935 | __bigint_to_stringx(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen, !(fmt & PFORMAT_XCASE)); |
| 909 | 936 | } |
| 910 | 937 | __bigint_trim_leading_zeroes(tmp_buf,0); |
| 911 | 938 | |
| 912 | 939 | memset(buf,0,bufflen); |
| 913 | for(int32_t i = strlen(tmp_buf); i >= 0; i--) | |
| 940 | for(int32_t i = strlen(tmp_buf)-1; i >= 0; i--) | |
| 914 | 941 | *p++ = tmp_buf[i]; |
| 915 | 942 | #else |
| 916 | int mask = (fmt == 'o') ? PFORMAT_OMASK : PFORMAT_XMASK; | |
| 943 | int mask = (fmt == 'o') ? PFORMAT_OMASK : | |
| 944 | (fmt == 'b' || fmt == 'B') ? PFORMAT_BMASK : PFORMAT_XMASK; | |
| 917 | 945 | while( value.__pformat_ullong_t ) |
| 918 | 946 | { |
| 919 | 947 | /* Encode the specified non-zero input value as a sequence of digits, |
| ... | ... | @@ -975,7 +1003,7 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream ) |
| 975 | 1003 | if( ((width = stream->width) > 0) |
| 976 | 1004 | && (fmt != 'o') && (stream->flags & PFORMAT_HASHED) ) |
| 977 | 1005 | /* |
| 978 | * For `%#x' or `%#X' formats, (which have the `#' flag set), | |
| 1006 | * For `%#x', `%#X', `%#b' or `%#B' formats, (which have the `#' flag set), | |
| 979 | 1007 | * further reduce the padding width to accommodate the radix |
| 980 | 1008 | * indicating prefix. |
| 981 | 1009 | */ |
| ... | ... | @@ -1468,7 +1496,10 @@ void __pformat_emit_efloat( int sign, char *value, int e, __pformat_t *stream ) |
| 1468 | 1496 | * include the following exponent). |
| 1469 | 1497 | */ |
| 1470 | 1498 | int exp_width = 1; |
| 1471 | __pformat_intarg_t exponent; exponent.__pformat_llong_t = e -= 1; | |
| 1499 | __pformat_intarg_t exponent; | |
| 1500 | e -= 1; | |
| 1501 | exponent.__pformat_u128_t.t128.digits[1] = e < 0 ? -1 : 0; | |
| 1502 | exponent.__pformat_u128_t.t128.digits[0] = e; | |
| 1472 | 1503 | |
| 1473 | 1504 | /* Determine how many digit positions are required for the exponent. |
| 1474 | 1505 | */ |
| ... | ... | @@ -1881,14 +1912,15 @@ void __pformat_gfloat( long double x, __pformat_t *stream ) |
| 1881 | 1912 | * precede the radix point, but we truncate any balance following |
| 1882 | 1913 | * it, to suppress output of non-significant trailing zeros... |
| 1883 | 1914 | */ |
| 1884 | if( ((stream->precision = strlen( value ) - intlen) < 0) | |
| 1885 | /* | |
| 1886 | * This may require a compensating adjustment to the field | |
| 1887 | * width, to accommodate significant trailing zeros, which | |
| 1888 | * precede the radix point... | |
| 1889 | */ | |
| 1890 | && (stream->width > 0) ) | |
| 1891 | stream->width += stream->precision; | |
| 1915 | stream->precision = strlen( value ) - intlen; | |
| 1916 | ||
| 1917 | /* When the mantissa is shorter than the number of integer digits | |
| 1918 | * (e.g., 100000 has mantissa "1" but requires 6 digit positions), | |
| 1919 | * precision becomes negative. Clamp to zero to represent no | |
| 1920 | * fractional digits. | |
| 1921 | */ | |
| 1922 | if( stream->precision < 0 ) | |
| 1923 | stream->precision = 0; | |
| 1892 | 1924 | |
| 1893 | 1925 | /* Now, we format the result as any other fixed point value. |
| 1894 | 1926 | */ |
| ... | ... | @@ -1945,7 +1977,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream ) |
| 1945 | 1977 | * representation of the argument value. |
| 1946 | 1978 | */ |
| 1947 | 1979 | char buf[18 + 6], *p = buf; |
| 1948 | __pformat_intarg_t exponent; short exp_width = 2; | |
| 1980 | short exp_width = 2; | |
| 1949 | 1981 | |
| 1950 | 1982 | if (value.__pformat_fpreg_mantissa != 0 || |
| 1951 | 1983 | value.__pformat_fpreg_exponent != 0) |
| ... | ... | @@ -2197,6 +2229,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream ) |
| 2197 | 2229 | stream->width += exp_width; |
| 2198 | 2230 | stream->flags |= PFORMAT_SIGNED; |
| 2199 | 2231 | /* sign extend */ |
| 2232 | __pformat_intarg_t exponent; | |
| 2200 | 2233 | exponent.__pformat_u128_t.t128.digits[1] = (value.__pformat_fpreg_exponent < 0) ? -1 : 0; |
| 2201 | 2234 | exponent.__pformat_u128_t.t128.digits[0] = value.__pformat_fpreg_exponent; |
| 2202 | 2235 | __pformat_int( exponent, stream ); |
| ... | ... | @@ -2506,6 +2539,64 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv) |
| 2506 | 2539 | */ |
| 2507 | 2540 | __pformat_puts( va_arg( argv, char * ), &stream ); |
| 2508 | 2541 | goto format_scan; |
| 2542 | ||
| 2543 | case 'Z': | |
| 2544 | /* | |
| 2545 | * The logic for `%Z` length modifier is quite complicated. | |
| 2546 | * | |
| 2547 | * for printf: | |
| 2548 | * `%Z` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120 | |
| 2549 | * `%hZ` - ANSI_STRING | |
| 2550 | * `%lZ` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120 | |
| 2551 | * `%wZ` - UNICODE_STRING | |
| 2552 | * | |
| 2553 | * for wprintf: | |
| 2554 | * `%Z` - ANSI_STRING | |
| 2555 | * `%hZ` - ANSI_STRING | |
| 2556 | * `%lZ` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120 | |
| 2557 | * `%wZ` - UNICODE_STRING | |
| 2558 | * | |
| 2559 | * There are some other changes between versions regarding nul chars. | |
| 2560 | * - msvcrt since Vista, msvcr80+ and UCRT do not accept nul chars in ANSI_STRING for wprintf. | |
| 2561 | * If encountering a nul char, it stops processing the format string and returns -1. | |
| 2562 | * - msvcrt before Vista, crtdll and msvcrt10 accept nul char in ANSI_STRING for wprintf, | |
| 2563 | * but the first nul char and everything after it in ANSI_STRING content is discarded. | |
| 2564 | * - msvcrt20 does not support %Z format at all. | |
| 2565 | * - msvcrt40 from Visual C++ 4.0 and in Win9x systems does not support %Z format at all. | |
| 2566 | * - msvcrt40 in WinNT systems forwards calls to msvcrt, so it behaves as msvcrt described above. | |
| 2567 | * - ANSI_STRING for printf, and UNICODE_STRING for both printf and wprintf work fine | |
| 2568 | * in all versions, every nul byte and all following chars in the ANSI_STRING/UNICODE_STRING | |
| 2569 | * are processed and printed. | |
| 2570 | * | |
| 2571 | * This mingw-w64 implementation uses UCRT behavior of length modifiers. | |
| 2572 | */ | |
| 2573 | if( length == PFORMAT_LENGTH_INT ) | |
| 2574 | { | |
| 2575 | #ifndef __BUILD_WIDEAPI | |
| 2576 | length = PFORMAT_LENGTH_LONG; | |
| 2577 | #else | |
| 2578 | length = PFORMAT_LENGTH_SHORT; | |
| 2579 | #endif | |
| 2580 | } | |
| 2581 | ||
| 2582 | if( (length == PFORMAT_LENGTH_LONG) | |
| 2583 | || (length == PFORMAT_LENGTH_LLONG) | |
| 2584 | ) | |
| 2585 | { | |
| 2586 | const UNICODE_STRING *s = va_arg( argv, UNICODE_STRING * ); | |
| 2587 | const wchar_t *buf = (s && s->Buffer) ? (const wchar_t *)s->Buffer : L"(null)"; | |
| 2588 | const int len = (s && s->Buffer) ? s->Length / sizeof(wchar_t) : ( sizeof( "(null)" ) - 1 ); | |
| 2589 | __pformat_wputchars( buf, len, &stream ); | |
| 2590 | } | |
| 2591 | else | |
| 2592 | { | |
| 2593 | const ANSI_STRING *s = va_arg( argv, ANSI_STRING * ); | |
| 2594 | const char *buf = (s && s->Buffer) ? (const char *)s->Buffer : "(null)"; | |
| 2595 | const int len = (s && s->Buffer) ? s->Length : ( sizeof( "(null)" ) - 1 ); | |
| 2596 | __pformat_putchars( buf, len, &stream ); | |
| 2597 | } | |
| 2598 | goto format_scan; | |
| 2599 | ||
| 2509 | 2600 | case 'm': /* strerror (errno) */ |
| 2510 | 2601 | __pformat_puts (strerror (saved_errno), &stream); |
| 2511 | 2602 | goto format_scan; |
| ... | ... | @@ -2514,8 +2605,10 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv) |
| 2514 | 2605 | case 'u': |
| 2515 | 2606 | case 'x': |
| 2516 | 2607 | case 'X': |
| 2608 | case 'b': | |
| 2609 | case 'B': | |
| 2517 | 2610 | /* |
| 2518 | * Unsigned integer values; octal, decimal or hexadecimal format... | |
| 2611 | * Unsigned integer values; octal, decimal, hexadecimal or binary format... | |
| 2519 | 2612 | */ |
| 2520 | 2613 | stream.flags &= ~PFORMAT_POSITIVE; |
| 2521 | 2614 | #if __ENABLE_PRINTF128 |
| ... | ... | @@ -2977,6 +3070,16 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv) |
| 2977 | 3070 | state = PFORMAT_END; |
| 2978 | 3071 | break; |
| 2979 | 3072 | |
| 3073 | case 'w': | |
| 3074 | /* | |
| 3075 | * Identify the appropriate argument as a wide | |
| 3076 | * character or wide string when associated with | |
| 3077 | * `%c`, `%C`, `%s' or `%S`. | |
| 3078 | */ | |
| 3079 | length = PFORMAT_LENGTH_LONG; | |
| 3080 | state = PFORMAT_END; | |
| 3081 | break; | |
| 3082 | ||
| 2980 | 3083 | case 'L': |
| 2981 | 3084 | /* |
| 2982 | 3085 | * Identify the appropriate argument as a `long double', |
lib/libc/mingw/stdio/mingw_sformat.c+4| ... | ... | @@ -927,6 +927,7 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp) |
| 927 | 927 | 	case 'o': case 'p': |
| 928 | 928 | 	case 'u': |
| 929 | 929 | 	case 'x': case 'X': |
| 930 | 	case 'b': case 'B': | |
| 930 | 931 | 	 switch (fc) |
| 931 | 932 | 	 { |
| 932 | 933 | 	 case 'd': |
| ... | ... | @@ -954,6 +955,9 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp) |
| 954 | 955 | 	 case 'x': case 'X': |
| 955 | 956 | 	 base = 16; |
| 956 | 957 | 	 break; |
| 958 | 	 case 'b': case 'B': | |
| 959 | 	 base = 2; | |
| 960 | 	 break; | |
| 957 | 961 | 	 } |
| 958 | 962 | |
| 959 | 963 | 	 if ((c = in_ch (s, &read_in)) == EOF) |
lib/libc/mingw/stdio/mingw_vsnprintf.c+3-4| ... | ... | @@ -57,11 +57,10 @@ int __cdecl __vsnprintf(APICHAR *buf, size_t length, const APICHAR *fmt, va_list |
| 57 | 57 | buf[retval < (int) length ? retval : (int)length] = '\0'; |
| 58 | 58 | |
| 59 | 59 | #if defined(__BUILD_WIDEAPI) && defined(__BUILD_WIDEAPI_ISO) |
| 60 | /* For wide api ISO C95+ vswprintf() when requested length | |
| 61 | * is equal or larger than buffer length, returns negative | |
| 62 | * value as required by ISO C95+. | |
| 60 | /* ISO C95+ fails when n or more data wide chars are needed. length was | |
| 61 | * already decremented once for the terminator, so use > not >= here. | |
| 63 | 62 | */ |
| 64 | if( retval >= (int) length ) | |
| 63 | if( retval > (int) length ) | |
| 65 | 64 | retval = -1; |
| 66 | 65 | #endif |
| 67 | 66 |
lib/libc/mingw/stdio/msvcr80plus_ftruncate64.c created+30| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #include <errno.h> | |
| 8 | #include <io.h> | |
| 9 | #include <unistd.h> | |
| 10 | ||
| 11 | int __cdecl ftruncate64(int fd, _off64_t length) | |
| 12 | { | |
| 13 | errno_t error; | |
| 14 | ||
| 15 | /* _chsize_s calls invalid parameter exception handler, so validate input parameters */ | |
| 16 | if (fd < 0) { | |
| 17 | errno = EBADF; | |
| 18 | return -1; | |
| 19 | } | |
| 20 | if (length < 0) { | |
| 21 | errno = EINVAL; | |
| 22 | return -1; | |
| 23 | } | |
| 24 | error = _chsize_s(fd, length); | |
| 25 | if (error) { | |
| 26 | errno = error; | |
| 27 | return -1; | |
| 28 | } | |
| 29 | return 0; | |
| 30 | } |
lib/libc/mingw/stdio/truncate.c-11| ... | ... | @@ -12,14 +12,3 @@ int truncate(const char *pathname, _off_t len){ |
| 12 | 12 | errno = err; |
| 13 | 13 | return ret; |
| 14 | 14 | } |
| 15 | ||
| 16 | int truncate64(const char *pathname, _off64_t len){ | |
| 17 | int ret, err; | |
| 18 | int fd = _open(pathname,_O_BINARY|_O_RDWR); | |
| 19 | if (fd == -1) return fd; | |
| 20 | ret = ftruncate64(fd,len); | |
| 21 | err = errno; | |
| 22 | _close(fd); | |
| 23 | errno = err; | |
| 24 | return ret; | |
| 25 | } |
lib/libc/mingw/stdio/truncate64.c created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | #include <unistd.h> | |
| 2 | #include <fcntl.h> | |
| 3 | #include <errno.h> | |
| 4 | ||
| 5 | int truncate64(const char *pathname, _off64_t len){ | |
| 6 | int ret, err; | |
| 7 | int fd = _open(pathname,_O_BINARY|_O_RDWR); | |
| 8 | if (fd == -1) return fd; | |
| 9 | ret = ftruncate64(fd,len); | |
| 10 | err = errno; | |
| 11 | _close(fd); | |
| 12 | errno = err; | |
| 13 | return ret; | |
| 14 | } |
lib/libc/mingw/stdio/ucrt___local_stdio_printf_options.c+1-1| ... | ... | @@ -10,6 +10,6 @@ |
| 10 | 10 | |
| 11 | 11 | static unsigned __int64 options = _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS | _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING; |
| 12 | 12 | |
| 13 | unsigned __int64* __local_stdio_printf_options(void) { | |
| 13 | unsigned __int64* __cdecl __local_stdio_printf_options(void) { | |
| 14 | 14 | return &options; |
| 15 | 15 | } |
lib/libc/mingw/stdio/ucrt___local_stdio_scanf_options.c+1-1| ... | ... | @@ -10,6 +10,6 @@ |
| 10 | 10 | |
| 11 | 11 | static unsigned __int64 options = _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS; |
| 12 | 12 | |
| 13 | unsigned __int64* __local_stdio_scanf_options(void) { | |
| 13 | unsigned __int64* __cdecl __local_stdio_scanf_options(void) { | |
| 14 | 14 | return &options; |
| 15 | 15 | } |
lib/libc/mingw/stdio/ucrt__scwprintf.c created+21| ... | ... | @@ -0,0 +1,21 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define _UCRT | |
| 9 | #include <stdio.h> | |
| 10 | #include <stdarg.h> | |
| 11 | ||
| 12 | int __cdecl _scwprintf(const wchar_t * restrict format, ...) | |
| 13 | { | |
| 14 | int ret; | |
| 15 | va_list args; | |
| 16 | va_start(args, format); | |
| 17 | ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, format, NULL, args); | |
| 18 | va_end(args); | |
| 19 | return ret; | |
| 20 | } | |
| 21 | int __cdecl (*__MINGW_IMP_SYMBOL(_scwprintf))(const wchar_t * restrict, ...) = _scwprintf; |
lib/libc/mingw/stdio/ucrt__snwprintf.c+1-2| ... | ... | @@ -10,8 +10,6 @@ |
| 10 | 10 | #include <stdarg.h> |
| 11 | 11 | #include <stdio.h> |
| 12 | 12 | |
| 13 | int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...); | |
| 14 | ||
| 15 | 13 | int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...) |
| 16 | 14 | { |
| 17 | 15 | va_list ap; |
| ... | ... | @@ -21,3 +19,4 @@ int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * |
| 21 | 19 | va_end(ap); |
| 22 | 20 | return ret; |
| 23 | 21 | } |
| 22 | int __cdecl (*__MINGW_IMP_SYMBOL(_snwprintf))(wchar_t * restrict, size_t, const wchar_t * restrict, ...) = _snwprintf; |
lib/libc/mingw/stdio/ucrt__swprintf.c created+21| ... | ... | @@ -0,0 +1,21 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define _UCRT | |
| 9 | #include <stdio.h> | |
| 10 | #include <stdarg.h> | |
| 11 | ||
| 12 | int __cdecl _swprintf(wchar_t * restrict dest, const wchar_t * restrict format, ...) | |
| 13 | { | |
| 14 | int ret; | |
| 15 | va_list args; | |
| 16 | va_start(args, format); | |
| 17 | ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, dest, (size_t)-1, format, NULL, args); | |
| 18 | va_end(args); | |
| 19 | return ret; | |
| 20 | } | |
| 21 | int __cdecl (*__MINGW_IMP_SYMBOL(_swprintf))(wchar_t * restrict, const wchar_t * restrict, ...) = _swprintf; |
lib/libc/mingw/stdio/ucrt__vscwprintf.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define _UCRT | |
| 9 | #include <stdio.h> | |
| 10 | ||
| 11 | int __cdecl _vscwprintf(const wchar_t * restrict format, va_list args) | |
| 12 | { | |
| 13 | return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, format, NULL, args); | |
| 14 | } | |
| 15 | int __cdecl (*__MINGW_IMP_SYMBOL(_vscwprintf))(const wchar_t * restrict, va_list) = _vscwprintf; |
lib/libc/mingw/stdio/ucrt__vsnwprintf.c+1| ... | ... | @@ -12,3 +12,4 @@ int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t |
| 12 | 12 | { |
| 13 | 13 | return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION, _Dest, _Count, _Format, NULL, _Args); |
| 14 | 14 | } |
| 15 | int __cdecl (*__MINGW_IMP_SYMBOL(_vsnwprintf))(wchar_t * __restrict__,size_t,const wchar_t * __restrict__,va_list) = _vsnwprintf; |
lib/libc/mingw/stdio/ucrt__vswprintf.c created+15| ... | ... | @@ -0,0 +1,15 @@ |
| 1 | /** | |
| 2 | * This file has no copyright assigned and is placed in the Public Domain. | |
| 3 | * This file is part of the mingw-w64 runtime package. | |
| 4 | * No warranty is given; refer to the file DISCLAIMER.PD within this package. | |
| 5 | */ | |
| 6 | ||
| 7 | #undef __MSVCRT_VERSION__ | |
| 8 | #define _UCRT | |
| 9 | #include <stdio.h> | |
| 10 | ||
| 11 | int __cdecl _vswprintf(wchar_t * restrict dest, const wchar_t * restrict format, va_list args) | |
| 12 | { | |
| 13 | return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, dest, (size_t)-1, format, NULL, args); | |
| 14 | } | |
| 15 | int __cdecl (*__MINGW_IMP_SYMBOL(_vswprintf))(wchar_t * restrict, const wchar_t * restrict, va_list) = _vswprintf; |
lib/libc/mingw/winpthreads/misc.c+21-5| ... | ... | @@ -35,10 +35,13 @@ |
| 35 | 35 | void (WINAPI *_pthread_get_system_time_best_as_file_time) (LPFILETIME) = NULL; |
| 36 | 36 | static ULONGLONG (WINAPI *_pthread_get_tick_count_64) (VOID); |
| 37 | 37 | HRESULT (WINAPI *_pthread_set_thread_description) (HANDLE, PCWSTR) = NULL; |
| 38 | BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD) = NULL; | |
| 38 | 39 | |
| 39 | 40 | #if defined(__GNUC__) || defined(__clang__) |
| 41 | #if __GNUC__ >= 9 && !defined(__clang__) | |
| 40 | 42 | #pragma GCC diagnostic push |
| 41 | 43 | #pragma GCC diagnostic ignored "-Wprio-ctor-dtor" |
| 44 | #endif | |
| 42 | 45 | __attribute__((constructor(0))) |
| 43 | 46 | #endif |
| 44 | 47 | static void winpthreads_init(void) |
| ... | ... | @@ -46,9 +49,15 @@ static void winpthreads_init(void) |
| 46 | 49 | HMODULE mod = GetModuleHandleA("kernel32.dll"); |
| 47 | 50 | if (mod) |
| 48 | 51 | { |
| 52 | _pthread_get_handle_information = | |
| 53 | (BOOL (WINAPI *)(HANDLE, LPDWORD))(void*) GetProcAddress(mod, "GetHandleInformation"); | |
| 54 | ||
| 49 | 55 | _pthread_get_tick_count_64 = |
| 50 | 56 | (ULONGLONG (WINAPI *)(VOID))(void*) GetProcAddress(mod, "GetTickCount64"); |
| 51 | 57 | |
| 58 | _pthread_set_thread_description = | |
| 59 | (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription"); | |
| 60 | ||
| 52 | 61 | /* <1us precision on Windows 10 */ |
| 53 | 62 | _pthread_get_system_time_best_as_file_time = |
| 54 | 63 | (void (WINAPI *)(LPFILETIME))(void*) GetProcAddress(mod, "GetSystemTimePreciseAsFileTime"); |
| ... | ... | @@ -58,14 +67,21 @@ static void winpthreads_init(void) |
| 58 | 67 | /* >15ms precision on Windows 10 */ |
| 59 | 68 | _pthread_get_system_time_best_as_file_time = GetSystemTimeAsFileTime; |
| 60 | 69 | |
| 61 | mod = GetModuleHandleA("kernelbase.dll"); | |
| 62 | if (mod) | |
| 70 | /* Although SetThreadDescription lives in kernel32.dll, on Windows Server 2016, | |
| 71 | * Windows 10 LTSB 2016 and Windows 10 version 1607, it was only available in | |
| 72 | * kernelbase.dll. So, load it from there for maximum coverage. | |
| 73 | */ | |
| 74 | if (!_pthread_set_thread_description) | |
| 63 | 75 | { |
| 64 | _pthread_set_thread_description = | |
| 65 | (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription"); | |
| 76 | mod = GetModuleHandleA("kernelbase.dll"); | |
| 77 | if (mod) | |
| 78 | { | |
| 79 | _pthread_set_thread_description = | |
| 80 | (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription"); | |
| 81 | } | |
| 66 | 82 | } |
| 67 | 83 | } |
| 68 | #if defined(__GNUC__) || defined(__clang__) | |
| 84 | #if defined(__GNUC__) && __GNUC__ >= 9 && !defined(__clang__) | |
| 69 | 85 | #pragma GCC diagnostic pop |
| 70 | 86 | #endif |
| 71 | 87 |
lib/libc/mingw/winpthreads/misc.h+22-10| ... | ... | @@ -35,18 +35,32 @@ typedef long long LONGBAG; |
| 35 | 35 | typedef long LONGBAG; |
| 36 | 36 | #endif |
| 37 | 37 | |
| 38 | #if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | |
| 39 | #undef GetHandleInformation | |
| 40 | #define GetHandleInformation(h,f) (1) | |
| 38 | extern BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD); | |
| 39 | ||
| 40 | /* For gcc and clang define DUMMY_WRITABLE_DWORD as C99 compound literal. | |
| 41 | * For other pre-C99 compilers declare DUMMY_WRITABLE_DWORD as static variable. | |
| 42 | */ | |
| 43 | #if defined(__GNUC__) || defined(__clang__) | |
| 44 | #define DUMMY_WRITABLE_DWORD (DWORD){0} | |
| 45 | #else | |
| 46 | static DWORD DUMMY_WRITABLE_DWORD; | |
| 41 | 47 | #endif |
| 42 | 48 | |
| 43 | #define CHECK_HANDLE(h) \ | |
| 49 | #define TEST_HANDLE(h) \ | |
| 50 | (((h) != NULL && (h) != INVALID_HANDLE_VALUE) && ( \ | |
| 51 | _pthread_get_handle_information == NULL || \ | |
| 52 | _pthread_get_handle_information((h), &DUMMY_WRITABLE_DWORD) || \ | |
| 53 | GetLastError() == ERROR_CALL_NOT_IMPLEMENTED \ | |
| 54 | )) | |
| 55 | ||
| 56 | #define CHECK_HANDLE2(h, e) \ | |
| 44 | 57 | do { \ |
| 45 | DWORD dwFlags; \ | |
| 46 | if (!(h) || ((h) == INVALID_HANDLE_VALUE) || !GetHandleInformation((h), &dwFlags)) \ | |
| 47 | return EINVAL; \ | |
| 58 | if (!TEST_HANDLE(h)) \ | |
| 59 | return e; \ | |
| 48 | 60 | } while (0) |
| 49 | 61 | |
| 62 | #define CHECK_HANDLE(h) CHECK_HANDLE2(h, EINVAL) | |
| 63 | ||
| 50 | 64 | #define CHECK_PTR(p) do { if (!(p)) return EINVAL; } while (0) |
| 51 | 65 | |
| 52 | 66 | #define UPD_RESULT(x,r) do { int _r = (x); (r) = (r) ? (r) : _r; } while (0) |
| ... | ... | @@ -59,10 +73,8 @@ typedef long LONGBAG; |
| 59 | 73 | |
| 60 | 74 | #define CHECK_OBJECT(o, e) \ |
| 61 | 75 | do { \ |
| 62 | DWORD dwFlags; \ | |
| 63 | 76 | if (!(o)) return e; \ |
| 64 | if (!((o)->h) || (((o)->h) == INVALID_HANDLE_VALUE) || !GetHandleInformation(((o)->h), &dwFlags)) \ | |
| 65 | return e; \ | |
| 77 | CHECK_HANDLE2((o)->h, e); \ | |
| 66 | 78 | } while (0) |
| 67 | 79 | |
| 68 | 80 | #define VALID(x) if (!(p)) return EINVAL; |
lib/libc/mingw/winpthreads/mutex.c+5-6| ... | ... | @@ -26,7 +26,6 @@ |
| 26 | 26 | #endif |
| 27 | 27 | |
| 28 | 28 | #include <malloc.h> |
| 29 | #include <stdbool.h> | |
| 30 | 29 | #include <stdio.h> |
| 31 | 30 | |
| 32 | 31 | #define WIN32_LEAN_AND_MEAN |
| ... | ... | @@ -64,7 +63,7 @@ typedef struct { |
| 64 | 63 | |
| 65 | 64 | /* Whether a mutex is still a static initializer (not a pointer to |
| 66 | 65 | a mutex_impl_t). */ |
| 67 | static bool | |
| 66 | static BOOL | |
| 68 | 67 | is_static_initializer(pthread_mutex_t m) |
| 69 | 68 | { |
| 70 | 69 | /* Treat 0 as a static initializer as well (for normal mutexes), |
| ... | ... | @@ -101,7 +100,7 @@ mutex_impl_init(pthread_mutex_t *m, mutex_impl_t *mi) |
| 101 | 100 | |
| 102 | 101 | /* Return the implementation part of a mutex, creating it if necessary. |
| 103 | 102 | Return NULL on out-of-memory error. */ |
| 104 | static inline mutex_impl_t * | |
| 103 | static WINPTHREADS_INLINE mutex_impl_t * | |
| 105 | 104 | mutex_impl(pthread_mutex_t *m) |
| 106 | 105 | { |
| 107 | 106 | mutex_impl_t *mi = (mutex_impl_t *)*m; |
| ... | ... | @@ -117,7 +116,7 @@ mutex_impl(pthread_mutex_t *m) |
| 117 | 116 | |
| 118 | 117 | /* Lock a mutex. Give up after 'timeout' ms (with ETIMEDOUT), |
| 119 | 118 | or never if timeout=INFINITE. */ |
| 120 | static inline int | |
| 119 | static WINPTHREADS_INLINE int | |
| 121 | 120 | pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout) |
| 122 | 121 | { |
| 123 | 122 | mutex_impl_t *mi = mutex_impl(m); |
| ... | ... | @@ -148,7 +147,7 @@ pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout) |
| 148 | 147 | /* Make sure there is an event object on which to wait. */ |
| 149 | 148 | if (mi->event == NULL) { |
| 150 | 149 | /* Make an auto-reset event object. */ |
| 151 | HANDLE ev = CreateEvent(NULL, false, false, NULL); | |
| 150 | HANDLE ev = CreateEvent(NULL, FALSE, FALSE, NULL); | |
| 152 | 151 | if (ev == NULL) { |
| 153 | 152 | switch (GetLastError()) { |
| 154 | 153 | case ERROR_ACCESS_DENIED: |
| ... | ... | @@ -232,7 +231,7 @@ int pthread_mutex_unlock(pthread_mutex_t *m) |
| 232 | 231 | |
| 233 | 232 | if (unlikely(mi->type != Normal)) { |
| 234 | 233 | if (mi->state == Unlocked) |
| 235 | return EINVAL; | |
| 234 | return EPERM; | |
| 236 | 235 | if (mi->owner != GetCurrentThreadId()) |
| 237 | 236 | return EPERM; |
| 238 | 237 | if (mi->rec_lock > 0) { |
lib/libc/mingw/winpthreads/sem.c+9-2| ... | ... | @@ -267,8 +267,15 @@ int sem_timedwait64(sem_t *sem, const struct _timespec64 *t) |
| 267 | 267 | |
| 268 | 268 | int sem_timedwait32(sem_t *sem, const struct _timespec32 *t) |
| 269 | 269 | { |
| 270 | struct _timespec64 t64 = {.tv_sec = t->tv_sec, .tv_nsec = t->tv_nsec}; | |
| 271 | return __sem_timedwait (sem, &t64); | |
| 270 | struct _timespec64 t64 = {0}; | |
| 271 | ||
| 272 | if (t != NULL) | |
| 273 | { | |
| 274 | t64.tv_sec = t->tv_sec; | |
| 275 | t64.tv_nsec = t->tv_nsec; | |
| 276 | } | |
| 277 | ||
| 278 | return __sem_timedwait (sem, t == NULL ? NULL : &t64); | |
| 272 | 279 | } |
| 273 | 280 | |
| 274 | 281 | int |
lib/libc/mingw/winpthreads/thread.c+76-94| ... | ... | @@ -20,6 +20,16 @@ |
| 20 | 20 | DEALINGS IN THE SOFTWARE. |
| 21 | 21 | */ |
| 22 | 22 | |
| 23 | #if defined(__arm__) || defined(__aarch64__) | |
| 24 | /* We use setjmp/longjmp through asynchronous function calls via | |
| 25 | * SetThreadContext below. This makes unwinding from longjmp not | |
| 26 | * work reliably; therefore use a version of setjmp/longjmp that doesn't | |
| 27 | * rely on SEH. */ | |
| 28 | #define __USE_MINGW_SETJMP_NON_SEH | |
| 29 | #endif | |
| 30 | ||
| 31 | #define __LARGE_MBSTATE_T | |
| 32 | ||
| 23 | 33 | #ifdef HAVE_CONFIG_H |
| 24 | 34 | #include "config.h" |
| 25 | 35 | #endif |
| ... | ... | @@ -32,7 +42,6 @@ |
| 32 | 42 | |
| 33 | 43 | #define WIN32_LEAN_AND_MEAN |
| 34 | 44 | #include <windows.h> |
| 35 | #include <strsafe.h> | |
| 36 | 45 | |
| 37 | 46 | #define WINPTHREAD_THREAD_DECL WINPTHREAD_API |
| 38 | 47 | |
| ... | ... | @@ -65,38 +74,29 @@ static size_t idListCnt = 0; |
| 65 | 74 | static size_t idListMax = 0; |
| 66 | 75 | static pthread_t idListNextId = 0; |
| 67 | 76 | |
| 68 | #if !defined(_MSC_VER) | |
| 69 | #define USE_VEH_FOR_MSC_SETTHREADNAME | |
| 77 | #if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7) | |
| 78 | #define SEH_INLINE_ASM | |
| 79 | #ifdef __arm__ | |
| 80 | #define ASM_EXCEPT "%%except" | |
| 81 | #else | |
| 82 | #define ASM_EXCEPT "@except" | |
| 70 | 83 | #endif |
| 71 | #if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | |
| 72 | /* forbidden RemoveVectoredExceptionHandler/AddVectoredExceptionHandler APIs */ | |
| 73 | #undef USE_VEH_FOR_MSC_SETTHREADNAME | |
| 74 | 84 | #endif |
| 75 | 85 | |
| 76 | #if defined(USE_VEH_FOR_MSC_SETTHREADNAME) | |
| 77 | static void *SetThreadName_VEH_handle = NULL; | |
| 78 | ||
| 79 | static LONG __stdcall | |
| 80 | SetThreadName_VEH (PEXCEPTION_POINTERS ExceptionInfo) | |
| 86 | #if !defined(_MSC_VER) && (defined(__i386__) || defined(SEH_INLINE_ASM)) | |
| 87 | static EXCEPTION_DISPOSITION __cdecl | |
| 88 | SetThreadName_SEH (EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, CONTEXT *ContextRecord, PVOID DispatcherContext) | |
| 81 | 89 | { |
| 82 | if (ExceptionInfo->ExceptionRecord != NULL && | |
| 83 | ExceptionInfo->ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME) | |
| 84 | return EXCEPTION_CONTINUE_EXECUTION; | |
| 85 | ||
| 86 | return EXCEPTION_CONTINUE_SEARCH; | |
| 87 | } | |
| 90 | /* Do not be confused with VEH handlers and CRT except filters which returns LONG value with UPPER_CASE constants. | |
| 91 | * SEH handlers like this one return value from EXCEPTION_DISPOSITION enum which has CamelCase constants. | |
| 92 | * UPPER_CASE EXCEPTION_CONTINUE_SEARCH and CamelCase ExceptionContinueSearch are different constants. | |
| 93 | */ | |
| 94 | if (!(ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING) && | |
| 95 | !(ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE) && | |
| 96 | ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME) | |
| 97 | return ExceptionContinueExecution; | |
| 88 | 98 | |
| 89 | static PVOID (WINAPI *AddVectoredExceptionHandlerFuncPtr) (ULONG, PVECTORED_EXCEPTION_HANDLER); | |
| 90 | static ULONG (WINAPI *RemoveVectoredExceptionHandlerFuncPtr) (PVOID); | |
| 91 | ||
| 92 | static void __attribute__((constructor)) | |
| 93 | ctor (void) | |
| 94 | { | |
| 95 | HMODULE module = GetModuleHandleA("kernel32.dll"); | |
| 96 | if (module) { | |
| 97 | AddVectoredExceptionHandlerFuncPtr = (__typeof__(AddVectoredExceptionHandlerFuncPtr)) GetProcAddress(module, "AddVectoredExceptionHandler"); | |
| 98 | RemoveVectoredExceptionHandlerFuncPtr = (__typeof__(RemoveVectoredExceptionHandlerFuncPtr)) GetProcAddress(module, "RemoveVectoredExceptionHandler"); | |
| 99 | } | |
| 99 | return ExceptionContinueSearch; | |
| 100 | 100 | } |
| 101 | 101 | #endif |
| 102 | 102 | |
| ... | ... | @@ -108,6 +108,9 @@ typedef struct _THREADNAME_INFO |
| 108 | 108 | DWORD dwFlags;	/* reserved for future use, must be zero */ |
| 109 | 109 | } THREADNAME_INFO; |
| 110 | 110 | |
| 111 | #if !defined(_MSC_VER) && !defined(__i386__) && defined(SEH_INLINE_ASM) | |
| 112 | WINPTHREADS_ATTRIBUTE((noinline)) /* required for asm .seh_handler directive */ | |
| 113 | #endif | |
| 111 | 114 | static void |
| 112 | 115 | SetThreadName (DWORD dwThreadID, LPCSTR szThreadName) |
| 113 | 116 | { |
| ... | ... | @@ -121,7 +124,10 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName) |
| 121 | 124 | |
| 122 | 125 | infosize = sizeof (info) / sizeof (ULONG_PTR); |
| 123 | 126 | |
| 124 | #if defined(_MSC_VER) && !defined (USE_VEH_FOR_MSC_SETTHREADNAME) | |
| 127 | /* Exception has to be processed otherwise it will crash the process. */ | |
| 128 | ||
| 129 | #if defined(_MSC_VER) | |
| 130 | /* msvc supports __try / __except syntax, so use it */ | |
| 125 | 131 | __try |
| 126 | 132 | { |
| 127 | 133 | RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *)&info); |
| ... | ... | @@ -130,17 +136,31 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName) |
| 130 | 136 | { |
| 131 | 137 | } |
| 132 | 138 | #else |
| 133 | /* Without a debugger we *must* have an exception handler, | |
| 134 | * otherwise raising an exception will crash the process. | |
| 139 | /* gcc does not support __try / __except syntax, so manually register SEH handler */ | |
| 140 | #if defined(__i386__) | |
| 141 | /* On 32-bit x86 is SEH handler registered and unregistered at runtime */ | |
| 142 | EXCEPTION_REGISTRATION_RECORD exception_record = { | |
| 143 | .Next = (EXCEPTION_REGISTRATION_RECORD *) __readfsdword (0), /* current SEH handler */ | |
| 144 | .Handler = (PEXCEPTION_ROUTINE)(void*) SetThreadName_SEH, | |
| 145 | }; | |
| 146 | __writefsdword (0, (DWORD) &exception_record); /* register our SEH handler */ | |
| 147 | RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info); | |
| 148 | __writefsdword (0, (DWORD) exception_record.Next); /* unregister our SEH handler */ | |
| 149 | #elif defined(SEH_INLINE_ASM) | |
| 150 | /* On other platforms SEH handlers are registered at compile time. | |
| 151 | Assembler directive .seh_handler statically register SEH handler for | |
| 152 | the whole current function. It does not matter at which line is this | |
| 153 | directive called. It always applies for the whole function, so also | |
| 154 | for code before the directive itself. As this function does not do | |
| 155 | anything else, we can register our SEH handler for the whole function. | |
| 156 | This function has to be marked as noinline to ensure that the SEH | |
| 157 | handler would not be registered for a caller. | |
| 135 | 158 | */ |
| 136 | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | |
| 137 | if ((!IsDebuggerPresent ()) && (SetThreadName_VEH_handle == NULL)) | |
| 159 | asm volatile (".seh_handler %c0, " ASM_EXCEPT :: "i" (SetThreadName_SEH)); | |
| 160 | RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info); | |
| 138 | 161 | #else |
| 139 | if (!IsDebuggerPresent ()) | |
| 162 | /* Other compilers / platforms do not provide SEH support */ | |
| 140 | 163 | #endif |
| 141 | return; | |
| 142 | ||
| 143 | RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info); | |
| 144 | 164 | #endif |
| 145 | 165 | } |
| 146 | 166 | |
| ... | ... | @@ -443,25 +463,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) |
| 443 | 463 | |
| 444 | 464 | if (dwReason == DLL_PROCESS_DETACH) |
| 445 | 465 | { |
| 446 | #if defined(USE_VEH_FOR_MSC_SETTHREADNAME) | |
| 447 | if (lpreserved == NULL && SetThreadName_VEH_handle != NULL) | |
| 448 | { | |
| 449 | if (RemoveVectoredExceptionHandlerFuncPtr != NULL) | |
| 450 | RemoveVectoredExceptionHandlerFuncPtr (SetThreadName_VEH_handle); | |
| 451 | SetThreadName_VEH_handle = NULL; | |
| 452 | } | |
| 453 | #endif | |
| 454 | 466 | free_pthread_mem (); |
| 455 | 467 | } |
| 456 | 468 | else if (dwReason == DLL_PROCESS_ATTACH) |
| 457 | 469 | { |
| 458 | #if defined(USE_VEH_FOR_MSC_SETTHREADNAME) | |
| 459 | if (AddVectoredExceptionHandlerFuncPtr != NULL) | |
| 460 | SetThreadName_VEH_handle = AddVectoredExceptionHandlerFuncPtr (1, &SetThreadName_VEH); | |
| 461 | else | |
| 462 | SetThreadName_VEH_handle = NULL; | |
| 463 | /* Can't do anything on error anyway, check for NULL later */ | |
| 464 | #endif | |
| 465 | 470 | } |
| 466 | 471 | else if (dwReason == DLL_THREAD_DETACH) |
| 467 | 472 | { |
| ... | ... | @@ -520,13 +525,15 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) |
| 520 | 525 | |
| 521 | 526 | /* TLS-runtime section variable. */ |
| 522 | 527 | |
| 523 | #if defined(_MSC_VER) | |
| 524 | 528 | /* Force a reference to _tls_used to make the linker create the TLS |
| 525 | 529 | * directory if it's not already there. (e.g. if __declspec(thread) |
| 526 | 530 | * is not used). |
| 527 | 531 | * Force a reference to __xl_f to prevent whole program optimization |
| 528 | 532 | * from discarding the variable. */ |
| 529 | ||
| 533 | #if defined(__GNUC__) | |
| 534 | extern const IMAGE_TLS_DIRECTORY _tls_used; | |
| 535 | static __attribute__((used)) const IMAGE_TLS_DIRECTORY *const _include_tls_used = &_tls_used; | |
| 536 | #elif defined(_MSC_VER) | |
| 530 | 537 | /* On x86, symbols are prefixed with an underscore. */ |
| 531 | 538 | # if defined(_M_IX86) |
| 532 | 539 | # pragma comment(linker, "/include:__tls_used") |
| ... | ... | @@ -544,8 +551,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) |
| 544 | 551 | # pragma section(".CRT$XLF", long, read) |
| 545 | 552 | #endif |
| 546 | 553 | |
| 554 | #if defined(__GNUC__) | |
| 555 | static __attribute__((used)) | |
| 556 | #endif | |
| 547 | 557 | WINPTHREADS_ATTRIBUTE((WINPTHREADS_SECTION(".CRT$XLF"))) |
| 548 | extern const PIMAGE_TLS_CALLBACK __xl_f; | |
| 549 | 558 | const PIMAGE_TLS_CALLBACK __xl_f = __dyn_tls_pthread; |
| 550 | 559 | |
| 551 | 560 | /* Internal collect-once structure. */ |
| ... | ... | @@ -1277,9 +1286,7 @@ pthread_cancel (pthread_t t) |
| 1277 | 1286 | #else |
| 1278 | 1287 | #error Unsupported architecture |
| 1279 | 1288 | #endif |
| 1280 | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | |
| 1281 | 1289 | 	 SetThreadContext (tv->h, &ctxt); |
| 1282 | #endif | |
| 1283 | 1290 | |
| 1284 | 1291 | 	 /* Also try deferred Cancelling */ |
| 1285 | 1292 | 	 tv->cancelled = 1; |
| ... | ... | @@ -1516,9 +1523,7 @@ void _fpreset (void); |
| 1516 | 1523 | |
| 1517 | 1524 | #if defined(__i386__) |
| 1518 | 1525 | /* Align ESP on 16-byte boundaries. */ |
| 1519 | # if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)) | |
| 1520 | 1526 | __attribute__((force_align_arg_pointer)) |
| 1521 | # endif | |
| 1522 | 1527 | #endif |
| 1523 | 1528 | unsigned __stdcall |
| 1524 | 1529 | pthread_create_wrapper (void *args) |
| ... | ... | @@ -1539,16 +1544,10 @@ pthread_create_wrapper (void *args) |
| 1539 | 1544 | if (!setjmp(tv->jb)) |
| 1540 | 1545 | { |
| 1541 | 1546 | intptr_t trslt = (intptr_t) 128; |
| 1542 | /* Provide to this thread a default exception handler. */ | |
| 1543 | #ifdef __SEH__ | |
| 1544 | 	asm ("\t.tl_start:\n"); | |
| 1545 | #endif /* Call function and save return value */ | |
| 1546 | 1547 | pthread_mutex_unlock (&mtx_pthr_locked); |
| 1548 | /* Call function and save return value */ | |
| 1547 | 1549 | if (tv->func) |
| 1548 | 1550 | trslt = (intptr_t) tv->func(tv->ret_arg); |
| 1549 | #ifdef __SEH__ | |
| 1550 | asm ("\tnop\n\t.tl_end: nop\n"); | |
| 1551 | #endif | |
| 1552 | 1551 | pthread_mutex_lock (&mtx_pthr_locked); |
| 1553 | 1552 | tv->ret_arg = (void*) trslt; |
| 1554 | 1553 | /* Clean up destructors */ |
| ... | ... | @@ -1585,19 +1584,6 @@ pthread_create_wrapper (void *args) |
| 1585 | 1584 | Sleep (0); |
| 1586 | 1585 | _endthreadex (rslt); |
| 1587 | 1586 | return rslt; |
| 1588 | ||
| 1589 | #if defined(__SEH__) | |
| 1590 | asm( | |
| 1591 | #ifdef __arm__ | |
| 1592 | "\t.seh_handler __C_specific_handler, %except\n" | |
| 1593 | #else | |
| 1594 | "\t.seh_handler __C_specific_handler, @except\n" | |
| 1595 | #endif | |
| 1596 | "\t.seh_handlerdata\n" | |
| 1597 | "\t.long 1\n" | |
| 1598 | "\t.rva .tl_start, .tl_end, _gnu_exception_handler ,.tl_end\n" | |
| 1599 | "\t.text\n"); | |
| 1600 | #endif | |
| 1601 | 1587 | } |
| 1602 | 1588 | |
| 1603 | 1589 | int |
| ... | ... | @@ -1608,6 +1594,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void * |
| 1608 | 1594 | struct _pthread_v *tv; |
| 1609 | 1595 | unsigned int ssize = 0; |
| 1610 | 1596 | pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER; |
| 1597 | unsigned thrAddr; /* Dummy variable to pass a valid location to _beginthreadex (Win98). */ | |
| 1611 | 1598 | |
| 1612 | 1599 | if (attr && attr->s_size > UINT_MAX) |
| 1613 | 1600 | return EINVAL; |
| ... | ... | @@ -1664,7 +1651,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void * |
| 1664 | 1651 | /* Make sure tv->h has value of INVALID_HANDLE_VALUE */ |
| 1665 | 1652 | _ReadWriteBarrier(); |
| 1666 | 1653 | |
| 1667 | thrd = (HANDLE) _beginthreadex(NULL, ssize, pthread_create_wrapper, tv, 0x4/*CREATE_SUSPEND*/, NULL); | |
| 1654 | thrd = (HANDLE) _beginthreadex(NULL, ssize, pthread_create_wrapper, tv, 0x4/*CREATE_SUSPEND*/, &thrAddr); | |
| 1668 | 1655 | if (thrd == INVALID_HANDLE_VALUE) |
| 1669 | 1656 | thrd = 0; |
| 1670 | 1657 | /* Failed */ |
| ... | ... | @@ -1713,12 +1700,11 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void * |
| 1713 | 1700 | int |
| 1714 | 1701 | pthread_join (pthread_t t, void **res) |
| 1715 | 1702 | { |
| 1716 | DWORD dwFlags; | |
| 1717 | 1703 | struct _pthread_v *tv = __pth_gpointer_locked (t); |
| 1718 | 1704 | pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER; |
| 1719 | 1705 | |
| 1720 | if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags)) | |
| 1721 | return ESRCH; | |
| 1706 | CHECK_OBJECT(tv, ESRCH); | |
| 1707 | ||
| 1722 | 1708 | if ((tv->p_state & PTHREAD_CREATE_DETACHED) != 0) |
| 1723 | 1709 | return EINVAL; |
| 1724 | 1710 | if (pthread_equal(pthread_self(), t)) |
| ... | ... | @@ -1744,14 +1730,13 @@ pthread_join (pthread_t t, void **res) |
| 1744 | 1730 | int |
| 1745 | 1731 | _pthread_tryjoin (pthread_t t, void **res) |
| 1746 | 1732 | { |
| 1747 | DWORD dwFlags; | |
| 1748 | 1733 | struct _pthread_v *tv; |
| 1749 | 1734 | pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER; |
| 1750 | 1735 | |
| 1751 | 1736 | pthread_mutex_lock (&mtx_pthr_locked); |
| 1752 | 1737 | tv = __pthread_get_pointer (t); |
| 1753 | 1738 | |
| 1754 | if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags)) | |
| 1739 | if (!tv || !TEST_HANDLE(tv->h)) | |
| 1755 | 1740 | { |
| 1756 | 1741 | pthread_mutex_unlock (&mtx_pthr_locked); |
| 1757 | 1742 | return ESRCH; |
| ... | ... | @@ -1798,13 +1783,12 @@ int |
| 1798 | 1783 | pthread_detach (pthread_t t) |
| 1799 | 1784 | { |
| 1800 | 1785 | int r = 0; |
| 1801 | DWORD dwFlags; | |
| 1802 | 1786 | struct _pthread_v *tv = __pth_gpointer_locked (t); |
| 1803 | 1787 | HANDLE dw; |
| 1804 | 1788 | pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER; |
| 1805 | 1789 | |
| 1806 | 1790 | pthread_mutex_lock (&mtx_pthr_locked); |
| 1807 | if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags)) | |
| 1791 | if (!tv || !TEST_HANDLE(tv->h)) | |
| 1808 | 1792 | { |
| 1809 | 1793 | pthread_mutex_unlock (&mtx_pthr_locked); |
| 1810 | 1794 | return ESRCH; |
| ... | ... | @@ -1897,8 +1881,8 @@ pthread_setname_np (pthread_t thread, const char *name) |
| 1897 | 1881 | int |
| 1898 | 1882 | pthread_getname_np (pthread_t thread, char *name, size_t len) |
| 1899 | 1883 | { |
| 1900 | HRESULT result; | |
| 1901 | 1884 | struct _pthread_v *tv; |
| 1885 | size_t thread_name_len; | |
| 1902 | 1886 | |
| 1903 | 1887 | if (name == NULL) |
| 1904 | 1888 | return EINVAL; |
| ... | ... | @@ -1917,12 +1901,10 @@ pthread_getname_np (pthread_t thread, char *name, size_t len) |
| 1917 | 1901 | return 0; |
| 1918 | 1902 | } |
| 1919 | 1903 | |
| 1920 | if (strlen (tv->thread_name) >= len) | |
| 1904 | thread_name_len = strlen (tv->thread_name); | |
| 1905 | if (thread_name_len >= len) | |
| 1921 | 1906 | return ERANGE; |
| 1922 | 1907 | |
| 1923 | result = StringCchCopyNA (name, len, tv->thread_name, len - 1); | |
| 1924 | if (SUCCEEDED (result)) | |
| 1925 | return 0; | |
| 1926 | ||
| 1927 | return ERANGE; | |
| 1908 | memcpy (name, tv->thread_name, thread_name_len + 1); | |
| 1909 | return 0; | |
| 1928 | 1910 | } |
lib/libc/mingw/winpthreads/wpth_ver.h+2-1| ... | ... | @@ -24,6 +24,7 @@ |
| 24 | 24 | #define __WPTHREADS_VERSION__ |
| 25 | 25 | |
| 26 | 26 | #define WPTH_VERSION 1,0,0,0 |
| 27 | #define WPTH_VERSION_STRING "1, 0, 0, 0\0" | |
| 27 | #define WPTH_VERSION_STRING "1, 0, 0, 0" | |
| 28 | #define WPTH_VERSION_MAJOR_STRING "1" | |
| 28 | 29 | |
| 29 | 30 | #endif |
src/libs/mingw.zig+50-9| ... | ... | @@ -519,7 +519,22 @@ const mingw32_generic_src = [_][]const u8{ |
| 519 | 519 | "gdtoa" ++ path.sep_str ++ "strtopx.c", |
| 520 | 520 | "gdtoa" ++ path.sep_str ++ "sum.c", |
| 521 | 521 | "gdtoa" ++ path.sep_str ++ "ulp.c", |
| 522 | "math" ++ path.sep_str ++ "acospi.c", | |
| 523 | "math" ++ path.sep_str ++ "acospif.c", | |
| 524 | "math" ++ path.sep_str ++ "acospil.c", | |
| 525 | "math" ++ path.sep_str ++ "asinpi.c", | |
| 526 | "math" ++ path.sep_str ++ "asinpif.c", | |
| 527 | "math" ++ path.sep_str ++ "asinpil.c", | |
| 528 | "math" ++ path.sep_str ++ "atanpi.c", | |
| 529 | "math" ++ path.sep_str ++ "atanpif.c", | |
| 530 | "math" ++ path.sep_str ++ "atanpil.c", | |
| 531 | "math" ++ path.sep_str ++ "atan2pi.c", | |
| 532 | "math" ++ path.sep_str ++ "atan2pif.c", | |
| 533 | "math" ++ path.sep_str ++ "atan2pil.c", | |
| 522 | 534 | "math" ++ path.sep_str ++ "coshl.c", |
| 535 | "math" ++ path.sep_str ++ "cospi.c", | |
| 536 | "math" ++ path.sep_str ++ "cospif.c", | |
| 537 | "math" ++ path.sep_str ++ "cospil.c", | |
| 523 | 538 | "math" ++ path.sep_str ++ "fpclassify.c", |
| 524 | 539 | "math" ++ path.sep_str ++ "fpclassifyf.c", |
| 525 | 540 | "math" ++ path.sep_str ++ "fpclassifyl.c", |
| ... | ... | @@ -535,8 +550,18 @@ const mingw32_generic_src = [_][]const u8{ |
| 535 | 550 | "math" ++ path.sep_str ++ "signbitl.c", |
| 536 | 551 | "math" ++ path.sep_str ++ "signgam.c", |
| 537 | 552 | "math" ++ path.sep_str ++ "sinhl.c", |
| 553 | "math" ++ path.sep_str ++ "sinpi.c", | |
| 554 | "math" ++ path.sep_str ++ "sinpif.c", | |
| 555 | "math" ++ path.sep_str ++ "sinpil.c", | |
| 538 | 556 | "math" ++ path.sep_str ++ "tanhl.c", |
| 557 | "math" ++ path.sep_str ++ "tanpi.c", | |
| 558 | "math" ++ path.sep_str ++ "tanpif.c", | |
| 559 | "math" ++ path.sep_str ++ "tanpil.c", | |
| 560 | "misc" ++ path.sep_str ++ "__mingw_filename_cp.c", | |
| 561 | "misc" ++ path.sep_str ++ "__mingw_isleadbyte_cp.c", | |
| 562 | "misc" ++ path.sep_str ++ "_assert.c", | |
| 539 | 563 | "misc" ++ path.sep_str ++ "alarm.c", |
| 564 | "misc" ++ path.sep_str ++ "btowc.c", | |
| 540 | 565 | "misc" ++ path.sep_str ++ "delay-f.c", |
| 541 | 566 | "misc" ++ path.sep_str ++ "delay-n.c", |
| 542 | 567 | "misc" ++ path.sep_str ++ "delayimp.c", |
| ... | ... | @@ -544,7 +569,10 @@ const mingw32_generic_src = [_][]const u8{ |
| 544 | 569 | "misc" ++ path.sep_str ++ "dirname.c", |
| 545 | 570 | "misc" ++ path.sep_str ++ "dllmain.c", |
| 546 | 571 | "misc" ++ path.sep_str ++ "feclearexcept.c", |
| 572 | "misc" ++ path.sep_str ++ "fedisableexcept.c", | |
| 573 | "misc" ++ path.sep_str ++ "feenableexcept.c", | |
| 547 | 574 | "misc" ++ path.sep_str ++ "fegetenv.c", |
| 575 | "misc" ++ path.sep_str ++ "fegetexcept.c", | |
| 548 | 576 | "misc" ++ path.sep_str ++ "fegetexceptflag.c", |
| 549 | 577 | "misc" ++ path.sep_str ++ "fegetround.c", |
| 550 | 578 | "misc" ++ path.sep_str ++ "feholdexcept.c", |
| ... | ... | @@ -556,7 +584,8 @@ const mingw32_generic_src = [_][]const u8{ |
| 556 | 584 | "misc" ++ path.sep_str ++ "mingw_controlfp.c", |
| 557 | 585 | "misc" ++ path.sep_str ++ "mingw_setfp.c", |
| 558 | 586 | "misc" ++ path.sep_str ++ "feupdateenv.c", |
| 559 | "misc" ++ path.sep_str ++ "ftruncate.c", | |
| 587 | "misc" ++ path.sep_str ++ "ftime32.c", | |
| 588 | "misc" ++ path.sep_str ++ "ftime64.c", | |
| 560 | 589 | "misc" ++ path.sep_str ++ "ftw32.c", |
| 561 | 590 | "misc" ++ path.sep_str ++ "ftw32i64.c", |
| 562 | 591 | "misc" ++ path.sep_str ++ "ftw64.c", |
| ... | ... | @@ -565,6 +594,8 @@ const mingw32_generic_src = [_][]const u8{ |
| 565 | 594 | "misc" ++ path.sep_str ++ "getlogin.c", |
| 566 | 595 | "misc" ++ path.sep_str ++ "getopt.c", |
| 567 | 596 | "misc" ++ path.sep_str ++ "gettimeofday.c", |
| 597 | "misc" ++ path.sep_str ++ "memalignment.c", | |
| 598 | "misc" ++ path.sep_str ++ "memset_explicit.c", | |
| 568 | 599 | "misc" ++ path.sep_str ++ "mingw-access.c", |
| 569 | 600 | "misc" ++ path.sep_str ++ "mingw-aligned-malloc.c", |
| 570 | 601 | "misc" ++ path.sep_str ++ "mingw_getsp.S", |
| ... | ... | @@ -575,6 +606,7 @@ const mingw32_generic_src = [_][]const u8{ |
| 575 | 606 | "misc" ++ path.sep_str ++ "mingw_wcstod.c", |
| 576 | 607 | "misc" ++ path.sep_str ++ "mingw_wcstof.c", |
| 577 | 608 | "misc" ++ path.sep_str ++ "mingw_wcstold.c", |
| 609 | "misc" ++ path.sep_str ++ "mkdtemp.c", | |
| 578 | 610 | "misc" ++ path.sep_str ++ "mkstemp.c", |
| 579 | 611 | "misc" ++ path.sep_str ++ "sleep.c", |
| 580 | 612 | "misc" ++ path.sep_str ++ "strsafe.c", |
| ... | ... | @@ -583,23 +615,22 @@ const mingw32_generic_src = [_][]const u8{ |
| 583 | 615 | "misc" ++ path.sep_str ++ "tfind.c", |
| 584 | 616 | "misc" ++ path.sep_str ++ "tsearch.c", |
| 585 | 617 | "misc" ++ path.sep_str ++ "twalk.c", |
| 618 | "misc" ++ path.sep_str ++ "wctob.c", | |
| 586 | 619 | "misc" ++ path.sep_str ++ "wdirent.c", |
| 620 | "stdio" ++ path.sep_str ++ "__mingw_fix_fstat_finish.c", | |
| 621 | "stdio" ++ path.sep_str ++ "__mingw_fix_stat_fallback_fd.c", | |
| 622 | "stdio" ++ path.sep_str ++ "__mingw_fix_stat_finish.c", | |
| 587 | 623 | "stdio" ++ path.sep_str ++ "__mingw_fix_stat_path.c", |
| 624 | "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_fallback_fd.c", | |
| 588 | 625 | "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_path.c", |
| 589 | 626 | "stdio" ++ path.sep_str ++ "asprintf.c", |
| 590 | "stdio" ++ path.sep_str ++ "fopen64.c", | |
| 591 | "stdio" ++ path.sep_str ++ "fseeko32.c", | |
| 592 | "stdio" ++ path.sep_str ++ "fseeko64.c", | |
| 593 | "stdio" ++ path.sep_str ++ "ftello.c", | |
| 594 | "stdio" ++ path.sep_str ++ "ftello64.c", | |
| 595 | "stdio" ++ path.sep_str ++ "ftruncate64.c", | |
| 596 | 627 | "stdio" ++ path.sep_str ++ "lltoa.c", |
| 597 | 628 | "stdio" ++ path.sep_str ++ "lltow.c", |
| 598 | "stdio" ++ path.sep_str ++ "lseek64.c", | |
| 599 | 629 | "stdio" ++ path.sep_str ++ "mingw_asprintf.c", |
| 600 | 630 | "stdio" ++ path.sep_str ++ "mingw_fprintf.c", |
| 601 | 631 | "stdio" ++ path.sep_str ++ "mingw_fwprintf.c", |
| 602 | 632 | "stdio" ++ path.sep_str ++ "mingw_fscanf.c", |
| 633 | "stdio" ++ path.sep_str ++ "mingw_ftruncate64.c", | |
| 603 | 634 | "stdio" ++ path.sep_str ++ "mingw_fwscanf.c", |
| 604 | 635 | "stdio" ++ path.sep_str ++ "mingw_pformat.c", |
| 605 | 636 | "stdio" ++ path.sep_str ++ "mingw_sformat.c", |
| ... | ... | @@ -631,6 +662,7 @@ const mingw32_generic_src = [_][]const u8{ |
| 631 | 662 | "stdio" ++ path.sep_str ++ "snprintf.c", |
| 632 | 663 | "stdio" ++ path.sep_str ++ "snwprintf.c", |
| 633 | 664 | "stdio" ++ path.sep_str ++ "truncate.c", |
| 665 | "stdio" ++ path.sep_str ++ "truncate64.c", | |
| 634 | 666 | "stdio" ++ path.sep_str ++ "ulltoa.c", |
| 635 | 667 | "stdio" ++ path.sep_str ++ "ulltow.c", |
| 636 | 668 | "stdio" ++ path.sep_str ++ "vasprintf.c", |
| ... | ... | @@ -640,6 +672,10 @@ const mingw32_generic_src = [_][]const u8{ |
| 640 | 672 | // mingwthrd |
| 641 | 673 | "libsrc" ++ path.sep_str ++ "mingwthrd_mt.c", |
| 642 | 674 | // ucrtbase |
| 675 | "ctype" ++ path.sep_str ++ "_iscsym_l.c", | |
| 676 | "ctype" ++ path.sep_str ++ "_iscsymf_l.c", | |
| 677 | "ctype" ++ path.sep_str ++ "iswctype.c", | |
| 678 | "ctype" ++ path.sep_str ++ "towctrans.c", | |
| 643 | 679 | "math" ++ path.sep_str ++ "_huge.c", |
| 644 | 680 | "misc" ++ path.sep_str ++ "__initenv.c", |
| 645 | 681 | "misc" ++ path.sep_str ++ "__winitenv.c", |
| ... | ... | @@ -651,14 +687,20 @@ const mingw32_generic_src = [_][]const u8{ |
| 651 | 687 | "misc" ++ path.sep_str ++ "ucrt__wgetmainargs.c", |
| 652 | 688 | "misc" ++ path.sep_str ++ "ucrt_amsg_exit.c", |
| 653 | 689 | "misc" ++ path.sep_str ++ "ucrt_at_quick_exit.c", |
| 690 | "misc" ++ path.sep_str ++ "ucrt_mbsinit.c", | |
| 654 | 691 | "misc" ++ path.sep_str ++ "ucrt_tzset.c", |
| 692 | "stdio" ++ path.sep_str ++ "msvcr80plus_ftruncate64.c", | |
| 655 | 693 | "stdio" ++ path.sep_str ++ "ucrt__scprintf.c", |
| 694 | "stdio" ++ path.sep_str ++ "ucrt__scwprintf.c", | |
| 656 | 695 | "stdio" ++ path.sep_str ++ "ucrt__snprintf.c", |
| 657 | 696 | "stdio" ++ path.sep_str ++ "ucrt__snscanf.c", |
| 658 | 697 | "stdio" ++ path.sep_str ++ "ucrt__snwprintf.c", |
| 698 | "stdio" ++ path.sep_str ++ "ucrt__swprintf.c", | |
| 659 | 699 | "stdio" ++ path.sep_str ++ "ucrt__vscprintf.c", |
| 700 | "stdio" ++ path.sep_str ++ "ucrt__vscwprintf.c", | |
| 660 | 701 | "stdio" ++ path.sep_str ++ "ucrt__vsnprintf.c", |
| 661 | 702 | "stdio" ++ path.sep_str ++ "ucrt__vsnwprintf.c", |
| 703 | "stdio" ++ path.sep_str ++ "ucrt__vswprintf.c", | |
| 662 | 704 | "stdio" ++ path.sep_str ++ "ucrt___local_stdio_printf_options.c", |
| 663 | 705 | "stdio" ++ path.sep_str ++ "ucrt___local_stdio_scanf_options.c", |
| 664 | 706 | "stdio" ++ path.sep_str ++ "ucrt_fprintf.c", |
| ... | ... | @@ -691,7 +733,6 @@ const mingw32_generic_src = [_][]const u8{ |
| 691 | 733 | "stdio" ++ path.sep_str ++ "ucrt_wprintf.c", |
| 692 | 734 | "string" ++ path.sep_str ++ "ucrt__wcstok.c", |
| 693 | 735 | // uuid |
| 694 | "libsrc" ++ path.sep_str ++ "ativscp-uuid.c", | |
| 695 | 736 | "libsrc" ++ path.sep_str ++ "atsmedia-uuid.c", |
| 696 | 737 | "libsrc" ++ path.sep_str ++ "bth-uuid.c", |
| 697 | 738 | "libsrc" ++ path.sep_str ++ "cguid-uuid.c", |