In assembly language, is there a difference between a function and a procedure? I use them interchangeably but I'm not sure this is appropriate a professional environment.
In most (low level) assembly languages, neither the term "function" nor "procedure" exists, there are only subroutines, subroutine calls, and values returned through registers, the stack or other memory cells. In practice, it may be useful to think of these kind of subroutines in terms of functions or procedures, and talk about them using these terms, but there is probably no "standard" which defines one should only use the term "function", or "make always a clear distinction between procedures and function" in the context of assembly.
In particular assembly languages like this High Level Assembly, the abstraction of functions and procedures exist, and as you can see in the Wikipedia article, in that context both terms are used and distinguished, (at least when it is useful).