Function at 0x14001e580
Capabilities:
Inspect section memory permissions

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rsp + 0xb8], rbx
mov r15, rdx
mov rdi, rcx
call fcn.14001e520
cmp dword [rdi + 0x2e8], 0
je 0x14001e5be
mov eax, 1
jmp 0x14001e5c6
mov rcx, rdi
call fcn.140020020
mov dword [rdi + 0x2e8], eax
call fcn.140162c14
mov rcx, rax
test rax, rax
je 0x14001f8f3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x40], rax
lea r13, [0x140393240]
mov rdx, r13
lea rcx, [rbp + 0x40]
call fcn.1400168b0
mov r14, 0xffffffffffffffff
test al, al
jne 0x14001e62c
mov rax, r14
nop dword [rax]
inc rax
cmp word [r13 + rax*2], 0
jne 0x14001e610
mov r8d, eax
mov rdx, r13
lea rcx, [rbp + 0x40]
call fcn.140016ad0
nop
mov rax, qword [rdi]
lea rdx, [rbp + 0x40]
mov rcx, rdi
call qword [rax + 0x28]
test eax, eax
je 0x14001e68e
movups xmm0, xmmword [0x14039b1b0]
movaps xmmword [rbp - 0x30], xmm0
lea rbx, [rdi + 0x148]
mov dword [rsp + 0x28], 0x24
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp - 0x30]
mov rcx, qword [rbp + 0x40]
call fcn.14003b700
test eax, eax
je 0x14001e68e
cmp dword [rdi + 0x150], 0x10ec
je 0x14001e68e
xor edx, edx
lea r8d, [rdx + 0x74]
mov rcx, rbx
call fcn.1402ef020
nop
mov rdx, qword [rbp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001e6ac
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rcx, rdi
call fcn.14001d350
test eax, eax
je 0x14001f8d0
mov eax, dword [rdi + 0xc8]
dec eax
xor r12d, r12d
test eax, 0xfffffffd
jne 0x14001e7b0
cmp qword [rdi + 0x240], r12
je 0x14001e7b0
cmp qword [rdi + 0x140], r12
je 0x14001e7b0
cmp qword [rdi + 0x248], r12
je 0x14001e7b0
mov edx, dword [rdi + 0x260]
test edx, edx
je 0x14001e7b0
test dword [reloc.DSOUND.dll_DirectSoundCreate], edx
mov eax, r12d
setne al
test dword [reloc.OLEAUT32.dll_SysReAllocString], edx
lea ecx, [rax + 1]
cmove ecx, eax
test dword [reloc.OLEAUT32.dll_SysReAllocStringLen], edx
lea eax, [rcx + 1]
cmove eax, ecx
test dword [0x140452168], edx
lea ecx, [rax + 1]
cmove ecx, eax
test dword [reloc.OLEAUT32.dll_SafeArrayGetDim], edx
lea eax, [rcx + 1]
cmove eax, ecx
test dword [0x140452198], edx
lea ecx, [rax + 1]
cmove ecx, eax
test dword [0x1404521b0], edx
lea eax, [rcx + 1]
cmove eax, ecx
test dword [0x1404520f0], edx
lea ecx, [rax + 1]
cmove ecx, eax
test dword [0x140452108], edx
lea eax, [rcx + 1]
cmove eax, ecx
cmp eax, 1
jb 0x14001e7b0
test dword [r15 + 0x13c], 0x20000000
jne 0x14001e7b0
lea ecx, [r12 + 0x70]
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e7a2
mov rcx, rax
call fcn.1401252b0
jmp 0x14001e7a5
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
test byte [r15 + 0x60], 1
je 0x14001e805
mov eax, dword [rdi + 0xc8]
dec eax
test eax, 0xfffffffd
jne 0x14001e805
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e7f7
mov rcx, rax
call fcn.140101690
lea rax, vtable.CImpedanceSensingSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x2d
jmp 0x14001e7fa
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
cmp dword [rdi + 0x50], 0
je 0x14001f1bb
cmp dword [rdi + 0x2e8], 0
je 0x14001f160
test dword [rdi + 0x1d8], 0x800000
je 0x14001e850
mov ecx, 0x1730
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e845
mov rcx, rax
call fcn.1400b0310
jmp 0x14001e848
mov rax, r12
mov rdx, rax
jmp 0x14001ea04
mov eax, dword [rdi + 0x1cc]
bt eax, 0x18
jae 0x14001ea0c
mov ecx, 0x1730
test dword [rdi + 0x1d4], 0x40000
je 0x14001e8ba
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e8b2
mov rcx, rax
call fcn.140101690
mov qword [rbx + 0x48], r12
lea rcx, [rbx + 0x50]
xor edx, edx
mov r8d, 0x16e0
call fcn.1402ef020
lea rax, vtable.CMaxxForDellSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x1e
jmp 0x14001e8b5
mov rbx, r12
jmp 0x14001e99d
bt eax, 0x1a
jae 0x14001e909
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e901
mov rcx, rax
call fcn.140101690
mov qword [rbx + 0x48], r12
lea rcx, [rbx + 0x50]
xor edx, edx
mov r8d, 0x16e0
call fcn.1402ef020
lea rax, vtable.CMaxxForNecSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], SafeArrayDestroy
jmp 0x14001e904
mov rbx, r12
jmp 0x14001e99d
mov eax, dword [rdi + 0x1d0]
test al, 4
je 0x14001e959
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e954
mov rcx, rax
call fcn.140101690
mov qword [rbx + 0x48], r12
lea rcx, [rbx + 0x50]
xor edx, edx
mov r8d, 0x16e0
call fcn.1402ef020
lea rax, vtable.CMaxxForToshibaSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x12
jmp 0x14001e957
mov rbx, r12
jmp 0x14001e99d
bt eax, 0x1c
jae 0x14001e97f
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e97a
mov rcx, rax
call fcn.1400b0310
mov rbx, rax
jmp 0x14001e97d
mov rbx, r12
jmp 0x14001e99d
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e99a
mov rcx, rax
call fcn.1400bc190
mov rbx, rax
jmp 0x14001e99d
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test byte [rdi + 0x1d0], 2
je 0x14001ea0c
mov ecx, 0x1ed8
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001e9fe
mov rcx, rax
call fcn.140101690
mov qword [rbx + 0x48], r12
lea rcx, [rbx + 0x50]
xor edx, edx
mov r8d, 0x16e0
call fcn.1402ef020
lea rax, vtable.CMaxxEqSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x11
mov dword [rbx + 0x1ed0], r12d
jmp 0x14001ea01
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1c0]
test al, 0xf
jne 0x14001ea21
mov ecx, eax
test byte [rdi + 0x1c8], 8
je 0x14001ea6e
mov ecx, eax
test dword [r15 + 0x18c], 0x4000
jne 0x14001ea6e
test dword [r15 + 0x140], 0x20000
jne 0x14001ea6e
mov ecx, 0x88
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ea5a
mov rcx, rax
call fcn.140113b80
jmp 0x14001ea5d
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
mov ecx, dword [rdi + 0x1c0]
test cl, 0x40
je 0x14001ead7
test byte [rdi + 0x260], 0x70
je 0x14001ead7
mov ecx, 0x100
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001eac9
mov rcx, rax
call fcn.140101690
lea rax, vtable.CRoomSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 4
mov dword [rbx + 0x48], r12d
mov dword [rbx + 0xfc], r12d
lea rcx, [rbx + 0x4c]
xor edx, edx
mov r8d, 0xb0
call fcn.1402ef020
jmp 0x14001eacc
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1cc]
bt eax, 0x1b
jb 0x14001eaf5
test al, 0xe0
jne 0x14001eb02
mov eax, dword [rdi + 0x1d0]
bt eax, 0x12
jb 0x14001eb02
jmp 0x14001eafb
mov eax, dword [rdi + 0x1d0]
test eax, 0xe02000
je 0x14001eb41
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001eb33
mov rcx, rax
call fcn.140101690
lea rax, vtable.CDolbySetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 3
jmp 0x14001eb36
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1d4], 0x100000
je 0x14001eb78
mov ecx, 0x60
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001eb6a
mov rcx, rax
call fcn.140065cc0
jmp 0x14001eb6d
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1d0]
test al, 0x20
je 0x14001ebc7
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ebb3
mov rcx, rax
call fcn.140101690
lea rax, vtable.CDtsS2Setting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 9
jmp 0x14001ebb6
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1d0]
bt eax, 0x1d
jb 0x14001ec52
mov ecx, dword [rdi + 0x1d4]
test cl, 1
je 0x14001ebe8
test dword [rdi + 0x1cc], 0x800
jne 0x14001ec52
test cl, 0x10
jne 0x14001ec52
test al, 0x40
jne 0x14001ec52
test dword [rdi + 0x1cc], 0x1000
je 0x14001ec9d
mov eax, dword [rdi + 0xc8]
sub eax, 8
cmp eax, 1
jbe 0x14001ec1c
cmp dword [rdi + 0x260], 2
je 0x14001ec9d
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ec4d
mov rcx, rax
call fcn.140101690
lea rax, vtable.CDtsSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 8
jmp 0x14001ec50
mov rbx, r12
jmp 0x14001ec92
mov ecx, 0x58
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ec8f
mov rcx, rax
call fcn.140101690
lea rax, vtable.CDtsS2ApoSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x19
mov dword [rbx + 0x4c], r12d
mov qword [rbx + 0x50], 1
jmp 0x14001ec92
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1cc], 0xc30000
je 0x14001ecec
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ecde
mov rcx, rax
call fcn.140101690
lea rax, vtable.CSrsSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0xa
mov qword [rbx + 0x48], r12
jmp 0x14001ece1
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1d0], 0x1700
jne 0x14001ed04
test dword [rdi + 0x1dc], 0x400
je 0x14001ed2f
mov ecx, 0x140
call fcn.140153a34
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ed21
mov rcx, rax
call fcn.140130dc0
jmp 0x14001ed24
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1dc], 0x4000000
je 0x14001ed7a
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14001ed6c
mov rcx, rax
call fcn.140101690
lea rax, vtable.CSrsApo3Setting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x26
jmp 0x14001ed6f
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1e8], 0x10000000
je 0x14001ee8b
mov eax, dword [rdi + 0xc8]
dec eax
test eax, 0xfffffffd
jne 0x14001ee8b
call fcn.140162c14
mov rcx, rax
test rax, rax
je 0x14001f8fe
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp + 0x50], rax
mov rdx, r13
lea rcx, [rbp + 0x50]
call fcn.1400168b0
test al, al
jne 0x14001edec
mov rax, r14
nop
inc rax
cmp word [r13 + rax*2], 0
jne 0x14001edd0
mov r8d, eax
mov rdx, r13
lea rcx, [rbp + 0x50]
call fcn.140016ad0
nop
lea rcx, [rbp + 0x58]
call fcn.14001b1b0
nop
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.140016d50
nop
mov rdx, qword [rbp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001ee21
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rbp + 0x50]
movzx eax, word [rbx]
cmp ax, word [0x140393240]
je 0x14001ee71
mov ecx, 0x48
call fcn.140153a34
mov rsi, rax
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14001ee62
mov rcx, rax
call fcn.140101690
lea rax, vtable.CAndysseySetting.0
mov qword [rsi], rax
mov dword [rsi + 0x28], 0x2e
jmp 0x14001ee65
mov rsi, r12
mov rdx, rsi
mov rcx, rdi
call fcn.14001f910
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14001ee8b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [rdi + 0x1cc]
bt eax, 0xe
jae 0x14001eee3
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001eecf
mov rcx, rax
call fcn.140101690
lea rax, vtable.CBbeSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], SafeArrayDestroy
mov dword [rbx + 0x48], 2
jmp 0x14001eed2
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1cc]
bt eax, 0x12
jae 0x14001ef82
test byte [rdi + 0x1d4], 0x80
je 0x14001ef54
mov ecx, VarBstrFromDisp
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001ef4f
mov rcx, rax
call fcn.140101690
lea rax, vtable.CSonicFocus3Setting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x1d
mov dword [rbx + 0x48], r12d
mov qword [rbx + 0x4c], 5
mov dword [rbx + 0x54], r14d
mov dword [rbx + 0x58], r12d
mov dword [rbx + 0x5c], r14d
mov dword [rbx + 0x60], r12d
mov dword [rbx + 0x64], r14d
mov dword [rbx + 0x68], r12d
mov dword [rbx + 0x6c], r14d
jmp 0x14001ef52
mov rbx, r12
jmp 0x14001ef77
mov ecx, 0x58
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001ef74
mov rcx, rax
call fcn.14011c7d0
mov rbx, rax
jmp 0x14001ef77
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov ecx, dword [rdi + 0x1d8]
mov eax, ecx
and eax, 0x18000
cmp eax, 0x18000
jne 0x14001efdb
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001efc7
mov rcx, rax
call fcn.140101690
lea rax, vtable.CCoexistSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x22
jmp 0x14001efca
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov ecx, dword [rdi + 0x1d8]
bt ecx, 0xb
jae 0x14001f00c
mov ecx, 0x60
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001effe
mov rcx, rax
call fcn.140089490
jmp 0x14001f001
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1d4], 0x1000
je 0x14001f057
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f049
mov rcx, rax
call fcn.140101690
lea rax, vtable.CSoundAliveSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x27
jmp 0x14001f04c
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1c8]
bt eax, 0xe
jb 0x14001f078
test dword [rdi + 0x1e0], 0x40000000
jne 0x14001f078
test byte [rdi + 0x1e8], 0x10
je 0x14001f0cd
mov ecx, dword [rdi + 0xc8]
cmp ecx, 1
je 0x14001f088
cmp ecx, 3
jne 0x14001f0cd
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f0b9
mov rcx, rax
call fcn.140101690
lea rax, vtable.CYamahaApoSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x28
jmp 0x14001f0bc
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1c8]
bt eax, 0xd
jae 0x14001f160
mov eax, dword [rdi + 0xc8]
dec eax
test eax, 0xfffffffd
jne 0x14001f160
mov qword [rbp - 0x20], r12
mov dword [rbp - 0x18], r12d
mov qword [rbp - 0x10], r12
mov r9d, 1
lea r8, str.SOFTWAREICEpowerICEsound
mov rdx, 0xffffffff80000002
lea rcx, [rbp - 0x20]
call fcn.140024490
test eax, eax
jne 0x14001f151
lea ecx, [rax + 0x48]
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f142
mov rcx, rax
call fcn.140101690
lea rax, vtable.CAudioWizardSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x29
jmp 0x14001f145
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x14001f160
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [rdi + 0x50], 0
je 0x14001f1bb
cmp dword [rdi + 0xc8], 1
jne 0x14001f1bb
test dword [r15 + 0x1dc], 0x10000
je 0x14001f1bb
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f1ad
mov rcx, rax
call fcn.140101690
lea rax, vtable.CCONEQSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x25
jmp 0x14001f1b0
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
cmp dword [rdi + 0xc8], 4
jne 0x14001f5d9
mov eax, dword [rdi + 0x1c4]
test eax, 0x5000
je 0x14001f21e
bt eax, 0xd
jb 0x14001f21e
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f210
mov rcx, rax
call fcn.140101690
lea rax, vtable.CAndreaMicSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], SafeArrayDestroy
mov qword [rbx + 0x48], r12
jmp 0x14001f213
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
call fcn.140164860
mov rcx, rax
test rax, rax
je 0x14001f2af
mov rax, qword [rax]
call qword [rax + 0xe8]
test rax, rax
je 0x14001f2af
mov rcx, qword [rax + 0x100]
test rcx, rcx
je 0x14001f2af
mov edx, dword [rcx + 0x1b78]
lea eax, [rdx + 1]
mov dword [rcx + 0x1b78], eax
mov ebx, dword [rcx + 0x38]
mov dword [rcx + 0x1b78], edx
test edx, edx
jne 0x14001f270
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
bt ebx, 0x16
jae 0x14001f2af
mov ecx, 0x2b0
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f2a7
mov rcx, rax
call fcn.1400dd2a0
lea rax, vtable.CMicForteSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x2a8], r12d
jmp 0x14001f2aa
mov rbx, r12
jmp 0x14001f4cc
test dword [rdi + 0x1c8], 0x20000000
je 0x14001f2fc
mov ecx, 0x58
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f2f4
mov rcx, rax
call fcn.140101690
lea rax, vtable.CConexantSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x2b
mov qword [rbx + 0x48], r12
mov dword [rbx + 0x50], r12d
jmp 0x14001f2f7
mov rbx, r12
jmp 0x14001f4cc
mov eax, dword [rdi + 0x1c4]
test al, 7
jne 0x14001f362
bt eax, 0x1a
jb 0x14001f362
bt eax, 0x1b
jb 0x14001f362
bt eax, 0x1c
jb 0x14001f362
test dword [rdi + 0x1d8], 0x200
jne 0x14001f362
test dword [rdi + 0x1dc], 0x100000
jne 0x14001f362
bt eax, 0x1d
jb 0x14001f362
mov ecx, dword [r15 + 0x16c]
test cl, 4
jne 0x14001f362
test cl, 2
jne 0x14001f362
mov eax, ecx
and eax, 1
jne 0x14001f362
bt ecx, 9
jb 0x14001f362
bt ecx, 8
jb 0x14001f362
test cl, cl
jns 0x14001f4d7
test dword [r15 + 0x74], 0x100000
jne 0x14001f4d7
test byte [r15 + 0x19c], 4
je 0x14001f4a9
test dword [r15 + 0x198], 0x4000000
jne 0x14001f4a9
test byte [rdi + 0x1e8], 4
je 0x14001f484
test byte [r15 + 0xec], 0x40
je 0x14001f44e
mov eax, 0x1025
cmp word [r15 + 0x412], ax
jne 0x14001f429
movzx ecx, word [r15 + 0x410]
mov edx, 0x113c
movzx eax, cx
sub ax, dx
cmp ax, 0x2f
ja 0x14001f3e2
movabs rdx, 0xf0000000000f
bt rdx, rax
jb 0x14001f3f0
mov eax, 0x127a
sub cx, ax
cmp cx, 1
ja 0x14001f429
mov ecx, 0x2b0
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f421
mov rcx, rax
call fcn.1400dd2a0
lea rax, vtable.CMicForteSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x2a8], r12d
jmp 0x14001f424
mov rbx, r12
jmp 0x14001f4cc
mov ecx, 0x60
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f449
mov rcx, rax
call fcn.1400c1ad0
mov rbx, rax
jmp 0x14001f44c
mov rbx, r12
jmp 0x14001f4cc
mov ecx, 0x2b0
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f47f
mov rcx, rax
call fcn.1400dd2a0
lea rax, vtable.CMicForteSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x2a8], r12d
jmp 0x14001f482
mov rbx, r12
jmp 0x14001f4cc
mov ecx, 0x60
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f4a4
mov rcx, rax
call fcn.1400c1ad0
mov rbx, rax
jmp 0x14001f4a7
mov rbx, r12
jmp 0x14001f4cc
mov ecx, 0x2a8
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f4c9
mov rcx, rax
call fcn.1400dd2a0
mov rbx, rax
jmp 0x14001f4cc
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov ecx, dword [r15 + 0x84]
mov eax, ecx
and eax, 9
cmp al, 9
jne 0x14001f557
bt ecx, 0xd
jae 0x14001f52c
cmp qword [0x1404657c0], 0
jne 0x14001f557
mov ecx, 0xc8
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f517
mov rcx, rax
call fcn.1400d90c0
mov rcx, rax
jmp 0x14001f51a
mov rcx, r12
mov qword [0x1404657c0], rcx
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + 0x30]
jmp 0x14001f557
mov ecx, 0xc8
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f549
mov rcx, rax
call fcn.1400d90c0
jmp 0x14001f54c
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1c4], 0x800000
je 0x14001f5a2
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f594
mov rcx, rax
call fcn.140101690
lea rax, vtable.CKnowlesSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x1b
jmp 0x14001f597
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
test dword [rdi + 0x1d8], 0x800
je 0x14001f5d9
mov ecx, 0x60
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f5cb
mov rcx, rax
call fcn.140089490
jmp 0x14001f5ce
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
cmp dword [rdi + 0xc8], 8
jne 0x14001f648
cmp dword [rdi + 0x50], 0
jne 0x14001f648
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f63a
mov rcx, rax
call fcn.140101690
nop
lea rax, vtable.CDigitalInSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 6
lea rcx, [rbx + 0x40]
mov rax, r14
nop
inc rax
cmp word [r13 + rax*2], 0
jne 0x14001f620
mov r8d, eax
mov rdx, r13
call fcn.140016ad0
nop
jmp 0x14001f63d
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f67d
mov rcx, rax
call fcn.140101690
lea rax, vtable.CDefDevSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 5
mov dword [rbx + 0x48], r12d
jmp 0x14001f680
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov rcx, rdi
call fcn.14001d860
test eax, eax
je 0x14001f6c2
mov ecx, 0x90
call fcn.140153a34
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f6b4
mov rcx, rax
call fcn.14008f310
jmp 0x14001f6b7
mov rax, r12
mov rdx, rax
mov rcx, rdi
call fcn.14001f910
cmp dword [rdi + 0xc8], 1
jne 0x14001f76c
test dword [r15 + 0xc], 0x20000
je 0x14001f76c
test dword [r15 + 0x88], 0x8000
je 0x14001f76c
mov ecx, 0x50
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f75e
mov rcx, rax
call fcn.140101690
nop
lea rax, vtable.CEncryptSetting.0
mov qword [rbx], rax
call fcn.140162c14
mov rcx, rax
test rax, rax
je 0x14001f8e8
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbx + 0x48], rax
mov dword [rbx + 0x28], reloc.OLEAUT32.dll_SafeArrayDestroy
nop dword [rax]
inc r14
cmp word [r13 + r14*2], 0
jne 0x14001f740
mov r8d, r14d
mov rdx, r13
lea rcx, [rbx + 0x48]
call fcn.140016ad0
nop
jmp 0x14001f761
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, dword [rdi + 0x1c0]
bt eax, 0x14
jb 0x14001f79d
bt eax, 0x16
jb 0x14001f79d
bt eax, 0x19
jb 0x14001f79d
bt eax, 0x1c
jb 0x14001f79d
bt eax, 0x1d
jb 0x14001f79d
test byte [rdi + 0x1d8], 0x80
je 0x14001f822
mov ecx, 0xd8
call fcn.140153a34
mov rsi, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f814
mov rcx, rax
call fcn.140101690
nop
lea rax, vtable.CSounzRealSetting.0
mov qword [rsi], rax
lea rbx, [rsi + 0x48]
mov qword [rbp + 0x50], rbx
mov rcx, rbx
call fcn.140101690
lea rax, vtable.CBassBackSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x16
lea rbx, [rsi + 0x90]
mov qword [rbp + 0x50], rbx
mov rcx, rbx
call fcn.140101690
lea rax, vtable.COmniSoundSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x17
mov dword [rsi + 0x28], 0x18
jmp 0x14001f817
mov rsi, r12
mov rdx, rsi
mov rcx, rdi
call fcn.14001f910
test byte [rdi + 0x1d0], 1
je 0x14001f874
test dword [r15 + 0xc], 0x400000
je 0x14001f874
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f866
mov rcx, rax
call fcn.140101690
lea rax, vtable.CCreativeSetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], reloc.OLEAUT32.dll_SafeArrayGetDim
jmp 0x14001f869
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
cmp dword [rdi + 0x50], 0
je 0x14001f8cb
cmp dword [rdi + 0xc8], 1
jne 0x14001f8cb
test byte [rdi + 0x1e8], 4
je 0x14001f8cb
mov ecx, 0x48
call fcn.140153a34
mov rbx, rax
mov qword [rbp + 0x40], rax
test rax, rax
je 0x14001f8bd
mov rcx, rax
call fcn.140101690
lea rax, vtable.CAcerTrueHarmonySetting.0
mov qword [rbx], rax
mov dword [rbx + 0x28], 0x2c
jmp 0x14001f8c0
mov rbx, r12
mov rdx, rbx
mov rcx, rdi
call fcn.14001f910
mov eax, 1
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140012800
nop
mov ecx, 0x80004005
call fcn.140012800
int3
mov ecx, 0x80004005
call fcn.140012800
int3