Function at 0x4050f0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x466d87
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x3121c
call fcn.00445c90
mov eax, dword [0x487490]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x31210], ecx
lea ecx, [ebp - 0x3118c]
call fcn.004161c0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x31210]
push eax
push 0x405a20
lea ecx, [ebp - 0x3118c]
call fcn.00417820
push 0x471dd8
push 0x4a8f28
lea ecx, [ebp - 0x31194]
push ecx
call fcn.00404660
add esp, 0xc
mov dword [ebp - 0x31214], eax
mov edx, dword [ebp - 0x31214]
mov dword [ebp - 0x31218], edx
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x31210]
add eax, 0x38
push eax
mov ecx, dword [ebp - 0x31218]
push ecx
lea edx, [ebp - 0x31190]
push edx
call fcn.00404570
add esp, 0xc
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x31194]
call fcn.00401700
push ecx
mov eax, esp
mov dword [ebp - 0x31198], esp
mov dword [ebp - 0x311c0], eax
mov ecx, dword [ebp - 0x31190]
sub ecx, 0x10
mov dword [ebp - 0x311b8], ecx
mov edx, dword [ebp - 0x311b8]
push edx
call fcn.00404cc0
add esp, 4
mov dword [ebp - 0x311bc], eax
mov eax, dword [ebp - 0x311bc]
add eax, 0x10
mov ecx, dword [ebp - 0x311c0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x311c0]
mov dword [ebp - 0x3121c], edx
mov byte [ebp - 4], 4
push ecx
mov eax, esp
mov dword [ebp - 0x3119c], esp
mov dword [ebp - 0x311cc], eax
mov ecx, dword [ebp - 0x31210]
mov edx, dword [ecx + 0x2c]
sub edx, 0x10
mov dword [ebp - 0x311c4], edx
mov eax, dword [ebp - 0x311c4]
push eax
call fcn.00404cc0
add esp, 4
mov dword [ebp - 0x311c8], eax
mov ecx, dword [ebp - 0x311c8]
add ecx, 0x10
mov edx, dword [ebp - 0x311cc]
mov dword [edx], ecx
mov eax, dword [ebp - 0x311cc]
mov dword [ebp - 0x31220], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x3118c]
call fcn.00417840
mov dword [ebp - 0x31224], eax
cmp dword [ebp - 0x31224], 0
jne 0x4052be
mov ecx, dword [ebp - 0x31210]
mov edx, dword [ecx + 0x2c]
mov dword [ebp - 0x311d0], edx
mov eax, dword [ebp - 0x311d0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x311a0], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x31190]
call fcn.00401700
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3118c]
call fcn.00416270
mov eax, dword [ebp - 0x311a0]
jmp 0x4054b8
mov ecx, dword [ebp - 0x31210]
mov edx, dword [ecx + 0x38]
mov dword [ebp - 0x311d8], edx
mov eax, dword [ebp - 0x31210]
mov ecx, dword [eax + 0x28]
mov dword [ebp - 0x311dc], ecx
mov edx, dword [ebp - 0x311d8]
push edx
mov eax, dword [ebp - 0x311dc]
push eax
lea ecx, [ebp - 0x311a4]
push ecx
call fcn.00404200
add esp, 0xc
mov dword [ebp - 0x31228], eax
mov edx, dword [ebp - 0x31228]
mov dword [ebp - 0x311e0], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x31210]
add eax, 0x34
mov dword [ebp - 0x311e4], eax
mov ecx, dword [ebp - 0x311e0]
push ecx
mov ecx, dword [ebp - 0x311e4]
call fcn.00404940
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x311a4]
call fcn.00401700
mov edx, dword [ebp - 0x31210]
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x311ec], eax
push 0x471df5
mov ecx, dword [ebp - 0x311ec]
push ecx
call fcn.00444bcf
add esp, 8
neg eax
sbb eax, eax
inc eax
movzx edx, al
test edx, edx
je 0x4053cd
push 0x471df8
call fcn.0042cbb0
add esp, 4
mov eax, dword [ebp - 0x31210]
mov ecx, dword [eax + 0x2c]
mov dword [ebp - 0x311f0], ecx
mov edx, dword [ebp - 0x311f0]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x311a8], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x31190]
call fcn.00401700
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3118c]
call fcn.00416270
mov eax, dword [ebp - 0x311a8]
jmp 0x4054b8
mov eax, dword [ebp - 0x31210]
mov ecx, dword [eax + 0x34]
push ecx
push 0x471e08
call fcn.0042ce10
add esp, 8
mov edx, dword [ebp - 0x31210]
mov eax, dword [edx + 0x34]
mov dword [ebp - 0x311f8], eax
mov ecx, dword [ebp - 0x31210]
mov edx, dword [ecx + 0x2c]
mov dword [ebp - 0x311fc], edx
mov eax, dword [ebp - 0x311f8]
push eax
mov ecx, dword [ebp - 0x311fc]
push ecx
call fcn.00418a50
add esp, 8
test eax, eax
jne 0x40546b
mov edx, dword [ebp - 0x31210]
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x31200], eax
mov ecx, dword [ebp - 0x31200]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x311ac], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x31190]
call fcn.00401700
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3118c]
call fcn.00416270
mov eax, dword [ebp - 0x311ac]
jmp 0x4054b8
mov edx, dword [ebp - 0x31210]
mov eax, dword [edx + 0x2c]
mov dword [ebp - 0x31208], eax
mov ecx, dword [ebp - 0x31208]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0x311b0], 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x31190]
call fcn.00401700
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3118c]
call fcn.00416270
mov eax, dword [ebp - 0x311b0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
call fcn.004457b0
mov esp, ebp
pop ebp
ret