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

Disassembly:
push 0xffffffffffffffff
push 0x6942a9
mov eax, dword fs:[0]
push eax
sub esp, 0x420
mov eax, dword [0x78f694]
xor eax, esp
mov dword [esp + 0x41c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x78f694]
xor eax, esp
push eax
lea eax, [esp + 0x434]
mov dword fs:[0], eax
mov eax, dword [esp + 0x45c]
mov esi, dword [esp + 0x460]
mov edi, dword [esp + 0x444]
push str.validateCerts
mov dword [esp + 0x1c], ecx
push esi
lea ecx, [esp + 0x34]
mov dword [esp + 0x5c], eax
call fcn.004b1850
push esi
mov ecx, edi
mov dword [esp + 0x440], 0
call fcn.0057cdd0
lea ebx, [edi + 0x2c]
mov ecx, ebx
mov dword [esp + 0x28], ebx
call fcn.0054cfe0
cmp byte [esi + 0x121], 0
mov ebp, eax
mov dword [esp + 0x20], ebp
je 0x58bf7c
push ebp
push str.certListSize
mov ecx, esi
call fcn.004b14c0
push esi
mov ecx, edi
call fcn.005855a0
cmp byte [esp + 0x458], 0
je 0x58bfd2
test ebp, ebp
jne 0x58bfda
mov ecx, dword [esp + 0x18]
mov ecx, dword [ecx + 0x3a8]
test ecx, ecx
je 0x58c5ae
call fcn.004cd3a0
test eax, eax
jbe 0x58c5ae
push str.The_server_requires_a_valid_client_certificate__but_the_client_provided_none.
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
mov ecx, esi
call eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x43c], 0xffffffff
call fcn.004b18c0
xor al, al
jmp 0x58c7ce
test ebp, ebp
je 0x58c5ae
add ebp, 0xffffffff
mov eax, ebp
sub eax, dword [esp + 0x20]
mov dword [esp + 0x44], ebp
add eax, 2
mov dword [esp + 0x24], eax
mov edi, edi
push ebp
mov ecx, ebx
call fcn.004ae960
test eax, eax
je 0x58c3db
mov ecx, eax
call fcn.00544a30
mov ebx, eax
test ebx, ebx
je 0x58bfb7
push str.validatingCert
push esi
lea ecx, [esp + 0x50]
call fcn.004b1850
cmp byte [esi + 0x121], 0
mov byte [esp + 0x43c], 1
je 0x58c08c
push ebp
push 0x6f1c68
mov ecx, esi
call fcn.004b14c0
lea ecx, [esp + 0x200]
call fcn.0047f3a0
push 0
push esi
lea ecx, [esp + 0x208]
push ecx
push 0
push 1
mov ecx, ebx
mov byte [esp + 0x450], 2
call fcn.00545c80
lea edx, [esp + 0x200]
push edx
push str.subjectDN
mov ecx, esi
call fcn.004b11c0
lea ecx, [esp + 0x200]
mov byte [esp + 0x43c], 1
call fcn.0047f440
push esi
mov ecx, ebx
call fcn.00547550
test al, al
jne 0x58c3ef
cmp byte [esi + 0x121], al
je 0x58c0b2
mov eax, dword [esi]
mov edx, dword [eax + 0x18]
push str.This_certificate_is_NOT_the_root_in_the_chain_of_authority.
mov ecx, esi
call edx
lea ecx, [esp + 0x3c]
call fcn.004afd30
lea ecx, [esp + 0xe8]
mov byte [esp + 0x43c], 5
mov dword [esp + 0x38], 0
call fcn.0047f3a0
push 0
push esi
lea eax, [esp + 0xf0]
push eax
push 0
push 0
mov ecx, ebx
mov byte [esp + 0x450], 6
call fcn.00545c80
test al, al
je 0x58c600
cmp byte [esi + 0x121], 0
je 0x58c11a
lea ecx, [esp + 0xe8]
push ecx
push str.issuerDN
mov ecx, esi
call fcn.004b11c0
lea ecx, [esp + 0x58]
mov byte [esp + 0x1f], 0
call fcn.00468060
push esi
lea edx, [esp + 0x23]
push edx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0xf4]
mov byte [esp + 0x448], 7
call fcn.00480da0
push eax
call fcn.004ca3f0
add esp, 0x10
cmp byte [esi + 0x121], 0
mov byte [esp + 0x17], al
je 0x58c16d
movzx ecx, al
push ecx
push str.issuerIsTrustedRoot
mov ecx, esi
call fcn.004b14c0
cmp byte [esp + 0x17], 0
je 0x58c1f1
lea ecx, [esp + 0x58]
call fcn.00544a30
test eax, eax
je 0x58c1f1
push esi
push 0
lea ecx, [esp + 0x60]
call fcn.00544a30
push eax
lea ecx, [esp + 0x64]
call fcn.00467d80
push eax
call fcn.00554900
mov edi, eax
add esp, 0x10
test edi, edi
mov dword [esp + 0x38], edi
je 0x58c1db
cmp byte [esi + 0x121], 0
mov dword [esp + 0x40], edi
je 0x58c1e9
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.Found_issuer_in_TrustedRoots.
mov ecx, esi
call eax
lea ecx, [esp + 0xe8]
push ecx
push str.issuerDN
mov ecx, esi
call fcn.004b11c0
jmp 0x58c1e9
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.Issuer_not_found_in_TrustedRoots.
mov ecx, esi
call eax
test edi, edi
jne 0x58c334
lea ecx, [esp + 0x74]
call fcn.00485650
push esi
lea ecx, [esp + 0x78]
push ecx
mov ecx, ebx
mov byte [esp + 0x444], 8
call fcn.00547a20
mov ecx, dword [esp + 0x54]
mov byte [esp + 0x17], al
call fcn.005213a0
mov ebp, eax
test ebp, ebp
je 0x58c31b
cmp byte [esp + 0x17], 0
je 0x58c252
lea ecx, [esp + 0x74]
call fcn.005d5d40
test eax, eax
je 0x58c252
push esi
lea ecx, [esp + 0x78]
call fcn.00483ec0
push eax
mov ecx, ebp
call fcn.005248c0
mov edi, eax
test edi, edi
jne 0x58c2b0
lea ecx, [esp + 0x318]
call fcn.0047f3a0
push 0
push esi
lea edx, [esp + 0x320]
push edx
push 1
push 0
mov ecx, ebx
mov byte [esp + 0x450], 9
call fcn.00545c80
push esi
push 1
lea eax, [esp + 0x320]
push eax
lea ecx, [esp + 0xf4]
push ecx
mov ecx, ebp
call fcn.00524380
lea ecx, [esp + 0x318]
mov edi, eax
mov byte [esp + 0x43c], 8
call fcn.0047f440
test edi, edi
je 0x58c31b
cmp byte [0x77f694], 0
jne 0x58c2de
push esi
mov ecx, edi
call fcn.005528f0
test al, al
je 0x58c2de
cmp byte [esi + 0x121], 0
je 0x58c31b
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.Ignoring_the_root_cert_found_in_the_system_certificates_because_TrustSystemCaRoots_is_false.
mov ecx, esi
call eax
jmp 0x58c31b
cmp byte [esi + 0x121], 0
je 0x58c309
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.Found_issuer_in_system_certs.
mov ecx, esi
call eax
lea ecx, [esp + 0xe8]
push ecx
push str.issuerDN
mov ecx, esi
call fcn.004b11c0
push esi
push edi
call fcn.00554840
add esp, 8
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
lea ecx, [esp + 0x74]
mov byte [esp + 0x43c], 7
call fcn.00485710
mov ebp, dword [esp + 0x44]
mov edi, dword [esp + 0x38]
lea ecx, [esp + 0x58]
mov byte [esp + 0x43c], 6
call fcn.00468860
test edi, edi
je 0x58c600
push esi
mov ecx, edi
call fcn.005550f0
test eax, eax
je 0x58c622
lea ecx, [eax + 0x2c]
call fcn.00544a30
test eax, eax
je 0x58c622
push esi
push eax
call fcn.005495a0
add esp, 8
test eax, eax
je 0x58c385
mov ecx, dword [esp + 0x28]
push eax
call fcn.004aec80
mov edi, dword [esp + 0x24]
add ebp, 1
add edi, 1
lea ecx, [esp + 0xe8]
mov dword [esp + 0x44], ebp
mov dword [esp + 0x24], edi
mov byte [esp + 0x43c], 5
call fcn.0047f440
lea ecx, [esp + 0x3c]
mov byte [esp + 0x43c], 1
call fcn.004afd40
lea ecx, [esp + 0x48]
mov byte [esp + 0x43c], 0
call fcn.004b18c0
cmp edi, 0x14
jg 0x58c3e5
mov ebx, dword [esp + 0x28]
jmp 0x58bff0
push str.Certificate_not_available_in_TlsCertificates_object.
jmp 0x58bfae
push str.The_chain_of_authentication_is_too_long.__This_is_likely_an_infinite_loop..
jmp 0x58bfae
cmp byte [esi + 0x121], 0
je 0x58c406
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.This_certificate_is_the_root_in_the_chain_of_authentication.
mov ecx, esi
call eax
cmp byte [0x794031], 0
je 0x58c43a
cmp dword [esp + 0x20], 1
jne 0x58c43a
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Rejecting_self_signed_TLS_server_certificate_because_TrustedRoots.RejectSelfSigned_is_true.
mov ecx, esi
call eax
lea ecx, [esp + 0x48]
mov byte [esp + 0x43c], 0
call fcn.004b18c0
jmp 0x58bfb7
cmp byte [esp + 0x458], 0
je 0x58c599
cmp byte [esi + 0x121], 0
je 0x58c45f
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.Checking_this_CA_cert_against_the_list_of_acceptable_CA_DNs..
mov ecx, esi
call eax
lea ecx, [esp + 0x200]
call fcn.0047f3a0
push 0
push esi
lea ecx, [esp + 0x208]
push ecx
push 1
push 1
mov ecx, ebx
mov byte [esp + 0x450], 3
call fcn.00545c80
lea edx, [esp + 0x200]
push edx
push str.ClientCert_Root_CA_DN
mov ecx, esi
call fcn.004b11c0
lea ecx, [esp + 0x74]
call fcn.00485650
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x3a8]
mov byte [esp + 0x43c], 4
call fcn.004cd3a0
mov ebx, eax
test ebx, ebx
jbe 0x58c574
xor edi, edi
test ebx, ebx
jbe 0x58c52b
lea ecx, [ecx]
lea ecx, [esp + 0x74]
call fcn.00484ec0
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x74]
push ecx
mov ecx, dword [edx + 0x3a8]
push edi
call fcn.004cd4c0
cmp byte [esi + 0x121], 0
je 0x58c508
lea eax, [esp + 0x74]
push eax
push str.AcceptableCA
mov ecx, esi
call fcn.004b1210
lea ecx, [esp + 0x74]
push ecx
lea ecx, [esp + 0x204]
call fcn.004828c0
mov ecx, eax
call fcn.00487750
test al, al
jne 0x58c574
add edi, 1
cmp edi, ebx
jb 0x58c4d0
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Clients_root_CA_DN_does_not_match_any_acceptable_CA_DN.
mov ecx, esi
call eax
lea ecx, [esp + 0x74]
mov byte [esp + 0x43c], 3
call fcn.00485710
lea ecx, [esp + 0x200]
mov byte [esp + 0x43c], 1
call fcn.0047f440
lea ecx, [esp + 0x48]
mov byte [esp + 0x43c], 0
call fcn.004b18c0
jmp 0x58bfb7
lea ecx, [esp + 0x74]
mov byte [esp + 0x43c], 3
call fcn.00485710
lea ecx, [esp + 0x200]
mov byte [esp + 0x43c], 1
call fcn.0047f440
lea ecx, [esp + 0x48]
mov byte [esp + 0x43c], 0
call fcn.004b18c0
mov ebx, dword [esp + 0x28]
mov ecx, ebx
mov dword [esp + 0x18], 0
call fcn.0054cfe0
cmp byte [0x794031], 0
mov dword [esp + 0x20], eax
je 0x58c65d
cmp eax, 1
jne 0x58c65d
push 0
push ebx
call fcn.005473a0
add esp, 8
test eax, eax
je 0x58bfb7
push esi
mov ecx, eax
call fcn.00547550
test al, al
je 0x58c65d
push str.Rejecting_self_signed_SSL_TLS_server_certificate_because_TrustedRoots.RejectSelfSigned_is_true.
jmp 0x58bfae
lea ecx, [esp + 0xe8]
push ecx
push str.issuerDN_notFound
mov ecx, esi
call fcn.004b11c0
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
push str.Unable_to_build_certificate_chain_to_root..
mov ecx, esi
call eax
lea ecx, [esp + 0xe8]
mov byte [esp + 0x43c], 5
call fcn.0047f440
lea ecx, [esp + 0x3c]
mov byte [esp + 0x43c], 1
call fcn.004afd40
lea ecx, [esp + 0x48]
mov byte [esp + 0x43c], 0
call fcn.004b18c0
jmp 0x58bfb7
xor ebp, ebp
cmp dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
jbe 0x58c7a1
lea ecx, [ecx]
mov ecx, dword [esp + 0x28]
push ebp
push ecx
call fcn.005473a0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x58c724
push esi
mov ecx, ebx
call fcn.00547550
test al, al
je 0x58c69d
add dword [esp + 0x18], 1
mov edi, ebx
jmp 0x58c6e1
xor ebp, ebp
nop
mov edx, dword [esp + 0x28]
push ebp
push edx
call fcn.005473a0
mov edi, eax
add esp, 8
test edi, edi
je 0x58c6c1
push esi
push edi
mov ecx, ebx
call fcn.00547c40
test al, al
jne 0x58c6dd
add ebp, 1
cmp ebp, dword [esp + 0x20]
jb 0x58c6a0
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
push str.Unable_to_find_issuer_certificate..
mov ecx, esi
call edx
jmp 0x58bfb7
mov ebp, dword [esp + 0x24]
test edi, edi
je 0x58c6ca
push esi
push edi
mov ecx, ebx
call fcn.005481e0
test al, al
je 0x58c737
push esi
mov ecx, ebx
call fcn.00547680
test al, al
jne 0x58c74a
add ebp, 1
cmp ebp, dword [esp + 0x20]
mov dword [esp + 0x24], ebp
jb 0x58c670
cmp dword [esp + 0x18], 1
jle 0x58c7a1
push str.Found_multiple_self_signed_certificates__rejecting..
jmp 0x58bfae
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
push str.Internal_error:_No_X.509_cert_at_this_index.
mov ecx, esi
call edx
jmp 0x58bfb7
mov eax, dword [esi]
mov edx, dword [eax + 0x14]
push str.Certificate_signature_verification_failed...
mov ecx, esi
call edx
jmp 0x58bfb7
lea ecx, [esp + 0x318]
call fcn.0047f3a0
push 0
push esi
lea eax, [esp + 0x320]
push eax
push 0
push 1
mov ecx, ebx
mov byte [esp + 0x450], 0xa
call fcn.00545c80
lea ecx, [esp + 0x318]
push ecx
push str.expiredCert
mov ecx, esi
call fcn.004b11c0
lea ecx, [esp + 0x318]
mov byte [esp + 0x43c], 0
call fcn.0047f440
jmp 0x58bfb7
cmp byte [esi + 0x121], 0
je 0x58c7b8
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
push str.All_certificate_signatures_verified.
mov ecx, esi
call eax
lea ecx, [esp + 0x2c]
mov dword [esp + 0x43c], 0xffffffff
call fcn.004b18c0
mov al, 1
mov ecx, dword [esp + 0x434]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x41c]
xor ecx, esp
call fcn.0062cbd3
add esp, 0x42c
ret 0x20