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

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm8
movaps xmmword [rsp + 0x40], xmm9
xorps xmm4, xmm4
movaps xmmword [rsp + 0x20], xmm4
movaps xmmword [rsp + 0x30], xmm4
mov rax, qword [r8]
mov r8d, dword [r8 + 8]
mov r10, qword [rdx]
mov edx, dword [rdx + 8]
mov r9d, edx
mov r11d, r8d
cmp r9d, r11d
mov ebx, r8d
cmovle ebx, edx
mov r9d, ebx
mov r11d, ebx
sar r11d, 4
mov rsi, r10
mov rdi, rax
movups xmm0, xmmword [rcx + 0xb0]
movups xmm1, xmmword [0x1402c5670]
movaps xmm2, xmm0
pshufb xmm2, xmm1
cmp ebx, 0x80
jl 0x1400bc54b
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm3, xmm2
pshufb xmm3, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm4, xmm2
pshufb xmm4, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm5, xmm2
pshufb xmm5, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm6, xmm2
pshufb xmm6, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm7, xmm2
pshufb xmm7, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm8, xmm2
pshufb xmm8, xmm1
movups xmm1, xmmword [0x1402c5680]
paddq xmm2, xmm1
movups xmm1, xmmword [0x1402c5670]
movaps xmm9, xmm2
pshufb xmm9, xmm1
movups xmm1, xmmword [rcx]
pxor xmm0, xmm1
pxor xmm3, xmm1
pxor xmm4, xmm1
pxor xmm5, xmm1
pxor xmm6, xmm1
pxor xmm7, xmm1
pxor xmm8, xmm1
pxor xmm9, xmm1
movups xmm1, xmmword [rcx + 0x10]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x20]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x30]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x40]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x50]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x60]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x70]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x80]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0x90]
aesenc xmm0, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + 0xa0]
aesenclast xmm0, xmm1
aesenclast xmm3, xmm1
aesenclast xmm4, xmm1
aesenclast xmm5, xmm1
aesenclast xmm6, xmm1
aesenclast xmm7, xmm1
aesenclast xmm8, xmm1
aesenclast xmm9, xmm1
movups xmm1, xmmword [rsi]
pxor xmm0, xmm1
movups xmmword [rdi], xmm0
movups xmm0, xmmword [rsi + 0x10]
pxor xmm0, xmm3
movups xmmword [rdi + 0x10], xmm0
movups xmm0, xmmword [rsi + 0x20]
pxor xmm0, xmm4
movups xmmword [rdi + 0x20], xmm0
movups xmm0, xmmword [rsi + 0x30]
pxor xmm0, xmm5
movups xmmword [rdi + 0x30], xmm0
movups xmm0, xmmword [rsi + 0x40]
pxor xmm0, xmm6
movups xmmword [rdi + 0x40], xmm0
movups xmm0, xmmword [rsi + 0x50]
pxor xmm0, xmm7
movups xmmword [rdi + 0x50], xmm0
movups xmm0, xmmword [rsi + 0x60]
pxor xmm0, xmm8
movups xmmword [rdi + 0x60], xmm0
movups xmm0, xmmword [rsi + 0x70]
pxor xmm0, xmm9
movups xmmword [rdi + 0x70], xmm0
movups xmm0, xmmword [0x1402c5680]
paddq xmm2, xmm0
movups xmm0, xmmword [0x1402c5670]
movaps xmm1, xmm2
pshufb xmm1, xmm0
movaps xmm0, xmm1
add rsi, 0x80
add rdi, 0x80
add r9d, 0xffffff80
cmp r9d, 0x80
jge 0x1400bc1fb
cmp r9d, 0x10
jl 0x1400bc5fc
movups xmm1, xmmword [rcx]
pxor xmm1, xmm0
movups xmm0, xmmword [rcx + 0x10]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x20]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x30]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x40]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x50]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x60]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x70]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x80]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0x90]
aesenc xmm1, xmm0
movups xmm0, xmmword [rcx + 0xa0]
aesenclast xmm1, xmm0
movups xmm0, xmmword [rsi]
pxor xmm0, xmm1
movups xmmword [rdi], xmm0
movups xmm0, xmmword [0x1402c5680]
paddq xmm2, xmm0
movups xmm0, xmmword [0x1402c5670]
movaps xmm1, xmm2
pshufb xmm1, xmm0
movaps xmm0, xmm1
add rsi, 0x10
add rdi, 0x10
add r9d, 0xfffffff0
cmp r9d, 0x10
jge 0x1400bc555
movups xmmword [rcx + 0xb0], xmm0
test r9d, r9d
je 0x1400bc64d
shl r11d, 4
mov r9d, r11d
cmp r9d, edx
ja 0x1400bc670
mov esi, r9d
add r10, rsi
sub edx, r9d
cmp r11d, r8d
ja 0x1400bc670
mov r9d, r11d
add rax, r9
sub r8d, r11d
mov qword [rsp + 0x30], r10
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], r8d
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x20]
call fcn.1400bc680
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x40]
add rsp, 0x80
pop rbx
pop rsi
pop rdi
ret
call fcn.1400efe70
int3