Function at 0x140041600
Capabilities:
Set registry value

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x880
mov qword [rsp + 0x3a0], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
mov rax, qword [0x1400debd8]
xor rax, rsp
mov qword [rsp + 0x7e8], rax
mov r15d, edx
mov rdi, rcx
mov qword [rsp + 0xb8], rcx
call fcn.14005f97c
xor r9d, r9d
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14005fc1c
mov esi, eax
cmp eax, 1
je 0x140044209
call fcn.1400544b4
mov rdx, rax
xor ebp, ebp
mov ecx, ebp
test rax, rax
setne cl
test ecx, ecx
jne 0x1400416cd
mov ecx, 0x80004005
call fcn.140012170
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x80], rax
call fcn.1400544b4
mov rdx, rax
mov ecx, ebp
test rax, rax
setne cl
test ecx, ecx
jne 0x140041701
mov ecx, 0x80004005
call fcn.140012170
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x98], rbp
mov qword [rsp + 0x70], rbp
lea rax, str.Music
mov qword [rsp + 0x358], rax
lea rax, str.Movie
mov qword [rsp + 0x360], rax
lea rax, str.Game
mov qword [rsp + 0x368], rax
mov dword [rsp + 0x1d8], ebp
mov dword [rsp + 0x1dc], 1
mov dword [rsp + 0x1e0], ebp
mov dword [rsp + 0x1e4], ebp
mov dword [rsp + 0x1e8], 1
mov dword [rsp + 0x1ec], ebp
lea rcx, [rsp + 0x390]
lea r13, [0x140000000]
mov rax, qword [r13 + 0xb2a90]
mov qword [rcx], rax
mov rax, qword [r13 + 0xb2a98]
mov qword [rcx + 8], rax
lea rcx, [rdi + 0x8f8]
lea rdx, [rsp + 0x378]
call fcn.14004f9e0
nop
mov dword [rsp + 0x1f0], ebp
xor ecx, ecx
mov dword [rsp + 0x1f4], ecx
mov dword [rsp + 0x1f8], ecx
mov dword [rsp + 0x1fc], ecx
mov dword [rsp + 0x200], ecx
mov dword [rsp + 0x204], ecx
mov dword [rsp + 0xb0], ebp
mov qword [rsp + 0x30], rbp
mov dword [rsp + 0x28], ebp
mov r12d, 3
mov dword [rsp + 0x20], r12d
xor r9d, r9d
mov r8d, r12d
mov edx, 0xc0000000
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
or r14, 0xffffffffffffffff
cmp rax, r14
jne 0x140041826
mov edi, ebp
jmp 0x1400418fb
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x390]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov dword [rsp + 0x204], 1
mov dword [rsp + 0x200], 0xa
mov dword [rsp + 0xb0], ebp
mov qword [rsp + 0x38], rbp
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x414
lea rax, [rsp + 0x3b0]
mov qword [rsp + 0x20], rax
mov r9d, reloc.OLEAUT32.dll_SafeArrayGetElement
lea r8, [rsp + 0x1f0]
mov edx, 0x2f0003
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
jne 0x1400418f6
lea rdx, [rsp + 0x390]
lea rcx, [rsp + 0x388]
call fcn.140012590
mov rdx, qword [rsp + 0x388]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400418f2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edi, ebp
jmp 0x1400418fb
mov edi, 1
mov rdx, qword [rsp + 0x378]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004191f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test edi, edi
je 0x14004319e
xor eax, eax
mov rcx, r14
lea rdi, str.SOFTWAREDTSPremiumSuitPresets
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, str.SOFTWAREDTSPremiumSuitPresets
lea rcx, [rsp + 0x80]
call fcn.140011ed0
xor eax, eax
mov rcx, r14
lea rbx, [0x1400b3ba8]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov rsi, rbx
mov rbp, qword [rsp + 0x80]
sub rsi, rbp
sar rsi, 1
mov r13d, dword [rbp - 0x10]
lea edi, [r13 + rcx - 1]
mov edx, 1
sub edx, dword [rbp - 8]
mov eax, dword [rbp - 0xc]
sub eax, edi
or eax, edx
jge 0x1400419ac
mov edx, edi
lea rcx, [rsp + 0x80]
call fcn.140011ac0
mov rbp, qword [rsp + 0x80]
cmp rsi, r13
ja 0x1400419b6
lea rbx, [rbp + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rbp + r13*2]
mov r9, rdx
mov r8, rbx
call fcn.14007f790
test edi, edi
js 0x140043193
cmp edi, dword [rbp - 0xc]
jg 0x140043193
lea r13, [rbp - 0x10]
mov qword [rsp + 0xb8], r13
mov dword [r13], edi
movsxd rax, edi
mov word [rbp + rax*2], 0
xor r14d, r14d
mov qword [rsp + 0x228], r14
lea rax, [rsp + 0x228]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
mov rdx, rbp
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140041a3e
mov rdi, qword [rsp + 0x228]
mov qword [rsp + 0x98], rdi
jmp 0x140041aa0
mov qword [rsp + 0x208], r14
lea rax, [rsp + 0x384]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x208]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
mov rdx, rbp
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140043145
mov rdi, qword [rsp + 0x208]
mov qword [rsp + 0x98], rdi
test r15d, r15d
je 0x140041b1a
mov qword [rsp + 0x250], r14
test rdi, rdi
je 0x140041c26
lea rdx, [rsp + 0x250]
lea rcx, [0x1400b3518]
call fcn.140013340
test eax, eax
js 0x140041c10
mov dword [rsp + 0x160], r14d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x160]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rbx, qword [rsp + 0x250]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140041c10
lea rsi, [rsp + 0x1d8]
lea rdx, [0x140000000]
nop
nop
lea rcx, [rsp + 0x7d0]
mov rax, qword [rdx + 0xb32a8]
mov qword [rcx], rax
mov rax, qword [rdx + 0xb32b0]
mov qword [rcx + 8], rax
mov eax, dword [rdx + 0xb32b8]
mov dword [rcx + 0x10], eax
cmp dword [rsi], r14d
je 0x140041b68
add dword [rsp + 0x7e0], 0xbb8
jmp 0x140041b86
cmp dword [rsi + 4], r14d
je 0x140041b7b
add dword [rsp + 0x7e0], 0x3e8
jmp 0x140041b86
add dword [rsp + 0x7e0], 0x7d0
mov qword [rsp + 0x220], r14
test rdi, rdi
je 0x140041c02
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x7d0]
call fcn.140013340
test eax, eax
js 0x140041bfb
mov dword [rsp + 0x170], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x170]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rbx, qword [rsp + 0x220]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
lea rdx, [0x140000000]
jmp 0x140041c02
lea rdx, [0x140000000]
add rsi, 8
sub r12, 1
jne 0x140041b30
test rdi, rdi
je 0x140041c26
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x98], r14
mov dword [rsp + 0x88], r14d
mov r15, r14
mov qword [rsp + 0xa0], r14
lea r12, [rbp - 0x18]
mov qword [rsp + 0xa8], r12
movsd xmm9, qword [0x1400bef40]
movsd xmm12, qword [0x1400bef38]
movsd xmm13, qword [0x1400bef30]
movsd xmm14, qword [0x1400bef28]
xorpd xmm10, xmm10
movsd xmm11, qword [0x1400bef20]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
nop
nop
nop
nop
mov dword [rsp + 0x8c], r14d
mov qword [rsp + 0x90], r14
lea rdi, [rsi - 0x18]
cmp r12, rdi
je 0x140041e58
cmp dword [rdi + 0x10], 0
jl 0x140041d61
mov rcx, qword [r12]
cmp rcx, qword [rdi]
jne 0x140041d61
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [r12 + 0x10], 0
jl 0x140041ce7
cmp rax, qword [r12]
jne 0x140041ce7
mov rsi, r12
lock add dword [r12 + 0x10], 1
jmp 0x140041d2b
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r12 + 8]
call qword [rax]
mov rsi, rax
test rax, rax
je 0x140043094
mov ecx, dword [r12 + 8]
mov dword [rax + 8], ecx
mov ecx, dword [r12 + 8]
add ecx, 1
movsxd rdx, ecx
lea r9, [rdx + rdx]
lea r8, [r12 + 0x18]
add rdx, rdx
lea rcx, [rax + 0x18]
call fcn.14007f790
or eax, 0xffffffff
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140041d46
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rsi, 0x18
mov qword [rsp + 0x78], rsi
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
jmp 0x140041e58
movsxd r12, dword [r13]
test r12d, r12d
jne 0x140041dd5
mov r12, qword [rdi]
cmp dword [rdi + 8], 0
je 0x140041e58
cmp dword [rdi + 0x10], 0
jge 0x140041d95
cmp dword [rsi - 0xc], 0
jl 0x14004309a
mov dword [rsi - 0x10], r14d
mov word [rsi], 0
jmp 0x140041e58
or eax, 0xffffffff
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140041db0
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rsi, [rax + 0x18]
mov qword [rsp + 0x78], rsi
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
jmp 0x140041e58
mov r14d, dword [rsi - 0x10]
mov r13, rbp
sub r13, rsi
sar r13, 1
mov ecx, 1
sub ecx, dword [rdi + 0x10]
mov eax, dword [rdi + 0xc]
sub eax, r12d
or eax, ecx
jge 0x140041e06
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp r13, r14
ja 0x140041e23
lea rdi, [r12 + r12]
lea r8, [rsi + r13*2]
mov r9, rdi
mov rdx, rdi
mov rcx, rsi
call fcn.14007f120
jmp 0x140041e38
lea rdi, [r12 + r12]
mov r9, rdi
mov r8, rbp
mov rdx, rdi
mov rcx, rsi
call fcn.14007f790
test r12d, r12d
js 0x1400430a5
cmp r12d, dword [rsi - 0xc]
jg 0x1400430a5
mov dword [rsi - 0x10], r12d
mov word [rdi + rsi], 0
xor r14d, r14d
lea rax, [0x140000000]
mov r13, qword [rax + r15*8 + 0xe1eb8]
test r13, r13
je 0x140041e7f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r13
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov r12, r13
sub r12, rsi
sar r12, 1
mov r15d, dword [rsi - 0x10]
lea edi, [r15 + r14]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edi
or eax, edx
jge 0x140041eb2
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp r12, r15
ja 0x140041ebb
lea r13, [rsi + r12*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rsi + r15*2]
mov r9, rdx
mov r8, r13
call fcn.14007f790
test edi, edi
js 0x14004313a
cmp edi, dword [rsi - 0xc]
jg 0x14004313a
mov dword [rsi - 0x10], edi
movsxd rax, edi
mov word [rsi + rax*2], 0
mov rdx, qword [rsp + 0x90]
mov rdx, qword [rsp + rdx*8 + 0x358]
test rdx, rdx
jne 0x140041f07
xor r13d, r13d
jmp 0x140041f1a
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
mov r15, rdx
mov rdi, rdx
sub rdi, rsi
sar rdi, 1
mov r14d, dword [rsi - 0x10]
lea r12d, [r14 + r13]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, r12d
or eax, edx
jge 0x140041f52
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp rdi, r14
ja 0x140041f5b
lea r15, [rsi + rdi*2]
movsxd rdx, r13d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r15
call fcn.14007f790
test r12d, r12d
js 0x14004312f
cmp r12d, dword [rsi - 0xc]
jg 0x14004312f
mov dword [rsi - 0x10], r12d
movsxd rax, r12d
mov word [rsi + rax*2], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, str.Default
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
lea r13, str.Default
lea r12, str.Default
sub r12, rsi
sar r12, 1
mov r14d, dword [rsi - 0x10]
lea edi, [r14 + rcx - 1]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edi
or eax, edx
jge 0x140041fe6
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp r12, r14
ja 0x140041fef
lea r13, [rsi + r12*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r13
call fcn.14007f790
test edi, edi
js 0x140043124
cmp edi, dword [rsi - 0xc]
jg 0x140043124
mov dword [rsi - 0x10], edi
movsxd rax, edi
mov word [rsi + rax*2], 0
xor r14d, r14d
mov qword [rsp + 0x308], r14
lea rax, [rsp + 0x308]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
mov rdx, rsi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140042078
mov eax, r14d
test rbx, rbx
je 0x140042067
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x308]
mov qword [rsp + 0x70], rbx
test eax, eax
je 0x1400420f0
mov qword [rsp + 0x238], r14
lea rax, [rsp + 0x370]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x238]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], r14d
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140043032
mov eax, r14d
test rbx, rbx
je 0x1400420db
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x238]
mov qword [rsp + 0x70], rbx
test eax, eax
jne 0x140043032
mov rax, qword [rsp + 0x90]
mov r15, qword [rsp + 0xa0]
lea rax, [rax + r15*2]
add r15, rax
mov r13d, r14d
imul r15, r15, 0x74
lea r12, [0x1400e0728]
nop
nop
nop
mov rcx, qword [r12 - 8]
lea rdx, [rsp + 0x7d0]
mov eax, dword [rcx]
mov dword [rdx], eax
mov eax, dword [rcx + 4]
mov dword [rdx + 4], eax
mov eax, dword [rcx + 8]
mov dword [rdx + 8], eax
mov eax, dword [rcx + 0xc]
mov dword [rdx + 0xc], eax
mov eax, dword [rcx + 0x10]
mov dword [rdx + 0x10], eax
movsxd rax, dword [r12]
add rax, r15
mov r14d, dword [rsp + rax + 0x3b0]
test rbx, rbx
je 0x14004231f
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430b0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x2c8], rax
movzx ecx, byte [rsp + 0x7df]
movzx edx, byte [rsp + 0x7de]
movzx edi, byte [rsp + 0x7dd]
movzx r8d, byte [rsp + 0x7dc]
movzx r10d, byte [rsp + 0x7db]
movzx r11d, byte [rsp + 0x7da]
movzx ebx, byte [rsp + 0x7d9]
movzx esi, byte [rsp + 0x7d8]
movzx ebp, word [rsp + 0x7d6]
movzx r9d, word [rsp + 0x7d4]
mov eax, dword [rsp + 0x7e0]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x58], edx
mov dword [rsp + 0x50], edi
mov dword [rsp + 0x48], r8d
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], r11d
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
mov r8d, dword [rsp + 0x7d0]
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x2c8]
call fcn.140015c60
xor eax, eax
or rbp, 0xffffffffffffffff
mov rcx, rbp
mov rbx, qword [rsp + 0x2c8]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x1400422f1
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, rbp
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, ebp
test eax, eax
jg 0x1400422ab
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x180], r14d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x180]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
or r14, 0xffffffffffffffff
jmp 0x140042323
lea rdx, [rbx - 0x18]
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x140042318
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x140042323
mov rbx, qword [rsp + 0x70]
jmp 0x140042323
or r14, 0xffffffffffffffff
add r13d, 1
add r12, 0x10
cmp r13d, 0xa
jb 0x140042120
mov eax, dword [rsp + r15 + 0x3b4]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm9
movsd xmm0, xmm6
call fcn.1400a15c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400a16d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x140042377
movsd xmm7, xmm0
cvttsd2si rbp, xmm7
test rbx, rbx
je 0x140042504
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430bb
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x248], rax
mov dword [rsp + 0x68], 1
mov dword [rsp + 0x60], 0x9a
mov dword [rsp + 0x58], 0xfc
mov dword [rsp + 0x50], 0x22
mov dword [rsp + 0x48], 0x94
mov dword [rsp + 0x40], 0x59
mov dword [rsp + 0x38], 0x8e
mov dword [rsp + 0x30], 0x8d
mov dword [rsp + 0x28], VariantTimeToSystemTime
mov dword [rsp + 0x20], 0x4444
mov r9d, 0xa3d6
mov r8d, 0xc68abdf3
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x248]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x248]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x1400424dc
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004249b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x190], ebp
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x190]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140042504
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400424ff
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x140042504
mov rbx, qword [rsp + 0x70]
mov eax, dword [rsp + r15 + 0x3bc]
test eax, eax
jne 0x1400426a9
mov ebp, dword [rsp + r15 + 0x3c0]
test rbx, rbx
je 0x140042842
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430c6
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x348], rax
mov dword [rsp + 0x68], 4
mov dword [rsp + 0x60], 0xa6
mov dword [rsp + 0x58], 0x97
mov dword [rsp + 0x50], SafeArrayUnaccessData
mov dword [rsp + 0x48], 0x82
mov dword [rsp + 0x40], 0x52
mov dword [rsp + 0x38], 0x35
mov dword [rsp + 0x30], 0xdd
mov dword [rsp + 0x28], 0x8c
mov dword [rsp + 0x20], 0x4a09
mov r9d, 0xe4bb
mov r8d, 0x6b846aad
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x348]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x348]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x14004267f
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004263b
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x1a0], ebp
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140042842
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004283d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x140042842
cmp eax, 1
jne 0x140042842
mov ebp, dword [rsp + r15 + 0x3d8]
test rbx, rbx
je 0x140042842
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430d1
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x258], rax
mov dword [rsp + 0x68], 4
mov dword [rsp + 0x60], 0xa6
mov dword [rsp + 0x58], 0x97
mov dword [rsp + 0x50], SafeArrayUnaccessData
mov dword [rsp + 0x48], 0x82
mov dword [rsp + 0x40], 0x52
mov dword [rsp + 0x38], 0x35
mov dword [rsp + 0x30], 0xdd
mov dword [rsp + 0x28], 0x8c
mov dword [rsp + 0x20], 0x4a09
mov r9d, 0xe4bb
mov r8d, 0x6b846aad
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x258]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x258]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x14004281a
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400427d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x1b0], ebp
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140042842
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004283d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x140042842
mov rbx, qword [rsp + 0x70]
cmp dword [0x1400e8dcc], 0
je 0x1400429e1
test rbx, rbx
je 0x140042d2c
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430dc
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x2d8], rax
mov dword [rsp + 0x68], 5
mov dword [rsp + 0x60], 0xa6
mov dword [rsp + 0x58], 0x97
mov dword [rsp + 0x50], SafeArrayUnaccessData
mov dword [rsp + 0x48], 0x82
mov dword [rsp + 0x40], 0x52
mov dword [rsp + 0x38], 0x35
mov dword [rsp + 0x30], 0xdd
mov dword [rsp + 0x28], 0x8c
mov dword [rsp + 0x20], 0x4a09
mov r9d, 0xe4bb
mov r8d, 0x6b846aad
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x2d8]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x2d8]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x1400429b4
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004296e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor r14d, r14d
mov dword [rsp + 0x1c0], r14d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1c0]
mov qword [rsp + 0x20], rax
lea r9d, [r14 + 4]
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140042d34
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042d1d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x140042d34
mov rax, qword [rsp + 0x90]
lea rcx, str.Music
cmp qword [rsp + rax*8 + 0x358], rcx
jne 0x140042b95
test rbx, rbx
je 0x140042d27
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430e7
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x268], rax
mov dword [rsp + 0x68], 5
mov dword [rsp + 0x60], 0xa6
mov dword [rsp + 0x58], 0x97
mov dword [rsp + 0x50], SafeArrayUnaccessData
mov dword [rsp + 0x48], 0x82
mov dword [rsp + 0x40], 0x52
mov dword [rsp + 0x38], 0x35
mov dword [rsp + 0x30], 0xdd
mov dword [rsp + 0x28], 0x8c
mov dword [rsp + 0x20], 0x4a09
mov r9d, 0xe4bb
mov r8d, 0x6b846aad
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x268]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x268]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x140042b68
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042b1d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov dword [rsp + 0x1d0], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
xor r14d, r14d
jmp 0x140042d34
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042d1d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x140042d34
test rbx, rbx
je 0x140042d31
call fcn.1400544b4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x1400430f2
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x318], rax
mov dword [rsp + 0x68], 5
mov dword [rsp + 0x60], 0xa6
mov dword [rsp + 0x58], 0x97
mov dword [rsp + 0x50], SafeArrayUnaccessData
mov dword [rsp + 0x48], 0x82
mov dword [rsp + 0x40], 0x52
mov dword [rsp + 0x38], 0x35
mov dword [rsp + 0x30], 0xdd
mov dword [rsp + 0x28], 0x8c
mov dword [rsp + 0x20], 0x4a09
mov r9d, 0xe4bb
mov r8d, 0x6b846aad
lea rdx, str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__d
lea rcx, [rsp + 0x318]
call fcn.140015c60
xor eax, eax
mov rcx, r14
mov rbx, qword [rsp + 0x318]
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov edi, eax
mov ecx, eax
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
test rax, rax
je 0x140042cf7
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.140083610
xor eax, eax
mov rcx, r14
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
mov r8d, r8d
add r8, r8
mov rdx, rbx
mov rcx, rsi
call fcn.1400838d0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042cb4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor r14d, r14d
mov dword [rsp + 0x1a8], r14d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1a8]
mov qword [rsp + 0x20], rax
lea r9d, [r14 + 4]
xor r8d, r8d
mov rdx, rsi
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140042d34
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042d1d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x140042d34
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x140042d34
xor r14d, r14d
jmp 0x140042d34
xor r14d, r14d
jmp 0x140042d34
xor r14d, r14d
mov eax, dword [rsp + r15 + 0x3c4]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm12
mulsd xmm6, xmm13
movsd xmm0, xmm6
call fcn.1400a15c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400a16d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x140042d7b
movsd xmm7, xmm0
mov qword [rsp + 0x278], r14
test rbx, rbx
je 0x140042de7
lea rdx, [rsp + 0x278]
lea rcx, [0x1400b39d8]
call fcn.140013340
test eax, eax
js 0x140042de7
cvttsd2si rax, xmm7
mov dword [rsp + 0x158], eax
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x158]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x278]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov eax, dword [rsp + r15 + 0x3ec]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm9
movsd xmm0, xmm6
call fcn.1400a15c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400a16d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x140042e29
movsd xmm7, xmm0
mov qword [rsp + 0x2e8], r14
test rbx, rbx
je 0x140042e95
lea rdx, [rsp + 0x2e8]
lea rcx, [0x1400b3a50]
call fcn.140013340
test eax, eax
js 0x140042e95
cvttsd2si rax, xmm7
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2e8]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov eax, dword [rsp + r15 + 0x400]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm9
movsd xmm0, xmm6
call fcn.1400a15c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400a16d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x140042ed7
movsd xmm7, xmm0
mov qword [rsp + 0x288], r14
test rbx, rbx
je 0x140042f43
lea rdx, [rsp + 0x288]
lea rcx, [0x1400b3948]
call fcn.140013340
test eax, eax
js 0x140042f43
cvttsd2si rax, xmm7
mov dword [rsp + 0x198], eax
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x198]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x288]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cvtsi2sd xmm7, dword [rsp + r15 + 0x41c]
mulsd xmm7, xmm14
movsd xmm6, xmm10
subsd xmm6, xmm7
movsd xmm0, xmm6
call fcn.1400a15c0
movsd xmm8, xmm0
movsd xmm0, xmm6
call fcn.1400a16d0
subsd xmm6, xmm8
movsd xmm1, xmm0
subsd xmm1, xmm10
subsd xmm1, xmm7
comisd xmm1, xmm6
jae 0x140042f8f
movsd xmm8, xmm0
movsd xmm0, xmm11
subsd xmm0, xmm8
cvttsd2si rdi, xmm0
mov qword [rsp + 0x338], r14
test rbx, rbx
je 0x140043025
lea rdx, [rsp + 0x338]
lea rcx, [0x1400b3978]
call fcn.140013340
test eax, eax
js 0x140043005
mov dword [rsp + 0xe8], edi
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x338]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, r14
mov qword [rsp + 0x70], rbx
mov rbp, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
jmp 0x140043032
mov rbp, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov eax, dword [rsp + 0x8c]
add eax, 1
mov dword [rsp + 0x8c], eax
add qword [rsp + 0x90], 1
cmp eax, 3
mov r12, qword [rsp + 0xa8]
mov r15, qword [rsp + 0xa0]
mov r13, qword [rsp + 0xb8]
jb 0x140041ca0
mov eax, dword [rsp + 0x88]
add eax, 1
mov dword [rsp + 0x88], eax
add r15, 1
mov qword [rsp + 0xa0], r15
cmp eax, 3
jae 0x1400430fd
jmp 0x140041c90
call fcn.140011890
int3
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
mov ecx, 0x80004005
call fcn.140012170
int3
call fcn.14005f97c
mov r9d, 1
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14005fcbc
jmp 0x140044187
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80070057
call fcn.140012170
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
or rdi, 0xffffffffffffffff
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x140043169
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
add edi, 0xffffffff
test edi, edi
jg 0x140044209
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140044209
mov ecx, 0x80070057
call fcn.140012170
int3
test esi, esi
je 0x1400431f1
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400431c4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r14d
add r14d, 0xffffffff
test r14d, r14d
jg 0x140044209
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140044209
xor eax, eax
mov rcx, r14
lea rdi, str.SOFTWAREDTSPremiumSuitPresets
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, str.SOFTWAREDTSPremiumSuitPresets
lea rcx, [rsp + 0x80]
call fcn.140011ed0
lea rdx, [0x1400b3ba8]
lea rcx, [rsp + 0x80]
call fcn.140011110
xor r15d, r15d
mov qword [rsp + 0x298], r15
lea rax, [rsp + 0x298]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
mov rbp, qword [rsp + 0x80]
mov rdx, rbp
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140043281
mov rdi, qword [rsp + 0x298]
mov qword [rsp + 0x98], rdi
jmp 0x140043321
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], r15d
xor r9d, r9d
mov r8, rbp
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x98]
call fcn.1400122f0
test eax, eax
je 0x140043319
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x1400432ca
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400432ec
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], r14d
add r14d, 0xffffffff
test r14d, r14d
jg 0x140044209
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140044209
mov rdi, qword [rsp + 0x98]
lea rsi, [rsp + 0x1d8]
nop
nop
lea rcx, [rsp + 0x7d0]
mov rax, qword [r13 + 0xb32a8]
mov qword [rcx], rax
mov rax, qword [r13 + 0xb32b0]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0xb32b8]
mov dword [rcx + 0x10], eax
cmp dword [rsi], r15d
je 0x140043369
add dword [rsp + 0x7e0], 0xbb8
jmp 0x140043387
cmp dword [rsi + 4], r15d
je 0x14004337c
add dword [rsp + 0x7e0], 0x3e8
jmp 0x140043387
add dword [rsp + 0x7e0], 0x7d0
mov qword [rsp + 0x2f8], r15
test rdi, rdi
je 0x1400433f3
lea rdx, [rsp + 0x2f8]
lea rcx, [rsp + 0x7d0]
call fcn.140013340
test eax, eax
js 0x1400433f3
mov dword [rsp + 0x168], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x168]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rbx, qword [rsp + 0x2f8]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rbx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
add rsi, 8
sub r12, 1
jne 0x140043330
test rdi, rdi
je 0x140043417
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x98], r15
mov dword [rsp + 0x8c], r15d
mov r12, r15
mov qword [rsp + 0x90], r15
lea r13, [rbp - 0x18]
mov qword [rsp + 0xa8], r13
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov dword [rsp + 0x88], r15d
mov qword [rsp + 0xa0], r15
jmp 0x140043456
or r14, 0xffffffffffffffff
lea rdi, [rsi - 0x18]
cmp r13, rdi
je 0x140043524
cmp dword [rdi + 0x10], 0
jl 0x14004350e
mov rcx, qword [r13]
cmp rcx, qword [rdi]
jne 0x14004350e
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [r13 + 0x10], 0
jl 0x14004349b
cmp rax, qword [r13]
jne 0x14004349b
mov rsi, r13
lock add dword [r13 + 0x10], 1
jmp 0x1400434db
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r13 + 8]
call qword [rax]
mov rsi, rax
test rax, rax
je 0x14004415e
mov ecx, dword [r13 + 8]
mov dword [rax + 8], ecx
mov ecx, dword [r13 + 8]
add ecx, 1
movsxd rdx, ecx
lea r9, [rdx + rdx]
lea r8, [r13 + 0x18]
add rdx, rdx
lea rcx, [rax + 0x18]
call fcn.14007f790
mov eax, r14d
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400434f6
mov rcx, qword [rdi]
mov rax, qword [rcx]
mov rdx, rdi
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rsi, 0x18
mov qword [rsp + 0x78], rsi
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
jmp 0x140043524
mov r8d, dword [rbp - 0x10]
mov rdx, rbp
lea rcx, [rsp + 0x78]
call fcn.140011ed0
mov rsi, qword [rsp + 0x78]
lea rax, [0x140000000]
mov r13, qword [rax + r12*8 + 0xe1eb8]
test r13, r13
jne 0x14004353d
mov r14d, r15d
jmp 0x14004354f
xor eax, eax
mov rcx, r14
mov rdi, r13
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
mov r12, r13
sub r12, rsi
sar r12, 1
mov r15d, dword [rsi - 0x10]
lea edi, [r15 + r14]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edi
or eax, edx
jge 0x140043582
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp r12, r15
ja 0x14004358b
lea r13, [rsi + r12*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rsi + r15*2]
mov r9, rdx
mov r8, r13
call fcn.14007f790
test edi, edi
js 0x1400441fe
cmp edi, dword [rsi - 0xc]
jg 0x1400441fe
mov dword [rsi - 0x10], edi
movsxd rax, edi
mov word [rsi + rax*2], 0
mov rdx, qword [rsp + 0xa0]
mov rdx, qword [rsp + rdx*8 + 0x358]
test rdx, rdx
jne 0x1400435d7
xor r13d, r13d
jmp 0x1400435ea
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
mov r15, rdx
mov rdi, rdx
sub rdi, rsi
sar rdi, 1
mov r14d, dword [rsi - 0x10]
lea r12d, [r14 + r13]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, r12d
or eax, edx
jge 0x140043622
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp rdi, r14
ja 0x14004362b
lea r15, [rsi + rdi*2]
movsxd rdx, r13d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r15
call fcn.14007f790
test r12d, r12d
js 0x1400441f3
cmp r12d, dword [rsi - 0xc]
jg 0x1400441f3
mov dword [rsi - 0x10], r12d
movsxd rax, r12d
mov word [rsi + rax*2], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, str.Default
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
lea r13, str.Default
lea r12, str.Default
sub r12, rsi
sar r12, 1
mov r14d, dword [rsi - 0x10]
lea edi, [r14 + rcx - 1]
mov edx, 1
sub edx, dword [rsi - 8]
mov eax, dword [rsi - 0xc]
sub eax, edi
or eax, edx
jge 0x1400436b6
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140011ac0
mov rsi, qword [rsp + 0x78]
cmp r12, r14
ja 0x1400436bf
lea r13, [rsi + r12*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r13
call fcn.14007f790
test edi, edi
js 0x1400441e8
cmp edi, dword [rsi - 0xc]
jg 0x1400441e8
mov dword [rsi - 0x10], edi
movsxd rax, edi
mov word [rsi + rax*2], 0
xor r15d, r15d
mov qword [rsp + 0x2a8], r15
lea rax, [rsp + 0x2a8]
mov qword [rsp + 0x20], rax
mov r9d, 0x20006
xor r8d, r8d
mov rdx, rsi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140043748
mov eax, r15d
test rbx, rbx
je 0x140043737
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x2a8]
mov qword [rsp + 0x70], rbx
test eax, eax
je 0x1400437c0
mov qword [rsp + 0x328], r15
lea rax, [rsp + 0x380]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x328]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x20006
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov rdx, rsi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1400440f6
mov eax, r15d
test rbx, rbx
je 0x1400437ab
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x328]
mov qword [rsp + 0x70], rbx
test eax, eax
jne 0x140044100
mov qword [rsp + 0x2b8], r15
test rbx, rbx
je 0x140043828
lea rdx, [rsp + 0x2b8]
lea rcx, [0x1400b39a8]
call fcn.140013340
test eax, eax
js 0x140043828
mov dword [rsp + 0xf8], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2b8]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov r12, qword [rsp + 0x90]
cmp dword [rsp + r12*8 + 0x1d8], r15d
je 0x1400438af
mov qword [rsp + 0x218], r15
test rbx, rbx
je 0x140043917
lea rdx, [rsp + 0x218]
lea rcx, [0x1400b39c0]
call fcn.140013340
test eax, eax
js 0x140043917
mov dword [rsp + 0x1b8], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1b8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x218]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140043917
mov qword [rsp + 0x230], r15
test rbx, rbx
je 0x140043917
lea rdx, [rsp + 0x230]
lea rcx, [0x1400b39c0]
call fcn.140013340
test eax, eax
js 0x140043917
mov dword [rsp + 0x108], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x108]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x230]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x240], r15
test rbx, rbx
je 0x14004397f
lea rdx, [rsp + 0x240]
lea rcx, [0x1400b39d8]
call fcn.140013340
test eax, eax
js 0x14004397f
mov dword [rsp + 0x178], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x178]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x240]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x210], r15
test rbx, rbx
je 0x1400439ea
lea rdx, [rsp + 0x210]
lea rcx, [0x1400b39f0]
call fcn.140013340
test eax, eax
js 0x1400439ea
mov dword [rsp + 0x118], SafeArrayUnaccessData
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x118]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x210]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x260], r15
test rbx, rbx
je 0x140043a52
lea rdx, [rsp + 0x260]
lea rcx, [0x1400b3a08]
call fcn.140013340
test eax, eax
js 0x140043a52
mov dword [rsp + 0x128], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x128]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x260]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cmp dword [0x1400e8dcc], r15d
je 0x140043ad0
mov qword [rsp + 0x270], r15
test rbx, rbx
je 0x140043bc6
lea rdx, [rsp + 0x270]
lea rcx, [0x1400b3a20]
call fcn.140013340
test eax, eax
js 0x140043bc6
mov dword [rsp + 0xc0], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x270]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140043bc6
mov rax, qword [rsp + 0xa0]
lea rcx, str.Music
cmp qword [rsp + rax*8 + 0x358], rcx
jne 0x140043b5e
mov qword [rsp + 0x280], r15
test rbx, rbx
je 0x140043bc6
lea rdx, [rsp + 0x280]
lea rcx, [0x1400b3a20]
call fcn.140013340
test eax, eax
js 0x140043bc6
mov dword [rsp + 0x130], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x130]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x280]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140043bc6
mov qword [rsp + 0x290], r15
test rbx, rbx
je 0x140043bc6
lea rdx, [rsp + 0x290]
lea rcx, [0x1400b3a20]
call fcn.140013340
test eax, eax
js 0x140043bc6
mov dword [rsp + 0x138], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x138]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x290]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2a0], r15
test rbx, rbx
je 0x140043c2e
lea rdx, [rsp + 0x2a0]
lea rcx, [0x1400b3a98]
call fcn.140013340
test eax, eax
js 0x140043c2e
mov dword [rsp + 0x188], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x188]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2a0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2b0], r15
test rbx, rbx
je 0x140043c96
lea rdx, [rsp + 0x2b0]
lea rcx, [0x1400b3ab0]
call fcn.140013340
test eax, eax
js 0x140043c96
mov dword [rsp + 0x148], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x148]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2b0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2c0], r15
test rbx, rbx
je 0x140043cfe
lea rdx, [rsp + 0x2c0]
lea rcx, [0x1400b3a38]
call fcn.140013340
test eax, eax
js 0x140043cfe
mov dword [rsp + 0x1c8], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x1c8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2c0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2d0], r15
test rbx, rbx
je 0x140043d66
lea rdx, [rsp + 0x2d0]
lea rcx, [0x1400b3a50]
call fcn.140013340
test eax, eax
js 0x140043d66
mov dword [rsp + 0xc8], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2d0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2e0], r15
test rbx, rbx
je 0x140043dd1
lea rdx, [rsp + 0x2e0]
lea rcx, [0x1400b3a68]
call fcn.140013340
test eax, eax
js 0x140043dd1
mov dword [rsp + 0xd0], 0x64
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2e0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x2f0], r15
test rbx, rbx
je 0x140043e39
lea rdx, [rsp + 0x2f0]
lea rcx, [0x1400b3a80]
call fcn.140013340
test eax, eax
js 0x140043e39
mov dword [rsp + 0xe0], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x2f0]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
cmp dword [rsp + r12*8 + 0x1dc], r15d
je 0x140043ece
mov rax, qword [rsp + 0xb8]
bt dword [rax + 0x900], 0x16
jae 0x140043ece
mov qword [rsp + 0x300], r15
test rbx, rbx
je 0x140043f36
lea rdx, [rsp + 0x300]
lea rcx, [0x1400b3930]
call fcn.140013340
test eax, eax
js 0x140043f36
mov dword [rsp + 0xf0], 1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x300]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
jmp 0x140043f36
mov qword [rsp + 0x310], r15
test rbx, rbx
je 0x140043f36
lea rdx, [rsp + 0x310]
lea rcx, [0x1400b3930]
call fcn.140013340
test eax, eax
js 0x140043f36
mov dword [rsp + 0x100], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x100]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x310]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x320], r15
test rbx, rbx
je 0x140043fa1
lea rdx, [rsp + 0x320]
lea rcx, [0x1400b3948]
call fcn.140013340
test eax, eax
js 0x140043fa1
mov dword [rsp + 0x110], 7
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x110]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x320]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x330], r15
test rbx, rbx
je 0x140044009
lea rdx, [rsp + 0x330]
lea rcx, [0x1400b3960]
call fcn.140013340
test eax, eax
js 0x140044009
mov dword [rsp + 0x120], r15d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x120]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x330]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x340], r15
test rbx, rbx
je 0x140044074
lea rdx, [rsp + 0x340]
lea rcx, [0x1400b3978]
call fcn.140013340
test eax, eax
js 0x140044074
mov dword [rsp + 0x140], SafeArrayCopy
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x340]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov qword [rsp + 0x350], r15
test rbx, rbx
je 0x140044108
lea rdx, [rsp + 0x350]
lea rcx, [0x1400b3990]
call fcn.140013340
test eax, eax
js 0x1400440e3
mov dword [rsp + 0x150], 2
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x150]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdi, qword [rsp + 0x350]
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, r15
mov qword [rsp + 0x70], rbx
jmp 0x140044108
mov r12, qword [rsp + 0x90]
jmp 0x140044108
mov r12, qword [rsp + 0x90]
mov eax, dword [rsp + 0x88]
add eax, 1
mov dword [rsp + 0x88], eax
add qword [rsp + 0xa0], 1
cmp eax, 3
mov r13, qword [rsp + 0xa8]
jb 0x140043452
mov eax, dword [rsp + 0x8c]
add eax, 1
mov dword [rsp + 0x8c], eax
add r12, 1
mov qword [rsp + 0x90], r12
cmp eax, 3
jae 0x140044164
or r14, 0xffffffffffffffff
jmp 0x140043440
call fcn.140011890
int3
call fcn.14005f97c
mov r9d, 2
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14005fcbc
nop
test rbx, rbx
je 0x140044196
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x1400441aa
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rdx, [rsi - 0x18]
or rdi, 0xffffffffffffffff
mov eax, edi
lock xadd dword [rdx + 0x10], eax
add eax, edi
test eax, eax
jg 0x1400441c9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xa8]
lock xadd dword [rdx + 0x10], edi
add edi, 0xffffffff
test edi, edi
jg 0x140044209
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140044209
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80070057
call fcn.140012170
int3
mov ecx, 0x80070057
call fcn.140012170
nop
mov rcx, qword [rsp + 0x7e8]
xor rcx, rsp
call fcn.14007f100
lea r11, [rsp + 0x880]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret