docs: private Location getCookieInstructionLocation(ConstantPoolGen cpg, Location startLocation, int objectStackLocation, String invokeInstruction) {
          Location location = startLocation;
          InstructionHandle handle = location.getHandle();
  
          int loadedStackValue = 0;
  
          // Loop until we find the setSecure call for this cookie
          while (handle.getNext() != null) {
              handle = handle.getNext();
              Instruction nextInst = handle.getInstruction();
  
              // We check if the index of the cookie used for this invoke is the same as the one provided
              if (nextInst instanceof ALOAD) {
                  ALOAD loadInst = (ALOAD)nextInst;
                  loadedStackValue = loadInst.getIndex();
              }
  
              if (nextInst instanceof INVOKEVIRTUAL
                      && loadedStackValue == objectStackLocation) {
                  INVOKEVIRTUAL invoke = (INVOKEVIRTUAL) nextInst;
  
                  String methodNameWithSignature = invoke.getClassName(cpg) + "." + invoke.getMethodName(cpg);
  
                  if (methodNameWithSignature.equals(invokeInstruction)) {
  
                      Integer val = ByteCode.getConstantInt(handle.getPrev());
  
                      if (val != null && val == TRUE_INT_VALUE) {
                          return new Location(handle, location.getBasicBlock());
                      }
                  }
              }
          }
  
          return null;
      }