Function at 0x402170
Capabilities:
Delete network filter via wfp api
Enumerate network filters via wfp api

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rbp - 0x28], 0
mov dword [rbp - 8], 0
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x50], 0
mov qword [rbp - 0x48], 0
mov dword [rbp - 0x54], 0
mov dword [rbp - 4], 0
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
mov r9d, 0
mov r8d, 0
mov edx, 0xffffffff
mov ecx, 0
call sym.FwpmEngineOpen0
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
je 0x4021fb
mov eax, dword [rbp - 8]
mov edx, eax
lea rcx, str.blah_blah_____FwpmEngineOpen0_failed_with_error_code:_0x_x._n
call sym.printf
jmp 0x4023c3
mov rax, qword [rbp - 0x28]
lea rdx, [rbp - 0x30]
mov r8, rdx
mov edx, 0
mov rcx, rax
call sym.FwpmFilterCreateEnumHandle0
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
je 0x402232
mov eax, dword [rbp - 8]
mov edx, eax
lea rcx, str.blah_blah_____FwpmFilterCreateEnumHandle0_failed_with_error_code:_0x_x._n
call sym.printf
jmp 0x4023c3
mov rdx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
lea r8, [rbp - 0x38]
lea rcx, [rbp - 0x54]
mov qword [rsp + 0x20], rcx
mov r9, r8
mov r8d, 1
mov rcx, rax
call sym.FwpmFilterEnum0
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
je 0x402293
mov eax, dword [rbp - 8]
mov edx, eax
lea rcx, str.blah_blah_____FwpmFilterEnum0_failed_with_error_code:_0x_x._n
call sym.printf
mov rdx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sym.FwpmFilterDestroyEnumHandle0
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sym.FwpmEngineClose0
jmp 0x4023c3
mov eax, dword [rbp - 0x54]
test eax, eax
je 0x40233b
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
add rax, 0x10
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x18], rax
mov rdx, qword [str.Custom_Outbound_Filter]
mov rax, qword [rbp - 0x18]
mov rcx, rax
call sym.wcscmp
test eax, eax
jne 0x402232
mov dword [rbp - 4], 1
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov rax, qword [rax + 0xb0]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x28]
mov rdx, qword [rbp - 0x20]
mov rcx, rax
call sym.FwpmFilterDeleteById0
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
jne 0x40231d
mov rax, qword [rbp - 0x20]
mov rdx, rax
lea rcx, str.blah_blah_Deleted_filter_id:__llu._n
call sym.printf
jmp 0x402232
mov edx, dword [rbp - 8]
mov rax, qword [rbp - 0x20]
mov r8d, edx
mov rdx, rax
lea rcx, str.blah_blah_____Failed_to_delete_filter_id:__llu_with_error_code:_0x_x._n
call sym.printf
jmp 0x402232
nop
mov rax, qword [str.Microsoft_Windows_W_F_P_Built_in_custom_provider.]
lea rdx, [rbp - 0x50]
mov rcx, rax
call sym.GetProviderGUIDByDescription
test eax, eax
je 0x402394
mov rax, qword [rbp - 0x28]
lea rdx, [rbp - 0x50]
mov rcx, rax
call sym.FwpmProviderDeleteByKey0
mov dword [rbp - 8], eax
cmp dword [rbp - 8], 0
je 0x402388
cmp dword [rbp - 8], 0x8032000a
je 0x402394
mov eax, dword [rbp - 8]
mov edx, eax
lea rcx, str.blah_blah_____FwpmProviderDeleteByKey0_failed_with_error_code:_0x_x._n
call sym.printf
jmp 0x402394
lea rcx, str.blah_blah_Deleted_custom_WFP_provider.
call sym.puts
cmp dword [rbp - 4], 0
jne 0x4023a6
lea rcx, str.blah_blah_____Unable_to_find_any_WFP_filter_created_by_this_tool.
call sym.puts
mov rdx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sym.FwpmFilterDestroyEnumHandle0
mov rax, qword [rbp - 0x28]
mov rcx, rax
call sym.FwpmEngineClose0
nop
add rsp, 0x90
pop rbp
ret