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

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov eax, 0xffffff53
mov r9, rcx
mov r11, rdx
test rcx, rcx
je 0x140047ba9
mov r12d, dword [rcx + 0xf0]
mov eax, 0xffffff1e
shr r12d, 1
lea edx, [r12 - 1]
cmp edx, 6
ja 0x140047ba9
mov ecx, dword [r11]
call fcn.140046d00
mov ecx, dword [r11 + 4]
mov esi, eax
call fcn.140046d00
mov ecx, dword [r11 + 8]
mov r10d, eax
call fcn.140046d00
mov ecx, dword [r11 + 0xc]
mov edx, eax
call fcn.140046d00
xor esi, dword [r9]
xor eax, dword [r9 + 0xc]
mov r11d, esi
xor r10d, dword [r9 + 4]
mov ebx, eax
mov ecx, esi
lea rax, [0x1400a5380]
shr r11d, 0x18
movzx edi, bl
xor edx, dword [r9 + 8]
mov esi, dword [rax + r11*4]
mov r11d, r10d
xor esi, dword [rax + rdi*4 + 0xc00]
movzx edi, dh
shr r11d, 0x10
xor esi, dword [r9 + 0x10]
movzx r11d, r11b
xor esi, dword [rax + r11*4 + 0x400]
mov r11d, r10d
xor esi, dword [rax + rdi*4 + 0x800]
movzx edi, cl
shr r11d, 0x18
mov r13d, dword [rax + r11*4]
mov r11d, edx
xor r13d, dword [rax + rdi*4 + 0xc00]
movzx edi, bh
shr r11d, 0x10
xor r13d, dword [r9 + 0x14]
movzx r11d, r11b
xor r13d, dword [rax + r11*4 + 0x400]
mov r11d, edx
xor r13d, dword [rax + rdi*4 + 0x800]
movzx edi, r10b
shr r11d, 0x18
mov ebp, dword [rax + r11*4]
mov r11d, ebx
xor ebp, dword [rax + rdi*4 + 0xc00]
shr ebx, 0x18
shr r11d, 0x10
movzx edi, ch
shr ecx, 0x10
xor ebp, dword [r9 + 0x18]
movzx r11d, r11b
movzx ecx, cl
xor ebp, dword [rax + r11*4 + 0x400]
movzx r11d, dl
mov edx, dword [rax + rbx*4]
mov ebx, r10d
xor ebp, dword [rax + rdi*4 + 0x800]
xor edx, dword [rax + r11*4 + 0xc00]
movzx edi, bh
xor edx, dword [r9 + 0x1c]
xor edx, dword [rax + rcx*4 + 0x400]
mov ecx, esi
mov ebx, ebp
xor edx, dword [rax + rdi*4 + 0x800]
shr ecx, 0x18
mov r10d, dword [rax + rcx*4]
mov ecx, r13d
movzx r11d, dl
shr ecx, 0x10
xor r10d, dword [rax + r11*4 + 0xc00]
xor r10d, dword [r9 + 0x20]
movzx ecx, cl
xor r10d, dword [rax + rcx*4 + 0x400]
movzx ecx, bh
movzx ebx, sil
xor r10d, dword [rax + rcx*4 + 0x800]
mov ecx, r13d
shr ecx, 0x18
mov r11d, dword [rax + rcx*4]
mov ecx, ebp
xor r11d, dword [rax + rbx*4 + 0xc00]
movzx ebx, r13b
shr ecx, 0x10
xor r11d, dword [r9 + 0x24]
movzx ecx, cl
xor r11d, dword [rax + rcx*4 + 0x400]
movzx ecx, dh
xor r11d, dword [rax + rcx*4 + 0x800]
mov ecx, ebp
movzx ebp, bpl
shr ecx, 0x18
mov edi, dword [rax + rcx*4]
mov ecx, edx
xor edi, dword [rax + rbx*4 + 0xc00]
mov ebx, esi
shr ecx, 0x10
shr esi, 0x10
xor edi, dword [r9 + 0x28]
movzx ecx, cl
shr edx, 0x18
movzx esi, sil
xor edi, dword [rax + rcx*4 + 0x400]
movzx ecx, bh
mov ebx, r13d
mov edx, dword [rax + rdx*4]
xor edx, dword [rax + rbp*4 + 0xc00]
xor edx, dword [r9 + 0x2c]
movzx ebp, r11b
xor edx, dword [rax + rsi*4 + 0x400]
movzx esi, bh
xor edi, dword [rax + rcx*4 + 0x800]
mov ecx, r10d
xor edx, dword [rax + rsi*4 + 0x800]
shr ecx, 0x18
movzx esi, r10b
movzx ebx, dl
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, r11d
xor ecx, dword [r9 + 0x30]
shr ebx, 0x10
movzx ebx, bl
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, edi
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, r11d
shr ebx, 0x18
mov r14d, ecx
mov ecx, r10d
mov ebx, dword [rax + rbx*4]
xor ebx, dword [rax + rsi*4 + 0xc00]
mov esi, edi
xor ebx, dword [r9 + 0x34]
shr esi, 0x10
movzx esi, sil
shr r10d, 0x10
xor ebx, dword [rax + rsi*4 + 0x400]
movzx esi, dh
movzx r10d, r10b
xor ebx, dword [rax + rsi*4 + 0x800]
mov esi, edi
movzx edi, dil
shr esi, 0x18
mov esi, dword [rax + rsi*4]
xor esi, dword [rax + rbp*4 + 0xc00]
mov ebp, edx
shr edx, 0x18
shr ebp, 0x10
xor esi, dword [r9 + 0x38]
mov edx, dword [rax + rdx*4]
movzx ebp, bpl
xor edx, dword [rax + rdi*4 + 0xc00]
xor edx, dword [r9 + 0x3c]
xor esi, dword [rax + rbp*4 + 0x400]
movzx ebp, ch
mov ecx, r11d
xor edx, dword [rax + r10*4 + 0x400]
movzx edi, ch
mov ecx, r14d
xor esi, dword [rax + rbp*4 + 0x800]
movzx ebp, bl
xor edx, dword [rax + rdi*4 + 0x800]
shr ecx, 0x18
movzx r11d, dl
mov r10d, ecx
mov ecx, esi
mov r10d, dword [rax + r10*4]
xor r10d, dword [rax + r11*4 + 0xc00]
mov r11d, ebx
movzx edi, ch
shr r11d, 0x10
xor r10d, dword [r9 + 0x40]
mov ecx, r14d
movzx r11d, r11b
xor r10d, dword [rax + r11*4 + 0x400]
mov r11d, ebx
xor r10d, dword [rax + rdi*4 + 0x800]
movzx edi, r14b
shr r11d, 0x18
movzx ebx, bh
mov r11d, dword [rax + r11*4]
xor r11d, dword [rax + rdi*4 + 0xc00]
mov edi, esi
shr edi, 0x10
xor r11d, dword [r9 + 0x44]
movzx edi, dil
xor r11d, dword [rax + rdi*4 + 0x400]
movzx edi, dh
xor r11d, dword [rax + rdi*4 + 0x800]
mov edi, esi
movzx esi, sil
shr edi, 0x18
mov edi, dword [rax + rdi*4]
xor edi, dword [rax + rbp*4 + 0xc00]
mov ebp, edx
shr ebp, 0x10
xor edi, dword [r9 + 0x48]
movzx ebp, bpl
xor edi, dword [rax + rbp*4 + 0x400]
movzx ebp, ch
shr ecx, 0x10
shr edx, 0x18
movzx ecx, cl
xor edi, dword [rax + rbp*4 + 0x800]
movzx ebp, r11b
mov edx, dword [rax + rdx*4]
xor edx, dword [rax + rsi*4 + 0xc00]
movzx esi, r10b
xor edx, dword [r9 + 0x4c]
xor edx, dword [rax + rcx*4 + 0x400]
mov ecx, r10d
xor edx, dword [rax + rbx*4 + 0x800]
shr ecx, 0x18
movzx ebx, dl
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, r11d
xor ecx, dword [r9 + 0x50]
shr ebx, 0x10
movzx ebx, bl
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, edi
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, r11d
shr ebx, 0x18
mov r14d, ecx
mov ecx, r10d
shr r10d, 0x10
mov ebx, dword [rax + rbx*4]
xor ebx, dword [rax + rsi*4 + 0xc00]
mov esi, edi
movzx r10d, r10b
shr esi, 0x10
xor ebx, dword [r9 + 0x54]
movzx esi, sil
xor ebx, dword [rax + rsi*4 + 0x400]
movzx esi, dh
xor ebx, dword [rax + rsi*4 + 0x800]
mov esi, edi
movzx edi, dil
shr esi, 0x18
mov esi, dword [rax + rsi*4]
xor esi, dword [rax + rbp*4 + 0xc00]
mov ebp, edx
shr edx, 0x18
shr ebp, 0x10
xor esi, dword [r9 + 0x58]
mov edx, dword [rax + rdx*4]
movzx ebp, bpl
xor edx, dword [rax + rdi*4 + 0xc00]
xor edx, dword [r9 + 0x5c]
xor esi, dword [rax + rbp*4 + 0x400]
movzx ebp, ch
mov ecx, r11d
xor edx, dword [rax + r10*4 + 0x400]
movzx edi, ch
mov ecx, r14d
xor esi, dword [rax + rbp*4 + 0x800]
movzx ebp, bl
xor edx, dword [rax + rdi*4 + 0x800]
shr ecx, 0x18
movzx r11d, dl
mov r10d, ecx
mov ecx, esi
mov r10d, dword [rax + r10*4]
xor r10d, dword [rax + r11*4 + 0xc00]
mov r11d, ebx
movzx edi, ch
shr r11d, 0x10
xor r10d, dword [r9 + 0x60]
mov ecx, r14d
movzx r11d, r11b
xor r10d, dword [rax + r11*4 + 0x400]
mov r11d, ebx
xor r10d, dword [rax + rdi*4 + 0x800]
movzx edi, r14b
shr r11d, 0x18
movzx ebx, bh
mov r11d, dword [rax + r11*4]
xor r11d, dword [rax + rdi*4 + 0xc00]
mov edi, esi
shr edi, 0x10
xor r11d, dword [r9 + 0x64]
movzx edi, dil
xor r11d, dword [rax + rdi*4 + 0x400]
movzx edi, dh
xor r11d, dword [rax + rdi*4 + 0x800]
mov edi, esi
movzx esi, sil
shr edi, 0x18
mov edi, dword [rax + rdi*4]
xor edi, dword [rax + rbp*4 + 0xc00]
mov ebp, edx
shr edx, 0x18
shr ebp, 0x10
xor edi, dword [r9 + 0x68]
mov edx, dword [rax + rdx*4]
movzx ebp, bpl
xor edi, dword [rax + rbp*4 + 0x400]
movzx ebp, ch
shr ecx, 0x10
movzx ecx, cl
xor edi, dword [rax + rbp*4 + 0x800]
movzx ebp, r11b
xor edx, dword [rax + rsi*4 + 0xc00]
xor edx, dword [r9 + 0x6c]
xor edx, dword [rax + rcx*4 + 0x400]
mov ecx, r10d
movzx esi, r10b
xor edx, dword [rax + rbx*4 + 0x800]
shr ecx, 0x18
movzx ebx, dl
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, r11d
xor ecx, dword [r9 + 0x70]
shr ebx, 0x10
movzx ebx, bl
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, edi
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, r11d
shr ebx, 0x18
mov r14d, ecx
mov ecx, r10d
mov ebx, dword [rax + rbx*4]
xor ebx, dword [rax + rsi*4 + 0xc00]
mov esi, edi
xor ebx, dword [r9 + 0x74]
shr esi, 0x10
movzx esi, sil
shr r10d, 0x10
xor ebx, dword [rax + rsi*4 + 0x400]
movzx esi, dh
movzx r10d, r10b
xor ebx, dword [rax + rsi*4 + 0x800]
mov esi, edi
movzx edi, dil
shr esi, 0x18
mov esi, dword [rax + rsi*4]
xor esi, dword [rax + rbp*4 + 0xc00]
mov ebp, edx
shr edx, 0x18
shr ebp, 0x10
xor esi, dword [r9 + 0x78]
mov edx, dword [rax + rdx*4]
movzx ebp, bpl
xor edx, dword [rax + rdi*4 + 0xc00]
xor edx, dword [r9 + 0x7c]
xor esi, dword [rax + rbp*4 + 0x400]
movzx ebp, ch
mov ecx, r11d
xor edx, dword [rax + r10*4 + 0x400]
movzx edi, ch
mov ecx, r14d
xor esi, dword [rax + rbp*4 + 0x800]
movzx ebp, bl
shr ecx, 0x18
xor edx, dword [rax + rdi*4 + 0x800]
mov r10d, ecx
movzx edi, dl
mov ecx, esi
mov r11d, dword [rax + r10*4]
mov r10d, ebx
xor r11d, dword [rax + rdi*4 + 0xc00]
movzx edi, ch
shr r10d, 0x10
xor r11d, dword [r9 + 0x80]
mov ecx, r14d
movzx r10d, r10b
movzx ecx, ch
xor r11d, dword [rax + r10*4 + 0x400]
mov r10d, ebx
xor r11d, dword [rax + rdi*4 + 0x800]
movzx edi, r14b
shr r10d, 0x18
movzx ebx, bh
mov r13d, dword [rax + r10*4]
mov r10d, esi
xor r13d, dword [rax + rdi*4 + 0xc00]
movzx edi, dh
shr r10d, 0x10
xor r13d, dword [r9 + 0x84]
movzx r10d, r10b
xor r13d, dword [rax + r10*4 + 0x400]
mov r10d, esi
xor r13d, dword [rax + rdi*4 + 0x800]
movzx esi, sil
shr r10d, 0x18
mov edi, dword [rax + r10*4]
mov r10d, edx
xor edi, dword [rax + rbp*4 + 0xc00]
movzx ebp, r13b
shr r10d, 0x10
xor edi, dword [r9 + 0x88]
movzx r10d, r10b
xor edi, dword [rax + r10*4 + 0x400]
xor edi, dword [rax + rcx*4 + 0x800]
mov ecx, r14d
shr edx, 0x18
shr ecx, 0x10
mov r10d, dword [rax + rdx*4]
mov edx, r11d
xor r10d, dword [rax + rsi*4 + 0xc00]
movzx ecx, cl
xor r10d, dword [r9 + 0x8c]
shr edx, 0x18
xor r10d, dword [rax + rcx*4 + 0x400]
xor r10d, dword [rax + rbx*4 + 0x800]
mov ebx, edi
movzx ecx, r10b
mov edx, dword [rax + rdx*4]
xor edx, dword [rax + rcx*4 + 0xc00]
mov ecx, r13d
xor edx, dword [r9 + 0x90]
shr ecx, 0x10
movzx ecx, cl
xor edx, dword [rax + rcx*4 + 0x400]
movzx ecx, bh
movzx ebx, r11b
xor edx, dword [rax + rcx*4 + 0x800]
mov ecx, r13d
shr ecx, 0x18
mov r14d, edx
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, edi
shr ebx, 0x10
xor ecx, dword [r9 + 0x94]
movzx ebx, bl
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, r10d
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, ecx
mov ecx, edi
movzx edi, dil
shr ecx, 0x18
mov esi, dword [rax + rcx*4]
mov ecx, r10d
xor esi, dword [rax + rbp*4 + 0xc00]
shr r10d, 0x18
shr ecx, 0x10
xor esi, dword [r9 + 0x98]
movzx ecx, cl
xor esi, dword [rax + rcx*4 + 0x400]
mov ecx, r11d
shr r11d, 0x10
movzx r11d, r11b
movzx ecx, ch
mov edx, dword [rax + r11*4 + 0x400]
xor esi, dword [rax + rcx*4 + 0x800]
mov ecx, dword [rax + r10*4]
xor ecx, dword [rax + rdi*4 + 0xc00]
xor ecx, dword [r9 + 0x9c]
xor edx, ecx
mov ecx, r13d
movzx edi, ch
xor edx, dword [rax + rdi*4 + 0x800]
mov ecx, edx
cmp r12d, 5
jbe 0x140047a0c
mov edx, r14d
movzx r11d, cl
movzx ebp, r14b
movzx r13d, bl
shr edx, 0x18
mov r10d, edx
mov edx, esi
mov r10d, dword [rax + r10*4]
xor r10d, dword [rax + r11*4 + 0xc00]
mov r11d, ebx
movzx edi, dh
shr r11d, 0x10
xor r10d, dword [r9 + 0xa0]
movzx edx, ch
movzx r11d, r11b
xor r10d, dword [rax + r11*4 + 0x400]
mov r11d, ebx
xor r10d, dword [rax + rdi*4 + 0x800]
shr r11d, 0x18
mov edi, dword [rax + r11*4]
mov r11d, esi
xor edi, dword [rax + rbp*4 + 0xc00]
shr r11d, 0x10
xor edi, dword [r9 + 0xa4]
movzx r11d, r11b
xor edi, dword [rax + r11*4 + 0x400]
mov r11d, esi
xor edi, dword [rax + rdx*4 + 0x800]
mov edx, r14d
shr r11d, 0x18
movzx edx, dh
movzx esi, sil
mov ebp, dword [rax + r11*4]
mov r11d, ecx
xor ebp, dword [rax + r13*4 + 0xc00]
shr ecx, 0x18
shr r11d, 0x10
xor ebp, dword [r9 + 0xa8]
movzx r13d, dil
movzx r11d, r11b
xor ebp, dword [rax + r11*4 + 0x400]
xor ebp, dword [rax + rdx*4 + 0x800]
mov edx, r14d
shr edx, 0x10
mov r11d, dword [rax + rcx*4]
movzx ecx, bh
xor r11d, dword [rax + rsi*4 + 0xc00]
movzx edx, dl
xor r11d, dword [r9 + 0xac]
mov ebx, ebp
xor r11d, dword [rax + rdx*4 + 0x400]
mov edx, r10d
xor r11d, dword [rax + rcx*4 + 0x800]
movzx ecx, r11b
shr edx, 0x18
mov edx, dword [rax + rdx*4]
xor edx, dword [rax + rcx*4 + 0xc00]
mov ecx, edi
shr ecx, 0x10
xor edx, dword [r9 + 0xb0]
movzx ecx, cl
xor edx, dword [rax + rcx*4 + 0x400]
movzx ecx, bh
movzx ebx, r10b
xor edx, dword [rax + rcx*4 + 0x800]
mov ecx, edi
shr ecx, 0x18
mov r14d, edx
mov edx, r10d
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, ebp
xor ecx, dword [r9 + 0xb4]
shr ebx, 0x10
movzx ebx, bl
shr r10d, 0x10
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, r11d
movzx r10d, r10b
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, ecx
mov ecx, ebp
movzx ebp, bpl
shr ecx, 0x18
mov esi, dword [rax + rcx*4]
mov ecx, r11d
xor esi, dword [rax + r13*4 + 0xc00]
shr r11d, 0x18
shr ecx, 0x10
xor esi, dword [r9 + 0xb8]
movzx ecx, cl
xor esi, dword [rax + rcx*4 + 0x400]
movzx ecx, dh
mov edx, edi
movzx edi, dh
xor esi, dword [rax + rcx*4 + 0x800]
mov ecx, dword [rax + r11*4]
xor ecx, dword [rax + rbp*4 + 0xc00]
xor ecx, dword [r9 + 0xbc]
xor ecx, dword [rax + r10*4 + 0x400]
xor ecx, dword [rax + rdi*4 + 0x800]
cmp r12d, 6
je 0x140047a0c
mov edx, r14d
movzx r11d, cl
movzx ebp, r14b
movzx r13d, bl
shr edx, 0x18
mov r10d, edx
mov edx, esi
mov r10d, dword [rax + r10*4]
xor r10d, dword [rax + r11*4 + 0xc00]
mov r11d, ebx
movzx edi, dh
shr r11d, 0x10
xor r10d, dword [r9 + 0xc0]
movzx edx, ch
movzx r11d, r11b
xor r10d, dword [rax + r11*4 + 0x400]
mov r11d, ebx
xor r10d, dword [rax + rdi*4 + 0x800]
shr r11d, 0x18
mov edi, dword [rax + r11*4]
mov r11d, esi
xor edi, dword [rax + rbp*4 + 0xc00]
shr r11d, 0x10
xor edi, dword [r9 + 0xc4]
movzx r11d, r11b
xor edi, dword [rax + r11*4 + 0x400]
mov r11d, esi
xor edi, dword [rax + rdx*4 + 0x800]
mov edx, r14d
shr r11d, 0x18
movzx edx, dh
movzx esi, sil
mov ebp, dword [rax + r11*4]
mov r11d, ecx
xor ebp, dword [rax + r13*4 + 0xc00]
shr ecx, 0x18
shr r11d, 0x10
xor ebp, dword [r9 + 0xc8]
movzx r13d, dil
movzx r11d, r11b
xor ebp, dword [rax + r11*4 + 0x400]
xor ebp, dword [rax + rdx*4 + 0x800]
mov edx, r14d
shr edx, 0x10
mov r11d, dword [rax + rcx*4]
movzx ecx, bh
xor r11d, dword [rax + rsi*4 + 0xc00]
movzx edx, dl
xor r11d, dword [r9 + 0xcc]
mov ebx, ebp
xor r11d, dword [rax + rdx*4 + 0x400]
mov edx, r10d
xor r11d, dword [rax + rcx*4 + 0x800]
movzx ecx, r11b
shr edx, 0x18
mov edx, dword [rax + rdx*4]
xor edx, dword [rax + rcx*4 + 0xc00]
mov ecx, edi
shr ecx, 0x10
xor edx, dword [r9 + 0xd0]
movzx ecx, cl
xor edx, dword [rax + rcx*4 + 0x400]
movzx ecx, bh
movzx ebx, r10b
xor edx, dword [rax + rcx*4 + 0x800]
mov ecx, edi
shr ecx, 0x18
mov r14d, edx
mov edx, r10d
mov ecx, dword [rax + rcx*4]
xor ecx, dword [rax + rbx*4 + 0xc00]
mov ebx, ebp
xor ecx, dword [r9 + 0xd4]
shr ebx, 0x10
movzx ebx, bl
shr r10d, 0x10
xor ecx, dword [rax + rbx*4 + 0x400]
mov ebx, r11d
movzx r10d, r10b
movzx ebx, bh
xor ecx, dword [rax + rbx*4 + 0x800]
mov ebx, ecx
mov ecx, ebp
movzx ebp, bpl
shr ecx, 0x18
mov esi, dword [rax + rcx*4]
mov ecx, r11d
xor esi, dword [rax + r13*4 + 0xc00]
shr r11d, 0x18
shr ecx, 0x10
xor esi, dword [r9 + 0xd8]
movzx ecx, cl
xor esi, dword [rax + rcx*4 + 0x400]
movzx ecx, dh
mov edx, edi
movzx edi, dh
xor esi, dword [rax + rcx*4 + 0x800]
mov ecx, dword [rax + r11*4]
xor ecx, dword [rax + rbp*4 + 0xc00]
xor ecx, dword [r9 + 0xdc]
xor ecx, dword [rax + r10*4 + 0x400]
xor ecx, dword [rax + rdi*4 + 0x800]
shl r12d, 3
movzx edx, ch
mov r10d, ebx
lea rdi, [r9 + r12*4]
movzx r9d, r14b
shr r10d, 0x18
movzx r13d, byte [rax + r9*4 + 0x400]
mov r9d, dword [rax + rdx*4]
mov edx, r14d
xor r13d, dword [rdi + 4]
mov r10d, dword [rax + r10*4 + 0x800]
movzx edx, dh
and r9d, 0xff00
xor r13d, r9d
mov r9d, esi
and r10d, 0xff000000
shr r9d, 0x10
movzx r9d, r9b
mov r9d, dword [rax + r9*4 + 0xc00]
and r9d, 0xff0000
or r9d, r10d
mov r10d, esi
xor r13d, r9d
movzx r9d, bl
shr r10d, 0x18
movzx r12d, byte [rax + r9*4 + 0x400]
mov r9d, dword [rax + rdx*4]
movzx edx, bh
shr ebx, 0x10
xor r12d, dword [rdi + 8]
mov r10d, dword [rax + r10*4 + 0x800]
and r9d, 0xff00
xor r12d, r9d
mov r9d, ecx
and r10d, 0xff000000
shr r9d, 0x10
movzx r9d, r9b
mov r9d, dword [rax + r9*4 + 0xc00]
and r9d, 0xff0000
or r9d, r10d
mov r10d, ecx
xor r12d, r9d
movzx r9d, sil
shr r10d, 0x18
movzx r11d, byte [rax + r9*4 + 0x400]
mov r9d, dword [rax + rdx*4]
mov edx, r14d
xor r11d, dword [rdi + 0xc]
shr edx, 0x10
mov r10d, dword [rax + r10*4 + 0x800]
and r9d, 0xff00
xor r11d, r9d
movzx r9d, dl
and r10d, 0xff000000
mov edx, esi
mov r9d, dword [rax + r9*4 + 0xc00]
movzx esi, dh
mov edx, r14d
and r9d, 0xff0000
or r9d, r10d
movzx r10d, cl
xor r11d, r9d
movzx r9d, byte [rax + r10*4 + 0x400]
xor r9d, dword [rdi]
mov r10d, r9d
mov r9d, dword [rax + rsi*4]
mov ecx, r9d
mov r9d, r10d
and ecx, 0xff00
xor r9d, ecx
movzx ecx, bl
mov ecx, dword [rax + rcx*4 + 0xc00]
and ecx, 0xff0000
shr edx, 0x18
mov eax, dword [rax + rdx*4 + 0x800]
and eax, 0xff000000
or ecx, eax
xor ecx, r9d
call fcn.140046d00
mov ecx, r13d
mov r10d, eax
call fcn.140046d00
mov ecx, r12d
mov r9d, eax
call fcn.140046d00
mov ecx, r11d
mov edx, eax
call fcn.140046d00
mov dword [r8], r10d
mov dword [r8 + 4], r9d
mov dword [r8 + 8], edx
mov dword [r8 + 0xc], eax
xor eax, eax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret