Function at 0x14005d640
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x38], rcx
mov rax, qword [rcx + 8]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x14005d7f5
mov eax, dword [0x1401d79d8]
imul eax, dword [0x1401d79dc]
imul eax, eax, 0x206f4ea3
add eax, 0x71fb82d0
mov ecx, 0xb80c8e51
xor edx, edx
div ecx
mov ecx, 0x323936ea
xor ecx, 0x2813a4f
cmp eax, ecx
jae 0x14005d9ef
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1401d79e0]
or eax, dword [0x1401d79e4]
mov edx, 0x9730294c
xor edx, 0x89eaf5af
and eax, edx
imul eax, eax, 0x3e781483
sub eax, 0x41e978b3
mov rcx, qword [rcx]
mov rdx, rcx
add rdx, 1
xor rcx, 0xffffffffffffffff
movabs r8, 0xebaf481333cd7334
movabs r9, 0xabaf481333cd7334
xor r8, r9
or rcx, r8
add rcx, rdx
movabs rdx, 0xa4570c3a66fdb4aa
movabs r8, 0xa4570c3a66fdb4aa
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x97299d4e
jbe 0x14005d690
mov al, byte [rsp + 0x37]
test al, 1
jne 0x14005d721
jmp 0x14005d7f5
mov eax, dword [0x1401d79e8]
add eax, dword [0x1401d79ec]
xor eax, 0x6aa60281
mov ecx, 0x4e539f46
xor ecx, 0x616bdbf1
add eax, ecx
imul eax, eax, 0xabc191a9
cmp eax, 0x7796613
jbe 0x14005d9f8
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1401d79f0]
mov edx, 0x43a9e382
xor edx, 0x7ed148cd
xor eax, edx
imul eax, dword [0x1401d79f4]
mov edx, 0xf69abb97
xor edx, 0xfb3b35f1
sub eax, edx
mov edx, 0x2a1d46ab
xor edx, 0xd5e2b954
mov r8d, eax
xor r8d, edx
and r8d, 0x6bd4d088
mov r9d, 0xc9aead5
xor r9d, 0x674e3a5d
mov edx, 0x1c6ea1ed
xor edx, 0xe3915e12
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x6bd4d088
or eax, 0x6bd4d088
imul eax, r8d
add eax, edx
mov r8d, 0xfbe6bf7b
xor edx, edx
div r8d
mov dword [rsp + 0x30], eax
call fcn.14000eb2e
mov eax, dword [rsp + 0x30]
cmp eax, 0xd90afbd2
je 0x14005d750
jmp 0x14005d7f5
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x28], rax
cmp rax, 0
je 0x14005d9ea
mov r8d, dword [0x1401d79f8]
imul r8d, dword [0x1401d79fc]
or r8d, 0xd3d374e1
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x67cd442d
mov edx, 0x9efe5760
xor edx, 0xf933134d
mov ecx, 0x64417164
xor ecx, 0x9bbe8e9b
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x678018aa
and ecx, 0x67cd442d
and edx, 0x678018aa
or eax, r8d
or ecx, edx
xor eax, ecx
add eax, 0x30ab8a30
mov ecx, 0xde1eb2f4
xor ecx, 0x69762c91
cmp eax, ecx
je 0x14005da01
mov eax, dword [0x1401d7a00]
mov ecx, dword [0x1401d7a04]
mov edx, 0xe9c2adc0
xor edx, 0x1b50cdde
xor ecx, edx
xor edx, edx
div ecx
or eax, 0x933fdd9f
mov ecx, 0xaef2c65a
xor ecx, 0x27f0f9d8
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x28]
add eax, 0x270d438a
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rsp + 0x27], cl
cmp eax, 0xfd447570
je 0x14005d87f
mov al, byte [rsp + 0x27]
test al, 1
jne 0x14005d8ee
jmp 0x14005d9ea
mov eax, dword [0x1401d7a08]
xor eax, 0x32d14117
mov ecx, dword [str.oUE]
xor ecx, 0x2beb15b7
imul eax, ecx
mov edx, 0x96f6e736
xor edx, 0xa9cb33b8
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0x3f3dd48e
and eax, ecx
or eax, 0x320bc08c
mov ecx, 0xffc2cbf3
xor ecx, 0x527a68f1
add eax, ecx
mov ecx, 0x688d0435
xor ecx, 0x762647b1
cmp eax, ecx
jbe 0x14005da0a
mov rcx, qword [rsp + 0x28]
mov edx, dword [0x1401d7a10]
xor edx, 0xcf604892
mov r9d, dword [str.C_]
mov r8d, 0x6e10b508
xor r8d, 0x91ef4af7
mov eax, edx
xor eax, r8d
mov r8d, r9d
and r8d, eax
mov r10d, r9d
xor r10d, 0xffffffff
mov eax, edx
and eax, r10d
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
sub edx, 0x9de02be7
and edx, 0x30c4d9a9
mov eax, edx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0x60e0b69e
or r8d, 0x60e0b69e
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
or edx, 0x60e0b69e
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov dword [rsp + 0x20], eax
call fcn.14000eb2e
mov eax, dword [rsp + 0x20]
cmp eax, 0x9a224358
je 0x14005da0a
jmp 0x14005d9ea
add rsp, 0x48
ret
fimul word [rbx - 0x671603ff]
cld
invalid
stosb byte [rdi], al
invalid
stosb byte [rdi], al
invalid
add esi, dword [rsi + 0x33e9d847]
invalid