Function at 0x14006b91c
Capabilities:
Encrypt data using des

Disassembly:
push r14
push rsi
push rdi
push rbx
mov eax, edx
shr eax, 4
xor eax, r8d
and eax, 0xf0f0f0f
mov edi, eax
shl edi, 4
xor edi, edx
xor eax, r8d
mov edx, edi
shr edx, 0x10
movzx esi, ax
xor esi, edx
mov edx, esi
shl edx, 0x10
xor edx, edi
xor esi, eax
mov eax, esi
shr eax, 2
xor eax, edx
and eax, 0x33333333
lea edi, [rax*4]
xor edi, esi
xor eax, edx
mov edx, edi
shr edx, 8
xor edx, eax
and edx, 0xff00ff
mov esi, edx
shl esi, 8
xor esi, edi
xor edx, eax
mov r10d, edx
shr r10d, 1
xor r10d, esi
and r10d, 0x55555555
lea r11d, [r10 + r10]
xor r11d, edx
xor r10d, esi
rol r11d, 1
shld r10d, esi, 1
mov edi, dword [r9]
xor edi, r10d
mov eax, dword [r9 + 0x40]
xor eax, r10d
mov esi, edi
shr esi, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
lea r8, [0x140014470]
mov edx, eax
shr edx, 0x18
and edx, 0x3f
mov edx, dword [r8 + rdx*4 + 0x100]
or edx, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x200]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x500]
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x600]
and eax, 0x3f
or edx, dword [r8 + rax*4 + 0x700]
xor edx, r11d
mov edi, dword [r9 + 4]
xor edi, edx
mov esi, dword [r9 + 0x44]
xor esi, edx
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r11d, dword [r8 + rax*4 + 0x100]
or r11d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r11d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r11d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r11d, dword [r8 + rsi*4 + 0x700]
xor r11d, r10d
mov edi, dword [r9 + 8]
xor edi, r11d
mov esi, dword [r9 + 0x48]
xor esi, r11d
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r10d, dword [r8 + rax*4 + 0x100]
or r10d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r10d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r10d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r10d, dword [r8 + rsi*4 + 0x700]
xor r10d, edx
mov edi, dword [r9 + 0xc]
xor edi, r10d
mov eax, dword [r9 + 0x4c]
xor eax, r10d
mov esi, edi
shr esi, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov edx, eax
shr edx, 0x18
and edx, 0x3f
mov edx, dword [r8 + rdx*4 + 0x100]
or edx, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x200]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x500]
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x600]
and eax, 0x3f
or edx, dword [r8 + rax*4 + 0x700]
xor edx, r11d
mov edi, dword [r9 + 0x10]
xor edi, edx
mov esi, dword [r9 + 0x50]
xor esi, edx
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r11d, dword [r8 + rax*4 + 0x100]
or r11d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r11d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r11d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r11d, dword [r8 + rsi*4 + 0x700]
xor r11d, r10d
mov edi, dword [r9 + 0x14]
xor edi, r11d
mov esi, dword [r9 + 0x54]
xor esi, r11d
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r10d, dword [r8 + rax*4 + 0x100]
or r10d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r10d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r10d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r10d, dword [r8 + rsi*4 + 0x700]
xor r10d, edx
mov edi, dword [r9 + 0x18]
xor edi, r10d
mov eax, dword [r9 + 0x58]
xor eax, r10d
mov esi, edi
shr esi, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov edx, eax
shr edx, 0x18
and edx, 0x3f
mov edx, dword [r8 + rdx*4 + 0x100]
or edx, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x200]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x500]
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x600]
and eax, 0x3f
or edx, dword [r8 + rax*4 + 0x700]
xor edx, r11d
mov edi, dword [r9 + 0x1c]
xor edi, edx
mov esi, dword [r9 + 0x5c]
xor esi, edx
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r11d, dword [r8 + rax*4 + 0x100]
or r11d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r11d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r11d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r11d, dword [r8 + rsi*4 + 0x700]
xor r11d, r10d
mov edi, dword [r9 + 0x20]
xor edi, r11d
mov esi, dword [r9 + 0x60]
xor esi, r11d
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r10d, dword [r8 + rax*4 + 0x100]
or r10d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r10d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r10d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r10d, dword [r8 + rsi*4 + 0x700]
xor r10d, edx
mov edi, dword [r9 + 0x24]
xor edi, r10d
mov eax, dword [r9 + 0x64]
xor eax, r10d
mov esi, edi
shr esi, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov edx, eax
shr edx, 0x18
and edx, 0x3f
mov edx, dword [r8 + rdx*4 + 0x100]
or edx, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x200]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x500]
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x600]
and eax, 0x3f
or edx, dword [r8 + rax*4 + 0x700]
xor edx, r11d
mov edi, dword [r9 + 0x28]
xor edi, edx
mov esi, dword [r9 + 0x68]
xor esi, edx
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r11d, dword [r8 + rax*4 + 0x100]
or r11d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r11d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r11d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r11d, dword [r8 + rsi*4 + 0x700]
xor r11d, r10d
mov edi, dword [r9 + 0x2c]
xor edi, r11d
mov esi, dword [r9 + 0x6c]
xor esi, r11d
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, esi
shr eax, 0x18
and eax, 0x3f
mov r10d, dword [r8 + rax*4 + 0x100]
or r10d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x200]
mov eax, esi
shr eax, 0x10
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r10d, dword [r8 + rdi*4 + 0x400]
mov eax, esi
shr eax, 8
and eax, 0x3f
or r10d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r10d, dword [r8 + r14*4 + 0x600]
and esi, 0x3f
or r10d, dword [r8 + rsi*4 + 0x700]
xor r10d, edx
mov edi, dword [r9 + 0x30]
xor edi, r10d
mov eax, dword [r9 + 0x70]
xor eax, r10d
mov edx, edi
shr edx, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov esi, eax
shr esi, 0x18
and esi, 0x3f
mov esi, dword [r8 + rsi*4 + 0x100]
or esi, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or esi, dword [r8 + rbx*4 + 0x200]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or esi, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or esi, dword [r8 + rdi*4 + 0x400]
mov edi, eax
shr edi, 8
and edi, 0x3f
or esi, dword [r8 + rdi*4 + 0x500]
and edx, 0x3f
or esi, dword [r8 + rdx*4 + 0x600]
and eax, 0x3f
or esi, dword [r8 + rax*4 + 0x700]
xor esi, r11d
mov edi, dword [r9 + 0x34]
xor edi, esi
mov edx, dword [r9 + 0x74]
xor edx, esi
mov r14d, edi
shr r14d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, edx
shr eax, 0x18
and eax, 0x3f
mov r11d, dword [r8 + rax*4 + 0x100]
or r11d, dword [r8 + rbx*4]
mov eax, edi
shr eax, 0x14
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x200]
mov eax, edx
shr eax, 0x10
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or r11d, dword [r8 + rdi*4 + 0x400]
mov eax, edx
shr eax, 8
and eax, 0x3f
or r11d, dword [r8 + rax*4 + 0x500]
and r14d, 0x3f
or r11d, dword [r8 + r14*4 + 0x600]
and edx, 0x3f
or r11d, dword [r8 + rdx*4 + 0x700]
xor r11d, r10d
mov edi, dword [r9 + 0x38]
xor edi, r11d
mov edx, dword [r9 + 0x78]
xor edx, r11d
mov r10d, edi
shr r10d, 4
mov ebx, edi
rol ebx, 0x1c
shr ebx, 0x18
and ebx, 0x3f
mov eax, edx
shr eax, 0x18
and eax, 0x3f
mov eax, dword [r8 + rax*4 + 0x100]
or eax, dword [r8 + rbx*4]
mov ebx, edi
shr ebx, 0x14
and ebx, 0x3f
or eax, dword [r8 + rbx*4 + 0x200]
mov ebx, edx
shr ebx, 0x10
and ebx, 0x3f
or eax, dword [r8 + rbx*4 + 0x300]
shr edi, 0xc
and edi, 0x3f
or eax, dword [r8 + rdi*4 + 0x400]
mov edi, edx
shr edi, 8
and edi, 0x3f
or eax, dword [r8 + rdi*4 + 0x500]
and r10d, 0x3f
or eax, dword [r8 + r10*4 + 0x600]
and edx, 0x3f
or eax, dword [r8 + rdx*4 + 0x700]
xor eax, esi
mov esi, dword [r9 + 0x3c]
xor esi, eax
mov r10d, dword [r9 + 0x7c]
xor r10d, eax
mov r9d, esi
shr r9d, 4
mov edi, esi
rol edi, 0x1c
shr edi, 0x18
and edi, 0x3f
mov edx, r10d
shr edx, 0x18
and edx, 0x3f
mov edx, dword [r8 + rdx*4 + 0x100]
or edx, dword [r8 + rdi*4]
mov ebx, esi
shr ebx, 0x14
and ebx, 0x3f
or edx, dword [r8 + rbx*4 + 0x200]
mov edi, r10d
shr edi, 0x10
and edi, 0x3f
or edx, dword [r8 + rdi*4 + 0x300]
shr esi, 0xc
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x400]
mov esi, r10d
shr esi, 8
and esi, 0x3f
or edx, dword [r8 + rsi*4 + 0x500]
and r9d, 0x3f
or edx, dword [r8 + r9*4 + 0x600]
and r10d, 0x3f
or edx, dword [r8 + r10*4 + 0x700]
xor edx, r11d
ror edx, 1
mov ebx, edx
xor ebx, eax
ror eax, 1
shr ebx, 1
and ebx, 0x55555555
lea edi, [rbx + rbx]
xor edi, edx
xor ebx, eax
mov eax, ebx
shr eax, 8
xor eax, edi
and eax, 0xff00ff
mov edx, eax
shl edx, 8
xor edx, ebx
xor eax, edi
mov ebx, edx
shr ebx, 2
xor ebx, eax
and ebx, 0x33333333
lea edi, [rbx*4]
xor edi, edx
xor ebx, eax
mov eax, ebx
shr eax, 0x10
movzx edx, di
xor edx, eax
mov esi, edx
shl esi, 0x10
xor esi, ebx
xor edx, edi
mov eax, esi
shr eax, 4
xor eax, edx
and eax, 0xf0f0f0f
mov ebx, eax
shl ebx, 4
xor ebx, esi
xor eax, edx
mov dword [rcx], ebx
mov dword [rcx + 4], eax
pop rbx
pop rdi
pop rsi
pop r14
ret