Hi GreXRa,
Welcome to the Forum.
A C compiler will translate your code to assembly language - but probably not Nasm syntax. I get the impression you want to do this "by hand" anyway. C is a "portable"language. A C compiler for Windows will produce code suitable for Windows, a Linux compiler for Linux, etc. They are not the same. So first you'll need to know what OS you want this for...
An exception would be "strrev()". That would be the same for any OS. You'll want a 16- or 32- or 64- bit register for the address of the string, but an 8-bit register for the character(s). I'm assuming ascii text.
You probably know that "gets()" is considered "dangerous" and shouldn't be used. The API you'll be using for your OS will want to know the size if the buffer anyway, so this probably won't be an issue.
"system("pause")" can probably be translated to "wait for a key". How "literal" a translation do you need?
Take a shot at this and show us where you get stuck, and we'll try to help you out from there.
Best,
Frank