Function at 0x1800078e8
Capabilities:
Enumerate files on windows
Get common file path

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x400
mov qword [rsp + 0x88], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
mov rax, qword [0x180067ce0]
xor rax, rsp
mov qword [rsp + 0x3f0], rax
mov rdi, rcx
xor ebp, ebp
mov qword [r11 - 0x378], rbp
mov edx, 0x208
lea rcx, [r11 - 0x378]
call fcn.180008d9c
nop
mov rax, qword [rsp + 0x90]
mov word [rax], bp
mov rdx, qword [rsp + 0x90]
mov esi, 0x104
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov ebx, eax
cmp eax, esi
jbe 0x18000798c
mov rdx, rbx
lea rcx, [rsp + 0x90]
call fcn.180008a68
mov rcx, qword [rsp + 0x90]
mov word [rcx], bp
mov rdx, qword [rsp + 0x90]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov rbx, qword [rsp + 0x90]
cmp rbx, rbp
jne 0x18000799d
mov eax, ebp
jmp 0x1800079a5
mov rcx, rbx
call fcn.180033b84
mov r8d, eax
mov rdx, rbx
lea rcx, [rdi + 0x210]
call fcn.180008dfc
xor edx, edx
mov rcx, rdi
call fcn.180017288
call fcn.180012330
mov r11, rax
mov ecx, ebp
cmp rax, rbp
setne cl
cmp ecx, ebp
jne 0x1800079e0
mov ecx, 0x80004005
call fcn.180001214
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rcx, str._TABLE_border1_cols4_width100___n_THEAD__TR__TD_width20_nbsp___TD__TD_File_Name__TD__TD_Size__TD__TD_Modified__TD___TR___THEAD_
call fcn.180033b84
mov r8d, eax
lea rdx, str._TABLE_border1_cols4_width100___n_THEAD__TR__TD_width20_nbsp___TD__TD_File_Name__TD__TD_Size__TD__TD_Modified__TD___TR___THEAD_
lea rcx, [rsp + 0x48]
call fcn.180008dfc
mov qword [rsp + 0x50], rbp
lea r9, [rsp + 0x50]
lea r8, [0x18004cfd0]
lea rdx, str.fileList
mov rcx, rdi
call fcn.18000cf28
cmp qword [rsp + 0x50], rbp
jne 0x180007a85
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
or rsi, 0xffffffffffffffff
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007a5d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rax, [rsp + 0x98]
cmp qword [rsp + 0x90], rax
je 0x180007daf
lea rcx, [rsp + 0x90]
call fcn.180008df4
jmp 0x180007daf
lea r8, str..
lea rdx, [rdi + 0x210]
lea rcx, [rsp + 0x60]
call fcn.180008920
nop
lea rdx, [rsp + 0x1a0]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov rbx, rax
or rsi, 0xffffffffffffffff
cmp rax, rsi
jne 0x180007b36
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007add
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
cmp rcx, rbp
je 0x180007aee
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007b0e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rax, [rsp + 0x98]
cmp qword [rsp + 0x90], rax
je 0x180007daf
lea rcx, [rsp + 0x90]
call fcn.180008df4
jmp 0x180007daf
call fcn.180014058
mov rcx, qword [rax + 8]
call fcn.180009ac8
nop
call fcn.180012330
mov r11, rax
mov ecx, ebp
cmp rax, rbp
setne cl
cmp ecx, ebp
jne 0x180007b64
mov ecx, 0x80004005
call fcn.180001214
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x58], rax
call fcn.180012330
mov r11, rax
mov ecx, ebp
cmp rax, rbp
setne cl
cmp ecx, ebp
jne 0x180007b95
mov ecx, 0x80004005
call fcn.180001214
int3
mov rax, qword [rax]
mov rcx, r11
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov r8d, esi
lea rdx, [rsp + 0x1b4]
lea rcx, [rsp + 0x80]
call fcn.180001418
lea r8, str._A___B__d___Y
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x80]
call fcn.1800014dc
nop
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.180008c54
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007c06
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test byte [rsp + 0x1a0], 0x10
lea rax, str.folder
lea r8, str.file
cmovne r8, rax
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0x30], rdi
mov eax, dword [rsp + 0x1c0]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x1cc]
mov qword [rsp + 0x20], rax
mov r9, r8
lea rdx, str._TR__TD_width20__IMG_src_s.gif___TD__TD__SPAN_class_s__s__SPAN___TD__TD__lu__TD__TD__s__TD___TR_
lea rcx, [rsp + 0x58]
call fcn.1800091a4
mov rdx, qword [rsp + 0x58]
mov r8d, dword [rdx - 0x10]
lea rcx, [rsp + 0x48]
call fcn.180008f94
lea rdx, [rsp + 0x1a0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
cmp eax, ebp
jne 0x180007ba7
lea rcx, str.__TABLE_
call fcn.180033b84
mov r8d, eax
lea rdx, str.__TABLE_
lea rcx, [rsp + 0x48]
call fcn.180008f94
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, qword [rsp + 0x48]
cmp rcx, rbp
jne 0x180007cbf
mov rbx, rbp
mov qword [rsp + 0x70], rbx
jmp 0x180007cdd
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rbx, rax
mov qword [rsp + 0x70], rax
cmp rax, rbp
jne 0x180007cdd
mov ecx, 0x8007000e
call fcn.180001214
nop
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx]
mov rdx, rbx
call qword [rax + 0x1c8]
nop
mov rcx, rbx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
lea rdx, [rdi - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007d14
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007d34
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rsp + 0x40]
call fcn.1800015e0
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007d5f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x50]
cmp rcx, rbp
je 0x180007d70
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
add eax, esi
cmp eax, ebp
jg 0x180007d90
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rax, [rsp + 0x98]
cmp qword [rsp + 0x90], rax
je 0x180007daf
lea rcx, [rsp + 0x90]
call fcn.180008df4
mov rcx, qword [rsp + 0x3f0]
xor rcx, rsp
call fcn.180032ea0
lea r11, [rsp + 0x400]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret