Function at 0x140014ba0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
mov r10d, dword [rdx]
mov r14, r8
mov eax, dword [rdx + 4]
mov rbx, rcx
rol r10d, 4
mov edi, 2
mov edx, r10d
xor edx, eax
and edx, 0xf0f0f0f0
xor r10d, edx
xor edx, eax
rol edx, 0x14
mov r8d, r10d
xor r8d, edx
and r8d, 0xfff0000f
xor r10d, r8d
xor r8d, edx
rol r8d, 0xe
mov ecx, r10d
xor ecx, r8d
and ecx, 0x33333333
xor r8d, ecx
xor ecx, r10d
rol ecx, 0x16
mov eax, ecx
xor eax, r8d
and eax, 0x3fc03fc
xor r8d, eax
xor eax, ecx
rol eax, 9
mov r11d, eax
xor r11d, r8d
and r11d, 0xaaaaaaaa
xor eax, r11d
xor r11d, r8d
rol r11d, 1
test r9d, r9d
je 0x1400151de
lea rsi, [rbx + 0xc]
lea rbx, [0x140062120]
nop dword [rax]
nop dword [rax + rax]
mov r9d, dword [rsi - 0xc]
mov r10d, eax
xor r10d, dword [rsi - 8]
ror r10d, 4
mov ecx, eax
xor r9, rcx
mov rdx, r9
mov rcx, r9
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 4]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
and r10d, 0xfc
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 4]
xor eax, r8d
mov edx, eax
mov r10d, eax
xor r10d, dword [rsi + 8]
xor r9, rdx
mov rdx, r9
ror r10d, 4
shr rdx, 0x18
mov rcx, r9
and edx, 0xfc
shr rcx, 0x10
mov r8d, dword [rdx + rbx + 0x600]
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 0xc]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi + 0x10]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 0x14]
xor eax, r8d
mov edx, eax
mov r10d, eax
xor r10d, dword [rsi + 0x18]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
and r9d, 0xfc
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 0x1c]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi + 0x20]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 0x24]
xor eax, r8d
mov r10d, eax
mov edx, eax
xor r10d, dword [rsi + 0x28]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
and r10d, 0xfc
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi + 0x2c]
lea rsi, [rsi + 0x40]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi - 0x10]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
xor eax, r8d
sub rdi, 1
jne 0x140014c50
jmp 0x140015779
lea rsi, [rbx + 0x78]
lea rbx, [0x140062120]
nop dword [rax]
mov r9d, dword [rsi]
mov r10d, eax
xor r10d, dword [rsi + 4]
ror r10d, 4
mov ecx, eax
xor r9, rcx
mov rdx, r9
mov rcx, r9
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 8]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi - 4]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
and r10d, 0xfc
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x10]
xor eax, r8d
mov edx, eax
mov r10d, eax
xor r10d, dword [rsi - 0xc]
xor r9, rdx
mov rdx, r9
ror r10d, 4
shr rdx, 0x18
mov rcx, r9
and edx, 0xfc
shr rcx, 0x10
mov r8d, dword [rdx + rbx + 0x600]
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x18]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi - 0x14]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x20]
xor eax, r8d
mov edx, eax
mov r10d, eax
xor r10d, dword [rsi - 0x1c]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
and r9d, 0xfc
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x28]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi - 0x24]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x30]
xor eax, r8d
mov r10d, eax
mov edx, eax
xor r10d, dword [rsi - 0x2c]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
and r10d, 0xfc
xor r8d, dword [r10 + rbx + 0x100]
mov r9d, dword [rsi - 0x38]
lea rsi, [rsi - 0x40]
xor r11d, r8d
mov r10d, r11d
mov edx, r11d
xor r10d, dword [rsi + 0xc]
xor r9, rdx
ror r10d, 4
mov rdx, r9
shr rdx, 0x18
mov rcx, r9
shr rcx, 0x10
and edx, 0xfc
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
xor r8d, dword [rcx + rbx + 0x400]
mov rcx, r9
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx]
xor r8d, dword [r10 + rbx + 0x100]
xor eax, r8d
sub rdi, 1
jne 0x1400151f0
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
ror eax, 1
mov ecx, eax
xor ecx, r11d
and ecx, 0xaaaaaaaa
xor eax, ecx
xor ecx, r11d
ror ecx, 9
mov r8d, eax
xor r8d, ecx
and r8d, 0x3fc03fc
xor eax, r8d
xor r8d, ecx
mov ecx, eax
ror r8d, 0x16
xor ecx, r8d
and ecx, 0x33333333
xor r8d, ecx
xor ecx, eax
ror ecx, 0xe
mov edx, ecx
xor edx, r8d
and edx, 0xfff0000f
xor r8d, edx
xor edx, ecx
ror edx, 0x14
mov ecx, edx
xor ecx, r8d
and ecx, 0xf0f0f0f0
mov eax, ecx
xor ecx, edx
xor eax, r8d
mov dword [r14 + 4], ecx
ror eax, 4
mov dword [r14], eax
mov r14, qword [rsp + 0x20]
ret