Function at 0x140002750
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r13
push r14
sub rsp, 0x20
xor edi, edi
lea r12, [0x1400958c1]
movzx esi, r9b
mov rbp, r8
mov r9, rdx
mov rbx, rcx
mov r11, r12
mov r10d, edi
mov r8d, edi
nop dword [rax]
movzx ecx, r10b
mov rax, r8
add r11, 2
sar rax, 3
and cl, 7
movzx edx, byte [rax + r9]
lea rax, [r8 + 1]
add r8, 2
sar dl, cl
sar rax, 3
lea ecx, [r10 + 1]
and dl, 1
and cl, 7
add r10d, 2
mov byte [r11 - 3], dl
movzx eax, byte [rax + r9]
sar al, cl
and al, 1
mov byte [r11 - 2], al
cmp r10d, 0x40
jl 0x140002790
mov rcx, rdi
lea r14, [0x140000000]
lea r13, [0x1400958c0]
nop dword [rax + rax]
movsx rax, byte [rcx + r14 + 0x7f600]
add rcx, 4
movzx eax, byte [rax + r13 - 1]
mov byte [rcx + r14 + 0x959cc], al
movsx rax, byte [rcx + r14 + 0x7f5fd]
movzx eax, byte [rax + r13 - 1]
mov byte [rcx + r14 + 0x959cd], al
movsx rax, byte [rcx + r14 + 0x7f5fe]
movzx eax, byte [rax + r13 - 1]
mov byte [rcx + r14 + 0x959ce], al
movsx rax, byte [rcx + r14 + 0x7f5ff]
movzx eax, byte [rax + r13 - 1]
mov byte [rcx + r14 + 0x959cf], al
cmp rcx, 0x40
jl 0x1400027f0
mov rax, qword [0x1400959d0]
mov qword [0x1400958c0], rax
mov rax, qword [0x1400959d8]
mov qword [0x1400958c8], rax
mov rax, qword [0x1400959e0]
mov qword [0x1400958d0], rax
mov rax, qword [0x1400959e8]
mov qword [0x1400958d8], rax
mov rax, qword [0x1400959f0]
mov qword [0x1400958e0], rax
mov rax, qword [0x1400959f8]
mov qword [0x1400958e8], rax
mov rax, qword [0x140095a00]
mov qword [0x1400958f0], rax
mov rax, qword [0x140095a08]
mov qword [0x1400958f8], rax
test sil, sil
jne 0x140002961
mov esi, reloc.WS2_32.dll_recv
nop word [rax + rax]
movups xmm0, xmmword [0x1400958e0]
movups xmm1, xmmword [0x1400958f0]
lea rcx, [0x1400958e0]
mov rdx, rbp
movups xmmword [0x1400d3c08], xmm0
movups xmmword [0x1400d3c18], xmm1
call fcn.140002e70
mov r11, rdi
nop
movzx eax, byte [r11 + r13]
add r11, 4
xor byte [r11 + r13 + 0x1c], al
movzx eax, byte [r11 + r13 - 3]
xor byte [r11 + r13 + 0x1d], al
movzx eax, byte [r11 + r13 - 2]
xor byte [r11 + r13 + 0x1e], al
movzx eax, byte [r11 + r13 - 1]
xor byte [r11 + r13 + 0x1f], al
cmp r11, 0x20
jl 0x140002910
add rbp, 0x30
dec rsi
movups xmmword [0x1400958c0], xmm0
movups xmmword [0x1400958d0], xmm1
jne 0x1400028e0
jmp 0x1400029f0
mov esi, reloc.WS2_32.dll_ntohs
add rbp, 0x2d0
nop dword [rax]
movups xmm0, xmmword [0x1400958c0]
movups xmm1, xmmword [0x1400958d0]
mov rdx, rbp
mov rcx, r13
movups xmmword [0x1400d3c08], xmm0
movups xmmword [0x1400d3c18], xmm1
call fcn.140002e70
mov r11, rdi
nop word [rax + rax]
movzx eax, byte [r11 + r13 + 0x20]
add r11, 4
xor byte [r11 + r13 - 4], al
movzx eax, byte [r11 + r13 + 0x1d]
xor byte [r11 + r13 - 3], al
movzx eax, byte [r11 + r13 + 0x1e]
xor byte [r11 + r13 - 2], al
movzx eax, byte [r11 + r13 + 0x1f]
xor byte [r11 + r13 - 1], al
cmp r11, 0x20
jl 0x1400029a0
sub rbp, 0x30
dec esi
movups xmmword [0x1400958e0], xmm0
movups xmmword [0x1400958f0], xmm1
jns 0x140002970
nop dword [rax]
movsx rax, byte [rdi + r14 + 0x7f640]
add rdi, 4
movzx eax, byte [rax + r13 - 1]
mov byte [rdi + r14 + 0x959cc], al
movsx rax, byte [rdi + r14 + 0x7f63d]
movzx eax, byte [rax + r13 - 1]
mov byte [rdi + r14 + 0x959cd], al
movsx rax, byte [rdi + r14 + 0x7f63e]
movzx eax, byte [rax + r13 - 1]
mov byte [rdi + r14 + 0x959ce], al
movsx rax, byte [rdi + r14 + 0x7f63f]
movzx eax, byte [rax + r13 - 1]
mov byte [rdi + r14 + 0x959cf], al
cmp rdi, 0x40
jl 0x1400029f0
mov rax, qword [0x1400959d0]
mov r8d, 2
mov qword [0x1400958c0], rax
mov rax, qword [0x1400959d8]
mov r9d, r8d
mov qword [0x1400958c8], rax
mov rax, qword [0x1400959e0]
mov qword [0x1400958d0], rax
mov rax, qword [0x1400959e8]
mov qword [0x1400958d8], rax
mov rax, qword [0x1400959f0]
mov qword [0x1400958e0], rax
mov rax, qword [0x1400959f8]
mov qword [0x1400958e8], rax
mov rax, qword [0x140095a00]
mov qword [0x1400958f0], rax
mov rax, qword [0x140095a08]
mov qword [0x1400958f8], rax
xor eax, eax
mov qword [rbx], rax
nop word [rax + rax]
movzx eax, byte [r12 - 1]
lea ecx, [r8 - 2]
lea rdx, [r9 - 2]
and ecx, 7
sar rdx, 3
add r12, 4
shl al, cl
lea ecx, [r8 - 1]
or byte [rdx + rbx], al
movzx eax, byte [r12 - 4]
and ecx, 7
shl al, cl
lea rdx, [r9 - 1]
mov ecx, r8d
sar rdx, 3
and ecx, 7
or byte [rdx + rbx], al
movzx eax, byte [r12 - 3]
mov rdx, r9
shl al, cl
sar rdx, 3
lea ecx, [r8 + 1]
or byte [rdx + rbx], al
movzx eax, byte [r12 - 2]
lea rdx, [r9 + 1]
and ecx, 7
sar rdx, 3
add r8d, 4
shl al, cl
add r9, 4
or byte [rdx + rbx], al
lea eax, [r8 - 2]
cmp eax, 0x40
jl 0x140002ae0
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r14
pop r13
pop r12
ret