Function at 0x14014f620
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov dword [rbp - 0x14], r8d
mov qword [rbp - 0x10], rdx
mov qword [rbp - 8], rcx
mov eax, dword [0x1401fab68]
mov r8d, dword [0x1401fab6c]
xor r8d, 0x200023d8
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x827e0e0c
xor edx, edx
div ecx
sub eax, 0xa4ebb04c
mov r8d, 0xffffffff
xor r8d, 0xe100da98
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe100da98
or eax, 0xe100da98
imul eax, edx
add eax, ecx
mov ecx, 0x6b177467
xor ecx, 0xa6efccc4
cmp eax, ecx
je 0x14014f8a2
mov eax, 0x84045013
mov dword [rbp - 0x1c], eax
mov eax, 0x10
mov qword [rbp - 0x58], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x60], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp - 0x58]
mov rcx, rsp
mov qword [rbp - 0x40], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x50], rax
sub rsp, 0x20
call fcn.140167250
add rsp, 0x20
mov qword [rbp - 0x28], rax
add rax, 0x60
mov qword [rbp - 0x48], rax
mov ecx, 0x68
mov edx, 8
sub rsp, 0x20
call fcn.140016330
mov rdx, qword [rbp - 0x40]
mov rcx, qword [rbp - 0x38]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 8]
mov qword [rbp - 0x30], r8
mov byte [r8], 1
mov qword [r8 + 0x38], 0
mov qword [r8 + 0x40], 0
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14013b830
mov r8, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x28]
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rdx + 0x48], r9
mov r8, qword [r8 + 8]
mov qword [rdx + 0x50], r8
mov cl, byte [rcx + 0x60]
mov dl, 0x92
xor dl, 0x92
cmp cl, dl
sete cl
mov byte [rbp - 0x15], cl
cmp eax, 0x76fb8e0
jbe 0x14014f6c4
mov dl, byte [rbp - 0x15]
mov cl, 1
xor eax, eax
test dl, 1
mov byte [rbp - 0x69], cl
mov qword [rbp - 0x68], rax
jne 0x14014f7e4
jmp 0x14014f849
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x48]
mov edx, dword [rbp - 0x14]
mov r8, qword [rbp - 0x60]
mov r9, qword [rbp - 0x10]
mov r10, qword [r9]
mov qword [r8], r10
mov r10, qword [r9 + 8]
mov qword [r8 + 8], r10
movabs r10, 0x47ea6b03d7afe969
movabs r11, 0x47ea6b03d7afe969
xor r10, r11
mov qword [r9], r10
mov qword [r9 + 8], 0
mov r9, qword [r8]
mov qword [rax + 0x58], r9
mov r8, qword [r8 + 8]
mov qword [rax + 0x60], r8
mov dword [rax + 0x24], edx
mov dword [rax + 0x20], 0xffffffff
mov cl, byte [rcx]
mov byte [rbp - 0x69], cl
mov qword [rbp - 0x68], rax
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x10]
mov r8b, byte [rbp - 0x69]
mov r9, qword [rbp - 0x68]
mov qword [rbp - 0x78], r9
mov byte [rbp - 0x6a], r8b
mov byte [rdx], 0
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140138610
mov rax, qword [rbp - 0x48]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14014f899
mov rax, qword [rbp - 0x48]
mov cl, byte [rbp - 0x6a]
mov byte [rax], cl
mov rax, qword [rbp - 0x78]
mov rsp, rbp
pop rbp
ret
sar dword [rdi + rdx*4 - 0x6c], cl
jmp 0x14014f6c4