Function at 0x6f24aff0
Capabilities:
Check for peb beingdebugged flag
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 dword [ebp - 0x17c], 0
mov ebx, dword [ecx]
mov dword [ebp - 0x1ac], eax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x1b8], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x1c0], eax
test byte [0x6f266160], 8
jne 0x6f24b496
mov eax, dword [ebp - 0x1ac]
test eax, eax
je 0x6f24b054
mov edi, dword [ebp - 0x1b8]
test edi, edi
je 0x6f24b054
xor esi, esi
mov word [eax], si
cmp word [ebx], 0
mov edi, 0x10b
je 0x6f24b172
mov eax, ebx
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x6f24b068
sub eax, ebx
mov dword [esp + 4], 0
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
mov eax, dword [sym.imp.kernel32.dll_HeapAlloc]
mov dword [ebp - 0x190], eax
call eax
sub esp, 0xc
mov esi, eax
test eax, eax
je 0x6f24cad5
xor eax, eax
nop
movzx edx, word [ebx + eax]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x6f24b0b0
mov dword [esp], esi
lea edi, [ebp - 0x16c]
call dword [sym.imp.user32.dll_CharLowerW]
xor eax, eax
mov ecx, 0x10
rep stosd dword es:[edi], eax
mov eax, dword [sym.imp.ucrtbase.dll_wcschr]
sub esp, 4
mov edi, 0x124
mov dword [esp + 4], 0x20
mov dword [esp], esi
mov dword [ebp - 0x194], eax
call eax
mov ebx, eax
test eax, eax
je 0x6f24b125
lea eax, [eax + 2]
xor ecx, ecx
mov dword [ebp - 0x180], eax
lea edx, [ebp - 0x180]
mov word [ebx], cx
lea eax, [ebp - 0x184]
xor ebx, ebx
call fcn.6f248970
mov edi, eax
test eax, eax
je 0x6f24b182
mov dword [esp + 8], ebx
mov ebx, dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esp + 4], 0
mov edx, dword fs:[0x18]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x18c], edx
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov edx, dword [ebp - 0x18c]
mov eax, dword [edx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call ebx
sub esp, 0xc
lea esp, [ebp - 0x10]
mov eax, edi
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret 0x10
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x18c], eax
mov dword [esp], eax
mov eax, dword [sym.imp.ucrtbase.dll__wcsicmp]
mov dword [esp + 4], 0x6f26a35c
mov dword [ebp - 0x1dc], eax
call eax
mov dword [esp + 4], 0x6f26a846
test eax, eax
mov eax, dword [sym.imp.ucrtbase.dll_wcscmp]
mov dword [esp], esi
mov dword [ebp - 0x1e0], eax
je 0x6f24b4e8
call eax
test eax, eax
je 0x6f24be91
mov eax, dword [ebp - 0x18c]
xor ebx, ebx
test eax, eax
je 0x6f24b203
mov dword [esp + 4], 0x6f26a35c
mov ebx, 0xffffffff
mov dword [esp], eax
mov ecx, dword [ebp - 0x1dc]
call ecx
test eax, eax
je 0x6f24b203
mov eax, dword [ebp - 0x18c]
call fcn.6f248380
mov ebx, eax
mov eax, dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov dword [esp], 0x6f266460
mov dword [ebp - 0x194], eax
call eax
mov ecx, dword [0x6f27a510]
sub esp, 4
test ecx, ecx
jne 0x6f24b23b
jmp 0x6f24cf21
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
je 0x6f24c803
cmp dword [ecx], ebx
jne 0x6f24b230
mov dword [ebp - 0x18c], ecx
mov dword [esp], 0x6f266460
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0x18c]
mov dword [ebp - 0x1a8], 0
sub esp, 4
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x1b0], 0
xor ebx, ebx
mov eax, dword [ecx + 0x28]
mov edx, esi
mov dword [ebp - 0x18c], ecx
call fcn.6f247ef0
mov ecx, dword [ebp - 0x18c]
test eax, eax
mov dword [ebp - 0x1bc], eax
je 0x6f24beff
movzx eax, word [eax]
mov dword [ebp - 0x1c4], 0
mov edx, dword [ebp - 0x1bc]
test ax, ax
je 0x6f24c2d4
lea esi, [esi]
nop
add edx, 2
cmp word [edx], 0
jne 0x6f24b2c0
mov eax, dword [edx + 2]
mov dword [ebp - 0x1e4], eax
mov word [ebp - 0x1ca], ax
mov eax, dword [ebp - 0x1bc]
nop
add eax, 2
cmp word [eax], 0
jne 0x6f24b2e0
mov ecx, dword [ebp - 0x1bc]
sub eax, ecx
add eax, 8
mov ecx, dword [ebp - 0x1bc]
add eax, ecx
movzx ecx, byte [0x6f266160]
cmp word [eax], 0
jne case.0x6f24c269.0
cmp word [eax + 6], 4
je 0x6f24c25b
mov dword [ebp - 0x1d0], 0
mov edx, 4
mov dword [ebp - 0x1b4], 1
and ecx, 8
jne 0x6f24bea0
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1d8], ebx
mov dword [ebp - 0x1e8], edi
mov dword [ebp - 0x12c], edx
mov eax, edx
movzx edx, word [eax]
test dx, dx
je 0x6f24bacf
lea ecx, [eax + 2]
cmp dx, 0x20
jne 0x6f24b38a
lea esi, [esi]
mov eax, ecx
add ecx, 2
cmp word [ecx - 2], 0x20
je 0x6f24b378
mov dword [ebp - 0x12c], eax
test byte [0x6f266160], 8
jne 0x6f24ba9d
mov dword [ebp - 0x1c8], 0
mov ecx, dword [ebp - 0x1bc]
mov dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x1b4]
mov esi, ecx
cmp word [esi], 0
mov dword [ebp - 0x19c], eax
je 0x6f24b588
lea esi, [esi]
mov ebx, esi
lea esi, [esi]
add ebx, 2
cmp word [ebx], 0
jne 0x6f24b3d8
sub ebx, esi
mov dword [ebp - 0x194], ebx
lea eax, [ebx + 2]
mov ecx, ebx
sar ecx, 1
add eax, esi
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 0x6f24b8e0
cmp di, 9
je 0x6f24b808
cmp di, 4
je 0x6f24b870
mov edx, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
mov dword [esp], edx
mov dword [ebp - 0x1a0], edx
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
test eax, eax
jne 0x6f24b738
cmp di, 1
mov edx, dword [ebp - 0x1a0]
jne 0x6f24b8ad
test ebx, ebx
jne 0x6f24b8ad
cmp word [edx], 0x20
jne case.0x6f24b48f.1
add edx, 2
nop
mov eax, edx
add edx, 2
cmp word [edx - 2], 0x20
je 0x6f24b470
mov dword [ebp - 0x12c], eax
cmp di, 0xc
ja case.default.0x6f24b48f
movzx eax, di
jmp dword [eax*4 + 0x6f26ab5c]
mov eax, ebx
call fcn.6f248400
mov ecx, dword [ebp - 0x1c0]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x1b8]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x1ac]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x6f26a834
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x14], ecx
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b03b
call eax
test eax, eax
je 0x6f24bc11
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1c4], 0xffffffff
xor eax, eax
call fcn.6f248f80
mov edx, esi
call fcn.6f247ef0
mov dword [ebp - 0x1bc], eax
test eax, eax
jne 0x6f24cebe
test byte [0x6f266160], 8
jne 0x6f24c551
mov edi, dword [ebp - 0x1b0]
test edi, edi
jne 0x6f24c58e
mov edi, 0x105
jmp 0x6f24b125
test byte [ebp - 0x198], 1
je 0x6f24b5e0
cmp di, 8
jne 0x6f24b5e0
mov dword [ebp - 0x1c8], 1
lea esi, [esi]
mov esi, dword [ebp - 0x18c]
cmp word [esi], 0
jne 0x6f24b3d0
mov dword [ebp - 0x194], 0
mov eax, 2
xor ecx, ecx
xor ebx, ebx
jmp 0x6f24b3f0
mov eax, dword [ebp - 0x19c]
lea ebx, [ebp + eax*4 - 0x16c]
mov eax, dword [ebp - 0x198]
test eax, eax
je 0x6f24b9d0
mov eax, dword [ebp - 0x190]
or dword [ebx], eax
test byte [0x6f266160], 8
jne 0x6f24ba60
mov ecx, dword [ebp - 0x1a4]
or dword [ebp - 0x1a8], ecx
lea esi, [esi]
cmp dword [ebp - 0x19c], 0x10
je 0x6f24caaf
mov eax, dword [ebp - 0x12c]
jmp 0x6f24b360
mov eax, dword [ebp - 0x19c]
lea esi, [ebp - 0x12c]
mov edx, esi
lea ebx, [eax*4]
lea eax, [ebp - 0x16c]
add eax, ebx
call fcn.6f247de0
test eax, eax
je 0x6f24c980
lea eax, [ebp + ebx - 0x168]
mov edx, esi
call fcn.6f247de0
test eax, eax
je 0x6f24c980
lea eax, [ebp + ebx - 0x164]
mov edx, esi
call fcn.6f247de0
test eax, eax
je 0x6f24c980
lea eax, [ebp + ebx - 0x160]
mov edx, esi
call fcn.6f247de0
test eax, eax
je 0x6f24c980
test byte [0x6f266160], 8
jne 0x6f24ba2d
lea esi, [esi]
mov ecx, dword [ebp - 0x190]
or dword [ebp - 0x1a8], ecx
jmp 0x6f24b5e0
mov eax, dword [ebp - 0x19c]
lea esi, [ebp - 0x12c]
mov edx, esi
lea ebx, [ebp + eax*4 - 0x16c]
mov eax, ebx
call fcn.6f248970
test eax, eax
jne 0x6f24c7f0
test byte [0x6f266160], 8
je 0x6f24b678
mov eax, dword [ebx]
call fcn.6f248400
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x190]
mov dword [esp + 0xc], str.flag_08lx_string_s_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp + 0x10], eax
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b678
test byte [0x6f266160], 8
je 0x6f24b678
mov eax, dword [ebp - 0x190]
mov dword [esp + 0xc], str.flag_08lx_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
mov dword [esp + 0x10], eax
call fcn.6f2486f0
jmp 0x6f24b678
cmp di, 0xc
ja case.default.0x6f24b745
movzx eax, di
jmp dword [eax*4 + 0x6f26ab90]
cmp di, 3
jne 0x6f24b578
cmp dword [ebp - 0x1c8], 0
jne 0x6f24b5e0
mov esi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
test byte [0x6f266160], 4
jne 0x6f24c9f3
mov eax, dword [ebp - 0x1b0]
mov edi, 0x105
test eax, eax
je 0x6f24c49e
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call fcn.6f24ad90
cmp word [ebp - 0x1ca], 0x803
jne 0x6f24b125
test di, di
je 0x6f24b125
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x6f24b125
call fcn.6f248a50
jmp 0x6f24b125
cmp dword [ebp - 0x198], 1
adc dword [ebp - 0x19c], 0
jmp 0x6f24b578
mov eax, dword [ebp - 0x198]
test eax, eax
jne 0x6f24b956
mov ebx, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
mov dword [ebp - 0x198], eax
test eax, eax
je 0x6f24b900
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x198], 0
add dword [ebp - 0x19c], 1
jmp 0x6f24b578
add dword [ebp - 0x19c], 4
jmp 0x6f24b578
mov edx, dword [ebp - 0x1b4]
cmp dword [ebp - 0x19c], edx
jne 0x6f24bbe0
mov edx, dword [ebp - 0x12c]
mov dword [esp + 8], ecx
mov dword [esp + 4], esi
mov dword [esp], edx
mov dword [ebp - 0x1a0], edx
call dword [sym.imp.ucrtbase.dll__wcsnicmp]
test eax, eax
jne 0x6f24b738
mov edx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x194]
add edx, eax
movzx eax, word [edx]
test ax, 0xffdf
jne 0x6f24b738
lea esi, [esi]
mov dword [ebp - 0x12c], edx
cmp ax, 0x20
je 0x6f24b46c
jmp 0x6f24b482
mov dword [ebp - 0x198], 1
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x1a4], eax
jmp 0x6f24b882
mov dword [ebp - 0x1a4], 0
mov edx, dword [ebp - 0x194]
add edx, ebx
movzx eax, word [edx]
test ax, 0xffdf
je 0x6f24b8c8
jmp case.0x6f24b745.1
test byte [0x6f266160], 2
je 0x6f24b578
mov dword [esp + 0xc], str.oops_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp], 1
call fcn.6f2486f0
jmp 0x6f24b578
mov eax, dword [ebp - 0x19c]
lea edx, [ebp - 0x12c]
mov dword [ebp - 0x198], ecx
lea eax, [ebp + eax*4 - 0x16c]
call fcn.6f247de0
mov ecx, dword [ebp - 0x1a8]
mov edx, eax
mov eax, dword [ebp - 0x1a4]
or eax, ecx
test edx, edx
cmove eax, ecx
mov ecx, dword [ebp - 0x198]
mov dword [ebp - 0x1a8], eax
jmp 0x6f24b816
test byte [0x6f266160], 2
je 0x6f24b5e0
mov dword [esp + 0xc], str.oops_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp], 1
call fcn.6f2486f0
jmp 0x6f24b5e0
lea esi, [ebp - 0x12c]
mov eax, ebx
mov edx, esi
call fcn.6f247de0
test eax, eax
je 0x6f24c980
test byte [0x6f266160], 8
je 0x6f24b678
mov eax, dword [ebx]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x190]
mov dword [esp + 0xc], str.flag_08lx_int_ld_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp + 0x10], eax
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b678
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 + 4], 0x6f266160
mov dword [esp], 3
mov dword [esp + 0x10], eax
call fcn.6f2486f0
jmp 0x6f24b678
mov eax, dword [ebp - 0x190]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x1a4]
mov dword [esp + 0xc], str.flag_08lx_constant_08lx_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp + 0x10], eax
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b5d0
call fcn.6f248400
mov dword [esp + 0xc], str.args_s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b397
mov eax, dword [ebp - 0x1a8]
mov edx, dword [ebp - 0x1b0]
mov esi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
mov edi, dword [ebp - 0x1e8]
and eax, 1
test edx, edx
je 0x6f24be78
test eax, eax
jne 0x6f24c3ea
mov ecx, dword [ebp - 0x1e4]
movzx eax, cx
mov dword [ebp - 0x190], eax
cmp cx, 0x810
je 0x6f24c17b
cmp eax, 0x812
je 0x6f24c160
cmp eax, 0x803
jne 0x6f24bb47
mov dword [esp + 4], 0x6f26a846
mov dword [esp], esi
mov eax, dword [ebp - 0x1e0]
call eax
test eax, eax
jne 0x6f24c50c
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x18c], eax
test byte [0x6f266160], 8
jne 0x6f24c02c
cmp word [ebp - 0x1ca], 0x803
je 0x6f24c7ba
mov eax, dword [ebp - 0x18c]
test eax, eax
je 0x6f24bb81
mov eax, dword [eax]
mov dword [ebp - 0x1c4], eax
lea eax, [ebp - 0x16c]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1a8]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x190]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1c4]
mov dword [esp], eax
call fcn.6f24ad90
mov edi, eax
test ax, ax
je 0x6f24bf38
test byte [0x6f266160], 8
jne 0x6f24c4b2
mov eax, dword [ebp - 0x1b0]
test eax, eax
jne 0x6f24b793
jmp 0x6f24b125
mov esi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
test byte [0x6f266160], 1
jne 0x6f24c232
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x6f24c499
mov edi, 0x10f
jmp 0x6f24b793
mov dword [ebp - 0x19c], 0xffffffff
mov dword [esp + 4], 0x6f26a850
mov eax, dword [ebp - 0x18c]
mov dword [esp], eax
mov eax, dword [ebp - 0x1e0]
call eax
test eax, eax
jne 0x6f24bda8
mov dword [ebp - 0x184], 0
mov dword [esp + 4], 0x6f26a858
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
mov ebx, eax
test eax, eax
je 0x6f24c45e
lea ecx, [eax + 0xa]
mov dword [esp + 4], 0x20
mov dword [esp], ecx
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], ecx
call eax
mov ecx, dword [ebp - 0x198]
test eax, eax
mov dword [ebp - 0x18c], eax
je 0x6f24bc98
xor edx, edx
mov word [eax], dx
cmp word [ebx + 0xa], 0
je 0x6f24ceb4
mov eax, ecx
add eax, 2
cmp word [eax], 0
jne 0x6f24bca5
sub eax, ecx
lea edx, [eax + 2]
mov dword [ebp - 0x198], ecx
mov eax, dword fs:[0x18]
mov dword [esp + 8], edx
mov dword [ebp - 0x194], edx
mov dword [esp + 4], 0
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x190]
call eax
sub esp, 0xc
mov ebx, eax
test eax, eax
je 0x6f24bd13
mov edx, dword [ebp - 0x194]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x198]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sub.ucrtbase.dll_memcpy
mov dword [esp], ebx
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
mov eax, dword [ebp - 0x18c]
test eax, eax
je 0x6f24bd25
mov ecx, 0x20
mov word [eax], cx
mov dword [ebp - 0x160], 0x6f26a5d4
mov dword [ebp - 0x1a8], 0x200
cmp dword [ebp - 0x19c], 0xffffffff
je 0x6f24c30c
mov dword [esp + 4], str._alias
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
test eax, eax
je 0x6f24c2f4
lea edx, [ebp - 0x17c]
mov eax, ebx
call fcn.6f2491c0
mov dword [ebp - 0x1b0], eax
cmp eax, 0x132
je 0x6f24c454
test eax, eax
jne 0x6f24c449
mov ecx, dword [ebp - 0x17c]
test ecx, ecx
jne 0x6f24b277
mov dword [ebp - 0x1c4], 0
jmp 0x6f24b510
mov dword [esp + 4], 0x21
mov ebx, dword [ebp - 0x18c]
mov dword [esp], ebx
mov eax, dword [ebp - 0x194]
call eax
test eax, eax
je 0x6f24c5b9
lea ecx, [eax + 2]
xor edx, edx
mov word [eax], dx
cmp word [ebx], 0
mov eax, ebx
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x184], ecx
mov dword [ebp - 0x164], ebx
je 0x6f24ca2b
add eax, 2
cmp word [eax], 0
jne 0x6f24bdef
mov ecx, dword [ebp - 0x18c]
sub eax, ecx
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x198], edx
mov dword [esp + 4], 0
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x190]
call eax
sub esp, 0xc
mov ebx, eax
test eax, eax
je 0x6f24be5d
mov edx, dword [ebp - 0x198]
mov dword [esp + 8], edx
mov eax, dword [ebp - 0x18c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sub.ucrtbase.dll_memcpy
mov dword [esp], ebx
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
mov dword [ebp - 0x1a8], 0x2200
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x160], eax
jmp 0x6f24bd39
test eax, eax
je 0x6f24bb00
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x16c], eax
jmp 0x6f24bb00
mov dword [ebp - 0x19c], 0
jmp 0x6f24bc1b
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x190], edx
call fcn.6f248400
mov dword [ebp - 0x18c], eax
mov eax, esi
call fcn.6f248400
mov edx, dword [ebp - 0x190]
mov dword [esp + 0x18], edx
mov ecx, dword [ebp - 0x18c]
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 + 0x14], ecx
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24b336
mov eax, dword [ecx + 0x24]
cmp eax, 0xfffe
je 0x6f24c4f0
cmp eax, 0xffff
je 0x6f24bd99
mov edx, esi
call fcn.6f247ef0
mov dword [ebp - 0x1bc], eax
test eax, eax
jne 0x6f24b29b
jmp 0x6f24bd99
mov dword [ebp - 0x190], 0
test byte [0x6f266160], 8
jne 0x6f24c399
mov eax, dword [ebp - 0x1ac]
test eax, eax
je 0x6f24bf7e
mov eax, dword [ebp - 0x1d0]
cmp eax, 0xd
ja case.0x6f24bf64.3
jmp dword [eax*4 + 0x6f26abc4]
movzx eax, byte [0x6f266160]
test al, 1
jne 0x6f24cb8d
test al, 8
jne 0x6f24bfee
xor edi, edi
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x6f24b7b9
test di, di
jne 0x6f24b793
movzx eax, word [ebp - 0x1ca]
cmp ax, 0x806
je 0x6f24bfae
cmp ax, 0x80f
jne 0x6f24b793
test byte [0x6f266160], 1
je 0x6f24b125
mov eax, dword [ebp - 0x1b0]
mov dword [esp + 0xc], str.leaking_auto_open_device__u_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 0
mov dword [esp + 0x10], eax
call fcn.6f2486f0
jmp 0x6f24b125
mov eax, dword [ebp - 0x1ac]
call fcn.6f248400
mov dword [esp + 0xc], str.__2___lx___s__n
mov dword [esp + 0x14], eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24bf7e
mov eax, dword [ebp - 0x148]
mov ecx, dword [ebp - 0x150]
mov edi, dword [ebp - 0x14c]
mov dword [ebp - 0x194], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x1d4], ecx
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x158]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x190]
call fcn.6f248090
mov edx, dword [ebp - 0x18c]
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1c4]
test edx, edx
je 0x6f24c0c7
mov eax, dword [edx]
mov edx, dword [ebp - 0x194]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x40], edx
mov ecx, dword [ebp - 0x198]
mov dword [esp + 0x34], ecx
mov ecx, dword [ebp - 0x19c]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebp - 0x1a0]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp - 0x1a4]
mov dword [esp + 0x28], ecx
mov ecx, dword [ebp - 0x1b4]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp - 0x1bc]
mov dword [esp + 0x20], ecx
mov ecx, dword [ebp - 0x1c0]
mov dword [esp + 0x1c], ecx
mov ecx, dword [ebp - 0x1a8]
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp - 0x1c8]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.__d___s___08lx___08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__08lx__n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 0x14], ecx
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24bb60
mov eax, dword [ebp - 0x184]
or dword [ebp - 0x1a8], 0x100
mov dword [ebp - 0x168], eax
jmp 0x6f24bb47
cmp dword [ebp - 0x1c4], 0xffffffff
mov dword [ebp - 0x15c], 0xffffffff
je 0x6f24bb47
mov eax, dword [ebp - 0x184]
mov dword [ebp - 0x18c], eax
test dword [ebp - 0x1a8], 0x800
je 0x6f24c316
test eax, eax
je 0x6f24c1db
mov dword [esp + 4], 0x6f26a35c
mov edi, 0xffffffff
mov dword [esp], eax
mov ecx, dword [ebp - 0x1dc]
call ecx
test eax, eax
je 0x6f24c1db
mov eax, dword [ebp - 0x18c]
call fcn.6f248380
mov edi, eax
mov dword [esp], 0x6f266460
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [0x6f27a510]
sub esp, 4
mov dword [ebp - 0x18c], eax
test eax, eax
jne 0x6f24c207
jmp 0x6f24c211
mov eax, dword [eax + 0x2c]
test eax, eax
je 0x6f24c20b
cmp dword [eax], edi
jne 0x6f24c200
mov dword [ebp - 0x18c], eax
mov dword [esp], 0x6f266460
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0x18c]
sub esp, 4
mov dword [ebp - 0x17c], eax
jmp 0x6f24bb53
mov dword [esp + 0xc], str.MCI_RETURN_not_in_first_position_n
mov dword [esp + 8], str.MCI_ParseOptArgs
mov dword [esp + 4], 0x6f266160
mov dword [esp], 0
call fcn.6f2486f0
jmp 0x6f24bbf9
mov eax, dword [eax + 2]
mov dword [ebp - 0x1d0], eax
cmp eax, 0xd
ja case.0x6f24c269.3
jmp dword [eax*4 + 0x6f26abfc]
and ecx, 1
jne 0x6f24c3f4
mov edx, dword [ebp - 0x1b0]
test edx, edx
jne 0x6f24bc07
cmp word [ebp - 0x1ca], 0x803
mov edi, 0x10f
jne 0x6f24b125
mov edi, 0x10f
jmp 0x6f24b7d1
mov eax, dword [ebp - 0x1ac]
mov edx, 0xc
mov dword [ebp - 0x1b4], 3
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x164], eax
jmp 0x6f24b32d
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax + 2]
mov dword [ebp - 0x1e4], eax
mov word [ebp - 0x1ca], ax
mov eax, 8
jmp 0x6f24b2f4
mov eax, dword [ebp - 0x184]
test eax, eax
jne 0x6f24bd65
mov edi, 0x12b
jmp 0x6f24b125
mov edi, 0x117
jmp 0x6f24b125
lea eax, [ebp - 0x12c]
mov edi, 0x201
mov dword [ebp - 0x198], eax
jmp 0x6f24c338
add edi, 1
cmp edi, 0x20c
je 0x6f24c998
mov dword [esp + 0xc], 0x20
mov eax, dword [ebp - 0x198]
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov eax, dword [0x6f27af44]
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadStringW]
sub esp, 0x10
test eax, eax
je 0x6f24c329
mov eax, dword [ebp - 0x18c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x198]
mov dword [esp], eax
mov eax, dword [ebp - 0x1dc]
call eax
test eax, eax
jne 0x6f24c329
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x15c], edi
mov dword [ebp - 0x18c], eax
jmp 0x6f24bb53
mov eax, dword [ebp - 0x1ac]
call fcn.6f248400
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], str.__1___lx___s__n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
mov edx, dword [ebp - 0x1ac]
test edx, edx
jne 0x6f24bf59
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
mov edi, 0x12c
jmp 0x6f24b793
mov eax, dword [ebp - 0x1d0]
mov dword [esp + 0xc], str.Unknown_MCI_return_type__ld_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 0
mov dword [esp + 0x10], eax
call fcn.6f2486f0
mov eax, dword [ebp - 0x1b0]
test eax, eax
jne 0x6f24bc07
cmp word [ebp - 0x1ca], 0x803
mov edi, 0x10f
jne 0x6f24b125
jmp 0x6f24c29b
mov edi, dword [ebp - 0x1b0]
jmp 0x6f24b125
mov edi, 0x107
jmp 0x6f24b125
mov edi, 0x124
test byte [0x6f266160], 4
je 0x6f24b125
mov dword [esp + 0xc], str.open_new_requires_device_type_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 2
call fcn.6f2486f0
jmp 0x6f24b125
mov edi, 0x10f
cmp word [ebp - 0x1ca], 0x803
je 0x6f24b7d1
jmp 0x6f24b125
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.___lx_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
mov eax, dword [ebp - 0x1b0]
test eax, eax
je 0x6f24b125
jmp 0x6f24b793
mov eax, dword [ecx + 4]
mov dword [ebp - 0x18c], ecx
call fcn.6f248f80
mov ecx, dword [ebp - 0x18c]
mov dword [ecx + 0x24], eax
jmp 0x6f24bf0d
test byte [0x6f266160], 1
jne 0x6f24ca62
mov eax, dword [ebp - 0x1b0]
mov edi, 0x110
test eax, eax
je 0x6f24b125
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov dword [esp], eax
call fcn.6f24ad90
jmp 0x6f24b125
mov eax, esi
call fcn.6f248400
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], 0x6f266160
mov dword [esp], 3
call fcn.6f2486f0
mov ecx, dword [ebp - 0x1b0]
test ecx, ecx
je 0x6f24b547
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x804
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call fcn.6f24ad90
jmp 0x6f24b547
lea eax, [ebp - 0x12c]
mov dword [esp + 0xc], 0x100
mov dword [ebp - 0x198], eax
mov dword [esp + 8], eax
mov dword [esp + 4], 0x6f269c60
mov ebx, dword [ebp - 0x18c]
mov dword [esp], ebx
call fcn.6f243520
test eax, eax
je 0x6f24c6c4
mov dword [esp + 4], 0x20
mov dword [esp], ebx
mov eax, dword [ebp - 0x194]
call eax
mov edx, eax
test eax, eax
je 0x6f24c60d
xor ebx, ebx
mov word [eax], bx
mov eax, dword [ebp - 0x18c]
cmp word [eax], 0
mov dword [ebp - 0x164], eax
je 0x6f24cb7b
add eax, 2
cmp word [eax], 0
jne 0x6f24c623
mov ecx, dword [ebp - 0x18c]
mov dword [ebp - 0x198], edx
sub eax, ecx
lea ecx, [eax + 2]
mov dword [esp + 8], ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x194], ecx
mov dword [esp + 4], 0
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x190]
call eax
mov edx, dword [ebp - 0x198]
sub esp, 0xc
test eax, eax
mov ebx, eax
je 0x6f24c6a9
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x190], edx
mov dword [esp + 8], ecx
mov ecx, dword [ebp - 0x18c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sub.ucrtbase.dll_memcpy
mov dword [esp], ebx
call dword [sym.imp.user32.dll_CharUpperW]
mov edx, dword [ebp - 0x190]
sub esp, 4
test edx, edx
je 0x6f24c6b5
mov ecx, 0x20
mov word [edx], cx
mov dword [ebp - 0x1a8], 0x2000
jmp 0x6f24bd39
mov dword [esp + 4], 0x6f26a858
mov eax, dword [ebp - 0x180]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_wcsstr]
mov ebx, eax
test eax, eax
je 0x6f24cadf
lea ecx, [eax + 0xa]
mov dword [esp + 4], 0x20
mov dword [esp], ecx
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x198], ecx
call eax
mov ecx, dword [ebp - 0x198]
test eax, eax
mov dword [ebp - 0x194], eax
je 0x6f24c716
xor edx, edx
mov word [eax], dx
cmp word [ebx + 0xa], 0
mov eax, ecx
je 0x6f24c728
add eax, 2
cmp word [eax], 0
jne 0x6f24c71f
sub eax, ecx
mov dword [ebp - 0x1a0], ecx
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x198], edx
mov dword [esp + 4], 0
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x190]
call eax
sub esp, 0xc
mov ebx, eax
test eax, eax
je 0x6f24c78d
mov edx, dword [ebp - 0x198]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x1a0]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sub.ucrtbase.dll_memcpy
mov dword [esp], ebx
call dword [sym.imp.user32.dll_CharUpperW]
sub esp, 4
mov eax, dword [ebp - 0x194]
test eax, eax
je 0x6f24c79f
mov ecx, 0x20
mov word [eax], cx
mov dword [ebp - 0x1a8], 0x200
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x160], eax
jmp 0x6f24bd39
mov ecx, dword [ebp - 0x1a8]
lea edx, [ebp - 0x16c]
mov eax, dword [ebp - 0x18c]
call fcn.6f249520
mov edi, eax
test eax, eax
je 0x6f24bf38
mov eax, dword [ebp - 0x1b0]
test eax, eax
jne 0x6f24b793
jmp 0x6f24b7c8
mov esi, dword [ebp - 0x1d4]
mov edi, eax
mov ebx, dword [ebp - 0x1d8]
jmp 0x6f24bf80
mov eax, dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov dword [esp], 0x6f266460
mov dword [ebp - 0x190], eax
call eax
mov dword [ebp - 0x17c], 0
sub esp, 4
xor eax, eax
call fcn.6f248f80
mov edx, esi
call fcn.6f247ef0
mov ebx, eax
test eax, eax
je 0x6f24ca3f
movzx eax, word [eax]
test ax, ax
je 0x6f24ca35
mov edx, ebx
add edx, 2
cmp word [edx], 0
jne 0x6f24c84a
sub edx, ebx
add edx, 2
movzx edx, word [ebx + edx]
cmp edx, 0x811
je 0x6f24cf8f
ja 0x6f24cf4a
cmp edx, 0x804
je 0x6f24cf8f
cmp edx, 0x810
je 0x6f24cf56
mov eax, dword [ebp - 0x18c]
lea ebx, [ebp - 0x178]
mov dword [esp + 8], str.open__s_wait
mov dword [esp + 4], 0x8a
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x198], eax
mov dword [esp], eax
call fcn.6f247fe0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 6
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x198]
mov dword [esp], eax
call sym.winmm.dll_mciSendStringW
sub esp, 0x10
mov dword [ebp - 0x1a8], eax
test eax, eax
jne 0x6f24cf3d
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll_wcstoul]
mov dword [ebp - 0x1b0], eax
test byte [0x6f266160], 8
jne 0x6f24d025
mov dword [esp], 0x6f266460
mov eax, dword [ebp - 0x194]
call eax
mov ecx, dword [0x6f27a510]
sub esp, 4
test ecx, ecx
jne 0x6f24c94b
jmp 0x6f24cf9b
mov ecx, dword [ecx + 0x2c]
test ecx, ecx
je 0x6f24cf9b
mov eax, dword [ebp - 0x1b0]
cmp eax, dword [ecx]
jne 0x6f24c940
mov dword [ebp - 0x18c], ecx
xor ebx, ebx
mov dword [esp], 0x6f266460
mov eax, dword [ebp - 0x190]
call eax
mov ecx, dword [ebp - 0x18c]
sub esp, 4
mov dword [ebp - 0x17c], ecx
jmp 0x6f24b277
mov eax, 0x10e
mov esi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
mov edi, eax
jmp 0x6f24bf80
mov ecx, dword [ebp - 0x1b0]
mov edi, 0x11f
mov dword [ebp - 0x15c], 0
test ecx, ecx
je 0x6f24b125
xor ecx, ecx
mov dword [esp + 4], 0x804
mov edi, 0x11f
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ecx
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call fcn.6f24ad90
jmp 0x6f24b125
mov dword [ebp - 0x1b4], 2
mov edx, 8
jmp 0x6f24b32d
mov eax, dword [ebp - 0x12c]
call fcn.6f248400
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], 0x6f266160
mov dword [esp], 2
call fcn.6f2486f0
jmp 0x6f24b780
mov edx, 2
jmp 0x6f24be03
mov edx, 2
jmp 0x6f24c858
mov dword [ebp - 0x1a8], 0
mov ecx, dword [ebp - 0x17c]
test ecx, ecx
je 0x6f24ca96
mov dword [ebp - 0x1b0], 0
jmp 0x6f24b277
mov eax, esi
call fcn.6f248400
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], 0x6f266160
mov dword [esp], 0
call fcn.6f2486f0
jmp 0x6f24c519
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1b0], 0
jmp 0x6f24b510
mov esi, dword [ebp - 0x1d4]
mov ebx, dword [ebp - 0x1d8]
test byte [0x6f266160], 1
je 0x6f24bbf9
mov dword [esp + 0xc], str.Internal_data___buffer_overflow_n
jmp 0x6f24c23a
mov edi, 0x108
jmp 0x6f24b172
mov edx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x18c]
call fcn.6f248740
test eax, eax
jne 0x6f24cb86
cmp word [ebp - 0x12c], 0
mov eax, dword [ebp - 0x198]
je 0x6f24cb11
add eax, 2
cmp word [eax], 0
jne 0x6f24cb08
mov ecx, dword [ebp - 0x198]
sub eax, ecx
lea edx, [eax + 2]
mov dword [esp + 8], edx
mov dword [ebp - 0x194], edx
xor edx, edx
mov dword [esp + 4], edx
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x190]
call eax
sub esp, 0xc
mov ebx, eax
test eax, eax
je 0x6f24c79f
mov edx, dword [ebp - 0x194]
mov dword [esp + 8], edx
mov ecx, dword [ebp - 0x198]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sub.ucrtbase.dll_memcpy
mov dword [esp], ebx
call dword [sym.imp.user32.dll_CharUpperW]
push eax
jmp 0x6f24c79f
mov eax, dword [ebp - 0x18c]
jmp 0x6f24c62c
mov edi, eax
jmp 0x6f24b125
mov eax, dword [ebp - 0x1d0]
mov dword [esp + 0xc], str.Unknown_MCI_return_type__ld_n
mov dword [esp + 8], 0x6f26b11c
mov dword [esp + 4], 0x6f266160
mov dword [esp], 0
mov dword [esp + 0x10], eax
call fcn.6f2486f0
jmp case.0x6f24bf64.0
mov eax, edi
and eax, 0xffff0000
je case.0x6f24bf64.0
cmp eax, 0x80000
jne 0x6f24cd0d
mov ecx, dword [ebp - 0x1ac]
mov eax, dword [ecx]
mov dword [ebp - 0x168], eax
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x6f26aa7e
mov eax, dword [ebp - 0x1b8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.6f247fe0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
cmp edi, 0xffff
jbe 0x6f24cc21
test byte [0x6f266160], 4
jne 0x6f24cc75
mov eax, dword [ebp - 0x15c]
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 + 8], str._d__d__d__d
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp], eax
call fcn.6f247fe0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
mov eax, edi
mov dword [esp + 0xc], str.Oooch._MCI_STRING_and_HIWORD_dwRet__04x_n
shr eax, 0x10
mov dword [esp + 8], 0x6f26b11c
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f266160
mov dword [esp], 2
call fcn.6f2486f0
jmp 0x6f24cc21
mov eax, edi
mov edx, dword [ebp - 0x168]
xor ax, ax
cmp eax, 0x40000
je 0x6f24ce84
ja 0x6f24ce1b
cmp eax, 0x10000
je 0x6f24cde3
cmp eax, 0x20000
je 0x6f24cd9d
test eax, eax
jne 0x6f24cd55
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0x6f26aa7e
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp], eax
call fcn.6f247fe0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
movzx eax, byte [0x6f266160]
test al, 4
je 0x6f24bf7a
mov eax, edi
mov dword [esp + 0xc], str.Oooch._MCI_STRING_and_HIWORD_dwRet__04x_n
shr eax, 0x10
mov dword [esp + 8], 0x6f26b11c
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f266160
mov dword [esp], 2
call fcn.6f2486f0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
movzx eax, byte [0x6f266160]
test al, 2
je 0x6f24bf7a
mov eax, edi
mov dword [esp + 0xc], str.Ooops___04X__n
shr eax, 0x10
mov dword [esp + 8], 0x6f26b11c
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x6f266160
mov dword [esp], 1
call fcn.6f2486f0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
mov eax, edx
mov dword [esp + 8], 0x6f26aa84
shr eax, 0x10
movzx eax, al
mov dword [esp + 0x14], eax
movzx eax, dh
movzx edx, dl
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
mov eax, dword [ebp - 0x1b8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp], eax
call fcn.6f247fe0
movzx eax, byte [0x6f266160]
jmp 0x6f24bf7a
mov eax, dword [ebp - 0x1b8]
shr edx, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x1ac]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov eax, dword [0x6f27af44]
mov dword [esp], eax
call dword [sym.imp.user32.dll_LoadStringW]
movzx eax, byte [0x6f266160]
sub esp, 0x10
jmp 0x6f24bf7a
cmp eax, 0x80000
je 0x6f24ccdd
cmp eax, 0x110000
jne 0x6f24cd55
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x190], edx
mov eax, dword [eax + 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 - 0x1ac]
mov dword [esp + 8], ecx
mov edx, dword [ebp - 0x190]
mov dword [esp], eax
shr edx, 0x10
mov dword [esp + 4], edx
call dword [sym.imp.user32.dll_LoadStringW]
movzx eax, byte [0x6f266160]
sub esp, 0x10
jmp 0x6f24bf7a
mov eax, edx
mov ecx, edx
mov dword [esp + 8], str._02d:_02d:_02d:_02d
shr eax, 0x10
shr ecx, 0x18
movzx eax, al
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
movzx eax, dh
movzx edx, dl
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
jmp 0x6f24cc51
mov edx, 2
jmp 0x6f24bcb3
movzx eax, word [eax]
jmp 0x6f24b2a8
mov dword [ebp - 0x1b4], 5
mov edx, 0x14
jmp 0x6f24b32d
mov eax, edi
mov edx, dword [ebp - 0x168]
xor ax, ax
cmp eax, 0x40000
je 0x6f24ce84
ja 0x6f24d067
cmp eax, 0x10000
je 0x6f24cde3
cmp eax, 0x20000
je 0x6f24cd9d
test eax, eax
jne 0x6f24cd55
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0x6f26aada
jmp 0x6f24cce9
mov eax, dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov dword [esp], 0x6f266460
mov dword [ebp - 0x190], eax
call eax
sub esp, 4
jmp 0x6f24c824
mov edi, dword [ebp - 0x1a8]
xor ebx, ebx
jmp 0x6f24b125
cmp edx, 0x812
jne 0x6f24c886
mov dword [ebp - 0x1a8], 0
mov ecx, dword [ebp - 0x17c]
test ecx, ecx
jne 0x6f24b26b
mov dword [ebp - 0x1bc], ebx
xor ebx, ebx
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1b0], 0
jmp 0x6f24b2a8
mov edi, 0x107
xor ebx, ebx
jmp 0x6f24b125
mov dword [esp], 0x6f266460
mov eax, dword [ebp - 0x190]
call eax
push eax
xor eax, eax
mov dword [ebp - 0x17c], eax
test byte [0x6f266160], 2
jne 0x6f24cff1
cmp dword [ebp - 0x1b0], 0
je 0x6f24cfe5
xor eax, eax
mov dword [esp + 4], 0x804
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp], eax
call fcn.6f24ad90
mov edi, 0x101
xor ebx, ebx
jmp 0x6f24b125
mov edi, dword [ebp - 0x1b0]
mov dword [esp + 0xc], str.No_auto_open_device__u_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp], 1
mov dword [esp + 0x10], edi
call fcn.6f2486f0
test edi, edi
jne 0x6f24cfc5
jmp 0x6f24cfe5
mov eax, dword [ebp - 0x18c]
call fcn.6f248400
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x1b0]
mov dword [esp + 0xc], str.auto_opened__u_for__s_n
mov dword [esp + 8], str.mciSendStringW
mov dword [esp + 4], 0x6f266160
mov dword [esp + 0x10], eax
mov dword [esp], 3
call fcn.6f2486f0
jmp 0x6f24c919
cmp eax, 0x80000
jne 0x6f24ce26
jmp 0x6f24cf10