Function at 0x10048f80
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1005bbeb
mov eax, dword fs:[0]
push eax
sub esp, 0x240
mov eax, dword [0x10072f40]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
push 0x200
lea eax, [ebp - 0x210]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x24c], 0x200
xorps xmm0, xmm0
mov dword [ebp - 0x218], 0
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x214], 0
mov esi, 0x80004005
push 0x20
push str.HARDWAREDESCRIPTIONSystemBIOS
movups xmmword [ebp - 0x228], xmm0
call fcn.10001e10
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x248]
cmp dword [ebp - 0x214], 8
lea eax, [ebp - 0x228]
push ecx
cmovae eax, dword [ebp - 0x228]
lea ecx, [ebp - 0x244]
push ecx
push 0
push 0x101
push 0
push 0
push 0
push eax
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x248], 0
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x10049094
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x210]
push eax
push 0
push 0
push str.BaseBoardProduct
push dword [ebp - 0x244]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x244]
xor ecx, ecx
test eax, eax
cmove esi, ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x214]
cmp ecx, 8
jb 0x100490dd
mov edx, dword [ebp - 0x228]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100490d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100490d3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005024f
add esp, 8
xor eax, eax
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 7
mov word [ebp - 0x228], ax
test esi, esi
jns 0x10049108
mov eax, 0x80004005
jmp 0x10049223
xorps xmm0, xmm0
mov dword [ebp - 0x230], eax
lea ecx, [ebp - 0x210]
mov dword [ebp - 0x22c], eax
movups xmmword [ebp - 0x240], xmm0
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10049127
sub ecx, edx
lea eax, [ebp - 0x210]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x240]
call fcn.10001e10
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x240]
push 0
push str.B550_Taichi_Razer_Edition
call fcn.10049240
cmp eax, 0xffffffff
je 0x10049172
mov dword [edi + 4], 0
xor esi, esi
jmp 0x100491bb
push 0
push str.X570_Taichi_Razer_Edition
lea ecx, [ebp - 0x240]
call fcn.10049240
cmp eax, 0xffffffff
je 0x10049194
mov dword [edi + 4], 0x80
xor esi, esi
jmp 0x100491bb
push 0
push str.Z690_Taichi_Razer_Edition
lea ecx, [ebp - 0x240]
call fcn.10049240
cmp eax, 0xffffffff
je 0x100491b6
mov dword [edi + 4], 0x81
xor esi, esi
jmp 0x100491bb
mov esi, 0x80004005
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x22c]
cmp ecx, 8
jb 0x10049204
mov edx, dword [ebp - 0x240]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100491fa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100491fa
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1005024f
add esp, 8
xor eax, eax
mov dword [ebp - 0x230], 0
mov word [ebp - 0x240], ax
mov eax, esi
mov dword [ebp - 0x22c], 7
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1005078e
mov esp, ebp
pop ebp
ret 0xc