To put a file with smbclient (needs creds obviously):
smbclient //10.10.10.10/c$ -U 'testuser%Testpass123' -c 'cd \Users\Public; put payload.exe'
pth-smbclient can do the same thing with a hash
WMI for explanation of Invoke-TheHash which contains many SMB tools
Finding Buried Treasure in Server Message Block (SMB) - Black Hills Information Security
https://github.com/oldboy21/SMBSR
https://github.com/blacklanternsecurity/MANSPIDER
Crawl SMB shares for juicy information. File content searching + regex is supported!