>>132
最後のこれ
>_0x4c40(_0x2e01(_0x1cab('0x31')),_0x2e01(_0x1cab('0x1d')))
がhelloだからこの中身を実行してできた文字列をwindow.onload=function(){alert();}の中に入れるだけのツールじゃねーかな
どんな難読化でも自動的に解くのは無理だと思う

まあ手動で解いていいなら定義されてる関数実行して戻り値見ればいいだけだから簡単だけどね
もうalert見ただけで文字列変換してんのバレバレだからそこから呼ばれてる関数は戻り値だけもらって中身全部削っていい