Function at 0x14001c190
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x38], rcx
mov dword [rsp + 0x30], 0
mov eax, dword [0x1400fdde0]
sub eax, dword [0x1400fdde4]
and eax, 0x27e1467a
imul eax, eax, 0x57fa10cb
sub eax, 0x60aeaeb2
cmp eax, 0xcc31fa06
je 0x14001c448
mov eax, dword [0x1400fdde8]
and eax, dword [0x1400fddec]
mov ecx, 0xc7b1d5f
xor edx, edx
div ecx
or eax, 0x70c049f3
and eax, 0x7ced0eff
mov ecx, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
cmp ecx, dword [rdx + 0xd0]
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0xecd55e86
ja 0x14001c1c8
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14001c219
jmp 0x14001c3da
mov eax, dword [0x1400fddf0]
and eax, dword [0x1400fddf4]
add eax, 0x5c5eeec
add eax, 0x7ded5337
imul eax, eax, 0xbb485788
cmp eax, 0x60b8873c
jbe 0x14001c44d
mov eax, dword [0x1400fddf8]
xor eax, dword [0x1400fddfc]
xor eax, 0x8cc531be
or eax, 0x83f94bc5
xor eax, 0x5b656d2e
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x58]
movsxd rcx, dword [rsp + 0x30]
mov rax, qword [rax + rcx*8]
mov rax, qword [rax]
mov rax, qword [rax + 0x40]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x58]
movsxd rdx, dword [rsp + 0x30]
mov rcx, qword [rcx + rdx*8]
mov rcx, qword [rcx + 8]
mov rdx, qword [rsp + 0x38]
call rax
mov ecx, eax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x34], ecx
cmp dword [rsp + 0x34], 1
setne cl
mov byte [rsp + 0x2e], cl
cmp eax, 0x6ae1f8b9
je 0x14001c44d
mov al, byte [rsp + 0x2e]
test al, 1
jne 0x14001c2c7
jmp 0x14001c322
mov eax, dword [0x1400fde00]
or eax, dword [0x1400fde04]
or eax, 0x8b068664
imul eax, eax, 0xb95fa43f
and eax, 0x63855133
cmp eax, 0x55ee83d8
je 0x14001c48c
mov eax, dword [0x1400fde08]
and eax, dword [0x1400fde0c]
imul eax, eax, 0xa0a3ceb3
and eax, 0x9949b9a1
add eax, 0x1d68830a
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x44], ecx
cmp eax, 0xd09658d4
ja 0x14001c2ee
jmp 0x14001c3e2
mov eax, dword [0x1400fde10]
imul eax, dword [0x1400fde14]
or eax, 0xa48a79ea
imul eax, eax, 0xddd15682
or eax, 0x6d7380e4
cmp eax, 0x8a5f650c
je 0x14001c499
mov eax, dword [0x1400fde18]
sub eax, dword [str._MRC]
mov ecx, 0x21ac90e4
xor edx, edx
div ecx
mov ecx, 0x19e47626
xor edx, edx
div ecx
and eax, 0x79201c94
cmp eax, 0xab3ab583
ja 0x14001c34a
jmp 0x14001c37d
mov eax, dword [0x1400fde20]
add eax, dword [0x1400fde24]
sub eax, 0x91ca2ce8
sub eax, 0x9f7311a8
sub eax, 0x5b259320
cmp eax, 0xa89d3792
je 0x14001c49e
mov eax, dword [0x1400fde28]
xor eax, dword [0x1400fde2c]
imul eax, eax, 0xb9a2a193
xor eax, 0xe724184a
sub eax, 0xd58fabe9
mov ecx, dword [rsp + 0x30]
add ecx, 1
mov dword [rsp + 0x30], ecx
cmp eax, 0xfeac86b1
je 0x14001c3a3
jmp 0x14001c1a1
mov dword [rsp + 0x44], 0
mov eax, dword [0x1400fde30]
sub eax, dword [0x1400fde34]
mov ecx, 0x1fc265af
xor edx, edx
div ecx
xor eax, 0xc12a36df
sub eax, 0x7c2c80f2
cmp eax, 0xaaabbde1
jae 0x14001c4ae
mov eax, dword [0x1400fde38]
imul eax, dword [0x1400fde3c]
mov ecx, 0xbd13645d
xor edx, edx
div ecx
xor eax, 0x838906cd
add eax, 0x8f3c1c51
mov ecx, dword [rsp + 0x44]
mov dword [rsp + 0x24], ecx
cmp eax, 0x20e9b3a4
ja 0x14001c40c
mov eax, dword [rsp + 0x24]
add rsp, 0x48
ret
jmp 0x14001c1c8
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x58]
movsxd rcx, dword [rsp + 0x30]
mov rax, qword [rax + rcx*8]
mov rax, qword [rax]
mov rax, qword [rax + 0x40]
mov rcx, qword [rsp + 0x38]
mov rcx, qword [rcx + 0x58]
movsxd rdx, dword [rsp + 0x30]
mov rcx, qword [rcx + rdx*8]
mov rcx, qword [rcx + 8]
mov rdx, qword [rsp + 0x38]
call rax
mov dword [rsp + 0x34], eax
jmp 0x14001c240
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x44], eax
jmp 0x14001c2ee
jmp 0x14001c34a
mov eax, dword [rsp + 0x30]
add eax, 1
mov dword [rsp + 0x30], eax
jmp 0x14001c3a3
jmp 0x14001c40c