Function at 0x426830
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Create thread
Get process heap flags

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x13c
fld qword [ebp + 8]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xcc], ecx
fstp qword [ebp - 0xf8]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_CreateEventW]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp + 0x10]
sub esp, 0x10
movzx eax, word [eax + 2]
mov word [ebp - 0xc0], ax
mov eax, dword [ebp + 0x10]
movzx eax, word [eax + 0xe]
mov word [ebp - 0xb8], ax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 4]
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 0x18]
and eax, 0x70000
mov dword [ebp - 0xe0], eax
cmp eax, 0x50000
je 0x427061
cmp dword [ebp - 0xe0], 0x30000
je 0x426922
cmp dword [ebp - 0xe0], 0x20000
je 0x427f94
mov dword [esp + 4], 0x271
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], str.Undefined_callback_type__n
call fcn.0042d130
mov eax, dword [ebp - 0xc4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebp - 0xec], 0x4240c0
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xf0], eax
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x24]
mov esi, dword [ebp - 0xac]
mov dword [ebp - 0x80], 0
mov dword [0x43ed50], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 4], esi
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0xf0]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xec]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], eax
lea eax, [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutOpen
sub esp, 0x18
mov ebx, eax
mov dword [ebp - 0xd0], eax
mov dword [esp + 4], 0x27e
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov ebx, eax
mov eax, dword [ebp + 0x18]
mov dword [esp], eax
call fcn.00425380
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x10]
movzx eax, word [eax + 2]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp + 0x10]
movzx eax, word [eax + 0xe]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 4]
mov dword [ebp - 0xe4], eax
mov eax, str.WAVE_MAPPER
cmp esi, 0xffffffff
je 0x4269f5
mov eax, esi
call fcn.00424f70
mov esi, dword [ebp - 0xd0]
cmp esi, 8
sete cl
cmp esi, 0x20
mov esi, ecx
mov ecx, dword [ebp - 0xd0]
sete dl
or esi, edx
test ecx, 0xfffffffd
je 0x427080
lea edx, [ecx - 3]
cmp edx, 1
jbe 0x426a2e
cmp ecx, 6
jne 0x427320
mov dword [esp + 0x20], ebx
mov ebx, dword [ebp - 0xc8]
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], ebx
mov ebx, dword [ebp - 0xd4]
mov dword [esp], 1
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov ebx, dword [ebp - 0xe4]
mov dword [esp + 0xc], ebx
call fcn.0042d100
mov eax, esi
test al, al
je 0x427001
mov esi, dword [ebp + 0x18]
and esi, 8
mov ebx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x14]
and eax, dword [ebx + 0x28]
test esi, esi
je 0x4270e0
test eax, eax
jne 0x4280ef
mov dword [esp + 4], 0x290
mov ebx, str.flagsWAVE_FORMAT_DIRECT
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [ebp - 0xd0]
mov dword [esp], eax
call fcn.00424ff0
mov ecx, eax
mov eax, dword [ebp + 0x10]
cmp dword [ebp - 0xac], 0xffffffff
movzx edx, word [eax + 2]
movzx eax, word [eax + 0xe]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp + 0x10]
mov esi, dword [eax + 4]
mov eax, str.WAVE_MAPPER
je 0x426b13
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0xd8], edx
mov dword [ebp - 0xd4], ecx
call fcn.00424f70
mov edx, dword [ebp - 0xd8]
mov ecx, dword [ebp - 0xd4]
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp - 0xc8]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], str.waveOutOpen__s_:_format_dx_2dx_d__s_rc_s_failed_but_format_not_supported_so_OK._n
call fcn.0042d130
mov ebx, dword [ebp - 0xd0]
test ebx, ebx
jne 0x427001
mov eax, dword [ebp - 0xc4]
mov dword [esp + 4], 0x2328
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov dword [ebp - 0xd4], eax
call eax
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x299
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.missing_WOM_OPEN_notification_n
sete al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x29b
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [ebp + 0x10]
movzx ebx, word [ebp - 0xc0]
movzx ecx, word [eax + 2]
movzx edx, word [eax + 0xe]
mov esi, ebx
mov eax, dword [eax + 4]
mov dword [esp + 0x1c], ebx
movzx ebx, word [ebp - 0xb8]
cmp cx, si
mov dword [esp + 0x14], edi
mov dword [esp + 8], eax
mov dword [esp + 0x18], ebx
movzx ebx, cx
sete cl
cmp dx, word [ebp - 0xb8]
mov dword [esp + 0x10], ebx
movzx ebx, dx
sete dl
and edx, ecx
cmp eax, edi
mov dword [esp + 0xc], ebx
sete al
mov dword [esp + 4], str.got_the_wrong_format:__dx_2dx_d_instead_of__dx_2dx_d_n
movzx eax, al
and eax, edx
mov dword [esp], eax
mov esi, dword fs:[0x18]
call fcn.0042d100
mov eax, dword [ebp - 0xb0]
mov dword [esp + 4], 0
mov ebx, dword [sym.imp.kernel32.dll_HeapAlloc]
shl eax, 5
mov dword [esp + 8], eax
mov dword [ebp - 0x104], eax
mov eax, dword [esi + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov ecx, dword [ebp + 0x24]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0xcc]
sub esp, 0xc
add eax, 1
mov dword [ebp - 0xe8], eax
fild dword [ebp - 0xe8]
fdivr qword [ebp - 0xf8]
test ecx, ecx
jne 0x427122
mov eax, dword [ebp + 0x10]
fstp qword [esp]
lea edx, [ebp - 0x70]
call fcn.00424270
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], 0
mov esi, dword [ebp - 0xdc]
mov dword [esp], eax
shr esi, 2
and esi, 1
call sub.winmm.dll_waveOutGetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2aa
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edi, eax
mov eax, dword [ebp - 0xac]
cmp eax, 0xffffffff
je 0x427da2
call fcn.00424f70
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 0xb
sete al
mov dword [esp + 4], str.waveOutGetVolume__s_0__expected_MMSYSERR_INVALPARAM__got__s_n
mov dword [esp], eax
call fcn.0042d100
lea eax, [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutGetVolume
sub esp, 8
mov ebx, eax
cmp eax, 8
je 0x428001
mov dword [esp + 4], 0x2ae
mov ecx, esi
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
movzx edi, cl
mov dword [ebp - 0x100], edi
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
mov edx, dword [ebp - 0x100]
test edx, edx
je 0x427cff
xor edx, edx
test ebx, ebx
sete dl
mov dword [esp], edx
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.waveOutGetVolume__s_:_rc_s_n
call fcn.0042d100
lea eax, [ebp - 0x6c]
mov dword [esp + 8], 0x54
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutGetDevCapsW
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x2b3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edi, dword [ebp - 0xac]
mov esi, eax
cmp edi, 0xffffffff
je 0x427f00
mov eax, edi
call fcn.00424f70
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutGetDevCapsW__s_:_MMSYSERR_NOERROR_expected__got__s_n
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x80]
mov dword [esp + 0xc], 0
mov dword [esp + 4], eax
lea eax, [ebp - 0x7c]
mov dword [esp], eax
call sub.winmm.dll_waveOutOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x2b9
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, edi
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 2
sete al
mov dword [esp + 0xc], esi
mov dword [esp + 4], str.waveOutOpen__s_:_MMSYSERR_BADDEVICEID_expected__got__s_n
mov dword [esp], eax
call fcn.0042d100
test ebx, ebx
je 0x427f81
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp - 0xb0]
xor edx, edx
mov dword [ebp - 0xc0], 0
movzx ecx, word [eax + 0xc]
mov eax, dword [ebp - 0x70]
div edi
xor edx, edx
div ecx
imul eax, ecx
mov ebx, eax
lea eax, [edi - 1]
mov edi, dword [ebp - 0xc8]
mov dword [ebp - 0xb8], ebx
mov ebx, dword [ebp - 0xd0]
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x108], edi
jmp 0x426f78
mov dword [edi + 4], eax
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 0x20
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.winmm.dll_waveOutPrepareHeader
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0x2cd
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], esi
call fcn.004252f0
mov edx, dword [ebp - 0xac]
mov ecx, eax
mov eax, str.WAVE_MAPPER
cmp edx, 0xffffffff
je 0x426f32
mov eax, edx
mov dword [ebp - 0xd0], ecx
call fcn.00424f70
mov ecx, dword [ebp - 0xd0]
test esi, esi
mov dword [esp + 8], eax
sete dl
mov dword [esp + 0xc], ecx
add edi, 0x20
movzx eax, dl
mov dword [esp + 4], str.waveOutPrepareHeader__s_:_rc_s_n
mov esi, edx
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xc0]
add ebx, dword [ebp - 0xb8]
add eax, 1
cmp dword [ebp - 0xb0], eax
je 0x4273b0
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xe4]
mov edx, dword [ebp - 0xc0]
add eax, ebx
mov dword [edi], eax
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xdc], edx
jne 0x426ec4
mov eax, dword [ebp - 0x70]
sub eax, ebx
jmp 0x426ec4
cmp dword [ebp - 0xd0], 0xa
jne 0x428150
mov edi, dword [ebp - 0xc8]
mov esi, dword [ebp + 0x18]
mov dword [esp + 0x20], ebx
mov dword [esp + 8], eax
mov dword [esp + 0x1c], edi
mov edi, dword [ebp + 0x18]
shr esi, 3
and esi, 1
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], edi
mov edi, dword [ebp - 0xd4]
mov dword [esp], esi
mov dword [esp + 0x14], edi
mov edi, dword [ebp - 0xd8]
mov dword [esp + 0x10], edi
mov edi, dword [ebp - 0xe4]
mov dword [esp + 0xc], edi
call fcn.0042d100
cmp dword [ebp - 0xe0], 0x20000
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov dword [ebp - 0xc8], 0
je 0x427bb8
mov eax, dword [ebp - 0xc4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CloseHandle]
mov edi, dword [ebp - 0xc8]
sub esp, 4
mov dword [esp + 8], edi
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xec], eax
jmp 0x426938
mov dword [esp + 0x20], ebx
mov ebx, dword [ebp - 0xc8]
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], ebx
mov ebx, dword [ebp - 0xd4]
mov dword [esp], 1
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov ebx, dword [ebp - 0xe4]
mov dword [esp + 0xc], ebx
call fcn.0042d100
mov eax, esi
test al, al
je 0x426b3d
jmp 0x426a83
test eax, eax
jne 0x426b3d
mov dword [esp + 4], 0x290
mov ebx, str.flagsWAVE_MAPPED
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [ebp - 0xd0]
mov dword [esp], eax
call fcn.00424ff0
test byte [ebp + 0x18], 4
mov ecx, eax
mov eax, 0x43aa81
cmove ebx, eax
jmp 0x426acb
mov eax, dword [ebp + 0x10]
xor edx, edx
mov dword [ebp - 0xb4], edx
mov eax, dword [eax + 4]
fnstcw word [ebp - 0x96]
mov dword [ebp - 0xb8], eax
fild qword [ebp - 0xb8]
movzx eax, word [ebp - 0x96]
or ah, 0xc
fmulp st(1)
mov word [ebp - 0x98], ax
mov eax, dword [ebp + 0x10]
fldcw word [ebp - 0x98]
fistp dword [ebp - 0xa4]
fldcw word [ebp - 0x96]
movzx eax, word [eax + 0xc]
mov edi, dword [ebp - 0xa4]
mov dword [esp + 4], 0
imul eax, edi
mov dword [ebp - 0xd8], edi
mov dword [esp + 8], eax
mov dword [ebp - 0x70], eax
mov eax, dword [esi + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
mov dword [ebp - 0xe4], eax
test edi, edi
jle 0x426c8b
xor edi, edi
mov esi, eax
mov dword [ebp - 0xb8], edi
mov edi, dword [ebp + 0x10]
jmp 0x4271f9
fstp st(0)
jmp 0x4271e0
fstp st(0)
jmp 0x4271e0
fstp st(0)
jmp 0x4271e0
fstp st(0)
jmp 0x4271e0
fstp st(0)
jmp 0x4271e0
fstp st(0)
lea esi, [esi]
lea esi, [esi]
add dword [ebp - 0xb8], 1
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xd8], eax
je 0x426c8b
mov eax, dword [edi + 4]
xor edx, edx
fild dword [ebp - 0xb8]
mov dword [ebp - 0xbc], edx
fmul qword [0x43bc10]
mov dword [ebp - 0xc0], eax
fild qword [ebp - 0xc0]
fdivp st(1)
fstp qword [esp]
call dword [sym.imp.msvcrt.dll_sin]
movzx eax, word [edi + 0xe]
cmp ax, 8
je 0x427c00
cmp ax, 0x10
je 0x427c70
cmp ax, 0x18
je 0x427d20
cmp ax, 0x20
jne 0x4271c0
movzx eax, word [edi]
cmp ax, 1
je 0x428060
cmp ax, 0xfffe
jne 0x4271c4
lea eax, [edi + 0x18]
mov ebx, dword [0x43bbf0]
cmp dword [edi + 0x18], ebx
je 0x428033
mov ebx, dword [0x43bbe0]
cmp dword [edi + 0x18], ebx
jne 0x4271c8
mov ebx, dword [0x43bbe4]
cmp dword [eax + 4], ebx
jne 0x4271cc
mov ebx, dword [0x43bbe8]
cmp dword [eax + 8], ebx
jne 0x4271d0
mov ebx, dword [0x43bbec]
cmp dword [eax + 0xc], ebx
jne 0x4271d4
fstp dword [ebp - 0x94]
xor eax, eax
cmp word [edi + 2], 0
mov ecx, dword [ebp - 0x94]
je 0x4271e0
movsx ebx, ch
mov byte [ebp - 0xc0], cl
mov dword [ebp - 0xfc], ebx
mov ebx, ecx
shr ecx, 0x18
shl ebx, 8
shr ebx, 0x18
lea esi, [esi]
nop
movzx edx, byte [ebp - 0xc0]
mov byte [esi + 2], bl
add eax, 1
add esi, 4
mov byte [esi - 1], cl
mov byte [esi - 4], dl
movzx edx, byte [ebp - 0xfc]
mov byte [esi - 3], dl
movzx edx, word [edi + 2]
cmp eax, edx
jl 0x4272f0
jmp 0x4271e0
mov ecx, esi
test cl, cl
je 0x426fa4
mov esi, dword [ebp + 0x18]
and esi, 8
jne 0x4284ca
mov edx, dword [ebp + 0x18]
and edx, 0xc
cmp edx, 8
je 0x427350
mov edx, dword [ebp + 0x1c]
mov edx, dword [edx + 0x28]
test dword [ebp + 0x14], edx
je 0x4284d9
cmp dword [ebp - 0xd0], 0xa
je 0x426fb1
mov dword [esp + 0x20], ebx
mov ebx, dword [ebp - 0xc8]
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], ebx
mov ebx, dword [ebp - 0xd4]
mov dword [esp], 0
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov ebx, dword [ebp - 0xe4]
mov dword [esp + 0xc], ebx
call fcn.0042d100
jmp 0x426a83
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x20]
mov ebx, esi
test eax, eax
setne byte [ebp - 0xfc]
movzx ecx, byte [ebp - 0xfc]
test bl, bl
je 0x42767a
test cl, cl
je 0x42767a
mov dword [esp + 4], 0x2d2
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov edi, dword [ebp + 0x18]
mov dword [esp], edi
call fcn.00425380
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0xb8], eax
movzx eax, word [edi]
mov dword [esp], eax
call fcn.004264c0
mov edx, 0x43aa84
mov esi, dword [ebp - 0xe8]
imul esi, dword [ebp - 0x70]
mov ebx, eax
cmp dword [ebp - 0xcc], 1
mov eax, 0x43aa82
mov edi, edx
cmove edi, eax
cmp dword [ebp - 0xd8], 1
cmovne eax, edx
mov edx, dword [ebp + 0x10]
cmp dword [ebp + 0x24], 0
movzx ecx, word [edx + 2]
movzx edx, word [edx + 0xe]
mov dword [ebp - 0xb0], edx
mov edx, dword [ebp + 0x10]
mov edx, dword [edx + 4]
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0xd8]
mov dword [esp + 0x28], edi
mov dword [ebp - 0xd0], edx
mov edi, dword [ebp - 0xcc]
mov edx, dword [ebp - 0xb8]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xb0]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], edx
mov dword [esp + 0x2c], esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
je 0x428123
mov edx, dword [ebp - 0xd0]
fld qword [ebp - 0xf8]
mov dword [esp + 0xc], str.440_Hz_tone
mov dword [esp], str.Playing__g_second__s_at__5dx_2dx_d__2d_header_s__d_loop_s__d_bytes__s__s_n
mov dword [esp + 0x10], edx
fstp qword [esp + 4]
call fcn.0042d130
mov ebx, dword [ebp - 0x100]
test ebx, ebx
je 0x4274da
mov ecx, dword [ebp - 0x78]
test ecx, ecx
je 0x428529
mov eax, dword [ebp + 0x10]
mov edi, dword [ebp - 0xac]
xor ecx, ecx
mov edx, dword [ebp - 0x80]
mov dword [esp], eax
mov eax, edi
call fcn.004258e0
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], 0x20002000
mov dword [esp], eax
call sub.winmm.dll_waveOutSetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2df
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
cmp edi, 0xffffffff
je 0x4287bc
mov eax, edi
call fcn.00424f70
mov edx, dword [ebp - 0x100]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
test edx, edx
mov dword [esp + 4], str.waveOutSetVolume__s_:_rc_s_n
je 0x4281a0
xor eax, eax
test ebx, ebx
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutSetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2e3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, edi
call fcn.00424f70
xor edx, edx
test ebx, ebx
sete dl
jmp 0x4281f8
add dword [ebp - 0xb8], 1
mov eax, dword [ebp - 0xb8]
cmp dword [ebp - 0xe8], eax
jne 0x428390
mov eax, dword [ebp - 0xc8]
xor esi, esi
lea ebx, [eax + 0x10]
jmp 0x4275e2
mov esi, eax
mov dword [esp + 4], 0x314
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [ebx]
call fcn.004244d0
mov ecx, dword [ebx]
mov edi, eax
mov eax, 1
cmp ecx, 3
je 0x427636
cmp dword [ebp - 0xe0], 0x50000
sete al
cmp ecx, 0x1003
sete cl
movzx ecx, cl
and eax, ecx
mov dword [esp], eax
call fcn.0042cf70
test eax, eax
setne al
movzx eax, al
mov dword [esp], eax
add ebx, 0x20
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov dword [esp + 4], str.__02d__WHDR_DONE_WHDR_PREPARED_expected__got__s_n
call fcn.0042d100
lea eax, [esi + 1]
cmp dword [ebp - 0xc0], esi
jne 0x4275e0
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0xe8]
imul ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x80]
mov dword [esp], eax
mov eax, dword [ebp - 0xac]
call fcn.004258e0
mov eax, dword [ebp - 0x104]
mov ebx, dword [ebp - 0xc8]
add eax, ebx
mov dword [ebp - 0xb8], eax
nop
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 0x20
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.winmm.dll_waveOutUnprepareHeader
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0x31f
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], esi
call fcn.004252f0
mov ecx, dword [ebp - 0xac]
mov edi, eax
mov eax, str.WAVE_MAPPER
cmp ecx, 0xffffffff
je 0x4276e1
mov eax, ecx
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp + 0xc], edi
add ebx, 0x20
mov dword [esp + 4], str.waveOutUnprepareHeader__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
cmp dword [ebp - 0xb8], ebx
jne 0x427690
mov dword [esp + 4], 0x324
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov edi, dword [ebp - 0xc8]
movzx edx, byte [ebp - 0xfc]
mov esi, dword [ebp - 0xac]
mov eax, dword [edi + 0x10]
mov dword [esp + 4], str.dwFlags__d__x_n
mov dword [esp + 8], esi
cmp edx, eax
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
or dword [edi + 0x10], 1
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutUnprepareHeader
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x328
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutUnprepareHeader__d_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x329
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [edi + 0x10]
mov dword [esp + 8], esi
mov dword [esp + 4], str.dwFlags__d__x_n
cmp eax, 1
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
or dword [edi + 0x10], 0x10
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutPrepareHeader
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x32d
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutPrepareHeader__d_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x32e
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [edi + 0x10]
mov dword [esp + 8], esi
mov dword [esp + 4], str.dwFlags__d__x_n
cmp eax, 2
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
or dword [edi + 0x10], 0x10
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutPrepareHeader
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x332
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutPrepareHeader__d_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x333
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [edi + 0x10]
mov dword [esp + 8], esi
mov dword [esp + 4], str.dwFlags__d__x_n
cmp eax, 0x12
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
and dword [edi + 0x10], 0xffffffee
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutUnprepareHeader
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x337
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutUnprepareHeader__d_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x338
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [edi + 0x10]
mov dword [esp + 8], esi
mov edi, esi
mov dword [esp + 4], str.dwFlags__d__x_n
test eax, eax
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutClose
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x33b
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, dword [ebp + 0x18]
or esi, 1
cmp edi, 0xffffffff
je 0x427e20
mov dword [ebp - 0xc0], eax
mov eax, edi
call fcn.00424f70
mov edx, dword [ebp - 0xc0]
mov dword [esp + 4], str.waveOutClose__s_:_rc_s_n
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0042d100
cmp ebx, 0x21
je 0x42854e
mov eax, dword [ebp - 0xc4]
mov dword [esp + 4], 0x5dc
mov dword [esp], eax
mov eax, dword [ebp - 0xd4]
call eax
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x34e
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.missing_WOM_CLOSE_notification_n
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x80], 0xdeadf00d
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xec]
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xac]
mov dword [esp + 4], eax
lea eax, [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x352
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0xc], edi
mov dword [esp], eax
mov dword [esp + 4], str.WAVE_FORMAT_QUERY__s_:_rc_s_n
call fcn.0042d100
mov dword [esp + 4], 0x354
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], str.WAVE_FORMAT_QUERY_handle__p_n
cmp eax, 0xdeadf00d
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xc4]
mov dword [esp + 4], 0x14
mov dword [esp], eax
mov eax, dword [ebp - 0xd4]
call eax
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x357
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], esi
call fcn.00425380
mov dword [esp + 0xc], ebx
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 0x102
sete al
mov dword [esp + 4], str.Notification_from__s_rc_x_n
mov dword [esp], eax
call fcn.0042d100
mov edi, dword [ebp - 0xe4]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov dword [esp + 8], edi
mov eax, dword [eax + 0x30]
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
cmp dword [ebp - 0xe0], 0x20000
jne 0x427021
mov eax, dword [ebp - 0x74]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x8000
mov dword [esp], eax
call sub.user32.dll_PostThreadMessageW
mov eax, dword [ebp - 0xc4]
sub esp, 0x10
mov dword [esp + 4], 0x2710
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
sub esp, 8
jmp 0x427021
fnstcw word [ebp - 0x96]
fadd dword [0x43bc18]
fmul dword [0x43bc1c]
movzx eax, word [ebp - 0x96]
or ah, 0xc
mov word [ebp - 0x98], ax
cmp word [edi + 2], 0
fldcw word [ebp - 0x98]
fistp word [ebp - 0xc0]
fldcw word [ebp - 0x96]
je 0x4271e0
movzx ecx, byte [ebp - 0xc0]
xor eax, eax
lea esi, [esi]
add esi, 1
mov byte [esi - 1], cl
movzx edx, word [edi + 2]
add eax, 1
cmp eax, edx
jl 0x427c50
jmp 0x4271e0
fnstcw word [ebp - 0x96]
fmul dword [0x43bc20]
fsub dword [0x43bc24]
movzx eax, word [ebp - 0x96]
or ah, 0xc
mov word [ebp - 0x98], ax
fldcw word [ebp - 0x98]
fistp word [ebp - 0xa6]
fldcw word [ebp - 0x96]
cmp word [edi + 2], 0
movzx ecx, word [ebp - 0xa6]
je 0x4271e0
movzx ebx, ch
xor eax, eax
lea esi, [esi]
mov byte [esi], cl
add eax, 1
add esi, 2
mov byte [esi - 1], bl
movzx edx, word [edi + 2]
cmp eax, edx
jl 0x427cc0
jmp 0x4271e0
mov dword [esp + 4], 0x2ae
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], 8
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
mov dword [ebp - 0x100], 0
xor edx, edx
cmp ebx, 8
sete dl
jmp 0x426d6a
fnstcw word [ebp - 0x96]
fmul dword [0x43bc28]
fsub dword [0x43bc24]
movzx eax, word [ebp - 0x96]
or ah, 0xc
mov word [ebp - 0x98], ax
fldcw word [ebp - 0x98]
fistp dword [ebp - 0xa4]
fldcw word [ebp - 0x96]
cmp word [edi + 2], 0
mov ecx, dword [ebp - 0xa4]
je 0x4271e0
movzx eax, ch
mov ebx, ecx
mov dword [ebp - 0xc0], eax
sar ebx, 0x10
xor eax, eax
lea esi, [esi]
lea esi, [esi]
movzx edx, byte [ebp - 0xc0]
mov byte [esi], cl
add eax, 1
add esi, 3
mov byte [esi - 1], bl
mov byte [esi - 2], dl
movzx edx, word [edi + 2]
cmp eax, edx
jl 0x427d80
jmp 0x4271e0
xor eax, eax
cmp ebx, 0xb
mov dword [esp + 0xc], edi
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutGetVolume__s_0__expected_MMSYSERR_INVALPARAM__got__s_n
call fcn.0042d100
lea eax, [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutGetVolume
sub esp, 8
mov ebx, eax
cmp eax, 8
je 0x427cd8
mov dword [esp + 4], 0x2ae
mov eax, esi
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
movzx eax, al
mov dword [ebp - 0x100], eax
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x426d55
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp + 4], str.waveOutClose__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
cmp ebx, 0x21
je 0x428854
mov eax, dword [ebp - 0xc4]
mov dword [esp + 4], 0x5dc
mov dword [esp], eax
mov eax, dword [ebp - 0xd4]
call eax
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x34e
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.missing_WOM_CLOSE_notification_n
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xf0]
mov dword [esp + 0x14], esi
mov dword [esp + 4], 0xffffffff
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x80], 0xdeadf00d
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 8], eax
lea eax, [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x352
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edi, eax
mov eax, str.WAVE_MAPPER
jmp 0x427aca
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutGetDevCapsW__s_:_MMSYSERR_NOERROR_expected__got__s_n
call fcn.0042d100
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x80]
mov dword [esp + 0xc], 0
mov dword [esp + 4], eax
lea eax, [ebp - 0x7c]
mov dword [esp], eax
call sub.winmm.dll_waveOutOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x2b9
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x426e4f
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call sub.winmm.dll_waveOutClose
sub esp, 4
jmp 0x426e77
mov ebx, dword [ebp - 0xc4]
lea eax, [ebp - 0x74]
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x424140
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_CreateThread]
sub esp, 0x18
test eax, eax
je 0x428a4b
mov dword [esp + 4], 0x2710
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xf0], 0
sub esp, 8
mov dword [ebp - 0xec], eax
jmp 0x426938
mov dword [esp + 4], 0x2ae
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], 8
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
jmp 0x427cff
mov ebx, dword [0x43bbf4]
cmp dword [eax + 4], ebx
jne 0x42727c
mov ebx, dword [0x43bbf8]
cmp dword [eax + 8], ebx
jne 0x42727c
mov ebx, dword [0x43bbfc]
cmp dword [eax + 0xc], ebx
jne 0x42727c
fnstcw word [ebp - 0x96]
fmul qword [0x43bc30]
fsub dword [0x43bc24]
movzx eax, word [ebp - 0x96]
or ah, 0xc
mov word [ebp - 0x98], ax
fldcw word [ebp - 0x98]
fistp dword [ebp - 0xa4]
fldcw word [ebp - 0x96]
cmp word [edi + 2], 0
mov ecx, dword [ebp - 0xa4]
je 0x4271e0
movzx eax, ch
mov dword [ebp - 0xc0], eax
mov eax, ecx
sar eax, 0x10
mov ebx, eax
mov eax, ecx
shr eax, 0x18
mov dword [ebp - 0xfc], eax
xor eax, eax
movzx edx, byte [ebp - 0xc0]
mov byte [esi], cl
add eax, 1
add esi, 4
mov byte [esi - 2], bl
mov byte [esi - 3], dl
movzx edx, byte [ebp - 0xfc]
mov byte [esi - 1], dl
movzx edx, word [edi + 2]
cmp eax, edx
jl 0x4280c3
jmp 0x4271e0
mov dword [esp + 4], 0x28c
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], str._Reason:_The_device_lists_this_format_as_supported_in_its_capabilities_but_opening_it_failed._n
call fcn.0042d130
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x28]
test dword [ebp + 0x14], eax
jne 0x426b3d
jmp 0x426aa2
mov eax, dword [ebp - 0xd0]
fld qword [ebp - 0xf8]
mov dword [esp + 0xc], str.silence
mov dword [esp], str.Playing__g_second__s_at__5dx_2dx_d__2d_header_s__d_loop_s__d_bytes__s__s_n
mov dword [esp + 0x10], eax
fstp qword [esp + 4]
call fcn.0042d130
jmp 0x4274da
mov edi, dword [ebp - 0xc8]
mov dword [esp + 0x20], ebx
mov dword [esp + 8], eax
mov dword [esp + 0x1c], edi
mov edi, dword [ebp + 0x18]
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], edi
mov edi, dword [ebp - 0xd4]
mov dword [esp], 0
mov dword [esp + 0x14], edi
mov edi, dword [ebp - 0xd8]
mov dword [esp + 0x10], edi
mov edi, dword [ebp - 0xe4]
mov dword [esp + 0xc], edi
call fcn.0042d100
jmp 0x427001
xor eax, eax
cmp ebx, 8
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutSetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2e3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
xor edx, edx
cmp ebx, 8
sete dl
mov dword [esp], edx
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.waveOutSetVolume__s_:_rc_s_n
call fcn.0042d100
mov edi, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 0x20
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.winmm.dll_waveOutWrite
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x2e7
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
cmp eax, 0xffffffff
je 0x428716
call fcn.00424f70
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutWrite__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x2ea
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov eax, dword [edi + 0x10]
call fcn.004244d0
mov dword [esp + 4], 0x43adbc
mov dword [esp + 8], eax
xor eax, eax
cmp dword [edi + 0x10], 0x12
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutWrite
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x2ef
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 0x21
sete al
mov dword [esp + 0xc], esi
mov dword [esp], eax
mov dword [esp + 4], str.waveOutWrite__s_:_WAVE_STILLPLAYING_expected__got__s_n
call fcn.0042d100
mov dword [esp + 4], 0x2f3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov edi, dword [ebp - 0xc8]
mov eax, dword [edi + 0x10]
call fcn.004244d0
mov dword [esp + 4], str.WHDR_INQUEUE_WHDR_PREPARED_expected__got__s_n
mov dword [esp + 8], eax
xor eax, eax
cmp dword [edi + 0x10], 0x12
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xcc]
xor eax, 1
and eax, dword [ebp + 0x28]
test al, 1
je 0x42837d
cmp dword [ebp - 0xd8], 1
je 0x4288ef
mov dword [ebp - 0xb8], 0
lea esi, [esi]
nop
xor edi, edi
jmp 0x4284a7
mov eax, esi
cdq
idiv dword [ebp - 0xd8]
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xb0], edx
shl edx, 5
add eax, edx
cmp dword [ebp - 0xb8], 1
jne 0x4283ca
mov dword [eax + 0x10], 2
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutWrite
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x30b
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov ecx, dword [ebp - 0xac]
mov edx, eax
mov eax, str.WAVE_MAPPER
cmp ecx, 0xffffffff
je 0x428427
mov eax, ecx
mov dword [ebp - 0xd0], edx
call fcn.00424f70
mov edx, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xb0]
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 4], str.waveOutWrite__s__header__d__:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0xc4]
mov dword [esp + 4], 0x1f40
mov dword [esp], eax
mov eax, dword [ebp - 0xd4]
call eax
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x30f
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.missing_WOM_DONE_notification_n
sete al
mov dword [esp], eax
call fcn.0042d100
cmp dword [ebp - 0xc0], edi
je 0x4275b0
mov edi, esi
lea esi, [edi + 1]
mov ecx, dword [ebp - 0xb8]
cmp dword [ebp - 0xcc], ecx
jne 0x4283a0
cmp dword [ebp - 0xdc], edi
jne 0x4283a0
jmp 0x428450
mov edx, dword [ebp + 0x1c]
mov edx, dword [edx + 0x28]
test dword [ebp + 0x14], edx
jne 0x427336
mov dword [esp + 0x20], ebx
mov ebx, dword [ebp - 0xc8]
mov dword [esp + 8], eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 4], str.waveOutOpen__s_:_format_dx_2dx_d_flags_x__s__rc_s_n
mov dword [esp + 0x18], ebx
mov ebx, dword [ebp - 0xd4]
mov dword [esp], 1
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov ebx, dword [ebp - 0xe4]
mov dword [esp + 0xc], ebx
call fcn.0042d100
jmp 0x426a89
mov dword [esp + 4], 0x2d9
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], str._Warning_the_sound_is_muted__you_will_not_hear_the_test_n
call fcn.0042d130
jmp 0x4274da
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutReset
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x340
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
mov edx, dword [ebp - 0xc0]
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0xc], edx
mov dword [esp + 4], str.waveOutReset__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov dword [ebp - 0xc0], esi
mov ebx, dword [ebp - 0x108]
lea esi, [esi]
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 0x20
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.winmm.dll_waveOutUnprepareHeader
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0x345
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], esi
call fcn.004252f0
mov edx, dword [ebp - 0xac]
mov edi, eax
mov eax, str.WAVE_MAPPER
cmp edx, 0xffffffff
je 0x428611
mov eax, edx
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp + 0xc], edi
add ebx, 0x20
mov dword [esp + 4], str.waveOutUnprepareHeader__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
cmp ebx, dword [ebp - 0xb8]
jne 0x4285c0
mov eax, dword [ebp - 0x80]
mov esi, dword [ebp - 0xc0]
mov dword [esp], eax
call sub.winmm.dll_waveOutClose
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x34a
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edi, eax
mov eax, dword [ebp - 0xac]
cmp eax, 0xffffffff
je 0x42882c
call fcn.00424f70
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.waveOutClose__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
mov edi, dword [ebp - 0xc4]
mov dword [esp + 4], 0x5dc
mov dword [esp], edi
mov edi, dword [ebp - 0xd4]
call edi
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x34e
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.missing_WOM_CLOSE_notification_n
sete al
mov dword [esp], eax
call fcn.0042d100
mov edi, dword [ebp - 0xf0]
mov dword [ebp - 0x80], 0xdeadf00d
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edi
mov edi, dword [ebp - 0xec]
mov dword [esp + 0xc], edi
mov edi, dword [ebp + 0x10]
mov dword [esp + 8], edi
jmp 0x427a87
xor eax, eax
test ebx, ebx
mov dword [esp + 0xc], esi
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutWrite__s_:_rc_s_n
call fcn.0042d100
mov dword [esp + 4], 0x2ea
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov edi, dword [ebp - 0xc8]
mov eax, dword [edi + 0x10]
call fcn.004244d0
mov dword [esp + 4], 0x43adbc
mov dword [esp + 8], eax
xor eax, eax
cmp dword [edi + 0x10], 0x12
sete al
mov dword [esp], eax
call fcn.0042d100
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], edi
mov dword [esp + 8], 0x20
mov dword [esp], eax
call sub.winmm.dll_waveOutWrite
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x2ef
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x428301
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x42888c
xor eax, eax
test ebx, ebx
mov dword [esp + 0xc], esi
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutSetVolume__s_:_rc_s_n
call fcn.0042d100
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutSetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2e3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x4275a1
xor eax, eax
test ebx, ebx
mov dword [esp + 0xc], edi
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp + 4], str.waveOutClose__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
jmp 0x427e4c
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutReset
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x340
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov edx, eax
mov eax, str.WAVE_MAPPER
jmp 0x428591
xor eax, eax
cmp ebx, 8
mov dword [esp + 0xc], esi
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutSetVolume__s_:_rc_s_n
call fcn.0042d100
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call sub.winmm.dll_waveOutSetVolume
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2e3
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x4281f0
fnstcw word [ebp - 0x96]
fld qword [ebp - 0xf8]
fmul dword [0x43bc24]
movzx eax, word [ebp - 0x96]
fst qword [ebp - 0xb8]
or ah, 0xc
mov word [ebp - 0x98], ax
fmul dword [0x43bc38]
fldcw word [ebp - 0x98]
fistp qword [ebp - 0xa0]
fldcw word [ebp - 0x96]
mov eax, dword [sym.imp.kernel32.dll_Sleep]
mov dword [ebp - 0xb0], eax
mov esi, dword [ebp - 0xa0]
mov dword [esp], esi
call eax
mov eax, dword [ebp - 0x80]
sub esp, 4
mov dword [esp], eax
call sub.winmm.dll_waveOutPause
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x2fb
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov ecx, dword [ebp - 0xac]
cmp ecx, 0xffffffff
je 0x428a6b
mov dword [ebp - 0xd0], eax
mov eax, ecx
call fcn.00424f70
mov edx, dword [ebp - 0xd0]
mov dword [esp + 4], str.waveOutPause__s_:_rc_s_n
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x2fd
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
fld qword [ebp - 0xb8]
mov dword [esp], str.pausing_for__g_seconds_n
fstp qword [esp + 4]
call fcn.0042d130
mov dword [esp], esi
mov eax, dword [ebp - 0xb0]
call eax
mov eax, dword [ebp - 0x80]
sub esp, 4
mov dword [esp], eax
call sub.winmm.dll_waveOutRestart
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x300
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, dword [ebp - 0xac]
call fcn.00424f70
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 0xc], esi
mov dword [esp + 4], str.waveOutRestart__s_:_rc_s_n
mov dword [esp], eax
call fcn.0042d100
jmp 0x42837d
mov dword [esp + 4], 0x268
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], str.CreateThread___failed_n
jmp 0x426903
mov dword [esp + 0xc], eax
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 8], str.WAVE_MAPPER
mov dword [esp], eax
mov dword [esp + 4], str.waveOutPause__s_:_rc_s_n
call fcn.0042d100
mov dword [esp + 4], 0x2fd
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
fld qword [ebp - 0xb8]
mov dword [esp], str.pausing_for__g_seconds_n
fstp qword [esp + 4]
call fcn.0042d130
mov dword [esp], esi
mov eax, dword [ebp - 0xb0]
call eax
mov eax, dword [ebp - 0x80]
sub esp, 4
mov dword [esp], eax
call sub.winmm.dll_waveOutRestart
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0x300
mov dword [esp], str..._wine_dlls_winmm_tests_wave.c
call fcn.0042ce90
mov dword [esp], ebx
call fcn.004252f0
mov esi, eax
mov eax, str.WAVE_MAPPER
jmp 0x428a27