Function at 0x4ccdf4
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5265f5
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x55bb24]
xor eax, esp
mov dword [esp + 0x38], eax
push ebx
push esi
push edi
mov eax, dword [0x55bb24]
xor eax, esp
push eax
lea eax, [esp + 0x50]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x14]
test eax, eax
jne 0x4ccee0
call fcn.004cefff
mov edx, dword [eax]
mov esi, 0x100
push esi
mov ecx, eax
call dword [edx + 8]
test al, al
je 0x4ccec0
push 0x534dc4
push ecx
push str.File_name_is_empty.
push ecx
push 0x534dd4
push ecx
push 0xfb
push ecx
push 0x534dd8
push ecx
push str.JustUtil::BackupFile
push ecx
push 0x534dc0
push ecx
call fcn.004cf0d6
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00402b90
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
pop ecx
pop ecx
push esi
call fcn.004cf0e5
xor al, al
mov ecx, dword [esp + 0x50]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x38]
xor ecx, esp
call fcn.004f070d
mov esp, ebp
pop ebp
ret
mov edx, str..bak
lea edi, [esp + 0x2c]
call fcn.0041ad70
and dword [esp + 0x58], 0
mov ecx, dword [esp + 0x30]
push 8
pop ebx
cmp dword [esp + 0x44], ebx
jae 0x4ccf04
lea ecx, [esp + 0x30]
lea edi, [esi + 4]
cmp dword [esi + 0x18], ebx
jb 0x4ccf10
mov eax, dword [edi]
jmp 0x4ccf12
mov eax, edi
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x4cd011
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call fcn.004cefff
mov edx, dword [eax]
push ebx
mov ecx, eax
call dword [edx + 8]
test al, al
je 0x4cd003
lea eax, [esp + 0x10]
push esi
push eax
call fcn.004022c0
pop ecx
pop ecx
push 0x534dc4
push ecx
push eax
push ecx
push str._Path:
push ecx
push edi
push 0x427160
push str.CopyFile_error:_0x
push ecx
push 0x534dd4
push ecx
push 0x101
push ecx
push 0x534dd8
push ecx
push str.JustUtil::BackupFile
push ecx
push 0x534dc0
push ecx
mov byte [esp + 0xa8], 1
call fcn.004cf0d6
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00402b90
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
pop ecx
pop ecx
mov esi, eax
call fcn.00426b10
push eax
call fcn.0041f0d0
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405890
add esp, 0xc
push eax
call fcn.00405660
pop ecx
pop ecx
lea ecx, [esp + 0x10]
mov byte [esp + 0x58], 0
call fcn.00402b30
push ebx
call fcn.004cf0e5
lea ecx, [esp + 0x2c]
call fcn.00402d80
jmp 0x4ccec0
cmp dword [esi + 0x18], ebx
jb 0x4cd018
mov edi, dword [edi]
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x4cd118
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
call fcn.004cefff
mov edx, dword [eax]
push ebx
mov ecx, eax
call dword [edx + 8]
test al, al
je 0x4cd106
lea eax, [esp + 0x10]
push esi
push eax
call fcn.004022c0
pop ecx
pop ecx
push 0x534dc4
push ecx
push eax
push ecx
push str._Path:
push ecx
push edi
push 0x427160
push str.DeleteFile_error:_0x
push ecx
push 0x534dd4
push ecx
push 0x106
push ecx
push 0x534dd8
push ecx
push str.JustUtil::BackupFile
push ecx
push 0x534dc0
push ecx
mov byte [esp + 0xa8], 2
call fcn.004cf0d6
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00402b90
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405660
pop ecx
pop ecx
mov esi, eax
call fcn.00426b10
push eax
call fcn.0041f0d0
pop ecx
push eax
call fcn.00405660
add esp, 0xc
push eax
call fcn.00405890
add esp, 0xc
push eax
call fcn.00405660
pop ecx
pop ecx
lea ecx, [esp + 0x10]
mov byte [esp + 0x58], 0
call fcn.00402b30
push ebx
call fcn.004cf0e5
xor bl, bl
lea ecx, [esp + 0x2c]
call fcn.00402d80
mov al, bl
jmp 0x4ccec2
push 0xffffffffffffffff
push 0
lea eax, [esp + 0x34]
push eax
mov ecx, esi
call fcn.00403000
mov bl, 1
jmp 0x4cd108