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

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x770]
sub rsp, 0x870
mov rax, qword [0x180045020]
xor rax, rsp
mov qword [rbp + 0x760], rax
mov rsi, rcx
lea rax, [rsp + 0x50]
mov rcx, 0xffffffff80000002
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
lea rdx, str.SYSTEMCurrentControlSetControlClass4D36E972_E325_11CE_BFC1_08002BE10318
xor r8d, r8d
xor dil, dil
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x180003e5c
xor al, al
jmp 0x180004086
mov rcx, qword [rsp + 0x50]
lea r9, [rsp + 0x40]
mov qword [rsp + 0x898], rbx
lea r8, [rbp + 0x360]
mov qword [rsp + 0x8a0], r14
xor edx, edx
xor r14d, r14d
mov dword [rsp + 0x40], 0x200
mov qword [rsp + 0x38], r14
mov ebx, r14d
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x180004067
nop
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x48]
mov r9d, 0x20019
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [rbp + 0x360]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x180004018
mov rcx, qword [rsp + 0x48]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x44]
lea rax, [rbp + 0x560]
mov dword [rsp + 0x40], 0x200
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.NetCfgInstanceId
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x18000400d
cmp dword [rsp + 0x44], 1
jne 0x18000400d
mov rcx, qword [rsp + 0x48]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x44]
lea rax, [rbp + 0x160]
mov word [rbp + 0x160], r14w
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [0x1800168b8]
mov dword [rsp + 0x40], 0x200
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rsp + 0x48]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x44]
lea rax, [rsp + 0x60]
mov word [rsp + 0x60], r14w
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.ProviderName
mov dword [rsp + 0x40], 0x200
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rdx, rsi
lea rcx, [rbp + 0x560]
call fcn.18000ad80
test eax, eax
jne 0x18000400d
lea rdx, str.VirtualBox_TAP_Adapter
lea rcx, [rbp + 0x160]
call fcn.18000ad80
test eax, eax
jne 0x18000400d
lea rdx, str.innotek_GmbH
lea rcx, [rsp + 0x60]
call fcn.18000ad80
test eax, eax
je 0x180004059
lea rdx, str.Sun_Microsystems__Inc.
lea rcx, [rsp + 0x60]
call fcn.18000ad80
test eax, eax
je 0x180004059
lea rdx, [0x180016970]
lea rcx, [rsp + 0x60]
call fcn.18000ad80
test eax, eax
je 0x180004059
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x50]
lea r9, [rsp + 0x40]
mov qword [rsp + 0x38], r14
lea r8, [rbp + 0x360]
mov qword [rsp + 0x30], r14
inc ebx
mov qword [rsp + 0x28], r14
mov edx, ebx
mov qword [rsp + 0x20], r14
mov dword [rsp + 0x40], 0x200
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
je 0x180003eb0
jmp 0x180004067
mov rcx, qword [rsp + 0x48]
mov dil, 1
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov r14, qword [rsp + 0x8a0]
movzx eax, dil
mov rbx, qword [rsp + 0x898]
mov rcx, qword [rbp + 0x760]
xor rcx, rsp
call fcn.180001140
add rsp, 0x870
pop rdi
pop rsi
pop rbp
ret