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

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x2e0
mov qword [rbp + 0x10], rcx
mov qword [rbp + 0x18], rdx
mov qword [rbp + 0x20], r8
mov eax, 0
mov byte [rbp - 1], al
mov rax, qword [rbp + 0x18]
add rax, 0x78
movzx ecx, byte [rax]
cmp ecx, 0
jne 0x4a42af
mov eax, 1
mov r8, rax
mov rax, qword [rbp + 0x18]
mov r11, rax
lea rax, [rbp - 0x88]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.004a402b
mov eax, 0x30
mov r8, rax
lea rax, [rbp - 0x88]
mov r11, rax
lea rax, [rbp - 0x58]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
movzx eax, byte [rbp - 0x58]
cmp eax, 0
je 0x4a42af
mov eax, 0x20
mov r8, rax
lea rax, [rbp - 0x50]
mov r11, rax
lea rax, [rbp - 0xa8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
mov eax, 0
mov byte [rbp - 0x238], al
movabs rax, 0x18f
mov r8, rax
mov eax, 0
mov r11, rax
lea rax, [rbp - 0x237]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memset
mov eax, 0x190
mov r11, rax
lea rax, [rbp - 0x258]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00407471
mov eax, 0x20
mov r8, rax
lea rax, [rbp - 0x258]
mov r11, rax
lea rax, [rbp - 0x28]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
mov eax, 1
mov byte [rbp - 1], al
lea rax, [rbp - 0x238]
mov qword [rbp - 0x260], rax
mov rax, qword [rbp + 0x18]
mov ecx, dword [rax]
movsxd rcx, ecx
mov eax, 2
mov r9, rax
mov eax, 0x18f
mov r8, rax
mov rax, qword [rbp - 0x260]
mov r11, rax
mov r10, rcx
mov rcx, r10
mov rdx, r11
call sub.ws2_32.dll_recv
mov dword [rbp - 0x264], eax
mov eax, dword [rbp - 0x264]
cmp eax, 0
jg 0x4a4409
lea rax, [rbp - 0x28]
mov r11, rax
lea rax, [rbp - 0x288]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00407f50
mov eax, 0x10
mov r8, rax
lea rax, [rbp - 0x288]
mov r11, rax
lea rax, [rbp - 0x278]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
movzx eax, byte [rbp - 1]
cmp eax, 0
je 0x4a43e0
lea rax, [rbp - 0x28]
mov r10, rax
mov rcx, r10
call fcn.00408143
mov rax, qword [rbp + 0x10]
mov ecx, 0x10
mov r8, rcx
lea rcx, [rbp - 0x278]
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
jmp 0x4a466c
mov eax, 0x190
mov r11, rax
mov eax, dword [rbp - 0x264]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.004e7182
movsxd rax, eax
lea rcx, [rbp - 0x238]
add rcx, rax
mov eax, 0
mov byte [rcx], al
mov eax, 0xffffffff
mov dword [rbp - 0x28c], eax
mov eax, dword [rbp - 0x264]
mov dword [rbp - 0x290], eax
mov eax, 0
mov dword [rbp - 0x294], eax
mov eax, dword [rbp - 0x294]
mov ecx, dword [rbp - 0x264]
cmp eax, ecx
jge 0x4a450f
jmp 0x4a4485
mov eax, dword [rbp - 0x294]
add eax, 1
mov dword [rbp - 0x294], eax
jmp 0x4a445b
mov eax, 0x190
mov r11, rax
mov eax, dword [rbp - 0x294]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.004e7182
movsxd rax, eax
lea rcx, [rbp - 0x238]
add rcx, rax
movzx eax, byte [rcx]
cmp eax, 0xa
jne 0x4a450a
mov eax, dword [rbp - 0x294]
mov dword [rbp - 0x28c], eax
mov eax, dword [rbp - 0x294]
add eax, 1
mov dword [rbp - 0x290], eax
mov eax, 0x190
mov r11, rax
mov eax, dword [rbp - 0x290]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.004e7182
movsxd rax, eax
lea rcx, [rbp - 0x238]
add rcx, rax
mov eax, 0
mov byte [rcx], al
jmp 0x4a450f
jmp 0x4a4474
mov eax, dword [rbp - 0x28c]
cmp eax, 0
jle 0x4a457a
mov rax, qword [rbp + 0x18]
mov ecx, dword [rax]
movsxd rcx, ecx
mov eax, 0
mov r9, rax
mov eax, dword [rbp - 0x290]
mov r8, rax
mov rax, qword [rbp - 0x260]
mov r11, rax
mov r10, rcx
mov rcx, r10
mov rdx, r11
call sub.ws2_32.dll_recv
mov eax, dword [rbp - 0x290]
mov r8, rax
mov rax, qword [rbp - 0x260]
mov r11, rax
lea rax, [rbp - 0x28]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00407571
jmp 0x4a45e9
mov rax, qword [rbp + 0x18]
mov ecx, dword [rax]
movsxd rcx, ecx
mov eax, 0
mov r9, rax
mov eax, dword [rbp - 0x264]
mov r8, rax
mov rax, qword [rbp - 0x260]
mov r11, rax
mov r10, rcx
mov rcx, r10
mov rdx, r11
call sub.ws2_32.dll_recv
mov eax, dword [rbp - 0x290]
mov r8, rax
mov rax, qword [rbp - 0x260]
mov r11, rax
lea rax, [rbp - 0x28]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00407571
mov eax, dword [rbp - 0x14]
mov ecx, dword [rbp + 0x20]
cmp eax, ecx
jle 0x4a45e4
jmp 0x4a45e9
jmp 0x4a433b
lea rax, [rbp - 0x28]
mov r11, rax
lea rax, [rbp - 0x2b8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.00407f50
mov eax, 0x10
mov r8, rax
lea rax, [rbp - 0x2b8]
mov r11, rax
lea rax, [rbp - 0x2a8]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
movzx eax, byte [rbp - 1]
cmp eax, 0
je 0x4a4648
lea rax, [rbp - 0x28]
mov r10, rax
mov rcx, r10
call fcn.00408143
mov rax, qword [rbp + 0x10]
mov ecx, 0x10
mov r8, rcx
lea rcx, [rbp - 0x2a8]
mov r11, rcx
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.msvcrt.dll_memmove
leave
ret