Function at 0x4c5790
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x552ac2
mov eax, dword fs:[0]
push eax
sub esp, 0x54
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5b3720]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov eax, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
xor edi, edi
cmp eax, edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov dword [ebp + 0x60], eax
je 0x4c6e46
cmp dword [ebp + 0x80], edi
je 0x4c6e46
mov eax, dword [ebp + 0x20]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push edi
push edi
push 0x1309
push eax
call esi
mov ebx, ebp
call fcn.004c71a0
mov ecx, dword [ebp + 0x20]
push edi
push edi
push 0x1302
push ecx
call esi
push eax
call fcn.0050b031
test eax, eax
jne 0x4c5947
mov edx, dword [ebp + 0x60]
test byte [edx + 0x147], 1
je 0x4c5947
fld qword [0x5b65b8]
push 2
fld qword [0x58bbe8]
push 2
fmul st(1), st(0)
push 0x20
fxch st(1)
lea esi, [ebp + 0x58]
call fcn.005296d0
fmul qword [0x5b65b0]
push eax
call fcn.005296d0
push eax
mov ecx, esi
call fcn.0050b0bf
xor ebx, ebx
lea esi, [esp + 0x34]
call fcn.004621a0
xor esi, esi
mov dword [esp + 0x34], vtable.CImageEx.0
mov dword [esp + 0x64], esi
mov dword [esp + 0x70], esi
call fcn.00506c00
mov ecx, dword [ebx + 0x5675c4]
mov eax, dword [eax + 8]
push 1
push ecx
lea edx, [esp + 0x3c]
push edx
call fcn.004616a0
mov eax, dword [esp + 0x38]
push eax
call fcn.005079af
cmp eax, esi
jne 0x4c58a9
xor ecx, ecx
jmp 0x4c58ae
mov ecx, dword [eax + 4]
xor esi, esi
mov eax, dword [ebp + 0x5c]
push 0xffffff
push ecx
push eax
call fcn.00506c00
mov ecx, dword [eax + 0x78]
mov ecx, dword [ecx]
call fcn.00417260
or ecx, 0xffffffff
mov dword [esp + 0x70], ecx
mov eax, dword [esp + 0x38]
cmp eax, esi
mov dword [esp + 0x34], vtable.ATL::CImage.0
je 0x4c590b
push eax
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x58], ecx
mov byte [esp + 0x55], 0
mov byte [esp + 0x54], 0
call dword [sym.imp.GDI32.dll_DeleteObject]
call fcn.00462120
add ebx, 8
cmp ebx, 0x10
jb 0x4c5861
lea eax, [ebp + 0x58]
cmp eax, esi
jne 0x4c5927
xor eax, eax
jmp 0x4c592a
mov eax, dword [eax + 4]
mov edx, dword [ebp + 0x20]
push eax
push esi
push 0x1303
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
push eax
call fcn.0050b031
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 0x60]
test dword [ecx + 0x148], 0x700
je 0x4c595b
call fcn.0040ede0
mov eax, dword [ebp + 0x60]
mov eax, dword [eax + 0xa4]
test eax, eax
mov dword [esp + 0x1c], eax
je 0x4c6dde
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4c6e38
mov esi, dword [eax + 8]
test esi, esi
mov ecx, dword [eax]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], esi
je 0x4c6dcd
mov edx, dword [esi]
mov eax, dword [edx + 0x24]
mov ecx, esi
call eax
test eax, eax
jne 0x4c6dcd
push 0x566c94
lea ecx, [esp + 0x7c]
call fcn.00405ee0
mov dword [esp + 0x70], 1
mov edx, dword [esi]
mov eax, dword [edx + 0x14]
mov ecx, esi
call eax
mov ebx, eax
cmp ebx, 0x2f
ja case.0x4c59cc.5
jmp dword [ebx*4 + 0x4c6e4c]
push 0x817
push 0
push 0x5829d0
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x11c8
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 2
je 0x4c6d50
push eax
call fcn.004d7d70
jmp 0x4c6d52
push 0xc9f
push 0
push str.Encryption
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x2f0
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 3
je 0x4c6d50
push eax
call fcn.00458d40
jmp 0x4c6d52
mov edx, dword [esp + 0x7c]
mov eax, edx
call fcn.0049bda0
test eax, eax
jne 0x4c5aa8
mov eax, edx
call fcn.0049c0b0
test eax, eax
jne 0x4c5aa8
mov ecx, dword [ebp + 0x60]
mov bl, 4
test byte [ecx + 0x160], bl
je 0x4c5a90
mov edx, dword [ebp + 0x80]
test byte [edx + 0x194], bl
je 0x4c6c89
push 0x917
push 0
push str.Microphone_Effect
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
jmp 0x4c5ac0
push 0x1080
push 0
push str.VoizReal_EXP
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
mov bl, 4
mov eax, dword [ebp + 0x80]
add edi, 1
test eax, eax
je 0x4c5b1a
mov ecx, dword [eax + 0xf4]
shr ecx, 0x17
and ecx, 1
je 0x4c5b07
push 0xa34
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], bl
je 0x4c5c4f
push eax
call fcn.004a4b50
mov esi, eax
test esi, esi
jmp 0x4c6d56
test eax, eax
je 0x4c5b1a
mov edx, dword [eax + 0x34]
shr edx, 0x16
and edx, 1
jne 0x4c5c0f
mov ecx, dword [ebp + 0x60]
test byte [ecx + 0x160], bl
jne 0x4c5c0f
test eax, eax
je 0x4c5be6
mov edx, dword [eax + 0x164]
shr edx, 0x14
and edx, 1
je 0x4c5b6c
push 0x868
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 6
je 0x4c5c4f
push eax
call fcn.00495650
mov esi, eax
test esi, esi
jmp 0x4c6d56
test eax, eax
je 0x4c5be6
mov ecx, dword [eax + 0x164]
shr ecx, 0xd
and ecx, 1
je 0x4c5bab
push 0x9a0
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 7
je 0x4c5c4f
push eax
call fcn.004a2660
mov esi, eax
test esi, esi
jmp 0x4c6d56
test eax, eax
je 0x4c5be6
mov edx, dword [eax + 0x16c]
shr edx, 0xf
and edx, 1
je 0x4c5be6
push 0x948
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 8
je 0x4c5c4f
push eax
call fcn.004a3ea0
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x19d4
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 9
je 0x4c5c4f
push eax
call fcn.0049d520
mov esi, eax
test esi, esi
jmp 0x4c6d56
mov ecx, dword [ebp + 0x60]
test byte [ecx + 0x160], bl
je 0x4c5c26
test byte [eax + 0x194], bl
je 0x4c6c89
push 0x7ac
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 5
je 0x4c5c4f
push eax
call fcn.004927a0
mov esi, eax
test esi, esi
jmp 0x4c6d56
xor eax, eax
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0xc92
push 0
push str.Andrea
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
mov edx, dword [ebp + 0x60]
add edi, 1
test dword [edx + 0x13c], 0x8000
je 0x4c5cab
push 0x804
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xa
je 0x4c5c4f
push eax
call fcn.00406ed0
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x8c4
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xb
je 0x4c5c4f
push eax
call fcn.00408c80
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x7f4
push 0
push str.Sound_Effect
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x1c10
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xc
je 0x4c6d50
push eax
call fcn.004c9a40
jmp 0x4c6d52
push 0xbec
push 0
push str.Room_Correction
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x1228
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xd
je 0x4c6d50
push eax
call fcn.004bbd80
jmp 0x4c6d52
push 0x8af
push 0
push str.Digital_Audio_Input
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x4c8
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xe
je 0x4c6d50
push eax
call fcn.00435b60
jmp 0x4c6d52
mov eax, dword [ebp + 0x80]
test eax, eax
je 0x4c5db4
test dword [eax + 0xc], 0x10000000
je 0x4c5db4
push 0xfb7
jmp 0x4c5db9
push 0xbfa
push 0
push 0x582ac8
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x7e0
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0xf
je 0x4c6d50
push eax
call fcn.0045aed0
jmp 0x4c6d52
mov eax, dword [ebp + 0x60]
test byte [eax + 0x144], 1
mov ecx, ebp
je 0x4c5e12
push 0xc52
push 0
push str.Dolby___DTS
jmp 0x4c5e1e
push 0x9c6
push 0
push 0x570fe8
push edi
push 9
call fcn.0050aca7
push 0x3b4
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x10
je 0x4c6d50
push eax
call fcn.00443ed0
jmp 0x4c6d52
mov ecx, dword [ebp + 0x60]
test byte [ecx + 0x148], 0x20
je case.0x4c59cc.5
push 0xcbe
push 0
push str.DTS_S2
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x35c
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x11
je 0x4c6d50
push eax
call fcn.0044e1b0
jmp 0x4c6d52
mov eax, dword [ebp + 0x60]
test byte [eax + 0x148], 0x40
je 0x4c5f50
mov eax, dword [eax + 0x80]
cmp eax, 1
je 0x4c5eff
cmp eax, 3
je 0x4c5eff
push 0x100a
push 0
push 0x582b10
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x328
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x13
je 0x4c5f3a
push eax
call fcn.004436c0
jmp 0x4c5f3c
push 0x100a
push 0
push 0x582b10
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x11d4
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x12
je 0x4c5f3a
push eax
call fcn.00446080
jmp 0x4c5f3c
xor eax, eax
mov esi, eax
test esi, esi
mov byte [esp + 0x70], 1
jne 0x4c6d61
jmp 0x4c6c89
push 0x100a
push 0
push 0x582b10
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x46c
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x14
je 0x4c6d50
push eax
call fcn.0044eb50
jmp 0x4c6d52
mov eax, dword [ebp + 0x60]
cmp dword [eax + 0x28], 0
je 0x4c6052
test eax, eax
je 0x4c5ff5
movzx edx, byte [eax + 0x153]
and edx, 1
je 0x4c5ff5
push 0x1060
push 0
push str.DTS_UltraPC_II_Plus
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x5a0
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x15
je 0x4c5c4f
push eax
call fcn.00451f50
mov esi, eax
test esi, esi
jmp 0x4c6d56
call fcn.00455040
test eax, eax
mov ecx, ebp
je 0x4c600e
push 0x1066
push 0
push str.DTS_UltraPC_II
jmp 0x4c601a
push 0x1055
push 0
push str.DTS_UltraPC_II_Plus
push edi
push 9
call fcn.0050aca7
push 0x11ac
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x16
je 0x4c5c4f
push eax
call fcn.00455130
mov esi, eax
test esi, esi
jmp 0x4c6d56
test eax, eax
je 0x4c6069
movzx eax, byte [eax + 0x153]
and eax, 1
je 0x4c6069
push 0x1061
jmp 0x4c606e
push 0x1055
push 0
push str.DTS_UltraPC_II_Plus
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x594
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x17
je 0x4c5c4f
push eax
call fcn.00452c60
mov esi, eax
test esi, esi
jmp 0x4c6d56
mov eax, dword [ebp + 0x60]
mov ecx, dword [eax + 0x148]
test ecx, 0x2000
jne 0x4c6112
test ecx, 0x40000
je 0x4c60d6
push 0x9b0
push 0
push 0x582b6c
jmp 0x4c611e
mov eax, dword [eax + 0x144]
test al, 0x20
je 0x4c60ee
push 0x9ae
push 0
push 0x582b8c
jmp 0x4c611e
test al, 0x40
je 0x4c6100
push 0x9ad
push 0
push str.Dolby_Home_Theater
jmp 0x4c611e
test al, al
jns 0x4c6112
push 0x9af
push 0
push str.Dolby_Sound_Room
jmp 0x4c611e
push 0x100b
push 0
push str.Dolby
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
mov ecx, dword [ebp + 0x60]
mov eax, dword [ecx + 0x148]
add edi, 1
test eax, 0xe02000
jne 0x4c619c
test eax, 0x40000
je 0x4c616f
push 0x3b0
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x19
je 0x4c5c4f
push eax
call fcn.00439800
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x560
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1a
je 0x4c5c4f
push eax
call fcn.0043af00
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x4a8
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x18
je 0x4c5c4f
push eax
call fcn.0043c200
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x100b
push 0
push str.Dolby
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x1e64
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1b
je 0x4c6d50
push eax
call fcn.00436530
jmp 0x4c6d52
push 0xc5a
push 0
push 0x56c704
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x4a4
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1c
je 0x4c6d50
push eax
call fcn.004e97d0
jmp 0x4c6d52
mov eax, dword [ebp + 0x60]
call fcn.004dcee0
test eax, eax
je case.0x4c59cc.5
push 0x100a
push 0
push 0x582b10
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x38c
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1d
je 0x4c6d50
push eax
call fcn.00443b90
jmp 0x4c6d52
push 0x9fd
push 0
push str.Audyssey
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x368
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1e
je 0x4c6d50
push eax
call fcn.0040b080
jmp 0x4c6d52
mov edx, dword [esp + 0x18]
push 0
push 0x5b9668
push 0x5b4e34
push 0
push edx
call fcn.00524fbb
mov esi, eax
mov eax, dword [ebp + 0x60]
mov ecx, dword [eax + 0x148]
add esp, 0x14
test ecx, 0x1000
je 0x4c63db
test ecx, 0x82000000
jne 0x4c6395
mov edx, dword [eax + 0x150]
test dl, 6
jne 0x4c6395
mov ecx, dword [eax + 0x14c]
test ecx, 0x2000000
je 0x4c6342
push 0x102b
push 0
push str.SRS_PC_Sound
jmp 0x4c63a1
test ecx, 0x10000000
je 0x4c6358
push 0x102c
push 0
push str.SRS_Wide_3D_Sound
jmp 0x4c63a1
test dl, 1
je 0x4c636b
push 0x1083
push 0
push str.SRS_Premium_Sound_5.1
jmp 0x4c63a1
test dword [eax + 0x154], 0x400
mov ecx, ebp
je 0x4c6387
push 0x1085
push 0
push str.SRS_Premium_Voice_Pro
jmp 0x4c63a3
push 0x1007
push 0
push str.SRS_Premium_Sound
jmp 0x4c63a3
push 0xc5a
push 0
push 0x56c704
mov ecx, ebp
push edi
push 9
call fcn.0050aca7
push 0x4dc
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x1f
je 0x4c5c4f
push eax
call fcn.004ddca0
mov esi, eax
test esi, esi
jmp 0x4c6d56
test byte [eax + 0x14f], 1
mov ecx, ebp
je 0x4c63f4
push 0x102d
push 0
push str.SRS_Premium_Surround_Sound
jmp 0x4c6400
push 0xc5a
push 0
push 0x56c704
push edi
push 9
call fcn.0050aca7
mov ecx, dword [ebp + 0x60]
mov eax, dword [ecx + 0x148]
add edi, 1
test eax, 0x400
jne 0x4c64b9
test esi, esi
je 0x4c6e3d
test eax, 0x100
je 0x4c643a
test dword [ecx + 0x14c], 0x20000
jne 0x4c6443
cmp dword [esi + 0xa0], 0
je 0x4c648c
push 0x580
call fcn.004fe8de
mov esi, eax
add esp, 4
mov dword [esp + 0x20], esi
test esi, esi
mov byte [esp + 0x70], 0x20
je 0x4c6483
push esi
call fcn.004e3190
mov dword [esi], vtable.CSrsPremiumSettingDlg2.0
mov dword [esi + 0x78], vtable.CSrsPremiumSettingDlg2.1.0
mov dword [esi + 0x57c], 0xffffffff
test esi, esi
jmp 0x4c6d56
xor esi, esi
test esi, esi
jmp 0x4c6d56
push 0x57c
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x21
je 0x4c5c4f
push eax
call fcn.004e3190
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0x3e8
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x22
je 0x4c5c4f
push eax
call fcn.004de710
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0xc7d
push 0
push str.BBE_Sound
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0xc78
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x23
je 0x4c6d50
push eax
call fcn.00418ee0
jmp 0x4c6d52
xor eax, eax
lea ebx, [ebx]
cmp dword [eax*8 + 0x5675c0], 0xc
je 0x4c6584
add eax, 1
cmp eax, 2
jb 0x4c6530
push 0xc82
push 0
push 0x582d1c
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x90c
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x24
je 0x4c6d50
push eax
call fcn.0047fa90
jmp 0x4c6d52
cmp eax, 2
jae 0x4c6542
push 0xc82
push eax
push 0x582d1c
push edi
push 0xb
jmp 0x4c6551
xor esi, esi
jmp 0x4c65a0
cmp dword [esi*8 + 0x5675c0], 0xd
je 0x4c65b2
add esi, 1
cmp esi, 2
jb 0x4c65a0
cmp ebx, 0x11
lea ecx, [esp + 0x78]
je 0x4c65cc
push 0x582d1c
call fcn.00406220
mov eax, 0xc82
jmp 0x4c65db
push str.MaxxEQ
call fcn.00406220
mov eax, 0xca9
cmp esi, 2
push eax
jae 0x4c65ec
mov eax, dword [esp + 0x7c]
push esi
push eax
push edi
push 0xb
jmp 0x4c65f6
mov ecx, dword [esp + 0x7c]
push 0
push ecx
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
lea eax, [ebx - 0xd]
add edi, 1
cmp eax, 0x11
ja case.0x4c6613.14
movzx edx, byte [eax + 0x4c6f20]
jmp dword [edx*4 + 0x4c6f0c]
push 0xad8
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x25
je 0x4c66d7
push eax
call fcn.0047b750
jmp 0x4c66d9
mov eax, dword [ebp + 0x60]
test byte [eax + 0x148], 8
je 0x4c6671
push 0x1ba4
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x26
je 0x4c66d7
push eax
call fcn.00479520
jmp 0x4c66d9
push 0x994
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x27
je 0x4c66d7
push eax
call fcn.0047cd80
jmp 0x4c66d9
push 0x43c
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x28
je 0x4c66d7
push eax
call fcn.00476d20
jmp 0x4c66d9
push 0xb90
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x29
je 0x4c66d7
push eax
call fcn.00473500
jmp 0x4c66d9
xor eax, eax
mov esi, eax
test esi, esi
mov byte [esp + 0x70], 1
jne 0x4c6d61
mov dword [esp + 0x70], 0xffffffff
mov eax, dword [esp + 0x78]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4c6710
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor eax, eax
jmp 0x4c6e22
mov ecx, dword [ebp + 0x80]
call fcn.00474780
test eax, eax
mov ecx, ebp
je 0x4c6736
push 0x10a1
push 0
push str.AudioWizard
jmp 0x4c6742
push 0xc82
push 0
push 0x582d1c
push edi
push 9
call fcn.0050aca7
push 0x1cc
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2a
je 0x4c6d50
push eax
call fcn.004747b0
jmp 0x4c6d52
push 0xca6
push 0
push str.Creative
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x318
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2b
je 0x4c6d50
push eax
call fcn.0042cc20
jmp 0x4c6d52
push 0xfa3
push 0
push str.Sonic_Focus
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
mov eax, dword [ebp + 0x80]
add edi, 1
test eax, eax
je 0x4c6811
test dword [eax + 0x14], 0x400
je 0x4c6811
push 0x220
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2c
je 0x4c5c4f
push eax
call fcn.004cee70
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 1
push 0x569c94
lea ecx, [esp + 0x28]
mov edx, esi
mov dword [esp + 0x28], 1
call fcn.004b9890
test eax, eax
mov eax, 1
je 0x4c6838
mov eax, dword [esp + 0x20]
sub eax, 2
je 0x4c686a
push 0xe30
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2e
je 0x4c5c4f
push eax
call fcn.004cf870
mov esi, eax
test esi, esi
jmp 0x4c6d56
push 0xb8c
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2d
je 0x4c5c4f
push eax
call fcn.004d0b20
mov esi, eax
test esi, esi
jmp 0x4c6d56
mov eax, dword [ebp + 0x60]
mov ecx, dword [eax + 0x144]
test ecx, 0x40000
je 0x4c68d2
mov edx, dword [eax + 0x14c]
test dl, dl
jns 0x4c68d2
test ecx, 0x80000
je 0x4c68d2
test dword [eax + 0x148], 0x80000
je 0x4c68d2
test edx, 0x2000
jne case.0x4c59cc.5
mov esi, dword [esp + 0x18]
call fcn.004cd380
test eax, eax
je case.0x4c59cc.5
mov eax, dword [esi + 0x30]
sub eax, 1
jne case.0x4c59cc.5
push 0xfa3
push eax
push str.Sonic_Focus
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0xd60
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x2f
je 0x4c6d50
push eax
call fcn.004cd7e0
jmp 0x4c6d52
push 0x1008
push 0
push 0x582d84
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x70c
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x30
je 0x4c6d50
push eax
call fcn.00417660
jmp 0x4c6d52
push 0x1006
push 0
push 0x582da0
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x728
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x31
je 0x4c6d50
push eax
call fcn.004af090
jmp 0x4c6d52
mov ecx, dword [ebp + 0x60]
test byte [ecx + 0x160], 4
jne 0x4c6c89
push 0x1005
push 0
push str.SounzReal_EXP
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0xca8
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x32
je 0x4c6d50
push eax
call fcn.004d2a00
jmp 0x4c6d52
push 0xda4
push 0
push str.Knowles_Enhancements
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x884
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x33
je 0x4c6d50
push eax
call fcn.00469990
jmp 0x4c6d52
mov eax, dword [ebp + 0x60]
call fcn.00410760
test eax, eax
je 0x4c6e3d
push 0x1056
push 0
push str.PCEE4__DTS_UltraPC
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x4c8
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x34
je 0x4c6d50
push eax
call fcn.00439170
jmp 0x4c6d52
push 0x1086
push 0
push 0x582e2c
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x758
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x35
je 0x4c6d50
push eax
call fcn.0042a220
jmp 0x4c6d52
push 0x10a4
xor ebx, ebx
push ebx
push str.Yamaha
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x1cc
add edi, 1
call fcn.004fe8de
mov esi, eax
add esp, 4
mov dword [esp + 0x20], esi
cmp esi, ebx
mov byte [esp + 0x70], 0x36
je 0x4c6b3e
push esi
call fcn.004c3700
mov dword [esi], vtable.CYamahaApoSettingDlg.0
mov dword [esi + 0x78], vtable.CYamahaApoSettingDlg.1.0
mov dword [esi + 0x1c0], ebx
mov dword [esi + 0x1c8], ebx
mov dword [esi + 0x1c4], ebx
cmp esi, ebx
jmp 0x4c6d56
xor esi, esi
cmp esi, ebx
jmp 0x4c6d56
push 0x10a1
push 0
push str.AudioWizard
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x324
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x37
je 0x4c6d50
push eax
call fcn.004116f0
jmp 0x4c6d52
push 0x917
push 0
push 0x582e48
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
mov eax, dword [ebp + 0x80]
add edi, 1
test byte [eax + 0xe4], 0x40
je 0x4c6bda
push 0x448
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x38
je 0x4c6d50
push eax
call fcn.00401690
jmp 0x4c6d52
test dword [eax + 0x60], 0x8000000
je 0x4c6c0c
push 0x12c8
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x39
je 0x4c6d50
push eax
call fcn.00487d00
jmp 0x4c6d52
push 0xe10
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x3a
je 0x4c6d50
push eax
call fcn.00482e30
jmp 0x4c6d52
push 0x917
push 0
push str.AudioWizard
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0xb08
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x3b
je 0x4c6d50
push eax
call fcn.0042ad70
jmp 0x4c6d52
mov edx, dword [ebp + 0x80]
test dword [edx + 0xf0], 0x100
je 0x4c6c9f
lea ecx, [esp + 0x78]
mov dword [esp + 0x70], 0xffffffff
call fcn.004592f0
jmp 0x4c6dcd
push 0x9f1
push 0
push str.Acer_TrueHarmony
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x364
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x3c
je 0x4c6d50
push eax
call fcn.004027b0
jmp 0x4c6d52
push 0x9f8
push 0
push 0x582e74
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x384
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x3d
je 0x4c6d50
push eax
call fcn.00462260
jmp 0x4c6d52
push 0xa17
push 0
push str.Keyword_settings
push edi
push 9
mov ecx, ebp
call fcn.0050aca7
push 0x750
add edi, 1
call fcn.004fe8de
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0x70], 0x3e
je 0x4c6d50
push eax
call fcn.00498120
jmp 0x4c6d52
xor eax, eax
test eax, eax
mov esi, eax
mov byte [esp + 0x70], 1
je 0x4c6e3d
push esi
lea ecx, [ebp + 0x64]
call fcn.00506e4a
mov eax, dword [ebp + 0x60]
mov edx, dword [esi]
mov edx, dword [edx + 0x160]
mov dword [esi + 0x84], eax
mov eax, dword [esp + 0x18]
push eax
mov ecx, esi
call edx
mov eax, dword [ebp + 0x20]
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.005012bb
lea ebx, [esp + 0x24]
call fcn.00421d50
test eax, eax
je case.0x4c6613.14
mov dword [esp + 0x70], 0xffffffff
mov eax, dword [esp + 0x78]
add eax, 0xfffffff0
or edx, 0xffffffff
lea ecx, [eax + 0xc]
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4c6dcd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esp + 0x1c], 0
jne 0x4c5970
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov eax, ebp
call fcn.004c7260
mov ecx, dword [ebp + 0x20]
push 0
push 0
push 0x1304
push ecx
call esi
test eax, eax
push 0
jle 0x4c6e09
mov edx, dword [ebp + 0x20]
push 0
push 0x130c
push edx
call esi
push 5
mov ecx, ebp
call fcn.00505414
mov ecx, dword [ebp + 0x54]
mov edx, dword [ecx]
lea eax, [ebp + 0x54]
push 0
push eax
call edx
mov eax, 1
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 8
call fcn.00507caf
lea ecx, [esp + 0x78]
call fcn.004592f0
xor eax, eax
jmp 0x4c6e22