Function at 0x14002f310
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, 0xa0
mov rax, qword [0x140091240]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov dword [rbp - 0x19], r9d
mov r15, r8
mov r14, rdx
mov rsi, rcx
mov r13, qword [rbp + 0x77]
mov rax, qword [rbp + 0x7f]
mov qword [rbp - 0x39], rax
xor r9d, r9d
mov qword [rbp - 0x11], r9
mov qword [rbp - 0x31], r13
lea rdx, [r13 + 0x40]
mov ecx, 0xf0
call fcn.140029530
mov rdi, rax
mov qword [rbp - 0x29], rax
xor r11d, r11d
mov qword [rbp - 0x41], r11
mov rax, qword [r14 + 0x18]
mov ecx, r11d
mov edx, r11d
mov r12d, r11d
mov r8d, r11d
mov ebx, r11d
mov r9d, r11d
test rax, rax
je 0x14002f3b0
mov rdx, qword [r14 + 0x10]
mov rcx, rax
mov qword [rbp - 0x41], rax
lock inc dword [rax + 0xc]
mov r12, rax
mov r8, rax
mov rbx, rax
mov r9, rax
movzx eax, byte [r14 + 8]
mov qword [rdi + 0x20], r11
lea r10, [0x14002f700]
mov qword [rdi + 0x28], r10
mov qword [rdi], r11
mov qword [rdi + 8], r11
mov qword [rdi + 0x10], r11
mov qword [rdi + 0x18], r11
mov dword [rdi + 0x30], r11d
mov byte [rdi + 0x38], al
mov qword [rdi + 0x40], r11
mov qword [rdi + 0x48], r11
test rcx, rcx
je 0x14002f3f9
mov qword [rdi + 0x40], rdx
mov qword [rdi + 0x48], rcx
lock inc dword [rcx + 0xc]
mov r12, r8
mov rbx, r9
movups xmm0, xmmword [r15]
movups xmmword [rdi + 0x50], xmm0
mov rax, qword [r13]
mov qword [rdi + 0x60], rax
mov rax, qword [r13 + 8]
mov qword [rdi + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rdi + 0x70], xmm0
mov qword [rdi + 0x80], r11
mov qword [rdi + 0x88], r11
movups xmm0, xmmword [r13 + 0x10]
movups xmmword [rdi + 0x70], xmm0
movups xmm1, xmmword [r13 + 0x20]
movups xmmword [rdi + 0x80], xmm1
mov qword [r13 + 0x20], r11
mov qword [r13 + 0x28], reloc.WS2_32.dll_ntohs
mov byte [r13 + 0x10], r11b
mov eax, dword [r13 + 0x30]
mov dword [rdi + 0x90], eax
mov rax, qword [r13 + 0x38]
mov qword [rdi + 0x98], rax
mov rax, qword [r13 + 0x40]
mov qword [rdi + 0xa0], rax
mov qword [rdi + 0xa8], r11
mov qword [rdi + 0xb0], r11
mov rax, qword [r13 + 0x48]
mov qword [rdi + 0xa8], rax
mov rax, qword [r13 + 0x50]
mov qword [rdi + 0xb0], rax
mov qword [r13 + 0x48], r11
mov qword [r13 + 0x50], r11
lea rcx, [rdi + 0xb8]
mov r9, qword [rbp - 0x39]
call fcn.140024cd0
test r12, r12
je 0x14002f4c5
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14002f4c5
mov rcx, qword [rbp - 0x41]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
mov qword [rbp - 0x21], rdi
movups xmm0, xmmword [r15]
movups xmmword [rbp - 0x49], xmm0
movq qword [rbp - 1], xmm0
movq xmm0, qword [r15 + 8]
movd dword [rbp - 9], xmm0
mov rax, qword [r15 + 8]
mov qword [rbp + 7], rax
mov rbx, qword [rbp - 0x11]
test rbx, rbx
je 0x14002f559
mov r8d, 0x58
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x11]
call fcn.140029580
lea rax, vtable.asio::detail::cancellation_handler_class_asio::detail::win_iocp_socket_service_base::iocp_op_cancellation_.0
mov rdx, qword [rbp - 0x49]
mov qword [rdx], rax
mov rax, qword [r14]
xor r9d, r9d
mov qword [rdx + 0x28], r9
lea r8, [0x140029210]
mov qword [rdx + 0x30], r8
mov qword [rdx + 8], r9
mov qword [rdx + 0x10], r9
mov qword [rdx + 0x18], r9
mov qword [rdx + 0x20], r9
mov dword [rdx + 0x38], r9d
mov qword [rdx + 0x40], rax
mov qword [rdx + 0x48], rdi
mov rax, qword [rbp - 0x41]
mov qword [rdx + 0x50], rax
mov qword [rbx], rdx
lea rdi, [rdx + 8]
mov rax, qword [rbp + 7]
jmp 0x14002f55c
xor r9d, r9d
test byte [r14 + 8], 0x10
je 0x14002f587
test rax, rax
jne 0x14002f587
mov rax, qword [rsi + 8]
lock inc dword [rax + 0x30]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rsi + 8]
call fcn.140029cc0
jmp 0x14002f62e
mov rax, qword [rsi + 8]
lock inc dword [rax + 0x30]
mov rcx, qword [r14]
cmp rcx, 0xffffffffffffffff
jne 0x14002f5af
xor r9d, r9d
mov r8d, 0x2719
mov rdx, rdi
mov rcx, qword [rsi + 8]
call fcn.140029cc0
jmp 0x14002f62e
mov dword [rbp - 0x11], r9d
mov eax, dword [rbp - 0x19]
mov dword [rbp - 0x19], eax
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x28], rdi
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x11]
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 0x14002f5f4
mov eax, 0x2746
jmp 0x14002f601
mov ecx, 0x274d
cmp eax, 0x4d2
cmove eax, ecx
test ebx, ebx
je 0x14002f621
cmp eax, 0x3e5
je 0x14002f621
mov r9d, dword [rbp - 0x11]
mov r8d, eax
mov rdx, rdi
mov rcx, qword [rsi + 8]
call fcn.140029cc0
jmp 0x14002f62e
mov rdx, rdi
mov rcx, qword [rsi + 8]
call fcn.140029db0
nop
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.140036b80
mov rbx, qword [rsp + 0xf0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret