Function at 0x4024ff
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c13ae
mov eax, dword fs:[0]
push eax
sub esp, 0x148
mov eax, dword [0x50e7dc]
xor eax, esp
mov dword [esp + 0x140], eax
push ebx
push esi
push edi
mov eax, dword [0x50e7dc]
xor eax, esp
push eax
lea eax, [esp + 0x158]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
xor ebx, ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
cmp eax, ebx
je 0x402992
cmp edi, ebx
je 0x402992
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename
lea ecx, [esp + 0x28]
call fcn.00404bd0
push dword [esp + 0x18]
xor esi, esi
inc esi
lea ecx, [esp + 0x44]
mov dword [esp + 0x164], esi
call fcn.00404bd0
push eax
lea eax, [esp + 0x28]
push eax
mov byte [esp + 0x168], 2
call fcn.00401985
pop ecx
pop ecx
push ebx
push esi
lea ecx, [esp + 0x48]
call fcn.004058b3
or dword [esp + 0x160], 0xffffffff
push ebx
push esi
lea ecx, [esp + 0x2c]
call fcn.004058b3
push str.CSystemCommands::GetConfigurationValue_sTagName
lea ecx, [esp + 0x28]
call fcn.00404bd0
push edi
lea ecx, [esp + 0x44]
mov dword [esp + 0x164], 3
call fcn.00404bd0
push eax
lea eax, [esp + 0x28]
push eax
mov byte [esp + 0x168], 4
call fcn.00401985
pop ecx
pop ecx
push ebx
push esi
lea ecx, [esp + 0x48]
call fcn.004058b3
or dword [esp + 0x160], 0xffffffff
push ebx
push esi
lea ecx, [esp + 0x2c]
call fcn.004058b3
push dword [esp + 0x18]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x402670
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename_doesnt_exist
lea ecx, [esp + 0x28]
call fcn.00404bd0
lea eax, [esp + 0x24]
push eax
mov dword [esp + 0x164], 5
call fcn.004017f5
or dword [esp + 0x164], 0xffffffff
pop ecx
push ebx
push esi
lea ecx, [esp + 0x2c]
call fcn.004058b3
mov ecx, dword [esp + 0x14]
push 0x4d51f0
call fcn.00404bd0
mov eax, dword [esp + 0x14]
jmp 0x4029d4
push edi
lea ecx, [esp + 0xd0]
call fcn.00404bd0
mov edi, eax
push str.Toolbar_
lea ecx, [esp + 0x44]
mov dword [esp + 0x164], 6
call fcn.00404bd0
push edi
push eax
lea eax, [esp + 0x64]
push eax
mov byte [esp + 0x16c], 7
call fcn.00406441
add esp, 0xc
push ebx
push esi
lea ecx, [esp + 0x48]
call fcn.004058b3
push ebx
push esi
lea ecx, [esp + 0xd4]
mov byte [esp + 0x168], 0xa
call fcn.004058b3
push str.Toolbar_Installation_FolderName
push dword [esp + 0x1c]
lea eax, [esp + 0xb8]
push eax
call fcn.004029f8
add esp, 0xc
mov byte [esp + 0x160], 0xb
cmp dword [esp + 0xc4], ebx
jne 0x40275a
push str.CSystemCommands::GetConfigurationValue_sIEFolderName_empty.
lea ecx, [esp + 0x28]
call fcn.00404bd0
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x164], 0xc
call fcn.004017f5
pop ecx
push ebx
push esi
lea ecx, [esp + 0x2c]
mov byte [esp + 0x168], 0xb
call fcn.004058b3
mov ecx, dword [esp + 0x14]
push 0x4d51f0
call fcn.00404bd0
push ebx
push esi
lea ecx, [esp + 0xb8]
call fcn.004058b3
push ebx
push esi
lea ecx, [esp + 0x64]
call fcn.004058b3
jmp 0x402667
push ebx
lea ecx, [esp + 0x98]
mov dword [esp + 0xb0], 7
call fcn.00405ece
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0xec]
mov byte [esp + 0x164], 0xd
call fcn.00404bf2
push esi
push SysReAllocString
lea eax, [esp + 0xf0]
push eax
lea ecx, [esp + 0x110]
mov byte [esp + 0x16c], 0xe
call fcn.004069e3
mov byte [esp + 0x160], 0xf
mov dword [esp + 0x20], ebx
push 0x511110
lea ecx, [esp + 0x20]
call fcn.00404f19
push dword [esp + 0x20]
lea eax, [esp + 0x20]
push str.cache_file_
push str._s_d
push eax
mov byte [esp + 0x170], 0x10
call fcn.0040642e
add esp, 0x10
push 0x4d51f0
lea ecx, [esp + 0x44]
call fcn.00404bd0
mov byte [esp + 0x160], 0x11
mov edi, dword [esp + 0x1c]
push edi
lea ecx, [esp + 0xd0]
call fcn.00404bd0
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0xd0]
push eax
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x110]
mov byte [esp + 0x16c], 0x12
call fcn.00406d31
mov byte [esp + 0x160], 0x13
cmp dword [esp + 0x8c], ebx
setne byte [esp + 0x13]
cmp byte [esp + 0x13], bl
je 0x4028b4
cmp dword [esp + 0x74], 8
mov ecx, dword [esp + 0x60]
jae 0x402866
lea ecx, [esp + 0x60]
cmp dword [esp + 0x90], 8
mov eax, dword [esp + 0x7c]
jae 0x402878
lea eax, [esp + 0x7c]
push ecx
push eax
lea eax, [esp + 0x2c]
push eax
call fcn.004029f8
add esp, 0xc
mov byte [esp + 0x160], 0x14
cmp dword [esp + 0x38], ebx
je 0x4028a9
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0xa0]
call fcn.00405301
push ebx
push esi
lea ecx, [esp + 0x2c]
call fcn.004058b3
inc dword [esp + 0x20]
push ebx
push esi
lea ecx, [esp + 0x80]
call fcn.004058b3
push ebx
push esi
lea ecx, [esp + 0xd4]
call fcn.004058b3
push ebx
push esi
lea ecx, [esp + 0x48]
call fcn.004058b3
lea ecx, [edi - 0x10]
mov byte [esp + 0x160], 0xf
call fcn.00401713
cmp byte [esp + 0x13], bl
jne 0x4027bc
cmp dword [esp + 0xa8], ebx
jne 0x402954
cmp dword [esp + 0x74], 8
mov eax, dword [esp + 0x60]
jae 0x402911
lea eax, [esp + 0x60]
push eax
push dword [esp + 0x1c]
lea eax, [esp + 0x80]
push eax
call fcn.004029f8
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xa0]
mov byte [esp + 0x16c], 0x15
call fcn.00405301
push ebx
push esi
lea ecx, [esp + 0x80]
mov byte [esp + 0x168], 0xf
call fcn.004058b3
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x94]
push eax
call fcn.00404bf2
lea ecx, [esp + 0x104]
call fcn.004017b6
push ebx
push esi
lea ecx, [esp + 0xf0]
call fcn.004058b3
push ebx
push esi
lea ecx, [esp + 0x9c]
call fcn.004058b3
jmp 0x40273c
push str.CSystemCommands::GetConfigurationValue_pinters_are_NULL__
lea ecx, [esp + 0x44]
call fcn.00404bd0
lea eax, [esp + 0x40]
push eax
mov dword [esp + 0x164], ebx
call fcn.004017f5
or dword [esp + 0x164], 0xffffffff
pop ecx
push ebx
push 1
lea ecx, [esp + 0x48]
call fcn.004058b3
push 0x4d51f0
mov ecx, esi
call fcn.00404bd0
mov eax, esi
mov ecx, dword [esp + 0x158]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x140]
xor ecx, esp
call fcn.0049f533
mov esp, ebp
pop ebp
ret