Function at 0x41be50
Capabilities:
Check if file exists
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x54e0bb
mov eax, dword fs:[0]
push eax
sub esp, 0x554
mov eax, dword [0x13413f8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0x555], 0
mov byte [ebp - 0x114], 0
push 0x103
push 0
lea eax, [ebp - 0x113]
push eax
call fcn.004f3400
add esp, 0xc
mov byte [ebp - 0x218], 0
push 0x103
push 0
lea ecx, [ebp - 0x217]
push ecx
call fcn.004f3400
add esp, 0xc
mov byte [ebp - 0x31c], 0
push 0x103
push 0
lea edx, [ebp - 0x31b]
push edx
call fcn.004f3400
add esp, 0xc
mov byte [ebp - 0x420], 0
push 0x103
push 0
lea eax, [ebp - 0x41f]
push eax
call fcn.004f3400
add esp, 0xc
mov byte [ebp - 0x524], 0
push 0x103
push 0
lea ecx, [ebp - 0x523]
push ecx
call fcn.004f3400
add esp, 0xc
call fcn.0041b4b0
test eax, eax
je 0x41bf21
jmp 0x41c4fd
call fcn.0041b4d0
test eax, eax
je 0x41bf2f
jmp 0x41c4fd
call fcn.0041b510
test eax, eax
je 0x41bf3d
jmp 0x41c4fd
call fcn.0041b530
test eax, eax
je 0x41bf4b
jmp 0x41c4fd
call fcn.0041b650
test eax, eax
je 0x41bf68
push 0x5a34c0
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41bf68
jmp 0x41c4fd
push 0x59c55f
lea ecx, [ebp - 0x53c]
call fcn.004021b0
mov dword [ebp - 4], 0
lea edx, [ebp - 0x554]
push edx
call fcn.0041bc70
add esp, 4
mov dword [ebp - 0x560], eax
mov eax, dword [ebp - 0x560]
push eax
lea ecx, [ebp - 0x53c]
call fcn.00402040
lea ecx, [ebp - 0x554]
call fcn.00401ff0
lea ecx, [ebp - 0x53c]
call fcn.00404890
test eax, eax
jne 0x41bfd7
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x53c]
call fcn.00401ff0
jmp 0x41c4fd
lea ecx, [ebp - 0x53c]
call fcn.00401d70
push eax
call fcn.0041bb70
add esp, 4
test eax, eax
jne 0x41c006
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x53c]
call fcn.00401ff0
jmp 0x41c4fd
push 0x104
push 0
lea ecx, [ebp - 0x114]
push ecx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea edx, [ebp - 0x218]
push edx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x31c]
push eax
call fcn.004f3400
add esp, 0xc
push 0
push 0x1a
lea ecx, [ebp - 0x114]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
push 0x5a34cc
push 0x104
lea edx, [ebp - 0x114]
push edx
call fcn.00501030
add esp, 0xc
lea eax, [ebp - 0x114]
push eax
call fcn.0041b940
add esp, 4
lea ecx, [ebp - 0x114]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x41c192
lea edx, [ebp - 0x114]
push edx
push 0x104
lea eax, [ebp - 0x218]
push eax
call fcn.004f659d
add esp, 0xc
push 0x5a34e0
push 0x104
lea ecx, [ebp - 0x218]
push ecx
call fcn.00501030
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
push 0x104
lea eax, [ebp - 0x31c]
push eax
call fcn.004f659d
add esp, 0xc
push 0x5a34f4
push 0x104
lea ecx, [ebp - 0x31c]
push ecx
call fcn.00501030
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
call fcn.0041b7a0
add esp, 4
mov dword [ebp - 0x55c], eax
push 0x5a3500
call fcn.0041a5d0
add esp, 4
mov byte [ebp - 0x555], al
push 0x5a3518
push 0x5a35b4
mov eax, dword [ebp - 0x55c]
push eax
push 0x5a35b8
push 0x5a35d4
call fcn.0041a200
add esp, 0x14
mov byte [ebp - 0x555], al
mov ecx, dword [ebp - 0x55c]
push ecx
call fcn.004fa841
add esp, 4
push 0x279d8
push 0x65c728
lea edx, [ebp - 0x218]
push edx
call fcn.0041b840
add esp, 0xc
push 0x41ee00
push 0x684100
lea eax, [ebp - 0x31c]
push eax
call fcn.0041b840
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x114]
push ecx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea edx, [ebp - 0x218]
push edx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x31c]
push eax
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea edx, [ebp - 0x524]
push edx
call fcn.004f3400
add esp, 0xc
push 0
push 0x1a
lea eax, [ebp - 0x114]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
push 0x5a35ec
push 0x104
lea ecx, [ebp - 0x114]
push ecx
call fcn.00501030
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
call fcn.0041b940
add esp, 4
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x41c398
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x218]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a3600
push 0x104
lea eax, [ebp - 0x218]
push eax
call fcn.00501030
add esp, 0xc
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x31c]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a3614
push 0x104
lea eax, [ebp - 0x31c]
push eax
call fcn.00501030
add esp, 0xc
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x420]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a362c
push 0x104
lea eax, [ebp - 0x420]
push eax
call fcn.00501030
add esp, 0xc
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x524]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a363c
push 0x104
lea eax, [ebp - 0x524]
push eax
call fcn.00501030
add esp, 0xc
push 0x5a364c
lea ecx, [ebp - 0x218]
push ecx
call fcn.0041b9e0
add esp, 8
push 0x1a980
push 0x5a3698
lea edx, [ebp - 0x218]
push edx
call fcn.0041b840
add esp, 0xc
push 0x41ee00
push 0xf18f88
lea eax, [ebp - 0x31c]
push eax
call fcn.0041b840
add esp, 0xc
push 0x7b000
push 0x5e1728
lea ecx, [ebp - 0x420]
push ecx
call fcn.0041b840
add esp, 0xc
push 0x56e88
push 0xaa2f00
lea edx, [ebp - 0x524]
push edx
call fcn.0041b840
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x114]
push eax
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x218]
push ecx
call fcn.004f3400
add esp, 0xc
push 0x104
push 0
lea edx, [ebp - 0x31c]
push edx
call fcn.004f3400
add esp, 0xc
push 0
push 0x1a
lea eax, [ebp - 0x114]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
push 0x5a3658
push 0x104
lea ecx, [ebp - 0x114]
push ecx
call fcn.00501030
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
call fcn.0041b940
add esp, 4
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x41c4eb
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x218]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a3678
push 0x104
lea eax, [ebp - 0x218]
push eax
call fcn.00501030
add esp, 0xc
lea ecx, [ebp - 0x114]
push ecx
push 0x104
lea edx, [ebp - 0x31c]
push edx
call fcn.004f659d
add esp, 0xc
push 0x5a3684
push 0x104
lea eax, [ebp - 0x31c]
push eax
call fcn.00501030
add esp, 0xc
push 0x5a3690
lea ecx, [ebp - 0x218]
push ecx
call fcn.0041b9e0
add esp, 8
push 0x23710
push 0x5be018
lea edx, [ebp - 0x218]
push edx
call fcn.0041b840
add esp, 0xc
push 0x41f200
push 0xaf9d88
lea eax, [ebp - 0x31c]
push eax
call fcn.0041b840
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x218]
push ecx
call fcn.0041b8a0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x53c]
call fcn.00401ff0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00472312
mov esp, ebp
pop ebp
ret