def METHOD_NAME(
    local_network_interfaces: Sequence[IPv4Interface],
    ranges_to_scan: Sequence[str],
    inaccessible_subnets: Sequence[str],
    blocklisted_ips: Sequence[str],
    scan_my_networks: bool,
) -> List[NetworkAddress]:
    scan_targets = _get_ips_from_subnets_to_scan(ranges_to_scan)
    if scan_my_networks:
        scan_targets.extend(_get_ips_to_scan_from_interface(local_network_interfaces))
    if inaccessible_subnets:
        other_targets = _get_segmentation_check_targets(
            inaccessible_subnets, local_network_interfaces
        )
        scan_targets.extend(other_targets)
    scan_targets = _remove_interface_ips(scan_targets, local_network_interfaces)
    scan_targets = _remove_blocklisted_ips(scan_targets, blocklisted_ips)
    scan_targets = _remove_redundant_targets(scan_targets)
    scan_targets.sort(key=lambda network_address: socket.inet_aton(network_address.ip))
    return scan_targets