Function at 0x1401e5030
Capabilities:
Connect socket

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x150
mov rdi, qword [rcx + 0x10]
mov rbx, rcx
mov rsi, rdx
mov r12, r9
test byte [rcx + 0x24], 1
je 0x1401e505e
mov byte [r12], 1
jmp 0x1401e5152
mov ebp, 1
test r8b, r8b
jne 0x1401e52d1
cmp qword [rdi + 0x98], 0xffffffffffffffff
mov byte [r9], 0
mov ebp, 7
jne 0x1401e5132
call sym.cf_socket_open
mov ebp, eax
test eax, eax
jne 0x1401e5224
test byte [rbx + 0x24], 1
jne 0x1401e5054
mov rdx, qword [rbx + 0x18]
mov rax, qword [rbx + 0x10]
or r13d, 0xffffffff
test byte [rdx + 0x2aa], 0x10
jne 0x1401e50c5
mov rcx, qword [rax + 0x98]
mov r8d, dword [rax + 0x14]
lea rdx, [rax + 0x18]
call qword [sym.imp.WS2_32.dll_connect]
mov r13d, eax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [rbx + 0x10]
mov rdx, rsi
mov r14d, eax
call sym.set_local_ip.isra.0
test rsi, rsi
je 0x1401e5114
test byte [rsi + 0xa0e], 0x20
je 0x1401e5114
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jle 0x1401e5114
mov eax, dword [rdi + 0x144]
lea r9, [rdi + 0x114]
mov rdx, rbx
mov rcx, rsi
lea r8, str.local_address__s_port__d...
mov dword [rsp + 0x20], eax
call sym.Curl_trc_cf_infof
inc r13d
jne 0x1401e5132
lea rdx, [rdi + 0xe0]
mov r8d, r14d
mov rcx, rsi
call sym.socket_connect_result
mov ebp, eax
jmp 0x1401e521c
mov r8, qword [rdi + 0x98]
xor r9d, r9d
or rdx, 0xffffffffffffffff
or rcx, 0xffffffffffffffff
call sym.Curl_socket_check
test eax, eax
jne 0x1401e5174
test rsi, rsi
jne 0x1401e5159
xor ebp, ebp
jmp 0x1401e52d1
test byte [rsi + 0xa0e], 0x20
je 0x1401e5152
mov rax, qword [rbx]
lea r8, str.not_connected_yet
cmp dword [rax + 0xc], 0
jle 0x1401e5152
jmp 0x1401e51ee
cmp eax, 2
je 0x1401e5186
mov rdx, qword [rbx + 0x18]
test byte [rdx + 0x2aa], 0x10
je 0x1401e51fe
mov rcx, qword [rdi + 0x98]
lea rdx, [rdi + 0x178]
call sym.verifyconnect
test al, al
je 0x1401e521c
lea rcx, [rsp + 0x40]
call sym.Curl_now
movups xmm0, xmmword [rsp + 0x40]
mov rcx, qword [rbx + 0x10]
mov rdx, rsi
movups xmmword [rdi + 0x158], xmm0
call sym.set_local_ip.isra.0
mov byte [r12], 1
or byte [rbx + 0x24], 1
test rsi, rsi
je 0x1401e5152
test byte [rsi + 0xa0e], 0x20
je 0x1401e5152
mov rax, qword [rbx]
cmp dword [rax + 0xc], 0
jle 0x1401e5152
lea r8, str.connected
mov rdx, rbx
mov rcx, rsi
call sym.Curl_trc_cf_infof
jmp 0x1401e5152
test al, 4
je 0x1401e521c
mov rcx, qword [rdi + 0x98]
lea rdx, [rdi + 0x178]
mov ebp, 7
call sym.verifyconnect
jmp 0x1401e5224
test ebp, ebp
je 0x1401e5152
cmp dword [rdi + 0x178], 0
je 0x1401e52a2
mov rcx, qword [rbx + 0x10]
mov rdx, rsi
call sym.set_local_ip.isra.0
mov ecx, dword [rdi + 0x178]
mov dword [rsi + 0xccc], ecx
call qword [sym.imp.WS2_32.dll_WSASetLastError]
test byte [rsi + 0xa0e], 0x20
je 0x1401e52a2
mov ecx, dword [rdi + 0x178]
lea rdx, [rsp + 0x50]
mov r8d, 0x100
call sym.Curl_strerror
mov r9d, dword [rdi + 0x110]
lea r8, [rdi + 0xe0]
mov rcx, rsi
mov qword [rsp + 0x30], rax
mov eax, dword [rdi + 0x144]
lea rdx, str.connect_to__s_port__u_from__s_port__d_failed:__s
mov dword [rsp + 0x28], eax
lea rax, [rdi + 0x114]
mov qword [rsp + 0x20], rax
call sym.Curl_infof
mov r9, qword [rdi + 0x98]
cmp r9, 0xffffffffffffffff
je 0x1401e52cc
mov rdx, qword [rbx + 0x18]
mov r8d, 1
mov rcx, rsi
call sym.socket_close
mov qword [rdi + 0x98], 0xffffffffffffffff
mov byte [r12], 0
mov eax, ebp
add rsp, 0x150
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret