Function at 0x404710
Capabilities:
Access firewall rule properties via inetfwrule

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
xor ebx, ebx
push 0x5a5fb0
xor esi, esi
mov dword [esp + 0x14], ebx
call edi
mov ebp, eax
test ebp, ebp
jne 0x40473a
push str._nERROR:_Insufficient_memory_n
jmp 0x4048c7
mov eax, dword [esp + 0x1c]
push eax
call edi
mov ebx, eax
test ebx, ebx
jne 0x404751
push str._nERROR:_Insufficient_memory_n
jmp 0x4048c7
lea ecx, [esp + 0x10]
push ecx
push 0x5a5d08
push 1
push 0
push 0x5a5d18
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, eax
test esi, esi
jge 0x404783
push esi
push str.CoCreateInstance_for_INetFwRule_failed:_0x_08lx_n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push ebp
push eax
mov eax, dword [edx + 0x20]
call eax
mov esi, eax
test esi, esi
jge 0x4047a9
push esi
push str.Failed_INetFwRule::put_Name_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x70]
push 1
push eax
call edx
mov esi, eax
test esi, esi
jge 0x4047d0
push esi
push str.Failed_INetFwRule::put_Direction_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa8]
push 1
push eax
call edx
mov esi, eax
test esi, esi
jge 0x4047fa
push esi
push str.Failed_INetFwRule::put_Action_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x30]
push ebx
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404820
push esi
push str.Failed_INetFwRule::put_ApplicationName_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x40]
call eax
mov esi, eax
test esi, esi
jge 0x40484a
push esi
push str.Failed_INetFwRule::put_Protocol_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x98]
push closesocket
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404874
push esi
push str.Failed_INetFwRule::put_Profiles_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x88]
push 0xffffffffffffffff
push eax
call edx
mov esi, eax
test esi, esi
jge 0x40489b
push esi
push str.Failed_INetFwRule::put_Enabled_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x20]
call eax
mov esi, eax
test esi, esi
jge 0x4048c2
push esi
push str.Failed_to_add_firewall_rule_to_the_firewall_rules_collection_:_0x_08lx_n
call fcn.0053e17b
add esp, 8
jmp 0x4048cf
push str.Successfully_added_firewall_rule___n
call fcn.0053e17b
add esp, 4
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push ebp
call edi
push 0
call edi
push 0
call edi
push ebx
call edi
mov eax, dword [esp + 0x10]
test eax, eax
je 0x4048f3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
pop ecx
ret 0xc