Function at 0x14000a1c0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
movdqa xmmword [rsp + 0x70], xmm6
mov rdi, qword [rcx + 0x18]
cmp rdi, 0xffffffffffffffff
je 0x14000aaab
movdqa xmm6, xmmword [rdx]
mov rsi, qword [rcx + 8]
lea r14, [rsi + 1]
mov rax, r14
shr rax, 3
mov r8, r14
and r8, 0xfffffffffffffff8
sub r8, rax
cmp rsi, 8
cmovb r8, rsi
mov rax, r8
shr rax, 1
cmp rdi, rax
mov qword [rsp + 0x28], rcx
jae 0x14000a249
mov rbx, qword [rcx]
mov rcx, r14
shr rcx, 4
xor eax, eax
test r14b, 0xf
setne al
add rax, rcx
je 0x14000a58a
cmp rax, 1
jne 0x14000a527
xor ecx, ecx
jmp 0x14000a574
lea rax, [rdi + 1]
inc r8
cmp rax, r8
cmova r8, rax
cmp r8, 8
jae 0x14000a270
xor eax, eax
cmp r8, 4
setae al
lea rbx, [rax*4 + 4]
jmp 0x14000a2bd
movabs rax, 0x1ffffffffffffffe
inc rax
cmp r8, rax
ja 0x14000aaab
shl r8, 3
movabs rdx, 0x2492492492492493
mov rax, r8
mul rdx
sub r8, rdx
shr r8, 1
add r8, rdx
shr r8, 2
dec r8
bsr rcx, r8
not ecx
mov rbx, 0xffffffffffffffff
shr rbx, cl
inc rbx
mov ecx, 0x18
mov rax, rbx
mul rcx
jo 0x14000aaab
mov r12, rax
cmp rax, 0xfffffffffffffff0
ja 0x14000aaab
add r12, 0xf
and r12, 0xfffffffffffffff0
lea r13, [rbx + 0x10]
mov r15, r12
add r15, r13
jb 0x14000aaab
movabs rax, 0x7ffffffffffffff0
cmp r15, rax
ja 0x14000aaab
mov qword [rsp + 0x38], r14
movzx eax, byte [0x14005e030]
mov rcx, r15
call fcn.1400480a0
test rax, rax
je 0x14000aab0
mov rbp, rax
lea r14, [rbx - 1]
mov rax, rbx
shr rax, 3
mov rcx, rbx
and rcx, 0xfffffffffffffff8
sub rcx, rax
cmp rbx, 9
cmovb rcx, r14
mov qword [rsp + 0x40], rcx
lea r15, [rbp + r12]
mov rcx, r15
mov dl, 0xff
mov r8, r13
call sub.msvcrt.dll_memset
test rdi, rdi
je 0x14000a4bb
lea rax, [r12 + rbp]
add rax, 0xffffffffffffffe8
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x28]
mov rbx, qword [rax]
movdqa xmm0, xmmword [rbx]
pmovmskb ebp, xmm0
not ebp
lea rax, [rbx - 0x18]
mov qword [rsp + 0x48], rax
mov r13, rdi
xor edi, edi
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x58], r13
jmp 0x14000a3f8
lea ecx, [rbp - 1]
and ecx, ebp
dec r13
shr rax, 0x39
lea r8, [rdx - 0x10]
and r8, r14
mov byte [r15 + rdx], al
mov byte [r15 + r8 + 0x10], al
shl r12, 3
lea rax, [r12 + r12*2]
mov r8, qword [rsp + 0x48]
sub r8, rax
shl rdx, 3
lea rax, [rdx + rdx*2]
mov rdx, qword [rsp + 0x50]
sub rdx, rax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x10], rax
movdqu xmm0, xmmword [r8]
movdqu xmmword [rdx], xmm0
mov ebp, ecx
test r13, r13
je 0x14000a4af
test bp, bp
jne 0x14000a41b
nop dword [rax]
movdqa xmm0, xmmword [rbx + 0x10]
add rbx, 0x10
pmovmskb ebp, xmm0
add rdi, 0x10
cmp ebp, 0xffff
je 0x14000a400
not ebp
tzcnt r12d, ebp
add r12, rdi
mov rax, r12
neg rax
lea rax, [rax + rax*2]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rcx + rax*8 - 0x18]
mov r8, qword [rcx + rax*8 - 0x10]
movdqa xmmword [rsp + 0x60], xmm6
lea rcx, [rsp + 0x60]
call fcn.14000ac10
mov rcx, r14
and rcx, rax
movdqu xmm0, xmmword [r15 + rcx]
pmovmskb edx, xmm0
test edx, edx
jne 0x14000a488
mov r8d, 0x10
nop word cs:[rax + rax]
add rcx, r8
and rcx, r14
movdqu xmm0, xmmword [r15 + rcx]
pmovmskb edx, xmm0
add r8, 0x10
test edx, edx
je 0x14000a470
tzcnt edx, edx
add rdx, rcx
and rdx, r14
cmp byte [r15 + rdx], 0
js 0x14000a3a0
movdqa xmm0, xmmword [r15]
pmovmskb ecx, xmm0
tzcnt edx, ecx
jmp 0x14000a3a0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x58]
jmp 0x14000a4ca
mov rax, qword [rsp + 0x28]
mov rcx, qword [rax]
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov rdx, qword [rsp + 0x40]
sub rdx, rcx
mov qword [rax], r15
mov qword [rax + 8], r14
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
test rsi, rsi
je 0x14000aa84
mov ecx, 0x18
mov rax, qword [rsp + 0x38]
mul rcx
add rax, 0xf
and rax, 0xfffffffffffffff0
add rsi, rax
cmp rsi, 0xffffffffffffffef
je 0x14000aa84
mov r8, qword [rsp + 0x30]
sub r8, rax
mov rcx, qword [0x14005e100]
xor edx, edx
call fcn.14004b76c
jmp 0x14000aa84
movabs rdx, 0x1ffffffffffffffe
and rdx, rax
xor ecx, ecx
movdqa xmm0, xmmword [0x14004f140]
nop
pxor xmm1, xmm1
pcmpgtb xmm1, xmmword [rbx + rcx]
por xmm1, xmm0
movdqa xmmword [rbx + rcx], xmm1
pxor xmm1, xmm1
pcmpgtb xmm1, xmmword [rbx + rcx + 0x10]
por xmm1, xmm0
movdqa xmmword [rbx + rcx + 0x10], xmm1
add rcx, 0x20
add rdx, 0xfffffffffffffffe
jne 0x14000a540
test al, 1
je 0x14000a58a
pxor xmm0, xmm0
pcmpgtb xmm0, xmmword [rbx + rcx]
por xmm0, xmmword [0x14004f140]
movdqa xmmword [rbx + rcx], xmm0
cmp r14, 0x10
jae 0x14000a5b0
lea rcx, [rbx + 0x10]
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memmove
test r14, r14
jne 0x14000a5ba
xor eax, eax
mov r8, qword [rsp + 0x28]
jmp 0x14000aa7d
movdqu xmm0, xmmword [rbx]
movdqu xmmword [rbx + r14], xmm0
pshufd xmm0, xmm6, 0x44
pxor xmm0, xmmword [str.uespemosarenegylmodnarodsetybdetuespemosarenegylmodnarodsetybdet]
pshufd xmm1, xmm6, 0xee
pxor xmm1, xmmword [0x14004f160]
pshufd xmm2, xmm1, 0xee
movq qword [rsp + 0x30], xmm2
movq qword [rsp + 0x50], xmm0
movq qword [rsp + 0x48], xmm1
pshufd xmm2, xmm0, 0xee
movq qword [rsp + 0x40], xmm2
mov rax, qword [rsp + 0x28]
mov r11, qword [rax]
xor ecx, ecx
xor r12d, r12d
jmp 0x14000a638
shr r14, 0x39
lea rax, [r12 - 0x10]
and rax, rsi
mov byte [rbx + r12], r14b
mov byte [rbx + rax + 0x10], r14b
xor ecx, ecx
lea rax, [r12 + 1]
cmp r12, rsi
mov r12, rax
je 0x14000aa56
cmp cl, byte [rbx + r12]
jno 0x14000a627
lea rax, [r12*8]
lea rax, [rax + rax*2]
mov rbp, rbx
sub rbp, rax
lea rax, [rbp - 0x18]
mov qword [rsp + 0x38], rax
mov rax, r12
neg rax
lea rdi, [rax + rax*2]
mov rax, rbx
nop word cs:[rax + rax]
mov r13, qword [rax + rdi*8 - 0x18]
mov rdx, qword [rax + rdi*8 - 0x10]
mov rcx, rdx
and rcx, 0xfffffffffffffff8
je 0x14000a730
mov rax, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
xor r15d, r15d
mov r8, qword [rsp + 0x50]
nop
mov r10, qword [r13 + r15]
xor r9, r10
add r8, r14
rol r14, 0xd
add rax, r9
xor r14, r8
rol r9, 0x10
xor r9, rax
rol r8, 0x20
add rax, r14
add r8, r9
rol r14, 0x11
xor r14, rax
rol r9, 0x15
rol rax, 0x20
xor r9, r8
xor r8, r10
add r15, 8
cmp r15, rcx
jb 0x14000a6a0
movq xmm3, r9
movq xmm2, r14
punpcklqdq xmm2, xmm3
movq xmm4, rax
movq xmm3, r8
punpcklqdq xmm3, xmm4
mov r14d, edx
and r14d, 7
cmp r14d, 4
jb 0x14000a748
mov r8d, dword [r13 + r15]
mov eax, 4
mov ecx, eax
or ecx, 1
cmp ecx, r14d
jb 0x14000a757
jmp 0x14000a771
movdqa xmm2, xmm1
movdqa xmm3, xmm0
xor r15d, r15d
mov r14d, edx
and r14d, 7
cmp r14d, 4
jae 0x14000a70d
xor r8d, r8d
xor eax, eax
mov ecx, eax
or ecx, 1
cmp ecx, r14d
jae 0x14000a771
lea rcx, [rax + r13]
movzx r9d, word [r15 + rcx]
lea ecx, [rax*8]
shl r9, cl
or r8, r9
or rax, 2
cmp eax, r14d
jae 0x14000a790
add r15, rax
movzx r9d, byte [r13 + r15]
shl eax, 3
mov ecx, eax
shl r9, cl
or r8, r9
jmp 0x14000a799
test r14, r14
je 0x14000a82d
lea ecx, [r14*8]
mov r13d, 0xff
shl r13, cl
or r13, r8
cmp r14, 7
jne 0x14000a840
pshufd xmm4, xmm2, 0xee
movq rcx, xmm4
xor rcx, r13
movq r9, xmm2
paddq xmm2, xmm3
movq rax, xmm2
pshufd xmm2, xmm3, 0xee
movq r8, xmm2
add r8, rcx
rol r9, 0xd
xor r9, rax
rol rcx, 0x10
xor rcx, r8
rol rax, 0x20
add r8, r9
add rax, rcx
rol r9, 0x11
rol rcx, 0x15
xor r9, r8
xor rcx, rax
movq xmm3, rcx
movq xmm2, r9
punpcklqdq xmm2, xmm3
rol r8, 0x20
xor rax, r13
movq xmm4, r8
movq xmm3, rax
punpcklqdq xmm3, xmm4
xor r13d, r13d
jmp 0x14000a840
mov r13d, 0xff
nop word cs:[rax + rax]
pshufd xmm4, xmm3, 0xee
movq rax, xmm4
movq rcx, xmm2
pshufd xmm4, xmm2, 0xee
movq r15, xmm4
shl rdx, 0x38
movabs r8, 0x100000000000000
add rdx, r8
or rdx, r13
xor r15, rdx
paddq xmm2, xmm3
movq r13, xmm2
rol rcx, 0xd
add rax, r15
xor rcx, r13
rol r15, 0x10
xor r15, rax
rol r13, 0x20
add rax, rcx
add r13, r15
rol rcx, 0x11
xor rcx, rax
rol r15, 0x15
rol rax, 0x20
xor r15, r13
xor r13, rdx
xor rax, 0xff
add r13, rcx
add rax, r15
rol rcx, 0xd
xor rcx, r13
rol r15, 0x10
rol r13, 0x20
xor r15, rax
add rax, rcx
rol rcx, 0x11
add r13, r15
xor rcx, rax
rol r15, 0x15
xor r15, r13
rol rax, 0x20
add r13, rcx
add rax, r15
rol rcx, 0xd
xor rcx, r13
rol r15, 0x10
rol r13, 0x20
xor r15, rax
add rax, rcx
rol rcx, 0x11
add r13, r15
xor rcx, rax
rol r15, 0x15
xor r15, r13
rol rax, 0x20
add r13, rcx
add rax, r15
rol rcx, 0xd
xor rcx, r13
rol r15, 0x10
xor r15, rax
add rax, rcx
rol rcx, 0x11
rol r15, 0x15
mov r14, rax
rol r14, 0x20
xor r14, rcx
xor r14, r15
xor r14, rax
mov rax, rsi
and rax, r14
movdqu xmm2, xmmword [rbx + rax]
pmovmskb ecx, xmm2
mov rdx, rax
test ecx, ecx
jne 0x14000a977
mov r8d, 0x10
mov rdx, rax
nop dword [rax]
add rdx, r8
and rdx, rsi
movdqu xmm2, xmmword [rbx + rdx]
pmovmskb ecx, xmm2
add r8, 0x10
test ecx, ecx
je 0x14000a960
tzcnt ecx, ecx
add rcx, rdx
and rcx, rsi
cmp byte [rbx + rcx], 0
js 0x14000a993
movdqa xmm2, xmmword [rbx]
pmovmskb ecx, xmm2
tzcnt ecx, ecx
mov rdx, r12
sub rdx, rax
mov r8, rcx
sub r8, rax
xor r8, rdx
and r8, rsi
cmp r8, 0x10
jb 0x14000a610
lea rax, [rcx*8]
lea rax, [rax + rax*2]
movzx edx, byte [rbx + rcx]
shr r14, 0x39
lea r8, [rcx - 0x10]
and r8, rsi
mov byte [rbx + rcx], r14b
mov byte [rbx + r8 + 0x10], r14b
cmp dl, 0xff
je 0x14000aa20
mov rcx, rbx
sub rcx, rax
mov rax, qword [rbp - 0x18]
mov rdx, qword [rcx - 0x18]
mov qword [rbp - 0x18], rdx
mov qword [rcx - 0x18], rax
mov rax, qword [rbp - 0x10]
mov rdx, qword [rcx - 0x10]
mov qword [rbp - 0x10], rdx
mov qword [rcx - 0x10], rax
mov rax, qword [rbp - 8]
mov rdx, qword [rcx - 8]
mov qword [rbp - 8], rdx
mov qword [rcx - 8], rax
mov rax, r11
jmp 0x14000a670
neg rax
add rax, rbx
add rax, 0xffffffffffffffe8
lea rcx, [r12 - 0x10]
and rcx, rsi
mov byte [rbx + r12], 0xff
mov byte [rbx + rcx + 0x10], 0xff
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x10], rcx
movdqu xmm2, xmmword [rdx]
movdqu xmmword [rax], xmm2
jmp 0x14000a625
mov r8, qword [rsp + 0x28]
mov rcx, qword [r8 + 8]
mov rdi, qword [r8 + 0x18]
lea rax, [rcx + 1]
mov rdx, rax
shr rdx, 3
and rax, 0xfffffffffffffff8
sub rax, rdx
cmp rcx, 8
cmovb rax, rcx
sub rax, rdi
mov qword [r8 + 0x10], rax
movabs rax, 0x7ffffffffffffff0
add rax, 0x11
movaps xmm6, xmmword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14000a120
mov rcx, r15
call fcn.14000a160
int3