Function at 0x14005f900
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x48], rcx
xor eax, eax
cmp rcx, 0
mov byte [rsp + 0x57], al
je 0x14005fc06
mov eax, dword [0x1401cac28]
mov r8d, dword [0x1401cac2c]
xor r8d, 0xb3084511
mov edx, 0x59449bc2
xor edx, 0xa6bb643d
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0x7e92e046
mov ecx, 0x54dad01a
xor edx, edx
div ecx
add eax, 0x5fe6a966
cmp eax, 0x76631bc1
jae 0x14005fd4d
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x1401cac30]
xor edx, edx
div dword [0x1401cac34]
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xc2a73c57
xor r8d, 0x344df33a
and r8d, edx
mov r9d, 0xc20b3ad4
xor r9d, 0x34e1f5b9
mov edx, 0x103c5adb
xor edx, 0xefc3a524
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xf6eacf6d
or eax, 0xf6eacf6d
imul eax, r8d
add eax, edx
mov r8d, 0x806970
xor r8d, 0xff7f968f
mov edx, eax
xor edx, r8d
and edx, 0x3949c9ff
mov r8d, 0xffffffff
xor r8d, 0x3949c9ff
and eax, r8d
sub eax, edx
and eax, 0x688a09f0
mov rdx, rcx
add rdx, 0xfffffffffffffff0
mov qword [rsp + 0x30], rdx
mov rcx, qword [rcx - 0x10]
mov qword [rsp + 0x38], rcx
movabs rdx, 0x85201d4dac70994c
movabs r8, 0x85201d4dac709943
xor rdx, r8
cmp rcx, rdx
seta cl
mov byte [rsp + 0x47], cl
cmp eax, 0x5e30bd31
jae 0x14005f97b
mov al, byte [rsp + 0x47]
test al, 1
jne 0x14005fa5d
jmp 0x14005fab6
mov rdx, qword [rsp + 0x38]
mov rcx, rdx
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x28], rcx
xor rdx, rcx
test rcx, rcx
setns al
or rcx, rdx
sets cl
add al, cl
inc al
test al, 1
jne 0x14005fa8e
jmp 0x14005fa9e
call fcn.140008024
xor eax, eax
mov byte [rsp + 0x57], al
jmp 0x14005fc06
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
xor eax, eax
mov byte [rsp + 0x57], al
jmp 0x14005fc06
mov ecx, dword [0x1401cac38]
sub ecx, dword [0x1401cac3c]
sub ecx, 0xa0ab5a
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5b173c17
or eax, edx
mov edx, 0x5b173c17
and edx, 0x5b173c17
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
mov edx, 0xa7fe1a7f
xor edx, 0x5801e580
xor eax, edx
mov edx, 0x168adab5
xor edx, 0xe975254a
xor ecx, edx
or eax, ecx
mov ecx, 0xc062605d
xor ecx, 0xac7e2b46
and eax, ecx
cmp eax, 0xba95f486
je 0x14005fd56
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401cac40]
imul eax, dword [0x1401cac44]
imul eax, eax, 0x770f42c3
mov r8d, 0xba89b532
xor r8d, 0x45764acd
mov edx, eax
xor edx, r8d
xor eax, 0xffffffff
or edx, eax
mov eax, 0xffffffff
xor eax, 0x52625857
mov r8d, 0xffffffff
xor r8d, 0x52625857
or eax, r8d
and edx, eax
xor edx, 0xffffffff
mov r8d, 0x45773145
xor r8d, 0xba88ceba
mov eax, edx
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, 0xa4fcf767
and edx, 0xa4fcf767
mov r8d, 0xb7080651
xor r8d, 0x48f7f9ae
xor edx, r8d
and eax, edx
xor eax, 0xffffffff
mov rcx, qword [rcx + 8]
movabs rdx, 0x2905503596da53fa
movabs r8, 0x2905503596da53fa
xor rdx, r8
cmp rcx, rdx
setg cl
mov byte [rsp + 0x27], cl
cmp eax, 0x7226349d
je 0x14005fd56
mov cl, byte [rsp + 0x27]
mov al, 1
test cl, 1
mov byte [rsp + 0x57], al
jne 0x14005fbf6
jmp 0x14005fc06
mov rcx, qword [rsp + 0x30]
call fcn.14000b220
mov al, 1
mov byte [rsp + 0x57], al
mov al, byte [rsp + 0x57]
mov byte [rsp + 0x26], al
mov eax, dword [0x1401cac48]
mov edx, dword [0x1401cac4c]
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
xor edx, 0xffffffff
and eax, edx
or ecx, eax
mov r8d, 0xffffffff
xor r8d, 0xed3a0cf2
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0x35f5612f
xor r8d, 0xca0a9ed0
xor eax, r8d
imul eax, edx
mov r8d, 0xa6bf7580
xor r8d, 0x4b857972
mov edx, ecx
and edx, r8d
or ecx, 0xed3a0cf2
imul ecx, edx
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xe74b17aa
mov eax, ecx
and eax, edx
mov r8d, 0xa6687c97
xor r8d, 0x41236b3d
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x871e6fdc
xor edx, 0xb287fe85
mov r8d, 0x29cd377f
xor r8d, 0xd632c880
xor edx, r8d
or eax, edx
mov edx, 0xffffffff
xor edx, 0x35999159
mov r8d, 0xffffffff
xor r8d, 0x35999159
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x8c04e318
jb 0x14005fd5f
mov eax, dword [0x1401cac50]
xor edx, edx
div dword [0x1401cac54]
and eax, 0x4a0c6ffd
mov ecx, 0x795573c4
xor ecx, 0xa708eb0d
and ecx, eax
mov edx, 0x87528e9d
xor edx, 0x78ad7162
xor ecx, edx
add eax, 0xde5d98c9
add eax, 1
add eax, ecx
xor eax, 0xdd052bf4
mov ecx, 0x488f652d
xor ecx, 0x32648d62
cmp eax, ecx
ja 0x14005fcf0
mov al, byte [rsp + 0x26]
and al, 1
movzx eax, al
add rsp, 0x58
ret
lodsb al, byte [rsi]
frstor dword [rbp - 0x3da169a]
invalid
mov ch, ch
std
jmp 0x14005fb29
or ecx, ebx
and dl, byte [rbp - 0x17]
mov bh, bh
invalid