Function at 0x14006f338
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov qword [rbp - 8], rdx
mov qword [rbp + 0x18], rcx
mov eax, 0x10
mov qword [rbp], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp]
mov rcx, rsp
mov qword [rbp + 8], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x10], rax
sub rsp, 0x20
call fcn.14006624b
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.14003527a
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x20]
mov byte [rbp + 0x2f], cl
cmp byte [rax], 0
jne 0x14006f305
mov al, byte [rbp + 0x2f]
mov cl, 0x9a
xor cl, 0x5a
cmp al, cl
jne 0x14006ec97
xor eax, eax
mov ecx, eax
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.1400105f0
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], rax
lea rdx, [rbp + 0x40]
sub rsp, 0x20
call fcn.14002174a
add rsp, 0x20
jmp 0x14006f305
mov ecx, dword [0x1401d8328]
xor ecx, dword [0x1401d832c]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x332f420
or eax, edx
mov edx, 0x332f420
and edx, 0x332f420
xor edx, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0x2b3633ed
xor r8d, 0xd4c9cc12
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
mov edx, 0xb98eb953
xor edx, 0x467146ac
xor ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x765ad11
xor edx, 0x8dd8b765
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x8abd1a74
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8abd1a74
or eax, 0x8abd1a74
imul eax, edx
add eax, ecx
and eax, 0xc3467e74
cmp eax, 0x69626388
jbe 0x14006f30b
mov rcx, qword [rbp + 0x18]
mov eax, dword [0x1401d8330]
mov r8d, dword [0x1401d8334]
mov edx, 0xf5adb35d
xor edx, 0x2d141ee6
xor r8d, edx
xor edx, edx
div r8d
or eax, eax
xor eax, 0xffffffff
mov edx, 0xbf7ba389
or edx, 0xbf7ba389
mov r8d, 0xac80a81a
xor r8d, 0x537f57e5
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
imul eax, eax, 0x7a4fda8e
mov r8d, 0xeea75c49
xor edx, edx
div r8d
mov dword [rbp - 0x1c], eax
sub rsp, 0x20
call fcn.140068600
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x1c]
mov qword [rbp - 0x18], rdx
mov cl, byte [rcx]
mov dl, 0x17
xor dl, 0x17
cmp cl, dl
sete cl
mov byte [rbp - 9], cl
cmp eax, 0xfbee9d67
je 0x14006f30b
mov al, byte [rbp - 9]
test al, 1
jne 0x14006edda
jmp 0x14006f305
mov eax, dword [0x1401d8338]
mov ecx, dword [0x1401d833c]
xor ecx, 0xf9146bdf
add eax, ecx
mov ecx, 0xd2909904
xor edx, edx
div ecx
add eax, 0xc0df4f40
and eax, 0x693a83d1
cmp eax, 0x85c229e0
jae 0x14006f314
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401d8340]
xor eax, 0x402dbc27
mov r8d, dword [0x1401d8344]
xor r8d, 0xaf00c605
xor edx, edx
div r8d
mov r8d, 0xa58cd997
xor edx, edx
div r8d
mov r8d, 0xe88b7e47
xor edx, edx
div r8d
imul eax, eax, 0xc6ec1f64
cmp rcx, 0
setl cl
mov byte [rbp - 0x1d], cl
cmp eax, 0xb0a6736f
ja 0x14006ee0c
mov al, byte [rbp - 0x1d]
test al, 1
jne 0x14006ee6f
jmp 0x14006eecb
lea rcx, [0x1401e96c8]
sub rsp, 0x20
call fcn.140068b6e
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rbp - 0x28], rcx
cmp byte [rax], 0
jne 0x14006f305
mov rcx, qword [rbp - 0x28]
lea rdx, [0x1401e9615]
lea r8, [0x1401e967f]
lea r9, [0x1401e9605]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffbd84f1fc
call fcn.14001331d
add rsp, 0x30
jmp 0x14006f305
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp + 0x30]
sub rsp, 0x20
call fcn.140022350
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp + 8]
add rsp, 0x20
mov r8, qword [rbp + 0x30]
mov rax, qword [rbp + 0x38]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14002174a
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rcx, rax
add rcx, 0xffffffffffffffff
xor rcx, rax
movabs rdx, 0xf4fda923a499d398
movabs r8, 0xf4fda923a499d398
xor rdx, r8
cmp rcx, rdx
setl dl
cmp rax, 0
setne al
mov cl, al
xor cl, dl
xor cl, 0xff
or al, dl
and al, cl
test al, 1
jne 0x14006ef60
mov rax, qword [rbp - 8]
add rax, 8
mov qword [rbp - 0x38], rax
xor eax, eax
mov qword [rbp - 0x30], rax
jmp 0x14006f01c
mov eax, dword [0x1401d8348]
mov ecx, dword [0x1401d834c]
xor ecx, 0x7294184
xor edx, edx
div ecx
mov ecx, 0x1c75cc7a
xor edx, edx
div ecx
mov ecx, 0xdd0532af
xor ecx, 0xc3f4e4d
sub eax, ecx
sub eax, 0xf44fdc66
cmp eax, 0xffc09fac
jae 0x14006f31d
mov eax, dword [0x1401d8350]
mov ecx, 0x2de52495
xor ecx, 0x5b6f05e5
xor eax, ecx
add eax, dword [0x1401d8354]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x83ab6e77
mov ecx, 0xffffffff
xor ecx, 0x86bd226
or eax, edx
or ecx, 0x86bd226
mov edx, 0x2a70aaee
xor edx, 0xd58f5511
xor eax, edx
and eax, ecx
sub eax, 0x189d79d7
sub eax, 0x4234b320
add eax, 0x189d79d7
add eax, 0xc7f8a2c1
mov dword [rbp - 0x3c], eax
sub rsp, 0x20
call fcn.1400077a3
mov eax, dword [rbp - 0x3c]
add rsp, 0x20
cmp eax, 0xd76f47d3
je 0x14006f31d
jmp 0x14006f305
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x48], rax
cmp rax, rcx
jge 0x14006f27a
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x18]
mov qword [rdx], 0
sub rsp, 0x20
call fcn.14006eb9b
mov rdx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jne 0x14006f22e
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x60], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14006f0c9
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x60]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.140013580
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jmp 0x14006f22e
mov eax, dword [0x1401d8358]
mov r8d, dword [0x1401d835c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xdb4dbdc6
xor ecx, 0x24b24239
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x48b59c42
xor ecx, 0x36310f15
xor edx, edx
div ecx
and eax, 0x7ab4d021
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x1adfe86e
xor edx, 0x4f66eda
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x1e2986b4
and eax, edx
sub eax, ecx
cmp eax, 0xd86d741
je 0x14006f326
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
mov r8d, dword [0x1401d8360]
mov r9d, dword [0x1401d8364]
xor r9d, 0x7a4cd48c
or r8d, r9d
mov r9d, 0x852a2c90
xor r9d, 0xacba5bab
sub r8d, r9d
sub r8d, 0x5c5327dd
sub r8d, 0x638e3cd3
add r8d, 0x5c5327dd
imul r8d, r8d, 0x2d7d05d7
mov dword [rbp - 0x68], r8d
mov rcx, qword [rcx]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.1400cd260
mov rcx, qword [rbp + 0x20]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x10794d86
je 0x14006f146
mov rax, qword [rbp - 0x48]
mov dl, byte [rbp - 0x61]
mov cl, 1
test dl, 1
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jne 0x14006f1f1
jmp 0x14006f22e
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.1400cd255
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xe4
xor dl, 0xe4
cmp cl, dl
sete dl
and dl, 1
movzx edx, dl
mov r8d, edx
xor edx, edx
sub rdx, r8
sub rax, rdx
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x10]
mov dl, byte [rbp - 0x51]
mov r8, qword [rbp - 0x50]
mov qword [rbp - 0x78], r8
mov byte [rbp - 0x69], dl
mov byte [rcx], 0
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400cd080
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14006f27a
mov al, byte [rbp - 0x69]
mov rdx, qword [rbp + 0x20]
mov cl, 0x52
xor cl, 0x52
mov byte [rdx], al
cmp al, cl
je 0x14006f2f8
mov eax, dword [0x1401d8368]
mov edx, dword [0x1401d836c]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xf09ca56a
xor edx, edx
div ecx
mov ecx, 0xfb084b23
xor ecx, 0xf912bf21
imul eax, ecx
and eax, 0x506b11b8
cmp eax, 0xeb074e5f
jae 0x14006f32f
mov eax, dword [0x1401d8370]
xor eax, dword [0x1401d8374]
sub eax, 0x945fe6a4
add eax, 0xbc0bbbd0
add eax, 0x9eb8b599
add eax, 0xa20285e8
sub eax, 0x9eb8b599
cmp eax, 0xc33f8384
jae 0x14006f32f
jmp 0x14006f305
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x30], rax
jmp 0x14006f01c
lea rsp, [rbp + 0x50]
pop rbp
ret
invalid
pop rax
rcl byte [rsi - 0x510169c], cl
invalid
mov ebx, 0xe9383c4e
cmp cl, ch
jbe 0x14006f320
invalid
cli
cwde
cmpsb byte [rsi], byte [rdi]
jmp 0x14006f146
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.14006624b
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x14006ebd0