Function at 0x14010c570
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
push rsi
push rbx
sub rsp, 0x1e8
movups xmmword [rsp + 0x140], xmm6
movups xmmword [rsp + 0x150], xmm7
movups xmmword [rsp + 0x160], xmm8
movups xmmword [rsp + 0x170], xmm9
movups xmmword [rsp + 0x180], xmm10
movups xmmword [rsp + 0x190], xmm11
movups xmmword [rsp + 0x1a0], xmm12
movups xmmword [rsp + 0x1b0], xmm13
movups xmmword [rsp + 0x1c0], xmm14
movups xmmword [rsp + 0x1d0], xmm15
cmp byte [0x1405255e0], 0
mov rsi, rcx
jne 0x14010ceb5
movdqu xmm6, xmmword [rcx + 0x20]
movdqu xmm7, xmmword [rcx + 0x30]
xor edx, edx
mov rbx, qword [rcx + 0xe0]
movdqu xmm9, xmmword [rcx + 0x40]
movdqa xmm3, xmm6
aeskeygenassist xmm2, xmm7, 1
movups xmmword [rsp + 0x40], xmm6
movdqu xmm11, xmmword [rcx + 0x60]
pslldq xmm3, 4
pshufd xmm2, xmm2, 0xff
movups xmmword [rsp + 0x50], xmm7
mov rax, rbx
movdqa xmm0, xmm3
movdqu xmm12, xmmword [rcx + 0x70]
movdqu xmm14, xmmword [rcx + 0x80]
pslldq xmm0, 4
movdqa xmm1, xmm0
pxor xmm0, xmm3
movdqa xmm3, xmm7
pslldq xmm1, 4
pslldq xmm3, 4
pxor xmm0, xmm6
pxor xmm1, xmm2
pxor xmm0, xmm1
movdqa xmm6, xmm0
aeskeygenassist xmm2, xmm0, 0
movdqa xmm0, xmm3
pslldq xmm0, 4
pshufd xmm2, xmm2, 0xaa
movups xmmword [rsp + 0x30], xmm6
movdqa xmm1, xmm0
pxor xmm0, xmm3
movdqa xmm3, xmm6
pslldq xmm1, 4
pslldq xmm3, 4
pxor xmm0, xmm7
pxor xmm1, xmm2
pxor xmm0, xmm1
movdqa xmm7, xmm0
aeskeygenassist xmm2, xmm0, 2
movdqa xmm0, xmm3
pslldq xmm0, 4
pshufd xmm2, xmm2, 0xff
movups xmmword [rsp + 0xf0], xmm7
movdqa xmm1, xmm0
pxor xmm0, xmm3
movdqa xmm3, xmm7
pslldq xmm1, 4
pslldq xmm3, 4
pxor xmm0, xmm6
movdqu xmm6, xmmword [rcx + 0xb0]
pxor xmm1, xmm2
pxor xmm0, xmm1
movdqa xmm4, xmm0
aeskeygenassist xmm2, xmm0, 0
movdqa xmm0, xmm3
pslldq xmm0, 4
pshufd xmm2, xmm2, 0xaa
movups xmmword [rsp + 0xe0], xmm4
movdqa xmm5, xmm0
pxor xmm0, xmm3
movdqa xmm3, xmm4
pslldq xmm5, 4
pslldq xmm3, 4
pxor xmm0, xmm7
movdqu xmm7, xmmword [rcx + 0xa0]
movdqa xmm1, xmm5
movdqa xmm5, xmm0
movdqa xmm0, xmm3
pxor xmm1, xmm2
pslldq xmm0, 4
pxor xmm5, xmm1
movdqa xmm1, xmm0
pxor xmm0, xmm3
aeskeygenassist xmm2, xmm5, 4
movdqa xmm3, xmm5
pxor xmm0, xmm4
movups xmmword [rsp + 0x20], xmm5
pslldq xmm3, 4
pshufd xmm2, xmm2, 0xff
movdqa xmm8, xmm0
pslldq xmm1, 4
movdqa xmm0, xmm3
pxor xmm1, xmm2
pslldq xmm0, 4
pxor xmm8, xmm1
movdqa xmm1, xmm0
pxor xmm0, xmm3
aeskeygenassist xmm2, xmm8, 0
movdqa xmm3, xmm8
pxor xmm0, xmm5
movups xmmword [rsp + 0x120], xmm8
pslldq xmm3, 4
pshufd xmm2, xmm2, 0xaa
movdqa xmm10, xmm0
pslldq xmm1, 4
movdqa xmm0, xmm3
movdqa xmm5, xmm8
pxor xmm1, xmm2
pslldq xmm0, 4
pxor xmm10, xmm1
movdqa xmm1, xmm0
pxor xmm0, xmm3
movdqa xmm3, xmm10
pslldq xmm1, 4
pxor xmm0, xmm8
movups xmmword [rsp + 0x130], xmm10
aeskeygenassist xmm2, xmm10, 8
pslldq xmm3, 4
movdqa xmm15, xmm0
movdqu xmm8, xmmword [rcx + 0x90]
pshufd xmm2, xmm2, 0xff
movdqa xmm0, xmm3
pxor xmm1, xmm2
pslldq xmm0, 4
pxor xmm15, xmm1
movdqa xmm1, xmm0
pxor xmm0, xmm3
pxor xmm0, xmm10
pslldq xmm1, 4
movdqa xmm3, xmm10
movdqu xmm10, xmmword [rcx + 0x50]
aeskeygenassist xmm2, xmm15, 0
movdqa xmm13, xmm0
movdqa xmm4, xmm3
movdqu xmm0, xmmword [rsp + 0xf0]
movdqu xmm3, xmmword [rsp + 0xe0]
pshufd xmm2, xmm2, 0xaa
movups xmmword [rsp + 0x100], xmm15
pxor xmm1, xmm2
movdqu xmm2, xmmword [rsp + 0x20]
pxor xmm13, xmm1
movdqu xmm1, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x110], xmm13
nop dword [rax + rax]
add rdx, 8
pxor xmm9, xmmword [rax]
sub rax, 0xffffffffffffff80
pxor xmm10, xmmword [rax - 0x70]
pxor xmm11, xmmword [rax - 0x60]
pxor xmm12, xmmword [rax - 0x50]
pxor xmm14, xmmword [rax - 0x40]
pxor xmm8, xmmword [rax - 0x30]
pxor xmm7, xmmword [rax - 0x20]
pxor xmm6, xmmword [rax - 0x10]
cmp rdx, 0x4000
je 0x14010c8d5
prefetcht0 byte [rax]
prefetcht0 byte [rax + 0x40]
aesenc xmm9, xmmword [rsp + 0x40]
aesenc xmm10, xmmword [rsp + 0x40]
aesenc xmm11, xmmword [rsp + 0x40]
aesenc xmm12, xmmword [rsp + 0x40]
aesenc xmm14, xmmword [rsp + 0x40]
aesenc xmm8, xmmword [rsp + 0x40]
aesenc xmm7, xmmword [rsp + 0x40]
aesenc xmm6, xmmword [rsp + 0x40]
aesenc xmm9, xmmword [rsp + 0x50]
aesenc xmm10, xmmword [rsp + 0x50]
aesenc xmm11, xmmword [rsp + 0x50]
aesenc xmm12, xmmword [rsp + 0x50]
aesenc xmm14, xmmword [rsp + 0x50]
aesenc xmm8, xmmword [rsp + 0x50]
aesenc xmm7, xmmword [rsp + 0x50]
aesenc xmm6, xmmword [rsp + 0x50]
aesenc xmm9, xmm1
aesenc xmm10, xmm1
aesenc xmm11, xmm1
aesenc xmm7, xmm1
aesenc xmm6, xmm1
aesenc xmm12, xmm1
aesenc xmm14, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm0
aesenc xmm10, xmm0
aesenc xmm11, xmm0
aesenc xmm12, xmm0
aesenc xmm14, xmm0
aesenc xmm8, xmm0
aesenc xmm7, xmm0
aesenc xmm6, xmm0
aesenc xmm9, xmm3
aesenc xmm10, xmm3
aesenc xmm11, xmm3
aesenc xmm12, xmm3
aesenc xmm14, xmm3
aesenc xmm8, xmm3
aesenc xmm7, xmm3
aesenc xmm6, xmm3
aesenc xmm9, xmm2
aesenc xmm10, xmm2
aesenc xmm11, xmm2
aesenc xmm7, xmm2
aesenc xmm6, xmm2
aesenc xmm12, xmm2
aesenc xmm14, xmm2
aesenc xmm8, xmm2
aesenc xmm9, xmm5
aesenc xmm10, xmm5
aesenc xmm11, xmm5
aesenc xmm12, xmm5
aesenc xmm14, xmm5
aesenc xmm8, xmm5
aesenc xmm7, xmm5
aesenc xmm6, xmm5
aesenc xmm9, xmm4
aesenc xmm10, xmm4
aesenc xmm11, xmm4
aesenc xmm12, xmm4
aesenc xmm14, xmm4
aesenc xmm8, xmm4
aesenc xmm7, xmm4
aesenc xmm6, xmm4
aesenc xmm9, xmm15
aesenc xmm10, xmm15
aesenc xmm11, xmm15
aesenc xmm12, xmm15
aesenc xmm14, xmm15
aesenc xmm8, xmm15
aesenc xmm7, xmm15
aesenc xmm6, xmm15
aesenc xmm9, xmm13
aesenc xmm10, xmm13
aesenc xmm11, xmm13
aesenc xmm12, xmm13
aesenc xmm14, xmm13
aesenc xmm8, xmm13
aesenc xmm7, xmm13
aesenc xmm6, xmm13
cmp rdx, 0x4000
jne 0x14010c890
mov byte [rsi + 0x1b0], 0
mov rcx, rsi
call fcn.14010bf20
movups xmmword [rsp + 0x60], xmm6
movdqu xmm6, xmmword [rsp + 0x40]
xor eax, eax
movups xmmword [rsp + 0x70], xmm7
movdqu xmm7, xmmword [rsp + 0x50]
movups xmmword [rsp + 0x80], xmm8
movdqu xmm8, xmmword [rsp + 0x100]
movups xmmword [rsp + 0x90], xmm9
movdqu xmm9, xmmword [rsp + 0x110]
movups xmmword [rsp + 0xa0], xmm10
movdqu xmm10, xmmword [rsp + 0xf0]
movups xmmword [rsp + 0xb0], xmm11
movdqu xmm11, xmmword [rsp + 0x120]
movups xmmword [rsp + 0xc0], xmm12
movdqu xmm12, xmmword [rsp + 0xe0]
movups xmmword [rsp + 0xd0], xmm14
movdqu xmm14, xmmword [rsp + 0x130]
nop dword [rax + rax]
add rax, 8
movdqu xmm1, xmmword [rsp + 0x70]
movdqu xmm3, xmmword [rsp + 0x90]
sub rbx, 0xffffffffffffff80
movdqu xmm4, xmmword [rsp + 0xa0]
movdqu xmm0, xmmword [rsp + 0x60]
movdqu xmm5, xmmword [rsp + 0xb0]
pxor xmm3, xmmword [rbx - 0x80]
movdqu xmm13, xmmword [rsp + 0xc0]
pxor xmm4, xmmword [rbx - 0x70]
movdqu xmm15, xmmword [rsp + 0xd0]
pxor xmm5, xmmword [rbx - 0x60]
movdqu xmm2, xmmword [rsp + 0x80]
pxor xmm13, xmmword [rbx - 0x50]
pxor xmm15, xmmword [rbx - 0x40]
pxor xmm2, xmmword [rbx - 0x30]
pxor xmm1, xmmword [rbx - 0x20]
pxor xmm0, xmmword [rbx - 0x10]
cmp rax, 0x4000
je 0x14010cbf5
prefetcht0 byte [rbx]
prefetcht0 byte [rbx + 0x40]
aesenc xmm3, xmm6
aesenc xmm4, xmm6
aesenc xmm5, xmm6
aesenc xmm13, xmm6
aesenc xmm15, xmm6
aesenc xmm2, xmm6
aesenc xmm1, xmm6
aesenc xmm0, xmm6
aesenc xmm3, xmm7
aesenc xmm4, xmm7
aesenc xmm5, xmm7
aesenc xmm2, xmm7
aesenc xmm13, xmm7
aesenc xmm15, xmm7
aesenc xmm1, xmm7
aesenc xmm0, xmm7
aesenc xmm3, xmmword [rsp + 0x30]
aesenc xmm4, xmmword [rsp + 0x30]
aesenc xmm5, xmmword [rsp + 0x30]
aesenc xmm13, xmmword [rsp + 0x30]
aesenc xmm15, xmmword [rsp + 0x30]
aesenc xmm2, xmmword [rsp + 0x30]
aesenc xmm1, xmmword [rsp + 0x30]
aesenc xmm0, xmmword [rsp + 0x30]
aesenc xmm3, xmm10
aesenc xmm4, xmm10
aesenc xmm5, xmm10
aesenc xmm13, xmm10
aesenc xmm15, xmm10
aesenc xmm2, xmm10
aesenc xmm1, xmm10
aesenc xmm0, xmm10
aesenc xmm3, xmm12
aesenc xmm4, xmm12
aesenc xmm5, xmm12
aesenc xmm13, xmm12
aesenc xmm15, xmm12
aesenc xmm2, xmm12
aesenc xmm1, xmm12
aesenc xmm0, xmm12
aesenc xmm3, xmmword [rsp + 0x20]
aesenc xmm4, xmmword [rsp + 0x20]
aesenc xmm5, xmmword [rsp + 0x20]
aesenc xmm13, xmmword [rsp + 0x20]
aesenc xmm15, xmmword [rsp + 0x20]
aesenc xmm2, xmmword [rsp + 0x20]
aesenc xmm1, xmmword [rsp + 0x20]
aesenc xmm0, xmmword [rsp + 0x20]
aesenc xmm3, xmm11
aesenc xmm4, xmm11
aesenc xmm5, xmm11
aesenc xmm13, xmm11
aesenc xmm15, xmm11
aesenc xmm2, xmm11
aesenc xmm1, xmm11
aesenc xmm0, xmm11
aesenc xmm3, xmm14
aesenc xmm4, xmm14
aesenc xmm5, xmm14
aesenc xmm13, xmm14
aesenc xmm15, xmm14
aesenc xmm2, xmm14
aesenc xmm1, xmm14
aesenc xmm0, xmm14
aesenc xmm3, xmm8
aesenc xmm4, xmm8
aesenc xmm5, xmm8
aesenc xmm13, xmm8
aesenc xmm15, xmm8
aesenc xmm2, xmm8
aesenc xmm1, xmm8
aesenc xmm0, xmm8
aesenc xmm3, xmm9
aesenc xmm4, xmm9
aesenc xmm5, xmm9
aesenc xmm13, xmm9
aesenc xmm15, xmm9
aesenc xmm2, xmm9
movups xmmword [rsp + 0x90], xmm3
aesenc xmm1, xmm9
aesenc xmm0, xmm9
movups xmmword [rsp + 0xa0], xmm4
movups xmmword [rsp + 0xb0], xmm5
movups xmmword [rsp + 0xc0], xmm13
movups xmmword [rsp + 0xd0], xmm15
movups xmmword [rsp + 0x80], xmm2
movups xmmword [rsp + 0x70], xmm1
movups xmmword [rsp + 0x60], xmm0
cmp rax, 0x4000
jne 0x14010cb70
movups xmmword [rsi + 0x40], xmm3
movups xmmword [rsi + 0x50], xmm4
movups xmmword [rsi + 0x60], xmm5
movups xmmword [rsi + 0x70], xmm13
movups xmmword [rsi + 0x80], xmm15
movups xmmword [rsi + 0x90], xmm2
movups xmmword [rsi + 0xa0], xmm1
movups xmmword [rsi + 0xb0], xmm0
movups xmm6, xmmword [rsp + 0x140]
movups xmm7, xmmword [rsp + 0x150]
movups xmm8, xmmword [rsp + 0x160]
movups xmm9, xmmword [rsp + 0x170]
movups xmm10, xmmword [rsp + 0x180]
movups xmm11, xmmword [rsp + 0x190]
movups xmm12, xmmword [rsp + 0x1a0]
movups xmm13, xmmword [rsp + 0x1b0]
movups xmm14, xmmword [rsp + 0x1c0]
movups xmm15, xmmword [rsp + 0x1d0]
add rsp, 0x1e8
pop rbx
pop rsi
ret
movups xmm6, xmmword [rsp + 0x140]
mov r8d, 1
movups xmm7, xmmword [rsp + 0x150]
mov edx, 0x80000
movups xmm8, xmmword [rsp + 0x160]
movups xmm9, xmmword [rsp + 0x170]
movups xmm10, xmmword [rsp + 0x180]
movups xmm11, xmmword [rsp + 0x190]
movups xmm12, xmmword [rsp + 0x1a0]
movups xmm13, xmmword [rsp + 0x1b0]
movups xmm14, xmmword [rsp + 0x1c0]
movups xmm15, xmmword [rsp + 0x1d0]
add rsp, 0x1e8
pop rbx
pop rsi
jmp 0x140121e30