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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x14036a040]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r14, r8
mov qword [rsp + 0x28], r8
mov rbp, rdx
mov qword [rsp + 0x20], rdx
mov rdi, rcx
movzx eax, r9b
mov rsi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
mov r12d, 1
mov r13d, r12d
cmp dword [rsp + 0xb0], 0xabcd0123
cmovne r13d, eax
cmovne r12d, dword [rsp + 0xb0]
test rdx, rdx
je 0x1401a4f4f
mov rcx, rsi
call fcn.140103330
cmp qword [rdi + 0x298], 0xffffffffffffffff
jne 0x1401a4f56
mov rax, qword [rbx]
lea rdx, str.This_socket_is_not_connected
mov rcx, rbx
call qword [rax + 0x28]
mov byte [rsi + 0x2a], 1
mov word [rdi + 0x290], 0
xor al, al
jmp 0x1401a51f6
lea rdx, [rdi + 0xd5]
cmp byte [rdx], 0
je 0x1401a4f79
mov rax, qword [rbx]
lea rdx, str.Another_thread_is_already_receiving_on_this_socket.
mov rcx, rbx
call qword [rax + 0x28]
xor al, al
jmp 0x1401a51f6
cmp byte [rdi + 0xd6], 0
je 0x1401a4f99
mov rax, qword [rbx]
mov rdx, qword [str.Another_thread_is_closing_this_socket.]
mov rcx, rbx
call qword [rax + 0x28]
xor al, al
jmp 0x1401a51f6
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x30]
call fcn.1400b6770
nop
mov r15d, dword [r14]
mov dword [r14], 0
test r15d, r15d
je 0x1401a51e7
mov eax, 0xc042c00
test r12d, r12d
cmove r12d, eax
lea rcx, [rdi + 0x200]
mov r9, rbx
mov r8, qword [rsi + 8]
mov edx, 0x1000
call fcn.140254b90
test al, al
je 0x1401a5002
mov byte [rsi + 0x29], 1
mov rax, qword [rbx]
lea rdx, str.Aborted_by_application_while_download_throttling__2_
mov rcx, rbx
call qword [rax + 0x28]
xor bl, bl
jmp 0x1401a51e9
cmp byte [rdi + 0xd6], 0
je 0x1401a5022
mov rax, qword [rbx]
mov rdx, qword [str.Another_thread_is_closing_this_socket.]
mov rcx, rbx
call qword [rax + 0x28]
xor bl, bl
jmp 0x1401a51e9
cmp qword [rdi + 0x298], 0xffffffffffffffff
jne 0x1401a5043
mov rax, qword [rbx]
lea rdx, str.The_socket_is_already_closed.__Cannot_recv.
mov rcx, rbx
call qword [rax + 0x28]
xor bl, bl
jmp 0x1401a51e9
mov eax, 0x100000
cmp r15d, eax
cmova r15d, eax
mov r14b, 1
nop dword [rax]
nop word [rax + rax]
xor r9d, r9d
mov r8d, r15d
mov rdx, rbp
mov rcx, qword [rdi + 0x298]
call qword [sym.imp.WS2_32.dll_recv]
movsxd rbp, eax
test eax, eax
jg 0x1401a5193
je 0x1401a5155
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x1401a5119
test r14b, r14b
je 0x1401a510e
test r13b, r13b
jne 0x1401a510e
mov rdx, rbx
mov rcx, rsi
call fcn.1401034b0
test al, al
jne 0x1401a5112
mov r9, rbx
mov r8, rsi
mov edx, r12d
mov rcx, rdi
call fcn.1401a6130
test al, al
je 0x1401a50d4
xor r14b, r14b
test ebp, ebp
jns 0x1401a5112
mov rbp, qword [rsp + 0x20]
jmp 0x1401a5060
cmp byte [rsi + 0x29], 0
je 0x1401a50f1
lea rdx, str.Socket_recv_aborted_by_application
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
xor bl, bl
jmp 0x1401a51e9
cmp byte [rsi + 0x28], 0
jne 0x1401a5112
lea rdx, str.Socket_recv_failed.
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
xor bl, bl
jmp 0x1401a51e9
mov byte [rsi + 0x28], 1
xor bl, bl
jmp 0x1401a51e9
mov rcx, rbx
call fcn.1400da7e0
mov r8d, r15d
lea rdx, str.maxToReceive
mov rcx, rbx
call fcn.1400d9e50
mov rax, qword [rbx]
lea rdx, str.Failed_to_receive_data_on_the_TCP_socket
mov rcx, rbx
call qword [rax + 0x28]
mov byte [rsi + 0x2a], 1
mov byte [rdi + 0x290], 0
xor bl, bl
jmp 0x1401a51e9
cmp byte [rbx + 0x169], 0
je 0x1401a5180
mov r8d, r15d
lea rdx, str.maxToReceive
mov rcx, rbx
call fcn.1400d9e50
mov rax, qword [rbx]
lea rdx, str.Connection_closed_by_peer.
mov rcx, rbx
call qword [rax + 0x28]
mov rdx, rbx
mov rcx, rdi
call fcn.1401a3c70
mov byte [rsi + 0x2b], 1
xor bl, bl
jmp 0x1401a51e9
mov rax, qword [rsp + 0x28]
mov dword [rax], ebp
lea edx, [rbp - 0x1000]
lea rcx, [rdi + 0x200]
call fcn.140254b40
cmp byte [rdi + 0x382], 0
je 0x1401a51ca
lea rcx, [rdi + 0xe0]
mov r9, rbx
mov r8, qword [rsi + 8]
mov edx, ebp
call fcn.14019c110
cmp byte [rdi + 0x379], 0
je 0x1401a51e7
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1401a51e7
mov rdx, rbp
mov r8, rbx
call fcn.14014e290
mov bl, 1
lea rcx, [rsp + 0x30]
call fcn.1400b6890
movzx eax, bl
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.14008b8a0
mov rbx, qword [rsp + 0xa8]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret