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

Disassembly:
mov r10, rdx
movsx eax, r8w
movq xmm0, r8
movq xmm4, r9
punpcklqdq xmm4, xmm4
add rdx, rcx
pinsrw xmm0, eax, 4
pshufhw xmm1, xmm0, 0
xorps xmm1, xmm4
aesenc xmm1, xmm1
cmp r10, 0x10
jae 0x141db5b87
test r10, r10
je 0x141db5c94
bt rcx, 0xb
jb 0x141db5b57
movdqu xmm0, xmmword [rcx]
lea rax, [0x140079f77]
sub rax, r10
movdqu xmm2, xmmword [rax]
andps xmm2, xmm0
jmp 0x141db5b6f
movdqu xmm2, xmmword [rdx - 0x10]
lea rax, [0x140079f97]
sub rax, r10
movdqu xmm0, xmmword [rax]
pshufb xmm2, xmm0
xorps xmm1, xmm2
aesenc xmm1, xmm1
aesenc xmm1, xmm1
aesenc xmm1, xmm1
movq rax, xmm1
ret
cmp r10, 0x20
ja 0x141db5bf8
lea rax, [rcx + 0x10]
movdqa xmm3, xmm1
aesenc xmm3, xmm4
cmp rax, rdx
jae 0x141db5bcb
movdqu xmm2, xmmword [rdx - 0x10]
movdqu xmm0, xmmword [rcx]
xorps xmm2, xmm3
aesenc xmm2, xmm2
aesenc xmm2, xmm2
xorps xmm0, xmm1
aesenc xmm0, xmm0
aesenc xmm0, xmm0
xorps xmm0, xmm2
movq rax, xmm0
ret
movdqa xmm2, xmm3
movdqa xmm0, xmm1
cmp rcx, rdx
je 0x141db5bef
movdqu xmm0, xmmword [rdx - 0x10]
xorps xmm0, xmm1
aesenc xmm0, xmm0
aesenc xmm0, xmm0
aesenc xmm0, xmm0
xorps xmm0, xmm2
movq rax, xmm0
ret
lea rax, [rcx + 0x20]
movdqa xmm2, xmm1
aesenc xmm2, xmm4
cmp rax, rdx
jae 0x141db5c40
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
add rcx, 0x20
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x10]
add rax, 0x20
aesenc xmm1, xmm1
xorps xmm2, xmm0
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm1, xmm1
cmp rax, rdx
jb 0x141db5c10
lea rax, [rcx + 0x10]
cmp rax, rdx
jae 0x141db5c75
movdqu xmm0, xmmword [rcx]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rdx - 0x10]
aesenc xmm1, xmm1
xorps xmm2, xmm0
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm1, xmm1
xorps xmm1, xmm2
movq rax, xmm1
ret
cmp rcx, rdx
je 0x141db5c91
movdqu xmm0, xmmword [rdx - 0x10]
xorps xmm1, xmm0
aesenc xmm1, xmm1
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm1, xmm2
movq rax, xmm1
ret
movsx eax, r8w
movq xmm0, r8
lea r8, [rcx + rdx]
movq xmm4, r9
punpcklqdq xmm4, xmm4
pinsrw xmm0, eax, 4
pshufhw xmm2, xmm0, 0
xorps xmm2, xmm4
aesenc xmm2, xmm2
cmp rdx, 0x10
jae 0x141db5d22
test rdx, rdx
je 0x141db5d1c
bt rcx, 0xb
jb 0x141db5cf1
movdqu xmm0, xmmword [rcx]
lea rax, [0x140079f77]
sub rax, rdx
movdqu xmm1, xmmword [rax]
andps xmm1, xmm0
jmp 0x141db5d0a
movdqu xmm1, xmmword [r8 - 0x10]
lea rax, [0x140079f97]
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 0x141db5d95
lea rax, [rcx + 0x10]
movdqa xmm3, xmm2
aesenc xmm3, xmm4
cmp rax, r8
jae 0x141db5d67
movdqu xmm1, xmmword [r8 - 0x10]
movdqu xmm0, xmmword [rcx]
xorps xmm1, xmm3
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm0, xmm2
aesenc xmm0, xmm0
aesenc xmm0, xmm0
xorps xmm0, xmm1
movq rax, xmm0
ret
movdqa xmm1, xmm3
movdqa xmm0, xmm2
cmp rcx, r8
je 0x141db5d8c
movdqu xmm0, xmmword [r8 - 0x10]
xorps xmm0, xmm2
aesenc xmm0, xmm0
aesenc xmm0, xmm0
aesenc xmm0, xmm0
xorps xmm0, xmm1
movq rax, xmm0
ret
movdqa xmm1, xmm2
mov r8, rdx
aesenc xmm1, xmm4
vinsertf128 ymm0, ymm2, xmm1, 1
mov rdx, rcx
jmp 0x141db5f00
movsx eax, r8w
movq xmm0, r8
movq xmm2, r9
mov r10, rdx
punpcklqdq xmm2, xmm2
pinsrw xmm0, eax, 4
pshufhw xmm0, xmm0, 0
xorps xmm0, xmm2
aesenc xmm0, xmm0
movdqa xmm1, xmm0
aesenc xmm1, xmm2
vinsertf128 ymm2, ymm0, xmm1, 1
cmp rdx, 0x20
ja 0x141db5e4c
test rdx, rdx
je 0x141db5e43
mov eax, 0xffffffff
bzhi eax, eax, r10d
kmovd k1, eax
vmovdqu8 ymm0 {k1} {z}, ymmword [rcx]
cmp r10, 0x10
jb 0x141db5e2c
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
vmovq xmm0, r10
vpunpcklqdq xmm0, xmm0, xmm0
add rdx, rcx
lea rax, [rcx + 0x40]
vinsertf128 ymm0, ymm0, xmm0, 1
vaesenc ymm3, ymm2, ymm0
cmp rax, rdx
jae 0x141db5e9e
lea r8, [rax - 0x20]
vpxor ymm2, ymm2, ymmword [rcx]
vpxor ymm1, ymm3, ymmword [r8]
add rcx, 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, rdx
jb 0x141db5e70
lea rax, [rcx + 0x20]
cmp rax, rdx
jae 0x141db5ec6
vpxor ymm2, ymm2, ymmword [rcx]
vpxor ymm1, ymm3, ymmword [rdx - 0x20]
vaesenc ymm2, ymm2, ymm2
vaesenc ymm0, ymm1, ymm1
vaesenc ymm2, ymm2, ymm2
vaesenc ymm3, ymm0, ymm0
jmp 0x141db5edf
cmp rcx, rdx
je 0x141db5edf
vpxor ymm1, ymm2, ymmword [rdx - 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
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 0x141db5f5e
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 0x141db5f30
lea rax, [rdx + 0x20]
cmp rax, rcx
jae 0x141db5f86
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 0x141db5f9f
cmp rdx, rcx
je 0x141db5f9f
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
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 0x141db6135
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 0x141db6110
and edx, 7
je 0x141db616a
xor eax, eax
add r8, rdx
cmp r9, r8
je 0x141db6163
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r9]
inc r9
shl rax, 8
or rax, rcx
cmp r9, r8
jne 0x141db6150
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 0x141db625f
mov r9, qword [0x141f1e8d0]
mov rax, qword [0x141f20200]
bt rax, 8
jae 0x141db625f
mov rax, qword [0x141f20200]
test al, 0x20
je 0x141db625f
mov rax, qword [0x141f20200]
bt rax, 0x1c
jae 0x141db625a
mov rax, qword [0x141f20200]
bt rax, 0x16
jb 0x141db5db0
jmp 0x141db5ca0
jmp 0x141db5b00
cmp rdx, 8
jbe 0x141db60e0
jmp 0x141db62b0
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 0x141db636f
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 0x141db6320
lea ecx, [rbp - 1]
cmp ecx, 6
ja case.default.0x141db638c
lea r8, [0x140000000]
movsxd rcx, ecx
mov edx, dword [r8 + rcx*4 + 0x1db6484]
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 0x141db6420
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