Function at 0x419ff0
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb50
mov eax, dword [0x6aae14]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
push 0x103
lea ecx, [ebp - 0x517]
push ebx
push ecx
mov dword [ebp - 0xb44], edi
mov dword [ebp - 0xb3c], eax
mov dword [ebp - 0xb4c], esi
mov byte [ebp - 0x518], bl
call fcn.005dfd60
push 0x103
lea edx, [ebp - 0x30f]
push ebx
push edx
mov byte [ebp - 0x310], bl
call fcn.005dfd60
add esp, 0x18
cmp esi, ebx
je 0x41a05c
mov dword [esi], ebx
push edi
lea eax, [ebp - 0x518]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x518]
push ecx
call fcn.004e24e0
add esp, 4
push str.eupdate.ini
lea edx, [ebp - 0x518]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 1
push ebx
push ebx
push ebx
lea eax, [ebp - 0x518]
push ebx
push eax
call fcn.004e8950
add esp, 0x18
lea ecx, [ebp - 0x518]
push ecx
test eax, eax
jne 0x41a8ae
push 0x104
lea edx, [ebp - 0x310]
push edx
push 0x60c81c
push str.HTTPHost
push 0x60da74
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [ebp - 0x310], bl
je 0x41a899
push 0x103
lea eax, [ebp - 0xa2b]
push ebx
push eax
mov byte [ebp - 0xa2c], bl
call fcn.005dfd60
push 0x103
lea ecx, [ebp - 0x823]
push ebx
push ecx
mov byte [ebp - 0x824], bl
call fcn.005dfd60
push 0x103
lea edx, [ebp - 0x107]
push ebx
push edx
mov byte [ebp - 0x108], bl
call fcn.005dfd60
push 0x103
lea eax, [ebp - 0x20b]
push ebx
push eax
mov byte [ebp - 0x20c], bl
call fcn.005dfd60
lea ecx, [ebp - 0x310]
push 0x60ef30
push ecx
call fcn.005e0a30
push 0x103
lea edx, [ebp - 0xb2f]
push ebx
push edx
mov esi, eax
mov dword [ebp - 0xb38], ebx
mov dword [ebp - 0xb40], ebx
mov dword [ebp - 0xb34], ebx
mov byte [ebp - 0xb30], bl
call fcn.005dfd60
lea eax, [ebp - 0xb30]
add esp, 0x44
push eax
call fcn.0050c480
mov edi, eax
add esp, 4
cmp edi, ebx
je 0x41a249
push 0x103
lea ecx, [ebp - 0x413]
push ebx
push ecx
call fcn.005dfd60
push 0x103
lea edx, [ebp - 0x927]
push ebx
push edx
call fcn.005dfd60
add esp, 0x18
mov eax, 0x104
push ebx
mov dword [ebp - 0xb50], eax
mov dword [ebp - 0xb48], eax
mov byte [ebp - 0x928], bl
mov byte [ebp - 0x414], bl
call fcn.00503120
test eax, eax
je 0x41a249
lea eax, [ebp - 0xb48]
push eax
lea ecx, [ebp - 0x414]
push ecx
push str.ProxyServer
push str.SoftwareMicroWorldeScan_for_WindowsMwMonitorRegMsg
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004d5770
cmp al, 1
jne 0x41a249
lea edx, [ebp - 0xb50]
push edx
lea eax, [ebp - 0x928]
push eax
push str.ProxyPort
push str.SoftwareMicroWorldeScan_for_WindowsMwMonitorRegMsg
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004d5770
cmp al, 1
jne 0x41a249
cmp byte [ebp - 0x414], bl
je 0x41a249
cmp byte [ebp - 0x928], bl
je 0x41a249
mov dword [ebp - 0xb34], 1
cmp esi, ebx
je 0x41a252
add esi, 2
jmp 0x41a258
lea esi, [ebp - 0x310]
push 0x3a
push esi
call fcn.005e0940
add esp, 8
cmp eax, ebx
je 0x41a269
mov byte [eax], bl
cmp edi, ebx
jne 0x41a28c
lea edi, [ebp - 0x310]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x41a274
mov ecx, 6
mov esi, str.:10443_setup_apasetup.zip
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x41a2c7
lea eax, [ebp - 0x310]
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x41a293
mov ecx, dword [str._setup_apasetup.zip]
mov edx, dword [0x614c2c]
mov dword [eax], ecx
mov ecx, dword [0x614c30]
mov dword [eax + 4], edx
mov edx, dword [0x614c34]
mov dword [eax + 8], ecx
mov ecx, dword [0x614c38]
mov dword [eax + 0xc], edx
mov dword [eax + 0x10], ecx
cmp dword [ebp - 0xb34], ebx
jne 0x41a2e4
lea edx, [ebp - 0x310]
push edx
push str._SECSERVER__Download_Location__DIRECT_:__s
lea eax, [ebp - 0x720]
push eax
jmp 0x41a2f7
lea ecx, [ebp - 0x310]
push ecx
push str._SECSERVER__Download_Location__VIA_PROXY_:__s
lea edx, [ebp - 0x720]
push edx
call fcn.005dfb23
add esp, 0xc
push ebx
push 1
lea eax, [ebp - 0x720]
push eax
push 0x6aec98
call fcn.004311c0
add esp, 0x10
cmp dword [ebp + 0x10], ebx
je 0x41a424
push 1
lea ecx, [ebp - 0xb34]
push ecx
lea edx, [ebp - 0x310]
push ebx
push edx
mov dword [ebp - 0xb34], ebx
call fcn.004111c0
mov eax, dword [ebp - 0xb34]
add esp, 0x10
cmp eax, ebx
je 0x41a424
cmp byte [eax], bl
je 0x41a405
push ebx
push str.Content_Length:
push eax
call fcn.004f5880
mov esi, eax
add esp, 0xc
cmp esi, 0xffffffff
je 0x41a3ff
push 0x103
lea eax, [ebp - 0x413]
push ebx
push eax
mov byte [ebp - 0x414], bl
call fcn.005dfd60
mov ecx, dword [ebp - 0xb34]
mov al, byte [esi + ecx + 0xf]
lea edx, [esi + ecx + 0xf]
mov byte [ebp - 0x414], al
mov byte [ebp - 0x413], bl
mov cl, byte [edx + 1]
add esp, 0xc
mov eax, 1
cmp cl, 0xa
je 0x41a3d5
cmp cl, 0xd
je 0x41a3d5
cmp cl, bl
je 0x41a3d5
cmp eax, 0x10
jge 0x41a3d5
mov byte [ebp + eax - 0x414], cl
inc eax
mov byte [ebp + eax - 0x414], bl
mov cl, byte [edx + eax]
cmp cl, 0xa
jne 0x41a3b0
lea ecx, [ebp - 0x414]
push ecx
call fcn.004e1290
mov esi, dword [ebp - 0xb4c]
add esp, 4
cmp esi, ebx
je 0x41a3ff
lea edx, [ebp - 0x414]
push edx
call fcn.005e08f3
add esp, 4
mov dword [esi], eax
mov eax, dword [ebp - 0xb34]
push eax
call fcn.005e0865
add esp, 4
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005dfbbe
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0xa2c]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov esi, dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
lea ecx, [ebp - 0x824]
push ecx
push ebx
push 0x614bb8
lea edx, [ebp - 0xa2c]
push edx
call esi
lea eax, [ebp - 0x824]
push eax
call fcn.004e0670
lea ecx, [ebp - 0x824]
push 0x2e
push ecx
call fcn.005e0a00
add esp, 0xc
cmp eax, ebx
je 0x41a475
mov byte [eax], bl
lea edx, [ebp - 0x824]
push 0x60c81c
push edx
call fcn.004e9050
add esp, 8
cmp eax, 1
jne 0x41a4cf
mov dword [ebp - 0xb38], eax
lea eax, [ebp - 0x108]
push eax
push ebx
push 0x614bb8
lea ecx, [ebp - 0x824]
push ecx
call esi
lea edx, [ebp - 0x108]
push edx
call fcn.004e0670
lea eax, [ebp - 0x108]
push 0x2e
push eax
call fcn.005e0a00
add esp, 0xc
cmp eax, ebx
je 0x41a4e4
mov byte [eax], bl
jmp 0x41a4e4
xor eax, eax
mov cl, byte [ebp + eax - 0x824]
mov byte [ebp + eax - 0x108], cl
inc eax
cmp cl, bl
jne 0x41a4d1
lea eax, [ebp - 0x108]
dec eax
jmp 0x41a4f0
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x41a4f0
mov ecx, dword [str..zip]
mov dl, byte [0x614bb4]
mov dword [eax], ecx
mov byte [eax + 4], dl
push ebx
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x108]
push ecx
call fcn.004ec3a0
lea edx, [ebp - 0x20c]
push edx
call fcn.004e2520
push ebx
push ebx
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0x310]
push ecx
call fcn.004111c0
mov esi, eax
add esp, 0x20
cmp esi, ebx
jne 0x41a55e
push ebx
lea edx, [ebp - 0x720]
push str._SECSERVER__Download_Status:__u
push edx
call fcn.005dfb23
add esp, 0xc
jmp 0x41a5cf
push 1
push ebx
push ebx
push ebx
lea eax, [ebp - 0xb40]
push eax
lea ecx, [ebp - 0x108]
push ecx
call fcn.004e8950
add esp, 0x18
test eax, eax
je 0x41a596
push esi
lea edx, [ebp - 0x720]
push str._SECSERVER__Download_Status:__u__File_Absent_
push edx
call fcn.005dfb23
add esp, 0xc
xor esi, esi
jmp 0x41a5cf
mov eax, dword [ebp - 0xb40]
cmp eax, ebx
jne 0x41a5b9
push esi
lea eax, [ebp - 0x720]
push str._SECSERVER__Download_Status:__u__File_Present_but_Zero_Bytes_
push eax
call fcn.005dfb23
add esp, 0xc
xor esi, esi
jmp 0x41a5cf
push eax
push esi
lea ecx, [ebp - 0x720]
push str._SECSERVER__Download_Status:__u__fsize:__lu_
push ecx
call fcn.005dfb23
add esp, 0x10
push ebx
push 1
lea edx, [ebp - 0x720]
push edx
push 0x6aec98
call fcn.004311c0
add esp, 0x10
cmp esi, ebx
je 0x41a859
push 0x103
lea eax, [ebp - 0x927]
push ebx
push eax
mov byte [ebp - 0x928], bl
call fcn.005dfd60
add esp, 0xc
push ebx
lea ecx, [ebp - 0x928]
push ecx
lea edx, [ebp - 0x20c]
push edx
lea eax, [ebp - 0x108]
push eax
call fcn.0050c0d0
test eax, eax
je 0x41a7f9
mov ecx, dword [ebp - 0xb40]
push ecx
push str.ApaSize
push 0x60d814
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004f48a0
mov esi, dword [ebp - 0xb44]
push esi
lea edx, [ebp - 0x20c]
push str.UPDATER.DLL
push edx
call fcn.00419850
add esp, 0xc
test eax, eax
je 0x41a6bf
push str.UPDATER.DLL
push esi
call fcn.004197c0
add esp, 8
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push str.UPDATER.DLL
lea eax, [ebp - 0x20c]
push eax
call fcn.00517760
test eax, eax
je 0x41a6bf
push esi
lea ecx, [ebp - 0x20c]
push ecx
lea edx, [ebp - 0x720]
push str._SECSERVER__Copied_UPDATER.DLL_from__s_to__s_n
push edx
call fcn.005dfb23
push ebx
push 1
lea eax, [ebp - 0x720]
push eax
push 0x6aec98
call fcn.004311c0
add esp, 0x20
push esi
lea ecx, [ebp - 0x20c]
push str.ESERVCLN.EXE
push ecx
call fcn.00419850
add esp, 0xc
test eax, eax
je 0x41a731
push str.ESERVCLN.EXE
push esi
call fcn.004197c0
add esp, 8
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
push str.ESERVCLN.EXE
lea edx, [ebp - 0x20c]
push edx
call fcn.00517760
test eax, eax
je 0x41a731
push esi
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x720]
push str._SECSERVER__Copied_ESERVCLN.EXE_from__s_to__s_n
push ecx
call fcn.005dfb23
push ebx
push 1
lea edx, [ebp - 0x720]
push edx
push 0x6aec98
call fcn.004311c0
add esp, 0x20
push esi
call fcn.00419c00
lea eax, [ebp - 0x720]
push str._SECSERVER__Installing_escan_apache_service__For_Update_Agent_
push eax
call fcn.005dfb23
push ebx
push 1
lea ecx, [ebp - 0x720]
push ecx
push 0x6aec98
call fcn.004311c0
push ebx
push 1
lea edx, [ebp - 0x20c]
push edx
push ebx
push 1
push esi
call fcn.00406950
push 0x6aec98
mov esi, eax
call fcn.00419d30
add esp, 0x38
cmp esi, ebx
je 0x41a790
push str._SECSERVER__service_escan_apache_successfully_installed__For_Update_Agent_
lea eax, [ebp - 0x720]
push eax
jmp 0x41a79c
push str._SECSERVER__service_escan_apache_could_not_be_installed__For_Update_Agent_
lea ecx, [ebp - 0x720]
push ecx
call fcn.005dfb23
add esp, 8
push ebx
push 1
lea edx, [ebp - 0x720]
push edx
push 0x6aec98
call fcn.004311c0
lea eax, [ebp - 0x108]
push eax
call fcn.004e0670
add esp, 0x14
cmp dword [ebp - 0xb38], ebx
je 0x41a7e3
push ebx
push ebx
push ebx
push ebx
push 1
push ebx
push ebx
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0050c810
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005dfbbe
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x108]
push edx
call fcn.004e0670
add esp, 4
cmp dword [ebp - 0xb38], ebx
je 0x41a824
push ebx
push ebx
push ebx
push ebx
push 1
push ebx
push ebx
lea eax, [ebp - 0x20c]
push eax
call fcn.0050c810
mov eax, dword [ebp - 0xb3c]
lea ecx, [ebp - 0x928]
push ecx
lea edx, [ebp - 0x108]
push edx
push str.Unable_to_UNZIP__s__Reason:__s
push eax
call fcn.005dfb23
add esp, 0x10
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005dfbbe
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x108]
push ecx
call fcn.004e0670
add esp, 4
cmp dword [ebp - 0xb38], ebx
je 0x41a884
push ebx
push ebx
push ebx
push ebx
push 1
push ebx
push ebx
lea edx, [ebp - 0x20c]
push edx
call fcn.0050c810
mov ecx, dword [ebp - 0xb3c]
lea eax, [ebp - 0x310]
push eax
push str.Unable_to_download_from__s_
push ecx
jmp 0x41a8ba
mov eax, dword [ebp - 0xb3c]
lea edx, [ebp - 0x518]
push edx
push str.Unable_to_get_HTTPHost_from__s_
push eax
jmp 0x41a8ba
mov edx, dword [ebp - 0xb3c]
push str.Unable_to_find__s_
push edx
call fcn.005dfb23
mov ecx, dword [ebp - 4]
add esp, 0xc
pop edi
pop esi
xor ecx, ebp
xor eax, eax
pop ebx
call fcn.005dfbbe
mov esp, ebp
pop ebp
ret