Function at 0x140003b80
Capabilities:
Get socket status
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 - 0x3d0]
sub rsp, 0x4d0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
xor edi, edi
mov rsi, rdx
mov rbx, rcx
test rdx, rdx
je 0x140003bde
mov dword [rdx], edi
mov qword [rdx + 8], rdi
mov qword [rdx + 0x18], rdi
call fcn.1400011a0
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
je 0x140003d47
call fcn.140005520
mov edx, eax
mov dword [rbx + 0x50], eax
add eax, 0x3e8
mov dword [rsp + 0x50], eax
mov ecx, dword [rbx + 0x24]
mov eax, edx
sub eax, ecx
sub ecx, edx
cmp eax, 0x5265c00
cmovb ecx, eax
cmp ecx, 0x3e8
jb 0x140003c12
mov rcx, rbx
call fcn.140005170
mov r8d, 1
mov rdx, rsi
mov rcx, rbx
call fcn.1400036c0
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
je 0x140003d47
xor ecx, ecx
lea rdi, [rbx + 0x2ac8]
test rdi, rdi
lea r12, [rsp + 0x6c]
lea r13, [rbp - 0x80]
mov r14d, ecx
cmove r12, rcx
lea r15, [rbx + 0xac8]
cmove r13, rcx
nop dword [rax]
mov eax, dword [rbx + 0x28]
lea r9, [rsp + 0x70]
mov qword [rsp + 0x40], rcx
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x38], rcx
mov r8d, 1
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0x68]
mov dword [rsp + 0x68], ecx
mov rcx, qword [rbx]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x60], r15
mov dword [rsp + 0x6c], 0x1c
call qword [sym.imp.WS2_32.dll_WSARecvFrom]
cmp eax, 0xffffffff
je 0x140003d81
test dword [rsp + 0x68], 0x8000
jne 0x140003eda
test rdi, rdi
je 0x140003ce9
movups xmm0, xmmword [rbp - 0x78]
movzx ecx, word [rbp - 0x7e]
movups xmmword [rdi], xmm0
call qword [sym.imp.WS2_32.dll_ntohs]
mov word [rdi + 0x10], ax
movzx eax, word [rbp - 0x68]
mov word [rdi + 0x12], ax
movsxd rcx, dword [rsp + 0x70]
cmp ecx, 0xfffffffe
je 0x140003d6a
test ecx, ecx
js 0x140003eda
je 0x140003d9a
add dword [rbx + 0x2af8], ecx
inc dword [rbx + 0x2afc]
mov rax, qword [rbx + 0x2b00]
mov qword [rbx + 0x2ae0], r15
mov qword [rbx + 0x2ae8], rcx
test rax, rax
je 0x140003d51
mov rdx, rsi
mov rcx, rbx
call rax
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
jne 0x140003d51
test rsi, rsi
je 0x140003d6a
cmp dword [rsi], 0
je 0x140003d6a
mov eax, 1
jmp 0x140003edf
mov rdx, rsi
mov rcx, rbx
call fcn.140002360
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
je 0x140003d47
inc r14d
cmp r14d, 0x100
jge 0x140003eda
xor ecx, ecx
jmp 0x140003c60
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, eax
sub ecx, 0x2733
je 0x140003d9a
cmp ecx, 0x13
jne 0x140003eda
mov r8d, 1
mov rdx, rsi
mov rcx, rbx
call fcn.1400036c0
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
je 0x140003d47
test rsi, rsi
je 0x140003ddb
mov rdx, rsi
mov rcx, rbx
call fcn.1400011a0
cmp eax, 0xffffffff
je 0x140003eda
cmp eax, 1
je 0x140003d47
mov eax, dword [rbx + 0x50]
mov r15d, dword [rsp + 0x50]
sub eax, r15d
cmp eax, 0x5265c00
jb 0x140003ed6
call fcn.140005520
mov ecx, eax
mov dword [rbx + 0x50], eax
sub ecx, r15d
mov edx, eax
cmp ecx, 0x5265c00
jb 0x140003ed6
mov r14, qword [rbx]
lea r8, [rbp + 0x1b0]
mov eax, r15d
mov qword [rbp - 0x58], r14
sub eax, edx
mov dword [rbp - 0x60], 1
cmp eax, 0x5265c00
cmovb ecx, eax
movabs rax, 0x624dd2f1a9fbe77
mul rcx
mov eax, ecx
xor edi, edi
sub rax, rdx
mov dword [rbp + 0x1b0], edi
shr rax, 1
xor r9d, r9d
add rax, rdx
lea rdx, [rbp - 0x60]
shr rax, 9
mov dword [rsp + 0x78], eax
imul eax, eax, 0x3e8
sub ecx, eax
imul eax, ecx, 0x3e8
lea ecx, [r14 + 1]
mov dword [rsp + 0x7c], eax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
js 0x140003eda
je 0x140003ece
lea rdx, [rbp + 0x1b0]
mov rcx, r14
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
lea rdx, [rbp - 0x60]
mov rcx, r14
test eax, eax
setne dil
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
mov eax, 2
cmovne edi, eax
call fcn.140005520
mov dword [rbx + 0x50], eax
mov edx, eax
test dil, 2
jne 0x140003bf1
xor eax, eax
jmp 0x140003edf
call fcn.140005520
mov dword [rbx + 0x50], eax
xor eax, eax
jmp 0x140003edf
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.140005a00
mov rbx, qword [rsp + 0x520]
add rsp, 0x4d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret