Function at 0x140052080
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x108
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0xb0], rcx
call fcn.14004b700
mov rdx, qword [rsp + 0xb8]
mov qword [rsp + 0xc0], rax
mov rax, qword [rdx]
mov qword [rsp + 0xf8], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x100], rax
lea rcx, [rsp + 0xf8]
call fcn.140038bd0
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0xc8], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rsp + 0xd0], rax
jne 0x14005261e
mov r11d, dword [0x1402028c0]
xor r11d, 0x8b815ed1
mov ecx, dword [str.yp]
mov edx, r11d
xor edx, ecx
xor edx, 0xffffffff
mov eax, ecx
and eax, edx
shl eax, 1
sub eax, ecx
sub r11d, eax
mov eax, r11d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x391cf2bb
mov edx, 0xffffffff
xor edx, 0x6fec5db4
mov ecx, eax
and ecx, 0x6fec5db4
and r11d, edx
mov r9d, r8d
and r9d, 0x6fec5db4
mov r10d, edx
and r10d, 0x391cf2bb
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0x6fec5db4
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x5275d279
xor ecx, 0x2be2deaa
mov edx, 0x200ed8c6
xor edx, 0x5999d415
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xc1bcb831
xor edx, edx
div ecx
cmp eax, 0x83b29d66
jae 0x14005262e
mov rdx, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0xc8]
mov ecx, dword [0x1402028c8]
mov r10d, dword [0x1402028cc]
xor r10d, 0x863e2c06
mov eax, ecx
and eax, r10d
xor ecx, r10d
or eax, ecx
add eax, 0x70d64599
imul eax, eax, 0xc84c16a1
sub eax, 0x5282d8cd
mov ecx, 0xacb4e938
xor ecx, 0xed258d5d
mov r10d, 0x243fd8cd
cmp r9, 0
cmove r9, r10
mov qword [rsp + 0x90], r9
mov qword [r8], r9
mov rdx, qword [rdx]
mov qword [rsp + 0x98], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0xa7], dl
cmp eax, ecx
jbe 0x1400521b7
mov cl, byte [rsp + 0xa7]
mov rax, 0xffffffffffffffff
test cl, 1
mov qword [rsp + 0xd0], rax
jne 0x14005261e
jmp 0x140052266
mov rax, qword [rsp + 0xb0]
mov r8, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
add rcx, 0xffffffffffffffff
or rcx, rcx
movabs rdx, 0x6d5e21f42724ab79
movabs r9, 0x92a1de0bd8db5486
xor rdx, r9
xor rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r9, 0xda674998ebaf36a9
movabs r10, 0x2598b6671450c956
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
movabs rdx, 0xf786b35b0c47a3fb
movabs r8, 0x8794ca4f3b85c04
xor rdx, r8
xor rcx, rdx
add rax, 8
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
mov rdx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x70], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140052360
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffff
call fcn.140014583
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0xd0], rax
jmp 0x14005261e
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
add rax, 8
imul rcx, rcx, 0x28
add rax, rcx
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
movabs rcx, 0x9797bc1e223b3ba5
movabs rdx, 0x9797bc1e223b3ba5
xor rcx, rdx
cmp rax, rcx
je 0x14005260d
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0xa8]
cmp rax, qword [rcx]
jne 0x140052442
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x50]
add rcx, 8
imul rdx, rdx, 0x28
add rcx, rdx
add rcx, 8
mov rdx, qword [rcx]
mov qword [rsp + 0xe8], rdx
mov rcx, qword [rcx + 8]
mov qword [rsp + 0xf0], rcx
mov rcx, qword [rax]
mov qword [rsp + 0xd8], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0xe0], rax
lea rcx, [rsp + 0xe8]
lea rdx, [rsp + 0xd8]
call fcn.140062130
mov rcx, qword [rsp + 0x68]
mov dl, al
xor eax, eax
test dl, 1
mov rdx, rcx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rcx
mov byte [rsp + 0x4f], al
jne 0x1400524a9
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
movabs rax, 0x898ffc347e4a4bdb
movabs r8, 0x767003cb81b5b424
xor rax, r8
add rdx, rax
call fcn.14004c879
mov rcx, qword [rsp + 0xc0]
mov rdx, rax
mov rax, qword [rsp + 0x60]
mov r8b, byte [rcx]
mov r9b, 0x2d
xor r9b, 0x2d
mov cl, 1
cmp r8b, r9b
mov qword [rsp + 0x38], rdx
mov rdx, rax
mov qword [rsp + 0x40], rdx
mov byte [rsp + 0x4f], cl
mov qword [rsp + 0xd0], rax
jne 0x14005261e
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov dl, byte [rsp + 0x4f]
mov byte [rsp + 0x27], dl
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rax
mov eax, dword [0x1402028d0]
mov edx, dword [0x1402028d4]
mov r8d, 0x1333c30b
xor r8d, 0xeccc3cf4
mov ecx, eax
xor ecx, r8d
and ecx, edx
mov r8d, 0xc8f03410
xor r8d, 0x370fcbef
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0xd57a4b49
xor ecx, 0x2d277116
sub eax, ecx
add eax, 0xad299a18
mov ecx, eax
xor ecx, 0xca9a468e
xor ecx, 0xffffffff
and ecx, 0xca9a468e
shl ecx, 1
mov edx, 0xd1612299
xor edx, 0x1bfb6417
sub ecx, edx
sub eax, ecx
mov ecx, 0xbb4d52c3
xor ecx, 0x564dd1de
cmp eax, ecx
je 0x140052637
mov ecx, dword [0x1402028d8]
mov eax, 0x67312169
xor eax, 0x962c04da
xor ecx, eax
mov edx, dword [0x1402028dc]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0xd7701f4c
xor ecx, 0x288fe0b3
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x9e02b7b9
mov edx, 0xffffffff
xor edx, 0xb30a1d33
or eax, ecx
mov ecx, 0x2924f232
xor ecx, 0x9a2eef01
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov edx, eax
and edx, 0x21e4b589
mov ecx, 0x92fcef3c
xor ecx, 0x92fcef3e
imul ecx, edx
mov edx, 0x437e9092
xor edx, 0x629a251b
add eax, edx
sub eax, ecx
imul eax, eax, 0x756cbc2a
mov ecx, 0x1d778628
xor ecx, 0x2018fcc4
cmp eax, ecx
jae 0x140052541
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov dl, byte [rsp + 0x27]
test dl, 1
mov qword [rsp + 0x80], rcx
add byte [rax], al
mov rcx, rax
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xd0], rax
jne 0x1400522fb
jmp 0x14005261e
mov rax, qword [rsp + 0x68]
xor rax, 0xffffffffffffffff
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xd0]
add rsp, 0x108
ret
jbe 0x1400525ed
xor cl, byte [rdx - 0x47f17]
push qword [0x129eb4b78]
xor eax, 0xe9e6253c
add edi, edi
invalid