Function at 0x14006e920
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x118
lea rbp, [rsp + 0x80]
and rsp, 0xffffffffffffffe0
mov rsi, rcx
nop word [rax + rax]
mov eax, dword [0x141dcaf78]
and eax, dword [0x141dcaf7c]
xor eax, 0x2166924f
imul eax, eax, 0x7914d65e
add eax, 0x8d226418
cmp eax, 0xe61096f7
ja 0x14006e940
mov rax, qword [rsi + 0x220]
cmp rax, 3
ja 0x14006ea06
shl rax, 4
add rax, rsi
add rax, 0x1e0
nop word cs:[rax + rax]
mov ecx, dword [0x141dcaf80]
xor ecx, dword [0x141dcaf84]
imul ecx, ecx, 0xa72c4994
add ecx, 0xea041f06
and ecx, 0xfe077eb0
cmp ecx, 0x1bffd919
jb 0x14006e990
vmovdqu xmm0, xmmword [rdx]
vmovdqu xmmword [rax], xmm0
mov rax, qword [rsi + 0x220]
cmp rax, 3
jae 0x14006e9da
inc rax
mov qword [rsi + 0x220], rax
jmp 0x14006ec81
mov eax, dword [0x141dcafa0]
and eax, dword [0x141dcafa4]
add eax, 0x1264375d
imul rax, rax, 0x6c80536f
shr rax, 0x3e
cmp eax, 0x5de4bdfb
jbe 0x14006ea95
jmp 0x14006eac4
mov eax, dword [0x141dcaf88]
xor edx, edx
div dword [0x141dcaf8c]
and eax, 0xb628de
add eax, 0x2dbddfe0
or eax, 0xfe62797b
cmp eax, 0xf84842e3
jae 0x14006ea2c
ud2
mov ecx, 0xd71d73b7
nop word cs:[rax + rax]
mov eax, dword [0x141dcaf90]
xor edx, edx
div dword [0x141dcaf94]
imul rax, rcx
shr rax, 0x3f
or eax, 0xcedfaae2
ud2
mov eax, dword [0x141dcafa8]
mov ecx, dword [0x141dcafac]
add eax, ecx
add eax, 0xf11987e2
xor eax, 0x32388f39
add eax, 0x4b1b284f
mov qword [rsi + 0x220], 0
cmp eax, 0x68393dc3
jae 0x14006ead1
mov qword [rsi + 0x220], 0
jmp 0x14006ea95
vmovdqa ymm0, ymmword [rsi + 0x1e0]
vmovdqa ymm1, ymmword [rsi + 0x200]
mov eax, dword [0x141dcafb0]
xor edx, edx
div dword [0x141dcafb4]
mov eax, 0x945084b1
vpunpckhqdq ymm2, ymm0, ymm1
vpermq ymm2, ymm2, 0xd8
vpunpcklqdq ymm0, ymm0, ymm1
vpermq ymm0, ymm0, 0xd8
vpsrlq ymm1, ymm2, 0x28
vpbroadcastd ymm3, dword [0x140102c80]
vpor ymm4, ymm1, ymm3
vpsrlq ymm1, ymm0, 0x2e
vpsllq ymm2, ymm2, 0x12
vpor ymm1, ymm2, ymm1
vpsrlq ymm3, ymm0, 0x1a
vpblendd ymm2, ymm3, ymm2, 0xaa
vpbroadcastq ymm3, qword [0x140102c88]
vpand ymm2, ymm2, ymm3
vpsllq ymm1, ymm1, 0x1a
nop word cs:[rax + rax]
mov ecx, dword [0x141dcafb8]
and ecx, dword [0x141dcafbc]
xor ecx, 0x1f86dfef
imul rcx, rax
shr rcx, 0x3f
add ecx, 0x5da1042f
cmp ecx, 0x51d7849f
jb 0x14006eb50
mov eax, dword [0x141dcafc0]
and eax, dword [0x141dcafc4]
add eax, 0x5a7a7fa2
and eax, 0xa1447013
vpblendd ymm0, ymm0, ymm1, 0xaa
cmp eax, 0xf7b2a8ec
vmovdqa ymmword [rsp + 0x60], ymm4
vmovdqa ymmword [rsp + 0x40], ymm2
jbe 0x14006ec05
vmovdqa ymmword [rsp + 0x20], ymm0
vpand ymm0, ymm3, ymmword [rsp + 0x20]
vmovdqa ymmword [rsp + 0x80], ymm0
vmovdqa ymmword [rsp + 0xa0], ymm2
vmovdqa ymmword [rsp + 0xc0], ymm4
lea rdx, [rsp + 0x80]
mov rcx, rsi
vmovdqa ymmword [rsp + 0xe0], ymm3
vzeroupper
call fcn.14006ecd0
vmovdqa ymm0, ymmword [rsp + 0x20]
vmovdqa ymm3, ymmword [rsp + 0xe0]
vmovdqa ymm2, ymmword [rsp + 0x40]
vmovdqa ymm4, ymmword [rsp + 0x60]
vpand ymm0, ymm0, ymm3
vmovdqa ymmword [rsp + 0x20], ymm0
lea rdi, [rsp + 0x80]
nop word [rax + rax]
mov ebx, dword [0x141dcafc8]
add ebx, dword [0x141dcafcc]
and ebx, 0xa3b53ec8
add ebx, 0x29e9069a
xor ebx, 0xff07fa6
vmovdqa ymm0, ymmword [rsp + 0x20]
vmovdqa ymmword [rsp + 0x80], ymm0
vmovdqa ymmword [rsp + 0xa0], ymm2
vmovdqa ymmword [rsp + 0xc0], ymm4
mov rcx, rsi
mov rdx, rdi
vzeroupper
call fcn.14006ecd0
vmovdqa ymm2, ymmword [rsp + 0x40]
vmovdqa ymm4, ymmword [rsp + 0x60]
cmp ebx, 0xb2f34e52
jae 0x14006ec20
mov eax, 0xb4b3b2f1
nop word cs:[rax + rax]
mov ecx, dword [0x141dcafd0]
xor ecx, dword [0x141dcafd4]
imul rcx, rax
shr rcx, 0x37
and ecx, 0x158
or ecx, 0xca269280
cmp ecx, 0x1f38baac
jb 0x14006ec90
lea rsp, [rbp + 0x98]
pop rbx
pop rdi
pop rsi
pop rbp
vzeroupper
ret