Function at 0x14006c390
Capabilities:
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xc0
mov rax, qword [0x1402a7978]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov dword [rbp - 0x21], r9d
mov r13, r8
mov r15, rdx
mov r14, rcx
mov r12, qword [rbp + 0x77]
mov rax, qword [rbp + 0x7f]
mov qword [rbp - 0x19], rax
mov rax, qword [r12]
mov rax, qword [rax + 0x78]
mov qword [rbp - 0x11], rax
mov qword [rbp - 0x59], r12
mov rdx, r12
mov ecx, 0xd8
call fcn.14005d560
mov rdi, rax
mov qword [rbp - 0x51], rax
mov rax, qword [r15 + 0x18]
xor r8d, r8d
mov esi, r8d
mov ecx, r8d
test rax, rax
je 0x14006c414
mov rcx, qword [r15 + 0x10]
mov rsi, rax
lock inc dword [rax + 0xc]
movzx eax, byte [r15 + 8]
mov qword [rdi + 0x20], r8
lea rdx, [0x14006d930]
mov qword [rdi + 0x28], rdx
mov qword [rdi], r8
mov qword [rdi + 8], r8
mov qword [rdi + 0x10], r8
mov qword [rdi + 0x18], r8
mov dword [rdi + 0x30], r8d
mov byte [rdi + 0x38], al
mov qword [rdi + 0x40], r8
mov qword [rdi + 0x48], r8
test rsi, rsi
je 0x14006c457
mov qword [rdi + 0x40], rcx
mov qword [rdi + 0x48], rsi
lock inc dword [rsi + 0xc]
movups xmm0, xmmword [r13]
movups xmmword [rdi + 0x50], xmm0
lea rdx, [rdi + 0x60]
mov rax, qword [r12]
mov qword [r12], r8
mov qword [rdx], rax
lea rcx, [rdi + 0x68]
mov r8, qword [rbp - 0x19]
call fcn.14006d870
test rsi, rsi
je 0x14006c499
mov eax, 0xffffffff
lock xadd dword [rsi + 0xc], eax
cmp eax, 1
jne 0x14006c499
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + reloc.WS2_32.dll_htonl]
mov qword [rbp - 0x49], rdi
movups xmm0, xmmword [r13]
movups xmmword [rbp - 0x31], xmm0
movq qword [rbp - 1], xmm0
movq xmm0, qword [r13 + 8]
movd dword [rbp - 9], xmm0
mov rax, qword [r13 + 8]
mov qword [rbp + 7], rax
mov rbx, qword [rbp - 0x11]
test rbx, rbx
je 0x14006c52c
mov r8d, 0x58
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 0x11]
call fcn.14005d8e0
lea rax, vtable.asio::detail::cancellation_handler_class_asio::detail::win_iocp_socket_service_base::iocp_op_cancellation_.0
mov rdx, qword [rbp - 0x69]
mov qword [rdx], rax
mov rax, qword [r15]
xor esi, esi
mov qword [rdx + 0x28], rsi
lea r8, [0x14005e460]
mov qword [rdx + 0x30], r8
mov qword [rdx + 8], rsi
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], rsi
mov qword [rdx + 0x20], rsi
mov dword [rdx + 0x38], esi
mov qword [rdx + 0x40], rax
mov qword [rdx + 0x48], rdi
mov rax, qword [rbp - 0x61]
mov qword [rdx + 0x50], rax
mov qword [rbx], rdx
lea rdi, [rdx + 8]
mov rax, qword [rbp + 7]
jmp 0x14006c52e
xor esi, esi
test byte [r15 + 8], 0x10
je 0x14006c559
test rax, rax
jne 0x14006c559
mov rax, qword [r14 + 8]
lock inc dword [rax + 0x30]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.14005dcf0
jmp 0x14006c5fe
mov rax, qword [r14 + 8]
lock inc dword [rax + 0x30]
mov rcx, qword [r15]
cmp rcx, 0xffffffffffffffff
jne 0x14006c581
xor r9d, r9d
mov r8d, 0x2719
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.14005dcf0
jmp 0x14006c5fe
mov dword [rbp - 0x19], esi
mov eax, dword [rbp - 0x21]
mov dword [rbp - 0x21], eax
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x21]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x19]
mov r8d, 1
lea rdx, [rbp - 9]
call qword [sym.imp.WS2_32.dll_WSARecv]
mov ebx, eax
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x40
jne 0x14006c5c5
mov eax, 0x2746
jmp 0x14006c5d2
mov ecx, 0x274d
cmp eax, 0x4d2
cmove eax, ecx
test ebx, ebx
je 0x14006c5f2
cmp eax, 0x3e5
je 0x14006c5f2
mov r9d, dword [rbp - 0x19]
mov r8d, eax
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.14005dcf0
jmp 0x14006c5fe
mov rdx, rdi
mov rcx, qword [r14 + 8]
call fcn.14005dc60
mov qword [rbp - 0x49], rsi
mov qword [rbp - 0x51], rsi
lea rcx, [rbp - 0x59]
call fcn.14006d7c0
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.140156510
mov rbx, qword [rsp + 0x110]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret