Function at 0x140042990
Capabilities:
Encrypt data using aes
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movdqa xmmword [rsp + 0xb0], xmm15
movdqa xmmword [rsp + 0xa0], xmm14
movdqa xmmword [rsp + 0x90], xmm13
movdqa xmmword [rsp + 0x80], xmm12
movdqa xmmword [rsp + 0x70], xmm11
movdqa xmmword [rsp + 0x60], xmm10
movdqa xmmword [rsp + 0x50], xmm9
movdqa xmmword [rsp + 0x40], xmm8
movdqa xmmword [rsp + 0x30], xmm7
movdqa xmmword [rsp + 0x20], xmm6
mov r10d, dword [rcx + 0xf0]
lea r9d, [r10 - 0x10]
mov eax, 0xffffff1e
cmp r9d, 0xfffffff2
jb 0x140043880
mov qword [rsp + 0x18], r8
mov r8, rdx
mov edx, dword [rdx]
mov eax, dword [r8 + 4]
bswap eax
xor eax, dword [rcx + 4]
mov ebx, dword [r8 + 8]
mov r12d, eax
movzx r9d, al
mov qword [rsp + 8], r9
movzx edi, ah
mov r11d, eax
mov eax, dword [r8 + 0xc]
bswap edx
bswap ebx
xor edx, dword [rcx]
xor ebx, dword [rcx + 8]
bswap eax
xor eax, dword [rcx + 0xc]
mov r8d, edx
shr r8d, 0x18
mov qword [rsp + 0x10], r10
lea r10, [0x1400db040]
shr r11d, 0xe
and r11d, 0x3fc
mov r9d, dword [r11 + r10 + 0x400]
xor r9d, dword [r10 + r8*4]
movzx ebp, bh
xor r9d, dword [r10 + rbp*4 + 0x800]
mov r14d, ebx
movzx r8d, bl
movzx r15d, al
xor r9d, dword [r10 + r15*4 + 0xc00]
xor r9d, dword [rcx + 0x10]
shr r12d, 0x18
shr ebx, 0xe
and ebx, 0x3fc
movzx esi, ah
movzx r15d, dl
mov qword [rsp], rcx
mov r13d, eax
movzx ebp, dh
shr eax, 0x18
shr edx, 0xe
and edx, 0x3fc
mov edx, dword [rdx + r10 + 0x400]
xor edx, dword [r10 + rax*4]
mov ebx, dword [rbx + r10 + 0x400]
xor ebx, dword [r10 + r12*4]
xor ebx, dword [r10 + rsi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x14]
shr r14d, 0x18
shr r13d, 0xe
and r13d, 0x3fc
mov eax, dword [r13 + r10 + 0x400]
xor eax, dword [r10 + r14*4]
xor eax, dword [r10 + rbp*4 + 0x800]
mov rcx, qword [rsp + 8]
xor eax, dword [r10 + rcx*4 + 0xc00]
mov rcx, qword [rsp]
xor eax, dword [rcx + 0x18]
xor edx, dword [r10 + rdi*4 + 0x800]
xor edx, dword [r10 + r8*4 + 0xc00]
mov rcx, qword [rsp]
xor edx, dword [rcx + 0x1c]
mov ecx, r9d
shr ecx, 0x18
mov r13d, ebx
movzx esi, bl
mov r8d, ebx
shr r8d, 0xe
and r8d, 0x3fc
mov r11d, dword [r8 + r10 + 0x400]
xor r11d, dword [r10 + rcx*4]
movzx edi, bh
movzx ebx, ah
mov r14d, eax
movzx r15d, al
mov r8d, eax
xor r11d, dword [r10 + rbx*4 + 0x800]
movzx eax, dl
xor r11d, dword [r10 + rax*4 + 0xc00]
mov rax, qword [rsp]
xor r11d, dword [rax + 0x20]
shr r13d, 0x18
shr r8d, 0xe
movzx ebp, dh
mov rcx, r9
movzx r9d, cl
mov r12d, edx
movzx eax, ch
shr edx, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ebx, dword [rcx + r10 + 0x400]
xor ebx, dword [r10 + rdx*4]
and r8d, 0x3fc
mov ecx, dword [r8 + r10 + 0x400]
xor ecx, dword [r10 + r13*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x24]
shr r14d, 0x18
shr r12d, 0xe
and r12d, 0x3fc
mov r13d, ecx
movzx r9d, cl
movzx edx, ch
mov qword [rsp + 8], rdx
mov edx, dword [r12 + r10 + 0x400]
xor edx, dword [r10 + r14*4]
xor edx, dword [r10 + rax*4 + 0x800]
xor edx, dword [r10 + rsi*4 + 0xc00]
mov rax, qword [rsp]
xor edx, dword [rax + 0x28]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x2c]
mov eax, r11d
shr eax, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ecx, dword [rcx + r10 + 0x400]
xor ecx, dword [r10 + rax*4]
movzx eax, dh
xor ecx, dword [r10 + rax*4 + 0x800]
mov esi, edx
movzx r8d, dl
mov eax, edx
movzx edx, bl
xor ecx, dword [r10 + rdx*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x30]
shr r13d, 0x18
shr eax, 0xe
and eax, 0x3fc
movzx edi, bh
mov rdx, r11
movzx r14d, dl
mov r15d, ebx
movzx ebp, dh
shr ebx, 0x18
shr edx, 0xe
and edx, 0x3fc
mov edx, dword [rdx + r10 + 0x400]
xor edx, dword [r10 + rbx*4]
mov ebx, dword [rax + r10 + 0x400]
xor ebx, dword [r10 + r13*4]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r14*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x34]
shr esi, 0x18
shr r15d, 0xe
and r15d, 0x3fc
mov eax, dword [r15 + r10 + 0x400]
xor eax, dword [r10 + rsi*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r9*4 + 0xc00]
mov r9, qword [rsp]
xor eax, dword [r9 + 0x38]
mov r9, qword [rsp + 8]
xor edx, dword [r10 + r9*4 + 0x800]
xor edx, dword [r10 + r8*4 + 0xc00]
mov r8, qword [rsp]
xor edx, dword [r8 + 0x3c]
mov r9d, ecx
shr r9d, 0x18
mov r13d, ebx
movzx esi, bl
mov r8d, ebx
shr r8d, 0xe
and r8d, 0x3fc
mov r11d, dword [r8 + r10 + 0x400]
xor r11d, dword [r10 + r9*4]
movzx edi, bh
movzx ebx, ah
mov r14d, eax
movzx r15d, al
mov r8d, eax
xor r11d, dword [r10 + rbx*4 + 0x800]
movzx eax, dl
xor r11d, dword [r10 + rax*4 + 0xc00]
mov rax, qword [rsp]
xor r11d, dword [rax + 0x40]
shr r13d, 0x18
shr r8d, 0xe
movzx ebp, dh
movzx r9d, cl
mov r12d, edx
movzx eax, ch
shr edx, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ebx, dword [rcx + r10 + 0x400]
xor ebx, dword [r10 + rdx*4]
and r8d, 0x3fc
mov ecx, dword [r8 + r10 + 0x400]
xor ecx, dword [r10 + r13*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x44]
shr r14d, 0x18
shr r12d, 0xe
and r12d, 0x3fc
mov r13d, ecx
movzx r9d, cl
movzx edx, ch
mov qword [rsp + 8], rdx
mov edx, dword [r12 + r10 + 0x400]
xor edx, dword [r10 + r14*4]
xor edx, dword [r10 + rax*4 + 0x800]
xor edx, dword [r10 + rsi*4 + 0xc00]
mov rax, qword [rsp]
xor edx, dword [rax + 0x48]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x4c]
mov eax, r11d
shr eax, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ecx, dword [rcx + r10 + 0x400]
xor ecx, dword [r10 + rax*4]
movzx eax, dh
xor ecx, dword [r10 + rax*4 + 0x800]
mov esi, edx
movzx r8d, dl
mov eax, edx
movzx edx, bl
xor ecx, dword [r10 + rdx*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x50]
shr r13d, 0x18
shr eax, 0xe
and eax, 0x3fc
movzx edi, bh
mov rdx, r11
movzx r14d, dl
mov r15d, ebx
movzx ebp, dh
shr ebx, 0x18
shr edx, 0xe
and edx, 0x3fc
mov edx, dword [rdx + r10 + 0x400]
xor edx, dword [r10 + rbx*4]
mov ebx, dword [rax + r10 + 0x400]
xor ebx, dword [r10 + r13*4]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r14*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x54]
shr esi, 0x18
shr r15d, 0xe
and r15d, 0x3fc
mov eax, dword [r15 + r10 + 0x400]
xor eax, dword [r10 + rsi*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r9*4 + 0xc00]
mov r9, qword [rsp]
xor eax, dword [r9 + 0x58]
mov r9, qword [rsp + 8]
xor edx, dword [r10 + r9*4 + 0x800]
xor edx, dword [r10 + r8*4 + 0xc00]
mov r8, qword [rsp]
xor edx, dword [r8 + 0x5c]
mov r9d, ecx
shr r9d, 0x18
mov r13d, ebx
movzx esi, bl
mov r8d, ebx
shr r8d, 0xe
and r8d, 0x3fc
mov r11d, dword [r8 + r10 + 0x400]
xor r11d, dword [r10 + r9*4]
movzx edi, bh
movzx ebx, ah
mov r14d, eax
movzx r15d, al
mov r8d, eax
xor r11d, dword [r10 + rbx*4 + 0x800]
movzx eax, dl
xor r11d, dword [r10 + rax*4 + 0xc00]
mov rax, qword [rsp]
xor r11d, dword [rax + 0x60]
shr r13d, 0x18
shr r8d, 0xe
movzx ebp, dh
movzx r9d, cl
mov r12d, edx
movzx eax, ch
shr edx, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ebx, dword [rcx + r10 + 0x400]
xor ebx, dword [r10 + rdx*4]
and r8d, 0x3fc
mov ecx, dword [r8 + r10 + 0x400]
xor ecx, dword [r10 + r13*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x64]
shr r14d, 0x18
shr r12d, 0xe
and r12d, 0x3fc
mov r13d, ecx
movzx r9d, cl
movzx ebp, ch
mov r8d, ecx
mov ecx, dword [r12 + r10 + 0x400]
xor ecx, dword [r10 + r14*4]
xor ecx, dword [r10 + rax*4 + 0x800]
xor ecx, dword [r10 + rsi*4 + 0xc00]
mov rax, qword [rsp]
xor ecx, dword [rax + 0x68]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x6c]
mov eax, r11d
shr eax, 0x18
shr r8d, 0xe
and r8d, 0x3fc
mov r12d, dword [r8 + r10 + 0x400]
xor r12d, dword [r10 + rax*4]
movzx eax, ch
xor r12d, dword [r10 + rax*4 + 0x800]
mov esi, ecx
movzx r8d, cl
mov eax, ecx
movzx ecx, bl
xor r12d, dword [r10 + rcx*4 + 0xc00]
mov rcx, qword [rsp]
xor r12d, dword [rcx + 0x70]
shr r13d, 0x18
shr eax, 0xe
and eax, 0x3fc
movzx edx, bh
mov rcx, r11
movzx r14d, cl
mov r15d, ebx
movzx edi, ch
shr ebx, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ecx, dword [rcx + r10 + 0x400]
xor ecx, dword [r10 + rbx*4]
mov ebx, dword [rax + r10 + 0x400]
xor ebx, dword [r10 + r13*4]
xor ebx, dword [r10 + rdx*4 + 0x800]
xor ebx, dword [r10 + r14*4 + 0xc00]
mov rax, qword [rsp]
xor ebx, dword [rax + 0x74]
shr esi, 0x18
shr r15d, 0xe
and r15d, 0x3fc
mov eax, dword [r15 + r10 + 0x400]
xor eax, dword [r10 + rsi*4]
xor eax, dword [r10 + rdi*4 + 0x800]
xor eax, dword [r10 + r9*4 + 0xc00]
mov rdx, qword [rsp]
xor eax, dword [rdx + 0x78]
xor ecx, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + r8*4 + 0xc00]
mov rdx, qword [rsp]
xor ecx, dword [rdx + 0x7c]
mov esi, r12d
shr esi, 0x18
mov r15d, ebx
movzx edx, bl
mov qword [rsp + 8], rdx
mov edx, ebx
shr edx, 0xe
and edx, 0x3fc
mov edx, dword [rdx + r10 + 0x400]
xor edx, dword [r10 + rsi*4]
movzx esi, bh
movzx ebx, ah
mov r9d, eax
movzx r8d, al
xor edx, dword [r10 + rbx*4 + 0x800]
movzx ebx, cl
xor edx, dword [r10 + rbx*4 + 0xc00]
mov r11, qword [rsp]
xor edx, dword [r11 + 0x80]
shr r15d, 0x18
shr eax, 0xe
movzx ebp, ch
mov rbx, r12
movzx r12d, bl
mov r14d, ecx
movzx edi, bh
shr ecx, 0x18
shr ebx, 0xe
and ebx, 0x3fc
mov ebx, dword [rbx + r10 + 0x400]
xor ebx, dword [r10 + rcx*4]
and eax, 0x3fc
mov eax, dword [rax + r10 + 0x400]
xor eax, dword [r10 + r15*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r12*4 + 0xc00]
mov rcx, qword [rsp]
xor eax, dword [rcx + 0x84]
shr r9d, 0x18
shr r14d, 0xe
xor ebx, dword [r10 + rsi*4 + 0x800]
xor ebx, dword [r10 + r8*4 + 0xc00]
and r14d, 0x3fc
mov rcx, qword [rsp]
xor ebx, dword [rcx + 0x8c]
mov r12d, edx
movzx r15d, bl
movzx ebp, bh
movzx r13d, dl
mov r8d, ebx
movzx esi, dh
shr ebx, 0x18
shr edx, 0xe
and edx, 0x3fc
mov ecx, dword [rdx + r10 + 0x400]
xor ecx, dword [r10 + rbx*4]
mov edx, dword [r14 + r10 + 0x400]
xor edx, dword [r10 + r9*4]
xor edx, dword [r10 + rdi*4 + 0x800]
mov r9, qword [rsp + 8]
xor edx, dword [r10 + r9*4 + 0xc00]
mov r9, qword [rsp]
xor edx, dword [r9 + 0x88]
shr r12d, 0x18
mov r9d, eax
shr r9d, 0xe
and r9d, 0x3fc
mov ebx, dword [r9 + r10 + 0x400]
xor ebx, dword [r10 + r12*4]
movzx edi, dh
xor ebx, dword [r10 + rdi*4 + 0x800]
mov r9d, eax
movzx r14d, al
movzx edi, ah
shr r9d, 0x18
mov r12d, edx
movzx r11d, dl
mov eax, edx
shr eax, 0xe
and eax, 0x3fc
mov edx, dword [rax + r10 + 0x400]
xor edx, dword [r10 + r9*4]
xor edx, dword [r10 + rbp*4 + 0x800]
shr r12d, 0x18
shr r8d, 0xe
and r8d, 0x3fc
mov eax, dword [r8 + r10 + 0x400]
xor eax, dword [r10 + r12*4]
xor eax, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov r8, qword [rsp]
xor ebx, dword [r8 + 0x90]
xor edx, dword [r10 + r13*4 + 0xc00]
mov r13, qword [rsp]
xor edx, dword [r13 + 0x94]
xor eax, dword [r10 + r14*4 + 0xc00]
xor eax, dword [r13 + 0x98]
xor ecx, dword [r10 + r11*4 + 0xc00]
xor ecx, dword [r13 + 0x9c]
cmp dword [rsp + 0x10], 0xc
jb 0x1400436dd
mov r9d, ebx
shr r9d, 0x18
mov r15d, edx
movzx r8d, dl
mov qword [rsp + 8], r8
mov r8d, edx
shr r8d, 0xe
and r8d, 0x3fc
mov r12d, dword [r8 + r10 + 0x400]
xor r12d, dword [r10 + r9*4]
movzx esi, dh
movzx edx, ah
mov r9d, eax
movzx r8d, al
xor r12d, dword [r10 + rdx*4 + 0x800]
movzx edx, cl
xor r12d, dword [r10 + rdx*4 + 0xc00]
xor r12d, dword [r13 + 0xa0]
shr r15d, 0x18
shr eax, 0xe
movzx edx, ch
movzx r11d, bl
mov r14d, ecx
movzx edi, bh
shr ecx, 0x18
shr ebx, 0xe
and ebx, 0x3fc
mov ebx, dword [rbx + r10 + 0x400]
xor ebx, dword [r10 + rcx*4]
and eax, 0x3fc
mov eax, dword [rax + r10 + 0x400]
xor eax, dword [r10 + r15*4]
xor eax, dword [r10 + rdx*4 + 0x800]
xor eax, dword [r10 + r11*4 + 0xc00]
xor eax, dword [r13 + 0xa4]
shr r9d, 0x18
shr r14d, 0xe
xor ebx, dword [r10 + rsi*4 + 0x800]
xor ebx, dword [r10 + r8*4 + 0xc00]
and r14d, 0x3fc
xor ebx, dword [r13 + 0xac]
mov rcx, r12
movzx r15d, bl
movzx ebp, bh
movzx r13d, cl
mov r8d, ebx
movzx esi, ch
shr ebx, 0x18
shr ecx, 0xe
and ecx, 0x3fc
mov ecx, dword [rcx + r10 + 0x400]
xor ecx, dword [r10 + rbx*4]
mov edx, dword [r14 + r10 + 0x400]
xor edx, dword [r10 + r9*4]
xor edx, dword [r10 + rdi*4 + 0x800]
mov r9, qword [rsp + 8]
xor edx, dword [r10 + r9*4 + 0xc00]
mov r9, qword [rsp]
xor edx, dword [r9 + 0xa8]
shr r12d, 0x18
mov r9d, eax
shr r9d, 0xe
and r9d, 0x3fc
mov ebx, dword [r9 + r10 + 0x400]
xor ebx, dword [r10 + r12*4]
movzx edi, dh
xor ebx, dword [r10 + rdi*4 + 0x800]
mov r9d, eax
movzx r11d, al
movzx edi, ah
shr r9d, 0x18
mov r14d, edx
movzx r12d, dl
mov eax, edx
shr eax, 0xe
and eax, 0x3fc
mov edx, dword [rax + r10 + 0x400]
xor edx, dword [r10 + r9*4]
xor edx, dword [r10 + rbp*4 + 0x800]
shr r14d, 0x18
shr r8d, 0xe
and r8d, 0x3fc
mov eax, dword [r8 + r10 + 0x400]
xor eax, dword [r10 + r14*4]
xor eax, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov r8, qword [rsp]
xor ebx, dword [r8 + 0xb0]
xor edx, dword [r10 + r13*4 + 0xc00]
mov r13, qword [rsp]
xor edx, dword [r13 + 0xb4]
xor eax, dword [r10 + r11*4 + 0xc00]
xor eax, dword [r13 + 0xb8]
xor ecx, dword [r10 + r12*4 + 0xc00]
xor ecx, dword [r13 + 0xbc]
cmp dword [rsp + 0x10], 0xe
jb 0x1400436dd
mov r13d, edx
movzx r8d, dl
movzx edi, dh
mov r9d, ebx
shr r9d, 0x18
shr edx, 0xe
and edx, 0x3fc
mov edx, dword [rdx + r10 + 0x400]
xor edx, dword [r10 + r9*4]
movzx esi, ah
xor edx, dword [r10 + rsi*4 + 0x800]
mov r14d, eax
movzx r15d, al
movzx r9d, cl
xor edx, dword [r10 + r9*4 + 0xc00]
mov r9, qword [rsp]
xor edx, dword [r9 + 0xc0]
shr r13d, 0x18
shr eax, 0xe
and eax, 0x3fc
movzx esi, ch
movzx r9d, bl
mov r12d, ecx
movzx ebp, bh
shr ecx, 0x18
shr ebx, 0xe
and ebx, 0x3fc
mov ebx, dword [rbx + r10 + 0x400]
xor ebx, dword [r10 + rcx*4]
mov ecx, dword [rax + r10 + 0x400]
xor ecx, dword [r10 + r13*4]
xor ecx, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
mov rax, qword [rsp]
xor ecx, dword [rax + 0xc4]
shr r14d, 0x18
shr r12d, 0xe
and r12d, 0x3fc
mov r13d, ecx
movzx eax, cl
mov qword [rsp + 8], rax
movzx eax, ch
mov r9, rax
mov r11d, ecx
mov eax, dword [r12 + r10 + 0x400]
xor eax, dword [r10 + r14*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r8*4 + 0xc00]
mov rcx, qword [rsp]
xor eax, dword [rcx + 0xc8]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
mov rcx, qword [rsp]
xor ebx, dword [rcx + 0xcc]
mov r14d, edx
shr r14d, 0x18
shr r11d, 0xe
movzx r8d, bl
movzx esi, bh
movzx edi, dl
mov r15d, ebx
movzx ebp, dh
shr ebx, 0x18
shr edx, 0xe
and edx, 0x3fc
mov ecx, dword [rdx + r10 + 0x400]
xor ecx, dword [r10 + rbx*4]
and r11d, 0x3fc
mov ebx, dword [r11 + r10 + 0x400]
xor ebx, dword [r10 + r14*4]
movzx edx, ah
xor ebx, dword [r10 + rdx*4 + 0x800]
shr r13d, 0x18
mov r11d, eax
movzx r14d, al
shr eax, 0xe
and eax, 0x3fc
mov edx, dword [rax + r10 + 0x400]
xor edx, dword [r10 + r13*4]
mov r13, qword [rsp]
xor edx, dword [r10 + rsi*4 + 0x800]
shr r11d, 0x18
shr r15d, 0xe
and r15d, 0x3fc
mov eax, dword [r15 + r10 + 0x400]
xor eax, dword [r10 + r11*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0x800]
xor ebx, dword [r10 + r8*4 + 0xc00]
xor ebx, dword [r13 + 0xd0]
xor edx, dword [r10 + rdi*4 + 0xc00]
xor edx, dword [r13 + 0xd4]
mov r8, qword [rsp + 8]
xor eax, dword [r10 + r8*4 + 0xc00]
xor eax, dword [r13 + 0xd8]
xor ecx, dword [r10 + r14*4 + 0xc00]
xor ecx, dword [r13 + 0xdc]
mov r9d, edx
mov edi, edx
movzx r14d, dl
movzx ebp, dh
movzx edx, ah
mov r15d, eax
mov r12d, eax
movzx eax, al
mov r8d, ecx
shr r8d, 0xe
and r8d, 0x3fc
movd xmm0, dword [r8 + r10 + 0xc00]
movzx r8d, cl
movzx esi, ch
shr ecx, 0x18
movd xmm4, dword [r10 + rcx*4 + 0x800]
shr edi, 0x18
movd xmm2, dword [r10 + rdi*4 + 0x800]
mov r11d, ebx
shr r9d, 0xe
and r9d, 0x3fc
movd xmm1, dword [r9 + r10 + 0xc00]
movzx ecx, bl
movzx edi, bh
shr ebx, 0xe
and ebx, 0x3fc
movd xmm6, dword [rbx + r10 + 0xc00]
shr r12d, 0x18
movd xmm5, dword [r10 + r12*4 + 0x800]
shr r11d, 0x18
movd xmm3, dword [r10 + r11*4 + 0x800]
shr r15d, 0xe
and r15d, 0x3fc
movd xmm7, dword [r15 + r10 + 0xc00]
movd xmm10, dword [r10 + rbp*4]
movd xmm9, dword [r10 + rdi*4]
movd xmm11, dword [r10 + rsi*4]
movd xmm8, dword [r10 + rdx*4]
movd xmm14, dword [r10 + rax*4 + 0x400]
movd xmm13, dword [r10 + r14*4 + 0x400]
movd xmm15, dword [r10 + rcx*4 + 0x400]
movd xmm12, dword [r10 + r8*4 + 0x400]
mov rax, qword [rsp + 0x10]
and eax, 0xe
shl eax, 4
punpckldq xmm0, xmm4
movdqu xmm4, xmmword [r13 + rax]
punpckldq xmm1, xmm2
punpcklqdq xmm1, xmm0
punpckldq xmm5, xmm6
punpckldq xmm3, xmm7
pand xmm1, xmmword [0x1400dd1a0]
punpcklqdq xmm3, xmm5
pand xmm3, xmmword [0x1400dd1b0]
por xmm3, xmm1
punpckldq xmm9, xmm10
punpckldq xmm8, xmm11
punpcklqdq xmm8, xmm9
punpckldq xmm13, xmm14
punpckldq xmm12, xmm15
pand xmm8, xmmword [0x1400dd1c0]
punpcklqdq xmm12, xmm13
pand xmm12, xmmword [0x1400dd1d0]
por xmm12, xmm8
por xmm12, xmm3
pxor xmm4, xmm12
pxor xmm0, xmm0
movdqa xmm1, xmm4
punpckhbw xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
punpcklbw xmm4, xmm0
pshuflw xmm0, xmm4, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm1
mov rax, qword [rsp + 0x18]
movdqu xmmword [rax], xmm0
xor eax, eax
movaps xmm6, xmmword [rsp + 0x20]
movaps xmm7, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm9, xmmword [rsp + 0x50]
movaps xmm10, xmmword [rsp + 0x60]
movaps xmm11, xmmword [rsp + 0x70]
movaps xmm12, xmmword [rsp + 0x80]
movaps xmm13, xmmword [rsp + 0x90]
movaps xmm14, xmmword [rsp + 0xa0]
movaps xmm15, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret