Well yeah here is where it opens the registry key for the PID.
Code:
004AB970 /$ A0 00436B00 MOV AL,BYTE PTR DS:[6B4300]
004AB975 |. 83EC 08 SUB ESP,8
004AB978 |. 84C0 TEST AL,AL
004AB97A |. 75 5E JNZ SHORT haloce.004AB9DA
004AB97C |. 8D0424 LEA EAX,DWORD PTR SS:[ESP]
004AB97F |. 50 PUSH EAX ; /pHandle
004AB980 |. 68 19000200 PUSH 20019 ; |Access = KEY_READ
004AB985 |. 6A 00 PUSH 0 ; |Reserved = 0
004AB987 |. 68 B4A36000 PUSH haloce.0060A3B4 ; |Subkey = "Software\Microsoft\Microsoft Games\Halo CE"
004AB98C |. 68 02000080 PUSH 80000002 ; |hKey = HKEY_LOCAL_MACHINE
004AB991 |. C74424 18 2000>MOV DWORD PTR SS:[ESP+18],20 ; |
004AB999 |. C605 00436B00 >MOV BYTE PTR DS:[6B4300],1 ; |
004AB9A0 |. FF15 34F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegOpenKey>; \RegOpenKeyExA
004AB9A6 |. 85C0 TEST EAX,EAX
004AB9A8 |. 75 30 JNZ SHORT haloce.004AB9DA
004AB9AA |. 8B1424 MOV EDX,DWORD PTR SS:[ESP]
004AB9AD |. 8D4C24 04 LEA ECX,DWORD PTR SS:[ESP+4]
004AB9B1 |. 51 PUSH ECX ; /pBufSize
004AB9B2 |. 68 04436B00 PUSH haloce.006B4304 ; |Buffer = haloce.006B4304
004AB9B7 |. 50 PUSH EAX ; |pValueType
004AB9B8 |. 50 PUSH EAX ; |Reserved
004AB9B9 |. 68 B0A36000 PUSH haloce.0060A3B0 ; |ValueName = "PID"
004AB9BE |. 52 PUSH EDX ; |hKey
004AB9BF |. FF15 28F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegQueryVa>; \RegQueryValueExA
004AB9C5 |. 85C0 TEST EAX,EAX
004AB9C7 |. 74 07 JE SHORT haloce.004AB9D0
004AB9C9 |. C605 04436B00 >MOV BYTE PTR DS:[6B4304],0
004AB9D0 |> 8B0424 MOV EAX,DWORD PTR SS:[ESP]
004AB9D3 |. 50 PUSH EAX ; /hKey
004AB9D4 |. FF15 38F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegCloseKe>; \RegCloseKey
004AB9DA |> B8 04436B00 MOV EAX,haloce.006B4304
004AB9DF |. 83C4 08 ADD ESP,8
004AB9E2 \. C3 RETN
Here is the code for the Digital Product ID
Code:
005830D0 /$ 81EC C8000000 SUB ESP,0C8
005830D6 |. 53 PUSH EBX
005830D7 |. 8D4424 04 LEA EAX,DWORD PTR SS:[ESP+4]
005830DB |. 50 PUSH EAX ; /pHandle
005830DC |. 33DB XOR EBX,EBX ; |
005830DE |. 68 19000200 PUSH 20019 ; |Access = KEY_READ
005830E3 |. 53 PUSH EBX ; |Reserved => 0
005830E4 |. 68 B4A36000 PUSH haloce.0060A3B4 ; |Subkey = "Software\Microsoft\Microsoft Games\Halo CE"
005830E9 |. 68 02000080 PUSH 80000002 ; |hKey = HKEY_LOCAL_MACHINE
005830EE |. 881D E0DD6B00 MOV BYTE PTR DS:[6BDDE0],BL ; |
005830F4 |. C74424 24 0004>MOV DWORD PTR SS:[ESP+24],400 ; |
005830FC |. 895C24 1C MOV DWORD PTR SS:[ESP+1C],EBX ; |
00583100 |. 895C24 20 MOV DWORD PTR SS:[ESP+20],EBX ; |
00583104 |. FF15 34F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegOpenKey>; \RegOpenKeyExA
0058310A |. 85C0 TEST EAX,EAX
0058310C |. 75 2B JNZ SHORT haloce.00583139
0058310E |. 8B4424 04 MOV EAX,DWORD PTR SS:[ESP+4]
00583112 |. 8D4C24 10 LEA ECX,DWORD PTR SS:[ESP+10]
00583116 |. 51 PUSH ECX ; /pBufSize
00583117 |. 8D5424 2C LEA EDX,DWORD PTR SS:[ESP+2C] ; |
0058311B |. 52 PUSH EDX ; |Buffer
0058311C |. 53 PUSH EBX ; |pValueType => NULL
0058311D |. 53 PUSH EBX ; |Reserved => NULL
0058311E |. 68 B4216100 PUSH haloce.006121B4 ; |ValueName = "DigitalProductID"
00583123 |. 50 PUSH EAX ; |hKey
00583124 |. FF15 28F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegQueryVa>; \RegQueryValueExA
0058312A |. 85C0 TEST EAX,EAX
0058312C |. 74 18 JE SHORT haloce.00583146
0058312E |. 8B4C24 04 MOV ECX,DWORD PTR SS:[ESP+4]
00583132 |. 51 PUSH ECX ; /hKey
00583133 |. FF15 38F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegCloseKe>; \RegCloseKey
00583139 |> B8 5C365F00 MOV EAX,haloce.005F365C
0058313E |. 5B POP EBX
0058313F |. 81C4 C8000000 ADD ESP,0C8
00583145 |. C3 RETN
00583146 |> 8B5424 04 MOV EDX,DWORD PTR SS:[ESP+4]
0058314A |. 52 PUSH EDX ; /hKey
I'll look into what it does with it
Bookmarks