Function at 0x180409e80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
mov qword [rsp + 0x10], rdx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov ebp, dword [rcx]
lea r13, [r8 + 8]
mov r14d, dword [rdx]
mov r15, rcx
mov r12d, 0x10
nop dword [rax + rax]
mov eax, r14d
and eax, 0x11111111
imul ebx, eax, 0xf
mov eax, r14d
shr eax, 3
and eax, 0x11111111
imul r8d, eax, 0xf
mov eax, r14d
shr eax, 1
and eax, 0x11111111
mov edx, ebx
xor ebx, dword [r13 - 4]
imul r9d, eax, 0xf
mov eax, r14d
shr eax, 2
mov edi, r8d
xor r8d, dword [r13 + 8]
and eax, 0x11111111
imul r11d, eax, 0xf
rol edi, 4
xor edi, dword [r13 - 8]
xor r9d, dword [r13]
mov r10d, edi
and r10d, 0x44a3f9e1
ror edx, 4
xor r11d, dword [r13 + 4]
xor r10d, 0x8222bd90
and r10d, ebx
mov eax, edi
and eax, 0xe220f929
mov esi, edi
xor r10d, eax
and esi, 0xf74f3e2b
xor esi, 0x665a14a3
xor r10d, 0xa2a0a918
and esi, ebx
and r10d, r9d
mov eax, edi
mov ecx, edi
and eax, 0x40205801
and ecx, 0x6ea0ab4a
xor eax, 0x73fc3606
xor ecx, 0xbc8f96a5
and eax, ebx
and ecx, ebx
xor r10d, eax
mov eax, edi
and eax, 0x252cf820
xor r10d, eax
mov eax, edi
and eax, 0xf0306cad
xor r10d, 0xc9c755bb
xor eax, 0xf2eff0cc
and eax, r9d
xor esi, eax
mov eax, edi
and eax, 0x6953ddf8
xor esi, eax
mov eax, edi
and eax, 0xa320c959
xor esi, 0xfad176a5
xor ecx, eax
and esi, r11d
xor ecx, 0xa2efb0a5
mov eax, edi
and eax, 0xb97c9011
and ecx, r9d
xor esi, ecx
xor eax, 0x537b3006
and eax, ebx
mov ecx, edi
xor esi, eax
and ecx, 0x70ef31b0
mov eax, edi
xor ecx, 0x920af5c0
and eax, 0x6a707100
xor esi, eax
mov eax, edi
xor esi, 0x63d312c0
and esi, r8d
and ecx, ebx
and eax, 0x922c313d
xor ecx, eax
mov eax, edi
and eax, 0x49ac8e25
xor ecx, 0xf288210c
xor eax, 0x93372baf
and ecx, r9d
and eax, ebx
xor ecx, eax
mov eax, edi
and eax, 0x103be88
xor ecx, eax
mov eax, edi
and eax, 0x90bf8816
xor ecx, 0x5391be65
and ecx, r11d
xor esi, ecx
mov ecx, edi
and ecx, 0x9e34f9b
xor ecx, 0x5ab2750a
and ecx, ebx
xor ecx, eax
mov eax, edi
and eax, 0x3b0fe8ae
xor ecx, 0x90aa30c6
xor eax, 0xf0168aa3
and ecx, r9d
and eax, ebx
xor esi, ecx
xor esi, eax
mov ecx, edi
and ecx, 0x238f1572
mov eax, edi
and eax, 0x51b33be9
xor ecx, 0x59a9a22d
xor esi, eax
and ecx, ebx
mov eax, dword [r13 + 0xc]
xor esi, 0xaf7d655a
xor eax, edx
mov edx, edi
and esi, eax
and edx, 0x202f69aa
xor edx, 0xa0e62188
mov eax, edi
and eax, 0x11cca000
and edx, r9d
xor eax, 0x21c83200
and eax, ebx
xor edx, eax
mov eax, edi
and eax, 0x7a63c083
xor edx, eax
mov eax, edi
and eax, 0x7640b01a
xor edx, 0xac6d0bd4
xor ecx, eax
and edx, r11d
xor ecx, 0x6ce0d5cc
mov eax, edi
and ecx, r9d
and eax, 0x26f320b
xor edx, ecx
xor eax, 0x3069300c
and eax, ebx
mov ecx, edi
xor edx, eax
and ecx, 0xa5ec0b28
xor ecx, 0x68d7b833
mov eax, edi
and eax, 0x794f104a
and ecx, ebx
xor edx, eax
mov eax, edi
and eax, 0x40efa809
xor edx, 0xd6b6ac77
xor ecx, eax
and edx, r8d
xor ecx, 0x37396665
xor esi, edx
and ecx, r9d
xor esi, ecx
and r10d, r11d
mov eax, edi
and edi, 0xec7ac69c
and eax, 0x500fb821
xor eax, 0xaeaaedff
and eax, ebx
xor esi, eax
xor esi, r10d
xor esi, edi
xor esi, 0xefa72c4d
mov r9d, esi
mov ecx, esi
and ecx, 0x10
and r9d, 0x88000008
mov r8d, esi
mov edx, esi
and r8d, 0x40801800
and edx, 0x20000200
mov r10d, esi
and r10d, 0x12020120
lea eax, [r9*8]
or eax, ecx
mov ecx, esi
shl eax, 4
and ecx, 2
or eax, r8d
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 0xffff0000
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 0x40
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 1
shl eax, 2
or eax, edx
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 0x8000
shl eax, 2
or eax, ecx
mov ecx, esi
and ecx, 0x100000
shl eax, 3
or eax, ecx
mov ecx, esi
and ecx, 0x4000
add eax, eax
or eax, r10d
shr r10d, 5
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 4
add eax, eax
or eax, ecx
mov ecx, esi
and ecx, 0x4000000
shl eax, 3
or r10d, ecx
mov ecx, esi
shr r10d, 2
and ecx, 0x200000
or r10d, edx
shr r10d, 1
or r10d, ecx
mov ecx, esi
shr r10d, 4
and ecx, 0x80000
or r10d, r8d
shr r10d, 2
or r10d, ecx
mov ecx, esi
shr r10d, 3
and ecx, 0x1000000
or r10d, ecx
lea r13, [r13 + 0x18]
shr r10d, 2
mov ecx, esi
or r10d, r9d
and ecx, 0x480
shr r10d, 1
and esi, 0x442000
or r10d, ecx
shr r10d, 1
or r10d, esi
shr r10d, 6
or eax, r10d
xor eax, ebp
mov ebp, r14d
mov r14d, eax
sub r12, 1
jne 0x180409eb0
mov r14, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov dword [r15], eax
mov dword [r14], ebp
mov rbp, qword [rsp + 0x50]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret