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

Disassembly:
mov eax, 0x441eec
call fcn.00440d70
sub esp, 0x20
push ebx
push esi
push edi
mov dword [ebp - 0x2c], ecx
lea eax, [ebp + 8]
xor ebx, ebx
push eax
mov dword [ebp - 4], ebx
call fcn.0042998b
pop ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::CString_4
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 1
lea ecx, [ebp + 8]
mov esi, dword [eax - 8]
push esi
push esi
lea eax, [esi + esi*4]
shl eax, 1
mov dword [ebp - 0x1c], eax
call sub.MFC42.DLL_CString::GetBuffer
push eax
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x18]
push dword [ebp - 0x1c]
call sub.MFC42.DLL_CString::GetBuffer
push eax
call fcn.00439c40
add esp, 0x10
lea ecx, [ebp + 8]
mov edi, eax
push esi
call sub.MFC42.DLL_CString::ReleaseBuffer
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::ReleaseBuffer
cmp edi, ebx
mov dword [ebp - 0x28], ebx
jne 0x408660
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString_4
mov esi, 0x104
lea ecx, [ebp - 0x10]
push esi
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::GetBuffer
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push esi
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::ReleaseBuffer
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString_4
push str.UserList.tmp
lea eax, [ebp - 0x14]
push dword [ebp - 0x10]
mov byte [ebp - 4], 3
push 0x45e320
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x10
lea eax, [ebp - 0x18]
push dword [ebp - 0x14]
push ecx
mov ecx, esp
mov dword [ebp - 0x24], esp
push eax
call sub.MFC42.DLL_CString::CString_3
mov byte [ebp - 4], 3
call fcn.0042981a
pop ecx
cmp eax, ebx
pop ecx
je 0x40863f
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [eax + 4]
call fcn.00422cef
cmp eax, ebx
je 0x40863f
mov dword [ebp - 0x20], ebx
mov ecx, dword [eax + 0xc]
add eax, 0xc
lea edx, [ebp - 0x20]
mov byte [ebp - 4], 5
push edx
push 0x44acd0
push eax
call dword [ecx]
cmp eax, ebx
jl 0x40862e
push 0xffffffffffffffff
push dword [ebp - 0x14]
call fcn.0040a3d7
pop ecx
mov dword [ebp - 0x24], eax
pop ecx
mov eax, dword [ebp - 0x20]
push ebx
push dword [ebp - 0x24]
mov byte [ebp - 4], 6
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
test eax, eax
jl 0x408621
mov dword [ebp - 0x28], 1
push dword [ebp - 0x24]
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 3
cmp eax, ebx
je 0x40863f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
mov esi, dword [ebp - 0x2c]
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004097b9
push eax
lea ecx, [esi + 0x5848]
mov byte [ebp - 4], 7
call fcn.004407be
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], bl
call sub.MFC42.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x28]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 4