Function at 0x10039180
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0x68
mov eax, 0x1009d92d
call fcn.1008f84a
mov edi, ecx
mov dword [ebp - 4], 2
mov eax, dword [ebp + 0x14]
xor ebx, ebx
mov dword [ebp - 0x10], ebx
cmp dword [eax - 0xc], ebx
jne 0x100391b0
push 0x101175b0
lea ecx, [ebp + 0x14]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
push edi
push ecx
lea eax, [ebp + 8]
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
lea esi, [ebp - 0x10]
call dword [0x100b6030]
push ecx
mov byte [ebp - 4], 3
lea eax, [ebp + 0x18]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call dword [0x100b6030]
push ecx
mov byte [ebp - 4], 4
lea eax, [ebp + 0x14]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
call dword [0x100b6030]
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.100389b4
cmp dword [edi], ebx
je 0x1003936e
cmp dword [ebp + 0xc], ebx
je 0x1003936e
lea eax, [ebp + 8]
push eax
lea ecx, [ebp + 0xc]
call dword [0x100b6030]
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea ecx, [ebp + 0xc]
cmp eax, 0xffffffff
je 0x1003934d
test al, 0x10
je 0x1003934d
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
xor esi, esi
inc esi
push esi
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp + 8]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Right]
mov ecx, dword [eax]
cmp dword [ecx - 0xc], esi
jne 0x10039262
push ebx
mov ecx, eax
call dword [sym.imp.mfc90u.dll_ATL::CSimpleStringT_wchar_t_1_::operator__]
mov byte [ebp + 0xf], bl
cmp ax, 0x5c
je 0x10039266
mov byte [ebp + 0xf], 1
lea ecx, [ebp - 0x14]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
cmp byte [ebp + 0xf], bl
je 0x10039282
push 0x100b805c
lea ecx, [ebp + 8]
call dword [0x100b5fbc]
lea ecx, [ebp - 0x34]
call sym.ASOHelper.dll_public:_void___thiscall_CFileInfoArray::constructor_void_
push ebx
push ebx
push esi
push ebx
push esi
push ecx
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp + 0xc], esp
push 0x100c0098
call dword [0x100b6094]
push ecx
mov byte [ebp - 4], 6
lea eax, [ebp + 8]
mov ecx, esp
mov dword [ebp - 0x1c], esp
push eax
call dword [0x100b6030]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 5
call sym.ASOHelper.dll_public:_int___thiscall_CFileInfoArray::AddDir_class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_____class_ATL::CStringT_wchar_t__class_StrTraitMFC_DLL_wchar_t__class_ATL::ChTraitsCRT_wchar_t_____int__long_int__int__int_const_volatile___unsigned_long_int_volatile__
xor edi, edi
cmp dword [ebp - 0x2c], ebx
jle 0x10039362
push edi
lea ecx, [ebp - 0x34]
call sym.ASOHelper.dll_public:_class_CFileInfo____thiscall_CArray_class_CFileInfo__class_CFileInfo__::ElementAt_int_
push eax
lea ecx, [ebp - 0x74]
call sym.ASOHelper.dll_public:_void___thiscall_CFileInfo::constructor_class_CFileInfo_const__
lea eax, [ebp - 0x1c]
push eax
push ecx
mov byte [ebp - 4], 7
lea eax, [ebp - 0x70]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
mov dword [ebp + 0xc], ebx
lea esi, [ebp + 0xc]
call dword [0x100b6030]
push ecx
mov byte [ebp - 4], 8
lea eax, [ebp + 0x18]
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
call dword [0x100b6030]
push ecx
lea eax, [ebp + 0x14]
mov ecx, esp
mov dword [ebp - 0x20], esp
push eax
mov byte [ebp - 4], 9
call dword [0x100b6030]
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.100389b4
test byte [ebp + 0xc], 8
lea ecx, [ebp - 0x70]
je 0x10039355
mov byte [ebp - 4], 5
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
inc edi
cmp edi, dword [ebp - 0x2c]
jl 0x100392cf
jmp 0x10039362
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
jmp 0x1003936e
and dword [ebp - 0x10], 0xfffeffbf
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 2
call sym.ASOHelper.dll_public_virtual:_void___thiscall_CArray_class_CFileInfo__class_CFileInfo__::destructor_void_
cmp dword [0x101175b4], ebx
je 0x10039380
call fcn.10039e3e
mov ecx, dword [ebp + 0x10]
mov dword [ecx], eax
lea ecx, [ebp + 8]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
lea ecx, [ebp + 0x14]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
lea ecx, [ebp + 0x18]
call dword [sym.imp.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov eax, dword [ebp - 0x10]
call fcn.1008f922
ret 0x14