# SnpDxe

| Index | Module | Size | Phase |
|-------|--------|------|-------|
| 135 | SnpDxe | 35,808 bytes (35 KB) | Decompiled |

SnpDxe is the Simple Network Protocol DXE driver implementing EFI_SIMPLE_NETWORK_PROTOCOL over an UNDI3.1 network interface. It provides the full SNP interface including transmit/receive, multicast filtering, station address management, statistics collection, and NVRAM data operations. The driver includes self-contained replacements for BaseMemoryLib operations with debug assertions, plus ASCII/Unicode string conversion and linked-list utilities compiled directly into the module.

## Key Functions

- ModuleEntryPoint, SnpDriverEntry
- SnpStart, SnpStop, SnpInitialize, SnpReset, SnpShutdown
- SnpReceiveFilters, SnpStationAddress, SnpStatistics, SnpGetStatus
- SnpTransmit, SnpReceive, SnpMcastIpToMac, SnpNvdata
- InternalZeroMem, InternalCopyMem, InternalCompareMem, SnpAsciiStrCpy, SnpUtoA
- SnpIsListValid, SnpInsertTailList, SnpGetFirstNode

## Dependencies

- EFI_SIMPLE_NETWORK_PROTOCOL, UNDI3.1 interface
- UefiBootServicesTableLib, UefiRuntimeServicesTableLib, DebugLib

## Platform

x86-64, PE32+, UEFI DXE driver, 6 sections (.text/.rdata/.data/section_3/.xdata/.reloc), entry at 0x528