Function at 0x140012c90
Capabilities:
Link many functions at runtime
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0xa0
mov rax, qword [0x14022b078]
xor rax, rsp
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x38]
movaps xmmword [rsp + 0x90], xmm6
mov edi, 1
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
mov dword [rsp + 0x34], edi
xor r8d, r8d
mov dword [rsp + 0x30], 0x20
lea rdx, str.SOFTWAREMicrosoftWindows_NTCurrentVersion_
mov rcx, 0xffffffff80000002
xorps xmm6, xmm6
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov rcx, qword [rsp + 0x38]
test eax, eax
jne 0x140012d3e
lea rax, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
lea rax, [rsp + 0x40]
lea rdx, str.CurrentVersion
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rcx, [rsp + 0x40]
call fcn.14016bf84
movaps xmm6, xmm0
jmp 0x140012d44
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
comisd xmm6, xmmword [str.333333]
mov eax, esi
movaps xmm6, xmmword [rsp + 0x90]
setae al
mov dword [0x140382350], eax
test eax, eax
je 0x140012fd3
mov qword [rsp + 0xb0], rbx
lea rcx, str.Wlanapi.dll
xor edx, edx
mov r8d, 0x1000
xor bl, bl
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov qword [0x140382340], rax
test rax, rax
je 0x140012f53
lea rdx, str.WlanOpenHandle
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanCloseHandle
mov qword [0x140382748], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanEnumInterfaces
mov qword [0x140382668], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanFreeMemory
mov qword [0x140382758], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanGetAvailableNetworkList
mov qword [0x140382768], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanQueryInterface
mov qword [0x140382740], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanGetNetworkBssList
mov qword [0x140382750], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140382340]
lea rdx, str.WlanSetInterface
mov qword [0x140382760], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x140382748], rsi
mov qword [0x1403826c8], rax
je 0x140012f38
cmp qword [0x140382668], rsi
jne 0x140012ea6
mov rcx, qword [0x140382340]
lea rdx, str.WlanCloseHandle
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
movzx ebx, bl
mov qword [0x140382668], rax
cmove ebx, edi
cmp qword [0x140382758], rsi
movzx eax, bl
cmove eax, edi
cmp qword [0x140382768], rsi
movzx ebx, al
cmove ebx, edi
cmp qword [0x140382760], rsi
jne 0x140012eed
mov rcx, qword [0x140382340]
lea rdx, str.WlanGetNetworkBssList
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
movzx ebx, bl
mov qword [0x140382760], rax
cmove ebx, edi
cmp qword [0x140382740], rsi
jne 0x140012f1a
mov rcx, qword [0x140382340]
lea rdx, str.WlanGetAvailableNetworkList
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
movzx ebx, bl
mov qword [0x140382740], rax
cmove ebx, edi
cmp qword [0x140382750], rsi
movzx eax, bl
cmove eax, edi
cmp qword [0x1403826c8], rsi
je 0x140012f38
test al, al
jne 0x140012f38
mov ebx, edi
jmp 0x140012f55
mov rcx, qword [0x140382340]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140382340], rsi
mov qword [0x140382748], rsi
mov ebx, esi
xor eax, eax
mov dword [0x140382350], ebx
xor edx, edx
mov qword [0x14023a378], rax
mov r8d, 0x204
mov qword [0x14023a380], rax
lea rcx, [0x14023a388]
mov qword [0x14023a370], rdi
mov dword [0x14023a58c], 0xffffffff
call fcn.14015e120
xor eax, eax
mov qword [0x14023a7d0], 2
xor edx, edx
mov qword [0x14023a7d8], rax
mov r8d, 0x204
mov qword [0x14023a7e0], rax
lea rcx, [0x14023a7e8]
mov dword [0x14023a9ec], 0xffffffff
call fcn.14015e120
mov eax, ebx
mov rbx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14013f550
mov rsi, qword [rsp + 0xb8]
add rsp, 0xa0
pop rdi
ret