---PART ONE OF CODE---

PEP:
d[40301Ch] = GlobalAlloc(NULL, 400h)
   d[40301Ch] now contains hMemBlock;
RegOpenKeyExA(HKEY_LOCAL_MACHINE,"ficken\MACHT\",0,KEY_ALL_ACCESS,40300Eh)
   d[40300Eh] now contains hKey;
RegQueryValueExA([hKey],"laune",0,403018h,[hMemBlock],400h)
   d[403018h] now contains keytype;
RegCloseKey([hKey]);

Explanation:
Code should be stored in the register in the key HKEY_LOCAL_MACHINE\ficken\MACHT\laune


---PART TWO OF CODE---

Next is raw deadlisting, no API.

:00401076 A11C304000              mov eax, dword ptr [0040301C]      ;eax is d[hMemBlock]
:0040107B 50                      push eax                           ;store eax on stack
:0040107C 668138E9FB              cmp word ptr [eax], FBE9           ;w[eax] == FBE9?
:00401081 753F                    jne 004010C2                       ;no  -> 4010C2h
:00401083 FFD0                    call eax                           ;yes -> eax
:00401085 58                      pop eax                            ;restore eax from stack
:00401086 3B051C304000            cmp eax, dword ptr [0040301C]      ;eax == d[hMemBlock]?
:0040108C 7546                    jne 004010D4                       ;no  -> 4010D4h
:0040108E 81782364656669          cmp dword ptr [eax+23], 69666564   ;d[eax+23h] == 'defi'?
:00401095 753D                    jne 004010D4                       ;no  -> 4010D4h
:00401097 81781764656669          cmp dword ptr [eax+17], 69666564   ;d[eax+17h] == 'defi'?
:0040109E 7534                    jne 004010D4                       ;no -> 4010D4h
:004010A0 33C9                    xor ecx, ecx                       ;ecx=0
:004010A2 8A484B                  mov cl, byte ptr [eax+4B]          ;cl=b[eax+4Bh]
:004010A5 8A683B                  mov ch, byte ptr [eax+3B]          ;ch=b[eax+3Bh]
:004010A8 32CD                    xor cl, ch                         ;cl^=ch
:004010AA C1E10A                  shl ecx, 0A                        ;ecx<<10
:004010AD 660B485E                or cx, word ptr [eax+5E]           ;some
:004010B1 C1C911                  ror ecx, 11                        ;more
:004010B4 33889D000000            xor ecx, dword ptr [eax+0000009D]  ;xor ecx,d[exa+9Dh]
:004010BA 3B88FA000000            cmp ecx, dword ptr [eax+000000FA]  ;ecx==[eax+0FAh]
:004010C0 7512                    jne 004010D4                       ;no  -> 4010D4h

---JUMPS---

004010C2h :
     GlobalFree(hMemBlock);
     ExitProcess(0);

004010D4h:
     ExitWindowExA(EWX_FORCE,0DEADh);

---END---

 -kw-