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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x598
movdqa xmmword [rsp + 0x580], xmm15
movdqa xmmword [rsp + 0x570], xmm14
movdqa xmmword [rsp + 0x560], xmm13
movdqa xmmword [rsp + 0x550], xmm12
movdqa xmmword [rsp + 0x540], xmm11
movdqa xmmword [rsp + 0x530], xmm10
movdqa xmmword [rsp + 0x520], xmm9
movdqa xmmword [rsp + 0x510], xmm8
movdqa xmmword [rsp + 0x500], xmm7
movaps xmmword [rsp + 0x4f0], xmm6
mov r13, r9
mov ebx, r8d
mov rbp, rdx
mov r12, rcx
mov rax, qword [0x14051d038]
xor rax, rsp
mov qword [rsp + 0x4e8], rax
mov rdi, qword [rcx + 0x10]
call fcn.1400f07d0
cmp dword [rdi], 2
jne 0x140129466
mov byte [r13], 1
xor r13d, r13d
mov rcx, qword [rsp + 0x4e8]
xor rcx, rsp
call fcn.1402ddd70
mov eax, r13d
movaps xmm6, xmmword [rsp + 0x4f0]
movaps xmm7, xmmword [rsp + 0x500]
movaps xmm8, xmmword [rsp + 0x510]
movaps xmm9, xmmword [rsp + 0x520]
movaps xmm10, xmmword [rsp + 0x530]
movaps xmm11, xmmword [rsp + 0x540]
movaps xmm12, xmmword [rsp + 0x550]
movaps xmm13, xmmword [rsp + 0x560]
movaps xmm14, xmmword [rsp + 0x570]
movaps xmm15, xmmword [rsp + 0x580]
add rsp, 0x598
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, r13
call fcn.1400f8040
mov r13d, 0x1b
jmp 0x14012930c
test bl, bl
jne 0x1401293cf
lea rdx, str.SSL_TLS_connection_timeout
mov rcx, rbp
call fcn.1400f8040
mov r13d, 0x1c
jmp 0x14012930c
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, rbp
jmp 0x140129395
mov rax, qword [rsp + 0xa0]
mov byte [rax], 0
jmp 0x140129309
lea rdx, str.schannel:_unable_to_re_allocate_memory
jmp 0x1401293ca
mov byte [r14 + 0x58], 1
mov eax, 2
jmp 0x14012943b
sub r15, rcx
add rax, rcx
mov rcx, qword [r12 + 8]
lea rdx, [rsp + 0x120]
mov qword [rsp + 0x20], rdx
mov rdx, rbp
mov r8, rax
mov r9, r15
call fcn.1400f0380
mov rcx, rax
mov eax, dword [rsp + 0x120]
cmp eax, 0x51
jne 0x14012966e
mov r13, rbp
mov eax, 2
cmp dword [rbx + 4], 3
je 0x14012943e
mov dword [rbx + 4], eax
mov rbp, r13
mov rdi, qword [rsp + 0xd8]
mov bl, byte [rsp + 0xb8]
test bl, bl
je 0x14012949f
mov eax, dword [rdi + 4]
dec eax
xor r13d, r13d
cmp eax, 3
jae 0x14012949f
jmp 0x14012930c
mov rsi, rax
cmp dword [rdi + 4], 0
mov qword [rsp + 0xd8], rdi
mov byte [rsp + 0xb8], bl
je 0x14012a8f7
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0xa0], r13
xor esi, esi
movaps xmm6, xmmword [0x14047fb40]
pxor xmm7, xmm7
mov eax, dword [rdi + 4]
lea ecx, [rax - 1]
cmp ecx, 3
jae 0x14012b6fe
mov rcx, rbp
xor edx, edx
mov r8b, 1
call fcn.1400f1a30
test rax, rax
js 0x1401293a9
mov ecx, dword [rdi + 4]
mov edx, ecx
and edx, 0xfffffffe
cmp edx, 2
jne 0x140129518
cmp ecx, 3
mov r8, 0xffffffffffffffff
mov rdx, qword [rsp + 0x80]
cmove r8, rdx
cmp ecx, 2
mov rcx, 0xffffffffffffffff
cmove rcx, rdx
test bl, bl
cmovne rax, rsi
mov rdx, 0xffffffffffffffff
mov r9, rax
call fcn.140112730
test eax, eax
js 0x140129a14
je 0x1401293a5
mov rbx, qword [r12 + 0x10]
mov r14, qword [rbx + 0x20]
mov rcx, r12
call fcn.14012d3d0
movaps xmmword [rsp + 0x160], xmm6
movaps xmmword [rsp + 0x150], xmm6
movaps xmmword [rsp + 0x140], xmm6
movaps xmmword [rsp + 0x190], xmm6
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1f0], xmm6
mov dword [rsp + 0x120], 0xaaaaaaaa
mov r13d, 0x23
cmp qword [r14], 0
je 0x14012930c
cmp qword [r14 + 8], 0
je 0x14012930c
mov r15, rax
mov edi, dword [rbx + 4]
cmp qword [r14 + 0x50], 0
jne 0x1401295c3
mov qword [r14 + 0x40], 0
mov qword [r14 + 0x30], 0x1000
mov rax, qword [fcn.140225e50]
mov ecx, 0x1000
call qword [case.0x14012d181.0]
mov qword [r14 + 0x50], rax
test rax, rax
je 0x1401293c3
mov rax, qword [r14 + 0x48]
test rax, rax
jne 0x140129600
mov byte [r14 + 0x58], 0
mov qword [r14 + 0x38], 0
mov qword [r14 + 0x28], 0x1000
mov rax, qword [fcn.140225e50]
mov ecx, 0x1000
call qword [case.0x14012d181.0]
mov qword [r14 + 0x48], rax
test rax, rax
je 0x1401293c3
mov qword [rsp + 0xd0], r15
mov rdx, qword [r14 + 0x28]
mov r15, qword [r14 + 0x38]
mov rcx, rdx
sub rcx, r15
cmp rcx, 0x3ff
ja 0x140129653
add r15, 0x400
mov r8, qword [fcn.140225ed0]
mov rcx, rax
mov rdx, r15
mov rax, r8
call qword [case.0x14012d181.0]
test rax, rax
je 0x1401293df
mov qword [r14 + 0x48], rax
mov qword [r14 + 0x28], r15
mov rcx, qword [r14 + 0x38]
jmp 0x140129659
mov rcx, r15
mov r15, rdx
cmp edi, 3
jne 0x1401293f4
mov r13, rbp
lea rbp, [r14 + 0x60]
jmp 0x140129705
test eax, eax
jne 0x14012b83b
test rcx, rcx
je 0x14012b83b
mov r13, rbp
add rcx, qword [r14 + 0x38]
mov qword [r14 + 0x38], rcx
mov byte [r14 + 0x58], 0
jmp 0x140129665
mov rcx, qword [rsp + 0x168]
test rcx, rcx
je 0x1401296b2
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x80]
call qword [case.0x14012d181.0]
cmp dword [rsp + 0x1d4], 5
jne 0x140129a2e
mov r8d, dword [rsp + 0x1d0]
test r8d, r8d
je 0x140129a2e
mov rdx, qword [r14 + 0x38]
cmp rdx, r8
jbe 0x140129a36
mov rcx, qword [r14 + 0x48]
add rdx, rcx
sub rdx, r8
call fcn.1402e0660
mov ecx, dword [rsp + 0x1d0]
mov qword [r14 + 0x38], rcx
cmp r15d, 0x90312
jne 0x140129a48
call fcn.14004bd20
mov edi, eax
mov rax, qword [fcn.140225e50]
mov rcx, qword [r14 + 0x38]
call qword [case.0x14012d181.0]
mov dword [rsp + 0x1c0], edi
mov dword [rsp + 0x1c4], 2
mov qword [rsp + 0x1c8], rax
lea rcx, [rsp + 0x1d0]
movdqa xmmword [rcx], xmm7
movabs rdx, 0x200000000
mov qword [rsp + 0x1f0], rdx
lea rcx, [rsp + 0x1c0]
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x140], rdx
mov qword [rsp + 0x148], rsi
movabs rcx, 0x1100000000
mov qword [rsp + 0x150], rcx
lea rcx, [rsp + 0x150]
mov qword [rcx + 0x18], rsi
movdqu xmmword [rcx + 8], xmm7
movabs rcx, 0x300000000
mov qword [rsp + 0x190], rcx
lea rdi, [rsp + 0x140]
mov qword [rsp + 0x198], rdi
test rax, rax
je 0x14012938b
mov r8, qword [r14 + 0x38]
mov rdx, qword [r14 + 0x48]
mov rcx, rax
call fcn.1402e0660
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x30]
mov rcx, qword [r14]
mov rdx, qword [r14 + 8]
lea r10, [rdx + 0x10]
mov r9d, dword [r14 + 0x5c]
mov r8, qword [rcx + 0x18]
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x50], rbp
lea r10, [rsp + 0x190]
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x40], rsi
mov dword [rsp + 0x38], esi
lea r10, [rsp + 0x1f0]
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
call qword [case.0x14012d181.0]
mov r15d, eax
mov rax, qword [fcn.140225eb0]
mov rcx, qword [rsp + 0x1c8]
call qword [case.0x14012d181.0]
mov qword [rsp + 0x1c8], rsi
cmp r15d, 0x90320
je 0x1401299cd
cmp r15d, 0x80090318
je 0x1401293e8
cmp r15d, 0x90312
je 0x140129878
test r15d, r15d
jne 0x140129c41
cmp dword [rsp + 0x144], 2
jne 0x1401298cf
mov r9d, dword [rsp + 0x140]
test r9, r9
je 0x1401298cf
mov r8, qword [rsp + 0x148]
mov rcx, qword [r12 + 8]
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
mov rdx, r13
call fcn.1400f0350
cmp dword [rsp + 0x120], 0
jne 0x1401299f4
mov ecx, dword [rsp + 0x140]
cmp rax, rcx
jne 0x1401299f4
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x1401298f0
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x80]
call qword [case.0x14012d181.0]
cmp dword [rsp + 0x154], 2
jne 0x140129947
mov r9d, dword [rsp + 0x150]
test r9, r9
je 0x140129947
mov r8, qword [rsp + 0x158]
mov rcx, qword [r12 + 8]
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
mov rdx, r13
call fcn.1400f0350
cmp dword [rsp + 0x120], 0
jne 0x1401299ec
mov ecx, dword [rsp + 0x150]
cmp rax, rcx
jne 0x1401299ec
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x140129968
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x80]
call qword [case.0x14012d181.0]
cmp dword [rsp + 0x164], 2
jne 0x140129691
mov r9d, dword [rsp + 0x160]
test r9, r9
je 0x140129691
mov r8, qword [rsp + 0x168]
mov rcx, qword [r12 + 8]
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
mov rdx, r13
call fcn.1400f0350
cmp dword [rsp + 0x120], 0
jne 0x1401299c3
mov ecx, dword [rsp + 0x160]
cmp rax, rcx
je 0x140129691
lea rdi, [rsp + 0x160]
jmp 0x1401299f4
mov eax, dword [r14 + 0x5c]
test al, al
js 0x140129cb0
or eax, 0x80
mov dword [r14 + 0x5c], eax
mov eax, 3
jmp 0x14012943b
lea rdi, [rsp + 0x150]
mov r9d, dword [rdi]
lea rdx, str.schannel:_failed_to_send_next_handshake_data:_sent__zd_of__lu_bytes
mov rcx, r13
mov r8, rax
call fcn.1400f8040
mov r13d, 0x23
jmp 0x14012930c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.select_poll_on_SSL_TLS_socket__errno:__d
mov rcx, rbp
mov r8d, eax
call fcn.1400f8040
jmp 0x140129a09
mov qword [r14 + 0x38], 0
mov eax, 2
cmp r15d, 0x90312
je 0x14012943b
test r15d, r15d
jne 0x140129a54
mov dword [rbx + 4], 4
mov rcx, r12
call fcn.14012ee00
movzx eax, al
mov rbp, r13
mov r13, qword [r13 + rax*8 + 0x7d8]
test r13, r13
je 0x140129bf8
mov rax, qword [r12 + 0x10]
mov rdi, qword [rax + 0x20]
mov qword [rsp + 0x1b0], 0
mov r8d, 0x1e0
lea rcx, [rsp + 0x300]
mov dl, 0xaa
call fcn.1402e0d10
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x58]
mov rcx, qword [rdi + 8]
mov edx, 0x53
lea r8, [rsp + 0x1b0]
call qword [case.0x14012d181.0]
mov r15d, eax
test eax, eax
jne 0x140129b63
mov rax, qword [rsp + 0x1b0]
test rax, rax
je 0x140129b63
mov r15d, 0x5a
test byte [rax], 1
je 0x140129ba4
mov edi, dword [rax + 0x10]
test rdi, rdi
je 0x140129ba4
mov rax, qword [rax + 8]
mov qword [rsp + 0x88], rax
mov r8d, 0x1e0
lea rbx, [rsp + 0x300]
mov rcx, rbx
xor edx, edx
call fcn.1402e0d10
mov rdx, qword [rsp + 0x88]
add rdi, rdx
mov rcx, rbx
mov r8, rdi
call fcn.14012f890
test eax, eax
jne 0x140129ba4
mov r8, qword [rsp + 0x420]
test r8, r8
je 0x140129b52
mov r9, qword [rsp + 0x430]
sub r9, r8
ja 0x140129cfe
mov rcx, rbp
lea rdx, str.SSL:_failed_retrieving_public_key_from_server_certificate
call fcn.1400f8040
jmp 0x140129ba4
mov r8d, 0x100
lea rdi, [rsp + 0x200]
mov rcx, rdi
mov dl, 0xaa
call fcn.1402e0d10
mov r8d, 0x100
mov ecx, r15d
mov rdx, rdi
call fcn.14011b310
mov rcx, rbp
lea rdx, str.schannel:_Failed_to_read_remote_certificate_context:__s
mov r8, rax
call fcn.1400f8040
mov r15d, 0x5a
mov rcx, qword [rsp + 0x1b0]
test rcx, rcx
je 0x140129bb7
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov dword [rsp + 0x120], r15d
test r15d, r15d
je 0x140129bf8
mov rcx, rbp
lea rdx, str.SSL:_public_key_does_not_match_pinned_public_key
call fcn.1400f8040
mov r13d, dword [rsp + 0x120]
test r13d, r13d
mov rdi, qword [rsp + 0xd8]
mov bl, byte [rsp + 0xb8]
je 0x140129450
jmp 0x14012930c
mov r13, rbp
mov rax, qword [rsp + 0xd0]
cmp byte [rax + 0x69], 0
je 0x140129c27
cmp byte [r14 + 0x6c], 0
je 0x14012943e
mov rcx, r12
mov rbp, r13
mov rdx, r13
call fcn.14012c020
mov r13d, eax
jmp 0x140129bdb
cmp byte [rax + 0x6a], 0
je 0x14012943e
mov rcx, r12
mov rbp, r13
mov rdx, r13
call fcn.14012bb50
jmp 0x140129c22
lea rcx, [rsp + 0x300]
mov r8d, 0x100
mov dl, 0xaa
call fcn.1402e0d10
cmp r15d, 0x80090300
je 0x140129c89
cmp r15d, 0x80090325
mov r12, r13
je 0x140129c9b
cmp r15d, 0x80090322
jne 0x140129cc8
mov r13d, 0x3c
lea rdi, str.schannel:_SNI_or_certificate_check_failed:__s
mov r15d, 0x80090322
jmp 0x140129cd5
lea rdi, str.schannel:_next_InitializeSecurityContext_failed:__s
mov r12, r13
mov r13d, 0x1b
jmp 0x140129cd5
mov r13d, 0x3c
lea rdi, str.schannel:__s
mov r15d, 0x80090325
jmp 0x140129cd5
lea rcx, [rsp + 0x300]
mov r8d, 0x100
mov dl, 0xaa
call fcn.1402e0d10
mov r12, r13
mov r13d, 0x23
lea rdi, str.schannel:_next_InitializeSecurityContext_failed:__s
lea rdx, [rsp + 0x300]
mov r8d, 0x100
mov ecx, r15d
call fcn.14011b310
mov rcx, r12
mov rdx, rdi
mov r8, rax
call fcn.1400f8040
jmp 0x14012930c
mov rcx, rbp
mov rdx, r13
call fcn.14012dde0
test eax, eax
je 0x140129d1f
mov r15d, eax
mov rcx, rbp
lea rdx, str.SSL:_public_key_does_not_match_pinned_public_key
jmp 0x140129b5c
xor r15d, r15d
jmp 0x140129ba4
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x98], r12
lea rdi, [rsp + 0x20a]
lea r15, [rsp + 0x300]
mov eax, dword [r15 + 0x24]
movsxd r12, eax
mov rcx, rdi
mov rdx, r15
mov r8, r12
call fcn.1402e0660
lea esi, [r12 + 0xa]
mov ecx, r12d
call fcn.1401316b0
mov word [rdi - 2], ax
movzx eax, ax
add eax, 6
mov dword [rdi - 0xa], eax
lea rax, [rsp + 0x100]
mov dword [rax], esi
mov dword [rax + 4], reloc.WS2_32.dll_select
lea rcx, [rsp + 0x200]
mov qword [rax + 8], rcx
movabs rcx, 0x100000000
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rax
mov rdi, rbx
mov rdx, qword [rbx + 0x18]
mov rcx, r15
call fcn.14012eeb0
test rbp, rbp
je 0x140129de9
cmp byte [rbp + 0xa2f], 0
je 0x140129de9
lea rdx, str.ALPN:_curl_offers__s
lea r8, [rsp + 0x300]
mov rcx, rbp
call fcn.1400f8140
mov r12, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x80]
mov rbx, rdi
mov rdi, qword [rsp + 0x88]
jmp 0x140129e30
pxor xmm0, xmm0
lea rax, [rsp + 0x100]
movdqa xmmword [rax], xmm0
movabs rcx, 0x100000000
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rax
pxor xmm0, xmm0
lea rax, [rsp + 0x120]
movdqa xmmword [rax], xmm0
movabs rcx, 0x100000000
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
mov eax, 0x811c
mov dword [r14 + 0x5c], eax
xor ecx, ecx
cmp byte [rdi + 0xb7], 0
sete cl
shl ecx, 7
or ecx, eax
mov dword [r14 + 0x5c], ecx
mov rax, qword [str.P___]
mov ecx, 1
mov edx, SafeArrayCopy
call qword [case.0x14012d181.0]
mov qword [r14 + 8], rax
test rax, rax
je 0x1401293c3
mov qword [rsp + 0x80], rsi
mov rcx, qword [0x14053be38]
mov rdx, rax
add rdx, 0x10
xor r11d, r11d
cmp byte [r14 + 0x6b], 0
mov r10, qword [rcx + 0x30]
lea rsi, [rsp + 0xf0]
cmove rsi, r11
lea rdi, [r14 + 0x60]
mov r9d, dword [r14 + 0x5c]
mov rcx, qword [r14]
mov r8, qword [rcx + 0x18]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], rdi
lea rdx, [rsp + 0x110]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], r11d
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], r11d
xor edx, edx
mov rax, r10
call qword [case.0x14012d181.0]
cmp eax, 0x90312
je 0x140129faa
mov r15d, eax
lea rcx, [rsp + 0x300]
mov r8d, 0x100
mov dl, 0xaa
call fcn.1402e0d10
mov rax, qword [fcn.140225eb0]
mov rcx, qword [r14 + 8]
call qword [case.0x14012d181.0]
mov qword [r14 + 8], 0
lea rdi, str.schannel:_initial_InitializeSecurityContext_failed:__s
cmp r15d, 0x80090300
je 0x140129f71
cmp r15d, 0x80090322
je 0x140129f79
mov r13d, 0x23
jmp 0x140129f8c
mov r13d, 0x1b
jmp 0x140129f8c
mov r13d, 0x3c
lea rdi, str.schannel:_SNI_or_certificate_check_failed:__s
mov r15d, 0x80090322
lea rdx, [rsp + 0x300]
mov r8d, 0x100
mov ecx, r15d
call fcn.14011b310
mov rcx, rbp
jmp 0x140129cee
mov r9d, dword [rsp + 0x120]
mov r8, qword [rsp + 0x128]
mov rcx, qword [r12 + 8]
lea rsi, [rsp + 0xe0]
mov qword [rsp + 0x20], rsi
mov rdx, rbp
call fcn.1400f0350
mov r15, rax
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x80]
mov rcx, qword [rsp + 0x128]
call qword [case.0x14012d181.0]
cmp dword [rsi], 0
mov r9d, dword [rsp + 0x120]
jne 0x14012a037
cmp r15, r9
jne 0x14012a037
mov byte [r14 + 0x58], 0
xor eax, eax
mov dword [r14 + 0x64], eax
mov dword [r14 + 0x67], eax
mov dword [rbx + 4], 1
mov rdi, qword [rsp + 0xd8]
mov bl, byte [rsp + 0xb8]
mov rsi, qword [rsp + 0x80]
jmp 0x140129482
lea rdx, str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
mov rcx, rbp
mov r8, r15
jmp 0x140129a04
lea rdx, str.schannel:_Unknown_TLS_1.3_cipher:__s
lea r8, [rsp + 0x190]
mov rcx, qword [rsp + 0x90]
call fcn.1400f8040
jmp 0x14012af33
mov dword [rsp + 0x20], 3
mov ecx, 0xa
xor edx, edx
mov r8d, 0x4563
mov r9d, 2
call fcn.140127f00
test al, al
je 0x14012ae6f
mov qword [rsp + 0x90], rbp
pxor xmm7, xmm7
movdqa xmmword [rsp + 0x170], xmm7
movdqa xmmword [rsp + 0x160], xmm7
movdqa xmmword [rsp + 0x150], xmm7
movdqa xmmword [rsp + 0x140], xmm7
xor ebx, ebx
mov qword [rsp + 0x180], rbx
mov qword [rsp + 0x1e0], rbx
movdqa xmmword [rsp + 0x1d0], xmm7
movdqa xmmword [rsp + 0x1c0], xmm7
lea rcx, [rsp + 0x300]
mov r8d, 0xc0
xor edx, edx
call fcn.1402e0d10
movdqa xmmword [rsp + 0x1f0], xmm7
movdqa xmmword [rsp + 0x1b0], xmm7
mov r12, qword [r12 + 0x28]
mov r8d, 0
mov ebp, 0
mov dword [rsp + 0x68], 0
mov edx, 0
mov r10d, 0
test r12, r12
je 0x14012a1da
movabs rax, 0x5f4d43435f383231
movabs rcx, 0x5f5345415f534c54
lea rdx, [rsp + 0x190]
movdqa xmmword [rdx + 0x10], xmm7
movdqa xmmword [rdx], xmm7
mov dl, 1
mov dword [rsp + 0x78], edx
movq xmm7, rcx
movq xmm0, rax
punpcklqdq xmm7, xmm0
movdqa xmm8, xmmword [str._128_CCM_SHA256]
movdqa xmm9, xmmword [0x1404a7520]
movdqa xmm10, xmmword [0x1404a7500]
movdqa xmm11, xmmword [str.TLS_CHACHA20_POL28_CCM_8_SHA256]
movdqa xmm12, xmmword [0x1404a74e0]
movdqa xmm13, xmmword [str.TLS_AES_128_GCM_POLY1305_SHA256]
movdqa xmm14, xmmword [str._256_GCM_SHA384]
movdqa xmm15, xmmword [str.TLS_AES_256_GCM__128_GCM_SHA256]
mov dl, 1
mov al, 1
mov dword [rsp + 0x68], eax
mov bpl, 1
mov r8b, 1
jmp 0x14012a295
mov r13, qword [rsp + 0xa0]
mov r10d, dword [rsp + 0x78]
and bpl, 1
and dl, 1
and r10b, 1
and r8b, 1
je 0x14012a427
test bpl, bpl
je 0x14012a427
mov eax, dword [rsp + 0x68]
and al, 1
je 0x14012a427
test dl, dl
je 0x14012a427
test r10b, r10b
je 0x14012a427
lea rdx, str.schannel:_All_available_TLS_1.3_ciphers_were_disabled
mov rcx, qword [rsp + 0x90]
jmp 0x14012af2e
lea rdx, str.schannel:_Cipher_name_too_long__not_checked
jmp 0x14012a21c
test byte [rsp + 0x78], 1
je 0x14012a049
movdqu xmm0, xmmword [rsp + 0x197]
pcmpeqb xmm0, xmm8
movdqa xmm1, xmmword [rsp + 0x190]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14012a049
mov dword [rsp + 0x78], 0
test r13, r13
je 0x14012a1cd
inc r13
inc ebx
mov r12, r13
test r13, r13
mov r13, qword [rsp + 0xa0]
je 0x14012a1d5
cmp byte [r12], 0
je 0x14012a1d5
cmp ebx, 4
ja 0x14012a1d5
mov dword [rsp + 0xb0], edx
mov esi, r8d
mov rcx, r12
mov edx, 0x3a
call fcn.1402e1098
mov r13, rax
test rax, rax
je 0x14012a362
mov rdi, r13
sub rdi, r12
cmp rdi, 0x20
jae 0x14012a229
lea rcx, [rsp + 0x190]
mov rdx, r12
mov r8, rdi
call fcn.1403036a0
mov byte [rsp + rdi + 0x190], 0
mov r8d, esi
test r8b, 1
jne 0x14012a372
test bpl, 1
mov rdi, qword [rsp + 0x88]
jne 0x14012a3b8
test byte [rsp + 0x68], 1
mov edx, dword [rsp + 0xb0]
jne 0x14012a3eb
test dl, 1
je 0x14012a232
movdqu xmm0, xmmword [rsp + 0x199]
pcmpeqb xmm0, xmm9
movdqa xmm1, xmmword [rsp + 0x190]
pcmpeqb xmm1, xmm7
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14012a232
xor edx, edx
jmp 0x14012a273
mov rcx, r12
call fcn.140303550
mov rdi, rax
jmp 0x14012a2d2
movdqu xmm0, xmmword [rsp + 0x197]
pcmpeqb xmm0, xmm14
movdqa xmm1, xmmword [rsp + 0x190]
pcmpeqb xmm1, xmm15
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14012a300
xor r8d, r8d
mov rdi, qword [rsp + 0x88]
mov edx, dword [rsp + 0xb0]
jmp 0x14012a273
movdqu xmm0, xmmword [rsp + 0x197]
pcmpeqb xmm0, xmm12
movdqa xmm1, xmmword [rsp + 0x190]
pcmpeqb xmm1, xmm13
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14012a312
xor ebp, ebp
jmp 0x14012a3ac
movdqu xmm0, xmmword [rsp + 0x19d]
pcmpeqb xmm0, xmm10
movdqa xmm1, xmmword [rsp + 0x190]
pcmpeqb xmm1, xmm11
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne 0x14012a324
mov dword [rsp + 0x68], 0
jmp 0x14012a273
xor eax, eax
mov ecx, edx
or cl, r10b
mov r12, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xa8]
je 0x14012a4b7
lea rax, [rsp + 0x1f0]
mov dword [rax], 0x200020
lea rcx, str.ChainingModeCCM
mov qword [rax + 8], rcx
mov dword [rsp + 0x300], 2
mov qword [rsp + 0x320], rax
mov dword [rsp + 0x318], 1
mov dword [rsp + 0x308], 0x80008
lea rax, [0x1404a7c66]
mov qword [rsp + 0x310], rax
mov eax, 1
cmp dl, r10b
je 0x14012a4b7
test dl, dl
je 0x14012a4ac
mov dword [rsp + 0x328], 0x80
jmp 0x14012a4b7
mov dword [rsp + 0x32c], 0x40
mov ecx, r8d
or cl, bpl
je 0x14012a576
mov dword [rsp + 0x1b0], 0x200020
lea rcx, str.ChainingModeGCM
mov qword [rsp + 0x1b8], rcx
mov ecx, eax
lea rcx, [rcx + rcx*2]
shl rcx, 4
lea rdx, [rsp + rcx]
add rdx, 0x300
cmp r8b, bpl
mov rsi, qword [rsp + 0x80]
je 0x14012a52b
test r8b, r8b
mov dword [rdx], 3
mov r8w, 8
mov word [rdx + 8], r8w
mov word [rdx + 0xa], r8w
lea r8, str.SHA256
lea rdx, str.SHA384
cmove rdx, r8
jmp 0x14012a547
mov dword [rdx], 2
mov r8w, 8
mov word [rdx + 8], r8w
mov word [rdx + 0xa], r8w
lea rdx, [0x1404a7c66]
mov rbp, qword [rsp + 0x90]
mov qword [rsp + rcx + 0x310], rdx
lea rdx, [rsp + 0x1b0]
mov qword [rsp + rcx + 0x320], rdx
mov dword [rsp + rcx + 0x318], 1
inc eax
jmp 0x14012a586
mov rbp, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x80]
test byte [rsp + 0x68], 1
je 0x14012a5be
mov ecx, eax
lea rcx, [rcx + rcx*2]
shl rcx, 4
mov dword [rsp + rcx + 0x300], 2
mov dword [rsp + rcx + 0x308], 0x240024
lea rdx, str.CHACHA20_POLY1305
mov qword [rsp + rcx + 0x310], rdx
inc eax
lea rdx, [rsp + 0x300]
lea rcx, [rsp + 0x1c0]
mov qword [rcx + 0x18], rdx
mov dword [rcx + 0x14], eax
mov qword [rsp + 0x180], rcx
mov dword [rsp + 0x178], 1
mov dword [rsp + 0x140], 5
mov eax, dword [rsp + 0xc4]
or eax, 0x400000
mov dword [rsp + 0x174], eax
not r15d
mov dword [rcx + 0x10], r15d
cmp qword [rsp + 0x1e8], 0
je 0x14012a7c2
mov dword [rsp + 0x148], 1
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x150], rax
jmp 0x14012a7c2
mov r8d, reloc.WS2_32.dll_recvfrom
mov rcx, r13
lea rdx, str.USE_STRONG_CRYPTO
call fcn.140303610
test eax, eax
mov r12, rdi
je 0x14012a675
mov r8d, reloc.WS2_32.dll_setsockopt
mov rcx, r13
lea rdx, str.SCH_USE_STRONG_CRYPTO
call fcn.140303610
test eax, eax
jne 0x14012bb39
or byte [rsp + 0x18a], 0x40
mov rbp, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
jmp 0x14012a6e2
mov r12, qword [rbp + rbx + 0x300]
add rbp, 0x10
je 0x14012a63c
mov rcx, r12
call fcn.140303550
cmp r15, rax
jne 0x14012a68f
mov rcx, r12
mov rdx, r13
mov r8, r15
call fcn.140303610
test eax, eax
jne 0x14012a68f
mov eax, dword [rbp + rbx + 0x2f8]
mov rbp, qword [rsp + 0x90]
mov r12, rdi
mov rdi, qword [rsp + 0x88]
movsxd rcx, esi
inc esi
mov dword [rsp + rcx*4 + 0x300], eax
mov rcx, r13
mov edx, 0x3a
call fcn.1402e1098
test rax, rax
je 0x14012a757
mov r13, rax
inc r13
je 0x14012a757
cmp byte [r13], 0
je 0x14012a757
cmp esi, 0x2e
jg 0x14012a757
mov rcx, r13
xor edx, edx
xor r8d, r8d
call fcn.1402fb29c
test eax, eax
jne 0x14012a6d6
mov rcx, r13
mov edx, 0x3a
call fcn.1402e1098
test rax, rax
je 0x14012a747
mov r15, rax
mov rdi, r12
sub r15, r13
mov rbp, 0xfffffffffffffd10
lea r12, str.CALG_MD2
jmp 0x14012a69d
mov rdi, r12
mov rcx, r13
call fcn.140303550
mov r15, rax
jmp 0x14012a734
lea rax, [rsp + 0x300]
mov qword [rsp + 0x170], rax
mov dword [rsp + 0x168], esi
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0xa8]
jmp 0x14012a794
or eax, 0x400000
mov dword [rsp + 0x188], eax
mov r12, qword [rsp + 0x98]
cmp qword [rsp + 0x1e8], 0
mov r13, qword [rsp + 0xa0]
je 0x14012a7c2
mov dword [rsp + 0x144], 1
lea rax, [rsp + 0x1e8]
mov qword [rsp + 0x148], rax
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x18]
mov rcx, qword [rsp + 0xc8]
mov rcx, qword [rcx]
lea rdx, [rcx + 0x10]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rcx
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
lea rcx, [rsp + 0x140]
mov qword [rsp + 0x20], rcx
lea rdx, str.Microsoft_Unified_Security_Protocol_Provider
xor ecx, ecx
mov r8d, 2
xor r9d, r9d
call qword [case.0x14012d181.0]
mov r15d, eax
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x14012a82b
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test r15d, r15d
je 0x14012a8a3
lea rdi, [rsp + 0x300]
mov r8d, 0x100
mov rcx, rdi
mov dl, 0xaa
call fcn.1402e0d10
mov r8d, 0x100
mov ecx, r15d
mov rdx, rdi
call fcn.14011b310
lea rdx, str.schannel:_AcquireCredentialsHandle_failed:__s
mov rcx, rbp
mov r8, rax
call fcn.1400f8040
mov rax, qword [fcn.140225eb0]
mov rsi, qword [rsp + 0xc8]
mov rcx, qword [rsi]
call qword [case.0x14012d181.0]
mov qword [rsi], 0
xor eax, eax
cmp r15d, 0x80090300
setne al
lea r13d, [rax*8 + 0x1b]
jmp 0x14012930c
mov dword [rsp + 0xe0], 0
mov rcx, rbp
mov r15, qword [rsp + 0xd0]
mov rdx, r15
xor r8d, r8d
call fcn.14012dd60
test rax, rax
je 0x14012a8eb
mov rcx, rax
call fcn.1400f7610
mov rcx, qword [r14]
mov qword [rcx + 0x18], rax
mov rax, qword [r14]
cmp qword [rax + 0x18], 0
jne 0x14012ab0a
jmp 0x14012939a
lea rdx, str.Failed_to_set_SNI
jmp 0x14012ab93
mov rcx, rbp
xor edx, edx
mov r8b, 1
call fcn.1400f1a30
test rax, rax
js 0x1401293a9
mov rbx, qword [r12 + 0x10]
mov r14, qword [rbx + 0x20]
mov rcx, r12
call fcn.14012d3d0
mov r15, rax
mov rcx, r12
mov rdx, rbp
call fcn.14012d3f0
mov rdi, rax
movaps xmm6, xmmword [0x14047fb40]
movaps xmmword [rsp + 0x120], xmm6
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0x270], xmm6
movaps xmmword [rsp + 0x260], xmm6
movaps xmmword [rsp + 0x250], xmm6
movaps xmmword [rsp + 0x240], xmm6
movaps xmmword [rsp + 0x230], xmm6
movaps xmmword [rsp + 0x220], xmm6
movaps xmmword [rsp + 0x210], xmm6
movaps xmmword [rsp + 0x200], xmm6
mov qword [rsp + 0xe8], 0
mov eax, 0xaaaaaaaa
mov dword [rsp + 0xe4], eax
movaps xmmword [rsp + 0x130], xmm6
mov dword [rsp + 0xe0], eax
mov rax, qword [rbx + 8]
mov qword [rsp + 0xd0], rax
mov dword [rsp + 0x20], 1
mov ecx, 5
mov edx, 1
xor r8d, r8d
mov r9d, 2
call fcn.140127f00
test rbp, rbp
je 0x14012aa0a
test al, al
je 0x14012aa0a
cmp byte [rbp + 0xa2f], 0
je 0x14012aa0a
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.
mov rcx, rbp
call fcn.1400f8140
cmp qword [rbx + 0x18], 0
je 0x14012aa33
lea rcx, str.ntdll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rdx, str.wine_get_version
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14012aa80
xor eax, eax
mov byte [r14 + 0x6b], al
cmp qword [r15 + 8], 0
je 0x14012aaa2
mov dword [rsp + 0x20], 3
mov ecx, 6
mov edx, 1
xor r8d, r8d
mov r9d, 2
call fcn.140127f00
mov cl, 1
test al, al
jne 0x14012aaab
lea rdx, str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
mov rcx, rbp
call fcn.1400f8040
mov r13d, reloc.OLEAUT32.dll_VarR8FromUI1
jmp 0x14012930c
mov dword [rsp + 0x20], 3
mov ecx, 6
mov edx, 3
xor r8d, r8d
mov r9d, 2
call fcn.140127f00
jmp 0x14012aa35
cmp qword [r15 + 0x48], 0
jne 0x14012aa40
xor ecx, ecx
mov byte [r14 + 0x6c], cl
mov qword [r14], 0
cmp byte [rdi + 0x6c], 0
mov r15, qword [rsp + 0xd0]
je 0x14012abf1
mov rcx, rbp
call fcn.14012d1c0
lea r8, [rsp + 0xe8]
mov rcx, r12
mov rdx, rbp
xor r9d, r9d
call fcn.14012d210
test al, al
jne 0x14012aaf8
mov rax, qword [rsp + 0xe8]
mov qword [r14], rax
inc dword [rax + 0x28]
mov rcx, rbp
call fcn.14012d1f0
cmp qword [r14], 0
je 0x14012abf1
lea r8, [rsp + 0xe4]
mov ecx, 2
mov rdx, r15
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
je 0x14012aba0
test rbp, rbp
je 0x14012ab41
cmp byte [rbp + 0xa2f], 0
je 0x14012ab41
lea rdx, str.schannel:_using_IP_address__SNI_is_not_supported_by_OS.
mov rcx, rbp
call fcn.1400f8140
cmp byte [r14 + 0x6b], 0
je 0x140129e06
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x300]
mov qword [rcx + 0x20], rax
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
mov dword [rsp + 0x204], 2
mov rdx, qword [rbx + 0x18]
call fcn.14012ee10
mov dword [rsp + 0xe0], eax
test eax, eax
je 0x140129d27
lea rdx, str.Error_setting_ALPN
mov rcx, rbp
call fcn.1400f8040
jmp 0x140129a09
lea r8, [rsp + 0x130]
mov ecx, reloc.WS2_32.dll_socket
mov rdx, r15
call qword [sym.imp.WS2_32.dll_inet_pton]
test rbp, rbp
je 0x14012ab41
test eax, eax
jne 0x14012ab29
jmp 0x14012ab41
lea rdx, str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
jmp 0x14012ab93
cmp byte [rax + 0xb5], 0
je 0x14012abe2
or ecx, 0x1a00
jmp 0x14012ac4e
or ecx, 0x200
jmp 0x14012ac4e
mov ecx, 0x1808
jmp 0x14012ac4e
mov qword [rsp + 0x80], rsi
mov rsi, qword [r12 + 0x10]
mov rcx, r12
call fcn.14012d3d0
mov r15, rax
mov rcx, r12
mov rdx, rbp
call fcn.14012d3f0
mov r8, r15
mov qword [rsp + 0x1e8], 0
mov rsi, qword [rsi + 0x20]
cmp byte [r15 + 0x69], 0
je 0x14012abea
cmp byte [rsi + 0x6c], 0
mov edx, 0x20
mov ecx, 8
cmove ecx, edx
cmp byte [rax + 0xb3], 0
je 0x14012abd1
or ecx, 0x1800
mov r15d, ecx
or r15d, 4
cmp byte [r8 + 0x6a], 0
cmovne r15d, ecx
cmp byte [rax + 0xb7], 0
mov qword [rsp + 0xb0], r8
je 0x14012ad30
test rbp, rbp
je 0x14012ac98
cmp byte [rbp + 0xa2f], 0
je 0x14012ac98
lea rdx, str.schannel:_enabled_automatic_use_of_client_certificate
mov rcx, rbp
call fcn.1400f8140
mov r8, qword [rsp + 0xb0]
movzx eax, byte [r8 + 0x68]
cmp eax, 7
ja 0x14012abc8
mov ecx, 0xf3
bt ecx, eax
jae 0x14012ad5a
mov dword [rsp + 0xc4], r15d
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0xa8], rbx
mov rcx, r12
call fcn.14012d3d0
movzx esi, byte [rax + 0x68]
mov edi, dword [rax + 0x64]
test edi, 0xfffeffff
jne 0x14012ad14
mov dword [rsp + 0x20], 3
mov ecx, 0xa
xor edx, edx
mov r8d, 0x4f7c
mov r9d, 2
call fcn.140127f00
movzx edi, al
or edi, 6
shl edi, 0x10
sar edi, 0x10
xor r15d, r15d
cmp edi, esi
jl 0x14012addd
inc edi
xor r15d, r15d
lea rbx, [0x1404a8b5c]
jmp 0x14012ad8a
and r15d, 0xffffffaf
or r15d, 0x10
test rbp, rbp
je 0x14012ac98
cmp byte [rbp + 0xa2f], 0
je 0x14012ac98
lea rdx, str.schannel:_disabled_automatic_use_of_client_certificate
jmp 0x14012ac88
lea rdx, str.SSL_versions_not_supported
mov rcx, rbp
call fcn.1400f8040
mov r13d, 4
jmp 0x14012930c
or r15d, 0x80
jmp case.default.0x14012ad99
or r15d, 0x800
inc esi
cmp edi, esi
je 0x14012addd
lea eax, [rsi - 4]
cmp eax, 3
ja case.default.0x14012ad99
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax
or r15d, 0x200
jmp case.default.0x14012ad99
mov dword [rsp + 0x20], 3
mov ecx, 0xa
xor edx, edx
mov r8d, 0x4f7c
mov r9d, 2
call fcn.140127f00
test al, al
je 0x14012add1
or r15d, 0x2000
jmp case.default.0x14012ad99
lea rdx, str.schannel:_TLS_1.3_not_supported_on_Windows_prior_to_11
jmp 0x14012ab93
mov rcx, qword [rbp + 0x538]
mov rsi, qword [rbp + 0x560]
mov rax, rcx
or rax, rsi
jne 0x14012afa8
mov qword [rsp + 0x98], r12
xor r12d, r12d
mov rsi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x88]
mov rax, qword [str.P___]
mov ecx, 1
mov edx, 0x30
call qword [case.0x14012d181.0]
mov rcx, qword [rsp + 0xc8]
mov qword [rcx], rax
test rax, rax
je 0x14012af54
mov dword [rax + 0x28], 1
mov rax, qword [rcx]
mov qword [rax + 0x20], r12
mov r12, qword [rsp + 0xb0]
cmp qword [r12 + 0x20], 0
mov qword [rsp + 0xa0], r13
je 0x14012a06a
lea rcx, [rsp + 0x300]
mov r8d, 0xbc
mov dl, 0xaa
call fcn.1402e0d10
mov r13, qword [r12 + 0x20]
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x140], xmm0
movdqa xmmword [rsp + 0x180], xmm0
movdqa xmmword [rsp + 0x170], xmm0
movdqa xmmword [rsp + 0x160], xmm0
movdqa xmmword [rsp + 0x150], xmm0
mov dword [rsp + 0x140], 4
mov eax, dword [rsp + 0xc4]
mov dword [rsp + 0x188], eax
mov dword [rsp + 0x178], r15d
test r13, r13
je 0x14012a780
mov rcx, r12
test rbp, rbp
mov r12, qword [rsp + 0x98]
je 0x14012af1d
and r15d, 0x2000
je 0x14012af1d
cmp byte [rbp + 0xa2f], 0
je 0x14012af1d
lea rdx, str.schannel:_WARNING:_This_version_of_Schannel_may_negotiate_a_less_secure_TLS_version_than_TLS_1.3_because_the_user_set_an_algorithm_cipher_list.
mov rcx, rbp
call fcn.1400f8140
mov rcx, qword [rsp + 0xb0]
cmp qword [rcx + 0x28], 0
je 0x14012af3e
lea rdx, str.schannel:_This_version_of_Schannel_does_not_support_setting_an_algorithm_cipher_list_and_TLS_1.3_cipher_list_at_the_same_time
mov rcx, rbp
call fcn.1400f8040
mov r13d, 0x3b
jmp 0x14012930c
xor esi, esi
lea rbx, str.CALG_MD2
mov qword [rsp + 0x90], rbp
jmp 0x14012a6fc
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, rbp
call fcn.1400f8040
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x14012af76
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov r13d, 0x1b
test r12, r12
je 0x14012930c
mov rcx, r12
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x14012930c
xor edi, edi
jmp 0x14012b07f
mov rdi, qword [rbp + 0x538]
jmp 0x14012b02f
movaps xmmword [rsp + 0x140], xmm6
movaps xmmword [rsp + 0x300], xmm6
mov dword [rsp + 0x310], 0xaaaaaaaa
test rsi, rsi
je 0x14012b306
mov qword [rsp + 0xa0], r13
mov rax, qword [rsi]
mov qword [rsp + 0x68], rax
mov r13, qword [rsi + 8]
xor eax, eax
xor ecx, ecx
mov qword [rsp + 0x78], rcx
mov rbx, qword [rsp + 0xa8]
mov rcx, qword [rbp + 0x5a8]
test rcx, rcx
je 0x14012b017
lea rdx, [0x1404a7a56]
mov rdi, rax
call fcn.14011a6b0
test eax, eax
mov rax, rdi
je 0x14012b44d
movaps xmmword [rsp + 0x1c0], xmm6
test rsi, rsi
je 0x14012af9c
lea rdi, str._memory_blob_
test rax, rax
je 0x14012b03c
mov rcx, rax
call fcn.140225eb0
test rsi, rsi
mov qword [rsp + 0x70], rdi
je 0x14012b1f1
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x1c8], rax
mov dword [rsp + 0x1c0], r13d
mov rcx, qword [rbp + 0x5c8]
test rcx, rcx
mov qword [rsp + 0x98], r12
je 0x14012af95
call fcn.140303550
mov rdi, rax
mov rax, qword [fcn.140225e50]
lea rcx, [rdi*2 + 2]
call qword [case.0x14012d181.0]
xor r12d, r12d
test rax, rax
je 0x14012b139
mov r13, rax
mov eax, 0
test rdi, rdi
je 0x14012b0d7
lea rax, [rdi + 1]
mov r8, qword [rbp + 0x5c8]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r13
mov ecx, 0xfde9
mov edx, 8
mov r9d, edi
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov r12d, edi
xor ecx, ecx
cmp eax, r12d
mov edx, eax
cmovg rdx, rcx
test eax, eax
cmovs rdx, rcx
mov word [r13 + rdx*2], 0
mov dword [rsp + 0x20], 3
mov ecx, 6
xor edx, edx
xor r8d, r8d
mov r9d, 2
call fcn.140127f00
movzx r8d, al
shl r8d, 0xf
lea rcx, [rsp + 0x1c0]
mov rdx, r13
call qword [sym.imp.CRYPT32.dll_PFXImportCertStore]
mov r12, rax
mov rax, qword [fcn.140225eb0]
mov rcx, r13
call qword [case.0x14012d181.0]
test rsi, rsi
mov r13, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x88]
jne 0x14012b160
mov rax, qword [fcn.140225eb0]
mov rcx, qword [rsp + 0x68]
call qword [case.0x14012d181.0]
test r12, r12
mov rsi, qword [rsp + 0x80]
je 0x14012b1c9
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov rcx, r12
mov edx, 0x10001
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x1e8], rax
test rax, rax
jne 0x14012ae1a
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.schannel:_Failed_to_get_certificate_from_file__s__last_error_is_0x_x
mov rcx, rbp
mov r8, qword [rsp + 0x70]
mov r9d, eax
call fcn.1400f8040
mov rcx, r12
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
jmp 0x14012b296
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x56
jne 0x14012b2a1
lea rdx, str.schannel:_Failed_to_import_cert_file__s__password_is_bad
mov rcx, rbp
mov r8, qword [rsp + 0x70]
call fcn.1400f8040
jmp 0x14012b296
mov rbx, qword [rsp + 0x78]
mov rcx, rbx
xor edx, edx
mov r8d, 2
call fcn.1403008a0
mov cl, 1
mov dword [rsp + 0xc0], ecx
test eax, eax
je 0x14012b2ba
xor r13d, r13d
mov rbx, qword [rsp + 0x68]
test rbx, rbx
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x68], rbx
je 0x14012b266
mov r8d, 1
mov rcx, rbx
mov rdx, r13
mov r9, rdi
call fcn.140300520
cmp eax, 1
jne 0x14012b266
mov rcx, rdi
call fcn.1402ff850
cmp byte [rsp + 0xc0], 0
jne 0x14012b26e
mov rbx, qword [rsp + 0xa8]
jmp 0x14012b04a
mov rcx, rdi
call fcn.1402ff850
mov r8, qword [rbp + 0x538]
lea rdx, str.schannel:_Failed_to_read_cert_file__s
mov rcx, rbp
call fcn.1400f8040
mov rax, qword [fcn.140225eb0]
mov rcx, qword [rsp + 0x68]
call qword [case.0x14012d181.0]
mov r13d, 0x3a
jmp 0x14012930c
lea rdx, str.schannel:_Failed_to_import_cert_file__s__last_error_is_0x_x
mov rcx, rbp
mov r8, qword [rsp + 0x70]
mov r9d, eax
call fcn.1400f8040
jmp 0x14012b296
mov rcx, rbx
call fcn.140300bac
test eax, eax
js 0x14012b21a
mov r13d, eax
mov rcx, rbx
xor edx, edx
xor r8d, r8d
call fcn.1403008a0
test eax, eax
jne 0x14012b21a
mov rax, qword [fcn.140225e50]
lea rcx, [r13 + 1]
call qword [case.0x14012d181.0]
mov rbx, rax
mov dword [rsp + 0xc0], 0
jmp 0x14012b21f
call fcn.1400f7610
test rax, rax
je 0x14012939a
mov qword [rsp + 0xa0], r13
mov rcx, rax
mov dx, 0x5c
mov rbx, rax
call fcn.1402e144c
mov r13d, 0x3a
test rax, rax
mov qword [rsp + 0x98], r12
mov qword [rsp + 0x70], rbx
je 0x14012b4a1
mov qword [rsp + 0x68], rax
mov rdi, rax
sub rdi, rbx
sar rdi, 1
lea rdx, str.CurrentUser
mov rcx, rbx
mov r8, rdi
call fcn.140305bf4
test eax, eax
mov rbx, qword [rsp + 0xa8]
je 0x14012b4ea
lea rdx, str.LocalMachine
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b62e
lea rdx, str.CurrentService
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b63b
lea rdx, str.Services
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b653
lea rdx, str.Users
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b69e
lea rdx, str.CurrentUserGroupPolicy
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b6ba
lea rdx, str.LocalMachineGroupPolicy
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
je 0x14012b6c7
lea rdx, str.LocalMachineEnterprise
mov rcx, qword [rsp + 0x70]
mov r8, rdi
call fcn.140305bf4
test eax, eax
jne 0x14012b4a9
mov dword [rsp + 0x78], 0x90000
jmp 0x14012b4f2
mov r8, qword [rbp + 0x538]
jmp 0x14012b459
test rsi, rsi
je 0x14012b444
lea r8, str._memory_blob_
lea rdx, str.schannel:_certificate_format_compatibility_error__for__s
mov rcx, rbp
call fcn.1400f8040
mov r13d, 0x3a
test rdi, rdi
je 0x14012930c
mov rcx, rdi
jmp 0x14012b497
mov r8, qword [rbp + 0x538]
lea rdx, str.schannel:_Failed_to_get_certificate_location_or_file_for__s
mov rcx, rbp
call fcn.1400f8040
mov rcx, qword [rsp + 0x70]
call fcn.140225eb0
jmp 0x14012930c
mov rbx, qword [rsp + 0xa8]
mov rcx, qword [rbp + 0x538]
cmp byte [rcx], 0
je 0x14012b47c
lea rdx, [0x14048e461]
call fcn.1400f7850
mov rcx, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x14012b47c
xor r13d, r13d
xor eax, eax
mov qword [rsp + 0x68], rax
mov r12, qword [rsp + 0x98]
mov rax, qword [rsp + 0x70]
jmp 0x14012aff1
mov dword [rsp + 0x78], 0x10000
mov rdi, qword [rsp + 0x68]
add rdi, 2
mov rcx, rdi
mov dx, 0x5c
call fcn.1402e144c
test rax, rax
je 0x14012b4a9
mov r12, rax
lea rcx, [rax + 2]
mov qword [rsp + 0x68], rcx
call fcn.140303804
cmp rax, 0x28
jne 0x14012b4a9
mov word [r12], 0
mov rax, qword [0x14052b370]
mov rcx, rdi
call qword [case.0x14012d181.0]
mov word [r12], 0x5c
test rax, rax
je 0x14012b648
mov rdi, rax
mov esi, dword [rsp + 0x78]
mov r9d, esi
or r9d, 0x4000
mov qword [rsp + 0x20], rax
mov ecx, 0xa
xor edx, edx
xor r8d, r8d
call qword [sym.imp.CRYPT32.dll_CertOpenStore]
test rax, rax
je 0x14012b660
mov r12, rax
mov rax, qword [fcn.140225eb0]
mov rcx, rdi
call qword [case.0x14012d181.0]
lea r9, [rsp + 0x300]
lea rsi, [rsp + 0x140]
mov qword [rsi + 8], r9
mov dword [rsi], reloc.WS2_32.dll_sendto
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x20], rsi
mov rcx, qword [rsp + 0x68]
mov edx, 0x28
mov r8d, 4
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryW]
test eax, eax
je 0x14012b6ab
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x28], 0
mov rcx, r12
mov edx, 0x10001
xor r8d, r8d
mov r9d, 0x10000
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x1e8], rax
mov rcx, qword [rsp + 0x70]
call fcn.140225eb0
cmp qword [rsp + 0x1e8], 0
je 0x14012b1b9
mov r13, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x80]
jmp 0x14012ae12
mov dword [rsp + 0x78], 0x20000
jmp 0x14012b4f2
mov dword [rsp + 0x78], 0x40000
jmp 0x14012b4f2
mov r13d, 0x1b
jmp 0x14012b4a9
mov dword [rsp + 0x78], 0x50000
jmp 0x14012b4f2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
lea rdx, str.schannel:_Failed_to_open_cert_store__x__s__last_error_is_0x_x
mov rcx, rbp
mov r8d, esi
mov r9, rdi
call fcn.1400f8040
mov rax, qword [fcn.140225eb0]
mov rcx, rdi
call qword [case.0x14012d181.0]
mov rcx, qword [rsp + 0x70]
call fcn.140225eb0
jmp 0x14012b296
mov dword [rsp + 0x78], 0x60000
jmp 0x14012b4f2
mov rcx, qword [rsp + 0x70]
call fcn.140225eb0
jmp 0x14012b1b9
mov dword [rsp + 0x78], 0x70000
jmp 0x14012b4f2
mov dword [rsp + 0x78], 0x80000
jmp 0x14012b4f2
mov rcx, qword [rsp + 0x200]
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov r12, qword [rsp + 0x98]
mov dword [rsi + 4], 5
mov rdi, qword [rsp + 0xd8]
mov eax, dword [rdi + 4]
jmp 0x14012b703
cmp eax, 4
je 0x14012b742
xor r13d, r13d
mov ecx, 0
cmp eax, 5
jne 0x14012b72c
mov dword [rdi], 2
mov rax, qword [rdi + 0x20]
mov rax, qword [rax + 8]
mov rcx, qword [r12 + 0x18]
mov qword [rcx + 0x3a8], rax
mov cl, 1
mov rax, qword [rsp + 0xa0]
mov byte [rax], cl
mov dword [rdi + 4], 0
jmp 0x14012930c
mov rsi, qword [r12 + 0x10]
mov rbx, qword [rsi + 0x20]
mov rcx, r12
mov rdx, rbp
call fcn.14012d3f0
mov rdi, rax
mov qword [rsp + 0x200], 0
lea rcx, [rsp + 0x300]
mov r8d, 0x108
mov dl, 0xaa
call fcn.1402e0d10
mov r13d, 0x23
cmp qword [rbx], 0
je 0x14012930c
mov eax, dword [rbx + 0x60]
cmp eax, dword [rbx + 0x5c]
jne 0x14012b7cf
cmp byte [rbx + 0x6b], 0
je 0x14012b8b6
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x58]
mov rcx, qword [rbx + 8]
lea r8, [rsp + 0x300]
mov edx, 0x23
call qword [case.0x14012d181.0]
test eax, eax
je 0x14012b84f
lea rdx, str.schannel:_failed_to_retrieve_ALPN_result
jmp 0x14012b842
test al, 8
jne 0x14012b7e5
lea rdx, str.schannel:_failed_to_setup_sequence_detection
mov rcx, rbp
call fcn.1400f8040
mov eax, dword [rbx + 0x60]
test al, 4
jne 0x14012b7fb
lea rdx, str.schannel:_failed_to_setup_replay_detection
mov rcx, rbp
call fcn.1400f8040
mov eax, dword [rbx + 0x60]
test al, 0x10
jne 0x14012b811
lea rdx, str.schannel:_failed_to_setup_confidentiality
mov rcx, rbp
call fcn.1400f8040
mov eax, dword [rbx + 0x60]
bt eax, 8
jb 0x14012b829
lea rdx, str.schannel:_failed_to_setup_memory_allocation
mov rcx, rbp
call fcn.1400f8040
mov eax, dword [rbx + 0x60]
test ax, ax
js 0x14012930c
lea rdx, str.schannel:_failed_to_setup_stream_orientation
jmp 0x14012b842
lea rdx, str.schannel:_failed_to_receive_handshake__SSL_TLS_connection_failed
mov rcx, rbp
call fcn.1400f8040
jmp 0x14012930c
cmp dword [rsp + 0x300], 1
jne 0x14012b89f
mov rax, qword [r12 + 0x18]
mov r14b, byte [rax + 0x619]
lea r8, [rsp + 0x309]
movzx r9d, byte [r8 - 1]
mov rcx, r12
mov rdx, rbp
call fcn.14012ef60
cmp byte [rbx + 0x6a], 0
je 0x14012b8b6
test r14b, r14b
je 0x14012b8b6
mov rax, qword [r12 + 0x18]
cmp r14b, byte [rax + 0x619]
je 0x14012b8b6
lea rdx, str.schannel:_server_selected_an_ALPN_protocol_too_late
jmp 0x14012b842
cmp byte [rbx + 0x6a], 0
jne 0x14012b8b6
mov rcx, r12
mov rdx, rbp
xor r8d, r8d
xor r9d, r9d
call fcn.14012ef60
cmp byte [rdi + 0x6c], 0
mov r15, rbp
je 0x14012b963
mov byte [rsp + 0x1c0], 0
lea rdi, [rsp + 0x140]
mov qword [rdi], 0
mov rcx, r15
call fcn.14012d1c0
mov rcx, r12
mov rdx, r15
mov r8, rdi
xor r9d, r9d
call fcn.14012d210
test al, al
jne 0x14012b90c
mov rdx, qword [rsp + 0x140]
cmp rdx, qword [rbx]
je 0x14012b95b
mov rcx, r15
call fcn.14012d5a0
mov r8, qword [rbx]
lea rax, [rsp + 0x1c0]
mov qword [rsp + 0x20], rax
mov r9d, 0x30
mov rcx, r12
mov rdx, r15
call fcn.14012d5d0
test eax, eax
je 0x14012b94b
mov r13d, eax
mov rcx, r15
call fcn.14012d1f0
lea rdx, str.schannel:_failed_to_store_credential_handle
mov rcx, r15
jmp 0x14012b845
cmp byte [rsp + 0x1c0], 0
je 0x14012b95b
mov rax, qword [rbx]
inc dword [rax + 0x28]
mov rcx, r15
call fcn.14012d1f0
cmp byte [r15 + 0x5d0], 0
je 0x14012b6ea
mov rax, qword [0x14053be38]
mov rax, qword [rax + 0x58]
mov rcx, qword [rbx + 8]
lea r8, [rsp + 0x200]
mov edx, 0x53
call qword [case.0x14012d181.0]
test eax, eax
jne 0x14012b9fd
mov rdi, qword [rsp + 0x200]
test rdi, rdi
je 0x14012b9fd
mov rcx, qword [rdi + 0x20]
xor r14d, r14d
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
test rax, rax
je 0x14012ba17
xor r14d, r14d
test byte [rax], 1
je 0x14012b9d2
cmp qword [rax + 8], 0
je 0x14012b9d2
xor r14d, r14d
cmp dword [rax + 0x10], 0
setne r14b
mov rbx, qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov rcx, qword [rdi + 0x20]
mov rdx, rax
call rbx
test rax, rax
je 0x14012ba17
test byte [rax], 1
je 0x14012b9d9
cmp qword [rax + 8], 0
je 0x14012b9d9
cmp dword [rax + 0x10], 1
sbb r14d, 0xffffffff
jmp 0x14012b9d9
lea rdx, str.schannel:_failed_to_retrieve_remote_cert_context
mov rcx, r15
call fcn.1400f8040
mov r13d, 0x3c
jmp 0x14012930c
mov rcx, r15
mov edx, r14d
call fcn.14012db90
mov r13d, eax
test eax, eax
je 0x14012ba44
mov rcx, qword [rsp + 0x200]
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
jmp 0x14012930c
mov r13d, 0xaaaaaaaa
jmp 0x14012ba29
mov qword [rsp + 0x98], r12
mov rdi, qword [rsp + 0x200]
mov rcx, qword [rdi + 0x20]
xor r12d, r12d
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
test rax, rax
je 0x14012ba3c
mov r15, rax
mov rax, qword [rdi + 8]
mov qword [rsp + 0xb8], rax
mov rax, qword [r15 + 8]
test byte [r15], 1
mov qword [rsp + 0x80], rax
je 0x14012bad6
test rax, rax
je 0x14012bad6
mov r9d, dword [r15 + 0x10]
test r9, r9
je 0x14012bad6
mov r8, qword [rsp + 0x80]
add r9, r8
lea eax, [r14 - 1]
xor edx, edx
cmp qword [rsp + 0xb8], r8
cmovne edx, eax
mov rcx, rbp
call fcn.14012fd60
test eax, eax
je 0x14012bad0
mov r13d, eax
mov rcx, r15
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
jmp 0x14012ba29
mov r12d, 1
mov rbx, qword [sym.imp.CRYPT32.dll_CertEnumCertificatesInStore]
mov rcx, qword [rdi + 0x20]
mov rdx, r15
call rbx
test rax, rax
je 0x14012b6d4
mov r15, rax
test byte [rax], 1
je 0x14012badd
mov r8, qword [r15 + 8]
test r8, r8
je 0x14012badd
mov r9d, dword [r15 + 0x10]
test r9, r9
je 0x14012badd
add r9, r8
mov edx, r12d
not edx
add edx, r14d
mov rax, qword [rsp + 0x80]
cmp qword [rsp + 0xb8], rax
cmove edx, r12d
mov rcx, rbp
call fcn.14012fd60
inc r12d
test eax, eax
je 0x14012badd
jmp 0x14012babf
mov rbp, qword [rsp + 0x90]
lea rdx, str.schannel:_Failed_setting_algorithm_cipher_list
jmp 0x14012af2b