Function at 0x451570
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x484768
mov eax, dword fs:[0]
push eax
sub esp, 0x50
push ebx
push esi
push edi
mov eax, dword [0x4bc00c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x44], ecx
call fcn.00403ac0
mov ecx, eax
test ecx, ecx
je 0x452475
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x30], eax
mov dword [ebp - 4], 1
sub esp, 0x18
mov dword [ebp - 0x58], esp
mov ecx, esp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
xor eax, eax
mov word [ecx], ax
push 9
push str.stemp.bat
call fcn.00402980
mov byte [ebp - 4], 2
sub esp, 0x18
mov dword [ebp - 0x54], esp
mov ecx, esp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
xor eax, eax
mov word [ecx], ax
push 6
push 0x48d2ac
call fcn.00402980
mov byte [ebp - 4], 3
mov byte [ebp - 4], 1
mov edx, 0xa5
lea ecx, [ebp - 0x2c]
call fcn.00401380
add esp, 0x30
mov byte [ebp - 4], 4
mov byte [ebp - 4], 5
mov byte [ebp - 0x11], 1
push str.C:WindowsiassistlogsMcafeeUpdate.txt
lea ecx, [ebp - 0x28]
call fcn.0045fcf0
mov byte [ebp - 4], 6
push ecx
mov dword [ebp - 0x58], esp
mov ebx, esp
mov dword [ebp - 0x54], ebx
mov esi, dword [ebp - 0x28]
mov ecx, dword [esi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [esi - 4]
cmp dword [eax], 0
jl 0x451671
cmp ecx, dword [esi - 0x10]
jne 0x451671
lea edi, [esi - 0x10]
lock inc dword [eax]
jmp 0x45169b
mov eax, dword [ecx]
push 2
push dword [esi - 0xc]
call dword [eax]
mov edi, eax
test edi, edi
je 0x45247f
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov edx, dword [esi - 0xc]
inc edx
push edx
push esi
lea ecx, [edi + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [edi + 0x10]
mov dword [ebx], eax
mov byte [ebp - 4], 7
mov byte [ebp - 4], 8
mov byte [ebp - 4], 6
call fcn.00467760
add esp, 4
test al, al
je 0x45200b
push ecx
mov dword [ebp - 0x54], esp
mov ebx, esp
mov dword [ebp - 0x50], ebx
mov esi, dword [ebp - 0x28]
mov ecx, dword [esi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [esi - 4]
cmp dword [eax], 0
jl 0x4516e7
cmp ecx, dword [esi - 0x10]
jne 0x4516e7
lea edi, [esi - 0x10]
lock inc dword [eax]
jmp 0x451711
mov eax, dword [ecx]
push 2
push dword [esi - 0xc]
call dword [eax]
mov edi, eax
test edi, edi
je 0x452484
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov edx, dword [esi - 0xc]
inc edx
push edx
push esi
lea ecx, [edi + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [edi + 0x10]
mov dword [ebx], eax
mov byte [ebp - 4], 9
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 6
call fcn.00451440
add esp, 4
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x58]
call fcn.004027e0
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x20]
call fcn.004027e0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1c]
call fcn.004027e0
mov byte [ebp - 4], 0xd
push 0x48d10a
lea ecx, [ebp - 0x18]
call fcn.0045fcf0
mov byte [ebp - 4], 0xe
push str.HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeNetwork_AssociatesePolicy_OrchestratorApplication_PluginsENDP_AM_1070Version
lea ecx, [ebp - 0x20]
call fcn.0045fc60
push ecx
mov ecx, esp
mov dword [ebp - 0x54], esp
push 0x48d10a
call fcn.0045fcf0
mov byte [ebp - 4], 0xf
push ecx
mov dword [ebp - 0x50], esp
mov ebx, esp
mov dword [ebp - 0x4c], ebx
mov esi, dword [ebp - 0x20]
mov ecx, dword [esi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [esi - 4]
cmp dword [eax], 0
jl 0x4517ae
cmp ecx, dword [esi - 0x10]
jne 0x4517ae
lea edi, [esi - 0x10]
lock inc dword [eax]
jmp 0x4517d8
mov eax, dword [ecx]
push 2
push dword [esi - 0xc]
call dword [eax]
mov edi, eax
test edi, edi
je 0x452489
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov edx, dword [esi - 0xc]
inc edx
push edx
push esi
lea ecx, [edi + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [edi + 0x10]
mov dword [ebx], eax
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 0x11
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1c]
call fcn.004662c0
add esp, 4
mov dword [ebp - 0x54], esp
mov ebx, esp
mov dword [ebp - 0x50], ebx
mov esi, dword [ebp - 0x1c]
mov ecx, dword [esi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [esi - 4]
cmp dword [eax], 0
jl 0x45181e
cmp ecx, dword [esi - 0x10]
jne 0x45181e
lea edi, [esi - 0x10]
lock inc dword [eax]
jmp 0x451848
mov eax, dword [ecx]
push 2
push dword [esi - 0xc]
call dword [eax]
mov edi, eax
test edi, edi
je 0x45248e
mov eax, dword [esi - 0xc]
mov dword [edi + 4], eax
mov edx, dword [esi - 0xc]
inc edx
push edx
push esi
lea ecx, [edi + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [edi + 0x10]
mov dword [ebx], eax
mov byte [ebp - 4], 0x12
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
push str.UpdateEndpointSecuritymcAfee_strValueName_E:
call fcn.0045fcf0
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 0xe
or ecx, 0xffffffff
call fcn.00462c10
add esp, 8
push 0x48d94c
lea ecx, [ebp - 0x38]
call fcn.0045fcf0
mov byte [ebp - 4], 0x15
push str.EndPointVersion:
lea ecx, [ebp - 0x34]
call fcn.0045fcf0
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x1c]
push eax
lea edx, [ebp - 0x34]
lea ecx, [ebp - 0x4c]
call fcn.0045f3b0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x38]
push ecx
mov edx, eax
lea ecx, [ebp - 0x48]
call fcn.0045f3b0
add esp, 8
mov byte [ebp - 4], 0x18
mov edx, dword [eax]
lea ecx, [edx - 0x10]
mov edi, dword [ebp - 0x18]
add edi, 0xfffffff0
cmp ecx, edi
je 0x451914
lea ebx, [edi + 0xc]
cmp dword [ebx], 0
jl 0x451908
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x451908
call fcn.00403090
mov dword [ebp - 0x3c], eax
or esi, 0xffffffff
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x451900
mov ecx, dword [edi]
mov edx, dword [ecx]
push edi
call dword [edx + 4]
mov eax, dword [ebp - 0x3c]
add eax, 0x10
mov dword [ebp - 0x18], eax
jmp 0x451917
push dword [edx - 0xc]
push edx
lea ecx, [ebp - 0x18]
call fcn.004030f0
or esi, 0xffffffff
mov byte [ebp - 4], 0x19
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451939
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x1a
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45195b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x1b
mov byte [ebp - 4], 0x15
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45197d
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x1c
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45199f
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push 0x48d10a
lea ecx, [ebp - 0x1c]
call fcn.0045fc60
push str.HKEY_LOCAL_MACHINESOFTWAREMcAfeeAVSolutionDSDSdwContentMajorVersion
lea ecx, [ebp - 0x20]
call fcn.0045fc60
push ecx
mov ecx, esp
mov dword [ebp - 0x54], esp
push str.DWORD
call fcn.0045fcf0
mov byte [ebp - 4], 0x1d
push ecx
mov dword [ebp - 0x50], esp
mov dword [ebp - 0x4c], esp
mov edi, dword [ebp - 0x20]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x4519f6
cmp ecx, dword [edi - 0x10]
jne 0x4519f6
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x451a20
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x452493
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x4c]
mov dword [ecx], eax
mov byte [ebp - 4], 0x1e
mov byte [ebp - 4], 0x1f
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1c]
call fcn.004662c0
add esp, 4
mov dword [ebp - 0x54], esp
mov dword [ebp - 0x4c], esp
mov edi, dword [ebp - 0x1c]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x451a67
cmp ecx, dword [edi - 0x10]
jne 0x451a67
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x451a91
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x452498
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x4c]
mov dword [ecx], eax
mov byte [ebp - 4], 0x20
mov byte [ebp - 4], 0x21
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
push str.UpdateEndpointSecuritymcAfee_strValueName_MV:
call fcn.0045fcf0
mov byte [ebp - 4], 0x22
mov byte [ebp - 4], 0xe
or ecx, 0xffffffff
call fcn.00462c10
add esp, 8
push 0x48d94c
lea ecx, [ebp - 0x34]
call fcn.0045fcf0
mov byte [ebp - 4], 0x23
push str.DatVersion:
lea ecx, [ebp - 0x38]
call fcn.0045fcf0
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x1c]
push eax
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0x54]
call fcn.0045f3b0
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x34]
push ecx
mov edx, eax
lea ecx, [ebp - 0x50]
call fcn.0045f3b0
add esp, 8
mov byte [ebp - 4], 0x26
mov ecx, dword [eax]
mov dword [ebp - 0x3c], ecx
mov ebx, dword [ecx - 0xc]
mov edx, ecx
mov eax, dword [ebp - 0x18]
sub edx, eax
sar edx, 1
mov dword [ebp - 0x48], edx
mov edi, dword [eax - 0xc]
mov dword [ebp - 0x4c], edi
test ebx, ebx
js 0x45249d
test ecx, ecx
jne 0x451b38
xor ebx, ebx
jmp 0x451b48
push ebx
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsnlen]
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 0x18]
mov ecx, SysReAllocString
sub ecx, ebx
cmp ecx, edi
jl 0x4524a7
add edi, ebx
js 0x4524b1
mov edx, 1
sub edx, dword [eax - 4]
mov ecx, dword [eax - 8]
sub ecx, edi
or ecx, edx
jge 0x451b7c
push edi
lea ecx, [ebp - 0x18]
call fcn.004032e0
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
cmp ecx, edx
lea ecx, [eax + ecx*2]
jbe 0x451b8c
mov ecx, dword [ebp - 0x3c]
push ebx
push ecx
lea ecx, [eax + edx*2]
mov edx, ebx
call fcn.004031f0
add esp, 8
mov eax, dword [ebp - 0x18]
cmp edi, dword [eax - 8]
jg 0x45249d
mov dword [eax - 0xc], edi
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov word [eax + edi*2], cx
mov byte [ebp - 4], 0x27
mov byte [ebp - 4], 0x25
mov edx, dword [ebp - 0x50]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451bd5
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x28
mov byte [ebp - 4], 0x24
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451bf7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x29
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451c19
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x2a
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451c3b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push 0x48d10a
lea ecx, [ebp - 0x1c]
call fcn.0045fc60
push str.HKEY_LOCAL_MACHINESOFTWAREMcAfeeAVSolutionDSDS_szContentCreationDate
lea ecx, [ebp - 0x20]
call fcn.0045fc60
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x48d10a
call fcn.0045fcf0
mov byte [ebp - 4], 0x2b
push ecx
mov dword [ebp - 0x4c], esp
mov dword [ebp - 0x54], esp
mov edi, dword [ebp - 0x20]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x451c92
cmp ecx, dword [edi - 0x10]
jne 0x451c92
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x451cbc
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x4524bb
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x54]
mov dword [ecx], eax
mov byte [ebp - 4], 0x2c
mov byte [ebp - 4], 0x2d
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1c]
call fcn.004662c0
add esp, 4
mov dword [ebp - 0x50], esp
mov dword [ebp - 0x54], esp
mov edi, dword [ebp - 0x1c]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x451d03
cmp ecx, dword [edi - 0x10]
jne 0x451d03
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x451d2d
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x4524c0
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x54]
mov dword [ecx], eax
mov byte [ebp - 4], 0x2e
mov byte [ebp - 4], 0x2f
push ecx
mov ecx, esp
mov dword [ebp - 0x54], esp
push str.UpdateEndpointSecuritymcAfee_strValueName_D:
call fcn.0045fcf0
mov byte [ebp - 4], 0x30
mov byte [ebp - 4], 0xe
or ecx, 0xffffffff
call fcn.00462c10
add esp, 8
push str.Date:
lea ecx, [ebp - 0x3c]
call fcn.0045fcf0
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x1c]
push eax
lea edx, [ebp - 0x3c]
lea ecx, [ebp - 0x48]
call fcn.0045f3b0
add esp, 4
mov byte [ebp - 4], 0x32
mov ecx, dword [eax]
mov dword [ebp - 0x4c], ecx
mov edi, dword [ecx - 0xc]
mov edx, ecx
mov eax, dword [ebp - 0x18]
sub edx, eax
sar edx, 1
mov dword [ebp - 0x50], edx
mov edx, dword [eax - 0xc]
mov dword [ebp - 0x38], edx
test edi, edi
js 0x4524c5
test ecx, ecx
jne 0x451db1
xor ebx, ebx
jmp 0x451dc4
push edi
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsnlen]
add esp, 8
mov ebx, eax
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x38]
mov ecx, SysReAllocString
sub ecx, ebx
cmp ecx, edx
jl 0x4524cf
lea edi, [edx + ebx]
test edi, edi
js 0x4524d9
mov ecx, 1
sub ecx, dword [eax - 4]
mov dword [ebp - 0x54], ecx
mov ecx, dword [eax - 8]
sub ecx, edi
or ecx, dword [ebp - 0x54]
jge 0x451e02
push edi
lea ecx, [ebp - 0x18]
call fcn.004032e0
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x50]
cmp ecx, edx
lea ecx, [eax + ecx*2]
jbe 0x451e0f
mov ecx, dword [ebp - 0x4c]
push ebx
push ecx
lea ecx, [eax + edx*2]
mov edx, ebx
call fcn.004031f0
add esp, 8
mov eax, dword [ebp - 0x18]
cmp edi, dword [eax - 8]
jg 0x45249d
mov dword [eax - 0xc], edi
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov word [eax + edi*2], cx
mov byte [ebp - 4], 0x33
mov byte [ebp - 4], 0x31
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451e58
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x34
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x3c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451e7a
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], 0
jne 0x451e9d
push str.Error
lea ecx, [ebp - 0x1c]
call fcn.0045fc60
push str.Error
lea ecx, [ebp - 0x18]
call fcn.0045fc60
push str.C:WindowsiassistlogsMcafeeVersion.txt
lea ecx, [ebp - 0x40]
call fcn.0045fcf0
mov byte [ebp - 4], 0x35
push 0x498c68
push dword [ebp - 0x40]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen]
add esp, 8
mov edi, eax
test edi, edi
je 0x451ed9
push edi
push dword [ebp - 0x18]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputws]
push edi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 0xc
push ecx
mov dword [ebp - 0x50], esp
mov dword [ebp - 0x54], esp
mov edi, dword [ebp - 0x18]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x451f02
cmp ecx, dword [edi - 0x10]
jne 0x451f02
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x451f2c
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x4524e3
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x54]
mov dword [ecx], eax
mov byte [ebp - 4], 0x36
mov byte [ebp - 4], 0x37
push ecx
mov ecx, esp
mov dword [ebp - 0x54], esp
push str.UpdateEndpointSecuritymcAfee_version
call fcn.0045fcf0
mov byte [ebp - 4], 0x38
mov byte [ebp - 4], 0x35
or ecx, 0xffffffff
call fcn.00462c10
add esp, 8
mov byte [ebp - 4], 0x39
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451f81
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3a
mov byte [ebp - 4], 0xd
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451fa3
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3b
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451fc5
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3c
mov byte [ebp - 4], 0xb
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x451fe7
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x3d
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x45200e
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
jmp 0x45200e
or esi, 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004027e0
mov byte [ebp - 4], 0x3e
cmp byte [ebp - 0x11], 1
jne 0x4520f8
push 0x48d1b0
lea ecx, [ebp - 0x40]
call fcn.0045fcf0
mov byte [ebp - 4], 0x3f
mov bl, 1
push ecx
mov ecx, esp
mov dword [ebp - 0x58], esp
lea eax, [ebp - 0x40]
push eax
lea edx, [ebp - 0x2c]
call fcn.0045f3b0
add esp, 4
mov byte [ebp - 4], 0x40
mov byte [ebp - 4], 0x3f
mov dl, bl
lea ecx, [ebp - 0x54]
call fcn.004642f0
add esp, 4
mov byte [ebp - 4], 0x41
mov edx, dword [eax]
lea ecx, [edx - 0x10]
mov edi, dword [ebp - 0x24]
add edi, 0xfffffff0
cmp ecx, edi
je 0x4520b4
lea ebx, [edi + 0xc]
cmp dword [ebx], 0
jl 0x4520a8
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x4520a8
call fcn.00403090
mov dword [ebp - 0x58], eax
mov ecx, esi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x4520a0
mov ecx, dword [edi]
mov edx, dword [ecx]
push edi
call dword [edx + 4]
mov eax, dword [ebp - 0x58]
add eax, 0x10
mov dword [ebp - 0x24], eax
jmp 0x4520b4
push dword [edx - 0xc]
push edx
lea ecx, [ebp - 0x24]
call fcn.004030f0
mov byte [ebp - 4], 0x42
mov byte [ebp - 4], 0x3f
mov edx, dword [ebp - 0x54]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4520d6
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x43
mov byte [ebp - 4], 0x3e
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4520f8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ecx
mov dword [ebp - 0x54], esp
mov dword [ebp - 0x58], esp
mov edi, dword [ebp - 0x24]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x452121
cmp ecx, dword [edi - 0x10]
jne 0x452121
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x45214b
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x4524e8
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x58]
mov dword [ecx], eax
mov byte [ebp - 4], 0x44
mov byte [ebp - 4], 0x45
push ecx
mov ecx, esp
mov dword [ebp - 0x58], esp
push str.UpdateEndpointSecuritymcAfee
call fcn.0045fcf0
mov byte [ebp - 4], 0x46
mov byte [ebp - 4], 0x3e
or ecx, 0xffffffff
call fcn.00462c10
add esp, 8
mov byte [ebp - 4], 0x47
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4521a0
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x48
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4521c2
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 4
jmp 0x4522af
call fcn.00403ac0
mov ecx, eax
test ecx, ecx
je 0x4524f2
jmp 0x45239b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x56
push 0x48d1b0
lea ecx, [ebp - 0x24]
call fcn.00402ee0
test al, al
jne 0x4523c8
push 0x48d1b0
lea ecx, [ebp - 0x24]
call fcn.0045fc60
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0x24]
push eax
lea edx, [ebp - 0x2c]
lea ecx, [ebp - 0x58]
call fcn.0045f3b0
add esp, 4
mov byte [ebp - 4], 0x58
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 0x57
mov edx, dword [ebp - 0x58]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x452408
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x452426
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x452444
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x452463
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00403880
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
push 0x80070057
call fcn.00403880
push 0x80070057
call fcn.00403880
push 0x80070057
call fcn.00403880
call fcn.004031e0
call fcn.004031e0
push 0x80070057
call fcn.00403880
push 0x80070057
call fcn.00403880
push 0x80070057
call fcn.00403880
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
push 0x80004005
call fcn.00403880
call fcn.004031e0
int3