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

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0x28
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [0x43d080]
xor eax, ebp
mov dword [ebp - 8], eax
mov ecx, dword [0x43e554]
mov eax, dword [0x43e550]
mov edx, ecx
sub edx, 0xb2a1c049
sub edx, 1
add edx, 0xb2a1c049
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], 0xcfafa48d
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
sub eax, 0xab8b5734
je 0x40e7bc
jmp 0x40e56d
mov eax, dword [ebp - 0x2c]
sub eax, 0xafce6852
je 0x40e6f2
jmp 0x40e580
mov eax, dword [ebp - 0x2c]
sub eax, 0xc1c82298
je 0x40e779
jmp 0x40e593
mov eax, dword [ebp - 0x2c]
sub eax, 0xcfafa48d
je 0x40e643
jmp 0x40e5a6
mov eax, dword [ebp - 0x2c]
sub eax, 0xf4ffcff6
je 0x40e7ac
jmp 0x40e5b9
mov eax, dword [ebp - 0x2c]
sub eax, 0xfba157cf
je 0x40e73f
jmp 0x40e5cc
mov eax, dword [ebp - 0x2c]
sub eax, 0x30370bd
je 0x40e6fe
jmp 0x40e5df
mov eax, dword [ebp - 0x2c]
sub eax, 0xe803031
je 0x40e794
jmp 0x40e5f2
mov eax, dword [ebp - 0x2c]
sub eax, 0x28088de4
je 0x40e75f
jmp 0x40e605
mov eax, dword [ebp - 0x2c]
sub eax, 0x37a4429e
je 0x40e724
jmp 0x40e618
mov eax, dword [ebp - 0x2c]
sub eax, 0x46e70e5d
je 0x40e7a0
jmp 0x40e62b
mov eax, dword [ebp - 0x2c]
sub eax, 0x4e87a024
je 0x40e68e
jmp 0x40e63e
jmp 0x40e7cb
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, 0xab8b5734
mov ecx, 0x4e87a024
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40e7cb
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 eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [0x43e554]
mov ecx, dword [0x43e550]
mov edx, eax
sub edx, 0x1d5093a
sub edx, 1
add edx, 0x1d5093a
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, 0xab8b5734
mov ecx, 0xafce6852
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40e7cb
mov dword [ebp - 0x24], 0x30370bd
jmp 0x40e7cb
mov eax, dword [ebp - 0x18]
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 - 0x11], al
mov dword [ebp - 0x24], 0x37a4429e
jmp 0x40e7cb
mov dl, byte [ebp - 0x11]
mov eax, 0xf4ffcff6
mov ecx, 0xfba157cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40e7cb
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x24], 0x28088de4
jmp 0x40e7cb
mov eax, dword [ebp - 0x10]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 9], al
mov dword [ebp - 0x24], 0xc1c82298
jmp 0x40e7cb
mov dl, byte [ebp - 9]
mov eax, 0xe803031
mov ecx, 0x46e70e5d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40e7cb
mov dword [ebp - 0x24], 0xf4ffcff6
jmp 0x40e7cb
mov dword [ebp - 0x24], 0xf4ffcff6
jmp 0x40e7cb
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.004270e0
lea esp, [ebp - 4]
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x28]
push eax
mov eax, esp
mov dword [eax], ecx
mov dword [ebp - 0x24], 0x4e87a024
jmp 0x40e557