programming without bootloader

All you have to do is set the fuse so that reset starts at address 0 and not the bootloader.

Can I upload program through ICSP?

Yes, that's what it is there for.