Function at 0x140091ce3
Capabilities:
Receive data
Receive data on socket

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
mov rsi, rcx
xor eax, eax
lea rdx, [rsp + 0x28]
mov qword [rdx], rax
mov qword [rdx + 8], 1
mov qword [rdx + 0x10], rax
call fcn.140003c8b
mov rdi, rdx
test rax, rax
je 0x140091d74
mov rcx, rdi
call fcn.140113b93
mov rdi, rax
mov rbx, rdx
cmp qword [rsp + 0x28], 0
je 0x140091d46
mov r8, qword [rsp + 0x30]
mov rcx, qword [0x1403531b0]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_closesocket]
test rdi, rdi
je 0x140091d5f
mov rcx, rdi
mov rdx, rbx
call fcn.1400052a4
nop
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test rdi, rdi
je 0x140091e96
lea rax, [rsp + 0x28]
mov rbx, qword [rax]
mov rbp, qword [rax + 0x10]
mov r15d, 0x2000
xor r13d, r13d
movabs rdi, 0x2600000003
mov r12, 0xffffffffffffffff
mov rax, rbx
or rax, rbp
jne 0x140091dd4
mov rcx, rsi
lea rdx, [rsp + 0x28]
call fcn.140003c8b
test rax, rax
jne 0x140092007
test rdx, rdx
je 0x140091e96
mov rbx, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x38]
cmp rbp, rbx
jne 0x140091e09
mov r8d, 0x20
lea rcx, [rsp + 0x28]
mov rdx, rbx
call fcn.1401bbd8e
movabs rcx, 0x8000000000000001
cmp rax, rcx
jne 0x140091d1c
mov rbx, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, rbp
mov r14, rbx
sub r14, rbp
cmp r14, r15
cmovae r14, r15
mov eax, 0x7fffffff
cmp r14, rax
mov r8d, 0x7fffffff
cmovb r8, r14
mov rcx, rsi
xor r9d, r9d
call qword [sym.imp.ws2_32.dll_recv]
cmp eax, 0xffffffff
je 0x140091e85
cdqe
cmp r13, rax
cmovbe r13, rax
test rax, rax
je 0x140091e96
mov rcx, r13
sub rcx, rax
add rbp, rax
cmp r13, r14
cmovne r15, r12
lea rdx, [r15 + r15]
test r15, r15
cmovs rdx, r12
mov qword [rsp + 0x38], rbp
cmp r14, r15
cmovb rdx, r15
cmp rax, r14
cmove r15, rdx
mov r13, rcx
jmp 0x140091da3
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
cmp eax, 0x274a
jne 0x140091ff8
lea rdx, [0x14029b50e]
lea rdi, [rsp + 0x80]
mov r8d, 0xe
mov rcx, rdi
call fcn.140094255
mov rdx, qword [rdi + 8]
mov r8, qword [rdi + 0x10]
lea rdi, [rsp + 0x98]
mov rcx, rdi
call fcn.140048270
cmp qword [rdi], 0
je 0x140091f3e
lea rcx, [rsp + 0x88]
mov r8, qword [rsp + 0xa0]
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x70], r8
mov rdx, qword [rcx - 8]
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x60], xmm0
movabs rcx, 0x8000000000000000
movaps xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r8
cmp rdx, rcx
je 0x140091f62
mov r8, qword [rsp + 0x70]
lea rcx, [rsp + 0x98]
mov qword [rcx + 0x18], r8
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [rcx + 8], xmm0
mov qword [rcx], rdx
mov qword [rcx + 0x20], rax
call fcn.140091792
jmp 0x140091d24
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
lea rdx, [rsp + 0xc0]
mov qword [rdx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rdx], xmm0
lea rcx, [rsp + 0x98]
mov dword [rcx], 0
xorps xmm0, xmm0
movups xmmword [rcx + 8], xmm0
mov dword [rcx + 0x18], 7
mov word [rcx + 0x24], 0
mov qword [rcx + 0x1c], 0
mov al, 1
mov byte [rcx + 0x24], al
mov byte [rcx + 0x22], al
call fcn.14000360e
mov r14, rdx
test rax, rax
je 0x140091fc2
mov rcx, r14
jmp 0x140091d1f
mov rdi, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov rcx, r14
mov rdx, rdi
call fcn.1401c452c
test rax, rax
je 0x14009200f
mov rcx, rax
call fcn.140113b93
mov rdi, rax
mov rbx, rdx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140091d2a
mov edi, eax
shl rdi, 0x20
or rdi, 2
jmp 0x140091d1c
mov rdi, rdx
jmp 0x140091d1c
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rsp + 0x28], 0
je 0x140092032
mov rcx, qword [0x1403531b0]
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_closesocket]
jmp 0x140091d5f