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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x418f0d
mov eax, dword fs:[0]
push eax
sub esp, 0x334
mov eax, dword [0x426034]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x250], esi
lea edi, [esi + 0x210]
push 1
push 0
mov ecx, edi
mov dword [ebp - 0x258], edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
push 2
push 0xffffffffffffffff
push 0x100c
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
push 0
mov ecx, edi
mov ebx, eax
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
push 0
push 0
push 0x1032
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x260], 0
cmp ebx, 0xffffffff
je 0x40ba4f
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
lea ecx, [ebp - 0x248]
push 0
push ebx
push ecx
mov ecx, eax
call sub.mfc120.dll_Ordinal_5729
lea ecx, [ebp - 0x24c]
mov dword [ebp - 4], 0
call dword [sym.imp.mfc120.dll_Ordinal_316]
cmp dword [ebp + 8], 0
mov byte [ebp - 4], 1
je 0x40b531
push 1
push 0
push esi
push str.All_Files__._.
push 0x104
lea ecx, [ebp - 0x248]
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
lea ecx, [ebp - 0x248]
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
push 0
lea ecx, [ebp - 0x220]
call sub.mfc120.dll_Ordinal_501
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 2
call sub.mfc120.dll_Ordinal_6103
lea ecx, [ebp - 0x220]
mov dword [eax + 0x30], str.Download_to
call sub.mfc120.dll_Ordinal_4042
lea ecx, [ebp - 0x220]
cmp eax, 1
jne 0x40ba2e
lea eax, [ebp - 0x284]
push eax
call sub.mfc120.dll_Ordinal_6193
push eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 3
call dword [sym.imp.mfc120.dll_Ordinal_1521]
lea ecx, [ebp - 0x284]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 1
call sub.mfc120.dll_Ordinal_1138
jmp 0x40b591
push 0x41bc8c
lea eax, [esi + 0x4cc]
push eax
lea eax, [ebp - 0x268]
push eax
call fcn.004042c0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 4
push ecx
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00405550
add esp, 0x18
push eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 5
call dword [sym.imp.mfc120.dll_Ordinal_1521]
lea ecx, [ebp - 0x288]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x268]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x24c]
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x40b81c
cmp dword [ebp - 0x260], 0
jne 0x40b81c
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push ebx
call fcn.00406330
push 0
test eax, eax
je 0x40b63d
lea ecx, [ebp - 0x338]
call fcn.00411ac0
mov eax, dword [ebp - 0x264]
lea ecx, [ebp - 0x29c]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x248]
push eax
mov byte [ebp - 4], 6
call dword [sym.imp.mfc120.dll_Ordinal_1521]
lea ecx, [ebp - 0x338]
call sub.mfc120.dll_Ordinal_4041
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 1
mov esi, eax
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x338]
call sub.mfc120.dll_Ordinal_1106
jmp 0x40b7fb
lea ecx, [ebp - 0x340]
call fcn.00411780
mov eax, dword [ebp - 0x264]
lea ecx, [ebp - 0x2a4]
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x248]
push eax
mov byte [ebp - 4], 7
call dword [sym.imp.mfc120.dll_Ordinal_1521]
lea eax, [ebp - 0x244]
push eax
push 0
lea ecx, [ebp - 0x24c]
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesExA]
test eax, eax
je 0x40b711
push 0xffffffffffffffff
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x290]
call fcn.00405340
push 0x41e3a8
lea eax, [ebp - 0x270]
push eax
lea ecx, [ebp - 0x290]
call fcn.0040c440
mov esi, eax
push 1
push 0
mov ecx, edi
mov byte [ebp - 4], 8
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push dword [esi]
push 0
push dword [ebp - 0x224]
call fcn.00405dd0
push eax
lea eax, [ebp - 0x29c]
push str._s_r_nmodified:__s
push eax
call dword [sym.imp.mfc120.dll_Ordinal_4764]
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x270]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push ebx
call sub.mfc120.dll_Ordinal_5695
mov edi, eax
push 0xffffffffffffffff
lea ecx, [edi + 0xc]
push ecx
lea ecx, [ebp - 0x298]
call fcn.00405340
push 0x41e3a8
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x298]
call fcn.0040c440
mov esi, eax
mov ecx, dword [ebp - 0x258]
push 1
push 0
mov byte [ebp - 4], 9
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push dword [esi]
push 0
push dword [edi + 4]
call fcn.00405dd0
push eax
lea eax, [ebp - 0x2a0]
push str._s_r_nmodified:__s
push eax
call dword [sym.imp.mfc120.dll_Ordinal_4764]
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x278]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x340]
call sub.mfc120.dll_Ordinal_4041
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 1
mov esi, eax
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x2a0]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x2a4]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x340]
call sub.mfc120.dll_Ordinal_1106
mov edi, dword [ebp - 0x258]
cmp esi, 6
je 0x40b816
cmp esi, 0x3207
jne 0x40b8f2
mov dword [ebp - 0x260], 1
mov esi, dword [ebp - 0x250]
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push ebx
call fcn.00406330
test eax, eax
je 0x40b900
lea eax, [esi + 0x314]
push eax
lea ecx, [ebp - 0x25c]
call dword [sym.imp.mfc120.dll_Ordinal_300]
push 0x2f
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 0xa
call dword [sym.imp.mfc120.dll_Ordinal_14192]
push 0x41c2d4
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x27c]
push eax
call fcn.004042c0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0xb
push ecx
push eax
lea eax, [ebp - 0x280]
push eax
call fcn.00405550
add esp, 0x18
mov esi, eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0xc
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
mov ecx, esi
call dword [sym.imp.mfc120.dll_Ordinal_1656]
mov ecx, dword [ebp - 0x250]
push eax
call fcn.0040ba70
lea ecx, [ebp - 0x280]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x27c]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x25c]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc120.dll_Ordinal_1041]
jmp 0x40b9d2
cmp esi, 7
jne 0x40ba37
jmp 0x40b9d2
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
mov ecx, eax
push ebx
call fcn.00405f40
lea ecx, [esi + 0x314]
mov edi, eax
push ecx
lea ecx, [ebp - 0x254]
call dword [sym.imp.mfc120.dll_Ordinal_300]
push 0x2f
lea ecx, [ebp - 0x254]
mov byte [ebp - 4], 0xd
call dword [sym.imp.mfc120.dll_Ordinal_14192]
push 0x41c2d4
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.004042c0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0xe
push ecx
push eax
lea eax, [ebp - 0x274]
push eax
call fcn.00405550
add esp, 0x18
mov esi, eax
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0xf
call dword [sym.imp.mfc120.dll_Ordinal_1656]
push eax
push edi
mov ecx, esi
call dword [sym.imp.mfc120.dll_Ordinal_1656]
mov ecx, dword [ebp - 0x250]
push eax
call fcn.0040bdb0
lea ecx, [ebp - 0x274]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x26c]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x254]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc120.dll_Ordinal_1041]
mov edi, dword [ebp - 0x258]
push 1
push 0
mov ecx, edi
call sub.mfc120.dll_Ordinal_6140
push eax
call fcn.004060b0
push eax
call sub.mfc120.dll_Ordinal_2157
add esp, 8
push 2
push ebx
push 0x100c
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0x24c]
mov ebx, eax
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc120.dll_Ordinal_1041]
cmp ebx, 0xffffffff
je 0x40ba4f
mov esi, dword [ebp - 0x250]
jmp 0x40b445
mov byte [ebp - 4], 1
call sub.mfc120.dll_Ordinal_1138
lea ecx, [ebp - 0x24c]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
lea ecx, [ebp - 0x248]
call dword [sym.imp.mfc120.dll_Ordinal_1041]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00417198
mov esp, ebp
pop ebp
ret 4