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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov rdi, qword [0x140049fe0]
xor ebp, ebp
mov r14, rcx
mov esi, ebp
nop dword [rax + rax]
mov rbx, rdi
mov rcx, qword [0x140048f38]
xor r9d, r9d
mov rdx, rbx
lea r8d, [r9 + 1]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x14002884e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
add eax, 0xffffd8bb
test eax, 0xfffffffa
jne 0x140028803
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
cmp eax, 1
jne 0x140028803
cmp byte [rbx], 0xa
je 0x14002885d
inc rbx
jmp 0x140028803
mov byte [rbx], bpl
cmp rbx, rdi
jbe 0x14002886f
cmp byte [rbx - 1], 0xd
jne 0x14002886f
mov byte [rbx - 1], bpl
test rdi, rdi
je 0x140028831
cmp byte [rdi], bpl
je 0x140028898
cmp esi, 0x64
je 0x140028898
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], bpl
jne 0x140028882
inc rdi
add rdi, rax
inc esi
jmp 0x140028800
lea rcx, [rdi + 1]
movsxd r9, esi
mov dword [r14 + 0x24], ebp
mov rax, r9
mov qword [r14 + 0x10], rcx
shl rax, 4
add rax, rcx
mov qword [r14 + 8], rax
lea eax, [rsi - 1]
mov dword [r14 + 0x28], eax
mov rax, qword [0x140049fe0]
movzx ecx, byte [rax]
cmp cl, 0x20
je 0x1400288d0
cmp cl, 9
jne 0x1400288d5
inc rax
jmp 0x1400288c3
mov qword [r14], rax
movzx ecx, byte [rax]
cmp cl, 0x20
je 0x1400288f5
cmp cl, 9
je 0x1400288f5
test cl, cl
je 0x14002894a
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
jne 0x1400288e0
cmp byte [rax], bpl
je 0x14002894a
nop word [rax + rax]
mov byte [rax], bpl
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x140028903
cmp cl, 9
je 0x140028903
movsxd rdx, dword [r14 + 0x24]
mov rcx, qword [r14 + 8]
mov qword [rcx + rdx*8], rax
inc dword [r14 + 0x24]
movzx ecx, byte [rax]
cmp cl, 0x20
je 0x140028945
nop dword [rax]
cmp cl, 9
je 0x140028945
test cl, cl
je 0x14002894a
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
jne 0x140028930
cmp byte [rax], bpl
jne 0x140028900
test esi, esi
jle 0x140028a22
mov r8, rbp
nop word [rax + rax]
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x140028960
cmp cl, 9
je 0x140028960
mov rcx, qword [r14 + 0x10]
mov qword [r8 + rcx], rax
cmp byte [rax], 0x3a
je 0x14002898d
nop
cmp byte [rax], bpl
je 0x1400289fc
inc rax
cmp byte [rax], 0x3a
jne 0x140028980
cmp byte [rax], bpl
je 0x1400289fc
lea rcx, [rax - 1]
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x1400289a3
cmp dl, 9
jne 0x1400289ab
mov byte [rcx], bpl
dec rcx
jmp 0x140028996
mov byte [rax], bpl
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x1400289ae
cmp cl, 9
je 0x1400289ae
mov rcx, qword [r14 + 0x10]
mov qword [r8 + rcx + 8], rax
cmp byte [rax], bpl
je 0x1400289d8
nop dword [rax]
inc rax
cmp byte [rax], bpl
jne 0x1400289d0
mov rcx, qword [r14 + 0x10]
cmp rax, qword [r8 + rcx + 8]
jbe 0x140028a15
lea rcx, [rax - 1]
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x1400289f4
cmp dl, 9
jne 0x140028a15
mov byte [rcx], bpl
dec rcx
jmp 0x1400289e7
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r8 + rcx]
mov byte [rdx], bpl
mov rdx, qword [r14 + 0x10]
add rdx, r8
mov rcx, qword [rdx]
mov qword [rdx + 8], rcx
add r8, 0x10
dec r9
jne 0x140028960
cmp dword [r14 + 0x24], 1
lea r8, [r14 + 0x20]
mov dword [r8], ebp
jl 0x140028a43
mov rcx, qword [r14 + 8]
lea rdx, [0x14003a564]
mov rcx, qword [rcx]
call sub.msvcrt.dll_sscanf
mov ebx, ebp
mov dword [r14 + 0x2c], ebp
cmp dword [r14 + 0x28], ebx
jle 0x140028b2d
mov rdi, rbp
nop word [rax + rax]
mov rcx, qword [r14 + 0x10]
lea rdx, [0x14003d588]
mov rcx, qword [rdi + rcx]
call sub.msvcrt.dll__stricmp
test eax, eax
je 0x140028a8e
inc ebx
add rdi, 0x10
cmp ebx, dword [r14 + 0x28]
jl 0x140028a60
mov eax, 1
jmp 0x140028833
mov rcx, qword [r14 + 0x10]
movsxd rax, ebx
lea r8, [r14 + 0x2c]
add rax, rax
lea rdx, [0x14003a564]
mov rcx, qword [rcx + rax*8 + 8]
call sub.msvcrt.dll_sscanf
cmp dword [r14 + 0x2c], ebp
jge 0x140028ab7
mov dword [r14 + 0x2c], ebp
mov edi, dword [r14 + 0x2c]
test edi, edi
je 0x140028b29
movsxd rcx, dword [r14 + 0x24]
mov rax, qword [r14 + 8]
lea rsi, [rax + rcx*8]
mov qword [r14 + 0x18], rsi
jle 0x140028b2d
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x140048f38]
mov r8d, edi
movsxd rdx, ebp
sub r8d, ebp
add rdx, rsi
xor r9d, r9d
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140028b19
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
add eax, 0xffffd8bb
test eax, 0xfffffffa
je 0x140028831
add ebp, ebx
cmp ebp, edi
jl 0x140028ae0
mov eax, 1
jmp 0x140028833
mov qword [r14 + 0x18], rbp
mov eax, 1
jmp 0x140028833