Function at 0x1400e71f0
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0xb0
mov qword [rsp + 0x98], r8
mov qword [rsp + 0xa0], rdx
mov qword [rsp + 0xa8], rcx
mov ecx, dword [0x140206810]
mov edx, dword [0x140206814]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
or ecx, edx
mov edx, 0x69b651a3
xor edx, 0x9649ae5c
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x9b997d1e
xor edx, 0x646682e1
xor ecx, edx
and eax, ecx
imul eax, eax, 0xbb830761
xor eax, 0x97d77cbd
mov ecx, 0x503a4096
xor ecx, 0x1b3217b7
xor eax, ecx
cmp eax, 0x4c148da9
ja 0x1400e79dc
mov rcx, qword [rsp + 0xa0]
mov eax, dword [0x140206818]
xor eax, dword [0x14020681c]
mov r8d, 0x9c2905a7
xor edx, edx
div r8d
mov edx, eax
mov eax, 0x82a2f70f
xor eax, 0xa9b5ac53
and eax, edx
mov r8d, 0xf85cdc5
xor r8d, 0xf07a323a
xor eax, r8d
add edx, 0x2b175b5c
mov r8d, 0x25050ba2
xor r8d, 0x25050ba3
add edx, r8d
add edx, eax
mov eax, edx
or eax, eax
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xcb3f8372
mov r9d, 0xffffffff
xor r9d, 0xcb3f8372
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xd70f57d7
xor r8d, 0x1c30d4a5
mov r9d, 0xcad8306a
xor r9d, 0x3527cf95
xor r8d, r9d
and edx, r8d
mov r8d, 0x6aae8c9
xor r8d, 0xf9551736
xor eax, r8d
mov r8d, 0x4fcbfa23
xor r8d, 0xb03405dc
xor edx, r8d
and eax, edx
mov cl, byte [rcx + 0x10]
mov byte [rsp + 0x97], cl
cmp eax, 0xca58edd6
jbe 0x1400e726f
mov al, byte [rsp + 0x97]
sub al, 1
je 0x1400e7370
jmp 0x1400e735c
mov al, byte [rsp + 0x97]
sub al, 3
je 0x1400e79d2
jmp 0x1400e796a
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x98]
mov rcx, qword [rdx]
mov rax, qword [rax + 8]
mov qword [rsp + 0x70], rax
mov r10b, byte [rax + rcx + 8]
cmp r10b, 0x2d
sete al
mov byte [rsp + 0x7b], al
and al, 1
movzx eax, al
mov r8d, eax
mov rax, rcx
add rax, r8
mov r8d, 0xffffffff
mov r9d, 1
cmp r10b, 0x2d
cmove r8d, r9d
mov dword [rsp + 0x7c], r8d
add rcx, qword [rdx + 8]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
mov rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x68], rax
cmp rax, rcx
jge 0x1400e77bd
mov ecx, dword [0x140206820]
xor ecx, 0xc0d8fd20
mov edx, dword [0x140206824]
mov eax, 0x90da4c5d
xor eax, 0x24a39943
xor edx, eax
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x5106561e
xor ecx, 0x8c105ce9
or eax, ecx
mov ecx, 0xdc640d6a
xor edx, edx
div ecx
mov ecx, 0xd79588
xor ecx, 0xf837013f
sub eax, ecx
cmp eax, 0x59aecc7e
jae 0x1400e79e5
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x140206828]
xor eax, 0x48e804f6
xor eax, dword [0x14020682c]
mov r8d, 0xd64864c8
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x68]
mov r8d, eax
mov eax, 0xde4e1aec
xor eax, 0xfdfb057
mov r9d, 0xb7bc2db7
xor r9d, 0x4843d248
xor eax, r9d
add r8d, eax
add r8d, 1
mov eax, r8d
and eax, 0xd3f1d728
xor eax, 0xffffffff
and r8d, 0xd3f1d728
xor r8d, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
mov cl, byte [rcx + rdx + 8]
mov byte [rsp + 0x66], cl
mov dl, 0x76
xor dl, 0xa6
add cl, dl
cmp cl, 0xa
setb cl
mov byte [rsp + 0x67], cl
cmp eax, 0x23b02541
jae 0x1400e7454
mov al, byte [rsp + 0x67]
test al, 1
jne 0x1400e7593
jmp 0x1400e74ef
movabs rcx, 0xdb61e11d8b815ed1
movabs rax, 0xdb61e11d8b815e91
xor rcx, rax
movabs rdx, 0x8faa0fde3061822a
movabs rax, 0x8faa0fde30618222
xor rdx, rax
call fcn.140014320
mov rcx, rax
mov rax, qword [0x140216ed8]
mov qword [rcx], rax
lea rax, [0x140215ad0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140215b58]
mov qword [rcx + 0x18], rax
mov rax, qword [str.8___]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xbbf284ba51f2f25f
movabs rdx, 0xbbf284ba2ee4885f
xor rax, rdx
lea rdx, [0x140215ad0]
lea r8, [0x140215b25]
lea r9, [0x140215aeb]
mov qword [rsp + 0x20], rax
call fcn.1400139e0
jmp 0x1400e79d2
mov al, byte [rsp + 0x66]
movzx eax, al
mov dword [rsp + 0x5c], eax
xor eax, 0xffffffff
add eax, 0x80000030
add eax, 1
mov ecx, 0xa
xor edx, edx
div ecx
mov edx, eax
mov rax, qword [rsp + 0xa8]
xor ecx, ecx
sub ecx, 0x100849d
sub ecx, edx
add ecx, 0x100849d
mov eax, dword [rax]
mov dword [rsp + 0x60], eax
cmp eax, ecx
jge 0x1400e7647
mov ecx, 0x40
mov edx, 8
call fcn.140014320
mov rcx, rax
mov rax, qword [0x140216ed8]
mov qword [rcx], rax
lea rax, [0x140215ad0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140215b58]
mov qword [rcx + 0x18], rax
mov rax, qword [str.8___]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140215ad0]
lea r8, [0x140215b25]
lea r9, [0x140215aeb]
mov qword [rsp + 0x20], 0x3f6723b3
call fcn.1400139e0
jmp 0x1400e79d2
mov r11d, dword [0x140206830]
mov r10d, dword [0x140206834]
mov eax, 0x5275d279
xor eax, 0xad8a2d86
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x86aea43f
mov eax, ecx
and eax, 0x86aea43f
and r11d, edx
mov esi, 0xf58ae1bf
xor esi, 0x73244580
mov r9d, r8d
and r9d, esi
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x680d1333
xor r8d, 0x97f2eccc
xor ecx, r8d
or edx, 0x86aea43f
and ecx, edx
or eax, ecx
or eax, 0xb6a9ab96
mov ecx, 0x8f9dd959
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x642ae51d
mov edx, 0xacb4e938
xor edx, 0x534b16c7
xor ecx, edx
add eax, 0x642ae51d
add eax, 1
add eax, ecx
cmp eax, 0x531611ff
jbe 0x1400e79ee
mov rcx, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x5c]
mov r9d, dword [rsp + 0x60]
mov eax, dword [0x140206838]
xor edx, edx
div dword [0x14020683c]
mov edx, 0x2724ab79
xor edx, 0x6da57fa3
imul eax, edx
mov r10d, 0x51742d70
xor edx, edx
div r10d
mov rdx, qword [rsp + 0xa8]
mov r10d, 0xebaf36a9
xor r10d, 0x564e7ddb
and eax, r10d
imul r10d, r9d, 0xa
mov r9d, 0xc47a3fb
xor r9d, 0xf3b85c04
xor r8d, r9d
add r8d, 0x30
add r8d, 1
mov r9d, 0x575f3374
xor r9d, 0x575f3374
sub r9d, r10d
sub r8d, r9d
mov dword [rdx], r8d
mov rdx, rcx
and rdx, 1
movabs r8, 0x31e725cd88e0545e
movabs r9, 0x31e725cd88e0545c
xor r8, r9
imul rdx, r8
xor rcx, 1
add rcx, rdx
mov qword [rsp + 0x50], rcx
cmp eax, 0x409d8273
je 0x1400e76f2
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x88], rax
jmp 0x1400e73d7
mov al, byte [rsp + 0x7b]
mov rcx, qword [rsp + 0xa8]
mov ecx, dword [rcx]
mov dword [rsp + 0x4c], ecx
sub ecx, 0x80000000
setne cl
or al, cl
test al, 1
jne 0x1400e7862
mov ecx, 0x40
mov edx, 8
call fcn.140014320
mov rcx, rax
mov rax, qword [0x140216ed8]
mov qword [rcx], rax
lea rax, [0x140215ad0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140215b58]
mov qword [rcx + 0x18], rax
mov rax, qword [str.8___]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x22826c30279e072d
movabs rdx, 0xdd7d93cfd53f531d
xor rax, rdx
lea rdx, [0x140215ad0]
lea r8, [0x140215b25]
lea r9, [0x140215aeb]
mov qword [rsp + 0x20], rax
call fcn.1400139e0
jmp 0x1400e79d2
mov ecx, dword [rsp + 0x7c]
mov edx, dword [rsp + 0x4c]
movsxd rax, edx
movsxd r8, ecx
imul rax, r8
mov qword [rsp + 0x30], rax
cvtsi2sd xmm1, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x40], xmm1
ucomisd xmm0, xmm1
jne 0x1400e78ab
jp 0x1400e78ab
jmp 0x1400e78fa
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x40]
subsd xmm0, xmm1
call fcn.1401ffc90
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x28], xmm1
call fcn.1401ffc90
movsd xmm1, qword [rsp + 0x28]
movsd xmm2, qword [0x140215ac8]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400e78fa
call fcn.140007f57
jmp 0x1400e79d2
mov rcx, qword [rsp + 0x30]
movabs rdx, 0x17b7501ad1612299
movabs rax, 0xe848afe551612299
xor rdx, rax
mov rax, rcx
and rax, rdx
movabs rdx, 0x2488dd07c9364b3f
movabs r8, 0xdb7722f849364b3f
xor rdx, r8
or rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1400e7956
call fcn.140007f57
jmp 0x1400e79d2
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x30]
mov dword [rax], ecx
jmp 0x1400e79d2
mov ecx, 0x40
mov edx, 8
call fcn.140014320
mov rcx, rax
mov rax, qword [0x140216ed8]
mov qword [rcx], rax
lea rax, [0x140215ad0]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140215b58]
mov qword [rcx + 0x18], rax
mov rax, qword [str.8___]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140215ad0]
lea r8, [0x140215b25]
lea r9, [0x140215aeb]
mov qword [rsp + 0x20], 0xffffffff8225ee4b
call fcn.1400139e0
nop
add rsp, 0xb0
pop rsi
ret
sub byte [rax + 0x21], 0x25
jmp 0x1400e726f
and dh, byte [rsi]
insb byte [rdi], dx
or eax, 0xfffa66e9
push qword [rdi]
mov dh, 0xd
jmp 0x1400e76f2
invalid