Function at 0x100417b0
Capabilities:
Link many functions at runtime

Disassembly:
push esi
mov esi, ecx
push edi
cmp dword [esi + 0xc4], 0
jne 0x10041ab7
mov ecx, str.WINTRUST.DLL
mov dword [esi + 0xc4], 1
call fcn.10016930
mov dword [esi + 0xcc], eax
test eax, eax
je 0x10041add
mov ecx, eax
call fcn.100416d0
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.WinVerifyTrust
push dword [esi + 0xcc]
call edi
push str.CryptCATAdminCalcHashFromFileHandle
push dword [esi + 0xcc]
mov dword [esi + 0xd0], eax
call edi
push str.CryptCATAdminAcquireContext
push dword [esi + 0xcc]
mov dword [esi + 0xdc], eax
call edi
push str.CryptCATAdminReleaseContext
push dword [esi + 0xcc]
mov dword [esi + 0xd4], eax
call edi
push str.CryptCATAdminEnumCatalogFromHash
push dword [esi + 0xcc]
mov dword [esi + 0xd8], eax
call edi
push str.CryptCATAdminReleaseCatalogContext
push dword [esi + 0xcc]
mov dword [esi + 0xe0], eax
call edi
push str.CryptCATCatalogInfoFromContext
push dword [esi + 0xcc]
mov dword [esi + 0xe4], eax
call edi
push str.WTHelperGetProvSignerFromChain
push dword [esi + 0xcc]
mov dword [esi + 0xe8], eax
call edi
push str.WTHelperProvDataFromStateData
push dword [esi + 0xcc]
mov dword [esi + 0x11c], eax
call edi
push str.WTHelperGetProvCertFromChain
push dword [esi + 0xcc]
mov dword [esi + 0x120], eax
call edi
cmp dword [esi + 0xd0], 0
mov dword [esi + 0x124], eax
je 0x10041add
cmp dword [esi + 0xdc], 0
je 0x10041add
mov ecx, dword [esi + 0xd4]
test ecx, ecx
je 0x10041add
cmp dword [esi + 0xd8], 0
je 0x10041add
cmp dword [esi + 0xe0], 0
je 0x10041add
cmp dword [esi + 0xe4], 0
je 0x10041add
cmp dword [esi + 0xe8], 0
je 0x10041add
cmp dword [esi + 0x11c], 0
je 0x10041add
cmp dword [esi + 0x120], 0
je 0x10041add
push 0
push 0
lea eax, [esi + 0xac]
push eax
call ecx
mov ecx, str.Crypt32.dll
mov dword [esi + 0xa8], eax
call fcn.10016930
mov dword [esi + 0xec], eax
test eax, eax
je 0x10041add
push 0x100e6378
push eax
call edi
push 0x100e638c
push dword [esi + 0xec]
mov dword [esi + 0xf0], eax
call edi
push 0x100e639c
push dword [esi + 0xec]
mov dword [esi + 0xf4], eax
call edi
push 0x100e63ac
push dword [esi + 0xec]
mov dword [esi + 0xf8], eax
call edi
push 0x100e63c0
push dword [esi + 0xec]
mov dword [esi + 0xfc], eax
call edi
push 0x100e63d4
push dword [esi + 0xec]
mov dword [esi + 0x100], eax
call edi
push 0x100e63f0
push dword [esi + 0xec]
mov dword [esi + 0x104], eax
call edi
push 0x100e640c
push dword [esi + 0xec]
mov dword [esi + 0x108], eax
call edi
push 0x100e6420
push dword [esi + 0xec]
mov dword [esi + 0x10c], eax
call edi
push 0x100e6430
push dword [esi + 0xec]
mov dword [esi + 0x110], eax
call edi
push 0x100e6448
push dword [esi + 0xec]
mov dword [esi + 0x114], eax
call edi
push 0x100e6458
push dword [esi + 0xec]
mov dword [esi + 0x118], eax
call edi
push str.CertDuplicateCertificateContext
push dword [esi + 0xec]
mov dword [esi + 0x12c], eax
call edi
cmp dword [esi + 0xf0], 0
mov dword [esi + 0x128], eax
je 0x10041add
cmp dword [esi + 0xf4], 0
je 0x10041add
cmp dword [esi + 0xf8], 0
je 0x10041add
cmp dword [esi + 0xfc], 0
je 0x10041add
cmp dword [esi + 0x100], 0
je 0x10041add
cmp dword [esi + 0x104], 0
je 0x10041add
cmp dword [esi + 0x108], 0
je 0x10041add
cmp dword [esi + 0x10c], 0
je 0x10041add
cmp dword [esi + 0x110], 0
je 0x10041add
cmp dword [esi + 0x114], 0
je 0x10041add
cmp dword [esi + 0x118], 0
je 0x10041add
cmp dword [esi + 0x12c], 0
jne 0x10041ac9
jmp 0x10041add
cmp dword [esi + 0xcc], 0
je 0x10041ad1
cmp dword [esi + 0xec], 0
je 0x10041ad1
pop edi
mov eax, 1
pop esi
ret
push dword [esi + 0xc8]
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x100e185c
push 0x100e185c
push 0
push 0
call fcn.1008b562
add esp, 0x10
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, esi
mov dword [esi + 0xc8], eax
call fcn.10041b10
pop edi
xor eax, eax
pop esi
ret