Function at 0x46f640
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5efca5
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x70f200]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp byte [edi + 0x13d8], 0
mov ebx, dword [ebp + 8]
je 0x46fbee
test byte [edi + 0x13dc], 4
jne 0x46fbee
mov esi, dword [ebp + 0xc]
test esi, esi
jne 0x46f69f
mov esi, dword [edi + 0x1f74]
test esi, esi
je 0x46fbee
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x1c]
movq qword [ebp - 0x1c], xmm0
call fcn.005dc5e0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x48]
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
movq qword [ebp - 0x48], xmm0
call fcn.005dc5e0
push 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3c]
xorps xmm0, xmm0
mov dword [ebp - 0x34], 0
push ebx
movq qword [ebp - 0x3c], xmm0
call fcn.005dc570
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 2
call fcn.005dc3a0
test eax, eax
jne 0x46f74d
test esi, 2
je 0x46fbd0
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.DefaultsUVKSettings.ini
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
push str.UVKSettings.zip
mov ecx, edi
call fcn.0046ff40
mov ebx, eax
jmp 0x46fbd2
test esi, 4
je 0x46fbd0
mov eax, esi
and eax, 0x100
mov dword [ebp - 0x4c], eax
jne 0x46f775
cmp dword [edi + 0x38], 0
jne 0x46f775
cmp dword [edi + 0x3c], 0
je 0x46fbd0
xorps xmm0, xmm0
lea ecx, [ebp - 0x3c]
push str.Run_scripts
xor ebx, ebx
movlpd qword [ebp - 0x30], xmm0
call fcn.005dc4c0
test al, al
je 0x46f93b
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea ecx, [edi + 0x174]
push 0x67f018
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x46f7ed
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.DefaultsUVK_Maintenance.uvk
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
sub esp, 8
mov dword [ebp - 0x28], ebx
xorps xmm0, xmm0
lea ecx, [edi + 0x174]
movq qword [ebp - 0x30], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x67f334
call fcn.005dc190
push eax
lea ecx, [ebp - 0x30]
call fcn.005dc520
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 3
call fcn.005dc190
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x46f85e
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.DefaultsUVK_Repair.uvk
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x30]
call fcn.005dc200
test esi, 0x100
jne 0x46f8ac
lea ecx, [ebp - 0x30]
call fcn.005dc190
mov ecx, eax
call fcn.005cf370
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x4c], edx
mov esi, eax
call fcn.005dc190
mov ecx, eax
call fcn.005cf370
add esi, eax
mov eax, dword [ebp - 0x4c]
adc eax, edx
cmp esi, dword [edi + 0x38]
jne 0x46f8ac
cmp eax, dword [edi + 0x3c]
jne 0x46f8ac
lea ecx, [ebp - 0x30]
mov ebx, 1
call fcn.005dc430
jmp 0x46fbd2
push 0
push 0xffffffffffffffba
sub esp, 8
mov ecx, edi
push 0x46
push 0x1c2
push 0
push 0x62439c
call fcn.0043da60
mov ecx, eax
call fcn.005b66e0
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push eax
call esi
test eax, eax
je 0x46f8fb
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
push str.UVK_Maintenance.zip
mov ecx, edi
call fcn.0046ff40
mov ebx, eax
lea ecx, [ebp - 0x30]
call fcn.005dc190
push eax
call esi
test eax, eax
je 0x46f921
lea ecx, [ebp - 0x30]
call fcn.005dc190
push eax
push str.UVK_Repair.zip
mov ecx, edi
call fcn.0046ff40
add ebx, eax
push 2
lea ecx, [edi + 0x14f0]
call fcn.005b6250
lea ecx, [ebp - 0x30]
call fcn.005dc430
jmp 0x46fbd2
push 0x693514
lea ecx, [ebp - 0x3c]
call fcn.005dc4c0
test al, al
je 0x46fa0a
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x693eec
lea ecx, [edi + 0x174]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push eax
call esi
test eax, eax
jne 0x46f9c8
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.Smart_uninstallerWhitelist.ini
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
call esi
test eax, eax
je 0x46fb65
cmp dword [ebp - 0x4c], ebx
jne 0x46f9f5
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ecx, eax
call fcn.005cf370
mov esi, edx
mov dword [ebp - 0x28], eax
cmp eax, dword [edi + 0x38]
jne 0x46f9fe
cmp esi, dword [edi + 0x3c]
jne 0x46f9fe
mov ebx, 1
jmp 0x46fbd2
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x4c], str.UVK_SU_whitelist.zip
jmp 0x46fbae
push 0x66430c
lea ecx, [ebp - 0x3c]
call fcn.005dc4c0
test al, al
je 0x46fadc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push str.UAK_White_list.ini
lea ecx, [edi + 0x174]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push eax
call ebx
test eax, eax
jne 0x46fa97
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.Ultra_Adware_KillerSettingsWhiteList.ini
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
call ebx
test eax, eax
je 0x46fb65
test esi, 0x100
jne 0x46fac7
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ecx, eax
call fcn.005cf370
mov esi, edx
mov dword [ebp - 0x28], eax
cmp eax, dword [edi + 0x38]
jne 0x46fad0
cmp esi, dword [edi + 0x3c]
jne 0x46fad0
mov ebx, 1
jmp 0x46fbd2
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x4c], str.UAK_White_list.zip
jmp 0x46fbae
push str.System_repair
lea ecx, [ebp - 0x3c]
call fcn.005dc4c0
test al, al
je 0x46fbd0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x6b31f8
lea ecx, [edi + 0x174]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push eax
call ebx
test eax, eax
jne 0x46fb71
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push str.DefaultsUVK_SR_settings.uvksr
lea ecx, [edi + 0x15c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0x1c]
call fcn.005dc200
lea ecx, [ebp - 0x1c]
call fcn.005dc190
push eax
call ebx
test eax, eax
jne 0x46fb71
push ecx
mov ecx, edi
call fcn.0046f620
mov ebx, eax
jmp 0x46fbd2
test esi, 0x100
jne 0x46fb9e
lea ecx, [ebp - 0x1c]
call fcn.005dc190
mov ecx, eax
call fcn.005cf370
mov esi, edx
mov dword [ebp - 0x28], eax
cmp eax, dword [edi + 0x38]
jne 0x46fba7
cmp esi, dword [edi + 0x3c]
jne 0x46fba7
mov ebx, 1
jmp 0x46fbd2
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x4c], str.UVK_SR_settings.zip
lea ecx, [ebp - 0x1c]
mov ebx, edi
call fcn.005dc190
push eax
push dword [ebp - 0x4c]
mov ecx, ebx
call fcn.0046ff40
mov ebx, eax
mov dword [edi + 0x3c], esi
mov eax, dword [ebp - 0x28]
mov dword [edi + 0x38], eax
jmp 0x46fbd2
xor ebx, ebx
lea ecx, [ebp - 0x3c]
call fcn.005dc430
lea ecx, [ebp - 0x48]
call fcn.005dc430
lea ecx, [ebp - 0x1c]
call fcn.005dc430
mov eax, ebx
jmp 0x46fbf0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041e1b5
mov esp, ebp
pop ebp
ret 8