Function at 0x4b15d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x54665e
mov eax, dword fs:[0]
push eax
sub esp, 0x170
mov eax, dword [0x595c60]
xor eax, esp
mov dword [esp + 0x16c], eax
push esi
push edi
mov eax, dword [0x595c60]
xor eax, esp
push eax
lea eax, [esp + 0x17c]
mov dword fs:[0], eax
mov esi, ecx
push 1
push str.McShieldClient
mov dword [esp + 0x14], esi
call fcn.00485e30
mov dword [esp + 0x184], 0
lea ecx, [esp + 0x10]
push 0xc
push str.AVInitialize
mov dword [esi], 0x573bd8
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 1
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x3c], eax
jb 0x4b1689
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1689
push eax
call fcn.005074d4
add esp, 4
push 0xe
push str.AVUnInitialize
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 2
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x40], eax
jb 0x4b16e6
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b16e6
push eax
call fcn.005074d4
add esp, 4
push 0x10
push str.AVGetSystemState
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 3
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x48], eax
jb 0x4b1743
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1743
push eax
call fcn.005074d4
add esp, 4
push 0x10
push str.AVSetSystemState
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 4
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x4c], eax
jb 0x4b17a0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b17a0
push eax
call fcn.005074d4
add esp, 4
push 0x13
push str.AVSetConnectionInfo
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 5
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x44], eax
jb 0x4b17fd
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b17fd
push eax
call fcn.005074d4
add esp, 4
push 0x18
push str.AVSetStateChangeCallback
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 6
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x50], eax
jb 0x4b185a
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b185a
push eax
call fcn.005074d4
add esp, 4
push 0x16
push str.AVMcShieldGetInterface
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 7
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x54], eax
jb 0x4b18b7
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b18b7
push eax
call fcn.005074d4
add esp, 4
push 0x1a
push str.AVMcShieldReleaseInterface
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 8
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x58], eax
jb 0x4b1914
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1914
push eax
call fcn.005074d4
add esp, 4
push 0x10
push str.AVMcShieldListen
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 9
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x5c], eax
jb 0x4b1971
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1971
push eax
call fcn.005074d4
add esp, 4
push 0x14
push str.AVMcShieldListenStop
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xa
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x60], eax
jb 0x4b19ce
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b19ce
push eax
call fcn.005074d4
add esp, 4
push 0x16
push str.AVPolicyCreateSnapshot
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xb
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x64], eax
jb 0x4b1a2b
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1a2b
push eax
call fcn.005074d4
add esp, 4
push 0x16
push str.AVPolicyDeleteSnapshot
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xc
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x68], eax
jb 0x4b1a88
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1a88
push eax
call fcn.005074d4
add esp, 4
push 0x13
push str.AVPolicyBeginUpdate
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xd
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x6c], eax
jb 0x4b1ae5
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1ae5
push eax
call fcn.005074d4
add esp, 4
push 0x11
push str.AVPolicyEndUpdate
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xe
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x70], eax
jb 0x4b1b42
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1b42
push eax
call fcn.005074d4
add esp, 4
push 0x14
push str.AVPolicySetAttribute
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0xf
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x74], eax
jb 0x4b1b9f
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1b9f
push eax
call fcn.005074d4
add esp, 4
push 0x18
push str.AVPolicyRestoreAttribute
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x10
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x78], eax
jb 0x4b1bfc
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1bfc
push eax
call fcn.005074d4
add esp, 4
push 0x14
push str.AVPolicyCancelUpdate
lea ecx, [esp + 0x18]
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], 0
mov byte [esp + 0x18], 0
call fcn.0047c0a0
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x11
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x7c], eax
jb 0x4b1c59
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1c59
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyRestoreDefault
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x12
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x80], eax
jb 0x4b1ca2
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1ca2
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyCheckIfPending
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x13
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x84], eax
jb 0x4b1ceb
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1ceb
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyCheckIfExists
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x14
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x88], eax
jb 0x4b1d34
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1d34
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyGetAttribute
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x15
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x8c], eax
jb 0x4b1d7d
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1d7d
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyGet
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x16
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x90], eax
jb 0x4b1dc6
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1dc6
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyGetAllPoliciesInClass
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x17
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x94], eax
jb 0x4b1e0f
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1e0f
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyGetAllPoliciesInState
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x18
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x98], eax
jb 0x4b1e58
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1e58
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyFreePolicyClassInfo
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x19
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x9c], eax
jb 0x4b1ea1
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1ea1
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyFreePolicyAttributeList
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1a
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xa0], eax
jb 0x4b1eea
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1eea
push eax
call fcn.005074d4
add esp, 4
push str.AVPolicyFreePolicyAttribute
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1b
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xa4], eax
jb 0x4b1f33
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1f33
push eax
call fcn.005074d4
add esp, 4
push str.AVGetExtensionList
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1c
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xa8], eax
jb 0x4b1f7c
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1f7c
push eax
call fcn.005074d4
add esp, 4
push str.AVGetDetectionNames
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1d
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xac], eax
jb 0x4b1fc5
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b1fc5
push eax
call fcn.005074d4
add esp, 4
push str.AVFreeDetectionNames
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1e
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xb0], eax
jb 0x4b200e
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b200e
push eax
call fcn.005074d4
add esp, 4
push str.AVGetVersionInfo
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x1f
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xb4], eax
jb 0x4b2057
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2057
push eax
call fcn.005074d4
add esp, 4
push str.AVFreeVersionInfo
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x20
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xb8], eax
jb 0x4b20a0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b20a0
push eax
call fcn.005074d4
add esp, 4
push str.AVGetPointProductData
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x21
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xc4], eax
jb 0x4b20e9
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b20e9
push eax
call fcn.005074d4
add esp, 4
push str.AVGetBackedupContentVersion
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x22
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xc8], eax
jb 0x4b2132
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2132
push eax
call fcn.005074d4
add esp, 4
push str.AVFreeBackedupContentVersion
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x23
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xcc], eax
jb 0x4b217b
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b217b
push eax
call fcn.005074d4
add esp, 4
push str.AVGetTrustInfo
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x24
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xbc], eax
jb 0x4b21c4
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b21c4
push eax
call fcn.005074d4
add esp, 4
push str.AVFreeTrustInfo
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x25
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xc0], eax
jb 0x4b220d
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b220d
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerGetInterface
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x26
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xd0], eax
jb 0x4b2256
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2256
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerRelease
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x27
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xd4], eax
jb 0x4b229f
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b229f
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerSetCallbacks
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x28
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xd8], eax
jb 0x4b22e8
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b22e8
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerScan
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x29
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xdc], eax
jb 0x4b2331
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2331
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerTerminateScan
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2a
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xe0], eax
jb 0x4b237a
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b237a
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerSetScanPriority
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2b
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xe4], eax
jb 0x4b23c3
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b23c3
push eax
call fcn.005074d4
add esp, 4
push str.AVSetMoveDirectory
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2c
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xe8], eax
jb 0x4b240c
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b240c
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerExcludeThisThread
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2d
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xec], eax
jb 0x4b2455
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2455
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerUnExcludeThisThread
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2e
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xf0], eax
jb 0x4b249e
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b249e
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerDeleteFile
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x2f
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xf4], eax
jb 0x4b24e7
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b24e7
push eax
call fcn.005074d4
add esp, 4
push str.AVScannerDeleteRegistryObject
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x30
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xf8], eax
jb 0x4b2530
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2530
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdate
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x31
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0xfc], eax
jb 0x4b2579
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2579
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdateGetContentPath
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x32
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x104], eax
jb 0x4b25c2
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b25c2
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdateGetScannerPath
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x33
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x100], eax
jb 0x4b260b
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b260b
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdateGetInstallPath
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x34
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x108], eax
jb 0x4b2654
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2654
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdateGetAMCoreBuildNumber
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x35
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x10c], eax
jb 0x4b269d
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b269d
push eax
call fcn.005074d4
add esp, 4
push str.AVUpdateMarkContent
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x36
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x110], eax
jb 0x4b26e6
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b26e6
push eax
call fcn.005074d4
add esp, 4
push str.AVBackupInitialize
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x37
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x114], eax
jb 0x4b272f
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b272f
push eax
call fcn.005074d4
add esp, 4
push str.AVBackupRelease
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esp + 0x10]
mov byte [esp + 0x184], 0x38
push eax
lea ecx, [esi + 4]
call fcn.004f2610
mov byte [esp + 0x184], 0
cmp dword [esp + 0x24], 0x10
mov dword [esi + 0x118], eax
jb 0x4b2778
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4b2778
push eax
call fcn.005074d4
add esp, 4
push str.AVBackupGetItemByID
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x11c]
mov byte [esp + 0x184], 0x39
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupFreeBackupItem
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x120]
mov byte [esp + 0x184], 0x3a
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupGetCount
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x124]
mov byte [esp + 0x184], 0x3b
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupRestoreByID
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x128]
mov byte [esp + 0x184], 0x3c
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupRestoreByIndex
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x12c]
mov byte [esp + 0x184], 0x3d
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupDeleteByID
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x130]
mov byte [esp + 0x184], 0x3e
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupSubmitSample
lea ecx, [esp + 0x14]
call fcn.0047ab70
lea eax, [esi + 0x134]
mov byte [esp + 0x184], 0x3f
push eax
lea eax, [esp + 0x14]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x10]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupGetAll
lea ecx, [esp + 0xbc]
call fcn.0047ab70
lea eax, [esi + 0x138]
mov byte [esp + 0x184], 0x40
push eax
lea eax, [esp + 0xbc]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0xb8]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupGetRange
lea ecx, [esp + 0x5c]
call fcn.0047ab70
lea eax, [esi + 0x13c]
mov byte [esp + 0x184], 0x41
push eax
lea eax, [esp + 0x5c]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x58]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupFreeBackupItemList
lea ecx, [esp + 0xec]
call fcn.0047ab70
lea eax, [esi + 0x140]
mov byte [esp + 0x184], 0x42
push eax
lea eax, [esp + 0xec]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0xe8]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupGetCustomStream
lea ecx, [esp + 0x8c]
call fcn.0047ab70
lea eax, [esi + 0x144]
mov byte [esp + 0x184], 0x43
push eax
lea eax, [esp + 0x8c]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x88]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupSetCustomStream
lea ecx, [esp + 0x14c]
call fcn.0047ab70
lea eax, [esi + 0x148]
mov byte [esp + 0x184], 0x44
push eax
lea eax, [esp + 0x14c]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x148]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupRestoreDB
lea ecx, [esp + 0x2c]
call fcn.0047ab70
lea eax, [esi + 0x14c]
mov byte [esp + 0x184], 0x45
push eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x28]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupStart
lea ecx, [esp + 0x11c]
call fcn.0047ab70
lea eax, [esi + 0x150]
mov byte [esp + 0x184], 0x46
push eax
lea eax, [esp + 0x11c]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x118]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupNotifyEx
lea ecx, [esp + 0x44]
call fcn.0047ab70
lea eax, [esi + 0x154]
mov byte [esp + 0x184], 0x47
push eax
lea eax, [esp + 0x44]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x40]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupEnd
lea ecx, [esp + 0x74]
call fcn.0047ab70
lea eax, [esi + 0x158]
mov byte [esp + 0x184], 0x48
push eax
lea eax, [esp + 0x74]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x70]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVBackupRollback
lea ecx, [esp + 0xa4]
call fcn.0047ab70
lea eax, [esi + 0x15c]
mov byte [esp + 0x184], 0x49
push eax
lea eax, [esp + 0xa4]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0xa0]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVPolicyCheckIfExcluded
lea ecx, [esp + 0xd4]
call fcn.0047ab70
mov byte [esp + 0x184], 0x4a
lea eax, [esi + 0x160]
push eax
lea eax, [esp + 0xd4]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0xd0]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVMcShieldStartService
lea ecx, [esp + 0x104]
call fcn.0047ab70
lea eax, [esi + 0x164]
mov byte [esp + 0x184], 0x4b
push eax
lea eax, [esp + 0x104]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x100]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVMcShieldStopService
lea ecx, [esp + 0x134]
call fcn.0047ab70
lea eax, [esi + 0x168]
mov byte [esp + 0x184], 0x4c
push eax
lea eax, [esp + 0x134]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x130]
mov byte [esp + 0x184], 0
call fcn.0047ac60
push str.AVOEMWhitelistingEndGracePeriod
lea ecx, [esp + 0x164]
call fcn.0047ab70
lea edx, [esi + 0x16c]
mov byte [esp + 0x184], 0x4d
push edx
lea eax, [esp + 0x164]
push eax
lea ecx, [esi + 4]
call fcn.004b7900
lea ecx, [esp + 0x160]
call fcn.0047ac60
mov eax, esi
mov ecx, dword [esp + 0x17c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x16c]
xor ecx, esp
call fcn.00506c7d
add esp, 0x17c
ret