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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x68
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov rax, qword [0x18036d060]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov rbx, r9
mov r12d, r8d
mov qword [rsp + 0x28], rdx
mov rsi, rcx
mov r14, qword [rsp + 0xd0]
mov rdi, qword [r14 + 8]
mov qword [rsp + 0x30], rdi
mov rcx, r14
call fcn.180175b40
cmp byte [rsi + 0xd6], 0
je 0x180152a20
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 0x180152d95
mov byte [rsp + 0x20], 0
xor al, al
mov byte [rsp + 0x21], al
xor r13d, r13d
mov ebp, 0xc042c00
test rdi, rdi
je 0x180152a47
mov rdx, rbx
mov rcx, rdi
call fcn.180125000
test al, al
jne 0x180152a19
mov r15d, r12d
cmp r12d, 0xabcd0123
mov edi, 1
cmove r15d, edi
mov rcx, r14
call fcn.180175b40
cmp qword [rsi + 0x298], 0xffffffffffffffff
je 0x180152d72
lea rdx, [rsi + 0xd5]
cmp byte [rdx], 0
jne 0x180152d60
cmp byte [rsi + 0xd6], 0
jne 0x180152d4e
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
lea rcx, [rsp + 0x48]
call fcn.180103090
nop
test r15d, r15d
cmove r15d, ebp
lea rcx, [rsi + 0x200]
mov r9, rbx
mov r8, qword [r14 + 8]
mov edx, 0x1000
call fcn.1801c30c0
test al, al
jne 0x180152d2c
cmp byte [rsi + 0xd6], al
jne 0x180152d0f
cmp qword [rsi + 0x298], 0xffffffffffffffff
je 0x180152cef
movzx ebp, dil
xor r9d, r9d
mov r8d, edi
lea rdx, [rsp + 0x40]
mov rcx, qword [rsi + 0x298]
call qword [sym.imp.WS2_32.dll_recv]
movsxd rdi, eax
test eax, eax
jg 0x180152b72
je 0x180152ca2
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x180152c5a
test bpl, bpl
je 0x180152c46
cmp r12d, 0xabcd0123
je 0x180152c46
mov rdx, rbx
mov rcx, r14
call fcn.180175cc0
test al, al
jne 0x180152c4b
mov r9, rbx
mov r8, r14
mov edx, r15d
mov rcx, rsi
call fcn.18015a110
test al, al
je 0x180152c0f
xor bpl, bpl
test edi, edi
jns 0x180152c4b
mov edi, 1
jmp 0x180152ae5
lea edx, [rdi - 0x1000]
lea rcx, [rsi + 0x200]
call fcn.1801c2f00
cmp byte [rsi + 0x382], 0
je 0x180152ba2
lea rcx, [rsi + 0xe0]
mov r9, rbx
mov r8, qword [r14 + 8]
mov edx, edi
call fcn.1801c2cf0
cmp byte [rsi + 0x379], 0
je 0x180152bc0
mov rcx, qword [r14 + 8]
test rcx, rcx
je 0x180152bc0
mov rdx, rdi
mov r8, rbx
call fcn.180125340
nop
lea rcx, [rsp + 0x48]
call fcn.1801031c0
movzx edx, byte [rsp + 0x40]
cmp dl, 0xa
je 0x180152bde
cmp dl, 0xd
je 0x180152bf0
inc r13d
jmp 0x180152bf0
test r13d, r13d
jne 0x180152bed
mov byte [rsp + 0x20], 1
mov byte [rsp + 0x21], 1
xor r13d, r13d
mov rcx, qword [rsp + 0x28]
call fcn.1800bb260
cmp byte [rsp + 0x20], 0
jne 0x180152d90
mov rdi, qword [rsp + 0x30]
jmp 0x180152a2e
cmp byte [r14 + 0x29], 0
je 0x180152c1f
lea rdx, str.Socket_recv_aborted_by_application
jmp 0x180152c2d
cmp byte [r14 + 0x28], 0
jne 0x180152c37
lea rdx, str.Socket_recv_failed.
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
nop
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov byte [r14 + 0x28], 1
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov rcx, rbx
call fcn.180106a70
mov r8d, 1
lea rdx, str.maxToReceive
mov rcx, rbx
call fcn.180106220
mov rax, qword [rbx]
lea rdx, str.Failed_to_receive_data_on_the_TCP_socket
mov rcx, rbx
call qword [rax + 0x28]
mov byte [r14 + 0x2a], 1
mov byte [rsi + 0x290], 0
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
cmp byte [rbx + 0x161], 0
je 0x180152cd0
mov r8d, 1
lea rdx, str.maxToReceive
mov rcx, rbx
call fcn.180106220
mov rax, qword [rbx]
lea rdx, str.Connection_closed_by_peer.
mov rcx, rbx
call qword [rax + 0x28]
mov rdx, rbx
mov rcx, rsi
call fcn.180157ae0
mov byte [r14 + 0x2b], 1
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov rax, qword [rbx]
lea rdx, str.The_socket_is_already_closed.__Cannot_recv.
mov rcx, rbx
call qword [rax + 0x28]
nop
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov rax, qword [rbx]
mov rdx, qword [str.Another_thread_is_closing_this_socket.]
mov rcx, rbx
call qword [rax + 0x28]
nop
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov byte [r14 + 0x29], 1
mov rax, qword [rbx]
lea rdx, str.Aborted_by_application_while_download_throttling__2_
mov rcx, rbx
call qword [rax + 0x28]
nop
lea rcx, [rsp + 0x48]
call fcn.1801031c0
jmp 0x180152d90
mov rax, qword [rbx]
mov rdx, qword [str.Another_thread_is_closing_this_socket.]
mov rcx, rbx
call qword [rax + 0x28]
jmp 0x180152d90
mov rax, qword [rbx]
lea rdx, str.Another_thread_is_already_receiving_on_this_socket.
mov rcx, rbx
call qword [rax + 0x28]
jmp 0x180152d90
mov r8, qword [rbx]
lea rdx, str.This_socket_is_not_connected
mov rcx, rbx
call qword [r8 + 0x28]
mov byte [r14 + 0x2a], dil
mov word [rsi + 0x290], 0
movzx eax, byte [rsp + 0x21]
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.18007b140
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret