Function at 0x180001150
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd8
movdqa xmmword [rsp + 0xc0], xmm15
movdqa xmmword [rsp + 0xb0], xmm14
movdqa xmmword [rsp + 0xa0], xmm13
movdqa xmmword [rsp + 0x90], xmm12
movdqa xmmword [rsp + 0x80], xmm11
movdqa xmmword [rsp + 0x70], xmm10
movdqa xmmword [rsp + 0x60], xmm9
movaps xmmword [rsp + 0x50], xmm8
movaps xmmword [rsp + 0x40], xmm7
movdqa xmmword [rsp + 0x30], xmm6
mov rdi, rcx
movzx ebp, byte [rcx]
movzx eax, byte [rcx + 1]
xor bpl, byte [rdx + 0xa0]
mov byte [rcx], bpl
xor al, byte [rdx + 0xa1]
mov byte [rsp + 0x26], al
mov byte [rcx + 1], al
movzx eax, byte [rcx + 2]
xor al, byte [rdx + 0xa2]
mov byte [rsp + 0x27], al
mov byte [rcx + 2], al
movzx ebx, byte [rcx + 3]
xor bl, byte [rdx + 0xa3]
mov byte [rcx + 3], bl
movzx esi, byte [rcx + 4]
xor sil, byte [rdx + 0xa4]
mov byte [rcx + 4], sil
movzx r10d, byte [rcx + 5]
xor r10b, byte [rdx + 0xa5]
mov byte [rcx + 5], r10b
movzx eax, byte [rcx + 6]
xor al, byte [rdx + 0xa6]
mov byte [rsp + 0x25], al
mov byte [rcx + 6], al
movzx eax, byte [rcx + 7]
xor al, byte [rdx + 0xa7]
mov byte [rsp + 0x24], al
mov byte [rcx + 7], al
movzx ecx, byte [rcx + 8]
xor cl, byte [rdx + 0xa8]
mov byte [rdi + 8], cl
movzx r15d, byte [rdi + 9]
xor r15b, byte [rdx + 0xa9]
mov byte [rdi + 9], r15b
movzx r13d, byte [rdi + 0xa]
xor r13b, byte [rdx + 0xaa]
mov byte [rdi + 0xa], r13b
movzx r11d, byte [rdi + 0xb]
xor r11b, byte [rdx + 0xab]
mov byte [rdi + 0xb], r11b
movzx r8d, byte [rdi + 0xc]
xor r8b, byte [rdx + 0xac]
mov byte [rdi + 0xc], r8b
movzx r9d, byte [rdi + 0xd]
xor r9b, byte [rdx + 0xad]
mov byte [rdi + 0xd], r9b
movzx eax, byte [rdi + 0xe]
xor al, byte [rdx + 0xae]
mov byte [rdi + 0xe], al
movzx r12d, byte [rdi + 0xf]
mov qword [rsp + 0x28], rdx
xor r12b, byte [rdx + 0xaf]
mov edx, ebx
mov bl, 9
lea r14, [0x180003110]
pxor xmm6, xmm6
movdqa xmm7, xmmword [0x180003210]
movdqa xmm8, xmmword [0x180003220]
nop
movzx ebp, bpl
movzx ebp, byte [rbp + r14]
mov byte [rdi], bpl
movzx esi, sil
movzx esi, byte [rsi + r14]
mov byte [rdi + 4], sil
movzx ecx, cl
movzx ecx, byte [rcx + r14]
mov byte [rdi + 8], cl
movzx ecx, r8b
movzx ecx, byte [rcx + r14]
mov byte [rdi + 0xc], cl
movzx ecx, r9b
movzx ecx, byte [rcx + r14]
mov byte [rdi + 1], cl
movzx ecx, byte [rsp + 0x26]
movzx ecx, byte [rcx + r14]
mov byte [rdi + 5], cl
movzx ecx, r10b
movzx ecx, byte [rcx + r14]
mov byte [rdi + 9], cl
movzx ecx, r15b
movzx ecx, byte [rcx + r14]
mov byte [rdi + 0xd], cl
movzx ecx, r13b
movzx ecx, byte [rcx + r14]
mov byte [rdi + 2], cl
movzx eax, al
movzx eax, byte [rax + r14]
mov byte [rdi + 6], al
movzx eax, byte [rsp + 0x27]
movzx eax, byte [rax + r14]
mov byte [rdi + 0xa], al
movzx eax, byte [rsp + 0x25]
movzx eax, byte [rax + r14]
mov byte [rdi + 0xe], al
movzx eax, byte [rsp + 0x24]
movzx eax, byte [rax + r14]
mov byte [rdi + 3], al
movzx eax, r11b
movzx eax, byte [rax + r14]
mov byte [rdi + 7], al
movzx eax, r12b
movzx eax, byte [rax + r14]
mov byte [rdi + 0xb], al
movzx eax, dl
movzx eax, byte [rax + r14]
mov byte [rdi + 0xf], al
mov ecx, ebx
mov rdx, rdi
mov r8, qword [rsp + 0x28]
call fcn.180001880
sub bl, 1
jb 0x1800016ca
movzx eax, byte [rdi]
movzx ecx, byte [rdi + 8]
movzx edx, byte [rdi + 0xc]
shl edx, 8
or edx, ecx
movzx ecx, byte [rdi + 4]
shl ecx, 8
or ecx, eax
movd xmm2, ecx
pinsrw xmm2, edx, 1
movzx eax, byte [rdi + 1]
movzx ecx, byte [rdi + 9]
movzx edx, byte [rdi + 0xd]
shl edx, 8
or edx, ecx
movzx ecx, byte [rdi + 5]
shl ecx, 8
or ecx, eax
movd xmm0, ecx
pinsrw xmm0, edx, 1
movzx eax, byte [rdi + 2]
movzx ecx, byte [rdi + 0xa]
movzx edx, byte [rdi + 0xe]
shl edx, 8
or edx, ecx
movzx ecx, byte [rdi + 6]
shl ecx, 8
or ecx, eax
movd xmm3, ecx
pinsrw xmm3, edx, 1
movzx eax, byte [rdi + 3]
movzx ecx, byte [rdi + 0xb]
movzx edx, byte [rdi + 0xf]
shl edx, 8
or edx, ecx
movzx ecx, byte [rdi + 7]
shl ecx, 8
or ecx, eax
movd xmm4, ecx
pinsrw xmm4, edx, 1
pxor xmm1, xmm1
pcmpgtb xmm1, xmm2
movdqa xmm5, xmm0
pxor xmm9, xmm9
pcmpgtb xmm9, xmm0
movdqa xmm10, xmm3
pxor xmm10, xmm0
movdqa xmm11, xmm3
pxor xmm11, xmm2
pxor xmm0, xmm2
paddb xmm2, xmm2
pand xmm1, xmm7
pxor xmm1, xmm2
movdqa xmm13, xmm1
paddb xmm13, xmm1
pxor xmm14, xmm14
pcmpgtb xmm14, xmm2
pand xmm14, xmm7
pxor xmm14, xmm13
pxor xmm12, xmm12
pcmpgtb xmm12, xmm13
paddb xmm5, xmm5
pand xmm9, xmm7
pxor xmm9, xmm5
pxor xmm2, xmm2
pcmpgtb xmm2, xmm3
pxor xmm10, xmm4
pxor xmm10, xmm1
pxor xmm1, xmm3
paddb xmm3, xmm3
pand xmm2, xmm7
pxor xmm2, xmm3
movdqa xmm13, xmm2
pxor xmm15, xmm15
pcmpgtb xmm15, xmm4
pxor xmm11, xmm4
pxor xmm11, xmm9
pxor xmm11, xmm2
pxor xmm2, xmm4
paddb xmm4, xmm4
pand xmm15, xmm7
pxor xmm15, xmm4
pxor xmm10, xmm9
pxor xmm10, xmm14
pxor xmm0, xmm15
pxor xmm2, xmm0
pxor xmm2, xmm14
paddb xmm14, xmm14
pand xmm12, xmm7
pxor xmm12, xmm14
paddb xmm9, xmm9
pxor xmm14, xmm14
pcmpgtb xmm14, xmm5
pand xmm14, xmm7
pxor xmm14, xmm9
pxor xmm5, xmm5
pcmpgtb xmm5, xmm9
pxor xmm1, xmm0
pxor xmm11, xmm14
pxor xmm1, xmm14
paddb xmm14, xmm14
pand xmm5, xmm7
pxor xmm5, xmm14
paddb xmm13, xmm13
pxor xmm0, xmm0
pcmpgtb xmm0, xmm3
pand xmm0, xmm7
pxor xmm0, xmm13
pxor xmm3, xmm3
pcmpgtb xmm3, xmm13
pxor xmm10, xmm0
pxor xmm2, xmm0
paddb xmm0, xmm0
pand xmm3, xmm7
pxor xmm3, xmm0
pxor xmm3, xmm5
paddb xmm15, xmm15
pxor xmm0, xmm0
pcmpgtb xmm0, xmm4
pand xmm0, xmm7
pxor xmm0, xmm15
pxor xmm4, xmm4
pcmpgtb xmm4, xmm15
pxor xmm11, xmm0
pxor xmm1, xmm0
paddb xmm0, xmm0
pand xmm4, xmm7
pxor xmm4, xmm0
pxor xmm10, xmm12
pxor xmm10, xmm3
pxor xmm10, xmm4
pxor xmm11, xmm12
pxor xmm11, xmm3
pxor xmm11, xmm4
punpckldq xmm10, xmm11
pxor xmm2, xmm12
pxor xmm1, xmm12
pxor xmm2, xmm3
pxor xmm1, xmm3
pxor xmm2, xmm4
pxor xmm1, xmm4
punpckldq xmm2, xmm1
punpcklbw xmm2, xmm6
pshufd xmm0, xmm2, 0xd7
pshuflw xmm0, xmm0, 0x24
pshufhw xmm0, xmm0, 0xd4
pshufd xmm1, xmm2, 0x28
pshuflw xmm1, xmm1, 0x84
pshufhw xmm1, xmm1, 0x74
packuswb xmm1, xmm0
movdqa xmm0, xmm8
pandn xmm0, xmm1
punpcklbw xmm10, xmm6
pshufd xmm1, xmm10, 0xd7
pshuflw xmm1, xmm1, 0xe2
pshufhw xmm1, xmm1, 0xed
pshufd xmm2, xmm10, 0x28
pshuflw xmm2, xmm2, 0xe8
pshufhw xmm2, xmm2, 0xe7
packuswb xmm2, xmm1
pand xmm2, xmm8
por xmm2, xmm0
movdqu xmmword [rdi], xmm2
movzx r9d, byte [rdi + 0xd]
movzx r15d, byte [rdi + 9]
movzx r10d, byte [rdi + 5]
movzx ebp, byte [rdi]
movzx eax, byte [rdi + 1]
mov byte [rsp + 0x26], al
movzx eax, byte [rdi + 2]
mov byte [rsp + 0x27], al
movzx r13d, byte [rdi + 0xa]
movzx eax, byte [rdi + 6]
mov byte [rsp + 0x25], al
movzx eax, byte [rdi + 0xe]
movzx edx, byte [rdi + 3]
movzx ecx, byte [rdi + 7]
mov byte [rsp + 0x24], cl
movzx r11d, byte [rdi + 0xb]
movzx r12d, byte [rdi + 0xf]
movzx esi, byte [rdi + 4]
movzx ecx, byte [rdi + 8]
movzx r8d, byte [rdi + 0xc]
jmp 0x1800012d0
movaps xmm6, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x60]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm11, xmmword [rsp + 0x80]
movaps xmm12, xmmword [rsp + 0x90]
movaps xmm13, xmmword [rsp + 0xa0]
movaps xmm14, xmmword [rsp + 0xb0]
movaps xmm15, xmmword [rsp + 0xc0]
add rsp, 0xd8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret