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

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rdi, qword [sym.imp.WS2_32.dll_recv]
xor ebx, ebx
mov ebp, 4
lea r12, [rsp + 0x2c]
mov rsi, rcx
mov r13, rdx
nop word [rax + rax]
movsxd rdx, ebx
mov r8d, ebp
xor r9d, r9d
mov rcx, qword [rsi + 0x23d8]
add rdx, r12
sub r8d, ebx
call rdi
cmp eax, 0xffffffff
je 0x14000f493
add ebx, eax
cmp ebx, 3
jle 0x14000f410
mov ecx, dword [rsp + 0x2c]
xor ebx, ebx
call qword [sym.imp.WS2_32.dll_ntohl]
lea ecx, [rax + 1]
mov ebp, eax
mov dword [rsp + 0x2c], eax
movsxd rcx, ecx
call fcn.1400bf660
test ebp, ebp
mov r12, rax
movsxd rax, ebp
mov byte [r12 + rax], 0
jg 0x14000f46e
jmp 0x14000f4a8
add ebx, eax
cmp ebp, ebx
jle 0x14000f4a8
movsxd rdx, ebx
mov r8d, ebp
xor r9d, r9d
mov rcx, qword [rsi + 0x23d8]
add rdx, r12
sub r8d, ebx
call rdi
cmp eax, 0xffffffff
jne 0x14000f468
mov rcx, r12
call fcn.1400bf630
xor eax, eax
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
lea rsi, [r13 + 0x10]
mov rcx, r12
call sub.msvcrt.dll_strlen
mov r14, qword [r13]
mov rdi, qword [r13 + 8]
mov rbx, rax
cmp r14, rsi
je 0x14000f5d9
mov rax, qword [r13 + 0x10]
cmp rbx, rax
ja 0x14000f581
cmp r14, r12
jbe 0x14000f520
test rbx, rbx
je 0x14000f4fb
cmp rbx, 1
je 0x14000f660
mov rcx, r14
mov r8, rbx
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov r14, qword [r13]
mov qword [r13 + 8], rbx
mov rcx, r12
mov byte [r14 + rbx], 0
call fcn.1400bf630
mov eax, 1
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
lea rsi, [r14 + rdi]
cmp rsi, r12
jb 0x14000f4da
lea rax, [rbx - 1]
cmp rdi, rax
jbe 0x14000f54a
cmp rbx, 1
je 0x14000f6b0
mov r8, rbx
mov rdx, r12
mov rcx, r14
call sub.msvcrt.dll_memmove
cmp rbx, rdi
jbe 0x14000f641
lea rax, [r12 + rbx]
cmp rsi, rax
jb 0x14000f67e
cmp rbx, 1
je 0x14000f660
mov rcx, r14
mov r8, rbx
mov rdx, r12
call sub.msvcrt.dll_memmove
mov r14, qword [r13]
jmp 0x14000f4fb
lea rdi, [rax + rax]
cmp rbx, rdi
jb 0x14000f5f5
lea rcx, [rbx + 1]
mov rdi, rbx
call fcn.1400bf690
test rbx, rbx
mov r14, rax
je 0x14000f5b6
cmp rbx, 1
je 0x14000f671
mov r8, rbx
mov rdx, r12
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rcx, qword [r13]
cmp rsi, rcx
je 0x14000f5cc
mov rax, qword [r13 + 0x10]
lea rdx, [rax + 1]
call fcn.1400bf650
mov qword [r13], r14
mov qword [r13 + 0x10], rdi
jmp 0x14000f4fb
cmp rbx, 0xf
jbe 0x14000f4d5
cmp rbx, 0x1d
ja 0x14000f58a
mov edi, 0x1e
mov ecx, 0x1f
jmp 0x14000f591
test rdi, rdi
jns 0x14000f64a
call fcn.1400c0570
sub rsi, r12
cmp rsi, 1
je 0x14000f6bd
test rsi, rsi
je 0x14000f61f
mov r8, rsi
mov rdx, r12
mov rcx, r14
call sub.msvcrt.dll_memmove
lea rdx, [r14 + rbx]
mov r8, rbx
lea rcx, [r14 + rsi]
sub r8, rsi
cmp r8, 1
je 0x14000f6d9
test r8, r8
je 0x14000f641
call sub.msvcrt.dll_memcpy
mov r14, qword [r13]
jmp 0x14000f4fb
mov rcx, rdi
add rcx, 1
jns 0x14000f591
jmp 0x14000f5fa
movzx eax, byte [r12]
mov byte [r14], al
mov r14, qword [r13]
jmp 0x14000f4fb
movzx eax, byte [r12]
mov byte [r14], al
jmp 0x14000f5b6
cmp r12, rsi
jb 0x14000f5ff
mov rdx, r12
sub rdx, r14
sub rdx, rdi
add rdx, rbx
add rdx, r14
cmp rbx, 1
je 0x14000f6ca
mov rcx, r14
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov r14, qword [r13]
jmp 0x14000f4fb
movzx eax, byte [r12]
mov byte [r14], al
jmp 0x14000f54a
movzx eax, byte [r12]
mov byte [r14], al
jmp 0x14000f61f
movzx eax, byte [rdx]
mov byte [r14], al
mov r14, qword [r13]
jmp 0x14000f4fb
movzx eax, byte [rdx]
mov byte [rcx], al
mov r14, qword [r13]
jmp 0x14000f4fb