Function at 0x140041180
Capabilities:
Create process on windows
Get uefi variable
Log keystrokes via application hook
Print debug messages
Query or enumerate registry value
Set registry value

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x5a0
mov qword [rsp + 0x188], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1400f6bd8]
xor rax, rsp
mov qword [rsp + 0x590], rax
mov rsi, rcx
xor eax, eax
or rbp, 0xffffffffffffffff
mov rcx, rbp
lea rdi, str.c:_templog.txt
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rdx, str.c:_templog.txt
lea rcx, [0x140101598]
call fcn.140001bc0
lea rcx, str.CRtHDVBgProcWnd::Init__n
call fcn.140002280
lea rcx, str.CRtHDVBgProcWnd::Init__n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
xor r12d, r12d
mov dword [0x1400fff3c], r12d
mov rcx, rsi
call fcn.140046500
mov rdi, qword [0x140101588]
cmp dword [rdi - 0x10], r12d
je 0x1400412aa
mov rcx, qword [rdi - 0x18]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rdi - 8], r12d
jl 0x14004124d
cmp rax, qword [rdi - 0x18]
jne 0x14004124d
lea rbx, [rdi - 0x18]
lock add dword [rdi - 8], 1
jmp 0x14004128a
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [rdi - 0x10]
call qword [rax]
mov rbx, rax
test rax, rax
jne 0x140041269
call fcn.140018f80
int3
mov eax, dword [rdi - 0x10]
mov dword [rbx + 8], eax
mov eax, dword [rdi - 0x10]
add eax, 1
movsxd rdx, eax
add rdx, rdx
mov r8, rdi
lea rcx, [rbx + 0x18]
mov r9, rdx
call fcn.140091de0
lea rax, [rbx + 0x18]
mov qword [rsp + 0x120], rax
lea rcx, [rsp + 0x120]
call fcn.1400185d0
xor eax, eax
jmp 0x140042e59
cmp qword [rsi + 0xcd8], r12
jle 0x1400412bf
lea rcx, [rsi + 0xcc0]
call fcn.140066778
cmp dword [0x140101570], r12d
je 0x14004161b
lea rcx, [rsp + 0x50]
call fcn.140017130
nop
xor eax, eax
mov rcx, rbp
lea rbx, str.RealtekAudioHDA_
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
mov rsi, rbx
mov rax, qword [rsp + 0x50]
sub rsi, rax
sar rsi, 1
mov r14d, dword [rax - 0x10]
lea edi, [r14 + rcx - 1]
mov r13d, 1
mov edx, r13d
sub edx, dword [rax - 8]
mov ecx, dword [rax - 0xc]
sub ecx, edi
or ecx, edx
jge 0x14004132d
mov edx, edi
lea rcx, [rsp + 0x50]
call fcn.140001970
mov rax, qword [rsp + 0x50]
cmp rsi, r14
ja 0x140041336
lea rbx, [rax + rsi*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rax + r14*2]
mov r9, rdx
mov r8, rbx
call fcn.140091de0
test edi, edi
js 0x140041610
mov rax, qword [rsp + 0x50]
cmp edi, dword [rax - 0xc]
jg 0x140041610
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsp + 0x50]
mov word [rax + rcx*2], 0
xor eax, eax
mov rcx, rbp
lea rsi, str.RAVCpl64.exe
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
mov rbx, rsi
mov rax, qword [rsp + 0x50]
sub rbx, rax
sar rbx, 1
mov r14d, dword [rax - 0x10]
lea edi, [r14 + rcx - 1]
sub r13d, dword [rax - 8]
mov ecx, dword [rax - 0xc]
sub ecx, edi
or ecx, r13d
jge 0x1400413c1
mov edx, edi
lea rcx, [rsp + 0x50]
call fcn.140001970
mov rax, qword [rsp + 0x50]
cmp rbx, r14
ja 0x1400413ca
lea rsi, [rax + rbx*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rax + r14*2]
mov r9, rdx
mov r8, rsi
call fcn.140091de0
test edi, edi
js 0x140041605
mov rax, qword [rsp + 0x50]
cmp edi, dword [rax - 0xc]
jg 0x140041605
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsp + 0x50]
mov word [rax + rcx*2], 0
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x140041426
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 + 0xf8], rax
mov r8, qword [rsp + 0x50]
lea rdx, str.__s_
lea rcx, [rsp + 0xf8]
call fcn.140001e40
mov rsi, qword [rsp + 0xf8]
mov rcx, qword [rsi - 0x18]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rsi - 8], 0
jl 0x140041480
cmp rax, qword [rsi - 0x18]
jne 0x140041480
lea rbx, [rsi - 0x18]
lock add dword [rsi - 8], 1
jmp 0x1400414be
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [rsi - 0x10]
call qword [rax]
mov rbx, rax
test rax, rax
jne 0x14004149c
call fcn.140018f80
int3
mov eax, dword [rsi - 0x10]
mov dword [rbx + 8], eax
mov eax, dword [rsi - 0x10]
add eax, 1
movsxd rdx, eax
lea r9, [rdx + rdx]
mov r8, rsi
add rdx, rdx
lea rcx, [rbx + 0x18]
call fcn.140091de0
add rbx, 0x18
mov qword [rsp + 0x148], rbx
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400414ea
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x88], rdi
lea rdx, [0x1400ccdd4]
test rdx, 0xffffffffffff0000
jne 0x14004153d
movzx r13d, dx
mov ecx, r13d
call fcn.140066098
test rax, rax
je 0x140041564
mov r8d, r13d
mov rdx, rax
lea rcx, [rsp + 0x88]
call fcn.140001fd0
mov rdi, qword [rsp + 0x88]
jmp 0x140041564
xor eax, eax
mov rcx, rbp
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsp + 0x88]
call fcn.140001bc0
mov rdi, qword [rsp + 0x88]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9, rdi
mov r8, rbx
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
lea rdx, [rdi - 0x18]
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004159f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x148]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400415c3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov eax, ebp
lock xadd dword [rsi - 8], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400415e0
mov rcx, qword [rsi - 0x18]
mov rax, qword [rcx]
lea rdx, [rsi - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x50]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x1400415fe
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
nop
cmp dword [0x140101574], r12d
je 0x140041977
lea rcx, [rsp + 0x58]
call fcn.140017130
nop
xor eax, eax
mov rcx, rbp
lea rbx, str.RealtekAudioHDA_
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
mov rsi, rbx
mov rax, qword [rsp + 0x58]
sub rsi, rax
sar rsi, 1
mov r14d, dword [rax - 0x10]
lea edi, [r14 + rcx - 1]
mov r13d, 1
mov edx, r13d
sub edx, dword [rax - 8]
mov ecx, dword [rax - 0xc]
sub ecx, edi
or ecx, edx
jge 0x140041689
mov edx, edi
lea rcx, [rsp + 0x58]
call fcn.140001970
mov rax, qword [rsp + 0x58]
cmp rsi, r14
ja 0x140041692
lea rbx, [rax + rsi*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rax + r14*2]
mov r9, rdx
mov r8, rbx
call fcn.140091de0
test edi, edi
js 0x14004196c
mov rax, qword [rsp + 0x58]
cmp edi, dword [rax - 0xc]
jg 0x14004196c
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsp + 0x58]
mov word [rax + rcx*2], 0
xor eax, eax
mov rcx, rbp
lea rsi, str.EP64.exe
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
mov rbx, rsi
mov rax, qword [rsp + 0x58]
sub rbx, rax
sar rbx, 1
mov r14d, dword [rax - 0x10]
lea edi, [r14 + rcx - 1]
sub r13d, dword [rax - 8]
mov ecx, dword [rax - 0xc]
sub ecx, edi
or ecx, r13d
jge 0x14004171d
mov edx, edi
lea rcx, [rsp + 0x58]
call fcn.140001970
mov rax, qword [rsp + 0x58]
cmp rbx, r14
ja 0x140041726
lea rsi, [rax + rbx*2]
movsxd rdx, r15d
add rdx, rdx
lea rcx, [rax + r14*2]
mov r9, rdx
mov r8, rsi
call fcn.140091de0
test edi, edi
js 0x140041961
mov rax, qword [rsp + 0x58]
cmp edi, dword [rax - 0xc]
jg 0x140041961
mov dword [rax - 0x10], edi
movsxd rcx, edi
mov rax, qword [rsp + 0x58]
mov word [rax + rcx*2], 0
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x140041782
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 + 0xc8], rax
mov r8, qword [rsp + 0x58]
lea rdx, str.__s_
lea rcx, [rsp + 0xc8]
call fcn.140001e40
mov rsi, qword [rsp + 0xc8]
mov rcx, qword [rsi - 0x18]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
cmp dword [rsi - 8], 0
jl 0x1400417dc
cmp rax, qword [rsi - 0x18]
jne 0x1400417dc
lea rbx, [rsi - 0x18]
lock add dword [rsi - 8], 1
jmp 0x14004181a
mov rax, qword [rax]
mov r8d, 2
mov edx, dword [rsi - 0x10]
call qword [rax]
mov rbx, rax
test rax, rax
jne 0x1400417f8
call fcn.140018f80
int3
mov eax, dword [rsi - 0x10]
mov dword [rbx + 8], eax
mov eax, dword [rsi - 0x10]
add eax, 1
movsxd rdx, eax
lea r9, [rdx + rdx]
mov r8, rsi
add rdx, rdx
lea rcx, [rbx + 0x18]
call fcn.140091de0
add rbx, 0x18
mov qword [rsp + 0xe0], rbx
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x140041846
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x90], rdi
lea rdx, [0x1400ccdd4]
test rdx, 0xffffffffffff0000
jne 0x140041899
movzx r13d, dx
mov ecx, r13d
call fcn.140066098
test rax, rax
je 0x1400418c0
mov r8d, r13d
mov rdx, rax
lea rcx, [rsp + 0x90]
call fcn.140001fd0
mov rdi, qword [rsp + 0x90]
jmp 0x1400418c0
xor eax, eax
mov rcx, rbp
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8d, [rcx - 1]
lea rcx, [rsp + 0x90]
call fcn.140001bc0
mov rdi, qword [rsp + 0x90]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
mov r9, rdi
mov r8, rbx
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
lea rdx, [rdi - 0x18]
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400418fb
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xe0]
add rdx, 0xffffffffffffffe8
mov eax, ebp
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]
nop
mov eax, ebp
lock xadd dword [rsi - 8], eax
add eax, 0xffffffff
test eax, eax
jg 0x14004193c
mov rcx, qword [rsi - 0x18]
mov rax, qword [rcx]
lea rdx, [rsi - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x14004195a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
mov ecx, 0x80070057
call fcn.140001950
int3
mov ecx, 0x80070057
call fcn.140001950
nop
mov r13d, 1
cmp dword [0x14010155c], r12d
jne 0x1400419aa
cmp dword [0x140101560], r12d
jne 0x1400419aa
cmp dword [0x140101564], r12d
jne 0x1400419aa
cmp dword [0x14010157c], r12d
jne 0x1400419aa
cmp dword [0x140101578], r12d
je 0x1400419b1
mov dword [0x140101580], r13d
cmp dword [0x1401014c4], r12d
je 0x1400419e4
lea rcx, [rsi + 0x870]
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 2]
call fcn.1400358e0
mov rcx, rsi
call fcn.140058740
xor eax, eax
jmp 0x140042e59
mov rcx, rsi
call fcn.140046600
cmp dword [0x14010155c], r12d
jne 0x140041a22
cmp dword [0x140101560], r12d
jne 0x140041a22
cmp dword [0x140101564], r12d
jne 0x140041a22
cmp dword [0x14010157c], r12d
jne 0x140041a22
cmp dword [0x140101578], r12d
je 0x140041a89
test byte [rsi + 0xa86], r13b
je 0x140041a89
lea rdi, [rsi + 0x870]
lea rax, [rsi + 0xa48]
test rdi, rdi
je 0x140041a48
test rax, rax
je 0x140041a48
mov qword [rsi + 0x4e8], rdi
mov qword [rsi + 0x4f0], rax
call fcn.140075378
test rax, rax
je 0x140041a69
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0xe8]
test rax, rax
je 0x140041a69
mov rax, qword [rax + 0x40]
jmp 0x140041a6c
mov rax, r12
mov qword [rdi + 0x88], rax
mov qword [rdi + 0xa0], rax
mov dword [0x1400fff38], r12d
mov rcx, rsi
call fcn.140058ac0
bt dword [rsi + 0xa60], 0x1d
jae 0x140041b26
cmp dword [0x140101538], r12d
jne 0x140041aa9
cmp dword [0x14010154c], r12d
je 0x140041b26
mov ecx, 0x30
call fcn.140065c84
mov qword [rsp + 0xe0], rax
test rax, rax
je 0x140041acb
mov rcx, rax
call fcn.140026990
mov r12, rax
test r12, r12
je 0x140041b1f
mov rcx, r12
call fcn.140026aa0
test eax, eax
je 0x140041b0d
mov rcx, r12
call fcn.140026bc0
test eax, eax
je 0x140041b0d
cmp dword [r12 + 0x14], 0
je 0x140041b0d
lea rdx, [r12 + 0x28]
lea rcx, [rsp + 0x128]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
mov edx, r13d
mov rcx, r12
call fcn.140043130
xor eax, eax
jmp 0x140042e59
xor eax, eax
jmp 0x140042e59
cmp dword [0x140101544], r12d
je 0x140041c7e
mov rcx, qword [rsi + 0x498]
test rcx, rcx
je 0x140041b47
mov rax, qword [rcx]
mov edx, r13d
call qword [rax]
mov qword [rsi + 0x498], r12
mov ecx, 0x138
call fcn.140065c84
mov qword [rsp + 0x128], rax
test rax, rax
je 0x140041b75
mov r8b, 1
mov rdx, rsi
mov rcx, rax
call fcn.140030940
jmp 0x140041b78
mov rax, r12
mov qword [rsi + 0x498], rax
xor ecx, ecx
mov qword [rsp + 0x1e0], rcx
mov qword [rsp + 0x1e8], rcx
mov qword [rsp + 0x1f0], rcx
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x200], rcx
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x210], rcx
mov qword [rsp + 0x218], rcx
lea rdx, [rsp + 0x1e0]
mov rcx, rax
call fcn.140033300
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x140041bf1
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 + 0xb8], rax
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0xb8]
call fcn.14005b640
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x138]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
mov rcx, qword [rsi + 0x498]
test rcx, rcx
je 0x140041c56
mov rax, qword [rcx]
mov edx, r13d
call qword [rax]
mov qword [rsi + 0x498], r12
mov rdx, qword [rsp + 0xb8]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140041c77
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
cmp dword [0x140101554], r12d
je 0x140041f3e
mov rcx, qword [rsi + 0x498]
test rcx, rcx
je 0x140041c9f
mov rax, qword [rcx]
mov edx, r13d
call qword [rax]
mov qword [rsi + 0x498], r12
mov ecx, 0x138
call fcn.140065c84
mov qword [rsp + 0x138], rax
test rax, rax
je 0x140041ccd
mov r8b, 1
mov rdx, rsi
mov rcx, rax
call fcn.140030940
jmp 0x140041cd0
mov rax, r12
mov qword [rsi + 0x498], rax
xor ecx, ecx
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], rcx
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rcx
mov qword [rsp + 0x248], rcx
mov qword [rsp + 0x250], rcx
mov qword [rsp + 0x258], rcx
lea rdx, [rsp + 0x220]
mov rcx, rax
call fcn.140033300
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x140041d49
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 + 0x60], rax
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x60]
call fcn.14005b640
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x180]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
cmp eax, 1
jne 0x140041ddb
lea rcx, str.CRtHDVBgProcWnd::Init_WriteR0Registry_true_n
call fcn.140002280
mov rcx, qword [rsi + 0x498]
test rcx, rcx
je 0x140041db6
mov rax, qword [rcx]
mov edx, r13d
call qword [rax]
mov qword [rsi + 0x498], r12
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140041dd4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
xor eax, eax
mov dword [rsp + 0x100], eax
mov dword [rsp + 0x104], eax
mov dword [rsp + 0x108], eax
mov dword [rsp + 0x10c], eax
mov dword [rsp + 0x110], eax
mov dword [rsp + 0x114], eax
mov dword [rsp + 0x118], eax
lea rcx, [rsi + 0xa48]
lea rdx, [rsp + 0x1a8]
call fcn.140061e40
lea rdx, [rsp + 0x100]
mov rcx, rax
call fcn.14001c730
mov edi, eax
mov edx, eax
lea rcx, str.first_time_getR0_d_n
call fcn.140002280
test edi, edi
je 0x140041f05
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x100]
mov rax, qword [rcx]
mov qword [rdx], rax
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov rax, qword [rcx + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [rcx + 0x18]
mov dword [rdx + 0x18], eax
lea r8, [rsp + 0x1c0]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.14005aa70
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x168]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.14005b150
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x190]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
mov rcx, qword [rsi + 0x498]
test rcx, rcx
je 0x140041ee0
mov rax, qword [rcx]
mov edx, r13d
call qword [rax]
mov qword [rsi + 0x498], r12
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140041efe
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
xor r9d, r9d
mov edx, 0x3ef
mov r8d, 0x4e20
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_SetTimer]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140041f3e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp dword [0x14010156c], 0
je 0x140041f5f
xor r9d, r9d
mov edx, 0x3f0
mov r8d, 0x7530
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_SetTimer]
cmp dword [0x140101548], 0
je 0x14004202f
mov rcx, rsi
call fcn.140059550
mov r9d, 0x104
lea r8, [rsp + 0x480]
lea rdx, str.DDE3B212_51F2_40C2_B51F_43268123D113
lea rcx, str.Real_AMP
call qword [sym.imp.KERNEL32.dll_GetFirmwareEnvironmentVariableA]
test eax, eax
jne 0x140041fa0
call qword [sym.imp.KERNEL32.dll_GetLastError]
call fcn.14006628c
mov rcx, rax
test rax, rax
setne r12b
test r12d, r12d
jne 0x140041fbf
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
add rax, 0x18
mov qword [rsp + 0x98], rax
lea rdx, [rsp + 0x480]
lea rcx, [rsp + 0x98]
call fcn.14005b640
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x178]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
nop
mov rdx, qword [rsp + 0x98]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140042028
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
cmp dword [0x140101550], 0
je 0x140042192
mov ecx, 0x30
call fcn.140065c84
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14004205d
mov rcx, rax
call fcn.140026990
mov rbx, rax
jmp 0x140042060
mov rbx, r12
test rbx, rbx
je 0x14004218b
mov rcx, rbx
call fcn.140001000
test eax, eax
je 0x1400420a3
mov edx, 0x40
mov rcx, rbx
call fcn.140001120
lea rdx, [rbx + 0x28]
lea rcx, [rsp + 0x1a0]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
jmp 0x140042179
xor edx, edx
mov r8d, 0x104
lea rcx, [rsp + 0x260]
call fcn.140096180
call fcn.14006628c
mov rcx, rax
test rax, rax
setne r12b
test r12d, r12d
jne 0x1400420d7
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rdi, [rax + 0x18]
mov qword [rsp + 0x68], rdi
mov rcx, rsi
call fcn.140059550
mov r9d, 0x104
lea r8, [rsp + 0x260]
lea rdx, str.B870EF1B_1810_4A27_B2C3_EC2DCA72B027
lea rcx, str.RLKCODEC
call qword [sym.imp.KERNEL32.dll_GetFirmwareEnvironmentVariableA]
test eax, eax
jne 0x14004211c
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140042160
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0x68]
call fcn.14005b640
xor edx, edx
lea r8d, [rdx + 2]
lea rcx, [rsp + 0x68]
call fcn.14003fea0
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x150]
call fcn.140010d30
mov rdx, rax
mov rcx, rsi
call fcn.1400595f0
mov rdi, qword [rsp + 0x68]
lea rdx, [rdi - 0x18]
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140042179
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, r13d
mov rcx, rbx
call fcn.140043130
xor eax, eax
jmp 0x140042e59
xor eax, eax
jmp 0x140042e59
cmp dword [0x140101558], 0
je 0x1400423c0
xor edx, edx
mov r8d, 0x104
lea rcx, [rsp + 0x370]
call fcn.140096180
call fcn.14006628c
mov rdx, rax
mov ecx, r12d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400421d4
mov ecx, 0x80004005
call fcn.140001950
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
lea rbx, [rax + 0x18]
mov qword [rsp + 0x80], rbx
mov rcx, rsi
call fcn.140059550
mov r9d, 0x104
lea r8, [rsp + 0x370]
lea rdx, str.B870EF1B_1810_4A27_B2C3_EC2DCA72B027
lea rcx, str.RLKCODEC
call qword [sym.imp.KERNEL32.dll_GetFirmwareEnvironmentVariableA]
test eax, eax
jne 0x140042222
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140042378
lea rdx, [rsp + 0x370]
lea rcx, [rsp + 0x80]
call fcn.14005b640
nop
mov qword [rsp + 0xd8], r12
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
mov r9d, 0x2001f
xor r8d, r8d
lea rdx, str.SOFTWARERealtekRealtekEffectsDriver
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140042280
mov rdi, qword [rsp + 0xd8]
mov qword [rsp + 0xd0], rdi
jmp 0x1400422e6
mov qword [rsp + 0xf0], r12
lea rax, [rsp + 0x140]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SOFTWARERealtekRealtekEffectsDriver
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140042398
mov rdi, qword [rsp + 0xf0]
mov qword [rsp + 0xd0], rdi
mov rbx, qword [rsp + 0x80]
cmp dword [rbx - 8], 1
jle 0x14004230c
mov edx, dword [rbx - 0x10]
lea rcx, [rsp + 0x80]
call fcn.1400019d0
mov rbx, qword [rsp + 0x80]
mov eax, r12d
test rbx, rbx
setne al
test eax, eax
jne 0x140042324
mov ecx, 0x80004005
call fcn.140001950
int3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [rax + rax + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rbx
mov r9d, r13d
xor r8d, r8d
lea rdx, str.MAXIM_CAL
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test rdi, rdi
je 0x140042369
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdi, r12
mov qword [rsp + 0xd0], r12
test rdi, rdi
je 0x140042378
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x140042391
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
mov rdx, qword [rsp + 0x80]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x1400423b9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
xor eax, eax
jmp 0x140042e59
test byte [rsi + 0xba4], 1
je 0x1400424d7
mov edi, r12d
lea rdx, [rsp + 0x70]
lea rcx, [rsi + 0xa48]
call fcn.140061e40
nop
lea rdx, [0x1400ccf74]
lea rcx, [rsp + 0xb0]
call fcn.14005b580
nop
lea rcx, [rsp + 0x70]
call fcn.140010720
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x140042430
mov rcx, qword [rsp + 0x70]
cmp dword [rcx - 0x10], 0
jl 0x140042430
call fcn.140092710
test rax, rax
je 0x140042430
sub rax, qword [rsp + 0x70]
sar rax, 1
cmp eax, 0xffffffff
jne 0x140042495
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, rsi
call fcn.140046600
nop
mov rdx, qword [rsp + 0xb0]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042468
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x140042488
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add edi, 1
cmp edi, 0xa
jge 0x1400424d7
jmp 0x1400423d0
mov rdx, qword [rsp + 0xb0]
add rdx, 0xffffffffffffffe8
mov eax, ebp
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1400424b9
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebp
add ebp, 0xffffffff
test ebp, ebp
jg 0x1400424d7
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [rsi + 0xb78]
shr eax, 9
and eax, 1
mov dword [rsi + 0x1210], eax
cmp dword [0x1401014b8], 0
je 0x14004252b
mov rcx, rsi
call fcn.140058490
cmp dword [0x140101498], 0
jne 0x14004251c
cmp dword [0x1401014ac], 0
jne 0x14004251c
lea rcx, [0x140101300]
call fcn.14003fe10
test eax, eax
je 0x140042524
mov rcx, rsi
call fcn.140045e40
xor eax, eax
jmp 0x140042e59
lea rcx, [0x140101300]
call fcn.14003fe10
test eax, eax
jne 0x140042e4f
cmp dword [0x140101498], eax
jne 0x140042e4f
cmp dword [0x1401014ac], eax
jne 0x140042e4f
cmp dword [0x1401014b4], eax
je 0x140042585
lea rcx, [rsi + 0xa48]
lea rdx, [rsp + 0x1b0]
call fcn.140061e40
mov edx, r13d
mov rcx, rax
call fcn.14002e120
xor eax, eax
jmp 0x140042e59
mov dword [rsi + 0x678], 0x67
mov dword [rsi + 0x67c], 0x66
cmp dword [0x1401014fc], 0
je 0x14004263f
add rsi, 0x870
je 0x140042638
call fcn.140060e20
lea rcx, [rsi + 0x190]
call fcn.140035280
mov ebx, dword [rsi + 0x138]
test ebx, ebx
je 0x140042627
nop
cmp r12d, dword [rsi + 0x138]
jae 0x140042616
mov edx, r12d
lea rcx, [rsi + 0x120]
call fcn.140066870
test rax, rax
je 0x140042621
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x140042616
lea rdx, [rsp + 0x198]
mov rcx, rdi
call fcn.14003be30
mov rcx, rax
call fcn.1400608a0
mov rcx, rdi
call fcn.140060430
add r12d, 1
cmp r12d, ebx
jae 0x140042627
jmp 0x1400425d0
call fcn.140065e18
int3
mov rax, qword [rsi + 0x190]
lea rcx, [rsi + 0x190]
call qword [rax + 0x28]
xor eax, eax
jmp 0x140042e59
cmp dword [0x140101520], 0
je 0x140042655
call fcn.14001a250
test eax, eax
je 0x140042e59
cmp dword [0x140101530], 0
je 0x140042674
cmp dword [0x140100074], 0
je 0x140042674
call fcn.14001a250
test eax, eax
je 0x140042e59
cmp dword [0x140101448], 0
je 0x1400426b5
lea rdi, [0x1400f9200]
mov ebx, 0x26
nop
nop
mov rdx, qword [rdi]
test rdx, rdx
je 0x1400426a4
lea rcx, [rsi + 0xcc0]
call fcn.1400669c4
add rdi, 8
sub rbx, 1
jne 0x140042690
mov dword [rsi + 0x11dc], r13d
cmp dword [0x140101444], 0
je 0x1400426c6
mov rcx, rsi
call fcn.14004f3d0
cmp dword [0x1401014e0], 0
je 0x1400426fa
mov rcx, rsi
call fcn.14004f470
bt dword [rsi + 0xafc], 0x1d
jae 0x1400426e9
mov rcx, rsi
call fcn.14004f850
test byte [rsi + 0xb64], 0x80
je 0x1400426fa
mov rcx, rsi
call fcn.140055980
cmp dword [0x1401014e8], 0
je 0x140042729
mov dword [rsi + 0x11dc], r13d
mov rdx, qword [0x1400f8700]
test rdx, rdx
je 0x140042722
lea rcx, [rsi + 0xcc0]
call fcn.1400669c4
mov dword [rsi + 0x11dc], r13d
cmp dword [0x1401014e4], 0
je 0x140042739
mov dword [rsi + 0x11dc], r13d
cmp dword [0x14010144c], 0
je 0x140042754
xor edx, edx
mov rcx, rsi
call fcn.14004f8e0
mov rcx, rsi
call fcn.140052760
cmp dword [0x140101450], 0
je 0x140042770
mov edx, r13d
mov rcx, rsi
call fcn.14004f8e0
mov rcx, rsi
call fcn.140052810
cmp dword [0x140101454], 0
je 0x14004278b
xor edx, edx
mov rcx, rsi
call fcn.14004f8e0
mov rcx, rsi
call fcn.1400526d0
lea rcx, [0x140101300]
call fcn.14003fdb0
test eax, eax
jne 0x1400427ab
cmp dword [0x140101460], eax
jne 0x1400427ab
cmp dword [0x140101534], eax
je 0x1400427b3
mov rcx, rsi
call fcn.140046020
cmp dword [0x140101458], 0
je 0x140042827
mov dword [rsi + 0xcb8], r13d
lea rdi, str.PT_f_
mov ebx, SafeArrayGetDim
nop
mov rdx, qword [rdi]
test rdx, rdx
je 0x1400427e4
lea rcx, [rsi + 0xcc0]
call fcn.1400669c4
add rdi, 8
sub rbx, 1
jne 0x1400427d0
mov dword [rsi + 0x11dc], r13d
lea rcx, [rsi + 0xa48]
lea rdx, [rsp + 0x158]
call fcn.140061e40
mov rdx, rax
lea rcx, [rsi + 0xd18]
call fcn.140024a40
mov dword [rsi + 0xe00], r13d
mov rcx, rsi
call fcn.140054ec0
cmp dword [0x1401014d8], 0
je 0x140042869
lea rcx, [rsi + 0x10e8]
call fcn.14005d720
mov rax, qword [rsi + 0x1118]
test rax, rax
je 0x140042857
xor r8d, r8d
mov rdx, rsi
lea rcx, [0x1400561c0]
call rax
mov rcx, rsi
call fcn.1400561e0
xor edx, edx
mov rcx, rsi
call fcn.140054cb0
cmp dword [0x1401014dc], 0
je 0x140042a88
mov edx, r13d
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetDim
call qword [sym.imp.USER32.dll_ChangeWindowMessageFilter]
movzx edx, word [rsi + 0xa4a]
cmp edx, 0x1025
je 0x1400428b8
cmp edx, 0x17aa
jne 0x1400428bf
mov dword [0x140101054], 0xff
mov dword [0x140101058], 0x71
mov dword [rsi + 0x11b8], r13d
jmp 0x1400428bf
mov dword [rsi + 0x11bc], r13d
lea rcx, [rsi + 0xc28]
cmp dword [rcx], 0
jne 0x1400429fe
cmp dword [rsi + 0xc2c], 0
jne 0x1400429fe
cmp dword [rsi + 0xc30], 0
jne 0x1400429fe
cmp dword [rsi + 0xc34], 0
jne 0x1400429fe
mov ecx, dword [rsi + 0xbf0]
test ecx, ecx
je 0x140042923
movzx eax, byte [rsi + 0xbf1]
mov dword [0x14010105c], eax
movzx eax, cl
mov dword [0x140101060], eax
mov rcx, rsi
call fcn.1400554a0
jmp 0x140042a60
bt dword [rsi + 0xb74], 0xc
jae 0x140042946
mov dword [0x140101054], 0xff
mov dword [0x140101058], 2
jmp 0x140042a60
movzx eax, word [rsi + 0xa48]
shl edx, 0x10
or eax, edx
sub eax, 0x17aa215e
je 0x1400429c9
sub eax, 0x5a
je 0x140042999
sub eax, 0x17bd
jne 0x140042a60
movzx eax, word [rsi + 0xa4c]
cmp ax, 0x4010
je 0x140042980
cmp ax, 0x4012
jne 0x140042a60
mov dword [0x140101054], 0xff
mov dword [0x140101058], 0x71
jmp 0x140042a60
movzx eax, word [rsi + 0xa4c]
cmp ax, 0x21bd
je 0x1400429b0
cmp ax, 0x21bf
jne 0x140042a60
mov dword [0x140101054], 0xff
mov dword [0x140101058], 0x71
jmp 0x140042a60
movzx eax, word [rsi + 0xa4c]
cmp ax, 0x21a3
je 0x1400429e8
cmp ax, 0x21a5
je 0x1400429e8
cmp ax, 0x21ba
je 0x1400429e8
cmp ax, 0x21bc
jne 0x140042a60
mov dword [0x140101054], 0xff
mov dword [0x140101058], 0x71
jmp 0x140042a60
mov dword [0x140101064], r12d
mov rdx, r12
mov edi, 4
lea r8, [0x140000000]
nop
nop
nop
movzx eax, byte [rcx + 1]
mov dword [rdx + r8 + 0x101068], eax
movzx eax, byte [rcx]
mov dword [rdx + r8 + 0x101078], eax
add rdx, 4
add rcx, 4
sub rdi, 1
jne 0x140042a20
cmp dword [0x140101070], edi
jne 0x140042a60
mov eax, r12d
cmp dword [0x140101074], eax
cmovne eax, r13d
mov dword [0x140101064], eax
cmp qword [0x140100078], 0
jne 0x140042a88
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x140054fc0]
lea ecx, [r9 + 0xd]
call qword [sym.imp.USER32.dll_SetWindowsHookExW]
mov qword [0x140100078], rax
bt dword [rsi + 0xafc], 0xf
jae 0x140042b87
mov rdi, r12
mov dword [rsp + 0x78], r12d
mov qword [rsp + 0xe8], r12
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x20], rax
mov r9d, 0x2001f
xor r8d, r8d
lea rdx, [0x1400ccf78]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140042b6d
mov rdi, qword [rsp + 0xe8]
mov qword [rsp + 0x160], rdi
mov dword [rsp + 0xa0], 4
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x130]
xor r8d, r8d
lea rdx, str.Logoff
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp dword [rsp + 0x78], 2
jne 0x140042b6d
mov edx, r13d
mov rcx, rsi
call fcn.140055bb0
mov dword [rsp + 0xa8], r13d
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0xa8]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea rdx, str.Logoff
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
xor edx, edx
mov rcx, qword [rsi + 0x40]
call sub.WTSAPI32.dll_WTSRegisterSessionNotification
nop
test rdi, rdi
je 0x140042b87
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, rsi
call fcn.14004d070
cmp dword [0x140101448], 0
je 0x140042ba0
mov rcx, rsi
call fcn.140045880
lea rcx, [0x140101300]
call fcn.14003fdb0
test eax, eax
jne 0x140042bb8
cmp dword [0x140101460], eax
je 0x140042bc0
mov rcx, rsi
call fcn.140045d80
cmp dword [0x1401014f0], 0
je 0x140042bd8
mov dword [rsi + 0x11dc], r13d
mov rcx, rsi
call fcn.140056300
cmp dword [0x1401014f4], 0
jne 0x140042bf3
cmp dword [0x1401014f8], 0
jne 0x140042bf3
cmp dword [0x1401014cc], 0
je 0x140042bfa
mov dword [rsi + 0x11dc], r13d
cmp dword [0x140101524], 0
jne 0x140042c0c
cmp dword [0x140101508], 0
je 0x140042c26
mov qword [rsi + 0xd08], rsi
lea rdx, [rsi + 0xd00]
lea rcx, [rsi + 0x870]
call fcn.140035b40
cmp dword [0x140101500], 0
je 0x140042c55
lea rcx, [rsi + 0xcc0]
lea rdx, [0x1400c55e8]
call fcn.1400669c4
mov dword [rsi + 0x11dc], r13d
lea rcx, [rsi + 0x870]
call fcn.14005ea80
mov rcx, rsi
call fcn.140045420
cmp dword [0x140101514], 0
je 0x140042c72
lea rcx, [rsi + 0x870]
call fcn.140024420
cmp dword [rsi + 0xe28], 0
je 0x140042c83
mov rcx, rsi
call fcn.140044f60
cmp dword [0x140101508], 0
je 0x140042cb6
test byte [rsi + 0xaf0], 8
je 0x140042cb6
mov rcx, rsi
call fcn.140045180
mov rcx, qword [rsi + 0x1218]
test rcx, rcx
je 0x140042cb6
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsi + 0x1218], r12
cmp dword [0x140101528], 0
je 0x140042d15
lea rcx, [rsi + 0x870]
call fcn.140037330
test rax, rax
je 0x140042cdb
mov rdx, rax
mov rcx, rsi
call fcn.140056e10
mov dword [rsi + 0xcb8], r13d
lea rdi, [0x1400f86a0]
mov ebx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
nop
mov rdx, qword [rdi]
test rdx, rdx
je 0x140042d04
lea rcx, [rsi + 0xcc0]
call fcn.1400669c4
add rdi, 8
sub rbx, 1
jne 0x140042cf0
mov dword [rsi + 0x11dc], r13d
cmp dword [0x1401014a8], 0
je 0x140042d51
lea rcx, [rsi + 0xcc0]
lea rdx, [0x1400c5198]
call fcn.1400669c4
mov dword [rsi + 0x11dc], r13d
lea rcx, [rsi + 0x870]
call fcn.140036f70
test rax, rax
je 0x140042d51
mov rcx, rax
call fcn.14005db90
cmp dword [0x140101518], 0
je 0x140042d74
lea rcx, [rsi + 0xcc0]
lea rdx, [0x1400c5198]
call fcn.1400669c4
mov dword [rsi + 0x11dc], r13d
cmp dword [rsi + 0x11dc], 0
je 0x140042d97
mov qword [rsi + 0xcf8], rsi
lea rcx, [rsi + 0x870]
lea rdx, [rsi + 0xcb0]
call fcn.140035b40
mov rcx, rsi
call fcn.140044dc0
cmp dword [0x1401014c0], 0
je 0x140042dcd
cmp qword [0x140100198], 0
jne 0x140042dcd
xor r8d, r8d
lea rdx, [0x1400c4230]
mov rcx, qword [rsi + 0x40]
call qword [sym.imp.USER32.dll_RegisterPowerSettingNotification]
mov qword [0x140100198], rax
mov eax, dword [0x1401014c8]
test eax, eax
je 0x140042de5
mov dword [0x1400fff3c], eax
mov rcx, rsi
call fcn.140058c60
cmp dword [0x14010157c], 0
je 0x140042e4a
lea rcx, [rsi + 0x870]
xor r8d, r8d
xor edx, edx
call fcn.140036ae0
test byte [rax + 0x188], 8
jne 0x140042e12
bt dword [rax + 0x18c], 0x17
jae 0x140042e4a
lea rdx, str.DolbyEnable
lea rcx, [rsp + 0x170]
call fcn.140001ef0
lea r8, [rsp + 0xc0]
mov rdx, rax
lea rcx, str.SOFTWAREDolbyDAX
call fcn.1400163d0
mov edx, dword [rsp + 0xc0]
mov dword [rsi + 0x1234], edx
mov eax, r13d
jmp 0x140042e59
mov rcx, rsi
call fcn.140045e40
xor eax, eax
mov rcx, qword [rsp + 0x590]
xor rcx, rsp
call fcn.140091dc0
lea r11, [rsp + 0x5a0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret