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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0xa8]
sub rsp, 0x1a0
cmp byte [0x140709c89], 0
mov rbx, rcx
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rax - 0x88], xmm13
movaps xmmword [rax - 0x98], xmm14
movaps xmmword [rax - 0xa8], xmm15
je 0x140128dc1
mov r8b, 1
mov edx, 0x40000
call fcn.1401c65d0
jmp 0x140129140
mov rdi, qword [rcx + 0xe0]
lea rax, [rbp - 0x20]
mov qword [rsp + 0x50], rax
lea r9, [rbp - 0x30]
lea rax, [rbp - 0x10]
add rcx, 0x20
mov qword [rsp + 0x48], rax
lea r8, [rsp + 0x70]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x60]
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
call fcn.140131074
movdqa xmm0, xmmword [rbp - 0x80]
xor esi, esi
movdqa xmm1, xmmword [rbp - 0x70]
mov r14, rdi
movdqa xmm2, xmmword [rbp - 0x60]
movdqa xmm3, xmmword [rbp - 0x50]
movdqa xmm4, xmmword [rbp - 0x40]
movdqa xmm5, xmmword [rbp - 0x30]
movdqu xmm6, xmmword [rbx + 0x40]
movdqu xmm7, xmmword [rbx + 0x50]
movdqu xmm8, xmmword [rbx + 0x60]
movdqu xmm9, xmmword [rbx + 0x70]
movdqu xmm10, xmmword [rbx + 0x80]
movdqu xmm11, xmmword [rbx + 0x90]
movdqu xmm12, xmmword [rbx + 0xa0]
movdqu xmm13, xmmword [rbx + 0xb0]
movdqa xmm14, xmmword [rbp - 0x20]
movdqa xmm15, xmmword [rbp - 0x10]
cmp rsi, 1
jne 0x140128ebd
mov rcx, rbx
mov byte [rbx + 0x1b0], 0
mov rdi, r14
call fcn.1401288dc
movdqa xmm0, xmmword [rbp - 0x80]
movdqa xmm1, xmmword [rbp - 0x70]
movdqa xmm2, xmmword [rbp - 0x60]
movdqa xmm3, xmmword [rbp - 0x50]
movdqa xmm4, xmmword [rbp - 0x40]
movdqa xmm5, xmmword [rbp - 0x30]
xor eax, eax
pxor xmm6, xmmword [rdi]
add rax, 8
pxor xmm7, xmmword [rdi + 0x10]
pxor xmm8, xmmword [rdi + 0x20]
pxor xmm9, xmmword [rdi + 0x30]
pxor xmm10, xmmword [rdi + 0x40]
pxor xmm11, xmmword [rdi + 0x50]
pxor xmm12, xmmword [rdi + 0x60]
pxor xmm13, xmmword [rdi + 0x70]
sub rdi, 0xffffffffffffff80
cmp rax, 0x2000
jae 0x140128f03
prefetcht0 byte [rdi]
prefetcht0 byte [rdi + 0x40]
aesenc xmm6, xmmword [rsp + 0x60]
aesenc xmm7, xmmword [rsp + 0x60]
aesenc xmm8, xmmword [rsp + 0x60]
aesenc xmm9, xmmword [rsp + 0x60]
aesenc xmm10, xmmword [rsp + 0x60]
aesenc xmm11, xmmword [rsp + 0x60]
aesenc xmm12, xmmword [rsp + 0x60]
aesenc xmm13, xmmword [rsp + 0x60]
aesenc xmm6, xmmword [rsp + 0x70]
aesenc xmm7, xmmword [rsp + 0x70]
aesenc xmm8, xmmword [rsp + 0x70]
aesenc xmm9, xmmword [rsp + 0x70]
aesenc xmm10, xmmword [rsp + 0x70]
aesenc xmm11, xmmword [rsp + 0x70]
aesenc xmm12, xmmword [rsp + 0x70]
aesenc xmm13, xmmword [rsp + 0x70]
aesenc xmm6, xmm5
aesenc xmm7, xmm5
aesenc xmm8, xmm5
aesenc xmm9, xmm5
aesenc xmm10, xmm5
aesenc xmm11, xmm5
aesenc xmm12, xmm5
aesenc xmm13, xmm5
aesenc xmm6, xmm4
aesenc xmm7, xmm4
aesenc xmm8, xmm4
aesenc xmm9, xmm4
aesenc xmm10, xmm4
aesenc xmm11, xmm4
aesenc xmm12, xmm4
aesenc xmm13, xmm4
aesenc xmm6, xmm3
aesenc xmm7, xmm3
aesenc xmm8, xmm3
aesenc xmm9, xmm3
aesenc xmm10, xmm3
aesenc xmm11, xmm3
aesenc xmm12, xmm3
aesenc xmm13, xmm3
aesenc xmm6, xmm2
aesenc xmm7, xmm2
aesenc xmm8, xmm2
aesenc xmm9, xmm2
aesenc xmm10, xmm2
aesenc xmm11, xmm2
aesenc xmm12, xmm2
aesenc xmm13, xmm2
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
aesenc xmm10, xmm1
aesenc xmm11, xmm1
aesenc xmm12, xmm1
aesenc xmm13, xmm1
aesenc xmm6, xmm0
aesenc xmm7, xmm0
aesenc xmm8, xmm0
aesenc xmm9, xmm0
aesenc xmm10, xmm0
aesenc xmm11, xmm0
aesenc xmm12, xmm0
aesenc xmm13, xmm0
aesenc xmm6, xmm15
aesenc xmm7, xmm15
aesenc xmm8, xmm15
aesenc xmm9, xmm15
aesenc xmm10, xmm15
aesenc xmm11, xmm15
aesenc xmm12, xmm15
aesenc xmm13, xmm15
aesenc xmm6, xmm14
aesenc xmm7, xmm14
aesenc xmm8, xmm14
aesenc xmm9, xmm14
aesenc xmm10, xmm14
aesenc xmm11, xmm14
aesenc xmm12, xmm14
aesenc xmm13, xmm14
jb 0x140128ebf
inc rsi
cmp rsi, 2
jb 0x140128e87
movdqu xmmword [rbx + 0x40], xmm6
movdqu xmmword [rbx + 0x50], xmm7
movdqu xmmword [rbx + 0x60], xmm8
movdqu xmmword [rbx + 0x70], xmm9
movdqu xmmword [rbx + 0x80], xmm10
movdqu xmmword [rbx + 0x90], xmm11
movdqu xmmword [rbx + 0xa0], xmm12
movdqu xmmword [rbx + 0xb0], xmm13
lea r11, [rsp + 0x1a0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop rbp
ret