Function at 0x457829
Capabilities:
Check if file exists
Copy file
Delete file
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x628
mov eax, dword [0x66f33c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x61c]
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, 0x208
mov dword [ebp - 0x628], esi
push edi
push 0
push eax
mov dword [ebp - 0x620], ebx
call fcn.0047be90
push edi
lea eax, [ebp - 0x414]
push 0
push eax
call fcn.0047be90
lea eax, [ebp - 0x61c]
push esi
push eax
call fcn.0048d128
lea eax, [ebp - 0x414]
push ebx
push eax
call fcn.0048d128
add esp, 0x28
call fcn.0045487f
test al, al
je 0x4578b8
pop ebx
push ecx
pop esi
push ebp
pop edi
pop ebx
push esi
pop esi
push esi
pop esi
pop esp
pop esp
pop ecx
push eax
pop esp
push ebx
pop eax
pop ebx
pop edi
pop esi
pop esp
push esp
pop ecx
pop edi
pop ebp
pop edx
pop eax
pop edx
pop edi
pop edx
call fcn.00454a62
test al, al
je 0x4578db
pop ebp
push esp
push ebp
pop esp
push esp
push edi
push edi
pop esp
push eax
push ebx
pop eax
pop edx
pop edi
pop ebp
push esp
pop esp
push esi
push esp
pop edi
pop esi
push edx
pop eax
push esp
pop esi
push edi
push edi
lea eax, [ebp - 0x61c]
push eax
call fcn.00488add
lea eax, [ebp - 0x414]
push eax
call fcn.00488add
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x61c]
push eax
call fcn.0048d0e8
add esp, 0x10
test eax, eax
je 0x457b58
push dword [ebp - 0x628]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x457b58
call fcn.004543ea
test al, al
je 0x45793f
pop esp
pop ebx
push ebx
pop ebp
pop eax
pop ebp
push edi
push esi
push edi
pop edx
push edx
push ebp
push esp
push ebp
pop eax
push esi
push edx
xor esi, esi
mov dword [ebp - 0x624], esi
call fcn.00454360
test al, al
je 0x457976
push ebx
push ebx
pop ebp
push esi
pop edx
pop esp
push edi
push ebx
pop edx
push edi
push edi
push ebp
pop eax
pop edi
push esp
pop edi
push ebx
push ebx
push ebx
push ebp
pop ecx
pop ebx
pop esi
push esi
push esi
push esp
pop esp
push esi
pop edi
push ecx
push esp
pop ebx
mov esi, dword [ebp - 0x624]
call fcn.0045442f
test al, al
je 0x457992
pop eax
pop eax
push ebx
pop edx
pop ecx
push edi
pop esp
pop ebp
push eax
pop edi
pop edi
pop eax
push esi
push esp
push eax
push eax
push esp
pop eax
pop ebp
call fcn.004544fe
test al, al
je 0x4579af
pop edi
pop ebx
push ebp
push eax
pop edx
pop ecx
push ecx
push esi
pop edi
push esp
push ebp
push esp
pop edi
push edi
pop esp
push esi
pop esp
push edx
push edx
push ecx
call fcn.0045431b
test al, al
je 0x4579ca
pop edi
pop ecx
push eax
pop ecx
pop ebx
push ebp
push eax
push esp
pop edx
pop eax
pop eax
pop ebp
pop ebx
pop esp
pop ecx
push esi
pop ecx
pop eax
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0047be90
add esp, 0xc
lea eax, [ebp - 0x20c]
test esi, esi
jne 0x457a05
push str..eda
push dword [ebp - 0x620]
push 0x5e60d0
push eax
call fcn.00407930
add esp, 0x10
jmp 0x457a1f
push esi
push str..eda
push dword [ebp - 0x620]
push str._s_s_d
push eax
call fcn.00407930
add esp, 0x14
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x457a3d
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
call fcn.004546e1
test al, al
je 0x457a66
pop esi
push ecx
push eax
pop esi
push eax
push esp
push ebx
push ebx
pop edi
pop edx
pop esp
pop eax
push edx
pop ecx
push esp
push esp
pop ecx
pop esi
push eax
push ecx
push ecx
pop esi
push edi
pop ebx
push esi
pop edi
push edi
pop edi
pop ecx
push ecx
push ecx
pop ebx
mov ebx, dword [ebp - 0x620]
lea eax, [ebp - 0x20c]
push eax
push ebx
call fcn.00488907
pop ecx
pop ecx
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
call fcn.0045487f
test al, al
je 0x457ab5
pop ebx
push ecx
pop esi
push ebp
pop edi
pop ebx
push esi
pop esi
push esi
pop esi
pop esp
pop esp
pop ecx
push eax
pop esp
push ebx
pop eax
pop ebx
pop edi
pop esi
pop esp
push esp
pop ecx
pop edi
pop ebp
pop edx
pop eax
pop edx
pop edi
pop edx
mov ebx, dword [ebp - 0x620]
call fcn.00454a62
test al, al
je 0x457ad8
pop ebp
push esp
push ebp
pop esp
push esp
push edi
push edi
pop esp
push eax
push ebx
pop eax
pop edx
pop edi
pop ebp
push esp
pop esp
push esi
push esp
pop edi
pop esi
push edx
pop eax
push esp
pop esi
push edi
push edi
xor esi, esi
push esi
push ebx
push dword [ebp - 0x628]
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x457b2d
call fcn.004543ea
test al, al
je 0x457b06
pop esp
pop ebx
push ebx
pop ebp
pop eax
pop ebp
push edi
push esi
push edi
pop edx
push edx
push ebp
push esp
push ebp
pop eax
push esi
push edx
push 5
push esi
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov esi, dword [ebp - 0x624]
cmp esi, 0xa
jge 0x457b58
inc esi
mov dword [ebp - 0x624], esi
jmp 0x4579af
call fcn.0045431b
test al, al
je 0x457b48
pop edi
pop ecx
push eax
pop ecx
pop ebx
push ebp
push eax
push esp
pop edx
pop eax
pop eax
pop ebp
pop ebx
pop esp
pop ecx
push esi
pop ecx
pop eax
push 5
push esi
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0045132d
mov esp, ebp
pop ebp
ret