Function at 0x14005f5a0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov eax, 0x10
mov qword [rbp - 0x30], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp - 0x30]
mov rcx, rsp
mov qword [rbp - 0x28], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.14005fcc0
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov rax, qword [0x1401e5210]
mov qword [rbp + 0x40], rax
mov rax, qword [0x1401e5218]
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0x40]
sub rsp, 0x20
call fcn.140034300
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x10], rcx
mov cl, byte [rax]
mov dl, 0xff
xor dl, 0xff
mov al, 1
cmp cl, dl
mov byte [rbp - 1], al
jne 0x14005fc55
mov rax, qword [rbp - 0x28]
lea rcx, [rbp + 0x30]
add rcx, 8
mov qword [rbp - 0x40], rcx
add rax, 8
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.1400345e1
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x18]
mov al, byte [rax]
test al, al
setne al
sub rcx, 0x4335
sete cl
or al, cl
test al, 1
jne 0x14005fb45
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x28]
mov r8, qword [rbp - 0x40]
mov qword [rbp + 0x30], 0
mov qword [r8], 0
mov qword [rdx], 0
mov qword [rax], 0
sub rsp, 0x20
call fcn.140034864
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x18]
mov word [rbp - 0x42], cx
cmp byte [rax], 0
jne 0x14005f9b6
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.140034864
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x18]
mov word [rbp - 0x44], cx
cmp byte [rax], 0
jne 0x14005f9b6
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.140034864
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x18]
mov word [rbp - 0x46], cx
cmp byte [rax], 0
jne 0x14005f9b6
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.140034864
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp - 0x18]
mov word [rbp - 0x48], cx
mov al, byte [rax]
mov cl, 0xc6
xor cl, 0xc6
cmp al, cl
jne 0x14005f9b6
mov eax, dword [0x1401d7b08]
mov ecx, dword [0x1401d7b0c]
xor ecx, 0x12d7663b
add eax, ecx
or eax, 0xb7fd5794
mov r8d, 0xffffffff
xor r8d, 0x12499214
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x7ee55227
xor r8d, 0x811aadd8
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x12499214
or eax, 0x12499214
imul eax, edx
add eax, ecx
or eax, 0xe0cfb64b
cmp eax, 0x4df14df6
jbe 0x14005fc93
mov rdx, qword [rbp - 0x10]
mov ax, word [rbp - 0x42]
mov ecx, dword [0x1401d7b10]
add ecx, dword [0x1401d7b14]
mov r8d, 0xdb682876
xor r8d, 0xbb98403e
sub ecx, r8d
mov r8d, 0x242794fe
xor r8d, 0x8829f862
sub ecx, r8d
sub ecx, 0xd764cfdf
mov r8d, 0xa3945dd6
xor r8d, 0xf9a314a
add ecx, r8d
imul ecx, ecx, 0x33749db4
mov dword [rbp - 0x50], ecx
movsx r8, ax
lea rcx, [rbp + 0x20]
sub rsp, 0x20
call fcn.1400349d0
mov rcx, qword [rbp - 0x18]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
mov rdx, qword [rbp + 0x20]
mov qword [rbp + 0x30], rdx
mov rdx, qword [rbp + 0x28]
mov qword [rbp + 0x38], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x6b5b818e
je 0x14005f7a5
mov al, byte [rbp - 0x49]
test al, 1
jne 0x14005f848
jmp 0x14005f9b6
mov rdx, qword [rbp - 0x10]
mov ax, word [rbp - 0x48]
movsx r8, ax
lea rcx, [rbp + 0x10]
sub rsp, 0x20
call fcn.1400349d0
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rdx, qword [rbp + 0x10]
mov qword [rcx], rdx
mov rdx, qword [rbp + 0x18]
mov qword [rcx + 8], rdx
mov al, byte [rax]
mov cl, 0x5a
xor cl, 0x5a
cmp al, cl
jne 0x14005f9b6
mov eax, dword [0x1401d7b18]
xor eax, 0xbd028d1f
and eax, dword [0x1401d7b1c]
sub eax, 0xa548bb28
xor eax, 0x1803b9e3
imul eax, eax, 0xc3102cbd
cmp eax, 0xc6dd94e7
jbe 0x14005fc9c
mov eax, dword [0x1401d7b20]
mov ecx, dword [0x1401d7b24]
add eax, 0x7b14ab3e
add eax, ecx
sub eax, 0x7b14ab3e
and eax, 0x2c0abe36
mov ecx, 0x154b8c94
xor ecx, 0xda34fe83
xor edx, edx
div ecx
mov dx, word [rbp - 0x44]
mov ecx, eax
mov rax, qword [rbp - 0x28]
sub ecx, 0x67cd442d
mov r8d, 0x7cc627f9
xor r8d, 0x982f70d0
add ecx, r8d
add ecx, 0x67cd442d
mov dword [rbp - 0x54], ecx
mov ecx, 0x8c5aa0e9
xor ecx, 0xa06ee8
mov dword [rbp - 0x58], ecx
mov rcx, qword [0x1401faf80]
movsx rdx, dx
add rcx, 8
shl rdx, 4
add rcx, rdx
mov rdx, qword [rax]
mov qword [rbp], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 8], rax
mov rdx, rbp
sub rsp, 0x20
call fcn.140014bff
mov rcx, qword [rbp - 0x28]
call fcn.140010510
mov ax, word [rbp - 0x46]
mov rdx, qword [rbp - 0x20]
add rsp, 0x20
mov rcx, qword [0x1401faf80]
movsx rax, ax
add rcx, 8
shl rax, 4
add rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rdx], rax
mov rax, qword [rbp + 0x38]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140014bff
add rsp, 0x20
lea rcx, [rbp + 0x30]
sub rsp, 0x20
call fcn.140010510
mov ecx, dword [rbp - 0x58]
mov eax, dword [rbp - 0x54]
add rsp, 0x20
cmp eax, ecx
je 0x14005f8b7
jmp 0x14005f9b6
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x14005fa07
mov rax, qword [rbp - 0x60]
mov rax, qword [rax]
movabs rcx, 0xf8d8ea7516af1a54
movabs rdx, 0xb8d8ea7516af1a54
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14005fa07
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x14005fb33
mov rax, qword [rbp - 0x68]
mov rax, qword [rax]
movabs rcx, 0x4a6bd3bada261ee4
movabs rdx, 0xa6bd3bada261ee4
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14005fb33
mov ecx, dword [0x1401d7b28]
xor ecx, 0x7e7e057e
imul ecx, dword [0x1401d7b2c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x764c0efa
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x764c0efa
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xb44a3569
add eax, ecx
mov ecx, 0xf848b487
xor ecx, 0xf848b486
add eax, ecx
add eax, 0x11f8e6e7
cmp eax, 0x6531a542
jb 0x14005fca5
mov rcx, qword [rbp - 0x68]
mov eax, dword [0x1401d7b30]
mov r8d, dword [0x1401d7b34]
mov r9d, eax
xor r9d, r8d
mov edx, 0x65f6af5c
xor edx, 0x9a0950a3
xor r9d, edx
mov edx, r8d
and edx, r9d
shl edx, 1
sub edx, r8d
sub eax, edx
or eax, 0x91b46cd7
sub eax, 0xebd07e70
or eax, eax
xor eax, 0xffffffff
mov edx, 0xe4fdb99d
xor edx, 0xe1be4e53
mov r8d, 0x85dd5b3b
xor r8d, 0x809eacf5
or edx, r8d
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov dword [rbp - 0x6c], eax
sub rsp, 0x20
call fcn.14000eb2e
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
cmp eax, 0x2c5fb7ca
jae 0x14005faab
jmp 0x14005fb33
mov rax, qword [rbp - 0x18]
cmp byte [rax], 0
jne 0x14005fb45
jmp 0x14005f64a
mov ecx, dword [0x1401d7b38]
mov eax, dword [0x1401d7b3c]
sub ecx, 0x3ab6ddc4
sub ecx, eax
mov eax, 0x4f606c2b
xor eax, 0x75d6b1ef
add ecx, eax
sub ecx, 0x4c86037c
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x88f6a66a
mov edx, 0xffffffff
xor edx, 0x88f6a66a
and ecx, edx
or eax, ecx
and eax, 0x1435d739
cmp eax, 0xcaad90d4
jae 0x14005fcae
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov r8d, dword [0x1401d7b40]
mov r9d, dword [0x1401d7b44]
xor r9d, 0xeb9c41d8
mov r10d, r8d
and r10d, r9d
mov edx, 0x9d6e79ee
xor edx, 0x9d6e79ec
imul edx, r10d
add r8d, r9d
sub r8d, edx
mov edx, 0xffffffff
xor edx, 0x4494a7ce
add r8d, edx
add r8d, 1
and r8d, 0x57fe7275
mov r9d, 0xffffffff
xor r9d, 0x9da6a3d3
mov edx, r8d
xor edx, r9d
and edx, r8d
mov dword [rbp - 0x74], edx
mov dl, byte [rax]
mov byte [rbp - 0x6f], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.140034b90
mov rcx, qword [rbp - 0x18]
mov al, byte [rbp - 0x6f]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x93
xor dl, 0x92
mov byte [rbp - 0x6e], dl
cmp cl, 0
mov byte [rbp - 0x6d], al
je 0x14005fc36
mov al, byte [rbp - 0x6e]
mov byte [rbp - 0x6d], al
mov eax, dword [rbp - 0x74]
mov cl, byte [rbp - 0x6d]
mov byte [rbp - 0x75], cl
cmp eax, 0x382635ef
ja 0x14005fcae
mov al, byte [rbp - 0x75]
mov byte [rbp - 1], al
jmp 0x14005fc55
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov dl, byte [rbp - 1]
mov byte [rbp - 0x76], dl
mov dl, 0x26
xor dl, 0x26
mov byte [rax], dl
sub rsp, 0x20
call fcn.140032e7c
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14005fc8d
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 0x76]
mov byte [rax], cl
lea rsp, [rbp + 0x50]
pop rbp
ret
call qword [rdi - 0x40]
shr cl, 1
or ebx, edi
invalid
adc al, 0xfe
cmp eax, 0xfc12e9da
invalid
imul esp, dword [0x13def6102], 0xfffffffd
invalid
push rsi
jmp 0x14005faab
jle 0x14005fca7
invalid