Function at 0x1400077c0
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 0x1400077ea
mov dword [r13], eax
mov qword [r9], rax
test rdx, rdx
je 0x140007a90
cmp qword [rcx + 8], 0xffffffffffffffff
je 0x140007a90
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 0x14000784d
mov rdi, qword [rcx + 0x460]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
add rax, rdi
mov qword [rbx + 0x468], rax
test rsi, rsi
je 0x140007a57
mov edi, 0x400000
nop dword [rax + rax]
cmp byte [rbx + 0x449], 0
jne 0x140007afe
mov rcx, qword [rbx + 8]
mov edx, 1
mov dword [rsp + 0x2d0], edx
cmp rcx, 0xffffffffffffffff
je 0x1400079e3
lea r8, [rsp + 0x2d0]
mov edx, 0x4004667f
call qword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
je 0x14000798b
mov rcx, rbx
call fcn.140003920
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 0x140007a1c
cmp dword [rsp + 0x2b8], edi
je 0x140007a1c
mov ebp, edi
mov rdi, r15
test r15d, r15d
jne 0x140007931
mov rdi, qword [rbx + 0x460]
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 + 0x468], rax
add qword [r12], r9
cmp byte [rsp + 0x2e0], bpl
je 0x140007a49
mov rcx, qword [rbx + 0x430]
test rcx, rcx
je 0x140007a49
mov r8, qword [rbx + 0x440]
mov edx, dword [rbx + 0x438]
call qword [sym.imp.USER32.dll_PostMessageA]
jmp 0x140007a49
mov edx, dword [rsp + 0x2d0]
test edx, edx
jne 0x1400078bf
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 0x1400078ba
mov edx, dword [rsp + 0x2d0]
test edx, edx
jne 0x1400078bf
cmp qword [rbx + 8], 0xffffffffffffffff
je 0x140007aa6
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, rax
mov rax, qword [rbx + 0x468]
cmp rcx, rax
ja 0x140007a9e
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140007a4e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r14d, eax
cmp eax, 0x2733
jne 0x140007ac9
inc ebp
cmp ebp, 0x7d0
je 0x140007af5
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edi, 0x400000
test rsi, rsi
jne 0x140007870
mov rdi, qword [rbx + 0x460]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
add rax, rdi
mov qword [rbx + 0x468], 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.140003920
lea rcx, [rbx + 0x22c]
mov r9, 0xffffffffffffffff
lea r8, str.raw___read_timeout
mov edx, 0x100
call fcn.14003c218
xor al, al
jmp 0x140007a70
mov eax, dword [rsp + 0x40]
lea rcx, [rbx + 0x22c]
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.140003a90
test rsi, rsi
je 0x140007a57
lea rcx, [rbx + 0x22c]
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.140003a90
test r13, r13
je 0x140007b30
mov dword [r13], r14d
mov rcx, rbx
call fcn.140003920
xor al, al
jmp 0x140007a70