Function at 0x140002cc0
Capabilities:
Get socket status
Receive data
Receive data on socket

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2a0
mov rax, qword [0x1400c1008]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov rdi, r8
mov qword [rsp + 0x68], r8
mov r14, rdx
mov rbx, rcx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x70], r12
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x80]
call sub.VCRUNTIME140.dll_memset
nop
test rbx, rbx
je 0x140002f54
cmp r14, 0xffffffffffffffff
je 0x140002f54
test rdi, rdi
je 0x140002f54
xor edx, edx
mov r8d, 0xa080
mov rcx, rdi
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x48], rdi
lea r13, [rdi + 0xa080]
mov qword [rsp + 0x58], r13
xor edx, edx
mov dword [rsp + 0x70], edx
mov dword [rsp + 0x74], 0xf4240
mov edi, edx
mov qword [rsp + 0x40], rdx
mov esi, 0xa080
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x60], rsi
mov r15d, edx
mov dword [rsp + 0x34], edx
nop word [rax + rax]
mov dword [rsp + 0x80], edx
mov eax, edx
mov dword [rsp + 0x38], edx
nop dword [rax]
mov ecx, eax
cmp eax, edx
jae 0x140002db8
cmp qword [rsp + rcx*8 + 0x88], r14
je 0x140002db8
inc eax
mov dword [rsp + 0x38], eax
jmp 0x140002da0
test eax, eax
jne 0x140002dd0
cmp edx, 0x40
jae 0x140002dd0
mov qword [rsp + rcx*8 + 0x88], r14
inc dword [rsp + 0x80]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [rsp + 0x80]
xor ecx, ecx
call qword [sym.imp.WS2_32.dll_select]
mov ebx, eax
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp ebx, 0xffffffff
je 0x140002f44
test ebx, ebx
je 0x140002f00
cmp ebx, 1
jne 0x140002f54
lea rdx, [rsp + 0x80]
mov rcx, r14
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
je 0x140002f54
mov rcx, qword [rsp + 0x48]
cmp rcx, r13
jae 0x140002ea8
mov rax, r13
sub rax, rcx
cmp rax, rsi
jb 0x140002ea8
lfence
xor r9d, r9d
mov rsi, qword [rsp + 0x50]
mov r8d, esi
mov rdx, qword [rsp + 0x48]
mov rcx, r14
call qword [sym.imp.WS2_32.dll_recv]
movsxd rbx, eax
lea ecx, [rbx + 1]
mov rdi, qword [rsp + 0x40]
cmp ecx, 1
jbe 0x140002e97
add rdi, rbx
mov qword [rsp + 0x40], rdi
mov rsi, qword [rsp + 0x60]
sub rsi, rdi
mov qword [rsp + 0x50], rsi
mov r13, qword [rsp + 0x58]
mov r15d, dword [rsp + 0x34]
mov r12d, dword [rsp + 0x30]
jmp 0x140002ee5
mov r13, qword [rsp + 0x58]
mov r15d, dword [rsp + 0x34]
mov r12d, dword [rsp + 0x30]
jmp 0x140002ead
mov ebx, 0xffffffff
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test rdi, rdi
jne 0x140002ebf
cmp eax, 0x2746
je 0x140002f1e
cmp eax, 0x274c
jne 0x140002ed3
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140002f54
test ebx, ebx
jne 0x140002efe
cmp r12d, 0xa
jae 0x140002f1e
inc r12d
mov dword [rsp + 0x30], r12d
test ebx, ebx
jle 0x140002f1e
cmp rdi, 0xa080
ja 0x140002f1e
test rsi, rsi
je 0x140002f1e
xor edx, edx
jmp 0x140002d90
jmp 0x140002f54
cmp rdi, 0xa05c
jbe 0x140002f22
movabs rcx, 0x4000000000000000
mov rax, qword [rsp + 0x68]
cmp qword [rax + 8], rcx
jae 0x140002f54
xor eax, eax
jmp 0x140002f60
cmp r15d, 4
jae 0x140002f42
inc r15d
mov dword [rsp + 0x34], r15d
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
xor edx, edx
jmp 0x140002d90
jmp 0x140002f54
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x140002f54
mov eax, 1
jmp 0x140002f60
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.140001ea0
lea r11, [rsp + 0x2a0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret