Function at 0x140066190
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov word [rbp - 2], cx
mov eax, dword [0x1401ddea8]
mov edx, dword [0x1401ddeac]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
add eax, 0xafd6fec4
mov r8d, 0xffffffff
xor r8d, 0x4639c1fb
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x4639c1fb
or eax, 0x4639c1fb
imul eax, edx
add eax, ecx
add eax, 0xd1602793
mov ecx, 0xc09a76b2
xor ecx, 0x759b7de0
cmp eax, ecx
ja 0x140066599
mov ecx, dword [0x1401ddeb0]
xor ecx, 0x5e9d5846
mov eax, dword [0x1401ddeb4]
xor eax, ecx
not eax
and eax, ecx
or eax, 0x707afbf1
imul rax, rax, 0x37cf9b31
shr rax, 0x3d
add eax, 0x99fe0fd1
mov dword [rbp - 0xc], eax
mov eax, 0x10
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x30], rax
sub rsp, 0x20
call fcn.140065528
mov cx, word [rbp - 2]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x18], rdx
mov dword [rax], 0
mov rax, qword [0x1401fff88]
mov qword [rbp - 0x28], rax
movsx rcx, cx
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rcx, qword [rax]
mov qword [rbp - 0x20], rcx
add rcx, 0x11
sub rsp, 0x20
call fcn.1400659f5
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov dx, ax
mov eax, dword [rbp - 0xc]
mov word [rbp - 6], dx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 3], cl
cmp eax, 0x4a3beecb
je 0x140066599
mov cl, byte [rbp - 3]
xor eax, eax
test cl, 1
mov dword [rbp - 0x34], eax
jne 0x1400662d6
jmp 0x140066591
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
mov dx, word [rbp - 6]
movsx rdx, dx
mov qword [rbp - 0x48], rdx
cmp byte [rcx + 0xe], 0xe2
mov qword [rbp - 0x40], rax
jne 0x1400663fe
mov cx, word [rbp - 2]
mov rdx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x28]
add rax, 8
shl rdx, 4
add rax, rdx
add rax, 8
mov r8, qword [rax]
add r8, 8
sub rsp, 0x20
call fcn.140065a53
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x59
xor dl, 0x59
xor eax, eax
cmp cl, dl
mov dword [rbp - 0x34], eax
jne 0x140066591
mov eax, dword [0x1401ddeb8]
xor edx, edx
div dword [0x1401ddebc]
mov ecx, 0x57d3adbb
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x235711f1
xor ecx, 0xffffffff
or eax, 0x235711f1
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x7df35c3f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x5dec3746
xor r8d, 0x201f6b79
mov edx, eax
and edx, r8d
or eax, 0x7df35c3f
imul eax, edx
add eax, ecx
cmp eax, 0x611e0436
jae 0x1400665a2
mov eax, dword [0x1401ddec0]
mov ecx, dword [0x1401ddec4]
add eax, 0xf4d2529e
sub eax, ecx
sub eax, 0xf4d2529e
sub eax, 0x8b24085f
xor eax, 0x61494d32
xor eax, 0xb92785e9
mov ecx, 0xfcdb1703
xor ecx, 0x9898ef04
mov rdx, qword [0x1401fff88]
mov qword [rbp - 0x50], rdx
cmp eax, ecx
je 0x1400663ac
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x40], rax
jmp 0x1400663fe
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x58], rax
mov eax, dword [0x1401ddec8]
xor edx, edx
div dword [0x1401ddecc]
mov r11d, eax
mov eax, 0xebe77d2f
xor eax, 0xff29b913
and eax, r11d
mov ecx, 0xd7676027
xor ecx, 0x28989fd8
xor eax, ecx
add r11d, 0x14cec43c
add r11d, 1
add r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x1183ae2
mov r8d, 0xffffffff
xor r8d, 0xf1590a26
mov eax, ecx
and eax, 0xf1590a26
and r11d, r8d
mov r9d, edx
and r9d, 0xf1590a26
mov r10d, r8d
and r10d, 0x1183ae2
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
mov edx, 0xbf8d4a9d
xor edx, 0x4072b562
xor ecx, edx
mov edx, 0x2168073
xor edx, 0xf34f8a55
or edx, r8d
and ecx, edx
or eax, ecx
mov edx, 0x4a1b3463
xor edx, 0x5a963826
mov ecx, 0xcfe74031
xor ecx, 0x3018bfce
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x108d0c45
add eax, edx
sub eax, ecx
cmp eax, 0x545437c6
ja 0x1400665ab
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov r8d, dword [0x1401dded0]
mov r9d, 0x6d27fff4
xor r9d, 0x3b8a338
xor r8d, r9d
add r8d, dword [0x1401dded4]
mov r9d, r8d
xor r9d, 0x62686df6
mov r10d, 0xffffffff
xor r10d, 0x62686df6
and r8d, r10d
shl r8d, 1
sub r8d, r9d
add r8d, 0x95229b48
imul r8d, r8d, 0xb31ea1a8
mov dword [rbp - 0x60], r8d
add rax, 8
shl rdx, 4
add rax, rdx
add rax, 8
mov rdx, qword [rax]
add rdx, 8
movabs r8, 0xfa995bd7d0cf65f
movabs rax, 0xfa995bd7d0cf65b
xor r8, rax
sub rsp, 0x20
call fcn.140065ef6
mov rcx, qword [rbp - 0x30]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
mov ecx, dword [rcx]
mov dword [rbp - 0x5c], ecx
cmp eax, 0xda9983ef
je 0x1400665ab
mov eax, dword [rbp - 0x5c]
mov dword [rbp - 0x34], eax
jmp 0x140066591
mov eax, dword [rbp - 0x34]
mov rsp, rbp
pop rbp
ret
sub al, 0x4f
invalid
cmc
cmp dword [rcx], esp
mov bl, 0xe9
add esi, edi
invalid
je 0x140066626
or cl, ch
and al, 0xff
invalid
and al, 0x40
mov dx, word [rsp + 0x56]
movsx rdx, dx
mov qword [rsp + 0x20], rdx
cmp byte [rcx + 0xe], 0xe2
mov qword [rsp + 0x28], rax
jne 0x140066691
mov cx, word [rsp + 0x36]
mov rdx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x38]
add rax, 8
shl rdx, 4
add rax, rdx
add rax, 8
mov r8, qword [rax]
add r8, 8
call fcn.140065a53
mov rcx, qword [rsp + 0x48]
xor eax, eax
cmp byte [rcx], 0
mov qword [rsp + 0x58], rax
jne 0x1400666dc
mov rax, qword [0x1401fff88]
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x28]
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rdx, qword [rax]
add rdx, 8
movabs r8, 0x35591a89b97ed0db
movabs rax, 0x35591a89b97ed0d3
xor r8, rax
lea rcx, [rsp + 0x60]
call fcn.140065ef6
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
add rsp, 0x68
ret