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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xb
push 0
push 0
dec ecx
jne 0x4038e8
push ebx
mov eax, 0x4038a0
call fcn.004036e8
xor eax, eax
push ebp
push 0x403bf3
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
call sub.ole32.dll_CoInitialize
call fcn.00402678
dec eax
sub eax, 2
jae 0x403bc5
call fcn.00402678
dec eax
je 0x403962
lea edx, [ebp - 0x14]
mov eax, 1
call fcn.004026d8
mov eax, dword [ebp - 0x14]
mov edx, 0x403c08
call fcn.00403290
je 0x403962
lea edx, [ebp - 0x18]
mov eax, 1
call fcn.004026d8
mov eax, dword [ebp - 0x18]
mov edx, 0x403c14
call fcn.00403290
jne 0x403bc5
call fcn.00402678
lea edx, [ebp - 0x1c]
call fcn.004026d8
mov eax, dword [ebp - 0x1c]
call fcn.00403334
push eax
call sub.kernel32.dll_GetFileAttributesA
cmp eax, 0xffffffff
je 0x403b85
call fcn.00402678
lea edx, [ebp - 0x20]
call fcn.004026d8
mov eax, dword [ebp - 0x20]
call fcn.00403334
push eax
call sub.kernel32.dll_LoadLibraryA
mov ebx, eax
test ebx, ebx
je 0x403b45
call fcn.00402678
dec eax
jne 0x4039c2
push 0x403c18
push ebx
call sub.kernel32.dll_GetProcAddress
mov ebx, eax
jmp 0x4039cf
push 0x403c2c
push ebx
call sub.kernel32.dll_GetProcAddress
mov ebx, eax
test ebx, ebx
je 0x403b02
call ebx
call fcn.00403834
test al, al
jne 0x403a74
call fcn.00402678
dec eax
jne 0x403a31
push 0x40
push 0x403c40
push 0x403c58
call fcn.00402678
lea edx, [ebp - 0x28]
call fcn.004026d8
push dword [ebp - 0x28]
push 0x403c78
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x24]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x40
push 0x403c40
push 0x403c58
call fcn.00402678
lea edx, [ebp - 0x30]
call fcn.004026d8
push dword [ebp - 0x30]
push 0x403ca0
lea eax, [ebp - 0x2c]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x2c]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
call fcn.00402678
dec eax
jne 0x403abf
push 0x40
push 0x403c40
push 0x403ccc
call fcn.00402678
lea edx, [ebp - 0x38]
call fcn.004026d8
push dword [ebp - 0x38]
push 0x403cf8
lea eax, [ebp - 0x34]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x34]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x40
push 0x403c40
push 0x403d0c
call fcn.00402678
lea edx, [ebp - 0x40]
call fcn.004026d8
push dword [ebp - 0x40]
push 0x403cf8
lea eax, [ebp - 0x3c]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x3c]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x10
push 0x403d34
push 0x403d48
call fcn.00402678
lea edx, [ebp - 0x48]
call fcn.004026d8
push dword [ebp - 0x48]
push 0x403d5c
lea eax, [ebp - 0x44]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x44]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x10
push 0x403d34
push 0x403d94
call fcn.00402678
lea edx, [ebp - 0x50]
call fcn.004026d8
push dword [ebp - 0x50]
push 0x403db8
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x4c]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x10
push 0x403d34
push 0x403dc4
call fcn.00402678
lea edx, [ebp - 0x58]
call fcn.004026d8
push dword [ebp - 0x58]
push 0x403db8
lea eax, [ebp - 0x54]
mov edx, 3
call fcn.00403204
mov eax, dword [ebp - 0x54]
call fcn.00403334
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x403bd8
push 0x40
push 0x403c40
push 0x403dd8
push 0
call sub.user32.dll_MessageBoxA_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x403bfa
lea eax, [ebp - 0x58]
mov edx, 0x12
call fcn.0040311c
ret