Function at 0x140065550
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xd8
mov qword [rsp + 0x88], rcx
call fcn.140065528
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0xa0], rax
mov rax, qword [0x1401fff88]
mov qword [rsp + 0x90], rax
movsx rcx, word [rcx]
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rcx, qword [rax]
mov qword [rsp + 0x98], rcx
add rcx, 0x11
call fcn.1400659f5
mov cx, ax
mov rax, qword [rsp + 0xa0]
mov word [rsp + 0xae], cx
mov cl, byte [rax]
mov dl, 0xbe
xor dl, 0xbe
xor eax, eax
cmp cl, dl
mov qword [rsp + 0xb0], rax
jne 0x1400659d3
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
mov rdx, rcx
add rdx, 0xe
mov qword [rsp + 0x78], rdx
cmp byte [rcx + 0xe], 0xe2
mov qword [rsp + 0x80], rax
jne 0x1400659ac
mov rcx, qword [rsp + 0x98]
add rcx, 0xf
call fcn.140065a2e
mov rcx, qword [rsp + 0x98]
add rcx, 0x10
call fcn.140065a2e
mov rcx, qword [rsp + 0x98]
add rcx, 0xc
call fcn.140065a2e
mov byte [rsp + 0x77], al
cmp al, 0xc7
jne 0x140065674
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x90]
mov dx, word [rsp + 0xae]
movsx rdx, dx
add rax, 8
shl rdx, 4
add rax, rdx
mov byte [rcx], 0x1a
mov qword [rsp + 0x68], rax
jmp 0x14006599a
mov rcx, qword [rsp + 0x98]
add rcx, 0xd
call fcn.140065a2e
mov rdx, qword [rsp + 0x98]
mov cx, word [rsp + 0xae]
mov r8b, al
mov rax, qword [rsp + 0x90]
mov byte [rsp + 0x57], r8b
add rdx, 0x13
mov qword [rsp + 0x48], rdx
movsx rdx, cx
mov rcx, rax
add rcx, 8
mov r8, rdx
shl r8, 4
add rcx, r8
add rax, 8
shl rdx, 4
add rax, rdx
add rax, 8
mov rax, qword [rax]
add rax, 8
mov qword [rsp + 0x38], rax
mov rax, qword [rcx]
mov dword [rsp + 0x44], eax
call fcn.140065c21
mov r9, qword [rsp + 0x38]
mov r8d, dword [rsp + 0x44]
mov rdx, qword [rsp + 0x48]
mov al, byte [rsp + 0x57]
mov cl, byte [rsp + 0x77]
mov qword [rsp + 0xb8], r9
mov dword [rsp + 0xc0], r8d
mov qword [rsp + 0xc8], rdx
movzx eax, al
mov dword [rsp + 0xd0], eax
mov rax, qword [0x1401f0e50]
mov rax, qword [rax + 8]
movzx ecx, cl
mov edx, ecx
mov rcx, rax
add rcx, 8
imul r8, rdx, 0x48
add rcx, r8
add rcx, 0x18
add rax, 8
imul rdx, rdx, 0x48
add rax, rdx
add rax, 0x20
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
cmp rax, 0
je 0x140065787
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0xb8]
call rax
jmp 0x140065796
mov rax, qword [rsp + 0x60]
lea rcx, [rsp + 0xb8]
call rax
mov ecx, dword [0x1401dde68]
mov eax, 0x1b06d6c7
xor eax, 0x61314ff7
xor ecx, eax
mov edx, dword [0x1401dde6c]
xor eax, eax
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xc8bc7ba
xor edx, 0xa22de0c4
mov r8d, 0x511c2129
xor r8d, 0xaee3ded6
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xaea6277e
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x575257fe
xor ecx, 0x837e46e8
mov edx, 0x8bff63ee
xor edx, 0x74009c11
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, 0xc3016067
xor ecx, 0x8be84aad
mov edx, eax
xor edx, ecx
xor edx, 0xffffffff
mov ecx, 0xa926cac3
xor ecx, 0xe1cfe009
and ecx, edx
shl ecx, 1
sub ecx, 0x48e92aca
sub eax, ecx
cmp eax, 0xcf3f38d0
je 0x1400659e3
mov rcx, qword [rsp + 0xa0]
mov eax, dword [0x1401dde70]
mov edx, dword [0x1401dde74]
xor edx, 0x8d794d25
add eax, edx
mov edx, 0x70929c12
xor edx, 0xb4cbb9d8
or eax, edx
mov r8d, 0x3480815e
xor edx, edx
div r8d
mov r8d, 0xacbab650
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x78]
mov byte [rdx], 0x1a
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x99c71a5a
jae 0x140065840
mov cl, byte [rsp + 0x37]
xor eax, eax
test cl, 1
mov qword [rsp + 0x68], rax
jne 0x1400658b5
jmp 0x14006599a
mov r8d, dword [0x1401dde78]
mov eax, dword [0x1401dde7c]
xor eax, 0x3a415e90
sub r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0x697edacd
xor eax, 0x166a1eeb
and eax, ecx
mov edx, 0x6d05f9a
xor edx, 0x79c49bbc
mov ecx, 0xaadc9f46
xor ecx, 0x552360b9
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x5523b85e
mov r9d, 0x4cf14e74
xor r9d, 0x33e58a52
and ecx, r9d
and edx, 0x5523b85e
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x4b276c34
xor edx, edx
div ecx
mov ecx, 0xe4b892d9
xor edx, edx
div ecx
cmp eax, 0x4bc12f27
ja 0x1400659ec
mov eax, dword [0x1401dde80]
mov ecx, dword [0x1401dde84]
xor ecx, 0x1a90e528
sub eax, ecx
and eax, 0xe3b9396c
mov ecx, 0x6d675033
xor ecx, 0x19cc8fb5
add eax, ecx
add eax, 0xf2a608ec
sub eax, 0x74abdf86
add eax, 0x85f164fb
mov rcx, qword [0x1401fff88]
mov qword [rsp + 0x28], rcx
cmp eax, 0xf7f9d206
je 0x14006593c
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x80], rax
jmp 0x1400659ac
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xb0], rax
jmp 0x1400659d3
mov cx, word [rsp + 0xae]
mov rax, qword [rsp + 0x80]
movsx rcx, cx
add rax, 8
shl rcx, 4
add rax, rcx
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xb0]
add rsp, 0xd8
ret
mov eax, 0xe987023d
push rsp
invalid
pop rsp
retf 0xa59d