Function at 0x525668
Capabilities:
Check if file exists

Disassembly:
push 0xc60
mov eax, 0x5f5f3d
call fcn.0044e95a
mov eax, dword [ebp + 8]
mov esi, 0x208
mov dword [ebp - 0xc64], eax
xor ebx, ebx
mov eax, dword [ebp + 0xc]
push esi
mov dword [ebp - 0xc5c], eax
lea eax, [ebp - 0xc40]
push ebx
push eax
mov dword [ebp - 0xc6c], ebx
call fcn.005426c0
push esi
lea eax, [ebp - 0x830]
push ebx
push eax
call fcn.005426c0
add esp, 0x18
call fcn.0042094f
test al, al
je 0x5256e1
push esi
pop edx
push edx
push esp
pop edi
push esi
push ebx
pop ebx
pop esi
push ebp
push esp
push eax
push ebx
pop edi
pop edx
push ebx
pop esp
pop ebx
push ecx
pop edx
pop esp
pop edx
pop esp
pop ebx
pop esi
push esi
push esp
push esp
xor ebx, ebx
mov esi, 0x208
push esi
lea eax, [ebp - 0x628]
push ebx
push eax
call fcn.005426c0
push esi
lea eax, [ebp - 0xa38]
push ebx
push eax
call fcn.005426c0
push esi
lea eax, [ebp - 0x218]
push ebx
push eax
call fcn.005426c0
push esi
lea eax, [ebp - 0x420]
push ebx
push eax
call fcn.005426c0
add esp, 0x30
call fcn.00420a1e
test al, al
je 0x525742
pop edx
push ecx
pop edi
push esi
pop ebp
push ebp
push esp
pop ebp
push ebx
push ecx
push ecx
pop esi
push ebp
push ebp
pop esp
push eax
pop edi
push esp
push ebx
push ebp
push eax
pop ecx
pop ebx
pop edi
pop esp
pop esi
pop ebx
xor ebx, ebx
xor eax, eax
mov dword [ebp - 0xc44], 7
mov dword [ebp - 0xc48], ebx
mov word [ebp - 0xc58], ax
push ebx
push 0x1a
lea eax, [ebp - 0xc40]
mov dword [ebp - 4], ebx
push eax
push ebx
call fcn.00525abc
lea eax, [ebp - 0xc40]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00549ff0
lea eax, [ebp - 0x218]
push eax
call fcn.005454d1
lea eax, [ebp - 0x218]
push 0x5c
push eax
call fcn.00543ce7
add esp, 0x24
mov dword [ebp - 0xc60], eax
call fcn.00420880
test al, al
je 0x5257bf
pop ecx
push ecx
push esi
push edx
push eax
pop esi
push eax
push ebx
pop ebx
push esi
push eax
push eax
push edi
push ebp
pop esi
push esp
pop eax
push esp
call fcn.00420544
test al, al
je 0x5257e3
push edx
push esi
push esi
push edi
push esi
push edi
pop edi
push esi
push ecx
push esp
push esp
push edx
push ecx
pop esp
push esp
push ebx
pop edi
pop edx
pop ebp
pop ebx
pop esi
push esp
pop ebx
pop edx
pop eax
pop esi
push ebx
call fcn.00420544
test al, al
je 0x525807
push ebx
pop ebp
pop edi
push esi
pop esp
pop ecx
pop ebx
pop edi
pop eax
pop edi
pop edi
push edx
pop eax
pop ecx
push eax
push edi
push ecx
pop edi
pop esi
push ebp
push esp
push esi
push edx
push edi
push esi
push edx
push ebp
mov eax, dword [ebp - 0xc60]
test eax, eax
jne 0x525840
push dword [ebp - 0xc5c]
lea eax, [ebp - 0xc58]
push eax
call fcn.005250f4
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc64]
lea eax, [ebp - 0xc58]
push eax
call fcn.00402208
push 0
push 1
jmp 0x525aa5
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x830]
push eax
call fcn.00549ff0
lea eax, [ebp - 0x830]
push str.Local
push eax
call fcn.0054ed04
add esp, 0x10
lea eax, [ebp - 0x830]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
xor edx, edx
xor ecx, ecx
inc edx
test eax, eax
cmovne ecx, edx
mov dword [ebp - 0xc68], ecx
call fcn.00420475
test al, al
je 0x5258b2
push edx
push esp
pop esp
push edx
push eax
push eax
push ebx
push edi
push ecx
push ecx
pop esp
pop edx
pop ebx
push ebx
pop ecx
pop eax
pop eax
pop eax
push ebx
pop ebx
pop esi
push esi
push edx
pop ebp
push esi
pop ebx
pop ebx
pop esp
pop edx
pop edx
pop eax
push ebp
call fcn.0042090a
test al, al
je 0x5258d7
pop esi
push esp
pop ebx
push edx
push eax
pop edi
pop ecx
push ecx
push esi
push ecx
pop ebp
push esi
push ebx
push ecx
push ecx
pop esi
pop esp
pop edi
pop edx
push edi
push edx
pop esp
pop eax
push edx
pop esi
pop ecx
push ebp
pop ebx
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x628]
push eax
call fcn.00549ff0
lea eax, [ebp - 0x628]
push str.LocalLow
push eax
call fcn.0054ed04
add esp, 0x10
lea eax, [ebp - 0x628]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
push 1
xor edi, edi
test eax, eax
pop eax
cmovne edi, eax
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0xa38]
mov dword [ebp - 0xc60], edi
push eax
call fcn.00549ff0
lea eax, [ebp - 0xa38]
push str.Roaming
push eax
call fcn.0054ed04
add esp, 0x10
call fcn.00420589
test al, al
je 0x525962
push esi
push esp
push edx
push edi
push ecx
push edx
push edx
pop esp
push ebp
push esp
pop ebp
pop edi
pop ebx
pop esi
pop edx
push edi
push esi
mov edi, dword [ebp - 0xc60]
call fcn.004204ff
test al, al
je 0x525981
pop edx
push ecx
pop ebp
pop edx
pop ecx
push edi
pop ecx
push ebx
pop esi
push edx
pop eax
push eax
pop eax
pop esp
push ebp
push edx
pop ebx
push esp
push edi
push eax
push edi
push esp
lea eax, [ebp - 0xa38]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
xor ecx, ecx
test eax, eax
push 1
pop eax
cmovne ecx, eax
cmp dword [ebp - 0xc68], 0
je 0x525a18
test edi, edi
je 0x525a18
test ecx, ecx
je 0x525a18
push dword [ebp - 0xc5c]
lea eax, [ebp - 0x628]
push eax
lea eax, [ebp - 0x420]
push str._s_s_
push eax
call fcn.00517d93
add esp, 0x10
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x5259e8
lea eax, [ebp - 0x420]
push eax
call fcn.00524cf0
pop ecx
cmp word [ebp - 0x420], 0
jne 0x5259f6
xor eax, eax
jmp 0x525a03
lea eax, [ebp - 0x420]
push eax
call fcn.005454d1
pop ecx
push eax
lea eax, [ebp - 0x420]
push eax
lea ecx, [ebp - 0xc58]
call fcn.00403bdf
jmp 0x525a8d
call fcn.004208c5
test al, al
je 0x525a31
push esi
pop edx
push ecx
push ecx
pop ebx
push ebp
pop esp
push ebx
push ecx
pop ecx
push edx
pop eax
pop esp
push esi
push eax
push ebx
call fcn.00420613
test al, al
je 0x525a51
push ebx
pop esp
push edx
pop esi
push esi
pop ebx
pop eax
push eax
push edi
push esi
push ebp
push ebp
pop ebp
push edx
push eax
pop esp
push edx
push ebp
pop esp
pop ecx
push ebx
push edi
pop ebx
call fcn.004204ff
test al, al
je 0x525a79
push esp
push edx
pop esi
pop edx
push ecx
push ecx
push esi
pop ecx
pop edi
pop edi
pop ebp
push edx
pop esp
pop ecx
push ebp
push ebx
push edi
pop esi
push eax
push ecx
pop ebp
pop eax
pop esp
push edi
push esp
push ebx
pop edi
push eax
push ecx
push ebp
pop ebx
push dword [ebp - 0xc5c]
lea eax, [ebp - 0xc58]
push eax
call fcn.005250f4
pop ecx
pop ecx
mov ecx, dword [ebp - 0xc64]
lea eax, [ebp - 0xc58]
push eax
call fcn.00402208
xor eax, eax
push 0
inc eax
push eax
lea ecx, [ebp - 0xc58]
call fcn.004037bf
mov eax, dword [ebp - 0xc64]
call fcn.0044e904
ret