Please write a JavaScript function that receives an ArrayBuffer, parses it and returns it as a JavaScript object.
The return value of the function should be an object that either contains either an error message in an "error" property (if at any point in the parsing the value isn't what is expected, or if the buffer ends before it's expected) or contains the parsed object in a "parsed_object" property.

The specifications of the ArrayBuffer are the following:
```
/* Header: */
0x0 - Magic/Signature - 4 Bytes - String
0x4 - File Version - 4 Bytes - Integer
0x8 - Data Size - 4 Bytes - Integer
0xC - Data -  Bytes - Strings separated by NULL bytes
``` Your answer should have exactly 5 paragraphs. Make sure that the first paragraph starts with the word "identity" and that each paragraph is separated by two new lines.
user