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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0x100
mov rax, qword [0x140495598]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov r9d, dword [rdx + 0x58]
mov rdi, r8
mov eax, r9d
mov rbx, rdx
btr eax, 0x10
mov rsi, rcx
mov dword [rdx + 0x58], eax
mov r10d, dword [r8 + 0x40]
test r10d, r10d
jns 0x14016b9e6
mov ecx, r10d
call fcn.140170270
mov r11d, eax
cmp eax, 0x2738
je 0x14016b9e6
lea ecx, [rax - 0x2744]
test ecx, 0xfffffffd
je 0x14016b9db
bt r9d, 0xc
jae 0x14016bb2d
mov rcx, rbx
call fcn.14015d0a0
xor edi, edi
test dword [rbx + 0x58], 0x40000
je 0x14016b9bd
mov qword [rbp - 0x61], rdi
lea rax, [rbp - 0x69]
mov dword [rbp - 0x69], edi
jmp 0x14016b9c4
lea rax, [rbx + 0xf0]
movups xmm0, xmmword [rax]
mov ecx, r11d
movaps xmmword [rbp - 0x69], xmm0
call fcn.14016e340
movsxd rdx, eax
jmp 0x14016bb19
bt r9d, 0x12
jae 0x14016bb2d
bt r9d, 0x12
jb 0x14016ba11
mov rdx, qword [rdi + 0x48]
lea r9, [rbx + 0x100]
sar r10d, 0x1f
lea r8, [rbx + 0xf0]
and r10d, 2
mov dword [rsp + 0x20], r10d
jmp 0x14016bb24
bt r9d, 0xc
jae 0x14016bb2d
xor edi, edi
lea r8, [rbp - 0x69]
mov qword [rbp - 0x61], rdi
mov edx, 0x10000
mov dword [rbp - 0x69], edi
mov rcx, rbx
movaps xmm0, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x69], xmm0
call qword [rbx + 0x190]
cmp qword [rbp - 0x61], rdi
je 0x14016bb12
cmp dword [rbp - 0x69], edi
je 0x14016bb12
xor edx, edx
lea rcx, [rbp - 0x49]
mov r8d, 0x80
call fcn.140330340
mov rcx, qword [rbx + 0x70]
lea rax, [rbp - 0x55]
mov qword [rsp + 0x40], rdi
lea r9, [rbp - 0x59]
mov qword [rsp + 0x38], rdi
lea r8d, [rdi + 1]
mov qword [rsp + 0x30], rax
lea rdx, [rbp - 0x69]
lea rax, [rbp - 0x49]
mov dword [rbp - 0x55], 0x80
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x51]
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x51], edi
call qword [sym.imp.WS2_32.dll_WSARecvFrom]
cmp eax, 0xffffffff
je 0x14016bab7
mov edx, dword [rbp - 0x59]
lea r9, [rbp - 0x49]
jmp 0x14016bb1c
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
cmp eax, 0x2738
jne 0x14016bad7
mov edx, dword [rbp - 0x59]
lea r9, [rbp - 0x49]
mov dword [rsp + 0x20], 2
jmp 0x14016bb20
cmp edx, 0x2733
jne 0x14016bae3
xor edx, edx
jmp 0x14016bb19
add eax, 0xffffd8bc
mov rcx, rbx
test eax, 0xfffffffd
je 0x14016bb03
call fcn.14015d0a0
mov ecx, edx
call fcn.14016e340
movsxd rdx, eax
jmp 0x14016bb19
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
lea r8, [rbp - 0x69]
jmp 0x14016bb27
mov rdx, 0xfffffffffffff024
xor r9d, r9d
mov dword [rsp + 0x20], edi
lea r8, [rbp - 0x69]
mov rcx, rbx
call qword [rbx + 0x188]
mov ecx, dword [rbx + 0x58]
mov eax, ecx
and eax, 0x11000
cmp eax, 0x1000
jne 0x14016bb4c
mov rdx, rbx
mov rcx, rsi
call fcn.14016b7e0
mov ecx, dword [rbx + 0x58]
mov eax, dword [rbx + 0x78]
dec eax
mov dword [rbx + 0x78], eax
test cl, 1
je 0x14016bb74
test eax, eax
jne 0x14016bb74
test cl, 0x20
jne 0x14016bb74
or ecx, 0x20
mov dword [rbx + 0x58], ecx
mov rax, qword [rsi + 0x50]
mov qword [rbx + 0x50], rax
mov qword [rsi + 0x50], rbx
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1403115a0
mov rbx, qword [rsp + 0x138]
add rsp, 0x100
pop rdi
pop rsi
pop rbp
ret