Function at 0x14024d0e0
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 0x14024d31b
movzx ebx, word [rdi]
lea rcx, [rbp + 0x1b0]
mov edx, ebx
mov r8d, 1
call fcn.14024d5d0
cmp qword [rbp + 0x1b0], 0
mov rsi, qword [rbp + 0x1b8]
jne 0x14024d2fd
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 0x14024d18e
test bx, bx
je 0x14024d1a3
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 0x14024d1bb
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
jmp 0x14024d2f1
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 0x14024d1f5
xor ebx, ebx
jmp 0x14024d205
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 0x14024d25d
test rbx, rbx
je 0x14024d485
mov r12d, ebx
and r12d, 3
lea rax, [0x14024d5b8]
movsxd rcx, dword [rax + r12*4]
add rcx, rax
jmp rcx
movzx eax, byte [rbx + 0x10]
cmp al, 0xd
je 0x14024d359
mov rdi, rbx
jmp 0x14024d2f1
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 0x14024d2f1
cmp r12d, 1
jne 0x14024d2f1
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 0x14024d2df
mov r8, qword [rbx]
cmp qword [rax + 0x10], 0x11
jb 0x14024d2d0
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 0x14024d11b
movzx eax, byte [rbx + 0xf]
cmp al, 0xd
jne 0x14024d255
jmp 0x14024d359
mov rcx, rbx
shr rcx, 0x20
call fcn.14023d1d0
cmp al, 0xd
jne 0x14024d255
jmp 0x14024d359
mov rax, rbx
shr rax, 0x20
cmp eax, 0xd
jne 0x14024d255
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 0x14024d3ec
cmp eax, 0xffffffff
jne 0x14024d3f5
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
mov edi, eax
shl rdi, 0x20
or rdi, 2
jmp 0x14024d274
lea rdi, str.connection_timed_out
jmp 0x14024d404
mov r14b, 1
cmp dword [rbp - 0x58], 1
jne 0x14024d490
xor edi, edi
cmp r12d, 1
jne 0x14024d47c
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 0x14024d46a
mov r8, qword [rbx]
cmp qword [rax + 0x10], 0x11
jb 0x14024d45b
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 0x14024d2f1
mov qword [r15 + 8], rsi
xor eax, eax
jmp 0x14024d306
mov rcx, rsi
call fcn.14024d6e0
mov rdi, rdx
test rax, rax
jne 0x14024d274
test rdi, rdi
jne 0x14024d274
jmp 0x14024d402