Function at 0x140019a40
Capabilities:
Set socket configuration

Disassembly:
push rbx
push rsi
push r13
push r14
push r15
sub rsp, 0x60
mov rax, qword [0x140057c30]
xor rax, rsp
mov qword [rsp + 0x50], rax
movzx eax, word [rcx + 0x178]
mov rsi, rcx
movzx ebx, word [rcx + 0x1e8]
mov r14d, 4
mov ecx, 0x1ec
lea r13d, [r14 + 0xc]
lea r15d, [rcx + 4]
cmp ax, bx
jne 0x140019ad1
cmp bx, 0x17
mov r9d, 0x17c
mov edx, r15d
mov r8d, r14d
cmovne edx, ecx
cmove r8d, r13d
add rdx, rsi
mov ecx, 0x180
cmp ax, 0x17
cmovne ecx, r9d
add rcx, rsi
call fcn.140024d50
test eax, eax
jne 0x140019ad1
movzx eax, word [rsi + 0x1ea]
cmp word [rsi + 0x17a], ax
jne 0x140019ad1
lea eax, [r15 + 0x17]
jmp 0x140019b52
mov eax, dword [rsi + 0xb4]
cmp eax, 0x1000000
je 0x140019e29
cmp eax, 0x100000
je 0x140019e29
cmp eax, 2
je 0x140019e29
cmp eax, r14d
je 0x140019e29
mov rcx, qword [rsi + 0x78]
lea rdx, [rsi + 0x1cc]
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0xa0], rdi
cmp rcx, 0xffffffffffffffff
je 0x140019b6c
mov ebp, SQLFreeHandle
lea r8, [rsp + 0x30]
mov dword [rsp + 0x30], ebp
call qword [0x1400570f8]
cmp eax, 0xffffffff
jne 0x140019e22
mov eax, reloc.WS2_32.dll_ntohs
mov rbp, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140023730
add rsp, 0x60
pop r15
pop r14
pop r13
pop rsi
pop rbx
ret
movzx ebp, word [rdx]
mov eax, 1
mov rdx, qword [0x1400570c0]
cmp bp, 0x17
mov word [rsp + 0x34], ax
mov edi, 0x1d4
movzx eax, word [reloc.WS2_32.dll_accept]
mov ecx, edi
mov word [rsp + 0x36], ax
mov r8, r14
mov eax, 0x1d0
cmove r8, r13
cmovne ecx, eax
add rcx, rsi
call fcn.140024d50
test eax, eax
jne 0x140019c17
mov rdx, qword [0x1400570c0]
cmp bx, 0x17
mov eax, 0x1ec
mov rbp, r14
cmovne r15, rax
add r15, rsi
cmp bx, 0x17
mov rcx, r15
cmove rbp, r13
mov r8, rbp
call fcn.140024d50
test eax, eax
jne 0x140019bed
mov eax, 0x64
jmp 0x140019b42
cmp bx, 0x17
mov word [rsi + 0x1cc], bx
mov eax, 0x1d0
mov r8, rbp
cmovne rdi, rax
mov rdx, r15
lea rcx, [rsi + rdi]
call fcn.140024730
movzx ebp, word [rsi + 0x1cc]
cmp word [rsi + 0x1ce], 0
jne 0x140019c36
movzx eax, word [rsi + 0x1ea]
mov word [rsi + 0x1ce], ax
movzx ebp, word [rsi + 0x1cc]
mov eax, reloc.WS2_32.dll_socket
mov ecx, 2
cmp bp, ax
cmove ecx, eax
lea edx, [rax - 0x16]
lea r8d, [rax - 0x11]
call qword [0x1400570d0]
mov qword [rsi + 0x78], rax
mov rcx, rax
cmp rax, 0xffffffffffffffff
jne 0x140019c68
lea eax, [rcx + 0xc]
jmp 0x140019b42
mov rax, qword [rsi + 0x10]
mov edx, dword [rax + 0x9c]
call fcn.140003c50
mov rcx, qword [rsi + 0x78]
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov dword [rsp + 0x20], r14d
mov r8d, 0x80
call qword [0x140057110]
cmp word [rsi + 0x1b0], 0x17
mov edx, 0x1b4
mov ecx, 0x1b8
cmove r14, r13
cmovne ecx, edx
mov rdx, qword [0x1400570c0]
add rcx, rsi
mov r8, r14
call fcn.140024d50
test eax, eax
jne 0x140019d23
cmp word [rsi + 0x1cc], 0x17
mov rax, qword [rsi + 0x10]
jne 0x140019cf9
movups xmm0, xmmword [rax + 0xd4]
movups xmmword [rsi + 0x1b0], xmm0
movsd xmm1, qword [rax + 0xe4]
movsd qword [rsi + 0x1c0], xmm1
mov eax, dword [rax + 0xec]
jmp 0x140019d1d
movups xmm0, xmmword [rax + 0xf0]
movups xmmword [rsi + 0x1b0], xmm0
movsd xmm1, qword [rax + 0x100]
movsd qword [rsi + 0x1c0], xmm1
mov eax, dword [rax + 0x108]
mov dword [rsi + 0x1c8], eax
xor eax, eax
lea rdx, [rsi + 0x1b0]
mov word [rsi + 0x1b2], ax
mov r8d, r13d
cmp word [rsi + 0x1b0], 0x17
mov ebp, SQLFreeHandle
mov rcx, qword [rsi + 0x78]
cmove r8d, ebp
call qword [0x1400570e0]
cmp eax, 0xffffffff
jne 0x140019d5e
lea eax, [rbp - 0x10]
jmp 0x140019b42
mov eax, dword [rsi + 0xb4]
cmp eax, 0x100
jge 0x140019d73
test al, 1
je 0x140019e03
cmp word [rsi + 0x1cc], 0x17
lea r8, [rsp + 0x38]
mov r14, qword [rsi + 0x78]
mov ebx, r13d
mov rcx, r14
mov dword [rsp + 0x38], 1
mov edx, 0x8004667e
cmove ebx, ebp
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov r8d, ebx
lea rdx, [rsi + 0x1cc]
mov rcx, r14
call qword [0x1400570f0]
test eax, eax
je 0x140019dcf
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x140019dcf
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x70
jne 0x140019df9
xor eax, eax
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x40]
mov r8d, 0x1f40
mov word [rsp + 0x48], r13w
lea edx, [rax + 1]
call qword [0x140057118]
test eax, eax
jg 0x140019e03
mov eax, reloc.WS2_32.dll_listen
jmp 0x140019b42
mov rcx, qword [rsi + 0x78]
lea r8, [rsp + 0x30]
lea rdx, [rsi + 0x1b0]
mov dword [rsp + 0x30], ebp
call qword [0x140057100]
jmp 0x140019b34
xor eax, eax
jmp 0x140019b42
xor eax, eax
jmp 0x140019b52