Function at 0x140068da0
Capabilities:
Query or enumerate registry value

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1030
call fcn.14022bd60
sub rsp, rax
mov qword [rsp + 0x3f0], 0xfffffffffffffffe
mov qword [rsp + 0x1070], rbx
mov qword [rsp + 0x1078], rsi
mov rax, qword [0x14035d8c0]
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.14000a1bc
nop
mov byte [rsp + 0x678], r14b
lea r8d, [r14 + 0x23]
lea rdx, str.srl::SetupLib::GetNetworkDeviceInfo
lea rcx, [rsp + 0x680]
call fcn.140009e14
nop
call fcn.140022850
cmp dword [rax + 8], 4
jl 0x140068e42
mov byte [rsp + 0x678], 1
lea rcx, [rsp + 0x678]
call fcn.140018900
cmp byte [r12 + 0x28], 0
je 0x14006a56f
mov qword [rsp + 0x80], r14
lea r8, [rsp + 0x80]
lea rdx, [0x1402dad58]
mov rcx, r12
call fcn.14006c4b0
test al, al
je 0x140069fb4
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 0x140069fa4
inc ebx
mov dword [rsp + 0x7c], ebx
lea rcx, [rsp + 0x48]
call fcn.140015830
lea rcx, [rsp + 0x50]
call fcn.140015830
lea rcx, [rsp + 0x60]
call fcn.140015830
mov byte [rsp + 0x58], 0
mov word [rsp + 0x68], 0
call fcn.140011f18
mov rcx, rax
mov qword [rsp + 0x140], rax
test rax, rax
je 0x14006a5ab
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
cmp rax, rdi
jne 0x14006a5b5
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.14006be30
test al, al
je 0x140068f9e
mov rdx, qword [rsp + 0x38]
mov eax, dword [rdx - 0x10]
mov dword [rsp + 0x128], eax
test eax, eax
jne 0x140068fc3
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, rsi
lea rdx, [rsp + 0x5b0]
mov rcx, r12
call fcn.14006be30
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 0x14006909a
cmp dword [rbx + 0x10], 0
jl 0x140069084
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x140069084
call fcn.140002c94
mov qword [rsp + 0x150], rax
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140069069
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 0x14006a5bd
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x2c8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a5bd
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 0x14006909a
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.14006be30
test al, al
je 0x1400691a1
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 0x1400691a1
cmp dword [rbx + 0x10], 0
jl 0x14006918b
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x14006918b
call fcn.140002c94
mov qword [rsp + 0x160], rax
mov eax, 0xffffffff
lock xadd dword [rbx + 0x10], eax
sub eax, 1
jg 0x140069170
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 0x14006a5c6
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x2e0], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a5c6
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 0x1400691a1
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.14006be30
test al, al
je 0x14006928a
mov rbx, qword [rsp + 0x38]
movsxd rdi, dword [rbx - 0x10]
mov dword [rsp + 0x138], edi
test edi, edi
js 0x14006a5cf
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 0x140069220
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.1402385bc
cmp edi, dword [rbx - 0xc]
jg 0x14006a5e5
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 0x1400692de
lea rdx, str.pci_bus_0
mov rcx, rbx
call fcn.14022f5d8
mov qword [rsp + 0x2f0], rax
test rax, rax
je 0x1400692de
sub rax, rbx
sar rax, 1
mov dword [rsp + 0x1b0], eax
test eax, eax
js 0x1400692de
mov byte [rsp + 0x58], 1
lea rdi, vtable.ATL::CAtlStringMgr.0
lea rcx, [rsp + 0x6a0]
call fcn.14000a1bc
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.14006be30
test al, al
je 0x140069d8a
call fcn.140011f18
mov rcx, rax
mov qword [rsp + 0x168], rax
test rax, rax
je 0x14006a5da
jmp 0x1400692e5
mov byte [rsp + 0x58], 0
jmp 0x140069283
mov rax, qword [rax]
mov rdx, qword [rax + 0x18]
cmp rax, rdi
jne 0x14006a5f0
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 0x140069353
movzx edx, ax
mov dword [rsp + 0xf0], edx
call fcn.140012700
mov byte [rsp + 0x30], 1
jmp 0x140069362
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.140006378
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 0x1400693fc
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 0x14006945f
mov eax, dword [rsp + 0x90]
dec eax
cmp eax, 1
ja 0x14006945f
cmp dword [rsp + 0x70], 0
jne 0x14006945f
mov word [rsp + 0x850], r14w
lea rax, [rsp + 0x850]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140069470
mov dword [rsp + 0xfc], edi
test edi, edi
jne 0x140069587
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 0x140069699
cmp dword [rcx + 0x10], edi
jge 0x1400694ce
cmp dword [rdx - 0xc], edi
jl 0x14006a5f8
mov dword [rdx - 0x10], r14d
mov rax, qword [rsp + 0x60]
mov word [rax], r14w
jmp 0x140069699
mov eax, 0xffffffff
lock xadd dword [rcx + 0x10], eax
sub eax, 1
lea rbx, vtable.ATL::CAtlStringMgr.0
jg 0x140069539
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 0x14006a602
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 0x14006a602
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 0x14006a60b
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 0x140069699
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 0x14006a613
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 0x1400695f2
mov edx, edi
lea rcx, [rsp + 0x60]
call fcn.140002a1c
mov r10, qword [rsp + 0x60]
movsxd rax, dword [r10 - 0xc]
cmp rsi, r14
ja 0x140069659
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 0x14006967b
test rdx, rdx
jne 0x140069635
call fcn.1402326e4
mov dword [rax], 0x16
call fcn.140232594
jmp 0x140069676
add rax, rax
cmp rax, r8
jae 0x14006964f
call fcn.1402326e4
mov dword [rax], 0x22
call fcn.140232594
jmp 0x140069676
mov rcx, r10
call fcn.14022fb50
jmp 0x140069676
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 0x14006a62f
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 0x1400696fc
mov eax, dword [rsp + 0x94]
dec eax
cmp eax, 1
ja 0x1400696fc
cmp dword [rsp + 0x74], 0
jne 0x1400696fc
mov word [rsp + 0x850], r14w
lea rdx, [rsp + 0x850]
lea rcx, [rsp + 0x658]
call fcn.140009bd0
nop
lea rdx, str.SYSTEMCurrentControlSetControlNetwork4D36E972_E325_11CE_BFC1_08002BE10318_
lea rcx, [rsp + 0x570]
call fcn.140009bd0
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 0x1400697c3
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.14022fb50
lea rax, [r14 + rsi]
xor r14d, r14d
mov word [rdi + rax*2], r14w
jmp 0x1400697db
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x570]
call fcn.1400236a0
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 0x140069845
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.14022fb50
mov word [rdi + rsi*2], r14w
jmp 0x140069867
mov qword [rsp + 0x20], VariantTimeToDosDateTime
lea r9, str.Connection
mov edx, VariantTimeToDosDateTime
lea rcx, [rsp + 0x570]
call fcn.1400236a0
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 0x1400698ff
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, [0x1402f2158]
mov qword [rsp + 0x1c0], rax
lea rax, [0x1402f2150]
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.14001c830
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.14001c720
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.14001bc90
mov eax, dword [rsp + 0x40]
cmp eax, 2
jne 0x140069aec
mov byte [rsp + 0x69], 1
mov byte [rsp + 0x68], 0
jmp 0x140069afa
cmp eax, 1
jne 0x140069afa
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 0x140069b5d
mov eax, dword [rsp + 0x9c]
dec eax
cmp eax, 1
ja 0x140069b5d
cmp dword [rsp + 0x78], 0
jne 0x140069b5d
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.14001d3e0
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.14022db44
nop
test rdi, rdi
je 0x140069cc8
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.140009bb8
nop
lea rcx, [rsp + 0x658]
call fcn.140009bb8
nop
test r15, r15
je 0x140069d02
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 0x140069d83
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 0x14006a626
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 0x14006a61e
mov r8, rdx
xor edx, edx
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x140069d8a
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 0x140069dc2
mov qword [rsp + 0x3a8], rcx
lea rdx, [rsp + 0x48]
call fcn.14006f6b0
add qword [rbx], 0x28
jmp 0x140069dd3
lea r8, [rsp + 0x48]
mov rdx, rcx
mov rcx, r13
call fcn.14006f140
nop
lea rcx, [rsp + 0x6a0]
call fcn.140009bb8
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 0x140069e50
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 0x14006a63a
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3b8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a63a
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 0x140069ebe
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 0x14006a643
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3c8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a643
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 0x140069f2c
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 0x14006a64c
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3d8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a64c
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 0x140069f9b
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 0x14006a655
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x3e8], rcx
mov rax, qword [rcx]
mov r8, qword [rax + 8]
cmp rax, r15
jne 0x14006a655
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 0x140068ec0
mov rcx, rsi
call qword [r12 + 0x88]
jmp 0x14006a56f
call fcn.140022850
cmp dword [rax + 8], 2
jl 0x14006a56f
call fcn.140022850
mov r14, rax
lea rcx, [rsp + 0x470]
call fcn.14001bb00
nop
lea rcx, [rsp + 0x638]
call fcn.14000a1bc
nop
mov r8d, 4
lea rdx, str.WARN
lea rcx, [rsp + 0x638]
call fcn.140009e14
lea rcx, [rsp + 0x5d0]
call fcn.14000a1bc
nop
xor r15d, r15d
mov esi, r15d
mov dword [rsp + 0xa0], r15d
nop dword [rax]
cmp esi, dword [r14 + 0x10]
jge 0x14006a0bd
cmp esi, 0xa
jge 0x14006a0bd
mov rcx, qword [rsp + 0x5e0]
mov rdx, qword [rsp + 0x5e8]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x14006a08d
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, [0x1402f2528]
call fcn.14022fb50
mov word [rbx + rdi*2], r15w
jmp 0x14006a0af
mov qword [rsp + 0x20], 2
lea r9, [0x1402f2528]
mov edx, 2
lea rcx, [rsp + 0x5d0]
call fcn.1400236a0
inc esi
mov dword [rsp + 0xa0], esi
jmp 0x14006a020
lea rcx, [rsp + 0x618]
call fcn.14000a1bc
nop
lea rcx, [rsp + 0x5f8]
call fcn.14000a1bc
nop
lea r8, [rsp + 0x5f8]
lea rdx, [rsp + 0x618]
mov rcx, r14
call fcn.140022980
lea r14, [rsp + 0x5d0]
cmp qword [rsp + 0x5e8], 8
cmovae r14, qword [rsp + 0x5d0]
mov edx, 0x2040
lea rcx, [rsp + 0x438]
call fcn.14022dc44
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.140019270
mov rbx, rax
mov esi, reloc.OLEAUT32.dll_SafeArrayGetDim
mov edx, esi
lea rcx, [rsp + 0x448]
call fcn.14022dc44
mov rdi, rax
lea rdx, [0x1402f2080]
mov rcx, rbx
call fcn.140018e90
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.14022dc6c
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.14022dc58
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.140019270
mov rbx, rax
lea edx, [rsi - 0xb]
lea rcx, [rsp + 0x418]
call fcn.14022dc6c
mov rdi, rax
lea rdx, [0x1402f2080]
mov rcx, rbx
call fcn.140018e90
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.14022dc44
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.140019270
lea rdx, [0x1402f2578]
mov rcx, rax
call fcn.140018e90
mov rcx, rax
mov rdx, r14
call fcn.140018e90
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14036cfc0], eax
jle 0x14006a324
lea rcx, [0x14036cfc0]
call fcn.14022b958
cmp dword [0x14036cfc0], 0xffffffff
jne 0x14006a324
lea rbx, [0x14036cfc8]
mov rcx, rbx
call fcn.14000a1bc
lea rcx, [0x14027e7a0]
call fcn.14022b460
lea rcx, [0x14036cfc0]
call fcn.14022b8f8
jmp 0x14006a32b
lea rbx, [0x14036cfc8]
lea rcx, [rsp + 0x590]
call fcn.140009da0
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 0x14006a3bd
mov rax, qword [rsp + 0x4c8]
mov rcx, qword [rax]
test rcx, rcx
je 0x14006a3bd
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.140009e14
jmp 0x14006a401
test dl, 4
jne 0x14006a401
mov rax, qword [rsp + 0x4c0]
mov rcx, qword [rax]
test rcx, rcx
je 0x14006a401
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.140009e14
and edi, 0xffffffdf
mov dword [rsp + 0x34], edi
mov dword [rsp + 0x34], esi
mov rdx, qword [0x14036cfe0]
cmp rdx, 8
jb 0x14006a462
lea rdx, [rdx*2 + 2]
mov qword [rsp + 0x5f0], rdx
mov rcx, qword [0x14036cfc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006a45d
add rdx, 0x27
mov qword [rsp + 0x5f0], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14006a65e
call fcn.1400045a8
mov qword [0x14036cfd8], r15
mov qword [0x14036cfe0], 7
mov word [0x14036cfc8], r15w
movups xmm0, xmmword [rsp + 0x590]
movups xmmword [0x14036cfc8], xmm0
movups xmm1, xmmword [rsp + 0x5a0]
movups xmmword [0x14036cfd8], 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.140009bb8
nop
lea rcx, [rsp + 0x5f8]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x618]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x5d0]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x638]
call fcn.140009bb8
nop
lea rcx, [rsp + 0x470]
call fcn.14001b7c0
call fcn.140022850
cmp qword [0x14036cfe0], 8
cmovae rbx, qword [0x14036cfc8]
mov r8, qword [0x14036cfd8]
mov rdx, rbx
mov rcx, rax
call fcn.140019270
lea rdx, str.Failed_call_to_GetDeviceSet_for_GetSoundInfo
mov rcx, rax
call fcn.140018e90
mov rbx, rax
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
mov dl, 0xa
call fcn.140019760
movzx edx, ax
mov rcx, rbx
call fcn.1400195a0
mov rcx, rbx
call fcn.14001a220
nop
lea rcx, [rsp + 0x678]
call fcn.14001a370
xor al, al
mov rcx, qword [rsp + 0x1020]
xor rcx, rsp
call fcn.14022b1a0
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 0x140068f53
call r8
nop
jmp 0x140069069
call r8
nop
jmp 0x140069170
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 0x140069305
mov ecx, 0x80070057
call fcn.140002d3c
call r8
nop
jmp 0x140069539
call rdx
nop
jmp 0x140069561
mov ecx, 0x80070057
call fcn.140002d3c
nop
call r8
jmp 0x140069d8a
call r8
nop
jmp 0x140069d83
mov ecx, 0x80070057
call fcn.140002d3c
nop
call r8
nop
jmp 0x140069e50
call r8
nop
jmp 0x140069ebe
call r8
nop
jmp 0x140069f2c
call r8
nop
jmp 0x140069f9b
call fcn.1402325b4
int3