Function at 0x1401c9d20
Capabilities:
Convert ip address from string

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x180]
sub rsp, 0x280
mov rax, qword [0x14044a300]
xor rax, rsp
mov qword [rbp + 0x170], rax
mov r12, qword [rcx]
xor r15d, r15d
movsxd rbx, edx
mov rsi, rcx
mov edi, 0x310
mov qword [rbp - 0x50], 0xffffffffffffffff
mov r14, rbx
mov qword [rbp + 0x18], rbx
mov qword [rsp + 0x68], r15
cmp dword [rsi + 0x16c], 2
lea rax, [rbx + rbx*2]
lea r13, [rcx + rax*8]
mov qword [rbp - 0x60], r15
lea ecx, [rdi + 0x18]
jne 0x1401c9da9
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov eax, edi
cmovne eax, ecx
cmp dword [rax + rsi], 2
je 0x1401c9da9
mov rax, qword [rsi + 0x158]
jmp 0x1401c9db0
mov rax, qword [rsi + 0xd0]
mov edx, 1
mov qword [rbp - 0x58], rax
mov r9d, edx
lea ecx, [rdx + 4]
lea r8d, [rdx + 1]
call fcn.1401b9c70
test al, al
je 0x1401c9ddb
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 fcn.1401b6ff0
cmp byte [rsi + 0x40a], r15b
je 0x1401c9e22
lea rcx, [0x140383c7c]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.wine_get_version
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x1401c9e22
mov edx, 3
lea ecx, [rax + 6]
mov r9d, edx
lea r8d, [rax + 2]
call fcn.1401b9c70
test al, al
je 0x1401c9e22
mov cl, 1
jmp 0x1401c9e24
xor cl, cl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6a], cl
cmp dword [rsi + 0x16c], 2
jne 0x1401c9e5a
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov ecx, 0x328
cmovne rax, rcx
cmp dword [rax + rsi], 2
je 0x1401c9e5a
mov rax, qword [rsi + 0x3a8]
jmp 0x1401c9e61
mov rax, qword [rsi + 0x358]
test rax, rax
je 0x1401c9ea5
mov edx, 1
lea ecx, [rdx + 5]
lea r9d, [rdx + 2]
lea r8d, [rdx + 1]
call fcn.1401b9c70
test al, al
je 0x1401c9e8c
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6b], 1
jmp 0x1401c9eb0
lea rdx, str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
mov rcx, r12
call fcn.1401b6e70
mov eax, Ordinal_79
jmp 0x1401ca878
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x6b], r15b
mov rax, qword [r13 + 0x2e8]
mov qword [rax], r15
cmp dword [rsi + 0x16c], 2
jne 0x1401c9ee8
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov ecx, 0x328
cmovne rax, rcx
cmp dword [rax + rsi], 2
je 0x1401c9ee8
movzx eax, byte [r12 + 0xafb]
jmp 0x1401c9ef1
movzx eax, byte [r12 + 0xa53]
test al, al
je 0x1401c9f36
mov rcx, rsi
call fcn.1401b0b30
mov r9d, ebx
lea rdx, [rbp - 0x60]
xor r8d, r8d
mov rcx, rsi
call fcn.1401b02d0
test al, al
jne 0x1401c9f2e
mov rcx, qword [r13 + 0x2e8]
mov rax, qword [rbp - 0x60]
mov qword [rcx], rax
mov rax, qword [r13 + 0x2e8]
mov rcx, qword [rax]
inc dword [rcx + 0x18]
mov rcx, rsi
call fcn.1401b0b60
mov rcx, qword [r13 + 0x2e8]
cmp qword [rcx], r15
jne 0x1401ca57f
xorps xmm0, xmm0
mov r9d, 8
movups xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x40], 4
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
cmp byte [rsi + 0x390], r15b
je 0x1401c9f9a
cmp byte [rcx + 0x6b], r15b
mov eax, reloc.WLDAP32.dll_Ordinal_32
cmovne eax, r9d
mov dword [rbp + 8], eax
cmp byte [r12 + 0xaab], r15b
je 0x1401c9f94
or eax, 0x1800
jmp 0x1401c9f9f
bts eax, 9
jmp 0x1401c9f9f
mov eax, 0x1808
mov dword [rbp + 8], eax
cmp byte [rsi + 0x391], r15b
jne 0x1401c9fb1
or eax, 4
mov dword [rbp + 8], eax
movsxd r8, dword [rsi + 0x348]
cmp r8d, 7
ja case.default.0x1401c9fdd
lea rdx, [0x140000000]
mov ecx, dword [rdx + r8*4 + 0x1ca8a4]
add rcx, rdx
mov edx, 0x60000
mov dword [rsp + 0x60], edx
jmp rcx
mov ecx, dword [rsi + 0x16c]
mov r10, qword [rsi]
cmp ecx, 2
jne 0x1401ca039
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
mov r9d, 0x328
cmovne rax, r9
cmp dword [rax + rsi], ecx
je 0x1401ca017
mov r8d, dword [rsi + 0x398]
mov r9d, dword [rsi + 0x39c]
jmp 0x1401ca040
cmp ecx, 2
jne 0x1401ca039
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
cmovne rax, r9
cmp dword [rax + rsi], ecx
je 0x1401ca039
mov r9d, dword [rsi + 0x39c]
jmp 0x1401ca040
mov r9d, dword [rsi + 0x34c]
test r9d, 0xfffeffff
cmove r9d, edx
sar r9d, 0x10
cmp r8d, r9d
jg 0x1401ca0ac
mov edx, dword [rbp - 8]
mov ecx, r8d
sub ecx, 4
je 0x1401ca08e
sub ecx, 1
je 0x1401ca088
sub ecx, 1
je 0x1401ca082
cmp ecx, 1
jne 0x1401ca095
lea rdx, str.schannel:_TLS_1.3_is_not_yet_supported
mov rcx, r10
call fcn.1401b6e70
jmp 0x1401ca873
bts edx, 0xb
jmp 0x1401ca092
bts edx, 9
jmp 0x1401ca092
bts edx, 7
mov dword [rbp - 8], edx
inc r8d
cmp r8d, r9d
jle 0x1401ca057
jmp 0x1401ca0ac
mov dword [rbp - 8], reloc.WLDAP32.dll_Ordinal_32
jmp 0x1401ca0ac
mov dword [rbp - 8], r9d
mov ecx, dword [rsi + 0x16c]
mov edx, 0x328
cmp ecx, 2
jne 0x1401ca0d9
cmp qword [rsi + 0x260], 0xffffffffffffffff
mov rax, rdi
cmovne rax, rdx
cmp dword [rax + rsi], ecx
je 0x1401ca0d9
mov rax, qword [rsi + 0x3c8]
jmp 0x1401ca0e0
mov rax, qword [rsi + 0x378]
mov ebx, Ordinal_60
test rax, rax
je 0x1401ca189
cmp ecx, 2
jne 0x1401ca10d
cmp qword [rsi + 0x260], 0xffffffffffffffff
cmovne rdi, rdx
cmp dword [rdi + rsi], ecx
je 0x1401ca10d
mov rdi, qword [rsi + 0x3c8]
jmp 0x1401ca114
mov rdi, qword [rsi + 0x378]
lea rcx, [0x140450600]
test rdi, rdi
je 0x1401ca17e
mov r14, rcx
cmp byte [rdi], 0
lea rax, [0x1404506b4]
je 0x1401ca177
cmp r14, rax
jge 0x1401ca177
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.140340f70
test eax, eax
jne 0x1401ca155
mov rcx, rdi
call fcn.1401c9500
test eax, eax
je 0x1401ca1dc
mov dword [r14], eax
mov edx, ebx
mov rcx, rdi
add r14, 4
inc r15d
call fcn.14031e878
mov rdi, rax
test rax, rax
je 0x1401ca177
add rdi, 1
jne 0x1401ca123
lea rcx, [0x140450600]
mov dword [rbp - 0x18], r15d
xor r15d, r15d
mov qword [rbp - 0x10], rcx
mov rdi, qword [r12 + 0xa80]
test rdi, rdi
je 0x1401ca449
mov edx, 0x5c
mov rcx, rdi
call fcn.14031e878
mov r15, rax
test rax, rax
je 0x1401ca30e
mov r14, rax
lea rdx, str.CurrentUser
sub r14, rdi
mov rcx, rdi
mov r8, r14
call fcn.14033cab0
test eax, eax
jne 0x1401ca1f5
mov dword [rsp + 0x60], 0x10000
jmp 0x1401ca2cf
lea rdx, str.Unable_to_set_ciphers_to_passed_via_SSL_CONN_CONFIG
mov rcx, r12
call fcn.1401b6e70
mov eax, Ordinal_60
jmp 0x1401ca878
mov r8, r14
lea rdx, str.LocalMachine
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca218
mov dword [rsp + 0x60], 0x20000
jmp 0x1401ca2cf
mov r8, r14
lea rdx, str.CurrentService
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca23b
mov dword [rsp + 0x60], 0x40000
jmp 0x1401ca2cf
mov r8, r14
lea rdx, str.Services
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca25b
mov dword [rsp + 0x60], 0x50000
jmp 0x1401ca2cf
mov r8, r14
lea rdx, str.Users
mov rcx, rdi
call fcn.14033cab0
test eax, eax
je 0x1401ca2cf
mov r8, r14
lea rdx, str.CurrentUserGroupPolicy
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca291
mov dword [rsp + 0x60], 0x70000
jmp 0x1401ca2cf
mov r8, r14
lea rdx, str.LocalMachineGroupPolicy
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca2b1
mov dword [rsp + 0x60], 0x80000
jmp 0x1401ca2cf
mov r8, r14
lea rdx, str.LocalMachineEnterprise
mov rcx, rdi
call fcn.14033cab0
test eax, eax
jne 0x1401ca30e
mov dword [rsp + 0x60], 0x90000
lea r14, [r15 + 1]
mov edx, 0x5c
mov rcx, r14
call fcn.14031e878
mov r15, rax
test rax, rax
je 0x1401ca30e
lea r8, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov byte [rax], 0
mov edx, 0x191
mov rcx, r14
call fcn.1401ba9a0
mov byte [r15], 0x5c
mov r14, rax
test rax, rax
jne 0x1401ca327
lea ebx, [rax + 0x1b]
mov r8, rdi
lea rdx, str.schannel:_Failed_to_get_certificate_location_for__s
mov rcx, r12
call fcn.1401b6e70
mov eax, ebx
jmp 0x1401ca878
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [r15 + rax + 1], 0
jne 0x1401ca330
cmp rax, 0x28
jne 0x1401ca30e
mov r9d, dword [rsp + 0x60]
lea ecx, [rax - 0x1f]
bts r9d, 0xe
mov qword [rsp + 0x20], r14
xor r8d, r8d
xor edx, edx
call qword [sym.imp.CRYPT32.dll_CertOpenStore]
mov rdi, rax
test rax, rax
jne 0x1401ca3a2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, dword [rsp + 0x60]
lea rdx, str.schannel:_Failed_to_open_cert_store__x__s__last_error_is__x
mov r9, r14
mov dword [rsp + 0x20], eax
mov rcx, r12
call fcn.1401b6e70
lea r8, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov edx, 0x26b
mov rcx, r14
call fcn.1401ba370
mov eax, ebx
jmp 0x1401ca878
lea r8, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov edx, 0x26f
mov rcx, r14
call fcn.1401ba370
lea rax, [rbp + 0x50]
mov dword [rbp + 0x20], reloc.WS2_32.dll_sendto
mov qword [rbp + 0x28], rax
lea r9, [rbp + 0x50]
xor eax, eax
lea rcx, [r15 + 1]
mov qword [rsp + 0x30], rax
mov edx, Ordinal_41
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x20], rax
lea r8d, [rdx - 0x24]
call qword [sym.imp.CRYPT32.dll_CryptStringToBinaryA]
test eax, eax
je 0x1401ca320
mov r9d, 0x10000
lea rax, [rbp + 0x20]
xor r15d, r15d
xor r8d, r8d
mov qword [rsp + 0x28], r15
mov rcx, rdi
mov qword [rsp + 0x20], rax
lea edx, [r9 + 1]
call qword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x1401ca320
lea rax, [rsp + 0x68]
mov dword [rbp - 0x3c], 1
xor edx, edx
mov qword [rbp - 0x38], rax
mov rcx, rdi
call qword [sym.imp.CRYPT32.dll_CertCloseStore]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r9, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov r8d, 0x296
lea ecx, [rdx - 0x1f]
call fcn.1401ba1a0
mov rcx, qword [r13 + 0x2e8]
mov qword [rcx], rax
mov rax, qword [r13 + 0x2e8]
mov rcx, qword [rax]
test rcx, rcx
jne 0x1401ca4a9
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, r12
call fcn.1401b6e70
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1401ca6c6
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1401ca878
mov dword [rcx + 0x18], 1
lea rdx, str.Microsoft_Unified_Security_Protocol_Provider
mov rax, qword [r13 + 0x2e8]
xor r9d, r9d
mov rcx, qword [rax]
lea r8d, [r9 + 2]
lea rax, [rcx + 0x10]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x38], rcx
xor ecx, ecx
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
mov rax, qword [0x1404506d0]
call qword [rax + Ordinal_26]
mov rcx, qword [rsp + 0x68]
mov ebx, eax
test rcx, rcx
je 0x1401ca507
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
test ebx, ebx
je 0x1401ca57b
mov r8d, 0x80
lea rdx, [rbp + 0xf0]
mov ecx, ebx
call fcn.14019f910
mov r8, rax
lea rdx, str.schannel:_AcquireCredentialsHandle_failed:__s
mov rcx, r12
call fcn.1401b6e70
mov rcx, qword [r13 + 0x2e8]
lea r8, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov edx, 0x2b1
mov rcx, qword [rcx]
call fcn.1401ba370
mov rax, qword [r13 + 0x2e8]
mov qword [rax], r15
cmp ebx, 0x80090300
je 0x1401ca6c6
jmp 0x1401ca873
lea rdx, str.Unrecognized_parameter_passed_via_CURLOPT_SSLVERSION
mov rcx, r12
call fcn.1401b6e70
jmp 0x1401ca873
mov r14, qword [rbp + 0x18]
mov rbx, qword [rbp - 0x58]
lea r8, [rbp + 0x10]
mov rdx, rbx
mov ecx, 2
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jne 0x1401ca5ad
lea r8, [rbp + 0x40]
mov rdx, rbx
lea ecx, [rax + 0x17]
call qword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
je 0x1401ca5bc
lea rdx, str.schannel:_using_IP_address__SNI_is_not_supported_by_OS._n
mov rcx, r12
call fcn.1401b6ff0
mov rax, qword [r13 + 0x2e8]
cmp byte [rax + 0x6a], 0
je 0x1401ca63a
movabs rax, 0x312e312f70747468
mov dword [rbp + 0x74], 2
lea r8, str.http_1.1
mov qword [rbp + 0x7b], rax
lea rdx, str.schannel:_ALPN__offering__s_n
mov byte [rbp + 0x7a], 8
mov rcx, r12
call fcn.1401b6ff0
mov ecx, 9
call fcn.1401b97d0
movzx ecx, ax
mov word [rbp + 0x78], ax
add ecx, 6
lea rax, [rbp + 0x70]
mov dword [rbp + 0x70], ecx
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x70]
mov qword [rbp - 0x68], rax
mov rax, qword [r13 + 0x2e8]
mov dword [rsp + 0x70], reloc.WS2_32.dll_send
mov dword [rsp + 0x74], reloc.WS2_32.dll_select
jmp 0x1401ca651
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], 0
mov qword [rbp - 0x68], rcx
mov qword [rsp + 0x78], r15
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x6c], 1
mov qword [rbp + 0x38], rcx
lea r9, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov edx, Ordinal_27
mov dword [rbp - 0x70], r15d
mov qword [rbp - 0x80], 0
mov r8d, 0x309
mov qword [rbp - 0x78], r15
mov dword [rbp + 0x30], r15d
mov dword [rbp + 0x34], 1
lea ecx, [rdx - 0x17]
mov dword [rax + 0x5c], 0x811c
call fcn.1401ba1a0
mov rcx, qword [r13 + 0x2e8]
mov qword [rcx + 8], rax
mov r10, qword [r13 + 0x2e8]
mov r8, qword [r10 + 8]
test r8, r8
jne 0x1401ca6d0
lea rdx, str.schannel:_unable_to_allocate_memory
mov rcx, r12
call fcn.1401b6e70
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1401ca878
test rbx, rbx
je 0x1401ca6c6
cmp byte [r10 + 0x6a], 0
lea rax, [r8 + 0x10]
mov r9d, dword [r10 + 0x5c]
lea rcx, [r10 + 0x60]
mov qword [rsp + 0x58], rax
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x50], rcx
lea rax, [rbp + 0x30]
mov rcx, qword [r10]
cmove rdx, r15
mov qword [rsp + 0x48], rax
mov rax, qword [0x1404506d0]
mov qword [rsp + 0x40], r8
mov r8, rbx
mov dword [rsp + 0x38], r15d
mov qword [rsp + 0x30], rdx
xor edx, edx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], r15d
call qword [rax + Ordinal_50]
mov ebx, eax
cmp eax, 0x90312
je 0x1401ca7e7
mov rcx, qword [r13 + 0x2e8]
lea r8, str.C:Users_riskuDownloads_vcpkg_master_buildtreescurl_srcurl_7_68_0_cd669cc759lib_vtls_schannel.c
mov edx, 0x324
mov rcx, qword [rcx + 8]
call fcn.1401ba370
mov rcx, qword [r13 + 0x2e8]
mov r8d, 0x80
lea rdx, [rbp + 0xf0]
mov qword [rcx + 8], r15
cmp ebx, 0x80090300
je 0x1401ca7c1
cmp ebx, 0x80090322
je 0x1401ca79b
mov ecx, ebx
call fcn.14019f910
mov r8, rax
lea rdx, str.schannel:_initial_InitializeSecurityContext_failed:__s
mov rcx, r12
call fcn.1401b6e70
jmp 0x1401ca873
mov ecx, 0x80090322
call fcn.14019f910
mov r8, rax
lea rdx, str.schannel:_SNI_or_certificate_check_failed:__s
mov rcx, r12
call fcn.1401b6e70
mov eax, reloc.WLDAP32.dll_Ordinal_60
jmp 0x1401ca878
mov ecx, 0x80090300
call fcn.14019f910
mov r8, rax
lea rdx, str.schannel:_initial_InitializeSecurityContext_failed:__s
mov rcx, r12
call fcn.1401b6e70
mov eax, reloc.WLDAP32.dll_Ordinal_27
jmp 0x1401ca878
mov r9d, dword [rbp - 0x80]
lea rax, [rbp - 0x50]
mov r8, qword [rbp - 0x78]
mov rcx, rsi
mov rdx, qword [rsi + r14*8 + 0x258]
mov qword [rsp + 0x20], rax
call fcn.1401b7790
mov rdx, qword [0x1404506d0]
mov ebx, eax
mov rcx, qword [rbp - 0x78]
call qword [rdx + 0x80]
mov r8, qword [rbp - 0x50]
mov r9d, dword [rbp - 0x80]
test ebx, ebx
jne 0x1401ca864
cmp r9, r8
jne 0x1401ca864
mov rax, qword [r13 + 0x2e8]
mov dword [rax + 0x64], r15d
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x68], bl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x69], bl
mov rax, qword [r13 + 0x2e8]
mov byte [rax + 0x58], bl
xor eax, eax
mov dword [r13 + 0x2e4], 1
jmp 0x1401ca878
lea rdx, str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
mov rcx, r12
call fcn.1401b6e70
mov eax, reloc.WLDAP32.dll_Ordinal_35
mov rcx, qword [rbp + 0x170]
xor rcx, rsp
call fcn.14031ab80
mov rbx, qword [rsp + 0x2d0]
add rsp, 0x280
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret