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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x28
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x449080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x44a574]
mov eax, dword [0x44a570]
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 - 0x22], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x21], al
mov dword [ebp - 0x28], 0xe892b616
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
sub eax, 0x8323084e
je 0x417460
jmp 0x417176
mov eax, dword [ebp - 0x30]
sub eax, 0x88c5baed
je 0x417637
jmp 0x417189
mov eax, dword [ebp - 0x30]
sub eax, 0x9e641c65
je 0x4174fa
jmp 0x41719c
mov eax, dword [ebp - 0x30]
sub eax, 0xa1b381ae
je 0x417643
jmp 0x4171af
mov eax, dword [ebp - 0x30]
sub eax, 0xa9ce2ed6
je 0x41746c
jmp 0x4171c2
mov eax, dword [ebp - 0x30]
sub eax, 0xb39b4f8f
je 0x41758d
jmp 0x4171d5
mov eax, dword [ebp - 0x30]
sub eax, 0xbe21573e
je 0x4173f8
jmp 0x4171e8
mov eax, dword [ebp - 0x30]
sub eax, 0xc9e52589
je 0x417487
jmp 0x4171fb
mov eax, dword [ebp - 0x30]
sub eax, 0xe14aeba3
je 0x4175db
jmp 0x41720e
mov eax, dword [ebp - 0x30]
sub eax, 0xe892b616
je 0x4172f7
jmp 0x417221
mov eax, dword [ebp - 0x30]
sub eax, 0xf9cb8aa2
je 0x4176d3
jmp 0x417234
mov eax, dword [ebp - 0x30]
sub eax, 0x47822f8
je 0x417676
jmp 0x417247
mov eax, dword [ebp - 0x30]
sub eax, 0x239fd4ab
je 0x417581
jmp 0x41725a
mov eax, dword [ebp - 0x30]
sub eax, 0x2cad13bb
je 0x417379
jmp 0x41726d
mov eax, dword [ebp - 0x30]
sub eax, 0x36fc0640
je 0x41765e
jmp 0x417280
mov eax, dword [ebp - 0x30]
sub eax, 0x441e0bb4
je 0x417385
jmp 0x417293
mov eax, dword [ebp - 0x30]
sub eax, 0x51dae2cd
je 0x4176b6
jmp 0x4172a6
mov eax, dword [ebp - 0x30]
sub eax, 0x5e30bb97
je 0x41769b
jmp 0x4172b9
mov eax, dword [ebp - 0x30]
sub eax, 0x67f97218
je 0x41731d
jmp 0x4172cc
mov eax, dword [ebp - 0x30]
sub eax, 0x6fc92ee4
je 0x41766a
jmp 0x4172df
mov eax, dword [ebp - 0x30]
sub eax, 0x7fba8fc6
je 0x417687
jmp 0x4172f2
jmp 0x4176dd
mov al, byte [ebp - 0x22]
mov cl, byte [ebp - 0x21]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x7fba8fc6
mov ecx, 0x67f97218
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov ecx, dword [ebp - 0x2c]
push eax
mov eax, esp
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x44a574]
mov ecx, dword [0x44a570]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0x7fba8fc6
mov ecx, 0x2cad13bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov dword [ebp - 0x28], 0x441e0bb4
jmp 0x4176dd
mov ecx, dword [0x44a574]
mov eax, dword [0x44a570]
mov edx, ecx
sub edx, 0xb6505efb
sub edx, 1
add edx, 0xb6505efb
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, 0x5e30bb97
mov ecx, 0xbe21573e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov eax, dword [ebp - 0x1c]
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 [0x44a574]
mov ecx, dword [0x44a570]
mov edx, eax
add edx, 0xaeea70dd
sub edx, 1
sub edx, 0xaeea70dd
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, 0x5e30bb97
mov ecx, 0x8323084e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov dword [ebp - 0x28], 0xa9ce2ed6
jmp 0x4176dd
mov dl, byte [ebp - 0x15]
mov eax, 0x47822f8
mov ecx, 0xc9e52589
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov ecx, dword [0x44a574]
mov eax, dword [0x44a570]
mov edx, ecx
sub edx, 0xcc9b2cfd
sub edx, 1
add edx, 0xcc9b2cfd
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, 0x51dae2cd
mov ecx, 0x9e641c65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x44a574]
mov eax, dword [0x44a570]
mov edx, ecx
sub edx, 0x749c63e3
sub edx, 1
add edx, 0x749c63e3
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, 0x51dae2cd
mov ecx, 0x239fd4ab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov dword [ebp - 0x28], 0xb39b4f8f
jmp 0x4176dd
mov eax, dword [0x44a574]
mov ecx, dword [0x44a570]
mov edx, eax
sub edx, 0x3d23cfb5
sub edx, 1
add edx, 0x3d23cfb5
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, 0xf9cb8aa2
mov ecx, 0xe14aeba3
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov eax, dword [ebp - 0x14]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0xd], al
mov eax, dword [0x44a574]
mov ecx, dword [0x44a570]
mov edx, eax
add edx, 0x1dd1ad0
sub edx, 1
sub edx, 0x1dd1ad0
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, 0xf9cb8aa2
mov ecx, 0x88c5baed
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov dword [ebp - 0x28], 0xa1b381ae
jmp 0x4176dd
mov dl, byte [ebp - 0xd]
mov eax, 0x36fc0640
mov ecx, 0x6fc92ee4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4176dd
mov dword [ebp - 0x28], 0x47822f8
jmp 0x4176dd
mov dword [ebp - 0x28], 0x47822f8
jmp 0x4176dd
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.00431640
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x2c]
push eax
mov eax, esp
mov dword [eax], ecx
mov dword [ebp - 0x28], 0x67f97218
jmp 0x4176dd
mov eax, dword [ebp - 0x1c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x28], 0xbe21573e
jmp 0x4176dd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x28], 0x9e641c65
jmp 0x4176dd
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], 0xe14aeba3
jmp 0x417160