Function at 0x414362
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x954
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x950], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x94c], eax
lea eax, [ebp - 0x940]
push eax
push 0x44b26c
push 3
xor ebx, ebx
push ebx
push 0x44765c
mov esi, ecx
mov edi, edx
mov byte [ebp - 0x929], 0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4146e6
push 0x66
mov eax, edi
call fcn.004415fe
cmp eax, ebx
je 0x4143d4
push 3
pop ecx
cmp cx, word [eax + 8]
jne 0x4143e3
cmp byte [eax + 0x10], bl
je 0x4143e3
mov eax, dword [esi]
push 1
push esi
call dword [eax + 0x18]
mov byte [ebp - 0x929], 1
push 0x72
mov eax, edi
call fcn.004415fe
cmp eax, ebx
je 0x4143fe
push 3
pop ecx
cmp cx, word [eax + 8]
jne 0x41440d
cmp byte [eax + 0x10], bl
je 0x41440d
mov eax, dword [esi]
push 2
push esi
call dword [eax + 0x18]
mov byte [ebp - 0x929], 1
push 0x62
mov eax, edi
call fcn.004415fe
mov esi, eax
mov dword [ebp - 0x948], esi
cmp esi, ebx
je 0x4146d8
push 6
pop eax
cmp ax, word [esi + 8]
jne 0x4146d8
push 0x104
lea eax, [ebp - 0x928]
push eax
push ebx
mov dword [ebp - 0x930], ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov eax, dword [esi + 0x10]
cmp eax, ebx
jle 0x4146d8
mov dword [ebp - 0x938], ebx
mov dword [ebp - 0x93c], eax
jmp 0x41446b
mov esi, dword [ebp - 0x948]
mov edi, dword [esi + 0x18]
add edi, dword [ebp - 0x938]
xor eax, eax
cmp ax, word [edi + 8]
jne 0x41448e
lea eax, [ebp - 0x930]
push eax
call fcn.004142f4
pop ecx
jmp 0x414697
push 0x73
mov eax, edi
call fcn.004415fe
mov ebx, eax
xor eax, eax
and dword [ebp - 0x944], eax
mov word [ebp - 0x518], ax
mov word [ebp - 0x310], ax
test ebx, ebx
jne 0x414599
push 0x63
mov eax, edi
call fcn.004415fe
mov esi, eax
call fcn.00405914
test al, al
je 0x414697
mov ecx, dword [esi + 0x10]
movzx eax, word [ecx - 2]
push ecx
call fcn.0040b782
mov ebx, eax
pop ecx
test ebx, ebx
je 0x414697
cmp ebx, 0x80a2
jne 0x414527
push str.TabManager.exe
xor ecx, ecx
lea esi, [ebp - 0x720]
call fcn.00442350
mov eax, esi
mov dword [ebp - 0x934], eax
mov ecx, esi
lea eax, [ebp - 0x310]
mov dword [esp], 0x104
call fcn.00440c1b
mov eax, esi
mov dword [ebp - 0x944], eax
jmp 0x41455c
push 0x104
mov ecx, str._cmd:
lea eax, [ebp - 0x518]
call fcn.00440c1b
pop ecx
mov ecx, dword [esi + 0x10]
push 0xfd
lea eax, [ebp - 0x50e]
call fcn.00440c1b
lea eax, [ebp - 0x928]
mov dword [ebp - 0x934], eax
pop ecx
push 0x74
mov eax, edi
call fcn.004415fe
mov esi, eax
call fcn.00405914
push 0x80
test al, al
je 0x41457e
mov ecx, dword [esi + 0x10]
jmp 0x414653
mov eax, dword [ebp - 0x950]
mov ecx, dword [eax]
lea edx, [ebp - 0x108]
push edx
push 0
push ebx
push eax
call dword [ecx + 0x18]
jmp 0x41465f
push 4
pop eax
cmp ax, word [ebx + 8]
jne 0x414697
push 0x104
mov ecx, str._script:
lea eax, [ebp - 0x518]
call fcn.00440c1b
pop ecx
mov ecx, dword [ebx + 0x10]
push 0xfa
lea eax, [ebp - 0x508]
call fcn.00440c1b
lea eax, [ebp - 0x928]
xor ecx, ecx
lea esi, [ebp - 0x310]
mov dword [ebp - 0x934], eax
mov dword [esp], str.script
call fcn.00442350
pop ecx
push dword [ebx + 0x10]
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
push str..ico
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathRenameExtensionW]
mov eax, esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x41461e
mov word [ebp - 0x310], ax
push 0x74
mov eax, edi
call fcn.004415fe
mov esi, eax
call fcn.00405914
push 0x80
test al, al
je 0x414648
mov ecx, dword [esi + 0x10]
lea eax, [ebp - 0x108]
call fcn.00440c1b
pop ecx
jmp 0x414668
push dword [ebx + 0x10]
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov ecx, eax
lea eax, [ebp - 0x108]
call fcn.00440c1b
pop ecx
cmp dword [ebp - 0x934], 0
je 0x414697
lea eax, [ebp - 0x930]
push eax
push dword [ebp - 0x944]
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x518]
push eax
push dword [ebp - 0x934]
lea ebx, [ebp - 0x310]
call fcn.00414260
add esp, 0x14
cmp dword [ebp - 0x930], 0
je 0x4146c5
mov eax, dword [ebp - 0x940]
push dword [ebp - 0x930]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov eax, dword [ebp - 0x930]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
and dword [ebp - 0x930], 0
add dword [ebp - 0x938], 0x20
dec dword [ebp - 0x93c]
jne 0x414465
mov eax, dword [ebp - 0x940]
mov ecx, dword [ebp - 0x94c]
mov dword [ecx], eax
mov ecx, dword [ebp - 4]
mov al, byte [ebp - 0x929]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0044552e
leave
ret