Function at 0x4746a0
Capabilities:
Delete file
Get common file path
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5120e3
mov eax, dword fs:[0]
push eax
sub esp, 0x7d8
mov eax, dword [0x574a28]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x6b8], 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov dword [ebp - 0x698], eax
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x730]
call fcn.00416ac0
mov dword [ebp - 4], 0
xor edx, edx
mov word [ebp - 0x234], dx
push 0x206
push 0
lea eax, [ebp - 0x232]
push eax
call fcn.004cb660
add esp, 0xc
lea ecx, [ebp - 0x234]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea edx, [ebp - 0x234]
push edx
lea ecx, [ebp - 0x6b4]
call fcn.00416ac0
mov byte [ebp - 4], 1
push 0x52798c
lea ecx, [ebp - 0x678]
call fcn.00416ac0
mov byte [ebp - 4], 2
push 0x527990
lea ecx, [ebp - 0x750]
call fcn.00416ac0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x2c]
push eax
call fcn.00476e40
add esp, 4
mov byte [ebp - 4], 4
push 0x527994
lea ecx, [ebp - 0x6f0]
call fcn.00416ac0
mov byte [ebp - 4], 5
mov ecx, dword [0x53edd0]
push ecx
push 0x2e
lea ecx, [ebp - 0x730]
call fcn.004508a0
mov dword [ebp - 0x734], eax
mov edx, dword [ebp - 0x734]
cmp edx, dword [0x53edd0]
je 0x474812
lea ecx, [ebp - 0x730]
call fcn.00421890
push eax
mov eax, dword [ebp - 0x734]
push eax
lea ecx, [ebp - 0x770]
push ecx
lea ecx, [ebp - 0x730]
call fcn.004359a0
mov dword [ebp - 0x7d0], eax
mov edx, dword [ebp - 0x7d0]
mov dword [ebp - 0x7d4], edx
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x7d4]
push eax
lea ecx, [ebp - 0x678]
call fcn.004132b0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x770]
call fcn.00413280
mov ecx, dword [0x53edd0]
push ecx
push str.__...
lea ecx, [ebp - 0x730]
call fcn.00476f10
mov dword [ebp - 0x734], eax
mov edx, dword [ebp - 0x734]
cmp edx, dword [0x53edd0]
je 0x474899
lea ecx, [ebp - 0x730]
call fcn.00421890
push eax
mov eax, dword [ebp - 0x734]
push eax
lea ecx, [ebp - 0x78c]
push ecx
lea ecx, [ebp - 0x730]
call fcn.004359a0
mov dword [ebp - 0x7d8], eax
mov edx, dword [ebp - 0x7d8]
mov dword [ebp - 0x7dc], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x7dc]
push eax
lea ecx, [ebp - 0x750]
call fcn.004132b0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x78c]
call fcn.00413280
lea ecx, [ebp - 0x750]
push ecx
lea edx, [ebp - 0x6b4]
push edx
lea eax, [ebp - 0x7a8]
push eax
call fcn.00421200
add esp, 0xc
mov dword [ebp - 0x7e0], eax
mov ecx, dword [ebp - 0x7e0]
mov dword [ebp - 0x7e4], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x7e4]
push edx
lea ecx, [ebp - 0x6f0]
call fcn.004132b0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x7a8]
call fcn.00413280
push 0x52799c
lea ecx, [ebp - 0x6f0]
call fcn.00421860
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x6f0]
call fcn.00417030
lea ecx, [ebp - 0x678]
push ecx
lea ecx, [ebp - 0x6f0]
call fcn.00417030
lea edx, [ebp - 0x714]
push edx
push 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
push 0x578cdc
lea ecx, [ebp - 0x6d4]
call fcn.0040c5b0
mov byte [ebp - 4], 9
push 0x578c98
lea ecx, [ebp - 0x694]
call fcn.0040c5b0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x7c4]
call fcn.00416ac0
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x7c4]
push edx
lea ecx, [ebp - 0x65c]
call fcn.00477360
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x7c4]
call fcn.00413280
mov eax, dword [ebp + 0xc]
cmp dword [eax], 0
setne cl
movzx edx, cl
push edx
lea eax, [ebp - 0x694]
push eax
lea ecx, [ebp - 0x6d4]
push ecx
lea edx, [ebp - 0x6f0]
push edx
lea ecx, [ebp - 0x65c]
call fcn.00478b00
test eax, eax
je 0x474b52
lea eax, [ebp - 0x730]
push eax
lea ecx, [ebp - 0x6f0]
push ecx
call fcn.004792e0
add esp, 8
test eax, eax
jne 0x474abc
lea ecx, [ebp - 0x6f0]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, dword [ebp - 0x714]
push edx
lea ecx, [ebp - 0x730]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push 0
lea eax, [ebp - 0x730]
push eax
call fcn.00474180
add esp, 8
mov ecx, dword [ebp - 0x6b8]
mov dword [ebp - 0x7c8], ecx
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x65c]
call fcn.00476de0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x694]
call fcn.0040c620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x6d4]
call fcn.0040c620
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x6f0]
call fcn.00413280
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
call fcn.00413280
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x750]
call fcn.00413280
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x678]
call fcn.00413280
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6b4]
call fcn.00413280
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x730]
call fcn.00413280
mov eax, dword [ebp - 0x7c8]
jmp 0x474c17
push 1
lea edx, [ebp - 0x730]
push edx
call fcn.00474180
add esp, 8
lea ecx, [ebp - 0x6f0]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0
push 0x80
push 3
push 0
push 3
push 0xc0000000
lea ecx, [ebp - 0x730]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x754], eax
cmp dword [ebp - 0x754], 0xffffffff
je 0x474b50
mov eax, dword [ebp - 0x714]
push eax
lea ecx, [ebp - 0x730]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea ecx, [ebp - 0x700]
push ecx
push 0
push 0
mov edx, dword [ebp - 0x754]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov eax, dword [ebp - 0x754]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x474b64
lea ecx, [ebp - 0x6f0]
call fcn.00414aa0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x698], 0xffffffff
je 0x474b7e
mov ecx, dword [ebp - 0x698]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov eax, dword [ebp - 0x6b8]
mov dword [ebp - 0x7cc], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x65c]
call fcn.00476de0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x694]
call fcn.0040c620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x6d4]
call fcn.0040c620
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x6f0]
call fcn.00413280
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x2c]
call fcn.00413280
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x750]
call fcn.00413280
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x678]
call fcn.00413280
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x6b4]
call fcn.00413280
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x730]
call fcn.00413280
mov eax, dword [ebp - 0x7cc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004ca80c
mov esp, ebp
pop ebp
ret 8