Function at 0x415f40
Capabilities:
Delete file
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x30
mov eax, dword [ebp + 8]
mov dword [ebp - 0x34], eax
mov eax, dword [0x4c8080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
mov edx, ecx
sub edx, 0xda23ddc8
sub edx, 1
add edx, 0xda23ddc8
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x2a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x29], al
mov dword [ebp - 0x30], 0xb1187ca5
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x38], eax
sub eax, 0x88ce5bbb
je 0x416b60
jmp 0x415fae
mov eax, dword [ebp - 0x38]
sub eax, 0x8de52b2d
je 0x41631c
jmp 0x415fc1
mov eax, dword [ebp - 0x38]
sub eax, 0x935edc60
je 0x4168b4
jmp 0x415fd4
mov eax, dword [ebp - 0x38]
sub eax, 0x9424bca0
je 0x4166a9
jmp 0x415fe7
mov eax, dword [ebp - 0x38]
sub eax, 0x956d5fad
je 0x41650a
jmp 0x415ffa
mov eax, dword [ebp - 0x38]
sub eax, 0x9b66a13c
je 0x416975
jmp 0x41600d
mov eax, dword [ebp - 0x38]
sub eax, 0x9dacfefa
je 0x416a29
jmp 0x416020
mov eax, dword [ebp - 0x38]
sub eax, 0x9dbd1eae
je 0x41682d
jmp 0x416033
mov eax, dword [ebp - 0x38]
sub eax, 0xa2508010
je 0x416899
jmp 0x416046
mov eax, dword [ebp - 0x38]
sub eax, 0xafe97f23
je 0x416451
jmp 0x416059
mov eax, dword [ebp - 0x38]
sub eax, 0xb1187ca5
je 0x4162d1
jmp 0x41606c
mov eax, dword [ebp - 0x38]
sub eax, 0xb4cc3b97
je 0x416a3a
jmp 0x41607f
mov eax, dword [ebp - 0x38]
sub eax, 0xbb62d966
je 0x4165f0
jmp 0x416092
mov eax, dword [ebp - 0x38]
sub eax, 0xbc32e74b
je 0x4163ef
jmp 0x4160a5
mov eax, dword [ebp - 0x38]
sub eax, 0xbf029cb9
je 0x416b93
jmp 0x4160b8
mov eax, dword [ebp - 0x38]
sub eax, 0xc499d782
je 0x4169c3
jmp 0x4160cb
mov eax, dword [ebp - 0x38]
sub eax, 0xc5ca1736
je 0x416714
jmp 0x4160de
mov eax, dword [ebp - 0x38]
sub eax, 0xcb33c58d
je 0x416370
jmp 0x4160f1
mov eax, dword [ebp - 0x38]
sub eax, 0xce6bfc09
je 0x416a55
jmp 0x416104
mov eax, dword [ebp - 0x38]
sub eax, 0xdb3c0152
je 0x4167c2
jmp 0x416117
mov eax, dword [ebp - 0x38]
sub eax, 0xe0f5fc33
je 0x416b7b
jmp 0x41612a
mov eax, dword [ebp - 0x38]
sub eax, 0xe3670caf
je 0x416a1d
jmp 0x41613d
mov eax, dword [ebp - 0x38]
sub eax, 0xf137d48f
je 0x4165fc
jmp 0x416150
mov eax, dword [ebp - 0x38]
sub eax, 0xf6e424ef
je 0x416873
jmp 0x416163
mov eax, dword [ebp - 0x38]
sub eax, 0xfa466e28
je 0x41637c
jmp 0x416176
mov eax, dword [ebp - 0x38]
sub eax, 0x67c630
je 0x416663
jmp 0x416189
mov eax, dword [ebp - 0x38]
sub eax, 0xa431a56
je 0x416634
jmp 0x41619c
mov eax, dword [ebp - 0x38]
sub eax, 0x143751e4
je 0x416b51
jmp 0x4161af
mov eax, dword [ebp - 0x38]
sub eax, 0x1d14c23f
je 0x416a46
jmp 0x4161c2
mov eax, dword [ebp - 0x38]
sub eax, 0x23e37ce8
je 0x416b25
jmp 0x4161d5
mov eax, dword [ebp - 0x38]
sub eax, 0x3e428081
je 0x41664f
jmp 0x4161e8
mov eax, dword [ebp - 0x38]
sub eax, 0x3f13cf0d
je 0x416b87
jmp 0x4161fb
mov eax, dword [ebp - 0x38]
sub eax, 0x3fbb4af5
je 0x416b3d
jmp 0x41620e
mov eax, dword [ebp - 0x38]
sub eax, 0x414fcae6
je 0x41661a
jmp 0x416221
mov eax, dword [ebp - 0x38]
sub eax, 0x41b3bb05
je 0x41687f
jmp 0x416234
mov eax, dword [ebp - 0x38]
sub eax, 0x496f1d6e
je 0x416902
jmp 0x416247
mov eax, dword [ebp - 0x38]
sub eax, 0x5ca5091b
je 0x416aa3
jmp 0x41625a
mov eax, dword [ebp - 0x38]
sub eax, 0x60a88b9a
je 0x41649f
jmp 0x41626d
mov eax, dword [ebp - 0x38]
sub eax, 0x648604d5
je 0x416585
jmp 0x416280
mov eax, dword [ebp - 0x38]
sub eax, 0x67a6c29d
je 0x416a11
jmp 0x416293
mov eax, dword [ebp - 0x38]
sub eax, 0x67f9cb15
je 0x416445
jmp 0x4162a6
mov eax, dword [ebp - 0x38]
sub eax, 0x76912036
je 0x416b31
jmp 0x4162b9
mov eax, dword [ebp - 0x38]
sub eax, 0x76954e21
je 0x416774
jmp 0x4162cc
jmp 0x416ba9
mov bl, byte [ebp - 0x2a]
mov dh, byte [ebp - 0x29]
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, 0xb4cc3b97
mov ecx, 0x8de52b2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
add edx, 0x755427dc
sub edx, 1
sub edx, 0x755427dc
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, 0xb4cc3b97
mov ecx, 0xcb33c58d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0xfa466e28
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
mov edx, ecx
add edx, 0x6b226a5a
sub edx, 1
sub edx, 0x6b226a5a
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, 0x3fbb4af5
mov ecx, 0xbc32e74b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov dword [eax], ecx
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0x6a0e9cb8
sub edx, 1
add edx, 0x6a0e9cb8
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, 0x3fbb4af5
mov ecx, 0x67f9cb15
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0xafe97f23
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0x8f3edc01
sub edx, 1
add edx, 0x8f3edc01
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, 0x1d14c23f
mov ecx, 0x60a88b9a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
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, 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, 0x143751e4
mov ecx, 0x956d5fad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
mov edx, ecx
sub edx, 0x967a8634
sub edx, 1
add edx, 0x967a8634
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, 0x143751e4
mov ecx, 0x648604d5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
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, 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, 0x1d14c23f
mov ecx, 0xbb62d966
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0xf137d48f
jmp 0x416ba9
mov eax, dword [ebp - 0x24]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x30], 0x414fcae6
jmp 0x416ba9
mov eax, dword [ebp - 0x20]
cmp eax, 0xffffffff
setne al
and al, 1
mov byte [ebp - 0x19], al
mov dword [ebp - 0x30], 0xa431a56
jmp 0x416ba9
mov dl, byte [ebp - 0x19]
mov eax, 0x9dacfefa
mov ecx, 0x3e428081
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x30], 0x67c630
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
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, 0xce6bfc09
mov ecx, 0x9424bca0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
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, 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, 0x88ce5bbb
mov ecx, 0xc5ca1736
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x14], eax
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0x4661bf72
sub edx, 1
add edx, 0x4661bf72
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, 0x88ce5bbb
mov ecx, 0x76954e21
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
add edx, 0xd817200f
sub edx, 1
sub edx, 0xd817200f
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, 0xce6bfc09
mov ecx, 0xdb3c0152
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
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, 0xe0f5fc33
mov ecx, 0x9dbd1eae
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
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, 0xe0f5fc33
mov ecx, 0xf6e424ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0x41b3bb05
jmp 0x416ba9
mov eax, dword [ebp - 0x14]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0xd], al
mov dword [ebp - 0x30], 0xa2508010
jmp 0x416ba9
mov dl, byte [ebp - 0xd]
mov eax, 0x935edc60
mov ecx, 0xe3670caf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
add edx, 0xb87fac60
sub edx, 1
sub edx, 0xb87fac60
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, 0x3f13cf0d
mov ecx, 0x496f1d6e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
mov edx, ecx
sub edx, 0x6c60b7fb
sub edx, 1
add edx, 0x6c60b7fb
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, 0x3f13cf0d
mov ecx, 0x9b66a13c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0xd760a3f8
sub edx, 1
add edx, 0xd760a3f8
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, 0x76912036
mov ecx, 0xc499d782
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0x92d53305
sub edx, 1
add edx, 0x92d53305
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, 0x76912036
mov ecx, 0x67a6c29d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0x9dacfefa
jmp 0x416ba9
mov dword [ebp - 0x30], 0x9dacfefa
jmp 0x416ba9
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.004af2f0
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0x30], 0x8de52b2d
jmp 0x416ba9
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], 0x60a88b9a
jmp 0x416ba9
mov eax, dword [0x4c96c8]
mov ecx, dword [0x4c96c4]
mov edx, eax
sub edx, 0xf2650f61
sub edx, 1
add edx, 0xf2650f61
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, 0xbf029cb9
mov ecx, 0x5ca5091b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [0x4c96c8]
mov eax, dword [0x4c96c4]
mov edx, ecx
sub edx, 0x16552acc
sub edx, 1
add edx, 0x16552acc
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, 0xbf029cb9
mov ecx, 0x23e37ce8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x30], eax
jmp 0x416ba9
mov dword [ebp - 0x30], 0x9424bca0
jmp 0x416ba9
mov dword [ebp - 0x30], 0xc499d782
jmp 0x416ba9
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov dword [eax], ecx
mov dword [ebp - 0x30], 0xbc32e74b
jmp 0x416ba9
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], 0x956d5fad
jmp 0x416ba9
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x30], 0xc5ca1736
jmp 0x416ba9
mov dword [ebp - 0x30], 0x9dbd1eae
jmp 0x416ba9
mov dword [ebp - 0x30], 0x496f1d6e
jmp 0x416ba9
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x30], 0x5ca5091b
jmp 0x415f98