Function at 0x140037aa0
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 [0x14005a800]
xor ebp, ebp
mov r14, rcx
mov esi, ebp
nop dword [rax + rax]
mov rbx, rdi
mov rcx, qword [0x140059738]
xor r9d, r9d
mov rdx, rbx
lea r8d, [r9 + 1]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
jne 0x140037b1e
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
add eax, 0xffffd8bb
test eax, 0xfffffffa
jne 0x140037ad3
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 0x140037ad3
cmp byte [rbx], 0xa
je 0x140037b2d
inc rbx
jmp 0x140037ad3
mov byte [rbx], bpl
cmp rbx, rdi
jbe 0x140037b3f
cmp byte [rbx - 1], 0xd
jne 0x140037b3f
mov byte [rbx - 1], bpl
test rdi, rdi
je 0x140037b01
cmp byte [rdi], bpl
je 0x140037b68
cmp esi, 0x64
je 0x140037b68
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], bpl
jne 0x140037b52
inc rdi
add rdi, rax
inc esi
jmp 0x140037ad0
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 [0x14005a800]
movzx ecx, byte [rax]
cmp cl, 0x20
je 0x140037ba0
cmp cl, 9
jne 0x140037ba5
inc rax
jmp 0x140037b93
mov qword [r14], rax
movzx ecx, byte [rax]
cmp cl, 0x20
je 0x140037bc5
cmp cl, 9
je 0x140037bc5
test cl, cl
je 0x140037c1a
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
jne 0x140037bb0
cmp byte [rax], bpl
je 0x140037c1a
nop word [rax + rax]
mov byte [rax], bpl
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x140037bd3
cmp cl, 9
je 0x140037bd3
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 0x140037c15
nop dword [rax]
cmp cl, 9
je 0x140037c15
test cl, cl
je 0x140037c1a
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
jne 0x140037c00
cmp byte [rax], bpl
jne 0x140037bd0
test esi, esi
jle 0x140037cf2
mov r8, rbp
nop word [rax + rax]
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x140037c30
cmp cl, 9
je 0x140037c30
mov rcx, qword [r14 + 0x10]
mov qword [r8 + rcx], rax
cmp byte [rax], 0x3a
je 0x140037c5d
nop
cmp byte [rax], bpl
je 0x140037ccc
inc rax
cmp byte [rax], 0x3a
jne 0x140037c50
cmp byte [rax], bpl
je 0x140037ccc
lea rcx, [rax - 1]
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x140037c73
cmp dl, 9
jne 0x140037c7b
mov byte [rcx], bpl
dec rcx
jmp 0x140037c66
mov byte [rax], bpl
movzx ecx, byte [rax + 1]
inc rax
cmp cl, 0x20
je 0x140037c7e
cmp cl, 9
je 0x140037c7e
mov rcx, qword [r14 + 0x10]
mov qword [r8 + rcx + 8], rax
cmp byte [rax], bpl
je 0x140037ca8
nop dword [rax]
inc rax
cmp byte [rax], bpl
jne 0x140037ca0
mov rcx, qword [r14 + 0x10]
cmp rax, qword [r8 + rcx + 8]
jbe 0x140037ce5
lea rcx, [rax - 1]
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x140037cc4
cmp dl, 9
jne 0x140037ce5
mov byte [rcx], bpl
dec rcx
jmp 0x140037cb7
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 0x140037c30
cmp dword [r14 + 0x24], 1
lea r8, [r14 + 0x20]
mov dword [r8], ebp
jl 0x140037d13
mov rcx, qword [r14 + 8]
lea rdx, [0x140047934]
mov rcx, qword [rcx]
call sub.msvcrt.dll_sscanf
mov ebx, ebp
mov dword [r14 + 0x2c], ebp
cmp dword [r14 + 0x28], ebx
jle 0x140037dfd
mov rdi, rbp
nop word [rax + rax]
mov rcx, qword [r14 + 0x10]
lea rdx, [0x14004a958]
mov rcx, qword [rdi + rcx]
call sub.msvcrt.dll__stricmp
test eax, eax
je 0x140037d5e
inc ebx
add rdi, 0x10
cmp ebx, dword [r14 + 0x28]
jl 0x140037d30
mov eax, 1
jmp 0x140037b03
mov rcx, qword [r14 + 0x10]
movsxd rax, ebx
lea r8, [r14 + 0x2c]
add rax, rax
lea rdx, [0x140047934]
mov rcx, qword [rcx + rax*8 + 8]
call sub.msvcrt.dll_sscanf
cmp dword [r14 + 0x2c], ebp
jge 0x140037d87
mov dword [r14 + 0x2c], ebp
mov edi, dword [r14 + 0x2c]
test edi, edi
je 0x140037df9
movsxd rcx, dword [r14 + 0x24]
mov rax, qword [r14 + 8]
lea rsi, [rax + rcx*8]
mov qword [r14 + 0x18], rsi
jle 0x140037dfd
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x140059738]
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 0x140037de9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
add eax, 0xffffd8bb
test eax, 0xfffffffa
je 0x140037b01
add ebp, ebx
cmp ebp, edi
jl 0x140037db0
mov eax, 1
jmp 0x140037b03
mov qword [r14 + 0x18], rbp
mov eax, 1
jmp 0x140037b03