Function at 0x4059c0
Capabilities:
Check mutex on windows
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
mov ecx, dword [0x42a678]
push esi
xor eax, eax
push edi
mov edi, dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test ecx, ecx
jne 0x405a72
mov eax, dword [0x42a654]
test eax, eax
je 0x4059f5
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
jmp 0x405a6d
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea eax, [ebp - 0x108]
push str.National_Instruments_LabWindows_CVI_Data_Acquisition_Library__d
push eax
call sub.cvirte.dll_sprintf
add esp, 0xc
lea ecx, [ebp - 0x108]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov esi, eax
test esi, esi
jne 0x405a32
pop edi
mov eax, 0xffffd800
pop esi
mov esp, ebp
pop ebp
ret
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0xffffffffffffffff
push esi
call edi
mov eax, dword [0x42a654]
test eax, eax
je 0x405a61
push esi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [0x42a654]
push 0xffffffffffffffff
push edx
call edi
jmp 0x405a67
mov dword [0x42a654], esi
mov edi, dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, 1
mov ecx, dword [0x42a658]
test ecx, ecx
je 0x405a94
test eax, eax
je 0x407469
mov eax, dword [0x42a654]
push eax
call edi
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
push str.nidaq32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x42a658], eax
jne 0x405abc
mov ecx, dword [0x42a654]
push ecx
call edi
pop edi
mov eax, 0xffffd800
pop esi
mov esp, ebp
pop ebp
ret
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.A2000_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a5e4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.A2000_Config
push edx
call esi
test eax, eax
mov dword [0x42a28c], eax
je 0x407277
mov eax, dword [0x42a658]
push str.A2150_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a448], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AI_Check
push ecx
call esi
test eax, eax
mov dword [0x42a37c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.AI_Clear
push edx
call esi
test eax, eax
mov dword [0x42a384], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AI_Configure
push eax
call esi
test eax, eax
mov dword [0x42a5f8], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AI_Mux_Config
push ecx
call esi
test eax, eax
mov dword [0x42a468], eax
je 0x407277
mov edx, dword [0x42a658]
push str.AI_Read
push edx
call esi
test eax, eax
mov dword [0x42a2e8], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AI_Read_Scan
push eax
call esi
test eax, eax
mov dword [0x42a3bc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AI_Setup
push ecx
call esi
test eax, eax
mov dword [0x42a650], eax
je 0x407277
mov edx, dword [0x42a658]
push str.AI_VRead
push edx
call esi
test eax, eax
mov dword [0x42a620], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AI_VRead_Scan
push eax
call esi
test eax, eax
mov dword [0x42a46c], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AI_VScale
push ecx
call esi
test eax, eax
mov dword [0x42a60c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Align_DMA_Buffer
push edx
call esi
test eax, eax
mov dword [0x42a3e4], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AO_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a380], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AO_Change_Parameter
push ecx
call esi
test eax, eax
mov dword [0x42a458], eax
je 0x407277
mov edx, dword [0x42a658]
push str.AO_Configure
push edx
call esi
test eax, eax
mov dword [0x42a418], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AO_Update
push eax
call esi
test eax, eax
mov dword [0x42a624], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.AO_VScale
push ecx
call esi
test eax, eax
mov dword [0x42a284], eax
je 0x407277
mov edx, dword [0x42a658]
push str.AO_VWrite
push edx
call esi
test eax, eax
mov dword [0x42a2f0], eax
je 0x407277
mov eax, dword [0x42a658]
push str.AO_Write
push eax
call esi
test eax, eax
mov dword [0x42a5e8], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Calibrate_1200
push ecx
call esi
test eax, eax
mov dword [0x42a3b4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Calibrate_E_Series
push edx
call esi
test eax, eax
mov dword [0x42a424], eax
je 0x407277
mov eax, dword [0x42a658]
push str.Config_Alarm_Deadband
push eax
call esi
test eax, eax
mov dword [0x49b708], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Config_ATrig_Event_Message
push ecx
call esi
test eax, eax
mov dword [0x47b5f8], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Config_DAQ_Event_Message
push edx
call esi
test eax, eax
mov dword [0x4ab818], eax
je 0x407277
mov eax, dword [0x42a658]
push str.Configure_HW_Analog_Trigger
push eax
call esi
test eax, eax
mov dword [0x42a48c], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.CTR_Config
push ecx
call esi
test eax, eax
mov dword [0x42a3a4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.CTR_EvCount
push edx
call esi
test eax, eax
mov dword [0x42a4e8], eax
je 0x407277
mov eax, dword [0x42a658]
push str.CTR_EvRead
push eax
call esi
test eax, eax
mov dword [0x42a370], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.CTR_FOUT_Config
push ecx
call esi
test eax, eax
mov dword [0x42a31c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.CTR_Period
push edx
call esi
test eax, eax
mov dword [0x42a5ac], eax
je 0x407277
mov eax, dword [0x42a658]
push str.CTR_Pulse
push eax
call esi
test eax, eax
mov dword [0x42a3dc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.CTR_Rate
push ecx
call esi
test eax, eax
mov dword [0x42a36c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.CTR_Reset
push edx
call esi
test eax, eax
mov dword [0x42a5d0], eax
je 0x407277
mov eax, dword [0x42a658]
push str.CTR_Restart
push eax
call esi
test eax, eax
mov dword [0x42a3d0], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.CTR_Simul_Op
push ecx
call esi
test eax, eax
mov dword [0x42a32c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.CTR_Square
push edx
call esi
test eax, eax
mov dword [0x42a324], eax
je 0x407277
mov eax, dword [0x42a658]
push str.CTR_State
push eax
call esi
test eax, eax
mov dword [0x42a2ec], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.CTR_Stop
push ecx
call esi
test eax, eax
mov dword [0x42a2dc], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DAQ_Check
push edx
call esi
test eax, eax
mov dword [0x42a4f8], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DAQ_Clear
push eax
call esi
test eax, eax
mov dword [0x42a49c], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DAQ_Config
push ecx
call esi
test eax, eax
mov dword [0x42a50c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DAQ_DB_Config
push edx
call esi
test eax, eax
mov dword [0x42a5d4], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DAQ_DB_HalfReady
push eax
call esi
test eax, eax
mov dword [0x42a414], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DAQ_DB_StrTransfer
push ecx
call esi
test eax, eax
mov dword [0x42a4e4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DAQ_DB_Transfer
push edx
call esi
test eax, eax
mov dword [0x42a4d0], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DAQ_Monitor
push eax
call esi
test eax, eax
mov dword [0x42a420], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DAQ_Op
push ecx
call esi
test eax, eax
mov dword [0x42a310], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DAQ_Rate
push edx
call esi
test eax, eax
mov dword [0x42a3cc], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DAQ_Start
push eax
call esi
test eax, eax
mov dword [0x42a2fc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DAQ_StopTrigger_Config
push ecx
call esi
test eax, eax
mov dword [0x42a2d4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DAQ_to_Disk
push edx
call esi
test eax, eax
mov dword [0x42a2ac], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DAQ_VScale
push eax
call esi
test eax, eax
mov dword [0x42a4bc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_Block_Check
push ecx
call esi
test eax, eax
mov dword [0x42a4b8], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Block_Clear
push edx
call esi
test eax, eax
mov dword [0x42a4d4], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_Block_In
push eax
call esi
test eax, eax
mov dword [0x42a3d4], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_Block_Out
push ecx
call esi
test eax, eax
mov dword [0x42a554], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Block_PG_Config
push edx
call esi
test eax, eax
mov dword [0x42a5a4], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_DB_Config
push eax
call esi
test eax, eax
mov dword [0x42a5ec], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_DB_HalfReady
push ecx
call esi
test eax, eax
mov dword [0x42a378], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_DB_StrTransfer
push edx
call esi
test eax, eax
mov dword [0x42a4cc], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_DB_Transfer
push eax
call esi
test eax, eax
mov dword [0x42a300], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_Grp_Config
push ecx
call esi
test eax, eax
mov dword [0x42a510], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Grp_Mode
push edx
call esi
test eax, eax
mov dword [0x42a474], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_Grp_Status
push eax
call esi
test eax, eax
mov dword [0x42a5dc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_In_Grp
push ecx
call esi
test eax, eax
mov dword [0x42a4b0], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_In_Line
push edx
call esi
test eax, eax
mov dword [0x42a584], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_In_Port
push eax
call esi
test eax, eax
mov dword [0x42a480], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_Line_Config
push ecx
call esi
test eax, eax
mov dword [0x42a398], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Out_Grp
push edx
call esi
test eax, eax
mov dword [0x42a38c], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_Out_Line
push eax
call esi
test eax, eax
mov dword [0x42a3fc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_Out_Port
push ecx
call esi
test eax, eax
mov dword [0x42a598], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Prt_Config
push edx
call esi
test eax, eax
mov dword [0x42a460], eax
je 0x407277
mov eax, dword [0x42a658]
push str.DIG_Prt_Status
push eax
call esi
test eax, eax
mov dword [0x42a2b0], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DIG_SCAN_Setup
push ecx
call esi
test eax, eax
mov dword [0x42a648], eax
je 0x407277
mov edx, dword [0x42a658]
push str.DIG_Trigger_Config
push edx
call esi
mov dword [0x42a434], eax
mov eax, dword [0x42a658]
push str.DSP2200_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a618], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.DSP2200_Config
push ecx
call esi
test eax, eax
mov dword [0x42a47c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Get_DAQ_Device_Info
push edx
call esi
test eax, eax
mov dword [0x42a56c], eax
je 0x407277
mov eax, dword [0x42a658]
push str.Get_DAQ_Event
push eax
call esi
test eax, eax
mov dword [0xc65a40], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Get_NI_DAQ_Version
push ecx
call esi
test eax, eax
mov dword [0x42a2c4], eax
je 0x407277
mov edx, dword [0x42a658]
push str.GPCTR_Change_Parameter
push edx
call esi
test eax, eax
mov dword [0x42a394], eax
je 0x407277
mov eax, dword [0x42a658]
push str.GPCTR_Config_Buffer
push eax
call esi
test eax, eax
mov dword [0x42a39c], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.GPCTR_Control
push ecx
call esi
test eax, eax
mov dword [0x42a53c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.GPCTR_Set_Application
push edx
call esi
test eax, eax
mov dword [0x42a430], eax
je 0x407277
mov eax, dword [0x42a658]
push str.GPCTR_Watch
push eax
call esi
test eax, eax
mov dword [0x42a374], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.ICTR_Read
push ecx
call esi
test eax, eax
mov dword [0x42a328], eax
je 0x407277
mov edx, dword [0x42a658]
push str.ICTR_Reset
push edx
call esi
test eax, eax
mov dword [0x42a638], eax
je 0x407277
mov eax, dword [0x42a658]
push str.ICTR_Setup
push eax
call esi
test eax, eax
mov dword [0x42a614], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Init_DA_Brds
push ecx
call esi
test eax, eax
mov dword [0x42a55c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Lab_ISCAN_Check
push edx
call esi
test eax, eax
mov dword [0x42a4c8], eax
je 0x407277
mov eax, dword [0x42a658]
push str.Lab_ISCAN_Op
push eax
call esi
test eax, eax
mov dword [0x42a540], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Lab_ISCAN_Start
push ecx
call esi
test eax, eax
mov dword [0x42a288], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Lab_ISCAN_to_Disk
push edx
call esi
test eax, eax
mov dword [0x42a544], eax
je 0x407277
mov eax, dword [0x42a658]
push str.LPM16_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a5f4], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MAI_Arm
push ecx
call esi
test eax, eax
mov dword [0x42a298], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MAI_Clear
push edx
call esi
test eax, eax
mov dword [0x42a4fc], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MAI_Coupling
push eax
call esi
test eax, eax
mov dword [0x42a438], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MAI_Read
push ecx
call esi
test eax, eax
mov dword [0x42a490], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MAI_Scale
push edx
call esi
test eax, eax
mov dword [0x42a488], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MAI_Setup
push eax
call esi
test eax, eax
mov dword [0x42a3d8], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.Master_Slave_Config
push ecx
call esi
test eax, eax
mov dword [0x42a538], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MDAQ_Check
push edx
call esi
test eax, eax
mov dword [0x42a360], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MDAQ_Clear
push eax
call esi
test eax, eax
mov dword [0x42a400], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MDAQ_Get
push ecx
call esi
test eax, eax
mov dword [0x42a534], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MDAQ_ScanRate
push edx
call esi
test eax, eax
mov dword [0x42a43c], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MDAQ_Setup
push eax
call esi
test eax, eax
mov dword [0x42a4a0], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MDAQ_Start
push ecx
call esi
test eax, eax
mov dword [0x42a3f0], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MDAQ_Stop
push edx
call esi
test eax, eax
mov dword [0x42a508], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MDAQ_StrGet
push eax
call esi
test eax, eax
mov dword [0x42a478], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MDAQ_Trig_Delay
push ecx
call esi
test eax, eax
mov dword [0x42a51c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.MDAQ_Trig_Select
push edx
call esi
test eax, eax
mov dword [0x42a644], eax
je 0x407277
mov eax, dword [0x42a658]
push str.MIO_Calibrate
push eax
call esi
test eax, eax
mov dword [0x42a334], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.MIO_Config
push ecx
call esi
test eax, eax
mov dword [0x42a308], eax
je 0x407277
mov edx, dword [0x42a658]
push str.Mux_SCAN_Setup
push edx
call esi
test eax, eax
mov dword [0x42a5c8], eax
je 0x407277
mov eax, dword [0x42a658]
push str.Peek_DAQ_Event
push eax
call esi
test eax, eax
mov dword [0x47b4dc], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.REG_Level_Read
push ecx
call esi
test eax, eax
mov dword [0x42a530], eax
je 0x407277
mov edx, dword [0x42a658]
push str.REG_Level_Write
push edx
call esi
test eax, eax
mov dword [0x42a5f0], eax
je 0x407277
mov eax, dword [0x42a658]
push str.RTSI_Clear
push eax
call esi
test eax, eax
mov dword [0x42a594], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.RTSI_Clock
push ecx
call esi
test eax, eax
mov dword [0x42a358], eax
je 0x407277
mov edx, dword [0x42a658]
push str.RTSI_Conn
push edx
call esi
test eax, eax
mov dword [0x42a4b4], eax
je 0x407277
mov eax, dword [0x42a658]
push str.RTSI_DisConn
push eax
call esi
test eax, eax
mov dword [0x42a348], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.SC_2040_Config
push ecx
call esi
test eax, eax
mov dword [0x42a62c], eax
je 0x407277
mov edx, dword [0x42a658]
push str.SCAN_Demux
push edx
call esi
test eax, eax
mov dword [0x42a2a0], eax
je 0x407277
mov eax, dword [0x42a658]
push str.SCAN_Op
push eax
call esi
test eax, eax
mov dword [0x42a2d0], eax
je 0x407277
mov ecx, dword [0x42a658]
push str.SCAN_Sequence_Demux
push ecx
call esi
test eax, eax
mov dword [0x42a608], eax
je 0x407277
mov edx, dword [0x42a658]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x42a654]
mov dword [0x42a658], 0
push eax
mov dword [0x42a678], 0
call edi
pop edi
mov eax, 0xffffd7fe
pop esi
mov esp, ebp
pop ebp
ret
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret