Function at 0x140028065
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rcx
call fcn.14000b1d6
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
add rax, 0x60
mov qword [rsp + 0x68], rax
mov rax, qword [rcx]
mov qword [rsp + 0x70], rax
cmp rax, rdx
jle 0x140027c5b
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call fcn.1400279a0
jmp 0x14002804e
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
jge 0x14002804e
mov rax, qword [rsp + 0x58]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x48], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x50], rax
cmp rax, 0
je 0x140027ccc
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
movabs r8, 0xbfffffffffffffff
mov rdx, rax
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0xbfffffffffffffff
or rax, r8
and rax, rdx
cmp rax, rcx
jge 0x140027d84
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
sub rax, rdx
mov qword [rsp + 0x40], rax
mov r9, rax
xor r9, rcx
movabs r8, 0xb0e7005f3191c4f1
movabs r10, 0x4f18ffa0ce6e3b0e
xor r8, r10
xor r9, r8
mov r8, rcx
and r8, r9
shl r8, 1
sub r8, rcx
mov rcx, rax
sub rcx, r8
cmp rcx, 0
setl cl
xor rax, rdx
cmp rax, 0xffffffffffffffff
setg dl
mov al, cl
xor al, 0xff
xor cl, 0xff
and al, cl
mov cl, dl
xor cl, 0xff
xor dl, 0xff
and cl, dl
xor al, 0xff
xor cl, 0xff
and al, cl
test al, 1
jne 0x140027d7a
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x70]
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.140010bb0
mov rcx, rax
mov rax, qword [rsp + 0x48]
mov qword [rax], rcx
jmp 0x140027d84
call fcn.140008024
jmp 0x14002804e
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov qword [rcx], rdx
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
mov eax, dword [0x1401c9368]
xor eax, 0x28331bfa
mov ecx, dword [0x1401c936c]
xor ecx, 0x6c02a43e
add eax, ecx
mov ecx, 0xe3b6a4d4
xor edx, edx
div ecx
mov ecx, 0xa8b14377
xor edx, edx
div ecx
sub eax, 0x375787d8
cmp eax, 0xf898a0b
jb 0x140028053
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401c9370]
mov edx, dword [0x1401c9374]
xor edx, 0x3ab99be9
sub eax, edx
mov r8d, 0x225faaef
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x60]
add eax, 0x11c841d1
xor eax, 0x85a8a2ad
cmp rcx, rdx
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x62e8b84b
jb 0x140028053
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140027e39
jmp 0x14002804e
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 3
add rcx, rax
xor eax, eax
mov edx, eax
call fcn.140144d10
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0
jne 0x14002804e
mov rcx, qword [rsp + 0x30]
mov rax, rcx
and rax, 1
mov rdx, rcx
or rdx, 1
add rax, rdx
mov rdx, rcx
and rdx, rdx
movabs r8, 0x38890fdc2018e3f3
movabs r9, 0xc776f023dfe71c0c
xor r8, r9
xor rdx, r8
movabs r8, 0x9f02389e6b276d4e
movabs r9, 0x60fdc76194d892b1
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
movabs r9, 0x4b77dc7129c08361
movabs r10, 0xb488238ed63f7c9e
xor r9, r10
xor rcx, r9
xor r8, 0xffffffffffffffff
or rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rdx, rcx
xor rdx, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
and rcx, rax
cmp rcx, 0
mov qword [rsp + 0x38], rax
jge 0x140027d9b
mov ecx, dword [0x1401c9378]
xor ecx, 0xcdb30db3
mov r8d, dword [0x1401c937c]
mov eax, 0xbf63328a
xor eax, 0x409ccd75
mov r9d, r8d
xor r9d, eax
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
mov r9d, 0xd782cfdc
xor r9d, 0x287d3023
xor eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xb9ea0bb1
xor ecx, 0x7a7dc33
mov edx, 0x96cd08d7
xor edx, 0x6932f728
xor ecx, edx
mov edx, 0x436fca9a
xor edx, 0xfd221d18
mov r8d, 0x95375a21
xor r8d, 0x6ac8a5de
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xda1732ff
xor edx, edx
div ecx
mov ecx, 0xfafecee2
xor edx, edx
div ecx
mov ecx, 0xe25eccb8
xor ecx, 0x97c7b66e
cmp eax, ecx
jae 0x14002805c
mov eax, dword [0x1401c9380]
xor eax, 0xa9d83212
add eax, dword [0x1401c9384]
mov ecx, 0x3609e992
xor ecx, 0x66908848
add eax, ecx
mov edx, 0x99d2d041
xor edx, 0x1767d580
mov ecx, eax
xor ecx, edx
mov edx, 0x16ecfb2a
xor edx, 0xe91304d5
xor ecx, edx
and ecx, 0x8eb505c1
shl ecx, 1
sub ecx, 0x8eb505c1
sub eax, ecx
mov ecx, 0x2fd5d74
xor edx, edx
div ecx
mov dword [rsp + 0x28], eax
call fcn.140008024
mov eax, dword [rsp + 0x28]
cmp eax, 0x456b4d66
jae 0x140027fdd
jmp 0x14002804e
add rsp, 0x78
ret
or cl, byte [rcx - 0x33]
shr ecx, 0x84
std
invalid
pop rdi
add eax, 0x78e9ddc3
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
xor eax, eax
mov edx, eax
call fcn.1400279a0
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x140027c10