This issue occurs because the value of the count parameter that's used internally isn't changed correctly when the ID of the poison message is given to internal process. It makes internal condition conflicted, and then the EdgeTransport.exe process crashes.
To work around this issue, use the Get-Message -queue <server>\poison cmdlet instead of the Get-Message -identity <server>\poison\12345678 cmdlet.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Article ID: 3139730 - Last Review: Mar 15, 2016 - Revision: 1
Exchange Server 2016 Enterprise Edition, Exchange Server 2016 Standard Edition