joyce8/EMBER2024-capa huggingface dataset:
Function at 0x2111bc10
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x1c]
je 0x2111bc6d
cmp word [0x2115929c], 1
je 0x2111bc45
cmp word [0x21159298], 0
je 0x2111bc6d
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111bc6d
call fcn.21112300
test eax, eax
je 0x2111bc6d
mov eax, dword [0x2115c0bc]
push edi
push ebx
push ebp
push str.AIL_DLS_load_memory_0x_lX_0x_lX__lu__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111bc9f
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111bc96
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111bc85
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
push ebx
mov eax, ebp
call fcn.2110fa90
mov esi, eax
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111bcc0
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111bcf0
cmp word [0x2115929c], 1
je 0x2111bcde
cmp word [0x21159298], 0
je 0x2111bcf0
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111bcf0
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
ret 0xc

Function at 0x2111bd00
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 8]
push edi
mov edi, dword [esp + 0x10]
je 0x2111bd56
cmp word [0x2115929c], 1
je 0x2111bd2f
cmp word [0x21159298], 0
je 0x2111bd56
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111bd56
call fcn.21112300
test eax, eax
je 0x2111bd56
mov eax, dword [0x2115c0bc]
push edi
push ebx
push str.AIL_DLS_unload_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111bd8b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111bd82
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111bd70
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, edi
call fcn.2110fc50
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x2111bdaa
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8
Function at 0x2111bdc0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push edi
mov edi, dword [esp + 8]
je 0x2111be10
cmp word [0x2115929c], 1
je 0x2111bdea
cmp word [0x21159298], 0
je 0x2111be10
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111be10
call fcn.21112300
test eax, eax
je 0x2111be10
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_DLS_compact_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111be4b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111be42
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea esp, [esp]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111be30
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, edi
call fcn.2110fe40
mov eax, dword [0x211566c0]
test eax, eax
pop edi
je 0x2111be69
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4

Function at 0x2111be80
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push edi
mov edi, dword [esp + 8]
je 0x2111bee2
cmp word [0x2115929c], 1
je 0x2111beaa
cmp word [0x21159298], 0
je 0x2111bee2
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111bee2
call fcn.21112300
test eax, eax
je 0x2111bee2
fld dword [esp + 0x10]
mov eax, dword [0x2115c0bc]
sub esp, 0x10
fstp qword [esp + 8]
fld dword [esp + 0x1c]
fstp qword [esp]
push edi
push str.AIL_DLS_set_reverb_levels_0x_lX___f___f__r_n
push eax
call fcn.211306e2
add esp, 0x1c
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111bf1b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111bf12
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
jmp 0x2111bf00
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111bf00
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
je 0x2111bf39
mov eax, dword [edi + 0x54]
test eax, eax
jne 0x2111bf39
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov eax, dword [edi + 0x44]
push ecx
push edx
push eax
call sym.mss32.dll__AIL_set_sample_reverb_levels_12
mov eax, dword [0x211566c0]
test eax, eax
pop edi
je 0x2111bf50
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 0xc
Function at 0x2111bf60
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x10]
push edi
mov edi, dword [esp + 0x10]
je 0x2111bfbc
cmp word [0x2115929c], 1
je 0x2111bf94
cmp word [0x21159298], 0
je 0x2111bfbc
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111bfbc
call fcn.21112300
test eax, eax
je 0x2111bfbc
mov eax, dword [0x2115c0bc]
push ebx
push ebp
push edi
push str.AIL_DLS_get_reverb_levels_0x_lX__0x_lX__0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111bff0
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111bfe7
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111bfd5
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
je 0x2111c006
mov eax, dword [edi + 0x54]
test eax, eax
jne 0x2111c006
mov ecx, dword [edi + 0x44]
push ebx
push ebp
push ecx
call sym.mss32.dll__AIL_sample_reverb_levels_12
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x2111c01f
mov edx, dword [0x211592a0]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 0xc

Function at 0x2111c0a0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 8]
push edi
mov edi, dword [esp + 0x10]
je 0x2111c0f6
cmp word [0x2115929c], 1
je 0x2111c0cf
cmp word [0x21159298], 0
je 0x2111c0f6
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111c0f6
call fcn.21112300
test eax, eax
je 0x2111c0f6
mov eax, dword [0x2115c0bc]
push edi
push ebx
push str.AIL_set_sequence_ms_position_0x_lX_0x_lu__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111c12b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111c122
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111c110
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
push ebx
call fcn.21125c50
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x2111c14a
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8
Function at 0x2111c250
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0xc]
je 0x2111c2a6
cmp word [0x2115929c], 1
je 0x2111c27f
cmp word [0x21159298], 0
je 0x2111c2a6
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111c2a6
call fcn.21112300
test eax, eax
je 0x2111c2a6
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_set_sample_ms_position_0x_lX_0x_lu__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111c2db
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111c2d2
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111c2c0
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push ebx
call fcn.2112bb10
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x2111c2f9
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8

Function at 0x2111c380
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0xc]
je 0x2111c3d6
cmp word [0x2115929c], 1
je 0x2111c3af
cmp word [0x21159298], 0
je 0x2111c3d6
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111c3d6
call fcn.21112300
test eax, eax
je 0x2111c3d6
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_set_stream_ms_position_0x_lX_0x_lu__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111c40b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111c402
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111c3f0
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push ebx
call fcn.21111960
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x2111c429
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8
Function at 0x2111c440
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
mov esi, dword [esp + 0xc]
je 0x2111c496
cmp word [0x2115929c], 1
je 0x2111c46f
cmp word [0x21159298], 0
je 0x2111c496
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111c496
call fcn.21112300
test eax, eax
je 0x2111c496
mov eax, dword [0x2115c0bc]
push ebx
push esi
push str.AIL_quick_set_ms_position_0x_lX_0x_lu__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111c4cb
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111c4c2
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call edi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111c4b0
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test esi, esi
je 0x2111c501
push esi
mov dword [esi + 0x3c], ebx
call sym.mss32.dll__AIL_quick_status_4
cmp eax, 3
jne 0x2111c501
mov eax, dword [esi + 8]
dec eax
je 0x2111c4f7
dec eax
je 0x2111c4eb
sub eax, 2
jne 0x2111c501
mov ecx, dword [esi + 0xc]
push ebx
push ecx
call sym.mss32.dll__AIL_set_sample_ms_position_8
jmp 0x2111c501
mov edx, dword [esi + 0xc]
push ebx
push edx
call sym.mss32.dll__AIL_set_sequence_ms_position_8
mov eax, dword [0x211566c0]
test eax, eax
pop esi
pop ebx
je 0x2111c518
mov eax, dword [0x211592a0]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8

Function at 0x2111cc20
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
push edi
mov edi, dword [esp + 0xc]
je 0x2111cc71
cmp word [0x2115929c], 1
je 0x2111cc4b
cmp word [0x21159298], 0
je 0x2111cc71
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111cc71
call fcn.21112300
test eax, eax
je 0x2111cc71
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_primary_digital_driver__lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111ccaa
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111cca1
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea esp, [esp]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111cc90
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
mov esi, dword [0x21159164]
je 0x2111ccba
mov dword [0x21159164], edi
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111ccd0
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111cd00
cmp word [0x2115929c], 1
je 0x2111ccee
cmp word [0x21159298], 0
je 0x2111cd00
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111cd00
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
ret 4
Function at 0x2111cdc0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 8]
push esi
push edi
mov edi, dword [esp + 0x14]
je 0x2111ce17
cmp word [0x2115929c], 1
je 0x2111cdf0
cmp word [0x21159298], 0
je 0x2111ce17
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111ce17
call fcn.21112300
test eax, eax
je 0x2111ce17
mov eax, dword [0x2115c0bc]
push edi
push ebx
push str.AIL_open_filter__lX__lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111ce4a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111ce41
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
nop
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111ce30
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
push ebx
call fcn.21104670
mov esi, eax
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111ce69
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111ce99
cmp word [0x2115929c], 1
je 0x2111ce87
cmp word [0x21159298], 0
je 0x2111ce99
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111ce99
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8

Function at 0x2111ceb0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
mov esi, dword [esp + 8]
je 0x2111cf00
cmp word [0x2115929c], 1
je 0x2111ceda
cmp word [0x21159298], 0
je 0x2111cf00
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111cf00
call fcn.21112300
test eax, eax
je 0x2111cf00
mov eax, dword [0x2115c0bc]
push esi
push str.AIL_close_filter__lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111cf3b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111cf32
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea esp, [esp]
push 0
push 0
push 0
call edi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111cf20
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test esi, esi
je 0x2111cf75
mov ecx, dword [esi + 0x40]
push ecx
call dword [esi + 0x18]
mov eax, dword [0x211592fc]
cmp eax, esi
jne 0x2111cf60
mov edx, dword [esi + 0x44]
mov dword [0x211592fc], edx
jmp 0x2111cf6f
mov ecx, eax
mov eax, dword [eax + 0x44]
cmp eax, esi
jne 0x2111cf60
mov eax, dword [esi + 0x44]
mov dword [ecx + 0x44], eax
push esi
call sym.mss32.dll__AIL_mem_free_lock_4
mov eax, dword [0x211566c0]
test eax, eax
pop esi
je 0x2111cf8c
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4
Function at 0x2111d3a0
Capabilities:
Check mutex on windows

Disassembly:
push ecx
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x18]
push esi
push edi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x10], 0
je 0x2111d406
cmp word [0x2115929c], 1
je 0x2111d3de
cmp word [0x21159298], 0
je 0x2111d406
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d406
call fcn.21112300
test eax, eax
je 0x2111d406
mov eax, dword [0x2115c0bc]
push ebp
push ebx
push edi
push str.AIL_set_filter_preference__lX__s__lX__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d43a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111d431
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov edi, edi
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111d420
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea ecx, [esp + 0x10]
push ecx
push str.FLT_set_provider_preference
push 0
push str.MSS_pipeline_filter
push edi
call sym.mss32.dll_RIB_request_interface_entry
mov esi, dword [esp + 0x10]
test esi, esi
je 0x2111d478
lea edx, [esp + 0x20]
push edx
push ebx
push 2
push str.MSS_pipeline_filter
push edi
call sym.mss32.dll_RIB_request_interface_entry
test eax, eax
jne 0x2111d478
mov eax, dword [esp + 0x20]
push ebp
push eax
call esi
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop esi
pop ebp
pop ebx
je 0x2111d492
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
pop ecx
ret 0xc
Function at 0x2111d4a0
Capabilities:
Check mutex on windows

Disassembly:
push ecx
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0x18]
push esi
mov dword [esp + 0xc], 0
je 0x2111d506
cmp word [0x2115929c], 1
je 0x2111d4d9
cmp word [0x21159298], 0
je 0x2111d506
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d506
call fcn.21112300
test eax, eax
je 0x2111d506
mov eax, dword [esp + 0x18]
mov ecx, dword [0x2115c0bc]
push ebp
push eax
push ebx
push str.AIL_set_filter_sample_preference__lX__s__lX__r_n
push ecx
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d53a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111d531
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov edi, edi
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111d520
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test ebx, ebx
je 0x2111d58f
mov esi, dword [ebx + 0x1e0]
push edi
lea edx, [esp + 0x10]
push edx
push str.FLTSMP_set_sample_preference
push 0
push str.Pipeline_filter_sample_services
push esi
call sym.mss32.dll_RIB_request_interface_entry
mov edi, dword [esp + 0x10]
test edi, edi
je 0x2111d58e
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x1c]
push eax
push ecx
push 2
push str.Pipeline_filter_sample_services
push esi
call sym.mss32.dll_RIB_request_interface_entry
test eax, eax
jne 0x2111d58e
mov edx, dword [esp + 0x1c]
mov eax, dword [ebx + 0x1e8]
push ebp
push edx
push eax
call edi
pop edi
mov eax, dword [0x211566c0]
test eax, eax
pop esi
pop ebp
pop ebx
je 0x2111d5a8
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
pop ecx
ret 0xc

Function at 0x2111d5c0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0x18]
je 0x2111d61c
cmp word [0x2115929c], 1
je 0x2111d5f4
cmp word [0x21159298], 0
je 0x2111d61c
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d61c
call fcn.21112300
test eax, eax
je 0x2111d61c
mov eax, dword [0x2115c0bc]
push edi
push ebx
push ebp
push str.AIL_set_filter_stream_preference__lX__s__lX__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d650
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111d647
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111d635
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [ebp + 0xc]
push edi
push ebx
push ecx
call sym.mss32.dll__AIL_set_filter_sample_preference_12
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x2111d674
mov edx, dword [0x211592a0]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 0xc
Function at 0x2111d680
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0x18]
je 0x2111d6dc
cmp word [0x2115929c], 1
je 0x2111d6b4
cmp word [0x21159298], 0
je 0x2111d6dc
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d6dc
call fcn.21112300
test eax, eax
je 0x2111d6dc
mov eax, dword [0x2115c0bc]
push edi
push ebx
push ebp
push str.AIL_set_filter_DLS_preference__lX__s__lX__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d710
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111d707
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111d6f5
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [ebp + 0x44]
push edi
push ebx
push ecx
call sym.mss32.dll__AIL_set_filter_sample_preference_12
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x2111d734
mov edx, dword [0x211592a0]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 0xc

Function at 0x2111d7f0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 8]
push esi
je 0x2111d841
cmp word [0x2115929c], 1
je 0x2111d81b
cmp word [0x21159298], 0
je 0x2111d841
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d841
call fcn.21112300
test eax, eax
je 0x2111d841
mov eax, dword [0x2115c0bc]
push ebx
push str.AIL_open_3D_provider__lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d87a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x2111d871
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea esp, [esp]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x2111d860
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.211039b0
mov esi, eax
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111d897
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111d8c7
cmp word [0x2115929c], 1
je 0x2111d8b5
cmp word [0x21159298], 0
je 0x2111d8c7
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111d8c7
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
mov eax, esi
pop esi
pop ebx
ret 4