CALLNZ (call if not zero)
Begins execution of procedure if given value is not zero.
CALLNZ1 address [in,4i(addr)], value [in,1] ;code:96 CALLNZ2 address [in,4i(addr)], value [in,2] ;code:97 CALLNZ4 address [in,4i(addr)], value [in,4] ;code:98 CALLNZ8 address [in,4i(addr)], value [in,8] ;code:99
This instruction modifies control flow by setting IP
to the given address, but only if given value is not zero.
In this case, execution will continue from this address.
If the value is not zero, address of the next instruction after the
CALL is pushed to the stack, so that you can return from
procedure.