Function at 0x485f60
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
sub esp, 0x90
mov eax, 0x100
mov dword [0x82dce4], eax
mov dword [0x82dce8], eax
push ebx
push ebp
push esi
push edi
mov ebx, 1
xor ebp, ebp
mov edi, 0x10
mov esi, 4
mov eax, 0x5a
mov dword [0x82dca0], ebx
mov dword [0x82dca4], ebx
mov dword [0x82dca8], ebp
mov dword [0x82dcac], ebx
mov dword [0x82dcb0], ebx
mov dword [0x82dcb4], ebx
mov dword [0x82dcb8], ebx
mov dword [0x82dcc0], ebp
mov dword [0x82dcd4], 0x280
mov dword [0x82dcd8], 0x1e0
mov dword [0x82dcdc], edi
mov dword [0x82dce0], ebx
mov dword [0x82dcec], esi
mov dword [0x82dcf0], ebp
mov dword [0x82dcf4], ebx
mov dword [0x82dcf8], ebp
mov dword [0x82dcfc], edi
mov dword [0x82dd00], ebx
mov dword [0x82dd38], 0xffffffff
mov dword [0x82dd3c], 0xa
mov dword [0x82dd40], eax
mov dword [0x82dd44], 2
mov dword [0x82dd48], ebx
mov dword [0x82dcbc], ebx
mov dword [0x82dcc8], 3
mov dword [0x82dcc4], 8
mov dword [0x82dccc], eax
mov dword [0x82dcd0], 0x46
call fcn.00420e70
push edi
push str.Player
push 0x82dd4c
call fcn.004a5090
push str.NHOOD1
push 0x82dd5c
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, 0xe
xor eax, eax
mov edi, 0x77dab8
push 0x34
rep stosd dword es:[edi], eax
push 0x77dabc
mov byte [0x82dd6c], 0
call fcn.00454080
mov dword [0x77dab8], eax
mov ecx, 0x13
xor eax, eax
mov edi, 0x77daf0
rep stosd dword es:[edi], eax
push 0xf
call fcn.0046ebd0
push 0x48
push 0x77daf4
mov dword [0x77daf8], eax
call fcn.00454080
add esp, 0x28
mov dword [0x77daf0], eax
lea eax, [esp + 0x18]
lea ecx, [esp + 0x14]
push eax
push ecx
push ebp
push 0xf003f
push ebp
push str.Revolt
push ebp
push str.softwareAcclaimRe_Volt1.0
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x48683d
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dca0
push ebp
push ebp
mov ebp, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push str.EnvFlag
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dca4
push 0
push 0
push str.MirrorFlag
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dca8
push 0
push 0
push str.AutoBrake
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dcac
push 0
push 0
push str.ShadowFlag
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcb0
push 0
push 0
push str.LightFlag
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dcb4
push 0
push 0
push str.InstanceFlag
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dcb8
push 0
push 0
push str.SkidFlag
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcc0
push 0
push 0
push str.CarID
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dcd4
push 0
push 0
push str.ScreenWidth
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dcd8
push 0
push 0
push str.ScreenHeight
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcdc
push 0
push 0
push str.ScreenBpp
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dce0
push 0
push 0
push str.DrawDevice
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dce4
push 0
push 0
push str.Brightness
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dce8
push 0
push 0
push str.Contrast
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dcec
push 0
push 0
push str.DrawDist
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dcf0
push 0
push 0
push str.Texture24
push eax
mov dword [esp + 0x28], esi
call ebp
mov dword [esp + 0x10], esi
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcf4
push 0
push 0
push str.Vsync
push edx
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dcf8
push 0
push 0
push str.ShowFPS
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dcfc
push 0
push 0
push str.SfxChannels
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd00
push 0
push 0
push str.MusicOn
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd38
push 0
push 0
push str.Joystick
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd3c
push 0
push 0
push str.SteeringDeadzone
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd40
push 0
push 0
push str.SteeringRange
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd44
push 0
push 0
push str.ParticleLevel
push ecx
mov dword [esp + 0x28], esi
call ebp
mov dword [esp + 0x10], esi
lea edx, [esp + 0x10]
mov eax, dword [esp + 0x14]
push edx
push 0x82dd48
push 0
push 0
push str.PlayMode
push eax
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcbc
push 0
push 0
push str.Pickups
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dcc8
push 0
push 0
push str.NLaps
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dccc
push 0
push 0
push str.SFXVol
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dcd0
push 0
push 0
push str.MusicVol
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd04
push 0
push 0
push str.KeyLeft
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd08
push 0
push 0
push str.KeyRight
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd0c
push 0
push 0
push str.KeyFwd
push edx
mov dword [esp + 0x28], esi
call ebp
lea eax, [esp + 0x10]
mov dword [esp + 0x10], esi
push eax
mov ecx, dword [esp + 0x18]
push 0x82dd10
push 0
push 0
push str.KeyBack
push ecx
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd14
push 0
push 0
push str.KeyFire
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd18
push 0
push 0
push str.KeyReset
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd1c
push 0
push 0
push str.KeyReposition
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd20
push 0
push 0
push str.KeyHonka
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd24
push 0
push 0
push str.KeyHandbrake
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd28
push 0
push 0
push str.KeySelWeapon
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd2c
push 0
push 0
push str.KeySelCamera
push eax
mov dword [esp + 0x28], esi
call ebp
lea ecx, [esp + 0x10]
mov dword [esp + 0x10], esi
push ecx
push 0x82dd30
mov edx, dword [esp + 0x1c]
push 0
push 0
push str.KeyFullBrake
push edx
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd34
push 0
push 0
push str.KeyPause
push ecx
mov dword [esp + 0x28], esi
call ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x10]
push edx
push 0x82dd4c
push 0
push 0
mov esi, 0x10
push str.PlayerName
push eax
mov dword [esp + 0x28], esi
call ebp
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ecx
push 0x82dd5c
push 0
push 0
push str.LevelDir
push edx
mov dword [esp + 0x28], esi
call ebp
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x10]
push eax
push 0x82dd6c
push 0
push 0
push str.HostComputer
push ecx
mov dword [esp + 0x28], 0x21
call ebp
mov ecx, 0xe
xor eax, eax
lea edi, [esp + 0x1c]
lea edx, [esp + 0x10]
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x1c]
push edx
push eax
push 0
push 0
push str.LevelSecrets
push ecx
mov dword [esp + 0x28], 0x38
call ebp
lea edx, [esp + 0x20]
push 0x34
push edx
call fcn.00454080
mov ecx, dword [esp + 0x24]
add esp, 8
cmp eax, ecx
jne 0x4866a6
mov ecx, 0xe
lea esi, [esp + 0x1c]
mov edi, 0x77dab8
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x13
xor eax, eax
lea edi, [esp + 0x54]
mov edx, dword [esp + 0x14]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x10]
lea ecx, [esp + 0x54]
push eax
push ecx
push 0
push 0
push str.StarList
push edx
mov dword [esp + 0x28], 0x4c
call ebp
lea eax, [esp + 0x58]
push 0x48
push eax
call fcn.00454080
mov ecx, dword [esp + 0x5c]
add esp, 8
cmp eax, ecx
jne 0x4866fc
mov ecx, 0x13
lea esi, [esp + 0x54]
mov edi, 0x77daf0
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x82dca0]
mov edx, dword [0x82dca4]
mov eax, dword [0x82dca8]
mov dword [0x847658], ecx
mov ecx, dword [0x82dcac]
mov dword [0x847654], edx
mov edx, dword [0x82dcb0]
mov dword [0x784ed4], eax
mov eax, dword [0x82dcb4]
mov dword [0x84765c], ecx
mov ecx, dword [0x82dcb8]
mov dword [0x847664], edx
mov edx, dword [0x82dcc0]
mov dword [0x847668], eax
mov eax, dword [0x82dcbc]
mov dword [0x847660], ecx
mov ecx, dword [0x82dcc8]
mov dword [0x847638], edx
mov edx, dword [0x82dcc4]
mov dword [0x847604], eax
mov eax, dword [0x82dccc]
mov dword [0x8475e0], ecx
mov ecx, dword [0x82dcd0]
mov dword [0x8475e4], edx
mov edx, dword [0x82dd44]
mov dword [0x8475ec], eax
mov eax, dword [0x82dd48]
push 0x10
push 0x82dd4c
push 0x847624
mov dword [0x8475f0], ecx
mov dword [0x847608], edx
mov dword [0x847618], eax
call fcn.004a5090
add esp, 0xc
call fcn.00421020
mov eax, dword [0x4ba86c]
cmp eax, 0xffffffff
je 0x4867ce
mov dword [0x82dce0], eax
mov edx, dword [0x785084]
test edx, edx
je 0x4867fc
mov ecx, dword [0x785088]
test ecx, ecx
je 0x4867fc
mov eax, dword [0x78508c]
test eax, eax
je 0x4867fc
mov dword [0x82dcd4], edx
mov dword [0x82dcd8], ecx
mov dword [0x82dcdc], eax
mov eax, dword [0x4ba870]
cmp eax, 0xffffffff
je 0x48680b
mov dword [0x82dcf0], eax
mov edi, str.v1.00
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esp + 0x18]
push str.v1.00
push ebx
push eax
push str.Version
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [esp + 0x14]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x90
ret