Function at 0x414817
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47b417
mov eax, dword fs:[0]
push eax
mov eax, 0x10060
call fcn.00438680
mov eax, dword [0x4a9074]
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 ebx, ecx
mov edi, dword [ebp + 0xc]
lea ecx, [ebx + 0x4c]
and dword [ecx + 0x10], 0
mov esi, dword [ebp + 8]
cmp dword [edi + 0x14], 8
jb 0x414862
mov eax, dword [edi]
jmp 0x414864
mov eax, edi
push dword [edi + 0x10]
push 0
push eax
call fcn.00416710
cmp dword [edi + 0x10], 0
jne 0x414884
mov byte [esi], 0
mov dword [esi + 8], 0x57
jmp 0x414a93
cmp dword [edi + 0x14], 8
jb 0x41488e
mov eax, dword [edi]
jmp 0x414890
mov eax, edi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4148a9
mov byte [esi], al
mov dword [esi + 8], 2
jmp 0x414a93
and dword [ebp - 0x10044], 0
lea ecx, [ebp - 0x10028]
push edi
call fcn.00415e73
and dword [ebp - 4], 0
lea eax, [ebp - 0x10028]
cmp dword [ebp - 0x10014], 0x10
push 0x491550
cmovae eax, dword [ebp - 0x10028]
push eax
lea eax, [ebp - 0x10044]
push eax
call fcn.0044b3f0
mov edi, dword [ebp - 0x10044]
add esp, 0xc
mov dword [ebp - 0x1004c], eax
test edi, edi
je 0x414a37
test eax, eax
jne 0x414a37
push 0x10000
push eax
lea eax, [ebp - 0x10010]
push eax
call fcn.0043d1d0
xor ecx, ecx
mov dword [ebp - 0x1006c], edi
add esp, 0xc
mov dword [ebp - 0x10060], ecx
lea eax, [ebp - 0x10010]
mov dword [ebp - 0x10058], ecx
mov dword [ebp - 0x10054], ecx
mov byte [ebp - 0x10050], cl
lea ecx, [ebp - 0x1006c]
mov dword [ebp - 0x10068], eax
mov dword [ebp - 0x10064], 0x10000
mov dword [ebp - 0x1005c], eax
call fcn.00413b98
lea eax, [ebp - 0x1006c]
push eax
lea ecx, [ebx + 4]
call fcn.00416e46
cmp dword [ebx + 0x34], 0
je 0x4149cf
push str...includeMcJsonUtils.cpp
mov edi, str.CMcJsonUtils::Load
lea ecx, [ebp - 0x10048]
push edi
push 0x125
push 4
call fcn.00409a60
mov byte [ebp - 4], 2
mov edx, edi
mov ecx, dword [eax]
call fcn.00411504
mov edx, str.Json_file_parsing_error_occurred
mov ecx, eax
call fcn.00411504
lea ecx, [ebp - 0x10048]
call fcn.00409aa0
push dword [ebp - 0x10044]
call fcn.0044af0c
pop ecx
mov dword [esi + 8], 0x3ee
jmp 0x414a81
push dword [ebp - 0x10044]
and dword [ebx + 0x68], 0
mov dword [ebx + 0x64], 1
call fcn.0044af0c
lea ecx, [ebp - 0x10040]
mov dword [esp], str.DEFAULT
call fcn.0040e4c4
lea eax, [ebp - 0x10028]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10040]
push eax
push ecx
lea ecx, [ebx + 0x6c]
call fcn.0040e351
push 0x4061e5
push 1
push 0x18
lea eax, [ebp - 0x10040]
xor ebx, ebx
push eax
mov byte [ebp - 4], bl
call fcn.00437c69
mov byte [esi], 1
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
push ebx
jmp 0x414a86
push str...includeMcJsonUtils.cpp
mov edi, str.CMcJsonUtils::Load
lea ecx, [ebp - 0x10048]
push edi
push 0x11d
push 4
call fcn.00409a60
mov byte [ebp - 4], 1
mov edx, edi
mov ecx, dword [eax]
call fcn.00411504
mov edx, str.Unable_to_access_the_file
mov ecx, eax
call fcn.00411504
lea ecx, [ebp - 0x10048]
call fcn.00409aa0
mov eax, dword [ebp - 0x1004c]
mov dword [esi + 8], eax
push 0
mov byte [esi], 0
push 1
lea ecx, [ebp - 0x10028]
call fcn.0040fea8
mov eax, esi
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.00437519
mov esp, ebp
pop ebp
ret 8