Function at 0x1401c1d90
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xc8
mov qword [rsp + 0x60], rcx
call fcn.1401c2188
mov qword [rsp + 0x70], rax
add rax, 0x60
mov qword [rsp + 0x58], rax
mov ecx, 0x18
mov edx, 8
call fcn.140016330
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0xb8]
xor eax, eax
mov edx, eax
call fcn.14002821c
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0xb8]
mov qword [rdx + 8], rax
mov rax, qword [rsp + 0xc0]
mov qword [rdx + 0x10], rax
mov rcx, qword [rcx]
add rcx, 0x20
call fcn.1401bac40
mov rax, qword [rsp + 0x70]
cmp byte [rax + 0x60], 0
jne 0x1401c205f
mov rcx, qword [rsp + 0x60]
call fcn.1401bbae0
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x1401c205f
mov ecx, dword [0x1401fddc8]
mov eax, dword [0x1401fddcc]
sub ecx, 0x88fbc868
add ecx, eax
add ecx, 0x88fbc868
mov eax, ecx
and eax, 0x15bd0a76
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x15bd0a76
or ecx, edx
mov edx, 0x7ba426e
xor edx, 0xf845bd91
xor eax, edx
mov edx, 0x5c47a192
xor edx, 0xa3b85e6d
xor ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x35b2577f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x734c4a3d
xor r8d, 0x8cb3b5c2
xor ecx, r8d
imul ecx, edx
mov r8d, 0x16bd1cc5
xor r8d, 0x230f4bba
mov edx, eax
and edx, r8d
or eax, 0x35b2577f
imul eax, edx
add eax, ecx
add eax, 0x1e8ebc24
cmp eax, 0x2b72f001
jbe 0x1401c2176
mov rcx, qword [rsp + 0x60]
mov eax, dword [0x1401fddd0]
xor eax, 0xb4d391d2
mov edx, dword [0x1401fddd4]
xor edx, 0x35581d65
imul eax, edx
mov r8d, 0xd210c0eb
xor edx, edx
div r8d
mov r8d, 0x7726e7a9
xor edx, edx
div r8d
imul eax, eax, 0xcf00f7f
mov dword [rsp + 0x50], eax
call fcn.1401bd260
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x50]
mov cl, byte [rcx]
mov dl, 0x54
xor dl, 0x54
cmp cl, dl
sete cl
mov byte [rsp + 0x57], cl
cmp eax, 0xc9317ee3
je 0x1401c1ecf
mov al, byte [rsp + 0x57]
test al, 1
jne 0x1401c1f48
jmp 0x1401c205f
mov cx, 0x1da7
xor cx, 0x1a27
call fcn.14006dfa0
mov ecx, eax
mov rax, qword [rsp + 0x58]
mov dword [rsp + 0x4c], ecx
cmp byte [rax], 0
jne 0x1401c205f
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov rdx, qword [rax + 0x20]
lea rcx, [rsp + 0xa8]
call fcn.14008440d
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x40], rcx
mov al, byte [rax]
mov cl, 0x2e
xor cl, 0x2e
cmp al, cl
jne 0x1401c205f
mov rax, qword [rsp + 0x60]
mov rdx, qword [rax]
add rdx, 0x18
lea rcx, [rsp + 0x98]
call fcn.140130a10
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x30], rcx
cmp byte [rax], 0
jne 0x1401c205f
mov ecx, dword [rsp + 0x4c]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x38]
mov qword [rsp + 0x88], r9
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], rax
lea rdx, [rsp + 0x88]
lea r8, [rsp + 0x78]
call fcn.1400a1340
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x1401c205f
mov cl, 0x1c
xor cl, 0x4a
call fcn.14006e1e0
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
je 0x1401c20b5
call fcn.1401bd063
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
cmp word [rax + 0x12], 1
jle 0x1401c20b5
mov rax, qword [rsp + 0x20]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xd4054986
jne 0x1401c20b5
mov rax, qword [rsp + 0x58]
mov byte [rax], 0
call fcn.1401bd080
mov rcx, rax
call fcn.14009f0c0
mov rax, qword [rsp + 0x58]
cmp byte [rax], 0
jne 0x1401c20b5
call fcn.1401bd170
mov eax, dword [0x1401fddd8]
xor edx, edx
div dword [0x1401fdddc]
mov ecx, 0x33375c12
xor ecx, 0xd99cd96
xor eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xd98801fa
add ecx, eax
xor eax, eax
sub eax, ecx
add eax, 0xfec6ffa8
sub eax, 0x2e1ec093
sub eax, 0xfec6ffa8
mov ecx, 0x6d5c596a
xor ecx, 0x581a6696
cmp eax, ecx
jb 0x1401c217f
mov ecx, dword [0x1401fdde0]
mov edx, dword [0x1401fdde4]
mov eax, 0x922a1799
xor eax, 0x5de84642
xor edx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
and edx, edx
mov r8d, 0x79ea091e
xor r8d, 0x8615f6e1
xor edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x9c9ebbf
xor ecx, 0xd8bc5f90
xor eax, ecx
add eax, 0xcffea582
imul eax, eax, 0x17ec340b
cmp eax, 0xf8aca4ef
ja 0x1401c2103
add rsp, 0xc8
ret
in eax, 0x39
xor al, 0x55
jmp 0x1401c1ecf
or ebx, dword [rdi + rsi*8]
test ecx, ebp
jnp 0x1401c2185
invalid
invalid