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

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x10]
push esi
push edi
mov edi, dword [esp + 0x14]
je 0x211049ad
cmp word [0x2114fa34], 1
je 0x21104985
cmp word [0x2114fa32], 0
je 0x211049ad
call fcn.211023e0
test eax, eax
jne 0x211049ad
call fcn.21102230
test eax, eax
je 0x211049ad
mov eax, dword [0x211530f8]
push ebx
push ebp
push edi
push str.AIL_set_stream_processor_0x_lX__ld_0x_lX__r_n
push eax
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211049df
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211049d6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211049c5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211049f7
lea edx, [edi + 0xc]
mov ecx, 0x1a
call fcn.21102670
jmp 0x21104a02
mov ecx, dword [edi + 0xc]
push ebx
push ebp
push ecx
call fcn.21115b50
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104a1a
mov edx, dword [0x2114fa38]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21104a48
cmp word [0x2114fa34], 1
je 0x21104a38
cmp word [0x2114fa32], 0
je 0x21104a48
call fcn.211023e0
test eax, eax
jne 0x21104a48
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
ret 0xc

Function at 0x21104a60
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x10]
push esi
push edi
mov edi, dword [esp + 0x14]
je 0x21104abd
cmp word [0x2114fa34], 1
je 0x21104a95
cmp word [0x2114fa32], 0
je 0x21104abd
call fcn.211023e0
test eax, eax
jne 0x21104abd
call fcn.21102230
test eax, eax
je 0x21104abd
mov eax, dword [0x211530f8]
push ebx
push ebp
push edi
push str.AIL_set_DLS_processor_0x_lX__ld_0x_lX__r_n
push eax
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104aef
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104ae6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104ad5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104b07
lea edx, [edi + 0x44]
mov ecx, 0x1a
call fcn.21102670
jmp 0x21104b12
mov ecx, dword [edi + 0x44]
push ebx
push ebp
push ecx
call fcn.21115b50
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104b2a
mov edx, dword [0x2114fa38]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21104b58
cmp word [0x2114fa34], 1
je 0x21104b48
cmp word [0x2114fa32], 0
je 0x21104b58
call fcn.211023e0
test eax, eax
jne 0x21104b58
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
ret 0xc
Function at 0x21104b70
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x18]
je 0x21104bcd
cmp word [0x2114fa34], 1
je 0x21104ba0
cmp word [0x2114fa32], 0
je 0x21104bcd
call fcn.211023e0
test eax, eax
jne 0x21104bcd
call fcn.21102230
test eax, eax
je 0x21104bcd
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_set_digital_driver_processor_0x_lX__ld_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104bff
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104bf6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104be5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104c18
lea edx, [esp + 0x10]
mov ecx, 0x1b
call fcn.21102670
jmp 0x21104c24
mov edx, dword [esp + 0x10]
push edi
push ebx
push edx
call fcn.21116160
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104c3b
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21104c69
cmp word [0x2114fa34], 1
je 0x21104c59
cmp word [0x2114fa32], 0
je 0x21104c69
call fcn.211023e0
test eax, eax
jne 0x21104c69
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebx
ret 0xc

Function at 0x21104c80
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0x14]
je 0x21104cdc
cmp word [0x2114fa34], 1
je 0x21104caf
cmp word [0x2114fa32], 0
je 0x21104cdc
call fcn.211023e0
test eax, eax
jne 0x21104cdc
call fcn.21102230
test eax, eax
je 0x21104cdc
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_set_sample_address_0x_lX_0x_lX__lu__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104d10
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104d07
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104cf5
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104d29
lea edx, [esp + 0xc]
mov ecx, 0x1c
call fcn.21102670
jmp 0x21104d35
mov edx, dword [esp + 0xc]
push edi
push ebx
push edx
call fcn.21114660
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebx
je 0x21104d4c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0xc
Function at 0x21104d60
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0x14]
je 0x21104dbc
cmp word [0x2114fa34], 1
je 0x21104d8f
cmp word [0x2114fa32], 0
je 0x21104dbc
call fcn.211023e0
test eax, eax
jne 0x21104dbc
call fcn.21102230
test eax, eax
je 0x21104dbc
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_set_sample_type_0x_lX__ld__lu__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104df0
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104de7
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104dd5
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104e09
lea edx, [esp + 0xc]
mov ecx, 0x1d
call fcn.21102670
jmp 0x21104e15
mov edx, dword [esp + 0xc]
push edi
push ebx
push edx
call fcn.21114690
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebx
je 0x21104e2c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0xc

Function at 0x21104e40
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push edi
mov edi, dword [esp + 0xc]
je 0x21104e96
cmp word [0x2114fa34], 1
je 0x21104e6a
cmp word [0x2114fa32], 0
je 0x21104e96
call fcn.211023e0
test eax, eax
jne 0x21104e96
call fcn.21102230
test eax, eax
je 0x21104e96
mov eax, dword [esp + 8]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_set_sample_adpcm_block_size_0x_lX__lu__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104eca
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104ec1
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104eaf
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104ee3
lea edx, [esp + 8]
mov ecx, 0xab
call fcn.21102670
jmp 0x21104eee
mov edx, dword [esp + 8]
push edi
push edx
call fcn.21114640
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
je 0x21104f04
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 8
Function at 0x21104f10
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21104f60
cmp word [0x2114fa34], 1
je 0x21104f35
cmp word [0x2114fa32], 0
je 0x21104f60
call fcn.211023e0
test eax, eax
jne 0x21104f60
call fcn.21102230
test eax, eax
je 0x21104f60
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_start_sample_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104f94
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21104f8b
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21104f79
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21104fad
lea edx, [esp + 4]
mov ecx, 0x1e
call fcn.21102670
jmp 0x21104fb7
mov edx, dword [esp + 4]
push edx
call fcn.211148e0
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21104fcc
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21104fe0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21105030
cmp word [0x2114fa34], 1
je 0x21105005
cmp word [0x2114fa32], 0
je 0x21105030
call fcn.211023e0
test eax, eax
jne 0x21105030
call fcn.21102230
test eax, eax
je 0x21105030
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_stop_sample_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105064
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110505b
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105049
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110507d
lea edx, [esp + 4]
mov ecx, 0x1f
call fcn.21102670
jmp 0x21105087
mov edx, dword [esp + 4]
push edx
call fcn.21114940
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110509c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4
Function at 0x211050b0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21105100
cmp word [0x2114fa34], 1
je 0x211050d5
cmp word [0x2114fa32], 0
je 0x21105100
call fcn.211023e0
test eax, eax
jne 0x21105100
call fcn.21102230
test eax, eax
je 0x21105100
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_resume_sample_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105134
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110512b
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105119
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110514d
lea edx, [esp + 4]
mov ecx, 0x20
call fcn.21102670
jmp 0x21105157
mov edx, dword [esp + 4]
push edx
call fcn.21114960
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110516c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21105180
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x211051d0
cmp word [0x2114fa34], 1
je 0x211051a5
cmp word [0x2114fa32], 0
je 0x211051d0
call fcn.211023e0
test eax, eax
jne 0x211051d0
call fcn.21102230
test eax, eax
je 0x211051d0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_end_sample_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105204
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211051fb
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211051e9
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110521d
lea edx, [esp + 4]
mov ecx, 0x21
call fcn.21102670
jmp 0x21105227
mov edx, dword [esp + 4]
push edx
call fcn.211149c0
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110523c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4
Function at 0x211058f0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x2110595f
cmp word [0x2114fa34], 1
je 0x21105915
cmp word [0x2114fa32], 0
je 0x2110595f
call fcn.211023e0
test eax, eax
jne 0x2110595f
call fcn.21102230
test eax, eax
je 0x2110595f
fld dword [esp + 0x10]
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
sub esp, 8
fstp qword [esp]
sub esp, 8
fld dword [esp + 0x1c]
sub esp, 8
fstp qword [esp + 8]
fld dword [esp + 0x20]
fstp qword [esp]
push eax
push str.AIL_set_sample_reverb_0x_X__f__f__f__r_n
push ecx
call fcn.2112ed34
add esp, 0x24
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105993
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110598a
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105978
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211059ac
lea edx, [esp + 4]
mov ecx, 0x2d
call fcn.21102670
jmp 0x211059c5
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
push edx
mov edx, dword [esp + 8]
push eax
push ecx
push edx
call fcn.21114f30
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211059da
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0x10

Function at 0x211059f0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x10]
push edi
mov edi, dword [esp + 0x1c]
je 0x21105a52
cmp word [0x2114fa34], 1
je 0x21105a24
cmp word [0x2114fa32], 0
je 0x21105a52
call fcn.211023e0
test eax, eax
jne 0x21105a52
call fcn.21102230
test eax, eax
je 0x21105a52
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push ebp
push eax
push str.AIL_sample_reverb_0x_X__X__X__X__r_n
push ecx
call fcn.2112ed34
add esp, 0x18
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105a86
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21105a7d
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105a6b
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21105a9f
lea edx, [esp + 0x10]
mov ecx, 0x2e
call fcn.21102670
jmp 0x21105aac
mov edx, dword [esp + 0x10]
push edi
push ebx
push ebp
push edx
call fcn.21114f60
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x21105ac4
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0x10
Function at 0x21105ad0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push edi
mov edi, dword [esp + 0xc]
je 0x21105b26
cmp word [0x2114fa34], 1
je 0x21105afa
cmp word [0x2114fa32], 0
je 0x21105b26
call fcn.211023e0
test eax, eax
jne 0x21105b26
call fcn.21102230
test eax, eax
je 0x21105b26
mov eax, dword [esp + 8]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_set_digital_master_volume_0x_X__d__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105b5a
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21105b51
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105b3f
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21105b73
lea edx, [esp + 8]
mov ecx, 0x2c
call fcn.21102670
jmp 0x21105b7e
mov edx, dword [esp + 8]
push edi
push edx
call fcn.21114aa0
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
je 0x21105b94
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 8

Function at 0x21105ba0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21105bf0
cmp word [0x2114fa34], 1
je 0x21105bc5
cmp word [0x2114fa32], 0
je 0x21105bf0
call fcn.211023e0
test eax, eax
jne 0x21105bf0
call fcn.21102230
test eax, eax
je 0x21105bf0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_digital_master_volume_0x_X__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
push esi
je 0x21105c23
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21105c1a
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105c09
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21105c3c
lea edx, [esp + 8]
mov ecx, 0x2f
call fcn.21102670
jmp 0x21105c46
mov edx, dword [esp + 8]
push edx
call fcn.21114ae0
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105c5d
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21105c8b
cmp word [0x2114fa34], 1
je 0x21105c7b
cmp word [0x2114fa32], 0
je 0x21105c8b
call fcn.211023e0
test eax, eax
jne 0x21105c8b
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
mov eax, esi
pop esi
ret 4
Function at 0x21105ca0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x18]
je 0x21105cfd
cmp word [0x2114fa34], 1
je 0x21105cd0
cmp word [0x2114fa32], 0
je 0x21105cfd
call fcn.211023e0
test eax, eax
jne 0x21105cfd
call fcn.21102230
test eax, eax
je 0x21105cfd
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_minimum_sample_buffer_size_0x_lX__ld__ld__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105d2f
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21105d26
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105d15
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21105d48
lea edx, [esp + 0x10]
mov ecx, 0x30
call fcn.21102670
jmp 0x21105d54
mov edx, dword [esp + 0x10]
push edi
push ebx
push edx
call fcn.21114af0
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105d6b
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21105d99
cmp word [0x2114fa34], 1
je 0x21105d89
cmp word [0x2114fa32], 0
je 0x21105d99
call fcn.211023e0
test eax, eax
jne 0x21105d99
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebx
ret 0xc

Function at 0x21105e70
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0x10]
push ebp
mov ebp, dword [esp + 0x10]
push edi
mov edi, dword [esp + 0x1c]
je 0x21105ed2
cmp word [0x2114fa34], 1
je 0x21105ea4
cmp word [0x2114fa32], 0
je 0x21105ed2
call fcn.211023e0
test eax, eax
jne 0x21105ed2
call fcn.21102230
test eax, eax
je 0x21105ed2
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push ebp
push eax
push str.AIL_load_sample_buffer_0x_lX__ld_0x_lX__lu__r_n
push ecx
call fcn.2112ed34
add esp, 0x18
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21105f06
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21105efd
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21105eeb
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21105f1f
lea edx, [esp + 0x10]
mov ecx, 0x32
call fcn.21102670
jmp 0x21105f2c
mov edx, dword [esp + 0x10]
push edi
push ebx
push ebp
push edx
call fcn.21114be0
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x21105f44
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0x10
Function at 0x211060e0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push edi
mov edi, dword [esp + 0xc]
je 0x21106136
cmp word [0x2114fa34], 1
je 0x2110610a
cmp word [0x2114fa32], 0
je 0x21106136
call fcn.211023e0
test eax, eax
jne 0x21106136
call fcn.21102230
test eax, eax
je 0x21106136
mov eax, dword [esp + 8]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_set_sample_position_0x_lX__lu__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110616a
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106161
push esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x2110614f
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106183
lea edx, [esp + 8]
mov ecx, 0x34
call fcn.21102670
jmp 0x2110618e
mov edx, dword [esp + 8]
push edi
push edx
call fcn.21114800
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
je 0x211061a4
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 8

Function at 0x21106270
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211062c7
cmp word [0x2114fa34], 1
je 0x2110629b
cmp word [0x2114fa32], 0
je 0x211062c7
call fcn.211023e0
test eax, eax
jne 0x211062c7
call fcn.21102230
test eax, eax
je 0x211062c7
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_register_SOB_callback_0x_lX_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211062f9
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211062f0
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211062df
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106312
lea edx, [esp + 0xc]
mov ecx, 0x5d
call fcn.21102670
jmp 0x2110631d
mov edx, dword [esp + 0xc]
push edi
push edx
call fcn.21114a00
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106334
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106362
cmp word [0x2114fa34], 1
je 0x21106352
cmp word [0x2114fa32], 0
je 0x21106362
call fcn.211023e0
test eax, eax
jne 0x21106362
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
ret 8