Function at 0x140066360
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov word [rsp + 0x46], cx
call fcn.140064af7
mov cx, word [rsp + 0x46]
mov qword [rsp + 0x58], rax
mov byte [rsp + 0x67], 0
mov rax, qword [0x14026bf88]
mov qword [rsp + 0x48], rax
movsx rcx, cx
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rcx, qword [rax]
mov qword [rsp + 0x50], rcx
add rcx, 0xa
call fcn.140065120
mov rcx, qword [rsp + 0x58]
mov word [rsp + 0x64], ax
xor eax, eax
cmp byte [rcx], 0
mov byte [rsp + 0x66], al
jne 0x14006665d
mov eax, dword [0x140243f38]
xor edx, edx
div dword [0x140243f3c]
sub eax, 0x247c118c
mov ecx, 0xd6f5667
xor edx, edx
div ecx
mov edx, eax
and edx, 0xfcec6824
mov ecx, 0x50b59025
xor ecx, 0x50b59027
imul ecx, edx
add eax, 0xfcec6824
sub eax, ecx
mov ecx, 0x2cfe7ff2
xor ecx, 0xb8d4541b
cmp eax, ecx
jb 0x140066737
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x140243f40]
or eax, dword [0x140243f44]
sub eax, 0xa32c11a0
mov r8d, 0x75aa1a5
xor edx, edx
div r8d
mov dx, word [rsp + 0x64]
or eax, 0x7b7f2663
movsx rdx, dx
mov qword [rsp + 0x38], rdx
cmp byte [rcx + 0xc], 0x51
sete cl
mov byte [rsp + 0x45], cl
cmp eax, 0xd36c30f3
je 0x140066412
mov rax, qword [rsp + 0x48]
mov cl, byte [rsp + 0x45]
test cl, 1
mov qword [rsp + 0x30], rax
jne 0x140066478
jmp 0x140066614
mov eax, dword [0x140243f48]
xor eax, 0xff73de2
mov edx, dword [0x140243f4c]
xor edx, 0xc0e8cf8b
mov ecx, 0x684563d7
xor ecx, 0x97ba9c28
mov r11d, eax
xor r11d, ecx
mov ecx, eax
xor ecx, 0xffffffff
or r11d, ecx
mov ecx, 0x937e0059
xor ecx, 0x6c81ffa6
xor r11d, ecx
mov r8d, 0xfd11ec82
xor r8d, 0x2ee137d
mov ecx, edx
xor ecx, r8d
or r11d, ecx
mov r8d, 0x626e4ff0
xor r8d, 0x9d91b00f
mov ecx, edx
xor ecx, r8d
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and r11d, eax
xor r11d, 0xffffffff
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xaa9a1682
mov edx, 0xffffffff
xor edx, 0x8536ab5e
mov r9d, 0xbf15095b
xor r9d, 0x3a23a205
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0xdd40852c
xor r10d, 0x58762e72
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0xaa9a1682
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x8536ab5e
and ecx, edx
or eax, ecx
sub eax, 0xce746a79
mov ecx, 0xb6e5ffe1
xor ecx, 0xa2859bc9
xor edx, edx
div ecx
cmp eax, 0x50487db1
ja 0x140066740
mov cx, word [rsp + 0x46]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
mov r8d, dword [0x140243f50]
xor r8d, 0xf10cfc22
or r8d, dword [0x140243f54]
sub r8d, 0xdb91b5ea
and r8d, 0xeb84666b
or r8d, 0x10607188
mov dword [rsp + 0x28], r8d
add rax, 8
shl rdx, 4
add rax, rdx
add rax, 8
mov r8, qword [rax]
add r8, 8
call fcn.140065230
mov rcx, qword [rsp + 0x58]
mov eax, dword [rsp + 0x28]
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x72166268
jb 0x140066740
mov cl, byte [rsp + 0x2f]
xor eax, eax
test cl, 1
mov byte [rsp + 0x66], al
jne 0x140066608
jmp 0x14006665d
mov rax, qword [0x14026bf88]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x30]
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rdx, qword [rax]
add rdx, 8
movabs r8, 0xf071a42b74d359e4
movabs rax, 0xf071a42b74d359e5
xor r8, rax
lea rcx, [rsp + 0x67]
call fcn.140065980
mov al, byte [rsp + 0x67]
mov byte [rsp + 0x66], al
mov al, byte [rsp + 0x66]
mov byte [rsp + 0x27], al
mov eax, dword [0x140243f58]
xor eax, 0x1af53a4a
sub eax, dword [0x140243f5c]
mov ecx, 0x9e0028fe
xor ecx, 0x61ffd701
mov edx, eax
xor edx, ecx
and edx, 0x1e9b148a
mov r8d, 0xffffffff
xor r8d, 0x1e9b148a
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x1e9b148a
mov r8d, 0x205a5e19
xor r8d, 0x3ec14a93
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0x2fd2aac1
mov ecx, 0x89df3d6f
xor edx, edx
div ecx
fisttp word [rcx - 0xe082dcf]
mov ecx, 0xaaa57f4b
xor ecx, 0x2f57ebee
cmp eax, ecx
je 0x140066749
mov eax, dword [0x140243f60]
mov ecx, dword [0x140243f64]
mov edx, 0xe5ee2957
xor edx, 0x4b0f31d5
sub eax, edx
sub eax, ecx
mov ecx, 0xe82743fb
xor ecx, 0x46c65b79
add eax, ecx
imul eax, eax, 0xa5504d5c
add eax, 0x61b3cc84
mov ecx, 0xf1cafc8b
xor edx, edx
div ecx
mov ecx, 0x1947fed1
xor ecx, 0x7fade08d
cmp eax, ecx
ja 0x1400666df
mov al, byte [rsp + 0x27]
add rsp, 0x68
ret
ja 0x1400666c6
jp 0x14006677e
jmp 0x140066412
jmp qword [r9 + 0x15]
rcl dword [rbp - 0x72162406], 0xff
invalid
in al, dx
mov dl, 0xf1
or eax, 0x4847bd88
mov eax, 0xf1b25aa0
or eax, 0x4847bd88
xor edx, eax
lea rcx, [rbp - 0x10]
sub rsp, 0x20
call fcn.1400167aa
mov rdx, qword [rbp - 0x18]
add rsp, 0x20
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [0x14026bf90]
sub rsp, 0x20
call fcn.14001821c
nop
mov rsp, rbp
pop rbp
ret