Function at 0x41a2d6
Capabilities:
Check if file exists

Disassembly:
push 0x1d4
mov eax, 0x50e95c
call fcn.004ec79c
mov eax, dword [ebp + 8]
mov esi, ecx
xor edi, edi
mov dword [ebp - 0x154], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x158], esi
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x148], edi
cmp esi, edi
je 0x41acf4
cmp eax, edi
je 0x41acf4
call fcn.00411dd9
cmp byte [eax], 0
jne 0x41a3b9
lea eax, [ebp - 0x1e0]
push eax
call fcn.004071c6
push esi
lea esi, [ebp - 0x30]
mov dword [ebp - 4], 9
call fcn.004076aa
push eax
push ecx
mov ebx, 0x525218
push ebx
push ecx
lea eax, [ebp - 0x1d8]
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename
push eax
mov byte [ebp - 4], 0xa
call fcn.004058d5
add esp, 0xc
push eax
call fcn.004058d5
add esp, 0xc
push eax
call fcn.00405173
pop ecx
pop ecx
push edi
push 1
mov byte [ebp - 4], 9
call fcn.0040754f
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040574e
lea edi, [ebp - 0x4c]
mov byte [ebp - 4], 0xb
call fcn.00405549
push 0
push 1
mov esi, edi
call fcn.0040754f
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x1e0]
call fcn.00405a60
jmp 0x41a51c
lea eax, [ebp - 0x1d8]
push eax
mov dword [ebp - 4], 0xc
call fcn.00405430
push esi
lea esi, [ebp - 0x84]
mov byte [ebp - 4], 0xd
call fcn.004076aa
mov edi, eax
mov byte [ebp - 4], 0xe
call fcn.00411dd9
lea ecx, [ebp - 0x30]
call fcn.00405346
mov byte [ebp - 4], 0xf
cmp dword [eax + 0x18], 8
jb 0x41a3fe
mov esi, dword [eax + 4]
jmp 0x41a401
lea esi, [eax + 4]
lea eax, [ebp - 0x1d8]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename
push eax
call fcn.004058d5
pop ecx
pop ecx
mov ebx, 0x525218
push ebx
push eax
call fcn.004058d5
pop ecx
pop ecx
push edi
push eax
call fcn.00405173
pop ecx
pop ecx
xor edi, edi
push edi
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
push edi
push 1
lea esi, [ebp - 0x84]
mov byte [ebp - 4], 0xd
call fcn.0040754f
lea eax, [ebp - 0x14c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x10
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x41a4c8
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040532c
push 0x278
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x11
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push edi
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0xd
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x1d8]
mov byte [ebp - 4], 0xc
call fcn.0040539b
or dword [ebp - 4], 0xffffffff
jmp 0x41a51c
call fcn.00411dd9
cmp byte [eax], 0
jne 0x41a626
lea eax, [ebp - 0x1e0]
push eax
call fcn.004071c6
push dword [ebp - 0x150]
lea esi, [ebp - 0x30]
mov dword [ebp - 4], 0x14
call fcn.004076aa
push eax
push ecx
push ebx
push ecx
lea eax, [ebp - 0x1d8]
push str.CSystemCommands::GetConfigurationValue_sTagName
push eax
mov byte [ebp - 4], 0x15
call fcn.004058d5
add esp, 0xc
push eax
call fcn.004058d5
add esp, 0xc
push eax
call fcn.00405173
pop ecx
pop ecx
push 0
push 1
mov byte [ebp - 4], 0x14
call fcn.0040754f
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040574e
lea edi, [ebp - 0x4c]
mov byte [ebp - 4], 0x16
call fcn.00405549
push 0
push 1
mov esi, edi
call fcn.0040754f
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x1e0]
call fcn.00405a60
push dword [ebp - 0x158]
xor ebx, ebx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x41a8a0
call fcn.00411dd9
cmp byte [eax], bl
jne 0x41a787
lea eax, [ebp - 0x1e0]
push eax
call fcn.004071c6
lea eax, [ebp - 0x1d8]
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename_doesnt_exist
push eax
mov dword [ebp - 4], 0x1f
call fcn.004058d5
pop ecx
pop ecx
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040574e
lea edi, [ebp - 0x4c]
mov byte [ebp - 4], 0x20
call fcn.00405549
push ebx
mov esi, edi
jmp 0x41ad40
lea eax, [ebp - 0x1d8]
push eax
mov dword [ebp - 4], 0x17
call fcn.00405430
push dword [ebp - 0x150]
lea esi, [ebp - 0x84]
mov byte [ebp - 4], 0x18
call fcn.004076aa
mov edi, eax
mov byte [ebp - 4], 0x19
call fcn.00411dd9
lea ecx, [ebp - 0x30]
call fcn.00405346
mov byte [ebp - 4], 0x1a
cmp dword [eax + 0x18], 8
jb 0x41a670
mov esi, dword [eax + 4]
jmp 0x41a673
lea esi, [eax + 4]
lea eax, [ebp - 0x1d8]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push str.CSystemCommands::GetConfigurationValue_sTagName
push eax
call fcn.004058d5
pop ecx
pop ecx
push ebx
push eax
call fcn.004058d5
pop ecx
pop ecx
push edi
push eax
call fcn.00405173
pop ecx
pop ecx
xor edi, edi
push edi
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
push edi
push 1
lea esi, [ebp - 0x84]
mov byte [ebp - 4], 0x18
call fcn.0040754f
lea eax, [ebp - 0x14c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x1b
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x41a735
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040532c
push 0x279
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x1c
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push edi
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x18
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x1d8]
mov byte [ebp - 4], 0x17
call fcn.0040539b
or dword [ebp - 4], 0xffffffff
jmp 0x41a5ba
lea eax, [ebp - 0x1d8]
push eax
mov dword [ebp - 4], 0x21
call fcn.00405430
mov byte [ebp - 4], 0x22
call fcn.00411dd9
lea ecx, [ebp - 0x30]
call fcn.00405346
mov byte [ebp - 4], 0x23
cmp dword [eax + 0x18], 8
jb 0x41a7ba
mov esi, dword [eax + 4]
jmp 0x41a7bd
lea esi, [eax + 4]
lea eax, [ebp - 0x1d8]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push str.CSystemCommands::GetConfigurationValue_sConfigurationFilename_doesnt_exist
push eax
call fcn.004058d5
pop ecx
pop ecx
push ebx
push 1
lea esi, [ebp - 0x30]
mov byte [ebp - 4], 0x22
call fcn.0040754f
lea eax, [ebp - 0x14c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x24
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x41a85d
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040532c
push 0x27c
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x25
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push ebx
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x22
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
mov byte [ebp - 4], 0x21
jmp 0x41ae57
push dword [ebp - 0x150]
lea esi, [ebp - 0x84]
call fcn.004076aa
mov edi, eax
push str.Toolbar_
lea esi, [ebp - 0x30]
mov dword [ebp - 4], 0x28
call fcn.004076aa
push edi
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x29
call fcn.00404ac6
add esp, 0xc
push ebx
push 1
call fcn.0040754f
push ebx
push 1
lea esi, [ebp - 0x84]
mov byte [ebp - 4], 0x2c
call fcn.0040754f
mov ecx, dword [ebp - 0x158]
lea eax, [ebp - 0xd8]
push eax
mov edx, str.Toolbar_Installation_FolderName
call fcn.0041ae96
pop ecx
mov byte [ebp - 4], 0x2d
cmp dword [ebp - 0xc4], ebx
jne 0x41aae1
call fcn.00411dd9
cmp byte [eax], 0
jne 0x41a9b6
lea eax, [ebp - 0x1e0]
push eax
call fcn.004071c6
lea eax, [ebp - 0x1d8]
push str.CSystemCommands::GetConfigurationValue_sIEFolderName_empty.
push eax
mov byte [ebp - 4], 0x2e
call fcn.004058d5
pop ecx
pop ecx
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040574e
lea edi, [ebp - 0x4c]
mov byte [ebp - 4], 0x2f
call fcn.00405549
push ebx
push 1
mov esi, edi
call fcn.0040754f
lea eax, [ebp - 0x1e0]
mov byte [ebp - 4], 0x2d
call fcn.00405a60
mov esi, dword [ebp - 0x154]
push 0x525140
call fcn.004076aa
push 0
push 1
lea esi, [ebp - 0xd8]
call fcn.0040754f
push 0
push 1
lea esi, [ebp - 0x68]
call fcn.0040754f
mov eax, dword [ebp - 0x154]
jmp 0x41ad68
lea eax, [ebp - 0x1d8]
push eax
mov byte [ebp - 4], 0x30
call fcn.00405430
mov byte [ebp - 4], 0x31
call fcn.00411dd9
lea ecx, [ebp - 0x30]
call fcn.00405346
mov byte [ebp - 4], 0x32
cmp dword [eax + 0x18], 8
jb 0x41a9e6
mov esi, dword [eax + 4]
jmp 0x41a9e9
lea esi, [eax + 4]
lea eax, [ebp - 0x1d8]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push str.CSystemCommands::GetConfigurationValue_sIEFolderName_empty.
push eax
call fcn.004058d5
pop ecx
pop ecx
push ebx
push 1
lea esi, [ebp - 0x30]
mov byte [ebp - 4], 0x31
call fcn.0040754f
lea eax, [ebp - 0x14c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x33
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x41aa89
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040532c
push 0x283
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x34
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push ebx
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x31
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x1d8]
mov byte [ebp - 4], 0x30
call fcn.0040539b
mov dword [ebp - 4], 0x2d
jmp 0x41a980
xor eax, eax
mov dword [ebp - 0xa4], 7
mov dword [ebp - 0xa8], ebx
mov word [ebp - 0xb8], ax
lea eax, [ebp - 0xd8]
push eax
lea esi, [ebp - 0xf4]
mov byte [ebp - 4], 0x37
call fcn.00405639
push 1
push SysReAllocString
mov eax, esi
push eax
lea eax, [ebp - 0x140]
push eax
mov byte [ebp - 4], 0x38
call fcn.00412897
mov byte [ebp - 4], 0x39
mov dword [ebp - 0x150], ebx
mov eax, dword [0x5741d8]
mov ecx, 0x5741d8
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x148], eax
push dword [ebp - 0x150]
lea eax, [ebp - 0x148]
push str.cache_file_
push str._s_d
mov byte [ebp - 4], 0x3a
call fcn.0040d9ff
add esp, 0xc
push 0x525140
lea esi, [ebp - 0x30]
call fcn.004076aa
mov byte [ebp - 4], 0x3b
mov edi, dword [ebp - 0x148]
push edi
lea esi, [ebp - 0x84]
call fcn.004076aa
mov eax, esi
push eax
lea eax, [ebp - 0x140]
push eax
lea ecx, [ebp - 0x30]
lea edx, [ebp - 0xa0]
mov byte [ebp - 4], 0x3c
call fcn.0041339d
mov byte [ebp - 4], 0x3d
cmp dword [ebp - 0x8c], ebx
setne byte [ebp - 0x141]
cmp byte [ebp - 0x141], 0
je 0x41ac15
cmp dword [ebp - 0x50], 8
mov edx, dword [ebp - 0x64]
jae 0x41abd1
lea edx, [ebp - 0x64]
cmp dword [ebp - 0x88], 8
mov ecx, dword [ebp - 0x9c]
jae 0x41abe6
lea ecx, [ebp - 0x9c]
lea eax, [ebp - 0x4c]
push eax
call fcn.0041ae96
pop ecx
mov byte [ebp - 4], 0x3e
cmp dword [ebp - 0x38], ebx
je 0x41ac0a
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0xbc]
call fcn.00407341
push ebx
push 1
lea esi, [ebp - 0x4c]
call fcn.0040754f
inc dword [ebp - 0x150]
push ebx
push 1
lea esi, [ebp - 0xa0]
call fcn.0040754f
push ebx
push 1
lea esi, [ebp - 0x84]
call fcn.0040754f
push ebx
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea eax, [edi - 0x10]
mov byte [ebp - 4], 0x39
call fcn.0040df81
cmp byte [ebp - 0x141], 0
jne 0x41ab34
cmp dword [ebp - 0xa8], ebx
jne 0x41aca6
cmp dword [ebp - 0x50], 8
mov edx, dword [ebp - 0x64]
jae 0x41ac6f
lea edx, [ebp - 0x64]
mov ecx, dword [ebp - 0x158]
lea eax, [ebp - 0xa0]
push eax
call fcn.0041ae96
pop ecx
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x3f
call fcn.00407341
push ebx
push 1
lea esi, [ebp - 0xa0]
mov byte [ebp - 4], 0x39
call fcn.0040754f
mov esi, dword [ebp - 0x154]
lea eax, [ebp - 0xbc]
push eax
call fcn.00405639
lea ecx, [ebp - 0x140]
call fcn.00405307
xor edi, edi
push ebx
inc edi
push edi
lea esi, [ebp - 0xf4]
call fcn.0040754f
push ebx
push edi
lea esi, [ebp - 0xbc]
call fcn.0040754f
push ebx
push edi
lea esi, [ebp - 0xd8]
call fcn.0040754f
push ebx
push edi
jmp 0x41a9a3
call fcn.00411dd9
cmp byte [eax], 0
jne 0x41ad6e
lea eax, [ebp - 0x1e0]
push eax
call fcn.004071c6
and dword [ebp - 4], 0
lea eax, [ebp - 0x1d8]
push str.CSystemCommands::GetConfigurationValue_pinters_are_NULL__
push eax
call fcn.004058d5
pop ecx
pop ecx
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040574e
lea edi, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00405549
push 0
mov esi, edi
push 1
call fcn.0040754f
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x1e0]
call fcn.00405a60
mov esi, dword [ebp - 0x154]
push 0x525140
call fcn.004076aa
mov eax, esi
call fcn.004ec7f8
ret
lea eax, [ebp - 0x1d8]
push eax
mov dword [ebp - 4], 2
call fcn.00405430
mov byte [ebp - 4], 3
call fcn.00411dd9
lea ecx, [ebp - 0x30]
call fcn.00405346
mov byte [ebp - 4], 4
cmp dword [eax + 0x18], 8
jb 0x41ada1
mov esi, dword [eax + 4]
jmp 0x41ada4
lea esi, [eax + 4]
lea eax, [ebp - 0x1d8]
push 0x5251c8
push eax
call fcn.004058d5
pop ecx
pop ecx
push esi
push eax
call fcn.004058d5
pop ecx
pop ecx
push 0x5251c0
push eax
call fcn.004058d5
pop ecx
pop ecx
push str.CSystemCommands::GetConfigurationValue_pinters_are_NULL__
push eax
call fcn.004058d5
pop ecx
pop ecx
push edi
push 1
lea esi, [ebp - 0x30]
mov byte [ebp - 4], 3
call fcn.0040754f
lea eax, [ebp - 0x14c]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov esi, 0x2710
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 5
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x41ae44
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x1d8]
call fcn.0040532c
push 0x274
push str..SystemCommands.cpp
push eax
push esi
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 6
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
push edi
push 1
lea esi, [ebp - 0x30]
call fcn.0040754f
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 3
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
mov byte [ebp - 4], 2
lea eax, [ebp - 0x1d8]
call fcn.0040539b
or dword [ebp - 4], 0xffffffff
jmp 0x41ad56