Function at 0x10002940
Capabilities:
Delete file
Get common file path

Disassembly:
mov eax, 0x20ae4
call fcn.10012250
push ebx
push esi
push edi
lea eax, [esp + 0xc]
xor edi, edi
mov ebx, ecx
push eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], edi
call dword [sym.imp.MSVCRT.dll_time]
lea esi, [ebx + 0x18]
add esp, 4
mov ecx, esi
call fcn.10008c10
cmp eax, 5
jle 0x10002993
mov ecx, esi
call fcn.100086f0
mov ecx, dword [esp + 0xc]
sub ecx, eax
cmp ecx, 0x15180
jle 0x100029d7
push edi
mov ecx, esi
call fcn.100086b0
mov ecx, esi
call fcn.10008650
mov edx, dword [esp + 0xc]
sub edx, eax
cmp edx, 0x15180
jle 0x10002c77
push 0xffffffffffffffff
mov ecx, esi
call fcn.100087b0
mov ecx, esi
call fcn.10008750
mov ecx, dword [esp + 0xc]
cmp eax, edi
je 0x100029e3
mov edx, ecx
sub edx, eax
cmp edx, 0x15180
ja 0x100029e3
mov ecx, esi
call fcn.10009180
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x20ae4
ret
push ebp
push ecx
mov ecx, esi
call fcn.10008770
mov ecx, esi
call fcn.10009180
mov ecx, 0x4225
xor eax, eax
lea edi, [esp + 0x10260]
lea ebp, [ebx + 0x351]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x10260]
mov ecx, esi
push eax
push 1
call fcn.10009370
push eax
mov ecx, esi
call fcn.100092b0
push eax
mov ecx, esi
call fcn.10009270
push eax
mov ecx, esi
call fcn.10009260
push eax
mov ecx, ebp
call fcn.1000bbd0
test eax, eax
je 0x10002c4a
test byte [esp + 0x10260], 1
je 0x10002b3b
lea edi, [esp + 0x10264]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x10002ab7
mov ecx, 0xf
lea edi, [esp + 0x19]
mov byte [esp + 0x18], al
lea edx, [esp + 0x10264]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x18]
stosb byte es:[edi], al
push ecx
lea edi, [esp + 0x10268]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
call fcn.1001158d
lea eax, [esp + 0x24]
lea ecx, [esp + 0x20670]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 0x14
test eax, eax
jne 0x10002b3b
mov dl, byte [0x100171bc]
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x59]
mov byte [esp + 0x58], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x58]
mov ecx, esi
push eax
call fcn.100089a0
mov ecx, 0x3fff
xor eax, eax
lea edi, [esp + 0x261]
mov byte [esp + 0x260], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x10264]
push 0
lea edx, [esp + 0x264]
push ecx
push edx
stosb byte es:[edi], al
call fcn.1000fb20
add esp, 0xc
lea ecx, [esp + 0x58]
push eax
lea eax, [esp + 0x264]
push eax
push ecx
mov ecx, ebp
call fcn.1000c840
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
mov dword [esp + 0x18], 1
call fcn.10008610
test byte [esp + 0x10260], 2
je 0x10002b96
mov al, byte [0x100171bc]
mov ecx, 0x40
mov byte [esp + 0x58], al
xor eax, eax
lea edi, [esp + 0x59]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x58]
push ecx
mov ecx, esi
stosb byte es:[edi], al
call fcn.10009190
lea edx, [esp + 0x20694]
lea eax, [esp + 0x58]
push edx
lea ecx, [esp + 0x20268]
push eax
push ecx
mov ecx, ebp
call fcn.1000cb90
test eax, eax
je 0x10002b96
lea edx, [esp + 0x58]
mov ecx, esi
push edx
call fcn.10008670
test byte [esp + 0x10260], 4
je 0x10002c43
mov dl, byte [0x100171bc]
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x59]
mov byte [esp + 0x58], dl
mov byte [esp + 0x15c], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x15d]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [esp + 0x15c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea ecx, [esp + 0x58]
push 1
push ecx
lea edx, [esp + 0x164]
push 0x100161f4
push edx
mov ecx, ebx
call fcn.10006130
lea eax, [esp + 0x20ac4]
lea ecx, [esp + 0x58]
push eax
lea edx, [esp + 0x206c8]
push ecx
push edx
mov ecx, ebp
call fcn.1000cb90
test eax, eax
je 0x10002c38
lea eax, [esp + 0x58]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
call fcn.10001f10
jmp 0x10002c5d
lea ecx, [esp + 0x58]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
call fcn.10001f10
jmp 0x10002c5d
mov edx, dword [esp + 0x10]
mov ecx, esi
push edx
call fcn.100086b0
mov ecx, esi
call fcn.10008710
push 0xffffffffffffffff
mov ecx, esi
call fcn.100087b0
push 0
mov ecx, esi
call fcn.10008770
mov ecx, esi
call fcn.10009180
pop ebp
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebx
add esp, 0x20ae4
ret