Q:

meaning of add esp, -10 in assembly

What does add esp, -10 mean? 
I thought add in aseembly is used to do addition and sub to do subtraction..
What would happen if add esp, -10 is executed?

A:

It would add the value -10 (wich is a sub actually but using the ADD opcode) anyway the ESP register is default used (on intel x86) as the pointer to the stack and EBP is the stack frame for functions.
So add esp, -10 is only making room in the stack.
Eye on that you can manipulate the stack with any register, ESP register is the default one for opcodes that manage the stack like push, pop, call, ret, etc, etc.

