Function at 0x1400325f0
Capabilities:
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r13
push r15
lea rbp, [rsp - 0x1d0]
sub rsp, 0x2d0
mov rsi, rcx
mov ecx, 8
mov r15, r8
mov rbx, rdx
call fcn.140016c20
xor edi, edi
or r12, 0xffffffffffffffff
mov r13, rax
test rax, rax
je 0x140032637
mov qword [rax], r12
jmp 0x14003263a
mov r13, rdi
mov edx, 2
xor r8d, r8d
mov ecx, edx
call qword [sym.imp.WSOCK32.dll_socket]
mov qword [r13], rax
cmp rax, 0xffffffffffffffff
je 0x14003268b
mov rdx, rbx
mov rcx, r13
call fcn.140032150
test eax, eax
jne 0x140032692
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, qword [r13]
mov rcx, r13
cmp rdx, 0xffffffffffffffff
mov ebx, eax
cmovne rdx, r12
mov qword [r13], rdx
call fcn.140015e1c
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x140032837
xor edx, edx
lea rcx, [rbp - 0x70]
lea r8d, [rdx + 0x30]
call fcn.140018210
lea rcx, [rsp + 0x30]
mov byte [rbp - 0x70], 0x1b
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
movzx r8d, word [rsp + 0x36]
movzx edx, word [rsp + 0x32]
movzx ecx, word [rsp + 0x30]
call fcn.140031fa0
sub eax, 0x24d9ad
cdqe
lea rcx, [rax + rax*2]
movzx eax, word [rsp + 0x38]
lea rbx, [rax + rcx*8]
movzx eax, word [rsp + 0x3a]
lea rcx, [0x140068f80]
imul rbx, rbx, 0x3c
add rbx, rax
movzx eax, word [rsp + 0x3c]
imul rbx, rbx, 0x3c
add rbx, rax
movzx eax, word [rsp + 0x3e]
mov ecx, dword [rcx + rax*4]
shl rbx, 0x20
add rbx, rcx
mov rcx, rbx
shr rcx, 0x20
call qword [sym.imp.WSOCK32.dll_htonl]
mov ecx, ebx
mov dword [rbp + 0x218], eax
call qword [sym.imp.WSOCK32.dll_htonl]
mov rcx, qword [r13]
xor r9d, r9d
mov dword [rbp + 0x21c], eax
mov rax, qword [rbp + 0x218]
lea r8d, [r9 + 0x30]
lea rdx, [rbp - 0x70]
mov qword [rbp - 0x48], rax
call qword [sym.imp.WSOCK32.dll_send]
cmp eax, 0xffffffff
jne 0x14003276c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r13
mov ebx, eax
call fcn.140013c70
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x140032837
mov ecx, dword [rsi]
mov eax, 0x10624dd3
xor r9d, r9d
xor r8d, r8d
mov dword [rbp - 0x40], 1
mul ecx
mov rax, qword [r13]
shr edx, 6
mov dword [rbp + 0x218], edx
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x218]
imul edx, edx, 0x3e8
sub ecx, edx
lea rdx, [rbp - 0x40]
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x21c], ecx
xor ecx, ecx
call qword [sym.imp.WSOCK32.dll_select]
cmp eax, 0xffffffff
je 0x14003293d
test eax, eax
setne dil
test edi, edi
je 0x14003293d
lea rcx, [rbp + 0x218]
mov qword [rsp + 0x300], r14
call fcn.140032280
xor edx, edx
lea rcx, [rsp + 0x40]
mov rax, qword [rax]
lea r8d, [rdx + 0x44]
mov qword [r15 + 0x20], rax
call fcn.140018210
mov rcx, qword [r13]
xor r9d, r9d
lea rdx, [rsp + 0x40]
lea r8d, [r9 + 0x44]
call qword [sym.imp.WSOCK32.dll_recv]
test eax, eax
jne 0x140032853
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r13
mov ebx, eax
call fcn.140013c70
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov r14, qword [rsp + 0x300]
lea r11, [rsp + 0x2d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret
movzx eax, byte [rsp + 0x41]
mov ecx, dword [rsp + 0x5c]
mov dword [r15 + 4], eax
movzx eax, byte [rsp + 0x40]
shr eax, 6
mov dword [r15], eax
call qword [sym.imp.WSOCK32.dll_ntohl]
mov ecx, dword [rsp + 0x58]
mov ebx, eax
call qword [sym.imp.WSOCK32.dll_ntohl]
mov ecx, dword [rsp + 0x64]
mov r11d, eax
shl r11, 0x20
add r11, rbx
mov qword [r15 + 8], r11
call qword [sym.imp.WSOCK32.dll_ntohl]
mov ecx, dword [rsp + 0x60]
mov ebx, eax
call qword [sym.imp.WSOCK32.dll_ntohl]
mov ecx, dword [rsp + 0x6c]
mov r11d, eax
shl r11, 0x20
add r11, rbx
mov qword [r15 + 0x10], r11
call qword [sym.imp.WSOCK32.dll_ntohl]
mov ecx, dword [rsp + 0x68]
mov ebx, eax
call qword [sym.imp.WSOCK32.dll_ntohl]
lea rdx, [r15 + 8]
mov r11d, eax
lea rcx, [r15 + 0x20]
shl r11, 0x20
add r11, rbx
mov qword [r15 + 0x18], r11
call fcn.140032580
lea rdx, [r15 + 0x18]
lea rcx, [r15 + 0x10]
movapd xmm2, xmm0
call fcn.140032580
lea rdx, [r15 + 8]
lea rcx, [r15 + 0x10]
subsd xmm2, xmm0
movsd qword [r15 + 0x28], xmm2
call fcn.140032580
lea rdx, [r15 + 0x20]
lea rcx, [r15 + 0x18]
movapd xmm2, xmm0
call fcn.140032580
mov rcx, r13
addsd xmm2, xmm0
mulsd xmm2, qword [0x140058f00]
movsd qword [r15 + 0x30], xmm2
call fcn.140013c70
mov eax, 1
jmp 0x14003282f
mov rcx, r13
call fcn.140013c70
mov ecx, 0x274c
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
jmp 0x140032837