Function at 0x4c8d80
Capabilities:
Access firewall policy via inetfwpolicy2
Access firewall settings via inetfwmgr

Disassembly:
sub esp, 0x28
push ebx
push ebp
push esi
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
xor ebx, ebx
push edi
push str.Mesh_Agent_peer_to_peer__UDP_
mov dword [esp + 0x38], ecx
xor edi, edi
mov dword [esp + 0x28], 0
xor ebp, ebp
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x30], ebx
call esi
mov dword [esp + 0x30], eax
test eax, eax
je 0x4c8f36
push str.Mesh_Agent_management__UDP_
call esi
mov edi, eax
mov dword [esp + 0x14], edi
test edi, edi
je 0x4c8f36
push str.Mesh_Agent_peer_to_peer__TCP_
call esi
mov ebx, eax
test ebx, ebx
je 0x4c8f36
push str.Mesh_Agent_management__TCP_
call esi
mov ebp, eax
test ebp, ebp
je 0x4c8f36
lea eax, [esp + 0x24]
push eax
push 0x5f1e24
push 1
push 0
push 0x5f1e04
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4c8f36
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x20]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
js 0x4c8f36
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x1c]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
js 0x4c8f36
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0x18]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x50]
test eax, eax
js 0x4c8f36
push dword [esp + 0x34]
call esi
mov edi, eax
mov dword [esp + 0x34], edi
test edi, edi
je 0x4c8f32
xor esi, esi
mov ecx, dword [esp + 0x18]
push edi
push ecx
mov edx, dword [ecx]
call dword [edx + 0x24]
test eax, eax
js 0x4c8f23
inc esi
cmp esi, 4
jl 0x4c8e91
lea eax, [esp + 0x28]
push eax
push 0x5f1df4
push 0x17
push 0
push 0x5f1e64
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4c8f23
mov eax, dword [esp + 0x28]
lea edx, [esp + 0x10]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
test eax, eax
js 0x4c8f23
mov esi, dword [esp + 0x14]
mov edi, 4
mov eax, dword [esp + 0x10]
push dword [esp + 0x30]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov eax, dword [esp + 0x10]
push esi
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov eax, dword [esp + 0x10]
push ebx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov eax, dword [esp + 0x10]
push ebp
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
sub edi, 1
jne 0x4c8ee3
mov edi, dword [esp + 0x34]
mov dword [esp + 0x2c], 1
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push edi
call esi
mov edi, dword [esp + 0x14]
jmp 0x4c8f3c
mov edi, dword [esp + 0x14]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x4c8f4a
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x4c8f58
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x4c8f66
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x4c8f74
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x4c8f82
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x4c8f90
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4c8f9b
push eax
call esi
test edi, edi
je 0x4c8fa2
push edi
call esi
test ebx, ebx
je 0x4c8fa9
push ebx
call esi
test ebp, ebp
je 0x4c8fb0
push ebp
call esi
mov eax, dword [esp + 0x2c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret