Function at 0x14008e730
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
mov ecx, dword [0x1406939f8]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, 0x5b65d713
add ecx, dword [0x1405ff11c]
xor edx, edx
div ecx
test edx, edx
je 0x14008e789
lea rcx, [rbp - 8]
xor edx, edx
mov r8d, 0xa1ad252b
mov r9d, 0xa0e5efb1
call fcn.1400a8480
mov rax, qword [0x140693a88]
mov qword [rbp - 0x10], rax
lea rcx, [rbp - 8]
xor edx, edx
mov r8d, 0xa1ad252b
mov r9d, 0xa0e5efb1
call fcn.1400a8480
mov rax, qword [0x140693a88]
mov qword [rbp - 0x10], rax
cmp qword [0x140693a60], 0
jne 0x14008e8e7
lea rcx, [rbp - 0x20]
xor edx, edx
mov r8d, 0xa1ad252b
mov r9d, 0xa0e5efb1
call fcn.1400a8480
cmp qword [0x140693a60], 0
jne 0x14008e8ab
mov eax, dword [0x1406939f8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
jne 0x14008e820
movsxd rax, dword [0x140698140]
inc rax
mov dword [0x140698140], eax
mov qword [0x140693a60], rax
mov eax, dword [0x1406939fc]
cmp eax, 0x4f
jl 0x14008e8ab
nop word cs:[rax + rax]
mov edx, dword [0x140698140]
mov ecx, 1
sub ecx, edx
mov eax, dword [0x1405ff11c]
mov r8d, eax
sub r8d, edx
add r8d, 0x5b65d711
mov edx, r8d
xor edx, 0x2cef3523
and r8d, 0x2cef3523
lea edx, [rdx + r8*2]
add edx, 0xd310cadd
imul edx, ecx
shl edx, cl
sub ecx, edx
sub edx, ecx
imul edx, ecx
mov r8d, edx
sub r8d, ecx
imul r8d, ecx
sub edx, r8d
imul edx, r8d
add edx, r8d
mov dword [0x140698140], edx
movsxd rcx, edx
mov qword [0x140693a60], rcx
add eax, 0xf5cf0132
mov ecx, eax
xor ecx, 0x6596d5df
and eax, 0x6596d5df
add eax, eax
add eax, ecx
jne 0x14008e820
jmp 0x14008e7ef
lea rcx, [rbp - 0x20]
call fcn.1400a7610
jmp 0x14008e8e7
mov eax, dword [0x1406939fc]
mov ecx, dword [0x1405ff11c]
mov edx, ecx
xor edx, 0x5b65d72f
not ecx
and ecx, 0x249a28d0
or ecx, edx
not ecx
lea ecx, [rdx + rcx*2]
cmp eax, ecx
jl 0x14008e8f2
mov eax, dword [0x1406939fc]
cmp eax, 0x49
jg 0x14008e8c0
mov rbx, qword [0x140693a60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x18]
mov edx, dword [0x1406939f8]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x14008e8c0
cmp rcx, rbx
jbe 0x14008e92b
mov rcx, qword [rax + 0x10]
mov rdi, qword [rcx + rbx*8]
test rdi, rdi
jne 0x14008e9a8
mov ecx, dword [0x1406939f8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
nop word [rax + rax]
xor ecx, ecx
test cl, cl
jne 0x14008e940
cmp byte [rax + 0x24], 0
je 0x14008e964
call fcn.1404ebc64
cmp qword [rax + 0x18], rbx
jbe 0x14008e964
mov rax, qword [rax + 0x10]
mov rdi, qword [rax + rbx*8]
test rdi, rdi
jne 0x14008e9a8
mov rdi, qword [rbp - 0x10]
test rdi, rdi
jne 0x14008e9a8
lea rcx, [rbp - 0x10]
mov rdx, rsi
call fcn.14008edb0
cmp rax, 0xffffffffffffffff
je 0x14008e9d9
mov rcx, qword [rbp - 0x10]
mov qword [rbp - 0x18], rcx
call fcn.1404ebc2c
mov rcx, qword [rbp - 0x18]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [0x1405fc400]
mov rdi, qword [rbp - 0x10]
mov qword [0x140693a88], rdi
lea rsi, [rbp - 8]
nop dword [rax]
mov rcx, rsi
call fcn.1400a7610
mov eax, dword [0x1406939fc]
cmp eax, 0x31
jle 0x14008e9cd
mov rcx, rsi
call fcn.1400a7610
jmp 0x14008e9b0
mov rax, rdi
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop rbp
ret
call fcn.14008a7a0
int3