Function at 0x140169400
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xf0
lea rbp, [rsp + 0x80]
mov dword [rbp - 0x44], r9d
mov qword [rbp - 0x40], r8
mov qword [rbp - 8], rdx
mov qword [rbp + 0x10], rcx
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x10], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x38], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1401a68de
add rsp, 0x20
mov qword [rbp + 8], rax
add rax, 0x50
mov qword [rbp - 0x18], rax
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x60], 0
mov ecx, 0x68
mov edx, 8
sub rsp, 0x20
call fcn.1400132f0
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x10]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 8]
mov qword [rbp], r8
mov byte [r8], 1
mov r8, qword [rcx + 0x48]
mov qword [rdx], r8
mov rcx, qword [rcx + 0x50]
mov qword [rdx + 8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x30], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x38], rax
lea rcx, [rbp + 0x40]
lea r8, [rbp + 0x30]
sub rsp, 0x20
call fcn.14009bfe0
mov rdx, qword [rbp]
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x10]
add rsp, 0x20
mov r8, qword [rbp + 0x40]
mov qword [rdx + 0x48], r8
mov r8, qword [rbp + 0x48]
mov qword [rdx + 0x50], r8
mov r8b, byte [rax + 0x50]
mov r9b, 0xca
xor r9b, 0xca
mov dl, 1
xor eax, eax
cmp r8b, r9b
mov byte [rbp + 0x1f], dl
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
jne 0x14016978a
mov rax, qword [rbp + 0x10]
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x50], rax
cmp rax, 0
jne 0x14016969b
mov rdx, qword [rbp + 0x10]
sub rsp, 0x20
xor eax, eax
mov r8b, al
lea rcx, [rbp + 0x68]
call fcn.140168fb4
mov r8, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x10]
add rsp, 0x20
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1f], dl
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
jne 0x14016978a
mov ecx, dword [0x140259ea0]
or ecx, dword [0x140259ea4]
mov eax, 0xffffffff
xor eax, 0x1e7a4127
mov edx, 0xb1e65149
xor edx, 0xb1e65149
mov r8d, 0xd59040a6
xor r8d, 0xd59040a7
sub edx, r8d
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xb716f658
xor edx, 0x1dca041b
mov r8d, 0x59fa9aea
xor r8d, 0xa6056515
xor edx, r8d
or eax, edx
mov edx, 0xaadcf243
and edx, 0xaadcf243
mov r8d, 0xbfe995f9
xor r8d, 0x40166a06
xor edx, r8d
and ecx, edx
mov edx, 0x520b438c
xor edx, 0xadf4bc73
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x53613ebe
xor ecx, 0x19ecd4da
add eax, ecx
cmp eax, 0x1c162506
je 0x140169976
mov eax, dword [0x140259ea8]
mov edx, dword [0x140259eac]
mov ecx, eax
xor ecx, edx
mov r8d, 0x1dfcb50d
xor r8d, 0xe2034af2
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
xor eax, 0xfdc1d35a
sub eax, 0xb628f017
add eax, 0xde0a2218
add eax, 0xb628f017
or eax, 0x51b3b3db
mov rcx, qword [rbp + 0x68]
mov qword [rbp - 0x58], rcx
mov qword [rbp + 0x68], 0
cmp eax, 0x770081f2
jbe 0x140169633
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x60], rax
jmp 0x1401696e6
mov rdx, qword [rbp - 0x50]
sub rsp, 0x20
xor eax, eax
mov r8b, al
lea rcx, [rbp + 0x60]
call fcn.140168fb4
mov r8, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x10]
add rsp, 0x20
mov dl, 1
xor eax, eax
cmp byte [r8], 0
mov byte [rbp + 0x1f], dl
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
jne 0x14016978a
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x60], 0
mov qword [rbp - 0x60], rax
mov r8, qword [rbp]
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x28]
mov rax, qword [rbp - 8]
mov r9, qword [rbp - 0x40]
mov r10, qword [rbp + 0x10]
mov r11, qword [rbp - 0x60]
mov qword [r8 + 0x38], r11
mov qword [r8 + 0x40], r10
mov r10, qword [r9]
mov qword [rbp + 0x50], r10
mov r10, qword [r9 + 8]
mov qword [rbp + 0x58], r10
mov qword [r9], 0
mov qword [r9 + 8], 0
mov r9, qword [rbp + 0x50]
mov qword [r8 + 0x58], r9
mov r9, qword [rbp + 0x58]
mov qword [r8 + 0x60], r9
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov r8, qword [rbp - 0x38]
mov edx, dword [rbp - 0x44]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp]
add rsp, 0x20
mov r9, qword [r8]
mov r8, qword [r8 + 8]
mov qword [rax + 0x28], r9
mov qword [rax + 0x30], r8
mov dword [rax + 0x24], edx
mov dword [rax + 0x20], 0xffffffff
mov dl, byte [rcx]
xor ecx, ecx
mov byte [rbp + 0x1f], dl
mov qword [rbp + 0x20], rcx
mov qword [rbp + 0x28], rax
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x40]
mov r8b, byte [rbp + 0x1f]
mov r9, qword [rbp + 0x20]
mov r10, qword [rbp + 0x28]
mov qword [rbp - 0x78], r10
mov qword [rbp - 0x70], r9
mov byte [rbp - 0x61], 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.14015ec70
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140169842
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.1401688c5
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xa1
xor cl, 0xa1
cmp al, cl
jne 0x140169842
mov rcx, qword [rbp + 0x60]
sub rsp, 0x20
call fcn.1401688c5
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140169842
mov rcx, qword [rbp + 0x68]
sub rsp, 0x20
call fcn.1401688c5
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140169842
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x61]
mov byte [rax], cl
mov edx, dword [0x140259eb0]
mov ecx, dword [0x140259eb4]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, ecx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xbafca351
xor edx, 0x45035cae
xor ecx, edx
or eax, ecx
mov ecx, 0x5a9a67e1
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xb6748fdf
xor eax, 0x7a30da4b
or ecx, eax
mov edx, 0x40694f51
xor edx, 0xa42094db
mov eax, ecx
and eax, edx
or ecx, 0xe449db8a
add eax, ecx
cmp eax, 0xfd9507aa
jae 0x14016997f
mov edx, dword [0x140259eb8]
mov eax, dword [0x140259ebc]
mov ecx, edx
xor ecx, 0xffffffff
mov r8d, 0x3669b444
xor r8d, 0xc9964bbb
xor edx, r8d
or ecx, edx
and eax, eax
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xb51d0e22
xor eax, 0xe90df3a4
add ecx, eax
sub ecx, 0x22222645
sub ecx, 0x5c10fd86
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xa340d787
mov edx, 0xffffffff
xor edx, 0xa340d787
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x6fc9fab6
xor ecx, 0x90360549
mov edx, eax
xor edx, ecx
and edx, 0x688085e2
mov r8d, 0xffffffff
xor r8d, 0x688085e2
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x688085e2
mov r8d, 0x8ceb3fc3
xor r8d, 0xe46bba21
or eax, r8d
imul eax, edx
add eax, ecx
cmp eax, 0x966caf91
je 0x1401698a8
mov rax, qword [rbp - 0x78]
lea rsp, [rbp + 0x70]
pop rbp
ret
movabs byte [0x64fffffcb4e96443], al
sbb al, 0xdb
sbb al, 0xdb
xor eax, 0xffff20e9
dec dword [rdi]
invalid