Function at 0x455aa0
Capabilities:
Get common file path
Move file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1178
call fcn.00467dc0
mov eax, dword [0x4cd724]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov word [ebp - 0x628], ax
push 0x206
push 0
lea ecx, [ebp - 0x626]
push ecx
call fcn.004677c0
add esp, 0xc
xor edx, edx
mov word [ebp - 0x420], dx
push 0x206
push 0
lea eax, [ebp - 0x41e]
push eax
call fcn.004677c0
add esp, 0xc
xor ecx, ecx
mov word [ebp - 0x210], cx
push 0x206
push 0
lea edx, [ebp - 0x20e]
push edx
call fcn.004677c0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x830], ax
push 0x206
push 0
lea ecx, [ebp - 0x82e]
push ecx
call fcn.004677c0
add esp, 0xc
mov dword [ebp - 0x954], 4
push 0x11c
push 0
lea edx, [ebp - 0x950]
push edx
call fcn.004677c0
add esp, 0xc
mov dword [ebp - 0x950], 0x11c
lea eax, [ebp - 0x950]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
mov dword [ebp - 0x214], eax
cmp dword [ebp - 0x214], 0
jne 0x455ba8
push str.ReadLockedFiles____OSVERSIONINFOEX_failed
call fcn.00456e30
add esp, 4
mov dword [ebp - 0x950], 0x114
lea ecx, [ebp - 0x950]
push ecx
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x455ba8
xor eax, eax
jmp 0x455e38
cmp dword [ebp + 0xc], 0
je 0x455c67
mov edx, dword [ebp + 8]
push edx
push 0x104
lea eax, [ebp - 0x420]
push eax
call fcn.0046a10d
add esp, 0xc
lea ecx, [ebp - 0x420]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathStripPathW]
push 3
lea edx, [ebp - 0x420]
push edx
push 0x104
lea eax, [ebp - 0x830]
push eax
call fcn.0046aa21
add esp, 0x10
mov ecx, dword [ebp + 0xc]
push ecx
push 0x104
lea edx, [ebp - 0x628]
push edx
call fcn.0046a10d
add esp, 0xc
lea eax, [ebp - 0x628]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea ecx, [ebp - 0x210]
push ecx
push 0
lea edx, [ebp - 0x830]
push edx
lea eax, [ebp - 0x628]
push eax
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
push 0
lea ecx, [ebp - 0x210]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00455220
add esp, 0xc
test eax, eax
jne 0x455c56
xor eax, eax
jmp 0x455e38
mov eax, dword [ebp - 0x954]
or eax, 1
mov dword [ebp - 0x954], eax
jmp 0x455c7f
mov ecx, dword [ebp + 8]
push ecx
push 0x104
lea edx, [ebp - 0x210]
push edx
call fcn.0046a10d
add esp, 0xc
cmp dword [ebp - 0x940], 2
jne 0x455cca
mov eax, dword [ebp - 0x954]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x210]
push edx
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov dword [ebp - 0x958], eax
mov eax, dword [ebp - 0x958]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x210]
push edx
push str.MoveFileEx__s___s___d
call fcn.00456a00
add esp, 0x10
jmp 0x455e36
xor eax, eax
mov word [ebp - 0xb60], ax
push 0x206
push 0
lea ecx, [ebp - 0xb5e]
push ecx
call fcn.004677c0
add esp, 0xc
xor edx, edx
mov word [ebp - 0xd68], dx
push 0x206
push 0
lea eax, [ebp - 0xd66]
push eax
call fcn.004677c0
add esp, 0xc
lea ecx, [ebp - 0xd68]
push ecx
push 0
push 0
push 0x24
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea edx, [ebp - 0xd68]
push edx
push 0x104
lea eax, [ebp - 0xb60]
push eax
call fcn.0046a10d
add esp, 0xc
push str.WinInit.ini
lea ecx, [ebp - 0xb60]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
xor edx, edx
mov word [ebp - 0xf70], dx
push 0x206
push 0
lea eax, [ebp - 0xf6e]
push eax
call fcn.004677c0
add esp, 0xc
push 0x104
lea ecx, [ebp - 0xf70]
push ecx
lea edx, [ebp - 0x210]
push edx
call dword [sym.imp.KERNEL32.dll_GetShortPathNameW]
xor eax, eax
mov word [ebp - 0x1178], ax
push 0x206
push 0
lea ecx, [ebp - 0x1176]
push ecx
call fcn.004677c0
add esp, 0xc
cmp dword [ebp + 0xc], 0
je 0x455dbf
push 0x104
lea edx, [ebp - 0x1178]
push edx
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_GetShortPathNameW]
jmp 0x455dd8
push 0x4bcd84
push 0x104
lea ecx, [ebp - 0x1178]
push ecx
call fcn.0046a10d
add esp, 0xc
lea edx, [ebp - 0xb60]
push edx
lea eax, [ebp - 0xf70]
push eax
lea ecx, [ebp - 0x1178]
push ecx
push str.rename
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea edx, [ebp - 0xb60]
push edx
push 0x4bcd9c
push 0x4bcda0
push 0x4bcda4
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea eax, [ebp - 0xb60]
push eax
lea ecx, [ebp - 0xf70]
push ecx
lea edx, [ebp - 0x1178]
push edx
push str.ReadLockedFiles____WritePrivateProfileString_rename___s___s___s_
call fcn.00456a00
add esp, 0x10
xor eax, eax
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004677af
mov esp, ebp
pop ebp
ret