Function at 0x14024d0f0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x460
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x3d8], 0xfffffffffffffffe
mov rdi, rdx
mov r15, rcx
mov rax, qword [0x14051f208]
cmp rax, 3
jne 0x14024d32b
movzx ebx, word [rdi]
lea rcx, [rbp + 0x1b0]
mov edx, ebx
mov r8d, 1
call fcn.14024d5e0
cmp qword [rbp + 0x1b0], 0
mov rsi, qword [rbp + 0x1b8]
jne 0x14024d30d
mov dword [rbp + 0x1b0], 1
lea r8, [rbp + 0x1b0]
mov rcx, rsi
mov edx, 0x8004667e
call qword [sym.imp.ws2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x14024d19e
test bx, bx
je 0x14024d1b3
mov ecx, dword [rdi + 0x14]
movzx eax, word [rdi + 0x1c]
rol ax, 8
mov edx, dword [rdi + 0x18]
movups xmm0, xmmword [rdi + 4]
mov r8d, 0x1c
mov bx, 0x17
jmp 0x14024d1cb
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
jmp 0x14024d301
movzx eax, word [rdi + 6]
rol ax, 8
mov ecx, dword [rdi + 2]
xorps xmm0, xmm0
mov r8d, 0x10
mov bx, 2
mov word [rbp + 0x1b0], bx
mov word [rbp + 0x1b2], ax
mov dword [rbp + 0x1b4], ecx
movups xmmword [rbp + 0x1b8], xmm0
mov dword [rbp + 0x1c8], edx
lea rdx, [rbp + 0x1b0]
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_connect]
cmp eax, 0xffffffff
je 0x14024d205
xor ebx, ebx
jmp 0x14024d215
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov ebx, eax
shl rbx, 0x20
or rbx, 2
mov dword [rbp + 0x1b0], 0
lea r8, [rbp + 0x1b0]
mov rcx, rsi
mov edx, 0x8004667e
call qword [sym.imp.ws2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x14024d26d
test rbx, rbx
je 0x14024d495
mov r12d, ebx
and r12d, 3
lea rax, [0x14024d5c8]
movsxd rcx, dword [rax + r12*4]
add rcx, rax
jmp rcx
movzx eax, byte [rbx + 0x10]
cmp al, 0xd
je 0x14024d369
mov rdi, rbx
jmp 0x14024d301
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
mov r12d, ebx
and r12d, 3
test rbx, rbx
je 0x14024d301
cmp r12d, 1
jne 0x14024d301
mov qword [rbp + 0x3c0], rsi
lea rax, [rbx - 1]
mov qword [rbp + 0x3d0], rax
mov rcx, qword [rbx - 1]
mov rax, qword [rbx + 7]
mov qword [rbp + 0x3c8], rbx
call qword [rax]
mov rax, qword [rbp + 0x3c8]
mov rax, qword [rax + 7]
cmp qword [rax + 8], 0
mov rsi, qword [rbp + 0x3c0]
mov rbx, qword [rbp + 0x3d0]
je 0x14024d2ef
mov r8, qword [rbx]
cmp qword [rax + 0x10], 0x11
jb 0x14024d2e0
mov r8, qword [r8 - 8]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_closesocket]
mov rsi, rdi
mov qword [r15 + 8], rsi
mov eax, 1
mov qword [r15], rax
add rsp, 0x460
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
call fcn.1403b9df0
jmp 0x14024d12b
movzx eax, byte [rbx + 0xf]
cmp al, 0xd
jne 0x14024d265
jmp 0x14024d369
mov rcx, rbx
shr rcx, 0x20
call fcn.14023d1e0
cmp al, 0xd
jne 0x14024d265
jmp 0x14024d369
mov rax, rbx
shr rax, 0x20
cmp eax, 0xd
jne 0x14024d265
mov qword [rbp + 0x3b8], 5
mov qword [rbp - 0x58], 1
mov qword [rbp - 0x50], rsi
lea rcx, [rbp - 0x48]
xor r14d, r14d
mov r8d, 0x1f8
xor edx, edx
call fcn.1403ac180
mov qword [rbp + 0x1b0], 1
mov qword [rbp + 0x1b8], rsi
lea rcx, [rbp + 0x1c0]
mov r8d, 0x1f8
xor edx, edx
call fcn.1403ac180
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x58]
lea r9, [rbp + 0x1b0]
mov ecx, 1
xor edx, edx
call qword [sym.imp.ws2_32.dll_select]
test eax, eax
je 0x14024d3fc
cmp eax, 0xffffffff
jne 0x14024d405
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
jmp 0x14024d284
lea rdi, str.connection_timed_out
jmp 0x14024d414
mov r14b, 1
cmp dword [rbp - 0x58], 1
jne 0x14024d4a0
xor edi, edi
cmp r12d, 1
jne 0x14024d48c
mov qword [rbp + 0x3c0], rsi
lea rax, [rbx - 1]
mov qword [rbp + 0x3d0], rax
mov rcx, qword [rbx - 1]
mov rax, qword [rbx + 7]
mov qword [rbp + 0x3c8], rbx
call qword [rax]
mov rax, qword [rbp + 0x3c8]
mov rax, qword [rax + 7]
cmp qword [rax + 8], 0
mov rsi, qword [rbp + 0x3c0]
mov rbx, qword [rbp + 0x3d0]
je 0x14024d47a
mov r8, qword [rbx]
cmp qword [rax + 0x10], 0x11
jb 0x14024d46b
mov r8, qword [r8 - 8]
mov rcx, qword [0x14051f200]
xor edx, edx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
mov rcx, qword [0x14051f200]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.DLL_HeapFree]
test r14b, r14b
je 0x14024d301
mov qword [r15 + 8], rsi
xor eax, eax
jmp 0x14024d316
mov rcx, rsi
call fcn.14024d6f0
mov rdi, rdx
test rax, rax
jne 0x14024d284
test rdi, rdi
jne 0x14024d284
jmp 0x14024d412