Function at 0x462a60
Capabilities:
Check if file exists
Copy file
Delete file

Disassembly:
push 0x468
mov eax, 0x5b6b64
call fcn.00598f94
lea eax, [ebp - 0x450]
push eax
call fcn.00440517
lea eax, [ebp - 0x450]
xor edi, edi
push eax
mov dword [ebp - 4], edi
call fcn.00463245
mov eax, dword [ebp - 0x440]
sub eax, dword [ebp - 0x444]
mov ecx, 0x45c
cdq
idiv ecx
mov dword [ebp - 0x438], edi
test eax, eax
jbe 0x462d2c
mov ebx, 0x104
push edi
lea esi, [ebp - 0x450]
call fcn.00463a9d
add eax, 0x458
push edi
mov dword [ebp - 0x434], eax
call fcn.00463a9d
mov ecx, dword [ebp - 0x434]
mov ecx, dword [ecx]
cmp ecx, dword [eax + 0x24c]
jbe 0x462d09
cmp dword [ebp + 8], 0
jne 0x462b12
push edi
call fcn.00463a9d
cmp dword [eax + 0x40], 0
je 0x462d09
push edi
call fcn.00463a9d
add eax, 0x44
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x462d09
push edi
lea esi, [ebp - 0x450]
call fcn.00463a9d
push eax
lea eax, [ebp - 0x454]
push eax
call fcn.0041874a
push dword [eax]
call fcn.00462a45
mov esi, eax
mov eax, dword [ebp - 0x454]
add eax, 0xfffffff0
call fcn.00407b6b
test esi, esi
je 0x462d3f
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x430], ax
lea eax, [ebp - 0x42e]
push eax
call fcn.00596530
add esp, 0xc
push edi
lea esi, [ebp - 0x450]
call fcn.00463a9d
add eax, 0x250
push 0x7ffffffe
mov ecx, ebx
lea edx, [ebp - 0x430]
call fcn.004054ba
lea eax, [ebp - 0x430]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
mov edi, dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
lea eax, [ebp - 0x430]
push eax
call edi
mov dword [ebp - 0x434], eax
lea eax, [ebp - 0x430]
lea ecx, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
test dx, dx
jne 0x462bb6
sub eax, ecx
sar eax, 1
cmp eax, ebx
jae 0x462bd2
xor ecx, ecx
mov word [ebp + eax*2 - 0x42e], cx
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push eax
call fcn.00596530
add esp, 0xc
push dword [ebp - 0x438]
lea esi, [ebp - 0x450]
call fcn.00463a9d
add eax, 0x44
push 0x7ffffffe
mov ecx, ebx
lea edx, [ebp - 0x220]
call fcn.004054ba
mov esi, dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x220]
push eax
call esi
lea eax, [ebp - 0x220]
push eax
call edi
cmp dword [ebp - 0x434], 0
je 0x462c6f
test eax, eax
je 0x462c6f
push 0x5c
pop ecx
cmp cx, word [eax]
je 0x462c6f
push eax
push dword [ebp - 0x434]
call fcn.0058f69a
pop ecx
pop ecx
test eax, eax
jne 0x462c6f
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x462c6f
lea eax, [ebp - 0x220]
push eax
call esi
lea eax, [ebp - 0x220]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x462c78
sub eax, edx
sar eax, 1
cmp eax, ebx
jae 0x462c94
xor ecx, ecx
mov word [ebp + eax*2 - 0x21e], cx
mov esi, dword [sym.imp.SHELL32.dll_SHFileOperationW]
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x474]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0x430]
mov dword [ebp - 0x46c], eax
lea eax, [ebp - 0x220]
mov dword [ebp - 0x468], eax
mov eax, 0x2414
mov word [ebp - 0x464], ax
lea eax, [ebp - 0x474]
push eax
mov dword [ebp - 0x470], 2
call esi
test eax, eax
jne 0x462d03
lea eax, [ebp - 0x430]
mov dword [ebp - 0x46c], eax
lea eax, [ebp - 0x474]
push eax
mov dword [ebp - 0x470], 3
call esi
mov edi, dword [ebp - 0x438]
mov eax, dword [ebp - 0x440]
sub eax, dword [ebp - 0x444]
mov ecx, 0x45c
cdq
idiv ecx
inc edi
mov dword [ebp - 0x438], edi
cmp edi, eax
jb 0x462ab3
lea esi, [ebp - 0x450]
call fcn.0047509e
call fcn.00599017
ret 4
push edi
lea esi, [ebp - 0x450]
call fcn.00463a9d
add eax, 0x44
push edi
mov dword [ebp - 0x434], eax
call fcn.00463a9d
add eax, 0x250
push eax
mov eax, dword [ebp - 0x434]
mov ecx, eax
call fcn.00476205
pop ecx
test eax, eax
je 0x462d09
push edi
call fcn.00463a9d
mov ecx, eax
add ecx, 0x250
call fcn.0047611f
push edi
call fcn.00463a9d
mov ecx, eax
call fcn.004638c1
jmp 0x462d09