How to decode base64-encoded <data> (CFData/NSData) property in a property list?
- by bantic
I am trying to reverse-engineer a preferences file (not for any nefarious purposes, just so that I can script usage of it) that, among other things, has arrays of coordinates stored within it.
This is the salient snippet from the property list:
<dict>
<key>$class</key>
<dict>
<key>CF$UID</key>
<integer>34</integer>
</dict>
<key>coordArray</key>
<data>
AAAAAAAAAAAAAAAAAAAAAT70vS8/M7xSPwAAAD8AAAA/AAAA
</data>
<key>coordCount</key>
<integer>1</integer>
</dict>
I assume that data string is an array of coordinates (based on its key name). My question is, how can I figure out what data is stored there? If I simply base64-decode that string, I get gibberish. Is there a way to decode it and cast it into whatever format it came from (NSArray, I think)?