Function at 0x140197850
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x40], rcx
mov eax, 0x10
mov qword [rbp - 0x38], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp - 0x38]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.14019d7e1
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0x10], rdx
add rdx, 0x60
mov qword [rbp - 0x20], rdx
movabs rdx, 0x1bc15166ce3046a6
movabs r8, 0x1bc15166ce3046a6
xor rdx, r8
mov qword [rax], rdx
mov qword [rax + 8], 0
mov edx, 0x20
sub rsp, 0x20
call fcn.14009d3b0
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp - 8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp], rcx
cmp byte [rax + 0x60], 0
jne 0x140197dea
mov rax, qword [rbp]
mov rcx, qword [rbp - 8]
mov qword [rbp + 0x38], rcx
mov qword [rbp + 0x40], rax
lea rcx, [rbp + 0x38]
sub rsp, 0x20
call fcn.140197e9f
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x48], rcx
mov al, byte [rax]
mov cl, 0x3e
xor cl, 0x3e
cmp al, cl
jne 0x140197dea
mov rcx, qword [rbp - 0x48]
mov rax, rcx
and rax, 0xffffffff80000000
movabs rdx, 0xe3012e6c1b3abe0a
movabs r8, 0x1cfed1939b3abe0a
xor rdx, r8
or rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140197a74
mov eax, dword [0x1401e54a8]
or eax, dword [0x1401e54ac]
mov r8d, 0xffffffff
xor r8d, 0x3027f96d
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x3027f96d
or eax, 0x3027f96d
imul eax, edx
add eax, ecx
mov ecx, 0x300b7f8d
xor ecx, 0x32b4daa5
and eax, ecx
mov ecx, 0xa91c4640
xor edx, edx
div ecx
cmp eax, 0x7a93ca98
ja 0x140197e8d
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401e54b0]
and eax, dword [0x1401e54b4]
add eax, 0xcff7f419
sub eax, 0xa143476e
sub eax, 0xcff7f419
mov edx, eax
and edx, 0xc5a05d15
shl edx, 1
add eax, 0xc5a05d15
sub eax, edx
sub eax, 0x14f59497
mov dword [rbp - 0x4c], eax
mov eax, 0xfe5422fc
xor eax, 0x90edd74d
mov dword [rbp - 0x50], eax
movabs rdx, 0xe3d4f130fec265ba
movabs rax, 0x1c2b0ecf7ec265ba
xor rdx, rax
movabs r8, 0xad4d9a441341c3f8
movabs rax, 0xad4d9a446cbe3c07
xor r8, rax
sub rsp, 0x20
call fcn.14000c499
mov ecx, dword [rbp - 0x50]
mov eax, dword [rbp - 0x4c]
add rsp, 0x20
cmp eax, ecx
je 0x1401979e0
jmp 0x140197dea
mov rax, qword [rbp]
mov rcx, qword [rbp - 8]
mov rdx, qword [rbp - 0x48]
mov dword [rbp + 0x4c], edx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x30], rax
lea rcx, [rbp + 0x28]
sub rsp, 0x20
call fcn.140197f52
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x58], rcx
cmp byte [rax], 0
jne 0x140197dea
mov rcx, qword [rbp - 0x58]
lea rdx, [rbp + 0x4c]
sub rsp, 0x20
call fcn.1400a7d63
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x20]
mov dword [rbp - 0x5c], ecx
cmp byte [rax], 0
jne 0x140197dea
mov eax, dword [rbp - 0x5c]
cmp eax, 0
jne 0x140197ba2
mov rax, qword [rbp]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [0x1401f0538]
mov qword [rcx], rdx
mov rdx, qword [0x1401f0540]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x140197e83
mov rax, qword [rbp]
mov rcx, qword [rax]
movabs rdx, 0x4ea4a9f1cb9f4187
movabs rax, 0xb15b560e3460be78
xor rdx, rax
mov rax, rcx
xor rax, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x29b0c824d9f9acbc
movabs r8, 0xd64f37db26065343
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0xab171cf6ad11c595
movabs rdx, 0x54e8e30952ee3a6a
xor rcx, rdx
xor rax, rcx
cmp rax, 0
je 0x140197e72
jmp 0x140197e83
mov ecx, dword [0x1401e54b8]
mov r8d, dword [0x1401e54bc]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov edx, 0x5b33973e
xor edx, 0x8cff434
mov eax, ecx
and eax, edx
xor ecx, 0x53fc630a
or eax, ecx
xor eax, 0x761a4a65
mov r8d, 0xffffffff
xor r8d, 0xd4d99147
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xd4d99147
or eax, 0xd4d99147
imul eax, edx
add eax, ecx
cmp eax, 0x146601f1
je 0x140197e96
mov rax, qword [rbp]
mov rcx, qword [rbp - 8]
mov edx, dword [0x1401e54c0]
mov r10d, dword [0x1401e54c4]
mov r8d, 0x5f964672
xor r8d, 0x4199acad
xor r10d, r8d
mov r11d, r10d
xor r11d, 0xffffffff
mov r9d, edx
and r9d, r11d
mov r8d, edx
or r8d, r11d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, edx
and r9d, r10d
or edx, r10d
imul edx, r9d
add edx, r8d
add edx, 0x6b28770c
sub edx, 0x25505e72
sub edx, 0x6b28770c
xor r8d, r8d
sub r8d, edx
mov edx, 0xc0dc675d
xor edx, 0xc0dc675d
mov r9d, 0xa4281b16
xor r9d, 0xbe0e9fd
sub edx, r9d
add r8d, edx
xor edx, edx
sub edx, r8d
imul edx, edx, 0x1b7e9bb8
mov dword [rbp - 0x74], edx
mov qword [rbp + 8], rcx
mov qword [rbp + 0x10], rax
lea rcx, [rbp + 0x18]
lea rdx, [rbp + 8]
sub rsp, 0x20
call fcn.140197f9a
mov rcx, qword [rbp - 0x20]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x70], rdx
mov rdx, qword [rbp + 0x20]
mov qword [rbp - 0x68], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x5d], cl
cmp eax, 0xbf1d1db2
je 0x140197e96
mov al, byte [rbp - 0x5d]
test al, 1
jne 0x140197d17
jmp 0x140197db0
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp - 0x68]
mov r8, qword [rbp - 0x70]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401980eb
mov rax, qword [rbp - 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140197db0
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x140197d82
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140197d82
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp]
cmp rax, 0
je 0x140197e83
mov rcx, qword [rbp]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
je 0x140197e72
jmp 0x140197e83
mov rax, qword [rbp - 0x68]
cmp rax, 0
je 0x140197dea
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140197dea
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp]
cmp rax, 0
je 0x140197e83
mov rax, qword [rbp]
mov rcx, qword [rax]
movabs rdx, 0x6ca98a87d5780d82
movabs rax, 0x2ca98a87d5780d82
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
and rcx, rdx
movabs rdx, 0xbcfbce0f60d62888
movabs r8, 0x430431f09f29d777
xor rdx, r8
xor rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0xa11cb8e7c520c05e
movabs r8, 0x5ee347183adf3fa1
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jne 0x140197e83
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp - 0x40]
lea rsp, [rbp + 0x50]
pop rbp
ret
sbb esp, ebp
rol byte [0x14014c97f], 0xff
xchg esi, eax
shl cl, 1
adc al, 0xe9
invalid