Function at 0x1400f3310
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r14
mov eax, 0x78
call fcn.1401c1440
sub rsp, rax
mov rax, qword [0x1402bff08]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0xc0]
mov rdi, r8
mov qword [rsp + 0x28], r9
mov rsi, rdx
mov r9, qword [rsp + 0xc8]
mov rbx, rcx
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x38], r14
test r8, r8
je 0x1400f35c7
mov qword [rsp + 0xb0], rbp
mov qword [rsp + 0x60], r15
cmp rcx, rdx
je 0x1400f33de
mov r15, r14
cmp r8, 0x10
jb 0x1400f33d4
mov r14, qword [rsp + 0x28]
mov rbp, r8
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
mov qword [rsp + 0x20], rdi
mov rdi, r9
nop dword [rax]
mov r8, r14
mov rdx, rsi
mov rcx, rbx
call rdi
mov rax, qword [r15]
xor qword [rsi], rax
mov rax, qword [r15 + 8]
mov r15, rbx
xor qword [rsi + 8], rax
add rbx, 0x10
add rsi, 0x10
sub rbp, 1
jne 0x1400f33a0
mov rdi, qword [rsp + 0x20]
mov r14, qword [rsp + 0x38]
movups xmm0, xmmword [r15]
movups xmmword [r14], xmm0
jmp 0x1400f344c
cmp rdi, 0x10
jb 0x1400f344c
mov rbp, rdi
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
mov qword [rsp + 0x20], rdi
mov rdi, qword [rsp + 0x28]
nop dword [rax]
mov r8, rdi
lea rdx, [rsp + 0x40]
mov rcx, rbx
call r9
mov rcx, qword [rbx]
mov rax, qword [r14]
xor rax, qword [rsp + 0x40]
mov r9, qword [rsp + 0x30]
mov qword [rsi], rax
mov rax, qword [rsp + 0x48]
xor rax, qword [r14 + 8]
mov qword [r14], rcx
mov rcx, qword [rbx + 8]
add rbx, 0x10
mov qword [rsi + 8], rax
add rsi, 0x10
mov qword [r14 + 8], rcx
sub rbp, 1
jne 0x1400f3400
mov rdi, qword [rsp + 0x20]
test rdi, rdi
je 0x1400f35ba
mov qword [rsp + 0x70], r12
lea rax, [rsp + 0x40]
mov qword [rsp + 0x68], r13
lea rcx, [rsp + 0x40]
mov r13, r14
lea r15, [rsp + 0x41]
sub r13, rax
mov r12d, 2
mov eax, 1
mov ebp, 3
sub rax, rcx
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x40]
sub r12, rax
lea rax, [rsp + 0x40]
sub rbp, rax
inc rsi
neg r15
mov r8, qword [rsp + 0x28]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call qword [rsp + 0x30]
xor eax, eax
lea r9, [r15 + rsi]
nop dword [rax]
cmp rax, rdi
jae 0x1400f356f
lea r8, [rsp + 0x40]
add r8, rax
lea rcx, [r8 + r15]
movzx edx, byte [rcx + rbx + 1]
movzx ecx, byte [r8]
xor cl, byte [r8 + r13]
mov byte [r8 + r9], cl
mov rcx, qword [rsp + 0x38]
add rcx, r8
mov byte [r8 + r13], dl
cmp rcx, rdi
jae 0x1400f356c
movzx ecx, byte [r8 + 1]
xor cl, byte [r14 + rax + 1]
movzx edx, byte [rbx + rax + 1]
mov byte [rsi + rax], cl
lea rcx, [r12 + r8]
mov byte [r14 + rax + 1], dl
cmp rcx, rdi
jae 0x1400f3566
movzx ecx, byte [r8 + 2]
xor cl, byte [r14 + rax + 2]
movzx edx, byte [rbx + rax + 2]
mov byte [rsi + rax + 1], cl
lea rcx, [r8 + rbp]
mov byte [r14 + rax + 2], dl
cmp rcx, rdi
jae 0x1400f3560
movzx edx, byte [rbx + rax + 3]
movzx ecx, byte [r8 + 3]
xor cl, byte [r14 + rax + 3]
mov byte [rsi + rax + 2], cl
mov byte [r14 + rax + 3], dl
add rax, 4
cmp rax, 0x10
jb 0x1400f34c0
jmp 0x1400f356f
add rax, 3
jmp 0x1400f356f
add rax, 2
jmp 0x1400f356f
inc rax
cmp rdi, 0x10
jbe 0x1400f3589
add rbx, 0x10
add rsi, 0x10
sub rdi, 0x10
jne 0x1400f34a2
jmp 0x1400f35b0
cmp rax, 0x10
jae 0x1400f35b0
sub rbx, r14
lea rcx, [r14 + rax]
mov edx, reloc.WS2_32.dll_recv
sub rdx, rax
nop
movzx eax, byte [rbx + rcx]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400f35a0
mov r13, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xb0]
mov r15, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1401c0ed0
add rsp, 0x78
pop r14
pop rdi
pop rsi
pop rbx
ret