I have the following function :
int __declspec() MyFunc(SOCKET sSocket, const char* sData, int sSize, int sFlag)
{
pSocket = sSocket;
return send(sSocket,sData, sSize, sFlag);
}
And here is its assembly code after compiling :
PUSH EBP
MOV EBP,ESP
PUSH DWORD PTR SS:[EBP+14] // Flags
MOV EAX,DWORD PTR SS:[EBP+8]
PUSH DWORD PTR SS:[EBP+10] // DataSize
MOV DWORD PTR DS:[pSocket],EAX
PUSH DWORD PTR SS:[EBP+C] // Data
PUSH EAX // Socket
CALL DWORD PTR DS:[<&WS2_32.#19_send>] // send
POP EBP
RETN
My questions are:
- Whats the difference between
RETN
,RETN 8
orRETN 10
? - I have to change the final
RETN
toRETN 10
, what changes should I make to my C++ code ?