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

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211063c7
cmp word [0x2114fa34], 1
je 0x2110639b
cmp word [0x2114fa32], 0
je 0x211063c7
call fcn.211023e0
test eax, eax
jne 0x211063c7
call fcn.21102230
test eax, eax
je 0x211063c7
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_register_EOB_callback_0x_lX_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211063f9
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211063f0
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211063df
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106412
lea edx, [esp + 0xc]
mov ecx, 0x5e
call fcn.21102670
jmp 0x2110641d
mov edx, dword [esp + 0xc]
push edi
push edx
call fcn.21114a20
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106434
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106462
cmp word [0x2114fa34], 1
je 0x21106452
cmp word [0x2114fa32], 0
je 0x21106462
call fcn.211023e0
test eax, eax
jne 0x21106462
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
ret 8

Function at 0x21106470
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211064c7
cmp word [0x2114fa34], 1
je 0x2110649b
cmp word [0x2114fa32], 0
je 0x211064c7
call fcn.211023e0
test eax, eax
jne 0x211064c7
call fcn.21102230
test eax, eax
je 0x211064c7
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_register_EOS_callback_0x_lX_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211064f9
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211064f0
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211064df
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106512
lea edx, [esp + 0xc]
mov ecx, 0x5f
call fcn.21102670
jmp 0x2110651d
mov edx, dword [esp + 0xc]
push edi
push edx
call fcn.21114a40
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106534
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106562
cmp word [0x2114fa34], 1
je 0x21106552
cmp word [0x2114fa32], 0
je 0x21106562
call fcn.211023e0
test eax, eax
jne 0x21106562
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
ret 8
Function at 0x21106570
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push esi
push edi
mov edi, dword [esp + 0x10]
je 0x211065c7
cmp word [0x2114fa34], 1
je 0x2110659b
cmp word [0x2114fa32], 0
je 0x211065c7
call fcn.211023e0
test eax, eax
jne 0x211065c7
call fcn.21102230
test eax, eax
je 0x211065c7
mov eax, dword [esp + 0xc]
mov ecx, dword [0x211530f8]
push edi
push eax
push str.AIL_register_EOF_callback_0x_lX_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211065f9
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211065f0
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211065df
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106612
lea edx, [esp + 0xc]
mov ecx, 0x60
call fcn.21102670
jmp 0x2110661d
mov edx, dword [esp + 0xc]
push edi
push edx
call fcn.21116240
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106634
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106662
cmp word [0x2114fa34], 1
je 0x21106652
cmp word [0x2114fa32], 0
je 0x21106662
call fcn.211023e0
test eax, eax
jne 0x21106662
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
ret 8

Function at 0x211067d0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21106820
cmp word [0x2114fa34], 1
je 0x211067f5
cmp word [0x2114fa32], 0
je 0x21106820
call fcn.211023e0
test eax, eax
jne 0x21106820
call fcn.21102230
test eax, eax
je 0x21106820
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_active_sample_count_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
push esi
je 0x21106853
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110684a
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21106839
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110686c
lea edx, [esp + 8]
mov ecx, 0x38
call fcn.21102670
jmp 0x21106876
mov edx, dword [esp + 8]
push edx
call fcn.21114370
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110688d
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x211068bb
cmp word [0x2114fa34], 1
je 0x211068ab
cmp word [0x2114fa32], 0
je 0x211068bb
call fcn.211023e0
test eax, eax
jne 0x211068bb
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
mov eax, esi
pop esi
ret 4
Function at 0x211068d0
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 0x21106932
cmp word [0x2114fa34], 1
je 0x21106904
cmp word [0x2114fa32], 0
je 0x21106932
call fcn.211023e0
test eax, eax
jne 0x21106932
call fcn.21102230
test eax, eax
je 0x21106932
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push ebp
push eax
push str.AIL_digital_configuration_0x_lX_0x_lX_0x_lX_0xlX__r_n
push ecx
call fcn.2112ed34
add esp, 0x18
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106966
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110695d
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 0x2110694b
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110697f
lea edx, [esp + 0x10]
mov ecx, 0x39
call fcn.21102670
jmp 0x2110698c
mov edx, dword [esp + 0x10]
push edi
push ebx
push ebp
push edx
call fcn.21114cb0
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x211069a4
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0x10

Function at 0x211069b0
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0xc]
push edi
mov edi, dword [esp + 0x18]
je 0x21106a0c
cmp word [0x2114fa34], 1
je 0x211069e4
cmp word [0x2114fa32], 0
je 0x21106a0c
call fcn.211023e0
test eax, eax
jne 0x21106a0c
call fcn.21102230
test eax, eax
je 0x21106a0c
mov eax, dword [0x211530f8]
push edi
push ebx
push ebp
push str.AIL_get_DirectSound_info_0x_lX_0x_lX_0x_lX__r_n
push eax
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106a40
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106a37
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 0x21106a25
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114e828]
test eax, eax
jne 0x21106a51
push edi
push ebx
push ebp
call fcn.211119f0
mov eax, dword [0x2114e89c]
test eax, eax
pop edi
pop ebp
pop ebx
je 0x21106a6a
mov ecx, dword [0x2114fa38]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 0xc
Function at 0x21106a80
Capabilities:
Check mutex on windows

Disassembly:
push ebx
mov ebx, dword [esp + 0xc]
push ebp
mov ebp, dword [esp + 0xc]
push edi
xor edi, edi
inc word [0x2114fa34]
cmp word [0x2114fa30], di
je 0x21106ad7
cmp word [0x2114fa34], 1
je 0x21106ab0
cmp word [0x2114fa32], di
je 0x21106ad7
call fcn.211023e0
test eax, eax
jne 0x21106ad7
call fcn.21102230
test eax, eax
je 0x21106ad7
mov eax, dword [0x211530f8]
push ebx
push ebp
push str.AIL_set_DirectSound_HWND_0x_lX__0x_lX__r_n
push eax
call fcn.2112ed34
add esp, 0x10
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106b0b
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106b02
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 0x21106af0
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114e828]
test eax, eax
jne 0x21106b1d
push ebx
push ebp
call fcn.21111910
mov edi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106b33
mov ecx, dword [0x2114fa38]
push ecx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106b61
cmp word [0x2114fa34], 1
je 0x21106b51
cmp word [0x2114fa32], 0
je 0x21106b61
call fcn.211023e0
test eax, eax
jne 0x21106b61
mov ecx, edi
call fcn.21102960
dec word [0x2114fa34]
mov eax, edi
pop edi
pop ebp
pop ebx
ret 8

Function at 0x21106b70
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
push edi
mov edi, dword [esp + 8]
je 0x21106bc0
cmp word [0x2114fa34], 1
je 0x21106b9a
cmp word [0x2114fa32], 0
je 0x21106bc0
call fcn.211023e0
test eax, eax
jne 0x21106bc0
call fcn.21102230
test eax, eax
je 0x21106bc0
mov eax, dword [0x211530f8]
push edi
push str.AIL_open_XMIDI_driver_0x_lX__r_n
push eax
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106bf4
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106beb
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 0x21106bd9
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
not edi
or edi, 0xfffffffe
push edi
push 0
lea ecx, [esp + 0x10]
push ecx
call sym.mss32.dll__AIL_midiOutOpen_12
test eax, eax
pop edi
je 0x21106c13
mov dword [esp + 4], 0
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106c29
mov edx, dword [0x2114fa38]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106c59
cmp word [0x2114fa34], 1
je 0x21106c47
cmp word [0x2114fa32], 0
je 0x21106c59
call fcn.211023e0
test eax, eax
jne 0x21106c59
mov ecx, dword [esp + 4]
call fcn.21102960
dec word [0x2114fa34]
mov eax, dword [esp + 4]
ret 4
Function at 0x21106c70
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21106cc0
cmp word [0x2114fa34], 1
je 0x21106c95
cmp word [0x2114fa32], 0
je 0x21106cc0
call fcn.211023e0
test eax, eax
jne 0x21106cc0
call fcn.21102230
test eax, eax
je 0x21106cc0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_close_XMIDI_driver_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106cf4
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106ceb
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 0x21106cd9
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106d0d
lea edx, [esp + 4]
mov ecx, 0x3b
call fcn.21102670
jmp 0x21106d17
mov edx, dword [esp + 4]
push edx
call fcn.21117b40
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106d2c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21106d40
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 0x21106d9d
cmp word [0x2114fa34], 1
je 0x21106d70
cmp word [0x2114fa32], 0
je 0x21106d9d
call fcn.211023e0
test eax, eax
jne 0x21106d9d
call fcn.21102230
test eax, eax
je 0x21106d9d
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_midiOutOpen_0x_lX__0x_lX___d__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106dcf
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106dc6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21106db5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106de8
lea edx, [esp + 0x10]
mov ecx, 0x3a
call fcn.21102670
jmp 0x21106df4
mov edx, dword [esp + 0x10]
push edi
push ebx
push edx
call fcn.21117e70
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106e0b
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21106e39
cmp word [0x2114fa34], 1
je 0x21106e29
cmp word [0x2114fa32], 0
je 0x21106e39
call fcn.211023e0
test eax, eax
jne 0x21106e39
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebx
ret 0xc
Function at 0x21106e50
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21106ea0
cmp word [0x2114fa34], 1
je 0x21106e75
cmp word [0x2114fa32], 0
je 0x21106ea0
call fcn.211023e0
test eax, eax
jne 0x21106ea0
call fcn.21102230
test eax, eax
je 0x21106ea0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_midiOutClose_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106ed4
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106ecb
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 0x21106eb9
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106eed
lea edx, [esp + 4]
mov ecx, 0x3b
call fcn.21102670
jmp 0x21106ef7
mov edx, dword [esp + 4]
push edx
call fcn.21117b40
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106f0c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21106f20
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21106f70
cmp word [0x2114fa34], 1
je 0x21106f45
cmp word [0x2114fa32], 0
je 0x21106f70
call fcn.211023e0
test eax, eax
jne 0x21106f70
call fcn.21102230
test eax, eax
je 0x21106f70
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_MIDI_handle_release_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
push esi
je 0x21106fa3
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x21106f9a
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21106f89
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x21106fbc
lea edx, [esp + 8]
mov ecx, 0x3c
call fcn.21102670
jmp 0x21106fc6
mov edx, dword [esp + 8]
push edx
call fcn.21117c40
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21106fdd
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x2110700b
cmp word [0x2114fa34], 1
je 0x21106ffb
cmp word [0x2114fa32], 0
je 0x2110700b
call fcn.211023e0
test eax, eax
jne 0x2110700b
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
mov eax, esi
pop esi
ret 4
Function at 0x21107020
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21107070
cmp word [0x2114fa34], 1
je 0x21107045
cmp word [0x2114fa32], 0
je 0x21107070
call fcn.211023e0
test eax, eax
jne 0x21107070
call fcn.21102230
test eax, eax
je 0x21107070
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_MIDI_handle_reacquire_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
push esi
je 0x211070a3
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110709a
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21107089
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211070bc
lea edx, [esp + 8]
mov ecx, 0x3d
call fcn.21102670
jmp 0x211070c6
mov edx, dword [esp + 8]
push edx
call fcn.21117d40
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211070dd
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21107142
cmp word [0x2114fa34], 1
je 0x211070fb
cmp word [0x2114fa32], 0
je 0x21107142
call fcn.211023e0
test eax, eax
jne 0x21107142
mov ecx, dword [0x2114fa34]
mov eax, dword [0x211530f8]
and ecx, 0xffff
mov edx, 0x2114c061
sub edx, ecx
push edx
push 0x2114c030
push str._s_s
push eax
call fcn.2112ed34
mov ecx, dword [0x211530f8]
push esi
push str.Result___lu_r_n
push ecx
call fcn.2112ed34
add esp, 0x1c
dec word [0x2114fa34]
mov eax, esi
pop esi
ret 4

Function at 0x21107150
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x211071a0
cmp word [0x2114fa34], 1
je 0x21107175
cmp word [0x2114fa32], 0
je 0x211071a0
call fcn.211023e0
test eax, eax
jne 0x211071a0
call fcn.21102230
test eax, eax
je 0x211071a0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_allocate_sequence_handle_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
push esi
je 0x211071d3
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211071ca
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x211071b9
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211071ec
lea edx, [esp + 8]
mov ecx, 0x3e
call fcn.21102670
jmp 0x211071f6
mov edx, dword [esp + 8]
push edx
call fcn.21118250
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110720d
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x2110723b
cmp word [0x2114fa34], 1
je 0x2110722b
cmp word [0x2114fa32], 0
je 0x2110723b
call fcn.211023e0
test eax, eax
jne 0x2110723b
mov ecx, esi
call fcn.21102960
dec word [0x2114fa34]
mov eax, esi
pop esi
ret 4
Function at 0x21107250
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x211072a0
cmp word [0x2114fa34], 1
je 0x21107275
cmp word [0x2114fa32], 0
je 0x211072a0
call fcn.211023e0
test eax, eax
jne 0x211072a0
call fcn.21102230
test eax, eax
je 0x211072a0
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_release_sequence_handle_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211072d4
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211072cb
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 0x211072b9
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211072ed
lea edx, [esp + 4]
mov ecx, 0x3f
call fcn.21102670
jmp 0x211072f7
mov edx, dword [esp + 4]
push edx
call fcn.21118360
mov eax, dword [0x2114e89c]
test eax, eax
je 0x2110730c
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21107320
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 0x2110737d
cmp word [0x2114fa34], 1
je 0x21107350
cmp word [0x2114fa32], 0
je 0x2110737d
call fcn.211023e0
test eax, eax
jne 0x2110737d
call fcn.21102230
test eax, eax
je 0x2110737d
mov eax, dword [esp + 0x10]
mov ecx, dword [0x211530f8]
push edi
push ebx
push eax
push str.AIL_init_sequence_0x_lX_0x_lX__ld__r_n
push ecx
call fcn.2112ed34
add esp, 0x14
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211073af
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211073a6
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 0
push 0
call esi
test eax, eax
mov dword [0x2114fa38], eax
je 0x21107395
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211073c8
lea edx, [esp + 0x10]
mov ecx, 0x40
call fcn.21102670
jmp 0x211073d4
mov edx, dword [esp + 0x10]
push edi
push ebx
push edx
call fcn.21118380
mov esi, eax
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211073eb
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp word [0x2114fa30], 0
je 0x21107419
cmp word [0x2114fa34], 1
je 0x21107409
cmp word [0x2114fa32], 0
je 0x21107419
call fcn.211023e0
test eax, eax
jne 0x21107419
mov ecx, esi
call fcn.21102390
dec word [0x2114fa34]
pop edi
mov eax, esi
pop esi
pop ebx
ret 0xc
Function at 0x21107430
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21107480
cmp word [0x2114fa34], 1
je 0x21107455
cmp word [0x2114fa32], 0
je 0x21107480
call fcn.211023e0
test eax, eax
jne 0x21107480
call fcn.21102230
test eax, eax
je 0x21107480
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_start_sequence_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211074b4
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x211074ab
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 0x21107499
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x211074cd
lea edx, [esp + 4]
mov ecx, 0x41
call fcn.21102670
jmp 0x211074d7
mov edx, dword [esp + 4]
push edx
call fcn.21118630
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211074ec
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4

Function at 0x21107500
Capabilities:
Check mutex on windows

Disassembly:
inc word [0x2114fa34]
cmp word [0x2114fa30], 0
je 0x21107550
cmp word [0x2114fa34], 1
je 0x21107525
cmp word [0x2114fa32], 0
je 0x21107550
call fcn.211023e0
test eax, eax
jne 0x21107550
call fcn.21102230
test eax, eax
je 0x21107550
mov eax, dword [esp + 4]
mov ecx, dword [0x211530f8]
push eax
push str.AIL_stop_sequence_0x_lX__r_n
push ecx
call fcn.2112ed34
add esp, 0xc
mov eax, dword [0x2114e89c]
test eax, eax
je 0x21107584
mov eax, dword [0x2114fa38]
test eax, eax
jne 0x2110757b
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 0x21107569
pop esi
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x2114fa40]
test eax, eax
je 0x2110759d
lea edx, [esp + 4]
mov ecx, 0x42
call fcn.21102670
jmp 0x211075a7
mov edx, dword [esp + 4]
push edx
call fcn.21118680
mov eax, dword [0x2114e89c]
test eax, eax
je 0x211075bc
mov eax, dword [0x2114fa38]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
dec word [0x2114fa34]
ret 4