From what I see, get_qry_str() takes two arguments: a key or a value, or an array of keys and an array of values. For the latter, the array of values must be at least as large as the array of keys, and be numerically indexed.
Now, get_qry_str() then retrieves the key/value pairs from the query string (hence the copy of $_GET). For each key that matches a key provided as an argument, it replaces the value with the corresponding value provided as an argument. If the key is not present in the query string, the new key/value pair passed as arguments is added to the key/value pair array.
Finally, get_qry_str() calls qry_str() on this new key/value pair set and returns the result. What exactly qry_str() does, I unfortunately cannot say, though I can guess that it does a reverse of parse_str() from an array to a string.