gotoが発生しそうだから関数分割すると言う判断は馬鹿っぽい。
gotoなんて所詮は1ブロック中で完結する物なんだから
関数とか設計・構造レベルで論じるものではない。