the process by itself is not complicated. I would stay away from using an agent because that's what immigration looks for. When they see you used an agent they look at you differently and sometimes give you a harder time because they know you are willing to pay.