Hi! So it looks like my ELF is missing some sort of .interp section where its trying to load the /usr/libexec/ld.so, while other executables (at least compiled with cc), contain that specific section. =_=;
Which might explain why its having issues trying to load it and where its trying to push itself to the shell. I tried to add in the section within my source file but the string formatting might be off a little preventing NASM (or ld) trying to read from it. I will continue to experiment and update this when I find anyway... Thank you everyone!