Function at 0x435510
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x260
mov eax, dword [0x49d094]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, 0x1d0
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov ebx, eax
shl ebx, 4
add ebx, esi
mov dword [ebp - 0x1e0], eax
push edi
cmp dword [esi + 0xc0], 2
mov edi, dword [ebp + 8]
mov dword [ebp - 0x1e4], 0xffffffff
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1b0], ecx
jne 0x43558b
cmp dword [esi + 0x15c], 0xffffffff
mov eax, 0x1c0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x43558b
mov eax, dword [esi + 0xb4]
jmp 0x43558e
mov eax, dword [esi + 0x6c]
push 1
push 2
push 1
push 5
mov dword [ebp - 0x1d8], eax
call fcn.0044be30
add esp, 0x10
test al, al
je 0x4355b6
push str.schannel:_Windows_version_is_old_and_may_not_be_able_to_connect_to_some_servers_due_to_lack_of_SNI__algorithms__etc._n
push edi
call fcn.00421590
add esp, 8
cmp byte [esi + 0x26c], 0
je 0x4355f2
push str.wine_get_version
push str.ntdll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
jne 0x4355f2
push 3
push 2
push 3
push 6
call fcn.0044be30
add esp, 0x10
test al, al
je 0x4355f2
mov cl, 1
jmp 0x4355f4
xor cl, cl
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x46], cl
cmp dword [esi + 0xc0], 2
jne 0x435628
cmp dword [esi + 0x15c], 0xffffffff
mov eax, 0x1c0
mov ecx, 0x1d0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x435628
mov eax, dword [esi + 0x224]
jmp 0x43562e
mov eax, dword [esi + 0x1f0]
test eax, eax
je 0x435676
push 3
push 2
push 1
push 6
call fcn.0044be30
add esp, 0x10
test al, al
je 0x435652
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x47], 1
jmp 0x435680
push str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
push edi
call fcn.004214d0
add esp, 8
mov eax, 0x4d
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x47], 0
mov eax, dword [ebx + 0x1a8]
mov dword [eax], 0
cmp dword [esi + 0xc0], 2
jne 0x4356b7
cmp dword [esi + 0x15c], 0xffffffff
mov eax, 0x1c0
mov ecx, 0x1d0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x4356b7
mov al, byte [edi + 0x49b]
jmp 0x4356bd
mov al, byte [edi + 0x433]
test al, al
je 0x435706
push edi
call fcn.0041c820
push dword [ebp - 0x1e0]
lea eax, [ebp - 0x1dc]
push 0
push eax
push esi
push edi
call fcn.0041c3e0
add esp, 0x18
test al, al
jne 0x4356fd
mov ecx, dword [ebx + 0x1a8]
mov eax, dword [ebp - 0x1dc]
mov dword [ecx], eax
mov eax, dword [ebx + 0x1a8]
mov eax, dword [eax]
inc dword [eax + 0x10]
push edi
call fcn.0041c850
add esp, 4
mov eax, dword [ebx + 0x1a8]
cmp dword [eax], 0
jne 0x435fbf
push 0x38
lea eax, [ebp - 0x238]
push 0
push eax
call fcn.0045a1f0
add esp, 0xc
mov dword [ebp - 0x238], 4
cmp byte [esi + 0x214], 0
je 0x435779
mov ecx, dword [ebx + 0x1a8]
mov eax, 0x20
mov edx, 8
cmp byte [ecx + 0x47], 0
cmovne eax, edx
cmp byte [edi + 0x463], 0
je 0x435762
or eax, 0x1800
jmp 0x43577e
cmp byte [edi + 0x465], 0
je 0x435772
or eax, 0x1a00
jmp 0x43577e
or eax, 0x200
jmp 0x43577e
mov eax, 0x1808
cmp byte [esi + 0x215], 0
mov dword [ebp - 0x208], eax
jne 0x435796
or eax, 4
mov dword [ebp - 0x208], eax
mov eax, dword [esi + 0x1e4]
cmp eax, 7
ja case.default.0x4357a5
jmp dword [eax*4 + 0x436330]
push esi
lea eax, [ebp - 0x238]
push edi
push eax
call fcn.00437780
add esp, 0xc
test eax, eax
je 0x4357e8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x218], 0x20
jmp 0x4357e8
mov dword [ebp - 0x218], 8
mov edx, dword [esi + 0xc0]
mov ecx, 0x1c0
cmp edx, 2
jne 0x435815
cmp dword [esi + 0x15c], 0xffffffff
mov eax, ecx
cmovne eax, dword [ebp - 0x1b0]
cmp dword [eax + esi], edx
je 0x435815
mov eax, dword [esi + 0x234]
jmp 0x43581b
mov eax, dword [esi + 0x200]
test eax, eax
je 0x435885
cmp edx, 2
jne 0x435840
cmp dword [esi + 0x15c], 0xffffffff
mov eax, 0x1d0
cmovne ecx, eax
cmp dword [ecx + esi], edx
je 0x435840
mov eax, dword [esi + 0x234]
jmp 0x435846
mov eax, dword [esi + 0x200]
push eax
lea eax, [ebp - 0x238]
push eax
call fcn.00437700
add esp, 8
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x435885
push str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
push edi
call fcn.004214d0
mov eax, dword [ebp - 0x1b0]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x410]
test eax, eax
jne 0x43589b
cmp dword [edi + 0x428], eax
je 0x435e87
mov ecx, dword [edi + 0x428]
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1d0], 0
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1b8], 0
mov dword [ebp - 0x1d4], ecx
mov dword [ebp - 0x1b4], 0
test ecx, ecx
je 0x43590e
mov eax, dword [ecx]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x1b8], eax
jmp 0x43597c
push eax
call fcn.004325d0
add esp, 4
mov dword [ebp - 0x1b4], eax
test eax, eax
je 0x436108
lea ecx, [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0x1c0]
push ecx
lea ecx, [ebp - 0x1bc]
push ecx
push eax
call fcn.00434f20
add esp, 0x10
mov dword [ebp - 0x1e8], eax
test eax, eax
je 0x435d40
mov eax, dword [edi + 0x410]
cmp byte [eax], 0
je 0x435d09
push 0x4845d8
push eax
call fcn.00432700
add esp, 8
mov dword [ebp - 0x1c4], eax
test eax, eax
je 0x435d09
mov eax, dword [edi + 0x44c]
test eax, eax
je 0x4359bf
push 0x488cc8
push eax
call fcn.004262a0
add esp, 8
test eax, eax
jne 0x4359bf
cmp dword [ebp - 0x1d4], eax
mov eax, str._memory_blob_
jne 0x4359ab
mov eax, dword [edi + 0x410]
push eax
push str.schannel:_certificate_format_compatibility_error__for__s
push edi
call fcn.004214d0
add esp, 0xc
jmp 0x435d91
cmp dword [ebp - 0x1c4], 0
mov eax, dword [ebp - 0x1d4]
jne 0x4359d6
test eax, eax
je 0x435d40
mov dword [ebp - 0x1bc], 0
test eax, eax
je 0x4359f0
mov dword [ebp - 0x1c0], str._memory_blob_
jmp 0x4359fc
mov eax, dword [edi + 0x410]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1b4]
test eax, eax
je 0x435a0f
push eax
call fcn.00461983
add esp, 4
mov eax, dword [ebp - 0x1c4]
test eax, eax
je 0x435ab1
xor ecx, ecx
push 2
push ecx
push eax
mov dword [ebp - 0x1b4], ecx
call fcn.00463030
add esp, 0xc
test eax, eax
sete cl
mov byte [ebp - 0x1a9], cl
test eax, eax
jne 0x435af4
push dword [ebp - 0x1c4]
call fcn.00468f64
add esp, 4
mov dword [ebp - 0x1b4], eax
test eax, eax
jns 0x435af8
mov byte [ebp - 0x1a9], 0
mov eax, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x1b8]
test eax, eax
je 0x435b54
push dword [ebp - 0x1c4]
push 1
push edx
push eax
call fcn.00462bd2
add esp, 0x10
cmp eax, 1
jne 0x435b54
push dword [ebp - 0x1c4]
call fcn.0045ea34
add esp, 4
cmp byte [ebp - 0x1a9], 0
je 0x435b62
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [edi + 0x45c]
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x1ec], eax
test ecx, ecx
je 0x435b98
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x435ae0
sub ecx, edx
mov dword [ebp - 0x1bc], ecx
jmp 0x435b9a
xor eax, eax
jmp 0x435afe
mov cl, byte [ebp - 0x1a9]
mov edx, eax
mov dword [ebp - 0x1b8], edx
test cl, cl
je 0x435b49
push 0
push 0
push dword [ebp - 0x1c4]
call fcn.00463030
add esp, 0xc
test eax, eax
sete byte [ebp - 0x1a9]
test eax, eax
jne 0x435a67
mov eax, dword [ebp - 0x1b4]
inc eax
push eax
call dword [section..data]
add esp, 4
mov dword [ebp - 0x1c8], eax
jmp 0x435a6d
mov eax, dword [ebp - 0x1c8]
jmp 0x435a73
push dword [ebp - 0x1c4]
call fcn.0045ea34
add esp, 4
push dword [edi + 0x410]
push str.schannel:_Failed_to_read_cert_file__s
push edi
call fcn.004214d0
push dword [ebp - 0x1c8]
call dword [0x49d004]
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
xor ecx, ecx
lea eax, [ecx*2 + 2]
push eax
call dword [section..data]
mov edx, eax
add esp, 4
mov dword [ebp - 0x1b8], edx
test edx, edx
je 0x435c26
mov eax, dword [ebp - 0x1bc]
test eax, eax
je 0x435bee
lea ecx, [eax + 1]
push ecx
push edx
push eax
push dword [edi + 0x45c]
push 8
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edx, dword [ebp - 0x1b8]
mov ecx, eax
test ecx, ecx
js 0x435bfc
mov eax, dword [ebp - 0x1bc]
jmp 0x435bf0
xor ecx, ecx
cmp ecx, eax
jg 0x435bfc
xor eax, eax
mov word [edx + ecx*2], ax
jmp 0x435c01
xor eax, eax
mov word [edx], ax
push 0
push edx
lea eax, [ebp - 0x1ec]
push eax
call dword [sym.imp.CRYPT32.dll_PFXImportCertStore]
push dword [ebp - 0x1b8]
mov dword [ebp - 0x1d0], eax
call dword [0x49d004]
add esp, 4
cmp dword [ebp - 0x1d4], 0
jne 0x435c3e
push dword [ebp - 0x1c8]
call dword [0x49d004]
add esp, 4
mov eax, dword [ebp - 0x1d0]
test eax, eax
jne 0x435ca8
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x435c7d
push dword [ebp - 0x1c0]
push str.schannel:_Failed_to_import_cert_file__s__password_is_bad
push edi
call fcn.004214d0
add esp, 0xc
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push eax
push dword [ebp - 0x1c0]
push str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
push edi
call fcn.004214d0
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push 0
push 0
push 0
push 0
push 0x10001
push eax
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [ebp - 0x1cc], eax
test eax, eax
jne 0x435e63
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [ebp - 0x1c0]
push str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
push edi
call fcn.004214d0
add esp, 0x10
push 0
push dword [ebp - 0x1d0]
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.0045851f
mov esp, ebp
pop ebp
ret
push dword [edi + 0x410]
push str.schannel:_Failed_to_get_certificate_location_or_file_for__s
push edi
call fcn.004214d0
mov ecx, dword [ebp - 0x1b4]
push ecx
call fcn.00461983
mov eax, dword [ebp - 0x1e8]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1bc]
or eax, 0x4000
push eax
push 0
push 0
push 0xa
call dword [sym.imp.CRYPT32.dll_CertOpenStore]
mov dword [ebp - 0x1d0], eax
test eax, eax
jne 0x435dba
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp - 0x1c0]
push eax
push ebx
push dword [ebp - 0x1bc]
push str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
push edi
call fcn.004214d0
push ebx
call dword [0x49d004]
add esp, 0x18
mov eax, dword [ebp - 0x1b4]
test eax, eax
je 0x435da4
push eax
call fcn.00461983
add esp, 4
pop edi
pop esi
mov eax, 0x3a
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x1c0]
call dword [0x49d004]
add esp, 4
mov dword [ebp - 0x1f4], 0x14
lea eax, [ebp - 0x18]
mov dword [ebp - 0x1f0], eax
lea eax, [ebp - 0x1f4]
push 0
push 0
push eax
lea eax, [ebp - 0x18]
push eax
push 4
push 0x28
push dword [ebp - 0x1b0]
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryW]
test eax, eax
jne 0x435e1b
mov eax, dword [ebp - 0x1b4]
test eax, eax
je 0x435ce5
push eax
call fcn.00461983
add esp, 4
jmp 0x435ce5
push 0
lea eax, [ebp - 0x1f4]
push eax
push 0x10000
push 0
push 0x10001
push dword [ebp - 0x1d0]
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x1cc], eax
test ecx, ecx
je 0x435e5b
push ecx
call fcn.00461983
mov eax, dword [ebp - 0x1cc]
add esp, 4
test eax, eax
je 0x435ce5
push 0
push dword [ebp - 0x1d0]
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x234], 1
mov dword [ebp - 0x230], eax
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
push 0x18
push 1
call dword [0x49d010]
mov ecx, dword [ebx + 0x1a8]
add esp, 8
mov dword [ecx], eax
mov eax, dword [ebx + 0x1a8]
mov eax, dword [eax]
test eax, eax
jne 0x435ee1
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.004214d0
mov eax, dword [ebp - 0x1cc]
add esp, 8
test eax, eax
je 0x436108
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x10], 1
mov eax, dword [ebx + 0x1a8]
mov ecx, dword [eax]
lea eax, [ecx + 8]
push eax
push ecx
push 0
push 0
lea eax, [ebp - 0x238]
push eax
mov eax, dword [0x49e400]
push 0
push 2
push str.Microsoft_Unified_Security_Protocol_Provider
mov eax, dword [eax + 0xc]
push 0
call eax
mov ecx, dword [ebp - 0x1cc]
mov dword [ebp - 0x1b0], eax
test ecx, ecx
je 0x435f32
push ecx
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x435fbf
push 0x100
lea ecx, [ebp - 0x198]
push ecx
push eax
call fcn.0040f570
push eax
push str.schannel:_AcquireCredentialsHandle_failed:__s
push edi
call fcn.004214d0
mov eax, dword [ebx + 0x1a8]
push dword [eax]
call dword [0x49d004]
mov eax, dword [ebx + 0x1a8]
add esp, 0x1c
cmp dword [ebp - 0x1b0], 0x80090300
mov dword [eax], 0
je 0x436108
pop edi
pop esi
mov eax, 0x23
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push edi
call fcn.004214d0
add esp, 8
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x23c]
push eax
push dword [ebp - 0x1d8]
push 2
call fcn.00432990
add esp, 0xc
test eax, eax
jne 0x435ff5
lea eax, [ebp - 0x1a8]
push eax
push dword [ebp - 0x1d8]
push 0x17
call fcn.00432990
add esp, 0xc
test eax, eax
je 0x436003
push str.schannel:_using_IP_address__SNI_is_not_supported_by_OS._n
push edi
call fcn.00421590
add esp, 8
mov eax, dword [ebx + 0x1a8]
cmp byte [eax + 0x46], 0
je 0x43607a
push str.http_1.1
push str.schannel:_ALPN__offering__s_n
push edi
mov dword [ebp - 0x94], 2
mov byte [ebp - 0x8e], 8
mov dword [ebp - 0x8d], 0x70747468
mov dword [ebp - 0x89], 0x312e312f
call fcn.00421590
push 9
call fcn.00423a00
mov word [ebp - 0x90], ax
movzx eax, ax
add eax, 6
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x98]
push 0x13
push eax
lea eax, [ebp - 0x248]
push 0x12
push eax
call fcn.004340f0
add esp, 0x20
jmp 0x43608f
push 0
push 0
lea eax, [ebp - 0x248]
push 0
push eax
call fcn.004340f0
add esp, 0x10
push 1
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x260]
push eax
call fcn.00434110
push 0
push 0
lea eax, [ebp - 0x200]
push 0
push eax
call fcn.004340f0
push 1
lea eax, [ebp - 0x200]
push eax
lea eax, [ebp - 0x254]
push eax
call fcn.00434110
mov eax, dword [ebx + 0x1a8]
push 0x10
push 1
mov dword [eax + 0x38], 0x811c
call dword [0x49d010]
mov ecx, dword [ebx + 0x1a8]
add esp, 0x30
mov dword [ecx + 4], eax
mov eax, dword [ebx + 0x1a8]
cmp dword [eax + 4], 0
jne 0x43611e
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.004214d0
add esp, 8
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x1d8]
call fcn.004325d0
add esp, 4
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x436108
mov edx, dword [ebx + 0x1a8]
mov ecx, dword [edx + 4]
lea eax, [ecx + 8]
push eax
lea eax, [edx + 0x3c]
push eax
lea eax, [ebp - 0x254]
push eax
push ecx
xor ecx, ecx
lea eax, [ebp - 0x260]
cmp byte [edx + 0x46], cl
push 0
cmove eax, ecx
push eax
mov eax, dword [0x49e400]
push ecx
push ecx
push dword [edx + 0x38]
mov eax, dword [eax + 0x18]
push dword [ebp - 0x1b0]
push ecx
push dword [edx]
call eax
push dword [ebp - 0x1b0]
mov dword [ebp - 0x1bc], eax
call fcn.00461983
add esp, 4
cmp dword [ebp - 0x1bc], 0x90312
je 0x436272
mov ecx, dword [ebx + 0x1a8]
push dword [ecx + 4]
call dword [0x49d004]
mov eax, dword [ebx + 0x1a8]
add esp, 4
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x1bc]
push 0x100
cmp eax, 0x80090300
je 0x43623c
cmp eax, 0x80090322
je 0x436206
lea ecx, [ebp - 0x198]
push ecx
push eax
call fcn.0040f570
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.004214d0
add esp, 0x18
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x198]
push eax
push 0x80090322
call fcn.0040f570
push eax
push str.schannel:_SNI_or_certificate_check_failed:__s
push edi
call fcn.004214d0
add esp, 0x18
mov eax, 0x3c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x198]
push eax
push 0x80090300
call fcn.0040f570
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.004214d0
add esp, 0x18
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1e4]
push eax
push dword [ebp - 0x200]
mov eax, dword [ebp - 0x1e0]
push dword [ebp - 0x1f8]
push dword [esi + eax*4 + 0x158]
push edi
call fcn.004219a0
mov ecx, dword [0x49e400]
add esp, 0x14
mov esi, eax
push dword [ebp - 0x1f8]
mov ecx, dword [ecx + 0x40]
call ecx
mov eax, dword [ebp - 0x1e4]
mov ecx, dword [ebp - 0x200]
test esi, esi
jne 0x43630a
cmp ecx, eax
jne 0x43630a
mov eax, dword [ebx + 0x1a8]
pop edi
pop esi
mov dword [eax + 0x40], 0
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x44], 0
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x45], 0
mov eax, dword [ebx + 0x1a8]
mov byte [eax + 0x34], 0
xor eax, eax
mov dword [ebx + 0x1a4], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045851f
mov esp, ebp
pop ebp
ret
push ecx
push eax
push str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
push edi
call fcn.004214d0
mov ecx, dword [ebp - 4]
add esp, 0x10
xor ecx, ebp
mov eax, 0x23
pop edi
pop esi
pop ebx
call fcn.0045851f
mov esp, ebp
pop ebp
ret