Function at 0x1400fd960
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rcx
call fcn.1400fe08b
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x90], rax
mov rax, qword [rdx]
mov qword [rsp + 0x98], rax
cmp rax, 0
jge 0x1400fd9c6
mov rcx, qword [rsp + 0x98]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000db87
jmp 0x1400fe060
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
call fcn.140019920
mov rax, qword [rsp + 0x88]
add rax, 8
mov qword [rsp + 0x68], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x58], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
cmp rax, rcx
jge 0x1400fe060
mov rax, qword [rsp + 0x58]
cmp rax, 0xffffffffffffffff
jg 0x1400fda5a
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x60]
movabs r8, 0x14606428016dbe3f
movabs rdx, 0xeb9f9bd7fe9241c0
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140012b72
jmp 0x1400fe060
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x68]
mov rax, qword [rax]
mov al, byte [rax + rcx + 8]
mov byte [rsp + 0x57], al
sub al, 0x25
je 0x1400fda8d
jmp 0x1400fda7c
mov al, byte [rsp + 0x57]
sub al, 0x2b
je 0x1400fdfcd
jmp 0x1400fdfeb
mov eax, dword [0x1402480e0]
and eax, dword [0x1402480e4]
xor eax, 0xea49ceb4
sub eax, 0xa0cdfe2a
mov ecx, 0xed24cceb
xor ecx, 0x873e7861
add eax, ecx
add eax, 0xa0cdfe2a
sub eax, 0xa135c217
mov ecx, 0x3e87eaba
xor ecx, 0xb4ef9ee
sub eax, ecx
add eax, 0xa135c217
mov ecx, 0x66ea1e5c
xor ecx, 0xcf470bf8
cmp eax, ecx
je 0x1400fe070
mov r9, qword [rsp + 0x58]
mov eax, dword [0x1402480e8]
xor eax, 0x67443479
xor eax, dword [0x1402480ec]
mov ecx, 0x511fc713
xor ecx, 0xb02e97f6
add eax, ecx
sub eax, 0xddc96c09
sub eax, 0xe13150e5
mov ecx, 0xe2b4ced3
xor edx, edx
div ecx
mov ecx, 0xf2d0f0e1
xor ecx, 0x44fb51d0
and eax, ecx
mov ecx, 0x6a7ac270
xor ecx, 0x84f9c5e2
mov r8, r9
add r8, 2
mov qword [rsp + 0x48], r8
movabs rdx, 0x9985ea3338f01780
movabs r10, 0x667a15ccc70fe87f
xor rdx, r10
xor r9, rdx
movabs r10, 0xfc00babcbc81aa36
movabs rdx, 0x3ff4543437e55c9
xor r10, rdx
mov rdx, r8
xor rdx, r10
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, r9
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
movabs r9, 0x85935d5bab0cb64b
movabs r10, 0x7a6ca2a454f349b4
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
cmp rdx, 0
setl dl
mov byte [rsp + 0x56], dl
cmp eax, ecx
je 0x1400fe070
mov al, byte [rsp + 0x56]
test al, 1
jne 0x1400fdbca
jmp 0x1400fdbd4
call fcn.140008d37
jmp 0x1400fde93
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x48]
cmp rax, rcx
jg 0x1400fdc54
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259110]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259148]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259150]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259110]
lea r8, [0x14025911f]
lea r9, [0x140259134]
mov qword [rsp + 0x20], 0xfffffffffe6fc98a
call fcn.140012522
jmp 0x1400fde93
mov rax, qword [rsp + 0x88]
mov r8, qword [rsp + 0x58]
mov byte [rsp + 0xb7], 0
movabs rcx, 0xdd0ff1f75e15b465
movabs rdx, 0x99717c20dca452ce
xor rcx, rdx
sub r8, rcx
add r8, 1
movabs rcx, 0x447e8dd782b1e6ab
add r8, rcx
mov rcx, qword [rax]
mov qword [rsp + 0xa0], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0xa8], rax
movabs r9, 0x449be3e9c208286a
movabs rax, 0x449be3e9c2082868
xor r9, rax
lea rcx, [rsp + 0xa0]
lea rdx, [rsp + 0xb7]
call fcn.140036210
mov rcx, rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x40], rcx
cmp byte [rax], 0
jne 0x1400fde93
mov rax, qword [rsp + 0x40]
cmp rax, 0
jne 0x1400fde98
mov eax, dword [0x1402480f0]
imul eax, dword [0x1402480f4]
mov ecx, 0x48913997
xor edx, edx
div ecx
mov ecx, 0xe7010c
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0x6f7de539
xor edx, 0x1a970011
mov r8d, 0x37394
xor r8d, 0xfffc8c6b
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x75eae528
and edx, r8d
mov r8d, 0xa2235137
xor r8d, 0x5ddcaec8
xor eax, r8d
mov r8d, 0xb9927dde
xor r8d, 0x466d8221
xor edx, r8d
and eax, edx
or ecx, 0x75eae528
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x3cfafe52
xor ecx, 0xddf3041a
cmp eax, ecx
jae 0x1400fe079
mov eax, dword [0x1402480f8]
mov ecx, dword [0x1402480fc]
xor ecx, 0x6fe99f0b
xor edx, edx
div ecx
mov edx, 0x994fd888
xor edx, 0x66b02777
mov ecx, eax
xor ecx, edx
mov edx, 0x958f34dd
xor edx, 0x1c3a6004
and edx, ecx
mov r8d, 0x8d51239c
xor r8d, 0x4e47745
mov ecx, 0x623de5e1
xor ecx, 0x9dc21a1e
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x89b554d9
or eax, 0x89b554d9
imul eax, edx
add eax, ecx
mov ecx, 0x25a55ad7
xor ecx, 0xb1f0d63f
xor eax, ecx
or eax, 0xd871123f
mov dword [rsp + 0x3c], eax
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140259110]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259148]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259150]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140259110]
lea r8, [0x14025911f]
lea r9, [0x140259134]
mov qword [rsp + 0x20], 0xffffffffc4844d26
call fcn.140012522
mov eax, dword [rsp + 0x3c]
cmp eax, 0xef9c084f
jae 0x1400fdd9a
jmp 0x1400fde93
jmp 0x1400fe060
mov ecx, dword [0x140248100]
xor ecx, 0x4460aa62
imul ecx, dword [0x140248104]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x2c38f57c
xor edx, 0x23aa4fac
mov r8d, 0x46b9976
xor r8d, 0xfb946689
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0x309d56f1
xor edx, 0x3f0fec21
mov r8d, 0x51d01949
xor r8d, 0xae2fe6b6
xor edx, r8d
or ecx, edx
mov edx, 0x918b1736
xor edx, 0x6e74e8c9
xor eax, edx
mov edx, 0x3a36b69
xor edx, 0xfc5c9496
xor ecx, edx
or eax, ecx
mov ecx, 0xc66f69
xor edx, edx
div ecx
mov r8d, 0xffffffff
xor r8d, 0xbd1aab1c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xbd1aab1c
or eax, 0xbd1aab1c
imul eax, edx
add eax, ecx
cmp eax, 0xa79c753f
je 0x1400fe082
mov rcx, qword [rsp + 0x78]
mov edx, dword [0x140248108]
xor edx, 0x3d9f1628
or edx, dword [0x14024810c]
mov eax, 0x98da1f4a
xor eax, 0x30b8209c
sub edx, eax
mov r8d, 0xffffffff
xor r8d, 0x8143c9c7
mov eax, edx
xor eax, r8d
and eax, edx
mov edx, 0xf8126cb8
xor edx, 0xe24e1465
sub eax, edx
mov dword [rsp + 0x38], eax
mov eax, 0x3302e5e5
xor eax, 0x9d7ff29a
mov dword [rsp + 0x34], eax
mov dl, byte [rsp + 0xb7]
call fcn.1400fe0b0
mov ecx, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
cmp eax, ecx
je 0x1400fdf4c
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
jmp 0x1400fe003
mov rcx, qword [rsp + 0x78]
mov edx, 0x20
call fcn.1400fe0b0
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x28], rax
jmp 0x1400fe003
mov dl, byte [rsp + 0x57]
mov rcx, qword [rsp + 0x78]
call fcn.1400fe0b0
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x28]
mov rax, rdx
add rax, 1
movabs rcx, 0x7ef6d9b60b2f4154
movabs r8, 0x81092649f4d0beab
xor rcx, r8
xor rdx, rcx
xor rdx, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
and rcx, rax
movabs rdx, 0x741acf5f4e54825e
movabs r8, 0x741acf5f4e54825e
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x70], rax
jge 0x1400fd9f0
call fcn.140008d37
mov rax, qword [rsp + 0x80]
add rsp, 0xb8
ret
add byte [rax - 0x7f], cl
invalid
xchg ebx, eax
sub byte [rdi - 0x59917], bl
invalid
fcom dword [rcx + 0x33]
js 0x1400fe067
sbb ch, bh
invalid
stc
sbb ch, byte [rsi - 0x13e16f3]
invalid