Function at 0x4550a0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c0
mov eax, dword [0x4c4024]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
push edi
mov dword [ebp - 0x144], ebx
mov esi, dword [edi + 8]
call fcn.0043a610
push ebx
push edi
mov dword [ebp - 0x164], eax
call fcn.0043a5e0
mov dword [ebp - 0x14c], 0
mov edx, eax
mov eax, dword [esi + 0x14]
xor ebx, ebx
mov esi, dword [ebp - 0x164]
add esp, 0xc
mov dword [ebp - 0x17c], ebx
mov dword [ebp - 0x180], eax
cmp byte [esi + 0x39], bl
je 0x45515e
mov cl, byte [eax + 0x48]
cmp byte [edx + 0x63], bl
je 0x455125
test cl, cl
mov dword [ebp - 0x158], 0x1820
mov eax, 0x1808
cmove eax, dword [ebp - 0x158]
jmp 0x455163
cmp byte [edx + 0x65], bl
je 0x455144
test cl, cl
mov dword [ebp - 0x158], 0x1a20
mov eax, 0x1a08
cmove eax, dword [ebp - 0x158]
jmp 0x455163
test cl, cl
mov dword [ebp - 0x158], 0x220
mov eax, 0x208
cmove eax, dword [ebp - 0x158]
jmp 0x455163
mov eax, 0x1808
mov ecx, eax
or ecx, 4
cmp byte [esi + 0x3a], bl
cmovne ecx, eax
mov dword [ebp - 0x174], ecx
mov cl, byte [edx + 0x67]
mov edx, dword [ebp - 0x174]
mov eax, edx
or eax, 0x10
test cl, cl
cmove edx, eax
mov eax, str.schannel:_enabled_automatic_use_of_client_certificate
mov dword [ebp - 0x174], edx
mov edx, str.schannel:_disabled_automatic_use_of_client_certificate
cmove eax, edx
push eax
push dword [ebp - 0x144]
call fcn.0043fd60
mov eax, dword [esi]
add esp, 8
cmp eax, 7
ja case.default.0x4551bb
movzx eax, byte [eax + 0x455edc]
jmp dword [eax*4 + 0x455ed4]
push dword [ebp - 0x144]
lea eax, [ebp - 0x17c]
push edi
push eax
call fcn.004570e0
add esp, 0xc
test eax, eax
jne 0x455ec0
mov edx, dword [ebp - 0x144]
mov eax, dword [edx + 0x3f8]
test eax, eax
jne 0x4551fc
cmp dword [edx + 0x40c], ebx
je 0x455783
mov ecx, dword [edx + 0x40c]
xor edi, edi
mov dword [ebp - 0x168], ebx
xor esi, esi
mov dword [ebp - 0x158], ebx
xor ebx, ebx
mov dword [ebp - 0x154], edi
mov dword [ebp - 0x178], ebx
mov dword [ebp - 0x150], ebx
mov dword [ebp - 0x160], ebx
mov dword [ebp - 0x170], ecx
test ecx, ecx
je 0x455249
mov eax, dword [ecx]
mov dword [ebp - 0x150], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x160], eax
jmp 0x4552c0
push eax
call fcn.00450a50
mov esi, eax
add esp, 4
test esi, esi
je case.0x455e4f.2146893056
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x168]
push eax
push esi
call fcn.00454db0
mov edi, eax
add esp, 0x10
test edi, edi
je 0x45567a
mov eax, dword [ebp - 0x144]
mov ecx, dword [eax + 0x3f8]
cmp byte [ecx], bl
je 0x45564d
push 0x4a6408
push ecx
call fcn.00450b80
add esp, 8
mov dword [ebp - 0x178], eax
test eax, eax
je 0x455647
mov edi, dword [ebp - 0x154]
mov edx, dword [ebp - 0x144]
mov eax, dword [edx + 0x430]
test eax, eax
je 0x455316
push 0x4abaa0
push eax
call fcn.00444500
add esp, 8
test eax, eax
jne 0x455310
cmp dword [ebp - 0x170], ebx
je 0x4552eb
mov eax, str._memory_blob_
jmp 0x4552f7
mov eax, dword [ebp - 0x144]
mov eax, dword [eax + 0x3f8]
push eax
push str.schannel:_certificate_format_compatibility_error__for__s
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 0xc
jmp 0x4556c7
mov edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x170]
cmp dword [ebp - 0x178], ebx
jne 0x45532c
test eax, eax
je 0x455680
xor edi, edi
test eax, eax
je 0x45533e
mov dword [ebp - 0x154], str._memory_blob_
jmp 0x45534a
mov eax, dword [edx + 0x3f8]
mov dword [ebp - 0x154], eax
test esi, esi
je 0x455357
push esi
call fcn.0047e30b
add esp, 4
mov esi, dword [ebp - 0x178]
test esi, esi
je 0x4553e8
xor eax, eax
push 2
push eax
push esi
mov dword [ebp - 0x168], eax
call fcn.00488f80
add esp, 0xc
test eax, eax
sete cl
mov byte [ebp - 0x13d], cl
test eax, eax
jne 0x455497
push esi
call fcn.0048bc89
add esp, 4
mov dword [ebp - 0x168], eax
test eax, eax
jns 0x45549b
mov byte [ebp - 0x13d], bl
mov eax, dword [ebp - 0x150]
mov edx, dword [ebp - 0x160]
test eax, eax
je 0x4554f2
push esi
push 1
push edx
push eax
call fcn.00488bdd
add esp, 0x10
cmp eax, 1
jne 0x4554f2
push esi
call fcn.00485ce0
add esp, 4
cmp byte [ebp - 0x13d], bl
je 0x4554fb
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x144]
mov eax, dword [eax + 0x440]
test eax, eax
je 0x45541e
mov edi, eax
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x455415
sub edi, ecx
lea eax, [edi*2 + 2]
push eax
call dword [0x4c4040]
mov esi, eax
add esp, 4
test esi, esi
je 0x455562
test edi, edi
je 0x455537
mov eax, dword [ebp - 0x144]
lea ecx, [edi + 1]
push ecx
push esi
push edi
push dword [eax + 0x440]
push 8
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jns 0x455539
xor eax, eax
mov word [esi], ax
push 3
push 2
push 0
push 0
push 6
call fcn.0046d1b0
add esp, 0x14
test al, al
lea eax, [ebp - 0x15c]
je 0x45554c
push 0x8000
jmp 0x45554e
xor eax, eax
jmp 0x4554a1
mov cl, byte [ebp - 0x13d]
mov edx, eax
mov dword [ebp - 0x160], edx
test cl, cl
je 0x4554e7
push 0
push 0
push esi
call fcn.00488f80
add esp, 0xc
test eax, eax
sete byte [ebp - 0x13d]
test eax, eax
jne 0x4553a9
mov eax, dword [ebp - 0x168]
inc eax
push eax
call dword [0x4c4040]
add esp, 4
mov dword [ebp - 0x150], eax
jmp 0x4553af
mov eax, dword [ebp - 0x150]
jmp 0x4553b5
push esi
call fcn.00485ce0
add esp, 4
mov eax, dword [ebp - 0x144]
push dword [eax + 0x3f8]
push str.schannel:_Failed_to_read_cert_file__s
push eax
call fcn.0043fca0
push dword [ebp - 0x150]
call dword [0x4c4044]
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
xor eax, eax
cmp eax, edi
jg 0x455468
xor ecx, ecx
mov word [esi + eax*2], cx
jmp 0x45546d
push 0
push esi
push eax
call dword [sym.imp.CRYPT32.dll_PFXImportCertStore]
push esi
mov ebx, eax
call dword [0x4c4044]
add esp, 4
cmp dword [ebp - 0x170], 0
jne 0x45557a
push dword [ebp - 0x150]
call dword [0x4c4044]
add esp, 4
test ebx, ebx
jne 0x4555e6
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x4555b6
push dword [ebp - 0x154]
push str.schannel:_Failed_to_import_cert_file__s__password_is_bad
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 0xc
lea eax, [ebx + 0x3a]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push eax
push dword [ebp - 0x154]
push str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push 0
push 0
push 0
push 0
push 0x10001
push ebx
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [ebp - 0x14c], eax
test eax, eax
jne 0x45577d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [ebp - 0x154]
push str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 0x10
push 0
push ebx
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
pop edi
pop esi
mov eax, 0x3a
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x144]
push dword [eax + 0x3f8]
push str.schannel:_Failed_to_get_certificate_location_or_file_for__s
push eax
call fcn.0043fca0
push esi
call fcn.0047e30b
add esp, 0x10
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x154]
mov eax, dword [ebp - 0x168]
push edi
or eax, 0x4000
push eax
push 0
push 0
push 0xa
call dword [sym.imp.CRYPT32.dll_CertOpenStore]
mov ebx, eax
test ebx, ebx
jne 0x4556ea
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push edi
push dword [ebp - 0x168]
push str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
push dword [ebp - 0x144]
call fcn.0043fca0
push edi
call dword [0x4c4044]
add esp, 0x18
test esi, esi
je 0x4556d4
push esi
call fcn.0047e30b
add esp, 4
pop edi
pop esi
mov eax, 0x3a
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push edi
call dword [0x4c4044]
add esp, 4
mov dword [ebp - 0x188], 0x14
lea eax, [ebp - 0x18]
mov dword [ebp - 0x184], eax
lea eax, [ebp - 0x188]
push 0
push 0
push eax
lea eax, [ebp - 0x18]
push eax
push 4
push 0x28
push dword [ebp - 0x158]
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryW]
test eax, eax
jne 0x455740
test esi, esi
je 0x455628
push esi
call fcn.0047e30b
add esp, 4
jmp 0x455628
push 0
lea eax, [ebp - 0x188]
push eax
push 0x10000
push 0
push 0x10001
push ebx
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [ebp - 0x14c], eax
test esi, esi
je 0x455775
push esi
call fcn.0047e30b
mov eax, dword [ebp - 0x14c]
add esp, 4
test eax, eax
je 0x455628
mov esi, dword [ebp - 0x164]
push 0x20
push 1
call dword [0x4c4050]
mov edi, dword [ebp - 0x180]
add esp, 8
mov dword [edi], eax
test eax, eax
jne 0x4557e3
push str.schannel:_unable_to_allocate_memory
push dword [ebp - 0x144]
call fcn.0043fca0
mov eax, dword [ebp - 0x14c]
add esp, 8
test eax, eax
je 0x4557c0
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test ebx, ebx
je case.0x455e4f.2146893056
push 0
push ebx
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push 3
push 2
mov dword [eax + 0x18], 1
mov eax, dword [edi]
push 0x4563
push 0
push 0xa
mov dword [eax + 0x14], ebx
call fcn.0046d1b0
add esp, 0x14
test al, al
je 0x455d21
push 0x2c
lea eax, [ebp - 0x1b4]
push 0
push eax
call fcn.0047c720
push 0x70
xorps xmm0, xmm0
lea eax, [ebp - 0xac]
push 0
push eax
movups xmmword [ebp - 0x1c], xmm0
movq qword [ebp - 0xc], xmm0
call fcn.0047c720
mov edi, dword [esi + 0x1c]
xorps xmm0, xmm0
add esp, 0x18
movlpd qword [ebp - 0x15c], xmm0
movlpd qword [ebp - 0x16c], xmm0
test edi, edi
je 0x455ca4
xor edx, edx
mov byte [ebp - 0x13e], 1
mov al, 1
mov dword [ebp - 0x164], edx
movups xmmword [ebp - 0x3c], xmm0
mov byte [ebp - 0x145], 1
movups xmmword [ebp - 0x2c], xmm0
mov byte [ebp - 0x13f], 1
mov byte [ebp - 0x140], 1
mov byte [ebp - 0x13d], al
nop dword [eax]
cmp byte [edi], 0
je 0x455af5
cmp edx, 5
jge 0x455af5
push 0x3a
push edi
call fcn.0047c960
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4558b9
mov esi, ebx
sub esi, edi
jmp 0x4558c9
mov esi, edi
lea ecx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x4558c0
sub esi, ecx
cmp esi, 0x1f
ja 0x455acc
push esi
lea eax, [ebp - 0x3c]
push edi
push eax
call fcn.0048b540
add esp, 0xc
mov byte [ebp + esi - 0x3c], 0
cmp byte [ebp - 0x13e], 0
je 0x455932
lea ecx, [ebp - 0x3c]
mov eax, str.TLS_AES_256_GCM_SHA384
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x455916
test dl, dl
je 0x455912
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x455916
add eax, 2
add ecx, 2
test dl, dl
jne 0x4558f6
xor eax, eax
jmp 0x45591b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x455932
mov al, byte [ebp - 0x13d]
xor cl, cl
mov byte [ebp - 0x13e], cl
jmp 0x455a77
cmp byte [ebp - 0x145], 0
je 0x45597d
lea ecx, [ebp - 0x3c]
mov eax, str.TLS_AES_128_GCM_SHA256
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x455963
test dl, dl
je 0x45595f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x455963
add eax, 2
add ecx, 2
test dl, dl
jne 0x455943
xor eax, eax
jmp 0x455968
sbb eax, eax
or eax, 1
test eax, eax
jne 0x45597d
mov byte [ebp - 0x145], al
mov al, byte [ebp - 0x13d]
jmp 0x455a71
cmp byte [ebp - 0x13f], 0
je 0x4559d2
lea ecx, [ebp - 0x3c]
mov eax, str.TLS_CHACHA20_POLY1305_SHA256
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4559b0
test dl, dl
je 0x4559ac
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4559b0
add eax, 2
add ecx, 2
test dl, dl
jne 0x455990
xor eax, eax
jmp 0x4559b5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4559d2
mov al, byte [ebp - 0x13d]
xor ah, ah
mov cl, byte [ebp - 0x13e]
mov byte [ebp - 0x13f], ah
jmp 0x455a7d
cmp byte [ebp - 0x140], 0
je 0x455a28
lea ecx, [ebp - 0x3c]
mov eax, str.TLS_AES_128_CCM_8_SHA256
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x455a03
test dl, dl
je 0x4559ff
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x455a03
add eax, 2
add ecx, 2
test dl, dl
jne 0x4559e3
xor eax, eax
jmp 0x455a08
sbb eax, eax
or eax, 1
test eax, eax
jne 0x455a28
mov al, byte [ebp - 0x13d]
xor ch, ch
mov cl, byte [ebp - 0x13e]
mov ah, byte [ebp - 0x13f]
mov byte [ebp - 0x140], ch
jmp 0x455a83
cmp byte [ebp - 0x13d], 0
je 0x455aa3
lea ecx, [ebp - 0x3c]
mov eax, str.TLS_AES_128_CCM_SHA256
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x455a60
test dl, dl
je 0x455a5c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x455a60
add eax, 2
add ecx, 2
test dl, dl
jne 0x455a40
xor eax, eax
jmp 0x455a65
sbb eax, eax
or eax, 1
test eax, eax
jne 0x455aa3
xor al, al
mov byte [ebp - 0x13d], al
mov cl, byte [ebp - 0x13e]
mov ah, byte [ebp - 0x13f]
mov ch, byte [ebp - 0x140]
mov edi, ebx
test ebx, ebx
je 0x455a8c
lea edi, [ebx + 1]
mov edx, dword [ebp - 0x164]
inc edx
mov dword [ebp - 0x164], edx
test edi, edi
jne 0x455890
jmp 0x455b07
push str.Passed_in_an_unknown_TLS_1.3_cipher.
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 8
mov eax, 0x3b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push str.Cipher_name_too_long__not_checked.
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 8
mov eax, 0x3b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
mov ch, byte [ebp - 0x140]
mov ah, byte [ebp - 0x13f]
mov cl, byte [ebp - 0x13e]
mov bl, byte [ebp - 0x145]
test cl, cl
je 0x455b4a
test bl, bl
je 0x455b4a
test ah, ah
je 0x455b4a
test ch, ch
je 0x455b4e
test al, al
je 0x455b52
push str.All_available_TLS_1.3_ciphers_were_disabled.
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 8
mov eax, 0x3b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
test ch, ch
jne 0x455b52
test al, al
je 0x455bc4
mov dword [ebp - 0x15c], 0x200020
lea edx, [ebp - 0x15c]
mov dword [ebp - 0x158], str.ChainingModeCCM
mov dword [ebp - 0xac], 2
mov dword [ebp - 0x9c], edx
mov dword [ebp - 0xa0], 1
mov dword [ebp - 0xa8], 0x80008
mov dword [ebp - 0xa4], 0x4abd5c
cmp ch, al
je 0x455bbd
test ch, ch
je 0x455bb3
mov dword [ebp - 0x98], 0x80
mov edi, 1
jmp 0x455bc6
mov dword [ebp - 0x94], 0x40
mov edi, 1
jmp 0x455bc6
xor edi, edi
mov al, bl
test cl, cl
jne 0x455be0
mov byte [ebp - 0x13e], cl
mov byte [ebp - 0x13f], ah
test al, al
je 0x455c73
lea edx, [edi*8]
mov dword [ebp - 0x16c], 0x200020
sub edx, edi
mov dword [ebp - 0x168], str.ChainingModeGCM
cmp cl, bl
je 0x455c12
test cl, cl
mov esi, str.SHA384
mov eax, str.SHA256
cmove esi, eax
jmp 0x455c17
mov esi, 0x4abd5c
xor eax, eax
cmp cl, bl
sete al
lea eax, [eax*4 + 4]
movzx ecx, ax
xor eax, eax
cmp byte [ebp - 0x13e], bl
setne al
add eax, 2
inc edi
mov dword [ebp + edx*4 - 0xac], eax
lea eax, [ebp - 0x16c]
mov word [ebp + edx*4 - 0xa8], cx
mov word [ebp + edx*4 - 0xa6], cx
mov dword [ebp + edx*4 - 0xa4], esi
mov dword [ebp + edx*4 - 0x9c], eax
mov ah, byte [ebp - 0x13f]
mov dword [ebp + edx*4 - 0xa0], 1
test ah, ah
je 0x455ca6
lea eax, [edi*8]
sub eax, edi
inc edi
mov dword [ebp + eax*4 - 0xac], 2
mov dword [ebp + eax*4 - 0xa8], 0x240024
mov dword [ebp + eax*4 - 0xa4], str.CHACHA20_POLY1305
jmp 0x455ca6
xor edi, edi
lea eax, [ebp - 0xac]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x174]
or eax, 0x400000
mov dword [ebp - 0x190], 1
cmp dword [ebp - 0x14c], 0
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x17c]
not eax
mov dword [ebp - 0x1b4], 5
mov dword [ebp - 0x14], eax
je 0x455d0a
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x1ac], 1
mov dword [ebp - 0x1a8], eax
mov edi, dword [ebp - 0x180]
mov ecx, dword [edi]
lea eax, [ecx + 8]
push eax
lea eax, [ebp - 0x1b4]
jmp 0x455dd7
mov esi, dword [esi + 0x18]
lea eax, [ebp - 0x1c0]
push 0x38
push 0
push eax
call fcn.0047c720
mov ecx, dword [ebp - 0x174]
add esp, 0xc
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1c0], 4
mov dword [ebp - 0x190], ecx
mov dword [ebp - 0x1a0], eax
test esi, esi
je 0x455da0
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x1c0]
push esi
push eax
call fcn.00457030
mov esi, eax
add esp, 0xc
test esi, esi
je 0x455dac
push str.Unable_to_set_ciphers_to_from_connection_ssl_config
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
or ecx, 0x400000
mov dword [ebp - 0x190], ecx
cmp dword [ebp - 0x14c], 0
je 0x455dcb
lea eax, [ebp - 0x14c]
mov dword [ebp - 0x1bc], 1
mov dword [ebp - 0x1b8], eax
mov ecx, dword [edi]
lea eax, [ecx + 8]
push eax
lea eax, [ebp - 0x1c0]
push ecx
push 0
push 0
push eax
mov eax, dword [0x4c5e10]
push 0
push 2
push str.Microsoft_Unified_Security_Protocol_Provider
mov eax, dword [eax + 0xc]
push 0
call eax
mov esi, eax
mov eax, dword [ebp - 0x14c]
test eax, eax
je 0x455e05
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test esi, esi
je 0x455e6c
push 0x100
lea eax, [ebp - 0x13c]
push eax
push esi
call fcn.00450c90
push eax
push str.schannel:_AcquireCredentialsHandle_failed:__s
push dword [ebp - 0x144]
call fcn.0043fca0
push dword [edi]
call dword [0x4c4044]
add esi, 0x7ff6fd00
mov dword [edi], 0
add esp, 0x1c
cmp esi, 0xe
ja case.0x455e4f.2146893055
movzx eax, byte [esi + 0x455ef0]
jmp dword [eax*4 + 0x455ee4]
pop edi
pop esi
mov eax, 0x23
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push str.SSL_versions_not_supported
push dword [ebp - 0x144]
call fcn.0043fca0
add esp, 8
mov eax, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push dword [ebp - 0x144]
call fcn.0043fca0
mov eax, 0x23
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042ca6a
mov esp, ebp
pop ebp
ret