Function at 0x10004e20
Capabilities:
Delete registry key

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x254
mov dword [esp + 4], str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
mov dword [esp], 0x80000001
call dword [sym.imp.advapi32.dll_RegDeleteKeyW]
sub esp, 8
test eax, 0xfffffffd
je 0x10004e60
test byte [0x10010080], 2
jne 0x10005118
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ebp - 0x234]
mov dword [esp + 4], str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
mov dword [esp + 8], eax
mov dword [esp], 0x80000001
call dword [sym.imp.advapi32.dll_RegCreateKeyW]
sub esp, 0xc
mov ebx, eax
test eax, eax
jne 0x10005160
mov edi, dword [0x10010020]
test edi, edi
je 0x100051ba
lea eax, [ebp - 0x22e]
xor esi, esi
lea ebx, [ebp - 0x20c]
mov dword [ebp - 0x238], eax
mov eax, dword [sym.imp.advapi32.dll_RegSetValueExW]
mov dword [ebp - 0x23c], eax
jmp 0x10004ecb
mov edi, dword [edi + 0x18]
test edi, edi
je 0x10005010
test byte [edi + 0x2b], 0x40
jne 0x10004ec0
mov eax, dword [edi + 8]
test eax, eax
je 0x10004ec0
mov eax, dword [ebp - 0x238]
inc esi
mov dword [esp + 8], str.Priority_ld
mov dword [esp + 0xc], esi
mov dword [esp + 4], 0x11
mov dword [esp], eax
call sym._swprintf
mov eax, dword [edi + 0x28]
mov ecx, dword [edi + 8]
mov dword [esp], ebx
mov dword [esp + 8], str._c___s
not eax
mov dword [esp + 0x10], ecx
shr eax, 0x1f
mov dword [esp + 4], 0x100
add eax, 0x30
mov dword [esp + 0xc], eax
call sym._swprintf
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__wcslwr]
cmp word [ebp - 0x20c], 0
je 0x100051b0
mov eax, ebx
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x10004f48
sub eax, ebx
add eax, 2
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x238]
mov dword [esp + 0x10], ebx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x234]
mov dword [esp + 0xc], 1
mov dword [esp], eax
mov eax, dword [ebp - 0x23c]
mov dword [esp + 8], 0
call eax
sub esp, 0x18
test eax, eax
je 0x10004ec0
test byte [0x10010080], 2
je 0x10004ec0
mov dword [ebp - 0x244], eax
mov eax, str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
call sym._wine_dbgstr_wn.constprop.0
mov dword [ebp - 0x240], eax
mov eax, dword [edi + 8]
call sym._wine_dbgstr_wn.constprop.0
mov ecx, dword [ebp - 0x244]
mov edx, dword [ebp - 0x240]
mov dword [esp + 0xc], str.unable_to_write_value_for__s_under_key__s__0x_08lx__n
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 8], str.MSACM_WriteCurrentPriorities
mov dword [esp + 4], 0x10010080
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
mov edi, dword [edi + 0x18]
test edi, edi
jne 0x10004ecb
lea esi, cs:[esi]
nop
inc esi
mov eax, dword [ebp - 0x238]
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.Priority_ld
mov dword [esp + 4], 0x11
mov dword [esp], eax
call sym._swprintf
mov dword [esp + 0x10], str.Internal_PCM_Converter
mov dword [esp + 0xc], 0x31
mov dword [esp + 8], str._c___s
mov dword [esp + 4], 0x100
mov dword [esp], ebx
call sym._swprintf
cmp word [ebp - 0x20c], 0
je 0x100051e1
mov eax, ebx
lea esi, cs:[esi]
add eax, 2
cmp word [eax], 0
jne 0x10005070
sub eax, ebx
add eax, 2
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x238]
mov dword [esp + 0x10], ebx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x234]
mov dword [esp + 0xc], 1
mov dword [esp], eax
mov eax, dword [ebp - 0x23c]
mov dword [esp + 8], 0
call eax
sub esp, 0x18
mov ebx, eax
test eax, eax
je 0x100050f9
test byte [0x10010080], 2
je 0x100050f9
mov eax, str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.unable_to_write_value_for_Internal_PCM_Converter_under_key__s__0x_08lx__n
mov dword [esp + 8], str.MSACM_WriteCurrentPriorities
mov dword [esp + 4], 0x10010080
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x234]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, eax
mov eax, str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.unable_to_remove_current_key__s__0x_08lx____priority_changes_wont_persist_past_application_end._n
mov dword [esp + 8], str.MSACM_WriteCurrentPriorities
mov dword [esp + 4], 0x10010080
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [0x10010080], 2
je 0x10004e58
mov eax, str.SoftwareMicrosoftMultimediaAudio_Compression_ManagerPriority_v4.00
call sym._wine_dbgstr_wn.constprop.0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.unable_to_create_key__s__0x_08lx____priority_changes_wont_persist_past_application_end._n
mov dword [esp + 8], str.MSACM_WriteCurrentPriorities
mov dword [esp + 4], 0x10010080
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
jmp 0x10004e58
mov eax, 2
jmp 0x10004f56
lea eax, [ebp - 0x22e]
mov esi, 1
lea ebx, [ebp - 0x20c]
mov dword [ebp - 0x238], eax
mov eax, dword [sym.imp.advapi32.dll_RegSetValueExW]
mov dword [ebp - 0x23c], eax
jmp 0x10005011
mov eax, 2
jmp 0x1000507e