Function at 0x14008f1e0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx + 0x78]
lea rdx, str.HDAudVistaIsFirstTimeEffectFlag
mov edi, 1
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor esi, esi
mov qword [0x1401ca7a0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
lea rdx, str.HDAudVistaEnhancements
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaVIASound
mov qword [0x1401ca7b0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaSpeakerFill
mov qword [0x1401ca7b8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaLoundnessEqual
mov qword [0x1401ca7c0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaCLFESwap
mov qword [0x1401ca7c8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaVirtualSurround
mov qword [0x1401ca7d0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEqualizer
mov qword [0x1401ca7d8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaBassManagement
mov qword [0x1401ca7e0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEnvironment
mov qword [0x1401ca7e8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEnvironmentType
mov qword [0x1401ca7f0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaRoomCorrection
mov qword [0x1401ca7f8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaNeo6
mov qword [0x1401ca800], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
mov qword [0x1401ca808], rax
cmove edi, esi
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaKalaOK
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEffectFlag
mov qword [0x1401ca810], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDigitalGain
mov qword [0x1401ca7a8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDolbyFirstTimeStart
mov qword [0x1401ca818], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDolbyProLogic
mov qword [0x1401ca820], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDolbyHVS
mov qword [0x1401ca828], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDolbyHVSSampleRateFlag
mov qword [0x1401ca830], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaDolbySoundSpaceExpander
mov qword [0x1401ca838], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca838], rsi
mov qword [0x1401ca840], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaDolbySoundSpaceHeadphone
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca838], rsi
mov qword [0x1401ca848], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaDolbyNaturalBass
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca838], rsi
mov qword [0x1401ca850], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaMonoSpeaker
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEOS
mov qword [0x1401ca858], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaEOSSetting
mov qword [0x1401ca860], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaForteMediaAECBeamforming
mov qword [0x1401ca868], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401ca870], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
lea rdx, str.HDAudVistaForteMediaAGC
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaForteMediaAGCDigitalMicVolume
mov qword [0x1401ca878], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaVIAAEC
mov qword [0x1401ca880], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaVIABeamForming
mov qword [0x1401ca888], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca888], rsi
mov qword [0x1401ca890], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaVIANS
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca888], rsi
mov qword [0x1401ca898], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.HDAudVistaHPP
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.HDAudVistaVIAVOIPSupport
mov qword [0x1401ca8a0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_FRIST_BOOT
mov qword [0x1401ca8a8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_Enhancement
mov qword [0x1401ca8b8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_LPF_System_Effect
mov qword [0x1401ca8c0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_SPKR_FILL
mov qword [0x1401ca8c8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_LOUDNESS_EQUAL
mov qword [0x1401ca8d0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_CNTR_LFE_SWAP
mov qword [0x1401ca8d8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
mov qword [0x1401ca8e0], rax
cmove edi, esi
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_SOUND_EQ
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_SOUND_EQ_MIDBAND
mov qword [0x1401ca8e8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_SOUND_EQ_HIGHBAND
mov qword [0x1401ca8f0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ENVIRON_MODEL_PARAMS1
mov qword [0x1401ca8f8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ENVIRON_MODEL_PARAMS2
mov qword [0x1401ca900], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ENVIRON_MODEL_PARAMS3
mov qword [0x1401ca908], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ENVIRON_MODEL_PARAMS4
mov qword [0x1401ca910], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_BASS_MANAGE
mov qword [0x1401ca918], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ROOM_CORRECT
mov qword [0x1401ca920], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ROOM_CORRECT_SPEAKER_DISTANCE_PARAMS1
mov qword [0x1401ca928], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ROOM_CORRECT_SPEAKER_DISTANCE_PARAMS2
mov qword [0x1401ca930], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ROOM_CORRECT_SPEAKER_LEVEL_PARAMS1
mov qword [0x1401ca938], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_ROOM_CORRECT_SPEAKER_LEVEL_PARAMS2
mov qword [0x1401ca940], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_VIRT_SURR
mov qword [0x1401ca948], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401ca950], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
lea rdx, str.Set_VIA_DTS
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_KALA_OK
mov qword [0x1401ca958], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_EFFECT_FLAG
mov qword [0x1401ca960], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_DIGITAL_GAIN
mov qword [0x1401ca8b0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_PHASE_INVERSE
mov qword [0x1401ca968], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_FRIST_DOLBY_BOOT
mov qword [0x1401ca970], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_DOLBY_PRO_LOGIC
mov qword [0x1401ca978], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_DOLBY_HVS
mov qword [0x1401ca980], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_DOLBY_HVS_SAMPLERATE_FLAG
mov qword [0x1401ca988], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_DOLBY_SOUND_SPACE_EXPANDER
mov qword [0x1401ca990], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca990], rsi
mov qword [0x1401ca998], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_DOLBY_SOUND_SPACE_HEADPHONE
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca990], rsi
mov qword [0x1401ca9a0], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_DOLBY_NATURAL_BASS
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca990], rsi
mov qword [0x1401ca9a8], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_MONO_SPEAKER
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
mov qword [0x1401ca9b0], rax
cmove edi, esi
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_EOS
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_EOS_SETTING
mov qword [0x1401ca9b8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_FORTE_AEC_BEAMFORMING
mov qword [0x1401ca9c0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_FORTE_AGC
mov qword [0x1401ca9c8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_FORTE_AGC_DIGITAL_MIC_VOLUME
mov qword [0x1401ca9d0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_AEC
mov qword [0x1401ca9d8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_BeamForming
mov qword [0x1401ca9e0], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca9e0], rsi
mov qword [0x1401ca9e8], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_NS
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [0x1401ca9e0], rsi
mov qword [0x1401ca9f0], rax
mov rcx, qword [rbx + 0x78]
lea rdx, str.Set_VIA_HP_Status
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.Set_VIA_HPP
mov qword [0x1401ca9f8], rax
mov rcx, qword [rbx + 0x78]
test rax, rax
cmove edi, esi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, qword [rsp + 0x38]
test rax, rax
mov qword [0x1401caa00], rax
cmove edi, esi
mov rsi, qword [rsp + 0x40]
mov eax, edi
add rsp, 0x20
pop rdi
ret