Sadly most tutorials you find on YouTube are absolute garbage filled with cargo-cult programming ("Do this because it works but I'm not going to tell you WHY it works") and often made by people who have just barely learned the system themselves.
In Harry's case I have seen threads from him asking how to do things, learning as he makes the tutorial. (Blind leading the blind).
The better tutorials you'll find are text based on GitHub.
[23:33:35] [main/WARN] [FML]: The coremod codechicken.nei.asm.NEICorePlugin does not have a MCVersion annotation, it may cause issues with this version of Minecraft
That is not the issue here, that's a warning.
java.lang.NoClassDefFoundError: codechicken/lib/asm/ASMInit
Thats the issue here.
Try using a different version of CodechickenLib.
Just create a renderer class and then register it using RenderingRegistry.registerEntityRendreringHandler(YourRenderer::new) in the model registry event in your client event subscriber. No need for proxies or a dedicated factory class
I've seen many messed up mod file names from mod repost website, but that is one of a kind.
Sorry to break it to you, but that's the file name you'll get off of CurseForge:
You would need to replicate what GuiInventory.drawEntityOnScreen does but instead of calling RenderManager#renderEntity replicate the code that the method invokes, but after the getEntityRenderObject call cast the resulting renderer to RenderPlayer, then you have the access to the player's model through RenderPlayer#getMainModel. This is your ModelRenerer object.
Just restore it back to the original stte after you are done rendering.