Function at 0x486610
Capabilities:
Delete file
Move file

Disassembly:
push 0xcdc
mov eax, 0x7b0a27
call fcn.005b93f9
mov dword [ebp - 0xce8], ecx
mov esi, dword [ebp + 8]
lea eax, [ebp - 0xcb0]
mov ebx, dword [ebp + 0xc]
mov edi, 0x320
push edi
push 0
push eax
call fcn.007351d0
push edi
lea eax, [ebp - 0x990]
push 0
push eax
call fcn.007351d0
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x58]
rep stosd dword es:[edi], eax
push 8
pop ecx
stosb byte es:[edi], al
xor eax, eax
lea edi, [ebp - 0x34]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
lea eax, [ebp - 0x468]
mov edi, 0x208
push edi
push 0
push eax
call fcn.007351d0
push edi
lea eax, [ebp - 0x260]
push 0
push eax
call fcn.007351d0
push edi
lea eax, [ebp - 0x670]
push 0
push eax
call fcn.007351d0
add esp, 0x3c
lea eax, [ebp - 0x260]
push edi
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x468]
push str._s.tmp
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x260]
push eax
call fcn.00467607
mov edi, dword [ebp - 0xce8]
lea eax, [ebp - 0xcb0]
add esp, 0x14
mov ecx, edi
push eax
lea eax, [ebp - 0x990]
push eax
push 0
push esi
call fcn.0048729d
mov esi, eax
test esi, esi
je 0x4868d8
push 2
lea ecx, [ebp - 0x990]
lea eax, [ebp - 0x34]
pop esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x486727
test dl, dl
je 0x486723
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x486727
add eax, esi
add ecx, esi
test dl, dl
jne 0x486709
xor eax, eax
jmp 0x48672c
sbb eax, eax
or eax, 1
test eax, eax
je 0x4868da
test ebx, ebx
je 0x486740
push 0
push 0
call ebx
pop ecx
pop ecx
lea eax, [ebp - 0xcb0]
push eax
lea eax, [ebp - 0xce0]
push eax
call fcn.0046708e
and dword [ebp - 4], 0
lea eax, [ebp - 0xce0]
cmp dword [ebp - 0xccc], 8
cmovae eax, dword [ebp - 0xce0]
push eax
lea eax, [ebp - 0xcc8]
push eax
call fcn.00467b35
add esp, 0x10
cmp dword [ebp - 0xcb4], 0x10
lea ecx, [ebp - 0x468]
push ebx
lea eax, [ebp - 0xcc8]
mov byte [ebp - 4], 1
cmovae eax, dword [ebp - 0xcc8]
push ecx
push eax
lea ecx, [ebp - 0xce1]
call fcn.004712ce
test eax, eax
je 0x4867ed
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x468]
push eax
call fcn.00467607
pop ecx
pop ecx
lea ecx, [ebp - 0x990]
lea eax, [ebp - 0x58]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4867e4
test dl, dl
je 0x4867e0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4867e4
add eax, esi
add ecx, esi
test dl, dl
jne 0x4867c6
xor eax, eax
jmp 0x4867e9
sbb eax, eax
or eax, 1
test eax, eax
je 0x48682e
xor edi, edi
lea ecx, [ebp - 0xcc8]
push edi
push 1
xor esi, esi
call fcn.0045beb4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xce0]
push edi
push 1
call fcn.0045bf09
lea eax, [ebp - 0x468]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test ebx, ebx
je 0x4868d8
push 0x65
push edi
jmp 0x4868d4
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x670]
push 0x7cab30
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea eax, [ebp - 0x670]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea eax, [ebp - 0x670]
push eax
lea eax, [ebp - 0x260]
push eax
call fcn.00744289
lea eax, [ebp - 0x260]
push eax
lea eax, [ebp - 0x468]
push eax
call fcn.00744289
add esp, 0x10
lea ecx, [ebp - 0xcc8]
xor esi, esi
inc esi
push 0
push esi
call fcn.0045beb4
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xce0]
push 0
push esi
call fcn.0045bf09
cmp dword [edi], 0
je 0x4868b3
push dword [edi]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
and dword [edi], 0
mov ecx, dword [edi + 0x48]
test ecx, ecx
je 0x4868bf
call fcn.00458926
lea eax, [ebp - 0x260]
push eax
call fcn.0046795e
pop ecx
test ebx, ebx
je 0x4868d8
push 0x64
push 0
call ebx
pop ecx
pop ecx
mov eax, esi
call fcn.005b93a3
ret 8