Function at 0x140067e60
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp - 8], r9
mov qword [rbp], r8
mov qword [rbp + 8], rdx
mov qword [rbp + 0x10], rcx
mov eax, dword [0x1402752c0]
mov r8d, dword [0x1402752c4]
xor r8d, 0x1cea94ca
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
imul eax, eax, 0xfefe7248
mov ecx, 0xdda35c97
xor edx, edx
div ecx
mov ecx, 0x2e94bb8
xor edx, edx
div ecx
mov ecx, 0x288af00f
xor ecx, 0x644c898
cmp eax, ecx
jae 0x1400681c6
mov ecx, dword [0x1402752c8]
mov edx, dword [0x1402752cc]
xor edx, 0x2e2408aa
mov eax, ecx
or eax, edx
and ecx, edx
not eax
or eax, ecx
add eax, 0xb6a3e7b
and eax, 0xe23aea55
mov dword [rbp - 0x24], eax
mov eax, 0x10
mov qword [rbp - 0x40], rax
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x58], rax
mov eax, 0x800
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov rcx, rsp
mov qword [rbp - 0x50], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov rcx, rsp
mov qword [rbp - 0x48], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, qword [rbp - 0x40]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp + 0x10]
mov r9, qword [rbp]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x24]
add rdx, 0x60
mov qword [rbp - 0x20], rdx
mov r10, qword [rcx]
mov rdx, r10
sub rdx, r9
mov qword [rbp - 0x18], rdx
mov r8, rdx
xor r8, 0xffffffffffffffff
mov rcx, r10
and rcx, r8
xor r10, 0xffffffffffffffff
mov r8, rdx
and r8, r10
or rcx, r8
cmp rcx, 0
setl cl
mov r10, rdx
and r10, r9
movabs r8, 0xdc14ace40ad53639
movabs r11, 0xdc14ace40ad5363b
xor r8, r11
imul r8, r10
add rdx, r9
sub rdx, r8
movabs r8, 0x30c089cb814e33d9
movabs r9, 0xcf3f76347eb1cc26
xor r8, r9
cmp rdx, r8
setg dl
and cl, dl
mov byte [rbp - 9], cl
cmp eax, 0x70a75281
jae 0x1400681c6
mov al, byte [rbp - 9]
test al, 1
jne 0x140068030
jmp 0x140068048
sub rsp, 0x20
call fcn.14000f24b
add rsp, 0x20
xor eax, eax
mov qword [rbp - 0x60], rax
jmp 0x1400681bb
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp + 8]
mov rcx, qword [rcx]
mov qword [rbp - 0x70], rcx
cmp rax, rcx
setl cl
mov al, cl
and al, 1
neg al
movsx rax, al
mov qword [rbp - 0x68], rax
mov rax, 0xffffffffffffffff
test cl, 1
mov qword [rbp - 0x60], rax
jne 0x1400681bb
mov rax, qword [rbp - 0x70]
cmp rax, 1
jne 0x1400680cc
mov r9, qword [rbp - 8]
mov r8, qword [rbp]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 8]
mov rdx, qword [rdx + 8]
mov dl, byte [rdx + 8]
mov r10, qword [rax]
mov qword [rcx], r10
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14006694e
add rsp, 0x20
mov qword [rbp - 0x60], rax
jmp 0x1400681bb
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
xor eax, eax
mov qword [rbp - 0x78], rax
mov rax, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x50]
xorps xmm0, xmm0
movaps xmmword [rcx + rax], xmm0
add rax, 0x10
movabs rcx, 0x57eefeb328b59c72
movabs rdx, 0x57eefeb328b59472
xor rcx, rdx
cmp rax, rcx
mov qword [rbp - 0x78], rax
jne 0x1400680e8
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp + 8]
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rcx, qword [rcx + 8]
mov qword [rax + 8], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x58]
call fcn.140067960
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x60], rax
jne 0x1400681bb
mov rax, qword [rbp - 8]
mov r9, qword [rbp]
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x50]
mov r10, qword [rbp + 8]
mov r11, qword [rbp + 0x10]
mov rsi, qword [r11]
mov qword [rdx], rsi
mov r11, qword [r11 + 8]
mov qword [rdx + 8], r11
mov r11, qword [r10]
mov qword [r8], r11
mov r10, qword [r10 + 8]
mov qword [r8 + 8], r10
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140066d80
add rsp, 0x30
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
lea rsp, [rbp + 0x18]
pop rsi
pop rbp
ret
rcr byte [rcx + 0x15e9cc08], 0xfd
invalid