Function at 0x4148d7
Capabilities:
Copy file
Delete file
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x730
mov eax, dword [0x4242b4]
push ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x728], eax
call fcn.00413da3
push eax
lea eax, [ebp - 0x18]
push 0x4069f0
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0x104
lea ebx, [edi + 0x74]
push ebx
lea eax, [ebp - 0x324]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp - 0x324]
push eax
call fcn.0040c4a4
lea eax, [ebp - 0x11c]
push eax
xor esi, esi
push esi
push 0x4069ec
lea eax, [ebp - 0x324]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
test eax, eax
jne 0x41496a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4069b0
call fcn.0040be00
pop ecx
pop ecx
jmp 0x414b95
push 0x405dcc
push dword [ebp - 0x728]
lea eax, [ebp - 0x220]
push ebx
push eax
call fcn.0040c2fe
test eax, eax
jne 0x414992
push 0x406984
call fcn.0040be00
jmp 0x414964
push esi
push esi
push esi
push esi
push esi
mov ecx, edi
mov dword [ebp - 0x730], esi
call fcn.00412acf
lea eax, [ebp - 0x220]
push 0x406980
push eax
call fcn.0041ae78
mov ebx, eax
cmp ebx, esi
pop ecx
pop ecx
mov dword [ebp - 0x728], ebx
jne 0x4149dd
lea eax, [ebp - 0x220]
push eax
push 0x406954
call fcn.0040be00
pop ecx
pop ecx
push 0xfffffffffffffff9
jmp 0x414b97
lea eax, [ebp - 0x11c]
push 0x4028d4
push eax
call fcn.0041ae78
cmp eax, esi
pop ecx
pop ecx
mov dword [ebp - 0x72c], eax
jne 0x414a16
lea eax, [ebp - 0x11c]
push eax
push 0x406914
call fcn.0040be00
push ebx
call fcn.0041ac60
add esp, 0xc
jmp 0x4149d6
push ebx
lea eax, [ebp - 0x724]
push 0x400
push eax
call fcn.0041b8f4
add esp, 0xc
test eax, eax
je 0x414ae9
mov ebx, 0x406908
lea eax, [ebp - 0x724]
push eax
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x414a7a
mov ecx, edi
call fcn.00413da3
push eax
push 0x4068e4
call fcn.0040be00
push ebx
push dword [ebp - 0x72c]
call fcn.0041b891
add esp, 0x10
mov dword [ebp - 0x730], 1
jmp 0x414ac7
cmp dword [ebp - 0x730], esi
jne 0x414ab3
lea eax, [ebp - 0x724]
push eax
push 0x4068d4
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x414ab3
push 0x406890
call fcn.0040be00
push ebx
push dword [ebp - 0x72c]
call fcn.0041b891
add esp, 0xc
jmp 0x414ac7
push dword [ebp - 0x72c]
lea eax, [ebp - 0x724]
push eax
call fcn.0041acb6
pop ecx
pop ecx
push dword [ebp - 0x728]
lea eax, [ebp - 0x724]
push 0x400
push eax
call fcn.0041b8f4
add esp, 0xc
test eax, eax
jne 0x414a38
push dword [ebp - 0x72c]
call fcn.0041ac60
push dword [ebp - 0x728]
call fcn.0041ac60
pop ecx
pop ecx
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp + 0xc], esi
push esi
jne 0x414b4c
push 0x406848
lea eax, [ebp - 0x11c]
push eax
mov ecx, edi
call fcn.00413dba
push esi
push esi
push esi
push esi
push esi
mov ecx, edi
mov ebx, eax
call fcn.00412acf
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp ebx, esi
jne 0x414b9a
mov eax, dword [edi + 0x178]
jmp 0x414b9c
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov edi, eax
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp edi, esi
jne 0x414b9a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x11c]
push eax
push 0x406858
call fcn.0040be00
add esp, 0x10
push 0xfffffffffffffff7
pop eax
jmp 0x414b9c
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.0041a84f
leave
ret 8