Function at 0x52a550
Capabilities:
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x300
mov ebx, edx
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov eax, dword [0x7aa024]
xor eax, ebp
mov dword [esp + 0x2f8], eax
mov edi, esi
shl edi, 4
cmp dword [ebx + edi + 0x190], 2
jne 0x52a5a1
mov byte [edx], 1
xor edi, edi
mov ecx, dword [esp + 0x2f8]
xor ecx, ebp
call fcn.0064d372
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 8], ecx
mov eax, dword [ebx + esi*4 + 0x148]
mov dword [esp + 0x4c], eax
lea eax, [ebx + edi]
add eax, 0x194
mov dword [esp + 0x28], eax
mov esi, dword [eax]
test esi, esi
mov dword [esp + 0x14], ebx
je 0x52adec
lea eax, [ebx + edi]
add eax, 0x190
mov dword [esp + 0x10], eax
lea eax, [ebx + 0xac]
mov dword [esp + 0x20], eax
lea eax, [ebx + 0x64]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 8]
lea ecx, [eax + 0x5a4]
mov dword [esp + 0x48], ecx
add eax, 0x5a0
mov dword [esp + 0x44], eax
xor eax, eax
dec eax
mov dword [esp + 0x40], eax
lea eax, [esi - 1]
cmp eax, 3
jae 0x52b2f2
push 1
push 0
mov esi, dword [esp + 0x10]
push esi
call fcn.004f5340
add esp, 0xc
test edx, edx
js 0x52aed6
mov ecx, dword [esp + 0x28]
mov esi, dword [ecx]
mov ecx, esi
and ecx, 0xfffffffe
cmp ecx, 2
jne 0x52a67f
cmp esi, 3
mov ecx, 0xffffffff
mov edi, dword [esp + 0x4c]
cmove ecx, edi
cmp esi, 2
mov esi, 0xffffffff
cmove esi, edi
cmp byte [ebp + 0xc], 0
mov edi, 0
cmovne eax, edi
cmovne edx, edi
push edx
push eax
push ecx
push 0xffffffffffffffff
push esi
call fcn.00514a00
add esp, 0x14
test eax, eax
js 0x52b54f
je 0x52b560
xor eax, eax
dec eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0xc0], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0xb0], xmm0
movdqa xmmword [esp + 0xa0], xmm0
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf0], eax
movdqa xmmword [esp + 0xe0], xmm0
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
cmp dword [ebx + 0xb8], 2
jne 0x52a70e
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
mov eax, dword [esp + 0x20]
jne 0x52a712
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 8]
mov ecx, dword [esp + 0x28]
cmp dword [ecx], 3
setne bl
mov edi, 0x23
cmp dword [edx], 0
je 0x52a589
cmp dword [edx + 4], 0
je 0x52a589
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
cmp dword [edx + 0x30], 0
mov edi, edx
jne 0x52a775
mov dword [edi + 0x28], 0
mov esi, 0x1000
mov dword [edi + 0x20], esi
mov ecx, dword [fcn.005f2b30]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov dword [edi + 0x30], eax
test eax, eax
je 0x52b543
mov esi, dword [edi + 0x2c]
test esi, esi
jne 0x52a7ae
mov byte [edi + 0x34], 0
mov dword [edi + 0x24], 0
mov esi, 0x1000
mov dword [edi + 0x1c], esi
mov ecx, dword [fcn.005f2b30]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov esi, eax
mov dword [edi + 0x2c], eax
test eax, eax
je 0x52b543
mov eax, dword [edi + 0x1c]
mov ecx, edi
mov edi, dword [edi + 0x24]
sub eax, edi
cmp eax, 0x3ff
mov dword [esp + 0x1c], ecx
ja 0x52a7ee
add edi, 0x400
mov ecx, dword [fcn.005f2bb0]
call dword [section..00cfg]
push edi
push esi
call ecx
add esp, 8
test eax, eax
je 0x52b58b
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x2c], eax
mov dword [ecx + 0x1c], edi
lea eax, [ecx + 0x3c]
mov dword [esp + 0xc], eax
mov edi, ecx
test bl, bl
je 0x52a84c
mov eax, dword [edi + 0x1c]
mov ecx, dword [edi + 0x24]
sub eax, ecx
add ecx, dword [edi + 0x2c]
lea edx, [esp + 0x58]
push edx
push eax
push ecx
mov ebx, dword [esp + 0x20]
mov eax, dword [ebp + 8]
push dword [ebx + eax*4 + 0x148]
call fcn.005159e0
add esp, 0x10
cmp eax, 0x51
je 0x52ad0e
test eax, eax
jne 0x52af5f
mov eax, dword [esp + 0x58]
test eax, eax
je 0x52af5f
add eax, dword [edi + 0x24]
mov dword [edi + 0x24], eax
mov byte [edi + 0x34], 0
jmp 0x52a84f
mov eax, dword [edi + 0x24]
push eax
call fcn.00530510
add esp, 4
mov esi, eax
mov ecx, dword [fcn.005f2b30]
mov ebx, dword [edi + 0x24]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
mov dword [esp + 0xe0], esi
mov esi, 2
mov dword [esp + 0xe4], esi
mov dword [esp + 0xe8], eax
xor edx, edx
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], edx
mov dword [esp + 0xf4], edx
mov dword [esp + 0x84], edx
lea ecx, [esp + 0xe0]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], esi
movdqa xmm0, xmmword [0x755a20]
movdqa xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0x11
lea ecx, [esp + 0xac]
pxor xmm0, xmm0
movdqu xmmword [ecx + 8], xmm0
mov dword [esp + 0x90], edx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x98], ecx
mov dword [esp + 0x94], 3
test eax, eax
je 0x52b528
push dword [edi + 0x24]
push dword [edi + 0x2c]
push eax
call fcn.00650080
add esp, 0xc
push dword [esp + 0x2c]
call fcn.004fb040
add esp, 4
test eax, eax
je 0x52b539
mov esi, eax
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x18]
mov eax, dword [edi]
mov dword [esp + 0x18], eax
mov ebx, dword [edi + 4]
lea eax, [ebx + 8]
mov dword [esp + 0x24], eax
mov edi, dword [edi + 0x38]
call dword [section..00cfg]
push dword [esp + 0x24]
push dword [esp + 0x10]
lea eax, [esp + 0x98]
push eax
xor edx, edx
push edx
push edx
lea eax, [esp + 0x98]
push eax
push edx
push edx
push edi
push esi
push ebx
push dword [esp + 0x44]
call ecx
push esi
mov esi, eax
call fcn.005f2b80
add esp, 4
mov ecx, dword [fcn.005f2b80]
mov edi, dword [esp + 0xe8]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
xor eax, eax
mov dword [esp + 0xe8], eax
cmp esi, 0x90311
jg 0x52a9c4
test esi, esi
mov ebx, dword [esp + 0x14]
mov edi, 0x1b
je 0x52a9d9
jmp 0x52acf3
cmp esi, 0x90312
mov ebx, dword [esp + 0x14]
mov edi, 0x1b
jne 0x52acc9
cmp dword [esp + 0xa4], 2
jne 0x52aa2a
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x52aa2a
lea ecx, [esp + 0x7c]
push ecx
push eax
push dword [esp + 0xb0]
mov eax, dword [ebp + 8]
push dword [ebx + eax*4 + 0x148]
push dword [esp + 0x18]
call fcn.00515520
add esp, 0x14
test eax, eax
jne 0x52b02d
mov eax, dword [esp + 0xa0]
cmp eax, dword [esp + 0x7c]
jne 0x52b02d
mov edi, dword [esp + 0xa8]
test edi, edi
je 0x52aa46
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x40]
call dword [section..00cfg]
push edi
call ecx
cmp dword [esp + 0xb0], 2
jne 0x52aa97
mov eax, dword [esp + 0xac]
test eax, eax
je 0x52aa97
lea ecx, [esp + 0x7c]
push ecx
push eax
push dword [esp + 0xbc]
mov eax, dword [ebp + 8]
push dword [ebx + eax*4 + 0x148]
push dword [esp + 0x18]
call fcn.00515520
add esp, 0x14
test eax, eax
jne 0x52b036
mov eax, dword [esp + 0xac]
cmp eax, dword [esp + 0x7c]
jne 0x52b036
mov edi, dword [esp + 0xb4]
test edi, edi
je 0x52aab3
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x40]
call dword [section..00cfg]
push edi
call ecx
cmp dword [esp + 0xbc], 2
jne 0x52ab04
mov eax, dword [esp + 0xb8]
test eax, eax
je 0x52ab04
lea ecx, [esp + 0x7c]
push ecx
push eax
push dword [esp + 0xc8]
mov eax, dword [ebp + 8]
push dword [ebx + eax*4 + 0x148]
push dword [esp + 0x18]
call fcn.00515520
add esp, 0x14
test eax, eax
jne 0x52b03f
mov eax, dword [esp + 0xb8]
cmp eax, dword [esp + 0x7c]
jne 0x52b03f
mov edi, dword [esp + 0xc0]
test edi, edi
je 0x52ab20
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x40]
call dword [section..00cfg]
push edi
call ecx
cmp dword [esp + 0xf0], 5
jne 0x52ab70
mov eax, dword [esp + 0xec]
test eax, eax
je 0x52ab70
mov edi, dword [esp + 0x1c]
mov ecx, dword [edi + 0x24]
cmp ecx, eax
jbe 0x52ab7b
mov edx, dword [edi + 0x2c]
add ecx, edx
sub ecx, eax
push eax
push ecx
push edx
call fcn.00650080
add esp, 0xc
mov eax, dword [esp + 0xec]
mov dword [edi + 0x24], eax
xor ebx, ebx
cmp esi, 0x90312
je 0x52a7f7
test esi, esi
jne 0x52aba4
jmp 0x52ab9a
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x24], 0
test esi, esi
je 0x52ab9a
cmp esi, 0x90312
jne 0x52aba4
mov eax, dword [esp + 0x28]
mov dword [eax], 2
mov ebx, dword [esp + 0x14]
jmp 0x52ad6c
mov eax, dword [esp + 0x28]
mov dword [eax], 4
mov ebx, dword [esp + 0x14]
cmp dword [ebx + 0xb8], 2
jne 0x52abce
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
mov eax, dword [esp + 0x48]
jne 0x52abd2
mov eax, dword [esp + 0x44]
mov edi, dword [eax]
test edi, edi
mov esi, dword [esp + 8]
je 0x52ad44
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 8]
mov dword [esp + 0x64], 0
push 0xf0
push 0xff
lea eax, [esp + 0x108]
push eax
call fcn.00650600
add esp, 0xc
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x2c]
mov esi, dword [esi + 4]
call dword [section..00cfg]
lea eax, [esp + 0x64]
push eax
push 0x53
push esi
call ecx
mov esi, eax
test eax, eax
jne 0x52ac89
mov eax, dword [esp + 0x64]
test eax, eax
je 0x52ac89
test byte [eax], 1
je 0x52ad24
mov esi, dword [eax + 8]
test esi, esi
je 0x52ad24
mov ebx, dword [eax + 4]
push 0xf0
push 0
lea eax, [esp + 0x108]
push eax
call fcn.00650600
add esp, 0xc
add esi, ebx
push esi
push ebx
lea eax, [esp + 0x108]
push eax
call fcn.00530540
add esp, 0xc
test eax, eax
je 0x52ad8f
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0x14]
jmp 0x52ad28
mov eax, 0x100
push eax
push 0xff
lea edi, [esp + 0x1f8]
push edi
call fcn.00650600
add esp, 0xc
mov eax, 0x100
push eax
push edi
push esi
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:_Failed_to_read_remote_certificate_context:__s
mov esi, dword [esp + 0x10]
push esi
call fcn.00515170
add esp, 0xc
jmp 0x52ad28
cmp esi, 0x90320
jne 0x52b06a
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 0x38]
test al, 0x80
jne 0x52c985
or eax, 0x80
mov dword [ecx + 0x38], eax
mov eax, 3
jmp 0x52ad1c
cmp esi, 0x80090318
jne 0x52b06a
mov eax, dword [esp + 0x1c]
mov byte [eax + 0x34], 1
mov eax, 2
jmp 0x52ad1c
mov eax, 2
mov ecx, dword [esp + 0x28]
cmp dword [ecx], 3
je 0x52ad6c
mov ecx, dword [esp + 0x28]
mov dword [ecx], eax
jmp 0x52ad6c
mov esi, dword [esp + 8]
mov edi, 0x5a
mov eax, dword [esp + 0x64]
test eax, eax
je 0x52ad3c
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test edi, edi
jne 0x52c7d8
cmp byte [ebx + 0x210], 0
je 0x52ad6c
mov eax, dword [esp + 0x1c]
cmp byte [eax + 0x47], 0
je 0x52ad6c
push dword [ebp + 8]
push ebx
push esi
call fcn.0052d7d0
add esp, 0xc
test eax, eax
jne 0x52c930
mov eax, dword [esp + 0x28]
mov esi, dword [eax]
cmp byte [ebp + 0xc], 0
je 0x52a605
lea eax, [esi - 1]
xor edi, edi
cmp eax, 3
jae 0x52a605
jmp 0x52a589
mov eax, dword [esp + 0x190]
test eax, eax
mov esi, dword [esp + 8]
mov ebx, dword [esp + 0x14]
je 0x52add2
mov ecx, dword [esp + 0x198]
sub ecx, eax
jbe 0x52add2
push ecx
push eax
push edi
push esi
call fcn.0052fb10
add esp, 0x10
test eax, eax
je 0x52ade5
mov edi, eax
push str.SSL:_public_key_does_not_match_pinned_public_key_
push esi
call fcn.00515170
add esp, 8
jmp 0x52ad2d
push str.SSL:_failed_retrieving_public_key_from_server_certificate
push esi
call fcn.00515170
add esp, 8
jmp 0x52ad28
xor edi, edi
jmp 0x52ad2d
push 1
push 0
mov esi, dword [esp + 0x10]
push esi
call fcn.004f5340
add esp, 0xc
test edx, edx
js 0x52aed6
xor eax, eax
dec eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x170], xmm0
movdqa xmmword [esp + 0x160], xmm0
movdqa xmmword [esp + 0x150], xmm0
movdqa xmmword [esp + 0x140], xmm0
movdqa xmmword [esp + 0x130], xmm0
movdqa xmmword [esp + 0x120], xmm0
movdqa xmmword [esp + 0x110], xmm0
movdqa xmmword [esp + 0x100], xmm0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], eax
movdqa xmmword [esp + 0xe0], xmm0
cmp dword [ebx + 0xb8], 2
jne 0x52aed1
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
jne 0x52aeee
lea eax, [ebx + 0x64]
jmp 0x52aef4
push str.SSL_TLS_connection_timeout
push esi
call fcn.00515170
add esp, 8
mov edi, 0x1c
jmp 0x52a589
lea eax, [ebx + 0xac]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
mov eax, dword [ebx + edi + 0x198]
mov dword [esp + 0x24], eax
sub esp, 0x14
movdqa xmm0, xmmword [0x755920]
movdqu xmmword [esp], xmm0
mov dword [esp + 0x10], 1
call fcn.00529cf0
add esp, 0x14
test al, al
je 0x52af37
push str.schannel:_Windows_version_is_old_and_may_not_be_able_to_connect_to_some_servers_due_to_lack_of_SNI__algorithms__etc.
push esi
call fcn.00514fc0
add esp, 8
cmp byte [ebx + 0x270], 0
je 0x52af5b
push 0x743c90
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.wine_get_version
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x52af75
xor eax, eax
jmp 0x52af95
push str.schannel:_failed_to_receive_handshake__SSL_TLS_connection_failed
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
jmp 0x52b060
sub esp, 0x14
movdqa xmm0, xmmword [0x755930]
movdqu xmmword [esp], xmm0
mov dword [esp + 0x10], 3
call fcn.00529cf0
add esp, 0x14
mov ecx, dword [esp + 0x24]
mov byte [ecx + 0x46], al
cmp dword [ebx + 0xb8], 2
jne 0x52afbe
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
jne 0x52afd5
cmp dword [ebx + 0x1e0], 0
jne 0x52afeb
cmp dword [ebx + 0x204], 0
jne 0x52afeb
jmp 0x52b0d9
cmp dword [ebx + 0x220], 0
jne 0x52afeb
cmp dword [ebx + 0x244], 0
je 0x52b0d9
sub esp, 0x14
movdqa xmm0, xmmword [0x755940]
movdqu xmmword [esp], xmm0
mov dword [esp + 0x10], 3
mov bl, 1
call fcn.00529cf0
add esp, 0x14
test al, al
jne 0x52b0db
push str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
push esi
call fcn.00515170
add esp, 8
mov edi, 0x4d
jmp 0x52a589
lea eax, [esp + 0xa0]
jmp 0x52b046
lea eax, [esp + 0xac]
jmp 0x52b046
lea eax, [esp + 0xb8]
push dword [eax]
push dword [esp + 0x80]
push str.schannel:_failed_to_send_next_handshake_data:_sent__zd_of__lu_bytes
push dword [esp + 0x14]
call fcn.00515170
add esp, 0x10
mov edi, 0x23
jmp 0x52a589
push 0x100
push 0xff
lea eax, [esp + 0x1f8]
push eax
call fcn.00650600
add esp, 0xc
cmp esi, 0x80090325
je 0x52c529
cmp esi, 0x80090322
je 0x52c507
cmp esi, 0x80090300
jne 0x52c99f
push 0x100
lea eax, [esp + 0x1f4]
push eax
push 0x80090300
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:_next_InitializeSecurityContext_failed:__s
push dword [esp + 0x10]
call fcn.00515170
add esp, 0xc
jmp 0x52a589
xor ebx, ebx
mov eax, dword [esp + 0x24]
mov byte [eax + 0x47], bl
mov dword [eax], 0
mov ebx, dword [esp + 0x14]
cmp dword [ebx + 0xb8], 2
jne 0x52b10e
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
jne 0x52b11c
cmp byte [esi + 0x447], 0
jne 0x52b129
jmp 0x52b242
cmp byte [esi + 0x4b3], 0
je 0x52b242
push esi
call fcn.0052ee90
add esp, 4
cmp dword [ebx + 0xb8], 2
jne 0x52b157
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
setne al
jmp 0x52b159
xor eax, eax
lea ecx, [esp + 0x54]
movzx eax, al
push dword [ebp + 8]
push 0
push ecx
push eax
push ebx
push esi
call fcn.0052eee0
add esp, 0x18
test al, al
jne 0x52b182
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x24]
mov dword [ecx], eax
inc dword [eax + 0x10]
push esi
call fcn.0052eec0
add esp, 4
mov eax, dword [esp + 0x24]
cmp dword [eax], 0
je 0x52b242
lea eax, [esp + 0x50]
push eax
push dword [esp + 0x30]
push 2
call fcn.00509b30
add esp, 0xc
test eax, eax
jne 0x52b1c9
lea eax, [esp + 0xe0]
push eax
push dword [esp + 0x30]
push 0x17
call fcn.00509b30
add esp, 0xc
test eax, eax
je 0x52b1d7
push str.schannel:_using_IP_address__SNI_is_not_supported_by_OS.
push esi
call fcn.00514fc0
add esp, 8
xor esi, esi
mov eax, dword [esp + 0x24]
cmp byte [eax + 0x46], 0
je 0x52b34f
lea ebx, [esp + 0x100]
mov dword [ebx + 4], 2
mov byte [ebx + 0xa], 8
mov dword [ebx + 0xf], 0x312e312f
mov dword [ebx + 0xb], 0x70747468
push str.http_1.1
push str.schannel:_ALPN__offering__s
push dword [esp + 0x10]
call fcn.00514fc0
add esp, 0xc
push 9
call fcn.005304e0
add esp, 4
mov word [ebx + 8], ax
movzx eax, ax
add eax, 6
mov dword [ebx], eax
mov eax, 0x12
mov ecx, 0x13
jmp 0x52b355
lea eax, [ebx + edi]
add eax, 0x198
xor ecx, ecx
mov dword [esp + 0x9c], ecx
mov eax, dword [eax]
mov dword [esp + 0xd4], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc4], xmm0
movdqu xmmword [esp + 0xb4], xmm0
movdqu xmmword [esp + 0xa4], xmm0
mov dword [esp + 0xa0], 4
cmp byte [ebx + 0x210], 0
mov dword [esp + 0x1c], eax
je 0x52b33a
cmp byte [eax + 0x47], 0
mov ecx, 0x20
mov eax, 8
cmove eax, ecx
cmp dword [ebx + 0xb8], 2
jne 0x52b2ce
xor ecx, ecx
cmp dword [ebx + 0x14c], 0xffffffff
setne cl
shl ecx, 4
cmp dword [ebx + ecx + 0x1b0], 2
jne 0x52b5a8
cmp byte [esi + 0x46f], 0
jne 0x52b5b5
cmp byte [esi + 0x471], 0
je 0x52c7ce
or eax, 0x1a00
jmp 0x52b5ba
cmp esi, 4
je 0x52c48a
cmp esi, 5
jne 0x52c4c3
mov ecx, dword [esp + 0x10]
mov dword [ecx], 2
mov eax, dword [ebp + 8]
mov dword [ebx + eax*4 + 0x160], 0x52cef0
mov dword [ebx + eax*4 + 0x168], 0x52d550
mov eax, dword [ecx + 8]
mov eax, dword [eax + 4]
mov dword [ebx + 0x30c], eax
mov al, 1
jmp 0x52c4c5
mov dword [esp + 0xd0], 0x1808
mov eax, 0x1808
jmp 0x52b5c1
xor ecx, ecx
xor eax, eax
xor ebx, ebx
lea edx, [esp + 0x64]
mov dword [edx], ecx
mov dword [edx + 4], eax
mov dword [edx + 8], ebx
mov dword [esp + 0x58], esi
mov dword [esp + 0x60], edx
lea eax, [esp + 0x90]
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov dword [esp + 0x84], esi
mov dword [esp + 0x8c], eax
xor esi, esi
inc esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x88], esi
mov ebx, dword [esp + 0x24]
mov dword [ebx + 0x38], 0x811c
mov ecx, dword [esp + 0x14]
cmp dword [ecx + 0xb8], 2
jne 0x52b3c9
xor eax, eax
cmp dword [ecx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ecx + eax + 0x1b0], 2
jne 0x52b575
mov eax, dword [esp + 8]
cmp byte [eax + 0x473], 0
jne 0x52b3dd
mov dword [ebx + 0x38], 0x819c
mov ecx, dword [fcn.005f2c20]
call dword [section..00cfg]
push 0x10
push 1
call ecx
add esp, 8
mov dword [ebx + 4], eax
test eax, eax
je 0x52b528
push dword [esp + 0x2c]
call fcn.004fb040
add esp, 4
test eax, eax
je 0x52b539
mov dword [esp + 0x18], eax
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x18]
xor edx, edx
cmp byte [ebx + 0x46], 0
mov eax, dword [ebx]
mov dword [esp + 0x1c], eax
mov eax, ebx
lea ebx, [esp + 0x58]
cmove ebx, edx
mov edx, dword [eax + 4]
mov dword [esp + 0xc], edx
add edx, 8
mov dword [esp + 0x30], edx
lea edx, [eax + 0x3c]
mov dword [esp + 0x10], edx
mov eax, dword [eax + 0x38]
mov dword [esp + 0x2c], eax
call dword [section..00cfg]
lea eax, [esp + 0x84]
push dword [esp + 0x30]
push dword [esp + 0x14]
push eax
push dword [esp + 0x18]
xor eax, eax
push eax
push ebx
push eax
push eax
xor eax, eax
push dword [esp + 0x4c]
mov ebx, dword [esp + 0x3c]
push ebx
push eax
push dword [esp + 0x48]
call ecx
push ebx
mov ebx, eax
call fcn.005f2b80
add esp, 4
cmp ebx, 0x90312
jne 0x52c41f
lea eax, [esp + 0x70]
push eax
push dword [esp + 0x94]
push dword [esp + 0xa0]
mov eax, dword [esp + 0x20]
mov ecx, dword [ebp + 8]
push dword [eax + ecx*4 + 0x148]
push dword [esp + 0x18]
call fcn.00515520
add esp, 0x14
mov dword [esp + 0x18], eax
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x40]
mov ebx, dword [esp + 0x98]
call dword [section..00cfg]
push ebx
call ecx
mov eax, dword [esp + 0x90]
lea ecx, [esp + 0x70]
mov ecx, dword [ecx]
cmp dword [esp + 0x18], 0
jne 0x52c685
cmp eax, ecx
jne 0x52c685
mov eax, dword [esp + 0x24]
mov dword [eax + 0x40], 0
mov word [eax + 0x44], 0
mov byte [eax + 0x34], 0
mov eax, dword [esp + 0x28]
mov dword [eax], 1
mov ebx, dword [esp + 0x14]
jmp 0x52a5ca
push str.schannel:_unable_to_allocate_memory
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov edi, 0x1b
jmp 0x52a589
mov edi, 0x1b
mov eax, str.schannel:_unable_to_allocate_memory
jmp 0x52b595
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.select_poll_on_SSL_TLS_socket__errno:__d
jmp 0x52c9bb
cmp byte [ebp + 0xc], 0
je 0x52c66e
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
jmp 0x52a587
mov eax, dword [esp + 8]
cmp byte [eax + 0x4df], 0
jne 0x52b3dd
jmp 0x52b3d6
mov edi, 0x1b
mov eax, str.schannel:_unable_to_re_allocate_memory
mov esi, dword [esp + 8]
push eax
push esi
call fcn.00515170
add esp, 8
jmp 0x52a589
cmp byte [esi + 0x4db], 0
je 0x52c7c1
or eax, 0x1800
mov dword [esp + 0xd0], eax
cmp byte [ebx + 0x211], 0
jne 0x52b5d4
or eax, 4
mov dword [esp + 0xd0], eax
cmp dword [ebx + 0xb8], 2
jne 0x52b5fa
xor ecx, ecx
cmp dword [ebx + 0x14c], 0xffffffff
setne cl
shl ecx, 4
cmp dword [ebx + ecx + 0x1b0], 2
jne 0x52b67d
mov ecx, str.schannel:_enabled_automatic_use_of_client_certificate
cmp byte [esi + 0x473], 0
jne 0x52b61a
and eax, 0xffffffaf
or eax, 0x10
mov dword [esp + 0xd0], eax
mov ecx, str.schannel:_disabled_automatic_use_of_client_certificate
push ecx
push esi
call fcn.00514fc0
add esp, 8
mov ecx, dword [ebx + 0x1d4]
cmp ecx, 7
ja 0x52c663
mov eax, 0xf3
bt eax, ecx
jae 0x52b690
mov eax, dword [ebx + 0xb8]
cmp eax, 2
jne 0x52b675
xor ecx, ecx
cmp dword [ebx + 0x14c], 0xffffffff
setne cl
shl ecx, 4
mov edx, dword [ebx + ecx + 0x1b0]
xor ecx, ecx
cmp edx, 2
setne cl
shl ecx, 6
mov ecx, dword [ecx + ebx + 0x1d4]
cmp edx, 2
jne 0x52b6a8
lea edx, [ebx + 0x1d8]
jmp 0x52b6ae
mov ecx, str.schannel:_enabled_automatic_use_of_client_certificate
cmp byte [esi + 0x4df], 0
jne 0x52b61a
jmp 0x52b608
push str.SSL_versions_not_supported
push esi
call fcn.00515170
add esp, 8
mov edi, 4
jmp 0x52a589
lea edx, [ebx + 0x218]
mov edx, dword [edx]
test edx, 0xfffeffff
jne 0x52b6bd
mov edx, 0x60000
sar edx, 0x10
cmp ecx, edx
jg 0x52b701
mov esi, dword [esp + 0xc0]
inc edx
lea ebx, [ecx - 4]
cmp ebx, 3
ja case.default.0x52b6d4
jmp dword [ebx*4 + 0x756a08]
or esi, 0x80
jmp 0x52b6f1
or esi, 0x800
jmp 0x52b6f1
or esi, 0x200
mov dword [esp + 0xc0], esi
mov ebx, dword [esp + 0x14]
inc ecx
cmp edx, ecx
jne 0x52b6cc
cmp eax, 2
jne 0x52b732
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
mov esi, dword [esp + 8]
jne 0x52ba57
cmp dword [ebx + 0x1f4], 0
jne 0x52b73f
jmp 0x52b77a
cmp dword [ebx + 0x1f4], 0
mov esi, dword [esp + 8]
je 0x52b77a
mov eax, dword [esp + 0x1c]
add eax, 0x48
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
mov ebx, dword [eax + 0x1f4]
test ebx, ebx
jne 0x52ba70
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x10]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xb8], eax
mov eax, dword [esi + 0x41c]
mov edx, dword [esi + 0x434]
test eax, eax
jne 0x52b875
test edx, edx
jne 0x52b875
mov ecx, dword [fcn.005f2c20]
call dword [section..00cfg]
push 0x18
push 1
call ecx
add esp, 8
mov edx, dword [esp + 0x1c]
mov dword [edx], eax
test eax, eax
je 0x52c4d9
mov dword [eax + 0x10], 1
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0xc]
mov esi, dword [edx]
lea ebx, [esi + 8]
call dword [section..00cfg]
xor eax, eax
lea edx, [esp + 0xa0]
push ebx
push esi
push eax
push eax
push edx
push eax
push 2
push str.Microsoft_Unified_Security_Protocol_Provider
push eax
call ecx
mov esi, eax
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x52b800
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test esi, esi
je 0x52c67c
mov edi, 0x100
lea ebx, [esp + 0x1f0]
push edi
push 0xff
push ebx
call fcn.00650600
add esp, 0xc
push edi
push ebx
push esi
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:_AcquireCredentialsHandle_failed:__s
push dword [esp + 0x10]
call fcn.00515170
add esp, 0xc
mov ecx, dword [fcn.005f2b80]
mov ebx, dword [esp + 0x1c]
mov edi, dword [ebx]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov dword [ebx], 0
xor eax, eax
cmp esi, 0x80090300
setne al
lea edi, [eax*8 + 0x1b]
jmp 0x52a589
xor ecx, ecx
dec ecx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x200], ecx
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x1f0], xmm0
test edx, edx
mov dword [esp + 0x18], edx
je 0x52c55f
mov ebx, dword [edx]
mov eax, dword [edx + 4]
mov dword [esp + 0xc], eax
xor ecx, ecx
mov dword [esp + 0x10], 0
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x458]
test eax, eax
je 0x52b8e2
push 0x755ee6
push eax
mov esi, ecx
call fcn.0051c610
mov ecx, esi
mov edx, dword [esp + 0x20]
add esp, 8
test eax, eax
je 0x52c7e2
xor eax, eax
dec eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov eax, str._memory_blob_
test edx, edx
jne 0x52b900
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x41c]
mov dword [esp + 0x30], eax
test ecx, ecx
je 0x52b915
push ecx
call fcn.005f2b80
mov edx, dword [esp + 0x1c]
add esp, 4
test edx, edx
mov esi, ebx
je 0x52c70d
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x10], esi
mov dword [esp + 0x78], esi
mov dword [esp + 0x74], ecx
mov eax, dword [eax + 0x468]
mov dword [esp + 0xc], 0
mov esi, 0
test eax, eax
je 0x52b955
push eax
call fcn.0066b230
add esp, 4
mov esi, eax
mov ecx, dword [fcn.005f2b30]
lea ebx, [esi + esi]
add ebx, 2
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
test eax, eax
je 0x52b9d3
mov ebx, eax
xor edx, edx
mov eax, 0
test esi, esi
je 0x52b99d
lea eax, [esi + 1]
push eax
push ebx
push esi
mov eax, dword [esp + 0x14]
push dword [eax + 0x468]
push 8
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor edx, edx
cmp eax, esi
mov ecx, eax
cmovg ecx, edx
test eax, eax
cmovs ecx, edx
mov word [ebx + ecx*2], 0
lea eax, [esp + 0x74]
push 0
push ebx
push eax
call dword [sym.imp.CRYPT32.dll_PFXImportCertStore]
mov dword [esp + 0xc], eax
mov ecx, dword [fcn.005f2b80]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
cmp dword [esp + 0x18], 0
jne 0x52b9ef
mov ecx, dword [fcn.005f2b80]
call dword [section..00cfg]
push dword [esp + 0x10]
call ecx
add esp, 4
mov ebx, dword [esp + 0xc]
test ebx, ebx
mov esi, dword [esp + 8]
je 0x52c911
sub esp, 0x18
movdqa xmm0, xmmword [0x755a10]
movdqu xmmword [esp + 4], xmm0
mov dword [esp], ebx
mov dword [esp + 0x14], 0
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [esp + 0x9c], eax
test eax, eax
je 0x52c937
mov dword [esp + 0xa4], 1
lea eax, [esp + 0x9c]
mov dword [esp + 0xa8], eax
push 0
push ebx
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x52b796
mov ebx, dword [ebx + 0x234]
test ebx, ebx
je 0x52b77a
mov eax, dword [esp + 0x1c]
add eax, 0x48
mov dword [esp + 0x10], eax
mov ecx, 0x474c4143
mov eax, 0x4843535f
movd xmm0, eax
mov eax, 0x454e4e41
movd xmm1, eax
mov eax, 0x414d5f4c
movd xmm2, ecx
punpckldq xmm2, xmm0
movd xmm0, eax
punpckldq xmm1, xmm0
punpcklqdq xmm2, xmm1
movdqa xmmword [esp + 0x30], xmm2
mov dword [esp + 0x18], 0
mov dword [esp + 0xc], edi
cmp byte [ebx], 0
je 0x52b764
cmp dword [esp + 0x18], 0x2c
jg 0x52b764
xor eax, eax
push eax
push eax
push ebx
call fcn.00664049
add esp, 0xc
mov esi, eax
test eax, eax
je 0x52bb0b
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [eax + ecx*4 + 0x48], esi
inc ecx
mov dword [esp + 0x18], ecx
push 0x3a
push ebx
call fcn.00650760
add esp, 8
test eax, eax
mov esi, dword [esp + 8]
je 0x52b764
mov ebx, eax
inc ebx
jne 0x52bab2
jmp 0x52b764
pxor xmm0, xmm0
movdqa xmmword [esp + 0x200], xmm0
movdqa xmmword [esp + 0x1f0], xmm0
push 0x3a
push ebx
call fcn.00650760
add esp, 8
test eax, eax
je 0x52bb36
mov esi, eax
sub esi, ebx
jmp 0x52bb41
push ebx
call fcn.0066b230
add esp, 4
mov esi, eax
cmp esi, 0x1f
mov eax, 0x1f
cmovae esi, eax
push esi
push ebx
lea edi, [esp + 0x1f8]
push edi
call fcn.0066b340
add esp, 0xc
mov byte [esp + esi + 0x1f0], 0
mov esi, edi
push 9
push edi
push str.CALG_MD2
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c259
push 9
push esi
push str.CALG_MD4
call fcn.0064f16d
add esp, 0xc
test eax, eax
mov edi, dword [esp + 0xc]
je 0x52c267
push 9
push esi
push str.CALG_MD5
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c271
push 9
push esi
push str.CALG_SHA
call fcn.0064f16d
add esp, 0xc
mov ecx, esi
mov esi, 0x8004
test eax, eax
je 0x52bad9
push 0xa
push ecx
push str.CALG_SHA1
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52bad9
push 9
lea esi, [esp + 0x1f4]
push esi
push str.CALG_MAC
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c27b
push 0xe
push esi
push str.CALG_RSA_SIGN
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c285
push 0xe
push esi
push str.CALG_DSS_SIGN
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c28f
push 0xd
push esi
push str.CALG_NO_SIGN
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c299
push 0xe
push esi
push str.CALG_RSA_KEYX
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2a3
push 9
push esi
push str.CALG_DES
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2ad
push 0xe
push esi
push str.CALG_3DES_112
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2b7
push 0xa
push esi
push str.CALG_3DES
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2c1
push 0xa
push esi
push str.CALG_DESX
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2cb
push 9
push esi
push str.CALG_RC2
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2d5
push 9
lea eax, [esp + 0x1f4]
push eax
push str.CALG_RC4
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2df
push 0xa
lea eax, [esp + 0x1f4]
push eax
push str.CALG_SEAL
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2e9
push 0xb
lea eax, [esp + 0x1f4]
push eax
push str.CALG_DH_SF
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2f3
push 0xe
lea eax, [esp + 0x1f4]
push eax
push str.CALG_DH_EPHEM
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c2fd
movdqu xmm0, xmmword [esp + 0x1f3]
pcmpeqb xmm0, xmmword [str.G_AGREEDKEY_ANY]
movdqa xmm1, xmmword [esp + 0x1f0]
pcmpeqb xmm1, xmmword [str.CALG_AGREEDKEY_ACALG_HUGHES_MD5]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x52c307
movdqa xmm0, xmmword [esp + 0x1f0]
pcmpeqb xmm0, xmmword [0x755970]
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x52c311
push 0xe
lea eax, [esp + 0x1f4]
push eax
push str.CALG_SKIPJACK
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c31b
push 9
lea eax, [esp + 0x1f4]
push eax
push str.CALG_TEK
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c325
movdqa xmm0, xmmword [esp + 0x1f0]
pcmpeqb xmm0, xmmword [str.CALG_CYLINK_MEK]
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x52c32f
mov ecx, dword [esp + 0x1fc]
mov eax, 0x35444d41
xor ecx, eax
mov eax, dword [esp + 0x1f4]
mov edx, 0x4c53535f
xor eax, edx
or eax, ecx
mov ecx, dword [esp + 0x1f0]
mov edx, 0x474c4143
xor ecx, edx
movzx edx, byte [esp + 0x200]
or edx, ecx
mov ecx, dword [esp + 0x1f8]
mov esi, 0x48535f33
xor ecx, esi
or edx, ecx
or edx, eax
je 0x52c339
mov ecx, dword [esp + 0x1fc]
mov eax, 0x52455453
xor ecx, eax
mov eax, dword [esp + 0x1f4]
mov edx, 0x4c53535f
xor eax, edx
or eax, ecx
mov ecx, dword [esp + 0x1f0]
mov edx, 0x474c4143
xor ecx, edx
movzx edx, byte [esp + 0x200]
or edx, ecx
mov ecx, dword [esp + 0x1f8]
mov esi, 0x414d5f33
xor ecx, esi
or edx, ecx
or edx, eax
je 0x52c343
movdqu xmm0, xmmword [esp + 0x1fa]
pcmpeqb xmm0, xmmword [str.NEL_MASTER_HASH]
movdqa xmm1, xmmword [esp + 0x1f0]
pcmpeqb xmm1, xmmword [str.CALG_SCHANNEL_MACHANNEL_MAC_KEY]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x52c34d
movdqu xmm0, xmmword [esp + 0x1f6]
pcmpeqb xmm0, xmmword [0x7559b0]
movdqa xmm1, xmmword [esp + 0x1f0]
pcmpeqb xmm1, xmmword [esp + 0x30]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x52c357
movdqu xmm0, xmmword [esp + 0x1f6]
pcmpeqb xmm0, xmmword [str.CHANNEL_ENC_KEY]
movdqa xmm1, xmmword [esp + 0x1f0]
pcmpeqb xmm1, xmmword [str.CALG_SCHANNEL_ENASH_REPLACE_OWF]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x52c361
mov ecx, dword [esp + 0x1fc]
mov eax, 0x52455453
xor ecx, eax
mov eax, dword [esp + 0x1f4]
mov edx, 0x5443505f
xor eax, edx
or eax, ecx
mov ecx, dword [esp + 0x1f0]
mov edx, 0x474c4143
xor ecx, edx
movzx edx, byte [esp + 0x200]
or edx, ecx
mov ecx, dword [esp + 0x1f8]
mov esi, 0x414d5f31
xor ecx, esi
or edx, ecx
or edx, eax
je 0x52c36b
mov ecx, dword [esp + 0x1fc]
mov eax, 0x52455453
xor ecx, eax
mov eax, dword [esp + 0x1f4]
mov edx, 0x4c53535f
xor eax, edx
or eax, ecx
mov ecx, dword [esp + 0x1f0]
mov edx, 0x474c4143
xor ecx, edx
movzx edx, byte [esp + 0x200]
or edx, ecx
mov ecx, dword [esp + 0x1f8]
mov esi, 0x414d5f32
xor ecx, esi
or edx, ecx
or edx, eax
je 0x52c375
mov ecx, dword [esp + 0x1fc]
mov eax, 0x52455453
xor ecx, eax
mov eax, dword [esp + 0x1f4]
mov edx, 0x534c545f
xor eax, edx
or eax, ecx
mov ecx, dword [esp + 0x1f0]
mov edx, 0x474c4143
xor ecx, edx
movzx edx, byte [esp + 0x200]
or edx, ecx
mov ecx, dword [esp + 0x1f8]
mov esi, 0x414d5f31
xor ecx, esi
or edx, ecx
or edx, eax
je 0x52c37f
push 9
lea eax, [esp + 0x1f4]
push eax
push str.CALG_RC5
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c389
push 0xa
lea eax, [esp + 0x1f4]
push eax
push str.CALG_HMAC
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c393
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_TLS1PRF
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c39d
movdqu xmm0, xmmword [esp + 0x1f6]
pcmpeqb xmm0, xmmword [0x7559e0]
movdqa xmm1, xmmword [esp + 0x1f0]
pcmpeqb xmm1, xmmword [str.CALG_HASH_REPLACCALG_ECDH_EPHEM]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x52c3a7
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_AES_128
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3b1
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_AES_192
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3bb
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_AES_256
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3c5
push 9
lea eax, [esp + 0x1f4]
push eax
push str.CALG_AES
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3cf
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_SHA_256
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3d9
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_SHA_384
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3e3
push 0xd
lea eax, [esp + 0x1f4]
push eax
push str.CALG_SHA_512
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3ed
push 0xa
lea eax, [esp + 0x1f4]
push eax
push str.CALG_ECDH
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c3f7
push 0xb
lea eax, [esp + 0x1f4]
push eax
push str.CALG_ECMQV
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c401
push 0xb
lea eax, [esp + 0x1f4]
push eax
push str.CALG_ECDSA
call fcn.0064f16d
add esp, 0xc
test eax, eax
je 0x52c40b
movdqa xmm0, xmmword [esp + 0x1f0]
pcmpeqb xmm0, xmmword [0x755a00]
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x52c415
push 0x11
push str.USE_STRONG_CRYPTO
push ebx
call fcn.0066b2c0
add esp, 0xc
test eax, eax
je 0x52c248
push 0x15
push str.SCH_USE_STRONG_CRYPTO
push ebx
call fcn.0066b2c0
add esp, 0xc
test eax, eax
jne 0x52cec6
or byte [esp + 0xd2], 0x40
mov edi, dword [esp + 0xc]
jmp 0x52baea
mov esi, 0x8001
mov edi, dword [esp + 0xc]
jmp 0x52bad9
mov esi, 0x8002
jmp 0x52bad9
mov esi, 0x8003
jmp 0x52bad9
mov esi, 0x8005
jmp 0x52bad9
mov esi, 0x2400
jmp 0x52bad9
mov esi, 0x2200
jmp 0x52bad9
mov esi, 0x2000
jmp 0x52bad9
mov esi, 0xa400
jmp 0x52bad9
mov esi, 0x6601
jmp 0x52bad9
mov esi, 0x6609
jmp 0x52bad9
mov esi, 0x6603
jmp 0x52bad9
mov esi, 0x6604
jmp 0x52bad9
mov esi, 0x6602
jmp 0x52bad9
mov esi, 0x6801
jmp 0x52c25e
mov esi, 0x6802
jmp 0x52c25e
mov esi, 0xaa01
jmp 0x52c25e
mov esi, 0xaa02
jmp 0x52c25e
mov esi, 0xaa03
jmp 0x52c25e
mov esi, 0xa003
jmp 0x52c25e
mov esi, 0x660a
jmp 0x52c25e
mov esi, 0x660b
jmp 0x52c25e
mov esi, 0x660c
jmp 0x52c25e
mov esi, 0x8008
jmp 0x52c25e
mov esi, 0x4c01
jmp 0x52c25e
mov esi, 0x4c02
jmp 0x52c25e
mov esi, 0x4c03
jmp 0x52c25e
mov esi, 0x4c07
jmp 0x52c25e
mov esi, 0x4c04
jmp 0x52c25e
mov esi, 0x4c05
jmp 0x52c25e
mov esi, 0x4c06
jmp 0x52c25e
mov esi, 0x660d
jmp 0x52c25e
mov esi, 0x8009
jmp 0x52c25e
mov esi, 0x800a
jmp 0x52c25e
mov esi, 0x800b
jmp 0x52c25e
mov esi, 0x660e
jmp 0x52c25e
mov esi, 0x660f
jmp 0x52c25e
mov esi, 0x6610
jmp 0x52c25e
mov esi, 0x6611
jmp 0x52c25e
mov esi, 0x800c
jmp 0x52c25e
mov esi, 0x800d
jmp 0x52c25e
mov esi, 0x800e
jmp 0x52c25e
mov esi, 0xaa05
jmp 0x52c25e
mov esi, 0xa001
jmp 0x52c25e
mov esi, 0x2203
jmp 0x52c25e
mov esi, 0xae06
jmp 0x52c25e
lea eax, [esp + 0x1f0]
push 0x100
push 0xff
push eax
call fcn.00650600
add esp, 0xc
mov ecx, dword [fcn.005f2b80]
mov esi, dword [esp + 0x24]
mov edi, dword [esi + 4]
call dword [section..00cfg]
push edi
call ecx
add esp, 4
mov dword [esi + 4], 0
mov edi, str.schannel:_initial_InitializeSecurityContext_failed:__s
cmp ebx, 0x80090300
je 0x52c81f
cmp ebx, 0x80090322
jne 0x52c828
mov ebx, 0x3c
mov edi, str.schannel:_SNI_or_certificate_check_failed:__s
mov eax, 0x80090322
jmp 0x52c82f
mov dword [esp + 0x100], 0
mov edi, dword [ebx + 0xb8]
cmp edi, 2
jne 0x52c69b
xor eax, eax
cmp dword [ebx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ebx + eax + 0x1b0], 2
setne bl
jmp 0x52c69d
xor eax, eax
mov ecx, dword [ebp + 0x10]
mov byte [ecx], al
mov eax, dword [esp + 0x28]
mov dword [eax], 0
jmp 0x52a587
push str.schannel:_unable_to_allocate_memory
push esi
call fcn.00515170
add esp, 8
mov eax, dword [esp + 0x9c]
mov edi, 0x1b
test eax, eax
je 0x52a589
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
jmp 0x52a589
push 0x100
lea eax, [esp + 0x1f4]
push eax
push 0x80090322
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:_SNI_or_certificate_check_failed:__s
jmp 0x52c549
push 0x100
lea eax, [esp + 0x1f4]
push eax
push 0x80090325
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:__s
push dword [esp + 0x10]
call fcn.00515170
add esp, 0xc
mov edi, 0x3c
jmp 0x52a589
push eax
call fcn.004fb040
add esp, 4
test eax, eax
je 0x52b539
push 0x5c
push eax
mov ebx, eax
call fcn.00650c3b
add esp, 8
mov dword [esp + 0xc], 0x3a
test eax, eax
mov dword [esp + 0x30], ebx
je 0x52ce0c
mov dword [esp + 0x10], eax
mov esi, eax
sub esi, ebx
sar esi, 1
push esi
push str.CurrentUser
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52c978
push esi
push str.LocalMachine
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52c9cc
push esi
push str.CurrentService
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52ca33
push esi
push str.Services
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52cc0f
push esi
push str.Users
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52cc1c
push esi
push str.CurrentUserGroupPolicy
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52ccd1
push esi
push str.LocalMachineGroupPolicy
push ebx
call fcn.0066be8c
add esp, 0xc
test eax, eax
je 0x52ccdb
push esi
push str.LocalMachineEnterprise
push dword [esp + 0x38]
call fcn.0066be8c
add esp, 0xc
test eax, eax
jne 0x52ce0c
mov dword [esp + 0x20], 0x90000
jmp 0x52cce3
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push esi
jmp 0x52af68
push str.SSL_TLS_connection_timeout
push dword [esp + 0xc]
jmp 0x52aedc
mov esi, dword [esp + 8]
jmp 0x52b198
push eax
push ecx
push str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
jmp 0x52b054
push str.schannel:_TLS_1.3_is_not_yet_supported
jmp 0x52af64
xor ebx, ebx
push 0x108
push 0xff
lea eax, [esp + 0x1f8]
push eax
call fcn.00650600
add esp, 0xc
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 8]
cmp dword [esi], 0
je 0x52b060
mov eax, dword [esi + 0x3c]
cmp eax, dword [esi + 0x38]
jne 0x52c892
cmp byte [esi + 0x46], 0
je 0x52ca78
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x2c]
mov edi, dword [esi + 4]
call dword [section..00cfg]
lea eax, [esp + 0x1f0]
push eax
push 0x23
push edi
call ecx
test eax, eax
je 0x52c9d9
push str.schannel:_failed_to_retrieve_ALPN_result
jmp 0x52af64
push 2
push 0
mov ebx, dword [esp + 0x18]
push ebx
call fcn.00668a00
add esp, 0xc
xor ecx, ecx
mov dl, 1
mov dword [esp + 0x20], edx
test eax, eax
jne 0x52c77e
push ebx
call fcn.00668d15
add esp, 4
mov edx, eax
test eax, eax
mov ecx, dword [esp + 0xc]
cmovs edx, ecx
js 0x52c77e
mov dword [esp + 0x44], edx
mov dword [esp + 0xc], eax
xor eax, eax
push eax
push eax
push ebx
call fcn.00668a00
add esp, 0xc
test eax, eax
jne 0x52c77a
mov ecx, dword [fcn.005f2b30]
mov esi, dword [esp + 0x44]
inc esi
call dword [section..00cfg]
push esi
call ecx
add esp, 4
mov esi, eax
mov dword [esp + 0x20], 0
mov ecx, dword [esp + 0xc]
test esi, esi
je 0x52c85a
push ebx
push 1
push ecx
push esi
mov dword [esp + 0x1c], ecx
call fcn.006687f0
add esp, 0x10
cmp eax, 1
jne 0x52c85a
push ebx
call fcn.00667fc9
add esp, 4
cmp byte [esp + 0x20], 0
jne 0x52c863
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 8]
jmp 0x52b927
cmp byte [esi + 0x4dd], 0
jne 0x52b2e8
or eax, 0x200
jmp 0x52b5ba
mov eax, str.SSL:_public_key_does_not_match_pinned_public_key_
jmp 0x52b599
mov eax, str._memory_blob_
test edx, edx
mov ecx, dword [esp + 8]
jne 0x52c7f5
mov eax, dword [ecx + 0x41c]
push eax
push str.schannel:_certificate_format_compatibility_error__for__s
push ecx
call fcn.00515170
add esp, 0xc
mov edi, 0x3a
test esi, esi
je 0x52a589
push esi
call fcn.005f2b80
add esp, 4
jmp 0x52a589
mov eax, ebx
mov ebx, 0x1b
jmp 0x52c82f
mov eax, ebx
mov ebx, 0x23
lea ecx, [esp + 0x1f0]
push 0x100
push ecx
push eax
call fcn.0051d160
add esp, 0xc
push eax
push edi
push dword [esp + 0x10]
call fcn.00515170
add esp, 0xc
mov edi, ebx
jmp 0x52a589
push ebx
call fcn.00667fc9
add esp, 4
mov eax, dword [esp + 8]
push dword [eax + 0x41c]
push str.schannel:_Failed_to_read_cert_file__s
push eax
call fcn.00515170
add esp, 0xc
mov ecx, dword [fcn.005f2b80]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
jmp 0x52c96e
test al, 8
jne 0x52c8aa
push str.schannel:_failed_to_setup_sequence_detection
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov eax, dword [esi + 0x3c]
test al, 4
mov edi, 0x23
jne 0x52c8c7
push str.schannel:_failed_to_setup_replay_detection
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov eax, dword [esi + 0x3c]
test al, 0x10
jne 0x52c8df
push str.schannel:_failed_to_setup_confidentiality
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov eax, dword [esi + 0x3c]
bt eax, 8
jb 0x52c8f9
push str.schannel:_failed_to_setup_memory_allocation
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov eax, dword [esi + 0x3c]
bt eax, 0xf
jb 0x52a589
push str.schannel:_failed_to_setup_stream_orientation
push dword [esp + 0xc]
jmp 0x52b59b
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x52c95b
push dword [esp + 0x30]
push str.schannel:_Failed_to_import_cert_file__s__password_is_bad
push esi
call fcn.00515170
add esp, 0xc
jmp 0x52c96e
mov edi, eax
jmp 0x52a589
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [esp + 0x34]
push str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
push esi
call fcn.00515170
add esp, 0x10
push 0
push ebx
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x52c96e
push eax
push dword [esp + 0x34]
push str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
push esi
call fcn.00515170
add esp, 0x10
mov edi, 0x3a
jmp 0x52a589
mov dword [esp + 0x20], 0x10000
jmp 0x52cce3
push 0x100
push 0xff
lea eax, [esp + 0x1f8]
push eax
call fcn.00650600
add esp, 0xc
push 0x100
lea eax, [esp + 0x1f4]
push eax
push esi
call fcn.0051d160
add esp, 0xc
push eax
push str.schannel:_next_InitializeSecurityContext_failed:__s
push dword [esp + 0x10]
call fcn.00515170
add esp, 0xc
jmp 0x52b060
mov dword [esp + 0x20], 0x20000
jmp 0x52cce3
cmp dword [esp + 0x1f0], 1
jne 0x52ca40
lea edi, [esp + 0x1f9]
movzx eax, byte [edi - 1]
push edi
push eax
push str.schannel:_ALPN__server_accepted_to_use__.s
push dword [esp + 0x14]
call fcn.00514fc0
add esp, 0x10
cmp byte [edi - 1], 8
jne 0x52ca51
mov eax, 0x70747468
xor eax, dword [esp + 0x1f9]
mov ecx, 0x312e312f
xor ecx, dword [esp + 0x1fd]
or ecx, eax
jne 0x52ca51
mov eax, dword [esp + 0x14]
mov dword [eax + 0x4fc], 2
jmp 0x52ca51
mov dword [esp + 0x20], 0x40000
jmp 0x52cce3
push str.ALPN__server_did_not_agree_to_a_protocol
push dword [esp + 0xc]
call fcn.00514fc0
add esp, 8
xor eax, eax
mov edi, dword [esp + 0x14]
cmp dword [edi + 0x4fc], 3
sete al
lea eax, [eax + eax*2]
dec eax
push eax
push dword [esp + 0xc]
call fcn.00511e10
add esp, 8
mov edi, dword [edi + 0xb8]
cmp edi, 2
jne 0x52ca9a
xor eax, eax
mov ecx, dword [esp + 0x14]
cmp dword [ecx + 0x14c], 0xffffffff
setne al
shl eax, 4
cmp dword [ecx + eax + 0x1b0], 2
jne 0x52caac
mov edi, dword [esp + 8]
cmp byte [edi + 0x447], 0
jne 0x52cabd
jmp 0x52cb70
mov edi, dword [esp + 8]
cmp byte [edi + 0x4b3], 0
je 0x52cb70
mov byte [esp + 0xe0], 0
xor eax, eax
lea ecx, [esp + 0xa0]
mov dword [ecx], eax
push edi
call fcn.0052ee90
add esp, 4
movzx ebx, bl
push dword [ebp + 8]
xor eax, eax
push eax
lea eax, [esp + 0xa8]
push eax
push ebx
push dword [esp + 0x24]
push edi
call fcn.0052eee0
add esp, 0x18
test al, al
jne 0x52cb15
mov eax, dword [esp + 0xa0]
cmp eax, dword [esi]
je 0x52cb63
push eax
mov edi, dword [esp + 0xc]
push edi
call fcn.0052f250
add esp, 8
lea eax, [esp + 0xe0]
push eax
push dword [ebp + 8]
push 0x18
push dword [esi]
push ebx
push dword [esp + 0x28]
push edi
call fcn.0052f290
add esp, 0x1c
test eax, eax
je 0x52cb54
mov ebx, eax
push edi
call fcn.0052eec0
add esp, 4
push str.schannel:_failed_to_store_credential_handle
push edi
call fcn.00515170
add esp, 8
jmp 0x52c853
cmp byte [esp + 0xe0], 0
je 0x52cb63
mov eax, dword [esi]
inc dword [eax + 0x10]
mov edi, dword [esp + 8]
push edi
call fcn.0052eec0
add esp, 4
cmp byte [edi + 0x46c], 0
je 0x52ccbe
mov eax, dword [0x7ba8b8]
mov ecx, dword [eax + 0x2c]
mov esi, dword [esi + 4]
call dword [section..00cfg]
lea eax, [esp + 0x100]
push eax
push 0x53
push esi
call ecx
test eax, eax
jne 0x52cbd2
mov esi, dword [esp + 0x100]
test esi, esi
je 0x52cbd2
xor edi, edi
mov ebx, dword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
xor eax, eax
push eax
push dword [esi + 0x10]
call ebx
test eax, eax
je 0x52cbe8
test byte [eax], 1
je 0x52cbb4
cmp dword [eax + 4], 0
je 0x52cbb4
cmp dword [eax + 8], 1
sbb edi, 0xffffffff
jmp 0x52cbb4
push str.schannel:_failed_to_retrieve_remote_cert_context
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
jmp 0x52c555
push edi
push dword [esp + 0xc]
call fcn.0052f960
add esp, 8
mov dword [esp + 0xc], eax
test eax, eax
je 0x52cc29
push dword [esp + 0x100]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
jmp 0x52ce6c
mov dword [esp + 0x20], 0x50000
jmp 0x52cce3
mov dword [esp + 0x20], 0x60000
jmp 0x52cce3
mov dword [esp + 0x24], 0
mov eax, dword [esp + 0x100]
mov dword [esp + 0x18], eax
xor esi, esi
push esi
mov eax, dword [esp + 0x1c]
push dword [eax + 0x10]
call ebx
test eax, eax
je 0x52cca2
mov esi, eax
mov dword [esp + 0x40], 0
test byte [eax], 1
je 0x52cc3e
mov eax, dword [esi + 4]
test eax, eax
je 0x52cc3e
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x52cc3e
add ecx, eax
mov edx, dword [esp + 0x24]
not edx
add edx, edi
push ecx
push eax
push edx
push dword [esp + 0x14]
call fcn.005309c0
add esp, 0x10
inc dword [esp + 0x24]
mov dword [esp + 0x40], 0
mov dword [esp + 0xc], eax
test eax, eax
je 0x52cc3e
push esi
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
jmp 0x52cbfd
push dword [esp + 0x100]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
cmp dword [esp + 0x40], 0
je 0x52ccbe
xor edi, edi
dec edi
jmp 0x52a589
mov eax, dword [esp + 0x28]
mov dword [eax], 5
mov ebx, dword [esp + 0x14]
jmp 0x52b304
mov dword [esp + 0x20], 0x70000
jmp 0x52cce3
mov dword [esp + 0x20], 0x80000
mov eax, dword [esp + 0x10]
add eax, 2
push 0x5c
mov ebx, eax
push eax
call fcn.00650c3b
add esp, 8
test eax, eax
je 0x52ce0c
mov esi, eax
add eax, 2
mov dword [esp + 0x10], eax
push eax
call fcn.0066b526
add esp, 4
cmp eax, 0x28
jne 0x52ce0c
mov word [esi], 0
mov ecx, dword [0x7abcf8]
call dword [section..00cfg]
push ebx
call ecx
add esp, 4
mov word [esi], 0x5c
test eax, eax
je 0x52ce04
mov ebx, dword [esp + 0x20]
mov ecx, ebx
or ecx, 0x4000
xor edx, edx
mov esi, eax
push eax
push ecx
push edx
push edx
push 0xa
call dword [sym.imp.CRYPT32.dll_CertOpenStore]
mov dword [esp + 0xc], eax
test eax, eax
je 0x52ce75
mov ecx, dword [fcn.005f2b80]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
lea eax, [esp + 0x1f0]
lea ebx, [esp + 0x7c]
mov dword [ebx + 4], eax
mov dword [ebx], 0x14
xor ecx, ecx
push ecx
push ecx
push ebx
push eax
push 4
push 0x28
push dword [esp + 0x28]
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryW]
test eax, eax
je 0x52ceaf
xor esi, esi
push esi
push ebx
push 0x10000
push esi
push 0x10001
mov ebx, dword [esp + 0x20]
push ebx
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [esp + 0x9c], eax
push dword [esp + 0x30]
call fcn.005f2b80
add esp, 4
cmp dword [esp + 0x9c], esi
je 0x52c950
mov dword [esp + 0xa4], 1
lea eax, [esp + 0x9c]
mov dword [esp + 0xa8], eax
mov esi, dword [esp + 8]
jmp 0x52ba49
mov dword [esp + 0xc], 0x1b
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x41c]
cmp byte [eax], 0
je 0x52ce48
push 0x746179
push eax
call fcn.004fb210
add esp, 8
test eax, eax
je 0x52ce48
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
xor ebx, ebx
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x30]
jmp 0x52b8b6
mov eax, dword [esp + 8]
push dword [eax + 0x41c]
push str.schannel:_Failed_to_get_certificate_location_or_file_for__s
push eax
call fcn.00515170
add esp, 0xc
push dword [esp + 0x30]
call fcn.005f2b80
add esp, 4
mov edi, dword [esp + 0xc]
jmp 0x52a589
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push ebx
push str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
push dword [esp + 0x18]
call fcn.00515170
add esp, 0x14
mov ecx, dword [fcn.005f2b80]
call dword [section..00cfg]
push esi
call ecx
add esp, 4
push dword [esp + 0x30]
call fcn.005f2b80
jmp 0x52c88a
push dword [esp + 0x30]
call fcn.005f2b80
add esp, 4
push 0
push dword [esp + 0x10]
jmp 0x52c953
push str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
push dword [esp + 0xc]
call fcn.00515170
add esp, 8
mov edi, 0x3b
jmp 0x52a589