Function at 0x47a250
Capabilities:
Convert ip address from string
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x260
mov eax, dword [0x4ff048]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, 0x1c0
push ebx
push esi
mov esi, dword [ebp + 0xc]
lea ebx, [eax + 0x19]
mov dword [ebp - 0x1e0], eax
shl ebx, 4
add ebx, esi
mov dword [ebp - 0x1e4], 0xffffffff
cmp dword [esi + 0xb8], 2
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1dc], 0
mov dword [ebp - 0x1b0], ecx
jne 0x47a2cc
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x47a2cc
mov eax, dword [esi + 0xac]
jmp 0x47a2cf
mov eax, dword [esi + 0x64]
push 1
push 2
push 1
push 5
mov dword [ebp - 0x1d8], eax
call fcn.00490dd0
add esp, 0x10
test al, al
je 0x47a2f7
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.00467660
add esp, 8
cmp byte [esi + 0x25c], 0
je 0x47a333
push str.wine_get_version
push str.ntdll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
jne 0x47a333
push 3
push 2
push 3
push 6
call fcn.00490dd0
add esp, 0x10
test al, al
je 0x47a333
mov cl, 1
jmp 0x47a335
xor cl, cl
mov eax, dword [ebx + 8]
mov byte [eax + 0x46], cl
cmp dword [esi + 0xb8], 2
jne 0x47a366
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
mov ecx, 0x1c0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x47a366
mov eax, dword [esi + 0x214]
jmp 0x47a36c
mov eax, dword [esi + 0x1e0]
test eax, eax
je 0x47a3b1
push 3
push 2
push 1
push 6
call fcn.00490dd0
add esp, 0x10
test al, al
je 0x47a38d
mov eax, dword [ebx + 8]
mov byte [eax + 0x47], 1
jmp 0x47a3b8
push str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
push edi
call fcn.00467540
add esp, 8
mov eax, 0x4d
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 8]
mov byte [eax + 0x47], 0
mov eax, dword [ebx + 8]
mov dword [eax], 0
cmp dword [esi + 0xb8], 2
jne 0x47a3ec
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
mov ecx, 0x1c0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x47a3ec
mov al, byte [edi + 0x48b]
jmp 0x47a3f2
mov al, byte [edi + 0x423]
test al, al
je 0x47a462
push edi
call fcn.00461c70
add esp, 4
cmp dword [esi + 0xb8], 2
jne 0x47a426
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
mov ecx, 0x1c0
cmovne eax, ecx
cmp dword [eax + esi], 2
je 0x47a426
mov al, 1
jmp 0x47a428
xor al, al
push dword [ebp - 0x1e0]
lea ecx, [ebp - 0x1dc]
push 0
push ecx
push eax
push esi
push edi
call fcn.00461840
add esp, 0x18
test al, al
jne 0x47a459
mov ecx, dword [ebx + 8]
mov eax, dword [ebp - 0x1dc]
mov dword [ecx], eax
mov eax, dword [ebx + 8]
mov eax, dword [eax]
inc dword [eax + 0x10]
push edi
call fcn.00461ca0
add esp, 4
mov eax, dword [ebx + 8]
cmp dword [eax], 0
jne 0x47ad78
push 0x38
lea eax, [ebp - 0x25c]
push 0
push eax
call fcn.0049edb0
add esp, 0xc
mov dword [ebp - 0x25c], 4
cmp byte [esi + 0x204], 0
je 0x47a52a
mov eax, dword [ebx + 8]
mov edx, 8
mov ecx, 0x20
cmp byte [eax + 0x47], 0
cmovne ecx, edx
mov edx, dword [esi + 0xb8]
cmp edx, 2
jne 0x47a4d7
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
cmovne eax, dword [ebp - 0x1b0]
cmp dword [eax + esi], edx
je 0x47a4d7
mov al, byte [edi + 0x4bb]
jmp 0x47a4dd
mov al, byte [edi + 0x453]
test al, al
je 0x47a4e9
or ecx, 0x1800
jmp 0x47a52f
cmp edx, 2
jne 0x47a510
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1b0
mov edx, 0x1c0
cmovne eax, edx
cmp dword [eax + esi], 2
je 0x47a510
mov al, byte [edi + 0x4bd]
jmp 0x47a516
mov al, byte [edi + 0x455]
test al, al
je 0x47a522
or ecx, 0x1a00
jmp 0x47a52f
or ecx, 0x200
jmp 0x47a52f
mov ecx, 0x1808
cmp byte [esi + 0x205], 0
mov dword [ebp - 0x22c], ecx
jne 0x47a547
or ecx, 4
mov dword [ebp - 0x22c], ecx
mov eax, dword [esi + 0x1d4]
cmp eax, 7
ja case.default.0x47a556
jmp dword [eax*4 + 0x47b0fc]
push esi
lea eax, [ebp - 0x25c]
push edi
push eax
call fcn.0047c5e0
add esp, 0xc
test eax, eax
je 0x47a599
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x23c], 0x20
jmp 0x47a599
mov dword [ebp - 0x23c], 8
mov edx, dword [esi + 0xb8]
mov ecx, 0x1b0
cmp edx, 2
jne 0x47a5c6
cmp dword [esi + 0x14c], 0xffffffff
mov eax, ecx
cmovne eax, dword [ebp - 0x1b0]
cmp dword [eax + esi], edx
je 0x47a5c6
mov eax, dword [esi + 0x224]
jmp 0x47a5cc
mov eax, dword [esi + 0x1f0]
test eax, eax
je 0x47a636
cmp edx, 2
jne 0x47a5f1
cmp dword [esi + 0x14c], 0xffffffff
mov eax, 0x1c0
cmovne ecx, eax
cmp dword [ecx + esi], edx
je 0x47a5f1
mov eax, dword [esi + 0x224]
jmp 0x47a5f7
mov eax, dword [esi + 0x1f0]
push eax
lea eax, [ebp - 0x25c]
push eax
call fcn.0047c560
add esp, 8
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x47a636
push str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
push edi
call fcn.00467540
mov eax, dword [ebp - 0x1b0]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x400]
test eax, eax
jne 0x47a64c
cmp dword [edi + 0x418], eax
je 0x47a92d
mov edx, dword [edi + 0x418]
xor ecx, ecx
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b8], 0
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1c8], ecx
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x1d0], ecx
mov dword [ebp - 0x1d4], edx
mov dword [ebp - 0x1c4], ecx
test edx, edx
je 0x47a6b4
mov eax, dword [edx]
mov dword [ebp - 0x1bc], eax
mov eax, dword [edx + 4]
mov dword [ebp - 0x1d0], eax
jmp 0x47a757
push eax
call fcn.004cd3fa
add esp, 4
mov dword [ebp - 0x1c4], eax
test eax, eax
je 0x47a96b
lea ecx, [ebp - 0x1b0]
push ecx
lea ecx, [ebp - 0x1b8]
push ecx
lea ecx, [ebp - 0x1b4]
push ecx
push eax
call fcn.00479c70
add esp, 0x10
mov dword [ebp - 0x200], eax
test eax, eax
je 0x47a74f
mov ecx, dword [edi + 0x400]
cmp byte [ecx], 0
je 0x47a718
push 0x4d5788
push ecx
call fcn.00477840
mov ecx, eax
add esp, 8
mov dword [ebp - 0x1c8], ecx
test ecx, ecx
jne 0x47a75f
push dword [edi + 0x400]
push str.schannel:_Failed_to_get_certificate_location_or_file_for__s
push edi
call fcn.00467540
mov ecx, dword [ebp - 0x1c4]
push ecx
call fcn.004a315b
mov eax, dword [ebp - 0x200]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x1d4]
xor ecx, ecx
test edx, edx
je 0x47a7e2
mov eax, dword [edi + 0x43c]
test eax, eax
je 0x47a7cc
push 0x4e21a0
push eax
call fcn.0046ade0
add esp, 8
test eax, eax
jne 0x47a7c6
cmp dword [ebp - 0x1d4], eax
mov eax, str._memory_blob_
jne 0x47a78e
mov eax, dword [edi + 0x400]
push eax
push str.schannel:_certificate_format_compatibility_error__for__s
push edi
call fcn.00467540
mov eax, dword [ebp - 0x1c4]
add esp, 0xc
test eax, eax
je 0x47a7b0
push eax
call fcn.004a315b
add esp, 4
pop edi
pop esi
mov eax, 0x3a
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x1d4]
test ecx, ecx
jne 0x47a981
test edx, edx
jne 0x47a981
push dword [ebp - 0x1b8]
mov eax, dword [ebp - 0x1b4]
or eax, 0x4000
push eax
push 0
push 0
push 9
call dword [sym.imp.CRYPT32.dll_CertOpenStore]
mov dword [ebp - 0x1c0], eax
test eax, eax
jne 0x47a860
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [ebp - 0x1b8]
push eax
push ebx
push dword [ebp - 0x1b4]
push str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
push edi
call fcn.00467540
push ebx
call dword [0x4ff15c]
mov eax, dword [ebp - 0x1c4]
add esp, 0x18
test eax, eax
je 0x47a7b0
push eax
call fcn.004a315b
add esp, 4
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x1b8]
call dword [0x4ff15c]
add esp, 4
mov dword [ebp - 0x218], 0x14
lea eax, [ebp - 0x18]
mov dword [ebp - 0x214], eax
lea eax, [ebp - 0x218]
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_CryptStringToBinaryA]
test eax, eax
jne 0x47a8c1
mov eax, dword [ebp - 0x1c4]
test eax, eax
je 0x47ac7e
push eax
call fcn.004a315b
add esp, 4
jmp 0x47ac7e
push 0
lea eax, [ebp - 0x218]
push eax
push 0x10000
push 0
push 0x10001
push dword [ebp - 0x1c0]
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov ecx, dword [ebp - 0x1c4]
mov dword [ebp - 0x1cc], eax
test ecx, ecx
je 0x47a901
push ecx
call fcn.004a315b
mov eax, dword [ebp - 0x1cc]
add esp, 4
test eax, eax
je 0x47ac7e
push 0
push dword [ebp - 0x1c0]
lea eax, [ebp - 0x1cc]
mov dword [ebp - 0x258], 1
mov dword [ebp - 0x254], eax
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
push 0x18
push 1
call dword [0x4ff168]
mov ecx, dword [ebx + 8]
add esp, 8
mov dword [ecx], eax
mov eax, dword [ebx + 8]
mov eax, dword [eax]
test eax, eax
jne 0x47aca2
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.00467540
mov eax, dword [ebp - 0x1cc]
add esp, 8
test eax, eax
je 0x47a96b
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.004250dc
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x1b0], 0
test edx, edx
je 0x47a99b
mov dword [ebp - 0x1b8], str._memory_blob_
jmp 0x47a9a7
mov eax, dword [edi + 0x400]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x1c4]
test eax, eax
je 0x47a9ba
push eax
call fcn.004a315b
add esp, 4
mov eax, dword [ebp - 0x1c8]
test eax, eax
je 0x47aaf6
push 2
push 0
push eax
mov dword [ebp - 0x1b4], 0
call fcn.004b208f
add esp, 0xc
test eax, eax
sete al
mov byte [ebp - 0x1a9], al
test al, al
je 0x47aa9a
push dword [ebp - 0x1c8]
call fcn.004b2601
add esp, 4
mov dword [ebp - 0x1b4], eax
test eax, eax
jns 0x47aa94
mov byte [ebp - 0x1a9], 0
mov eax, dword [ebp - 0x1bc]
mov ecx, dword [ebp - 0x1d0]
test eax, eax
je 0x47aa3c
push dword [ebp - 0x1c8]
push 1
push ecx
push eax
call fcn.004b1d25
add esp, 0x10
cmp eax, 1
je 0x47aa43
mov byte [ebp - 0x1a9], 0
push dword [ebp - 0x1c8]
call fcn.004b1ad9
add esp, 4
cmp byte [ebp - 0x1a9], 0
jne 0x47aaf6
push dword [edi + 0x400]
push str.schannel:_Failed_to_read_cert_file__s
push edi
call fcn.00467540
push dword [ebp - 0x1bc]
call dword [0x4ff15c]
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
mov al, byte [ebp - 0x1a9]
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x1d0], ecx
test al, al
je 0x47aaeb
push 0
push 0
push dword [ebp - 0x1c8]
call fcn.004b208f
add esp, 0xc
test eax, eax
sete al
mov byte [ebp - 0x1a9], al
test al, al
je 0x47aa15
mov eax, dword [ebp - 0x1b4]
inc eax
push eax
call dword [0x4ff158]
add esp, 4
mov dword [ebp - 0x1bc], eax
jmp 0x47aa1b
mov eax, dword [ebp - 0x1bc]
jmp 0x47aa21
mov eax, dword [ebp - 0x1bc]
mov ecx, dword [edi + 0x44c]
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x204], eax
test ecx, ecx
je 0x47ab31
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47ab20
sub ecx, edx
mov dword [ebp - 0x1b0], ecx
jmp 0x47ab33
xor ecx, ecx
lea eax, [ecx*2 + 2]
push eax
call dword [0x4ff158]
mov edx, eax
add esp, 4
mov dword [ebp - 0x1b4], edx
test edx, edx
je 0x47abbf
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x47ab87
lea ecx, [eax + 1]
push ecx
push edx
push eax
push dword [edi + 0x44c]
push 8
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edx, dword [ebp - 0x1b4]
mov ecx, eax
test ecx, ecx
js 0x47ab95
mov eax, dword [ebp - 0x1b0]
jmp 0x47ab89
xor ecx, ecx
cmp ecx, eax
jg 0x47ab95
xor eax, eax
mov word [edx + ecx*2], ax
jmp 0x47ab9a
xor eax, eax
mov word [edx], ax
push 0
push edx
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.CRYPT32.dll_PFXImportCertStore]
push dword [ebp - 0x1b4]
mov dword [ebp - 0x1c0], eax
call dword [0x4ff15c]
add esp, 4
cmp dword [ebp - 0x1d4], 0
jne 0x47abd7
push dword [ebp - 0x1bc]
call dword [0x4ff15c]
add esp, 4
mov eax, dword [ebp - 0x1c0]
test eax, eax
jne 0x47ac41
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x47ac16
push dword [ebp - 0x1b8]
push str.schannel:_Failed_to_import_cert_file__s__password_is_bad
push edi
call fcn.00467540
add esp, 0xc
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
push eax
push dword [ebp - 0x1b8]
push str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
push edi
call fcn.00467540
add esp, 0x10
mov eax, 0x3a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
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 0x47a909
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [ebp - 0x1b8]
push str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
push edi
call fcn.00467540
add esp, 0x10
push 0
push dword [ebp - 0x1c0]
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.004250dc
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x10], 1
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
lea eax, [ecx + 8]
push eax
push ecx
push 0
push 0
lea eax, [ebp - 0x25c]
push eax
mov eax, dword [0x502b30]
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 0x47acf0
push ecx
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x47ad78
push 0x100
lea ecx, [ebp - 0x198]
push ecx
push eax
call fcn.00451000
push eax
push str.schannel:_AcquireCredentialsHandle_failed:__s
push edi
call fcn.00467540
mov eax, dword [ebx + 8]
push dword [eax]
call dword [0x4ff15c]
mov eax, dword [ebx + 8]
add esp, 0x1c
mov dword [eax], 0
xor eax, eax
cmp dword [ebp - 0x1b0], 0x80090300
pop edi
setne al
pop esi
pop ebx
lea eax, [eax*8 + 0x1b]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push edi
call fcn.00467540
add esp, 8
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x260]
push eax
push dword [ebp - 0x1d8]
push 2
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jne 0x47adaa
lea eax, [ebp - 0x1a8]
push eax
push dword [ebp - 0x1d8]
push 0x17
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
je 0x47adb8
push str.schannel:_using_IP_address__SNI_is_not_supported_by_OS._n
push edi
call fcn.00467660
add esp, 8
mov eax, dword [ebx + 8]
cmp byte [eax + 0x46], 0
je 0x47ae37
mov eax, dword [str.http_1.1]
push str.http_1.1
mov dword [ebp - 0x8d], eax
mov eax, dword [0x4e23dc]
push str.schannel:_ALPN__offering__s_n
push edi
mov dword [ebp - 0x94], 2
mov byte [ebp - 0x8e], 8
mov dword [ebp - 0x89], eax
call fcn.00467660
push 9
call fcn.00469b40
mov word [ebp - 0x90], ax
add esp, 0x10
movzx eax, ax
add eax, 6
mov dword [ebp - 0x1f0], 0x13
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x98]
mov dword [ebp - 0x1ec], 0x12
mov dword [ebp - 0x1e8], eax
jmp 0x47ae55
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0
lea eax, [ebp - 0x1f0]
mov dword [ebp - 0x20c], 1
mov dword [ebp - 0x208], eax
lea eax, [ebp - 0x1fc]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebx + 8]
push 0x10
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 1
push 1
mov dword [eax + 0x38], 0x811c
call dword [0x4ff168]
mov ecx, dword [ebx + 8]
add esp, 8
mov dword [ecx + 4], eax
mov eax, dword [ebx + 8]
cmp dword [eax + 4], 0
jne 0x47aefd
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.00467540
add esp, 8
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x1d8]
call fcn.004cd3fa
add esp, 4
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x47a96b
mov edx, dword [ebx + 8]
mov ecx, dword [edx + 4]
lea eax, [ecx + 8]
push eax
lea eax, [edx + 0x3c]
push eax
lea eax, [ebp - 0x224]
push eax
push ecx
xor ecx, ecx
lea eax, [ebp - 0x210]
cmp byte [edx + 0x46], cl
push 0
cmove eax, ecx
push eax
mov eax, dword [0x502b30]
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 - 0x1b4], eax
call fcn.004a315b
add esp, 4
cmp dword [ebp - 0x1b4], 0x90312
je 0x47b04c
mov ecx, dword [ebx + 8]
push dword [ecx + 4]
call dword [0x4ff15c]
mov eax, dword [ebx + 8]
add esp, 4
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x1b4]
push 0x100
cmp eax, 0x80090300
je 0x47b016
cmp eax, 0x80090322
je 0x47afe0
lea ecx, [ebp - 0x198]
push ecx
push eax
call fcn.00451000
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.00467540
add esp, 0x18
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x198]
push eax
push 0x80090322
call fcn.00451000
push eax
push str.schannel:_SNI_or_certificate_check_failed:__s
push edi
call fcn.00467540
add esp, 0x18
mov eax, 0x3c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x198]
push eax
push 0x80090300
call fcn.00451000
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.00467540
add esp, 0x18
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x1e4]
push eax
push dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x1e0]
push dword [ebp - 0x1f4]
push dword [esi + eax*4 + 0x148]
push edi
call fcn.00467a70
mov ecx, dword [0x502b30]
add esp, 0x14
mov esi, eax
push dword [ebp - 0x1f4]
mov ecx, dword [ecx + 0x40]
call ecx
mov eax, dword [ebp - 0x1e4]
mov ecx, dword [ebp - 0x1fc]
test esi, esi
jne 0x47b0d5
cmp ecx, eax
jne 0x47b0d5
mov eax, dword [ebx + 8]
pop edi
pop esi
mov dword [eax + 0x40], 0
mov eax, dword [ebx + 8]
mov byte [eax + 0x44], 0
mov eax, dword [ebx + 8]
mov byte [eax + 0x45], 0
mov eax, dword [ebx + 8]
mov byte [eax + 0x34], 0
xor eax, eax
mov dword [ebx + 4], 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004250dc
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.00467540
mov ecx, dword [ebp - 4]
add esp, 0x10
xor ecx, ebp
mov eax, 0x23
pop edi
pop esi
pop ebx
call fcn.004250dc
mov esp, ebp
pop ebp
ret