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

Disassembly:
mov r10, rdx
movsx eax, r8w
movq xmm0, r8
movq xmm1, r9
punpcklqdq xmm1, xmm1
add rdx, rcx
pinsrw xmm0, eax, 4
pshufhw xmm2, xmm0, 0
xorps xmm2, xmm1
aesenc xmm2, xmm2
cmp r10, 0x10
jae 0x140113027
test r10, r10
je 0x140113124
bt rcx, 0xb
jb 0x140112ff7
movdqu xmm0, xmmword [rcx]
lea rax, [0x14029b8f7]
sub rax, r10
movdqu xmm1, xmmword [rax]
andps xmm1, xmm0
jmp 0x14011300f
movdqu xmm1, xmmword [rdx - 0x10]
lea rax, [0x14029b917]
sub rax, r10
movdqu xmm0, xmmword [rax]
pshufb xmm1, xmm0
xorps xmm2, xmm1
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm2, xmm2
movq rax, xmm2
ret
movdqa xmm3, xmm2
aesenc xmm3, xmm1
cmp r10, 0x20
ja 0x140113094
lea rax, [rcx + 0x10]
cmp rax, rdx
jae 0x14011306b
movdqu xmm0, xmmword [rdx - 0x10]
movdqu xmm1, xmmword [rcx]
xorps xmm3, xmm0
aesenc xmm3, xmm3
aesenc xmm3, xmm3
xorps xmm1, xmm2
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm1, xmm3
movq rax, xmm1
ret
movdqa xmm1, xmm2
cmp rcx, rdx
je 0x14011308b
movdqu xmm1, xmmword [rdx - 0x10]
xorps xmm1, xmm2
aesenc xmm1, xmm1
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm1, xmm3
movq rax, xmm1
ret
lea rax, [rcx + 0x20]
cmp rax, rdx
jae 0x1401130d0
nop dword [rax]
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, rdx
jb 0x1401130a0
lea rax, [rcx + 0x10]
cmp rax, rdx
jae 0x140113105
movdqu xmm0, xmmword [rcx]
movdqu xmm1, xmmword [rdx - 0x10]
xorps xmm2, xmm0
xorps xmm3, xmm1
aesenc xmm2, xmm2
aesenc xmm3, xmm3
aesenc xmm3, xmm3
aesenc xmm2, xmm2
xorps xmm2, xmm3
movq rax, xmm2
ret
cmp rcx, rdx
je 0x140113121
movdqu xmm0, xmmword [rdx - 0x10]
xorps xmm2, xmm0
aesenc xmm2, xmm2
aesenc xmm2, xmm2
aesenc xmm2, xmm2
xorps xmm2, xmm3
movq rax, xmm2
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 0x1401131b2
test rdx, rdx
je 0x1401131ac
bt rcx, 0xb
jb 0x140113181
movdqu xmm0, xmmword [rcx]
lea rax, [0x14029b8f7]
sub rax, rdx
movdqu xmm1, xmmword [rax]
andps xmm1, xmm0
jmp 0x14011319a
movdqu xmm1, xmmword [r8 - 0x10]
lea rax, [0x14029b917]
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 0x140113221
lea rax, [rcx + 0x10]
movdqa xmm3, xmm2
aesenc xmm3, xmm4
cmp rax, r8
jae 0x1401131f7
movdqu xmm0, xmmword [r8 - 0x10]
movdqu xmm1, xmmword [rcx]
xorps xmm3, xmm0
aesenc xmm3, xmm3
aesenc xmm3, xmm3
xorps xmm1, xmm2
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm1, xmm3
movq rax, xmm1
ret
movdqa xmm1, xmm2
cmp rcx, r8
je 0x140113218
movdqu xmm1, xmmword [r8 - 0x10]
xorps xmm1, xmm2
aesenc xmm1, xmm1
aesenc xmm1, xmm1
aesenc xmm1, xmm1
xorps xmm1, xmm3
movq rax, xmm1
ret
movdqa xmm1, xmm2
mov r8, rdx
aesenc xmm1, xmm4
vinsertf128 ymm0, ymm2, xmm1, 1
mov rdx, rcx
jmp 0x140113390
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 0x1401132dc
test rdx, rdx
je 0x1401132d3
mov eax, 0xffffffff
bzhi eax, eax, r10d
kmovd k1, eax
vmovdqu8 ymm0 {k1} {z}, ymmword [rcx]
cmp r10, 0x10
jb 0x1401132bc
vpxor ymm0, ymm0, ymm2
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 0x14011332a
nop dword [rax]
vpxor ymm2, ymm2, ymmword [rcx]
vpxor ymm1, ymm3, ymmword [rax - 0x20]
add rcx, 0x40
add rax, 0x40
vaesenc ymm2, ymm2, ymm2
vaesenc ymm0, ymm1, ymm1
vaesenc ymm2, ymm2, ymm2
vaesenc ymm3, ymm0, ymm0
cmp rax, rdx
jb 0x140113300
lea rax, [rcx + 0x20]
cmp rax, rdx
jae 0x140113352
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 0x14011336b
cmp rcx, rdx
je 0x14011336b
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 0x1401133ea
nop word [rax + rax]
vpxor ymm2, ymm2, ymmword [rdx]
vpxor ymm1, ymm3, ymmword [rax - 0x20]
add rdx, 0x40
add rax, 0x40
vaesenc ymm2, ymm2, ymm2
vaesenc ymm0, ymm1, ymm1
vaesenc ymm2, ymm2, ymm2
vaesenc ymm3, ymm0, ymm0
cmp rax, rcx
jb 0x1401133c0
lea rax, [rdx + 0x20]
cmp rax, rcx
jae 0x140113412
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 0x14011342b
cmp rdx, rcx
je 0x14011342b
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 0x1401135c5
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 0x1401135a0
and edx, 7
je 0x1401135fa
xor eax, eax
add r8, rdx
cmp r9, r8
je 0x1401135f3
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [r9]
inc r9
shl rax, 8
or rax, rcx
cmp r9, r8
jne 0x1401135e0
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 0x1401136ef
mov r9, qword [0x1403858b0]
mov rax, qword [0x140387240]
bt rax, 8
jae 0x1401136ef
mov rax, qword [0x140387240]
test al, 0x20
je 0x1401136ef
mov rax, qword [0x140387240]
bt rax, 0x1c
jae 0x1401136ea
mov rax, qword [0x140387240]
bt rax, 0x16
jb 0x140113240
jmp 0x140113130
jmp 0x140112fa0
cmp rdx, 8
jbe 0x140113570
jmp 0x140113740
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 0x1401137ff
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 0x1401137b0
lea ecx, [rbp - 1]
cmp ecx, 6
ja case.default.0x14011381c
lea r8, [0x140000000]
movsxd rcx, ecx
mov edx, dword [r8 + rcx*4 + 0x113914]
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 0x1401138b0
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