Function at 0x402730
Capabilities:
Access peb ldr_data
Capture microphone audio
Contain obfuscated stackstrings
Get number of processors
Get process heap flags
Get process heap force flags
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, eax
push esi
lea eax, [ebp - 0xe4]
push ebx
sub esp, 0x13c
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_GetSystemInfo]
mov eax, dword [ebp - 0xe0]
sub esp, 4
mov dword [ebp - 0x10c], eax
lea eax, [ebp - 0x98]
mov dword [esp + 8], 0x30
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsA
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x147
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov esi, eax
call fcn.00424fd0
test ebx, 0xfffffffd
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
sete al
cmp ebx, 6
sete dl
mov dword [esp + 4], str.waveInGetDevCapsA__s_:_failed_to_get_capabilities:_rc_s_n
and ebx, 0xfffffffb
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
cmp ebx, 2
jne 0x4027e0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea esi, [ebp - 0x68]
mov dword [esp + 8], 0x50
mov dword [esp + 4], esi
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsW
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x14f
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x110], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x110]
mov dword [esp + 4], str.waveInGetDevCapsW__s_:_MMSYSERR_NOERROR_or_MMSYSERR_NOTSUPPORTED_expected__got__s_n
mov dword [esp + 8], eax
xor eax, eax
and ebx, 0xfffffff7
sete al
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 8], 0x30
mov dword [esp + 4], 0
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsA
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x154
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x110], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x110]
mov dword [esp + 4], str.waveInGetDevCapsA__s_:_MMSYSERR_INVALPARAM_expected__got__s_n
mov dword [esp + 8], eax
xor eax, eax
cmp ebx, 0xb
sete al
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 8], 0x50
mov dword [esp + 4], 0
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsW
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x159
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x110], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x110]
cmp ebx, 0xb
mov dword [esp + 4], str.waveInGetDevCapsW__s_:_MMSYSERR_INVALPARAM_or_MMSYSERR_NOTSUPPORTED_expected__got__s_n
mov dword [esp + 8], eax
sete al
cmp ebx, 8
mov dword [esp + 0xc], edx
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
lea eax, [ebp - 0x98]
mov dword [esp + 8], 4
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsA
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x16c
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x110], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x110]
mov dword [esp + 4], str.waveInGetDevCapsA__s_:_MMSYSERR_NOERROR_expected__got__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], esi
mov dword [esp + 8], 4
mov dword [esp], edi
call sub.winmm.dll_waveInGetDevCapsW
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x171
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov esi, eax
call fcn.00424fd0
test ebx, 0xfffffff7
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
sete al
cmp ebx, 0xb
sete dl
mov dword [esp + 4], str.waveInGetDevCapsW__s_:_unexpected_return_value__s_n
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
lea eax, [ebp - 0x100]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x80d
mov dword [esp], edi
call sub.winmm.dll_waveInMessage
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x179
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov esi, eax
call fcn.00424fd0
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.waveInMessage__s_:_failed_to_get_interface_size:_rc_s_n
test ebx, ebx
je 0x403520
cmp ebx, 0xb
je 0x403520
xor eax, eax
cmp ebx, 8
sete al
mov dword [esp], eax
call fcn.0042d100
cmp ebx, 8
je 0x403a4c
mov dword [esp + 4], 0x190
mov esi, 0x43069c
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
movzx eax, word [ebp - 0x98]
mov dword [ebp - 0x110], 0
movzx ecx, word [ebp - 0x96]
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x94]
movzx edx, al
shr eax, 8
mov dword [ebp - 0x118], eax
mov dword [esp], edi
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x11c], ecx
call fcn.00424fd0
mov ecx, dword [ebp - 0x11c]
mov dword [esp + 0xc], esi
mov edx, dword [ebp - 0x120]
mov dword [esp + 4], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x114]
mov dword [esp + 0x14], edx
lea edx, [ebp - 0x90]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x118]
mov dword [esp + 8], edx
mov dword [esp + 0x10], ecx
mov dword [esp], 0x4308c8
call fcn.0042d130
mov dword [esp + 4], 0x193
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, dword [ebp - 0x70]
mov dword [esp], str._____channels_d_formats_05x_n
mov dword [esp + 8], eax
movzx eax, word [ebp - 0x6c]
mov dword [esp + 4], eax
call fcn.0042d130
mov esi, dword [ebp - 0x110]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov dword [esp + 8], esi
mov eax, dword [eax + 0x30]
xor esi, esi
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov ebx, 0x430c50
mov edx, 0x1f40
mov ecx, 8
sub esp, 0xc
mov eax, 1
jmp 0x402bb1
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
add ebx, 0x10
mov edx, dword [ebx - 0xc]
mov esi, dword [ebx - 0x10]
mov word [ebp - 0xf4], ax
movzx eax, ax
mov word [ebp - 0xe8], cx
movzx ecx, cx
imul eax, ecx
mov dword [esp], 0
mov ecx, esi
mov dword [ebp - 0xf2], edx
mov word [ebp - 0xf6], 1
sar eax, 3
mov word [ebp - 0xea], ax
movzx eax, ax
imul eax, edx
lea edx, [ebp - 0xf6]
mov dword [ebp - 0xee], eax
xor eax, eax
mov word [ebp - 0xe6], ax
lea eax, [ebp - 0x98]
mov dword [esp + 4], eax
mov eax, edi
call fcn.00401710
cmp edi, 0xffffffff
je 0x402c5b
lea eax, [ebp - 0x98]
mov dword [esp], 8
mov ecx, esi
lea edx, [ebp - 0xf6]
mov dword [esp + 4], eax
mov eax, edi
call fcn.00401710
lea eax, [ebp - 0x98]
mov ecx, esi
mov dword [esp], 4
mov dword [esp + 4], eax
lea edx, [ebp - 0xf6]
mov eax, edi
call fcn.00401710
mov eax, str..._wine_dlls_winmm_tests_joystick.c
cmp eax, ebx
jne 0x402ba2
mov ebx, dword [ebp - 0x10c]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x3000
lea eax, [ebx + ebx]
mov dword [esp], 0
mov dword [ebp - 0x110], eax
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_VirtualAlloc]
sub esp, 0x10
mov esi, eax
mov dword [esp + 4], 0x1ad
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
xor eax, eax
test esi, esi
mov dword [esp + 4], 0x430908
setne al
mov dword [esp], eax
call fcn.0042d100
test esi, esi
je 0x402d3d
lea eax, [ebp - 0xfc]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [esi + ebx]
mov dword [esp + 8], 1
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_VirtualProtect]
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x1b1
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp + 4], 0x430930
mov dword [esp], ebx
call fcn.0042d100
test ebx, ebx
jne 0x4038d6
mov eax, dword [ebp - 0x110]
mov dword [esp + 8], 0x8000
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_VirtualFree]
sub esp, 0xc
lea eax, [ebp - 0xf6]
mov dword [esp + 4], edi
xor edx, edx
mov dword [esp + 8], eax
lea eax, [ebp - 0x104]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp], eax
mov word [ebp - 0xe6], dx
mov dword [ebp - 0xf6], 0x10007
mov dword [ebp - 0xf2], 0x1f40
mov dword [ebp - 0xee], 0x1f40
mov dword [ebp - 0xea], 0x80001
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x1cf
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov esi, eax
call fcn.00424fd0
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
test ebx, 0xffffffdf
je 0x4037a0
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x1d7
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_WAVE_FORMAT_MULAW_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
xor eax, eax
mov dword [esp + 0x14], 8
mov word [ebp - 0xe6], ax
lea eax, [ebp - 0xf6]
mov dword [esp + 8], eax
lea eax, [ebp - 0x104]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 4], edi
mov dword [esp], eax
mov dword [ebp - 0xf6], 0x20002
mov dword [ebp - 0xf2], 0x5622
mov dword [ebp - 0xee], 0x5622
mov dword [ebp - 0xea], 0x40001
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x1e2
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov esi, eax
call fcn.00424fd0
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
test ebx, 0xffffffdf
je 0x4037f0
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x1ea
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_WAVE_FORMAT_ADPCM_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
mov eax, dword [0x43bbf0]
lea esi, [ebp - 0xc0]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [ebp - 0xa8], eax
mov eax, dword [0x43bbf4]
mov dword [esp + 0xc], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [0x43bbf8]
mov dword [esp + 8], esi
mov dword [ebp - 0xa0], eax
mov eax, dword [0x43bbfc]
mov dword [esp + 4], edi
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x104]
mov dword [esp], eax
mov dword [ebp - 0xc0], 0x2fffe
mov dword [ebp - 0xbc], 0x5622
mov dword [ebp - 0xb8], 0x15888
mov dword [ebp - 0xb4], 0x100004
mov dword [ebp - 0xb0], 0x100016
mov dword [ebp - 0xac], 0x80000000
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x1fb
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x10c], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x10c]
test ebx, 0xffffffdf
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
je 0x403890
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x203
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_WAVE_FORMAT_EXTENSIBLE_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
mov eax, dword [0x43bbf0]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [ebp - 0xa8], eax
mov eax, dword [0x43bbf4]
mov dword [esp + 0xc], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [0x43bbf8]
mov dword [esp + 8], esi
mov dword [ebp - 0xa0], eax
mov eax, dword [0x43bbfc]
mov dword [esp + 4], edi
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x104]
mov dword [esp], eax
mov dword [ebp - 0xc0], 0x4fffe
mov dword [ebp - 0xbc], 0x5622
mov dword [ebp - 0xb8], 0x2b110
mov dword [ebp - 0xb4], 0x100008
mov dword [ebp - 0xb0], 0x100016
mov dword [ebp - 0xac], 0x80000000
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x214
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x10c], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x10c]
test ebx, 0xffffffdf
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
je 0x403750
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x21c
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_4_channels_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
mov eax, dword [0x43bbf0]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [ebp - 0xa8], eax
mov eax, dword [0x43bbf4]
mov dword [esp + 0xc], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [0x43bbf8]
mov dword [esp + 8], esi
mov dword [ebp - 0xa0], eax
mov eax, dword [0x43bbfc]
mov dword [esp + 4], edi
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x104]
mov dword [esp], eax
mov dword [ebp - 0xc0], 0x6fffe
mov dword [ebp - 0xbc], 0x5622
mov dword [ebp - 0xb8], 0x40998
mov dword [ebp - 0xb4], 0x10000c
mov dword [ebp - 0xb0], 0x100016
mov dword [ebp - 0xac], 0x80000000
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x22d
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x10c], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x10c]
test ebx, 0xffffffdf
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
je 0x403840
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x235
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_6_channels_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
mov eax, dword [0x43bbf0]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [ebp - 0xa8], eax
mov eax, dword [0x43bbf4]
mov dword [esp + 0xc], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [0x43bbf8]
mov dword [esp + 8], esi
mov dword [ebp - 0xa0], eax
mov eax, dword [0x43bbfc]
mov dword [esp + 4], edi
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x104]
mov dword [esp], eax
mov dword [ebp - 0xc0], 0x2fffe
mov dword [ebp - 0xbc], 0x5622
mov dword [ebp - 0xb8], 0x2b110
mov dword [ebp - 0xb4], 0x200008
mov dword [ebp - 0xb0], 0x200016
mov dword [ebp - 0xac], 0x80000000
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x263
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x10c], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x10c]
test ebx, 0xffffffdf
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
je 0x403700
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x26b
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_32_bit_samples_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
mov eax, dword [0x43bbe0]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0
mov dword [ebp - 0xa8], eax
mov eax, dword [0x43bbe4]
mov dword [esp + 0xc], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [0x43bbe8]
mov dword [esp + 8], esi
mov dword [ebp - 0xa0], eax
mov eax, dword [0x43bbec]
mov dword [esp + 4], edi
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0x104]
mov dword [esp], eax
mov dword [ebp - 0xc0], 0x2fffe
mov dword [ebp - 0xbc], 0x5622
mov dword [ebp - 0xb8], 0x2b110
mov dword [ebp - 0xb4], 0x200008
mov dword [ebp - 0xb0], 0x200016
mov dword [ebp - 0xac], 0x80000000
call sub.winmm.dll_waveInOpen
sub esp, 0x18
mov ebx, eax
mov dword [esp + 4], 0x27c
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, ebx
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x10c], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x10c]
test ebx, 0xffffffdf
mov dword [esp + 4], str.waveInOpen__s_:_returned:__s_n
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
je 0x4036b0
lea eax, [ebx - 0xa]
cmp eax, 1
setbe al
cmp ebx, 4
sete dl
or eax, edx
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x284
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov dword [esp], edi
call fcn.00424fd0
mov dword [esp], str.waveInOpen__s_:_32_bit_float_samples_not_supported_n
mov dword [esp + 4], eax
call fcn.0042d130
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x402a80
mov edx, dword [ebp - 0x100]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov dword [esp + 8], edx
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_HeapAlloc]
mov dword [ebp - 0x110], eax
call eax
mov ebx, eax
mov eax, dword [ebp - 0x100]
sub esp, 0xc
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x80c
mov dword [esp], edi
call sub.winmm.dll_waveInMessage
sub esp, 0x10
mov esi, eax
mov dword [esp + 4], 0x181
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, esi
call fcn.00401030
mov dword [esp], edi
mov dword [ebp - 0x114], eax
call fcn.00424fd0
mov edx, dword [ebp - 0x114]
mov dword [esp + 4], str.waveInMessage__s_:_failed_to_get_interface_name:_rc_s_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0042d100
mov dword [esp + 4], 0x183
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
cmp word [ebx], 0
mov edx, dword [ebp - 0x100]
je 0x403ade
mov eax, ebx
nop
add eax, 2
cmp word [eax], 0
jne 0x403600
sub eax, ebx
sar eax, 1
add eax, 1
mov dword [esp + 8], edx
shr edx, 1
cmp edx, eax
mov dword [esp + 4], 0x4308ac
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0042d100
test esi, esi
je 0x403966
mov dword [esp + 8], ebx
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov esi, 0x43069c
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
mov dword [esp + 4], 0x190
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
movzx eax, word [ebp - 0x98]
movzx ecx, word [ebp - 0x96]
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x94]
movzx edx, al
shr eax, 8
mov dword [ebp - 0x118], eax
jmp 0x402ad8
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x4034e3
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
mov edx, esi
xor ecx, ecx
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x4033b5
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, esi
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x4033e1
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x403159
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, esi
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x403185
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x402e04
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
lea edx, [ebp - 0xf6]
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x402e30
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x402ef7
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
lea edx, [ebp - 0xf6]
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x402f23
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x403287
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, esi
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x4032b3
mov dword [esp], 1
call fcn.0042d100
test ebx, ebx
jne 0x40302b
mov eax, dword [ebp - 0x104]
mov dword [esp], eax
call sub.winmm.dll_waveInClose
lea eax, [ebp - 0x98]
xor ecx, ecx
mov edx, esi
sub esp, 4
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
jmp 0x403057
mov eax, dword [ebp - 0x10c]
mov ecx, 0x10
lea ebx, [esi + eax - 0x10]
lea eax, [ebp - 0x98]
mov dword [ebx], 0x10001
mov edx, ebx
mov dword [ebx + 4], 0x5622
mov dword [ebx + 8], 0x5622
mov dword [ebx + 0xc], 0x80001
mov dword [esp + 4], eax
mov eax, edi
mov dword [esp], 0
call fcn.00401710
cmp edi, 0xffffffff
je 0x402d1f
lea eax, [ebp - 0x98]
mov dword [esp], 8
mov edx, ebx
mov ecx, 0x10
mov dword [esp + 4], eax
mov eax, edi
call fcn.00401710
lea eax, [ebp - 0x98]
mov dword [esp], 4
mov edx, ebx
mov dword [esp + 4], eax
mov ecx, 0x10
mov eax, edi
call fcn.00401710
jmp 0x402d1f
mov eax, dword [ebp - 0x100]
mov dword [esp + 4], 0
mov esi, dword fs:[0x18]
shr eax, 1
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x110]
call eax
mov ecx, eax
mov eax, dword [ebp - 0x100]
sub esp, 0xc
mov dword [ebp - 0x110], ecx
shr eax, 1
mov dword [esp + 0x10], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
sub esp, 0x20
mov dword [esp + 8], ebx
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esp + 4], 0
mov eax, dword [esi + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
mov dword [esp + 4], 0x190
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
mov eax, dword [ebp - 0x94]
movzx esi, word [ebp - 0x98]
movzx ecx, word [ebp - 0x96]
movzx edx, al
shr eax, 8
mov dword [ebp - 0x114], esi
mov esi, 0x43069c
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x110]
test eax, eax
cmovne esi, eax
jmp 0x402ad8
mov dword [esp + 8], 0xe
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 dword [sym.imp.kernel32.dll_HeapAlloc]
mov edx, 0x64
sub esp, 0xc
mov word [eax + 0xc], dx
mov esi, eax
mov dword [eax], 0x20746f6e
mov dword [eax + 4], 0x70707573
mov dword [eax + 8], 0x6574726f
mov dword [esp + 4], 0x190
mov dword [esp], str..._wine_dlls_winmm_tests_capture.c
call fcn.0042ce90
movzx eax, word [ebp - 0x98]
movzx ecx, word [ebp - 0x96]
mov dword [ebp - 0x110], esi
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x94]
movzx edx, al
shr eax, 8
mov dword [ebp - 0x118], eax
jmp 0x402ad8
mov eax, 1
jmp 0x403610