Function at 0x44758d
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
push ebp
sub esp, 0x410
lea ebp, [esp - 4]
mov eax, dword [0x69c24c]
xor eax, ebp
mov dword [ebp + 0x410], eax
push 0x30
mov eax, 0x5edda3
call fcn.005bb14d
mov edi, dword [ebp + 0x41c]
lea eax, [ebp - 0x3c]
mov ebx, dword [ebp + 0x420]
and dword [ebp - 0x18], 0
push 0x2e6
push 9
push str.MFCEx.cpp
push eax
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x14], ebx
call fcn.00408f4f
add esp, 0x10
mov dword [ebp - 4], 1
call fcn.004887ac
push eax
lea ecx, [ebp - 0x10]
call fcn.0040654d
mov byte [ebp - 4], 3
push ebx
call fcn.00481ae0
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x10]
call fcn.00406ea2
lea ecx, [ebp - 0x10]
call fcn.004489ef
mov ecx, eax
call fcn.00448923
mov eax, dword [ebp - 0x10]
cmp dword [eax - 0xc], 3
jg 0x44764c
push 0x60bba8
mov ecx, edi
call fcn.00408edd
mov dword [ebp - 0x18], 1
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00406e44
mov byte [ebp - 4], 0
jmp 0x447769
xor ebx, ebx
mov ecx, dword [eax - 0xc]
push 0x5c
pop edx
push edx
push eax
mov dword [ebp + ebx*4], ecx
call fcn.005bd93a
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4476d2
sub esi, dword [ebp - 0x10]
sar esi, 1
js 0x4476d2
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x447680
test al, 0x10
jne 0x4476d2
cmp esi, 1
jne 0x447699
mov eax, dword [ebp - 0x10]
cmp dword [eax - 0xc], 0
jl 0x4476c8
movzx eax, word [eax]
push 0x5c
pop ecx
cmp ax, cx
je 0x4476d2
push esi
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x10]
call fcn.004096af
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x10]
push eax
call fcn.004067de
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.00406e44
mov eax, dword [ebp - 0x10]
inc ebx
jmp 0x44764e
push 0x80070057
call fcn.00406a25
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
call fcn.00408edd
mov byte [ebp - 4], 7
lea esi, [ebx - 1]
xor ebx, ebx
test esi, esi
js 0x447735
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x10]
call fcn.004067de
push dword [ebp + esi*4]
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x10]
call fcn.004096af
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10]
push eax
call fcn.004067de
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406e44
push ebx
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x44778e
sub esi, 1
jns 0x4476ea
push 0x60bba8
mov ecx, edi
call fcn.00408edd
mov dword [ebp - 0x18], 1
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00406e44
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.00406e44
mov byte [ebp - 4], bl
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x410]
xor ecx, ebp
call fcn.005bb105
lea esp, [ebp + 0x414]
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push ebx
push ebx
push ebx
mov esi, eax
lea eax, [ebp - 0x14]
push ebx
push esi
push eax
call fcn.00459f3f
mov byte [ebp - 4], 0xa
push dword [eax]
push esi
push dword [ebp - 0x10]
push 0x68
push edi
call fcn.00459891
add esp, 0x30
mov dword [ebp - 0x18], 1
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00406e44
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.00406e44
jmp 0x447757