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

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x758
vmovups xmmword [rsp + 0x6b0], xmm6
vmovups xmmword [rsp + 0x6c0], xmm7
vmovups xmmword [rsp + 0x6d0], xmm8
vmovups xmmword [rsp + 0x6e0], xmm9
vmovups xmmword [rsp + 0x6f0], xmm10
vmovups xmmword [rsp + 0x700], xmm11
vmovups xmmword [rsp + 0x710], xmm12
vmovups xmmword [rsp + 0x720], xmm13
vmovups xmmword [rsp + 0x730], xmm14
vmovups xmmword [rsp + 0x740], xmm15
mov r10, rcx
lea rax, [rsp + 0x4bf]
mov rcx, rdx
mov esi, r8d
vmovdqu ymm1, ymmword [r10]
and rax, 0xffffffffffffffe0
vmovdqu ymm5, ymmword [r10 + 0x100]
vmovdqu ymm4, ymmword [r10 + 0x120]
vmovdqu ymm7, ymmword [r10 + 0x60]
vmovdqu ymm6, ymmword [r10 + 0x160]
vmovdqu ymmword [rsp], ymm1
vmovdqu ymmword [rax], ymm1
vmovdqu ymm1, ymmword [r10 + 0x20]
vmovdqu ymm2, ymm7
vmovdqu ymmword [rsp + 0x60], ymm5
vmovdqu ymmword [rsp + 0xa0], ymm1
vmovdqu ymmword [rax + 0x20], ymm1
vmovdqu ymm1, ymmword [r10 + 0x40]
vmovdqu ymmword [rax + 0x100], ymm5
vmovdqu ymm5, ymmword [r10 + 0x140]
vmovdqu ymmword [rsp + 0x180], ymm1
vmovdqu ymmword [rax + 0x40], ymm1
vmovdqu ymm1, ymmword [r10 + 0x80]
vmovdqu ymmword [rsp + 0x120], ymm4
vmovdqu ymmword [rsp + 0x40], ymm1
vmovdqu ymmword [rax + 0x80], ymm1
vmovdqu ymm1, ymmword [r10 + 0xa0]
vmovdqu ymmword [rax + 0x120], ymm4
vmovdqu ymmword [rsp + 0xc0], ymm1
vmovdqu ymmword [rax + 0xa0], ymm1
vmovdqu ymm1, ymmword [r10 + 0xc0]
vmovdqu ymmword [rsp + 0xe0], ymm5
vmovdqu ymmword [rsp + 0x140], ymm1
vmovdqu ymmword [rax + 0xc0], ymm1
vmovdqu ymm1, ymmword [r10 + 0xe0]
vmovdqu ymmword [rax + 0x140], ymm5
vmovdqu ymmword [rax + 0x60], ymm7
vmovdqu ymmword [rax + 0xe0], ymm1
vmovdqu ymmword [rsp + 0x100], ymm6
vmovdqu ymm4, ymmword [r10 + 0x180]
vmovdqu ymm5, ymmword [r10 + 0x1c0]
vmovdqu ymm12, ymmword [r10 + 0x1a0]
vmovdqu ymmword [rax + 0x160], ymm6
vmovdqu ymm15, ymmword [r10 + 0x1e0]
vmovdqu ymmword [rsp + 0x80], ymm4
vmovdqu ymmword [rax + 0x180], ymm4
vmovdqu ymmword [rax + 0x1a0], ymm12
vmovdqu ymmword [rsp + 0x1a0], ymm5
vmovdqu ymmword [rax + 0x1c0], ymm5
vmovdqu ymmword [rax + 0x1e0], ymm15
test r8d, r8d
je 0x14006fe9a
mov r12d, dword [r10 + 0x864]
mov edx, 1
xor r11d, r11d
vmovdqu ymm4, ymmword [r10 + 0x840]
vmovq xmm0, rdx
mov r9d, dword [r10 + 0x860]
mov edx, 0x1b00
mov r8d, r12d
vpermq ymm8, ymm0, 0x44
mov edi, dword [r10 + 0x868]
shr r8d, 8
vmovdqu ymm6, ymmword [r10 + 0x800]
vmovdqu ymmword [rsp + 0x480], ymm4
vmovq xmm0, rdx
vpermq ymm11, ymm0, 0x44
shr r9d, 1
lea ebx, [r8 + 1]
lea ebp, [r8 + 2]
shl rdi, 5
vmovdqu ymmword [rsp + 0x20], ymm12
vmovdqu ymm14, ymm1
movabs rdx, 0x101010101010101
vmovq xmm5, rdx
vmovdqu ymm9, ymm11
vmovdqu ymmword [rsp + 0x360], ymm6
vpbroadcastq ymm10, xmm5
nop dword [rax + rax]
vmovdqu ymm1, ymmword [rsp + 0x360]
vpaddq ymm1, ymm1, ymmword [rsp + 0x480]
vmovdqu ymmword [rsp + 0x360], ymm1
vmovdqu ymmword [r10 + 0x800], ymm1
cmp r8d, 3
ja 0x14006f142
mov edx, r8d
vmovdqu ymm1, ymmword [rcx]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [rax + r13], ymm1
vmovdqu ymm1, ymmword [rcx + 0x20]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x80], ymm1
vmovdqu ymm1, ymmword [rcx + 0x40]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x100], ymm1
vmovdqu ymm1, ymmword [rcx + 0x60]
vmovdqu ymmword [r13 + rax + 0x180], ymm1
cmp ebx, 4
je 0x14006f067
mov edx, ebx
vmovdqu ymm1, ymmword [rcx + 0x80]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [rax + r13], ymm1
vmovdqu ymm1, ymmword [rcx + 0xa0]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x80], ymm1
mov r13, rdx
vmovdqu ymm1, ymmword [rcx + 0xc0]
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x100], ymm1
vmovdqu ymm1, ymmword [rcx + 0xe0]
vmovdqu ymmword [r13 + rax + 0x180], ymm1
cmp ebp, 4
je 0x14006f067
mov edx, ebp
vmovdqu ymm1, ymmword [rcx + 0x100]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [rax + r13], ymm1
vmovdqu ymm1, ymmword [rcx + 0x120]
mov r13, rdx
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x80], ymm1
mov r13, rdx
vmovdqu ymm1, ymmword [rcx + 0x140]
shl r13, 5
vmovdqu ymmword [r13 + rax + 0x100], ymm1
vmovdqu ymm1, ymmword [rcx + 0x160]
vmovdqu ymmword [r13 + rax + 0x180], ymm1
test r8d, r8d
jne 0x14006f067
vmovdqu ymm1, ymmword [rcx + 0x180]
vmovdqu ymmword [rax + 0x60], ymm1
vmovdqu ymm1, ymmword [rcx + 0x1a0]
vmovdqu ymmword [rax + 0xe0], ymm1
vmovdqu ymm1, ymmword [rcx + 0x1c0]
vmovdqu ymmword [rax + 0x160], ymm1
vmovdqu ymm1, ymmword [rcx + 0x1e0]
vmovdqu ymmword [rax + 0x1e0], ymm1
vmovdqu ymm1, ymmword [rax]
vmovdqu ymm7, ymmword [rax + 0x60]
vmovdqu ymm14, ymmword [rax + 0xe0]
vmovdqu ymm15, ymmword [rax + 0x1e0]
vmovdqu ymmword [rsp], ymm1
vmovdqu ymm1, ymmword [rax + 0x20]
vmovdqu ymmword [rsp + 0xa0], ymm1
vmovdqu ymm1, ymmword [rax + 0x40]
vmovdqu ymmword [rsp + 0x180], ymm1
vmovdqu ymm1, ymmword [rax + 0x80]
vmovdqu ymmword [rsp + 0x40], ymm1
vmovdqu ymm1, ymmword [rax + 0xa0]
vmovdqu ymmword [rsp + 0xc0], ymm1
vmovdqu ymm1, ymmword [rax + 0xc0]
vmovdqu ymmword [rsp + 0x140], ymm1
vmovdqu ymm1, ymmword [rax + 0x100]
vmovdqu ymmword [rsp + 0x60], ymm1
vmovdqu ymm1, ymmword [rax + 0x120]
vmovdqu ymmword [rsp + 0x120], ymm1
vmovdqu ymm1, ymmword [rax + 0x140]
vmovdqu ymmword [rsp + 0xe0], ymm1
vmovdqu ymm1, ymmword [rax + 0x160]
vmovdqu ymmword [rsp + 0x100], ymm1
vmovdqu ymm1, ymmword [rax + 0x180]
vmovdqu ymmword [rsp + 0x80], ymm1
vmovdqu ymm1, ymmword [rax + 0x1a0]
vmovdqu ymmword [rsp + 0x20], ymm1
vmovdqu ymm1, ymmword [rax + 0x1c0]
vmovdqu ymmword [rsp + 0x1a0], ymm1
vpxor ymm1, ymm7, ymmword [rsp + 0xa0]
vmovdqu ymm5, ymmword [rsp]
vpxor ymm0, ymm5, ymmword [rsp + 0x180]
vmovdqu ymm5, ymmword [rsp + 0x40]
vmovdqu ymmword [rsp + 0x420], ymm1
vmovdqu ymm11, ymm1
vpxor ymm1, ymm5, ymmword [rsp + 0x140]
vmovdqu ymm4, ymmword [rsp + 0x60]
vmovdqu ymm2, ymmword [rsp + 0x120]
vmovdqu ymm12, ymm0
vmovdqu ymm13, ymmword [rsp + 0x80]
vmovdqu ymmword [rsp + 0x400], ymm1
vmovdqu ymm6, ymm1
vpxor ymm1, ymm14, ymmword [rsp + 0xc0]
vmovdqu ymmword [rsp + 0x3e0], ymm1
vmovdqu ymm5, ymm1
vpxor ymm1, ymm4, ymmword [rsp + 0xe0]
vmovdqu ymmword [rsp + 0x3c0], ymm1
vmovdqu ymm4, ymm1
vpxor ymm1, ymm2, ymmword [rsp + 0x100]
vmovdqu ymmword [rsp + 0x3a0], ymm1
vmovdqu ymm3, ymm1
vpxor ymm1, ymm13, ymmword [rsp + 0x1a0]
vpxor ymm13, ymm15, ymmword [rsp + 0x20]
vmovdqu ymmword [rsp + 0x380], ymm1
vmovdqu ymm2, ymm1
vmovdqu ymm1, ymm13
test r9d, r9d
je 0x14006fdbb
vmovdqu ymm5, ymmword [rsp + 0x360]
xor edx, edx
vpxor xmm1, xmm1, xmm1
vmovdqu ymmword [rsp + 0x460], ymm13
vmovdqu ymm12, ymmword [rsp + 0x1a0]
vmovdqu ymm13, ymmword [rsp + 0x180]
vmovdqu ymmword [rsp + 0x440], ymm0
vmovdqu ymmword [rsp + 0x160], ymm5
nop dword [rax]
vmovdqu ymm6, ymmword [rsp]
add edx, 1
vmovdqu ymm4, ymmword [rsp + 0x160]
vmovdqu ymm11, ymmword [rsp + 0x120]
vaesenc ymm5, ymm6, ymm4
vpaddd ymm0, ymm8, ymm4
vmovdqu ymm4, ymmword [rsp + 0x40]
vmovdqu ymm6, ymmword [rsp + 0x60]
vaesenc ymm4, ymm4, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm3, ymm6, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm6, ymmword [rsp + 0x80]
vaesenc ymm2, ymm6, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm6, ymmword [rsp + 0xa0]
vaesenc ymm5, ymm5, ymm1
vaesenc ymm4, ymm4, ymm1
vaesenc ymm2, ymm2, ymm1
vmovdqu ymmword [rsp], ymm4
vaesenc ymm4, ymm3, ymm1
vaesenc ymm3, ymm6, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm6, ymmword [rsp + 0xc0]
vaesenc ymm6, ymm6, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm11, ymm11, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymmword [rsp + 0x80], ymm4
vmovdqu ymm4, ymmword [rsp + 0x20]
vaesenc ymm3, ymm3, ymm1
vaesenc ymm4, ymm4, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm13, ymm13, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm11, ymm11, ymm1
vaesenc ymm6, ymm6, ymm1
vaesenc ymm13, ymm13, ymm1
vmovdqu ymmword [rsp + 0xa0], ymm11
vaesenc ymm11, ymm4, ymm1
vmovdqu ymmword [rsp + 0x20], ymm13
vmovdqu ymmword [rsp + 0xc0], ymm11
vmovdqu ymm11, ymmword [rsp + 0x140]
vaesenc ymm4, ymm11, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm11, ymmword [rsp + 0xe0]
vaesenc ymm11, ymm11, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm12, ymm12, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm7, ymm7, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm14, ymm14, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm4, ymm4, ymm1
vaesenc ymm11, ymm11, ymm1
vaesenc ymm13, ymm12, ymm1
vmovdqu ymm12, ymmword [rsp + 0x100]
vaesenc ymm12, ymm12, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm15, ymm15, ymm0
vpaddd ymm0, ymm0, ymm8
vmovdqu ymmword [rsp + 0x300], ymm0
vaesenc ymm0, ymm7, ymm1
vpaddb ymm7, ymm5, ymm5
vmovdqu ymmword [rsp + 0xe0], ymm13
vaesenc ymm14, ymm14, ymm1
vaesenc ymm12, ymm12, ymm1
vaesenc ymm15, ymm15, ymm1
vmovdqu ymmword [rsp + 0x40], ymm0
vpsrlw ymm0, ymm5, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm13, ymm7, ymm0
vpsrlw ymm0, ymm6, 7
vpaddb ymm7, ymm6, ymm6
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm11, ymm11
vmovdqu ymmword [rsp + 0x2e0], ymm0
vpxor ymm0, ymm5, ymm6
vpxor ymm6, ymm6, ymm11
vpxor ymm5, ymm5, ymm11
vmovdqu ymmword [rsp + 0x60], ymm0
vpsrlw ymm0, ymm11, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm15, ymm15
vmovdqu ymmword [rsp + 0x140], ymm0
vpsrlw ymm0, ymm15, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm3, ymm3
vmovdqu ymmword [rsp + 0x120], ymm0
vpsrlw ymm0, ymm3, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm4, ymm4
vmovdqu ymmword [rsp + 0x2c0], ymm0
vpsrlw ymm0, ymm4, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpxor ymm7, ymm3, ymm4
vpxor ymm4, ymm4, ymm12
vmovdqu ymmword [rsp + 0x2a0], ymm0
vpsrlw ymm0, ymm12, 7
vpxor ymm3, ymm3, ymm12
vmovdqu ymmword [rsp + 0x320], ymm7
vpand ymm0, ymm0, ymm10
vpaddb ymm7, ymm12, ymm12
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm2, ymm2
vmovdqu ymmword [rsp + 0x280], ymm0
vpsrlw ymm0, ymm2, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm7, ymm7, ymm0
vmovdqu ymmword [rsp + 0x260], ymm7
vmovdqu ymm7, ymmword [rsp + 0x20]
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vpaddb ymm7, ymm14, ymm14
vmovdqu ymmword [rsp + 0x240], ymm0
vpsrlw ymm0, ymm14, 7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymmword [rsp + 0x220], ymm0
vpxor ymm7, ymm14, ymmword [rsp + 0x20]
vpxor ymm11, ymm11, ymmword [rsp + 0x60]
vmovdqu ymmword [rsp + 0x340], ymm7
vmovdqu ymm7, ymmword [rsp + 0x80]
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymm7, ymmword [rsp + 0xc0]
vmovdqu ymmword [rsp + 0x200], ymm0
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymm7, ymmword [rsp + 0x40]
vmovdqu ymmword [rsp + 0x1e0], ymm0
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymm7, ymmword [rsp]
vmovdqu ymmword [rsp + 0x1c0], ymm0
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymmword [rsp + 0x1a0], ymm0
vmovdqu ymm0, ymmword [rsp]
vpxor ymm7, ymm0, ymmword [rsp + 0x40]
vmovdqu ymmword [rsp + 0x160], ymm7
vmovdqu ymm7, ymmword [rsp + 0xa0]
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymm7, ymmword [rsp + 0xe0]
vmovdqu ymmword [rsp + 0x180], ymm0
vpsrlw ymm0, ymm7, 7
vpaddb ymm7, ymm7, ymm7
vpand ymm0, ymm0, ymm10
vpshufb ymm0, ymm9, ymm0
vpxor ymm0, ymm7, ymm0
vmovdqu ymm7, ymmword [rsp + 0x2e0]
vmovdqu ymmword [rsp + 0x100], ymm0
vpxor ymm0, ymm13, ymm7
vpxor ymm7, ymm7, ymmword [rsp + 0x140]
vpxor ymm13, ymm13, ymmword [rsp + 0x120]
vpxor ymm6, ymm0, ymm6
vmovdqu ymm0, ymmword [rsp + 0x300]
vpxor ymm6, ymm6, ymm15
vpxor ymm5, ymm7, ymm5
vpxor ymm11, ymm13, ymm11
vmovdqu ymm7, ymmword [rsp + 0x140]
vaesenc ymm6, ymm6, ymm0
vpxor ymm5, ymm5, ymm15
vpxor ymm7, ymm7, ymmword [rsp + 0x120]
vpxor ymm15, ymm15, ymmword [rsp + 0x60]
vpaddd ymm0, ymm8, ymm0
vaesenc ymm5, ymm5, ymm0
vpxor ymm7, ymm7, ymm15
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm15, ymmword [rsp + 0x280]
vaesenc ymm7, ymm7, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm11, ymm11, ymm0
vpaddd ymm0, ymm0, ymm8
vaesenc ymm13, ymm6, ymm1
vmovdqu ymm6, ymmword [rsp + 0x2a0]
vaesenc ymm5, ymm5, ymm1
vmovdqu ymmword [rsp + 0x60], ymm13
vaesenc ymm13, ymm7, ymm1
vmovdqu ymmword [rsp + 0x2e0], ymm5
vmovdqu ymmword [rsp + 0x140], ymm13
vaesenc ymm13, ymm11, ymm1
vmovdqu ymm11, ymmword [rsp + 0x2c0]
vpxor ymm5, ymm6, ymm11
vpxor ymm4, ymm5, ymm4
vpxor ymm5, ymm6, ymm15
vmovdqu ymm6, ymmword [rsp + 0x320]
vpxor ymm5, ymm5, ymm3
vmovdqu ymm3, ymm15
vpxor ymm4, ymm4, ymm2
vmovdqu ymm15, ymmword [rsp + 0x260]
vaesenc ymm4, ymm4, ymm0
vpxor ymm5, ymm5, ymm2
vpaddd ymm0, ymm0, ymm8
vpxor ymm2, ymm2, ymm6
vaesenc ymm5, ymm5, ymm0
vpxor ymm3, ymm3, ymm15
vpaddd ymm0, ymm0, ymm8
vpxor ymm2, ymm2, ymm3
vpxor ymm3, ymm12, ymm6
vpxor ymm6, ymm15, ymm11
vmovdqu ymm11, ymmword [rsp + 0x240]
vaesenc ymm2, ymm2, ymm0
vpxor ymm3, ymm3, ymm6
vpaddd ymm0, ymm0, ymm8
vmovdqu ymm6, ymmword [rsp + 0xc0]
vaesenc ymm3, ymm3, ymm0
vpaddd ymm7, ymm0, ymm8
vmovdqu ymm12, ymmword [rsp + 0x1e0]
vmovdqu ymm15, ymmword [rsp + 0xa0]
vaesenc ymm0, ymm4, ymm1
vmovdqu ymm4, ymmword [rsp + 0x80]
vaesenc ymm5, ymm5, ymm1
vpxor ymm14, ymm14, ymm4
vaesenc ymm2, ymm2, ymm1
vaesenc ymm3, ymm3, ymm1
vmovdqu ymmword [rsp + 0x120], ymm0
vmovdqu ymmword [rsp + 0x260], ymm2
vmovdqu ymm2, ymmword [rsp + 0x220]
vmovdqu ymmword [rsp + 0x280], ymm3
vmovdqu ymm3, ymmword [rsp + 0x200]
vpxor ymm0, ymm2, ymm11
vpxor ymm14, ymm14, ymm0
vpxor ymm0, ymm4, ymmword [rsp + 0x20]
vpxor ymm2, ymm2, ymm3
vpxor ymm14, ymm14, ymm6
vaesenc ymm14, ymm14, ymm7
vpxor ymm0, ymm0, ymm2
vmovdqu ymm2, ymm6
vpaddd ymm7, ymm7, ymm8
vpxor ymm0, ymm0, ymm6
vpxor ymm6, ymm3, ymm12
vmovdqu ymm3, ymmword [rsp + 0x340]
vaesenc ymm0, ymm0, ymm7
vpaddd ymm7, ymm7, ymm8
vpxor ymm2, ymm2, ymm3
vpxor ymm3, ymm3, ymm4
vmovdqu ymm4, ymmword [rsp + 0xe0]
vpxor ymm6, ymm6, ymm2
vpxor ymm2, ymm12, ymm11
vmovdqu ymm12, ymmword [rsp + 0x180]
vaesenc ymm6, ymm6, ymm7
vpxor ymm2, ymm2, ymm3
vpaddd ymm7, ymm7, ymm8
vmovdqu ymm3, ymmword [rsp + 0x1a0]
vaesenc ymm2, ymm2, ymm7
vpaddd ymm7, ymm7, ymm8
vaesenc ymm11, ymm14, ymm1
vaesenc ymm0, ymm0, ymm1
vaesenc ymm6, ymm6, ymm1
vaesenc ymm14, ymm2, ymm1
vpxor ymm2, ymm15, ymmword [rsp]
vmovdqu ymmword [rsp + 0x1e0], ymm11
vmovdqu ymmword [rsp + 0x200], ymm14
vmovdqu ymm14, ymmword [rsp + 0x1c0]
vpxor ymm11, ymm3, ymm14
vpxor ymm11, ymm11, ymm2
vpxor ymm2, ymm3, ymm12
vmovdqu ymm3, ymmword [rsp + 0x40]
vpxor ymm11, ymm11, ymm4
vaesenc ymm11, ymm11, ymm7
vpxor ymm3, ymm3, ymm15
vpaddd ymm7, ymm7, ymm8
vpxor ymm2, ymm2, ymm3
vmovdqu ymm3, ymm4
vpxor ymm2, ymm2, ymm4
vaesenc ymm4, ymm2, ymm7
vpaddd ymm7, ymm7, ymm8
vmovdqu ymm2, ymmword [rsp + 0x100]
vmovdqu ymmword [rsp], ymm4
vmovdqu ymm4, ymmword [rsp + 0x100]
vpxor ymm4, ymm4, ymm12
vmovdqu ymm12, ymmword [rsp + 0x160]
vpxor ymm3, ymm3, ymm12
vpxor ymm12, ymm12, ymm15
vpxor ymm4, ymm4, ymm3
vpxor ymm3, ymm2, ymm14
vaesenc ymm4, ymm4, ymm7
vpxor ymm3, ymm3, ymm12
vpaddd ymm7, ymm7, ymm8
vmovdqu ymm12, ymmword [rsp + 0x60]
vaesenc ymm3, ymm3, ymm7
vpaddd ymm2, ymm7, ymm8
vpsrlw ymm14, ymm6, 7
vaesenc ymm7, ymm11, ymm1
vpaddb ymm11, ymm12, ymm12
vpand ymm14, ymm14, ymm10
vmovdqu ymmword [rsp + 0x160], ymm2
vpshufb ymm14, ymm9, ymm14
vmovdqu ymm2, ymmword [rsp]
vaesenc ymm2, ymm2, ymm1
vaesenc ymm4, ymm4, ymm1
vaesenc ymm3, ymm3, ymm1
vmovdqu ymmword [rsp + 0x100], ymm7
vpsrlw ymm7, ymm12, 7
vpsrlw ymm12, ymm5, 7
vpand ymm7, ymm7, ymm10
vpand ymm12, ymm12, ymm10
vpshufb ymm7, ymm9, ymm7
vpshufb ymm12, ymm9, ymm12
vpxor ymm11, ymm11, ymm7
vpaddb ymm7, ymm5, ymm5
vpxor ymm7, ymm7, ymm12
vpxor ymm12, ymm5, ymmword [rsp + 0x60]
vpxor ymm5, ymm6, ymm5
vpsrlw ymm15, ymm3, 7
vmovdqu ymmword [rsp + 0x20], ymm12
vpand ymm15, ymm15, ymm10
vpaddb ymm12, ymm6, ymm6
vpxor ymm12, ymm12, ymm14
vpshufb ymm15, ymm9, ymm15
vpaddb ymm14, ymm3, ymm3
vpxor ymm14, ymm14, ymm15
vpxor ymm15, ymm11, ymm7
vpxor ymm7, ymm7, ymm12
vpxor ymm15, ymm15, ymm5
vpxor ymm12, ymm12, ymm14
vpxor ymm11, ymm11, ymm14
vpxor ymm5, ymm15, ymm3
vmovdqu ymmword [rsp], ymm5
vpxor ymm5, ymm6, ymmword [rsp + 0x60]
vmovdqu ymm14, ymmword [rsp + 0x140]
vpxor ymm7, ymm7, ymm5
vmovdqu ymm5, ymmword [rsp + 0x20]
vpxor ymm15, ymm7, ymm3
vpxor ymm3, ymm3, ymm5
vmovdqu ymmword [rsp + 0x40], ymm15
vmovdqu ymm15, ymmword [rsp + 0x120]
vpxor ymm3, ymm12, ymm3
vpsrlw ymm12, ymm13, 7
vmovdqu ymmword [rsp + 0x60], ymm3
vpxor ymm3, ymm6, ymm5
vpsrlw ymm6, ymm0, 7
vpaddb ymm5, ymm15, ymm15
vpxor ymm3, ymm11, ymm3
vpand ymm6, ymm10, ymm6
vpand ymm12, ymm10, ymm12
vpsrlw ymm11, ymm4, 7
vpshufb ymm6, ymm9, ymm6
vpshufb ymm12, ymm9, ymm12
vmovdqu ymmword [rsp + 0x80], ymm3
vpsrlw ymm3, ymm15, 7
vpand ymm11, ymm10, ymm11
vpxor ymm7, ymm0, ymm15
vpand ymm3, ymm10, ymm3
vpshufb ymm11, ymm9, ymm11
vpshufb ymm3, ymm9, ymm3
vpxor ymm5, ymm5, ymm3
vpaddb ymm3, ymm0, ymm0
vpxor ymm0, ymm4, ymm0
vpxor ymm3, ymm3, ymm6
vpaddb ymm6, ymm4, ymm4
vpxor ymm6, ymm6, ymm11
vpaddb ymm11, ymm13, ymm13
vpxor ymm11, ymm11, ymm12
vpxor ymm12, ymm5, ymm3
vpxor ymm3, ymm3, ymm6
vpxor ymm12, ymm12, ymm0
vpxor ymm6, ymm6, ymm11
vpxor ymm5, ymm5, ymm11
vmovdqu ymm11, ymmword [rsp + 0x1e0]
vpxor ymm0, ymm12, ymm13
vmovdqu ymmword [rsp + 0xa0], ymm0
vpxor ymm0, ymm4, ymm15
vmovdqu ymm15, ymmword [rsp + 0x280]
vpxor ymm3, ymm3, ymm0
vpxor ymm0, ymm3, ymm13
vpsrlw ymm3, ymm11, 7
vmovdqu ymmword [rsp + 0xc0], ymm0
vpxor ymm0, ymm7, ymm13
vpand ymm3, ymm10, ymm3
vpxor ymm7, ymm7, ymm4
vpxor ymm0, ymm6, ymm0
vpshufb ymm3, ymm9, ymm3
vpxor ymm4, ymm7, ymm5
vpsrlw ymm5, ymm14, 7
vmovdqu ymmword [rsp + 0x20], ymm4
vpaddb ymm4, ymm2, ymm2
vpaddb ymm7, ymm15, ymm15
vmovdqu ymmword [rsp + 0x120], ymm0
vpaddb ymm0, ymm11, ymm11
vpand ymm5, ymm10, ymm5
vpxor ymm6, ymm2, ymm11
vpxor ymm0, ymm0, ymm3
vpsrlw ymm3, ymm2, 7
vpshufb ymm5, ymm9, ymm5
vpand ymm3, ymm10, ymm3
vpxor ymm2, ymm2, ymm14
vpshufb ymm3, ymm9, ymm3
vpxor ymm4, ymm4, ymm3
vpaddb ymm3, ymm14, ymm14
vpxor ymm3, ymm3, ymm5
vpsrlw ymm5, ymm15, 7
vpand ymm5, ymm10, ymm5
vpshufb ymm5, ymm9, ymm5
vpxor ymm5, ymm7, ymm5
vpxor ymm7, ymm0, ymm4
vpxor ymm4, ymm4, ymm3
vpxor ymm2, ymm2, ymm7
vpxor ymm3, ymm3, ymm5
vpxor ymm0, ymm0, ymm5
vmovdqu ymm7, ymmword [rsp + 0x2e0]
vpxor ymm13, ymm2, ymm15
vpxor ymm2, ymm14, ymm11
vmovdqu ymm11, ymmword [rsp + 0x100]
vpxor ymm2, ymm2, ymm4
vpxor ymm4, ymm2, ymm15
vpxor ymm2, ymm6, ymm15
vpxor ymm6, ymm6, ymm14
vmovdqu ymm14, ymmword [rsp + 0x200]
vmovdqu ymmword [rsp + 0x140], ymm4
vpxor ymm4, ymm2, ymm3
vpxor ymm12, ymm6, ymm0
vpaddb ymm0, ymm11, ymm11
vpsrlw ymm2, ymm11, 7
vpsrlw ymm5, ymm14, 7
vpxor ymm15, ymm7, ymm11
vmovdqu ymm6, ymmword [rsp + 0x260]
vpand ymm2, ymm10, ymm2
vpand ymm5, ymm10, ymm5
vmovdqu ymmword [rsp + 0xe0], ymm4
vpaddb ymm4, ymm7, ymm7
vpshufb ymm2, ymm9, ymm2
vpaddb ymm3, ymm6, ymm6
vpshufb ymm5, ymm9, ymm5
vpxor ymm0, ymm0, ymm2
vpsrlw ymm2, ymm7, 7
vpxor ymm7, ymm6, ymm7
vpand ymm2, ymm10, ymm2
vpshufb ymm2, ymm9, ymm2
vpxor ymm4, ymm4, ymm2
vpsrlw ymm2, ymm6, 7
vpand ymm2, ymm10, ymm2
vpshufb ymm2, ymm9, ymm2
vpxor ymm3, ymm3, ymm2
vpaddb ymm2, ymm14, ymm14
vpxor ymm2, ymm2, ymm5
vpxor ymm5, ymm0, ymm4
vpxor ymm4, ymm4, ymm3
vpxor ymm7, ymm7, ymm5
vmovdqu ymm5, ymm14
vpxor ymm3, ymm3, ymm2
vpxor ymm7, ymm7, ymm14
vpxor ymm14, ymm6, ymm11
vpxor ymm0, ymm0, ymm2
vpxor ymm14, ymm14, ymm4
vpxor ymm4, ymm15, ymm5
vpxor ymm15, ymm15, ymm6
vpxor ymm4, ymm4, ymm3
vpxor ymm14, ymm14, ymm5
vpxor ymm15, ymm15, ymm0
vmovdqu ymmword [rsp + 0x100], ymm4
cmp r9d, edx
jne 0x14006f248
vmovdqu ymm2, ymm12
vmovdqu ymm6, ymmword [rsp + 0x20]
vmovdqu ymm1, ymm13
vmovdqu ymmword [rsp + 0x1a0], ymm12
vmovdqu ymm12, ymmword [rsp + 0xe0]
vmovdqu ymm11, ymm4
vmovdqu ymm5, ymmword [rsp + 0xa0]
vmovdqu ymmword [rax + 0x40], ymm1
vmovdqu ymm4, ymmword [rsp + 0xc0]
vmovdqu ymmword [rax + 0x60], ymm7
vmovdqu ymm3, ymmword [rsp + 0x120]
vmovdqu ymmword [rax + 0x1a0], ymm6
vmovdqu ymm6, ymmword [rsp + 0x140]
vmovdqu ymm0, ymmword [rsp + 0x440]
vmovdqu ymmword [rax + 0x140], ymm12
vpxor ymm12, ymm1, ymmword [rsp]
vmovdqu ymm1, ymmword [rsp + 0x100]
vmovdqu ymmword [rsp + 0x180], ymm13
vmovdqu ymm13, ymmword [rsp + 0x460]
vmovdqu ymmword [rax + 0x20], ymm5
vmovdqu ymmword [rax + 0xa0], ymm4
vmovdqu ymmword [rax + 0x120], ymm3
vpxor ymm3, ymm1, ymm3
vpxor ymm1, ymm15, ymmword [rsp + 0x20]
vmovdqu ymmword [rax + 0xc0], ymm6
vpxor ymm6, ymm6, ymmword [rsp + 0x40]
vmovdqu ymmword [rax + 0x1c0], ymm2
vpxor ymm2, ymm2, ymmword [rsp + 0x80]
vmovdqu ymmword [rax + 0x160], ymm11
vpxor ymm11, ymm7, ymm5
vpxor ymm5, ymm14, ymm4
vmovdqu ymm4, ymmword [rsp + 0xe0]
vpxor ymm4, ymm4, ymmword [rsp + 0x60]
vmovdqu ymmword [rax + 0xe0], ymm14
vmovdqu ymmword [rax + 0x1e0], ymm15
cmp r12d, 0x100
je 0x14006fff0
vpxor ymm5, ymm5, ymmword [rsp + 0x3e0]
vpxor ymm0, ymm0, ymm12
vpxor ymm1, ymm1, ymm13
vpxor ymm6, ymm6, ymmword [rsp + 0x400]
vmovdqu ymmword [rsp], ymm0
vmovdqu ymmword [rsp + 0xc0], ymm5
vmovdqu ymmword [rax + 0xa0], ymm5
vpxor ymm5, ymm4, ymmword [rsp + 0x3c0]
vpxor ymm4, ymm2, ymmword [rsp + 0x380]
vmovdqu ymmword [rax], ymm0
vpxor ymm0, ymm11, ymmword [rsp + 0x420]
vmovdqu ymmword [rsp + 0x60], ymm5
vmovdqu ymmword [rax + 0x100], ymm5
vpxor ymm5, ymm3, ymmword [rsp + 0x3a0]
vmovdqu ymmword [rsp + 0xa0], ymm0
vmovdqu ymmword [rax + 0x20], ymm0
vmovdqu ymmword [rsp + 0x40], ymm6
vmovdqu ymmword [rax + 0x80], ymm6
vmovdqu ymmword [rsp + 0x120], ymm5
vmovdqu ymmword [rax + 0x120], ymm5
vmovdqu ymmword [rsp + 0x80], ymm4
vmovdqu ymmword [rax + 0x180], ymm4
vmovdqu ymmword [rsp + 0x20], ymm1
vmovdqu ymmword [rax + 0x1a0], ymm1
add r11d, 1
add rcx, rdi
cmp esi, r11d
jne 0x14006eee0
vmovdqu ymm12, ymmword [rsp + 0x20]
vmovdqu ymm2, ymm7
vmovdqu ymm1, ymm14
vmovdqu ymmword [r10 + 0xe0], ymm1
vmovdqu ymm1, ymmword [rsp + 0x60]
vmovdqu ymm6, ymmword [rsp]
vmovdqu ymm4, ymmword [rsp + 0x180]
vmovdqu ymmword [r10 + 0x60], ymm2
vmovdqu ymm5, ymmword [rsp + 0x140]
vmovdqu ymmword [r10 + 0x100], ymm1
vmovdqu ymm1, ymmword [rsp + 0x120]
vmovdqu ymmword [r10], ymm6
vmovdqu ymm6, ymmword [rsp + 0xa0]
vmovdqu ymmword [r10 + 0x120], ymm1
vmovdqu ymm1, ymmword [rsp + 0xe0]
vmovdqu ymmword [r10 + 0x20], ymm6
vmovdqu ymm6, ymmword [rsp + 0xc0]
vmovdqu ymmword [r10 + 0x140], ymm1
vmovdqu ymm1, ymmword [rsp + 0x100]
vmovdqu ymmword [r10 + 0x40], ymm4
vmovdqu ymm4, ymmword [rsp + 0x40]
vmovdqu ymmword [r10 + 0x160], ymm1
vmovdqu ymm1, ymmword [rsp + 0x80]
vmovdqu ymmword [r10 + 0xa0], ymm6
vmovdqu ymmword [r10 + 0x180], ymm1
vmovdqu ymm1, ymmword [rsp + 0x1a0]
vmovdqu ymmword [r10 + 0x1a0], ymm12
vmovdqu ymmword [r10 + 0x1e0], ymm15
vmovdqu ymmword [r10 + 0x80], ymm4
vmovdqu ymmword [r10 + 0xc0], ymm5
vmovdqu ymmword [r10 + 0x1c0], ymm1
vzeroupper
vmovups xmm6, xmmword [rsp + 0x6b0]
vmovups xmm7, xmmword [rsp + 0x6c0]
vmovups xmm8, xmmword [rsp + 0x6d0]
vmovups xmm9, xmmword [rsp + 0x6e0]
vmovups xmm10, xmmword [rsp + 0x6f0]
vmovups xmm11, xmmword [rsp + 0x700]
vmovups xmm12, xmmword [rsp + 0x710]
vmovups xmm13, xmmword [rsp + 0x720]
vmovups xmm14, xmmword [rsp + 0x730]
vmovups xmm15, xmmword [rsp + 0x740]
add rsp, 0x758
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
vpxor ymm0, ymm0, ymmword [rsp + 0x420]
vpxor ymm0, ymm0, ymm12
vpxor ymm0, ymm0, ymm11
vmovdqu ymmword [rsp], ymm0
vmovdqu ymmword [rax], ymm0
vmovdqu ymm0, ymmword [rsp + 0x3e0]
vpxor ymm0, ymm0, ymmword [rsp + 0x400]
vpxor ymm0, ymm0, ymm6
vpxor ymm5, ymm0, ymm5
vmovdqu ymmword [rsp + 0x40], ymm5
vmovdqu ymmword [rax + 0x80], ymm5
vmovdqu ymm5, ymmword [rsp + 0x3a0]
vpxor ymm0, ymm5, ymmword [rsp + 0x3c0]
vpxor ymm0, ymm0, ymm4
vpxor ymm4, ymm0, ymm3
vpxor ymm0, ymm13, ymmword [rsp + 0x380]
vmovdqu ymmword [rsp + 0x60], ymm4
vpxor ymm0, ymm0, ymm2
vmovdqu ymmword [rax + 0x100], ymm4
vpxor ymm1, ymm0, ymm1
vmovdqu ymmword [rsp + 0x80], ymm1
vmovdqu ymmword [rax + 0x180], ymm1
jmp 0x14006fe7c