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

Disassembly:
sub esp, 0x248
mov eax, dword [0x7a9080]
xor eax, esp
mov dword [esp + 0x244], eax
mov eax, dword [esp + 0x250]
mov ecx, 0x498
push ebx
mov ebx, dword [esp + 0x250]
push ebp
mov ebp, eax
mov dword [esp + 0x20], eax
shl ebp, 4
push esi
add ebp, ebx
mov dword [esp + 0x28], 0xffffffff
cmp dword [ebx + 0x358], 2
mov esi, 0x488
push edi
mov edi, dword [ebx]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x10], ecx
jne 0x45dd00
cmp dword [ebx + 0x424], 0xffffffff
mov eax, esi
cmovne eax, ecx
cmp dword [eax + ebx], 2
je 0x45dd00
mov eax, dword [ebx + 0x34c]
jmp 0x45dd06
mov eax, dword [ebx + 0x304]
push 1
push 2
push 1
push 5
mov dword [esp + 0x34], eax
call fcn.0044cc00
add esp, 0x10
test al, al
je 0x45dd2c
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.0044a120
add esp, 8
cmp byte [ebx + 0x525], 0
je 0x45dd68
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 0x45dd68
push 3
push 2
push 3
push 6
call fcn.0044cc00
add esp, 0x10
test al, al
je 0x45dd68
mov cl, 1
jmp 0x45dd6a
xor cl, cl
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x46], cl
cmp dword [ebx + 0x358], 2
jne 0x45dd9b
cmp dword [ebx + 0x424], 0xffffffff
mov eax, esi
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebx], 2
je 0x45dd9b
mov eax, dword [ebx + 0x4e4]
jmp 0x45dda1
mov eax, dword [ebx + 0x4b8]
test eax, eax
je 0x45dddd
push 3
push 2
push 1
push 6
call fcn.0044cc00
add esp, 0x10
test al, al
je 0x45ddc5
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x47], 1
jmp 0x45dde7
push str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
push edi
call fcn.0044a040
add esp, 8
mov eax, 0x4d
jmp 0x45e940
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x47], 0
mov eax, dword [ebp + 0x470]
mov dword [eax], 0
cmp dword [ebx + 0x358], 2
jne 0x45de1b
cmp dword [ebx + 0x424], 0xffffffff
mov eax, esi
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebx], 2
je 0x45de1b
mov al, byte [edi + 0x8cf]
jmp 0x45de21
mov al, byte [edi + 0x873]
test al, al
je 0x45de63
push ebx
call fcn.00444ea0
push dword [esp + 0x2c]
lea eax, [esp + 0x24]
push 0
push eax
push ebx
call fcn.004449a0
add esp, 0x14
test al, al
jne 0x45de5a
mov ecx, dword [ebp + 0x470]
mov eax, dword [esp + 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp + 0x470]
mov eax, dword [eax]
inc dword [eax + 0x10]
push ebx
call fcn.00444ed0
add esp, 4
mov esi, dword [ebp + 0x470]
cmp dword [esi], 0
jne 0x45e651
push 0x38
lea eax, [esp + 0x6c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [esp + 0x68], 4
cmp byte [ebx + 0x4d4], 0
je 0x45ded3
cmp byte [esi + 0x47], 0
mov eax, 0x20
mov ecx, 8
cmovne eax, ecx
mov dword [esp + 0x98], eax
cmp byte [edi + 0x89f], 0
je 0x45debc
or eax, 0x1800
jmp 0x45ded8
cmp byte [edi + 0x8a1], 0
je 0x45decc
or eax, 0x1a00
jmp 0x45ded8
or eax, 0x200
jmp 0x45ded8
mov eax, 0x1808
cmp byte [ebx + 0x4d5], 0
mov dword [esp + 0x98], eax
jne 0x45def2
or eax, 4
mov dword [esp + 0x98], eax
mov edx, dword [ebx + 0x4ac]
cmp edx, 7
ja case.default.0x45df01
jmp dword [edx*4 + 0x45e95c]
mov ecx, dword [ebx + 0x358]
mov eax, dword [ebx]
mov dword [esp + 0x14], eax
cmp ecx, 2
jne 0x45df63
cmp dword [ebx + 0x424], 0xffffffff
mov esi, 0x488
mov eax, esi
cmovne eax, dword [esp + 0x10]
cmp dword [eax + ebx], ecx
je 0x45df3f
mov edx, dword [ebx + 0x4d8]
mov esi, dword [ebx + 0x4dc]
jmp 0x45df69
cmp ecx, 2
jne 0x45df63
cmp dword [ebx + 0x424], 0xffffffff
mov eax, esi
mov ecx, 0x498
cmovne eax, ecx
cmp dword [eax + ebx], 2
je 0x45df63
mov esi, dword [ebx + 0x4dc]
jmp 0x45df69
mov esi, dword [ebx + 0x4b0]
test esi, esi
je 0x45df75
cmp esi, 0x10000
jne 0x45df7a
mov esi, 0x60000
sar esi, 0x10
cmp edx, esi
jg 0x45dff1
mov ecx, dword [esp + 0x88]
add edx, 0xfffffffc
nop dword [eax + eax]
cmp edx, 3
ja case.default.0x45df95
jmp dword [edx*4 + 0x45e97c]
or ecx, 0x80
jmp 0x45dfb2
or ecx, 0x200
jmp 0x45dfb2
or ecx, 0x800
mov dword [esp + 0x88], ecx
inc edx
lea eax, [edx + 4]
cmp eax, esi
jle 0x45df90
jmp 0x45dff1
push str.schannel:_TLS_1.3_is_not_yet_supported
push dword [esp + 0x18]
call fcn.0044a040
add esp, 8
jmp case.0x45e637.2146893055
mov dword [esp + 0x88], 0x20
jmp 0x45dff1
mov dword [esp + 0x88], 8
mov ecx, dword [ebx + 0x358]
mov edx, 0x488
lea esi, [edx + 0x10]
cmp ecx, 2
jne 0x45e01d
cmp dword [ebx + 0x424], 0xffffffff
mov eax, edx
cmovne eax, esi
cmp dword [eax + ebx], ecx
je 0x45e01d
mov eax, dword [ebx + 0x4f4]
jmp 0x45e023
mov eax, dword [ebx + 0x4c8]
test eax, eax
je 0x45e0b0
cmp ecx, 2
jne 0x45e047
cmp dword [ebx + 0x424], 0xffffffff
cmovne edx, esi
cmp dword [edx + ebx], ecx
je 0x45e047
mov esi, dword [ebx + 0x4f4]
jmp 0x45e04d
mov esi, dword [ebx + 0x4c8]
xor ebp, ebp
test esi, esi
je 0x45e09a
cmp byte [esi], 0
je 0x45e09a
cmp ebp, 0x2d
jge 0x45e09a
push 0
push 0
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtol]
add esp, 0xc
test eax, eax
jne 0x45e07c
push esi
call fcn.0045cc50
add esp, 4
test eax, eax
je 0x45e0f7
push 0x3a
mov dword [ebp*4 + 0x7ac1c0], eax
inc ebp
push esi
call sub.VCRUNTIME140.dll_strchr
mov esi, eax
add esp, 8
test esi, esi
je 0x45e09a
add esi, 1
jne 0x45e053
mov dword [esp + 0x80], ebp
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x84], 0x7ac1c0
mov esi, dword [edi + 0x888]
test esi, esi
je 0x45e508
push 0x5c
push esi
call sub.VCRUNTIME140.dll_strchr
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
je 0x45e2f4
mov ebp, eax
sub ebp, esi
push ebp
push str.CurrentUser
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e10f
mov ebp, 0x10000
jmp 0x45e1d4
push str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
push edi
call fcn.0044a040
add esp, 8
mov eax, 0x3b
jmp 0x45e940
push ebp
push str.LocalMachine
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e12d
mov ebp, 0x20000
jmp 0x45e1d4
push ebp
push str.CurrentService
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e14b
mov ebp, 0x40000
jmp 0x45e1d4
push ebp
push str.Services
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e166
mov ebp, 0x50000
jmp 0x45e1d4
push ebp
push str.Users
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e181
mov ebp, 0x60000
jmp 0x45e1d4
push ebp
push str.CurrentUserGroupPolicy
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e19c
mov ebp, 0x70000
jmp 0x45e1d4
push ebp
push str.LocalMachineGroupPolicy
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e1b7
mov ebp, 0x80000
jmp 0x45e1d4
push ebp
push str.LocalMachineEnterprise
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x45e2f4
mov ebp, 0x90000
mov eax, dword [esp + 0x10]
inc eax
push 0x5c
push eax
call sub.VCRUNTIME140.dll_strchr
mov esi, eax
add esp, 8
test esi, esi
je 0x45e2f4
mov eax, dword [esp + 0x10]
inc eax
mov byte [esi], 0
push eax
call dword [0x7a90e0]
mov edx, eax
mov byte [esi], 0x5c
add esp, 4
mov dword [esp + 0x10], edx
test edx, edx
jne 0x45e215
lea esi, [eax + 0x1b]
jmp 0x45e2f9
lea eax, [esi + 1]
mov ecx, eax
mov dword [esp + 0x14], eax
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45e221
sub ecx, esi
cmp ecx, 0x28
jne 0x45e2f4
push edx
mov eax, ebp
or eax, 0x4000
push eax
push 0
push 0
push 9
call dword [sym.imp.CRYPT32.dll_CertOpenStore]
mov esi, eax
test esi, esi
jne 0x45e278
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, dword [esp + 0x10]
push eax
push ebx
push ebp
push str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
push edi
call fcn.0044a040
push ebx
call dword [0x7a90d8]
add esp, 0x18
lea eax, [esi + 0x3a]
jmp 0x45e940
push dword [esp + 0x10]
call dword [0x7a90d8]
add esp, 4
mov dword [esp + 0x58], 0x14
lea eax, [esp + 0xc0]
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x58]
push 0
push 0
push eax
lea eax, [esp + 0xcc]
push eax
push 4
push 0x28
push dword [esp + 0x2c]
call dword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
je 0x45e2e1
push 0
lea eax, [esp + 0x5c]
push eax
push 0x10000
push 0
push 0x10001
push esi
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [esp + 0x18], eax
test eax, eax
jne 0x45e4eb
push 0
push esi
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
mov eax, 0x3a
jmp 0x45e940
mov esi, 0x3a
mov eax, dword [edi + 0x888]
cmp byte [eax], 0
je 0x45e583
push 0x48acb8
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x45e583
push 2
xor esi, esi
mov dword [esp + 0x14], 0
push esi
push ebp
mov dword [esp + 0x20], 0
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
xor ecx, ecx
add esp, 0xc
test eax, eax
sete cl
mov dword [esp + 0x54], ecx
test eax, eax
jne 0x45e369
push ebp
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
js 0x45e554
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x45e554
push 0
push 0
push ebp
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
add esp, 0xc
test eax, eax
jne 0x45e554
mov eax, dword [esp + 0x14]
inc eax
push eax
call dword [0x7a90d4]
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
je 0x45e554
push ebp
push 1
push dword [esp + 0x1c]
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add esp, 0x10
cmp eax, 1
jne 0x45e554
push ebp
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov eax, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x60], eax
mov eax, dword [edi + 0x898]
test eax, eax
je 0x45e3ee
mov esi, eax
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x45e3e5
sub esi, ecx
lea eax, [esi*2 + 2]
push eax
call dword [0x7a90d4]
add esp, 4
mov ebp, eax
test esi, esi
je 0x45e478
lea ecx, [esi + 1]
push ecx
push ebp
push esi
push dword [edi + 0x898]
push 8
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jns 0x45e47a
xor eax, eax
mov word [ebp], ax
push 0
push ebp
lea eax, [esp + 0x68]
push eax
call dword [sym.imp.CRYPT32.dll_PFXImportCertStore]
push ebp
mov esi, eax
call dword [0x7a90d8]
push dword [esp + 0x14]
call dword [0x7a90d8]
add esp, 8
test esi, esi
jne 0x45e4a1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [edi + 0x888]
cmp eax, 0x56
jne 0x45e487
push ecx
push str.schannel:_Failed_to_import_cert_file__s__password_is_bad
push edi
call fcn.0044a040
add esp, 0xc
lea eax, [esi + 0x3a]
jmp 0x45e940
xor eax, eax
cmp eax, esi
jg 0x45e422
xor ecx, ecx
mov word [ebp + eax*2], cx
jmp 0x45e428
push eax
push ecx
push str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
push edi
call fcn.0044a040
add esp, 0x10
mov eax, 0x3a
jmp 0x45e940
push 0
push 0
push 0
push 0
push 0x10001
push esi
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov dword [esp + 0x18], eax
test eax, eax
jne 0x45e4eb
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [edi + 0x888]
push str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
push edi
call fcn.0044a040
add esp, 0x10
push 0
push esi
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
mov eax, 0x3a
jmp 0x45e940
push 0
lea eax, [esp + 0x1c]
mov dword [esp + 0x70], 1
push esi
mov dword [esp + 0x78], eax
call dword [sym.imp.CRYPT32.dll_CertCloseStore]
mov ebp, dword [esp + 0x20]
push 0x18
push 1
call dword [0x7a90e4]
mov ecx, dword [ebp + 0x470]
add esp, 8
mov dword [ecx], eax
mov eax, dword [ebp + 0x470]
mov eax, dword [eax]
test eax, eax
jne 0x45e59e
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.0044a040
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
je case.0x45e637.2146893056
push eax
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov eax, 0x1b
jmp 0x45e940
push ebp
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
push dword [edi + 0x888]
push str.schannel:_Failed_to_read_cert_file__s
push edi
call fcn.0044a040
push dword [esp + 0x20]
call dword [0x7a90d8]
add esp, 0x14
mov eax, 0x3a
jmp 0x45e940
push dword [edi + 0x888]
push str.schannel:_Failed_to_get_certificate_location_or_file_for__s
push edi
call fcn.0044a040
add esp, 0xc
mov eax, esi
jmp 0x45e940
mov dword [eax + 0x10], 1
mov eax, dword [ebp + 0x470]
mov ecx, dword [eax]
lea eax, [ecx + 8]
push eax
push ecx
push 0
push 0
lea eax, [esp + 0x78]
push eax
mov eax, dword [0x7ac278]
push 0
push 2
push str.Microsoft_Unified_Security_Protocol_Provider
mov eax, dword [eax + 0xc]
push 0
call eax
mov ecx, dword [esp + 0x18]
mov esi, eax
test ecx, ecx
je 0x45e5e1
push ecx
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test esi, esi
je 0x45e651
push 0x100
lea eax, [esp + 0x158]
push eax
push esi
call fcn.00436ff0
push eax
push str.schannel:_AcquireCredentialsHandle_failed:__s
push edi
call fcn.0044a040
mov eax, dword [ebp + 0x470]
push dword [eax]
call dword [0x7a90d8]
mov eax, dword [ebp + 0x470]
add esi, 0x7ff6fd00
add esp, 0x1c
mov dword [eax], 0
cmp esi, 0xe
ja case.0x45e637.2146893055
movzx eax, byte [esi + 0x45e998]
jmp dword [eax*4 + 0x45e98c]
push str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
push edi
call fcn.0044a040
add esp, 8
jmp case.0x45e637.2146893055
mov esi, dword [esp + 0x24]
lea eax, [esp + 0xac]
push eax
push esi
push 2
call fcn.0045b220
add esp, 0xc
test eax, eax
jne 0x45e683
lea eax, [esp + 0xb0]
push eax
push esi
push 0x17
call fcn.0045b220
add esp, 0xc
test eax, eax
je 0x45e691
push str.schannel:_using_IP_address__SNI_is_not_supported_by_OS._n
push edi
call fcn.0044a120
add esp, 8
mov eax, dword [ebp + 0x470]
cmp byte [eax + 0x46], 0
je 0x45e724
push str.http_1.1
push str.schannel:_ALPN__offering__s_n
push edi
mov dword [esp + 0xe4], 2
mov byte [esp + 0xea], 8
mov dword [esp + 0xeb], 0x70747468
mov dword [esp + 0xef], 0x312e312f
call fcn.0044a120
push 9
call fcn.0044c850
mov word [esp + 0xec], ax
add esp, 0x10
movzx eax, ax
add eax, 6
mov dword [esp + 0x30], 0x13
mov dword [esp + 0xd4], eax
lea eax, [esp + 0xd4]
mov dword [esp + 0x38], eax
lea eax, [esp + 0x30]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x470]
mov dword [esp + 0x34], 0x12
jmp 0x45e744
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x50], ecx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x4c], 1
push 0x10
mov dword [esp + 0x4c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xac], ecx
mov dword [esp + 0xa8], 1
push 1
mov dword [eax + 0x38], 0x811c
call dword [0x7a90e4]
mov ecx, dword [ebp + 0x470]
add esp, 8
mov dword [ecx + 4], eax
mov ecx, dword [ebp + 0x470]
mov edx, dword [ecx + 4]
test edx, edx
jne 0x45e7cf
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.0044a040
add esp, 8
mov eax, 0x1b
jmp 0x45e940
test esi, esi
je case.0x45e637.2146893056
lea eax, [edx + 8]
push eax
lea eax, [ecx + 0x3c]
push eax
lea eax, [esp + 0xa8]
push eax
push edx
xor edx, edx
lea eax, [esp + 0x58]
cmp byte [ecx + 0x46], dl
push 0
cmove eax, edx
push eax
mov eax, dword [0x7ac278]
push edx
push edx
push dword [ecx + 0x38]
mov eax, dword [eax + 0x18]
push esi
push edx
push dword [ecx]
call eax
mov esi, eax
cmp esi, 0x90312
je 0x45e8b0
mov ecx, dword [ebp + 0x470]
push dword [ecx + 4]
call dword [0x7a90d8]
mov ecx, dword [ebp + 0x470]
lea eax, [esp + 0x158]
add esp, 4
mov dword [ecx + 4], 0
push 0x100
push eax
cmp esi, 0x80090300
je 0x45e88d
cmp esi, 0x80090322
je 0x45e86a
push esi
call fcn.00436ff0
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.0044a040
add esp, 0x18
jmp case.0x45e637.2146893055
push 0x80090322
call fcn.00436ff0
push eax
push str.schannel:_SNI_or_certificate_check_failed:__s
push edi
call fcn.0044a040
add esp, 0x18
mov eax, 0x3c
jmp 0x45e940
push 0x80090300
call fcn.00436ff0
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.0044a040
add esp, 0x18
mov eax, 0x1b
jmp 0x45e940
lea eax, [esp + 0x2c]
push eax
push dword [esp + 0x40]
mov eax, dword [esp + 0x30]
push dword [esp + 0x4c]
push dword [ebx + eax*4 + 0x420]
push ebx
call fcn.0044a740
mov ecx, dword [0x7ac278]
add esp, 0x14
mov esi, eax
push dword [esp + 0x44]
mov ecx, dword [ecx + 0x40]
call ecx
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
test esi, esi
jne 0x45e92b
cmp ecx, eax
jne 0x45e92b
mov eax, dword [ebp + 0x470]
mov dword [eax + 0x40], 0
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x44], 0
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x45], 0
mov eax, dword [ebp + 0x470]
mov byte [eax + 0x34], 0
xor eax, eax
mov dword [ebp + 0x46c], 1
jmp 0x45e940
push ecx
push eax
push str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
push edi
call fcn.0044a040
add esp, 0x10
mov eax, 0x23
mov ecx, dword [esp + 0x254]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004365e1
add esp, 0x248
ret