Function at 0x403b00
Capabilities:
Check if file exists

Disassembly:
push ecx
xor ecx, ecx
mov eax, 0x5eacb4
cmp dword [eax - 0x14], 0
je 0x403b44
cmp dword [eax], 0
je 0x403b34
cmp dword [eax + 0x14], 0
je 0x403b37
cmp dword [eax + 0x28], 0
je 0x403b3c
cmp dword [eax + 0x3c], 0
je 0x403b41
add eax, 0x64
add ecx, 5
cmp eax, 0x5eb484
jl 0x403b08
jmp 0x403b44
inc ecx
jmp 0x403b44
add ecx, 2
jmp 0x403b44
add ecx, 3
jmp 0x403b44
add ecx, 4
mov dword [esp], ecx
cmp ecx, 0x64
jne 0x403b51
lea eax, [ecx - 0x67]
pop ecx
ret
push esi
mov esi, dword [esp + 0x14]
mov ecx, 0x40d274
mov eax, esi
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403b80
test dl, dl
je 0x403b7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403b80
add eax, 2
add ecx, 2
test dl, dl
jne 0x403b60
xor eax, eax
jmp 0x403b85
sbb eax, eax
sbb eax, 0xffffffff
push ebp
push edi
test eax, eax
jne 0x403b9b
lea edi, [eax + 3]
mov esi, 0x80000000
lea ebp, [edi + 0x7d]
jmp 0x403d9c
mov ecx, 0x40d354
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403bc2
test dl, dl
je 0x403bbe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403bc2
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ba2
xor eax, eax
jmp 0x403bc7
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403bdb
lea edi, [eax + 2]
mov esi, 0x40000000
lea ebp, [edi + 0x7e]
jmp 0x403d9c
mov ecx, 0x40d424
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403c02
test dl, dl
je 0x403bfe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403c02
add eax, 2
add ecx, 2
test dl, dl
jne 0x403be2
xor eax, eax
jmp 0x403c07
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403c16
lea edi, [eax + 3]
lea ebp, [edi + 0x7d]
jmp 0x403d97
mov ecx, 0x40d420
mov eax, esi
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403c40
test dl, dl
je 0x403c3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403c40
add eax, 2
add ecx, 2
test dl, dl
jne 0x403c20
xor eax, eax
jmp 0x403c45
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403c54
lea edi, [eax + 2]
lea ebp, [edi + 0x7e]
jmp 0x403d97
mov ecx, 0x40d40c
mov eax, esi
jmp 0x403c60
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403c80
test dl, dl
je 0x403c7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403c80
add eax, 2
add ecx, 2
test dl, dl
jne 0x403c60
xor eax, eax
jmp 0x403c85
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403c93
mov ebp, 0x80
jmp 0x403d92
mov ecx, 0x40d41c
mov eax, esi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403cc0
test dl, dl
je 0x403cbc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403cc0
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ca0
xor eax, eax
jmp 0x403cc5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403cdb
mov esi, 0x40000000
lea edi, [eax + 2]
mov ebp, 0x80000080
jmp 0x403d9c
mov ecx, 0x40d418
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403d02
test dl, dl
je 0x403cfe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403d02
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ce2
xor eax, eax
jmp 0x403d07
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403d18
lea edi, [eax + 3]
mov ebp, 0x80000080
jmp 0x403d97
mov ecx, 0x40d414
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403d40
test dl, dl
je 0x403d3c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403d40
add eax, 2
add ecx, 2
test dl, dl
jne 0x403d20
xor eax, eax
jmp 0x403d45
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403d53
lea edi, [eax + 2]
mov ebp, 0x80000080
jmp 0x403d97
mov ecx, 0x40d410
mov eax, esi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403d80
test dl, dl
je 0x403d7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403d80
add eax, 2
add ecx, 2
test dl, dl
jne 0x403d60
xor eax, eax
jmp 0x403d85
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403f50
mov ebp, 0x80000080
mov edi, 4
mov esi, 0xc0000000
push ebx
mov ebx, dword [esp + 0x24]
mov ecx, 0x40d274
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403dc8
test dl, dl
je 0x403dc4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403dc8
add eax, 2
add ecx, 2
test dl, dl
jne 0x403da8
xor eax, eax
jmp 0x403dcd
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403dd8
mov eax, 1
jmp 0x403e52
mov ecx, 0x40d354
mov eax, ebx
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403e00
test dl, dl
je 0x403dfc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403e00
add eax, 2
add ecx, 2
test dl, dl
jne 0x403de0
xor eax, eax
jmp 0x403e05
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403e10
mov eax, 2
jmp 0x403e52
mov ecx, 0x40d358
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403e37
test dl, dl
je 0x403e33
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403e37
add eax, 2
add ecx, 2
test dl, dl
jne 0x403e17
xor eax, eax
jmp 0x403e3c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x403e47
mov eax, 3
jmp 0x403e52
cmp byte [ebx], 0
jne 0x403f3d
xor eax, eax
xor ebx, ebx
push ebx
push ebp
push edi
push ebx
push eax
mov eax, dword [esp + 0x2c]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, dword [esp + 0x10]
lea ecx, [edi + edi*4]
add ecx, ecx
add ecx, ecx
or ebp, 0xffffffff
mov dword [ecx + 0x5eaca4], eax
mov dword [ecx + 0x5eacac], ebp
mov dword [ecx + 0x5eacb0], ebx
cmp eax, ebp
jne 0x403eb5
mov dword [ecx + 0x5eaca0], ebx
mov dword [ecx + 0x5eaca8], ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
cmp eax, 2
setne cl
pop ebx
mov dword [0x5eb470], eax
add ecx, 0xfffffffe
mov edi, ecx
mov eax, edi
pop edi
pop ebp
pop esi
pop ecx
ret
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
mov dword [ecx + 0x5eaca0], 1
mov dword [ecx + 0x5eaca8], edx
mov ecx, 0x40d40c
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403ef4
test dl, dl
je 0x403ef0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403ef4
add eax, 2
add ecx, 2
test dl, dl
jne 0x403ed4
xor eax, eax
jmp 0x403ef8
sbb eax, eax
sbb eax, ebp
cmp eax, ebx
je 0x403f2b
mov ecx, 0x40d410
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x403f23
test dl, dl
je 0x403f1f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x403f23
add eax, 2
add ecx, 2
test dl, dl
jne 0x403f03
xor eax, eax
jmp 0x403f27
sbb eax, eax
sbb eax, ebp
cmp eax, ebx
jne 0x403f35
push ebp
push edi
call fcn.00403940
add esp, 8
pop ebx
mov eax, edi
pop edi
pop ebp
pop esi
pop ecx
ret
pop ebx
pop edi
pop ebp
mov dword [0x5eb470], 0xffffff9e
or eax, 0xffffffff
pop esi
pop ecx
ret
pop edi
pop ebp
mov dword [0x5eb470], 0xffffff9d
or eax, 0xffffffff
pop esi
pop ecx
ret