Function at 0x14003c470
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, 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
movdqa xmmword [rsp + 0x50], xmm8
movdqa xmmword [rsp + 0x40], xmm7
movdqa xmmword [rsp + 0x30], xmm6
mov r11, rcx
mov r9d, dword [rcx + 0xf0]
lea ecx, [r9 - 0x10]
mov eax, 0xffffff1e
cmp ecx, 0xfffffff2
jb 0x14003d283
mov qword [rsp + 0x28], r8
mov ecx, dword [rdx]
mov eax, dword [rdx + 4]
bswap eax
xor eax, dword [r11 + 4]
mov ebx, dword [rdx + 8]
mov qword [rsp + 0x18], r9
mov r13d, eax
movzx r9d, al
movzx edi, ah
mov r8d, eax
mov eax, dword [rdx + 0xc]
bswap ecx
bswap ebx
xor ecx, dword [r11]
xor ebx, dword [r11 + 8]
bswap eax
xor eax, dword [r11 + 0xc]
mov r14d, ecx
shr r14d, 0x18
lea r10, [0x1400d3d90]
shr r8d, 0x10
movzx edx, r8b
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + r14*4]
movzx ebp, bh
xor edx, dword [r10 + rbp*4 + 0x800]
mov r8d, ebx
movzx r14d, bl
movzx r15d, al
xor edx, dword [r10 + r15*4 + 0xc00]
xor edx, dword [r11 + 0x10]
shr r13d, 0x18
shr ebx, 0x10
movzx ebx, bl
movzx ebp, ah
movzx r15d, cl
mov r12d, eax
movzx esi, ch
shr eax, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rax*4]
mov eax, dword [r10 + rbx*4 + 0x400]
xor eax, dword [r10 + r13*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r15*4 + 0xc00]
xor eax, dword [r11 + 0x14]
shr r8d, 0x18
shr r12d, 0x10
movzx ebx, r12b
mov ebx, dword [r10 + rbx*4 + 0x400]
xor ebx, dword [r10 + r8*4]
xor ebx, dword [r10 + rsi*4 + 0x800]
xor ebx, dword [r10 + r9*4 + 0xc00]
xor ebx, dword [r11 + 0x18]
xor ecx, dword [r10 + rdi*4 + 0x800]
xor ecx, dword [r10 + r14*4 + 0xc00]
xor ecx, dword [r11 + 0x1c]
mov esi, edx
shr esi, 0x18
mov r15d, eax
movzx r8d, al
mov qword [rsp + 8], r8
mov r8d, eax
shr r8d, 0x10
movzx r8d, r8b
mov r12d, dword [r10 + r8*4 + 0x400]
xor r12d, dword [r10 + rsi*4]
movzx eax, ah
mov r14, rax
movzx esi, bh
mov edi, ebx
movzx eax, bl
xor r12d, dword [r10 + rsi*4 + 0x800]
movzx r8d, cl
xor r12d, dword [r10 + r8*4 + 0xc00]
xor r12d, dword [r11 + 0x20]
shr r15d, 0x18
shr ebx, 0x10
movzx esi, ch
movzx r8d, dl
mov r9d, ecx
movzx ebp, dh
shr ecx, 0x18
shr edx, 0x10
movzx edx, dl
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + rcx*4]
movzx ecx, bl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + r15*4]
xor ecx, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r8*4 + 0xc00]
xor ecx, dword [r11 + 0x24]
shr edi, 0x18
shr r9d, 0x10
movzx esi, r9b
mov r15d, ecx
movzx r13d, cl
movzx ebx, ch
mov r9, rbx
mov r8d, ecx
mov ecx, dword [r10 + rsi*4 + 0x400]
xor ecx, dword [r10 + rdi*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
mov rsi, qword [rsp + 8]
xor ecx, dword [r10 + rsi*4 + 0xc00]
xor ecx, dword [r11 + 0x28]
xor edx, dword [r10 + r14*4 + 0x800]
xor edx, dword [r10 + rax*4 + 0xc00]
xor edx, dword [r11 + 0x2c]
mov eax, r12d
shr eax, 0x18
shr r8d, 0x10
movzx r8d, r8b
mov ebx, dword [r10 + r8*4 + 0x400]
xor ebx, dword [r10 + rax*4]
movzx eax, ch
xor ebx, dword [r10 + rax*4 + 0x800]
mov r8d, ecx
movzx edi, cl
movzx eax, dl
xor ebx, dword [r10 + rax*4 + 0xc00]
xor ebx, dword [r11 + 0x30]
shr r15d, 0x18
shr ecx, 0x10
movzx eax, cl
movzx ebp, dh
mov ecx, r12d
movzx r14d, cl
mov r12d, edx
movzx esi, ch
shr edx, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rdx*4]
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r15*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r14*4 + 0xc00]
xor eax, dword [r11 + 0x34]
shr r8d, 0x18
shr r12d, 0x10
movzx edx, r12b
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + r8*4]
xor edx, dword [r10 + rsi*4 + 0x800]
xor edx, dword [r10 + r13*4 + 0xc00]
xor edx, dword [r11 + 0x38]
xor ecx, dword [r10 + r9*4 + 0x800]
xor ecx, dword [r10 + rdi*4 + 0xc00]
xor ecx, dword [r11 + 0x3c]
mov esi, ebx
shr esi, 0x18
mov r12d, eax
movzx r8d, al
mov qword [rsp + 8], r8
mov r8d, eax
shr r8d, 0x10
movzx r8d, r8b
mov r14, r11
mov r11d, dword [r10 + r8*4 + 0x400]
xor r11d, dword [r10 + rsi*4]
movzx eax, ah
mov r15, rax
movzx esi, dh
mov edi, edx
movzx eax, dl
mov r8d, edx
xor r11d, dword [r10 + rsi*4 + 0x800]
movzx edx, cl
xor r11d, dword [r10 + rdx*4 + 0xc00]
xor r11d, dword [r14 + 0x40]
shr r12d, 0x18
shr r8d, 0x10
movzx esi, ch
movzx r9d, bl
mov r13d, ecx
movzx ebp, bh
shr ecx, 0x18
shr ebx, 0x10
movzx edx, bl
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + rcx*4]
movzx ecx, r8b
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + r12*4]
xor ecx, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
xor ecx, dword [r14 + 0x44]
shr edi, 0x18
shr r13d, 0x10
movzx ebx, r13b
mov r12d, ecx
movzx r8d, cl
mov qword [rsp + 0x10], r8
movzx esi, ch
mov r9, rsi
mov r8d, ecx
mov ecx, dword [r10 + rbx*4 + 0x400]
xor ecx, dword [r10 + rdi*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
mov rsi, qword [rsp + 8]
xor ecx, dword [r10 + rsi*4 + 0xc00]
xor ecx, dword [r14 + 0x48]
xor edx, dword [r10 + r15*4 + 0x800]
xor edx, dword [r10 + rax*4 + 0xc00]
xor edx, dword [r14 + 0x4c]
mov eax, r11d
shr eax, 0x18
shr r8d, 0x10
movzx r8d, r8b
mov ebx, dword [r10 + r8*4 + 0x400]
xor ebx, dword [r10 + rax*4]
movzx eax, ch
xor ebx, dword [r10 + rax*4 + 0x800]
mov r8d, ecx
movzx r13d, cl
movzx eax, dl
xor ebx, dword [r10 + rax*4 + 0xc00]
xor ebx, dword [r14 + 0x50]
shr r12d, 0x18
shr ecx, 0x10
movzx eax, cl
movzx ebp, dh
mov ecx, r11d
mov rdi, r14
movzx r14d, cl
mov r15d, edx
movzx esi, ch
shr edx, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rdx*4]
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r12*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r14*4 + 0xc00]
xor eax, dword [rdi + 0x54]
shr r8d, 0x18
shr r15d, 0x10
movzx edx, r15b
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + r8*4]
xor edx, dword [r10 + rsi*4 + 0x800]
mov r8, qword [rsp + 0x10]
xor edx, dword [r10 + r8*4 + 0xc00]
xor edx, dword [rdi + 0x58]
xor ecx, dword [r10 + r9*4 + 0x800]
xor ecx, dword [r10 + r13*4 + 0xc00]
xor ecx, dword [rdi + 0x5c]
mov esi, ebx
shr esi, 0x18
mov r12d, eax
movzx r8d, al
mov qword [rsp + 8], r8
mov r8d, eax
shr r8d, 0x10
movzx r8d, r8b
mov r11d, dword [r10 + r8*4 + 0x400]
xor r11d, dword [r10 + rsi*4]
movzx eax, ah
mov r15, rax
movzx esi, dh
mov eax, edx
movzx r14d, dl
mov r8d, edx
xor r11d, dword [r10 + rsi*4 + 0x800]
movzx edx, cl
xor r11d, dword [r10 + rdx*4 + 0xc00]
xor r11d, dword [rdi + 0x60]
shr r12d, 0x18
shr r8d, 0x10
movzx esi, ch
movzx r9d, bl
mov r13d, ecx
movzx ebp, bh
shr ecx, 0x18
shr ebx, 0x10
movzx edx, bl
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + rcx*4]
movzx ecx, r8b
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + r12*4]
xor ecx, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
xor ecx, dword [rdi + 0x64]
shr eax, 0x18
shr r13d, 0x10
movzx ebx, r13b
mov r12d, ecx
movzx r8d, cl
mov qword [rsp + 0x10], r8
movzx esi, ch
mov r9, rsi
mov r8d, ecx
mov ecx, dword [r10 + rbx*4 + 0x400]
xor ecx, dword [r10 + rax*4]
xor ecx, dword [r10 + rbp*4 + 0x800]
mov rax, qword [rsp + 8]
xor ecx, dword [r10 + rax*4 + 0xc00]
xor ecx, dword [rdi + 0x68]
xor edx, dword [r10 + r15*4 + 0x800]
xor edx, dword [r10 + r14*4 + 0xc00]
xor edx, dword [rdi + 0x6c]
mov eax, r11d
shr eax, 0x18
shr r8d, 0x10
movzx r8d, r8b
mov ebx, dword [r10 + r8*4 + 0x400]
xor ebx, dword [r10 + rax*4]
movzx eax, ch
xor ebx, dword [r10 + rax*4 + 0x800]
mov r8d, ecx
movzx r13d, cl
movzx eax, dl
xor ebx, dword [r10 + rax*4 + 0xc00]
xor ebx, dword [rdi + 0x70]
shr r12d, 0x18
shr ecx, 0x10
movzx eax, cl
movzx ebp, dh
mov ecx, r11d
mov rsi, rdi
movzx r14d, cl
mov r15d, edx
movzx edi, ch
shr edx, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rdx*4]
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r12*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r14*4 + 0xc00]
xor eax, dword [rsi + 0x74]
shr r8d, 0x18
shr r15d, 0x10
movzx edx, r15b
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + r8*4]
xor edx, dword [r10 + rdi*4 + 0x800]
mov r8, qword [rsp + 0x10]
xor edx, dword [r10 + r8*4 + 0xc00]
xor edx, dword [rsi + 0x78]
xor ecx, dword [r10 + r9*4 + 0x800]
xor ecx, dword [r10 + r13*4 + 0xc00]
xor ecx, dword [rsi + 0x7c]
mov edi, ebx
shr edi, 0x18
mov r14d, eax
movzx r8d, al
mov qword [rsp + 8], r8
mov r9d, eax
shr r9d, 0x10
movzx r9d, r9b
mov r11d, dword [r10 + r9*4 + 0x400]
xor r11d, dword [r10 + rdi*4]
movzx edi, ah
movzx eax, dh
mov r12d, edx
movzx r9d, dl
xor r11d, dword [r10 + rax*4 + 0x800]
movzx eax, cl
xor r11d, dword [r10 + rax*4 + 0xc00]
xor r11d, dword [rsi + 0x80]
shr r14d, 0x18
shr edx, 0x10
movzx ebp, ch
movzx r15d, bl
mov r13d, ecx
movzx eax, bh
mov r8, rax
shr ecx, 0x18
shr ebx, 0x10
movzx eax, bl
mov ebx, dword [r10 + rax*4 + 0x400]
xor ebx, dword [r10 + rcx*4]
movzx eax, dl
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r14*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r15*4 + 0xc00]
xor eax, dword [rsi + 0x84]
shr r12d, 0x18
shr r13d, 0x10
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r9*4 + 0xc00]
movzx edx, r13b
xor ebx, dword [rsi + 0x8c]
mov r15d, r11d
movzx ecx, bl
mov qword [rsp + 0x10], rcx
movzx ecx, bh
mov r14, rcx
movzx r13d, r11b
mov ecx, r11d
mov r9d, ebx
movzx ebp, ch
shr ebx, 0x18
shr ecx, 0x10
movzx ecx, cl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rbx*4]
mov edx, dword [r10 + rdx*4 + 0x400]
xor edx, dword [r10 + r12*4]
xor edx, dword [r10 + r8*4 + 0x800]
mov r8, qword [rsp + 8]
xor edx, dword [r10 + r8*4 + 0xc00]
xor edx, dword [rsi + 0x88]
shr r15d, 0x18
mov r8d, eax
shr r8d, 0x10
movzx r8d, r8b
mov ebx, dword [r10 + r8*4 + 0x400]
xor ebx, dword [r10 + r15*4]
movzx edi, dh
xor ebx, dword [r10 + rdi*4 + 0x800]
mov r8d, eax
movzx r11d, al
movzx edi, ah
shr r8d, 0x18
mov r15d, edx
movzx r12d, dl
shr edx, 0x10
movzx eax, dl
mov edx, dword [r10 + rax*4 + 0x400]
xor edx, dword [r10 + r8*4]
xor edx, dword [r10 + r14*4 + 0x800]
shr r15d, 0x18
shr r9d, 0x10
movzx eax, r9b
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r15*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + rdi*4 + 0x800]
mov r8, qword [rsp + 0x10]
xor ebx, dword [r10 + r8*4 + 0xc00]
xor ebx, dword [rsi + 0x90]
xor edx, dword [r10 + r13*4 + 0xc00]
mov r13, qword [rsp + 0x18]
xor edx, dword [rsi + 0x94]
xor eax, dword [r10 + r11*4 + 0xc00]
xor eax, dword [rsi + 0x98]
xor ecx, dword [r10 + r12*4 + 0xc00]
mov qword [rsp + 8], rsi
xor ecx, dword [rsi + 0x9c]
cmp r13d, 0xc
jb 0x14003d0ea
mov edi, ebx
shr edi, 0x18
mov r14d, edx
movzx r8d, dl
mov qword [rsp + 0x10], r8
mov r8d, edx
shr r8d, 0x10
movzx r8d, r8b
mov r13d, dword [r10 + r8*4 + 0x400]
xor r13d, dword [r10 + rdi*4]
movzx esi, dh
movzx edx, ah
mov r8d, eax
movzx r9d, al
xor r13d, dword [r10 + rdx*4 + 0x800]
movzx edx, cl
xor r13d, dword [r10 + rdx*4 + 0xc00]
mov r11, qword [rsp + 8]
xor r13d, dword [r11 + 0xa0]
shr r14d, 0x18
shr eax, 0x10
movzx ebp, ch
movzx r15d, bl
mov r12d, ecx
movzx edi, bh
shr ecx, 0x18
shr ebx, 0x10
movzx edx, bl
mov ebx, dword [r10 + rdx*4 + 0x400]
xor ebx, dword [r10 + rcx*4]
movzx eax, al
mov edx, dword [r10 + rax*4 + 0x400]
xor edx, dword [r10 + r14*4]
xor edx, dword [r10 + rbp*4 + 0x800]
xor edx, dword [r10 + r15*4 + 0xc00]
xor edx, dword [r11 + 0xa4]
shr r8d, 0x18
shr r12d, 0x10
xor ebx, dword [r10 + rsi*4 + 0x800]
xor ebx, dword [r10 + r9*4 + 0xc00]
movzx r12d, r12b
xor ebx, dword [r11 + 0xac]
mov eax, r13d
mov r15d, r13d
movzx ecx, bl
mov qword [rsp + 0x20], rcx
movzx ecx, bh
mov r14, rcx
movzx r13d, al
mov r9d, ebx
movzx ebp, ah
shr ebx, 0x18
shr eax, 0x10
movzx eax, al
mov ecx, dword [r10 + rax*4 + 0x400]
xor ecx, dword [r10 + rbx*4]
mov eax, dword [r10 + r12*4 + 0x400]
xor eax, dword [r10 + r8*4]
xor eax, dword [r10 + rdi*4 + 0x800]
mov r8, qword [rsp + 0x10]
xor eax, dword [r10 + r8*4 + 0xc00]
xor eax, dword [r11 + 0xa8]
shr r15d, 0x18
mov r8d, edx
shr r8d, 0x10
movzx r8d, r8b
mov ebx, dword [r10 + r8*4 + 0x400]
xor ebx, dword [r10 + r15*4]
movzx edi, ah
xor ebx, dword [r10 + rdi*4 + 0x800]
mov r8d, edx
movzx edi, dl
movzx esi, dh
shr r8d, 0x18
mov r15d, eax
movzx r12d, al
shr eax, 0x10
movzx eax, al
mov edx, dword [r10 + rax*4 + 0x400]
xor edx, dword [r10 + r8*4]
xor edx, dword [r10 + r14*4 + 0x800]
shr r15d, 0x18
shr r9d, 0x10
movzx eax, r9b
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r15*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor ecx, dword [r10 + rsi*4 + 0x800]
mov r8, qword [rsp + 0x20]
xor ebx, dword [r10 + r8*4 + 0xc00]
xor ebx, dword [r11 + 0xb0]
xor edx, dword [r10 + r13*4 + 0xc00]
mov r13, qword [rsp + 0x18]
xor edx, dword [r11 + 0xb4]
xor eax, dword [r10 + rdi*4 + 0xc00]
xor eax, dword [r11 + 0xb8]
xor ecx, dword [r10 + r12*4 + 0xc00]
xor ecx, dword [r11 + 0xbc]
cmp r13d, 0xe
jb 0x14003d0ea
mov r12d, edx
movzx r8d, dl
movzx edi, dh
mov r9d, ebx
shr r9d, 0x18
shr edx, 0x10
movzx edx, dl
mov edx, dword [r10 + rdx*4 + 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 r11, qword [rsp + 8]
xor edx, dword [r11 + 0xc0]
shr r12d, 0x18
shr eax, 0x10
movzx eax, al
movzx esi, ch
movzx r9d, bl
mov r13d, ecx
movzx ebp, bh
shr ecx, 0x18
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [r10 + rbx*4 + 0x400]
xor ebx, dword [r10 + rcx*4]
mov ecx, dword [r10 + rax*4 + 0x400]
xor ecx, dword [r10 + r12*4]
xor ecx, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0xc00]
xor ecx, dword [r11 + 0xc4]
shr r14d, 0x18
shr r13d, 0x10
movzx eax, r13b
mov r12d, ecx
movzx r9d, cl
mov qword [rsp + 0x10], r9
movzx esi, ch
mov r9, rsi
mov r13d, ecx
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r14*4]
xor eax, dword [r10 + rbp*4 + 0x800]
xor eax, dword [r10 + r8*4 + 0xc00]
xor eax, dword [r11 + 0xc8]
xor ebx, dword [r10 + rdi*4 + 0x800]
xor ebx, dword [r10 + r15*4 + 0xc00]
xor ebx, dword [r11 + 0xcc]
mov r8d, edx
shr r8d, 0x18
shr r13d, 0x10
movzx edi, bl
movzx ebp, bh
movzx r14d, dl
mov r15d, ebx
movzx esi, dh
shr ebx, 0x18
shr edx, 0x10
movzx ecx, dl
mov ecx, dword [r10 + rcx*4 + 0x400]
xor ecx, dword [r10 + rbx*4]
movzx edx, r13b
mov ebx, dword [r10 + rdx*4 + 0x400]
xor ebx, dword [r10 + r8*4]
movzx edx, ah
xor ebx, dword [r10 + rdx*4 + 0x800]
shr r12d, 0x18
mov r8d, eax
movzx r13d, al
shr eax, 0x10
movzx eax, al
mov edx, dword [r10 + rax*4 + 0x400]
xor edx, dword [r10 + r12*4]
xor edx, dword [r10 + rbp*4 + 0x800]
shr r8d, 0x18
shr r15d, 0x10
movzx eax, r15b
mov eax, dword [r10 + rax*4 + 0x400]
xor eax, dword [r10 + r8*4]
xor eax, dword [r10 + rsi*4 + 0x800]
xor ecx, dword [r10 + r9*4 + 0x800]
xor ebx, dword [r10 + rdi*4 + 0xc00]
xor ebx, dword [r11 + 0xd0]
xor edx, dword [r10 + r14*4 + 0xc00]
xor edx, dword [r11 + 0xd4]
mov r8, qword [rsp + 0x10]
xor eax, dword [r10 + r8*4 + 0xc00]
xor eax, dword [r11 + 0xd8]
xor ecx, dword [r10 + r13*4 + 0xc00]
mov r13, qword [rsp + 0x18]
xor ecx, dword [r11 + 0xdc]
mov edi, ebx
movzx r8d, bl
movzx ebp, bh
shr ebx, 0x10
movzx r14d, bl
movzx r9d, cl
movzx esi, ch
mov ebx, ecx
shr ecx, 0x18
movd xmm4, dword [r10 + rcx*4 + 0x800]
mov r15d, edx
mov r12d, edx
shr ebx, 0x10
movzx ecx, bl
movd xmm0, dword [r10 + rcx*4 + 0xc00]
movzx ecx, dl
movzx ebx, dh
shr r15d, 0x10
movzx r15d, r15b
shr r12d, 0x18
movd xmm2, dword [r10 + r12*4 + 0x800]
movzx edx, ah
movd xmm1, dword [r10 + r15*4 + 0xc00]
mov r15d, eax
shr r15d, 0x18
movd xmm5, dword [r10 + r15*4 + 0x800]
mov r15d, eax
movzx eax, al
movd xmm6, dword [r10 + r14*4 + 0xc00]
shr edi, 0x18
movd xmm3, dword [r10 + rdi*4 + 0x800]
shr r15d, 0x10
movzx edi, r15b
movd xmm7, dword [r10 + rdi*4 + 0xc00]
movd xmm8, dword [r10 + rbx*4]
movd xmm9, dword [r10 + rbp*4]
movd xmm10, dword [r10 + rsi*4]
movd xmm11, dword [r10 + rdx*4]
movd xmm12, dword [r10 + rax*4 + 0x400]
movd xmm13, dword [r10 + rcx*4 + 0x400]
movd xmm14, dword [r10 + r8*4 + 0x400]
movd xmm15, dword [r10 + r9*4 + 0x400]
shl r13d, 2
and r13d, 0x7ffffff8
punpckldq xmm0, xmm4
mov rax, qword [rsp + 8]
movdqu xmm4, xmmword [rax + r13*4]
punpckldq xmm1, xmm2
punpcklqdq xmm1, xmm0
punpckldq xmm5, xmm6
punpckldq xmm3, xmm7
pand xmm1, xmmword [0x1400d5ef0]
punpcklqdq xmm3, xmm5
pand xmm3, xmmword [0x1400d5f00]
por xmm3, xmm1
punpckldq xmm9, xmm8
punpckldq xmm11, xmm10
punpcklqdq xmm11, xmm9
punpckldq xmm13, xmm12
punpckldq xmm15, xmm14
pand xmm11, xmmword [0x1400d5f10]
punpcklqdq xmm15, xmm13
pand xmm15, xmmword [0x1400d5f20]
por xmm15, xmm11
por xmm15, xmm3
pxor xmm4, xmm15
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 + 0x28]
movdqu xmmword [rax], xmm0
xor eax, eax
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