I understand that format (though I don't recall seeing it before).
I know how to translate it to approximate pronto hex. I don't know the basic clock rate and I assume the frequency wasn't captured at all, so such a translation wouldn't be correct enough to directly use.
By hand it would be a tedious translation, and I don't have time right now to write a simple C++ program to do it. If you want to try, see below.
Once translated to approximate pronto hex, you could use the JP1 version of IrTool with decodeir.dll to decode it. That probably will work and not care that the time scale and frequency are wrong.
If you get a correct decode, you can then use MakeHex to generate correct Pronto Hex.
The first four values in pronto hex are a header. For those use 0000 006D 0000 00nn where you replace nn with the hex value of half the count of the values in the remainder of the pronto hex string (described below):
In your strange hex string notice whether each value is above 80 hex or below. Group together any that don't alternate above/below. At a glance I only see groups of below.
Subtract 80 from all the above 80 values, add together all members of each group (in hex), then add the required leading zeroes to make a four digit value.
For example the first few are translated 86 7F 12 86 5F 86 7F 12 86 7F 13 86 7F 12 to 6 7F+12 6 5F 6 7F+12 6 7F+13 6 7F+12 to 0006 0091 0006 005f 0006 0091 0006 0092 0006 0091