import re


def rule(event):
    if all(
        [
            any(
                [
                    any(
                        [
                            event.deep_get("Image", default="").endswith("\\powershell.exe"),
                            event.deep_get("Image", default="").endswith("\\pwsh.exe"),
                        ]
                    ),
                    event.deep_get("OriginalFileName", default="")
                    in ["PowerShell.EXE", "pwsh.dll"],
                ]
            ),
            "Get-ADUser " in event.deep_get("CommandLine", default=""),
            re.match(r"^.* -Filter \\.*.*$", event.deep_get("CommandLine", default="")),
            any(
                [
                    " > " in event.deep_get("CommandLine", default=""),
                    " | Select " in event.deep_get("CommandLine", default=""),
                    "Out-File" in event.deep_get("CommandLine", default=""),
                    "Set-Content" in event.deep_get("CommandLine", default=""),
                    "Add-Content" in event.deep_get("CommandLine", default=""),
                ]
            ),
        ]
    ):
        return True
    return False
