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

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x20]
mov qword [rsp], rax
mov rax, 0x5c
mov dword [rsp + rax], 0xcccccccc
sub rax, 4
cmp rax, 4
jg 0x180019f7f
mov rax, qword [rsp]
mov dword [rsp], 0xcccccccc
mov dword [rsp + 4], 0xcccccccc
mov qword [rbp + 0x38], rsi
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x50], rcx
mov qword [rbp + 0x58], rdx
mov dword [rbp + 0x60], r8d
mov dword [rbp + 0x68], r9d
mov byte [rbp], 0
mov rax, qword [rbp + 0x58]
mov qword [rbp + 0x20], rax
mov eax, dword [rbp + 0x60]
mov dword [rbp + 4], eax
mov eax, dword [rbp + 4]
test eax, eax
je 0x18001a1eb
mov rax, qword [rbp + 0x50]
mov edx, dword [rbp + 0x78]
mov rcx, rax
call fcn.180017990
mov dword [rbp + 8], eax
mov byte [rbp], 1
mov eax, dword [rbp + 8]
mov dword [rbp + 0xc], eax
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a00b
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
test eax, eax
jge 0x18001a025
mov eax, 0xffffffff
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a03c
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
test eax, eax
jne 0x18001a059
mov eax, dword [rbp + 4]
neg eax
add eax, dword [rbp + 0x60]
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
mov eax, dword [rbp + 0x70]
test eax, eax
jne 0x18001a069
mov dword [rbp + 0x10], 0
jmp 0x18001a070
mov dword [rbp + 0x10], 2
mov rax, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x20]
mov ecx, dword [rbp + 4]
mov ebx, dword [rbp + 0x10]
mov rsi, qword [sym.imp.WS2_32.dll_recv]
mov dword [rbp + 0x28], ecx
mov rcx, rax
mov eax, dword [rbp + 0x28]
mov r8d, eax
mov r9d, ebx
call rsi
mov dword [rbp + 0x14], eax
mov byte [rbp], 1
mov eax, dword [rbp + 0x14]
mov dword [rbp + 0xc], eax
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a0ba
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
test eax, eax
jge 0x18001a10f
mov rax, qword [sym.imp.WS2_32.dll_WSAGetLastError]
call rax
mov dword [rbp + 0x18], eax
mov eax, dword [rbp + 0x18]
mov dword [rbp + 0x1c], eax
mov eax, dword [rbp + 0x1c]
cmp eax, 0x2734
je 0x18001a0e7
mov eax, dword [rbp + 0x1c]
cmp eax, 0x2747
jne 0x18001a0fc
mov eax, 0xa
mov rdx, qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, eax
call rdx
jmp 0x180019fcd
mov eax, 0xffffffff
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a126
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
test eax, eax
jne 0x18001a140
mov eax, 0xffffffff
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a157
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
mov edx, dword [rbp + 4]
cmp eax, edx
je 0x18001a1eb
mov eax, dword [rbp + 0x68]
test eax, eax
jne 0x18001a194
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a183
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret
mov eax, dword [rbp + 0x70]
test eax, eax
jne 0x180019fcd
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a1b6
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
neg eax
add eax, dword [rbp + 4]
mov dword [rbp + 4], eax
movzx eax, byte [rbp]
test eax, eax
jne 0x18001a1d8
lea rax, [0x180101fd8]
mov rcx, rax
call fcn.180064a90
mov eax, dword [rbp + 0xc]
movsxd rax, eax
add rax, qword [rbp + 0x20]
mov qword [rbp + 0x20], rax
jmp 0x180019fcd
mov eax, dword [rbp + 0x60]
mov rbx, qword [rbp + 0x30]
mov rsi, qword [rbp + 0x38]
lea rsp, [rbp + 0x40]
pop rbp
ret