Function at 0x40d890
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 [0x43e080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x43f564]
mov eax, dword [0x43f560]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
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], 0x69d88dbe
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
sub eax, 0x812a09f0
je 0x40db36
jmp 0x40d8f6
mov eax, dword [ebp - 0x2c]
sub eax, 0x884336b6
je 0x40db42
jmp 0x40d909
mov eax, dword [ebp - 0x2c]
sub eax, 0xc227ac9d
je 0x40dab8
jmp 0x40d91c
mov eax, dword [ebp - 0x2c]
sub eax, 0xc806fffd
je 0x40db1b
jmp 0x40d92f
mov eax, dword [ebp - 0x2c]
sub eax, 0xcc0fe9ff
je 0x40dae1
jmp 0x40d942
mov eax, dword [ebp - 0x2c]
sub eax, 0xe1af4094
je 0x40daf5
jmp 0x40d955
mov eax, dword [ebp - 0x2c]
sub eax, 0xed77a2cf
je 0x40da17
jmp 0x40d968
mov eax, dword [ebp - 0x2c]
sub eax, 0xf637fa2a
je 0x40db5f
jmp 0x40d97b
mov eax, dword [ebp - 0x2c]
sub eax, 0x12ca6ee7
je 0x40da90
jmp 0x40d98e
mov eax, dword [ebp - 0x2c]
sub eax, 0x300915df
je 0x40da9c
jmp 0x40d9a1
mov eax, dword [ebp - 0x2c]
sub eax, 0x69d88dbe
je 0x40d9cc
jmp 0x40d9b4
mov eax, dword [ebp - 0x2c]
sub eax, 0x7f3ef59a
je 0x40db4e
jmp 0x40d9c7
jmp 0x40db66
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, 0xf637fa2a
mov ecx, 0xed77a2cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db66
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov ecx, dword [0x43f564]
mov eax, dword [0x43f560]
mov edx, ecx
sub edx, 0xecb95d0e
sub edx, 1
add edx, 0xecb95d0e
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, 0xf637fa2a
mov ecx, 0x12ca6ee7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db66
mov dword [ebp - 0x24], 0x300915df
jmp 0x40db66
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], 0xc227ac9d
jmp 0x40db66
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov edx, eax
mov eax, 0x7f3ef59a
mov ecx, 0xcc0fe9ff
cmp edx, 0xffffffff
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db66
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], 0xe1af4094
jmp 0x40db66
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], 0xc806fffd
jmp 0x40db66
mov dl, byte [ebp - 0xd]
mov eax, 0x812a09f0
mov ecx, 0x884336b6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db66
mov dword [ebp - 0x24], 0x7f3ef59a
jmp 0x40db66
mov dword [ebp - 0x24], 0x7f3ef59a
jmp 0x40db66
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00426b40
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x24], 0xed77a2cf
jmp 0x40d8e0