Function at 0x408fd0
Capabilities:
Check if file exists
Delete file
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x24
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [0x438080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x43956c]
mov eax, dword [0x439568]
mov edx, ecx
add edx, 0xfec4fe33
sub edx, 1
sub edx, 0xfec4fe33
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x1e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x1d], al
mov dword [ebp - 0x24], 0x431ab58b
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
sub eax, 0x86d144c1
je 0x409333
jmp 0x40903e
mov eax, dword [ebp - 0x2c]
sub eax, 0x89138575
je 0x4091d1
jmp 0x409051
mov eax, dword [ebp - 0x2c]
sub eax, 0x8d93ebd2
je 0x409499
jmp 0x409064
mov eax, dword [ebp - 0x2c]
sub eax, 0x9923baee
je 0x40935a
jmp 0x409077
mov eax, dword [ebp - 0x2c]
sub eax, 0x9a8424b8
je 0x40933f
jmp 0x40908a
mov eax, dword [ebp - 0x2c]
sub eax, 0xb87f89bf
je 0x40925e
jmp 0x40909d
mov eax, dword [ebp - 0x2c]
sub eax, 0xc94ee64d
je 0x4093bb
jmp 0x4090b0
mov eax, dword [ebp - 0x2c]
sub eax, 0xd5eaf887
je 0x40947c
jmp 0x4090c3
mov eax, dword [ebp - 0x2c]
sub eax, 0xd6219e35
je 0x409488
jmp 0x4090d6
mov eax, dword [ebp - 0x2c]
sub eax, 0xdec2e0a5
je 0x409394
jmp 0x4090e9
mov eax, dword [ebp - 0x2c]
sub eax, 0xf1101c0b
je 0x409252
jmp 0x4090fc
mov eax, dword [ebp - 0x2c]
sub eax, 0x20414457
je 0x4093af
jmp 0x40910f
mov eax, dword [ebp - 0x2c]
sub eax, 0x289f68de
je 0x40936e
jmp 0x409122
mov eax, dword [ebp - 0x2c]
sub eax, 0x2c7e0de8
je 0x409409
jmp 0x409135
mov eax, dword [ebp - 0x2c]
sub eax, 0x33257669
je 0x4094ca
jmp 0x409148
mov eax, dword [ebp - 0x2c]
sub eax, 0x431ab58b
je 0x409186
jmp 0x40915b
mov eax, dword [ebp - 0x2c]
sub eax, 0x67ca5d7d
je 0x4094ad
jmp 0x40916e
mov eax, dword [ebp - 0x2c]
sub eax, 0x7889a494
je 0x4092c9
jmp 0x409181
jmp 0x4094d1
mov bl, byte [ebp - 0x1e]
mov dh, byte [ebp - 0x1d]
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x8d93ebd2
mov ecx, 0x89138575
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov ecx, dword [ebp - 0x28]
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax], ecx
mov ecx, dword [0x43956c]
mov eax, dword [0x439568]
mov edx, ecx
sub edx, 0x341eb859
sub edx, 1
add edx, 0x341eb859
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x8d93ebd2
mov ecx, 0xf1101c0b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov dword [ebp - 0x24], 0xb87f89bf
jmp 0x4094d1
mov ecx, dword [0x43956c]
mov eax, dword [0x439568]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x67ca5d7d
mov ecx, 0x7889a494
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
setne al
and al, 1
mov byte [ebp - 0x15], al
mov eax, dword [0x43956c]
mov ecx, dword [0x439568]
mov edx, eax
sub edx, 0xab0ea2b8
sub edx, 1
add edx, 0xab0ea2b8
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x67ca5d7d
mov ecx, 0x86d144c1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov dword [ebp - 0x24], 0x9a8424b8
jmp 0x4094d1
mov dl, byte [ebp - 0x15]
mov eax, 0xd6219e35
mov ecx, 0x9923baee
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], 0x289f68de
jmp 0x4094d1
mov eax, dword [ebp - 0x14]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0xd], al
mov dword [ebp - 0x24], 0xdec2e0a5
jmp 0x4094d1
mov dl, byte [ebp - 0xd]
mov eax, 0x20414457
mov ecx, 0xc94ee64d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov dword [ebp - 0x24], 0xd6219e35
jmp 0x4094d1
mov eax, dword [0x43956c]
mov ecx, dword [0x439568]
mov edx, eax
add edx, 0xccbdd63
sub edx, 1
sub edx, 0xccbdd63
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x33257669
mov ecx, 0x2c7e0de8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov ecx, dword [0x43956c]
mov eax, dword [0x439568]
mov edx, ecx
sub edx, 0xecc46399
sub edx, 1
add edx, 0xecc46399
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x33257669
mov ecx, 0xd5eaf887
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x4094d1
mov dword [ebp - 0x24], 0xd6219e35
jmp 0x4094d1
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00421bd0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x28]
push eax
mov eax, esp
mov dword [eax], ecx
mov dword [ebp - 0x24], 0x89138575
jmp 0x4094d1
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24], 0x7889a494
jmp 0x4094d1
mov dword [ebp - 0x24], 0x2c7e0de8
jmp 0x409028