Function at 0x140007bb0
Capabilities:
Get socket status
Receive data
Receive data on socket
Set socket configuration

Disassembly:
push rbx
push rsi
push r12
push r13
sub rsp, 0x288
mov r13, qword [rsp + 0x2d0]
xor eax, eax
mov r12, r9
mov rsi, r8
mov rbx, rcx
test r13, r13
je 0x140007bda
mov dword [r13], eax
mov qword [r9], rax
test rdx, rdx
je 0x140007e80
cmp qword [rcx + 8], 0xffffffffffffffff
je 0x140007e80
mov qword [rsp + 0x2b0], rbp
mov ebp, eax
mov qword [rsp + 0x280], rdi
mov qword [rsp + 0x278], r14
mov r14d, eax
mov qword [rsp + 0x270], r15
mov r15d, dword [rsp + 0x2d8]
mov dword [rsp + 0x2c8], eax
mov edi, r15d
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x48], rdx
test r15d, r15d
jne 0x140007c3d
mov rdi, qword [rcx + 0x4e0]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
add rax, rdi
mov qword [rbx + 0x4e8], rax
test rsi, rsi
je 0x140007e47
mov edi, 0x400000
nop dword [rax + rax]
cmp byte [rbx + 0x4c9], 0
jne 0x140007eee
mov rcx, qword [rbx + 8]
mov edx, 1
mov dword [rsp + 0x2d0], edx
cmp rcx, 0xffffffffffffffff
je 0x140007dd3
lea r8, [rsp + 0x2d0]
mov edx, 0x4004667f
call qword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
je 0x140007d7b
mov rcx, rbx
call fcn.140003bf0
mov edx, 1
mov rcx, qword [rbx + 8]
lea r9, [rsp + 0x2b8]
cmp rsi, rdi
mov eax, esi
cmova eax, edi
cmp eax, edx
cmova eax, edx
xor edi, edi
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x30], rdi
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x28], rdi
lea r8d, [rdi + 1]
mov dword [rsp + 0x2b8], edi
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_WSARecv]
test eax, eax
jne 0x140007e0c
cmp dword [rsp + 0x2b8], edi
je 0x140007e0c
mov ebp, edi
mov rdi, r15
test r15d, r15d
jne 0x140007d21
mov rdi, qword [rbx + 0x4e0]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov r9d, dword [rsp + 0x2b8]
add rax, rdi
add qword [rsp + 0x48], r9
sub rsi, r9
mov qword [rbx + 0x4e8], rax
add qword [r12], r9
cmp byte [rsp + 0x2e0], bpl
je 0x140007e39
mov rcx, qword [rbx + 0x4b0]
test rcx, rcx
je 0x140007e39
mov r8, qword [rbx + 0x4c0]
mov edx, dword [rbx + 0x4b8]
call qword [sym.imp.USER32.dll_PostMessageA]
jmp 0x140007e39
mov edx, dword [rsp + 0x2d0]
test edx, edx
jne 0x140007caf
mov rax, qword [rbx + 8]
xor r9d, r9d
mov qword [rsp + 0x68], rax
xor r8d, r8d
lea rax, [rsp + 0x50]
mov dword [rsp + 0x50], edx
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov dword [rsp + 0x60], 1
mov dword [rsp + 0x54], 0x3e8
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
jg 0x140007caa
mov edx, dword [rsp + 0x2d0]
test edx, edx
jne 0x140007caf
cmp qword [rbx + 8], 0xffffffffffffffff
je 0x140007e96
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
mov rax, qword [rbx + 0x4e8]
cmp rcx, rax
ja 0x140007e8e
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140007e3e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r14d, eax
cmp eax, 0x2733
jne 0x140007eb9
inc ebp
cmp ebp, 0x7d0
je 0x140007ee5
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edi, 0x400000
test rsi, rsi
jne 0x140007c60
mov rdi, qword [rbx + 0x4e0]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
add rax, rdi
mov qword [rbx + 0x4e8], rax
mov al, 1
mov r14, qword [rsp + 0x278]
mov rdi, qword [rsp + 0x280]
mov rbp, qword [rsp + 0x2b0]
mov r15, qword [rsp + 0x270]
add rsp, 0x288
pop r13
pop r12
pop rsi
pop rbx
ret
mov rcx, rbx
call fcn.140003bf0
lea rcx, [rbx + 0x2ac]
mov r9, 0xffffffffffffffff
lea r8, str.raw___read_timeout
mov edx, 0x100
call fcn.14003c5c8
xor al, al
jmp 0x140007e60
mov eax, dword [rsp + 0x40]
lea rcx, [rbx + 0x2ac]
mov dword [rsp + 0x28], eax
lea r9, str.raw___receive_failed___u_error___u_bytes_requested
mov edx, 0xff
mov dword [rsp + 0x20], r14d
mov r8, 0xffffffffffffffff
call fcn.140003dd0
test rsi, rsi
je 0x140007e47
lea rcx, [rbx + 0x2ac]
mov qword [rsp + 0x28], rsi
lea r9, str.raw___read_failed___u_error___zu_bytes_needed
mov dword [rsp + 0x20], r14d
mov edx, 0xff
mov r8, 0xffffffffffffffff
call fcn.140003dd0
test r13, r13
je 0x140007f20
mov dword [r13], r14d
mov rcx, rbx
call fcn.140003bf0
xor al, al
jmp 0x140007e60