Function at 0x1400043f0
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 0x140004a12
lea rsi, [rbx + 0x2c]
lea rbx, [0x140024b70]
nop dword [rax]
nop dword [rax + rax]
mov r10d, dword [rsi - 0x28]
mov r9d, dword [rsi - 0x2c]
xor r10d, eax
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 r10d, dword [rsi - 0x20]
xor r11d, r8d
mov r9d, dword [rsi - 0x24]
xor r10d, r11d
ror r10d, 4
mov edx, r11d
xor r9, rdx
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
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 - 0x1c]
xor eax, r8d
mov r10d, dword [rsi - 0x18]
mov edx, eax
xor r10d, eax
xor r9, rdx
ror r10d, 4
mov rdx, r9
mov rcx, r9
shr rdx, 0x18
and edx, 0xfc
shr rcx, 0x10
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
mov edx, dword [rsi - 0x14]
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 r10d, dword [rsi - 0x10]
xor r11d, r8d
xor r10d, r11d
xor edx, r11d
mov r9d, edx
ror r10d, 4
mov ecx, r9d
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 ecx, r9d
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 r10d, dword [rsi - 0xc]
xor eax, r8d
mov ecx, dword [rsi - 8]
xor r10d, eax
xor ecx, eax
ror ecx, 4
mov edx, ecx
mov r9d, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
and r9d, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi - 4]
xor r11d, r8d
mov ecx, dword [rsi]
xor r10d, r11d
xor ecx, r11d
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi + 4]
xor eax, r8d
mov ecx, dword [rsi + 8]
xor r10d, eax
xor ecx, eax
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi + 0xc]
xor r11d, r8d
xor r10d, r11d
mov ecx, dword [rsi + 0x10]
lea rsi, [rsi + 0x40]
xor ecx, r11d
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
xor eax, r8d
sub rdi, 1
jne 0x1400044a0
jmp 0x140004f8d
lea rsi, [rbx + 0x54]
lea rbx, [0x140024b70]
nop dword [rax]
mov r10d, dword [rsi + 0x28]
mov r9d, dword [rsi + 0x24]
xor r10d, eax
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 r10d, dword [rsi + 0x20]
xor r11d, r8d
mov r9d, dword [rsi + 0x1c]
xor r10d, r11d
ror r10d, 4
mov edx, r11d
xor r9, rdx
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
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 + 0x14]
xor eax, r8d
mov r10d, dword [rsi + 0x18]
mov edx, eax
xor r10d, eax
xor r9, rdx
ror r10d, 4
mov rdx, r9
mov rcx, r9
shr rdx, 0x18
and edx, 0xfc
shr rcx, 0x10
and ecx, 0xfc
mov r8d, dword [rdx + rbx + 0x600]
mov edx, dword [rsi + 0xc]
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 + 0x10]
xor r11d, r8d
xor r9d, r11d
xor edx, r11d
mov r10d, edx
ror r9d, 4
mov ecx, r10d
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 ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
mov ecx, r9d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x700]
mov ecx, r9d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi + 4]
xor eax, r8d
mov ecx, dword [rsi + 8]
xor r10d, eax
xor ecx, eax
ror ecx, 4
mov edx, ecx
mov r9d, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
and r9d, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi - 4]
xor r11d, r8d
mov ecx, dword [rsi]
xor r10d, r11d
xor ecx, r11d
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi - 0xc]
xor eax, r8d
mov ecx, dword [rsi - 8]
xor r10d, eax
xor ecx, eax
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
mov r10d, dword [rsi - 0x14]
xor r11d, r8d
xor r10d, r11d
mov ecx, dword [rsi - 0x10]
lea rsi, [rsi - 0x40]
xor ecx, r11d
ror ecx, 4
mov r9d, ecx
mov edx, ecx
shr rcx, 0x10
and ecx, 0xfc
shr rdx, 0x18
and edx, 0xfc
mov r8d, dword [rdx + rbx + 0x700]
xor r8d, dword [rcx + rbx + 0x500]
mov ecx, r9d
shr rcx, 8
and r9d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x300]
mov ecx, r10d
shr rcx, 0x18
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x600]
mov ecx, r10d
shr rcx, 0x10
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x400]
mov ecx, r10d
shr rcx, 8
and r10d, 0xfc
and ecx, 0xfc
xor r8d, dword [rcx + rbx + 0x200]
xor r8d, dword [r9 + rbx + 0x100]
xor r8d, dword [r10 + rbx]
xor eax, r8d
sub rdi, 1
jne 0x140004a20
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