Function at 0x1002f2ca
Capabilities:
Check if file exists

Disassembly:
push 0x490
mov eax, 0x1006c9eb
call fcn.100521f6
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x480], ecx
cmp eax, edi
jne 0x1002f2f0
xor eax, eax
call fcn.10052279
ret
push eax
lea esi, [ebp - 0x474]
call fcn.100040e3
push str._overwrite
mov eax, esi
push eax
mov dword [ebp - 4], edi
mov dword [ebp - 0x478], edi
call fcn.1000d011
cmp eax, 0xffffffff
je 0x1002f321
mov dword [ebp - 0x478], 1
push str._path
lea eax, [ebp - 0x474]
push eax
call fcn.1000d011
cmp eax, 0xffffffff
jne 0x1002f347
push edi
push 1
lea esi, [ebp - 0x474]
call fcn.1000457f
jmp 0x1002f2e8
push 0xffffffffffffffff
add eax, 6
push eax
lea eax, [ebp - 0x474]
push eax
lea esi, [ebp - 0x43c]
call fcn.10004135
push 0x22
pop ebx
push 1
lea eax, [ebp - 0x47c]
push eax
mov byte [ebp - 4], 1
xor eax, eax
mov ecx, esi
mov dword [ebp - 0x47c], ebx
call fcn.10004370
cmp eax, 0xffffffff
jne 0x1002f38d
push edi
push 1
call fcn.1000457f
jmp 0x1002f337
push 0xffffffffffffffff
inc eax
push eax
lea eax, [ebp - 0x43c]
push eax
lea esi, [ebp - 0x49c]
call fcn.10004135
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 2
call fcn.1000426a
push edi
push 1
mov byte [ebp - 4], 1
call fcn.1000457f
mov dword [ebp - 0x47c], ebx
xor ebx, ebx
inc ebx
push ebx
lea eax, [ebp - 0x47c]
push eax
xor eax, eax
lea ecx, [ebp - 0x43c]
call fcn.10004370
push eax
push edi
lea eax, [ebp - 0x43c]
push eax
lea esi, [ebp - 0x49c]
call fcn.10004135
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x43c]
mov byte [ebp - 4], 3
call fcn.1000426a
push edi
push ebx
mov byte [ebp - 4], bl
call fcn.1000457f
cmp dword [ebp - 0x424], 8
mov eax, dword [ebp - 0x438]
jae 0x1002f424
lea eax, [ebp - 0x438]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1002f443
push edi
push ebx
lea esi, [ebp - 0x43c]
call fcn.1000457f
push edi
push ebx
jmp 0x1002f33a
cmp dword [0x10093e08], edi
jne 0x1002f5fa
xor eax, eax
mov dword [ebp - 0x440], 7
mov dword [ebp - 0x444], edi
mov word [ebp - 0x454], ax
mov eax, dword [ebp - 0x480]
mov byte [ebp - 4], 4
cmp eax, edi
jne 0x1002f512
xor eax, eax
mov esi, 0x206
push esi
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push edi
push eax
call fcn.10051a60
xor eax, eax
push esi
mov word [ebp - 0x420], ax
lea eax, [ebp - 0x41e]
push edi
push eax
call fcn.10051a60
add esp, 0x18
mov esi, 0x104
push esi
lea eax, [ebp - 0x218]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x1002f4da
push edi
push ebx
lea esi, [ebp - 0x458]
call fcn.1000457f
jmp 0x1002f42f
lea eax, [ebp - 0x218]
push 0x5c
push eax
call fcn.1004c9cc
pop ecx
pop ecx
cmp eax, edi
je 0x1002f4c8
lea ecx, [ebp - 0x218]
sub eax, ecx
sar eax, 1
push eax
mov eax, ecx
push eax
lea eax, [ebp - 0x420]
push esi
push eax
call fcn.1004d0aa
add esp, 0x10
lea eax, [ebp - 0x420]
lea ecx, [ebp - 0x458]
call fcn.100042f6
push str.QBExtensionFramework.dll
lea esi, [ebp - 0x49c]
call fcn.100040e3
lea eax, [ebp - 0x458]
push eax
mov eax, esi
mov byte [ebp - 4], 5
call fcn.1002770a
pop ecx
push edi
push ebx
mov byte [ebp - 4], 4
call fcn.1000457f
cmp dword [ebp - 0x440], 8
mov eax, dword [ebp - 0x454]
jae 0x1002f560
lea eax, [ebp - 0x454]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1002f4c8
cmp dword [0x10093e08], edi
jne 0x1002f5b6
cmp dword [ebp - 0x440], 8
mov eax, dword [ebp - 0x454]
jae 0x1002f58c
lea eax, [ebp - 0x454]
push 8
push edi
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
cmp eax, edi
je 0x1002f4c8
push str.InstallExtensionTool
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
push 0x10093e08
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
push edi
push ebx
lea esi, [ebp - 0x458]
mov byte [ebp - 4], 1
call fcn.1000457f
cmp dword [0x10093e08], edi
jne 0x1002f5fa
mov dword [ebp - 0x478], edi
push edi
push ebx
lea esi, [ebp - 0x43c]
call fcn.1000457f
push edi
push ebx
lea esi, [ebp - 0x474]
call fcn.1000457f
mov eax, dword [ebp - 0x478]
jmp 0x1002f2ea
cmp dword [ebp - 0x424], 8
mov eax, dword [ebp - 0x438]
jae 0x1002f60f
lea eax, [ebp - 0x438]
push dword [ebp - 0x478]
push eax
call dword [0x10093e08]
mov dword [ebp - 0x478], eax
jmp 0x1002f5d5