Function at 0x40137e
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10c
lea eax, [ebp - 0x10c]
push eax
mov ecx, dword [str.SoftwareBlizzard_EntertainmentStarcraft]
push ecx
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
test eax, eax
je 0x4013ab
xor eax, eax
jmp 0x40190b
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x108]
push eax
call fcn.00401910
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveBackslashA]
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.InstallPath
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.StarEdit
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea edx, [ebp - 0x108]
push edx
call fcn.00404186
add esp, 4
lea eax, [ebp - 0x108]
push eax
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x108]
push ecx
push 1
push 0
push str.StarCD
mov edx, dword [ebp - 0x10c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push str.Starcraft.exe
lea eax, [ebp - 0x108]
push eax
call fcn.00401920
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea edx, [ebp - 0x108]
push edx
push 1
push 0
push str.Program
mov eax, dword [ebp - 0x10c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x406218
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401910
add esp, 8
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.Retail
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.Brood_War
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov dword [ebp - 4], 0
push 2
lea edx, [ebp - 4]
push edx
push 3
push 0
push str.Recent_Maps
mov eax, dword [ebp - 0x10c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea edx, [ebp - 0x10c]
push edx
mov eax, dword [str.SoftwareBlizzard_EntertainmentStarcraftDelOpt0]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
test eax, eax
je 0x401575
xor eax, eax
jmp 0x40190b
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x108]
push edx
call fcn.00401910
add esp, 8
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashA]
push str.characters
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401920
add esp, 8
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push 0x406248
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push 0x406250
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x406258
lea edx, [ebp - 0x108]
push edx
call fcn.00401910
add esp, 8
lea eax, [ebp - 0x108]
push eax
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x108]
push ecx
push 1
push 0
push 0x40625c
mov edx, dword [ebp - 0x10c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x406264
lea eax, [ebp - 0x108]
push eax
call fcn.00401910
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea edx, [ebp - 0x108]
push edx
push 1
push 0
push 0x406268
mov eax, dword [ebp - 0x10c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea edx, [ebp - 0x10c]
push edx
mov eax, dword [str.SoftwareBlizzard_EntertainmentStarcraftDelOpt1]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
test eax, eax
je 0x4016c1
xor eax, eax
jmp 0x40190b
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x108]
push edx
call fcn.00401910
add esp, 8
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashA]
push str.save
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401920
add esp, 8
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.Path0
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.Path2
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [ebp + 0xc]
push edx
lea eax, [ebp - 0x108]
push eax
call fcn.00401910
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathAddBackslashA]
push str.maps_save
lea edx, [ebp - 0x108]
push edx
call fcn.00401920
add esp, 8
lea eax, [ebp - 0x108]
push eax
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x108]
push ecx
push 1
push 0
push str.Path1
mov edx, dword [ebp - 0x10c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
lea eax, [ebp - 0x108]
push eax
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x108]
push ecx
push 1
push 0
push str.Path3
mov edx, dword [ebp - 0x10c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x4062a4
lea eax, [ebp - 0x108]
push eax
call fcn.00401910
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea edx, [ebp - 0x108]
push edx
push 1
push 0
push str.File0
mov eax, dword [ebp - 0x10c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x4062b0
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401910
add esp, 8
lea edx, [ebp - 0x108]
push edx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea eax, [ebp - 0x108]
push eax
push 1
push 0
push str.File1
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x4062bc
lea edx, [ebp - 0x108]
push edx
call fcn.00401910
add esp, 8
lea eax, [ebp - 0x108]
push eax
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea ecx, [ebp - 0x108]
push ecx
push 1
push 0
push str.File2
mov edx, dword [ebp - 0x10c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 0x4062c8
lea eax, [ebp - 0x108]
push eax
call fcn.00401910
add esp, 8
lea ecx, [ebp - 0x108]
push ecx
call fcn.00401a00
add esp, 4
add eax, 1
push eax
lea edx, [ebp - 0x108]
push edx
push 1
push 0
push str.File3
mov eax, dword [ebp - 0x10c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [ebp - 0x10c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
mov esp, ebp
pop ebp
ret