Function at 0x1400646a0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x98
mov qword [rsp + 0x80], rcx
add rcx, 8
mov qword [rsp + 0x88], rcx
xor eax, eax
mov qword [rsp + 0x90], rax
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x70], rax
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rsp + 0x78], rdx
cmp rax, rcx
jge 0x140064b2a
mov rax, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov rcx, rax
add rcx, 8
shl rdx, 5
add rcx, rdx
add rcx, 8
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
cmp rcx, 0
mov qword [rsp + 0x68], rax
je 0x140064886
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
mov rdx, rcx
add rdx, 1
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x68], rax
jne 0x140064886
mov eax, dword [0x140203058]
mov edx, dword [0x14020305c]
mov r8d, eax
xor r8d, edx
mov ecx, 0x48252218
xor ecx, 0xb7dadde7
xor r8d, ecx
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x813abc9a
xor edx, edx
div ecx
mov ecx, 0xbc405721
xor ecx, 0x6a9194d1
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x7ab35f08
mov edx, 0x88d2db8
xor edx, 0x723e72b0
mov ecx, 0x566bcef9
xor ecx, 0xa9943106
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x62f0b236
and ecx, 0x7ab35f08
and edx, 0x62f0b236
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xf5025bc2
jae 0x140064caf
mov rcx, qword [rsp + 0x60]
mov eax, dword [0x140203060]
mov r9d, dword [0x140203064]
xor r9d, 0xe1184cb6
mov r8d, r9d
xor r8d, 0xffffffff
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov r8d, 0xfea7a03d
xor r8d, 0x6595cff3
xor edx, edx
div r8d
mov edx, eax
and edx, 0x3a1c90be
shl edx, 1
add eax, 0x3a1c90be
sub eax, edx
or eax, 0xa11521b1
mov dword [rsp + 0x54], eax
call fcn.14000fb44
mov rcx, qword [rsp + 0x88]
mov eax, dword [rsp + 0x54]
mov rcx, qword [rcx]
mov qword [rsp + 0x58], rcx
cmp eax, 0x8467033e
je 0x1400647f6
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x68], rax
jmp 0x140064886
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x48], rax
mov eax, dword [0x140203068]
mov ecx, dword [0x14020306c]
mov edx, 0x93f8d58b
xor edx, 0xc5e035f7
xor ecx, edx
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
or eax, 0x197999a4
mov ecx, 0xbfc6fb40
xor ecx, 0x403904bf
mov edx, eax
xor edx, ecx
and edx, 0x7bc76a1b
mov r8d, 0xffffffff
xor r8d, 0x7bc76a1b
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x7bc76a1b
or eax, 0x7bc76a1b
imul eax, edx
add eax, ecx
sub eax, 0xb4046c62
mov ecx, 0x33a748da
xor ecx, 0xec9d4628
cmp eax, ecx
jb 0x140064cb8
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x48]
mov eax, dword [0x140203070]
imul eax, dword [0x140203074]
mov ecx, 0x779d8266
xor ecx, 0xb1ff124f
and eax, ecx
mov ecx, 0xac8ccd44
xor ecx, 0xc86f6270
xor eax, ecx
or eax, 0x384ba140
mov ecx, 0x38b1cb4b
xor ecx, 0xa34e40e4
add rdx, 8
shl r8, 5
add rdx, r8
add rdx, 0x18
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0x47], dl
cmp eax, ecx
jb 0x14006490e
mov al, byte [rsp + 0x47]
test al, 1
jne 0x1400649ce
jmp 0x14006498a
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x6c674c506fa8fc0f
movabs r8, 0x2c674c506fa8fc0f
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1400649ce
mov rcx, qword [rsp + 0x38]
call fcn.14000fb44
mov eax, dword [0x140203078]
xor eax, 0x9f7265fb
mov ecx, dword [0x14020307c]
and eax, eax
xor eax, 0xffffffff
and ecx, ecx
mov edx, 0xa973b66
xor edx, 0xf568c499
xor ecx, edx
mov edx, 0x5bc7eb7
xor edx, 0xfa438148
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
add eax, 0xebe375fd
xor eax, 0xffffffff
mov ecx, 0xa83906b8
xor ecx, 0x9da058
mov edx, 0x11f2bc61
xor edx, 0xee0d439e
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x2d6b65bb
or eax, ecx
mov ecx, 0xbdd60529
xor ecx, 0x90bd6092
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x7be1023d
xor edx, edx
div ecx
cmp eax, 0x716329bd
jae 0x140064cc1
mov rcx, qword [rsp + 0x70]
mov edx, dword [0x140203080]
mov eax, dword [0x140203084]
xor eax, 0xaea872
xor edx, eax
mov eax, 0xffffffff
xor eax, 0xb5daa7e1
xor r8d, r8d
sub r8d, 1
sub eax, r8d
sub edx, eax
mov r9d, 0x59132003
xor r9d, 0x773cd3f9
mov eax, 0x82bbf042
xor eax, 0x7d440fbd
xor r9d, eax
mov r8d, edx
and r8d, r9d
mov eax, edx
or eax, r9d
mov r9d, 0x4070b40
xor r9d, 0xfbf8f4bf
xor eax, r9d
imul eax, r8d
mov r8d, edx
and r8d, 0x2e2ff3fa
or edx, 0x2e2ff3fa
imul edx, r8d
add edx, eax
mov eax, 0x89dfc2a2
xor eax, 0x76203d5d
mov r8d, edx
xor r8d, eax
mov eax, 0x3b1c522d
xor eax, 0xbf4c7921
and eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x84502b0c
and edx, r8d
or eax, edx
add rcx, 1
mov qword [rsp + 0x30], rcx
cmp eax, 0xcd8e3286
jae 0x140064a58
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x90], rax
jmp 0x1400646c5
mov eax, dword [0x140203088]
add eax, dword [0x14020308c]
add eax, 0x37b16990
mov ecx, 0x96d310aa
xor edx, edx
div ecx
sub eax, 0xaaf4acf8
mov ecx, 0xfaaa3cba
xor ecx, 0xf0e256df
sub eax, ecx
add eax, 0xaaf4acf8
mov ecx, 0x2676db27
xor ecx, 0x45a6a00f
cmp eax, ecx
jbe 0x140064cca
mov rcx, qword [rsp + 0x78]
mov edx, dword [0x140203090]
mov r9d, dword [0x140203094]
xor r9d, 0x5943cf0a
mov eax, edx
xor eax, 0xffffffff
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
and edx, edx
mov eax, 0xb33bc723
xor eax, 0x4cc438dc
xor edx, eax
mov eax, 0xff60634b
and eax, 0xff60634b
xor eax, 0xffffffff
mov r8d, 0xa93bd9d0
xor r8d, 0x56c4262f
xor edx, r8d
mov r8d, 0x85767a4b
xor r8d, 0x7a8985b4
xor eax, r8d
or edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x5b41661a
mov r8d, 0xffffffff
xor r8d, 0x5b41661a
and edx, r8d
or eax, edx
mov r9d, 0xffffffff
xor r9d, 0x2ab3b105
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x2ab3b105
or eax, 0x2ab3b105
imul eax, r8d
add eax, edx
cmp rcx, 0
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0xc4a9969
je 0x140064b6e
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140064ca6
jmp 0x140064c65
mov rcx, qword [rsp + 0x78]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x24f3c18ae73a0302
movabs rdx, 0x24f3c18ae73a0302
xor rcx, rdx
cmp rax, rcx
jne 0x140064ca6
mov rcx, qword [rsp + 0x78]
mov edx, 8
call fcn.14000fb49
nop
add rsp, 0x98
ret
call 0x129f155fe
sti
invalid
rcl ebp, 1
mov bl, 0xac
jmp 0x14006490e
lahf
fld xword [rbx]
mov esi, 0xfffd8ee9
call rsp
xchg ebp, eax
hlt
invalid