Function at 0x14015b2b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov qword [rbp - 0x28], rdx
mov qword [rbp - 0x30], rcx
mov eax, 0x10
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.140193b2f
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rax, rcx
add rax, 8
mov qword [rbp - 0x18], rax
mov rax, qword [rcx + 8]
mov rcx, rdx
add rcx, 8
mov qword [rbp - 0x10], rcx
cmp rax, qword [rdx + 8]
mov qword [rbp - 8], rax
je 0x14015b41e
mov eax, dword [0x14024ad10]
xor eax, 0x775c69fe
mov edx, dword [0x14024ad14]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0xa5bf24cf
xor ecx, 0xd8ce29eb
imul eax, ecx
mov ecx, 0x70e9d650
xor ecx, 0x4f54fc2b
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x3a33bbb2
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xb526d36e
xor ecx, 0xe6e9d484
cmp eax, ecx
jae 0x14015b56e
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
mov edx, dword [0x14024ad18]
mov r8d, dword [0x14024ad1c]
xor r8d, 0x8626c3b
imul edx, r8d
mov r8d, 0x95612010
xor r8d, 0x77544e93
and edx, r8d
mov r8d, 0x321dc9af
xor r8d, 0xf99056de
add edx, r8d
mov r8d, 0xb4e68b5a
xor r8d, 0x645f626a
sub edx, r8d
mov dword [rbp - 0x40], edx
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14015af70
mov rcx, qword [rbp - 0x20]
mov eax, dword [rbp - 0x40]
add rsp, 0x20
cmp byte [rcx + 0x50], 0
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0xd7e00c0f
jae 0x14015b379
mov al, byte [rbp - 0x39]
test al, 1
jne 0x14015b413
jmp 0x14015b437
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x28]
mov rcx, qword [rbp - 8]
mov r8, qword [r8]
mov qword [rdx], r8
mov qword [rax], rcx
mov ecx, dword [0x14024ad20]
mov eax, dword [0x14024ad24]
xor eax, 0xb0bab28e
mov edx, 0x9ed95e52
xor edx, 0xdda3d325
add ecx, edx
sub ecx, eax
sub ecx, 0x437a8d77
mov edx, ecx
xor edx, 0xffffffff
and edx, 0x2472c5e3
mov r8d, 0xffffffff
xor r8d, 0x2472c5e3
mov eax, ecx
and eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0x2472c5e3
or ecx, 0x2472c5e3
imul ecx, edx
add ecx, eax
mov edx, 0xf47e2c47
xor edx, 0xb81d3b8
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x518aa73b
and eax, edx
mov edx, 0x817b7037
xor edx, 0x7e848fc8
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x518aa73b
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xf8d6031
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x2b06134
xor r8d, 0xfd4f9ecb
xor ecx, r8d
imul ecx, edx
mov r8d, 0x73ea0fc7
xor r8d, 0x7c676ff6
mov edx, eax
and edx, r8d
or eax, 0xf8d6031
imul eax, edx
add eax, ecx
cmp eax, 0xfcebf221
je 0x14015b577
mov eax, dword [0x14024ad28]
and eax, dword [0x14024ad2c]
mov edx, 0xffffffff
xor edx, 0x8df2183f
mov ecx, eax
xor ecx, edx
and ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x39b52380
xor eax, 0x73549048
and eax, edx
mov edx, 0xffffffff
xor edx, 0x4ae1b3c8
and ecx, edx
or eax, ecx
or eax, 0xc5b55513
cmp eax, 0xa369e188
jb 0x14015b577
mov rsp, rbp
pop rbp
ret
sub ch, byte [rbx + 0x2e9a586]
invalid
invalid