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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x864
mov eax, dword [0x10016018]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.HARDWAREACPIDSDT_
lea eax, [ebp - 0x210]
push 0x104
push eax
mov dword [ebp - 0x82c], edx
mov dword [ebp - 0x838], ecx
mov dword [ebp - 0x834], 0x104
mov dword [ebp - 0x828], 0x100
call dword [sym.imp.MSVCR110.dll_wcscpy_s]
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, dword [sym.imp.MSVCR110.dll_wcscat_s]
add esp, 0xc
lea eax, [ebp - 0x824]
push eax
push 0x109
push 0
lea eax, [ebp - 0x210]
push eax
push 0x80000002
mov dword [ebp - 0x83c], 0x104
call esi
test eax, eax
je 0x100010b0
lea eax, [ebp - 0x824]
push eax
push 0x209
push 0
lea eax, [ebp - 0x210]
push eax
push 0x80000002
call esi
test eax, eax
jne 0x10001171
lea eax, [ebp - 0x854]
push eax
lea eax, [ebp - 0x848]
push eax
lea eax, [ebp - 0x844]
push eax
lea eax, [ebp - 0x84c]
push eax
lea eax, [ebp - 0x830]
push eax
lea eax, [ebp - 0x858]
push eax
lea eax, [ebp - 0x860]
push eax
lea eax, [ebp - 0x85c]
push eax
push 0
lea eax, [ebp - 0x834]
push eax
lea eax, [ebp - 0x820]
push eax
push dword [ebp - 0x824]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
test eax, eax
jne 0x10001236
lea eax, [ebp - 0x854]
push eax
push 0
push 0
push 0
lea eax, [ebp - 0x83c]
push eax
lea eax, [ebp - 0x618]
push eax
push 0
push dword [ebp - 0x824]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x1000117c
push 0x10010498
lea eax, [ebp - 0x210]
push 0x104
push eax
call edi
lea eax, [ebp - 0x618]
push eax
lea eax, [ebp - 0x210]
push 0x104
push eax
call edi
add esp, 0x18
push dword [ebp - 0x824]
call ebx
jmp 0x10001062
push eax
push str.RegOpenKeyEx___Badness:_0x_08X_n
jmp 0x1000123c
cmp eax, 0x103
je 0x1000118e
push eax
push str.RegEnumKeyEx___Badness:_0x_08X_n
jmp 0x1000123c
cmp dword [ebp - 0x830], 0
jne 0x100011b4
push str.Couldnt_find_the_DSDT_n
call dword [sym.imp.MSVCR110.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR110.dll_fprintf]
add esp, 8
jmp 0x1000124f
mov ecx, dword [ebp - 0x838]
xor eax, eax
mov word [ebp - 0x410], ax
mov eax, dword [ebp - 0x82c]
test ecx, ecx
je 0x100011d6
cmp dword [eax], 0
je 0x100011d6
push eax
push ecx
jmp 0x100011d9
push eax
push 0
lea eax, [ebp - 0x840]
push eax
push 0
lea eax, [ebp - 0x828]
push eax
lea eax, [ebp - 0x410]
push eax
push 0
push dword [ebp - 0x824]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
je 0x1000121b
push eax
push str.RegEnumValue___Badness:_0x_08X_n
call dword [sym.imp.MSVCR110.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR110.dll_fprintf]
add esp, 0xc
push dword [ebp - 0x824]
call ebx
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1000e3b2
mov esp, ebp
pop ebp
ret
push eax
push str.RegQueryInfoKey___Badness:_0x_08X_n
call dword [sym.imp.MSVCR110.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR110.dll_fprintf]
add esp, 0xc
push dword [ebp - 0x824]
call ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
xor al, al
pop ebx
call fcn.1000e3b2
mov esp, ebp
pop ebp
ret