Function at 0x40f490
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x563067
mov eax, dword fs:[0]
push eax
mov eax, 0x2aa0
call fcn.004400a0
mov eax, dword [0x5df890]
xor eax, esp
mov dword [esp + 0x2a9c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5df890]
xor eax, esp
push eax
lea eax, [esp + 0x2ab4]
mov dword fs:[0], eax
xor ebx, ebx
push 0x27ff
lea eax, [esp + 0x2b5]
push ebx
mov dword [esp + 0x2ac4], 1
push eax
mov byte [esp + 0x2bc], bl
call fcn.0043bff0
mov eax, dword [esp + 0x2ad4]
mov edi, 0x10
add esp, 0xc
mov dword [esp + 0x18], 0x2800
cmp dword [esp + 0x2adc], edi
jae 0x40f51d
lea eax, [esp + 0x2ac8]
push ebx
push ebx
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x2bc]
push edx
push ebx
push ebx
push eax
call dword [0x566090]
push str.ROOT
push 0x20000
push ebx
push 0x10001
push 0xa
call dword [0x56608c]
mov esi, eax
mov dword [esp + 0x14], esi
cmp esi, ebx
jne 0x40f5bb
push edi
push str.Error
push 0x5cff44
push ebx
call dword [0x56654c]
cmp dword [esp + 0x2adc], edi
jb 0x40f582
mov eax, dword [esp + 0x2ac8]
push eax
call fcn.0041d541
add esp, 4
mov dword [esp + 0x2adc], 0xf
mov dword [esp + 0x2ad8], ebx
mov byte [esp + 0x2ac8], bl
cmp dword [esp + 0x2af8], edi
jb 0x40f5b4
mov ecx, dword [esp + 0x2ae4]
push ecx
call fcn.0041d541
add esp, 4
xor al, al
jmp 0x40f85e
push ebx
push esi
mov dword [esp + 0x24], 0x2000003
call dword [0x566088]
mov ebp, eax
cmp ebp, ebx
je 0x40f808
push 0x1ff
lea edx, [esp + 0xb5]
push ebx
push edx
mov byte [esp + 0xbc], bl
call fcn.0043bff0
add esp, 0xc
push 0x200
lea eax, [esp + 0xb4]
push eax
lea ecx, [esp + 0x24]
push ecx
push ebx
push 2
push ebp
call dword [0x56609c]
lea edx, [esp + 0xb0]
push edx
push str.find_cert_subject___s
push str.CWinSystemCertAdd::Del
call fcn.0055e8c0
add esp, 0xc
push 1
mov edi, 0xf
push 0x5cff94
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
call fcn.004016f0
lea eax, [esp + 0x20]
push eax
sub esp, 0x1c
mov ecx, esp
mov byte [esp + 0x2adc], 2
lea eax, [esp + 0xd0]
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
mov dword [esp + 0x78], esp
mov byte [ecx + 4], bl
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x40f672
sub eax, esi
push eax
lea edx, [esp + 0xd4]
push edx
call fcn.004016f0
lea eax, [esp + 0x7c]
push eax
call fcn.0055f8d0
add esp, 0x20
mov esi, eax
mov byte [esp + 0x2ac0], 3
push 3
push 0x5cff98
lea ecx, [esp + 0x48]
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
call fcn.004016f0
lea ecx, [esp + 0x40]
push esi
push ecx
lea edi, [esp + 0x84]
mov byte [esp + 0x2ac8], 4
call fcn.00404540
add esp, 8
push eax
lea edi, [esp + 0x9c]
mov byte [esp + 0x2ac4], 5
call fcn.00404540
add esp, 8
mov esi, 0x10
cmp dword [esp + 0x90], esi
jb 0x40f70c
mov edx, dword [esp + 0x7c]
push edx
call fcn.0041d541
add esp, 4
mov edi, 0xf
mov dword [esp + 0x90], edi
mov dword [esp + 0x8c], ebx
mov byte [esp + 0x7c], bl
cmp dword [esp + 0x54], esi
jb 0x40f736
mov eax, dword [esp + 0x40]
push eax
call fcn.0041d541
add esp, 4
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], ebx
mov byte [esp + 0x40], bl
cmp dword [esp + 0x74], esi
jb 0x40f755
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0041d541
add esp, 4
mov dword [esp + 0x74], edi
mov dword [esp + 0x70], ebx
mov byte [esp + 0x60], bl
mov byte [esp + 0x2abc], 0xa
cmp dword [esp + 0x38], esi
jb 0x40f77c
mov edx, dword [esp + 0x24]
push edx
call fcn.0041d541
add esp, 4
lea eax, [esp + 0x2ae0]
push eax
lea ecx, [esp + 0x98]
push ecx
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], ebx
mov byte [esp + 0x2c], bl
call fcn.0055fa50
add esp, 8
cmp eax, 0xffffffff
je 0x40f7c8
lea edx, [esp + 0xb0]
push edx
push str.delete_ca_certificate_:__s
push str.CWinSystemCertAdd::Del
call fcn.0055e8c0
add esp, 0xc
push ebp
call dword [0x566080]
xor ebp, ebp
mov byte [esp + 0x2abc], 1
cmp dword [esp + 0xac], esi
jb 0x40f7e9
mov eax, dword [esp + 0x98]
push eax
call fcn.0041d541
add esp, 4
mov ecx, dword [esp + 0x14]
push ebp
push ecx
call dword [0x566088]
mov ebp, eax
cmp ebp, ebx
jne 0x40f5d5
mov esi, dword [esp + 0x14]
mov edi, 0x10
push 1
push esi
call dword [0x56607c]
cmp dword [esp + 0x2adc], edi
jb 0x40f82a
mov edx, dword [esp + 0x2ac8]
push edx
call fcn.0041d541
add esp, 4
mov dword [esp + 0x2adc], 0xf
mov dword [esp + 0x2ad8], ebx
mov byte [esp + 0x2ac8], bl
cmp dword [esp + 0x2af8], edi
jb 0x40f85c
mov eax, dword [esp + 0x2ae4]
push eax
call fcn.0041d541
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x2ab4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2a9c]
xor ecx, esp
call fcn.0043a097
add esp, 0x2aac
ret