Function at 0x1400c1c20
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x38], rcx
call fcn.1400d5092
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
mov rax, qword [rcx]
mov qword [rsp + 0x68], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x78]
lea rdx, [rsp + 0x68]
call fcn.1400c5270
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x50], rcx
cmp byte [rax + 0x60], 0
jne 0x1400c1ca4
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x58]
call fcn.1400a78d0
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov eax, dword [0x1401f6d20]
mov edx, dword [0x1401f6d24]
xor eax, 0xffffffff
mov ecx, 0xe5e0adbe
xor ecx, 0x1a1f5241
xor edx, ecx
mov ecx, 0x4d5633d0
xor ecx, 0x8d1a519
mov r8d, 0xc40bfcfc
xor r8d, 0x3bf40303
xor ecx, r8d
or eax, edx
or ecx, 0x458796c9
xor eax, 0xffffffff
and eax, ecx
imul eax, eax, 0xd353e07e
mov ecx, 0xd80e3659
xor ecx, 0x2d31ac08
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0x5b74ad10
xor r8d, 0x5372a33d
mov eax, 0x3731cc7c
xor eax, 0xc8ce3383
xor r8d, eax
mov edx, 0x4def2556
xor edx, 0xd5d190e3
mov eax, 0xb8509c7
xor eax, 0xf47af638
xor edx, eax
mov r9d, 0xfb261af3
xor r9d, 0x6318af46
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0x59b326ee
xor r10d, 0xc18d935b
mov r9d, r8d
and r9d, r10d
mov r10d, 0x731f0271
xor r10d, 0x7b190c5c
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x983eb5b5
and ecx, edx
or eax, ecx
mov ecx, 0x1df56839
xor ecx, 0x50aa9ff4
cmp eax, ecx
je 0x1400c1dfa
mov eax, dword [0x1401f6d28]
add eax, dword [0x1401f6d2c]
xor eax, 0xcf47920f
or eax, 0x21fea087
mov ecx, 0xbc87ce15
xor ecx, 0x896f553e
sub eax, ecx
sub eax, 0x8f0c1615
mov ecx, 0x3f0eeff0
xor ecx, 0xae674db
add eax, ecx
mov ecx, 0xcf66946c
xor ecx, 0xa698e568
cmp eax, ecx
jbe 0x1400c1da5
mov rax, qword [rsp + 0x28]
add rsp, 0x88
ret
or dword [rbx - 0x1e], ecx
fsubp st(1)
movabs byte [0x4850ec8348ffffff], al
sub rsp, 0x50
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x40], rcx
xor eax, eax
cmp rcx, qword [rdx]
mov byte [rsp + 0x4f], al
jne 0x1400c1efa
mov rcx, qword [rsp + 0x40]
movabs rdx, 0x7d64a1f67b5f3aa6
movabs rax, 0x7d64a1f67b5f3aa6
xor rdx, rax
mov al, 1
cmp rcx, rdx
mov byte [rsp + 0x4f], al
je 0x1400c1efa
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov rdx, qword [rdx + 8]
add rdx, 8
mov qword [rsp + 0x10], rdx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x18], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rsp + 0x20], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov qword [rsp], rcx
xor eax, eax
cmp rcx, rdx
mov dword [rsp + 0xc], eax
je 0x1400c1eec
mov rcx, qword [rsp]
mov rdx, qword [rsp + 0x18]
mov rax, qword [rsp + 0x10]
movzx eax, byte [rax + rcx]
movzx r8d, byte [rdx + rcx]
mov edx, eax
xor edx, 0xffffffff
and edx, r8d
xor r8d, 0xffffffff
and eax, r8d
sub eax, edx
add rcx, 1
cmp eax, 0
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0xc], eax
je 0x1400c1e91
mov eax, dword [rsp + 0xc]
cmp eax, 0
sete al
mov byte [rsp + 0x4f], al
mov al, byte [rsp + 0x4f]
and al, 1
movzx eax, al
add rsp, 0x50
ret