A 23-year-old man reported missing from New York State is now in police custody in Vancouver charged with assault and several firearms-related offences.

The man was pulled over in a routine traffic stop Monday, but the situation quickly escalated.

Police say one officer was talking to the man outside his car when he began to act suspiciously, was avoiding their questions, and then grabbed at something along his waist.

When an officer tried to take hold of his wrists, police say the man suddenly turned on them, punching, choking and then trying to grab the officers' batons and guns from their belts.

During the scuffle a loaded gun allegedly fell from the man's clothing.

One of the officers is recovering from an injury to her hand.