Add generation for remaining, fix invalid fseek().
diff --git a/generator/sections/gen-section-memory.c b/generator/sections/gen-section-memory.c
new file mode 100644
index 0000000..dfa713f
--- /dev/null
+++ b/generator/sections/gen-section-memory.c
@@ -0,0 +1,59 @@
+/**
+ * Functions for generating psuedo-random CPER platform memory error sections.
+ * 
+ * Author: Lawrence.Tang@arm.com
+ **/
+
+#include <stdlib.h>
+#include "../../edk/BaseTypes.h"
+#include "../gen-utils.h"
+#include "gen-sections.h"
+
+//Generates a single psuedo-random platform memory error section, saving the resulting address to the given
+//location. Returns the size of the newly created section.
+size_t generate_section_memory(void** location)
+{
+    //Create random bytes.
+    int size = 80;
+    UINT8* bytes = generate_random_bytes(size);
+    
+    //Set reserved areas to zero.
+    UINT64* validation = (UINT64*)bytes;
+    *validation &= 0x2FFFFF; //Validation 22-63
+    *(bytes + 73) &= ~0b11100; //Extended bits 2-4
+
+    //Fix values that could be above range.
+    *(bytes + 72) = rand() % 16; //Memory error type
+
+    //Fix error status.
+    create_valid_error_section(bytes + 8);
+
+    //Set return values, exit.
+    *location = bytes;
+    return size;
+}
+
+//Generates a single psuedo-random memory 2 error section, saving the resulting address to the given
+//location. Returns the size of the newly created section.
+size_t generate_section_memory2(void** location)
+{
+    //Create random bytes.
+    int size = 96;
+    UINT8* bytes = generate_random_bytes(size);
+    
+    //Set reserved areas to zero.
+    UINT64* validation = (UINT64*)bytes;
+    *validation &= 0x2FFFFF; //Validation 22-63
+    *(bytes + 63) = 0; //Reserved byte 63
+
+    //Fix values that could be above range.
+    *(bytes + 61) = rand() % 16; //Memory error type
+    *(bytes + 62) = rand() % 2; //Status
+
+    //Fix error status.
+    create_valid_error_section(bytes + 8);
+
+    //Set return values, exit.
+    *location = bytes;
+    return size;
+}
\ No newline at end of file