Function at 0x41c1e0
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x5c7154
push eax
mov eax, 0xc760
mov dword fs:[0], esp
call fcn.00453240
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0xc784]
xor ebx, ebx
mov esi, ecx
cmp edi, ebx
mov dword [esp + 0x30], esi
je 0x41c21f
mov ecx, edi
call fcn.0047d330
jmp 0x41c221
xor eax, eax
push eax
mov eax, dword [esp + 0xc784]
push eax
push str.ParsePolicy_dype_0x_x__Data_size__lu_
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x18
xor ebp, ebp
cmp edi, ebx
je 0x41eab4
mov ecx, edi
call fcn.0047d330
mov ecx, edi
mov dword [esp + 0x28], eax
call fcn.0047da50
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x28]
cmp eax, ebx
mov dword [esp + 0x24], ebx
jbe 0x41eab4
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
add ecx, 4
cmp ecx, eax
ja 0x41ea8f
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
mov edi, dword [eax + edx]
lea ecx, [eax + edx]
mov edx, dword [esp + 0x28]
add edi, 4
add eax, edi
mov dword [esp + 0x20], ecx
cmp eax, edx
mov dword [esp + 0x24], eax
ja 0x41ea96
cmp dword [ecx + 4], 2
jne 0x41ea64
push str.ParsePolicy_parse_1
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
cmp edi, 0x1d
jbe 0x41c2ee
add edi, 0xffffffe3
cmp edi, 0x50
mov dword [esp + 0x14], edi
jb 0x41c2f2
mov eax, dword [esp + 0x20]
add eax, 0x1d
mov dword [esp + 0x1c], eax
jmp 0x41c2f6
mov dword [esp + 0x14], ebx
mov dword [esp + 0x1c], ebx
lea ecx, [esi + 4]
push ecx
lea ecx, [esp + 0x14]
call fcn.0046a960
mov edx, dword [esi + 8]
mov eax, dword [esp + 0x10]
push edx
push eax
push 0xaa
push str.ParsePolicy_line__lu__wstrTempFile__s__username__s__parse_2
push str.CheckModule
push 0xf
push 0x654a04
mov dword [esp + 0xc794], ebx
call fcn.00445f90
mov edi, dword [esp + 0xc79c]
add esp, 0x1c
lea eax, [edi - 1]
cmp eax, 0x4f
ja case.0x41c34c.30
xor ecx, ecx
mov cl, byte [eax + 0x41eb6c]
jmp dword [ecx*4 + 0x41eaf4]
push str.ParsePolicy_POLICY_TYPE_SD_ONLINE_AUTH
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x9ea0]
call fcn.004d4d90
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x9330]
mov byte [esp + 0xc778], 1
call fcn.004d4d90
push ebp
push ebx
push ebx
push str.SDRightsPolicy
mov byte [esp + 0xc788], 2
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x9330]
mov byte [esp + 0xc778], 1
call fcn.004d56b0
lea ecx, [esp + 0x210]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0d0
mov dword [esp + 0x224], ebx
mov edx, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 3
mov dword [esp + 0x24], edx
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, ebx
mov byte [esp + 0xc778], 4
je 0x41c412
mov ecx, eax
call fcn.00420680
mov ebp, eax
jmp 0x41c414
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 3
je 0x41c448
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push eax
push ecx
mov ecx, ebp
call fcn.00425d70
mov edx, dword [esp + 0x20]
mov ecx, ebp
push edx
push edi
call fcn.00425e90
mov eax, dword [ebp]
push 1
mov ecx, ebp
call dword [eax + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0d0
lea ecx, [esp + 0x210]
mov byte [esp + 0xc778], 5
call fcn.00421d20
lea ecx, [esp + 0x210]
mov byte [esp + 0xc778], 1
call fcn.005ab63c
lea ecx, [esp + 0x9ea0]
mov byte [esp + 0xc778], bl
call fcn.004d56b0
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SD_OFFLINE_AUTH
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
push 0x18
call fcn.005acc0c
mov esi, eax
add esp, 0x14
mov dword [esp + 0x18], esi
cmp esi, ebx
mov byte [esp + 0xc778], 6
je 0x41c4e0
mov ecx, esi
call fcn.005ab609
mov dword [esi], method.CPtrArray.virtual_0
mov dword [esi + 0x14], ebx
mov dword [esp + 0x20], esi
jmp 0x41c4e4
mov dword [esp + 0x20], ebx
mov edi, dword [esp + 0x1c]
mov byte [esp + 0xc778], bl
cmp edi, ebx
je 0x41c5c0
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x1c], edi
call fcn.00421d60
mov eax, dword [esp + 0x14]
cmp eax, 0x50
jb 0x41c5c0
mov edx, dword [edi + 0x48]
xor ecx, ecx
mov cx, word [edi + 0x44]
add eax, edi
add ecx, edx
mov dword [esp + 0x14], eax
lea edi, [edi + ecx*2 + 0x54]
cmp edi, eax
ja 0x41c5c0
push 0x5c8
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, ebx
mov byte [esp + 0xc778], 7
je 0x41c556
mov ecx, eax
call fcn.004df340
mov esi, eax
jmp 0x41c558
xor esi, esi
mov eax, dword [esp + 0x20]
mov edx, dword [esi]
mov byte [esp + 0xc778], bl
mov ecx, dword [eax + 0x14]
push ecx
mov ecx, esi
call dword [edx + 0x10]
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
push eax
mov ecx, esi
call dword [edx + 0x8c]
test eax, eax
je 0x41c58d
mov ecx, dword [esp + 0x20]
push esi
call fcn.0041ebe0
jmp 0x41c599
cmp esi, ebx
je 0x41c599
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], edi
cmp edi, eax
je 0x41c5c0
mov ecx, dword [edi + 0x48]
xor eax, eax
mov ax, word [edi + 0x44]
add eax, ecx
lea edi, [edi + eax*2 + 0x54]
mov eax, dword [esp + 0x14]
cmp edi, eax
jbe 0x41c52e
lea ecx, [esp + 0x3c]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x1c], ebx
call fcn.005ab609
lea ecx, [esp + 0x64]
mov byte [esp + 0xc778], 8
call fcn.005ab223
mov eax, dword [esp + 0x20]
xor esi, esi
mov byte [esp + 0xc778], 9
cmp dword [eax + 8], ebx
jle 0x41c653
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + esi*4]
cmp ecx, ebx
je 0x41c643
mov edx, dword [ecx]
call dword [edx + 0x88]
mov edi, eax
lea ecx, [esp + 0x3c]
push edi
call fcn.0041ebe0
mov eax, dword [edi + 0x2ec]
lea ecx, [eax + eax + 0x2f2]
push ecx
lea ecx, [esp + 0x68]
call fcn.0041ebc0
mov edx, dword [edi + 0x2ec]
mov eax, dword [esp + 0x1c]
lea ecx, [eax + edx*2 + 0x2f2]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax + 8]
inc esi
cmp esi, ecx
jl 0x41c5f5
mov eax, dword [esp + 0x1c]
cmp eax, ebx
jne 0x41c67b
lea ecx, [esp + 0x64]
mov byte [esp + 0xc778], 8
call fcn.005ab256
lea ecx, [esp + 0x3c]
mov byte [esp + 0xc778], bl
call fcn.005ab63c
xor esi, esi
jmp 0x41c749
push eax
call fcn.005acc0c
mov esi, eax
add esp, 4
cmp esi, ebx
mov dword [esp + 0x18], esi
jne 0x41c6b6
lea ecx, [esp + 0x64]
mov byte [esp + 0xc778], 8
call fcn.005ab256
lea ecx, [esp + 0x3c]
mov byte [esp + 0xc778], bl
call fcn.005ab63c
xor esi, esi
jmp 0x41c749
mov eax, dword [esp + 0x44]
mov dword [esp + 0x20], esi
cmp eax, ebx
mov dword [esp + 0x14], ebx
jle 0x41c720
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov ecx, dword [edx + eax*4]
mov edx, dword [esp + 0x40]
mov esi, dword [edx + eax*4]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + eax*4]
mov ecx, dword [esp + 0x20]
add ecx, edx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + eax*4]
push eax
call fcn.005acc35
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x48]
add esp, 4
inc eax
cmp eax, ecx
mov dword [esp + 0x14], eax
jl 0x41c6c6
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ecx, [esp + 0x64]
mov dword [esp + 0x14], edx
mov byte [esp + 0xc778], 8
call fcn.005ab256
lea ecx, [esp + 0x3c]
mov byte [esp + 0xc778], bl
call fcn.005ab63c
lea ecx, [esp + 0x50]
call fcn.005aaeda
mov edi, dword [esp + 0x14]
push 0xffffffffffffffff
push edi
lea ecx, [esp + 0x58]
mov byte [esp + 0xc780], 0xa
call fcn.005aaf3a
mov ecx, edi
mov edi, dword [esp + 0x54]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x34]
call fcn.00420600
cmp eax, ebx
je 0x41c864
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
push edx
lea ecx, [esp + 0x38]
push eax
push ecx
call fcn.0047c810
add esp, 0xc
lea ecx, [esp + 0xa4b8]
mov byte [esp + 0xc778], 0xb
call fcn.004df340
mov edx, dword [0x5e45d4]
mov dword [esp + 0x2c], edx
push str.SDOfflinePolicy
lea eax, [esp + 0x30]
push str._s_2
push eax
mov byte [esp + 0xc784], 0xd
call fcn.0046e3f0
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x3c]
mov eax, dword [ecx + 8]
mov ecx, dword [esp + 0x44]
push ecx
push eax
push edx
call fcn.004a7e40
add esp, 0x1c
mov esi, eax
mov eax, dword [esp + 0x58]
push esi
push eax
push str.ParsePolicy_POLICY_TYPE_SD_OFFLINE_AUTH_size_0x_x__WriteIniString
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x18
cmp esi, ebx
je 0x41c82e
mov ebp, 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0xc778], 0xc
call fcn.0046b3e0
lea ecx, [esp + 0xa4b8]
mov byte [esp + 0xc778], 0xb
call fcn.004df8e0
lea ecx, [esp + 0x34]
mov byte [esp + 0xc778], 0xa
call fcn.0046b3e0
lea ecx, [esp + 0x50]
mov byte [esp + 0xc778], bl
call fcn.005aaf0d
mov esi, dword [esp + 0x30]
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SD_AGENT_CONFIG
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x2e28]
call fcn.004e9890
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x88b0]
mov byte [esp + 0xc778], 0xe
call fcn.004e9890
push ebp
push ebx
push ebx
push str.SDParamPolicy
mov byte [esp + 0xc788], 0xf
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x88b0]
mov byte [esp + 0xc778], 0xe
call fcn.0041ef90
lea ecx, [esp + 0x1f8]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0b8
mov dword [esp + 0x20c], ebx
mov ecx, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x10
mov dword [esp + 0x1c], ecx
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x11
je 0x41c93c
mov ecx, eax
call fcn.00420730
mov ebp, eax
jmp 0x41c93e
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x10
je 0x41c972
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
push edx
push eax
mov ecx, ebp
call fcn.00426120
mov ecx, dword [esp + 0x18]
push ecx
push edi
mov ecx, ebp
call fcn.00426240
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0b8
lea ecx, [esp + 0x1f8]
mov byte [esp + 0xc778], 0x12
call fcn.00421da0
lea ecx, [esp + 0x1f8]
mov byte [esp + 0xc778], 0xe
call fcn.005ab63c
lea ecx, [esp + 0x3148]
mov byte [esp + 0xc778], 0x14
call fcn.00472100
lea ecx, [esp + 0x3138]
mov byte [esp + 0xc778], 0x13
call fcn.00472100
lea ecx, [esp + 0x2e28]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_AGENT_CONFIG
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x1388]
call fcn.004c5190
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x8be0]
mov byte [esp + 0xc778], 0x15
call fcn.004c5190
push ebp
push ebx
push ebx
push str.ConfigPolicy
mov byte [esp + 0xc788], 0x16
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x8be0]
mov byte [esp + 0xc778], 0x15
call fcn.0041eff0
lea ecx, [esp + 0xc0]
call fcn.005ab609
mov dword [esp + 0xc0], 0x5de0ac
mov dword [esp + 0xd4], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x17
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x18
je 0x41caa9
mov ecx, eax
call fcn.004207e0
mov ebp, eax
jmp 0x41caab
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x17
je 0x41cadf
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00426500
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00426620
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0xc0], 0x5de0ac
lea ecx, [esp + 0xc0]
mov byte [esp + 0xc778], 0x19
call fcn.00421de0
lea ecx, [esp + 0xc0]
mov byte [esp + 0xc778], 0x15
call fcn.005ab63c
lea ecx, [esp + 0x16cc]
mov byte [esp + 0xc778], 0x1d
call fcn.00472100
lea ecx, [esp + 0x16b8]
mov byte [esp + 0xc778], 0x1c
call fcn.005ab256
lea ecx, [esp + 0x16a8]
mov byte [esp + 0xc778], 0x1b
call fcn.00472100
lea ecx, [esp + 0x1698]
mov byte [esp + 0xc778], 0x1a
call fcn.00472100
lea ecx, [esp + 0x1388]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SD_SAFE_COMM
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x3158]
call fcn.004eeee0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x52a8]
mov byte [esp + 0xc778], 0x1e
call fcn.004eeee0
push ebp
push ebx
push ebx
push str.SDGatewayPolicy
mov byte [esp + 0xc788], 0x1f
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x52a8]
mov byte [esp + 0xc778], 0x1e
call fcn.0041f070
lea ecx, [esp + 0x180]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0a0
mov dword [esp + 0x194], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x20
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x21
je 0x41cc3e
mov ecx, eax
call fcn.00420890
mov ebp, eax
jmp 0x41cc40
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x20
je 0x41cc74
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00426900
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00426a20
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5de0a0
lea ecx, [esp + 0x180]
mov byte [esp + 0xc778], 0x22
call fcn.00421e20
lea ecx, [esp + 0x180]
mov byte [esp + 0xc778], 0x1e
call fcn.005ab63c
lea ecx, [esp + 0x3478]
mov byte [esp + 0xc778], 0x24
call fcn.00472100
lea ecx, [esp + 0x3468]
mov byte [esp + 0xc778], 0x23
call fcn.00472100
lea ecx, [esp + 0x3158]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_BASIC
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x2110]
call fcn.0051cf50
lea ecx, [esp + 0x2420]
mov byte [esp + 0xc778], 0x25
call fcn.004bbd60
mov dword [esp + 0x2110], 0x5ddfd8
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x4bd8]
mov byte [esp + 0xc778], 0x26
call fcn.0041f0d0
push ebp
push ebx
push ebx
push str.BasicPolicy
mov byte [esp + 0xc788], 0x27
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x4bd8]
mov byte [esp + 0xc778], 0x26
call fcn.0041f120
lea ecx, [esp + 0xf0]
call fcn.005ab609
mov dword [esp + 0xf0], 0x5ddfcc
mov dword [esp + 0x104], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x28
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x29
je 0x41cdca
mov ecx, eax
call fcn.00420940
mov ebp, eax
jmp 0x41cdcc
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x28
je 0x41ce00
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00426ce0
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00426e20
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0xf0], 0x5ddfcc
lea ecx, [esp + 0xf0]
mov byte [esp + 0xc778], 0x2a
call fcn.00421e60
lea ecx, [esp + 0xf0]
mov byte [esp + 0xc778], 0x26
call fcn.005ab63c
lea ecx, [esp + 0x2420]
mov byte [esp + 0xc778], 0x2b
call fcn.004bbda0
lea ecx, [esp + 0x2110]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_APP
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x2788]
call fcn.0051cf50
lea ecx, [esp + 0x2a98]
mov byte [esp + 0xc778], 0x2c
call fcn.004bc160
mov dword [esp + 0x2788], 0x5ddf04
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x6038]
mov byte [esp + 0xc778], 0x2d
call fcn.0041f170
push ebp
push ebx
push ebx
push str.AppPolicy
mov byte [esp + 0xc788], 0x2e
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x6038]
mov byte [esp + 0xc778], 0x2d
call fcn.0041f1c0
lea ecx, [esp + 0x1e0]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddef8
mov dword [esp + 0x1f4], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x2f
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x30
je 0x41cf42
mov ecx, eax
call fcn.004209f0
mov ebp, eax
jmp 0x41cf44
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x2f
je 0x41cf78
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00427100
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00427240
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddef8
lea ecx, [esp + 0x1e0]
mov byte [esp + 0xc778], 0x31
call fcn.00421ea0
lea ecx, [esp + 0x1e0]
mov byte [esp + 0xc778], 0x2d
call fcn.005ab63c
lea ecx, [esp + 0x2a98]
mov byte [esp + 0xc778], 0x32
call fcn.0041ef30
lea ecx, [esp + 0x2788]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_WEB
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0xc50]
call fcn.0051cf50
lea ecx, [esp + 0xf60]
mov byte [esp + 0xc778], 0x33
call fcn.005ab223
lea ecx, [esp + 0xf74]
mov byte [esp + 0xc778], 0x34
call fcn.004720f0
lea ecx, [esp + 0xf84]
mov byte [esp + 0xc778], 0x35
call fcn.004bc160
mov dword [esp + 0xc50], 0x5dde30
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x6f90]
mov byte [esp + 0xc778], 0x36
call fcn.0041f240
push ebp
push ebx
push ebx
push str.UrlPolicy
mov byte [esp + 0xc788], 0x37
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x6f90]
mov byte [esp + 0xc778], 0x36
call fcn.0041f2b0
lea ecx, [esp + 0x120]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde24
mov dword [esp + 0x134], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x38
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x39
je 0x41d0e2
mov ecx, eax
call fcn.00420aa0
mov ebp, eax
jmp 0x41d0e4
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x38
je 0x41d118
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00427550
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.004276b0
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde24
lea ecx, [esp + 0x120]
mov byte [esp + 0xc778], 0x3a
call fcn.00421ee0
lea ecx, [esp + 0x120]
mov byte [esp + 0xc778], 0x36
call fcn.005ab63c
lea ecx, [esp + 0xf84]
mov byte [esp + 0xc778], 0x3d
call fcn.0041ef30
lea ecx, [esp + 0xf74]
mov byte [esp + 0xc778], 0x3c
call fcn.00472100
lea ecx, [esp + 0xf60]
mov byte [esp + 0xc778], 0x3b
call fcn.005ab256
lea ecx, [esp + 0xc50]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_DEVICE
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x1dd0]
call fcn.004be490
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x6380]
mov byte [esp + 0xc778], 0x3e
call fcn.004be490
push ebp
push ebx
push ebx
push str.DevicePolicy
mov byte [esp + 0xc788], 0x3f
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x6380]
mov byte [esp + 0xc778], 0x3e
call fcn.0041f350
lea ecx, [esp + 0x1b0]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde18
mov dword [esp + 0x1c4], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x40
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x41
je 0x41d263
mov ecx, eax
call fcn.00420b50
mov ebp, eax
jmp 0x41d265
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x40
je 0x41d299
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00427a10
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00427b30
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde18
lea ecx, [esp + 0x1b0]
mov byte [esp + 0xc778], 0x42
call fcn.00421f20
lea ecx, [esp + 0x1b0]
mov byte [esp + 0xc778], 0x3e
call fcn.005ab63c
lea ecx, [esp + 0x2108]
mov byte [esp + 0xc778], 0x45
call fcn.0046b3e0
lea ecx, [esp + 0x20f8]
mov byte [esp + 0xc778], 0x44
call fcn.00472100
lea ecx, [esp + 0x20e0]
mov byte [esp + 0xc778], 0x43
call fcn.004bbda0
lea ecx, [esp + 0x1dd0]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_PRINT
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x4f00]
call fcn.004be7f0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x8090]
mov byte [esp + 0xc778], 0x46
call fcn.004be7f0
push ebp
push ebx
push ebx
push str.PrintPolicy
mov byte [esp + 0xc788], 0x47
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x8090]
mov byte [esp + 0xc778], 0x46
call fcn.004be930
lea ecx, [esp + 0x150]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde0c
mov dword [esp + 0x164], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x48
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x49
je 0x41d3e4
mov ecx, eax
call fcn.00420c00
mov ebp, eax
jmp 0x41d3e6
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x48
je 0x41d41a
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00427e00
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00427f20
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dde0c
lea ecx, [esp + 0x150]
mov byte [esp + 0xc778], 0x4a
call fcn.00421f60
lea ecx, [esp + 0x150]
mov byte [esp + 0xc778], 0x46
call fcn.005ab63c
lea ecx, [esp + 0x4f00]
mov byte [esp + 0xc778], bl
call fcn.004be930
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SNAPSHOT
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x4890]
call fcn.004bf540
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x55d8]
mov byte [esp + 0xc778], 0x4b
call fcn.004bf540
push ebp
push ebx
push ebx
push str.SnapshotPolicy
mov byte [esp + 0xc788], 0x4c
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x55d8]
mov byte [esp + 0xc778], 0x4b
call fcn.0041f3c0
lea ecx, [esp + 0x90]
call fcn.005ab609
mov dword [esp + 0x90], 0x5dde00
mov dword [esp + 0xa4], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x4d
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x4e
je 0x41d529
mov ecx, eax
call fcn.00420cb0
mov ebp, eax
jmp 0x41d52b
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x4d
je 0x41d55f
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.004281b0
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.004282d0
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0x90], 0x5dde00
lea ecx, [esp + 0x90]
mov byte [esp + 0xc778], 0x4f
call fcn.00421fa0
lea ecx, [esp + 0x90]
mov byte [esp + 0xc778], 0x4b
call fcn.005ab63c
lea ecx, [esp + 0x4ba0]
mov byte [esp + 0xc778], 0x50
call fcn.0041ef30
lea ecx, [esp + 0x4890]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_LOG
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x300]
call fcn.004bf6b0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x9948]
mov byte [esp + 0xc778], 0x51
call fcn.004bf6b0
push ebp
push ebx
push ebx
push str.LogPolicy
mov byte [esp + 0xc788], 0x52
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x9948]
mov byte [esp + 0xc778], 0x51
call fcn.0041f440
lea ecx, [esp + 0xa8]
call fcn.005ab609
mov dword [esp + 0xa8], 0x5dddf4
mov dword [esp + 0xbc], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x53
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x54
je 0x41d682
mov ecx, eax
call fcn.00420d60
mov ebp, eax
jmp 0x41d684
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x53
je 0x41d6b8
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.004285b0
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.004286d0
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0xa8], 0x5dddf4
lea ecx, [esp + 0xa8]
mov byte [esp + 0xc778], 0x55
call fcn.00421fe0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xc778], 0x51
call fcn.005ab63c
lea ecx, [esp + 0x844]
mov byte [esp + 0xc778], 0x6a
call fcn.00472100
lea ecx, [esp + 0x834]
mov byte [esp + 0xc778], 0x69
call fcn.00472100
lea ecx, [esp + 0x81c]
mov byte [esp + 0xc778], 0x68
call fcn.004bbda0
lea ecx, [esp + 0x804]
mov byte [esp + 0xc778], 0x67
call fcn.004bbda0
lea ecx, [esp + 0x7ec]
mov byte [esp + 0xc778], 0x66
call fcn.004bbda0
lea ecx, [esp + 0x7cc]
mov byte [esp + 0xc778], 0x65
call fcn.004bbda0
lea ecx, [esp + 0x7bc]
mov byte [esp + 0xc778], 0x64
call fcn.00472100
lea ecx, [esp + 0x7a8]
mov byte [esp + 0xc778], 0x63
call fcn.00472100
lea ecx, [esp + 0x780]
mov byte [esp + 0xc778], 0x62
call fcn.00472100
lea ecx, [esp + 0x770]
mov byte [esp + 0xc778], 0x61
call fcn.00472100
lea ecx, [esp + 0x75c]
mov byte [esp + 0xc778], 0x60
call fcn.005ab256
lea ecx, [esp + 0x748]
mov byte [esp + 0xc778], 0x5f
call fcn.00422220
lea ecx, [esp + 0x738]
mov byte [esp + 0xc778], 0x5e
call fcn.00472100
lea ecx, [esp + 0x704]
mov byte [esp + 0xc778], 0x5d
call fcn.0041ef30
lea ecx, [esp + 0x6cc]
mov byte [esp + 0xc778], 0x5c
call fcn.0041ef30
lea ecx, [esp + 0x6bc]
mov byte [esp + 0xc778], 0x5b
call fcn.00472100
lea ecx, [esp + 0x6a8]
mov byte [esp + 0xc778], 0x5a
call fcn.00472100
lea ecx, [esp + 0x694]
mov byte [esp + 0xc778], 0x59
call fcn.005ab256
lea ecx, [esp + 0x660]
mov byte [esp + 0xc778], 0x58
call fcn.0041ef30
lea ecx, [esp + 0x62c]
mov byte [esp + 0xc778], 0x57
call fcn.0041ef30
lea ecx, [esp + 0x610]
mov byte [esp + 0xc778], 0x56
call fcn.004bbda0
lea ecx, [esp + 0x300]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_REMOTE_CONTROL
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x2438]
call fcn.004c0ac0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x7d40]
mov byte [esp + 0xc778], 0x6b
call fcn.004c0ac0
push ebp
push ebx
push ebx
push str.RemoteControlPolicy
mov byte [esp + 0xc788], 0x6c
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x7d40]
mov byte [esp + 0xc778], 0x6b
call fcn.0041f670
lea ecx, [esp + 0xd8]
call fcn.005ab609
mov dword [esp + 0xd8], 0x5ddde8
mov dword [esp + 0xec], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x6d
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x6e
je 0x41d96b
mov ecx, eax
call fcn.00420e10
mov ebp, eax
jmp 0x41d96d
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x6d
je 0x41d9a1
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00428b70
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00428c90
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0xd8], 0x5ddde8
lea ecx, [esp + 0xd8]
mov byte [esp + 0xc778], 0x6f
call fcn.00422020
lea ecx, [esp + 0xd8]
mov byte [esp + 0xc778], 0x6b
call fcn.005ab63c
lea ecx, [esp + 0x2774]
mov byte [esp + 0xc778], 0x72
call fcn.00422220
lea ecx, [esp + 0x2764]
mov byte [esp + 0xc778], 0x71
call fcn.00472100
lea ecx, [esp + 0x2754]
mov byte [esp + 0xc778], 0x70
call fcn.00472100
lea ecx, [esp + 0x2438]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_IMFILE
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x2ad0]
call fcn.004c2920
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x79e8]
mov byte [esp + 0xc778], 0x73
call fcn.004c2920
push ebp
push ebx
push ebx
push str.IMFilePolicy
mov byte [esp + 0xc788], 0x74
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x79e8]
mov byte [esp + 0xc778], 0x73
call fcn.0041f700
lea ecx, [esp + 0x108]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddddc
mov dword [esp + 0x11c], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x75
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x76
je 0x41daec
mov ecx, eax
call fcn.00420ec0
mov ebp, eax
jmp 0x41daee
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x75
je 0x41db22
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00428f80
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.004290a0
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddddc
lea ecx, [esp + 0x108]
mov byte [esp + 0xc778], 0x77
call fcn.00422060
lea ecx, [esp + 0x108]
mov byte [esp + 0xc778], 0x73
call fcn.005ab63c
lea ecx, [esp + 0x2dfc]
mov byte [esp + 0xc778], 0x79
call fcn.00472100
lea ecx, [esp + 0x2de4]
mov byte [esp + 0xc778], 0x78
call fcn.004bbda0
lea ecx, [esp + 0x2ad0]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_IMFILE
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x16e0]
call fcn.004c15a0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x72f8]
mov byte [esp + 0xc778], 0x7a
call fcn.004c15a0
push ebp
push ebx
push ebx
push str.NetTrafficPolicy
mov byte [esp + 0xc788], 0x7b
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x72f8]
mov byte [esp + 0xc778], 0x7a
call fcn.0041f760
lea ecx, [esp + 0x138]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddd0
mov dword [esp + 0x14c], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x7c
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x7d
je 0x41dc59
mov ecx, eax
call fcn.00420f70
mov ebp, eax
jmp 0x41dc5b
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x7c
je 0x41dc8f
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00429360
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00429480
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddd0
lea ecx, [esp + 0x138]
mov byte [esp + 0xc778], 0x7e
call fcn.004220a0
lea ecx, [esp + 0x138]
mov byte [esp + 0xc778], 0x7a
call fcn.005ab63c
lea ecx, [esp + 0x1a40]
mov byte [esp + 0xc778], 0x83
call fcn.00422670
lea ecx, [esp + 0x1a2c]
mov byte [esp + 0xc778], 0x82
call fcn.005ab256
lea ecx, [esp + 0x1a18]
mov byte [esp + 0xc778], 0x81
call fcn.00422220
lea ecx, [esp + 0x1a04]
mov byte [esp + 0xc778], 0x80
call fcn.00422420
lea ecx, [esp + 0x19f0]
mov byte [esp + 0xc778], 0x7f
call fcn.005ab256
lea ecx, [esp + 0x16e0]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_NETWORK
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0xfb8]
call fcn.004c1b90
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x5920]
mov byte [esp + 0xc778], 0x84
call fcn.004c1b90
push ebp
push ebx
push ebx
push str.NetControlPolicy
mov byte [esp + 0xc788], 0x85
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x5920]
mov byte [esp + 0xc778], 0x84
call fcn.0041f860
lea ecx, [esp + 0x168]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddc4
mov dword [esp + 0x17c], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x86
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x87
je 0x41de02
mov ecx, eax
call fcn.00421020
mov ebp, eax
jmp 0x41de04
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x86
je 0x41de38
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00429800
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00429920
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddc4
lea ecx, [esp + 0x168]
mov byte [esp + 0xc778], 0x88
call fcn.004220e0
lea ecx, [esp + 0x168]
mov byte [esp + 0xc778], 0x84
call fcn.005ab63c
lea ecx, [esp + 0x1354]
mov byte [esp + 0xc778], 0x8f
call fcn.0041ef30
lea ecx, [esp + 0x1330]
mov byte [esp + 0xc778], 0x8e
call fcn.005ab256
lea ecx, [esp + 0x1318]
mov byte [esp + 0xc778], 0x8d
call fcn.00422670
lea ecx, [esp + 0x1304]
mov byte [esp + 0xc778], 0x8c
call fcn.005ab256
lea ecx, [esp + 0x12f0]
mov byte [esp + 0xc778], 0x8b
call fcn.00422220
lea ecx, [esp + 0x12dc]
mov byte [esp + 0xc778], 0x8a
call fcn.00422420
lea ecx, [esp + 0x12c8]
mov byte [esp + 0xc778], 0x89
call fcn.005ab256
lea ecx, [esp + 0xfb8]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_MAIL
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x1a60]
call fcn.004c23f0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x7678]
mov byte [esp + 0xc778], 0x90
call fcn.004c23f0
push ebp
push ebx
push ebx
push str.MailPolicy
mov byte [esp + 0xc788], 0x91
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x7678]
mov byte [esp + 0xc778], 0x90
call fcn.0041f9a0
lea ecx, [esp + 0x198]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddb8
mov dword [esp + 0x1ac], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x92
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x93
je 0x41dfd3
mov ecx, eax
call fcn.004210d0
mov ebp, eax
jmp 0x41dfd5
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x92
je 0x41e009
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.00429cf0
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.00429e10
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5dddb8
lea ecx, [esp + 0x198]
mov byte [esp + 0xc778], 0x94
call fcn.00422120
lea ecx, [esp + 0x198]
mov byte [esp + 0xc778], 0x90
call fcn.005ab63c
lea ecx, [esp + 0x1dbc]
mov byte [esp + 0xc778], 0x99
call fcn.00422220
lea ecx, [esp + 0x1da4]
mov byte [esp + 0xc778], 0x98
call fcn.00472100
lea ecx, [esp + 0x1d94]
mov byte [esp + 0xc778], 0x97
call fcn.00472100
lea ecx, [esp + 0x1d80]
mov byte [esp + 0xc778], 0x96
call fcn.00472100
lea ecx, [esp + 0x1d70]
mov byte [esp + 0xc778], 0x95
call fcn.00472100
lea ecx, [esp + 0x1a60]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_UPDOWN
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x858]
call fcn.004c2e60
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x8f38]
mov byte [esp + 0xc778], 0x9a
call fcn.004c2e60
push ebp
push ebx
push ebx
push str.UpDownPolicy
mov byte [esp + 0xc788], 0x9b
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x8f38]
mov byte [esp + 0xc778], 0x9a
call fcn.0041fa50
lea ecx, [esp + 0x78]
call fcn.005ab609
mov dword [esp + 0x78], 0x5dddac
mov dword [esp + 0x8c], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0x9c
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0x9d
je 0x41e176
mov ecx, eax
call fcn.00421180
mov ebp, eax
jmp 0x41e178
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0x9c
je 0x41e1ac
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.0042a120
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.0042a240
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + 0x78], 0x5dddac
lea ecx, [esp + 0x78]
mov byte [esp + 0xc778], 0x9e
call fcn.00422160
lea ecx, [esp + 0x78]
mov byte [esp + 0xc778], 0x9a
call fcn.005ab63c
lea ecx, [esp + 0xc40]
mov byte [esp + 0xc778], 0xa8
call fcn.00472100
lea ecx, [esp + 0xc2c]
mov byte [esp + 0xc778], 0xa7
call fcn.00422670
lea ecx, [esp + 0xc18]
mov byte [esp + 0xc778], 0xa6
call fcn.005ab256
lea ecx, [esp + 0xbf8]
mov byte [esp + 0xc778], 0xa5
call fcn.00472100
lea ecx, [esp + 0xbe4]
mov byte [esp + 0xc778], 0xa4
call fcn.00422220
lea ecx, [esp + 0xbe0]
mov byte [esp + 0xc778], 0xa3
call fcn.0046b3e0
lea ecx, [esp + 0xbd0]
mov byte [esp + 0xc778], 0xa2
call fcn.00472100
lea ecx, [esp + 0xbc0]
mov byte [esp + 0xc778], 0xa1
call fcn.0046b3e0
lea ecx, [esp + 0xbb0]
mov byte [esp + 0xc778], 0xa0
call fcn.00472100
lea ecx, [esp + 0xb6c]
mov byte [esp + 0xc778], 0x9f
call fcn.0041ef30
lea ecx, [esp + 0x858]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_IDS
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x5cf0]
call fcn.004c40b0
mov ebp, dword [esp + 0x10]
lea ecx, [esp + 0x66c0]
mov byte [esp + 0xc778], 0xa9
call fcn.004c40b0
push ebp
push ebx
push ebx
push str.IDSPolicy
mov byte [esp + 0xc788], 0xaa
call fcn.004a7e40
add esp, 0x10
lea ecx, [esp + 0x66c0]
mov byte [esp + 0xc778], 0xa9
call fcn.0041fb80
lea ecx, [esp + 0x1c8]
call fcn.005ab609
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddda0
mov dword [esp + 0x1dc], ebx
mov eax, dword [esp + 0x10]
mov edi, dword [esi + 8]
push 0x18
mov byte [esp + 0xc77c], 0xab
mov dword [esp + 0x1c], eax
call fcn.005acc0c
add esp, 4
mov dword [esp + 0x20], eax
cmp eax, ebx
mov byte [esp + 0xc778], 0xac
je 0x41e37a
mov ecx, eax
call fcn.00421230
mov ebp, eax
jmp 0x41e37c
xor ebp, ebp
cmp ebp, ebx
mov byte [esp + 0xc778], 0xab
je 0x41e3b0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, ebp
call fcn.0042a610
mov eax, dword [esp + 0x18]
mov ecx, ebp
push eax
push edi
call fcn.0042a730
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx + 4]
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddda0
lea ecx, [esp + 0x1c8]
mov byte [esp + 0xc778], 0xad
call fcn.004221a0
lea ecx, [esp + 0x1c8]
mov byte [esp + 0xc778], 0xa9
call fcn.005ab63c
lea ecx, [esp + 0x5cf0]
mov byte [esp + 0xc778], bl
call fcn.0041fb80
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_DOC
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x3488]
call fcn.004c3d60
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x3488]
push eax
push ecx
mov byte [esp + 0xc780], 0xae
call fcn.00423360
add esp, 8
lea ecx, [esp + 0x228]
call fcn.004212e0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push edx
mov edx, dword [esp + 0x14]
push ecx
push eax
lea eax, [esp + 0x234]
push edx
push eax
mov byte [esp + 0xc78c], 0xaf
call fcn.00423440
add esp, 0x14
mov ebp, 1
mov dword [esp + method.CPtrArray.virtual_0], 0x5ddd94
lea ecx, [esp + 0x228]
mov byte [esp + 0xc778], 0xb0
call fcn.004221e0
lea ecx, [esp + 0x228]
mov byte [esp + 0xc778], 0xae
call fcn.005ab63c
lea ecx, [esp + 0x3488]
mov byte [esp + 0xc778], bl
call fcn.0041fc10
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SYSALERT
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x4528]
call fcn.004c0e60
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x4528]
push ecx
push edx
mov byte [esp + 0xc780], 0xb1
call fcn.00423760
add esp, 8
lea ecx, [esp + 0x270]
call fcn.00421390
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x27c]
push eax
push ecx
mov byte [esp + 0xc78c], 0xb2
call fcn.00423810
add esp, 0x14
lea ecx, [esp + 0x270]
mov ebp, 1
mov byte [esp + 0xc778], 0xb1
call fcn.004213b0
lea ecx, [esp + 0x4528]
mov byte [esp + 0xc778], bl
call fcn.0041fca0
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_UDISK
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x3b28]
call fcn.004c45c0
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x3b28]
push edx
push eax
mov byte [esp + 0xc780], 0xb3
call fcn.00423b00
add esp, 8
lea ecx, [esp + 0x2a0]
call fcn.00421440
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2ac]
push eax
push ecx
mov byte [esp + 0xc78c], 0xb4
call fcn.00423c10
add esp, 0x14
lea ecx, [esp + 0x2a0]
mov ebp, 1
mov byte [esp + 0xc778], 0xb3
call fcn.00421460
lea ecx, [esp + 0x3b28]
mov byte [esp + 0xc778], bl
call fcn.0041fd00
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SEC_CONFIG
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x3ea8]
call fcn.004ed910
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x3ea8]
push edx
push eax
mov byte [esp + 0xc780], 0xb5
call fcn.00423f70
add esp, 8
lea ecx, [esp + 0x288]
call fcn.004214f0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x294]
push eax
push ecx
mov byte [esp + 0xc78c], 0xb6
call fcn.00423ff0
add esp, 0x14
lea ecx, [esp + 0x288]
mov ebp, 1
mov byte [esp + 0xc778], 0xb5
call fcn.00421510
lea ecx, [esp + 0x3ea8]
mov byte [esp + 0xc778], bl
call fcn.0051d000
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_PRINTPAGE
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0xaa80]
call fcn.004c5880
mov edx, dword [esp + 0x10]
lea eax, [esp + 0xaa80]
push edx
push eax
mov byte [esp + 0xc780], 0xb7
call fcn.004242b0
add esp, 8
lea ecx, [esp + 0x2d0]
call fcn.004215a0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2dc]
push eax
push ecx
mov byte [esp + 0xc78c], 0xb8
call fcn.00424330
add esp, 0x14
lea ecx, [esp + 0x2d0]
mov ebp, 1
mov byte [esp + 0xc778], 0xb7
call fcn.004215c0
lea ecx, [esp + 0xaa80]
mov byte [esp + 0xc778], bl
call fcn.004c5b00
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_GENERAL
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_UDISK_REGISTER_CONTROL
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x37f0]
call fcn.004f2f70
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x37f0]
push edx
push eax
mov byte [esp + 0xc780], 0xb9
call fcn.004245f0
add esp, 8
lea ecx, [esp + 0x2b8]
call fcn.00421650
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2c4]
push eax
push ecx
mov byte [esp + 0xc78c], 0xba
call fcn.004246e0
add esp, 0x14
lea ecx, [esp + 0x2b8]
mov ebp, 1
mov byte [esp + 0xc778], 0xb9
call fcn.00421670
lea ecx, [esp + 0x37f0]
mov byte [esp + 0xc778], bl
call fcn.0041fdd0
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_SOFT_INSTALL_CONTROL_or_POLICY_TYPE_SOFT_UNINSTALL_CONTROL
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x8438]
call fcn.0041ec30
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x8438]
push edx
push eax
mov byte [esp + 0xc780], 0xbb
call fcn.00424a00
add esp, 8
lea ecx, [esp + 0x240]
call fcn.00421700
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x24c]
push eax
push ecx
mov byte [esp + 0xc78c], 0xbc
call fcn.00424cc0
add esp, 0x14
lea ecx, [esp + 0x240]
mov ebp, 1
mov byte [esp + 0xc778], 0xbb
call fcn.00421720
lea ecx, [esp + 0x8438]
mov byte [esp + 0xc778], bl
call fcn.004f48c0
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_AUTH_REQUEST
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x6a08]
call fcn.004f8670
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x6a08]
push edx
push eax
mov byte [esp + 0xc780], 0xbd
call fcn.004250c0
add esp, 8
lea ecx, [esp + 0x2e8]
call fcn.004217b0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x2f4]
push eax
push ecx
mov byte [esp + 0xc78c], 0xbe
call fcn.004254a0
add esp, 0x14
lea ecx, [esp + 0x2e8]
mov ebp, 1
mov byte [esp + 0xc778], 0xbd
call fcn.004217d0
lea ecx, [esp + 0x6a08]
mov byte [esp + 0xc778], bl
call fcn.0041fe60
jmp 0x41ea4e
push str.ParsePolicy_POLICY_TYPE_TDS
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
lea ecx, [esp + 0x4200]
call fcn.004f3450
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x4200]
push edx
push eax
mov byte [esp + 0xc780], 0xbf
call fcn.00425930
add esp, 8
lea ecx, [esp + 0x258]
call fcn.00421860
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esi + 8]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x264]
push eax
push ecx
mov byte [esp + 0xc78c], 0xc0
call fcn.004259b0
add esp, 0x14
lea ecx, [esp + 0x258]
mov ebp, 1
mov byte [esp + 0xc778], 0xbf
call fcn.00421880
lea ecx, [esp + 0x4200]
mov byte [esp + 0xc778], bl
call fcn.004f34c0
jmp 0x41ea4e
push edi
push str.ParsePolicy_type_0x_x__unsupported_
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x14
lea ecx, [esp + 0x10]
mov dword [esp + 0xc778], 0xffffffff
call fcn.0046b3e0
jmp 0x41ea7d
push str.ParsePolicy_user_policy_unsupported_
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x10
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
cmp eax, edx
jb 0x41c273
jmp 0x41eab4
push 0x90
jmp 0x41ea9b
push 0x99
push str.ParsePolicy_line__lu__break
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
add esp, 0x14
mov eax, dword [esp + 0xc780]
push ebp
push eax
push str.ParsePolicy_type_0x_x__ret_0x_x_
push str.CheckModule
push 0xf
push 0x654a04
call fcn.00445f90
mov ecx, dword [esp + 0xc788]
add esp, 0x18
mov eax, ebp
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc76c
ret 8