public static OperationResult staticOperation(final MessageFrame frame) {
    BigInteger a = new BigInteger(1, frame.popStackItem().toArrayUnsafe());
    BigInteger b = new BigInteger(1, frame.popStackItem().toArrayUnsafe());
    BigInteger c = a.multiply(b);
    byte[] cBytes = c.toByteArray();
    Bytes result = Bytes.wrap(cBytes);
    if (cBytes.length > 32) {
      result = result.slice(cBytes.length - 32, 32);
    }

    frame.pushStackItem(result);
    return mulSuccess;
  }
Performs mul operation

@param frame the frame
@return the operation result
evm/src/main/java/org/hyperledger/besu/evm/operation/MulOperation.java