Function at 0x10073260
Capabilities:
Check for time delay via gettickcount
Create thread
Read .ini file

Disassembly:
push ebp
lea ebp, [esp - 0x4aa4]
mov eax, 0x4aa4
call fcn.10126240
push 0xffffffffffffffff
push 0x10136960
mov eax, dword fs:[0]
push eax
sub esp, 0x60
mov eax, dword [0x1017455c]
xor eax, ebp
mov dword [ebp + 0x4aa0], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x4aac]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x4ab8]
xor ebx, ebx
push 0x207
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp + 0x4ac0]
mov dword [ebp - 0x20], edx
mov edx, dword [ebp + 0x4ac4]
lea eax, [ebp + 0x4471]
push ebx
push eax
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x14], edx
mov byte [ebp + 0x4470], bl
call fcn.10116880
push 0x103
lea ecx, [ebp + 0x4985]
push ebx
push ecx
mov byte [ebp + 0x4984], bl
call fcn.10116880
push 0x103
lea edx, [ebp + 0x3841]
push ebx
push edx
mov byte [ebp + 0x3840], bl
call fcn.10116880
push 0x103
lea eax, [ebp + 0x3e59]
push ebx
push eax
mov byte [ebp + 0x3e58], bl
call fcn.10116880
push 0x103
lea ecx, [ebp + 0x4679]
push ebx
push ecx
mov byte [ebp + 0x4678], bl
call fcn.10116880
push 0x103
lea edx, [ebp + 0x3f5d]
push ebx
push edx
mov byte [ebp + 0x3f5c], bl
call fcn.10116880
add esp, 0x48
push 0x103
lea eax, [ebp + 0x332d]
push ebx
push eax
mov byte [ebp + 0x332c], bl
call fcn.10116880
push 0x103
lea ecx, [ebp + 0x3431]
push ebx
push ecx
mov byte [ebp + 0x3430], bl
call fcn.10116880
push 0x103
lea edx, [ebp + 0x2f1d]
push ebx
mov dword [ebp - 4], ebx
push edx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x68], 1
mov dword [ebp - 0x4c], 0x28
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x64], ebx
mov byte [ebp + 0x2f1c], bl
call fcn.10116880
push 0x103
lea eax, [ebp + 0x3639]
push ebx
push eax
mov byte [ebp + 0x3638], bl
call fcn.10116880
mov byte [ebp + 0x373c], bl
push 0x103
lea ecx, [ebp + 0x373d]
push ebx
push ecx
call fcn.10116880
add esp, 0x3c
push 0x10193e64
push str.DownloadDebug
mov ecx, str.SoftwareMicroWorld
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
cmp dword [0x10193e64], ebx
jne 0x10073421
mov dword [0x10193e64], ebx
lea esi, [ebp + 0x373c]
call fcn.100580d0
lea edi, [ebp + 0x2f1c]
call fcn.10039e30
cmp eax, ebx
je 0x100735e3
push 0x103
lea edx, [ebp + 0x4061]
push ebx
push edx
mov byte [ebp + 0x4060], 0
call fcn.10116880
add esp, 0xc
mov eax, edi
push eax
lea ecx, [ebp + 0x4880]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp byte [ebp + 0x4880], 0
je 0x100734aa
lea eax, [ebp + 0x4880]
lea ebx, [ebx]
cmp byte [eax], 0
je 0x10073488
inc eax
jmp 0x10073480
lea edx, [ebp + 0x4880]
sub eax, edx
je 0x100734aa
cmp byte [ebp + eax + 0x487f], 0x5c
je 0x100734aa
push 0x10149ea8
mov eax, edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.EUpdate.ini
lea ecx, [ebp + 0x4880]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edx, [ebp + 0x4880]
push edx
push str.Config
mov edi, 0x10193e68
mov edx, 0x1013f817
mov ecx, str.LogfilePath
call fcn.100573b0
add esp, 8
call fcn.1006c2f0
mov esi, eax
cmp dword [0x10193e64], ebx
je 0x10073504
lea eax, [ebp + 0x4880]
push eax
push esi
push str._ESUPD__SMBCorp___d__INI:_s_
push ebx
call fcn.10053700
add esp, 0x10
cmp esi, ebx
je 0x100736a9
push 0x104
lea ecx, [ebp + 0x4060]
push ecx
push 0x1013ffd0
mov edx, str.server
mov ecx, str.eScan
call fcn.100436c0
add esp, 0xc
cmp byte [ebp + 0x4060], 0x31
jne 0x1007354e
cmp dword [0x10193e64], ebx
je 0x100735d7
push str._ESUPD__DownloadSoFiles__1__A_
jmp 0x100735ce
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp + 0x4880]
push edx
push 0x104
lea eax, [ebp + 0x4060]
push eax
push 0x1013fc40
push str.SecServer
push str.Config
call esi
cmp byte [ebp + 0x4060], 0x31
jne 0x10073590
cmp dword [0x10193e64], ebx
je 0x100735d7
push str._ESUPD__DownloadSoFiles__1__B_
jmp 0x100735ce
lea ecx, [ebp + 0x4880]
push ecx
push 0x104
lea edx, [ebp + 0x4060]
push edx
push 0x1013f817
push str.DownloadFromAnotherServer
push str.Config
call esi
cmp byte [ebp + 0x4060], 0x31
jne 0x100736a9
cmp dword [0x10193e64], ebx
je 0x100735d7
push str._ESUPD__DownloadSoFiles__1__C_
push ebx
call fcn.10053700
add esp, 8
mov dword [ebp - 0x1c], 1
jmp 0x100736a9
cmp byte [0x10193c30], 0
mov esi, 1
mov dword [ebp - 0x1c], esi
je 0x10073610
push str.mwav
mov ecx, 0x10193c30
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10073610
xor esi, esi
mov dword [ebp - 0x1c], esi
lea ecx, [ebp + 0x3638]
call fcn.1004c9c0
cmp dword [0x10193e64], ebx
je 0x1007364c
lea eax, [ebp + 0x3638]
push eax
push str._ESUPD__MailScanInstallDir:__s
push ebx
call fcn.10053700
add esp, 0xc
push 0x10193c30
push esi
push str._ESUPD__DownloadSoFiles___u___s_
push ebx
call fcn.10053700
add esp, 0x10
cmp byte [ebp + 0x3638], 0
je 0x100736a9
lea ecx, [ebp + 0x3638]
push ecx
lea edx, [ebp + 0x4164]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp + 0x4164]
call fcn.10049c40
push str.MailScan.ini
lea eax, [ebp + 0x4164]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea ecx, [ebp + 0x4164]
push ecx
push str.Config
mov edi, 0x10193e68
mov edx, 0x1013f817
mov ecx, str.LogfilePath
call fcn.100573b0
add esp, 8
cmp byte [0x10193e68], 0
je 0x100736c8
push ebx
push 0x10193e68
call fcn.10044cc0
add esp, 8
cmp eax, ebx
jne 0x1007386f
mov byte [0x10193e68], 0
lea ecx, [ebp + 0x373c]
lea edx, [ebp + 0x4268]
jmp 0x100736e0
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x100736e0
cmp byte [ebp + 0x4268], al
je 0x10073722
lea eax, [ebp + 0x4268]
cmp byte [eax], 0
je 0x10073700
inc eax
jmp 0x100736f8
lea edx, [ebp + 0x4268]
sub eax, edx
je 0x10073722
cmp byte [ebp + eax + 0x4267], 0x5c
je 0x10073722
push 0x10149ea8
mov eax, edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x4268]
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x10073730
mov ecx, dword [str.eupdate.ini]
mov edx, dword [0x101494e4]
mov dword [eax], ecx
mov ecx, dword [0x101494e8]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
cmp dword [0x10193e64], ebx
je 0x1007376f
lea edx, [ebp + 0x4268]
push edx
push str._ESUPD__EUpdateIni:__s
push ebx
call fcn.10053700
add esp, 0xc
push 1
push ebx
xor edx, edx
lea ecx, [ebp + 0x4268]
call fcn.10044660
add esp, 8
cmp eax, ebx
jne 0x100737d0
lea eax, [ebp + 0x4268]
push eax
push 0x104
push 0x10193e68
push 0x1013f817
push str.LogfilePath
push str.Config
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [0x10193e68], 0
je 0x100737c7
push ebx
push 0x10193e68
call fcn.10044cc0
add esp, 8
cmp eax, ebx
jne 0x100737d0
mov byte [0x10193e68], 0
jmp 0x100737dd
cmp byte [0x10193e68], 0
jne 0x10073878
lea ecx, [ebp + 0x373c]
mov edx, 0x10193e68
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x100737e8
cmp byte [0x10193e68], al
je 0x10073828
mov eax, 0x10193e68
nop
cmp byte [eax], 0
je 0x10073808
inc eax
jmp 0x10073800
sub eax, 0x10193e68
je 0x10073828
cmp byte [eax + 0x10193e67], 0x5c
je 0x10073828
push 0x10149ea8
push 0x10193e68
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov edi, 0x10193e68
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x10073830
mov ecx, dword [0x10149dd4]
mov dword [edi], ecx
cmp byte [0x10193e68], al
je 0x1007385a
push ebx
push 0x10193e68
call fcn.10044cc0
add esp, 8
cmp eax, ebx
jne 0x1007386f
lea ecx, [ebp + 0x373c]
mov edx, 0x10193e68
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10073865
cmp byte [0x10193e68], 0
je 0x100738a8
mov eax, 0x10193e68
lea ecx, [ecx]
cmp byte [eax], 0
je 0x10073888
inc eax
jmp 0x10073880
sub eax, 0x10193e68
je 0x100738a8
cmp byte [eax + 0x10193e67], 0x5c
je 0x100738a8
push 0x10149ea8
push 0x10193e68
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, 0x10193e68
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x100738b0
mov edx, dword [str.ESUPDDLL.LOG]
mov ecx, dword [0x10158ce4]
mov esi, dword [ebp - 0x54]
mov dword [eax], edx
mov edx, dword [0x10158ce8]
mov dword [eax + 4], ecx
mov cl, byte [0x10158cec]
mov dword [eax + 8], edx
mov byte [eax + 0xc], cl
cmp esi, ebx
je 0x1007515e
cmp byte [esi], 0
je 0x1007515e
push 0x207
lea edx, [ebp + 0x3c51]
push ebx
push edx
mov byte [ebp + 0x3c50], 0
call fcn.10116880
push 0x103
lea eax, [ebp + 0x3535]
push ebx
push eax
mov byte [ebp + 0x3534], 0
call fcn.10116880
add esp, 0x18
mov ecx, esi
lea edx, [ebp + 0x4470]
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10073930
lea ecx, [ebp + 0x4880]
push ecx
push 0x208
lea edx, [ebp + 0x3c50]
push edx
push 0x1013fc40
push str.NoChangeDwnLink
push str.Config
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp dword [0x10193e64], ebx
je 0x10073994
mov edx, dword [ebp + 0x4ab4]
lea eax, [ebp + 0x4880]
push eax
lea ecx, [ebp + 0x3c50]
push ecx
push edx
lea eax, [ebp + 0x4470]
push eax
push str._ESUPD__dwnLink:__s__UseProxy_u__NoChangeDwnLink_s__EU:_s_
push ebx
call fcn.10053700
add esp, 0x18
cmp byte [ebp + 0x3c50], 0x31
je 0x10073d81
lea ecx, [ebp + 0x4470]
lea edx, [ebp + 0x3c50]
lea ecx, [ecx]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x100739b0
push str.:2221
lea ecx, [ebp + 0x3c50]
call fcn.10047020
mov esi, eax
add esp, 4
cmp esi, 0xffffffff
je 0x10073d81
push str._av32bit
lea ecx, [ebp + 0x3c50]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
jne 0x10073a0c
push str._avc
lea ecx, [ebp + 0x3c50]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10073d81
xor ebx, ebx
push ebx
push 0x1013f817
lea ecx, [ebp + 0x3c50]
push str.http:__
push ecx
mov byte [ebp + esi + 0x3c50], bl
call fcn.10047ed0
lea edx, [ebp + 0x3c50]
push edx
call fcn.100454f0
xor esi, esi
lea eax, [ebp + 0x3c50]
push esi
push eax
call fcn.1004dcf0
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x10073a70
cmp dword [0x10193e64], ebx
je 0x10073aa6
push eax
lea ecx, [ebp + 0x3c50]
push ecx
push str._ESUPD__Tmp:__s__IP:_u_
push eax
call fcn.10053700
add esp, 0x10
jmp 0x10073aa6
lea edx, [ebp + 0x3c50]
push edx
mov ecx, 0x101a2fd0
call fcn.10054060
add esp, 4
mov esi, eax
cmp dword [0x10193e64], ebx
je 0x10073aa6
push esi
push edi
lea eax, [ebp + 0x3c50]
push eax
push str._ESUPD__Tmp:__s__IP:_u__LocIP:_d_
push 0
call fcn.10053700
add esp, 0x14
lea ecx, [ebp + 0x4880]
push ecx
push 0x104
lea edx, [ebp + 0x3534]
push edx
push 0x1013fc40
push str.ForceAVUpdatesFromCloud
push str.Config
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [ebp + 0x3534], 0x31
jne 0x10073adc
mov ebx, 1
cmp dword [0x10193e64], 0
je 0x10073afb
lea eax, [ebp + 0x3534]
push eax
push str._ESUPD__ForceAVUpdatesFromCloud:__s
push 0
call fcn.10053700
add esp, 0xc
test edi, edi
je 0x10073b04
cmp esi, 1
jne 0x10073b0c
test ebx, ebx
je 0x10073d81
push 0x103
xor edi, edi
lea ecx, [ebp + 0x3229]
push edi
push ecx
mov byte [ebp + 0x3228], 0
call fcn.10116880
xor eax, eax
push 0x3ff
lea edx, [ebp + 0x2219]
push edi
push edx
mov byte [ebp + 0x4a94], 0
mov dword [ebp + 0x4a95], eax
mov dword [ebp + 0x4a99], eax
mov byte [ebp + 0x4a9d], al
mov byte [ebp + 0x2218], al
call fcn.10116880
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
add esp, 0x18
push str.upgr_mmxvi.cdn.bitdefender.net
lea eax, [ebp + 0x3228]
push eax
call esi
push 0x1014965c
lea ecx, [ebp + 0x4a94]
push ecx
call esi
mov byte [ebp + 0x2218], 0
cmp ebx, edi
je 0x10073ba2
cmp dword [0x10193e64], edi
je 0x10073c04
push str._ESUPD__B__NOT_Checking_conn_to_upgr_cloud_as_ForceAVUpdatesFromCloud
push edi
call fcn.10053700
add esp, 8
jmp 0x10073c04
cmp dword [0x10193e64], edi
je 0x10073bb8
push str._ESUPD__B__Checking_conn_to_upgr_cloud...
push edi
call fcn.10053700
add esp, 8
push edi
push edi
push edi
push edi
push 0x2710
push edi
lea edx, [ebp + 0x2218]
push edx
lea eax, [ebp + 0x4a94]
push eax
lea ecx, [ebp + 0x3228]
push ecx
xor edx, edx
xor ecx, ecx
call fcn.1000d1d0
add esp, 0x24
mov esi, eax
cmp dword [0x10193e64], edi
je 0x10073bfc
push esi
push str._ESUPD__B__Check_Conn_returns__u
push edi
call fcn.10053700
add esp, 0xc
cmp esi, edi
je 0x10073d81
push 0x207
lea edx, [ebp + 0x3021]
push edi
push edx
mov byte [ebp + 0x3020], 0
call fcn.10116880
push 0x103
lea eax, [ebp + 0x477d]
push edi
push eax
mov byte [ebp + 0x477c], 0
call fcn.10116880
lea ecx, [ebp + 0x3020]
push str.http:__upgr_mmxvi.cdn.bitdefender.net_av32bit_versions.dat
push ecx
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x44], edi
call fcn.1010d6a8
push str.mmxiii
lea ecx, [ebp + 0x3020]
call fcn.10047020
add esp, 0x24
cmp eax, 0xffffffff
je 0x10073c6c
mov esi, str.downloader_1.0.30.345_95505_Bitdefender2012__WSLib_1.4__1__0__162__0__
jmp 0x10073ca8
push str.mmxiv
lea ecx, [ebp + 0x3020]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10073c8b
mov esi, str.downloader_1.0.30.400_132565_Bitdefender2014__WSLib_1.4__3__0__0__79__
jmp 0x10073ca8
push str.mmxvi
lea ecx, [ebp + 0x3020]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10073cb8
mov esi, str.downloader_1.0.30.400_132565_Bitdefender2015__WSLib_1.4__3__0__0__79__
mov ecx, 0x11
lea edi, [ebp + 0x477c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp dword [0x10193e64], 0
je 0x10073cd7
lea edx, [ebp + 0x3020]
push edx
push str._ESUPD__VURL:_s
push 0
call fcn.10053700
add esp, 0xc
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp + 0x477c]
lea edx, [ebp + 0x3020]
call fcn.100075c0
add esp, 8
cmp dword [0x10193e64], 0
je 0x10073d0f
mov edx, dword [ebp - 0x28]
push edx
push str._ESUPD__ContentSize:_d
push 0
call fcn.10053700
add esp, 0xc
mov esi, dword [ebp - 0x44]
test esi, esi
je 0x10073d2f
cmp byte [esi], 0
je 0x10073d2f
push str.emalware
mov ecx, esi
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
jne 0x10073d4c
test ebx, ebx
jne 0x10073d4c
cmp dword [0x10193e64], ebx
je 0x10073d74
mov eax, dword [ebp - 0x28]
push eax
push str._ESUPD__Invalid_Versions.dat_with_ContentSize:_d
push ebx
call fcn.10053700
jmp 0x10073d71
mov ecx, dword [ebp - 0x54]
push 0x2f
push ecx
call fcn.1010e930
add esp, 8
test eax, eax
je 0x10073d74
inc eax
push eax
lea edx, [ebp + 0x4470]
push str.http:__upgr_mmxvi.cdn.bitdefender.net__s
push edx
call fcn.1010d6a8
add esp, 0xc
test esi, esi
je 0x10073d81
push esi
call fcn.1010dc10
add esp, 4
cmp dword [ebp + 0x4ab4], 0
jne 0x10074077
push 0x207
lea eax, [ebp + 0x3945]
push 0
push eax
mov byte [ebp + 0x3944], 0
call fcn.10116880
add esp, 0xc
lea ecx, [ebp + 0x4880]
push ecx
push 0x208
lea edx, [ebp + 0x3944]
push edx
push 0x1013f817
push str.NoCheckHostConn
push str.Config
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
cmp byte [ebp + 0x3944], 0x31
je 0x10074077
cmp byte [0x101a2bc0], 0
je 0x10073e2a
cmp byte [0x101a2dc8], 0
je 0x10073e2a
push 0x101a2bc0
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10073e2a
push 0
push 0x101a2dc8
lea eax, [ebp + 0x4470]
push 0x101a2bc0
push eax
call fcn.10047ed0
add esp, 0x10
jmp 0x10074077
lea ecx, [ebp + 0x4470]
lea edx, [ebp + 0x3944]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10073e36
push 0
push 0x1013f817
lea ecx, [ebp + 0x3944]
push str.http:__
push ecx
call fcn.10047ed0
lea edx, [ebp + 0x3944]
push edx
call fcn.100454f0
lea eax, [ebp + 0x3944]
push 0x3a
push eax
call fcn.1010d780
add esp, 0x1c
test eax, eax
jne 0x10074077
lea ecx, [ebp + 0x3944]
push 0x2f
push ecx
call fcn.1010d780
add esp, 8
test eax, eax
je 0x10074077
mov byte [eax], 0
cmp dword [0x10193e64], 0
je 0x10073eb8
lea edx, [ebp + 0x3944]
push edx
push str._ESUPD__Tmp:_s
push 0
call fcn.10053700
add esp, 0xc
push str.bitdefender
lea ecx, [ebp + 0x3944]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
jne 0x10074077
lea eax, [ebp + 0x3944]
push 0
push eax
call fcn.1004dcf0
add esp, 8
test eax, eax
jne 0x10074077
push 0x3ff
push eax
lea ecx, [ebp + 0x2a19]
push ecx
mov byte [ebp + 0x2a18], al
call fcn.10116880
add esp, 0xc
cmp dword [0x10193e64], 0
je 0x10073f27
lea edx, [ebp + 0x3944]
push edx
push str._ESUPD__A__Checking_conn_to__s
push 0
call fcn.10053700
add esp, 0xc
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x3944]
push eax
lea ecx, [ebp + 0x3b4c]
push ecx
call ebx
push 0x1014965c
lea edx, [ebp + 0x4a88]
push edx
call ebx
push 0
push 0
push 0
push 0
push 0x2710
push 0
lea eax, [ebp + 0x2a18]
push eax
lea ecx, [ebp + 0x4a88]
push ecx
lea edx, [ebp + 0x3b4c]
push edx
xor edx, edx
xor ecx, ecx
mov byte [ebp + 0x2a18], 0
call fcn.1000d1d0
add esp, 0x24
cmp dword [0x10193e64], 0
mov esi, eax
je 0x10073f9d
push esi
push str._ESUPD__A__Check_Conn_returns__u
push 0
call fcn.10053700
add esp, 0xc
test esi, esi
jne 0x10074077
lea eax, [ebp + 0x2a18]
push eax
lea ecx, [ebp + 0x4a88]
push ecx
lea edx, [ebp + 0x3b4c]
push edx
push str._ESUPD__Connectivity_to__s:_s_fails__Reason:__s
push esi
call fcn.10053700
add esp, 0x14
lea ecx, [ebp + 0x3b4c]
mov edx, 0x101a2bc0
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10073fd3
mov ecx, 7
mov esi, str.upgr_mmxvi.cdn.bitdefender.net
lea edi, [ebp + 0x3b4c]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x1014965c
lea eax, [ebp + 0x4a88]
push eax
movsb byte es:[edi], byte [esi]
call ebx
push 0
push 0
push 0
push 0
push 0x2710
push 0
lea ecx, [ebp + 0x2a18]
push ecx
lea edx, [ebp + 0x4a88]
push edx
lea eax, [ebp + 0x3b4c]
push eax
xor edx, edx
xor ecx, ecx
mov byte [ebp + 0x2a18], 0
call fcn.1000d1d0
add esp, 0x24
test eax, eax
je 0x10074077
lea ecx, [ebp + 0x3b4c]
mov edx, 0x101a2dc8
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074046
push 0
push 0x101a2dc8
lea ecx, [ebp + 0x4470]
push 0x101a2bc0
push ecx
call fcn.10047ed0
push str._ESUPD__Routing_via_new_cdn...
push 0
call fcn.10053700
add esp, 0x18
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x1007512a
cmp byte [ecx], 0
je 0x1007512a
cmp dword [ebp + 0x4ab4], 1
jne 0x100740d8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x100740a0
cmp byte [eax], 0
jne 0x100740d8
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x100740b5
push str._ESUPD__Invalid_Proxy_Server_Addr..
push eax
call fcn.1010d6a8
add esp, 8
cmp dword [0x10193e64], 0
je 0x10075189
push str._ESUPD__Invalid_Proxy_Server_Addr..
push 0
call fcn.10053700
add esp, 8
xor eax, eax
jmp 0x10074543
mov eax, dword [ebp + 0x4abc]
test eax, eax
je 0x100740e7
mov dword [0x10193a1c], eax
lea edx, [ebp + 0x4984]
lea ecx, [ecx]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x100740f0
push str.avc3_exc
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10074173
cmp byte [ebp + 0x4984], 0
je 0x1007415d
lea eax, [ebp + 0x4984]
cmp byte [eax], 0
je 0x10074129
inc eax
jmp 0x10074121
lea edx, [ebp + 0x4984]
sub eax, edx
je 0x1007415d
cmp byte [ebp + eax + 0x4983], 0x5c
je 0x1007415d
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x10149ea8
mov eax, edx
push eax
call esi
push str.Plugins
lea ecx, [ebp + 0x4984]
push ecx
call esi
jmp 0x10074179
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.Plugins
lea ecx, [ebp + 0x4984]
push ecx
call esi
jmp 0x10074179
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea edi, [ebp + 0x4984]
call fcn.10044b00
test eax, eax
jne 0x100741c6
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x100741a0
mov edx, edi
push edx
push str._ESUPD__Directory___s__not_found_
push eax
call fcn.1010d6a8
add esp, 0xc
cmp dword [0x10193e64], 0
je 0x100741bf
lea eax, [ebp + 0x4984]
push eax
push str._ESUPD__Directory___s__not_found_
push 0
call fcn.10053700
add esp, 0xc
xor eax, eax
jmp 0x10074543
push 0x104
lea ecx, [ebp + 0x3430]
push ecx
push 0x1013fc40
mov edx, str.InstallAVC
mov ecx, str.eScan
call fcn.100436c0
add esp, 0xc
cmp dword [0x10193e64], 0
je 0x10074208
lea edx, [ebp + 0x3430]
push edx
push str._ESUPD__InstallAVC:__s
push 0
call fcn.10053700
add esp, 0xc
cmp byte [ebp + 0x3430], 0x31
jne 0x10074218
mov dword [ebp - 0x48], 1
cmp dword [0x10193e64], 0
je 0x10074254
lea eax, [ebp + 0x4984]
push eax
push str._ESUPD__BD_local_db_Path:__s
push 0
call fcn.10053700
mov ecx, dword [ebp + 0x4ab4]
add esp, 0xc
push ecx
lea edx, [ebp + 0x4470]
push edx
push str._ESUPD__Final_dwnLink:__s__UseProxy:_u_
push 0
call fcn.10053700
add esp, 0x10
mov ebx, dword [ebp - 0x14]
mov ecx, ebx
call fcn.10073070
test eax, eax
je 0x10074454
lea ecx, [ebp + 0x4984]
lea edx, [ebp + 0x4678]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074272
cmp byte [ebp + 0x4678], al
je 0x100742b6
lea eax, [ebp + 0x4678]
lea ebx, [ebx]
cmp byte [eax], 0
je 0x10074298
inc eax
jmp 0x10074290
lea ecx, [ebp + 0x4678]
sub eax, ecx
je 0x100742b6
cmp byte [ebp + eax + 0x4677], 0x5c
je 0x100742b6
push 0x10149ea8
mov edx, ecx
push edx
call esi
push str.versions.dat.
lea eax, [ebp + 0x4678]
push eax
call esi
push ebx
push 1
lea ecx, [ebp + 0x4984]
push 0
push ecx
xor ecx, ecx
lea edx, [ebp + 0x4678]
call fcn.10075560
add esp, 0x10
test eax, eax
je 0x10074454
cmp byte [ebx], 0
je 0x10074309
cmp dword [0x10193e64], 0
je 0x10074306
push ebx
push str._ESUPD__CheckForVersionsFile____0__szErrMsg:__s
push 0
call fcn.10053700
add esp, 0xc
mov byte [ebx], 0
call dword [0x10193e38]
mov dword [0x10193c2c], eax
test eax, eax
jne 0x10074347
push str._ESUPD__BDUpdSdkCreate___failed..
push ebx
call fcn.1010d6a8
add esp, 8
cmp dword [0x10193e64], 0
je 0x10074454
push str._ESUPD__BDUpdSdkCreate___failed..
push 0
call fcn.10053700
add esp, 8
jmp 0x10074454
lea edx, [ebp + 0x4470]
push edx
push 0x258
push eax
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x10074396
call fcn.100753a0
mov esi, eax
push esi
push str._ESUPD__Server_option_was_not_set_properly__dwnLink_is_improper___ErrorMsg:__s_
push ebx
call fcn.1010d6a8
add esp, 0xc
cmp dword [0x10193e64], 0
je 0x10074454
push esi
push str._ESUPD__Server_option_was_not_set_properly__dwnLink_is_improper___ErrorMsg:__s_
push 0
call fcn.10053700
jmp 0x10074451
cmp dword [0x10193e64], 0
je 0x100743b5
lea eax, [ebp + 0x4470]
push eax
push str._ESUPD__Download_Link___s__set_successfully
push 0
call fcn.10053700
add esp, 0xc
lea eax, [ebp + 0x4984]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100743c0
sub eax, edx
lea edi, [eax + 0xa]
lea ecx, [edi + edi]
push ecx
call fcn.1010dced
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
test esi, esi
jne 0x10074407
push str._ESUPD__Failed_to_allocate_memory_for_localDbPath_
push ebx
call fcn.1010d6a8
add esp, 8
cmp dword [0x10193e64], esi
je 0x10074454
push str._ESUPD__Failed_to_allocate_memory_for_localDbPath_
push esi
call fcn.10053700
add esp, 8
jmp 0x10074454
push 0xffffffffffffffff
lea edx, [ebp + 0x4984]
push edx
push edi
lea eax, [ebp - 0x6c]
push esi
push eax
mov dword [ebp - 0x6c], 0
call fcn.1010fea0
mov ecx, dword [0x10193c2c]
push esi
push 0x2bb
push ecx
call dword [0x10193e40]
add esp, 0x20
test eax, eax
je 0x10074568
call fcn.100753a0
push eax
push str._ESUPD__Failed_to_set_BD_UPD_Local_Path_option___ErrorMsg:__s_
push ebx
call fcn.1010d6a8
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
xor esi, esi
cmp byte [ebp + 0x3f5c], 0
je 0x100744a9
push esi
push esi
xor edx, edx
lea ecx, [ebp + 0x3f5c]
call fcn.10044660
add esp, 8
test eax, eax
jne 0x100744a9
cmp dword [0x10193e64], esi
je 0x10074499
lea ecx, [ebp + 0x3f5c]
push ecx
push str._ESUPD__Deleting_Temp_versions.dat___s
push esi
call fcn.10053700
add esp, 0xc
mov eax, 2
lea ecx, [ebp + 0x3f5c]
call fcn.1004b850
cmp dword [0x10193e3c], esi
je 0x100744e5
cmp dword [0x10193c2c], esi
je 0x100744e5
cmp dword [0x10193e64], esi
je 0x100744cf
push str._ESUPD__Destroying_interface_instance...
push esi
call fcn.10053700
add esp, 8
mov edx, dword [0x10193c2c]
push edx
call dword [0x10193e3c]
add esp, 4
mov dword [0x10193c2c], esi
mov eax, dword [0x10193c28]
mov dword [0x10193e50], esi
mov dword [0x10193e58], esi
mov dword [0x10193e5c], esi
mov dword [0x10193e60], esi
cmp eax, esi
je 0x10074513
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x10193c28], esi
call fcn.1004d770
mov eax, dword [ebp - 0x50]
cmp eax, esi
je 0x10074528
push eax
call fcn.1010dc10
add esp, 4
mov eax, dword [0x10193e54]
cmp eax, esi
je 0x10074540
push eax
call fcn.1010dc10
add esp, 4
mov dword [0x10193e54], esi
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x4aa0]
xor ecx, ebp
call fcn.1010d699
add ebp, 0x4aa4
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp + 0x4ab4]
test edi, edi
je 0x10074605
mov esi, dword [ebp - 0x20]
mov edx, dword [0x10193c2c]
push esi
push 1
push edx
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x100745a0
call fcn.100753a0
push eax
push str._ESUPD__Failed_to_set_ProxyAddr___ErrorMsg:__s_
jmp 0x1007444b
cmp dword [0x10193e64], 0
je 0x100745c0
mov eax, dword [ebp + 0x4ab0]
push eax
push esi
push str._BDPUD__Downloading_updates_via_Proxy___s___OsType:___d_
push 0
call fcn.10053700
add esp, 0x10
mov esi, dword [ebp - 0x60]
test esi, esi
je 0x10074624
cmp byte [esi], 0
je 0x10074624
push str._ESUPD__Setting_credentials_for_proxy_authentication..
push 0x10193e68
call fcn.10053700
mov ecx, dword [0x10193c2c]
add esp, 8
push esi
push 2
push ecx
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x10074624
call fcn.100753a0
push eax
push str._ESUPD__Authentication_credentials_were_not_set_correctly_for_proxy___ErrorMsg:__s_
jmp 0x1007444b
cmp dword [0x10193e64], 0
je 0x10074624
mov edx, dword [ebp + 0x4ab0]
push edx
push str._BDPUD__Downloading_updates_via_direct_connection__OsType:___d_
push 0
call fcn.10053700
add esp, 0xc
mov ecx, dword [0x10193c2c]
lea eax, [ebp - 0x68]
push eax
push 0x267
push ecx
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x10074651
call fcn.100753a0
push eax
push str.set_BD_UPD_UsePatches_value_failed___ErrorMsg:__s_
jmp 0x1007444b
mov eax, dword [0x10193c2c]
lea edx, [ebp - 0x4c]
push edx
push 0x27b
push eax
call dword [0x10193e40]
add esp, 0xc
mov esi, 1
test eax, eax
je 0x10074675
mov esi, dword [ebp - 0x64]
cmp dword [0x10193e64], 0
je 0x100746a6
test eax, eax
je 0x10074693
push str._BDPUD__MaxPatchDownloadErrors_NOT_set._Probably_old_version_of_DLL...
push 0
call fcn.10053700
add esp, 8
jmp 0x100746a6
mov ecx, dword [ebp - 0x4c]
push ecx
push str._BDPUD__MaxPatchDownloadErrors_set_to__d
push 0
call fcn.10053700
add esp, 0xc
test esi, esi
je 0x100747c1
push str.:2221
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x100747c1
cmp byte [0x101a2fd8], 0
jne 0x1007470b
cmp dword [0x101a31e4], 0
jne 0x100746fd
push 0x101a31e4
push 0x101a2fd8
call sym.EncDec.dll_GetHostnameAndIP
cmp byte [0x101a2fd8], 0
je 0x100746fd
cmp byte [0x101a30e0], 0
jne 0x1007470b
push 1
push 0x101a30e0
push 0
call sym.EncDec.dll_GetListOfOnlyLocalIPs
push 0x1fff
lea edx, [ebp + 0x219]
push 0
push edx
mov byte [ebp + 0x218], 0
call fcn.10116880
mov eax, dword [0x101a31e4]
add esp, 0xc
test eax, eax
je 0x10074757
cmp byte [eax], 0
je 0x10074757
push eax
push 0x101a2fd8
push 0x101a30e0
lea eax, [ebp + 0x218]
push 0x1014d780
push eax
call fcn.1010d6a8
add esp, 0x14
jmp 0x10074775
push 0x101a2fd8
push 0x101a30e0
lea ecx, [ebp + 0x218]
push 0x10149e68
push ecx
call fcn.1010d6a8
add esp, 0x10
mov eax, dword [0x10193c2c]
lea edx, [ebp + 0x218]
push edx
push 0xc
push eax
call dword [0x10193e40]
add esp, 0xc
cmp dword [0x10193e64], 0
je 0x100747c1
test eax, eax
je 0x100747ab
push str._BDPUD__UserAgentPrefix_NOT_set._Probably_old_version_of_DLL...
push 0
call fcn.10053700
add esp, 8
jmp 0x100747c1
lea ecx, [ebp + 0x218]
push ecx
push str._BDPUD__UserAgentPrefix_set_to__s
push 0
call fcn.10053700
add esp, 0xc
mov edx, dword [0x10193c2c]
push 0x10072c10
push 0x25a
push edx
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x100747ef
call fcn.100753a0
push eax
push str._ESUPD__Callback_function_was_not_set_properly___ErrorMsg:__s_
jmp 0x1007444b
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x1007481f
push eax
mov eax, dword [0x10193c2c]
push 0x25b
push eax
call dword [0x10193e40]
add esp, 0xc
test eax, eax
je 0x1007481f
call fcn.100753a0
push eax
push str._ESUPD__CallBack_Ctx_was_not_set_properly___ErrorMsg:__s_
jmp 0x1007444b
test edi, edi
jne 0x10074a3b
push str._av32bit
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10074a3b
mov dword [ebp - 0x20], 1
lea ecx, [ebp + 0x4470]
lea edx, [ebp + 0x2e18]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074856
xor edi, edi
push edi
push 0x1013f817
lea ecx, [ebp + 0x2e18]
push str._av32bit
push ecx
call fcn.10047ed0
mov esi, dword [ebp - 0x18]
add esp, 0x10
mov ecx, esi
lea edx, [ebp + 0x477c]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074887
cmp byte [ebp + 0x477c], al
je 0x100748ca
lea eax, [ebp + 0x477c]
nop
cmp byte [eax], 0
je 0x100748a8
inc eax
jmp 0x100748a0
lea edx, [ebp + 0x477c]
sub eax, edx
je 0x100748ca
cmp byte [ebp + eax + 0x477b], 0x5c
je 0x100748ca
push 0x10149ea8
mov eax, edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x477c]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x100748d1
mov ecx, dword [str.plugins]
mov edx, dword [0x10150300]
mov dword [eax], ecx
mov dword [eax + 4], edx
lea eax, [ebp - 0x20]
push eax
push str.DownloadSignVerFirst
mov ecx, str.SoftwareMicroWorld
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
cmp dword [ebp - 0x20], 1
jne 0x10074a3b
mov ecx, esi
lea edx, [ebp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074911
lea ecx, [ebp + 0x2e18]
lea edx, [ebp + 0x104]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074927
mov eax, dword [0x10193e64]
mov dword [ebp + 0x208], eax
mov dword [ebp + 0x214], edi
mov dword [ebp + 0x210], edi
cmp eax, edi
je 0x1007495a
push str._UUT__Initiating_UpdateUpdateTxtThread...
push edi
call fcn.10053700
add esp, 8
lea ecx, [ebp]
push ecx
push 0
push 0x100775f0
call fcn.1010d93f
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 0xc
mov ebx, 0xffff3cb0
mov edi, edi
cmp dword [ebp + 0x210], 0
jne 0x100749d8
cmp dword [0x1019ce9c], 0
jne 0x100749b1
push str.ntdll.dll
call esi
mov dword [0x1019ce9c], eax
test eax, eax
je 0x100749b1
push str.NtDelayExecution
push eax
call edi
mov dword [0x1019cea0], eax
jmp 0x100749b6
mov eax, dword [0x1019cea0]
test eax, eax
je 0x100749ce
lea edx, [ebp - 0x5c]
push edx
push 0
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], 0xffffffff
call eax
jmp 0x10074980
push 5
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x10074980
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, eax
jmp 0x100749f0
cmp dword [ebp + 0x214], 0
jne 0x10074a0a
call esi
sub eax, edi
cmp eax, 0x1388
jae 0x10074a0a
push 0x32
call ebx
jmp 0x100749f0
cmp dword [0x10193e64], 0
je 0x10074a22
push str._UUT__Finished_UpdateUpdateTxtThread...
push 0
call fcn.10053700
add esp, 8
cmp dword [ebp + 0x214], 0
jne 0x10074a3b
mov eax, dword [ebp + 0x20c]
test eax, eax
je 0x10074a3b
mov dword [eax], 1
cmp dword [0x10193e64], 0
je 0x10074a53
push str._ESUPD__Initiating_Updates...
push 0
call fcn.10053700
add esp, 8
cmp dword [ebp - 0x1c], 1
jne 0x10074ae2
mov eax, dword [ebp + 0x4ab0]
test eax, eax
jne 0x10074aa3
mov esi, dword [ebp - 0x18]
mov edi, str.bdcore.so.freebsd5_x86
call fcn.10076850
mov edi, str.bdcore.so.freebsd7_x86
call fcn.10076850
mov edi, str.bdcore.so.linux_x86
call fcn.10076850
mov edi, str.bdcore.so.macosx_x86
call fcn.10076850
mov edi, str.bdcore.so.solaris10_x86
call fcn.10076850
mov edi, str.bdcore.so.linux_x86_wg
jmp 0x10074add
cmp eax, 1
jne 0x10074ac6
mov esi, dword [ebp - 0x18]
mov edi, str.bdcore.so.linux_x86_64
call fcn.10076850
mov edi, str.bdcore.so.linux_x86_64_wg
call fcn.10076850
mov edi, str.bdcore.so.macosx_x86_64
jmp 0x10074add
cmp eax, 2
jne 0x10074ae2
mov esi, dword [ebp - 0x18]
mov edi, str.bdcore.so.linux_armhf
call fcn.10076850
mov edi, str.bdcore.so
call fcn.10076850
mov eax, dword [0x10193c2c]
push eax
call dword [0x10193e44]
mov ebx, eax
xor esi, esi
add esp, 4
cmp ebx, esi
jne 0x10074f83
mov eax, dword [0x10193e5c]
cmp eax, esi
jne 0x10074b12
cmp dword [0x10193e50], esi
je 0x10074cb7
cmp dword [0x10193e64], esi
je 0x10074b29
push eax
push str._ESUPD__Installing___d__files..
push esi
call fcn.10053700
add esp, 0xc
call fcn.1006ea70
mov ecx, dword [ebp - 0x14]
push ecx
push esi
lea edx, [ebp + 0x332c]
push edx
lea eax, [ebp + 0x4984]
push eax
xor ecx, ecx
lea edx, [ebp + 0x4678]
call fcn.10075560
mov ebx, 1
add esp, 0x10
cmp eax, ebx
jne 0x10074b8e
lea ecx, [ebp + 0x332c]
push ecx
lea edx, [ebp + 0x3f5c]
push str._s.tmp
push edx
call fcn.1010d6a8
push esi
lea edi, [ebp + 0x3f5c]
lea ebx, [ebp + 0x332c]
call fcn.10063ba0
add esp, 0x10
mov ebx, 1
xor esi, esi
mov edi, dword [ebp - 0x18]
call fcn.1006ea70
mov eax, dword [0x10193c2c]
push eax
call dword [0x10193e48]
add esp, 4
cmp eax, esi
je 0x10074c95
cmp dword [0x10193e64], esi
je 0x10074bc9
call fcn.100753a0
push eax
push str._ESUPD__BDUpdSdkPerformInstall__1__failed___ErrorMsg:__s_
push esi
call fcn.10053700
add esp, 0xc
push 4
call fcn.1010ea1a
add esp, 4
cmp eax, esi
je 0x10074bde
lea ecx, [ebp - 0x40]
mov dword [eax], ecx
jmp 0x10074be0
xor eax, eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
mov byte [ebp - 4], 2
call fcn.1006ea70
lea edx, [ebp - 0x40]
push edx
mov edx, dword [ebp - 0x14]
lea ecx, [ebp + 0x4984]
call fcn.10075820
add esp, 4
cmp eax, esi
jne 0x10074c38
mov eax, dword [ebp - 0x34]
cmp eax, esi
je 0x10074c1e
push eax
call fcn.1010e8a3
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
call fcn.1010e8a3
add esp, 4
jmp 0x10074454
cmp dword [0x10193e64], esi
je 0x10074c4e
push str._ESUPD__Installing_Updates_Maually..
push esi
call fcn.10053700
add esp, 8
call fcn.1006ea70
mov ecx, dword [ebp - 0x14]
push ecx
lea edx, [ebp - 0x40]
push edx
call fcn.10075fc0
add esp, 8
cmp eax, esi
je 0x10074c0e
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x34]
cmp eax, esi
je 0x10074c7b
push eax
call fcn.1010e8a3
add esp, 4
mov ecx, dword [ebp - 0x40]
push ecx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
call fcn.1010e8a3
add esp, 4
mov dword [ebp - 0x24], ebx
jmp 0x10074cbf
cmp dword [0x10193e64], esi
je 0x10074cb2
mov edx, dword [0x10193e5c]
push edx
push str._ESUPD____d__Files_Installed_successfully..
push esi
call fcn.10053700
add esp, 0xc
mov dword [ebp - 0x24], ebx
jmp 0x10074cbf
mov edi, dword [ebp - 0x18]
mov ebx, 1
cmp dword [0x10193e60], ebx
jne 0x10074ce2
cmp dword [0x10193e64], esi
je 0x10074cdd
push str._ESUPD__Database_is_Upto_date..
push esi
call fcn.10053700
add esp, 8
mov dword [ebp - 0x24], ebx
jmp 0x10074cf5
cmp dword [ebp - 0x24], ebx
jne 0x10074454
mov edi, dword [ebp - 0x18]
mov ebx, 1
xor esi, esi
mov eax, dword [ebp - 0x14]
push eax
push esi
lea ecx, [ebp + 0x3840]
push ecx
lea edx, [ebp + 0x4984]
push edx
xor ecx, ecx
lea edx, [ebp + 0x4678]
call fcn.10075560
add esp, 0x10
cmp eax, ebx
jne 0x10074f62
cmp edi, esi
je 0x10074d50
cmp byte [edi], 0
je 0x10074d50
mov eax, edi
jmp 0x10074d30
cmp byte [eax], 0
je 0x10074d39
add eax, ebx
jmp 0x10074d30
sub eax, edi
je 0x10074d50
cmp byte [eax + edi - 1], 0x5c
je 0x10074d50
push 0x10149ea8
push edi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp + 0x4ab0]
cmp eax, esi
jne 0x10074d7a
cmp dword [ebp - 0x48], ebx
jne 0x10074e5f
push edi
lea eax, [ebp + 0x3e58]
push str._swin.versions.dat
push eax
call fcn.1010d6a8
add esp, 0xc
jmp 0x10074dc0
cmp eax, 3
jne 0x10074d96
push edi
lea ecx, [ebp + 0x3e58]
push str._savc1.versions.dat
push ecx
call fcn.1010d6a8
add esp, 0xc
jmp 0x10074dc0
cmp eax, 4
jne 0x10074e5f
push edi
lea edx, [ebp + 0x3e58]
push str._savc2.versions.dat
push edx
call fcn.1010d6a8
add esp, 0xc
lea ecx, [ebp + 0x3840]
push ecx
call sym.EncDec.dll_ModifyVersionsDat
cmp dword [0x10193e64], esi
je 0x10074de4
lea edx, [ebp + 0x3e58]
push edx
lea eax, [ebp + 0x3840]
push eax
push str._ESUPD__Copying_Versions.dat_from___s__to___s_
push esi
call fcn.10053700
add esp, 0x10
push esi
lea edi, [ebp + 0x3e58]
lea ebx, [ebp + 0x3840]
call fcn.10063ba0
add esp, 4
cmp eax, 1
jne 0x10074f41
cmp dword [ebp + 0x4ab0], 4
jne 0x10074454
push 0x3ff
lea ecx, [ebp + 0x2619]
push 0
push ecx
mov byte [ebp + 0x2618], 0
call fcn.10116880
mov esi, dword [ebp - 0x18]
add esp, 0xc
lea edx, [ebp + 0x2618]
mov ecx, esi
call fcn.100762d0
test eax, eax
jne 0x10074e79
cmp dword [0x10193e64], eax
je 0x10074e91
lea edx, [ebp + 0x2618]
push edx
push str._ESUPD__Failed_to_create_versions.dat__ErrorMsg:___s_
push eax
call fcn.10053700
add esp, 0xc
jmp 0x10074e91
push edi
lea eax, [ebp + 0x3e58]
push str._sversions.dat
push eax
call fcn.1010d6a8
add esp, 0xc
jmp 0x10074dc0
cmp dword [0x10193e64], 0
je 0x10074e91
push str._ESUPD__Versions.dat_created_with_AVC_files
push 0
call fcn.10053700
add esp, 8
mov ecx, esi
lea edx, [ebp + 0x436c]
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10074ea0
cmp byte [ebp + 0x436c], al
je 0x10074ee2
lea eax, [ebp + 0x436c]
cmp byte [eax], 0
je 0x10074ec0
inc eax
jmp 0x10074eb8
lea ecx, [ebp + 0x436c]
sub eax, ecx
je 0x10074ee2
cmp byte [ebp + eax + 0x436b], 0x5c
je 0x10074ee2
push 0x10149ea8
mov edx, ecx
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x436c]
dec eax
lea esp, [esp]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x10074ef0
mov ecx, dword [str.plugins]
mov edx, dword [0x10150300]
mov dword [eax], ecx
push 0
mov ecx, str.versions.dat.
lea ebx, [ebp + 0x436c]
mov dword [eax + 4], edx
call fcn.10048370
add esp, 4
push 0
mov ecx, str.versions.id.
call fcn.10048370
add esp, 4
push 0
mov ecx, str.versions.sig.
call fcn.10048370
add esp, 4
jmp 0x10074454
cmp dword [0x10193e64], 0
je 0x10074454
push str._ESUPD__Failed_to_copy_versions.dat...
push 0
call fcn.10053700
add esp, 8
jmp 0x10074454
cmp dword [0x10193e64], esi
je 0x10074454
mov eax, dword [ebp - 0x14]
push eax
push str._ESUPD__CheckVersionsFile___failed__2____szErrMsg:__s_
push 0
call fcn.10053700
jmp 0x10074451
mov ecx, dword [ebp - 0x14]
cmp ecx, esi
je 0x10074fa0
mov eax, ebx
call fcn.100753a0
push eax
push str._ESUPD__BDUpdSdkPerformUpdate_failed___ErrorMsg:__s_
push ecx
call fcn.1010d6a8
add esp, 0xc
cmp dword [0x10193e64], esi
je 0x10074fbe
mov eax, ebx
call fcn.100753a0
push eax
push str._ESUPD__BDUpdSdkPerformUpdate_failed___ErrorMsg:__s_
push esi
call fcn.10053700
add esp, 0xc
cmp ebx, 0xfffff7c0
jne 0x100750b4
lea ecx, [ebp + 0x4470]
push ecx
push str._ESUPDCBK__HTTPError404_on___s_
push 0x10193e68
call fcn.10053700
add esp, 0xc
push str.mwti.net
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
jne 0x10075017
push str.microworldsystems.com
lea ecx, [ebp + 0x4470]
call fcn.10047020
add esp, 4
cmp eax, 0xffffffff
je 0x10074454
call fcn.10035e40
xor edx, edx
mov ecx, 0xa
div ecx
push 0x103
push 0
mov byte [ebp + 0x4164], 0
mov esi, edx
lea edx, [ebp + 0x4165]
push edx
call fcn.10116880
add esp, 0xc
test esi, esi
jne 0x1007505e
mov ecx, 6
mov esi, str.www.microworldsystems.com
lea edi, [ebp + 0x4164]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x10075073
push esi
lea eax, [ebp + 0x4164]
push str.update_u.mwti.net
push eax
call fcn.1010d6a8
add esp, 0xc
push str._ESUPDCBK__Forcing_DBHostInc_to_MMX...
push 0x10193e68
call fcn.10053700
add esp, 8
push str.General
mov edx, str.upgr_mmxvi.cdn.bitdefender.net
mov ecx, str.DBHostInc
call fcn.10043bc0
add esp, 4
push str.General
lea edx, [ebp + 0x4164]
mov ecx, str.AltDBHostInc
call fcn.10043bc0
add esp, 4
cmp ebx, 0xfffff7cc
je 0x100750c4
cmp ebx, 0xfffff7c4
jne 0x100750cf
lea ecx, [ebp + 0x4470]
call fcn.10076620
cmp ebx, 0xfffff448
je 0x100750e3
cmp ebx, 0xfffff7c1
jne 0x10074454
push str.General
mov edx, 0x1013fc40
mov ecx, str.IncrementalUpdate
call fcn.10043bc0
add esp, 4
push str.General
mov edx, 0x1013fc40
mov ecx, str.IncrementalUpdatePerm
call fcn.10043bc0
add esp, 4
mov eax, ebx
call fcn.100753a0
push eax
push str._ESUPD__Switching_Downloads_to_Full_Updates__Reason:__s
push 0
call fcn.10053700
jmp 0x10074451
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x1007513f
push str._ESUPD__Invalid_AppPath..
push eax
call fcn.1010d6a8
add esp, 8
cmp dword [0x10193e64], 0
je 0x10075189
push str._ESUPD__Invalid_AppPath..
push 0
call fcn.10053700
add esp, 8
xor eax, eax
jmp 0x10074543
mov eax, dword [ebp - 0x14]
cmp eax, ebx
je 0x10075173
push str._ESUPD__Invalid_Download_link...
push eax
call fcn.1010d6a8
add esp, 8
cmp dword [0x10193e64], ebx
je 0x10075189
push str._ESUPD__Invalid_Download_link...
push ebx
call fcn.10053700
add esp, 8
xor eax, eax
jmp 0x10074543