joyce8/EMBER2024-capa huggingface dataset:
Function at 0x21117170
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 0x211171cd
cmp word [0x2115929c], 1
je 0x211171a5
cmp word [0x21159298], 0
je 0x211171cd
mov eax, dword [0x21159308]
test eax, eax
jne 0x211171cd
call fcn.21112300
test eax, eax
je 0x211171cd
mov eax, dword [0x2115c0bc]
push edi
push ebx
push ebp
push str.AIL_init_sequence_0x_lX_0x_lX__ld__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x211171ff
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211171f6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x211592a0], eax
je 0x211171e5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
push ebp
mov ecx, ebx
call fcn.21124f30
mov esi, eax
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117220
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x21117250
cmp word [0x2115929c], 1
je 0x2111723e
cmp word [0x21159298], 0
je 0x21117250
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117250
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
ret 0xc

Function at 0x21117260
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
mov esi, dword [esp + 8]
je 0x211172b0
cmp word [0x2115929c], 1
je 0x2111728a
cmp word [0x21159298], 0
je 0x211172b0
mov eax, dword [0x21159308]
test eax, eax
jne 0x211172b0
call fcn.21112300
test eax, eax
je 0x211172b0
mov eax, dword [0x2115c0bc]
push esi
push str.AIL_start_sequence_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x211172eb
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211172e2
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 0x211172d0
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test esi, esi
je 0x2111732c
cmp dword [esi + 8], 1
je 0x2111732c
push esi
call sym.mss32.dll__AIL_stop_sequence_4
mov edx, esi
call fcn.211239e0
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 4]
add ecx, 8
mov dword [esi + 0x18], ecx
mov dword [esi + 8], 4
mov eax, dword [edx + 0x1c4]
test eax, eax
je 0x2111732c
push esi
call sym.mss32.dll__AIL_stop_sequence_4
mov dword [esi + 8], 0x10
mov eax, dword [0x211566c0]
test eax, eax
pop esi
je 0x21117342
mov eax, dword [0x211592a0]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4
Function at 0x21117350
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push edi
mov edi, dword [esp + 8]
je 0x211173a0
cmp word [0x2115929c], 1
je 0x2111737a
cmp word [0x21159298], 0
je 0x211173a0
mov eax, dword [0x21159308]
test eax, eax
jne 0x211173a0
call fcn.21112300
test eax, eax
je 0x211173a0
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_stop_sequence_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x211173db
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211173d2
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 0x211173c0
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, edi
call fcn.21125270
mov eax, dword [0x211566c0]
test eax, eax
pop edi
je 0x211173f9
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4

Function at 0x21117410
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push edi
mov edi, dword [esp + 8]
je 0x21117460
cmp word [0x2115929c], 1
je 0x2111743a
cmp word [0x21159298], 0
je 0x21117460
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117460
call fcn.21112300
test eax, eax
je 0x21117460
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_resume_sequence_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111749b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117492
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 0x21117480
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, edi
call fcn.21125400
mov eax, dword [0x211566c0]
test eax, eax
pop edi
je 0x211174b9
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4
Function at 0x211174d0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
mov esi, dword [esp + 8]
je 0x21117520
cmp word [0x2115929c], 1
je 0x211174fa
cmp word [0x21159298], 0
je 0x21117520
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117520
call fcn.21112300
test eax, eax
je 0x21117520
mov eax, dword [0x2115c0bc]
push esi
push str.AIL_end_sequence_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111755b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117552
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 0x21117540
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test esi, esi
je 0x21117583
mov eax, dword [esi + 8]
cmp eax, 1
je 0x21117583
cmp eax, 2
je 0x21117583
push esi
call sym.mss32.dll__AIL_stop_sequence_4
mov eax, dword [esi + 0x2c]
test eax, eax
mov dword [esi + 8], 2
je 0x21117583
push esi
call eax
mov eax, dword [0x211566c0]
test eax, eax
pop esi
je 0x2111759a
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 4

Function at 0x211175b0
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
mov esi, dword [esp + 0x18]
je 0x2111760c
cmp word [0x2115929c], 1
je 0x211175e4
cmp word [0x21159298], 0
je 0x2111760c
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111760c
call fcn.21112300
test eax, eax
je 0x2111760c
mov eax, dword [0x2115c0bc]
push esi
push ebx
push ebp
push str.AIL_set_sequence_tempo_0x_lX__ld__ld__r_n
push eax
call fcn.211306e2
add esp, 0x14
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117640
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117637
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call edi
test eax, eax
mov dword [0x211592a0], eax
je 0x21117625
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, ebx
mov ecx, ebp
call fcn.21125480
mov eax, dword [0x211566c0]
test eax, eax
pop esi
pop ebp
pop ebx
je 0x21117662
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 0xc
Function at 0x211179e0
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 0x21117a36
cmp word [0x2115929c], 1
je 0x21117a0f
cmp word [0x21159298], 0
je 0x21117a36
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117a36
call fcn.21112300
test eax, eax
je 0x21117a36
mov eax, dword [0x2115c0bc]
push edi
push ebx
push str.AIL_set_XMIDI_master_volume_0x_X__d__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117a6b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117a62
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 0x21117a50
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, edi
mov ecx, ebx
call fcn.21125570
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x21117a8c
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8

Function at 0x21117aa0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
push edi
mov edi, dword [esp + 0xc]
je 0x21117af1
cmp word [0x2115929c], 1
je 0x21117acb
cmp word [0x21159298], 0
je 0x21117af1
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117af1
call fcn.21112300
test eax, eax
je 0x21117af1
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_XMIDI_master_volume_0x_X__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117b2a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117b21
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 0x21117b10
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x211566c0]
test eax, eax
mov esi, dword [edi + 0x1a0]
je 0x21117b46
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x21117b76
cmp word [0x2115929c], 1
je 0x21117b64
cmp word [0x21159298], 0
je 0x21117b76
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117b76
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
ret 4
Function at 0x21117b90
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push esi
push edi
mov edi, dword [esp + 0xc]
je 0x21117be1
cmp word [0x2115929c], 1
je 0x21117bbb
cmp word [0x21159298], 0
je 0x21117be1
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117be1
call fcn.21112300
test eax, eax
je 0x21117be1
mov eax, dword [0x2115c0bc]
push edi
push str.AIL_active_sequence_count_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0xc
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117c1a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117c11
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 0x21117c00
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [edi + 0x14]
xor esi, esi
test ecx, ecx
jle 0x21117c45
mov eax, dword [edi + 0x10]
add eax, 8
mov edx, ecx
jmp 0x21117c30
mov ecx, dword [eax]
cmp ecx, 4
je 0x21117c3c
cmp ecx, 0x10
jne 0x21117c3d
inc esi
add eax, 0x81c
dec edx
jne 0x21117c30
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117c5b
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x21117c8b
cmp word [0x2115929c], 1
je 0x21117c79
cmp word [0x21159298], 0
je 0x21117c8b
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117c8b
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
ret 4

Function at 0x21117d60
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 0x21117db7
cmp word [0x2115929c], 1
je 0x21117d90
cmp word [0x21159298], 0
je 0x21117db7
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117db7
call fcn.21112300
test eax, eax
je 0x21117db7
mov eax, dword [0x2115c0bc]
push edi
push ebx
push str.AIL_channel_notes_0x_lX__ld__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117dea
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117de1
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 0x21117dd0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, edi
mov ecx, ebx
call fcn.211255d0
mov esi, eax
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117e0b
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x21117e3b
cmp word [0x2115929c], 1
je 0x21117e29
cmp word [0x21159298], 0
je 0x21117e3b
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117e3b
push esi
call fcn.21112060
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8
Function at 0x21117ed0
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 0x21117f26
cmp word [0x2115929c], 1
je 0x21117eff
cmp word [0x21159298], 0
je 0x21117f26
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117f26
call fcn.21112300
test eax, eax
je 0x21117f26
mov eax, dword [0x2115c0bc]
push ebx
push esi
push str.AIL_branch_index_0x_lX__lu__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x21117f5b
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21117f52
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 0x21117f40
pop edi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call fcn.211256a0
mov eax, dword [0x211566c0]
test eax, eax
pop esi
pop ebx
je 0x21117f78
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8

Function at 0x21117f90
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x21117fe7
cmp word [0x2115929c], 1
je 0x21117fc0
cmp word [0x21159298], 0
je 0x21117fe7
mov eax, dword [0x21159308]
test eax, eax
jne 0x21117fe7
call fcn.21112300
test eax, eax
je 0x21117fe7
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_prefix_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111801a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21118011
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 0x21118000
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
jne 0x21118022
xor esi, esi
jmp 0x21118028
mov esi, dword [edi + 0x20]
mov dword [edi + 0x20], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111803e
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111806e
cmp word [0x2115929c], 1
je 0x2111805c
cmp word [0x21159298], 0
je 0x2111806e
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111806e
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8
Function at 0x21118080
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211180d7
cmp word [0x2115929c], 1
je 0x211180b0
cmp word [0x21159298], 0
je 0x211180d7
mov eax, dword [0x21159308]
test eax, eax
jne 0x211180d7
call fcn.21112300
test eax, eax
je 0x211180d7
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_trigger_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111810a
mov eax, dword [0x211592a0]
test eax, eax
jne 0x21118101
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 0x211180f0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
jne 0x21118112
xor esi, esi
jmp 0x21118118
mov esi, dword [edi + 0x24]
mov dword [edi + 0x24], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111812e
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111815e
cmp word [0x2115929c], 1
je 0x2111814c
cmp word [0x21159298], 0
je 0x2111815e
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111815e
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8

Function at 0x21118170
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211181c7
cmp word [0x2115929c], 1
je 0x211181a0
cmp word [0x21159298], 0
je 0x211181c7
mov eax, dword [0x21159308]
test eax, eax
jne 0x211181c7
call fcn.21112300
test eax, eax
je 0x211181c7
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_sequence_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x211181fa
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211181f1
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 0x211181e0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
jne 0x21118202
xor esi, esi
jmp 0x21118208
mov esi, dword [edi + 0x2c]
mov dword [edi + 0x2c], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111821e
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111824e
cmp word [0x2115929c], 1
je 0x2111823c
cmp word [0x21159298], 0
je 0x2111824e
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111824e
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8
Function at 0x21118260
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211182b7
cmp word [0x2115929c], 1
je 0x21118290
cmp word [0x21159298], 0
je 0x211182b7
mov eax, dword [0x21159308]
test eax, eax
jne 0x211182b7
call fcn.21112300
test eax, eax
je 0x211182b7
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_beat_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x211182ea
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211182e1
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 0x211182d0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
jne 0x211182f2
xor esi, esi
jmp 0x211182f8
mov esi, dword [edi + 0x28]
mov dword [edi + 0x28], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x2111830e
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111833e
cmp word [0x2115929c], 1
je 0x2111832c
cmp word [0x21159298], 0
je 0x2111833e
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111833e
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8

Function at 0x21118350
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211183a7
cmp word [0x2115929c], 1
je 0x21118380
cmp word [0x21159298], 0
je 0x211183a7
mov eax, dword [0x21159308]
test eax, eax
jne 0x211183a7
call fcn.21112300
test eax, eax
je 0x211183a7
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_event_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x211183da
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211183d1
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 0x211183c0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, dword [edi + 0x198]
mov dword [edi + 0x198], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x211183fc
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111842c
cmp word [0x2115929c], 1
je 0x2111841a
cmp word [0x21159298], 0
je 0x2111842c
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111842c
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8
Function at 0x21118440
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2115929c]
cmp word [0x21159294], 0
push ebx
mov ebx, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x21118497
cmp word [0x2115929c], 1
je 0x21118470
cmp word [0x21159298], 0
je 0x21118497
mov eax, dword [0x21159308]
test eax, eax
jne 0x21118497
call fcn.21112300
test eax, eax
je 0x21118497
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_timbre_callback_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x211184ca
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211184c1
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 0x211184b0
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov esi, dword [edi + 0x19c]
mov dword [edi + 0x19c], ebx
mov eax, dword [0x211566c0]
test eax, eax
je 0x211184ec
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x21159294], 0
je 0x2111851c
cmp word [0x2115929c], 1
je 0x2111850a
cmp word [0x21159298], 0
je 0x2111851c
mov eax, dword [0x21159308]
test eax, eax
jne 0x2111851c
push esi
call fcn.211120a0
add esp, 4
dec word [0x2115929c]
pop edi
mov eax, esi
pop esi
pop ebx
ret 8

Function at 0x21118650
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 0x211186a6
cmp word [0x2115929c], 1
je 0x2111867f
cmp word [0x21159298], 0
je 0x211186a6
mov eax, dword [0x21159308]
test eax, eax
jne 0x211186a6
call fcn.21112300
test eax, eax
je 0x211186a6
mov eax, dword [0x2115c0bc]
push ebx
push edi
push str.AIL_register_ICA_array_0x_lX_0x_lX__r_n
push eax
call fcn.211306e2
add esp, 0x10
mov eax, dword [0x211566c0]
test eax, eax
je 0x211186db
mov eax, dword [0x211592a0]
test eax, eax
jne 0x211186d2
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 0x211186c0
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test edi, edi
je 0x211186e2
mov dword [edi + 0x1c], ebx
mov eax, dword [0x211566c0]
test eax, eax
pop edi
pop ebx
je 0x211186fa
mov ecx, dword [0x211592a0]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2115929c]
ret 8