I don't know whether storage type of level is signed or not, probably not.
"push imm8" performs sign extension to operand before pushing the value into stack. So changing "push 6e" to any value that is higher than 127 does not do what we expect. (in that case, value becomes [imm8 FF FF FF] on stack, not [imm8 00 00 00])
This one does work for default max. level (thanks to kanift for testing)
Code:
pop edx
movzx eax,al
push eax
push E18B1C
jmp edx