Function at 0x180067f60
Capabilities:
Receive data
Receive data on socket
Set socket configuration

Disassembly:
mov r11, rsp
sub rsp, 0x118
mov rax, qword [0x18032d860]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov qword [r11 - 8], rbx
mov ebx, r8d
mov qword [r11 - 0x18], rsi
mov rsi, rcx
mov qword [r11 - 0x28], r12
mov r12, rdx
mov rdx, qword [rcx + 0x30]
test rdx, rdx
je 0x180067fa1
xor ecx, ecx
call fcn.180075b10
test byte [rsi + 0x38], 4
mov qword [rsp + 0xf8], rdi
je 0x180067fb9
mov edi, 0xffffffff
jmp 0x180068214
lea r8, [rsp + 0x40]
mov qword [rsp + 0xe8], r14
mov edx, 0x4004667f
mov dword [rsp + 0x40], 0x1000
mov rcx, r12
call qword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
js 0x180067fee
mov ecx, dword [rsp + 0x40]
lea eax, [rcx - 1]
cmp eax, 0xfff
jbe 0x180067ff3
mov ecx, 0x1000
test ebx, ebx
js 0x180067ffb
cmp ebx, ecx
jle 0x180067ffd
mov ebx, ecx
movsxd r14, ebx
mov r8d, 4
mov rdx, r14
mov rcx, rsi
call fcn.180069c60
cmp eax, 0xffffffff
jne 0x18006801d
mov edi, eax
jmp 0x18006820c
cmp qword [rsi + 0x30], 0
mov qword [rsp + 0x108], rbp
je 0x180068031
call fcn.180075ac0
mov edi, 0xffffffff
test ebx, ebx
jns 0x180068046
mov rbx, qword [rsp + 0x48]
mov ebp, edi
jmp 0x1800680df
mov rcx, qword [rsi + 0x10]
xor r10d, r10d
mov qword [rsp + 0xe0], r15
mov rbx, qword [rcx]
test byte [rbx + 0x20], 8
je 0x180068062
xor eax, eax
jmp 0x180068073
mov rax, qword [rbx + 8]
mov rdx, rbx
sub rax, qword [rbx + 0x18]
sub rax, qword [rbx + 0x10]
jne 0x180068076
mov rdx, qword [rbx]
test rax, rax
lea r11, [rsp + 0x58]
cmovne rbx, rcx
xor ebp, ebp
xor r15d, r15d
cmp r10, r14
jae 0x1800680d7
test byte [rdx + 0x20], 8
je 0x180068096
xor eax, eax
jmp 0x1800680a2
mov rax, qword [rdx + 8]
sub rax, qword [rdx + 0x18]
sub rax, qword [rdx + 0x10]
mov rcx, r14
sub rcx, r10
cmp rax, rcx
cmovbe rcx, rax
mov rax, qword [rdx + 0x28]
add rax, qword [rdx + 0x10]
add r10, rcx
add rax, qword [rdx + 0x18]
inc ebp
mov rdx, qword [rdx]
inc r15
mov qword [r11 - 8], rax
mov qword [r11], rcx
add r11, 0x10
cmp r15, 2
jl 0x180068087
mov r15, qword [rsp + 0xe0]
movsxd r8, ebp
test ebp, ebp
jle 0x180068112
xor edx, edx
nop dword [rax + rax]
mov rax, qword [rsp + rdx + 0x50]
mov qword [rsp + rdx + 0x98], rax
mov eax, dword [rsp + rdx + 0x58]
mov dword [rsp + rdx + 0x90], eax
lea rdx, [rdx + 0x10]
sub r8, 1
jne 0x1800680f0
mov qword [rsp + 0x30], 0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], 0
lea r9, [rsp + 0x48]
mov r8d, ebp
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x90]
mov dword [rsp + 0x40], 0
mov rcx, r12
call qword [sym.imp.WS2_32.dll_WSARecv]
test eax, eax
je 0x18006816b
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2745
jne 0x180068204
xor edi, edi
jmp 0x180068204
movsxd r14, dword [rsp + 0x48]
cmp r14d, edi
je 0x180068204
test r14d, r14d
jne 0x180068185
xor edi, edi
jmp 0x180068204
xor r9d, r9d
mov r8d, r14d
test ebp, ebp
jle 0x1800681ee
movabs r11, 0x7fffffffffffffff
nop dword [rax]
mov rax, qword [rbx]
test byte [rax + 0x20], 8
lea rdx, [rax + 0x18]
je 0x1800681b1
xor ecx, ecx
jmp 0x1800681c3
mov rcx, qword [rax + 8]
sub rcx, qword [rax + 0x10]
sub rcx, qword [rdx]
cmp rcx, r11
cmova rcx, r11
mov rax, qword [rdx]
movsxd r10, r8d
cmp rcx, r10
jge 0x1800681e4
add rax, rcx
sub r8d, ecx
inc r9d
mov qword [rdx], rax
mov rbx, qword [rbx]
cmp r9d, ebp
jl 0x1800681a0
jmp 0x1800681ee
add rax, r10
mov qword [rdx], rax
mov qword [rsi + 0x10], rbx
mov rax, r14
mov rcx, rsi
add qword [rsi + 0x18], rax
add qword [rsi + 0x20], rax
call fcn.18006a040
mov edi, r14d
mov rbp, qword [rsp + 0x108]
mov r14, qword [rsp + 0xe8]
mov rdx, qword [rsi + 0x30]
mov r12, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0x100]
mov rbx, qword [rsp + 0x110]
test rdx, rdx
je 0x18006823c
xor ecx, ecx
call fcn.180075b30
mov eax, edi
mov rdi, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.180227e50
add rsp, 0x118
ret