Fix Windows 7 support (#19)

This change pays off technical debt with the function -> DLL mappings in
libc/nt/master.sh, which was originally defined based on binary analysis
on Windows 10. It's now been updated so the kernel32/kernelbase/advapi32
imports should be exactly as they are written, on the MSDN documentation
and that wouldn't have been easy without Geoff Chappell's work thank him

https://www.geoffchappell.com/studies/windows/win32/index.htm
This commit is contained in:
Justine Tunney 2020-12-28 13:47:19 -08:00
parent 12065100e1
commit 0e85b136ae
1665 changed files with 13129 additions and 2637 deletions

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheck,AccessCheck,2
.text.windows
AccessCheck:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AccessCheck(%rip),%rax
jmp __sysv2nt8
.endfn AccessCheck,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckAndAuditAlarmW,AccessCheckAndAuditAlarmW,3

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckByType,AccessCheckByType,4

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckByTypeAndAuditAlarmW,AccessCheckByTypeAndAuditAlarmW,5

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckByTypeResultList,AccessCheckByTypeResultList,6

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckByTypeResultListAndAuditAlarmByHandleW,AccessCheckByTypeResultListAndAuditAlarmByHandleW,7

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AccessCheckByTypeResultListAndAuditAlarmW,AccessCheckByTypeResultListAndAuditAlarmW,8

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AcquireSRWLockExclusive,AcquireSRWLockExclusive,683
.text.windows
AcquireSRWLockExclusive:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_AcquireSRWLockExclusive(%rip)
leave
ret
.endfn AcquireSRWLockExclusive,globl
.previous

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AcquireSRWLockShared,AcquireSRWLockShared,684
.text.windows
AcquireSRWLockShared:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_AcquireSRWLockShared(%rip)
leave
ret
.endfn AcquireSRWLockShared,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ActivateActCtx,ActivateActCtx,12

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessAllowedAce,AddAccessAllowedAce,13

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessAllowedAceEx,AddAccessAllowedAceEx,14

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessAllowedObjectAce,AddAccessAllowedObjectAce,15

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessDeniedAce,AddAccessDeniedAce,16

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessDeniedAceEx,AddAccessDeniedAceEx,17

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAccessDeniedObjectAce,AddAccessDeniedObjectAce,18

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAce,AddAce,19

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAuditAccessAce,AddAuditAccessAce,20

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAuditAccessAceEx,AddAuditAccessAceEx,21

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddAuditAccessObjectAce,AddAuditAccessObjectAce,22

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddConsoleAliasA,AddConsoleAliasA,23

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddConsoleAliasW,AddConsoleAliasW,24

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddDllDirectory,AddDllDirectory,25

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddMandatoryAce,AddMandatoryAce,27

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddRefActCtx,AddRefActCtx,29

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddResourceAttributeAce,AddResourceAttributeAce,30

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddSIDToBoundaryDescriptor,AddSIDToBoundaryDescriptor,31

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddScopedPolicyIDAce,AddScopedPolicyIDAce,32

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddVectoredContinueHandler,AddVectoredContinueHandler,33
.text.windows
AddVectoredContinueHandler:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AddVectoredContinueHandler(%rip),%rax
jmp __sysv2nt
.endfn AddVectoredContinueHandler,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AddVectoredExceptionHandler,AddVectoredExceptionHandler,34
.text.windows
AddVectoredExceptionHandler:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AddVectoredExceptionHandler(%rip),%rax
jmp __sysv2nt
.endfn AddVectoredExceptionHandler,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AdjustTokenGroups,AdjustTokenGroups,35

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AdjustTokenPrivileges,AdjustTokenPrivileges,36
.text.windows
AdjustTokenPrivileges:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_AdjustTokenPrivileges(%rip),%rax
jmp __sysv2nt6
.endfn AdjustTokenPrivileges,globl
.previous

View file

@ -1,14 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AllocConsole,AllocConsole,37
.text.windows
AllocConsole:
push %rbp
mov %rsp,%rbp
.profilable
sub $32,%rsp
call *__imp_AllocConsole(%rip)
leave
ret
.endfn AllocConsole,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AllocateAndInitializeSid,AllocateAndInitializeSid,38

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AllocateLocallyUniqueId,AllocateLocallyUniqueId,39

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AllocateUserPhysicalPages,AllocateUserPhysicalPages,40

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AllocateUserPhysicalPagesNuma,AllocateUserPhysicalPagesNuma,41

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AreAllAccessesGranted,AreAllAccessesGranted,70

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AreAnyAccessesGranted,AreAnyAccessesGranted,71

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AreFileApisANSI,AreFileApisANSI,72

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_AttachConsole,AttachConsole,75
.text.windows
AttachConsole:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_AttachConsole(%rip)
leave
ret
.endfn AttachConsole,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_Beep,Beep,96

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CallNamedPipeW,CallNamedPipeW,99
.text.windows
CallNamedPipe:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CallNamedPipeW(%rip),%rax
jmp __sysv2nt8
.endfn CallNamedPipe,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CallbackMayRunLong,CallbackMayRunLong,100

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CancelIo,CancelIo,101
.text.windows
CancelIo:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CancelIo(%rip)
leave
ret
.endfn CancelIo,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CancelIoEx,CancelIoEx,102
.text.windows
CancelIoEx:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CancelIoEx(%rip),%rax
jmp __sysv2nt
.endfn CancelIoEx,globl
.previous

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CancelSynchronousIo,CancelSynchronousIo,103
.text.windows
CancelSynchronousIo:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CancelSynchronousIo(%rip)
leave
ret
.endfn CancelSynchronousIo,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CancelWaitableTimer,CancelWaitableTimer,105

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CeipIsOptedIn,CeipIsOptedIn,106

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ChangeTimerQueueTimer,ChangeTimerQueueTimer,107

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CheckRemoteDebuggerPresent,CheckRemoteDebuggerPresent,125
.text.windows
CheckRemoteDebuggerPresent:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CheckRemoteDebuggerPresent(%rip),%rax
jmp __sysv2nt
.endfn CheckRemoteDebuggerPresent,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CheckTokenCapability,CheckTokenCapability,126

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CheckTokenMembership,CheckTokenMembership,127

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CheckTokenMembershipEx,CheckTokenMembershipEx,128

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ClearCommBreak,ClearCommBreak,131

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ClearCommError,ClearCommError,132

View file

@ -1,15 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CloseHandle,CloseHandle,134
.text.windows
CloseHandle:
push %rbp
mov %rsp,%rbp
.profilable
mov %rdi,%rcx
sub $32,%rsp
call *__imp_CloseHandle(%rip)
leave
ret
.endfn CloseHandle,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ClosePackageInfo,ClosePackageInfo,135

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ClosePrivateNamespace,ClosePrivateNamespace,136

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CompareFileTime,CompareFileTime,150

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CompareStringA,CompareStringA,152

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CompareStringEx,CompareStringEx,153

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CompareStringOrdinal,CompareStringOrdinal,154

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CompareStringW,CompareStringW,155

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConnectNamedPipe,ConnectNamedPipe,156
.text.windows
ConnectNamedPipe:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_ConnectNamedPipe(%rip),%rax
jmp __sysv2nt
.endfn ConnectNamedPipe,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ContinueDebugEvent,ContinueDebugEvent,157
.text.windows
ContinueDebugEvent:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_ContinueDebugEvent(%rip),%rax
jmp __sysv2nt
.endfn ContinueDebugEvent,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConvertDefaultLocale,ConvertDefaultLocale,159

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConvertFiberToThread,ConvertFiberToThread,160

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConvertThreadToFiber,ConvertThreadToFiber,162

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConvertThreadToFiberEx,ConvertThreadToFiberEx,163

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_ConvertToAutoInheritPrivateObjectSecurity,ConvertToAutoInheritPrivateObjectSecurity,164

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CopyContext,CopyContext,165

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CopyFile2,CopyFile2,166

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CopyFileExW,CopyFileExW,167

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CopyFileW,CopyFileW,168
.text.windows
CopyFile:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CopyFileW(%rip),%rax
jmp __sysv2nt
.endfn CopyFile,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CopySid,CopySid,170

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateActCtxW,CreateActCtxW,172

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateBoundaryDescriptorW,CreateBoundaryDescriptorW,175

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateConsoleScreenBuffer,CreateConsoleScreenBuffer,176

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateDirectoryA,CreateDirectoryA,177
.text.windows
CreateDirectoryA:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateDirectoryA(%rip),%rax
jmp __sysv2nt
.endfn CreateDirectoryA,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateDirectoryExW,CreateDirectoryExW,178

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateDirectoryW,CreateDirectoryW,179
.text.windows
CreateDirectory:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateDirectoryW(%rip),%rax
jmp __sysv2nt
.endfn CreateDirectory,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateEventA,CreateEventA,181

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateEventExA,CreateEventExA,182

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateEventExW,CreateEventExW,183

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateEventW,CreateEventW,184

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFiber,CreateFiber,185

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFiberEx,CreateFiberEx,186

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFile2,CreateFile2,187

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFileA,CreateFileA,188
.text.windows
CreateFileA:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateFileA(%rip),%rax
jmp __sysv2nt8
.endfn CreateFileA,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFileMappingFromApp,CreateFileMappingFromApp,189

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFileMappingNumaW,CreateFileMappingNumaW,190
.text.windows
CreateFileMappingNuma:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateFileMappingNumaW(%rip),%rax
jmp __sysv2nt8
.endfn CreateFileMappingNuma,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFileMappingW,CreateFileMappingW,191
.text.windows
CreateFileMapping:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateFileMappingW(%rip),%rax
jmp __sysv2nt8
.endfn CreateFileMapping,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateFileW,CreateFileW,192
.text.windows
CreateFile:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateFileW(%rip),%rax
jmp __sysv2nt8
.endfn CreateFile,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateHardLinkA,CreateHardLinkA,193
.text.windows
CreateHardLinkA:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateHardLinkA(%rip),%rax
jmp __sysv2nt
.endfn CreateHardLinkA,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateHardLinkW,CreateHardLinkW,194
.text.windows
CreateHardLink:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateHardLinkW(%rip),%rax
jmp __sysv2nt
.endfn CreateHardLink,globl
.previous

View file

@ -1,12 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateIoCompletionPort,CreateIoCompletionPort,195
.text.windows
CreateIoCompletionPort:
push %rbp
mov %rsp,%rbp
.profilable
mov __imp_CreateIoCompletionPort(%rip),%rax
jmp __sysv2nt
.endfn CreateIoCompletionPort,globl
.previous

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateMemoryResourceNotification,CreateMemoryResourceNotification,196

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateMutexA,CreateMutexA,197

View file

@ -1,2 +0,0 @@
.include "o/libc/nt/codegen.inc"
.imp KernelBase,__imp_CreateMutexExA,CreateMutexExA,198

Some files were not shown because too many files have changed in this diff Show more