Function at 0x452aa4
Capabilities:
Check if file exists
Delete file
Get common file path

Disassembly:
push 0x174
mov eax, 0x4d2bca
call fcn.004aaeb3
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov edi, dword [ebp + 8]
mov esi, ebx
push 0x103
mov dword [ebp - 0x180], eax
lea eax, [ebp - 0x117]
push ebx
push eax
mov dword [ebp - 0x17c], 3
mov byte [ebp - 0x118], bl
call fcn.004ab3c0
add esp, 0xc
lea eax, [ebp - 0x118]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea ecx, [ebp - 0x118]
dec ecx
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x452b01
mov eax, dword [str.kuwo_]
mov dword [ecx], eax
mov ax, word [0x4efff8]
mov word [ecx + 4], ax
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x160]
call fcn.004041e5
lea ecx, [ebp - 0x160]
mov dword [ebp - 4], ebx
call fcn.0045f119
push ebx
push 1
lea ecx, [ebp - 0x160]
call fcn.004044e5
mov eax, dword [ebp - 0x17c]
dec eax
mov dword [ebp - 0x11c], 0xf
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x120], ebx
mov byte [ebp - 0x130], bl
xor eax, eax
inc eax
mov dword [ebp - 4], eax
cmp dword [edi + 0x14], 0x10
jb 0x452b7b
mov ecx, dword [edi]
jmp 0x452b7d
mov ecx, edi
push eax
lea eax, [ebp - 0x130]
mov edx, 0x4e870e
push eax
call fcn.0044f793
pop ecx
pop ecx
test eax, eax
je 0x452cee
mov dword [ebp - 0x154], ebx
mov dword [ebp - 0x150], ebx
mov dword [ebp - 0x14c], ebx
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x178]
call fcn.004041e5
push ecx
lea eax, [ebp - 0x154]
mov byte [ebp - 4], 3
push eax
lea edx, [ebp - 0x178]
lea ecx, [ebp - 0x130]
call fcn.00455864
pop ecx
pop ecx
mov bl, al
mov byte [ebp - 4], 2
push 0
neg bl
lea ecx, [ebp - 0x178]
push 1
sbb bl, bl
call fcn.004044e5
inc bl
je 0x452c2a
cmp dword [ebp - 0x11c], 0x10
lea eax, [ebp - 0x130]
cmovae eax, dword [ebp - 0x130]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x154]
call fcn.00403e2c
xor ebx, ebx
jmp 0x452cee
mov eax, dword [ebp - 0x150]
sub eax, dword [ebp - 0x154]
push 0x18
cdq
pop ecx
idiv ecx
test eax, eax
je 0x452bfd
push dword [ebp - 0x154]
lea edx, [ebp - 0x118]
lea ecx, [ebp - 0x148]
call fcn.004035a7
pop ecx
push 0x10
pop ebx
mov byte [ebp - 4], 4
lea eax, [ebp - 0x148]
cmp dword [ebp - 0x134], ebx
cmovae eax, dword [ebp - 0x148]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x452ca0
cmp dword [ebp - 0x134], ebx
lea eax, [ebp - 0x148]
push str..ico
cmovae eax, dword [ebp - 0x148]
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIA]
test eax, eax
jne 0x452d10
cmp dword [ebp - 0x11c], ebx
lea eax, [ebp - 0x130]
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmovae eax, dword [ebp - 0x130]
push eax
call ebx
cmp dword [ebp - 0x134], 0x10
lea eax, [ebp - 0x148]
cmovae eax, dword [ebp - 0x148]
push eax
call ebx
xor ebx, ebx
lea ecx, [ebp - 0x148]
push ebx
push 1
call fcn.004044e5
lea ecx, [ebp - 0x154]
call fcn.00403e2c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x130]
push ebx
push 1
call fcn.004044e5
mov eax, dword [ebp - 0x17c]
test eax, eax
jg 0x452b4e
jmp 0x452d70
cmp dword [ebp - 0x11c], ebx
lea eax, [ebp - 0x130]
cmovae eax, dword [ebp - 0x130]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x180]
lea ecx, [ebp - 0x148]
cmp eax, ecx
je 0x452d46
push 0xffffffffffffffff
push 0
push ecx
mov ecx, eax
call fcn.00404447
xor esi, esi
lea ecx, [ebp - 0x148]
push 0
inc esi
push esi
call fcn.004044e5
lea ecx, [ebp - 0x154]
call fcn.00403e2c
push 0
push esi
lea ecx, [ebp - 0x130]
call fcn.004044e5
mov eax, esi
call fcn.004aae62
ret 8