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

Disassembly:
sub esp, 0x1e8
mov eax, dword [0x6ab0d4]
xor eax, esp
mov dword [esp + 0x1e4], eax
mov edx, dword [esp + 0x1ec]
mov eax, dword [esp + 0x1f0]
push ebx
push ebp
mov ebx, dword [edx]
mov ebp, 0x488
mov ecx, dword [edx + eax*4 + 0x420]
mov dword [esp + 0x38], eax
push esi
shl eax, 4
push edi
mov dword [esp + 0x58], ecx
add eax, edx
mov ecx, dword [edx + 0x358]
mov edi, 0x498
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x14], edi
cmp ecx, 2
jne 0x59301a
cmp dword [edx + 0x424], 0xffffffff
mov eax, ebp
cmovne eax, edi
cmp dword [eax + edx], ecx
je 0x59301a
mov eax, dword [edx + 0x34c]
jmp 0x593020
mov eax, dword [edx + 0x304]
mov dword [esp + 0x30], eax
cmp ecx, 2
jne 0x59303f
cmp dword [edx + 0x424], 0xffffffff
mov eax, ebp
cmovne eax, edi
cmp dword [eax + edx], ecx
mov eax, 0x8dc
jne 0x593044
mov eax, 0x870
lea esi, [eax + ebx]
cmp ecx, 2
jne 0x593065
cmp dword [edx + 0x424], 0xffffffff
mov eax, ebp
cmovne eax, edi
cmp dword [eax + edx], ecx
je 0x593065
mov edi, dword [edx + 0x4dc]
jmp 0x59306b
mov edi, dword [edx + 0x4ac]
cmp ecx, 2
jne 0x59308b
cmp dword [edx + 0x424], 0xffffffff
mov eax, ebp
cmovne eax, dword [esp + 0x14]
cmp dword [eax + edx], ecx
je 0x59308b
mov eax, dword [ebx + 0x8f4]
jmp 0x593091
mov eax, dword [ebx + 0x888]
mov dword [esp + 0x1c], eax
cmp ecx, 2
jne 0x5930b8
cmp dword [edx + 0x424], 0xffffffff
mov eax, ebp
mov ebp, 0x498
cmovne eax, ebp
cmp dword [eax + edx], ecx
je 0x5930b8
mov ebp, dword [ebx + 0x8f8]
jmp 0x5930be
mov ebp, dword [ebx + 0x88c]
cmp ecx, 2
jne 0x5930e1
cmp dword [edx + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, dword [esp + 0x14]
cmp dword [eax + edx], ecx
je 0x5930e1
mov ebx, dword [ebx + 0x8fc]
jmp 0x5930e7
mov ebx, dword [ebx + 0x890]
mov dword [esp + 0x20], ebx
cmp ecx, 2
jne 0x59310e
cmp dword [edx + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, dword [esp + 0x14]
cmp dword [eax + edx], ecx
je 0x59310e
mov eax, dword [edx + 0x4e8]
jmp 0x593114
mov eax, dword [edx + 0x4b8]
mov dword [esp + 0x2c], eax
cmp ecx, 2
jne 0x59313b
cmp dword [edx + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, dword [esp + 0x14]
cmp dword [eax + edx], ecx
je 0x59313b
mov eax, dword [edx + 0x4e4]
jmp 0x593141
mov eax, dword [edx + 0x4b4]
mov dword [esp + 0x38], eax
cmp ecx, 2
jne 0x593168
cmp dword [edx + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, dword [esp + 0x14]
cmp dword [eax + edx], ecx
je 0x593168
mov al, byte [edx + 0x508]
jmp 0x59316e
mov al, byte [edx + 0x4d8]
movzx eax, al
mov dword [esp + 0x3c], eax
cmp ecx, 2
jne 0x5931a0
cmp dword [edx + 0x424], 0xffffffff
mov eax, 0x488
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + edx], 2
je 0x5931a0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x8e0]
jmp 0x5931aa
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x874]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x44]
push eax
mov byte [esp + 0x2c], 0
mov ecx, dword [ecx + 0x470]
mov dword [esp + 0x18], ecx
call fcn.005914e0
add esp, 4
test eax, eax
jne 0x593ef1
mov dword [esi], 1
cmp edi, 7
ja case.default.0x5931e1
jmp dword [edi*4 + 0x593f0c]
call fcn.0050bfa0
mov esi, eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
test ecx, ecx
je 0x593202
push ecx
call fcn.0050c820
add esp, 4
push esi
call fcn.0050ca10
mov esi, dword [esp + 0x18]
add esp, 4
mov dword [esi], eax
test eax, eax
jne 0x593285
call fcn.00443c20
mov esi, eax
mov byte [esp + 0x74], 0
push 0x100
lea eax, [esp + 0x78]
push eax
push esi
call fcn.00443750
add esp, 0xc
cmp byte [esp + 0x74], 0
jne 0x593265
mov ecx, str.No_error
test esi, esi
mov eax, str.Unknown_error
cmove eax, ecx
push 0x100
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.005e4b00
add esp, 0xc
mov byte [esp + 0x173], 0
lea eax, [esp + 0x74]
push eax
push str.SSL:_couldnt_create_a_context:__s
push dword [esp + 0x18]
call fcn.0057ef70
add esp, 0xc
mov eax, 0x1b
jmp 0x593ef1
push 0
push 0x10
push 0x21
push eax
call fcn.0050c490
mov edx, dword [esp + 0x20]
add esp, 0x10
cmp dword [edx + 0x600], 0
je 0x5932d1
cmp byte [edx + 0xb42], 0
je 0x5932d1
push 0x5956b0
push dword [esi]
call fcn.0050cf00
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push esi
push 0
push 0x10
push dword [eax]
call fcn.0050c490
mov edx, dword [esp + 0x28]
add esp, 0x18
mov ecx, dword [esp + 0x18]
cmp dword [ecx + 0x358], 2
jne 0x593300
cmp dword [ecx + 0x424], 0xffffffff
mov eax, 0x488
mov esi, 0x498
cmovne eax, esi
cmp dword [eax + ecx], 2
je 0x593300
mov al, byte [edx + 0x912]
jmp 0x593306
mov al, byte [edx + 0x8a6]
test al, al
mov dword [esp + 0x34], 0x80024854
mov esi, 0x80024054
cmovne esi, dword [esp + 0x34]
jmp dword [edi*4 + 0x593f2c]
mov edi, dword [esp + 0x14]
push 0
push 2
push 0x7b
push dword [edi]
call fcn.0050c490
push 0
push 2
push 0x7c
push dword [edi]
call fcn.0050c490
add esp, 0x20
jmp 0x59338a
mov edi, dword [esp + 0x14]
or esi, 0x2000000
push ecx
push dword [edi]
call fcn.005953a0
add esp, 8
test eax, eax
jne 0x593ef1
push esi
push dword [edi]
call fcn.0050cf50
mov esi, dword [esp + 0x20]
add esp, 8
cmp byte [esi + 0x52a], 0
je 0x5933b2
push esi
push 0x594ac0
push dword [edi]
call fcn.0050cf10
add esp, 0xc
cmp byte [esi + 0x52b], 0
mov esi, dword [esp + 0x10]
je 0x593403
mov eax, dword [str.http_1.1]
push str.http_1.1
mov dword [esp + 0x179], eax
mov eax, dword [0x67de88]
push str.ALPN__offering__s_n
push esi
mov byte [esp + 0x180], 8
mov dword [esp + 0x185], eax
call fcn.0057f050
push 9
lea eax, [esp + 0x184]
push eax
push dword [edi]
call fcn.0050cdc0
add esp, 0x18
cmp dword [esp + 0x1c], 0
jne 0x593416
test ebp, ebp
jne 0x593416
test ebx, ebx
je 0x5935b7
xor ebx, ebx
xor edi, edi
test ebp, ebp
je 0x593436
push dword [ebp + 4]
push dword [ebp]
call fcn.004e9c80
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x5935ad
mov ebp, dword [esp + 0x18]
mov ecx, 0x498
mov edx, dword [ebp + 0x358]
cmp edx, 2
jne 0x593466
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, ecx
cmp dword [eax + ebp], edx
je 0x593466
mov eax, dword [esi + 0x904]
jmp 0x59346c
mov eax, dword [esi + 0x898]
test eax, eax
je 0x5934db
cmp edx, 2
jne 0x593491
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, ecx
cmp dword [eax + ebp], edx
je 0x593491
mov ecx, dword [esi + 0x904]
jmp 0x593497
mov ecx, dword [esi + 0x898]
cmp edx, 2
jne 0x5934be
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
mov edx, 0x498
cmovne eax, edx
cmp dword [eax + ebp], 2
je 0x5934be
mov eax, dword [esi + 0x904]
jmp 0x5934c4
mov eax, dword [esi + 0x898]
push dword [ecx + 4]
push dword [eax]
call fcn.004e9c80
mov edi, eax
add esp, 8
test edi, edi
je 0x5935ad
mov ecx, dword [ebp + 0x358]
mov edx, 0x498
cmp ecx, 2
jne 0x593507
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, edx
cmp dword [eax + ebp], ecx
je 0x593507
mov esi, dword [esi + 0x90c]
jmp 0x59350d
mov esi, dword [esi + 0x8a0]
cmp ecx, 2
jne 0x593532
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
cmovne eax, edx
cmp dword [eax + ebp], ecx
je 0x593532
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x908]
jmp 0x59353c
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x89c]
cmp ecx, 2
jne 0x593567
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebp], 2
je 0x593567
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x900]
jmp 0x593571
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x894]
push esi
push edx
push edi
push eax
push dword [esp + 0x30]
mov eax, dword [esp + 0x28]
push ebx
push dword [esp + 0x34]
push dword [eax]
push ebp
call fcn.00591ac0
add esp, 0x24
mov esi, eax
test ebx, ebx
je 0x59359c
push ebx
call fcn.0044a950
add esp, 4
test edi, edi
je 0x5935a9
push edi
call fcn.0044a950
add esp, 4
test esi, esi
jne 0x5935bd
mov eax, 0x3a
jmp 0x593ef1
mov ebp, dword [esp + 0x18]
jmp 0x5935c1
mov edi, dword [esp + 0x14]
cmp dword [ebp + 0x358], 2
jne 0x5935ec
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebp], 2
je 0x5935ec
mov esi, dword [ebp + 0x4f8]
jmp 0x5935f2
mov esi, dword [ebp + 0x4c8]
test esi, esi
je 0x593635
push esi
push dword [edi]
call fcn.0050ce70
add esp, 8
push esi
test eax, eax
jne 0x593621
push str.failed_setting_cipher_list:__s
push dword [esp + 0x18]
call fcn.0057ef70
add esp, 0xc
mov eax, 0x3b
jmp 0x593ef1
mov ebx, dword [esp + 0x14]
push str.Cipher_selection:__s_n
push ebx
call fcn.0057f050
add esp, 0xc
jmp 0x593639
mov ebx, dword [esp + 0x10]
cmp dword [ebp + 0x358], 2
jne 0x593664
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebp], 2
je 0x593664
mov esi, dword [ebp + 0x4fc]
jmp 0x59366a
mov esi, dword [ebp + 0x4cc]
test esi, esi
je 0x5936a4
push esi
push dword [edi]
call fcn.00511ed0
add esp, 8
push esi
test eax, eax
jne 0x593696
push str.failed_setting_TLS_1.3_cipher_suite:__s
push ebx
call fcn.0057ef70
add esp, 0xc
mov eax, 0x3b
jmp 0x593ef1
push str.TLS_1.3_cipher_selection:__s_n
push ebx
call fcn.0057f050
add esp, 0xc
push 1
push dword [edi]
call fcn.0050cf70
mov ecx, dword [ebp + 0x358]
mov edx, 0x488
add esp, 8
lea esi, [edx + 0x10]
cmp ecx, 2
jne 0x5936dc
cmp dword [ebp + 0x424], 0xffffffff
mov eax, edx
cmovne eax, esi
cmp dword [eax + ebp], ecx
je 0x5936dc
mov al, byte [ebp + 0x508]
jmp 0x5936e2
mov al, byte [ebp + 0x4d8]
test al, al
jne 0x593712
cmp ecx, 2
jne 0x593704
cmp dword [ebp + 0x424], 0xffffffff
mov eax, edx
cmovne eax, esi
cmp dword [eax + ebp], ecx
je 0x593704
mov al, byte [ebp + 0x509]
jmp 0x59370a
mov al, byte [ebp + 0x4d9]
test al, al
je 0x593996
cmp ecx, 2
jne 0x593730
cmp dword [ebp + 0x424], 0xffffffff
mov eax, edx
cmovne eax, esi
cmp dword [eax + ebp], ecx
je 0x593730
mov al, byte [ebx + 0x916]
jmp 0x593736
mov al, byte [ebx + 0x8aa]
test al, al
je 0x593996
push dword [edi]
call fcn.004fa610
add esp, 4
mov dword [esp + 0x54], eax
push str.ROOT
push 0
call dword [sym.imp.CRYPT32.dll_CertOpenSystemStoreW]
mov dword [esp + 0x4c], eax
test eax, eax
je 0x593988
xor ecx, ecx
xor esi, esi
push ecx
push eax
mov dword [esp + 0x20], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x3c], ecx
call dword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov edi, eax
mov dword [esp + 0x1c], edi
test edi, edi
je 0x593952
nop dword [eax + eax]
mov eax, dword [edi + 4]
mov dword [esp + 0x50], eax
test eax, eax
je 0x5938d4
lea eax, [esp + 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [esp + 0x5c]
push eax
mov eax, dword [edi + 0xc]
add eax, 0x20
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jg 0x5938d4
mov eax, dword [edi + 0xc]
add eax, 0x28
push eax
lea eax, [esp + 0x60]
push eax
call dword [sym.imp.KERNEL32.dll_CompareFileTime]
test eax, eax
jg 0x5938d4
push 2
lea eax, [esp + 0x14]
push eax
push dword [edi + 0xc]
push dword [edi]
call dword [sym.imp.CRYPT32.dll_CertGetIntendedKeyUsage]
test eax, eax
je 0x593801
test byte [esp + 0x10], 4
je 0x5938d4
jmp 0x59380f
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x5938d4
lea eax, [esp + 0x20]
push eax
push 0
push 0
push edi
call dword [sym.imp.CRYPT32.dll_CertGetEnhancedKeyUsage]
test eax, eax
je 0x5938d4
mov eax, dword [esp + 0x20]
test eax, eax
je 0x593856
cmp eax, dword [esp + 0x48]
jbe 0x593856
push eax
push esi
call dword [0x6ab10c]
add esp, 8
test eax, eax
je 0x59393c
mov esi, eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x18], esi
mov dword [esp + 0x48], eax
lea eax, [esp + 0x20]
push eax
push esi
push 0
push edi
call dword [sym.imp.CRYPT32.dll_CertGetEnhancedKeyUsage]
test eax, eax
je 0x5938d4
mov eax, dword [esi]
test eax, eax
jne 0x59387e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x80092004
jne 0x5938d4
jmp 0x5938f3
xor edi, edi
test eax, eax
je 0x593936
mov esi, dword [esi + 4]
nop dword [eax + eax]
mov ecx, dword [esi]
mov eax, str.1.3.6.1.5.5.7.3.1
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5938b7
test dl, dl
je 0x5938b3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5938b7
add eax, 2
add ecx, 2
test dl, dl
jne 0x593897
xor eax, eax
jmp 0x5938bc
sbb eax, eax
or eax, 1
test eax, eax
je 0x5938ef
mov eax, dword [esp + 0x18]
inc edi
add esi, 4
cmp edi, dword [eax]
jb 0x593890
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
push edi
push dword [esp + 0x50]
call dword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov edi, eax
mov dword [esp + 0x1c], eax
test edi, edi
jne 0x593790
jmp 0x593952
mov edi, dword [esp + 0x1c]
push dword [edi + 8]
lea eax, [esp + 0x54]
push eax
push 0
call fcn.00468dc0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x5938d0
push esi
push dword [esp + 0x58]
call fcn.00505a30
mov ecx, dword [esp + 0x30]
cmp eax, 1
movzx ecx, cl
mov eax, 1
cmove ecx, eax
push esi
mov dword [esp + 0x34], ecx
call fcn.00468d40
add esp, 0xc
jmp 0x5938d0
mov edi, dword [esp + 0x1c]
jmp 0x5938d4
push str.SSL:_Out_of_memory_allocating_for_OID_list
push ebx
call fcn.0057ef70
add esp, 8
mov dword [esp + 0x34], 0x1b
push esi
call dword [0x6ab108]
add esp, 4
push edi
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
push 0
push dword [esp + 0x50]
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x593ef1
cmp byte [esp + 0x28], al
je 0x593988
push str.successfully_imported_windows_ca_store_n
jmp 0x59398d
push str.error_importing_windows_ca_store__continuing_anyway_n
push ebx
call fcn.0057f050
add esp, 8
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x38]
test eax, eax
jne 0x5939aa
test esi, esi
je 0x593a35
mov edi, dword [esp + 0x14]
push esi
push eax
push dword [edi]
call fcn.0050c9f0
add esp, 0xc
test eax, eax
jne 0x593a00
cmp dword [esp + 0x3c], eax
je 0x5939f9
cmp byte [esp + 0x28], al
jne 0x5939f9
mov ecx, str.none
test esi, esi
mov eax, ecx
cmovne eax, esi
push eax
mov eax, dword [esp + 0x30]
test eax, eax
cmovne ecx, eax
push ecx
push str.error_setting_certificate_verify_locations:_n__CAfile:__s_n__CApath:__s
push ebx
call fcn.0057ef70
add esp, 0x10
mov eax, 0x4d
jmp 0x593ef1
push str.error_setting_certificate_verify_locations__continuing_anyway:_n
jmp 0x593a05
push str.successfully_set_certificate_verify_locations:_n
push ebx
call fcn.0057f050
add esp, 8
mov ecx, str.none
mov eax, ecx
test esi, esi
cmovne eax, esi
push eax
mov eax, dword [esp + 0x30]
test eax, eax
cmovne ecx, eax
push ecx
push str.__CAfile:__s_n__CApath:__s_n
push ebx
call fcn.0057f050
add esp, 0x10
jmp 0x593a39
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
test esi, esi
je 0x593aa1
call fcn.00600570
push eax
push dword [edi]
call fcn.004fa610
add esp, 4
push eax
call fcn.00505ab0
add esp, 8
test eax, eax
je 0x593aef
push 1
push esi
push eax
call fcn.006007f0
add esp, 0xc
test eax, eax
je 0x593aef
push str.successfully_load_CRL_file:_n
push ebx
call fcn.0057f050
add esp, 8
push 0xc
push dword [edi]
call fcn.004fa610
add esp, 4
push eax
call fcn.00505db0
push esi
push str.__CRLfile:__s_n
push ebx
call fcn.0057f050
add esp, 0x14
cmp dword [esp + 0x3c], 0
je 0x593b2e
push 0x8000
push dword [edi]
call fcn.004fa610
add esp, 4
push eax
call fcn.00505db0
add esp, 8
cmp dword [ebp + 0x358], 2
jne 0x593b08
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x488
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebp], 2
je 0x593b08
mov al, byte [ebx + 0x914]
jmp 0x593b0e
push esi
push str.error_loading_CRL_file:__s
push ebx
call fcn.0057ef70
add esp, 0xc
mov eax, 0x52
jmp 0x593ef1
mov al, byte [ebx + 0x8a8]
test al, al
jne 0x593b2e
test esi, esi
jne 0x593b2e
push 0x80000
push dword [edi]
call fcn.004fa610
add esp, 4
push eax
call fcn.00505db0
add esp, 8
xor eax, eax
cmp dword [esp + 0x3c], eax
push 0
setne al
push eax
push dword [edi]
call fcn.0050cf80
add esp, 0xc
call fcn.005ae0a0
test al, al
je 0x593b5c
push 0x5943b0
push dword [edi]
call fcn.0050cef0
add esp, 8
push 0
push 0x301
push 0x2c
push dword [edi]
call fcn.0050c490
push 0x5943c0
push dword [edi]
call fcn.00520420
add esp, 0x18
cmp dword [ebx + 0x880], 0
je 0x593bc0
push 1
push ebx
call fcn.005702e0
push dword [ebx + 0x884]
mov eax, dword [ebx + 0x880]
push dword [edi]
push ebx
call eax
push 0
push ebx
mov esi, eax
call fcn.005702e0
add esp, 0x1c
test esi, esi
je 0x593bc0
push str.error_signaled_by_ssl_ctx_callback
push ebx
call fcn.0057ef70
mov eax, esi
jmp 0x593eee
mov eax, dword [edi + 4]
test eax, eax
je 0x593bd0
push eax
call fcn.0050d9f0
add esp, 4
push dword [edi]
call fcn.0050e1d0
mov ecx, eax
add esp, 4
mov dword [edi + 4], ecx
test ecx, ecx
jne 0x593bf8
push str.SSL:_couldnt_create_a_context__handle__
push ebx
call fcn.0057ef70
mov eax, 0x1b
jmp 0x593eee
cmp dword [ebp + 0x358], 2
mov esi, 0x488
jne 0x593c25
cmp dword [ebp + 0x424], 0xffffffff
mov eax, esi
mov edx, 0x498
cmovne eax, edx
cmp dword [eax + ebp], 2
je 0x593c25
mov al, byte [ebp + 0x50a]
jmp 0x593c2b
mov al, byte [ebp + 0x4da]
test al, al
je 0x593c3e
push 0
push 1
push 0x41
push ecx
call fcn.0050d310
add esp, 0x10
push dword [edi + 4]
call fcn.0050ea50
lea eax, [esp + 0x68]
mov dword [edi + 8], 0
push eax
push dword [esp + 0x38]
push 2
call fcn.0058fb10
add esp, 0x10
test eax, eax
jne 0x593c9f
lea eax, [esp + 0x64]
push eax
push dword [esp + 0x34]
push 0x17
call fcn.0058fb10
add esp, 0xc
test eax, eax
jne 0x593c9f
push dword [esp + 0x30]
push eax
push 0x37
push dword [edi + 4]
call fcn.0050d310
add esp, 0x10
test eax, eax
jne 0x593c9f
push str.WARNING:_failed_to_configure_server_name_indication__SNI__TLS_extension_n
push ebx
call fcn.0057f050
add esp, 8
cmp dword [ebp + 0x358], 2
jne 0x593cc5
cmp dword [ebp + 0x424], 0xffffffff
mov eax, 0x498
cmovne esi, eax
cmp dword [esi + ebp], 2
je 0x593cc5
mov al, byte [ebx + 0x8db]
jmp 0x593ccb
mov al, byte [ebx + 0x86f]
test al, al
je 0x593dde
mov dword [esp + 0x24], 0
call fcn.00594350
mov edi, eax
call fcn.00594380
mov esi, eax
test edi, edi
js 0x593d1b
test esi, esi
js 0x593d1b
push ebp
push edi
mov edi, dword [esp + 0x1c]
push dword [edi + 4]
call fcn.0050eb30
mov eax, dword [esp + 0x4c]
lea eax, [eax*4 + 0x420]
add eax, ebp
push eax
push esi
push dword [edi + 4]
call fcn.0050eb30
add esp, 0x18
jmp 0x593d1f
mov edi, dword [esp + 0x14]
push ebp
call fcn.005796b0
push dword [esp + 0x44]
lea eax, [esp + 0x2c]
push 0
push eax
push ebp
call fcn.005792f0
add esp, 0x14
test al, al
jne 0x593dd5
push dword [esp + 0x24]
push dword [edi + 4]
call fcn.00520800
add esp, 8
test eax, eax
jne 0x593dc7
push ebp
call fcn.005796e0
call fcn.00443930
mov esi, eax
mov byte [esp + 0x78], 0
push 0x100
lea eax, [esp + 0x7c]
push eax
push esi
call fcn.00443750
add esp, 0x10
cmp byte [esp + 0x74], 0
jne 0x593daa
mov ecx, str.No_error
test esi, esi
mov eax, str.Unknown_error
cmove eax, ecx
push 0x100
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.005e4b00
add esp, 0xc
mov byte [esp + 0x173], 0
lea eax, [esp + 0x74]
push eax
push str.SSL:_SSL_set_session_failed:__s
push ebx
call fcn.0057ef70
add esp, 0xc
mov eax, 0x23
jmp 0x593ef1
push str.SSL_re_using_session_ID_n
push ebx
call fcn.0057f050
add esp, 8
push ebp
call fcn.005796e0
add esp, 4
mov eax, dword [esp + 0x44]
cmp byte [eax + 0x494], 0
je 0x593e34
call fcn.00603570
push eax
call fcn.0044ade0
mov ecx, dword [esp + 0x44]
mov esi, eax
add ecx, 0x49
add ecx, ecx
mov ecx, dword [ebp + ecx*8]
push dword [ecx + 4]
push 0
push 0x6d
push esi
call fcn.0044a840
push esi
push esi
push dword [edi + 4]
call fcn.0050e8c0
add esp, 0x20
mov eax, dword [esp + 0x44]
mov dword [eax + 0x46c], 1
xor eax, eax
jmp 0x593ef1
push dword [esp + 0x58]
push dword [edi + 4]
call fcn.0050eb40
add esp, 8
test eax, eax
jne 0x593e1f
call fcn.00443930
mov esi, eax
mov byte [esp + 0x74], 0
push 0x100
lea eax, [esp + 0x78]
push eax
push esi
call fcn.00443750
add esp, 0xc
cmp byte [esp + 0x74], 0
jne 0x593e97
mov ecx, str.No_error
test esi, esi
mov eax, str.Unknown_error
cmove eax, ecx
push 0x100
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.005e4b00
add esp, 0xc
mov byte [esp + 0x173], 0
lea eax, [esp + 0x74]
push eax
push str.SSL:_SSL_set_fd_failed:__s
push ebx
call fcn.0057ef70
add esp, 0xc
mov eax, 0x23
jmp 0x593ef1
push str.OpenSSL_was_built_without_SSLv2_support
push dword [esp + 0x14]
call fcn.0057ef70
mov eax, 4
jmp 0x593eee
push str.OpenSSL_was_built_without_SSLv3_support
push dword [esp + 0x14]
call fcn.0057ef70
mov eax, 4
jmp 0x593eee
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push dword [esp + 0x14]
call fcn.0057ef70
mov eax, 0x23
add esp, 8
mov ecx, dword [esp + 0x1f4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005697c8
add esp, 0x1e8
ret