Function at 0x4028ac
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xa18
mov dword [ebp - 0xa18], ecx
push str._nInside_CDataManager::GetNationForFatal__
call fcn.00401000
add esp, 4
mov dword [ebp - 4], 0
call fcn.004045b0
mov dword [ebp - 0x508], eax
mov eax, dword [ebp - 0x508]
mov ecx, dword [eax + 0xec]
push ecx
push 0x45c7a0
lea edx, [ebp - 0x504]
push edx
call fcn.0042a6b4
add esp, 0xc
lea eax, [ebp - 0x504]
push eax
push str.m_szLangRegKey___s
call fcn.00401000
add esp, 8
mov dword [ebp - 4], pe_nt_image_headers32
lea ecx, [ebp - 0x614]
push ecx
push 0x20019
push 0
lea edx, [ebp - 0x504]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4029c4
lea eax, [ebp - 0x610]
push eax
push 0
push 0
push 0
lea ecx, [ebp - 4]
push ecx
lea edx, [ebp - 0x608]
push edx
push 0
mov eax, dword [ebp - 0x614]
push eax
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
test eax, eax
jne 0x4029a1
lea ecx, [ebp - 0x608]
push ecx
lea edx, [ebp - 0x504]
push edx
push 0x45c7b8
lea eax, [ebp - 0xa14]
push eax
call fcn.0042a6b4
add esp, 0x10
lea ecx, [ebp - 0xa14]
push ecx
push str.Total_First_Key_is__s
call fcn.00401000
add esp, 8
jmp 0x4029b5
mov edx, dword [ebp - 0x614]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x402b09
mov eax, dword [ebp - 0x614]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4029cb
xor eax, eax
jmp 0x402b09
mov dword [ebp - 4], pe_nt_image_headers32
lea ecx, [ebp - 0x614]
push ecx
push 0x20019
push 0
lea edx, [ebp - 0xa14]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x402a40
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x104]
push ecx
push 0
push 0
push 0x45c7d8
mov edx, dword [ebp - 0x614]
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x402a1d
jmp 0x402a31
mov eax, dword [ebp - 0x614]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x402b09
mov ecx, dword [ebp - 0x614]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x402a47
xor eax, eax
jmp 0x402b09
mov dword [ebp - 4], pe_nt_image_headers32
lea edx, [ebp - 0x104]
push edx
push str.SoftwareSSPrint_s
lea eax, [ebp - 0x504]
push eax
call fcn.0042a6b4
add esp, 0xc
lea ecx, [ebp - 0x504]
push ecx
push str.Language_path_is__s
call fcn.00401000
add esp, 8
lea edx, [ebp - 0x614]
push edx
push 0x20019
push 0
lea eax, [ebp - 0x504]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x402b07
lea ecx, [ebp - 4]
push ecx
lea edx, [ebp - 0x104]
push edx
push 0
push 0
push 0x45c810
mov eax, dword [ebp - 0x614]
push eax
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x402af6
lea ecx, [ebp - 0x104]
push ecx
mov edx, dword [ebp - 0xa18]
add edx, 0x278c
push edx
call fcn.00429bd0
add esp, 8
mov eax, dword [ebp - 0x614]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
jmp 0x402b09
mov ecx, dword [ebp - 0x614]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x402b09
xor eax, eax
mov esp, ebp
pop ebp
ret