Function at 0x42ca10
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x280
mov esi, dword [ebp + 8]
mov eax, dword [0x4e6418]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ebx, dword [0x4eead4]
cmp ebx, 1
ja 0x42ca8e
push 0x4eead4
call fcn.0042f910
add esp, 4
test al, al
jne 0x42ca4d
mov ebx, dword [0x4eead4]
jmp 0x42ca8e
mov byte [0x4eead8], 0
mov eax, 0x4eead4
xorps xmm0, xmm0
movsd qword [0x4eeadc], xmm0
xor ecx, ecx
mov dword [0x4eeae4], ecx
mov byte [0x4eeae8], 1
mov dword [0x4eeaec], ecx
push eax
push ecx
push 0x4eead8
push eax
call fcn.0042f9e0
add esp, 0x10
mov ebx, 0x4eead8
xorps xmm0, xmm0
movsd qword [ebp - 0x270], xmm0
mov dword [ebp - 0x268], 0
test esi, esi
je 0x42cc64
lea ecx, [ebp - 0x270]
push esi
call fcn.00429e50
mov al, byte [ebp - 0x265]
test al, al
js 0x42cac9
lea esi, [ebp - 0x270]
jmp 0x42cacf
mov esi, dword [ebp - 0x270]
cmp byte [0x4eeaf0], 0
jne 0x42cc39
call fcn.00435430
mov edi, eax
cmp dword [eax + 0x428], 0
jne 0x42cbad
lea eax, [edi + 0x410]
mov dword [ebp - 0x288], eax
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [edi + 0x428], 0
jne 0x42cba1
mov dword [ebp - 0x280], ebx
push esi
call fcn.004352b0
add esp, 4
test eax, eax
je 0x42cfdc
mov dword [ebp - 0x28c], esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.InitLibs
push eax
mov esi, eax
call ebx
mov ecx, ebx
mov ebx, eax
push str.CreateObject
mov dword [ebp - 0x284], esi
push esi
call ecx
mov dword [edi + 8], eax
test ebx, ebx
je 0x42cfe9
mov esi, edi
add esi, 0xc
mov dword [edi + 0xc], 0x100
mov ecx, ebx
call dword [0x4e097c]
push esi
call ebx
test eax, eax
jne 0x42cff1
xor eax, eax
inc eax
mov ebx, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x284]
mov dword [edi + 4], ecx
mov esi, dword [ebp - 0x28c]
mov dword [edi + 0x42c], eax
mov dword [edi + 0x428], 1
push dword [ebp - 0x288]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [edi + 0x42c], 0
setne byte [ebx]
mov byte [0x4eeaf0], 1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebx + 0x14], eax
test esi, esi
je 0x42cf82
mov eax, esi
lea esi, [ebx + 4]
mov ecx, esi
push eax
call fcn.00429e50
xor eax, eax
dec eax
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x210], eax
movzx eax, byte [ebx + 0xf]
test al, al
jns 0x42cbff
mov eax, dword [ebx + 8]
mov esi, dword [ebx + 4]
test eax, eax
js 0x42cf89
je 0x42cc11
test esi, esi
je 0x42cf7b
lea edi, [ebp - 0x218]
mov ecx, edi
push eax
push esi
call fcn.00447a20
push edi
call fcn.0042b6f0
add esp, 4
mov byte [ebx + 0x10], al
mov ecx, edi
call fcn.00447af0
mov al, byte [ebp - 0x265]
mov bl, byte [ebx]
test al, al
jns 0x42cc4d
push dword [ebp - 0x270]
call fcn.0045702d
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045901d
mov eax, ebx
add esp, 0x280
pop esi
pop edi
pop ebx
pop ebp
ret
lea esi, [ebp - 0x218]
push 0x208
push 0
push esi
call fcn.00460af0
add esp, 0xc
push str.chrome.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
jne 0x42cf4a
mov dword [ebp - 0x280], ebx
xor eax, eax
push 0x104
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor edi, edi
dec edi
mov ebx, esi
lea esi, [ebp - 0x224]
mov dword [esi], edi
mov dword [esi + 4], edi
mov dword [esi + 8], edi
push ebx
call fcn.0047b6dc
add esp, 4
mov ecx, esi
push eax
push ebx
call fcn.00447a20
lea ebx, [ebp - 0x228]
mov dword [ebx], edi
push esi
push ebx
call fcn.0042b820
add esp, 8
xor eax, eax
mov dword [ebp - 0x274], eax
xorps xmm0, xmm0
movsd qword [ebp - 0x27c], xmm0
cmp dword [ebx], eax
je 0x42cee5
lea eax, [ebp - 0x24c]
lea ecx, [ebp - 0x224]
push eax
call fcn.00447c40
mov ecx, dword [ebp - 0x228]
lea esi, [ebp - 0x264]
push esi
call fcn.0042bb00
movzx eax, byte [esi + 0xb]
test al, al
jns 0x42cd2c
mov eax, dword [ebp - 0x260]
mov esi, dword [ebp - 0x264]
test eax, eax
js 0x42cf89
je 0x42cd3e
test esi, esi
je 0x42cf7b
lea edi, [ebp - 0x258]
push eax
push esi
push edi
call fcn.0042e510
add esp, 0xc
movzx eax, byte [edi + 0xb]
test al, al
jns 0x42cd63
mov eax, dword [ebp - 0x254]
mov edi, dword [ebp - 0x258]
test eax, eax
js 0x42cf89
je 0x42cd75
test edi, edi
je 0x42cf7b
lea esi, [ebp - 0x240]
lea ecx, [ebp - 0x24c]
push eax
push edi
push esi
call fcn.0042fff0
lea edi, [ebp - 0x234]
mov ecx, esi
push 0xb
push str.360base.dll
push edi
call fcn.0042fff0
cmp byte [ebp - 0x271], 0
movzx eax, byte [edi + 0xb]
js 0x42cf98
test al, al
js 0x42ce37
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x274], eax
movsd xmm0, qword [ebp - 0x234]
movsd qword [ebp - 0x27c], xmm0
lea esi, [ebp - 0x234]
mov ecx, esi
call fcn.00447af0
lea edi, [ebp - 0x240]
mov ecx, edi
call fcn.00447af0
cmp byte [ebp - 0x24d], 0
jns 0x42ce04
push dword [ebp - 0x258]
call fcn.0045702d
add esp, 4
cmp byte [ebp - 0x259], 0
jns 0x42ce1b
push dword [ebp - 0x264]
call fcn.0045702d
add esp, 4
lea ecx, [ebp - 0x24c]
call fcn.00447af0
cmp byte [ebp - 0x271], 0
js 0x42ce50
lea eax, [ebp - 0x27c]
jmp 0x42ce56
lea ecx, [ebp - 0x27c]
push dword [ebp - 0x230]
push dword [ebp - 0x234]
call fcn.0042a130
jmp 0x42cdd3
mov eax, dword [ebp - 0x27c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x42ceca
lea ecx, [ebp - 0x224]
push edi
call fcn.00447c40
mov ecx, edi
push 0xb
push str.360base.dll
push esi
call fcn.0042fff0
cmp byte [ebp - 0x271], 0
movzx eax, byte [ebp - 0x229]
js 0x42cfba
test al, al
js 0x42cf2e
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x274], eax
movsd xmm0, qword [ebp - 0x234]
movsd qword [ebp - 0x27c], xmm0
lea ecx, [ebp - 0x234]
call fcn.00447af0
lea ecx, [ebp - 0x240]
call fcn.00447af0
mov ecx, dword [ebp - 0x228]
mov dword [ebp - 0x228], 0
test ecx, ecx
je 0x42cee5
push 1
call fcn.0042bdb0
lea ecx, [ebp - 0x224]
call fcn.00447af0
mov ebx, dword [ebp - 0x280]
cmp byte [ebp - 0x265], 0
jns 0x42cf0d
push dword [ebp - 0x270]
call fcn.0045702d
add esp, 4
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x268], eax
movsd xmm0, qword [ebp - 0x27c]
movsd qword [ebp - 0x270], xmm0
jmp 0x42cab7
lea ecx, [ebp - 0x27c]
push dword [ebp - 0x230]
push dword [ebp - 0x234]
call fcn.0042a130
jmp 0x42ceb4
push 0x103
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
push str.360base.dll
push esi
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea ecx, [ebp - 0x27c]
push esi
call fcn.0048c410
jmp 0x42cef6
push str....._third_partylibc_srcinclude_string_view:313:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
jmp 0x42cf8e
push str....._third_partylibc_srcinclude_string:2706:_assertion___s___nullptr_failed:_string::assign_received_nullptr_n
jmp 0x42cf8e
push str....._third_partylibc_srcinclude_string_view:311:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
push 0x4d143c
call fcn.0048e9c0
test al, al
cmovs eax, dword [ebp - 0x230]
cmovs edi, dword [ebp - 0x234]
lea ecx, [ebp - 0x27c]
push eax
push edi
call fcn.004a6110
jmp 0x42cdd3
test al, al
cmovs eax, dword [ebp - 0x230]
cmovs esi, dword [ebp - 0x234]
lea ecx, [ebp - 0x27c]
push eax
push esi
call fcn.004a6110
jmp 0x42ceb4
xor eax, eax
mov ebx, dword [ebp - 0x280]
jmp 0x42cb91
test eax, eax
jne 0x42cb79
push dword [ebp - 0x284]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor ecx, ecx
xor eax, eax
mov ebx, dword [ebp - 0x280]
jmp 0x42cb88