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

Disassembly:
sub esp, 0xc
push esi
xor esi, esi
cmp dword [ebx], esi
jne 0x404914
lea eax, [esi + 1]
pop esi
add esp, 0xc
ret 4
push ebp
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push str.AutelPrintBroadcast
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], esi
call edi
mov ebp, eax
test ebp, ebp
jne 0x40493f
push str._nERROR:_Insufficient_memory_n
jmp 0x404aea
mov eax, dword [esp + 0x1c]
push eax
call edi
mov edi, eax
mov eax, dword [ebx]
mov ecx, dword [eax]
lea edx, [esp + 0x10]
push edx
push eax
mov eax, dword [ecx + 0x48]
mov dword [esp + 0x1c], edi
call eax
mov esi, eax
test esi, esi
jge 0x404974
push esi
push str.Failed_to_retrieve_firewall_rules_collection_:_0x_08lx_n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
lea edx, [esp + 0xc]
push edx
push ebp
push eax
mov eax, dword [ecx + 0x28]
call eax
test eax, eax
jge 0x4049bc
lea ecx, [esp + 0xc]
push ecx
push 0x5a5d08
push 1
push 0
push 0x5a5d18
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, eax
test esi, esi
jge 0x4049bc
push esi
push str.CoCreateInstance_for_INetFwRule_failed:_0x_08lx_n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov edx, dword [eax]
push ebp
push eax
mov eax, dword [edx + 0x20]
call eax
mov esi, eax
test esi, esi
jge 0x4049e2
push esi
push str.Failed_INetFwRule::put_Name_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x70]
push 1
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404a09
push esi
push str.Failed_INetFwRule::put_Direction_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa8]
push 1
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404a33
push esi
push str.Failed_INetFwRule::put_Action_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x40]
push 0x11
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404a5a
push esi
push str.Failed_INetFwRule::put_Protocol_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x48]
push edi
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404a7d
push esi
push str.Failed_INetFwRule::put_Protocol_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x98]
push closesocket
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404aa7
push esi
push str.Failed_INetFwRule::put_Profiles_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x88]
push 0xffffffffffffffff
push eax
call edx
mov esi, eax
test esi, esi
jge 0x404ace
push esi
push str.Failed_INetFwRule::put_Enabled_failed_with_error:_0x__x._n
call fcn.0053e17b
add esp, 8
jmp 0x404af2
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x20]
call eax
mov esi, eax
test esi, esi
jl 0x404af2
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 0
call edi
mov ecx, dword [esp + 0x14]
push ecx
call edi
mov eax, dword [esp + 0xc]
pop edi
pop ebp
test eax, eax
je 0x404b20
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [esp + 8]
test eax, eax
je 0x404b30
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, esi
pop esi
add esp, 0xc
ret 4