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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x6e4
mov eax, dword [0x4f4008]
xor eax, esp
mov dword [esp + 0x6e0], eax
mov eax, dword [0x4fbf90]
movaps xmm0, xmmword [0x4ddf20]
push ebx
mov dword [esp + 0x70], eax
mov eax, dword [0x4fbf88]
push esi
mov dword [esp + 0x78], eax
lea eax, [esp + 0x14]
push edi
mov dword [esp + 0x44], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x2c], 1
mov dword [esp + 0x74], 1
mov dword [esp + 0x30], 1
mov dword [esp + 0x84], 0
movups xmmword [esp + 0x34], xmm0
mov dword [esp + 0x88], 0
mov dword [esp + 0x64], 0x2ca0000
mov dword [esp + 0x5c], 0
mov dword [0x50937c], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x4c], 0
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
jne 0x4477b8
mov eax, dword [ebp + 0x14]
push 0
mov dword [0x509378], eax
call dword [sym.imp.ole32.dll_CoInitialize]
call dword [sym.imp.WINMM.dll_timeGetTime]
lea ecx, [esp + 0x10]
mov dword [0x4fbf9c], eax
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 1
call fcn.0044cf10
lea eax, [esp + 0x2e0]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
push 0x4d573c
lea eax, [esp + 0x2e4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [esp + 0x90]
push eax
lea eax, [esp + 0x2e4]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpW]
mov edi, eax
mov ebx, dword [sym.imp.KERNEL32.dll_FindNextFileW]
nop dword [eax]
push 0x4d5744
lea eax, [esp + 0xc0]
push eax
call esi
test eax, eax
je 0x447699
push 0x4d574c
lea eax, [esp + 0xc0]
push eax
call esi
test eax, eax
je 0x447699
push 0x4d5750
lea eax, [esp + 0xc0]
push eax
call esi
test eax, eax
je 0x4476fe
lea eax, [esp + 0x90]
push eax
push edi
call ebx
test eax, eax
jne 0x447660
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp word [0x509170], 0
mov dword [0x509164], 1
jne 0x447710
push 0x4d577c
lea eax, [esp + 0x4ec]
push 0x4d535c
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea eax, [esp + 0x4e8]
push 0x30
push str.SRPG_Studio
push eax
push dword [0x4fbff4]
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x4477b2
xor eax, eax
mov dword [0x509164], 0
mov word [0x509170], ax
mov eax, dword [esp + 0x10]
push 0x1c
mov dword [0x50916c], eax
call fcn.00495860
add esp, 4
mov dword [0x50915c], eax
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0x10], 0
push 0x57254
mov dword [eax], 0x509160
call fcn.00495860
add esp, 4
mov ecx, eax
call fcn.004011c0
mov dword [esp + 0x48], eax
mov dword [esp + 0x18], 0
call fcn.00459e80
test eax, eax
je 0x4477b2
mov ecx, dword [0x4fbf90]
mov eax, dword [0x4fbf88]
mov dword [esp + 0x78], ecx
mov dword [0x4fbf8c], ecx
mov dword [0x4fbf84], ecx
lea ecx, [esp + 0x18]
mov dword [esp + 0x7c], eax
mov dword [0x4fbf94], eax
mov dword [0x50914c], 0
mov dword [0x509148], 0
mov dword [0x4fbf80], eax
call fcn.00447930
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [esp + 0x6ec]
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00495852
mov esp, ebp
pop ebp
ret 0x10