Function at 0x18000e0e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x30
mov ebp, r8d
lea esi, [r9 - 0xf5]
xor ebp, 0x115e
lea eax, [r8 - 0x12a]
lea ebx, [rcx - 0x123a]
mov rdi, rdx
lea r14d, [rcx - 0x1fe]
cmp esi, eax
jl 0x18000e33c
mov r8d, dword [rsp + 0x60]
lea eax, [r14 + 0x3c5]
mov edx, ebp
mov dword [rsp + 0x20], eax
add r8d, 0xfffffdfc
lea r9d, [rbp + 0x10a0]
xor edx, 0x1145
lea rcx, [0x18002f010]
call fcn.180013530
mov rcx, qword [section..data]
lea r8d, [r14 + 0xf1]
add ebx, 0x13d1
lea edx, [r14 - 0x1a8]
mov dword [rsp + 0x28], ebx
lea esi, [rax - 0x163]
mov eax, r14d
xor eax, 0x1ea8
lea r9d, [rsi + 0x284]
mov dword [rsp + 0x20], eax
call fcn.18000e6b0
mov r8, qword [section..data]
mov ebx, eax
xor r9d, r9d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa6313
sub eax, dword [rdi + 0x48]
add dword [0x18002f06c], eax
mov eax, dword [r8 + 0xb0]
add eax, dword [0x18002f0d4]
xor eax, 0xef76fb71
sub dword [rdi + 0x108], eax
mov rcx, qword [section..data]
mov eax, dword [rcx + 0x78]
xor eax, dword [0x18002f0c4]
xor eax, 0x17097b
mov dword [rcx + 0x78], eax
mov rdx, qword [section..data]
mov eax, dword [0x18002f0c0]
mov ecx, dword [rdx + 0x4c]
xor ecx, dword [rdi + 0x108]
xor ecx, 0xd482f330
imul eax, ecx
mov dword [0x18002f0c0], eax
mov ecx, dword [rdx + 0xf0]
mov rax, qword [rdi + 0x98]
add ecx, 0xfffd8be8
add ecx, dword [rdi + 0x4c]
or dword [rdi + 0x64], ecx
mov r8d, dword [rax + r9]
add r9, 4
mov rax, qword [section..data]
imul r8d, dword [rax + 0x74]
mov eax, dword [rdi + 0x5c]
sub eax, dword [rdi + 4]
add eax, 0x184001
add dword [rdi + 0xd8], eax
mov rcx, qword [section..data]
mov edx, r8d
shr edx, 8
mov eax, dword [rcx + 0xd8]
xor eax, dword [rcx + 0x18]
xor eax, 0xd563d
mov dword [rcx + 0x18], eax
mov rax, qword [section..data]
movsxd rcx, dword [rax + 0x7c]
mov rax, qword [rax + 0xa0]
mov byte [rcx + rax], dl
mov rax, qword [section..data]
inc dword [rax + 0x7c]
mov rdx, qword [section..data]
mov ecx, dword [0x18002f028]
mov eax, dword [rdx + 0xc4]
add eax, 0x1089049f
imul ecx, eax
mov dword [0x18002f028], ecx
mov rax, qword [rdx + 0xa0]
movsxd rcx, dword [0x18002f08c]
mov byte [rcx + rax], r8b
inc dword [0x18002f08c]
mov eax, dword [rdi + 0x10]
imul eax, dword [0x18002f05c]
mov dword [rdi + 0x10], eax
mov r8, qword [section..data]
mov eax, dword [0x18002f074]
mov ecx, dword [0x18002f0e8]
add eax, 0xfffecede
mov edx, dword [r8 + 0x64]
xor edx, dword [r8 + 0x4c]
add edx, eax
mov dword [0x18002f074], edx
mov eax, dword [r8 + 0x18]
sub eax, 0x51e7b
imul ecx, eax
mov eax, dword [0x18002f0c0]
add eax, 0xfffebd0c
mov dword [0x18002f0e8], ecx
mov ecx, dword [rdi + 0xf0]
sub ecx, edx
add ecx, eax
mov dword [0x18002f0c0], ecx
cmp r9, 0x1008
jl 0x18000e1b0
xor esi, 0x1ffa
lea eax, [rbp + 0x1401]
cmp esi, eax
jge 0x18000e34b
add ebx, 0x49
jmp 0x18000e38d
mov eax, dword [rdi + 0x78]
imul edx, dword [0x18002f0dc], 0xf57e2f
or eax, 0xe4b
sub eax, 0x103d
xor dword [0x18002f0c4], eax
mov ecx, dword [rdi + 0x40]
sub ecx, dword [rdi + 0xcc]
imul ecx, ebx
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov eax, ebx
or eax, 0x103d
imul eax, eax, 0xfffff071
add dword [rdi + 0xec], eax
mov rbp, qword [rsp + 0x48]
xor ebx, 0x1ac
mov rsi, qword [rsp + 0x50]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret