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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 8], 0x40205c
xor ebx, ebx
mov dword [0x435798], ebx
mov ecx, dword [edi]
mov esi, ecx
lea edx, [esi + 2]
mov ax, word [esi]
add esi, 2
cmp ax, bx
jne 0x408e91
movzx eax, word [ecx]
sub esi, edx
sar esi, 1
mov ebx, ecx
mov dword [ebp - 0x10], esi
mov edx, eax
test ax, ax
je 0x408ec0
xor edx, edx
mov eax, ecx
mov ebx, ecx
add ecx, 2
cmp word [ecx], dx
jne 0x408eb1
movzx edx, word [eax]
push 0x3a
pop eax
mov dword [ebp - 4], ebx
mov dword [ebp - 0x14], eax
cmp dx, ax
je 0x41b64a
mov ecx, 0x250
call fcn.0040dc10
test eax, eax
je 0x41b782
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 4]
push 0x5c
pop esi
mov dword [ebp - 0xc], esi
movzx eax, word [eax]
cmp ax, si
je 0x409036
mov ecx, dword [edi]
mov edx, esi
call fcn.00410145
mov esi, eax
test esi, esi
je 0x41b70d
add esi, 2
xor ebx, ebx
push 0x402424
push esi
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x40903d
push 0x402500
push esi
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x40903d
cmp dword [0x42d0d8], 4
je 0x409011
push dword [edi]
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_GetFileAttributesW]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x408fff
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov dword [0x435798], eax
cmp ebx, 0xffffffff
jne 0x409006
xor ebx, ebx
inc ebx
xor eax, eax
mov esi, eax
mov eax, dword [edi]
mov edx, eax
movzx ecx, word [edx]
test cx, cx
je 0x408fa2
cmp cx, word [ebp - 0xc]
je 0x408f9e
cmp cx, word [ebp - 0x14]
je 0x408f99
add edx, 2
inc ebx
jmp 0x408f7f
cmp ebx, 2
jne 0x408f93
mov esi, edx
jmp 0x408f93
mov dword [edi + 0xc], esi
test esi, esi
je 0x41b77b
xor eax, eax
cmp word [esi], ax
je 0x41b774
lea eax, [esi + 2]
push 0x2a
pop edx
mov ecx, esi
mov dword [edi + 0x10], eax
call fcn.0040a574
test eax, eax
je 0x408fef
or dword [edi + 0x1c], 8
mov dword [0x435750], 1
push 0x2e
pop edx
mov ecx, esi
call fcn.0040a574
mov dword [edi + 0x14], eax
xor eax, eax
pop edi
pop esi
inc eax
pop ebx
leave
ret
push 0x3f
pop edx
mov ecx, esi
call fcn.0040a574
test eax, eax
je 0x408fda
jmp 0x408fcc
xor eax, eax
jmp 0x408f66
test bl, 0x10
je 0x408f74
jmp 0x40903d
cmp dword [0x435760], 1
je 0x408f4d
cmp dword [0x42d0d4], 1
jne 0x408f74
mov dword [0x42d0d4], ebx
jmp 0x408f4d
mov dword [ebp - 8], 0x40205e
mov esi, dword [edi]
mov ecx, esi
push 0x5c
pop eax
mov edx, eax
call fcn.00410145
test eax, eax
je 0x41b743
mov esi, dword [ebp - 0x10]
mov ebx, dword [edi]
add esi, 5
lea ecx, [esi + esi]
call fcn.0040dc10
test eax, eax
je 0x41b782
push ebx
mov edx, esi
mov dword [edi], eax
mov ecx, eax
call fcn.0040f2e0
push dword [ebp - 8]
mov ecx, dword [edi]
mov edx, esi
call fcn.0040fb80
mov eax, dword [edi + 0x18]
mov dword [eax], 0x10
jmp 0x408f74
cmp esi, 2
jle 0x408ed2
xor eax, eax
mov word [ebx], ax
lea eax, [ebx - 2]
mov dword [ebp - 4], eax
xor eax, eax
push eax
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetErrorMode]
push ecx
mov ecx, dword [edi]
mov edx, 0x8000
mov dword [ebp - 0xc], eax
call fcn.004104e0
mov esi, eax
cmp esi, 0xffffffff
je 0x41b6aa
mov ecx, esi
call fcn.0040dcd8
test eax, eax
jne 0x41b694
mov ecx, esi
call fcn.00429e01
test eax, eax
je 0x41b6aa
mov ecx, esi
call fcn.0040dcd8
test eax, eax
jne 0x41b6f8
mov ecx, esi
call fcn.00429e01
test eax, eax
jmp 0x41b6f6
cmp dword [0x42d0d8], 4
push 0x3a
pop eax
mov dword [ebp - 4], ebx
mov word [ebx], ax
jne 0x41b6e2
cmp dword [0x43575c], 0
jne 0x41b6d6
push dword [edi]
push 1
push 0x236b
call fcn.00407834
add esp, 0xc
mov dword [0x435758], 1
jmp 0x41b6f3
push dword [edi]
push 1
push 0x236b
call fcn.00407834
add esp, 0xc
cmp esi, 0xffffffff
je 0x41b6ff
mov ecx, esi
call fcn.0040a0ab
push dword [ebp - 0xc]
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetErrorMode]
jmp 0x408ed2
mov esi, dword [edi]
xor ebx, ebx
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x41b716
sub ecx, edx
sar ecx, 1
cmp ecx, 2
jb 0x408f14
push 0x3a
pop eax
cmp word [esi + 2], ax
jne 0x408f14
add esi, 4
jmp 0x408f14
mov ecx, esi
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x41b74a
sub ecx, edx
sar ecx, 1
cmp ecx, 2
jne 0x409053
push 0x3a
pop eax
cmp word [esi + 2], ax
je 0x409083
jmp 0x409053
mov eax, esi
jmp 0x408fbb
mov esi, eax
jmp 0x408fbb
call fcn.00429762
push 1
push 0x43fa20
call dword [sym.imp.msvcrt.dll_longjmp]
int3