Function at 0x140198210
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xf0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x38], rcx
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.14019d7e1
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp], rax
add rax, 0x60
mov qword [rbp - 0x10], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov qword [rbp + 0x60], 0
lea rax, [rbp + 0x60]
add rax, 8
mov qword [rbp - 8], rax
mov qword [rbp + 0x68], 0
lea rcx, [rbp + 0x48]
mov edx, 0x101
sub rsp, 0x20
call fcn.14009d3b0
mov rax, qword [rbp]
add rsp, 0x20
mov rcx, qword [rbp + 0x48]
mov qword [rbp + 8], rcx
mov rcx, qword [rbp + 0x50]
mov qword [rbp + 0x10], rcx
cmp byte [rax + 0x60], 0
jne 0x1401987b6
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 8]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140197e9f
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x40], rcx
cmp byte [rax], 0
jne 0x1401987b6
mov rax, qword [rbp - 0x40]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140198343
mov rcx, qword [rbp - 0x40]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x1401987b6
mov ecx, dword [0x1401e54c8]
mov eax, dword [0x1401e54cc]
xor eax, 0x8f124061
sub ecx, eax
mov eax, ecx
and eax, 0x479d0d78
mov edx, 0xf7f1829b
xor edx, 0xb06c8fe3
or ecx, edx
add eax, ecx
imul eax, eax, 0x7547c994
mov edx, eax
xor edx, 0xffffffff
and edx, 0x6a1ed703
mov r8d, 0xffffffff
xor r8d, 0x6a1ed703
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x8b296dd9
xor r8d, 0xe137bada
mov edx, eax
and edx, r8d
or eax, 0x6a1ed703
imul eax, edx
add eax, ecx
cmp eax, 0x519cc436
jae 0x14019892d
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov rdx, qword [rbp - 0x40]
mov r9d, dword [0x1401e54d0]
xor r9d, 0x2f5de948
mov r10d, dword [0x1401e54d4]
mov r8d, r10d
and r8d, r9d
mov r11d, 0xf270e0b0
xor r11d, 0xd8f1f4f
xor r8d, r11d
add r9d, r10d
add r9d, 1
add r9d, r8d
mov r8d, 0x389bef14
xor r8d, 0xb14ce5b6
add r9d, r8d
mov r8d, r9d
xor r8d, 0xffffffff
mov r10d, r9d
xor r10d, 0xffffffff
or r8d, r10d
xor r8d, 0xffffffff
mov r10d, 0x3c7c0c73
xor r10d, 0x13fd553d
mov r11d, 0xb60fd39d
xor r11d, 0x49f02c62
xor r10d, r11d
or r8d, r10d
mov r10d, 0x2f81594e
and r10d, 0x2f81594e
xor r10d, 0xffffffff
xor r9d, 0xffffffff
mov r11d, 0xbfa9883a
xor r11d, 0x405677c5
xor r10d, r11d
or r9d, r10d
xor r8d, 0xffffffff
xor r9d, 0xffffffff
or r8d, r9d
mov r9d, 0x21e39e2e
xor r9d, 0xf86d4ae8
or r8d, r9d
mov dword [rbp - 0x54], r8d
mov dword [rbp + 0x5c], edx
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x40], rax
lea rcx, [rbp + 0x38]
sub rsp, 0x20
call fcn.140197f52
mov rcx, qword [rbp - 0x10]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x54]
mov qword [rbp - 0x50], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0xa24cc86b
je 0x14019892d
mov al, byte [rbp - 0x41]
test al, 1
jne 0x1401984d4
jmp 0x1401987b6
mov rcx, qword [rbp - 0x50]
lea rdx, [rbp + 0x5c]
sub rsp, 0x20
call fcn.1400a174c
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x10]
mov dword [rbp - 0x58], ecx
mov al, byte [rax]
mov cl, 0xbb
xor cl, 0xbb
cmp al, cl
jne 0x1401987b6
mov eax, dword [rbp - 0x58]
cmp eax, 0
jne 0x140198554
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp - 0x18]
mov rdx, qword [0x1401f0538]
mov qword [rcx], rdx
mov rdx, qword [0x1401f0540]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x140198923
mov rcx, qword [rbp + 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
je 0x140198912
jmp 0x140198923
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
lea rcx, [rbp + 0x28]
lea rdx, [rbp + 0x18]
sub rsp, 0x20
call fcn.140197f9a
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov rcx, qword [rbp + 0x28]
mov qword [rbp - 0x68], rcx
mov rcx, qword [rbp + 0x30]
mov qword [rbp - 0x60], rcx
mov al, byte [rax]
mov cl, 0xe6
xor cl, 0xe6
cmp al, cl
jne 0x14019874c
mov rdx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x68]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x60]
sub rsp, 0x20
call fcn.1401980eb
mov rax, qword [rbp - 0x10]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14019874c
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x60]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x68]
mov qword [rax + 8], rcx
lea rcx, [rbp + 0x60]
sub rsp, 0x20
call fcn.140010368
mov rax, qword [rbp - 0x60]
add rsp, 0x20
cmp rax, 0
je 0x14019862b
mov rcx, qword [rbp - 0x60]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14019862b
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x1401986ee
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rdx, 0x8e7707f280b047ea
movabs rcx, 0xce7707f280b047ea
xor rdx, rcx
movabs rcx, 0x4994f9b1c6aeece1
movabs r8, 0xb66b064e3951131e
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0xeb8cf7b5495db119
xor rcx, r8
or rax, rdx
movabs rdx, 0xeb8cf7b5495db119
or rcx, rdx
movabs rdx, 0x8bf0986dd67c7cf7
movabs r8, 0x740f679229838308
xor rdx, r8
xor rax, rdx
and rax, rcx
movabs rcx, 0xa626a74eb711ae58
movabs rdx, 0xa626a74eb711ae58
xor rcx, rdx
cmp rax, rcx
jne 0x1401986ee
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x10]
cmp rax, 0
je 0x140198923
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xf0cf30bc24b896b5
movabs r8, 0xf30cf43db47694a
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
je 0x140198912
jmp 0x140198923
mov rax, qword [rbp - 0x60]
cmp rax, 0
je 0x1401987b6
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax]
movabs rdx, 0xa153e6132ac0c978
movabs rax, 0xe153e6132ac0c978
xor rdx, rax
movabs rax, 0x23d7c8e07a92230b
movabs r8, 0xdc28371f856ddcf4
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401987b6
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp - 8]
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x140198826
mov rax, qword [rbp - 0x78]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x511ba0b3f1a8b226
movabs r8, 0x111ba0b3f1a8b226
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x140198826
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov eax, dword [0x1401e54d8]
xor edx, edx
div dword [0x1401e54dc]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x43e292ae
add ecx, eax
mov eax, 0xfc16a13e
xor eax, 0xfc16a13e
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xf99c60dc
xor edx, 0x44b7d91f
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xbd2bb9c3
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xbd2bb9c3
or eax, 0xbd2bb9c3
imul eax, edx
add eax, ecx
and eax, 0x73dbc888
cmp eax, 0xb543cdb9
jae 0x140198936
mov rcx, qword [rbp + 0x10]
mov eax, dword [0x1401e54e0]
xor eax, 0x53fb43f6
mov edx, dword [0x1401e54e4]
mov r8d, 0x46c9f43f
xor r8d, 0x2d48d725
xor edx, r8d
xor eax, edx
mov r8d, 0xc40b8684
xor edx, edx
div r8d
and eax, 0xb8d23ccc
xor eax, 0x455c8efd
cmp rcx, 0
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0x75663546
je 0x140198896
mov al, byte [rbp - 0x79]
test al, 1
jne 0x140198923
jmp 0x1401988f7
mov rcx, qword [rbp + 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140198923
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp - 0x38]
lea rsp, [rbp + 0x70]
pop rbp
ret
in al, dx
mov ebx, 0x83e93a24
cli
invalid
invalid