Function at 0x405e10
Capabilities:
Check if file exists
Create directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x344
push ebp
push esi
push edi
push 1
push 0
push str.DefsInst.log
mov ecx, 0x426158
call fcn.00406310
test al, al
je 0x406207
push str.Intrusion_Detection_Signatures_Intelligent_Updater_n
push 0x426158
mov dword [0x426264], 0
call fcn.00406450
add esp, 8
lea ecx, [esp + 0xc]
call fcn.00406640
lea ecx, [esp + 0xc]
call fcn.00406660
test eax, eax
je 0x4061fe
lea eax, [esp + 0x38]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
jne 0x405eab
push str.Could_not_get_the_Temporary_Files_Path._n
push 0x426158
call fcn.00406450
add esp, 8
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push str.Checking_system_requirements..._n
push 0x426158
call fcn.00406450
push str.SymNetDrv_requirements...
push 0x426158
call fcn.00406450
add esp, 0x10
call fcn.00401940
cmp edx, 6
ja 0x405f0c
jb 0x405edc
test eax, eax
jae 0x405f0c
call fcn.00405c20
test eax, eax
jns 0x405f0c
push str.Failed_n
push 0x426158
call fcn.00406450
add esp, 8
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push 0x41ed10
push 0x426158
call fcn.00406450
push str.IDS_requirements...
push 0x426158
call fcn.00406450
xor eax, eax
mov byte [esp + 0x258], 0
mov ecx, 0x41
lea edi, [esp + 0x259]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x258]
push ecx
call fcn.004014a0
add esp, 0x14
test eax, eax
je 0x405ee5
push 0x41ed10
push 0x426158
call fcn.00406450
add esp, 8
xor eax, eax
lea ebx, [ebx]
mov cl, byte [esp + eax + 0x38]
mov byte [esp + eax + 0x140], cl
inc eax
test cl, cl
jne 0x405f70
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendA]
push 0x41ecf8
lea edx, [esp + 0x144]
push edx
call esi
mov edi, dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
lea eax, [esp + 0x140]
push eax
call edi
test eax, eax
mov ebp, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
jne 0x405fff
push str.Temp_Zip_directory_does_not_exist._Creating..._n
push 0x426158
call fcn.00406450
add esp, 8
push 0
lea ecx, [esp + 0x144]
push ecx
call ebp
test eax, eax
jne 0x405fff
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Creation_of_temp_Zip_directory_to_extract_files_failed._Error:_0x_x_n
push 0x426158
call fcn.00406450
add esp, 0xc
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push str.Defs.zip
lea edx, [esp + 0x144]
push edx
call esi
lea eax, [esp + 0x140]
push eax
push 0x41ec78
push 0x65
push 0
call fcn.00405ae0
add esp, 0x10
test eax, eax
jns 0x406053
push eax
push str.Error_extracting_Zip_File._Error:_0x_x_n
push 0x426158
call fcn.00406450
add esp, 0xc
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push str.IDSDefs
lea ecx, [esp + 0x3c]
push ecx
call esi
lea edx, [esp + 0x38]
push edx
push str.Temp_directory_is__s_n
push 0x426158
call fcn.00406450
add esp, 0xc
lea eax, [esp + 0x38]
push eax
call edi
test eax, eax
jne 0x4060ce
push str.Temp_directory_does_not_exist._Creating..._n
push 0x426158
call fcn.00406450
add esp, 8
push 0
lea ecx, [esp + 0x3c]
push ecx
call ebp
test eax, eax
jne 0x4060ce
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Creation_of_temp_directory_to_extract_files_failed._Error:_0x_x_n
push 0x426158
call fcn.00406450
add esp, 0xc
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push str.Extracting_Files..._n
push 0x426158
call fcn.00406450
add esp, 8
lea ecx, [esp + 0x18]
call fcn.00407a10
push 1
push 0
push 0
lea edx, [esp + 0x14c]
push edx
lea ecx, [esp + 0x28]
call fcn.004082f0
test eax, eax
jne 0x40611b
push str.Error_Opening_Defs.zip_n
push 0x426158
call fcn.00406450
add esp, 8
jmp 0x4061f5
push 1
push 0
push 0
push 0
push 0
lea eax, [esp + 0x4c]
push eax
push 0
lea ecx, [esp + 0x34]
call fcn.00408410
push str.Installing_Defs..._n
push 0x426158
call fcn.00406450
add esp, 8
lea ecx, [esp + 0x14]
call fcn.0040c730
lea ecx, [esp + 0x10]
push ecx
push 0x41e8a8
lea ecx, [esp + 0x1c]
mov dword [esp + 0x18], 0
call fcn.0040c860
test eax, eax
jns 0x406177
push eax
push str.Installation_of_IDS_Defs_failed._IDSDefsManager_is_missing__Error:_0x_x_n
jmp 0x4061d6
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
call dword [edx + 0xc]
test eax, eax
jns 0x40618d
push eax
push str.Installation_of_IDS_Defs_Failed._Initializing._Error:_0x_x_n
jmp 0x4061d6
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
lea edx, [esp + 0x38]
push edx
push str.Symantec_Client_Firewall
push eax
call dword [ecx + 0x1c]
test eax, eax
jns 0x406213
push eax
push str.Failed_to_install_Defs_for_SCF._Error:_0x_x._Trying_NIS_n
push 0x426158
call fcn.00406450
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
add esp, 0xc
lea edx, [esp + 0x38]
push edx
push str.Internet_Security
push eax
call dword [ecx + 0x1c]
test eax, eax
jns 0x406213
push eax
push str.Installation_of_IDS_Defs_Failed._Error:_0x_x_n
push 0x426158
call fcn.00406450
add esp, 0xc
lea ecx, [esp + 0x10]
call fcn.00405df0
lea ecx, [esp + 0x14]
call fcn.0040cb80
lea ecx, [esp + 0x18]
call fcn.00408270
lea ecx, [esp + 0xc]
call fcn.00406650
or eax, 0xffffffff
pop edi
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10
push str.IDS_Defs_installed_successfully_n
push 0x426158
call fcn.00406450
add esp, 8
lea ecx, [esp + 0x10]
call fcn.00405df0
lea ecx, [esp + 0x14]
call fcn.0040cb80
lea ecx, [esp + 0x18]
call fcn.00408270
lea ecx, [esp + 0xc]
call fcn.00406650
pop edi
xor eax, eax
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 0x10