; _______________________________________________________________________________________
;|                                                                                       |
;| ..::FreshLib::..  Free, open source. Licensed under "BSD 2-clause" license."          |
;|_______________________________________________________________________________________|
;
;  Description: advapi32.dll API functions.
;
;  Target OS: Win32
;
;  Dependencies:
;
;  Notes:
;_________________________________________________________________________________________

;   advapi32.dll API calls (ASCII)
import_proto advapi32,  \
    A_SHAFinal, <NONE>,  'A_SHAFinal',  \
    A_SHAInit, <NONE>,  'A_SHAInit',  \
    A_SHAUpdate, <NONE>,  'A_SHAUpdate',  \
    AbortSystemShutdownA, <.lpMachineName>,  'AbortSystemShutdownA',  \
    AbortSystemShutdownW, <.lpMachineName>,  'AbortSystemShutdownW',  \
    AccessCheck, <.pSecurityDescriptor, .ClientToken, .DesiredAccess, .GenericMapping, .PrivilegeSet, .PrivilegeSetLength, .GrantedAccess,  \
        .Status>,  'AccessCheck',  \
    AccessCheckAndAuditAlarmA, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .DesiredAccess, .GenericMapping,  \
        .ObjectCreation, .GrantedAccess, .AccessStatus, .pfGenerateOnClose>,  'AccessCheckAndAuditAlarmA',  \
    AccessCheckAndAuditAlarmW, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .DesiredAccess, .GenericMapping,  \
        .ObjectCreation, .GrantedAccess, .AccessStatus, .pfGenerateOnClose>,  'AccessCheckAndAuditAlarmW',  \
    AccessCheckByType, <.pSecurityDescriptor, .PrincipalSelfSid, .ClientToken, .DesiredAccess, .ObjectTypeList, .ObjectTypeListLength,  \
        .GenericMapping, .PrivilegeSet, .PrivilegeSetLength, .GrantedAccess, .AccessStatus>,  'AccessCheckByType',  \
    AccessCheckByTypeAndAuditAlarmA, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .PrincipalSelfSid,  \
        .DesiredAccess, .AuditType, .Flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation, .GrantedAccess,  \
        .AccessStatus, .pfGenerateOnClose>,  'AccessCheckByTypeAndAuditAlarmA',  \
    AccessCheckByTypeAndAuditAlarmW, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .PrincipalSelfSid,  \
        .DesiredAccess, .AuditType, .Flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation, .GrantedAccess,  \
        .AccessStatus, .pfGenerateOnClose>,  'AccessCheckByTypeAndAuditAlarmW',  \
    AccessCheckByTypeResultList, <.pSecurityDescriptor, .PrincipalSelfSid, .ClientToken, .DesiredAccess, .ObjectTypeList, .ObjectTypeListLength,  \
        .GenericMapping, .PrivilegeSet, .PrivilegeSetLength, .GrantedAccessList, .AccessStatusList>,  'AccessCheckByTypeResultList',  \
    AccessCheckByTypeResultListAndAuditAlarmA, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .PrincipalSelfSid,  \
        .DesiredAccess, .AuditType, .Flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation, .GrantedAccess,  \
        .AccessStatusList, .pfG>,  'AccessCheckByTypeResultListAndAuditAlarmA',  \
    AccessCheckByTypeResultListAndAuditAlarmByHandleA, <.SubsystemName, .HandleId, .ClientToken, .ObjectTypeName, .ObjectName, .SecurityDescriptor,  \
        .PrincipalSelfSid, .DesiredAccess, .AuditType, .flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation,  \
        .GrantedAccess, .AccessibleChildren, .paccContainer, .iChildStart, .cChildren, .rgvarChildren, .pcObtained>,  'AccessCheckByTypeResultListAndAuditAlarmByHandleA',  \
    AccessCheckByTypeResultListAndAuditAlarmByHandleW, <.SubsystemName, .HandleId, .ClientToken, .ObjectTypeName, .ObjectName, .SecurityDescriptor,  \
        .PrincipalSelfSid, .DesiredAccess, .AuditType, .flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation,  \
        .GrantedAccess, .AccessibleChildren, .paccContainer, .iChildStart, .cChildren, .rgvarChildren, .pcObtained>,  'AccessCheckByTypeResultListAndAuditAlarmByHandleW',  \
    AccessCheckByTypeResultListAndAuditAlarmW, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .SecurityDescriptor, .PrincipalSelfSid,  \
        .DesiredAccess, .AuditType, .Flags, .ObjectTypeList, .ObjectTypeListLength, .GenericMapping, .ObjectCreation, .GrantedAccess,  \
        .AccessStatusList, .pfG>,  'AccessCheckByTypeResultListAndAuditAlarmW',  \
    AddAccessAllowedAce, <.pAcl, .dwAceRevision, .AccessMask, .pSid>,  'AddAccessAllowedAce',  \
    AddAccessAllowedAceEx, <.pAcl, .dwAceRevision, .AceFlags, .AccessMask, .pSid>,  'AddAccessAllowedAceEx',  \
    AddAccessAllowedObjectAce, <.pAcl, .dwAceRevision, .AceFlags, .AccessMask, .ObjectTypeGuid, .ByRefheritedObjectTypeGuid, .pSid,  \
      >,  'AddAccessAllowedObjectAce',  \
    AddAccessDeniedAce, <.pAcl, .dwAceRevision, .AccessMask, .pSid>,  'AddAccessDeniedAce',  \
    AddAccessDeniedAceEx, <.pAcl, .dwAceRevision, .AceFlags, .AccessMask, .pSid>,  'AddAccessDeniedAceEx',  \
    AddAccessDeniedObjectAce, <.pAcl, .dwAceRevision, .AceFlags, .AccessMask, .ObjectTypeGuid, .ByRefheritedObjectTypeGuid, .pSid,  \
      >,  'AddAccessDeniedObjectAce',  \
    AddAce, <.pAcl, .dwAceRevision, .dwStartingAceIndex, .pAceList, .nAceListLength>,  'AddAce',  \
    AddAuditAccessAce, <.pAcl, .dwAceRevision, .dwAccessMask, .pSid, .bAuditSuccess, .bAuditFailure>,  'AddAuditAccessAce',  \
    AddAuditAccessAceEx, <.pAcl, .dwAceRevision, .AceFlags, .dwAccessMask, .pSid, .bAuditSuccess, .bAuditFailure>,  'AddAuditAccessAceEx',  \
    AddAuditAccessObjectAce, <.pAcl, .dwAceRevision, .AceFlags, .AccessMask, .ObjectTypeGuid, .ByRefheritedObjectTypeGuid, .pSid, .bAuditSuccess,  \
        .bAuditFailure>,  'AddAuditAccessObjectAce',  \
    AddUsersToEncryptedFile, <.lpFileName, .pUsers>,  'AddUsersToEncryptedFile',  \
    AdjustTokenGroups, <.TokenHandle, .ResetToDefault, .NewState, .BufferLength, .PreviousState, .ReturnLength>,  'AdjustTokenGroups',  \
    AdjustTokenPrivileges, <.TokenHandle, .DisableAllPrivileges, .NewState, .BufferLength, .PreviousState, .ReturnLength>,  'AdjustTokenPrivileges',  \
    AllocateAndInitializeSid, <.pIdentifierAuthority, .nSubAuthorityCount, .nSubAuthority0, .nSubAuthority1, .nSubAuthority2, .nSubAuthority3,  \
        .nSubAuthority4, .nSubAuthority5, .nSubAuthority6, .nSubAuthority7, .lpPSid>,  'AllocateAndInitializeSid',  \
    AllocateLocallyUniqueId, <.Luid>,  'AllocateLocallyUniqueId',  \
    AreAllAccessesGranted, <.GrantedAccess, .DesiredAccess>,  'AreAllAccessesGranted',  \
    AreAnyAccessesGranted, <.GrantedAccess, .DesiredAccess>,  'AreAnyAccessesGranted',  \
    BackupEventLogA, <.hEventLog, .lpBackupFileName>,  'BackupEventLogA',  \
    BackupEventLogW, <.hEventLog, .lpBackupFileName>,  'BackupEventLogW',  \
    BuildExplicitAccessWithNameA, <.pExplicitAccess, .pTrusteeName, .AccessPermissions, .AccessMode, .Inheritance>,  'BuildExplicitAccessWithNameA',  \
    BuildExplicitAccessWithNameW, <.pExplicitAccess, .pTrusteeName, .AccessPermissions, .AccessMode, .Inheritance>,  'BuildExplicitAccessWithNameW',  \
    BuildImpersonateExplicitAccessWithNameA, <.pExplicitAccess, .pTrusteeName, .pTrustee, .AccessPermissions, .AccessMode, .Inheritance,  \
      >,  'BuildImpersonateExplicitAccessWithNameA',  \
    BuildImpersonateExplicitAccessWithNameW, <.pExplicitAccess, .pTrusteeName, .pTrustee, .AccessPermissions, .AccessMode, .Inheritance,  \
      >,  'BuildImpersonateExplicitAccessWithNameW',  \
    BuildImpersonateTrusteeA, <.pTrustee, .pImpersonateTrustee>,  'BuildImpersonateTrusteeA',  \
    BuildImpersonateTrusteeW, <.pTrustee, .pImpersonateTrustee>,  'BuildImpersonateTrusteeW',  \
    BuildSecurityDescriptorA, <.pOwner, .pGroup, .cCountOfAccessEntries, .pListOfAccessEntries, .cCountOfAuditEntries, .pListOfAuditEntries,  \
        .pOldSD, .pSizeNewSD, .pNewSD>,  'BuildSecurityDescriptorA',  \
    BuildSecurityDescriptorW, <.pOwner, .pGroup, .cCountOfAccessEntries, .pListOfAccessEntries, .cCountOfAuditEntries, .pListOfAuditEntries,  \
        .pOldSD, .pSizeNewSD, .pNewSD>,  'BuildSecurityDescriptorW',  \
    BuildTrusteeWithNameA, <.pTrustee, .pname>,  'BuildTrusteeWithNameA',  \
    BuildTrusteeWithNameW, <.pTrustee, .pname>,  'BuildTrusteeWithNameW',  \
    BuildTrusteeWithObjectsAndNameA, <.pTrustee, .pObjName, .ObjectType, .ObjectTypeName, .InheritedObjectTypeName, .name>,  'BuildTrusteeWithObjectsAndNameA',  \
    BuildTrusteeWithObjectsAndNameW, <.pTrustee, .pObjName, .ObjectType, .ObjectTypeName, .InheritedObjectTypeName, .name>,  'BuildTrusteeWithObjectsAndNameW',  \
    BuildTrusteeWithObjectsAndSidA, <.pTrustee, .pObjSid, .pObjectGuid, .pInheritedObjectGuid, .pSid>,  'BuildTrusteeWithObjectsAndSidA',  \
    BuildTrusteeWithObjectsAndSidW, <.pTrustee, .pObjSid, .pObjectGuid, .pInheritedObjectGuid, .pSid>,  'BuildTrusteeWithObjectsAndSidW',  \
    BuildTrusteeWithSidA, <.pTrustee, .pSid>,  'BuildTrusteeWithSidA',  \
    BuildTrusteeWithSidW, <.pTrustee, .pSid>,  'BuildTrusteeWithSidW',  \
    CancelOverlappedAccess, <NONE>,  'CancelOverlappedAccess',  \
    ChangeServiceConfig2A, <.hService, .dwInfoLevel, .lpInfo>,  'ChangeServiceConfig2A',  \
    ChangeServiceConfig2W, <.hService, .dwInfoLevel, .lpInfo>,  'ChangeServiceConfig2W',  \
    ChangeServiceConfigA, <.hService, .dwServiceType, .dwStartType, .dwErrorControl, .lpBinaryPathName, .lpLoadOrderGroup, .lpdwTagId,  \
        .lpDependencies, .lpServiceStartName, .lpPassword, .lpDisplayName>,  'ChangeServiceConfigA',  \
    ChangeServiceConfigW, <.hService, .dwServiceType, .dwStartType, .dwErrorControl, .lpBinaryPathName, .lpLoadOrderGroup, .lpdwTagId,  \
        .lpDependencies, .lpServiceStartName, .lpPassword, .lpDisplayName>,  'ChangeServiceConfigW',  \
    CheckTokenMembership, <.TokenHandle, .SidToCheck, .IsMember>,  'CheckTokenMembership',  \
    ClearEventLogA, <.hEventLog, .lpBackupFileName>,  'ClearEventLogA',  \
    ClearEventLogW, <.hEventLog, .lpBackupFileName>,  'ClearEventLogW',  \
    CloseCodeAuthzLevel, <NONE>,  'CloseCodeAuthzLevel',  \
    CloseEncryptedFileRaw, <.pvContext>,  'CloseEncryptedFileRaw',  \
    CloseEventLog, <.hEventLog>,  'CloseEventLog',  \
    CloseServiceHandle, <.hSCObject>,  'CloseServiceHandle',  \
    CloseTrace, <NONE>,  'CloseTrace',  \
    CommandLineFromMsiDescriptor, <NONE>,  'CommandLineFromMsiDescriptor',  \
    ComputeAccessTokenFromCodeAuthzLevel, <NONE>,  'ComputeAccessTokenFromCodeAuthzLevel',  \
    ControlService, <.hService, .dwControl, .lpServiceStatus>,  'ControlService',  \
    ControlTraceA, <NONE>,  'ControlTraceA',  \
    ControlTraceW, <NONE>,  'ControlTraceW',  \
    ConvertAccessToSecurityDescriptorA, <NONE>,  'ConvertAccessToSecurityDescriptorA',  \
    ConvertAccessToSecurityDescriptorW, <NONE>,  'ConvertAccessToSecurityDescriptorW',  \
    ConvertSDToStringSDRootDomainA, <NONE>,  'ConvertSDToStringSDRootDomainA',  \
    ConvertSDToStringSDRootDomainW, <NONE>,  'ConvertSDToStringSDRootDomainW',  \
    ConvertSecurityDescriptorToAccessA, <NONE>,  'ConvertSecurityDescriptorToAccessA',  \
    ConvertSecurityDescriptorToAccessNamedA, <NONE>,  'ConvertSecurityDescriptorToAccessNamedA',  \
    ConvertSecurityDescriptorToAccessNamedW, <NONE>,  'ConvertSecurityDescriptorToAccessNamedW',  \
    ConvertSecurityDescriptorToAccessW, <NONE>,  'ConvertSecurityDescriptorToAccessW',  \
    ConvertSecurityDescriptorToStringSecurityDescriptorA, <.SecurityDescriptor, .RequestedStringSDRevision, .SecurityInformation, .StringSecurityDescriptor,  \
        .StringSecurityDescriptorLen>,  'ConvertSecurityDescriptorToStringSecurityDescriptorA',  \
    ConvertSecurityDescriptorToStringSecurityDescriptorW, <.SecurityDescriptor, .RequestedStringSDRevision, .SecurityInformation, .StringSecurityDescriptor,  \
        .StringSecurityDescriptorLen>,  'ConvertSecurityDescriptorToStringSecurityDescriptorW',  \
    ConvertSidToStringSidA, <.Sid, .StringSid>,  'ConvertSidToStringSidA',  \
    ConvertSidToStringSidW, <.Sid, .StringSid>,  'ConvertSidToStringSidW',  \
    ConvertStringSDToSDDomainA, <NONE>,  'ConvertStringSDToSDDomainA',  \
    ConvertStringSDToSDDomainW, <NONE>,  'ConvertStringSDToSDDomainW',  \
    ConvertStringSDToSDRootDomainA, <NONE>,  'ConvertStringSDToSDRootDomainA',  \
    ConvertStringSDToSDRootDomainW, <NONE>,  'ConvertStringSDToSDRootDomainW',  \
    ConvertStringSecurityDescriptorToSecurityDescriptorA, <.StringSecurityDescriptor, .StringSDRevision, .SecurityDescriptor, .SecurityDescriptorSize,  \
      >,  'ConvertStringSecurityDescriptorToSecurityDescriptorA',  \
    ConvertStringSecurityDescriptorToSecurityDescriptorW, <.StringSecurityDescriptor, .StringSDRevision, .SecurityDescriptor, .SecurityDescriptorSize,  \
      >,  'ConvertStringSecurityDescriptorToSecurityDescriptorW',  \
    ConvertStringSidToSidA, <.StringSid, .Sid>,  'ConvertStringSidToSidA',  \
    ConvertStringSidToSidW, <.StringSid, .Sid>,  'ConvertStringSidToSidW',  \
    ConvertToAutoInheritPrivateObjectSecurity, <.ParentDescriptor, .CurrentSecurityDescriptor, .NewSecurityDescriptor, .ObjectType,  \
        .IsDirectoryObject, .GenericMapping>,  'ConvertToAutoInheritPrivateObjectSecurity',  \
    CopySid, <.nDestinationSidLength, .pDestinationSid, .pSourceSid>,  'CopySid',  \
    CreateCodeAuthzLevel, <NONE>,  'CreateCodeAuthzLevel',  \
    CreatePrivateObjectSecurity, <.ParentDescriptor, .CreatorDescriptor, .NewDescriptor, .IsDirectoryObject, .Token, .GenericMapping,  \
      >,  'CreatePrivateObjectSecurity',  \
    CreatePrivateObjectSecurityEx, <.ParentDescriptor, .CreatorDescriptor, .NewDescriptor, .ObjectType, .IsContainerObject, .AutoInheritFlags,  \
        .Token, .GenericMapping>,  'CreatePrivateObjectSecurityEx',  \
    CreatePrivateObjectSecurityWithMultipleInheritance, <NONE>,  'CreatePrivateObjectSecurityWithMultipleInheritance',  \
    CreateProcessAsUserA, <.hToken, .lpApplicationName, .lpCommandLine, .lpProcessAttributes, .lpThreadAttributes, .bInheritHandles,  \
        .dwCreationFlags, .lpEnvironment, .lpCurrentDirectory, .lpStartupInfo, .lpProcessInformation>,  'CreateProcessAsUserA',  \
    CreateProcessAsUserSecure, <NONE>,  'CreateProcessAsUserSecure',  \
    CreateProcessAsUserW, <.hToken, .lpApplicationName, .lpCommandLine, .lpProcessAttributes, .lpThreadAttributes, .bInheritHandles,  \
        .dwCreationFlags, .lpEnvironment, .lpCurrentDirectory, .lpStartupInfo, .lpProcessInformation>,  'CreateProcessAsUserW',  \
    CreateProcessWithLogonW, <NONE>,  'CreateProcessWithLogonW',  \
    CreateRestrictedToken, <.ExistingTokenHandle, .Flags, .DisableSidCount, .SidsToDisable, .DeletePrivilegeCount, .PrivilegesToDelete,  \
        .RestrictedSidCount, .SidsToRestrict, .NewTokenHandle>,  'CreateRestrictedToken',  \
    CreateServiceA, <.hSCManager, .lpServiceName, .lpDisplayName, .dwDesiredAccess, .dwServiceType, .dwStartType, .dwErrorControl,  \
        .lpBinaryPathName, .lpLoadOrderGroup, .lpdwTagId, .lpDependencies, .lp, .lpPassword>,  'CreateServiceA',  \
    CreateServiceW, <.hSCManager, .lpServiceName, .lpDisplayName, .dwDesiredAccess, .dwServiceType, .dwStartType, .dwErrorControl,  \
        .lpBinaryPathName, .lpLoadOrderGroup, .lpdwTagId, .lpDependencies, .lp, .lpPassword>,  'CreateServiceW',  \
    CreateTraceInstanceId, <NONE>,  'CreateTraceInstanceId',  \
    CreateWellKnownSid, <NONE>,  'CreateWellKnownSid',  \
    CredDeleteA, <NONE>,  'CredDeleteA',  \
    CredDeleteW, <NONE>,  'CredDeleteW',  \
    CredEnumerateA, <NONE>,  'CredEnumerateA',  \
    CredEnumerateW, <NONE>,  'CredEnumerateW',  \
    CredFree, <NONE>,  'CredFree',  \
    CredGetSessionTypes, <NONE>,  'CredGetSessionTypes',  \
    CredGetTargetInfoA, <NONE>,  'CredGetTargetInfoA',  \
    CredGetTargetInfoW, <NONE>,  'CredGetTargetInfoW',  \
    CredIsMarshaledCredentialA, <NONE>,  'CredIsMarshaledCredentialA',  \
    CredIsMarshaledCredentialW, <NONE>,  'CredIsMarshaledCredentialW',  \
    CredMarshalCredentialA, <NONE>,  'CredMarshalCredentialA',  \
    CredMarshalCredentialW, <NONE>,  'CredMarshalCredentialW',  \
    CredProfileLoaded, <NONE>,  'CredProfileLoaded',  \
    CredReadA, <NONE>,  'CredReadA',  \
    CredReadDomainCredentialsA, <NONE>,  'CredReadDomainCredentialsA',  \
    CredReadDomainCredentialsW, <NONE>,  'CredReadDomainCredentialsW',  \
    CredReadW, <NONE>,  'CredReadW',  \
    CredRenameA, <NONE>,  'CredRenameA',  \
    CredRenameW, <NONE>,  'CredRenameW',  \
    CredUnmarshalCredentialA, <NONE>,  'CredUnmarshalCredentialA',  \
    CredUnmarshalCredentialW, <NONE>,  'CredUnmarshalCredentialW',  \
    CredWriteA, <NONE>,  'CredWriteA',  \
    CredWriteDomainCredentialsA, <NONE>,  'CredWriteDomainCredentialsA',  \
    CredWriteDomainCredentialsW, <NONE>,  'CredWriteDomainCredentialsW',  \
    CredWriteW, <NONE>,  'CredWriteW',  \
    CredpConvertCredential, <NONE>,  'CredpConvertCredential',  \
    CredpConvertTargetInfo, <NONE>,  'CredpConvertTargetInfo',  \
    CredpDecodeCredential, <NONE>,  'CredpDecodeCredential',  \
    CredpEncodeCredential, <NONE>,  'CredpEncodeCredential',  \
    CryptAcquireContextA, <.phProv, .pszContainer, .pszProvider, .dwProvType, .dwFlags>,  'CryptAcquireContextA',  \
    CryptAcquireContextW, <.phProv, .pszContainer, .pszProvider, .dwProvType, .dwFlags>,  'CryptAcquireContextW',  \
    CryptContextAddRef, <.hProv, .pdwReserved, .dwFlags>,  'CryptContextAddRef',  \
    CryptCreateHash, <.hProv, .Algid, .hKey, .dwFlags, .phHash>,  'CryptCreateHash',  \
    CryptDecrypt, <.hKey, .hHash, .Final, .dwFlags, .pbData, .pdwDataLen>,  'CryptDecrypt',  \
    CryptDeriveKey, <.hProv, .Algid, .hBaseData, .dwFlags, .phKey>,  'CryptDeriveKey',  \
    CryptDestroyHash, <.hHash>,  'CryptDestroyHash',  \
    CryptDestroyKey, <.hKey>,  'CryptDestroyKey',  \
    CryptDuplicateHash, <.hHash, .pdwReserved, .dwFlags, .phHash>,  'CryptDuplicateHash',  \
    CryptDuplicateKey, <.hKey, .pdwReserved, .dwFlags, .phKey>,  'CryptDuplicateKey',  \
    CryptEncrypt, <.hKey, .hHash, .Final, .dwFlags, .pbData, .pdwDataLen, .dwBufLen>,  'CryptEncrypt',  \
    CryptEnumProviderTypesA, <.dwIndex, .pdwReserved, .dwFlags, .pdwProvType, .pszTypeName, .pcbTypeName>,  'CryptEnumProviderTypesA',  \
    CryptEnumProviderTypesW, <.dwIndex, .pdwReserved, .dwFlags, .pdwProvType, .pszTypeName, .pcbTypeName>,  'CryptEnumProviderTypesW',  \
    CryptEnumProvidersA, <.dwIndex, .pdwReserved, .dwFlags, .pdwProvType, .pszProvName, .pcbProvName>,  'CryptEnumProvidersA',  \
    CryptEnumProvidersW, <.dwIndex, .pdwReserved, .dwFlags, .pdwProvType, .pszProvName, .pcbProvName>,  'CryptEnumProvidersW',  \
    CryptExportKey, <.hKey, .hExpKey, .dwBlobType, .dwFlags, .pbData, .pdwDataLen>,  'CryptExportKey',  \
    CryptGenKey, <.hProv, .Algid, .dwFlags, .phKey>,  'CryptGenKey',  \
    CryptGenRandom, <.hProv, .dwLen, .pbBuffer>,  'CryptGenRandom',  \
    CryptGetDefaultProviderA, <.dwProvType, .pdwReserved, .dwFlags, .pszProvName, .pcbProvName>,  'CryptGetDefaultProviderA',  \
    CryptGetDefaultProviderW, <.dwProvType, .pdwReserved, .dwFlags, .pszProvName, .pcbProvName>,  'CryptGetDefaultProviderW',  \
    CryptGetHashParam, <.hHash, .dwParam, .pbData, .pdwDataLen, .dwFlags>,  'CryptGetHashParam',  \
    CryptGetKeyParam, <.hKey, .dwParam, .pbData, .pdwDataLen, .dwFlags>,  'CryptGetKeyParam',  \
    CryptGetProvParam, <.hProv, .dwParam, .pbData, .pdwDataLen, .dwFlags>,  'CryptGetProvParam',  \
    CryptGetUserKey, <.hProv, .dwKeySpec, .phUserKey>,  'CryptGetUserKey',  \
    CryptHashData, <.hHash, .pbData, .dwDataLen, .dwFlags>,  'CryptHashData',  \
    CryptHashSessionKey, <.hHash, .hKey, .dwFlags>,  'CryptHashSessionKey',  \
    CryptImportKey, <.hProv, .pbData, .dwDataLen, .hPubKey, .dwFlags, .phKey>,  'CryptImportKey',  \
    CryptReleaseContext, <.hProv, .dwFlags>,  'CryptReleaseContext',  \
    CryptSetHashParam, <.hHash, .dwParam, .pbData, .dwFlags>,  'CryptSetHashParam',  \
    CryptSetKeyParam, <.hKey, .dwParam, .pbData, .dwFlags>,  'CryptSetKeyParam',  \
    CryptSetProvParam, <.hProv, .dwParam, .pbData, .dwFlags>,  'CryptSetProvParam',  \
    CryptSetProviderA, <.pszProvName, .dwProvType>,  'CryptSetProviderA',  \
    CryptSetProviderExA, <.pszProvName, .dwProvType, .pdwReserved, .dwFlags>,  'CryptSetProviderExA',  \
    CryptSetProviderExW, <.pszProvName, .dwProvType, .pdwReserved, .dwFlags>,  'CryptSetProviderExW',  \
    CryptSetProviderW, <.pszProvName, .dwProvType>,  'CryptSetProviderW',  \
    CryptSignHashA, <.hHash, .dwKeySpec, .sDescription, .dwFlags, .pbSignature, .pdwSigLen>,  'CryptSignHashA',  \
    CryptSignHashW, <.hHash, .dwKeySpec, .sDescription, .dwFlags, .pbSignature, .pdwSigLen>,  'CryptSignHashW',  \
    CryptVerifySignatureA, <.hHash, .pbSignature, .dwSigLen, .hPubKey, .sDescription, .dwFlags>,  'CryptVerifySignatureA',  \
    CryptVerifySignatureW, <.hHash, .pbSignature, .dwSigLen, .hPubKey, .sDescription, .dwFlags>,  'CryptVerifySignatureW',  \
    DecryptFileA, <.lpFileName, .dwReserved>,  'DecryptFileA',  \
    DecryptFileW, <.lpFileName, .dwReserved>,  'DecryptFileW',  \
    DeleteAce, <.pAcl, .dwAceIndex>,  'DeleteAce',  \
    DeleteService, <.hService>,  'DeleteService',  \
    DeregisterEventSource, <.hEventLog>,  'DeregisterEventSource',  \
    DestroyPrivateObjectSecurity, <.ObjectDescriptor>,  'DestroyPrivateObjectSecurity',  \
    DuplicateEncryptionInfoFile, <NONE>,  'DuplicateEncryptionInfoFile',  \
    DuplicateToken, <.ExistingTokenHandle, .ImpersonationLevel, .DuplicateTokenHandle>,  'DuplicateToken',  \
    DuplicateTokenEx, <.hExistingToken, .dwDesiredAccess, .lpTokenAttributes, .ImpersonationLevel, .TokenType, .phNewToken>,  'DuplicateTokenEx',  \
    ElfBackupEventLogFileA, <NONE>,  'ElfBackupEventLogFileA',  \
    ElfBackupEventLogFileW, <NONE>,  'ElfBackupEventLogFileW',  \
    ElfChangeNotify, <NONE>,  'ElfChangeNotify',  \
    ElfClearEventLogFileA, <NONE>,  'ElfClearEventLogFileA',  \
    ElfClearEventLogFileW, <NONE>,  'ElfClearEventLogFileW',  \
    ElfCloseEventLog, <NONE>,  'ElfCloseEventLog',  \
    ElfDeregisterEventSource, <NONE>,  'ElfDeregisterEventSource',  \
    ElfFlushEventLog, <NONE>,  'ElfFlushEventLog',  \
    ElfNumberOfRecords, <NONE>,  'ElfNumberOfRecords',  \
    ElfOldestRecord, <NONE>,  'ElfOldestRecord',  \
    ElfOpenBackupEventLogA, <NONE>,  'ElfOpenBackupEventLogA',  \
    ElfOpenBackupEventLogW, <NONE>,  'ElfOpenBackupEventLogW',  \
    ElfOpenEventLogA, <NONE>,  'ElfOpenEventLogA',  \
    ElfOpenEventLogW, <NONE>,  'ElfOpenEventLogW',  \
    ElfReadEventLogA, <NONE>,  'ElfReadEventLogA',  \
    ElfReadEventLogW, <NONE>,  'ElfReadEventLogW',  \
    ElfRegisterEventSourceA, <NONE>,  'ElfRegisterEventSourceA',  \
    ElfRegisterEventSourceW, <NONE>,  'ElfRegisterEventSourceW',  \
    ElfReportEventA, <NONE>,  'ElfReportEventA',  \
    ElfReportEventW, <NONE>,  'ElfReportEventW',  \
    EnableTrace, <NONE>,  'EnableTrace',  \
    EncryptFileA, <.lpFileName>,  'EncryptFileA',  \
    EncryptFileW, <.lpFileName>,  'EncryptFileW',  \
    EncryptedFileKeyInfo, <NONE>,  'EncryptedFileKeyInfo',  \
    EncryptionDisable, <.DirPath, .Disable>,  'EncryptionDisable',  \
    EnumDependentServicesA, <.hService, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned>,  'EnumDependentServicesA',  \
    EnumDependentServicesW, <.hService, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned>,  'EnumDependentServicesW',  \
    EnumServiceGroupW, <NONE>,  'EnumServiceGroupW',  \
    EnumServicesStatusA, <.hSCManager, .dwServiceType, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned,  \
        .lpResumeHandle>,  'EnumServicesStatusA',  \
    EnumServicesStatusExA, <.hSCManager, .InfoLevel, .dwServiceType, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned,  \
        .lpResumeHandle, .pszGroupName>,  'EnumServicesStatusExA',  \
    EnumServicesStatusExW, <.hSCManager, .InfoLevel, .dwServiceType, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned,  \
        .lpResumeHandle, .pszGroupName>,  'EnumServicesStatusExW',  \
    EnumServicesStatusW, <.hSCManager, .dwServiceType, .dwServiceState, .lpServices, .cbBufSize, .pcbBytesNeeded, .lpServicesReturned,  \
        .lpResumeHandle>,  'EnumServicesStatusW',  \
    EnumerateTraceGuids, <NONE>,  'EnumerateTraceGuids',  \
    EqualDomainSid, <NONE>,  'EqualDomainSid',  \
    EqualPrefixSid, <.pSid1, .pSid2>,  'EqualPrefixSid',  \
    EqualSid, <.pSid1, .pSid2>,  'EqualSid',  \
    FileEncryptionStatusA, <.lpFileName, .lpStatus>,  'FileEncryptionStatusA',  \
    FileEncryptionStatusW, <.lpFileName, .lpStatus>,  'FileEncryptionStatusW',  \
    FindFirstFreeAce, <.pAcl, .pAce>,  'FindFirstFreeAce',  \
    FlushTraceA, <NONE>,  'FlushTraceA',  \
    FlushTraceW, <NONE>,  'FlushTraceW',  \
    FreeEncryptedFileKeyInfo, <NONE>,  'FreeEncryptedFileKeyInfo',  \
    FreeEncryptionCertificateHashList, <.pHashes>,  'FreeEncryptionCertificateHashList',  \
    FreeInheritedFromArray, <.pInheritArray, .AceCnt, .pfnArray>,  'FreeInheritedFromArray',  \
    FreeSid, <.pSid>,  'FreeSid',  \
    GetAccessPermissionsForObjectA, <NONE>,  'GetAccessPermissionsForObjectA',  \
    GetAccessPermissionsForObjectW, <NONE>,  'GetAccessPermissionsForObjectW',  \
    GetAce, <.pAcl, .dwAceIndex, .pAce>,  'GetAce',  \
    GetAclInformation, <.pAcl, .pAclInformation, .nAclInformationLength, .dwAclInformationClass>,  'GetAclInformation',  \
    GetAuditedPermissionsFromAclA, <.pAcl, .pTrustee, .pSuccessfulAuditedRights, .pFailedAuditRights>,  'GetAuditedPermissionsFromAclA',  \
    GetAuditedPermissionsFromAclW, <.pAcl, .pTrustee, .pSuccessfulAuditedRights, .pFailedAuditRights>,  'GetAuditedPermissionsFromAclW',  \
    GetCurrentHwProfileA, <.lpHwProfileInfo>,  'GetCurrentHwProfileA',  \
    GetCurrentHwProfileW, <.lpHwProfileInfo>,  'GetCurrentHwProfileW',  \
    GetEffectiveRightsFromAclA, <.pAcl, .pTrustee, .pAccessRights>,  'GetEffectiveRightsFromAclA',  \
    GetEffectiveRightsFromAclW, <.pAcl, .pTrustee, .pAccessRights>,  'GetEffectiveRightsFromAclW',  \
    GetEventLogInformation, <.hEventLog, .dwInfoLevel, .lpBuffer, .cbBufSize, .pcbBytesNeeded>,  'GetEventLogInformation',  \
    GetExplicitEntriesFromAclA, <.pAcl, .pcCountOfExplicitEntries, .pListOfExplicitEntries>,  'GetExplicitEntriesFromAclA',  \
    GetExplicitEntriesFromAclW, <.pAcl, .pcCountOfExplicitEntries, .pListOfExplicitEntries>,  'GetExplicitEntriesFromAclW',  \
    GetFileSecurityA, <.lpFileName, .RequestedInformation, .pSecurityDescriptor, .nLength, .lpnLengthNeeded>,  'GetFileSecurityA',  \
    GetFileSecurityW, <.lpFileName, .RequestedInformation, .pSecurityDescriptor, .nLength, .lpnLengthNeeded>,  'GetFileSecurityW',  \
    GetInformationCodeAuthzLevelW, <NONE>,  'GetInformationCodeAuthzLevelW',  \
    GetInformationCodeAuthzPolicyW, <NONE>,  'GetInformationCodeAuthzPolicyW',  \
    GetInheritanceSourceA, <.pObjectName, .ObjectType, .SecurityInfo, .Container, .ObjectTypeGuid, .pAcl, .pfnArray, .pGenericMapping,  \
        .pInheritArray>,  'GetInheritanceSourceA',  \
    GetInheritanceSourceW, <.pObjectName, .ObjectType, .SecurityInfo, .Container, .ObjectTypeGuid, .pAcl, .pfnArray, .pGenericMapping,  \
        .pInheritArray>,  'GetInheritanceSourceW',  \
    GetKernelObjectSecurity, <.Handle, .RequestedInformation, .pSecurityDescriptor, .nLength, .lpnLengthNeeded>,  'GetKernelObjectSecurity',  \
    GetLengthSid, <.pSid>,  'GetLengthSid',  \
    GetLocalManagedApplicationData, <NONE>,  'GetLocalManagedApplicationData',  \
    GetLocalManagedApplications, <NONE>,  'GetLocalManagedApplications',  \
    GetManagedApplicationCategories, <NONE>,  'GetManagedApplicationCategories',  \
    GetManagedApplications, <NONE>,  'GetManagedApplications',  \
    GetMultipleTrusteeA, <.pTrustee>,  'GetMultipleTrusteeA',  \
    GetMultipleTrusteeOperationA, <.pTrustee>,  'GetMultipleTrusteeOperationA',  \
    GetMultipleTrusteeOperationW, <.pTrustee>,  'GetMultipleTrusteeOperationW',  \
    GetMultipleTrusteeW, <.pTrustee>,  'GetMultipleTrusteeW',  \
    GetNamedSecurityInfoA, <.pObjectName, .ObjectType, .SecurityInfo, .ppsidOwner, .ppsidGroup, .ppDacl, .ppSacl, .ppSecurityDescriptor,  \
      >,  'GetNamedSecurityInfoA',  \
    GetNamedSecurityInfoExA, <NONE>,  'GetNamedSecurityInfoExA',  \
    GetNamedSecurityInfoExW, <NONE>,  'GetNamedSecurityInfoExW',  \
    GetNamedSecurityInfoW, <.pObjectName, .ObjectType, .SecurityInfo, .ppsidOwner, .ppsidGroup, .ppDacl, .ppSacl, .ppSecurityDescriptor,  \
      >,  'GetNamedSecurityInfoW',  \
    GetNumberOfEventLogRecords, <.hEventLog, .NumberOfRecords>,  'GetNumberOfEventLogRecords',  \
    GetOldestEventLogRecord, <.hEventLog, .OldestRecord>,  'GetOldestEventLogRecord',  \
    GetOverlappedAccessResults, <NONE>,  'GetOverlappedAccessResults',  \
    GetPrivateObjectSecurity, <.ObjectDescriptor, .SecurityInformation, .ResultantDescriptor, .DescriptorLength, .ReturnLength>,  'GetPrivateObjectSecurity',  \
    GetSecurityDescriptorControl, <.pSecurityDescriptor, .pControl, .lpdwRevision>,  'GetSecurityDescriptorControl',  \
    GetSecurityDescriptorDacl, <.pSecurityDescriptor, .lpbDaclPresent, .pDacl, .lpbDaclDefaulted>,  'GetSecurityDescriptorDacl',  \
    GetSecurityDescriptorGroup, <.pSecurityDescriptor, .pGroup, .lpbGroupDefaulted>,  'GetSecurityDescriptorGroup',  \
    GetSecurityDescriptorLength, <.pSecurityDescriptor>,  'GetSecurityDescriptorLength',  \
    GetSecurityDescriptorOwner, <.pSecurityDescriptor, .pOwner, .lpbOwnerDefaulted>,  'GetSecurityDescriptorOwner',  \
    GetSecurityDescriptorRMControl, <.SecurityDescriptor, .RMControl>,  'GetSecurityDescriptorRMControl',  \
    GetSecurityDescriptorSacl, <.pSecurityDescriptor, .lpbSaclPresent, .pSacl, .lpbSaclDefaulted>,  'GetSecurityDescriptorSacl',  \
    GetSecurityInfo, <.Handle, .ObjectType, .SecurityInfo, .ppsidOwner, .ppsidGroup, .ppDacl, .ppSacl, .ppSecurityDescriptor>,  'GetSecurityInfo',  \
    GetSecurityInfoExA, <NONE>,  'GetSecurityInfoExA',  \
    GetSecurityInfoExW, <NONE>,  'GetSecurityInfoExW',  \
    GetServiceDisplayNameA, <.hSCManager, .lpServiceName, .lpDisplayName, .lpcchBuffer>,  'GetServiceDisplayNameA',  \
    GetServiceDisplayNameW, <.hSCManager, .lpServiceName, .lpDisplayName, .lpcchBuffer>,  'GetServiceDisplayNameW',  \
    GetServiceKeyNameA, <.hSCManager, .lpDisplayName, .lpServiceName, .lpcchBuffer>,  'GetServiceKeyNameA',  \
    GetServiceKeyNameW, <.hSCManager, .lpDisplayName, .lpServiceName, .lpcchBuffer>,  'GetServiceKeyNameW',  \
    GetSidIdentifierAuthority, <.pSid>,  'GetSidIdentifierAuthority',  \
    GetSidLengthRequired, <.nSubAuthorityCount>,  'GetSidLengthRequired',  \
    GetSidSubAuthority, <.pSid, .nSubAuthority>,  'GetSidSubAuthority',  \
    GetSidSubAuthorityCount, <.pSid>,  'GetSidSubAuthorityCount',  \
    GetTokenInformation, <.TokenHandle, .TokenInformationClass, .TokenInformation, .TokenInformationLength, .ReturnLength>,  'GetTokenInformation',  \
    GetTraceEnableFlags, <NONE>,  'GetTraceEnableFlags',  \
    GetTraceEnableLevel, <NONE>,  'GetTraceEnableLevel',  \
    GetTraceLoggerHandle, <NONE>,  'GetTraceLoggerHandle',  \
    GetTrusteeFormA, <.pTrustee>,  'GetTrusteeFormA',  \
    GetTrusteeFormW, <.pTrustee>,  'GetTrusteeFormW',  \
    GetTrusteeNameA, <.pTrustee>,  'GetTrusteeNameA',  \
    GetTrusteeNameW, <.pTrustee>,  'GetTrusteeNameW',  \
    GetTrusteeTypeA, <.pTrustee>,  'GetTrusteeTypeA',  \
    GetTrusteeTypeW, <.pTrustee>,  'GetTrusteeTypeW',  \
    GetUserNameA, <.lpBuffer, .nSize>,  'GetUserNameA',  \
    GetUserNameW, <.lpBuffer, .nSize>,  'GetUserNameW',  \
    GetWindowsAccountDomainSid, <NONE>,  'GetWindowsAccountDomainSid',  \
    I_ScGetCurrentGroupStateW, <NONE>,  'I_ScGetCurrentGroupStateW',  \
    I_ScIsSecurityProcess, <NONE>,  'I_ScIsSecurityProcess',  \
    I_ScPnPGetServiceName, <NONE>,  'I_ScPnPGetServiceName',  \
    I_ScSendTSMessage, <NONE>,  'I_ScSendTSMessage',  \
    I_ScSetServiceBitsA, <NONE>,  'I_ScSetServiceBitsA',  \
    I_ScSetServiceBitsW, <NONE>,  'I_ScSetServiceBitsW',  \
    IdentifyCodeAuthzLevelW, <NONE>,  'IdentifyCodeAuthzLevelW',  \
    ImpersonateAnonymousToken, <.ThreadHandle>,  'ImpersonateAnonymousToken',  \
    ImpersonateLoggedOnUser, <.hToken>,  'ImpersonateLoggedOnUser',  \
    ImpersonateNamedPipeClient, <.hNamedPipe>,  'ImpersonateNamedPipeClient',  \
    ImpersonateSelf, <.ImpersonationLevel>,  'ImpersonateSelf',  \
    InitializeAcl, <.pAcl, .nAclLength, .dwAclRevision>,  'InitializeAcl',  \
    InitializeSecurityDescriptor, <.pSecurityDescriptor, .dwRevision>,  'InitializeSecurityDescriptor',  \
    InitializeSid, <.Sid, .pIdentifierAuthority, .nSubAuthorityCount>,  'InitializeSid',  \
    InitiateSystemShutdownA, <.lpMachineName, .lpMessage, .dwTimeout, .bForceAppsClosed, .bRebootAfterShutdown>,  'InitiateSystemShutdownA',  \
    InitiateSystemShutdownExA, <.lpMachineName, .lpMessage, .dwTimeout, .bForceAppsClosed, .bRebootAfterShutdown, .dwReason>,  'InitiateSystemShutdownExA',  \
    InitiateSystemShutdownExW, <.lpMachineName, .lpMessage, .dwTimeout, .bForceAppsClosed, .bRebootAfterShutdown, .dwReason>,  'InitiateSystemShutdownExW',  \
    InitiateSystemShutdownW, <.lpMachineName, .lpMessage, .dwTimeout, .bForceAppsClosed, .bRebootAfterShutdown>,  'InitiateSystemShutdownW',  \
    InstallApplication, <NONE>,  'InstallApplication',  \
    IsTextUnicode, <.lpBuffer, .cb, .lpi>,  'IsTextUnicode',  \
    IsTokenRestricted, <.TokenHandle>,  'IsTokenRestricted',  \
    IsTokenUntrusted, <NONE>,  'IsTokenUntrusted',  \
    IsValidAcl, <.pAcl>,  'IsValidAcl',  \
    IsValidSecurityDescriptor, <.pSecurityDescriptor>,  'IsValidSecurityDescriptor',  \
    IsValidSid, <.pSid>,  'IsValidSid',  \
    IsWellKnownSid, <NONE>,  'IsWellKnownSid',  \
    LockServiceDatabase, <.hSCManager>,  'LockServiceDatabase',  \
    LogonUserA, <.lpszUsername, .lpszDomain, .lpszPassword, .dwLogonType, .dwLogonProvider, .phToken>,  'LogonUserA',  \
    LogonUserExA, <NONE>,  'LogonUserExA',  \
    LogonUserExW, <NONE>,  'LogonUserExW',  \
    LogonUserW, <.lpszUsername, .lpszDomain, .lpszPassword, .dwLogonType, .dwLogonProvider, .phToken>,  'LogonUserW',  \
    LookupAccountNameA, <.lpSystemName, .lpAccountName, .Sid, .cbSid, .ReferencedDomainName, .cbReferencedDomainName, .peUse>,  'LookupAccountNameA',  \
    LookupAccountNameW, <.lpSystemName, .lpAccountName, .Sid, .cbSid, .ReferencedDomainName, .cbReferencedDomainName, .peUse>,  'LookupAccountNameW',  \
    LookupAccountSidA, <.lpSystemName, .Sid, .Name, .cbName, .ReferencedDomainName, .cbReferencedDomainName, .peUse>,  'LookupAccountSidA',  \
    LookupAccountSidW, <.lpSystemName, .Sid, .Name, .cbName, .ReferencedDomainName, .cbReferencedDomainName, .peUse>,  'LookupAccountSidW',  \
    LookupPrivilegeDisplayNameA, <.lpSystemName, .lpName, .lpDisplayName, .cbDisplayName, .lpLanguageID>,  'LookupPrivilegeDisplayNameA',  \
    LookupPrivilegeDisplayNameW, <.lpSystemName, .lpName, .lpDisplayName, .cbDisplayName, .lpLanguageID>,  'LookupPrivilegeDisplayNameW',  \
    LookupPrivilegeNameA, <.lpSystemName, .lpLuid, .lpName, .cbName>,  'LookupPrivilegeNameA',  \
    LookupPrivilegeNameW, <.lpSystemName, .lpLuid, .lpName, .cbName>,  'LookupPrivilegeNameW',  \
    LookupPrivilegeValueA, <.lpSystemName, .lpName, .lpLuid>,  'LookupPrivilegeValueA',  \
    LookupPrivilegeValueW, <.lpSystemName, .lpName, .lpLuid>,  'LookupPrivilegeValueW',  \
    LookupSecurityDescriptorPartsA, <.pOwner, .pGroup, .cCountOfAccessEntries, .pListOfAccessEntries, .cCountOfAuditEntries, .pListOfAuditEntries,  \
        .pSD>,  'LookupSecurityDescriptorPartsA',  \
    LookupSecurityDescriptorPartsW, <.pOwner, .pGroup, .cCountOfAccessEntries, .pListOfAccessEntries, .cCountOfAuditEntries, .pListOfAuditEntries,  \
        .pSD>,  'LookupSecurityDescriptorPartsW',  \
    LsaAddAccountRights, <.PolicyHandle, .AccountSid, .UserRights, .CountOfRights>,  'LsaAddAccountRights',  \
    LsaAddPrivilegesToAccount, <NONE>,  'LsaAddPrivilegesToAccount',  \
    LsaClearAuditLog, <NONE>,  'LsaClearAuditLog',  \
    LsaClose, <.ObjectHandle>,  'LsaClose',  \
    LsaCreateAccount, <NONE>,  'LsaCreateAccount',  \
    LsaCreateSecret, <NONE>,  'LsaCreateSecret',  \
    LsaCreateTrustedDomain, <NONE>,  'LsaCreateTrustedDomain',  \
    LsaCreateTrustedDomainEx, <.PolicyHandle, .TrustedDomainInformation, .AuthenticationInformation, .DesiredAccess, .TrustedDomainHandle,  \
      >,  'LsaCreateTrustedDomainEx',  \
    LsaDelete, <NONE>,  'LsaDelete',  \
    LsaDeleteTrustedDomain, <.PolicyHandle, .TrustedDomainSid>,  'LsaDeleteTrustedDomain',  \
    LsaEnumerateAccountRights, <.PolicyHandle, .AccountSid, .UserRights, .CountOfRights>,  'LsaEnumerateAccountRights',  \
    LsaEnumerateAccounts, <NONE>,  'LsaEnumerateAccounts',  \
    LsaEnumerateAccountsWithUserRight, <.PolicyHandle, .UserRights, .EnumerationBuffer, .CountReturned>,  'LsaEnumerateAccountsWithUserRight',  \
    LsaEnumeratePrivileges, <NONE>,  'LsaEnumeratePrivileges',  \
    LsaEnumeratePrivilegesOfAccount, <NONE>,  'LsaEnumeratePrivilegesOfAccount',  \
    LsaEnumerateTrustedDomains, <.PolicyHandle, .EnumerationContext, .buffer, .PreferedMaximumLength, .CountReturned>,  'LsaEnumerateTrustedDomains',  \
    LsaEnumerateTrustedDomainsEx, <.PolicyHandle, .EnumerationContext, .buffer, .PreferedMaximumLength, .CountReturned>,  'LsaEnumerateTrustedDomainsEx',  \
    LsaFreeMemory, <.buffer>,  'LsaFreeMemory',  \
    LsaGetQuotasForAccount, <NONE>,  'LsaGetQuotasForAccount',  \
    LsaGetRemoteUserName, <NONE>,  'LsaGetRemoteUserName',  \
    LsaGetSystemAccessAccount, <NONE>,  'LsaGetSystemAccessAccount',  \
    LsaGetUserName, <NONE>,  'LsaGetUserName',  \
    LsaICLookupNames, <NONE>,  'LsaICLookupNames',  \
    LsaICLookupNamesWithCreds, <NONE>,  'LsaICLookupNamesWithCreds',  \
    LsaICLookupSids, <NONE>,  'LsaICLookupSids',  \
    LsaICLookupSidsWithCreds, <NONE>,  'LsaICLookupSidsWithCreds',  \
    LsaLookupNames, <.PolicyHandle, .count, .Names, .ReferencedDomains, .Sids>,  'LsaLookupNames',  \
    LsaLookupNames2, <NONE>,  'LsaLookupNames2',  \
    LsaLookupPrivilegeDisplayName, <NONE>,  'LsaLookupPrivilegeDisplayName',  \
    LsaLookupPrivilegeName, <NONE>,  'LsaLookupPrivilegeName',  \
    LsaLookupPrivilegeValue, <NONE>,  'LsaLookupPrivilegeValue',  \
    LsaLookupSids, <.PolicyHandle, .count, .Sids, .ReferencedDomains, .Names>,  'LsaLookupSids',  \
    LsaNtStatusToWinError, <.Status>,  'LsaNtStatusToWinError',  \
    LsaOpenAccount, <NONE>,  'LsaOpenAccount',  \
    LsaOpenPolicy, <.SystemName, .ObjectAttributes, .DesiredAccess, .PolicyHandle>,  'LsaOpenPolicy',  \
    LsaOpenPolicySce, <NONE>,  'LsaOpenPolicySce',  \
    LsaOpenSecret, <NONE>,  'LsaOpenSecret',  \
    LsaOpenTrustedDomain, <NONE>,  'LsaOpenTrustedDomain',  \
    LsaOpenTrustedDomainByName, <.PolicyHandle, .TrustedDomainName, .DesiredAccess, .TrustedDomainHandle>,  'LsaOpenTrustedDomainByName',  \
    LsaQueryDomainInformationPolicy, <.PolicyHandle, .InformationClass, .buffer>,  'LsaQueryDomainInformationPolicy',  \
    LsaQueryForestTrustInformation, <NONE>,  'LsaQueryForestTrustInformation',  \
    LsaQueryInfoTrustedDomain, <NONE>,  'LsaQueryInfoTrustedDomain',  \
    LsaQueryInformationPolicy, <.PolicyHandle, .InformationClass, .buffer>,  'LsaQueryInformationPolicy',  \
    LsaQuerySecret, <NONE>,  'LsaQuerySecret',  \
    LsaQuerySecurityObject, <NONE>,  'LsaQuerySecurityObject',  \
    LsaQueryTrustedDomainInfo, <.PolicyHandle, .TrustedDomainSid, .InformationClass, .buffer>,  'LsaQueryTrustedDomainInfo',  \
    LsaQueryTrustedDomainInfoByName, <.PolicyHandle, .TrustedDomainName, .InformationClass, .buffer>,  'LsaQueryTrustedDomainInfoByName',  \
    LsaRemoveAccountRights, <.PolicyHandle, .AccountSid, .AllRights, .UserRights, .CountOfRights>,  'LsaRemoveAccountRights',  \
    LsaRemovePrivilegesFromAccount, <NONE>,  'LsaRemovePrivilegesFromAccount',  \
    LsaRetrievePrivateData, <.PolicyHandle, .KeyName, .PrivateData>,  'LsaRetrievePrivateData',  \
    LsaSetDomainInformationPolicy, <.PolicyHandle, .InformationClass, .buffer>,  'LsaSetDomainInformationPolicy',  \
    LsaSetForestTrustInformation, <NONE>,  'LsaSetForestTrustInformation',  \
    LsaSetInformationPolicy, <.PolicyHandle, .InformationClass, .buffer>,  'LsaSetInformationPolicy',  \
    LsaSetInformationTrustedDomain, <NONE>,  'LsaSetInformationTrustedDomain',  \
    LsaSetQuotasForAccount, <NONE>,  'LsaSetQuotasForAccount',  \
    LsaSetSecret, <NONE>,  'LsaSetSecret',  \
    LsaSetSecurityObject, <NONE>,  'LsaSetSecurityObject',  \
    LsaSetSystemAccessAccount, <NONE>,  'LsaSetSystemAccessAccount',  \
    LsaSetTrustedDomainInfoByName, <.PolicyHandle, .TrustedDomainName, .InformationClass, .buffer>,  'LsaSetTrustedDomainInfoByName',  \
    LsaSetTrustedDomainInformation, <.PolicyHandle, .TrustedDomainSid, .InformationClass, .buffer>,  'LsaSetTrustedDomainInformation',  \
    LsaStorePrivateData, <.PolicyHandle, .KeyName, .PrivateData>,  'LsaStorePrivateData',  \
    MD4Final, <NONE>,  'MD4Final',  \
    MD4Init, <NONE>,  'MD4Init',  \
    MD4Update, <NONE>,  'MD4Update',  \
    MD5Final, <NONE>,  'MD5Final',  \
    MD5Init, <NONE>,  'MD5Init',  \
    MD5Update, <NONE>,  'MD5Update',  \
    MSChapSrvChangePassword, <NONE>,  'MSChapSrvChangePassword',  \
    MSChapSrvChangePassword2, <NONE>,  'MSChapSrvChangePassword2',  \
    MakeAbsoluteSD, <.pSelfRelativeSecurityDescriptor, .pAbsoluteSecurityDescriptor, .lpdwAbsoluteSecurityDescriptorSize, .pDacl, .lpdwDaclSize,  \
        .pSacl, .lpdwSaclSize, .pOwner, .lpdwOwnerSize, .pPrimaryGroup, .lpdwPrimaryGroupSize>,  'MakeAbsoluteSD',  \
    MakeAbsoluteSD2, <.pSelfRelativeSecurityDescriptor, .lpdwBufferSize>,  'MakeAbsoluteSD2',  \
    MakeSelfRelativeSD, <.pAbsoluteSecurityDescriptor, .pSelfRelativeSecurityDescriptor, .lpdwBufferLength>,  'MakeSelfRelativeSD',  \
    MapGenericMask, <.AccessMask, .GenericMapping>,  'MapGenericMask',  \
    NotifyBootConfigStatus, <.BootAcceptable>,  'NotifyBootConfigStatus',  \
    NotifyChangeEventLog, <.hEventLog, .hEvent>,  'NotifyChangeEventLog',  \
    ObjectCloseAuditAlarmA, <.SubsystemName, .HandleId, .GenerateOnClose>,  'ObjectCloseAuditAlarmA',  \
    ObjectCloseAuditAlarmW, <.SubsystemName, .HandleId, .GenerateOnClose>,  'ObjectCloseAuditAlarmW',  \
    ObjectDeleteAuditAlarmA, <.SubsystemName, .HandleId, .GenerateOnClose>,  'ObjectDeleteAuditAlarmA',  \
    ObjectDeleteAuditAlarmW, <.SubsystemName, .HandleId, .GenerateOnClose>,  'ObjectDeleteAuditAlarmW',  \
    ObjectOpenAuditAlarmA, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .pSecurityDescriptor, .ClientToken, .DesiredAccess,  \
        .GrantedAccess, .Privileges, .ObjectCreation, .AccessGranted, .GenerateOnClose>,  'ObjectOpenAuditAlarmA',  \
    ObjectOpenAuditAlarmW, <.SubsystemName, .HandleId, .ObjectTypeName, .ObjectName, .pSecurityDescriptor, .ClientToken, .DesiredAccess,  \
        .GrantedAccess, .Privileges, .ObjectCreation, .AccessGranted, .GenerateOnClose>,  'ObjectOpenAuditAlarmW',  \
    ObjectPrivilegeAuditAlarmA, <.SubsystemName, .HandleId, .ClientToken, .DesiredAccess, .Privileges, .AccessGranted>,  'ObjectPrivilegeAuditAlarmA',  \
    ObjectPrivilegeAuditAlarmW, <.SubsystemName, .HandleId, .ClientToken, .DesiredAccess, .Privileges, .AccessGranted>,  'ObjectPrivilegeAuditAlarmW',  \
    OpenBackupEventLogA, <.lpUNCServerName, .lpFileName>,  'OpenBackupEventLogA',  \
    OpenBackupEventLogW, <.lpUNCServerName, .lpFileName>,  'OpenBackupEventLogW',  \
    OpenEncryptedFileRawA, <.lpFileName, .ulFlags, .pvContext>,  'OpenEncryptedFileRawA',  \
    OpenEncryptedFileRawW, <.lpFileName, .ulFlags, .pvContext>,  'OpenEncryptedFileRawW',  \
    OpenEventLogA, <.lpUNCServerName, .lpSourceName>,  'OpenEventLogA',  \
    OpenEventLogW, <.lpUNCServerName, .lpSourceName>,  'OpenEventLogW',  \
    OpenProcessToken, <.ProcessHandle, .DesiredAccess, .TokenHandle>,  'OpenProcessToken',  \
    OpenSCManagerA, <.lpMachineName, .lpDatabaseName, .dwDesiredAccess>,  'OpenSCManagerA',  \
    OpenSCManagerW, <.lpMachineName, .lpDatabaseName, .dwDesiredAccess>,  'OpenSCManagerW',  \
    OpenServiceA, <.hSCManager, .lpServiceName, .dwDesiredAccess>,  'OpenServiceA',  \
    OpenServiceW, <.hSCManager, .lpServiceName, .dwDesiredAccess>,  'OpenServiceW',  \
    OpenThreadToken, <.ThreadHandle, .DesiredAccess, .OpenAsSelf, .TokenHandle>,  'OpenThreadToken',  \
    OpenTraceA, <NONE>,  'OpenTraceA',  \
    OpenTraceW, <NONE>,  'OpenTraceW',  \
    PrivilegeCheck, <.ClientToken, .RequiredPrivileges, .pfResult>,  'PrivilegeCheck',  \
    PrivilegedServiceAuditAlarmA, <.SubsystemName, .ServiceName, .ClientToken, .Privileges, .AccessGranted>,  'PrivilegedServiceAuditAlarmA',  \
    PrivilegedServiceAuditAlarmW, <.SubsystemName, .ServiceName, .ClientToken, .Privileges, .AccessGranted>,  'PrivilegedServiceAuditAlarmW',  \
    ProcessIdleTasks, <NONE>,  'ProcessIdleTasks',  \
    ProcessTrace, <NONE>,  'ProcessTrace',  \
    QueryAllTracesA, <NONE>,  'QueryAllTracesA',  \
    QueryAllTracesW, <NONE>,  'QueryAllTracesW',  \
    QueryRecoveryAgentsOnEncryptedFile, <.lpFileName, .pRecoveryAgents>,  'QueryRecoveryAgentsOnEncryptedFile',  \
    QueryServiceConfig2A, <.hService, .dwInfoLevel, .lpBuffer, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceConfig2A',  \
    QueryServiceConfig2W, <.hService, .dwInfoLevel, .lpBuffer, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceConfig2W',  \
    QueryServiceConfigA, <.hService, .lpServiceConfig, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceConfigA',  \
    QueryServiceConfigW, <.hService, .lpServiceConfig, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceConfigW',  \
    QueryServiceLockStatusA, <.hSCManager, .lpLockStatus, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceLockStatusA',  \
    QueryServiceLockStatusW, <.hSCManager, .lpLockStatus, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceLockStatusW',  \
    QueryServiceObjectSecurity, <.hService, .dwSecurityInformation, .lpSecurityDescriptor, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceObjectSecurity',  \
    QueryServiceStatus, <.hService, .lpServiceStatus>,  'QueryServiceStatus',  \
    QueryServiceStatusEx, <.hService, .InfoLevel, .lpBuffer, .cbBufSize, .pcbBytesNeeded>,  'QueryServiceStatusEx',  \
    QueryTraceA, <NONE>,  'QueryTraceA',  \
    QueryTraceW, <NONE>,  'QueryTraceW',  \
    QueryUsersOnEncryptedFile, <.lpFileName, .pUsers>,  'QueryUsersOnEncryptedFile',  \
    QueryWindows31FilesMigration, <NONE>,  'QueryWindows31FilesMigration',  \
    ReadEncryptedFileRaw, <.pfExportCallback, .pvCallbackContext, .pvContext>,  'ReadEncryptedFileRaw',  \
    ReadEventLogA, <.hEventLog, .dwReadFlags, .dwRecordOffset, .lpBuffer, .nNumberOfBytesToRead, .pnBytesRead, .pnMinNumberOfBytesNeeded,  \
      >,  'ReadEventLogA',  \
    ReadEventLogW, <.hEventLog, .dwReadFlags, .dwRecordOffset, .lpBuffer, .nNumberOfBytesToRead, .pnBytesRead, .pnMinNumberOfBytesNeeded,  \
      >,  'ReadEventLogW',  \
    RegCloseKey, <.hKey>,  'RegCloseKey',  \
    RegConnectRegistryA, <.lpMachineName, .hKey, .phkResult>,  'RegConnectRegistryA',  \
    RegConnectRegistryW, <.lpMachineName, .hKey, .phkResult>,  'RegConnectRegistryW',  \
    RegCreateKeyA, <.hKey, .lpSubKey, .phkResult>,  'RegCreateKeyA',  \
    RegCreateKeyExA, <.hKey, .lpSubKey, .Reserved, .lpClass, .dwOptions, .samDesired, .lpSecurityAttributes, .phkResult, .lpdwDisposition,  \
      >,  'RegCreateKeyExA',  \
    RegCreateKeyExW, <.hKey, .lpSubKey, .Reserved, .lpClass, .dwOptions, .samDesired, .lpSecurityAttributes, .phkResult, .lpdwDisposition,  \
      >,  'RegCreateKeyExW',  \
    RegCreateKeyW, <.hKey, .lpSubKey, .phkResult>,  'RegCreateKeyW',  \
    RegDeleteKeyA, <.hKey, .lpSubKey>,  'RegDeleteKeyA',  \
    RegDeleteKeyW, <.hKey, .lpSubKey>,  'RegDeleteKeyW',  \
    RegDeleteValueA, <.hKey, .lpValueName>,  'RegDeleteValueA',  \
    RegDeleteValueW, <.hKey, .lpValueName>,  'RegDeleteValueW',  \
    RegDisablePredefinedCache, <VOID>,  'RegDisablePredefinedCache',  \
    RegDisablePredefinedCacheEx, <NONE>,  'RegDisablePredefinedCacheEx',  \
    RegEnumKeyA, <.hKey, .dwIndex, .lpName, .cbName>,  'RegEnumKeyA',  \
    RegEnumKeyExA, <.hKey, .dwIndex, .lpName, .lpcbName, .lpReserved, .lpClass, .lpcbClass, .lpftLastWriteTime>,  'RegEnumKeyExA',  \
    RegEnumKeyExW, <.hKey, .dwIndex, .lpName, .lpcbName, .lpReserved, .lpClass, .lpcbClass, .lpftLastWriteTime>,  'RegEnumKeyExW',  \
    RegEnumKeyW, <.hKey, .dwIndex, .lpName, .cbName>,  'RegEnumKeyW',  \
    RegEnumValueA, <.hKey, .dwIndex, .lpValueName, .lpcbValueName, .lpReserved, .lpType, .lpData, .lpcbData>,  'RegEnumValueA',  \
    RegEnumValueW, <.hKey, .dwIndex, .lpValueName, .lpcbValueName, .lpReserved, .lpType, .lpData, .lpcbData>,  'RegEnumValueW',  \
    RegFlushKey, <.hKey>,  'RegFlushKey',  \
    RegGetKeySecurity, <.hKey, .SecurityInformation, .pSecurityDescriptor, .lpcbSecurityDescriptor>,  'RegGetKeySecurity',  \
    RegLoadKeyA, <.hKey, .lpSubKey, .lpFile>,  'RegLoadKeyA',  \
    RegLoadKeyW, <.hKey, .lpSubKey, .lpFile>,  'RegLoadKeyW',  \
    RegNotifyChangeKeyValue, <.hKey, .bWatchSubtree, .dwNotifyFilter, .hEvent, .fAsynchronus>,  'RegNotifyChangeKeyValue',  \
    RegOpenCurrentUser, <.samDesired, .phkResult>,  'RegOpenCurrentUser',  \
    RegOpenKeyA, <.hKey, .lpSubKey, .phkResult>,  'RegOpenKeyA',  \
    RegOpenKeyExA, <.hKey, .lpSubKey, .ulOptions, .samDesired, .phkResult>,  'RegOpenKeyExA',  \
    RegOpenKeyExW, <.hKey, .lpSubKey, .ulOptions, .samDesired, .phkResult>,  'RegOpenKeyExW',  \
    RegOpenKeyW, <.hKey, .lpSubKey, .phkResult>,  'RegOpenKeyW',  \
    RegOpenUserClassesRoot, <.hToken, .dwOptions, .samDesired, .phkResult>,  'RegOpenUserClassesRoot',  \
    RegOverridePredefKey, <.hKey, .hNewHKey>,  'RegOverridePredefKey',  \
    RegQueryInfoKeyA, <.hKey, .lpClass, .lpcbClass, .lpReserved, .lpcSubKeys, .lpcbMaxSubKeyLen, .lpcbMaxClassLen, .lpcValues, .lpcbMaxValueNameLen,  \
        .lpcbMaxValueLen, .lpcbSecurityDescriptor, .lpftLastWriteTime>,  'RegQueryInfoKeyA',  \
    RegQueryInfoKeyW, <.hKey, .lpClass, .lpcbClass, .lpReserved, .lpcSubKeys, .lpcbMaxSubKeyLen, .lpcbMaxClassLen, .lpcValues, .lpcbMaxValueNameLen,  \
        .lpcbMaxValueLen, .lpcbSecurityDescriptor, .lpftLastWriteTime>,  'RegQueryInfoKeyW',  \
    RegQueryMultipleValuesA, <.hKey, .val_list, .num_vals, .lpValueBuf, .ldwTotsize>,  'RegQueryMultipleValuesA',  \
    RegQueryMultipleValuesW, <.hKey, .val_list, .num_vals, .lpValueBuf, .ldwTotsize>,  'RegQueryMultipleValuesW',  \
    RegQueryValueA, <.hKey, .lpSubKey, .lpValue, .lpcbValue>,  'RegQueryValueA',  \
    RegQueryValueExA, <.hKey, .lpValueName, .lpReserved, .lpType, .lpData, .lpcbData>,  'RegQueryValueExA',  \
    RegQueryValueExW, <.hKey, .lpValueName, .lpReserved, .lpType, .lpData, .lpcbData>,  'RegQueryValueExW',  \
    RegQueryValueW, <.hKey, .lpSubKey, .lpValue, .lpcbValue>,  'RegQueryValueW',  \
    RegReplaceKeyA, <.hKey, .lpSubKey, .lpNewFile, .lpOldFile>,  'RegReplaceKeyA',  \
    RegReplaceKeyW, <.hKey, .lpSubKey, .lpNewFile, .lpOldFile>,  'RegReplaceKeyW',  \
    RegRestoreKeyA, <.hKey, .lpFile, .dwFlags>,  'RegRestoreKeyA',  \
    RegRestoreKeyW, <.hKey, .lpFile, .dwFlags>,  'RegRestoreKeyW',  \
    RegSaveKeyA, <.hKey, .lpFile, .lpSecurityAttributes>,  'RegSaveKeyA',  \
    RegSaveKeyExA, <NONE>,  'RegSaveKeyExA',  \
    RegSaveKeyExW, <NONE>,  'RegSaveKeyExW',  \
    RegSaveKeyW, <.hKey, .lpFile, .lpSecurityAttributes>,  'RegSaveKeyW',  \
    RegSetKeySecurity, <.hKey, .SecurityInformation, .pSecurityDescriptor>,  'RegSetKeySecurity',  \
    RegSetValueA, <.hKey, .lpSubKey, .dwType, .lpData, .cbData>,  'RegSetValueA',  \
    RegSetValueExA, <.hKey, .lpValueName, .Reserved, .dwType, .lpData, .cbData>,  'RegSetValueExA',  \
    RegSetValueExW, <.hKey, .lpValueName, .Reserved, .dwType, .lpData, .cbData>,  'RegSetValueExW',  \
    RegSetValueW, <.hKey, .lpSubKey, .dwType, .lpData, .cbData>,  'RegSetValueW',  \
    RegUnLoadKeyA, <.hKey, .lpSubKey>,  'RegUnLoadKeyA',  \
    RegUnLoadKeyW, <.hKey, .lpSubKey>,  'RegUnLoadKeyW',  \
    RegisterEventSourceA, <.lpUNCServerName, .lpSourceName>,  'RegisterEventSourceA',  \
    RegisterEventSourceW, <.lpUNCServerName, .lpSourceName>,  'RegisterEventSourceW',  \
    RegisterIdleTask, <NONE>,  'RegisterIdleTask',  \
    RegisterServiceCtrlHandlerA, <.lpServiceName, .lpHandlerProc>,  'RegisterServiceCtrlHandlerA',  \
    RegisterServiceCtrlHandlerExA, <.lpServiceName, .lpHandlerProc, .lpContext>,  'RegisterServiceCtrlHandlerExA',  \
    RegisterServiceCtrlHandlerExW, <.lpServiceName, .lpHandlerProc, .lpContext>,  'RegisterServiceCtrlHandlerExW',  \
    RegisterServiceCtrlHandlerW, <.lpServiceName, .lpHandlerProc>,  'RegisterServiceCtrlHandlerW',  \
    RegisterTraceGuidsA, <NONE>,  'RegisterTraceGuidsA',  \
    RegisterTraceGuidsW, <NONE>,  'RegisterTraceGuidsW',  \
    RemoveTraceCallback, <NONE>,  'RemoveTraceCallback',  \
    RemoveUsersFromEncryptedFile, <.lpFileName, .pHashes>,  'RemoveUsersFromEncryptedFile',  \
    ReportEventA, <.hEventLog, .wType, .wCategory, .dwEventID, .lpUserSid, .wNumStrings, .dwDataSize, .lpStrings, .lpRawData>,  'ReportEventA',  \
    ReportEventW, <.hEventLog, .wType, .wCategory, .dwEventID, .lpUserSid, .wNumStrings, .dwDataSize, .lpStrings, .lpRawData>,  'ReportEventW',  \
    RevertToSelf, <VOID>,  'RevertToSelf',  \
    SaferCloseLevel, <NONE>,  'SaferCloseLevel',  \
    SaferComputeTokenFromLevel, <NONE>,  'SaferComputeTokenFromLevel',  \
    SaferCreateLevel, <NONE>,  'SaferCreateLevel',  \
    SaferGetLevelInformation, <NONE>,  'SaferGetLevelInformation',  \
    SaferGetPolicyInformation, <NONE>,  'SaferGetPolicyInformation',  \
    SaferIdentifyLevel, <NONE>,  'SaferIdentifyLevel',  \
    SaferRecordEventLogEntry, <NONE>,  'SaferRecordEventLogEntry',  \
    SaferSetLevelInformation, <NONE>,  'SaferSetLevelInformation',  \
    SaferSetPolicyInformation, <NONE>,  'SaferSetPolicyInformation',  \
    SaferiChangeRegistryScope, <NONE>,  'SaferiChangeRegistryScope',  \
    SaferiCompareTokenLevels, <NONE>,  'SaferiCompareTokenLevels',  \
    SaferiIsExecutableFileType, <NONE>,  'SaferiIsExecutableFileType',  \
    SaferiPopulateDefaultsInRegistry, <NONE>,  'SaferiPopulateDefaultsInRegistry',  \
    SaferiRecordEventLogEntry, <NONE>,  'SaferiRecordEventLogEntry',  \
    SaferiReplaceProcessThreadTokens, <NONE>,  'SaferiReplaceProcessThreadTokens',  \
    SaferiSearchMatchingHashRules, <NONE>,  'SaferiSearchMatchingHashRules',  \
    SetAclInformation, <.pAcl, .pAclInformation, .nAclInformationLength, .dwAclInformationClass>,  'SetAclInformation',  \
    SetEntriesInAccessListA, <NONE>,  'SetEntriesInAccessListA',  \
    SetEntriesInAccessListW, <NONE>,  'SetEntriesInAccessListW',  \
    SetEntriesInAclA, <.cCountOfExplicitEntries, .pListOfExplicitEntries, .OldAcl, .NewAcl>,  'SetEntriesInAclA',  \
    SetEntriesInAclW, <.cCountOfExplicitEntries, .pListOfExplicitEntries, .OldAcl, .NewAcl>,  'SetEntriesInAclW',  \
    SetEntriesInAuditListA, <NONE>,  'SetEntriesInAuditListA',  \
    SetEntriesInAuditListW, <NONE>,  'SetEntriesInAuditListW',  \
    SetFileSecurityA, <.lpFileName, .SecurityInformation, .pSecurityDescriptor>,  'SetFileSecurityA',  \
    SetFileSecurityW, <.lpFileName, .SecurityInformation, .pSecurityDescriptor>,  'SetFileSecurityW',  \
    SetInformationCodeAuthzLevelW, <NONE>,  'SetInformationCodeAuthzLevelW',  \
    SetInformationCodeAuthzPolicyW, <NONE>,  'SetInformationCodeAuthzPolicyW',  \
    SetKernelObjectSecurity, <.Handle, .SecurityInformation, .SecurityDescriptor>,  'SetKernelObjectSecurity',  \
    SetNamedSecurityInfoA, <.pObjectName, .ObjectType, .SecurityInfo, .psidOwner, .psidGroup, .pDacl, .pSacl>,  'SetNamedSecurityInfoA',  \
    SetNamedSecurityInfoExA, <NONE>,  'SetNamedSecurityInfoExA',  \
    SetNamedSecurityInfoExW, <NONE>,  'SetNamedSecurityInfoExW',  \
    SetNamedSecurityInfoW, <.pObjectName, .ObjectType, .SecurityInfo, .psidOwner, .psidGroup, .pDacl, .pSacl>,  'SetNamedSecurityInfoW',  \
    SetPrivateObjectSecurity, <.SecurityInformation, .ModificationDescriptor, .ObjectsSecurityDescriptor, .GenericMapping, .Token,  \
      >,  'SetPrivateObjectSecurity',  \
    SetPrivateObjectSecurityEx, <.SecurityInformation, .ModificationDescriptor, .ObjectsSecurityDescriptor, .AutoInheritFlags, .GenericMapping,  \
        .Token>,  'SetPrivateObjectSecurityEx',  \
    SetSecurityDescriptorControl, <.pSecurityDescriptor, .ControlBitsOfInterest, .ControlBitsToSet>,  'SetSecurityDescriptorControl',  \
    SetSecurityDescriptorDacl, <.pSecurityDescriptor, .bDaclPresent, .pDacl, .bDaclDefaulted>,  'SetSecurityDescriptorDacl',  \
    SetSecurityDescriptorGroup, <.pSecurityDescriptor, .pGroup, .bGroupDefaulted>,  'SetSecurityDescriptorGroup',  \
    SetSecurityDescriptorOwner, <.pSecurityDescriptor, .pOwner, .bOwnerDefaulted>,  'SetSecurityDescriptorOwner',  \
    SetSecurityDescriptorRMControl, <.SecurityDescriptor, .RMControl>,  'SetSecurityDescriptorRMControl',  \
    SetSecurityDescriptorSacl, <.pSecurityDescriptor, .bSaclPresent, .pSacl, .bSaclDefaulted>,  'SetSecurityDescriptorSacl',  \
    SetSecurityInfo, <.handle, .ObjectType, .SecurityInfo, .psidOwner, .psidGroup, .pDacl, .pSacl>,  'SetSecurityInfo',  \
    SetSecurityInfoExA, <NONE>,  'SetSecurityInfoExA',  \
    SetSecurityInfoExW, <NONE>,  'SetSecurityInfoExW',  \
    SetServiceBits, <.hServiceStatus, .dwServiceBits, .bSetBitsOn, .bUpdateImmediately>,  'SetServiceBits',  \
    SetServiceObjectSecurity, <.hService, .dwSecurityInformation, .lpSecurityDescriptor>,  'SetServiceObjectSecurity',  \
    SetServiceStatus, <.hServiceStatus, .lpServiceStatus>,  'SetServiceStatus',  \
    SetThreadToken, <.Thread, .Token>,  'SetThreadToken',  \
    SetTokenInformation, <.TokenHandle, .TokenInformationClass, .TokenInformation, .TokenInformationLength>,  'SetTokenInformation',  \
    SetTraceCallback, <NONE>,  'SetTraceCallback',  \
    SetUserFileEncryptionKey, <.pEncryptionCertificate>,  'SetUserFileEncryptionKey',  \
    StartServiceA, <.hService, .dwNumServiceArgs, .lpServiceArgVectors>,  'StartServiceA',  \
    StartServiceCtrlDispatcherA, <.lpServiceStartTable>,  'StartServiceCtrlDispatcherA',  \
    StartServiceCtrlDispatcherW, <.lpServiceStartTable>,  'StartServiceCtrlDispatcherW',  \
    StartServiceW, <.hService, .dwNumServiceArgs, .lpServiceArgVectors>,  'StartServiceW',  \
    StartTraceA, <NONE>,  'StartTraceA',  \
    StartTraceW, <NONE>,  'StartTraceW',  \
    StopTraceA, <NONE>,  'StopTraceA',  \
    StopTraceW, <NONE>,  'StopTraceW',  \
    SynchronizeWindows31FilesAndWindowsNTRegistry, <NONE>,  'SynchronizeWindows31FilesAndWindowsNTRegistry',  \
    SystemFunction001, <NONE>,  'SystemFunction001',  \
    SystemFunction002, <NONE>,  'SystemFunction002',  \
    SystemFunction003, <NONE>,  'SystemFunction003',  \
    SystemFunction004, <NONE>,  'SystemFunction004',  \
    SystemFunction005, <NONE>,  'SystemFunction005',  \
    SystemFunction006, <NONE>,  'SystemFunction006',  \
    SystemFunction007, <NONE>,  'SystemFunction007',  \
    SystemFunction008, <NONE>,  'SystemFunction008',  \
    SystemFunction009, <NONE>,  'SystemFunction009',  \
    SystemFunction010, <NONE>,  'SystemFunction010',  \
    SystemFunction011, <NONE>,  'SystemFunction011',  \
    SystemFunction012, <NONE>,  'SystemFunction012',  \
    SystemFunction013, <NONE>,  'SystemFunction013',  \
    SystemFunction014, <NONE>,  'SystemFunction014',  \
    SystemFunction015, <NONE>,  'SystemFunction015',  \
    SystemFunction016, <NONE>,  'SystemFunction016',  \
    SystemFunction017, <NONE>,  'SystemFunction017',  \
    SystemFunction018, <NONE>,  'SystemFunction018',  \
    SystemFunction019, <NONE>,  'SystemFunction019',  \
    SystemFunction020, <NONE>,  'SystemFunction020',  \
    SystemFunction021, <NONE>,  'SystemFunction021',  \
    SystemFunction022, <NONE>,  'SystemFunction022',  \
    SystemFunction023, <NONE>,  'SystemFunction023',  \
    SystemFunction024, <NONE>,  'SystemFunction024',  \
    SystemFunction025, <NONE>,  'SystemFunction025',  \
    SystemFunction026, <NONE>,  'SystemFunction026',  \
    SystemFunction027, <NONE>,  'SystemFunction027',  \
    SystemFunction028, <NONE>,  'SystemFunction028',  \
    SystemFunction029, <NONE>,  'SystemFunction029',  \
    SystemFunction030, <NONE>,  'SystemFunction030',  \
    SystemFunction031, <NONE>,  'SystemFunction031',  \
    SystemFunction032, <NONE>,  'SystemFunction032',  \
    SystemFunction033, <NONE>,  'SystemFunction033',  \
    SystemFunction034, <NONE>,  'SystemFunction034',  \
    SystemFunction035, <NONE>,  'SystemFunction035',  \
    SystemFunction036, <NONE>,  'SystemFunction036',  \
    SystemFunction040, <NONE>,  'SystemFunction040',  \
    SystemFunction041, <NONE>,  'SystemFunction041',  \
    TraceEvent, <NONE>,  'TraceEvent',  \
    TraceEventInstance, <NONE>,  'TraceEventInstance',  \
    TraceMessage, <NONE>,  'TraceMessage',  \
    TraceMessageVa, <NONE>,  'TraceMessageVa',  \
    TreeResetNamedSecurityInfoA, <.pObjectName, .ObjectType, .SecurityInfo, .pOwner, .pGroup, .pDacl, .pSacl, .KeepExplicit, .fnProgress,  \
        .ProgressInvokeSetting, .Args>,  'TreeResetNamedSecurityInfoA',  \
    TreeResetNamedSecurityInfoW, <.pObjectName, .ObjectType, .SecurityInfo, .pOwner, .pGroup, .pDacl, .pSacl, .KeepExplicit, .fnProgress,  \
        .ProgressInvokeSetting, .Args>,  'TreeResetNamedSecurityInfoW',  \
    TrusteeAccessToObjectA, <NONE>,  'TrusteeAccessToObjectA',  \
    TrusteeAccessToObjectW, <NONE>,  'TrusteeAccessToObjectW',  \
    UninstallApplication, <NONE>,  'UninstallApplication',  \
    UnlockServiceDatabase, <.ScLock>,  'UnlockServiceDatabase',  \
    UnregisterIdleTask, <NONE>,  'UnregisterIdleTask',  \
    UnregisterTraceGuids, <NONE>,  'UnregisterTraceGuids',  \
    UpdateTraceA, <NONE>,  'UpdateTraceA',  \
    UpdateTraceW, <NONE>,  'UpdateTraceW',  \
    WdmWmiServiceMain, <NONE>,  'WdmWmiServiceMain',  \
    WmiCloseBlock, <NONE>,  'WmiCloseBlock',  \
    WmiCloseTraceWithCursor, <NONE>,  'WmiCloseTraceWithCursor',  \
    WmiConvertTimestamp, <NONE>,  'WmiConvertTimestamp',  \
    WmiDevInstToInstanceNameA, <NONE>,  'WmiDevInstToInstanceNameA',  \
    WmiDevInstToInstanceNameW, <NONE>,  'WmiDevInstToInstanceNameW',  \
    WmiEnumerateGuids, <NONE>,  'WmiEnumerateGuids',  \
    WmiExecuteMethodA, <NONE>,  'WmiExecuteMethodA',  \
    WmiExecuteMethodW, <NONE>,  'WmiExecuteMethodW',  \
    WmiFileHandleToInstanceNameA, <NONE>,  'WmiFileHandleToInstanceNameA',  \
    WmiFileHandleToInstanceNameW, <NONE>,  'WmiFileHandleToInstanceNameW',  \
    WmiFreeBuffer, <NONE>,  'WmiFreeBuffer',  \
    WmiGetFirstTraceOffset, <NONE>,  'WmiGetFirstTraceOffset',  \
    WmiGetNextEvent, <NONE>,  'WmiGetNextEvent',  \
    WmiGetTraceHeader, <NONE>,  'WmiGetTraceHeader',  \
    WmiMofEnumerateResourcesA, <NONE>,  'WmiMofEnumerateResourcesA',  \
    WmiMofEnumerateResourcesW, <NONE>,  'WmiMofEnumerateResourcesW',  \
    WmiNotificationRegistrationA, <NONE>,  'WmiNotificationRegistrationA',  \
    WmiNotificationRegistrationW, <NONE>,  'WmiNotificationRegistrationW',  \
    WmiOpenBlock, <NONE>,  'WmiOpenBlock',  \
    WmiOpenTraceWithCursor, <NONE>,  'WmiOpenTraceWithCursor',  \
    WmiParseTraceEvent, <NONE>,  'WmiParseTraceEvent',  \
    WmiQueryAllDataA, <NONE>,  'WmiQueryAllDataA',  \
    WmiQueryAllDataMultipleA, <NONE>,  'WmiQueryAllDataMultipleA',  \
    WmiQueryAllDataMultipleW, <NONE>,  'WmiQueryAllDataMultipleW',  \
    WmiQueryAllDataW, <NONE>,  'WmiQueryAllDataW',  \
    WmiQueryGuidInformation, <NONE>,  'WmiQueryGuidInformation',  \
    WmiQuerySingleInstanceA, <NONE>,  'WmiQuerySingleInstanceA',  \
    WmiQuerySingleInstanceMultipleA, <NONE>,  'WmiQuerySingleInstanceMultipleA',  \
    WmiQuerySingleInstanceMultipleW, <NONE>,  'WmiQuerySingleInstanceMultipleW',  \
    WmiQuerySingleInstanceW, <NONE>,  'WmiQuerySingleInstanceW',  \
    WmiReceiveNotificationsA, <NONE>,  'WmiReceiveNotificationsA',  \
    WmiReceiveNotificationsW, <NONE>,  'WmiReceiveNotificationsW',  \
    WmiSetSingleInstanceA, <NONE>,  'WmiSetSingleInstanceA',  \
    WmiSetSingleInstanceW, <NONE>,  'WmiSetSingleInstanceW',  \
    WmiSetSingleItemA, <NONE>,  'WmiSetSingleItemA',  \
    WmiSetSingleItemW, <NONE>,  'WmiSetSingleItemW',  \
    Wow64Win32ApiEntry, <NONE>,  'Wow64Win32ApiEntry',  \
    WriteEncryptedFileRaw, <.pfImportCallback, .pvCallbackContext, .pvContext>,  'WriteEncryptedFileRaw'
