Function at 0x418a9a
Capabilities:
Copy file
Delete file
Move file
Set file attributes

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xc
push ebx
mov ebx, dword [ebp + 8]
mov dword [esp + 0xc], ecx
push esi
push edi
test ebx, ebx
jne 0x418ac4
mov ecx, 0x80070057
mov esi, ecx
call fcn.00427566
jmp 0x418cf0
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x418ab3
mov eax, dword [0x479b84]
test eax, eax
je 0x418ad9
cmp eax, 0xffffffff
jne 0x418adb
xor eax, eax
push ebx
push 0x4075c4
push dword [0x47c110]
push eax
call fcn.0041704b
mov eax, dword [0x479b84]
add esp, 0x10
test eax, eax
je 0x418afe
cmp eax, 0xffffffff
jne 0x418b00
xor eax, eax
push edi
push 0x4075f0
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x10
lea edx, [esp + 0x10]
mov ecx, ebx
call fcn.00426bc5
mov esi, eax
test esi, esi
js 0x418ce5
cmp dword [esp + 0x10], 0
jne 0x418b3a
mov esi, 0x80070002
mov ecx, esi
jmp 0x418aba
lea edx, [esp + 0x10]
mov ecx, edi
call fcn.00426bc5
mov esi, eax
test esi, esi
js 0x418ce5
cmp dword [esp + 0x10], 0
je 0x418b9e
mov eax, dword [0x479b84]
test eax, eax
je 0x418b64
cmp eax, 0xffffffff
jne 0x418b66
xor eax, eax
push edi
push 0x40761c
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x10
push 0x80
push edi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
je 0x418cd6
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x418cd6
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x24], 0
je 0x418c3b
mov ecx, dword [eax + 0x28]
lea edx, [esp + 0x10]
call fcn.00426bf6
mov esi, eax
test esi, esi
js 0x418ce5
cmp dword [esp + 0x10], 0
jne 0x418c06
mov eax, dword [0x479b84]
test eax, eax
je 0x418bd7
cmp eax, 0xffffffff
jne 0x418bd9
xor eax, eax
mov esi, dword [esp + 0x14]
push dword [esi + 0x28]
push 0x407654
push dword [0x47c110]
push eax
call fcn.0041704b
mov ecx, dword [esi + 0x28]
add esp, 0x10
call fcn.004269bd
mov esi, eax
test esi, esi
js 0x418ce5
mov eax, dword [0x479b84]
test eax, eax
je 0x418c14
cmp eax, 0xffffffff
jne 0x418c16
xor eax, eax
push edi
push ebx
push 0x407684
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x14
push 0xb
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
jmp 0x418cd2
push 0
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_CreateHardLinkW]
test eax, eax
je 0x418c71
mov eax, dword [0x479b84]
test eax, eax
je 0x418c57
cmp eax, 0xffffffff
jne 0x418c59
xor eax, eax
push ebx
push edi
push 0x4076b8
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x14
jmp 0x418cec
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x11
jne 0x418cec
mov eax, dword [0x479b84]
test eax, eax
je 0x418c8a
cmp eax, 0xffffffff
jne 0x418c8c
xor eax, eax
push edi
push ebx
push 0x407708
push dword [0x47c110]
push eax
call fcn.0041704b
mov eax, dword [0x479b84]
add esp, 0x14
test eax, eax
je 0x418cb0
cmp eax, 0xffffffff
jne 0x418cb2
xor eax, eax
push edi
push ebx
push 0x407770
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x14
push 0
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x418cec
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.0042754e
mov esi, eax
mov ecx, esi
call fcn.00427566
test esi, esi
jns 0x418d1a
mov eax, dword [0x479b84]
test eax, eax
je 0x418cfe
cmp eax, 0xffffffff
jne 0x418d00
xor eax, eax
push esi
push 0x4077b0
push 0x406d68
push dword [0x47c110]
push eax
call fcn.0041704b
add esp, 0x14
mov ecx, esi
call fcn.0042757e
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8