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

Disassembly:
push ebp
lea ebp, [esp - 0x1e00]
mov eax, 0x1e80
call fcn.0042c290
mov eax, dword [0x4546e0]
xor eax, ebp
mov dword [ebp + 0x1dfc], eax
push ebx
push esi
push edi
mov edi, 0x206
xor ebx, ebx
push edi
lea eax, [ebp + 0xdbe]
push ebx
push eax
mov word [ebp + 0xdbc], bx
call fcn.0042b8b0
mov esi, dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
add esp, 0xc
push ebx
push 0x10
lea eax, [ebp + 0xdbc]
push eax
push ebx
call esi
push edi
lea eax, [ebp + 0x19ee]
push ebx
push eax
mov word [ebp + 0x19ec], bx
call fcn.0042b8b0
add esp, 0xc
push 1
push 2
lea eax, [ebp + 0x19ec]
push eax
push ebx
call esi
call fcn.0041a3b3
test eax, eax
push edi
push ebx
je 0x41876b
lea eax, [ebp + 0x15de]
push eax
mov word [ebp + 0x15dc], bx
call fcn.0042b8b0
add esp, 0xc
mov esi, 0x104
push esi
lea eax, [ebp + 0x15dc]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
push edi
lea eax, [ebp + 0x11ce]
push ebx
push eax
mov word [ebp + 0x11cc], bx
call fcn.0042b8b0
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
lea eax, [ebp + 0x11cc]
push eax
lea eax, [ebp + 0x15dc]
push eax
call fcn.004310d1
push str.UsersPublicDesktop
lea eax, [ebp + 0x11cc]
push esi
push eax
call fcn.0042b939
push edi
lea eax, [ebp + 0x17e6]
push ebx
push eax
mov word [ebp + 0x17e4], bx
call fcn.0042b8b0
add esp, 0x48
push edi
lea eax, [ebp + 0x1bf6]
push ebx
push eax
mov word [ebp + 0x1bf4], bx
call fcn.0042b8b0
lea eax, [ebp + 0x11cc]
push eax
lea eax, [ebp + 0x17e4]
push esi
push eax
call fcn.0042b9b3
lea eax, [ebp + 0x11cc]
push eax
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b9b3
push 0x449928
lea eax, [ebp + 0x17e4]
push esi
push eax
call fcn.0042b939
push 0x44993c
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b939
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
add esp, 0x3c
lea eax, [ebp + 0x17e4]
push eax
call ebx
lea eax, [ebp + 0x1bf4]
jmp 0x4187fc
lea eax, [ebp + 0x1bf6]
push eax
mov word [ebp + 0x1bf4], bx
call fcn.0042b8b0
push edi
lea eax, [ebp + 0x17e6]
push ebx
push eax
mov word [ebp + 0x17e4], bx
call fcn.0042b8b0
lea eax, [ebp + 0xdbc]
push eax
mov esi, 0x104
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b9b3
lea eax, [ebp + 0xdbc]
push eax
lea eax, [ebp + 0x17e4]
push esi
push eax
call fcn.0042b9b3
push 0x449928
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b939
push 0x44993c
lea eax, [ebp + 0x17e4]
push esi
push eax
call fcn.0042b939
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
add esp, 0x48
lea eax, [ebp + 0x1bf4]
push eax
call ebx
lea eax, [ebp + 0x17e4]
push eax
call ebx
and word [ebp + 0x394], 0
push edi
lea eax, [ebp + 0x396]
push 0
push eax
call fcn.0042b8b0
and word [ebp + 0x7a4], 0
push edi
lea eax, [ebp + 0x7a6]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0x394]
push esi
push eax
call fcn.0042b9b3
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0x7a4]
push esi
push eax
call fcn.0042b9b3
push 0x4498bc
lea eax, [ebp + 0x394]
push esi
push eax
call fcn.0042b939
push 0x4498dc
lea eax, [ebp + 0x7a4]
push esi
push eax
call fcn.0042b939
add esp, 0x48
lea eax, [ebp + 0x394]
push eax
call ebx
lea eax, [ebp + 0x7a4]
push eax
call ebx
and word [ebp - 0x7c], 0
push edi
lea eax, [ebp - 0x7a]
push 0
push eax
call fcn.0042b8b0
and word [ebp + 0xbb4], 0
push edi
lea eax, [ebp + 0xbb6]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp - 0x7c]
push esi
push eax
call fcn.0042b9b3
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0xbb4]
push esi
push eax
call fcn.0042b9b3
push 0x449878
lea eax, [ebp - 0x7c]
push esi
push eax
call fcn.0042b939
push 0x449898
lea eax, [ebp + 0xbb4]
push esi
push eax
call fcn.0042b939
add esp, 0x48
lea eax, [ebp - 0x7c]
push eax
call ebx
lea eax, [ebp + 0xbb4]
push eax
call ebx
and word [ebp + 0x9ac], 0
push edi
lea eax, [ebp + 0x9ae]
push 0
push eax
call fcn.0042b8b0
and word [ebp + 0x59c], 0
push edi
lea eax, [ebp + 0x59e]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0x9ac]
push esi
push eax
call fcn.0042b9b3
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0x59c]
push esi
push eax
call fcn.0042b9b3
push 0x449834
lea eax, [ebp + 0x9ac]
push esi
push eax
call fcn.0042b939
push 0x449854
lea eax, [ebp + 0x59c]
push esi
push eax
call fcn.0042b939
add esp, 0x48
lea eax, [ebp + 0x9ac]
push eax
call ebx
lea eax, [ebp + 0x59c]
push eax
call ebx
and word [ebp + 0x18c], 0
push edi
lea eax, [ebp + 0x18e]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0x18c]
push esi
push eax
call fcn.0042b9b3
push 0x449ac4
lea eax, [ebp + 0x18c]
push esi
push eax
call fcn.0042b939
add esp, 0x24
lea eax, [ebp + 0x18c]
push eax
call ebx
and word [ebp + 0x13d4], 0
push edi
lea eax, [ebp + 0x13d6]
push 0
push eax
call fcn.0042b8b0
and word [ebp + 0xfc4], 0
push edi
lea eax, [ebp + 0xfc6]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x19ec]
push eax
push esi
lea eax, [ebp + 0x13d4]
push eax
call fcn.0042b9b3
lea eax, [ebp + 0x19ec]
push eax
lea eax, [ebp + 0xfc4]
push esi
push eax
call fcn.0042b9b3
push 0x449904
lea eax, [ebp + 0x13d4]
push esi
push eax
call fcn.0042b939
push 0x449914
lea eax, [ebp + 0xfc4]
push esi
push eax
call fcn.0042b939
and word [ebp + 0x15dc], 0
add esp, 0x48
push edi
lea eax, [ebp + 0x15de]
push 0
push eax
call fcn.0042b8b0
add esp, 0xc
push 1
push 0x17
lea eax, [ebp + 0x15dc]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
and word [ebp + 0x1bf4], 0
push edi
lea eax, [ebp + 0x1bf6]
push 0
push eax
call fcn.0042b8b0
lea eax, [ebp + 0x15dc]
push eax
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b9b3
add esp, 0x18
cmp dword [ebp + 0x1e08], 6
jne 0x418ae5
push 0x449b24
lea eax, [ebp + 0x1bf4]
push esi
push eax
call fcn.0042b939
add esp, 0xc
lea eax, [ebp + 0x1bf4]
push eax
call ebx
call dword [0x4545d0]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0x80], eax
lea eax, [ebp + 0x13d4]
push eax
call edi
inc eax
mov ebx, 0x3fffffff
cmp eax, ebx
jle 0x418b0b
xor eax, eax
jmp 0x418b28
lea esi, [eax + eax]
mov eax, esi
call fcn.0042c100
mov eax, esp
push dword [ebp - 0x80]
lea ecx, [ebp + 0x13d4]
push esi
push ecx
push eax
call fcn.004010ff
push eax
call fcn.004312e4
pop ecx
lea eax, [ebp + 0xfc4]
push eax
call edi
inc eax
cmp eax, ebx
jle 0x418b41
xor eax, eax
jmp 0x418b5e
lea esi, [eax + eax]
mov eax, esi
call fcn.0042c100
mov eax, esp
push dword [ebp - 0x80]
lea ecx, [ebp + 0xfc4]
push esi
push ecx
push eax
call fcn.004010ff
push eax
call fcn.004312e4
pop ecx
call fcn.00417fba
call fcn.004182a8
xor eax, eax
inc eax
lea esp, [ebp - 0x8c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x1dfc]
xor ecx, ebp
call fcn.0042b92a
add ebp, 0x1e00
leave
ret