Function at 0x6f257579
Capabilities:
Get process heap flags

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x228
mov eax, dword [ecx + 4]
mov esi, dword [ecx]
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x1b0], eax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x1c8], eax
test byte [0x6f2665a8], 8
jne 0x6f255d94
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x6f2559c4
mov ecx, dword [ebp - 0x1b8]
test ecx, ecx
je 0x6f2559c4
xor edx, edx
mov word [eax], dx
mov dword [ebp - 0x1a0], 0x10b
cmp word [esi], 0
je 0x6f255b08
mov eax, esi
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x6f2559e0
sub eax, esi
mov dword [esp + 4], 0
mov ebx, dword [sym.imp.kernel32.dll_HeapAlloc]
add eax, 2
mov dword [esp + 8], eax
mov edx, dword fs:[0x18]
mov eax, dword [edx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov dword [ebp - 0x1bc], eax
sub esp, 0xc
mov ecx, eax
test eax, eax
je 0x6f2572d3
xor eax, eax
lea esi, [esi]
nop
movzx edx, word [esi + eax]
mov word [ecx + eax], dx
add eax, 2
test dx, dx
jne 0x6f255a30
mov esi, dword [ebp - 0x1bc]
lea edi, [ebp - 0x16c]
mov dword [esp], esi
call dword [sym.imp.user32.dll_CharLowerW]
xor eax, eax
mov ecx, 0x10
rep stosd dword es:[edi], eax
sub esp, 4
mov dword [esp], esi
mov esi, dword [sym.imp.ucrtbase.dll_wcschr]
mov dword [esp + 4], 0x20
call esi
mov dword [ebp - 0x1a8], eax
test eax, eax
je 0x6f255de6
mov ecx, dword [ebp - 0x1a8]
lea edx, [ebp - 0x180]
lea eax, [ecx + 2]
mov dword [ebp - 0x180], eax
xor eax, eax
mov word [ecx], ax
lea eax, [ebp - 0x184]
call sym._MCI_GetString
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x6f255b1c
mov eax, dword [ebp - 0x1a8]
mov dword [esp + 4], 0
mov esi, dword fs:[0x18]
mov dword [esp + 8], eax
mov eax, dword [esi + 0x30]
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x1bc]
sub esp, 0xc
mov dword [esp + 8], eax
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 eax, dword [ebp - 0x1a0]
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret 0x10
mov eax, dword [ebp - 0x184]
mov dword [esp + 4], 0x6f2733c0
mov dword [esp], eax
mov eax, dword [sym.imp.ucrtbase.dll__wcsicmp]
mov dword [ebp - 0x1dc], eax
call eax
mov dword [esp + 4], 0x6f2738aa
test eax, eax
mov eax, dword [ebp - 0x1bc]
mov dword [esp], eax
mov eax, dword [sym.imp.ucrtbase.dll_wcscmp]
mov dword [ebp - 0x1e0], eax
jne 0x6f256019
call eax
mov dword [ebp - 0x1d0], 0xffffffff
test eax, eax
je 0x6f25685c
mov dword [ebp - 0x1a4], 0
mov edi, dword [ebp - 0x17c]
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1a8], 0
test edi, edi
je 0x6f25673f
mov eax, dword [edi + 0x28]
mov edx, dword [ebp - 0x1bc]
call sym._MCI_FindCommand
mov dword [ebp - 0x1cc], eax
test eax, eax
je 0x6f256936
movzx edx, word [eax]
mov eax, dword [ebp - 0x1cc]
test dx, dx
je 0x6f256b53
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x6f255bd0
mov eax, dword [eax + 2]
mov dword [ebp - 0x1e4], eax
mov word [ebp - 0x1d2], ax
mov eax, dword [ebp - 0x1cc]
nop
add eax, 2
cmp word [eax], 0
jne 0x6f255bf0
add eax, 2
cmp word [eax + 6], 0
movzx edx, byte [0x6f2665a8]
jne 0x6f255c15
cmp word [eax + 0xc], 4
je 0x6f256b3e
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1b4], 1
mov esi, 4
and edx, 8
jne 0x6f2568e9
mov dword [ebp - 0x19c], 0
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x12c], edx
movzx ecx, word [edx]
test cx, cx
je 0x6f256493
lea eax, [edx + 2]
cmp cx, 0x20
jne 0x6f255c7a
lea esi, [esi]
mov dword [ebp - 0x12c], eax
mov edx, eax
add eax, 2
cmp word [eax - 2], 0x20
je 0x6f255c68
test byte [0x6f2665a8], 8
jne 0x6f25645f
mov ebx, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x194], 0
cmp word [ebx], 0
mov dword [ebp - 0x198], eax
je 0x6f255e38
lea esi, [esi]
nop
mov edx, ebx
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x6f255cc8
sub edx, ebx
mov ecx, edx
mov esi, edx
lea eax, [edx + 2]
sar ecx, 1
add eax, ebx
mov edi, dword [eax]
add eax, 6
mov dword [ebp - 0x190], edi
movzx edi, word [eax - 2]
mov dword [ebp - 0x18c], eax
cmp di, 8
je 0x6f2562b0
cmp di, 9
je 0x6f256220
cmp di, 4
je 0x6f2560d0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x1ac], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
test eax, eax
jne 0x6f256112
cmp di, 1
jne 0x6f256101
mov edx, dword [ebp - 0x1ac]
test edx, edx
jne 0x6f256101
add esi, dword [ebp - 0x12c]
mov dword [ebp - 0x12c], esi
cmp word [esi], 0x20
jne case.0x6f255d8d.1
add esi, 2
lea esi, [esi]
nop
mov dword [ebp - 0x12c], esi
add esi, 2
cmp word [esi - 2], 0x20
je 0x6f255d70
cmp di, 0xc
ja case.default.0x6f255d8d
movzx eax, di
jmp dword [eax*4 + 0x6f273bc0]
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_1
mov ecx, dword [ebp - 0x1c8]
mov dword [esp + 0xc], 0x6f273898
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x1b8]
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x1b0]
mov dword [esp + 4], 0x6f2665a8
mov dword [esp + 0x14], ecx
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2559ab
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x1a0], 0x124
jmp 0x6f255abb
test byte [ebp - 0x194], 1
je 0x6f255e88
cmp di, 8
jne 0x6f255e88
mov dword [ebp - 0x1c4], 1
mov dword [ebp - 0x194], 1
lea esi, [esi]
nop
mov ebx, dword [ebp - 0x18c]
cmp word [ebx], 0
jne 0x6f255cc0
xor esi, esi
mov eax, 2
xor ecx, ecx
xor edx, edx
jmp 0x6f255cdc
mov eax, dword [ebp - 0x198]
lea ebx, [ebp + eax*4 - 0x16c]
mov eax, dword [ebp - 0x194]
test eax, eax
je 0x6f2563c5
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x19c]
or dword [ebx], eax
or dword [ebp - 0x1a4], ecx
test byte [0x6f2665a8], 8
jne 0x6f25642e
lea esi, [esi]
cmp dword [ebp - 0x198], 0x10
je 0x6f2578b7
mov edx, dword [ebp - 0x12c]
jmp 0x6f255c4d
mov eax, dword [ebp - 0x198]
lea esi, [ebp - 0x12c]
mov ecx, dword [ebp - 0x190]
mov edx, esi
or dword [ebp - 0x1a4], ecx
lea ebx, [eax*4]
lea eax, [ebp - 0x16c]
add eax, ebx
call sym._MCI_GetDWord
test eax, eax
je 0x6f25686b
lea eax, [ebp + ebx - 0x168]
mov edx, esi
call sym._MCI_GetDWord
test eax, eax
je 0x6f25686b
lea eax, [ebp + ebx - 0x164]
mov edx, esi
call sym._MCI_GetDWord
test eax, eax
je 0x6f25686b
lea eax, [ebp + ebx - 0x160]
mov edx, esi
call sym._MCI_GetDWord
test eax, eax
je 0x6f25686b
test byte [0x6f2665a8], 8
je 0x6f255e88
mov eax, dword [ebp - 0x190]
mov dword [esp + 0xc], str.flag_08lx_for_rectangle_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
mov ecx, dword [ebp - 0x190]
or dword [ebp - 0x1a4], ecx
test byte [0x6f2665a8], 8
je 0x6f255e88
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], str.flag_08lx_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
mov eax, dword [ebp - 0x198]
lea esi, [ebp - 0x12c]
mov ecx, dword [ebp - 0x190]
mov edx, esi
or dword [ebp - 0x1a4], ecx
lea ebx, [ebp + eax*4 - 0x16c]
mov eax, ebx
call sym._MCI_GetString
test eax, eax
jne 0x6f256870
test byte [0x6f2665a8], 8
je 0x6f255e88
mov eax, dword [ebx]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.flag_08lx_string_s_n
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x190]
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
call eax
test eax, eax
je 0x6f2565c7
mov esi, dword [ebp - 0x184]
xor ebx, ebx
test esi, esi
je 0x6f256054
mov dword [esp], esi
mov eax, dword [ebp - 0x1dc]
mov ebx, 0xffffffff
mov dword [esp + 4], 0x6f2733c0
call eax
test eax, eax
je 0x6f256054
mov eax, esi
call sym._MCI_GetDriverFromString.part.0
mov ebx, eax
mov dword [esp], 0x6f266580
mov esi, dword [sym.imp.kernel32.dll_EnterCriticalSection]
call esi
mov edi, dword [0x6f2663a0]
sub esp, 4
test edi, edi
jne 0x6f256083
jmp 0x6f2570b9
mov edi, dword [edi + 0x2c]
test edi, edi
je 0x6f2570b9
cmp dword [edi], ebx
jne 0x6f256078
mov dword [esp], 0x6f266580
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov dword [ebp - 0x17c], edi
mov dword [ebp - 0x1a4], 0
sub esp, 4
mov dword [ebp - 0x1d0], 0
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1a8], 0
jmp 0x6f255b9e
mov edx, dword [ebp - 0x1b4]
cmp dword [ebp - 0x198], edx
jne 0x6f256570
mov eax, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
test eax, eax
jne 0x6f255e28
add esi, dword [ebp - 0x12c]
test word [esi], 0xffdf
je 0x6f256297
cmp di, 0xc
ja case.default.0x6f25611f
movzx eax, di
jmp dword [eax*4 + 0x6f273bf4]
cmp dword [ebp - 0x194], 1
adc dword [ebp - 0x198], 0
jmp 0x6f255e28
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0x190], eax
cmp di, 3
jne 0x6f2562d5
mov eax, dword [ebp - 0x1c4]
test eax, eax
jne 0x6f255e88
mov dword [ebp - 0x1a0], 0x105
test byte [0x6f2665a8], 4
je 0x6f2561b2
mov eax, dword [ebp - 0x12c]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Optarg__s_not_found_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_3
mov esi, dword [ebp - 0x1c0]
test esi, esi
je 0x6f257085
mov eax, dword [ebp - 0x1c0]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call sym._MCI_SendCommand
cmp word [ebp - 0x1d2], 0x803
jne 0x6f255abb
cmp word [ebp - 0x1a0], 0
je 0x6f255abb
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x6f255abb
call sym._MCI_UnLoadMciDriver.part.0
jmp 0x6f255abb
mov eax, dword [ebp - 0x194]
test eax, eax
jne 0x6f25634b
mov eax, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
mov dword [ebp - 0x194], eax
test eax, eax
je 0x6f256280
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x194], 0
inc dword [ebp - 0x198]
jmp 0x6f255e28
add dword [ebp - 0x198], 4
jmp 0x6f255e28
mov dword [ebp - 0x19c], 0
add esi, dword [ebp - 0x12c]
test word [esi], 0xffdf
jne case.0x6f25611f.1
mov dword [ebp - 0x12c], esi
cmp word [esi], 0x20
je 0x6f255d64
jmp 0x6f255d80
mov eax, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
test eax, eax
je 0x6f256330
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x19c], eax
jmp 0x6f255e28
test byte [0x6f2665a8], 2
je 0x6f255e28
mov dword [esp + 0xc], str.oops_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e28
mov dword [ebp - 0x194], 1
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x19c], eax
jmp 0x6f256101
mov eax, dword [ebp - 0x198]
lea edx, [ebp - 0x12c]
mov dword [ebp - 0x194], ecx
lea eax, [ebp + eax*4 - 0x16c]
call sym._MCI_GetDWord
mov ecx, dword [ebp - 0x1a4]
mov edx, eax
mov eax, dword [ebp - 0x19c]
or eax, ecx
test edx, edx
cmove eax, ecx
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x1a4], eax
jmp 0x6f25622e
test byte [0x6f2665a8], 2
je 0x6f255e88
mov dword [esp + 0xc], str.oops_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
lea esi, [ebp - 0x12c]
mov eax, ebx
mov ecx, dword [ebp - 0x190]
or dword [ebp - 0x1a4], ecx
mov edx, esi
call sym._MCI_GetDWord
test eax, eax
je 0x6f25686b
test byte [0x6f2665a8], 8
je 0x6f255e88
mov eax, dword [ebx]
mov dword [esp + 0xc], str.flag_08lx_int_ld_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x190]
mov dword [esp + 4], 0x6f2665a8
mov dword [esp + 0x10], eax
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], str.flag_08lx_constant_08lx_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255e88
mov eax, edx
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.args_s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255c87
mov eax, dword [ebp - 0x1a4]
mov ebx, dword [ebp - 0x1c0]
and eax, 1
test ebx, ebx
jne 0x6f2565b0
test eax, eax
je 0x6f2564ba
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x1e4]
movzx esi, ax
cmp ax, 0x810
je 0x6f256978
cmp esi, 0x812
je 0x6f256c4a
cmp esi, 0x803
je 0x6f256be3
test byte [0x6f2665a8], 8
jne 0x6f256a24
cmp word [ebp - 0x1d2], 0x803
mov eax, dword [ebp - 0x17c]
je 0x6f25717b
test eax, eax
je 0x6f256513
mov eax, dword [eax]
mov dword [ebp - 0x1d0], eax
lea eax, [ebp - 0x16c]
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1a4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x1d0]
mov dword [esp], eax
call sym._MCI_SendCommand
mov dword [ebp - 0x1a0], eax
mov ebx, eax
test ax, ax
je 0x6f256c65
test byte [0x6f2665a8], 8
jne 0x6f256d94
mov edx, dword [ebp - 0x1c0]
test edx, edx
jne 0x6f2561c0
jmp 0x6f255abb
mov dword [ebp - 0x1a0], 0x10f
test byte [0x6f2665a8], 1
je 0x6f2561b2
mov dword [esp + 0xc], str.MCI_RETURN_not_in_first_position_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2561b2
test eax, eax
je 0x6f2564ba
mov dword [ebp - 0x1a0], 0x12c
jmp 0x6f2561c0
mov dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x184]
mov dword [esp + 4], 0x6f2738b4
mov dword [esp], eax
mov eax, dword [ebp - 0x1e0]
call eax
test eax, eax
jne 0x6f2567a9
mov eax, dword [ebp - 0x180]
mov dword [esp + 4], 0x6f2738bc
mov dword [ebp - 0x184], 0
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
mov dword [ebp - 0x1a8], eax
test eax, eax
je 0x6f257025
lea edi, [eax + 0xa]
mov dword [esp + 4], 0x20
mov dword [esp], edi
call esi
mov esi, eax
test eax, eax
je 0x6f25663c
xor eax, eax
mov word [esi], ax
mov eax, dword [ebp - 0x1a8]
cmp word [eax + 0xa], 0
je 0x6f2578f7
mov eax, edi
add eax, 2
cmp word [eax], 0
jne 0x6f25664f
sub eax, edi
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x190], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov dword [ebp - 0x1a8], eax
sub esp, 0xc
test eax, eax
je 0x6f2566b1
mov edx, dword [ebp - 0x190]
mov dword [esp + 4], edi
mov edi, eax
mov dword [esp], eax
mov dword [esp + 8], edx
call sym._memcpy
mov dword [esp], edi
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
test esi, esi
je 0x6f2566bd
mov ecx, 0x20
mov word [esi], cx
mov dword [ebp - 0x160], 0x6f273638
mov dword [ebp - 0x1a4], 0x200
cmp dword [ebp - 0x18c], 0xffffffff
je 0x6f256d18
mov eax, dword [ebp - 0x180]
mov dword [esp + 4], str._alias
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
test eax, eax
je 0x6f256cfb
mov eax, dword [ebp - 0x1a8]
lea edx, [ebp - 0x17c]
call sym._MCI_LoadMciDriver
mov dword [ebp - 0x1c0], eax
cmp eax, 0x132
je 0x6f257076
test eax, eax
jne 0x6f257065
mov dword [ebp - 0x1d0], 0
mov edi, dword [ebp - 0x17c]
test edi, edi
jne 0x6f255b9e
xor eax, eax
call sym._MCI_GetCommandTable
mov edx, dword [ebp - 0x1bc]
call sym._MCI_FindCommand
mov dword [ebp - 0x1cc], eax
test eax, eax
jne 0x6f255bba
test byte [0x6f2665a8], 8
jne 0x6f256e1a
mov eax, dword [ebp - 0x1c0]
test eax, eax
je 0x6f256e5b
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call sym._MCI_SendCommand
mov dword [ebp - 0x1a0], 0x105
jmp 0x6f255abb
mov eax, dword [ebp - 0x184]
mov dword [esp + 4], 0x21
mov dword [esp], eax
call esi
test eax, eax
je 0x6f256e6a
xor edx, edx
add eax, 2
mov word [eax - 2], dx
mov esi, dword [ebp - 0x184]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x164], esi
cmp word [esi], 0
je 0x6f257901
mov eax, esi
add eax, 2
cmp word [eax], 0
jne 0x6f2567eb
sub eax, esi
lea edi, [eax + 2]
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
mov dword [ebp - 0x1a8], eax
sub esp, 0xc
test eax, eax
je 0x6f256841
mov dword [esp + 8], edi
mov edi, eax
mov dword [esp + 4], esi
mov dword [esp], eax
call sym._memcpy
mov dword [esp], edi
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
mov dword [ebp - 0x1a4], 0x2200
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x160], eax
jmp 0x6f2566d1
mov dword [ebp - 0x18c], 0xffffffff
jmp 0x6f2565d1
mov eax, 0x10e
mov dword [ebp - 0x1a0], eax
mov edi, dword [ebp - 0x1c0]
test edi, edi
je 0x6f2561e6
cmp word [ebp - 0x1a0], 0
jne 0x6f2561c0
movzx eax, word [ebp - 0x1d2]
cmp ax, 0x806
je 0x6f2568a9
cmp ax, 0x80f
jne 0x6f2561c0
test byte [0x6f2665a8], 1
je 0x6f2561e6
mov eax, dword [ebp - 0x1c0]
mov dword [esp + 0xc], str.leaking_auto_open_device__u_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2561e6
mov eax, dword [ebp - 0x184]
call sym._wine_dbgstr_wn.constprop.0_1
mov ebx, eax
mov eax, dword [ebp - 0x1bc]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.verb_s_on_dev_s__offset_d_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255c37
mov ebx, dword [ebp - 0x17c]
mov eax, dword [ebx + 0x24]
cmp eax, 0xfffe
je 0x6f2570a0
cmp eax, 0xffff
je 0x6f25673f
mov edx, dword [ebp - 0x1bc]
call sym._MCI_FindCommand
mov dword [ebp - 0x1cc], eax
test eax, eax
jne 0x6f255bba
jmp 0x6f25673f
cmp dword [ebp - 0x1d0], 0xffffffff
mov dword [ebp - 0x15c], 0xffffffff
je 0x6f2564e5
mov ebx, dword [ebp - 0x184]
test dword [ebp - 0x1a4], 0x800
je 0x6f256d27
test ebx, ebx
je 0x6f2569d7
mov dword [esp + 4], 0x6f2733c0
mov eax, dword [ebp - 0x1dc]
mov dword [esp], ebx
call eax
mov dword [ebp - 0x1a0], 0xffffffff
test eax, eax
je 0x6f2569d7
mov eax, ebx
call sym._MCI_GetDriverFromString.part.0
mov dword [ebp - 0x1a0], eax
mov dword [esp], 0x6f266580
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov ebx, dword [0x6f2663a0]
sub esp, 4
test ebx, ebx
jne 0x6f2569ff
jmp 0x6f256a09
mov ebx, dword [ebx + 0x2c]
test ebx, ebx
je 0x6f256a09
mov eax, dword [ebp - 0x1a0]
cmp dword [ebx], eax
jne 0x6f2569f8
mov dword [esp], 0x6f266580
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov dword [ebp - 0x17c], ebx
sub esp, 4
jmp 0x6f2564e5
mov eax, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x148]
mov edi, dword [ebp - 0x14c]
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x190], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x1b4], eax
mov eax, esi
call sym._MCI_MessageToString
mov edx, dword [ebp - 0x17c]
mov ecx, eax
mov eax, dword [ebp - 0x1d0]
test edx, edx
je 0x6f256aab
mov eax, dword [edx]
mov dword [esp + 0x3c], edi
mov edi, dword [ebp - 0x18c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x38], edi
mov edi, dword [ebp - 0x190]
mov dword [esp + 0x10], eax
mov dword [esp + 0x34], edi
mov edi, dword [ebp - 0x194]
mov dword [esp + 0xc], str.__d___s___08lx___08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__n
mov dword [esp + 0x30], edi
mov edi, dword [ebp - 0x198]
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x2c], edi
mov edi, dword [ebp - 0x19c]
mov dword [esp + 4], 0x6f2665a8
mov dword [esp + 0x28], edi
mov edi, dword [ebp - 0x1a0]
mov dword [esp], 3
mov dword [esp + 0x24], edi
mov edi, dword [ebp - 0x1ac]
mov dword [esp + 0x40], ebx
mov dword [esp + 0x20], edi
mov edi, dword [ebp - 0x1b4]
mov dword [esp + 0x1c], edi
mov edi, dword [ebp - 0x1a4]
mov dword [esp + 0x18], edi
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2564f2
mov eax, dword [eax + 8]
mov dword [ebp - 0x1d8], eax
cmp eax, 0xd
ja case.0x6f256b4c.3
jmp dword [eax*4 + 0x6f273c28]
mov ecx, dword [ebp - 0x1cc]
lea eax, [ecx + 2]
mov ecx, dword [ecx + 2]
mov dword [ebp - 0x1e4], ecx
mov word [ebp - 0x1d2], cx
jmp 0x6f255bfc
mov eax, dword [ebp - 0x1b0]
mov esi, 0xc
mov dword [ebp - 0x1b4], 3
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x164], eax
jmp 0x6f255c2e
mov dword [ebp - 0x1a0], 0x10f
and edx, 1
je 0x6f2561b2
mov eax, dword [ebp - 0x1d8]
mov dword [esp + 0xc], str.Unknown_MCI_return_type__ld_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2561b2
mov eax, dword [ebp - 0x1bc]
mov dword [esp + 4], 0x6f2738aa
mov dword [esp], eax
mov eax, dword [ebp - 0x1e0]
call eax
test eax, eax
je 0x6f2564e5
test byte [0x6f2665a8], 1
jne 0x6f25751a
mov eax, dword [ebp - 0x1c0]
test eax, eax
je 0x6f256c3b
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call sym._MCI_SendCommand
mov dword [ebp - 0x1a0], 0x110
jmp 0x6f255abb
or dword [ebp - 0x1a4], 0x100
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x168], eax
jmp 0x6f2564e5
mov dword [ebp - 0x1a0], 0
test byte [0x6f2665a8], 8
jne 0x6f256dc7
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x6f256876
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebp - 0x1d8]
cmp ecx, 0xd
ja case.0x6f256c9b.3
jmp dword [ecx*4 + 0x6f273c60]
movzx eax, byte [0x6f2665a8]
test al, 1
jne 0x6f2574e7
test al, 8
je 0x6f256876
mov eax, dword [ebp - 0x1b0]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.__2___lx___s__n
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x1a0]
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f256876
mov eax, dword [ebp - 0x184]
test eax, eax
jne 0x6f2566fd
mov dword [ebp - 0x1a0], 0x12b
jmp 0x6f255abb
mov dword [ebp - 0x1a0], 0x117
jmp 0x6f255abb
mov edx, 0x201
mov dword [ebp - 0x18c], esi
lea edi, [ebp - 0x12c]
mov esi, edx
jmp 0x6f256d49
inc esi
cmp esi, 0x20c
je 0x6f257560
mov eax, dword [0x6f267188]
mov dword [esp + 0xc], 0x20
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadStringW]
sub esp, 0x10
test eax, eax
je 0x6f256d3c
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x1dc]
mov dword [esp], edi
call eax
test eax, eax
jne 0x6f256d3c
mov edx, esi
mov esi, dword [ebp - 0x18c]
mov dword [ebp - 0x15c], edx
jmp 0x6f2564e5
mov eax, dword [ebp - 0x1a0]
mov dword [esp + 0xc], str.___lx_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f256557
mov edi, dword [ebp - 0x1b0]
mov eax, edi
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], str.__1___lx___s__n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x17c]
test edi, edi
jne 0x6f256c90
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
mov eax, dword [ebp - 0x1bc]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Command__s_not_found__n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x1c0]
test eax, eax
jne 0x6f25677a
mov dword [ebp - 0x1a0], 0x105
jmp 0x6f255abb
mov eax, dword [ebp - 0x184]
lea edi, [ebp - 0x12c]
mov dword [esp + 0xc], 0x100
mov dword [esp + 8], edi
mov dword [esp + 4], 0x6f272cd0
mov dword [esp], eax
call sym._DRIVER_GetLibName
test eax, eax
je 0x6f256f4d
mov eax, dword [ebp - 0x184]
mov dword [esp + 4], 0x20
mov dword [esp], eax
call esi
mov esi, eax
test eax, eax
je 0x6f256eb8
xor edi, edi
mov word [eax], di
mov edi, dword [ebp - 0x184]
mov dword [ebp - 0x164], edi
cmp word [edi], 0
mov eax, edi
je 0x6f256ed5
add eax, 2
cmp word [eax], 0
jne 0x6f256ecc
sub eax, edi
mov dword [esp + 4], 0
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x190], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov dword [ebp - 0x1a8], eax
sub esp, 0xc
test eax, eax
je 0x6f256f2e
mov edx, dword [ebp - 0x190]
mov dword [esp + 4], edi
mov edi, eax
mov dword [esp], eax
mov dword [esp + 8], edx
call sym._memcpy
mov dword [esp], edi
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
mov dword [ebp - 0x1a4], 0x2000
test esi, esi
je 0x6f2566d1
mov ebx, 0x20
mov word [esi], bx
jmp 0x6f2566d1
mov eax, dword [ebp - 0x180]
mov dword [esp + 4], 0x6f2738bc
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
mov dword [ebp - 0x1a8], eax
test eax, eax
je 0x6f257469
lea edi, [eax + 0xa]
mov dword [esp + 4], 0x20
mov dword [esp], edi
call esi
mov esi, eax
test eax, eax
je 0x6f256f8d
xor ecx, ecx
mov word [eax], cx
mov eax, dword [ebp - 0x1a8]
cmp word [eax + 0xa], 0
mov eax, edi
je 0x6f256fa5
add eax, 2
cmp word [eax], 0
jne 0x6f256f9c
sub eax, edi
mov dword [esp + 4], 0
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x190], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov dword [ebp - 0x1a8], eax
sub esp, 0xc
test eax, eax
je 0x6f256ffe
mov edx, dword [ebp - 0x190]
mov dword [esp + 4], edi
mov edi, eax
mov dword [esp], eax
mov dword [esp + 8], edx
call sym._memcpy
mov dword [esp], edi
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
test esi, esi
je 0x6f25700a
mov edx, 0x20
mov word [esi], dx
mov dword [ebp - 0x1a4], 0x200
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x160], eax
jmp 0x6f2566d1
mov dword [ebp - 0x1a0], 0x124
test byte [0x6f2665a8], 4
je 0x6f255abb
mov dword [esp + 0xc], str.open_new_requires_device_type_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f255abb
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1a0], eax
jmp 0x6f255abb
mov dword [ebp - 0x1a0], 0x107
jmp 0x6f255abb
cmp word [ebp - 0x1d2], 0x803
je 0x6f256203
jmp 0x6f255abb
mov eax, dword [ebx + 4]
call sym._MCI_GetCommandTable
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0x17c]
mov eax, dword [eax + 0x24]
jmp 0x6f25694a
mov dword [esp], 0x6f266580
mov ebx, dword [sym.imp.kernel32.dll_LeaveCriticalSection]
call ebx
xor eax, eax
mov dword [ebp - 0x17c], 0
sub esp, 4
call sym._MCI_GetCommandTable
mov edx, dword [ebp - 0x1bc]
call sym._MCI_FindCommand
mov dword [ebp - 0x1cc], eax
test eax, eax
je 0x6f2572c4
movzx edx, word [eax]
test dx, dx
je 0x6f257420
add eax, 2
cmp word [eax], 0
jne 0x6f257101
sub eax, dword [ebp - 0x1cc]
add eax, 2
mov ecx, dword [ebp - 0x1cc]
movzx eax, word [ecx + eax]
cmp eax, 0x811
je 0x6f257450
ja 0x6f2571cf
cmp eax, 0x804
je 0x6f257450
cmp eax, 0x810
jne 0x6f2571da
mov dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x1a8], eax
test eax, eax
jne 0x6f25742a
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1d0], 0
jmp 0x6f255bbd
mov ecx, dword [ebp - 0x1a4]
lea edx, [ebp - 0x16c]
xor ebx, ebx
call sym._MCI_FinishOpen
mov dword [ebp - 0x1a0], eax
test eax, eax
je 0x6f256c6f
mov eax, dword [ebp - 0x1c0]
test eax, eax
je 0x6f2561f5
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call sym._MCI_SendCommand
jmp 0x6f2561f5
cmp eax, 0x812
je 0x6f257144
mov eax, dword [ebp - 0x184]
lea edi, [ebp - 0x12c]
mov dword [esp + 8], str.open__s_wait
mov dword [esp + 4], 0x8a
mov dword [esp + 0xc], eax
mov dword [esp], edi
call sym._swprintf
lea edx, [ebp - 0x178]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 6
mov dword [esp + 4], edx
mov dword [esp], edi
call sym.winmm.dll_mciSendStringW
mov dword [ebp - 0x1d0], eax
sub esp, 0x10
test eax, eax
jne 0x6f2573b4
lea edx, [ebp - 0x178]
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], edx
call dword [sym.imp.ucrtbase.dll_wcstoul]
mov dword [ebp - 0x1c0], eax
test byte [0x6f2665a8], 8
jne 0x6f257372
mov dword [esp], 0x6f266580
call esi
mov edi, dword [0x6f2663a0]
sub esp, 4
test edi, edi
jne 0x6f25728f
jmp 0x6f25730a
mov edi, dword [edi + 0x2c]
test edi, edi
je 0x6f25730a
mov eax, dword [ebp - 0x1c0]
cmp eax, dword [edi]
jne 0x6f257288
mov dword [esp], 0x6f266580
call ebx
mov dword [ebp - 0x17c], edi
mov dword [ebp - 0x1a4], 0
sub esp, 4
mov dword [ebp - 0x1a8], 0
jmp 0x6f255b9e
mov dword [ebp - 0x1d0], 0
jmp 0x6f255b72
mov dword [ebp - 0x1a0], 0x108
jmp 0x6f255b08
mov dword [ebp - 0x1b4], 5
mov esi, 0x14
jmp 0x6f255c2e
mov dword [ebp - 0x1b4], 2
mov esi, 8
jmp 0x6f255c2e
mov dword [esp], 0x6f266580
call ebx
mov dword [ebp - 0x17c], 0
push ecx
test byte [0x6f2665a8], 2
jne 0x6f2573e8
mov eax, dword [ebp - 0x1c0]
test eax, eax
je 0x6f2573cf
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call sym._MCI_SendCommand
mov dword [ebp - 0x1a0], 0x101
mov dword [ebp - 0x1a8], 0
jmp 0x6f255abb
mov eax, dword [ebp - 0x184]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.auto_opened__u_for__s_n
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x1c0]
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f257267
mov dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1a0], eax
jmp 0x6f255abb
mov dword [ebp - 0x1a0], 0x101
mov dword [ebp - 0x1a8], 0
jmp 0x6f255abb
mov eax, dword [ebp - 0x1c0]
mov dword [esp + 0xc], str.No_auto_open_device__u_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f25732b
mov eax, 2
jmp 0x6f257113
mov dword [ebp - 0x1d0], 0
mov edi, eax
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1a8], 0
jmp 0x6f255b9e
mov dword [ebp - 0x1a0], 0x107
mov dword [ebp - 0x1a8], 0
jmp 0x6f255abb
mov eax, dword [ebp - 0x184]
mov edx, edi
call sym._MCI_GetDevTypeFromFileName.constprop.0
test eax, eax
jne 0x6f25706b
cmp word [ebp - 0x12c], 0
mov eax, edi
je 0x6f257493
add eax, 2
cmp word [eax], 0
jne 0x6f25748a
sub eax, edi
mov dword [esp + 4], 0
lea esi, [eax + 2]
mov dword [esp + 8], esi
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
mov dword [ebp - 0x1a8], eax
sub esp, 0xc
test eax, eax
je 0x6f25700a
mov dword [esp + 4], edi
mov edi, eax
mov dword [esp + 8], esi
mov dword [esp], eax
call sym._memcpy
mov dword [esp], edi
call dword [sym.imp.user32.dll_CharUpperW]
push eax
jmp 0x6f25700a
mov eax, dword [ebp - 0x1d8]
mov dword [esp + 0xc], str.Unknown_MCI_return_type__ld_n
mov dword [esp + 8], str.MCI_HandleReturnValues
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
jmp case.0x6f256c9b.0
mov eax, dword [ebp - 0x1bc]
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Cannot_open_with_command__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x1c0]
test eax, eax
jne 0x6f256c1b
jmp 0x6f256c3b
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x1a0], 0x11f
jmp 0x6f2561b2
mov edx, ebx
mov esi, dword [ebp - 0x168]
xor dx, dx
cmp edx, 0x40000
je 0x6f257799
ja 0x6f257744
cmp edx, 0x10000
je 0x6f257680
cmp edx, 0x20000
jne 0x6f257648
mov eax, esi
mov dword [esp + 8], 0x6f273ae8
shr eax, 0x10
movzx eax, al
mov dword [esp + 0x14], eax
mov eax, esi
movzx eax, ah
mov dword [esp + 0x10], eax
mov eax, esi
movzx esi, al
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 0xc], esi
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call sym._swprintf
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
mov eax, ebx
and eax, 0xffff0000
je case.0x6f256c9b.0
cmp eax, 0x80000
jne 0x6f2576b8
mov ecx, dword [ebp - 0x1b0]
mov eax, dword [ecx]
mov dword [esp + 8], 0x6f273ae2
mov dword [esp], ecx
mov dword [ebp - 0x168], eax
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
call sym._swprintf
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
test edx, edx
jne 0x6f2576fe
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x6f273b3e
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call sym._swprintf
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
mov eax, dword [ebp - 0x1b8]
shr esi, 0x10
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp + 8], eax
mov eax, dword [0x6f267188]
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadStringW]
movzx eax, byte [0x6f2665a8]
sub esp, 0x10
jmp 0x6f256cb1
movzx eax, byte [0x6f2665a8]
test al, 4
je 0x6f256cb1
shr ebx, 0x10
mov dword [esp + 0xc], str.Oooch._MCI_STRING_and_HIWORD_dwRet__04x_n
mov dword [esp + 0x10], ebx
mov dword [esp + 8], str.MCI_HandleReturnValues
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_3
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
movzx eax, byte [0x6f2665a8]
test al, 2
je 0x6f256cb1
shr ebx, 0x10
mov dword [esp + 0xc], str.Ooops___04X__n
mov dword [esp + 0x10], ebx
mov dword [esp + 8], str.MCI_HandleReturnValues
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
cmp edx, 0x80000
je 0x6f257650
cmp edx, 0x110000
jne 0x6f2576fe
mov eax, dword [eax + 0x10]
shr esi, 0x10
mov dword [esp], eax
call sym.winmm.dll_DrvGetModuleHandle
mov ecx, dword [ebp - 0x1b8]
sub esp, 4
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp - 0x1b0]
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadStringW]
movzx eax, byte [0x6f2665a8]
sub esp, 0x10
jmp 0x6f256cb1
mov eax, esi
mov edx, esi
mov dword [esp + 8], str._02d:_02d:_02d:_02d
shr eax, 0x10
shr edx, 0x18
movzx eax, al
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
mov eax, esi
movzx eax, ah
mov dword [esp + 0x10], eax
mov eax, esi
movzx esi, al
mov dword [esp + 0xc], esi
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call sym._swprintf
movzx eax, byte [0x6f2665a8]
jmp 0x6f256cb1
test ebx, 0xffff0000
je 0x6f2577fd
test byte [0x6f2665a8], 4
jne 0x6f257879
mov eax, dword [ebp - 0x15c]
mov dword [esp + 8], str._d__d__d__d
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x160]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x164]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x168]
mov dword [esp + 0xc], eax
jmp 0x6f2577c8
mov edx, ebx
mov esi, dword [ebp - 0x168]
xor dx, dx
cmp edx, 0x40000
je 0x6f257799
ja 0x6f2578a9
cmp edx, 0x10000
je 0x6f257680
cmp edx, 0x20000
je 0x6f2575ae
test edx, edx
jne 0x6f2576fe
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x6f273ae2
jmp 0x6f25765c
shr ebx, 0x10
mov dword [esp + 0xc], str.Oooch._MCI_STRING_and_HIWORD_dwRet__04x_n
mov dword [esp + 0x10], ebx
mov dword [esp + 8], str.MCI_HandleReturnValues
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 2
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2577fd
cmp edx, 0x80000
jne 0x6f257750
jmp 0x6f257868
mov dword [ebp - 0x1a0], 0x10f
test byte [0x6f2665a8], 1
je 0x6f2561b2
mov dword [esp + 0xc], str.Internal_data___buffer_overflow_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f2665a8
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
jmp 0x6f2561b2
mov edx, 2
jmp 0x6f25665d
mov edi, 2
jmp 0x6f2567f9