Function at 0x4055f3
Capabilities:
Delete file
Get common file path
Set file attributes

Disassembly:
push 0x6cc
push 0x401670
call fcn.0041ae80
mov eax, dword [0x4233cc]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x6b4], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x6ac], ecx
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0x6b8], ecx
mov ecx, dword [ebp + 0x20]
mov dword [ebp - 0x6a0], ecx
mov ecx, dword [ebp + 0x24]
mov dword [ebp - 0x6c4], ecx
mov ecx, dword [ebp + 0x28]
mov dword [ebp - 0x6bc], ecx
xor esi, esi
mov dword [ebp - 0x68c], esi
mov dword [ebp - 0x698], esi
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x680], eax
mov dword [ebp - 0x6a4], esi
mov dword [ebp - 0x684], esi
mov dword [ebp - 4], esi
mov dword [ecx], esi
or dword [ebp - 4], 0xffffffff
jmp 0x40567b
cmp dword [ebp - 0x6ac], esi
jne 0x405687
push 0x57
jmp 0x4056a0
push dword [ebp - 0x6ac]
call fcn.0041a138
mov edi, eax
mov dword [ebp - 0x690], edi
cmp edi, esi
jne 0x4056a6
push 8
pop edi
jmp 0x405ae1
push dword [ebp - 0x6b8]
call fcn.0041a138
mov ebx, eax
mov dword [ebp - 0x6b0], ebx
cmp ebx, esi
jne 0x4056c5
push 8
pop edi
jmp 0x405ad6
push esi
push dword [ebp - 0x680]
call fcn.0040459f
mov dword [ebp - 0x68c], eax
push ebx
push edi
push esi
push 0xee60
push eax
push dword [ebp - 0x680]
call fcn.00404d92
add esp, 0x18
push ebx
call fcn.0041a8fb
test eax, eax
jne 0x405878
lea eax, [ebp - 0x6a8]
push eax
lea eax, [ebp - 0x6dc]
push eax
lea eax, [ebp - 0x67c]
push eax
lea eax, [ebp - 0x6c0]
push eax
push edi
call fcn.00405df7
mov edi, eax
cmp edi, esi
jne 0x405ad0
push dword [ebp - 0x690]
call fcn.0041a0e7
mov eax, dword [ebp - 0x6c0]
mov dword [ebp - 0x690], eax
push eax
call fcn.0041a3b2
mov dword [ebp - 0x69c], eax
push ebx
call fcn.0041a3b2
push eax
push dword [ebp - 0x69c]
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x40578c
push 0x2e
push dword [ebp - 0x69c]
call dword [sym.imp.msvcrt.dll_wcsrchr]
pop ecx
pop ecx
cmp eax, esi
je 0x40578c
push 0x401660
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x40578c
or dword [ebp + 0x1c], 0x10
mov edi, 0x104
test byte [ebp + 0x1c], 0x10
je 0x405807
mov dword [ebp - 0x6a8], esi
push edi
push ebx
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea eax, [ebp - 0x224]
push eax
call fcn.0041a3b2
mov word [eax], si
push esi
push edi
push dword [ebp - 0x69c]
lea eax, [ebp - 0x224]
push eax
call fcn.0041a306
test eax, eax
jne 0x4057db
add edi, 0xffffffca
jmp 0x405ad0
lea eax, [ebp - 0x224]
push eax
call fcn.0041a138
mov dword [ebp - 0x6c8], eax
cmp eax, esi
je 0x40589a
push ebx
call fcn.0041a0e7
mov ebx, dword [ebp - 0x6c8]
mov dword [ebp - 0x6b0], ebx
push esi
push ebx
call fcn.0041a86e
test eax, eax
je 0x405818
mov dword [ebp - 0x698], ebx
cmp dword [ebp - 0x698], esi
je 0x40583c
lea eax, [ebp - 0x684]
push eax
push dword [ebp - 0x698]
call fcn.0040cc5c
test eax, eax
je 0x40583c
mov dword [ebp - 0x684], esi
push edi
push ebx
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
lea eax, [ebp - 0x224]
push eax
call fcn.0041a3b2
mov word [eax], si
lea eax, [ebp - 0x42c]
push eax
push esi
push 0x401654
lea eax, [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
test eax, eax
jne 0x405882
mov edi, 0xe0000233
jmp 0x405ad0
lea eax, [ebp - 0x42c]
push eax
call fcn.0041a138
mov edi, eax
mov dword [ebp - 0x688], edi
cmp edi, esi
jne 0x4058a2
push 8
pop edi
jmp 0x405ad0
push dword [ebp - 0x68c]
push dword [ebp - 0x680]
call fcn.00404714
push esi
push 0x30
push dword [ebp - 0x680]
call fcn.00404d52
mov dword [ebp - 0x68c], eax
push edi
push ebx
push dword [ebp - 0x690]
push esi
push 0xef98
push eax
push dword [ebp - 0x680]
call fcn.00404d92
add esp, 0x1c
push esi
push esi
lea eax, [ebp - 0x6a8]
push eax
push edi
push dword [ebp - 0x690]
call fcn.00405f6e
mov edi, eax
cmp edi, esi
jne 0x405ac5
push 0x80
push ebx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
cmp dword [ebp - 0x698], esi
je 0x40591d
test byte [ebp + 0x1d], 2
jne 0x405998
push ebx
push dword [ebp - 0x688]
call fcn.0040c864
mov dword [ebp - 0x694], eax
cmp eax, esi
je 0x405998
cmp dword [ebp - 0x684], esi
je 0x405a8a
push dword [ebp - 0x684]
push ebx
call fcn.0040cd23
mov edi, eax
push ebx
push esi
cmp edi, esi
je 0x40597e
push 0xef41
push 0x20000010
push dword [ebp - 0x680]
call fcn.00404d92
add esp, 0x14
push edi
push 0x10
push dword [ebp - 0x680]
call fcn.00405549
jmp 0x405a8a
push 0xef42
push 0x40
push dword [ebp - 0x680]
call fcn.00404d92
add esp, 0x14
jmp 0x405a8a
xor eax, eax
inc eax
mov dword [ebp - 0x694], eax
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x6bc]
mov dword [ecx], eax
or dword [ebp - 4], 0xffffffff
jmp 0x4059cb
cmp dword [ebp - 0x694], esi
je 0x405a82
push esi
mov edi, dword [ebp - 0x680]
push edi
push ebx
call fcn.0040c8e4
push eax
push ebx
push dword [ebp - 0x688]
push dword [ebp - 0x6b4]
call fcn.00403ab5
mov dword [ebp - 0x694], eax
cmp eax, esi
je 0x405a8a
cmp dword [ebp - 0x684], esi
je 0x405a1f
push dword [ebp - 0x684]
push dword [ebp - 0x688]
call fcn.0040cd23
cmp edi, esi
je 0x405a3b
push dword [ebp - 0x688]
push ebx
push esi
push 0xef06
push 0x20
push edi
call fcn.00404d92
add esp, 0x18
cmp dword [ebp - 0x6a0], esi
je 0x405a8a
mov eax, dword [ebp - 0x688]
mov dword [ebp - 0x6d4], eax
mov dword [ebp - 0x6d8], ebx
mov dword [ebp - 0x6d0], esi
mov dword [ebp - 0x6cc], esi
push esi
lea eax, [ebp - 0x6d8]
push eax
push 0x14
push dword [ebp - 0x6c4]
push dword [ebp + 0x2c]
push dword [ebp - 0x6a0]
push edi
call fcn.0040c641
jmp 0x405a8a
push 0x57
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x694], esi
jne 0x405ab9
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
push 0x80
push dword [ebp - 0x688]
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push dword [ebp - 0x688]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
jmp 0x405ac5
xor edi, edi
mov dword [ebp - 0x6a4], 1
push dword [ebp - 0x688]
call fcn.0041a0e7
push ebx
call fcn.0041a0e7
push dword [ebp - 0x690]
call fcn.0041a0e7
cmp dword [ebp - 0x684], esi
je 0x405af4
push dword [ebp - 0x684]
call fcn.0041a0e7
cmp edi, esi
je 0x405b0a
push esi
push edi
push 0x10
push dword [ebp - 0x680]
call fcn.00404d92
add esp, 0x10
cmp dword [ebp - 0x68c], esi
je 0x405b23
push dword [ebp - 0x68c]
push dword [ebp - 0x680]
call fcn.00404714
push edi
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x6a4]
mov ecx, dword [ebp - 0x1c]
call fcn.00419805
call fcn.0041aebb
ret 0x28