Function at 0x1400eb4b0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xa8
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rcx
mov al, byte [rdx + 0x10]
mov byte [rsp + 0xa7], al
sub al, 1
je 0x1400eb4fa
jmp 0x1400eb4e6
mov al, byte [rsp + 0xa7]
sub al, 3
je 0x1400ebbf9
jmp 0x1400ebb7e
mov rdx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x88]
mov rcx, qword [rdx]
mov rax, qword [rax + 8]
mov qword [rsp + 0x68], rax
mov r10b, byte [rax + rcx + 8]
cmp r10b, 0x2d
sete al
mov byte [rsp + 0x73], 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 + 0x74], r8d
add rcx, qword [rdx + 8]
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x60], rax
mov eax, dword [0x1402479d0]
mov ecx, 0xdc373a69
xor ecx, 0x44bc04c8
xor eax, ecx
mov edx, dword [0x1402479d4]
mov ecx, 0x73c5600f
xor ecx, 0x73c5600f
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
mov eax, 0x7549339b
xor eax, 0x7549339b
sub eax, ecx
add eax, 0x7ff72e10
xor eax, 0xedb1c872
mov r8d, 0xffffffff
xor r8d, 0x317133fd
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x862d99f9
xor r8d, 0xb75caa04
mov edx, eax
and edx, r8d
or eax, 0x317133fd
imul eax, edx
add eax, ecx
cmp eax, 0x8b49d8e1
jae 0x1400ebc02
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
mov eax, dword [0x1402479d8]
mov r8d, dword [0x1402479dc]
xor r8d, 0xed150a10
add eax, r8d
add eax, 0xc9f6311c
mov r9d, eax
xor r9d, 0x87444f3b
xor r9d, 0xffffffff
mov r8d, 0x52105bd1
xor r8d, 0xd55414ea
and r8d, r9d
shl r8d, 1
sub r8d, 0x87444f3b
sub eax, r8d
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x1c1de7d0
mov r10d, 0xffffffff
xor r10d, 0x1c1de7d0
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x1c1de7d0
mov r10d, 0x1ecdb714
xor r10d, 0x2d050c4
or eax, r10d
imul eax, r9d
add eax, r8d
cmp rcx, rdx
setl cl
mov byte [rsp + 0x5f], cl
cmp eax, 0x22aad861
jbe 0x1400ebc02
mov al, byte [rsp + 0x5f]
test al, 1
jne 0x1400eb6af
jmp 0x1400eb923
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x60]
mov al, byte [rax + rcx + 8]
mov byte [rsp + 0x5e], al
add al, 0xd0
cmp al, 0xa
jb 0x1400eb738
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140258f90]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259018]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259020]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140258f90]
lea r8, [0x140258fe5]
lea r9, [0x140258fab]
mov qword [rsp + 0x20], 0x41055235
call fcn.140012522
jmp 0x1400ebbf9
mov r8d, dword [0x1402479e0]
mov edx, dword [0x1402479e4]
mov ecx, 0xf2a32b16
xor ecx, 0xd5cd4e9
mov eax, r8d
xor eax, ecx
and eax, 0xc191805f
mov r9d, 0xe4160acc
xor r9d, 0x25878a93
mov ecx, 0x127125c1
xor ecx, 0xed8eda3e
xor r9d, ecx
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0xc191805f
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
xor eax, 0x89dbed62
mov ecx, 0xdb2299fc
xor ecx, 0x239bc844
xor eax, ecx
mov ecx, 0xc7a943a0
xor edx, edx
div ecx
cmp eax, 0xf5b4168
jae 0x1400ebc0b
mov eax, dword [0x1402479e8]
mov ecx, dword [0x1402479ec]
xor ecx, 0x2ef9ac7b
or eax, ecx
mov ecx, 0xac68a3ab
xor edx, edx
div ecx
mov ecx, 0xb2a9477f
xor edx, edx
div ecx
mov ecx, 0x3eaa2fde
xor edx, edx
div ecx
mov ecx, eax
mov al, byte [rsp + 0x5e]
mov dword [rsp + 0x54], ecx
mov ecx, 0x4df12091
xor ecx, 0x4d117c81
movzx edx, al
mov dword [rsp + 0x50], edx
mov eax, 0x27525bcd
xor eax, 0xd8ada432
xor edx, eax
mov eax, 0x7250f46
xor eax, 0x87250f76
add eax, edx
add eax, 1
mov r8d, 0xa
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x98]
mov r9d, eax
mov eax, dword [rsp + 0x54]
xor r8d, r8d
sub r8d, 0x8d0129d4
sub r8d, r9d
add r8d, 0x8d0129d4
mov edx, dword [rdx]
mov dword [rsp + 0x58], edx
cmp edx, r8d
setl dl
mov byte [rsp + 0x5d], dl
cmp eax, ecx
jae 0x1400eb7b3
mov al, byte [rsp + 0x5d]
test al, 1
jne 0x1400eb870
jmp 0x1400eb8dd
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140258f90]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259018]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259020]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140258f90]
lea r8, [0x140258fe5]
lea r9, [0x140258fab]
mov qword [rsp + 0x20], 0x1740b86
call fcn.140012522
jmp 0x1400ebbf9
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x98]
mov r9d, dword [rsp + 0x50]
mov edx, dword [rsp + 0x58]
imul r8d, edx, 0xa
mov edx, 0x30
sub edx, r9d
add edx, r8d
mov dword [rcx], edx
mov rcx, rax
and rcx, 1
shl rcx, 1
xor rax, 1
add rax, rcx
mov qword [rsp + 0x80], rax
jmp 0x1400eb55e
mov al, byte [rsp + 0x73]
mov rcx, qword [rsp + 0x98]
mov ecx, dword [rcx]
mov dword [rsp + 0x4c], ecx
sub ecx, 0x80000000
setne cl
or al, cl
test al, 1
jne 0x1400eb9b5
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140258f90]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259018]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259020]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x140258f90]
lea r8, [0x140258fe5]
lea r9, [0x140258fab]
mov qword [rsp + 0x20], 0xffffffffccb27c05
call fcn.140012522
jmp 0x1400ebbf9
mov eax, dword [0x1402479f0]
mov edx, dword [0x1402479f4]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
imul eax, eax, 0x94f5bab4
mov ecx, 0xf63842aa
xor ecx, 0xdb2e50e1
imul eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa47e771e
mov edx, 0xffffffff
xor edx, 0xa47e771e
and ecx, edx
or eax, ecx
mov ecx, 0xc4294e06
xor ecx, 0x3bd6b1f9
xor eax, ecx
cmp eax, 0xe637d4f9
jae 0x1400ebc14
mov edx, dword [rsp + 0x74]
mov r8d, dword [rsp + 0x4c]
mov eax, dword [0x1402479f8]
mov r9d, dword [0x1402479fc]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov r11d, 0xb98c6452
xor r11d, 0x46739bad
mov r10d, r9d
xor r10d, r11d
mov r11d, r9d
xor r11d, 0xffffffff
and r10d, r11d
or ecx, r10d
xor ecx, 0xffffffff
or eax, r9d
mov r9d, 0xa6e85a63
xor r9d, 0x5917a59c
xor eax, r9d
or ecx, eax
xor ecx, 0xffffffff
mov eax, 0xa768da25
xor eax, 0x954c13b9
imul ecx, eax
mov r9d, 0xffffffff
xor r9d, 0xee078dd6
mov eax, ecx
xor eax, r9d
and eax, ecx
xor ecx, ecx
sub ecx, 0x8b21a0ee
sub eax, ecx
movsxd rcx, r8d
movsxd r9, edx
imul rcx, r9
mov qword [rsp + 0x30], rcx
cvtsi2sd xmm1, r8d
cvtsi2sd xmm0, edx
mulsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
cvtsi2sd xmm1, rcx
movsd qword [rsp + 0x40], xmm1
ucomisd xmm0, xmm1
sete cl
setnp dl
and cl, dl
mov byte [rsp + 0x4b], cl
cmp eax, 0x9b46607c
jb 0x1400ebc14
mov al, byte [rsp + 0x4b]
test al, 1
jne 0x1400ebb42
jmp 0x1400ebaf3
movsd xmm1, qword [rsp + 0x38]
movsd xmm0, qword [rsp + 0x40]
subsd xmm0, xmm1
call fcn.140240030
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x28], xmm1
call fcn.140240030
movsd xmm1, qword [rsp + 0x28]
movsd xmm2, qword [0x140258f88]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400ebb42
call fcn.140008d37
jmp 0x1400ebbf9
mov rax, qword [rsp + 0x30]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1400ebb6a
call fcn.140008d37
jmp 0x1400ebbf9
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x30]
mov dword [rax], ecx
jmp 0x1400ebbf9
mov ecx, 0x40
mov edx, 8
call fcn.1400129fd
mov rcx, rax
mov rax, qword [0x14025a748]
mov qword [rcx], rax
lea rax, [0x140258f90]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140259018]
mov qword [rcx + 0x18], rax
mov rax, qword [0x140259020]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x994641bacbf5dc00
movabs rdx, 0x66b9be4577c31a7e
xor rax, rdx
lea rdx, [0x140258f90]
lea r8, [0x140258fe5]
lea r9, [0x140258fab]
mov qword [rsp + 0x20], rax
call fcn.140012522
nop
add rsp, 0xa8
ret
invalid
push rbp
or dword [rdx - 0x460163a], esi
invalid
jmp rsp
in al, 0x61
jg 0x1400ebc13
jmp 0x1400eba17