Function at 0x4477a0
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x258
mov r9d, 1
mov r12, qword [rcx]
mov r13, qword [rcx + 0x340]
mov rbx, rcx
mov edi, edx
mov r8d, 2
mov edx, 1
mov ecx, 5
mov qword [rsp + 0xa0], 0xffffffffffffffff
mov qword [rsp + 0x90], 0
mov qword [rsp + 0xa8], 0
call sym.Curl_verify_windows_version
test al, al
jne 0x447920
movsxd rbp, edi
cmp qword [rbx + 0x520], 0
lea rax, [rbp + rbp*2]
lea rsi, [rbx + rax*8]
mov rdx, qword [rsi + 0x4e0]
mov byte [rdx + 0x6a], 0
je 0x447910
mov r9d, 3
mov r8d, 2
mov edx, 1
mov ecx, 6
call sym.Curl_verify_windows_version
test al, al
je 0x4478e0
mov rdx, qword [rsi + 0x4e0]
mov byte [rdx + 0x6b], 1
mov qword [rdx], 0
test byte [r12 + 0xa40], 8
jne 0x447970
lea rdi, [rsp + 0x100]
xor eax, eax
mov ecx, 0xa
mov qword [rsp + 0x78], rdi
rep stosq qword [rdi], rax
movzx eax, byte [rbx + 0x560]
mov dword [rsp + 0x100], 4
test al, 1
jne 0x447934
mov dword [rsp + 0x148], 0x1808
test al, 2
jne 0x4478ba
or dword [rsp + 0x148], 4
mov ecx, dword [rbx + 0x510]
cmp ecx, 7
jbe 0x447d65
lea rdx, str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
mov rcx, r12
mov esi, 0x23
call sym.Curl_failf
jmp 0x4478f4
lea rdx, [0x00484dd0]
mov rcx, r12
mov esi, 0x4d
call sym.Curl_failf
mov eax, esi
add rsp, 0x258
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov byte [rdx + 0x6b], 0
jmp 0x44785c
lea rdx, str.schannel:_Windows_version_is_old_and_may_not_be_able_to_connect_to_some_servers_due_to_lack_of_SNI__algorithms__etc._n
mov rcx, r12
call sym.Curl_infof
jmp 0x447809
cmp byte [rdx + 0x6b], 0
jne 0x447d10
mov dword [rsp + 0x148], 0x20
mov edx, 0x20
movzx ecx, byte [r12 + 0xab0]
test cl, 8
je 0x448620
or dh, 0x18
mov dword [rsp + 0x148], edx
jmp 0x4478ae
mov rcx, rbx
call sym.Curl_ssl_sessionid_lock
lea rdx, [rsp + 0xa8]
xor r8d, r8d
mov r9d, edi
mov rcx, rbx
call sym.Curl_ssl_getsessionid
test al, al
jne 0x4479ae
lea rdx, [rbp + rbp*2]
mov rax, qword [rsp + 0xa8]
mov rdx, qword [rbx + rdx*8 + 0x4e0]
mov qword [rdx], rax
add dword [rax + 0x18], 1
mov rcx, rbx
call sym.Curl_ssl_sessionid_unlock
lea rax, [rbp + rbp*2]
mov rdx, qword [rbx + rax*8 + 0x4e0]
cmp qword [rdx], 0
je 0x447872
mov r14, qword [0x0048e0d0]
lea r8, [rsp + 0x80]
mov rdx, r13
mov ecx, 2
call sym.Curl_inet_pton
test eax, eax
jne 0x447a06
lea r8, [rsp + 0xf0]
mov rdx, r13
mov ecx, 0x17
call sym.Curl_inet_pton
test eax, eax
je 0x447a15
lea rdx, str.schannel:_using_IP_address__SNI_is_not_supported_by_OS._n
mov rcx, r12
call sym.Curl_infof
lea rax, [rsp + 0xd0]
mov edx, 0x18
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xd4], 0
mov qword [rsp + 0xd8], 0
mov ecx, 1
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0xb0]
mov dword [rsp + 0xe0], 0
mov dword [rsp + 0xe4], 1
mov dword [rsp + 0xb0], 0
mov qword [rsp + 0xc8], rax
lea rax, [rbp + rbp*2]
mov dword [rsp + 0xb4], 0
mov qword [rsp + 0xb8], 0
mov dword [rsp + 0xc0], 0
lea rsi, [rbx + rax*8]
mov dword [rsp + 0xc4], 1
mov rdi, qword [rsi + 0x4e0]
mov dword [rdi + 0x5c], 0x811c
call qword [r14]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x4e0]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x447cf4
test r13, r13
je 0x447c00
mov rdi, qword [0x0048e550]
cmp byte [rax + 0x6a], 0
lea r8, [rax + 0x60]
mov r9d, 0
lea r11, [rdx + 0x10]
mov rcx, qword [rdi]
mov r10, qword [rcx + 0x30]
lea rcx, [rsp + 0xe0]
cmove rcx, r9
mov r9d, dword [rax + 0x5c]
mov qword [rsp + 0x50], r8
lea r8, [rsp + 0xc0]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x58], r11
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], rcx
xor edx, edx
mov qword [rsp + 0x48], r8
mov dword [rsp + 0x28], 0
mov r8, r13
mov dword [rsp + 0x20], 0
mov rcx, qword [rax]
call r10
cmp eax, 0x90312
mov r13d, eax
je 0x447c10
mov rax, qword [rsi + 0x4e0]
mov rcx, qword [rax + 8]
mov rax, qword [0x0048e0e0]
call qword [rax]
mov rax, qword [rsi + 0x4e0]
cmp r13d, 0x80090300
mov qword [rax + 8], 0
je 0x447c90
cmp r13d, 0x80090322
jne 0x447cc2
lea rdx, [rsp + 0x150]
mov r8d, 0x100
mov ecx, r13d
mov esi, 0x3c
call sym.Curl_sspi_strerror
lea rdx, str.schannel:_SNI_or_certificate_check_failed:__s
mov r8, rax
mov rcx, r12
call sym.Curl_failf
jmp 0x4478f4
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, r12
call sym.Curl_failf
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x447c00
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
nop dword [rax]
mov esi, 0x1b
jmp 0x4478f4
mov r9d, dword [rsp + 0xb0]
mov rdx, qword [rbx + rbp*8 + 0x450]
lea rax, [rsp + 0xa0]
mov r8, qword [rsp + 0xb8]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call sym.Curl_write_plain
mov ebx, eax
mov rax, qword [rdi]
mov rcx, qword [rsp + 0xb8]
call qword [rax + pe_nt_image_headers64]
test ebx, ebx
jne 0x447d50
mov eax, dword [rsp + 0xb0]
mov r8, qword [rsp + 0xa0]
cmp rax, r8
mov r9, rax
je 0x447d25
lea rdx, str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
mov rcx, r12
mov esi, 0x23
call sym.Curl_failf
jmp 0x4478f4
lea rdx, [rsp + 0x150]
mov r8d, 0x100
mov ecx, r13d
mov esi, 0x1b
call sym.Curl_sspi_strerror
lea rdx, str.schannel:_initial_InitializeSecurityContext_failed:__s
mov r8, rax
mov rcx, r12
call sym.Curl_failf
jmp 0x4478f4
lea rdx, [rsp + 0x150]
mov r8d, 0x100
mov ecx, r13d
mov esi, 0x23
call sym.Curl_sspi_strerror
lea rdx, str.schannel:_initial_InitializeSecurityContext_failed:__s
mov r8, rax
mov rcx, r12
call sym.Curl_failf
jmp 0x4478f4
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, r12
mov esi, 0x1b
call sym.Curl_failf
jmp 0x4478f4
mov dword [rsp + 0x148], 8
mov edx, 8
jmp 0x44794e
mov rax, qword [rsi + 0x4e0]
mov dword [rax + 0x64], 0
mov byte [rax + 0x68], 0
mov byte [rax + 0x69], 0
mov byte [rax + 0x58], 0
mov dword [rsi + 0x4dc], 1
xor esi, esi
jmp 0x4478f4
mov r9d, dword [rsp + 0xb0]
mov r8, qword [rsp + 0xa0]
jmp 0x447c73
mov eax, 1
shl rax, cl
test al, 0xf3
jne 0x448690
test al, 4
jne 0x448680
test al, 8
je 0x4478c9
mov dword [rsp + 0x138], 0x20
mov r15, qword [rbx + 0x540]
lea rax, [0x004a77a0]
xor r14d, r14d
mov qword [rsp + 0x68], rax
test r15, r15
je 0x447e27
lea rax, [rsp + 0x150]
mov qword [rsp + 0x70], rax
nop dword [rax + rax]
cmp byte [r15], 0
je 0x447e10
cmp r14d, 0x2d
je 0x447e10
xor r8d, r8d
xor edx, edx
mov rcx, r15
call sym.strtol
test eax, eax
mov esi, eax
je 0x448080
mov rax, qword [rsp + 0x68]
mov edx, 0x3a
mov rcx, r15
add r14d, 1
mov dword [rax], esi
call sym.strchr
test rax, rax
je 0x447e10
add qword [rsp + 0x68], 4
add rax, 1
mov r15, rax
jne 0x447dc0
nop
lea rax, [0x004a77a0]
mov dword [rsp + 0x128], r14d
mov qword [rsp + 0x130], rax
mov r15, qword [r12 + 0xa78]
mov r14, qword [r12 + 0xa80]
test r15, r15
je 0x448787
test r14, r14
je 0x448795
mov rcx, qword [r12 + 0xa88]
mov r15, qword [r14]
mov rsi, qword [r14 + 8]
test rcx, rcx
je 0x447e71
lea rdx, [0x0048545c]
call sym.Curl_strcasecompare
test eax, eax
je 0x448767
lea rax, str._memory_blob_
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x158], r15
mov rcx, qword [r12 + 0xaa8]
mov dword [rsp + 0x150], esi
test rcx, rcx
je 0x448928
call sym.strlen
lea rcx, [rax + rax + 2]
mov rdi, rax
mov rax, qword [0x0048e0f0]
call qword [rax]
test rax, rax
mov rsi, rax
je 0x448942
test rdi, rdi
jne 0x448634
xor eax, eax
xor edx, edx
mov word [rsi + rax], dx
xor r8d, r8d
lea rcx, [rsp + 0x150]
mov rdx, rsi
call qword [sym.imp.CRYPT32.dll_PFXImportCertStore]
mov rdi, rax
mov rax, qword [0x0048e0e0]
mov rcx, rsi
mov qword [rsp + 0x70], rax
call qword [rax]
test r14, r14
mov rax, qword [rsp + 0x70]
je 0x448bf1
test rdi, rdi
je 0x448954
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov edx, 0x10001
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
test rax, rax
mov qword [rsp + 0x90], rax
je 0x448bfb
lea rax, [rsp + 0x90]
mov dword [rsp + 0x104], 1
xor edx, edx
mov rcx, rdi
mov qword [rsp + 0x108], rax
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
lea rax, [rbp + rbp*2]
mov r14, qword [0x0048e0d0]
mov edx, 0x20
mov ecx, 1
lea rsi, [rbx + rax*8]
mov rdi, qword [rsi + 0x4e0]
call qword [r14]
mov qword [rdi], rax
mov rax, qword [rsi + 0x4e0]
mov rax, qword [rax]
test rax, rax
je 0x447bdb
mov rdx, qword [0x0048e550]
mov dword [rax + 0x18], 1
xor ecx, ecx
xor r9d, r9d
mov r8d, 2
mov r10, qword [rdx]
lea rdx, [rax + 0x10]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x28], 0
lea rdx, str.Microsoft_Unified_Security_Protocol_Provider
mov qword [rsp + 0x20], rax
call qword [r10 + 0x18]
mov rcx, qword [rsp + 0x90]
mov esi, eax
test rcx, rcx
je 0x44800c
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test esi, esi
je 0x4479d4
lea rdx, [rsp + 0x150]
mov ecx, esi
mov r8d, 0x100
call sym.Curl_sspi_strerror
lea rdx, str.schannel:_AcquireCredentialsHandle_failed:__s
mov r8, rax
mov rcx, r12
call sym.Curl_failf
lea rax, [rbp + rbp*2]
lea rbx, [rbx + rax*8]
mov rax, qword [rbx + 0x4e0]
mov rcx, qword [rax]
mov rax, qword [0x0048e0e0]
call qword [rax]
mov rax, qword [rbx + 0x4e0]
cmp esi, 0x80090300
setne sil
movzx esi, sil
mov qword [rax], 0
lea esi, [rsi*8 + 0x1b]
jmp 0x4478f4
mov edx, 0x3a
mov rcx, r15
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 0
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 0
call sym.strchr
test rax, rax
je 0x448740
sub rax, r15
mov rsi, rax
cmp rax, 0x1f
mov eax, 0x1f
cmova rsi, rax
mov rdi, qword [rsp + 0x70]
mov r8, rsi
mov rdx, r15
mov rcx, rdi
call sym.strncpy
mov byte [rsp + rsi + 0x150], 0
lea rsi, str.CALG_MD2
mov ecx, 9
repe cmpsb byte [rsi], byte [rdi]
mov esi, 0x8001
seta dl
setb al
cmp dl, al
je 0x447de3
mov rdi, qword [rsp + 0x70]
lea rsi, str.CALG_MD4
mov ecx, 9
repe cmpsb byte [rsi], byte [rdi]
mov esi, 0x8002
seta dl
setb al
cmp dl, al
je 0x447de3
mov rdi, qword [rsp + 0x70]
lea rsi, str.CALG_MD5
mov ecx, 9
repe cmpsb byte [rsi], byte [rdi]
mov esi, 0x8003
seta dl
setb al
cmp dl, al
je 0x447de3
mov rdi, qword [rsp + 0x70]
lea rsi, str.CALG_SHA
mov ecx, 9
repe cmpsb byte [rsi], byte [rdi]
mov esi, 0x8004
seta dl
setb al
cmp dl, al
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SHA1
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_MAC
mov esi, 0x8005
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_RSA_SIGN
mov esi, 0x2400
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_DSS_SIGN
mov esi, 0x2200
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_NO_SIGN
mov esi, 0x2000
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_RSA_KEYX
mov esi, 0xa400
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_DES
mov esi, 0x6601
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_3DES_112
mov esi, 0x6609
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_3DES
mov esi, 0x6603
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_DESX
mov esi, 0x6604
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_RC2
mov esi, 0x6602
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_RC4
mov esi, 0x6801
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SEAL
mov esi, 0x6802
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_DH_SF
mov esi, 0xaa01
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_DH_EPHEM
mov esi, 0xaa02
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_AGREEDKEY_ANY
mov esi, 0xaa03
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_HUGHES_MD5
mov esi, 0xa003
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SKIPJACK
mov esi, 0x660a
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_TEK
mov esi, 0x660b
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_CYLINK_MEK
mov esi, 0x660c
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SSL3_SHAMD5
mov esi, 0x8008
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SSL3_MASTER
mov esi, 0x4c01
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SCHANNEL_MASTER_HASH
mov esi, 0x4c02
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SCHANNEL_MAC_KEY
mov esi, 0x4c03
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SCHANNEL_ENC_KEY
mov esi, 0x4c07
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_PCT1_MASTER
mov esi, 0x4c04
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SSL2_MASTER
mov esi, 0x4c05
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_TLS1_MASTER
mov esi, 0x4c06
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_RC5
mov esi, 0x660d
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_HMAC
mov esi, 0x8009
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_TLS1PRF
mov esi, 0x800a
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_HASH_REPLACE_OWF
mov esi, 0x800b
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_AES_128
mov esi, 0x660e
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_AES_192
mov esi, 0x660f
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_AES_256
mov esi, 0x6610
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_AES
mov esi, 0x6611
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SHA_256
mov esi, 0x800c
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SHA_384
mov esi, 0x800d
call sym.strcmp
test eax, eax
je 0x447de3
mov rdx, qword [rsp + 0x70]
lea rcx, str.CALG_SHA_512
call sym.strcmp
test eax, eax
jne 0x448cc4
mov esi, 0x800e
jmp 0x447de3
and ecx, 0x20
je 0x448670
or dh, 0x1a
mov dword [rsp + 0x148], edx
jmp 0x4478ae
lea eax, [rdi + 1]
mov r8, qword [r12 + 0xaa8]
mov r9d, edi
mov qword [rsp + 0x20], rsi
mov edx, 8
mov ecx, 0xfde9
mov dword [rsp + 0x28], eax
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jns 0x448c6b
xor eax, eax
mov word [rsi], ax
jmp 0x447ed0
or dh, 2
mov dword [rsp + 0x148], edx
jmp 0x4478ae
mov dword [rsp + 0x138], 8
jmp 0x447d90
mov eax, dword [rbx + 0x514]
mov r8, qword [rbx]
test eax, eax
je 0x44875d
cmp eax, 0x10000
je 0x44875d
sar eax, 0x10
cmp ecx, eax
jg 0x447d90
cmp ecx, 5
je 0x448c4b
jg 0x448720
cmp ecx, 4
jne 0x44872e
mov edx, dword [rsp + 0x138]
or dl, 0x80
cmp eax, 4
mov dword [rsp + 0x138], edx
jle 0x447d90
or dh, 2
cmp eax, 5
mov dword [rsp + 0x138], edx
jle 0x447d90
or dh, 8
cmp eax, 6
mov dword [rsp + 0x138], edx
jle 0x447d90
lea rdx, str.schannel:_TLS_1.3_is_not_yet_supported
mov rcx, r8
mov esi, 0x23
call sym.Curl_failf
jmp 0x4478f4
cmp ecx, 6
je 0x448c3f
cmp ecx, 7
je 0x448707
add ecx, 1
cmp ecx, eax
jle 0x4486b7
jmp 0x447d90
mov rcx, r15
call sym.strlen
mov rsi, rax
cmp rax, 0x1f
mov eax, 0x1f
cmovae rsi, rax
jmp 0x4480d9
mov eax, 6
jmp 0x4486af
lea r8, str._memory_blob_
lea rdx, str.schannel:_certificate_format_compatibility_error__for__s
mov rcx, r12
mov esi, 0x3a
call sym.Curl_failf
jmp 0x4478f4
test r14, r14
jne 0x447e49
jmp 0x447f6c
mov edx, 0x5c
mov rcx, r15
call sym.strchr
test rax, rax
mov qword [rsp + 0x68], rax
je 0x448921
sub rax, r15
mov ecx, 0xc
lea rdi, str.CurrentUser
cmp rax, 0xc
mov rsi, r15
cmovle rcx, rax
cmp rcx, rcx
repe cmpsb byte [rsi], byte [rdi]
je 0x448984
cmp rax, 0xd
mov r8d, 0xd
lea rdx, str.LocalMachine
cmovle r8, rax
mov rcx, r15
mov qword [rsp + 0x70], rax
call sym.strncmp
test eax, eax
je 0x448c28
mov r10, qword [rsp + 0x70]
mov r8d, 0xf
lea rdx, str.CurrentService
mov rcx, r15
cmp r10, 0xf
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448c7d
mov r10, qword [rsp + 0x70]
mov r8d, 9
lea rdx, str.Services
mov rcx, r15
cmp r10, 9
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448ca3
mov r10, qword [rsp + 0x70]
mov r8d, 6
lea rdx, str.Users
mov rcx, r15
cmp r10, 6
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448c99
mov r10, qword [rsp + 0x70]
mov r8d, 0x17
lea rdx, str.CurrentUserGroupPolicy
mov rcx, r15
cmp r10, 0x17
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448ce7
mov r10, qword [rsp + 0x70]
mov r8d, 0x18
lea rdx, str.LocalMachineGroupPolicy
mov rcx, r15
cmp r10, 0x18
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448cdd
mov r10, qword [rsp + 0x70]
mov r8d, 0x17
lea rdx, str.LocalMachineEnterprise
mov rcx, r15
mov esi, 0x3a
cmp r10, 0x17
cmovle r8, r10
call sym.strncmp
test eax, eax
je 0x448cad
cmp byte [r15], 0
jne 0x448ad6
lea rdx, str.schannel:_Failed_to_get_certificate_location_or_file_for__s
mov r8, r15
mov rcx, r12
call sym.Curl_failf
jmp 0x4478f4
mov esi, 0x3a
jmp 0x448900
mov rax, qword [0x0048e0f0]
mov ecx, 2
call qword [rax]
test rax, rax
mov rsi, rax
jne 0x447ec8
xor edi, edi
test r14, r14
mov rax, qword [0x0048e0e0]
je 0x448bf1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
mov r9d, eax
mov r8, qword [rsp + 0x68]
je 0x448c57
lea rdx, str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
mov rcx, r12
call sym.Curl_failf
mov esi, 0x3a
jmp 0x4478f4
mov esi, 0x10000
mov r8, qword [rsp + 0x68]
mov edx, 0x5c
add r8, 1
mov rcx, r8
mov qword [rsp + 0x68], r8
call sym.strchr
test rax, rax
mov rdi, rax
je 0x448921
mov byte [rax], 0
mov r8, qword [rsp + 0x68]
mov rax, qword [0x0048e110]
mov rcx, r8
call qword [rax]
test rax, rax
mov r15, rax
mov byte [rdi], 0x5c
je 0x448c87
add rdi, 1
xor eax, eax
or rcx, 0xffffffffffffffff
mov qword [rsp + 0x68], rdi
repne scasb al, byte [rdi]
cmp rcx, 0xffffffffffffffd6
je 0x448a00
mov esi, 0x3a
mov r15, qword [r12 + 0xa78]
jmp 0x448900
mov r9d, esi
xor r8d, r8d
xor edx, edx
or r9d, 0x4000
mov qword [rsp + 0x20], r15
mov ecx, 9
call qword [sym.imp.CRYPT32.dll_CertOpenStore]
test rax, rax
mov rdi, rax
je 0x448bc1
mov rax, qword [0x0048e0e0]
mov rcx, r15
lea rsi, [rsp + 0xf0]
call qword [rax]
lea r9, [rsp + 0x150]
mov dword [rsp + 0xf0], 0x14
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rsi
mov r8d, 4
mov qword [rsp + 0xf8], r9
mov edx, 0x28
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
je 0x448ac1
xor r8d, r8d
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], rsi
mov r9d, 0x10000
mov edx, 0x10001
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
test rax, rax
mov qword [rsp + 0x90], rax
jne 0x447f46
xor edx, edx
mov rcx, rdi
mov esi, 0x3a
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x4478f4
lea rdx, [0x00485152]
mov rcx, r15
call sym.curlx_win32_fopen
test rax, rax
mov rdi, rax
je 0x448cb7
mov rcx, qword [r12 + 0xa88]
test rcx, rcx
je 0x448b12
lea rdx, [0x0048545c]
call sym.Curl_strcasecompare
test eax, eax
je 0x448c32
mov rax, qword [r12 + 0xa78]
xor edx, edx
mov r8d, 2
mov rcx, rdi
xor r15d, r15d
mov qword [rsp + 0x68], rax
call sym.fseek
test eax, eax
je 0x448b66
mov rcx, rdi
call sym.fclose
mov r8, qword [r12 + 0xa78]
lea rdx, str.schannel:_Failed_to_read_cert_file__s
mov rcx, r12
call sym.Curl_failf
mov rax, qword [0x0048e0e0]
mov rcx, r15
call qword [rax]
jmp 0x44897a
mov rcx, rdi
call sym.ftell
test eax, eax
js 0x448b36
xor r8d, r8d
xor edx, edx
mov rcx, rdi
movsxd rsi, eax
call sym.fseek
test eax, eax
jne 0x448b36
mov rax, qword [0x0048e0f0]
lea rcx, [rsi + 1]
call qword [rax]
test rax, rax
mov r15, rax
je 0x448b36
mov r9, rdi
mov r8d, 1
mov rdx, rsi
mov rcx, rax
call sym.fread
cmp eax, 1
jne 0x448b36
mov rcx, rdi
call sym.fclose
jmp 0x447e7d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
mov dword [rsp + 0x20], eax
mov rcx, r12
mov r9, r15
mov r8d, esi
call sym.Curl_failf
mov rax, qword [0x0048e0e0]
mov rcx, r15
call qword [rax]
jmp 0x44897a
mov rcx, r15
call qword [rax]
jmp 0x447f06
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rsp + 0x68]
lea rdx, str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
mov rcx, r12
mov r9d, eax
call sym.Curl_failf
xor edx, edx
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x44897a
mov esi, 0x20000
jmp 0x448989
mov r8, qword [r12 + 0xa78]
jmp 0x44876e
mov edx, dword [rsp + 0x138]
jmp 0x4486f4
mov edx, dword [rsp + 0x138]
jmp 0x4486e1
lea rdx, str.schannel:_Failed_to_import_cert_file__s__password_is_bad
mov rcx, r12
call sym.Curl_failf
jmp 0x44897a
cmp edi, eax
jl 0x448663
cdqe
add rax, rax
jmp 0x447eca
mov esi, 0x40000
jmp 0x448989
mov esi, 0x1b
mov r15, qword [r12 + 0xa78]
jmp 0x448900
mov esi, 0x60000
jmp 0x448989
mov esi, 0x50000
jmp 0x448989
mov esi, 0x90000
jmp 0x448989
mov r15, qword [r12 + 0xa78]
jmp 0x44890a
lea rdx, str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
mov rcx, r12
mov esi, 0x3b
call sym.Curl_failf
jmp 0x4478f4
mov esi, 0x80000
jmp 0x448989
mov esi, 0x70000
jmp 0x448989