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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x280
mov rax, qword [0x140075030]
xor rax, rsp
mov qword [rsp + 0x270], rax
mov rbx, qword [0x140077be0]
xor r14d, r14d
nop dword [rax + rax]
mov rcx, qword [rbx + 0x30]
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x60], 1
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14001526a
lea rdx, [rsp + 0x60]
call qword [sym.imp.WS2_32.dll___WSAFDIsSet]
test eax, eax
je 0x1400151d0
mov rcx, qword [rbx + 0x38]
xor edx, edx
mov r8d, 0x10000
mov dword [rsp + 0x54], r14d
call fcn.140020aa0
mov rax, qword [rbx + 0x38]
lea r9, [rsp + 0x50]
mov rcx, qword [rbx + 0x30]
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x48], rax
mov r8d, 1
lea rax, [rsp + 0x54]
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x40], 0x10000
mov dword [rsp + 0x50], r14d
call qword [sym.imp.WS2_32.dll_WSARecv]
cmp eax, 0xffffffff
jne 0x1400152b7
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x1400151d0
mov rcx, rbx
call fcn.140014550
lea rcx, str.Disconnected..._n
mov dword [rbx + 0xc], r14d
mov qword [rbx + 0x30], r14
call fcn.1400124d0
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.14001e530
lea r11, [rsp + 0x280]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov edi, dword [rsp + 0x50]
test edi, edi
je 0x14001526a
mov rbp, qword [rbx + 0x38]
test rbp, rbp
je 0x1400151d0
cmp dword [rbx + 8], 0
jne 0x1400152ec
mov rcx, rbx
call fcn.140014550
mov edx, dword [rbx + 0x18]
mov ecx, 0x42
add edx, edi
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
jmp 0x1400152fd
mov edx, dword [rbx + 0x14]
xor r8d, r8d
mov rcx, qword [rbx]
add edx, edi
call qword [sym.imp.KERNEL32.dll_GlobalReAlloc]
mov qword [rbx], rax
test rax, rax
je 0x1400151d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
cmp dword [rbx + 8], 0
mov rsi, rax
jne 0x140015337
mov ecx, dword [rbx + 0x18]
test ecx, ecx
je 0x140015337
mov rdx, qword [rbx + 0x40]
mov r8d, ecx
mov rcx, rax
call fcn.140020400
mov ecx, dword [rbx + 0x18]
mov dword [rbx + 0x14], ecx
mov ecx, dword [rbx + 0x14]
mov r8, rdi
add rcx, rsi
mov rdx, rbp
call fcn.140020400
mov rcx, qword [rbx]
add dword [rbx + 0x14], edi
mov dword [rbx + 8], 1
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov edi, dword [rbx + 0x14]
mov r12d, r14d
mov r13, rax
mov edx, r14d
test edi, edi
je 0x140015411
mov ecx, edi
nop word [rax + rax]
mov esi, r12d
mov ebp, dword [rsi + r13]
lea r14d, [rbp - 4]
cmp ebp, ecx
ja 0x14001540e
mov edx, r14d
mov ecx, 0x40
mov r15d, r14d
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rdi, rax
test rax, rax
je 0x1400153f6
lea rdx, [r13 + 4]
mov r8d, r15d
add rdx, rsi
mov rcx, rax
call fcn.140020400
mov edx, r14d
mov rcx, rdi
call fcn.140019800
mov rsi, rax
test rax, rax
je 0x1400153ed
mov rdx, rax
mov rcx, rbx
call fcn.140015450
mov rcx, rsi
call fcn.1400190f0
mov edx, 0x10
mov rcx, rsi
call fcn.14001e740
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov edi, dword [rbx + 0x14]
add r12d, ebp
sub edi, ebp
mov edx, 1
mov ecx, edi
mov dword [rbx + 0x14], edi
jne 0x140015380
xor r14d, r14d
test edx, edx
je 0x140015436
test edi, edi
je 0x14001542b
mov rcx, qword [rbx + 0x40]
mov edx, r12d
add rdx, r13
mov r8d, edi
call fcn.140020400
mov rcx, rbx
call fcn.140014550
mov dword [rbx + 0x18], edi
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400151d0
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x1400151d0