Function at 0x14006a5c0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x58], rcx
mov rax, qword [0x14022dd30]
mov ecx, dword [rax]
call fcn.140008650
mov rcx, qword [rsp + 0x58]
xor eax, eax
cmp rcx, 0
mov byte [rsp + 0x67], al
je 0x14006a99c
mov eax, dword [0x140219558]
mov ecx, dword [0x14021955c]
mov edx, 0xa290ccd
xor edx, 0xe80e58cd
sub eax, edx
sub eax, ecx
add eax, 0xe2275400
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb58d7296
and ecx, edx
mov edx, 0xf9756546
xor edx, 0x68a9ab9
xor eax, edx
mov edx, 0x35d788a0
xor edx, 0x805afa36
mov r8d, 0x54c0c6ca
xor r8d, 0xab3f3935
xor edx, r8d
and eax, edx
or ecx, eax
mov eax, 0x363c6e1a
xor eax, 0xc9c391e5
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7645c09d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7645c09d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xd50ff8fd
xor edx, edx
div ecx
mov ecx, 0x663f0f77
xor ecx, 0x3d6d4f8f
cmp eax, ecx
jae 0x14006aac9
mov rdx, qword [rsp + 0x58]
mov eax, dword [0x140219560]
mov ecx, 0xa27a2bf
xor ecx, 0x771a3caf
xor eax, ecx
mov r9d, dword [0x140219564]
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, r9d
and r8d, ecx
mov r10d, r9d
xor r10d, 0xffffffff
mov ecx, eax
and ecx, r10d
imul ecx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, eax
and ecx, 0x9879b125
shl ecx, 1
mov r8d, 0xe23e2ec2
xor r8d, 0x7a479fe7
add eax, r8d
sub eax, ecx
sub eax, 0x6683d660
sub eax, 0xe2ab4fa5
add eax, 0x6683d660
mov ecx, 0x27628cb7
xor ecx, 0xd209c210
imul eax, ecx
mov ecx, 0xd7d7717f
xor ecx, 0xd98e6f8f
xor r8d, r8d
sub r8, rdx
xor edx, edx
sub rdx, 0xfffffffffffffff0
add r8, rdx
xor edx, edx
sub rdx, r8
mov qword [rsp + 0x40], rdx
mov rdx, qword [rdx]
mov qword [rsp + 0x48], rdx
cmp rdx, 0x10
setb dl
mov byte [rsp + 0x57], dl
cmp eax, ecx
je 0x14006aac9
mov cl, byte [rsp + 0x57]
mov al, 1
test cl, 1
mov byte [rsp + 0x3f], al
jne 0x14006a8a2
jmp 0x14006a773
mov eax, dword [0x140219568]
xor eax, 0xd069740b
xor edx, edx
div dword [0x14021956c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0xbb882f33
xor edx, 0xad75035a
or eax, edx
add eax, ecx
mov ecx, 0x9f8705ef
xor ecx, 0x33b88505
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xbdf6ca11
xor ecx, 0xffffffff
and ecx, 0xbdf6ca11
shl ecx, 1
mov edx, 0x7287fc2e
xor edx, 0xcf71363f
sub ecx, edx
sub eax, ecx
cmp eax, 0xcd179c41
je 0x14006aad2
mov r10, qword [rsp + 0x48]
mov edx, dword [0x140219570]
xor edx, 0xee938d70
mov eax, dword [0x140219574]
sub edx, eax
mov eax, edx
and eax, 0xda44b5c3
mov ecx, eax
not ecx
mov r8d, edx
and r8d, 0xa0484c3
and ecx, 0x6a710c
imul ecx, r8d
and edx, 0x403100
or eax, 0x6a710c
imul eax, edx
add eax, ecx
and eax, 0xa18b66c
mov ecx, 0xa676d1f2
mov r8, r10
add r8, 0xfffffffffffffff0
mov qword [rsp + 0x30], r8
mov rdx, r8
not rdx
mov r9, rdx
and r9, r10
not r9
or rdx, r10
and r9, rdx
not r9
test r8, r8
setns dl
or r8, r9
sets r8b
add dl, r8b
inc dl
mov byte [rsp + 0x3e], dl
cmp eax, ecx
jae 0x14006a7da
mov al, byte [rsp + 0x3e]
test al, 1
jne 0x14006a87f
jmp 0x14006a88f
call fcn.140008bc6
xor eax, eax
mov byte [rsp + 0x67], al
jmp 0x14006a99c
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
xor eax, eax
mov byte [rsp + 0x3f], al
mov al, byte [rsp + 0x3f]
mov byte [rsp + 0x2f], al
mov eax, dword [0x140219578]
mov ecx, dword [0x14021957c]
xor ecx, 0xe5786c14
xor edx, edx
div ecx
mov ecx, 0x548566dc
xor ecx, 0xac6d4f55
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xa19af975
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x3f8de1c7
xor r8d, 0xc0721e38
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xa19af975
or eax, 0xa19af975
imul eax, edx
add eax, ecx
or eax, 0xd9cc60e2
cmp eax, 0x50870974
jb 0x14006aadb
mov rdx, qword [rsp + 0x40]
mov cl, byte [rsp + 0x57]
mov rax, qword [rsp + 0x58]
mov r8d, dword [0x140219580]
mov r10d, dword [0x140219584]
xor r9d, r9d
sub r9d, r10d
add r8d, r9d
imul r8d, r8d, 0xb2ba596d
mov r9d, 0xf9359ac5
xor r9d, 0x12fcd2f1
imul r8d, r9d
xor r8d, 0xa39ffa6b
mov dword [rsp + 0x28], r8d
mov r8d, 0x7c489d6
xor r8d, 0x7b8af079
mov dword [rsp + 0x24], r8d
mov r8, qword [rax]
and cl, 1
call fcn.140011d2a
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp eax, ecx
je 0x14006aadb
mov al, byte [rsp + 0x2f]
mov byte [rsp + 0x67], al
jmp 0x14006a99c
mov al, byte [rsp + 0x67]
mov byte [rsp + 0x23], al
mov eax, dword [0x140219588]
xor edx, edx
div dword [0x14021958c]
mov r11d, eax
mov eax, 0x30208b92
xor eax, 0xcfdf746d
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x6d4085b5
mov edx, 0x7574512c
xor edx, 0xfb803322
mov eax, 0xd364418b
xor eax, 0x2c9bbe74
xor edx, eax
mov r9d, 0x75ee0b53
xor r9d, 0xfb1a695d
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0x71ec4fd
xor r10d, 0x89eaa6f3
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x6d4085b5
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x8ef4620e
and ecx, edx
or eax, ecx
and eax, 0x5fd2739
add eax, 0x8f62443c
cmp eax, 0xb05bc73f
ja 0x14006aae4
mov cl, byte [rsp + 0x23]
mov eax, dword [0x140219590]
mov r9d, dword [0x140219594]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0x21893151
xor edx, 0xc54a9966
and eax, edx
mov edx, 0x38b76738
xor edx, 0x579ecf4b
imul eax, edx
imul eax, eax, 0xd940742d
mov dl, 0x32
xor dl, 0x32
cmp cl, dl
setne cl
mov byte [rsp + 0x22], cl
cmp eax, 0x83ed2d78
jbe 0x14006aa48
mov al, byte [rsp + 0x22]
and al, 1
movzx eax, al
add rsp, 0x68
ret
invalid
jae 0x14006aac6
invalid
cld
cwde
jmp 0x14006a7da
push rbx
neg bh
invalid
add dl, ch
insb byte [rdi], dx
xchg cl, ch
pop rbx
invalid