えー
IF文の山は察するに、下位関数の処理がエラーなく成功したか知りたいんだろう
ENDの先にあるのはエラーログ出力と解放処理
だから実際は頭やFuncの合間にごちゃごちゃ処理したりメモリ確保したり初期化したり
その方法はたぶん使えない

何より処理の本体がIF分のカッコの中にあるのは
うつくしくない

それで悩んだことあるから俺も知りたい
最近の言語なら例外投げりゃ終わる話なんだが