; ====================================================;
;                                                     ;
;     wintrust.inc for EC v2 Fasm visual projects     ;
;                   (version 1.0.0)                   ;
;                                                     ;
;            Copyright © Ramon Sala - 2020            ;
;                                                     ;
; ====================================================;

if ~defined WINTRUST_INC
define WINTRUST_INC 1

if defined APP_WIN64
    extrn '__imp_AddPersonalTrustDBPages' as AddPersonalTrustDBPages:qword
    extrn '__imp_CatalogCompactHashDatabase' as CatalogCompactHashDatabase:qword
    extrn '__imp_CryptCATAdminAcquireContext' as CryptCATAdminAcquireContext:qword
    extrn '__imp_CryptCATAdminAcquireContext2' as CryptCATAdminAcquireContext2:qword
    extrn '__imp_CryptCATAdminAddCatalog' as CryptCATAdminAddCatalog:qword
    extrn '__imp_CryptCATAdminCalcHashFromFileHandle' as CryptCATAdminCalcHashFromFileHandle:qword
    extrn '__imp_CryptCATAdminCalcHashFromFileHandle2' as CryptCATAdminCalcHashFromFileHandle2:qword
    extrn '__imp_CryptCATAdminEnumCatalogFromHash' as CryptCATAdminEnumCatalogFromHash:qword
    extrn '__imp_CryptCATAdminPauseServiceForBackup' as CryptCATAdminPauseServiceForBackup:qword
    extrn '__imp_CryptCATAdminReleaseCatalogContext' as CryptCATAdminReleaseCatalogContext:qword
    extrn '__imp_CryptCATAdminReleaseContext' as CryptCATAdminReleaseContext:qword
    extrn '__imp_CryptCATAdminRemoveCatalog' as CryptCATAdminRemoveCatalog:qword
    extrn '__imp_CryptCATAdminResolveCatalogPath' as CryptCATAdminResolveCatalogPath:qword
    extrn '__imp_CryptCATAllocSortedMemberInfo' as CryptCATAllocSortedMemberInfo:qword
    extrn '__imp_CryptCATCDFClose' as CryptCATCDFClose:qword
    extrn '__imp_CryptCATCDFEnumAttributes' as CryptCATCDFEnumAttributes:qword
    extrn '__imp_CryptCATCDFEnumAttributesWithCDFTag' as CryptCATCDFEnumAttributesWithCDFTag:qword
    extrn '__imp_CryptCATCDFEnumCatAttributes' as CryptCATCDFEnumCatAttributes:qword
    extrn '__imp_CryptCATCDFEnumMembers' as CryptCATCDFEnumMembers:qword
    extrn '__imp_CryptCATCDFEnumMembersByCDFTag' as CryptCATCDFEnumMembersByCDFTag:qword
    extrn '__imp_CryptCATCDFEnumMembersByCDFTagEx' as CryptCATCDFEnumMembersByCDFTagEx:qword
    extrn '__imp_CryptCATCDFOpen' as CryptCATCDFOpen:qword
    extrn '__imp_CryptCATCatalogInfoFromContext' as CryptCATCatalogInfoFromContext:qword
    extrn '__imp_CryptCATClose' as CryptCATClose:qword
    extrn '__imp_CryptCATEnumerateAttr' as CryptCATEnumerateAttr:qword
    extrn '__imp_CryptCATEnumerateCatAttr' as CryptCATEnumerateCatAttr:qword
    extrn '__imp_CryptCATEnumerateMember' as CryptCATEnumerateMember:qword
    extrn '__imp_CryptCATFreeSortedMemberInfo' as CryptCATFreeSortedMemberInfo:qword
    extrn '__imp_CryptCATGetAttrInfo' as CryptCATGetAttrInfo:qword
    extrn '__imp_CryptCATGetCatAttrInfo' as CryptCATGetCatAttrInfo:qword
    extrn '__imp_CryptCATGetMemberInfo' as CryptCATGetMemberInfo:qword
    extrn '__imp_CryptCATHandleFromStore' as CryptCATHandleFromStore:qword
    extrn '__imp_CryptCATOpen' as CryptCATOpen:qword
    extrn '__imp_CryptCATPersistStore' as CryptCATPersistStore:qword
    extrn '__imp_CryptCATPutAttrInfo' as CryptCATPutAttrInfo:qword
    extrn '__imp_CryptCATPutCatAttrInfo' as CryptCATPutCatAttrInfo:qword
    extrn '__imp_CryptCATPutMemberInfo' as CryptCATPutMemberInfo:qword
    extrn '__imp_CryptCATStoreFromHandle' as CryptCATStoreFromHandle:qword
    extrn '__imp_CryptSIPCreateIndirectData' as CryptSIPCreateIndirectData:qword
    extrn '__imp_CryptSIPGetCaps' as CryptSIPGetCaps:qword
    extrn '__imp_CryptSIPGetSignedDataMsg' as CryptSIPGetSignedDataMsg:qword
    extrn '__imp_CryptSIPPutSignedDataMsg' as CryptSIPPutSignedDataMsg:qword
    extrn '__imp_CryptSIPRemoveSignedDataMsg' as CryptSIPRemoveSignedDataMsg:qword
    extrn '__imp_CryptSIPVerifyIndirectData' as CryptSIPVerifyIndirectData:qword
    extrn '__imp_DriverCleanupPolicy' as DriverCleanupPolicy:qword
    extrn '__imp_DriverFinalPolicy' as DriverFinalPolicy:qword
    extrn '__imp_DriverInitializePolicy' as DriverInitializePolicy:qword
    extrn '__imp_FindCertsByIssuer' as FindCertsByIssuer:qword
    extrn '__imp_GenericChainCertificateTrust' as GenericChainCertificateTrust:qword
    extrn '__imp_GenericChainFinalProv' as GenericChainFinalProv:qword
    extrn '__imp_HTTPSCertificateTrust' as HTTPSCertificateTrust:qword
    extrn '__imp_HTTPSFinalProv' as HTTPSFinalProv:qword
    extrn '__imp_IsCatalogFile' as IsCatalogFile:qword
    extrn '__imp_MsCatConstructHashTag' as MsCatConstructHashTag:qword
    extrn '__imp_MsCatFreeHashTag' as MsCatFreeHashTag:qword
    extrn '__imp_OfficeCleanupPolicy' as OfficeCleanupPolicy:qword
    extrn '__imp_OfficeInitializePolicy' as OfficeInitializePolicy:qword
    extrn '__imp_OpenPersonalTrustDBDialog' as OpenPersonalTrustDBDialog:qword
    extrn '__imp_OpenPersonalTrustDBDialogEx' as OpenPersonalTrustDBDialogEx:qword
    extrn '__imp_SoftpubAuthenticode' as SoftpubAuthenticode:qword
    extrn '__imp_SoftpubCheckCert' as SoftpubCheckCert:qword
    extrn '__imp_SoftpubCleanup' as SoftpubCleanup:qword
    extrn '__imp_SoftpubDefCertInit' as SoftpubDefCertInit:qword
    extrn '__imp_SoftpubDllRegisterServer' as SoftpubDllRegisterServer:qword
    extrn '__imp_SoftpubDllUnregisterServer' as SoftpubDllUnregisterServer:qword
    extrn '__imp_SoftpubDumpStructure' as SoftpubDumpStructure:qword
    extrn '__imp_SoftpubFreeDefUsageCallData' as SoftpubFreeDefUsageCallData:qword
    extrn '__imp_SoftpubInitialize' as SoftpubInitialize:qword
    extrn '__imp_SoftpubLoadDefUsageCallData' as SoftpubLoadDefUsageCallData:qword
    extrn '__imp_SoftpubLoadMessage' as SoftpubLoadMessage:qword
    extrn '__imp_SoftpubLoadSignature' as SoftpubLoadSignature:qword
    extrn '__imp_TrustDecode' as TrustDecode:qword
    extrn '__imp_TrustFindIssuerCertificate' as TrustFindIssuerCertificate:qword
    extrn '__imp_TrustFreeDecode' as TrustFreeDecode:qword
    extrn '__imp_TrustIsCertificateSelfSigned' as TrustIsCertificateSelfSigned:qword
    extrn '__imp_TrustOpenStores' as TrustOpenStores:qword
    extrn '__imp_WTHelperCertCheckValidSignature' as WTHelperCertCheckValidSignature:qword
    extrn '__imp_WTHelperCertFindIssuerCertificate' as WTHelperCertFindIssuerCertificate:qword
    extrn '__imp_WTHelperCertIsSelfSigned' as WTHelperCertIsSelfSigned:qword
    extrn '__imp_WTHelperCheckCertUsage' as WTHelperCheckCertUsage:qword
    extrn '__imp_WTHelperGetAgencyInfo' as WTHelperGetAgencyInfo:qword
    extrn '__imp_WTHelperGetFileHandle' as WTHelperGetFileHandle:qword
    extrn '__imp_WTHelperGetFileHash' as WTHelperGetFileHash:qword
    extrn '__imp_WTHelperGetFileName' as WTHelperGetFileName:qword
    extrn '__imp_WTHelperGetKnownUsages' as WTHelperGetKnownUsages:qword
    extrn '__imp_WTHelperGetProvCertFromChain' as WTHelperGetProvCertFromChain:qword
    extrn '__imp_WTHelperGetProvPrivateDataFromChain' as WTHelperGetProvPrivateDataFromChain:qword
    extrn '__imp_WTHelperGetProvSignerFromChain' as WTHelperGetProvSignerFromChain:qword
    extrn '__imp_WTHelperIsInRootStore' as WTHelperIsInRootStore:qword
    extrn '__imp_WTHelperOpenKnownStores' as WTHelperOpenKnownStores:qword
    extrn '__imp_WTHelperProvDataFromStateData' as WTHelperProvDataFromStateData:qword
    extrn '__imp_WVTAsn1CatMemberInfoDecode' as WVTAsn1CatMemberInfoDecode:qword
    extrn '__imp_WVTAsn1CatMemberInfoEncode' as WVTAsn1CatMemberInfoEncode:qword
    extrn '__imp_WVTAsn1CatNameValueDecode' as WVTAsn1CatNameValueDecode:qword
    extrn '__imp_WVTAsn1CatNameValueEncode' as WVTAsn1CatNameValueEncode:qword
    extrn '__imp_WVTAsn1SpcFinancialCriteriaInfoDecode' as WVTAsn1SpcFinancialCriteriaInfoDecode:qword
    extrn '__imp_WVTAsn1SpcFinancialCriteriaInfoEncode' as WVTAsn1SpcFinancialCriteriaInfoEncode:qword
    extrn '__imp_WVTAsn1SpcIndirectDataContentDecode' as WVTAsn1SpcIndirectDataContentDecode:qword
    extrn '__imp_WVTAsn1SpcIndirectDataContentEncode' as WVTAsn1SpcIndirectDataContentEncode:qword
    extrn '__imp_WVTAsn1SpcLinkDecode' as WVTAsn1SpcLinkDecode:qword
    extrn '__imp_WVTAsn1SpcLinkEncode' as WVTAsn1SpcLinkEncode:qword
    extrn '__imp_WVTAsn1SpcMinimalCriteriaInfoDecode' as WVTAsn1SpcMinimalCriteriaInfoDecode:qword
    extrn '__imp_WVTAsn1SpcMinimalCriteriaInfoEncode' as WVTAsn1SpcMinimalCriteriaInfoEncode:qword
    extrn '__imp_WVTAsn1SpcPeImageDataDecode' as WVTAsn1SpcPeImageDataDecode:qword
    extrn '__imp_WVTAsn1SpcPeImageDataEncode' as WVTAsn1SpcPeImageDataEncode:qword
    extrn '__imp_WVTAsn1SpcSigInfoDecode' as WVTAsn1SpcSigInfoDecode:qword
    extrn '__imp_WVTAsn1SpcSigInfoEncode' as WVTAsn1SpcSigInfoEncode:qword
    extrn '__imp_WVTAsn1SpcSpAgencyInfoDecode' as WVTAsn1SpcSpAgencyInfoDecode:qword
    extrn '__imp_WVTAsn1SpcSpAgencyInfoEncode' as WVTAsn1SpcSpAgencyInfoEncode:qword
    extrn '__imp_WVTAsn1SpcSpOpusInfoDecode' as WVTAsn1SpcSpOpusInfoDecode:qword
    extrn '__imp_WVTAsn1SpcSpOpusInfoEncode' as WVTAsn1SpcSpOpusInfoEncode:qword
    extrn '__imp_WVTAsn1SpcStatementTypeDecode' as WVTAsn1SpcStatementTypeDecode:qword
    extrn '__imp_WVTAsn1SpcStatementTypeEncode' as WVTAsn1SpcStatementTypeEncode:qword
    extrn '__imp_WinVerifyTrust' as WinVerifyTrust:qword
    extrn '__imp_WinVerifyTrustEx' as WinVerifyTrustEx:qword
    extrn '__imp_WintrustAddActionID' as WintrustAddActionID:qword
    extrn '__imp_WintrustAddDefaultForUsage' as WintrustAddDefaultForUsage:qword
    extrn '__imp_WintrustCertificateTrust' as WintrustCertificateTrust:qword
    extrn '__imp_WintrustGetDefaultForUsage' as WintrustGetDefaultForUsage:qword
    extrn '__imp_WintrustGetRegPolicyFlags' as WintrustGetRegPolicyFlags:qword
    extrn '__imp_WintrustLoadFunctionPointers' as WintrustLoadFunctionPointers:qword
    extrn '__imp_WintrustRemoveActionID' as WintrustRemoveActionID:qword
    extrn '__imp_WintrustSetDefaultIncludePEPageHashes' as WintrustSetDefaultIncludePEPageHashes:qword
    extrn '__imp_WintrustSetRegPolicyFlags' as WintrustSetRegPolicyFlags:qword
    extrn '__imp_mscat32DllRegisterServer' as mscat32DllRegisterServer:qword
    extrn '__imp_mscat32DllUnregisterServer' as mscat32DllUnregisterServer:qword
    extrn '__imp_mssip32DllRegisterServer' as mssip32DllRegisterServer:qword
    extrn '__imp_mssip32DllUnregisterServer' as mssip32DllUnregisterServer:qword
else
    extrn '__imp__AddPersonalTrustDBPages@12' as AddPersonalTrustDBPages:dword
    extrn '__imp__CatalogCompactHashDatabase@16' as CatalogCompactHashDatabase:dword
    extrn '__imp__CryptCATAdminAcquireContext@12' as CryptCATAdminAcquireContext:dword
    extrn '__imp__CryptCATAdminAcquireContext2@20' as CryptCATAdminAcquireContext2:dword
    extrn '__imp__CryptCATAdminAddCatalog@16' as CryptCATAdminAddCatalog:dword
    extrn '__imp__CryptCATAdminCalcHashFromFileHandle@16' as CryptCATAdminCalcHashFromFileHandle:dword
    extrn '__imp__CryptCATAdminCalcHashFromFileHandle2@20' as CryptCATAdminCalcHashFromFileHandle2:dword
    extrn '__imp__CryptCATAdminEnumCatalogFromHash@20' as CryptCATAdminEnumCatalogFromHash:dword
    extrn '__imp__CryptCATAdminPauseServiceForBackup@8' as CryptCATAdminPauseServiceForBackup:dword
    extrn '__imp__CryptCATAdminReleaseCatalogContext@12' as CryptCATAdminReleaseCatalogContext:dword
    extrn '__imp__CryptCATAdminReleaseContext@8' as CryptCATAdminReleaseContext:dword
    extrn '__imp__CryptCATAdminRemoveCatalog@12' as CryptCATAdminRemoveCatalog:dword
    extrn '__imp__CryptCATAdminResolveCatalogPath@16' as CryptCATAdminResolveCatalogPath:dword
    extrn '__imp__CryptCATAllocSortedMemberInfo@8' as CryptCATAllocSortedMemberInfo:dword
    extrn '__imp__CryptCATCDFClose@4' as CryptCATCDFClose:dword
    extrn '__imp__CryptCATCDFEnumAttributes@16' as CryptCATCDFEnumAttributes:dword
    extrn '__imp__CryptCATCDFEnumAttributesWithCDFTag@20' as CryptCATCDFEnumAttributesWithCDFTag:dword
    extrn '__imp__CryptCATCDFEnumCatAttributes@12' as CryptCATCDFEnumCatAttributes:dword
    extrn '__imp__CryptCATCDFEnumMembers@12' as CryptCATCDFEnumMembers:dword
    extrn '__imp__CryptCATCDFEnumMembersByCDFTag@16' as CryptCATCDFEnumMembersByCDFTag:dword
    extrn '__imp__CryptCATCDFEnumMembersByCDFTagEx@24' as CryptCATCDFEnumMembersByCDFTagEx:dword
    extrn '__imp__CryptCATCDFOpen@8' as CryptCATCDFOpen:dword
    extrn '__imp__CryptCATCatalogInfoFromContext@12' as CryptCATCatalogInfoFromContext:dword
    extrn '__imp__CryptCATClose@4' as CryptCATClose:dword
    extrn '__imp__CryptCATEnumerateAttr@12' as CryptCATEnumerateAttr:dword
    extrn '__imp__CryptCATEnumerateCatAttr@8' as CryptCATEnumerateCatAttr:dword
    extrn '__imp__CryptCATEnumerateMember@8' as CryptCATEnumerateMember:dword
    extrn '__imp__CryptCATFreeSortedMemberInfo@4' as CryptCATFreeSortedMemberInfo:dword
    extrn '__imp__CryptCATGetAttrInfo@12' as CryptCATGetAttrInfo:dword
    extrn '__imp__CryptCATGetCatAttrInfo@8' as CryptCATGetCatAttrInfo:dword
    extrn '__imp__CryptCATGetMemberInfo@8' as CryptCATGetMemberInfo:dword
    extrn '__imp__CryptCATHandleFromStore@4' as CryptCATHandleFromStore:dword
    extrn '__imp__CryptCATOpen@20' as CryptCATOpen:dword
    extrn '__imp__CryptCATPersistStore@4' as CryptCATPersistStore:dword
    extrn '__imp__CryptCATPutAttrInfo@24' as CryptCATPutAttrInfo:dword
    extrn '__imp__CryptCATPutCatAttrInfo@20' as CryptCATPutCatAttrInfo:dword
    extrn '__imp__CryptCATPutMemberInfo@28' as CryptCATPutMemberInfo:dword
    extrn '__imp__CryptCATStoreFromHandle@4' as CryptCATStoreFromHandle:dword
    extrn '__imp__CryptSIPCreateIndirectData@12' as CryptSIPCreateIndirectData:dword
    extrn '__imp__CryptSIPGetCaps@8' as CryptSIPGetCaps:dword
    extrn '__imp__CryptSIPGetSignedDataMsg@20' as CryptSIPGetSignedDataMsg:dword
    extrn '__imp__CryptSIPPutSignedDataMsg@20' as CryptSIPPutSignedDataMsg:dword
    extrn '__imp__CryptSIPRemoveSignedDataMsg@8' as CryptSIPRemoveSignedDataMsg:dword
    extrn '__imp__CryptSIPVerifyIndirectData@8' as CryptSIPVerifyIndirectData:dword
    extrn '__imp__DriverCleanupPolicy@4' as DriverCleanupPolicy:dword
    extrn '__imp__DriverFinalPolicy@4' as DriverFinalPolicy:dword
    extrn '__imp__DriverInitializePolicy@4' as DriverInitializePolicy:dword
    extrn '__imp__FindCertsByIssuer@28' as FindCertsByIssuer:dword
    extrn '__imp__GenericChainCertificateTrust@4' as GenericChainCertificateTrust:dword
    extrn '__imp__GenericChainFinalProv@4' as GenericChainFinalProv:dword
    extrn '__imp__HTTPSCertificateTrust@4' as HTTPSCertificateTrust:dword
    extrn '__imp__HTTPSFinalProv@4' as HTTPSFinalProv:dword
    extrn '__imp__IsCatalogFile@8' as IsCatalogFile:dword
    extrn '__imp__MsCatConstructHashTag@12' as MsCatConstructHashTag:dword
    extrn '__imp__MsCatFreeHashTag@4' as MsCatFreeHashTag:dword
    extrn '__imp__OfficeCleanupPolicy@4' as OfficeCleanupPolicy:dword
    extrn '__imp__OfficeInitializePolicy@4' as OfficeInitializePolicy:dword
    extrn '__imp__OpenPersonalTrustDBDialog@4' as OpenPersonalTrustDBDialog:dword
    extrn '__imp__OpenPersonalTrustDBDialogEx@12' as OpenPersonalTrustDBDialogEx:dword
    extrn '__imp__SoftpubAuthenticode@4' as SoftpubAuthenticode:dword
    extrn '__imp__SoftpubCheckCert@16' as SoftpubCheckCert:dword
    extrn '__imp__SoftpubCleanup@4' as SoftpubCleanup:dword
    extrn '__imp__SoftpubDefCertInit@4' as SoftpubDefCertInit:dword
    extrn '__imp__SoftpubDllRegisterServer@0' as SoftpubDllRegisterServer:dword
    extrn '__imp__SoftpubDllUnregisterServer@0' as SoftpubDllUnregisterServer:dword
    extrn '__imp__SoftpubDumpStructure@4' as SoftpubDumpStructure:dword
    extrn '__imp__SoftpubFreeDefUsageCallData@4' as SoftpubFreeDefUsageCallData:dword
    extrn '__imp__SoftpubInitialize@4' as SoftpubInitialize:dword
    extrn '__imp__SoftpubLoadDefUsageCallData@8' as SoftpubLoadDefUsageCallData:dword
    extrn '__imp__SoftpubLoadMessage@4' as SoftpubLoadMessage:dword
    extrn '__imp__SoftpubLoadSignature@4' as SoftpubLoadSignature:dword
    extrn '__imp__TrustDecode@36' as TrustDecode:dword
    extrn '__imp__TrustFindIssuerCertificate@32' as TrustFindIssuerCertificate:dword
    extrn '__imp__TrustFreeDecode@8' as TrustFreeDecode:dword
    extrn '__imp__TrustIsCertificateSelfSigned@12' as TrustIsCertificateSelfSigned:dword
    extrn '__imp__TrustOpenStores@16' as TrustOpenStores:dword
    extrn '__imp__WTHelperCertCheckValidSignature@4' as WTHelperCertCheckValidSignature:dword
    extrn '__imp__WTHelperCertFindIssuerCertificate@20' as WTHelperCertFindIssuerCertificate:dword
    extrn '__imp__WTHelperCertIsSelfSigned@8' as WTHelperCertIsSelfSigned:dword
    extrn '__imp__WTHelperCheckCertUsage@8' as WTHelperCheckCertUsage:dword
    extrn '__imp__WTHelperGetAgencyInfo@12' as WTHelperGetAgencyInfo:dword
    extrn '__imp__WTHelperGetFileHandle@4' as WTHelperGetFileHandle:dword
    extrn '__imp__WTHelperGetFileHash@24' as WTHelperGetFileHash:dword
    extrn '__imp__WTHelperGetFileName@4' as WTHelperGetFileName:dword
    extrn '__imp__WTHelperGetKnownUsages@8' as WTHelperGetKnownUsages:dword
    extrn '__imp__WTHelperGetProvCertFromChain@8' as WTHelperGetProvCertFromChain:dword
    extrn '__imp__WTHelperGetProvPrivateDataFromChain@8' as WTHelperGetProvPrivateDataFromChain:dword
    extrn '__imp__WTHelperGetProvSignerFromChain@16' as WTHelperGetProvSignerFromChain:dword
    extrn '__imp__WTHelperIsInRootStore@8' as WTHelperIsInRootStore:dword
    extrn '__imp__WTHelperOpenKnownStores@4' as WTHelperOpenKnownStores:dword
    extrn '__imp__WTHelperProvDataFromStateData@4' as WTHelperProvDataFromStateData:dword
    extrn '__imp__WVTAsn1CatMemberInfoDecode@28' as WVTAsn1CatMemberInfoDecode:dword
    extrn '__imp__WVTAsn1CatMemberInfoEncode@20' as WVTAsn1CatMemberInfoEncode:dword
    extrn '__imp__WVTAsn1CatNameValueDecode@28' as WVTAsn1CatNameValueDecode:dword
    extrn '__imp__WVTAsn1CatNameValueEncode@20' as WVTAsn1CatNameValueEncode:dword
    extrn '__imp__WVTAsn1SpcFinancialCriteriaInfoDecode@28' as WVTAsn1SpcFinancialCriteriaInfoDecode:dword
    extrn '__imp__WVTAsn1SpcFinancialCriteriaInfoEncode@20' as WVTAsn1SpcFinancialCriteriaInfoEncode:dword
    extrn '__imp__WVTAsn1SpcIndirectDataContentDecode@28' as WVTAsn1SpcIndirectDataContentDecode:dword
    extrn '__imp__WVTAsn1SpcIndirectDataContentEncode@20' as WVTAsn1SpcIndirectDataContentEncode:dword
    extrn '__imp__WVTAsn1SpcLinkDecode@28' as WVTAsn1SpcLinkDecode:dword
    extrn '__imp__WVTAsn1SpcLinkEncode@20' as WVTAsn1SpcLinkEncode:dword
    extrn '__imp__WVTAsn1SpcMinimalCriteriaInfoDecode@28' as WVTAsn1SpcMinimalCriteriaInfoDecode:dword
    extrn '__imp__WVTAsn1SpcMinimalCriteriaInfoEncode@20' as WVTAsn1SpcMinimalCriteriaInfoEncode:dword
    extrn '__imp__WVTAsn1SpcPeImageDataDecode@28' as WVTAsn1SpcPeImageDataDecode:dword
    extrn '__imp__WVTAsn1SpcPeImageDataEncode@20' as WVTAsn1SpcPeImageDataEncode:dword
    extrn '__imp__WVTAsn1SpcSigInfoDecode@28' as WVTAsn1SpcSigInfoDecode:dword
    extrn '__imp__WVTAsn1SpcSigInfoEncode@20' as WVTAsn1SpcSigInfoEncode:dword
    extrn '__imp__WVTAsn1SpcSpAgencyInfoDecode@28' as WVTAsn1SpcSpAgencyInfoDecode:dword
    extrn '__imp__WVTAsn1SpcSpAgencyInfoEncode@20' as WVTAsn1SpcSpAgencyInfoEncode:dword
    extrn '__imp__WVTAsn1SpcSpOpusInfoDecode@28' as WVTAsn1SpcSpOpusInfoDecode:dword
    extrn '__imp__WVTAsn1SpcSpOpusInfoEncode@20' as WVTAsn1SpcSpOpusInfoEncode:dword
    extrn '__imp__WVTAsn1SpcStatementTypeDecode@28' as WVTAsn1SpcStatementTypeDecode:dword
    extrn '__imp__WVTAsn1SpcStatementTypeEncode@20' as WVTAsn1SpcStatementTypeEncode:dword
    extrn '__imp__WinVerifyTrust@12' as WinVerifyTrust:dword
    extrn '__imp__WinVerifyTrustEx@12' as WinVerifyTrustEx:dword
    extrn '__imp__WintrustAddActionID@12' as WintrustAddActionID:dword
    extrn '__imp__WintrustAddDefaultForUsage@8' as WintrustAddDefaultForUsage:dword
    extrn '__imp__WintrustCertificateTrust@4' as WintrustCertificateTrust:dword
    extrn '__imp__WintrustGetDefaultForUsage@12' as WintrustGetDefaultForUsage:dword
    extrn '__imp__WintrustGetRegPolicyFlags@4' as WintrustGetRegPolicyFlags:dword
    extrn '__imp__WintrustLoadFunctionPointers@8' as WintrustLoadFunctionPointers:dword
    extrn '__imp__WintrustRemoveActionID@4' as WintrustRemoveActionID:dword
    extrn '__imp__WintrustSetDefaultIncludePEPageHashes@4' as WintrustSetDefaultIncludePEPageHashes:dword
    extrn '__imp__WintrustSetRegPolicyFlags@4' as WintrustSetRegPolicyFlags:dword
    extrn '__imp__mscat32DllRegisterServer@0' as mscat32DllRegisterServer:dword
    extrn '__imp__mscat32DllUnregisterServer@0' as mscat32DllUnregisterServer:dword
    extrn '__imp__mssip32DllRegisterServer@0' as mssip32DllRegisterServer:dword
    extrn '__imp__mssip32DllUnregisterServer@0' as mssip32DllUnregisterServer:dword
end if

;======================= Undocumented functions (unknown arguments) =======================;
;if defined APP_WIN64
    ;extrn '__imp_CryptCATVerifyMember' as CryptCATVerifyMember:qword
    ;extrn '__imp_CryptSIPGetInfo' as CryptSIPGetInfo:qword
    ;extrn '__imp_CryptSIPGetRegWorkingFlags' as CryptSIPGetRegWorkingFlags:qword
    ;extrn '__imp_WVTAsn1CatMemberInfo2Decode' as WVTAsn1CatMemberInfo2Decode:qword
    ;extrn '__imp_WVTAsn1CatMemberInfo2Encode' as WVTAsn1CatMemberInfo2Encode:qword
;else
    ;extrn '__imp__CryptCATVerifyMember@??' as CryptCATVerifyMember:dword
    ;extrn '__imp__CryptSIPGetInfo@??' as CryptSIPGetInfo:dword
    ;extrn '__imp__CryptSIPGetRegWorkingFlags@??' as CryptSIPGetRegWorkingFlags:dword
    ;extrn '__imp__WVTAsn1CatMemberInfo2Decode@??' as WVTAsn1CatMemberInfo2Decode:dword
    ;extrn '__imp__WVTAsn1CatMemberInfo2Encode@??' as WVTAsn1CatMemberInfo2Encode:dword
;end if

end if ;WINTRUST_INC
