Function at 0x14004c6d0
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 [0x1400f0bc8]
xor rax, rsp
mov qword [rsp + 0x7e8], rax
mov r15d, edx
mov rdi, rcx
mov qword [rsp + 0xb8], rcx
call fcn.14006fca0
xor r9d, r9d
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14006ff40
mov esi, eax
cmp eax, 1
je 0x14004f2d9
call fcn.140062978
mov rdx, rax
xor ebp, ebp
mov ecx, ebp
test rax, rax
setne cl
test ecx, ecx
jne 0x14004c79d
mov ecx, 0x80004005
call fcn.140001950
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.140062978
mov rdx, rax
mov ecx, ebp
test rax, rax
setne cl
test ecx, ecx
jne 0x14004c7d1
mov ecx, 0x80004005
call fcn.140001950
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 + 0xc0bb0]
mov qword [rcx], rax
mov rax, qword [r13 + 0xc0bb8]
mov qword [rcx + 8], rax
lea rcx, [rdi + 0xa40]
lea rdx, [rsp + 0x378]
call fcn.14005e620
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 0x14004c8f6
mov edi, ebp
jmp 0x14004c9cb
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 0x14004c9c6
lea rdx, [rsp + 0x390]
lea rcx, [rsp + 0x388]
call fcn.140014630
mov rdx, qword [rsp + 0x388]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004c9c2
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edi, ebp
jmp 0x14004c9cb
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 0x14004c9ef
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test edi, edi
je 0x14004e26e
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.140001bd0
xor eax, eax
mov rcx, r14
lea rbx, [0x1400c1d38]
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 0x14004ca7c
mov edx, edi
lea rcx, [rsp + 0x80]
call fcn.140001970
mov rbp, qword [rsp + 0x80]
cmp rsi, r13
ja 0x14004ca86
lea rbx, [rbp + rsi*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rbp + r13*2]
mov r9, rdx
mov r8, rbx
call fcn.14008e4d0
test edi, edi
js 0x14004e263
cmp edi, dword [rbp - 0xc]
jg 0x14004e263
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 0x14004cb0e
mov rdi, qword [rsp + 0x228]
mov qword [rsp + 0x98], rdi
jmp 0x14004cb70
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 0x14004e215
mov rdi, qword [rsp + 0x208]
mov qword [rsp + 0x98], rdi
test r15d, r15d
je 0x14004cbea
mov qword [rsp + 0x250], r14
test rdi, rdi
je 0x14004ccf6
lea rdx, [rsp + 0x250]
lea rcx, [0x1400c16b8]
call fcn.1400153e0
test eax, eax
js 0x14004cce0
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 0x14004cce0
lea rsi, [rsp + 0x1d8]
lea rdx, [0x140000000]
nop
nop
lea rcx, [rsp + 0x7d0]
mov rax, qword [rdx + 0xc1430]
mov qword [rcx], rax
mov rax, qword [rdx + 0xc1438]
mov qword [rcx + 8], rax
mov eax, dword [rdx + 0xc1440]
mov dword [rcx + 0x10], eax
cmp dword [rsi], r14d
je 0x14004cc38
add dword [rsp + 0x7e0], 0xbb8
jmp 0x14004cc56
cmp dword [rsi + 4], r14d
je 0x14004cc4b
add dword [rsp + 0x7e0], 0x3e8
jmp 0x14004cc56
add dword [rsp + 0x7e0], 0x7d0
mov qword [rsp + 0x220], r14
test rdi, rdi
je 0x14004ccd2
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x7d0]
call fcn.1400153e0
test eax, eax
js 0x14004cccb
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 0x14004ccd2
lea rdx, [0x140000000]
add rsi, 8
sub r12, 1
jne 0x14004cc00
test rdi, rdi
je 0x14004ccf6
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 [0x1400ce9a8]
movsd xmm12, qword [0x1400ce9a0]
movsd xmm13, qword [0x1400ce998]
movsd xmm14, qword [0x1400ce990]
xorpd xmm10, xmm10
movsd xmm11, qword [0x1400ce988]
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 0x14004cf28
cmp dword [rdi + 0x10], 0
jl 0x14004ce31
mov rcx, qword [r12]
cmp rcx, qword [rdi]
jne 0x14004ce31
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [r12 + 0x10], 0
jl 0x14004cdb7
cmp rax, qword [r12]
jne 0x14004cdb7
mov rsi, r12
lock add dword [r12 + 0x10], 1
jmp 0x14004cdfb
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r12 + 8]
call qword [rax]
mov rsi, rax
test rax, rax
je 0x14004e164
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.14008e4d0
or eax, 0xffffffff
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004ce16
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 0x14004cf28
movsxd r12, dword [r13]
test r12d, r12d
jne 0x14004cea5
mov r12, qword [rdi]
cmp dword [rdi + 8], 0
je 0x14004cf28
cmp dword [rdi + 0x10], 0
jge 0x14004ce65
cmp dword [rsi - 0xc], 0
jl 0x14004e16a
mov dword [rsi - 0x10], r14d
mov word [rsi], 0
jmp 0x14004cf28
or eax, 0xffffffff
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004ce80
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 0x14004cf28
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 0x14004ced6
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp r13, r14
ja 0x14004cef3
lea rdi, [r12 + r12]
lea r8, [rsi + r13*2]
mov r9, rdi
mov rdx, rdi
mov rcx, rsi
call fcn.14008dcf0
jmp 0x14004cf08
lea rdi, [r12 + r12]
mov r9, rdi
mov r8, rbp
mov rdx, rdi
mov rcx, rsi
call fcn.14008e4d0
test r12d, r12d
js 0x14004e175
cmp r12d, dword [rsi - 0xc]
jg 0x14004e175
mov dword [rsi - 0x10], r12d
mov word [rdi + rsi], 0
xor r14d, r14d
lea rax, [0x140000000]
mov r13, qword [rax + r15*8 + 0xf3ed8]
test r13, r13
je 0x14004cf4f
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 0x14004cf82
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp r12, r15
ja 0x14004cf8b
lea r13, [rsi + r12*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rsi + r15*2]
mov r9, rdx
mov r8, r13
call fcn.14008e4d0
test edi, edi
js 0x14004e20a
cmp edi, dword [rsi - 0xc]
jg 0x14004e20a
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 0x14004cfd7
xor r13d, r13d
jmp 0x14004cfea
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 0x14004d022
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp rdi, r14
ja 0x14004d02b
lea r15, [rsi + rdi*2]
movsxd rdx, r13d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r15
call fcn.14008e4d0
test r12d, r12d
js 0x14004e1ff
cmp r12d, dword [rsi - 0xc]
jg 0x14004e1ff
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 0x14004d0b6
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp r12, r14
ja 0x14004d0bf
lea r13, [rsi + r12*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r13
call fcn.14008e4d0
test edi, edi
js 0x14004e1f4
cmp edi, dword [rsi - 0xc]
jg 0x14004e1f4
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 0x14004d148
mov eax, r14d
test rbx, rbx
je 0x14004d137
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x308]
mov qword [rsp + 0x70], rbx
test eax, eax
je 0x14004d1c0
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 0x14004e102
mov eax, r14d
test rbx, rbx
je 0x14004d1ab
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x238]
mov qword [rsp + 0x70], rbx
test eax, eax
jne 0x14004e102
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, [0x1400f2728]
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 0x14004d3ef
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e180
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, [0x1400c2680]
lea rcx, [rsp + 0x2c8]
call fcn.140001e50
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 0x14004d3c1
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, ebp
test eax, eax
jg 0x14004d37b
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 0x14004d3f3
lea rdx, [rbx - 0x18]
or r14, 0xffffffffffffffff
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, r14d
test eax, eax
jg 0x14004d3e8
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x14004d3f3
mov rbx, qword [rsp + 0x70]
jmp 0x14004d3f3
or r14, 0xffffffffffffffff
add r13d, 1
add r12, 0x10
cmp r13d, 0xa
jb 0x14004d1f0
mov eax, dword [rsp + r15 + 0x3b4]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm9
movsd xmm0, xmm6
call fcn.1400b01c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400b02d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x14004d447
movsd xmm7, xmm0
cvttsd2si rbp, xmm7
test rbx, rbx
je 0x14004d5d4
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e18b
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, [0x1400c2680]
lea rcx, [rsp + 0x248]
call fcn.140001e50
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 0x14004d5ac
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d56b
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 0x14004d5d4
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d5cf
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x14004d5d4
mov rbx, qword [rsp + 0x70]
mov eax, dword [rsp + r15 + 0x3bc]
test eax, eax
jne 0x14004d779
mov ebp, dword [rsp + r15 + 0x3c0]
test rbx, rbx
je 0x14004d912
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e196
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, [0x1400c2680]
lea rcx, [rsp + 0x348]
call fcn.140001e50
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 0x14004d74f
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d70b
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 0x14004d912
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d90d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x14004d912
cmp eax, 1
jne 0x14004d912
mov ebp, dword [rsp + r15 + 0x3d8]
test rbx, rbx
je 0x14004d912
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e1a1
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, [0x1400c2680]
lea rcx, [rsp + 0x258]
call fcn.140001e50
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 0x14004d8ea
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d8a9
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 0x14004d912
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004d90d
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
jmp 0x14004d912
mov rbx, qword [rsp + 0x70]
cmp dword [0x1400fb24c], 0
je 0x14004dab1
test rbx, rbx
je 0x14004ddfc
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e1ac
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, [0x1400c2680]
lea rcx, [rsp + 0x2d8]
call fcn.140001e50
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 0x14004da84
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004da3e
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 0x14004de04
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004dded
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x14004de04
mov rax, qword [rsp + 0x90]
lea rcx, str.Music
cmp qword [rsp + rax*8 + 0x358], rcx
jne 0x14004dc65
test rbx, rbx
je 0x14004ddf7
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e1b7
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, [0x1400c2680]
lea rcx, [rsp + 0x268]
call fcn.140001e50
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 0x14004dc38
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004dbed
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 0x14004de04
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004dded
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x14004de04
test rbx, rbx
je 0x14004de01
call fcn.140062978
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x14004e1c2
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, [0x1400c2680]
lea rcx, [rsp + 0x318]
call fcn.140001e50
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 0x14004ddc7
mov r8, rdi
xor edx, edx
mov rcx, rax
call fcn.1400926c0
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.1400927c0
nop
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004dd84
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 0x14004de04
lea rdx, [rbx - 0x18]
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004dded
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x14004de04
mov rbx, qword [rsp + 0x70]
xor r14d, r14d
jmp 0x14004de04
xor r14d, r14d
jmp 0x14004de04
xor r14d, r14d
jmp 0x14004de04
xor r14d, r14d
mov eax, dword [rsp + r15 + 0x3c4]
cvtsi2sd xmm6, rax
mulsd xmm6, xmm12
mulsd xmm6, xmm13
movsd xmm0, xmm6
call fcn.1400b01c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400b02d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x14004de4b
movsd xmm7, xmm0
mov qword [rsp + 0x278], r14
test rbx, rbx
je 0x14004deb7
lea rdx, [rsp + 0x278]
lea rcx, [0x1400c1b60]
call fcn.1400153e0
test eax, eax
js 0x14004deb7
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.1400b01c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400b02d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x14004def9
movsd xmm7, xmm0
mov qword [rsp + 0x2e8], r14
test rbx, rbx
je 0x14004df65
lea rdx, [rsp + 0x2e8]
lea rcx, [0x1400c1bd8]
call fcn.1400153e0
test eax, eax
js 0x14004df65
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.1400b01c0
movsd xmm7, xmm0
movsd xmm0, xmm6
call fcn.1400b02d0
movsd xmm2, xmm6
subsd xmm2, xmm7
movsd xmm1, xmm0
subsd xmm1, xmm6
comisd xmm1, xmm2
jae 0x14004dfa7
movsd xmm7, xmm0
mov qword [rsp + 0x288], r14
test rbx, rbx
je 0x14004e013
lea rdx, [rsp + 0x288]
lea rcx, [0x1400c1ad0]
call fcn.1400153e0
test eax, eax
js 0x14004e013
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.1400b01c0
movsd xmm8, xmm0
movsd xmm0, xmm6
call fcn.1400b02d0
subsd xmm6, xmm8
movsd xmm1, xmm0
subsd xmm1, xmm10
subsd xmm1, xmm7
comisd xmm1, xmm6
jae 0x14004e05f
movsd xmm8, xmm0
movsd xmm0, xmm11
subsd xmm0, xmm8
cvttsd2si rdi, xmm0
mov qword [rsp + 0x338], r14
test rbx, rbx
je 0x14004e0f5
lea rdx, [rsp + 0x338]
lea rcx, [0x1400c1b00]
call fcn.1400153e0
test eax, eax
js 0x14004e0d5
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 0x14004e102
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 0x14004cd70
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 0x14004e1cd
jmp 0x14004cd60
call fcn.140001a80
int3
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
mov ecx, 0x80004005
call fcn.140001950
int3
call fcn.14006fca0
mov r9d, 1
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14006ffe0
jmp 0x14004f257
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
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 0x14004e239
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 0x14004f2d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14004f2d9
mov ecx, 0x80070057
call fcn.140001950
int3
test esi, esi
je 0x14004e2c1
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004e294
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 0x14004f2d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14004f2d9
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.140001bd0
lea rdx, [0x1400c1d38]
lea rcx, [rsp + 0x80]
call fcn.140010570
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 0x14004e351
mov rdi, qword [rsp + 0x298]
mov qword [rsp + 0x98], rdi
jmp 0x14004e3f1
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.140014410
test eax, eax
je 0x14004e3e9
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x14004e39a
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 0x14004e3bc
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 0x14004f2d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14004f2d9
mov rdi, qword [rsp + 0x98]
lea rsi, [rsp + 0x1d8]
nop
nop
lea rcx, [rsp + 0x7d0]
mov rax, qword [r13 + 0xc1430]
mov qword [rcx], rax
mov rax, qword [r13 + 0xc1438]
mov qword [rcx + 8], rax
mov eax, dword [r13 + 0xc1440]
mov dword [rcx + 0x10], eax
cmp dword [rsi], r15d
je 0x14004e439
add dword [rsp + 0x7e0], 0xbb8
jmp 0x14004e457
cmp dword [rsi + 4], r15d
je 0x14004e44c
add dword [rsp + 0x7e0], 0x3e8
jmp 0x14004e457
add dword [rsp + 0x7e0], 0x7d0
mov qword [rsp + 0x2f8], r15
test rdi, rdi
je 0x14004e4c3
lea rdx, [rsp + 0x2f8]
lea rcx, [rsp + 0x7d0]
call fcn.1400153e0
test eax, eax
js 0x14004e4c3
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 0x14004e400
test rdi, rdi
je 0x14004e4e7
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 0x14004e526
or r14, 0xffffffffffffffff
lea rdi, [rsi - 0x18]
cmp r13, rdi
je 0x14004e5f4
cmp dword [rdi + 0x10], 0
jl 0x14004e5de
mov rcx, qword [r13]
cmp rcx, qword [rdi]
jne 0x14004e5de
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [r13 + 0x10], 0
jl 0x14004e56b
cmp rax, qword [r13]
jne 0x14004e56b
mov rsi, r13
lock add dword [r13 + 0x10], 1
jmp 0x14004e5ab
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [r13 + 8]
call qword [rax]
mov rsi, rax
test rax, rax
je 0x14004f22e
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.14008e4d0
mov eax, r14d
lock xadd dword [rdi + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004e5c6
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 0x14004e5f4
mov r8d, dword [rbp - 0x10]
mov rdx, rbp
lea rcx, [rsp + 0x78]
call fcn.140001bd0
mov rsi, qword [rsp + 0x78]
lea rax, [0x140000000]
mov r13, qword [rax + r12*8 + 0xf3ed8]
test r13, r13
jne 0x14004e60d
mov r14d, r15d
jmp 0x14004e61f
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 0x14004e652
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp r12, r15
ja 0x14004e65b
lea r13, [rsi + r12*2]
movsxd rdx, r14d
add rdx, rdx
lea rcx, [rsi + r15*2]
mov r9, rdx
mov r8, r13
call fcn.14008e4d0
test edi, edi
js 0x14004f2ce
cmp edi, dword [rsi - 0xc]
jg 0x14004f2ce
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 0x14004e6a7
xor r13d, r13d
jmp 0x14004e6ba
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 0x14004e6f2
mov edx, r12d
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp rdi, r14
ja 0x14004e6fb
lea r15, [rsi + rdi*2]
movsxd rdx, r13d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r15
call fcn.14008e4d0
test r12d, r12d
js 0x14004f2c3
cmp r12d, dword [rsi - 0xc]
jg 0x14004f2c3
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 0x14004e786
mov edx, edi
lea rcx, [rsp + 0x78]
call fcn.140001970
mov rsi, qword [rsp + 0x78]
cmp r12, r14
ja 0x14004e78f
lea r13, [rsi + r12*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rsi + r14*2]
mov r9, rdx
mov r8, r13
call fcn.14008e4d0
test edi, edi
js 0x14004f2b8
cmp edi, dword [rsi - 0xc]
jg 0x14004f2b8
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 0x14004e818
mov eax, r15d
test rbx, rbx
je 0x14004e807
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x2a8]
mov qword [rsp + 0x70], rbx
test eax, eax
je 0x14004e890
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 0x14004f1c6
mov eax, r15d
test rbx, rbx
je 0x14004e87b
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x328]
mov qword [rsp + 0x70], rbx
test eax, eax
jne 0x14004f1d0
mov qword [rsp + 0x2b8], r15
test rbx, rbx
je 0x14004e8f8
lea rdx, [rsp + 0x2b8]
lea rcx, [0x1400c1b30]
call fcn.1400153e0
test eax, eax
js 0x14004e8f8
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 0x14004e97f
mov qword [rsp + 0x218], r15
test rbx, rbx
je 0x14004e9e7
lea rdx, [rsp + 0x218]
lea rcx, [0x1400c1b48]
call fcn.1400153e0
test eax, eax
js 0x14004e9e7
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 0x14004e9e7
mov qword [rsp + 0x230], r15
test rbx, rbx
je 0x14004e9e7
lea rdx, [rsp + 0x230]
lea rcx, [0x1400c1b48]
call fcn.1400153e0
test eax, eax
js 0x14004e9e7
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 0x14004ea4f
lea rdx, [rsp + 0x240]
lea rcx, [0x1400c1b60]
call fcn.1400153e0
test eax, eax
js 0x14004ea4f
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 0x14004eaba
lea rdx, [rsp + 0x210]
lea rcx, [0x1400c1b78]
call fcn.1400153e0
test eax, eax
js 0x14004eaba
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 0x14004eb22
lea rdx, [rsp + 0x260]
lea rcx, [0x1400c1b90]
call fcn.1400153e0
test eax, eax
js 0x14004eb22
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 [0x1400fb24c], r15d
je 0x14004eba0
mov qword [rsp + 0x270], r15
test rbx, rbx
je 0x14004ec96
lea rdx, [rsp + 0x270]
lea rcx, [0x1400c1ba8]
call fcn.1400153e0
test eax, eax
js 0x14004ec96
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 0x14004ec96
mov rax, qword [rsp + 0xa0]
lea rcx, str.Music
cmp qword [rsp + rax*8 + 0x358], rcx
jne 0x14004ec2e
mov qword [rsp + 0x280], r15
test rbx, rbx
je 0x14004ec96
lea rdx, [rsp + 0x280]
lea rcx, [0x1400c1ba8]
call fcn.1400153e0
test eax, eax
js 0x14004ec96
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 0x14004ec96
mov qword [rsp + 0x290], r15
test rbx, rbx
je 0x14004ec96
lea rdx, [rsp + 0x290]
lea rcx, [0x1400c1ba8]
call fcn.1400153e0
test eax, eax
js 0x14004ec96
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 0x14004ecfe
lea rdx, [rsp + 0x2a0]
lea rcx, [0x1400c1c20]
call fcn.1400153e0
test eax, eax
js 0x14004ecfe
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 0x14004ed66
lea rdx, [rsp + 0x2b0]
lea rcx, [0x1400c1c38]
call fcn.1400153e0
test eax, eax
js 0x14004ed66
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 0x14004edce
lea rdx, [rsp + 0x2c0]
lea rcx, [0x1400c1bc0]
call fcn.1400153e0
test eax, eax
js 0x14004edce
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 0x14004ee36
lea rdx, [rsp + 0x2d0]
lea rcx, [0x1400c1bd8]
call fcn.1400153e0
test eax, eax
js 0x14004ee36
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 0x14004eea1
lea rdx, [rsp + 0x2e0]
lea rcx, [0x1400c1bf0]
call fcn.1400153e0
test eax, eax
js 0x14004eea1
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 0x14004ef09
lea rdx, [rsp + 0x2f0]
lea rcx, [0x1400c1c08]
call fcn.1400153e0
test eax, eax
js 0x14004ef09
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 0x14004ef9e
mov rax, qword [rsp + 0xb8]
bt dword [rax + 0xa48], 0x16
jae 0x14004ef9e
mov qword [rsp + 0x300], r15
test rbx, rbx
je 0x14004f006
lea rdx, [rsp + 0x300]
lea rcx, [0x1400c1ab8]
call fcn.1400153e0
test eax, eax
js 0x14004f006
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 0x14004f006
mov qword [rsp + 0x310], r15
test rbx, rbx
je 0x14004f006
lea rdx, [rsp + 0x310]
lea rcx, [0x1400c1ab8]
call fcn.1400153e0
test eax, eax
js 0x14004f006
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 0x14004f071
lea rdx, [rsp + 0x320]
lea rcx, [0x1400c1ad0]
call fcn.1400153e0
test eax, eax
js 0x14004f071
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 0x14004f0d9
lea rdx, [rsp + 0x330]
lea rcx, [0x1400c1ae8]
call fcn.1400153e0
test eax, eax
js 0x14004f0d9
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 0x14004f144
lea rdx, [rsp + 0x340]
lea rcx, [0x1400c1b00]
call fcn.1400153e0
test eax, eax
js 0x14004f144
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 0x14004f1d8
lea rdx, [rsp + 0x350]
lea rcx, [0x1400c1b18]
call fcn.1400153e0
test eax, eax
js 0x14004f1b3
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 0x14004f1d8
mov r12, qword [rsp + 0x90]
jmp 0x14004f1d8
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 0x14004e522
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 0x14004f234
or r14, 0xffffffffffffffff
jmp 0x14004e510
call fcn.140001a80
int3
call fcn.14006fca0
mov r9d, 2
lea r8, str.DtsPresetInited
lea rdx, str.General
mov rcx, qword [rax + 8]
call fcn.14006ffe0
nop
test rbx, rbx
je 0x14004f266
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
mov rcx, qword [rsp + 0x98]
test rcx, rcx
je 0x14004f27a
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 0x14004f299
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 0x14004f2d9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14004f2d9
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
nop
mov rcx, qword [rsp + 0x7e8]
xor rcx, rsp
call fcn.14008e4b0
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