Function at 0x140067820
Capabilities:
Query or enumerate registry value

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1030
call fcn.14022a960
sub rsp, rax
mov qword [rsp + 0x3f0], 0xfffffffffffffffe
mov qword [rsp + 0x1070], rbx
mov qword [rsp + 0x1078], rsi
mov rax, qword [0x14035c8c0]
xor rax, rsp
mov qword [rsp + 0x1020], rax
mov r13, rdx
mov r12, rcx
xor r14d, r14d
mov dword [rsp + 0x34], r14d
lea rcx, [rsp + 0x680]
call fcn.140009e28
nop
mov byte [rsp + 0x678], r14b
lea r8d, [r14 + 0x23]
lea rdx, str.srl::SetupLib::GetNetworkDeviceInfo
lea rcx, [rsp + 0x680]
call fcn.140009a80
nop
call fcn.1400224d0
cmp dword [rax + 8], 4
jl 0x1400678c2
mov byte [rsp + 0x678], 1
lea rcx, [rsp + 0x678]
call fcn.140018570
cmp byte [r12 + 0x28], 0
je 0x140068fef
mov qword [rsp + 0x80], r14
lea r8, [rsp + 0x80]
lea rdx, [0x1402d9d38]
mov rcx, r12
call fcn.14006af30
test al, al
je 0x140068a34
mov ebx, r14d
mov dword [rsp + 0x7c], ebx
xor eax, eax
mov qword [rsp + 0x5b0], rax
mov qword [rsp + 0x5b8], rax
mov qword [rsp + 0x5c0], rax
mov qword [rsp + 0x5c8], rax
mov edi, 0x20
mov dword [rsp + 0x5b0], edi
lea rdi, vtable.ATL::CAtlStringMgr.0
lea r15, vtable.ATL::CWin32Heap.0
nop dword [rax + rax]
lea r8, [rsp + 0x5b0]
mov edx, ebx
mov rsi, qword [rsp + 0x80]
mov rcx, rsi
call qword [r12 + 0x40]
test eax, eax
je 0x140068a24
inc ebx
mov dword [rsp + 0x7c], ebx
lea rcx, [rsp + 0x48]
call fcn.1400154a0
lea rcx, [rsp + 0x50]
call fcn.1400154a0
lea rcx, [rsp + 0x60]
call fcn.1400154a0
mov byte [rsp + 0x58], 0
mov word [rsp + 0x68], 0
call fcn.140011b88
mov rcx, rax
mov qword [rsp + 0x140], rax
test rax, rax
je 0x14006902b
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
cmp rax, rdi
jne 0x140069035
lock inc dword [rcx + 0x20]
mov rax, qword [rsp + 0x140]
add rax, 0x10
mov rsi, qword [rsp + 0x80]
mov qword [rsp + 0x3f8], rax
add rax, 0x18
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006a8b0
test al, al
je 0x140067a1e
mov rdx, qword [rsp + 0x38]
mov eax, dword [rdx - 0x10]
mov dword [rsp + 0x128], eax
test eax, eax
jne 0x140067a43
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006a8b0
mov rdx, qword [rsp + 0x38]
lea rcx, [rdx - 0x18]
mov qword [rsp + 0x400], rcx
mov rbx, qword [rsp + 0x48]
add rbx, 0xffffffffffffffe8
mov qword [rsp + 0x148], rbx
cmp rcx, rbx
je 0x140067b1a
cmp dword [rbx + 0x10], 0
jl 0x140067b04
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140067b04
call fcn.140002c94
mov qword [rsp + 0x150], rax
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140067ae9
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rdx]
mov qword [rsp + 0x2c0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x14006903d
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x2c8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006903d
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x150]
add rax, 0x18
mov qword [rsp + 0x48], rax
mov rsi, qword [rsp + 0x80]
jmp 0x140067b1a
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x130], r8d
lea rcx, [rsp + 0x48]
call fcn.140002a7c
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006a8b0
test al, al
je 0x140067c21
mov rdx, qword [rsp + 0x38]
lea rcx, [rdx - 0x18]
mov qword [rsp + 0x2d0], rcx
mov rbx, qword [rsp + 0x50]
add rbx, 0xffffffffffffffe8
mov qword [rsp + 0x158], rbx
cmp rcx, rbx
je 0x140067c21
cmp dword [rbx + 0x10], 0
jl 0x140067c0b
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140067c0b
call fcn.140002c94
mov qword [rsp + 0x160], rax
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140067bf0
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rdx]
mov qword [rsp + 0x2d8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x140069046
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x2e0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x140069046
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rax, qword [rsp + 0x160]
add rax, 0x18
mov qword [rsp + 0x50], rax
mov rsi, qword [rsp + 0x80]
jmp 0x140067c21
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0x134], r8d
lea rcx, [rsp + 0x50]
call fcn.140002a7c
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, SafeArrayGetDim
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006a8b0
test al, al
je 0x140067d0a
mov rbx, qword [rsp + 0x38]
movsxd rdi, dword [rbx - 0x10]
mov dword [rsp + 0x138], edi
test edi, edi
js 0x14006904f
lea rax, [rbx - 0x18]
mov qword [rsp + 0x2e8], rax
mov ecx, 1
sub ecx, dword [rax + 0x10]
mov dword [rsp + 0x13c], ecx
mov eax, dword [rax + 0xc]
sub eax, edi
mov dword [rsp + 0x1a8], eax
or eax, ecx
jge 0x140067ca0
mov edx, edi
lea rcx, [rsp + 0x38]
call fcn.140002a1c
mov rbx, qword [rsp + 0x38]
lea eax, [rdi + 1]
movsxd rdx, eax
mov rcx, rbx
call fcn.1402371bc
cmp edi, dword [rbx - 0xc]
jg 0x140069065
mov dword [rbx - 0x10], edi
mov word [rbx + rdi*2], r14w
mov eax, dword [rbx - 0x10]
mov dword [rsp + 0x1ac], eax
test eax, eax
js 0x140067d5e
lea rdx, str.pci_bus_0
mov rcx, rbx
call fcn.14022e1d8
mov qword [rsp + 0x2f0], rax
test rax, rax
je 0x140067d5e
sub rax, rbx
sar rax, 1
mov dword [rsp + 0x1b0], eax
test eax, eax
js 0x140067d5e
mov byte [rsp + 0x58], 1
lea rdi, vtable.ATL::CAtlStringMgr.0
lea rcx, [rsp + 0x6a0]
call fcn.140009e28
nop
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 9
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006a8b0
test al, al
je 0x14006880a
call fcn.140011b88
mov rcx, rax
mov qword [rsp + 0x168], rax
test rax, rax
je 0x14006905a
jmp 0x140067d65
mov byte [rsp + 0x58], 0
jmp 0x140067d03
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
cmp rax, rdi
jne 0x140069070
lock inc dword [rcx + 0x20]
mov rax, qword [rsp + 0x168]
add rax, 0x10
mov qword [rsp + 0x2f8], rax
add rax, 0x18
mov qword [rsp + 0x88], rax
lea rax, str.SYSTEMCurrentControlSetControlClass_
mov qword [rsp + 0x300], rax
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x88]
cmp rax, 0x10000
jae 0x140067dd3
movzx edx, ax
mov dword [rsp + 0xf0], edx
call fcn.140012370
mov byte [rsp + 0x30], 1
jmp 0x140067de2
mov r8d, 0x27
mov rdx, rax
call fcn.140002a7c
nop
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rdx - 0x10]
mov dword [rsp + 0xf4], r8d
lea rcx, [rsp + 0x88]
call fcn.140005f58
mov r15, r14
mov qword [rsp + 0xc0], r14
mov dword [rsp + 0xc8], r14d
mov qword [rsp + 0xd0], r14
mov qword [rsp + 0xa8], r14
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rbx, qword [rsp + 0x88]
mov rdx, rbx
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [rsp + 0x110], eax
test eax, eax
jne 0x140067e7c
mov dword [rsp + 0xc8], r14d
mov r15, qword [rsp + 0xa8]
mov qword [rsp + 0xc0], r15
mov dword [rsp + 0xc8], r14d
mov dword [rsp + 0x70], 0x7d0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x850]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x90]
xor r8d, r8d
lea rdx, str.DriverVersion
mov rcx, r15
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rsp + 0xf8], eax
test eax, eax
jne 0x140067edf
mov eax, dword [rsp + 0x90]
dec eax
cmp eax, 1
ja 0x140067edf
cmp dword [rsp + 0x70], 0
jne 0x140067edf
mov word [rsp + 0x850], r14w
lea rax, [rsp + 0x850]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140067ef0
mov dword [rsp + 0xfc], edi
test edi, edi
jne 0x140068007
mov rdx, qword [rsp + 0x60]
lea rcx, [rdx - 0x18]
mov qword [rsp + 0x170], rcx
mov rax, qword [rcx]
mov qword [rsp + 0xb0], rax
cmp dword [rcx + 8], edi
je 0x140068119
cmp dword [rcx + 0x10], edi
jge 0x140067f4e
cmp dword [rdx - 0xc], edi
jl 0x140069078
mov dword [rdx - 0x10], r14d
mov rax, qword [rsp + 0x60]
mov word [rax], r14w
jmp 0x140068119
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
lea rbx, vtable.ATL::CAtlStringMgr.0
jg 0x140067fb9
mov rdx, qword [rsp + 0x170]
mov rcx, qword [rdx]
mov qword [rsp + 0x308], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rbx
jne 0x140069082
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x310], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
lea r9, vtable.ATL::CWin32Heap.0
cmp rax, r9
jne 0x140069082
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx]
mov rdx, qword [rax + 0x18]
cmp rax, rbx
jne 0x14006908b
lock inc dword [rcx + 0x20]
mov rax, qword [rsp + 0xb0]
add rax, 0x10
mov qword [rsp + 0x318], rax
add rax, 0x18
mov qword [rsp + 0x60], rax
mov rbx, qword [rsp + 0x88]
mov r15, qword [rsp + 0xc0]
jmp 0x140068119
mov r10, qword [rsp + 0x60]
mov r14d, dword [r10 - 0x10]
mov dword [rsp + 0x100], r14d
lea rsi, [rsp + 0x850]
sub rsi, r10
sar rsi, 1
mov qword [rsp + 0x320], rsi
test edi, edi
js 0x140069093
lea rax, [r10 - 0x18]
mov qword [rsp + 0x328], rax
mov ecx, 1
sub ecx, dword [rax + 0x10]
mov dword [rsp + 0x104], ecx
mov eax, dword [rax + 0xc]
sub eax, edi
mov dword [rsp + 0x108], eax
or eax, ecx
jge 0x140068072
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.140002a1c
mov r10, qword [rsp + 0x60]
movsxd rax, dword [r10 - 0xc]
cmp rsi, r14
ja 0x1400680d9
mov dword [rsp + 0x10c], eax
lea rdx, [r10 + rsi*2]
mov qword [rsp + 0x330], rdx
movsxd r8, edi
add r8, r8
mov qword [rsp + 0x338], r8
je 0x1400680fb
test rdx, rdx
jne 0x1400680b5
call fcn.1402312e4
mov dword [rax], 0x16
call fcn.140231194
jmp 0x1400680f6
add rax, rax
cmp rax, r8
jae 0x1400680cf
call fcn.1402312e4
mov dword [rax], 0x22
call fcn.140231194
jmp 0x1400680f6
mov rcx, r10
call fcn.14022e750
jmp 0x1400680f6
mov dword [rsp + 0x12c], eax
mov rdx, rax
mov r9d, edi
lea r8, [rsp + 0x850]
mov rcx, r10
call fcn.140002c18
mov r10, qword [rsp + 0x60]
cmp edi, dword [r10 - 0xc]
jg 0x1400690af
mov dword [r10 - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsp + 0x60]
xor r14d, r14d
mov word [rax + rcx*2], r14w
mov dword [rsp + 0x74], 0x7d0
lea rax, [rsp + 0x74]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x850]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x94]
xor r8d, r8d
lea rdx, str.NetCFGInstanceID
mov rcx, r15
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rsp + 0x114], eax
test eax, eax
jne 0x14006817c
mov eax, dword [rsp + 0x94]
dec eax
cmp eax, 1
ja 0x14006817c
cmp dword [rsp + 0x74], 0
jne 0x14006817c
mov word [rsp + 0x850], r14w
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x658]
call fcn.14000983c
nop
lea rdx, str.SYSTEMCurrentControlSetControlNetwork4D36E972_E325_11CE_BFC1_08002BE10318_
lea rcx, [rsp + 0x570]
call fcn.14000983c
nop
lea r9, [rsp + 0x658]
cmp qword [rsp + 0x670], 8
cmovae r9, qword [rsp + 0x658]
mov qword [rsp + 0x340], r9
mov rsi, qword [rsp + 0x668]
mov qword [rsp + 0x348], rsi
mov r14, qword [rsp + 0x580]
mov qword [rsp + 0x350], r14
mov rcx, qword [rsp + 0x588]
mov rax, rcx
sub rax, r14
cmp rsi, rax
ja 0x140068243
lea rax, [r14 + rsi]
mov qword [rsp + 0x580], rax
lea rdi, [rsp + 0x570]
cmp rcx, 8
cmovae rdi, qword [rsp + 0x570]
mov qword [rsp + 0x358], rdi
lea r8, [rsi + rsi]
lea rcx, [rdi + r14*2]
mov rdx, r9
call fcn.14022e750
lea rax, [r14 + rsi]
xor r14d, r14d
mov word [rdi + rax*2], r14w
jmp 0x14006825b
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x570]
call fcn.140023320
xor r14d, r14d
mov rcx, qword [rsp + 0x580]
mov qword [rsp + 0x360], rcx
mov rdx, qword [rsp + 0x588]
mov rax, rdx
sub rax, rcx
cmp rax, 0xb
jb 0x1400682c5
lea rsi, [rcx + 0xb]
mov qword [rsp + 0x580], rsi
lea rdi, [rsp + 0x570]
cmp rdx, 8
cmovae rdi, qword [rsp + 0x570]
mov qword [rsp + 0x368], rdi
lea rcx, [rdi + rcx*2]
mov r8d, 0x16
lea rdx, str.Connection
call fcn.14022e750
mov word [rdi + rsi*2], r14w
jmp 0x1400682e7
mov qword [rsp + 0x20], VariantTimeToDosDateTime
lea r9, str.Connection
mov edx, VariantTimeToDosDateTime
lea rcx, [rsp + 0x570]
call fcn.140023320
mov dword [rsp + 0x40], r14d
mov rdi, r14
mov qword [rsp + 0xd8], r14
mov dword [rsp + 0xe0], r14d
mov qword [rsp + 0xe8], r14
lea rdx, [rsp + 0x570]
cmp qword [rsp + 0x588], 8
cmovae rdx, qword [rsp + 0x570]
mov qword [rsp + 0x370], rdx
mov qword [rsp + 0xb8], r14
lea rax, [rsp + 0xb8]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [rsp + 0x118], eax
test eax, eax
jne 0x14006837f
mov dword [rsp + 0xe0], r14d
mov rdi, qword [rsp + 0xb8]
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xe0], r14d
mov dword [rsp + 0x98], 4
lea rax, [rsp + 0x98]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x11c]
xor r8d, r8d
lea rdx, str.MediaSubType
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rax, [0x1402f0f88]
mov qword [rsp + 0x1c0], rax
lea rax, [0x1402f0f80]
mov qword [rsp + 0x1d0], rax
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x258], rax
lea rax, vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + 0x258], rax
or dword [rsp + 0x34], 1
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rsp + rcx + 0x1bc], edx
mov qword [rsp + 0x1c8], r14
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x1c0]
add rcx, rax
lea rdx, [rsp + 0x1d8]
call fcn.14001c4a0
nop
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x378], rax
mov rax, qword [rsp + 0x1d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x1cc], edx
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x20]
mov dword [rsp + rcx + 0x1bc], edx
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x1bc], edx
lea rax, [rsp + 0x1d8]
mov qword [rsp + 0x380], rax
lea rcx, [rsp + 0x1d8]
call fcn.14001c390
nop
lea rax, vtable.std::basic_stringbuf_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov qword [rsp + 0x1d8], rax
mov qword [rsp + 0x240], r14
mov dword [rsp + 0x120], r14d
mov dword [rsp + 0x248], r14d
mov edx, dword [rsp + 0x40]
lea rcx, [rsp + 0x1d0]
call fcn.14001b900
mov eax, dword [rsp + 0x40]
cmp eax, 2
jne 0x14006856c
mov byte [rsp + 0x69], 1
mov byte [rsp + 0x68], 0
jmp 0x14006857a
cmp eax, 1
jne 0x14006857a
mov byte [rsp + 0x69], 0
mov byte [rsp + 0x68], al
mov dword [rsp + 0x78], 0x190
lea rax, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x6c0]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x9c]
xor r8d, r8d
lea rdx, str.Name
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov dword [rsp + 0x124], eax
test eax, eax
jne 0x1400685dd
mov eax, dword [rsp + 0x9c]
dec eax
cmp eax, 1
ja 0x1400685dd
cmp dword [rsp + 0x78], 0
jne 0x1400685dd
mov word [rsp + 0x6c0], r14w
mov word [rsp + 0x6d0], r14w
lea rdx, str.Wi_Fi
lea rcx, [rsp + 0x6c0]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
movzx ecx, byte [rsp + 0x69]
test eax, eax
mov esi, 1
cmove ecx, esi
mov byte [rsp + 0x69], cl
lea rdx, str.Ethernet
lea rcx, [rsp + 0x6c0]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
movzx ecx, byte [rsp + 0x68]
test eax, eax
cmove ecx, esi
mov byte [rsp + 0x68], cl
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x1bc], edx
lea rcx, [rsp + 0x1d8]
call fcn.14001d050
nop
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_iostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea eax, [rcx - 0x20]
mov dword [rsp + rcx + 0x1bc], eax
mov rax, qword [rsp + 0x1d0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1d0], rax
mov rax, qword [rsp + 0x1d0]
movsxd rcx, dword [rax + 4]
lea eax, [rcx - 0x10]
mov dword [rsp + rcx + 0x1cc], eax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + rcx + 0x1c0], rax
mov rax, qword [rsp + 0x1c0]
movsxd rcx, dword [rax + 4]
lea eax, [rcx - 0x18]
mov dword [rsp + rcx + 0x1bc], eax
lea rax, vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
mov qword [rsp + 0x258], rax
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x258], rax
lea rcx, [rsp + 0x258]
call fcn.14022c744
nop
test rdi, rdi
je 0x140068748
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0xd8], r14
mov dword [rsp + 0xe0], r14d
lea rcx, [rsp + 0x570]
call fcn.140009824
nop
lea rcx, [rsp + 0x658]
call fcn.140009824
nop
test r15, r15
je 0x140068782
mov rcx, r15
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0xc0], r14
mov dword [rsp + 0xc8], r14d
add rbx, 0xffffffffffffffe8
mov qword [rsp + 0x178], rbx
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
sub eax, 1
lea rdi, vtable.ATL::CAtlStringMgr.0
jg 0x140068803
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rdx]
mov qword [rsp + 0x388], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x1400690a6
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x390], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
lea r15, vtable.ATL::CWin32Heap.0
cmp rax, r15
jne 0x14006909e
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x14006880a
lea r15, vtable.ATL::CWin32Heap.0
lea rax, [r13 + 0x10]
mov qword [rsp + 0x398], rax
lea rbx, [r13 + 8]
mov qword [rsp + 0x3a0], rbx
mov rcx, qword [rbx]
cmp qword [rax], rcx
je 0x140068842
mov qword [rsp + 0x3a8], rcx
lea rdx, [rsp + 0x48]
call fcn.14006e130
add qword [rbx], 0x28
jmp 0x140068853
lea r8, [rsp + 0x48]
mov rdx, rcx
mov rcx, r13
call fcn.14006dbc0
nop
lea rcx, [rsp + 0x6a0]
call fcn.140009824
nop
mov rcx, qword [rsp + 0x38]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x180], rcx
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400688d0
mov rdx, qword [rsp + 0x180]
mov rcx, qword [rdx]
mov qword [rsp + 0x3b0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x1400690ba
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3b8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x1400690ba
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov rcx, qword [rsp + 0x60]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x188], rcx
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x14006893e
mov rdx, qword [rsp + 0x188]
mov rcx, qword [rdx]
mov qword [rsp + 0x3c0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x1400690c3
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3c8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x1400690c3
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [rsp + 0x50]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x190], rcx
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x1400689ac
mov rdx, qword [rsp + 0x190]
mov rcx, qword [rdx]
mov qword [rsp + 0x3d0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x1400690cc
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3d8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x1400690cc
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov rcx, qword [rsp + 0x48]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x198], rcx
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
jg 0x140068a1b
mov rdx, qword [rsp + 0x198]
mov rcx, qword [rdx]
mov qword [rsp + 0x3e0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, rdi
jne 0x1400690d5
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3e8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x1400690d5
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
nop
mov ebx, dword [rsp + 0x7c]
jmp 0x140067940
mov rcx, rsi
call qword [r12 + 0x88]
jmp 0x140068fef
call fcn.1400224d0
cmp dword [rax + 8], 2
jl 0x140068fef
call fcn.1400224d0
mov r14, rax
lea rcx, [rsp + 0x470]
call fcn.14001b770
nop
lea rcx, [rsp + 0x638]
call fcn.140009e28
nop
mov r8d, 4
lea rdx, str.WARN
lea rcx, [rsp + 0x638]
call fcn.140009a80
lea rcx, [rsp + 0x5d0]
call fcn.140009e28
nop
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0xa0], r15d
nop dword [rax]
cmp esi, dword [r14 + 0x10]
jge 0x140068b3d
cmp esi, 0xa
jge 0x140068b3d
mov rcx, qword [rsp + 0x5e0]
mov rdx, qword [rsp + 0x5e8]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x140068b0d
lea rdi, [rcx + 2]
mov qword [rsp + 0x5e0], rdi
lea rbx, [rsp + 0x5d0]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x5d0]
lea rcx, [rbx + rcx*2]
mov r8d, 4
lea rdx, [0x1402f1358]
call fcn.14022e750
mov word [rbx + rdi*2], r15w
jmp 0x140068b2f
mov qword [rsp + 0x20], 2
lea r9, [0x1402f1358]
mov edx, 2
lea rcx, [rsp + 0x5d0]
call fcn.140023320
inc esi
mov dword [rsp + 0xa0], esi
jmp 0x140068aa0
lea rcx, [rsp + 0x618]
call fcn.140009e28
nop
lea rcx, [rsp + 0x5f8]
call fcn.140009e28
nop
lea r8, [rsp + 0x5f8]
lea rdx, [rsp + 0x618]
mov rcx, r14
call fcn.140022600
lea r14, [rsp + 0x5d0]
cmp qword [rsp + 0x5e8], 8
cmovae r14, qword [rsp + 0x5d0]
mov edx, 0x2040
lea rcx, [rsp + 0x438]
call fcn.14022c844
mov rcx, qword [rsp + 0x480]
movsxd rdx, dword [rcx + 4]
lea rcx, [rsp + 0x480]
add rcx, rdx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x618]
cmp qword [rsp + 0x630], 8
cmovae rdx, qword [rsp + 0x618]
mov r8, qword [rsp + 0x628]
lea rcx, [rsp + 0x480]
call fcn.140018ee0
mov rbx, rax
mov esi, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edx, esi
lea rcx, [rsp + 0x448]
call fcn.14022c844
mov rdi, rax
lea rdx, [0x1402f0eb0]
mov rcx, rbx
call fcn.140018b00
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov edx, dword [rdi + 8]
call qword [rdi]
lea edx, [rsi - 0xa]
lea rcx, [rsp + 0x458]
call fcn.14022c86c
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov rdx, qword [rax + 8]
call qword [rax]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
mov eax, 0x30
mov word [rcx + rbx + 0x58], ax
lea edx, [rsi - 0xd]
lea rcx, [rsp + 0x408]
call fcn.14022c858
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov rdx, qword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x5f8]
cmp qword [rsp + 0x610], 8
cmovae rdx, qword [rsp + 0x5f8]
mov r8, qword [rsp + 0x608]
mov rcx, rbx
call fcn.140018ee0
mov rbx, rax
lea edx, [rsi - 0xb]
lea rcx, [rsp + 0x418]
call fcn.14022c86c
mov rdi, rax
lea rdx, [0x1402f0eb0]
mov rcx, rbx
call fcn.140018b00
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov rdx, qword [rdi + 8]
call qword [rdi]
mov rcx, qword [rbx]
movsxd rdx, dword [rcx + 4]
mov edi, 0x20
mov word [rdx + rbx + 0x58], di
lea edx, [rsi + 0x30]
lea rcx, [rsp + 0x428]
call fcn.14022c844
mov rcx, qword [rbx]
movsxd rcx, dword [rcx + 4]
add rcx, rbx
mov edx, dword [rax + 8]
call qword [rax]
lea rdx, [rsp + 0x638]
cmp qword [rsp + 0x650], 8
cmovae rdx, qword [rsp + 0x638]
mov r8, qword [rsp + 0x648]
mov rcx, rbx
call fcn.140018ee0
lea rdx, [0x1402f13a8]
mov rcx, rax
call fcn.140018b00
mov rcx, rax
mov rdx, r14
call fcn.140018b00
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14036bfc0], eax
jle 0x140068da4
lea rcx, [0x14036bfc0]
call fcn.14022a558
cmp dword [0x14036bfc0], 0xffffffff
jne 0x140068da4
lea rbx, [0x14036bfc8]
mov rcx, rbx
call fcn.140009e28
lea rcx, [0x14027d390]
call fcn.14022a060
lea rcx, [0x14036bfc0]
call fcn.14022a4f8
jmp 0x140068dab
lea rbx, [0x14036bfc8]
lea rcx, [rsp + 0x590]
call fcn.140009a0c
mov qword [rsp + 0x5a0], r15
mov qword [rsp + 0x5a8], 7
mov word [rsp + 0x590], r15w
mov dword [rsp + 0x34], edi
mov rdx, qword [rsp + 0x4f8]
test dl, 2
jne 0x140068e3d
mov rax, qword [rsp + 0x4c8]
mov rcx, qword [rax]
test rcx, rcx
je 0x140068e3d
mov rax, qword [rsp + 0x4a8]
mov rdx, qword [rax]
mov qword [rsp + 0x1a0], rcx
lea r8, [rsp + 0x4f0]
lea rax, [rsp + 0x1a0]
cmp rcx, qword [rsp + 0x4f0]
cmovae r8, rax
mov r8, qword [r8]
sub r8, rdx
sar r8, 1
lea rcx, [rsp + 0x590]
call fcn.140009a80
jmp 0x140068e81
test dl, 4
jne 0x140068e81
mov rax, qword [rsp + 0x4c0]
mov rcx, qword [rax]
test rcx, rcx
je 0x140068e81
mov rax, qword [rsp + 0x4a0]
mov rdx, qword [rax]
mov rax, qword [rsp + 0x4d8]
movsxd r8, dword [rax]
add r8, r8
sub r8, rdx
add r8, rcx
sar r8, 1
lea rcx, [rsp + 0x590]
call fcn.140009a80
and edi, 0xffffffdf
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x34], esi
mov rdx, qword [0x14036bfe0]
cmp rdx, 8
jb 0x140068ee2
lea rdx, [rdx*2 + 2]
mov qword [rsp + 0x5f0], rdx
mov rcx, qword [0x14036bfc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140068edd
add rdx, 0x27
mov qword [rsp + 0x5f0], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400690de
call fcn.140004518
mov qword [0x14036bfd8], r15
mov qword [0x14036bfe0], 7
mov word [0x14036bfc8], r15w
movups xmm0, xmmword [rsp + 0x590]
movups xmmword [0x14036bfc8], xmm0
movups xmm1, xmmword [rsp + 0x5a0]
movups xmmword [0x14036bfd8], xmm1
mov qword [rsp + 0x5a0], r15
mov qword [rsp + 0x5a8], 7
mov word [rsp + 0x590], r15w
and esi, 0xffffffef
mov dword [rsp + 0x34], esi
lea rcx, [rsp + 0x590]
call fcn.140009824
nop
lea rcx, [rsp + 0x5f8]
call fcn.140009824
nop
lea rcx, [rsp + 0x618]
call fcn.140009824
nop
lea rcx, [rsp + 0x5d0]
call fcn.140009824
nop
lea rcx, [rsp + 0x638]
call fcn.140009824
nop
lea rcx, [rsp + 0x470]
call fcn.14001b430
call fcn.1400224d0
cmp qword [0x14036bfe0], 8
cmovae rbx, qword [0x14036bfc8]
mov r8, qword [0x14036bfd8]
mov rdx, rbx
mov rcx, rax
call fcn.140018ee0
lea rdx, str.Failed_call_to_GetDeviceSet_for_GetSoundInfo
mov rcx, rax
call fcn.140018b00
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.1400193d0
movzx edx, ax
mov rcx, rbx
call fcn.140019210
mov rcx, rbx
call fcn.140019e90
nop
lea rcx, [rsp + 0x678]
call fcn.140019fe0
xor al, al
mov rcx, qword [rsp + 0x1020]
xor rcx, rsp
call fcn.140229da0
lea r11, [rsp + 0x1030]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 0x80004005
call fcn.140002d3c
call rdx
nop
jmp 0x1400679d3
call r8
nop
jmp 0x140067ae9
call r8
nop
jmp 0x140067bf0
mov ecx, 0x80070057
call fcn.140002d3c
nop
mov ecx, 0x80004005
call fcn.140002d3c
nop
mov ecx, 0x80070057
call fcn.140002d3c
nop
call rdx
nop
jmp 0x140067d85
mov ecx, 0x80070057
call fcn.140002d3c
call r8
nop
jmp 0x140067fb9
call rdx
nop
jmp 0x140067fe1
mov ecx, 0x80070057
call fcn.140002d3c
nop
call r8
jmp 0x14006880a
call r8
nop
jmp 0x140068803
mov ecx, 0x80070057
call fcn.140002d3c
nop
call r8
nop
jmp 0x1400688d0
call r8
nop
jmp 0x14006893e
call r8
nop
jmp 0x1400689ac
call r8
nop
jmp 0x140068a1b
call fcn.1402311b4
int3