Store the last error code at the TEB offset used by NT instead of the
Win9x one.

diff --git a/include/thread.h b/include/thread.h
index 0dc27e1..f0caf18 100644
--- a/include/thread.h
+++ b/include/thread.h
@@ -68,7 +68,7 @@
     WORD         pad1;           /* --n  2a */
     PVOID        ThreadLocalStoragePointer; /* 1--  2c Pointer to TLS array */
     PEB         *Peb;            /* 12-  30 owning process PEB */
-    DWORD	 flags;	         /* 1-n  34 */
+    DWORD        LastErrorValue; /* -2-  34 Last error code */
     DWORD        exit_code;      /* 1--  38 Termination status */
     WORD         teb_sel;        /* 1--  3c Selector to TEB */
     WORD         emu_sel;        /* 1-n  3e 80387 emulator selector */
diff --git a/include/winbase.h b/include/winbase.h
index 47315ca..25d8224 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -1903,7 +1903,7 @@
 extern inline DWORD WINAPI GetLastError(void)
 {
     DWORD ret;
-    __asm__ __volatile__( ".byte 0x64\n\tmovl 0x60,%0" : "=r" (ret) );
+    __asm__ __volatile__( ".byte 0x64\n\tmovl 0x34,%0" : "=r" (ret) );
     return ret;
 }
 
@@ -1926,7 +1926,7 @@
 extern inline void WINAPI SetLastError( DWORD err );
 extern inline void WINAPI SetLastError( DWORD err )
 {
-    __asm__ __volatile__( ".byte 0x64\n\tmovl %0,0x60" : : "r" (err) : "memory" );
+    __asm__ __volatile__( ".byte 0x64\n\tmovl %0,0x34" : : "r" (err) : "memory" );
 }
 
 extern inline HANDLE WINAPI GetProcessHeap(void);