Function at 0x14010c340
Capabilities:
Connect socket
Set socket configuration

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x450
mov ebx, r9d
mov r14, r8
mov r15, rdx
mov rsi, rcx
mov dword [rsp + 0x40], 1
mov rdi, qword [rcx]
lea r8, [rsp + 0x40]
mov rcx, rdi
mov edx, 0x8004667e
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x14010c3a2
cmp word [r15], 0
je 0x14010c3b7
movups xmm0, xmmword [r15 + 4]
mov eax, dword [r15 + 0x14]
mov edx, dword [r15 + 0x18]
movzx ecx, word [r15 + 0x1c]
mov r8d, 0x1c
mov r9w, 0x17
jmp 0x14010c3ce
call sub.WS2_32.dll_WSAGetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
jmp 0x14010c5da
mov eax, dword [r15 + 2]
movzx ecx, word [r15 + 6]
mov r8d, 0x10
mov r9w, 2
xorps xmm0, xmm0
rol cx, 8
mov word [rsp + 0x40], r9w
mov word [rsp + 0x42], cx
mov dword [rsp + 0x44], eax
movups xmmword [rsp + 0x48], xmm0
mov dword [rsp + 0x58], edx
lea rdx, [rsp + 0x40]
mov rcx, rdi
call sub.WS2_32.dll_connect
cmp eax, 0xffffffff
je 0x14010c401
xor r15d, r15d
jmp 0x14010c411
call sub.WS2_32.dll_WSAGetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x40], 0
lea r8, [rsp + 0x40]
mov rcx, rdi
mov edx, 0x8004667e
call sub.WS2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x14010c457
test r15, r15
je 0x14010c474
mov eax, r15d
and eax, 3
lea rcx, [0x14018bdb0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx eax, byte [r15 + 0x10]
jmp 0x14010c481
call sub.WS2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
test r15, r15
jne 0x14010c5cd
jmp 0x14010c5d7
xor r15d, r15d
jmp 0x14010c5da
movzx eax, byte [r15 + 0xf]
cmp al, 0xd
je 0x14010c49c
jmp 0x14010c5da
mov rax, r15
shr rax, 0x20
cmp eax, 0x2733
jne 0x14010c5da
test r14, r14
jne 0x14010c4d5
test ebx, ebx
jne 0x14010c4d5
lea rsi, [0x14018c350]
jmp 0x14010c5cd
mov rax, r15
shr rax, 0x20
cmp eax, 0x28
ja case.default.0x14010c4cf
lea rcx, [0x14018bdc0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
xor eax, eax
jmp 0x14010c481
cmp r14, 0x7fffffff
mov eax, 0x7fffffff
cmovb rax, r14
mov ecx, ebx
imul rcx, rcx, 0x10624dd3
shr rcx, 0x26
mov dword [rsp + 0x38], eax
test rax, rax
mov eax, 1
mov edx, ecx
cmove edx, eax
cmp ebx, 0x3e8
cmovae edx, ecx
mov dword [rsp + 0x3c], edx
lea rcx, [rsp + 0x50]
mov r8d, 0x1f8
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x248], 1
mov qword [rsp + 0x250], rdi
lea rcx, [rsp + 0x258]
mov r8d, 0x1f8
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x40], 1
mov qword [rsp + 0x48], rdi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x248]
lea r9, [rsp + 0x40]
mov ecx, 1
xor edx, edx
call sub.WS2_32.dll_select
test eax, eax
je 0x14010c596
cmp eax, 0xffffffff
jne 0x14010c59f
call sub.WS2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
jmp 0x14010c5cd
lea r15, str.connection_timed_out
jmp 0x14010c5ac
cmp dword [rsp + 0x248], 1
jne 0x14010c5b8
xor r15d, r15d
lea rcx, [rsp + 0x30]
call sym._ZN4core3ptr42drop_in_place_LT_std..io..error..Error_GT_17h5e3c89d72f40d3dcE.llvm.7997682821320084952
jmp 0x14010c5da
mov rcx, rsi
call sym.std::sys::windows::net::Socket::take_error::hf94f059dbdf95c8a
mov rsi, rdx
test rax, rax
jne 0x14010c5cd
test rsi, rsi
je 0x14010c5a9
lea rcx, [rsp + 0x30]
call sym._ZN4core3ptr42drop_in_place_LT_std..io..error..Error_GT_17h5e3c89d72f40d3dcE.llvm.7997682821320084952
mov r15, rsi
mov rax, r15
add rsp, 0x450
add byte [rbx + 0x5f], bl
add byte [rbx + 0x5f], bl
pop rsi
pop r14
pop r15
pop rdi
pop rdi
ret
mov al, 0x29
jmp 0x14010c481
invalid
invalid
invalid
mov al, 1
jmp 0x14010c481
invalid
invalid
invalid
mov al, 2
jmp 0x14010c481
invalid
invalid
invalid
mov al, 3
jmp 0x14010c481
invalid
invalid
invalid
mov al, 4
jmp 0x14010c481
invalid
invalid
invalid
mov al, 5
jmp 0x14010c481
invalid
invalid
invalid
mov al, 6
jmp 0x14010c481
invalid
invalid
invalid
mov al, 7
jmp 0x14010c481
invalid
invalid
invalid
mov al, 8
jmp 0x14010c481
invalid
invalid
invalid
mov al, 9
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xa
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xb
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xc
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xd
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xe
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0xf
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x10
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x11
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x12
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x13
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x14
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x15
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x16
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x17
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x18
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x19
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1a
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1b
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1c
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1d
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1e
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x1f
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x20
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x21
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x22
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x23
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x24
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x25
jmp 0x14010c481
invalid
invalid
invalid
mov al, 0x26
jmp 0x14010c481
mov al, 0x27
jmp 0x14010c481
mov al, 0x28
jmp 0x14010c481