Function at 0x1419f7ed0
Capabilities:
Encode data using xor
Encrypt data using aes via x86 extensions

Disassembly:
movsx eax, r8w
movq xmm4, r9
punpcklqdq xmm4, xmm4
movq xmm0, r8
lea r9, [rcx + rdx]
pinsrw xmm0, eax, 4
pshufhw xmm2, xmm0, 0
xorps xmm2, xmm4
aesenc xmm2, xmm2
cmp rdx, 0x10
jae 0x1419f7956
test rdx, rdx
je 0x1419f7a09
bt rcx, 0xb
jb 0x1419f7925
movdqu xmm0, xmmword [rcx]
lea rax, [0x14007a7f7]
sub rax, rdx
movdqu xmm1, xmmword [rax]
andps xmm1, xmm0
jmp 0x1419f793e
movdqu xmm1, xmmword [r9 - 0x10]
lea rax, [0x14007a817]
sub rax, rdx
movdqu xmm0, xmmword [rax]
pshufb xmm1, xmm0
xorps xmm2, xmm1
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm2, xmm2
movq rax, xmm2
ret
cmp rdx, 0x20
ja 0x1419f7971
movdqa xmm1, xmm2
mov r8, rcx
aesenc xmm1, xmm4
movdqa xmm0, xmm2
jmp 0x1419f7a10
lea rax, [rcx + 0x20]
movdqa xmm3, xmm2
aesenc xmm3, xmm4
cmp rax, r9
jae 0x1419f79b3
movdqu xmm0, xmmword [rcx]
add rcx, 0x20
movdqu xmm1, xmmword [rax - 0x10]
add rax, 0x20
xorps xmm2, xmm0
xorps xmm3, xmm1
aesenc xmm2, xmm2
aesenc xmm3, xmm3
aesenc xmm2, xmm2
aesenc xmm3, xmm3
cmp rax, r9
jb 0x1419f7983
lea rax, [rcx + 0x10]
cmp rax, r9
jae 0x1419f79e9
movdqu xmm1, xmmword [r9 - 0x10]
movdqu xmm0, xmmword [rcx]
xorps xmm3, xmm1
aesenc xmm3, xmm3
aesenc xmm3, xmm3
xorps xmm2, xmm0
aesenc xmm2, xmm2
aesenc xmm2, xmm2
xorps xmm2, xmm3
movq rax, xmm2
ret
cmp rcx, r9
je 0x1419f7a06
movdqu xmm0, xmmword [r9 - 0x10]
xorps xmm2, xmm0
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm2, xmm2
xorps xmm2, xmm3
movq rax, xmm2
ret
lea rax, [r8 + 0x10]
movdqa xmm3, xmm0
cmp rax, r9
jae 0x1419f7a4b
movdqu xmm2, xmmword [r8]
movdqu xmm0, xmmword [r9 - 0x10]
xorps xmm3, xmm2
xorps xmm1, xmm0
aesenc xmm3, xmm3
aesenc xmm1, xmm1
aesenc xmm1, xmm1
aesenc xmm3, xmm3
xorps xmm3, xmm1
movq rax, xmm3
ret
cmp r8, r9
je 0x1419f7a68
movdqu xmm0, xmmword [r9 - 0x10]
xorps xmm3, xmm0
aesenc xmm3, xmm3
aesenc xmm3, xmm3
aesenc xmm3, xmm3
xorps xmm3, xmm1
movq rax, xmm3
ret
vmovq xmm1, r8
vpunpcklqdq xmm1, xmm1, xmm1
lea rcx, [rdx + r8]
lea rax, [rdx + 0x40]
vinsertf128 ymm1, ymm1, xmm1, 1
vaesenc ymm3, ymm0, ymm1
vmovdqu ymm2, ymm0
cmp rax, rcx
jae 0x1419f7ade
lea r8, [rax - 0x20]
nop dword [rax]
vpxor ymm2, ymm2, ymmword [rdx]
vpxor ymm1, ymm3, ymmword [r8]
add rdx, 0x40
lea r8, [r8 + 0x40]
add rax, 0x40
vaesenc ymm2, ymm2, ymm2
vaesenc ymm0, ymm1, ymm1
vaesenc ymm2, ymm2, ymm2
vaesenc ymm3, ymm0, ymm0
cmp rax, rcx
jb 0x1419f7ab0
lea rax, [rdx + 0x20]
cmp rax, rcx
jae 0x1419f7b06
vpxor ymm2, ymm2, ymmword [rdx]
vpxor ymm1, ymm3, ymmword [rcx - 0x20]
vaesenc ymm2, ymm2, ymm2
vaesenc ymm0, ymm1, ymm1
vaesenc ymm2, ymm2, ymm2
vaesenc ymm3, ymm0, ymm0
jmp 0x1419f7b1f
cmp rdx, rcx
je 0x1419f7b1f
vpxor ymm1, ymm2, ymmword [rcx - 0x20]
vaesenc ymm2, ymm1, ymm1
vaesenc ymm0, ymm2, ymm2
vaesenc ymm2, ymm0, ymm0
vpxor ymm0, ymm3, ymm2
vextracti128 xmm1, ymm0, 1
vxorps xmm1, xmm1, xmm0
vmovq rax, xmm1
vzeroupper
ret
mov rax, qword [0x141b3f1c0]
bt rax, 0x1b
jae 0x1419f7ca6
mov rax, qword [0x141b3f1c0]
movq xmm3, r9
movsx r9d, r8w
movq xmm0, r8
punpcklqdq xmm3, xmm3
pinsrw xmm0, r9d, 4
bt rax, 0x16
jae 0x1419f7c0f
pshufhw xmm0, xmm0, 0
xorps xmm0, xmm3
aesenc xmm0, xmm0
movdqa xmm1, xmm0
aesenc xmm1, xmm3
cmp rdx, 0x20
ja 0x1419f7bfe
vinsertf128 ymm2, ymm0, xmm1, 1
test rdx, rdx
je 0x1419f7bf5
mov eax, 0xffffffff
bzhi eax, eax, edx
kmovd k1, eax
vmovdqu8 ymm0 {k1} {z}, ymmword [rcx]
cmp rdx, 0x10
jb 0x1419f7bde
vpxor ymm0, ymm2, ymm0
vaesenc ymm1, ymm0, ymm0
vaesenc ymm2, ymm1, ymm1
vextracti128 xmm0, ymm2, 1
vxorps xmm2, xmm2, xmm0
vmovq rax, xmm2
vzeroupper
ret
vxorps xmm0, xmm0, xmm2
vaesenc xmm0, xmm0, xmm0
vaesenc xmm0, xmm0, xmm0
vaesenc xmm0, xmm0, xmm0
vmovdqa xmm2, xmm0
vmovq rax, xmm2
vzeroupper
ret
mov r8, rdx
mov rdx, rcx
vinsertf128 ymm0, ymm0, xmm1, 1
jmp 0x1419f7a80
pshufhw xmm2, xmm0, 0
lea r9, [rcx + rdx]
xorps xmm2, xmm3
aesenc xmm2, xmm2
cmp rdx, 0x10
jae 0x1419f7c7a
test rdx, rdx
je 0x1419f7c74
bt rcx, 0xb
jb 0x1419f7c49
movdqu xmm0, xmmword [rcx]
lea rax, [0x14007a7f7]
sub rax, rdx
movdqu xmm1, xmmword [rax]
andps xmm1, xmm0
jmp 0x1419f7c62
movdqu xmm1, xmmword [r9 - 0x10]
lea rax, [0x14007a817]
sub rax, rdx
movdqu xmm0, xmmword [rax]
pshufb xmm1, xmm0
xorps xmm2, xmm1
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm2, xmm2
movq rax, xmm2
ret
movdqa xmm1, xmm2
aesenc xmm1, xmm3
cmp rdx, 0x20
ja 0x1419f7c95
mov r8, rcx
movdqa xmm0, xmm2
jmp 0x1419f7a10
mov r8, rdx
mov rdx, rcx
vinsertf128 ymm0, ymm2, xmm1, 1
jmp 0x1419f7a80
jmp 0x1419f78d0
movabs r11, 0xc6a4a7935bd1e995
mov r10, rdx
imul r10, r11
mov eax, 0xfffffff8
mov r9, rcx
xor r10, r8
mov r8, rdx
and r8, rax
add r8, rcx
cmp rcx, r8
je 0x1419f7e25
nop word [rax + rax]
mov rax, qword [r9]
add r9, 8
imul rax, r11
mov rcx, rax
shr rcx, 0x2f
xor rcx, rax
imul rcx, r11
xor r10, rcx
imul r10, r11
cmp r9, r8
jne 0x1419f7e00
and edx, 7
je 0x1419f7e5a
xor eax, eax
add r8, rdx
cmp r9, r8
je 0x1419f7e53
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r9]
inc r9
shl rax, 8
or rax, rcx
cmp r9, r8
jne 0x1419f7e40
xor r10, rax
imul r10, r11
mov rcx, r10
shr rcx, 0x2f
xor rcx, r10
imul rcx, r11
mov rax, rcx
shr rax, 0x2f
xor rax, rcx
ret
mov r8, rdx
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
add rdx, rdx
mov r9, rdx
test r8, r8
je 0x1419f7f09
mov r9, qword [0x141b3d9d8]
mov rax, qword [0x141b3f1c0]
bt rax, 8
jae 0x1419f7f09
mov rax, qword [0x141b3f1c0]
test al, 0x20
jne 0x1419f7b40
cmp rdx, 8
jbe 0x1419f7dd0
jmp 0x1419f7f60
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov rdi, rcx
mov rax, r9
mov rsi, rdx
mov r11, r8
and rsi, 0xfffffffffffffff8
mov r10, r8
add rsi, rcx
mov rbx, rdx
movabs rcx, 0x7465646279746573
shl rbx, 0x38
xor rax, rcx
mov ebp, edx
movabs rcx, 0x6c7967656e657261
and ebp, 7
xor r11, rcx
movabs rcx, 0x646f72616e646f6d
xor r9, rcx
movabs rcx, 0x736f6d6570736575
xor r10, rcx
cmp rdi, rsi
je 0x1419f801f
nop
xor rax, qword [rdi]
add r10, r9
add r11, rax
ror r9, 0x33
xor r9, r10
ror rax, 0x30
xor rax, r11
ror r10, 0x20
add r11, r9
add r10, rax
mov rdx, r11
ror r9, 0x2f
mov rcx, r11
shr rdx, 0x20
xor r9, r11
ror rax, 0x2b
xor rax, r10
shl rcx, 0x20
xor r10, qword [rdi]
mov r11, rdx
or r11, rcx
add rdi, 8
cmp rdi, rsi
jne 0x1419f7fd0
lea ecx, [rbp - 1]
cmp ecx, 6
ja case.default.0x1419f803c
lea r8, [0x140000000]
movsxd rcx, ecx
mov edx, dword [r8 + rcx*4 + 0x19f8134]
add rdx, r8
jmp rdx
movzx ecx, byte [rdi + 6]
shl rcx, 0x30
or rbx, rcx
movzx ecx, byte [rdi + 5]
shl rcx, 0x28
or rbx, rcx
movzx ecx, byte [rdi + 4]
shl rcx, 0x20
or rbx, rcx
movzx ecx, byte [rdi + 3]
shl rcx, 0x18
or rbx, rcx
movzx ecx, byte [rdi + 2]
shl rcx, 0x10
or rbx, rcx
movzx ecx, byte [rdi + 1]
shl rcx, 8
or rbx, rcx
movzx ecx, byte [rdi]
or rbx, rcx
add r10, r9
xor rax, rbx
add r11, rax
ror r9, 0x33
xor r9, r10
ror rax, 0x30
xor rax, r11
ror r10, 0x20
add r10, rax
add r11, r9
ror rax, 0x2b
mov r8d, 2
ror r9, 0x2f
xor rax, r10
xor r9, r11
xor r10, rbx
ror r11, 0x20
xor r11, 0xff
nop dword [rax]
add r11, rax
add r10, r9
ror r9, 0x33
xor r9, r10
ror rax, 0x30
xor rax, r11
ror r10, 0x20
add r11, r9
add r10, rax
mov rdx, r11
ror r9, 0x2f
mov rcx, r11
shr rdx, 0x20
xor r9, r11
ror rax, 0x2b
shl rcx, 0x20
mov r11, rdx
or r11, rcx
xor rax, r10
sub r8, 1
jne 0x1419f80d0
mov rbx, qword [rsp + 8]
xor rax, r11
mov rbp, qword [rsp + 0x10]
xor rax, r9
mov rsi, qword [rsp + 0x18]
xor rax, r10
mov rdi, qword [rsp + 0x20]
ret