Function at 0x45fa10
Capabilities:
Get socket status

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x39c
mov dword [esp + 0x68], 0
call sym.init_binary_commands_structures__
mov dword [esp + 4], 1
mov dword [esp], 0x1001
call sym._calloc
mov dword [0x4f0318], eax
test eax, eax
je 0x460595
mov dword [0x4f0314], 0x1000
mov eax, dword [0x26b16f0]
test eax, eax
je 0x46054d
add eax, 0x18
mov esi, str.1.x_2.x
mov ebx, 0x4c1000
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], 0x25f1560
call sym._correctionInit
mov eax, dword [0x26b16f0]
mov byte [0x25f1560], 0
cmp byte [eax + 0xb4], 0
mov eax, esi
mov dword [esp + 0x30], 0x11
cmovne eax, ebx
mov dword [esp + 0x2c], 0x26b2060
mov dword [esp + 0x28], 0x100
mov dword [esp + 0x18], eax
mov dword [esp + 0x24], 0x26b2100
mov dword [esp + 0x20], str.11:21:30
mov dword [esp + 0x1c], 0x4c5b3b
mov dword [esp + 0x14], 0x4c5b47
mov dword [esp + 0x10], str.LUMILOOP
mov dword [esp + 0xc], 0x4d2cc0
mov dword [esp + 8], 0x4bce08
mov dword [esp + 4], 0x4cf960
mov dword [esp], 0x26b1fa0
call sym._SCPI_Init
mov eax, dword [0x26b16f0]
cmp byte [eax + 0xb4], 0
mov eax, esi
mov dword [esp + 0x30], 0x11
cmovne eax, ebx
mov dword [esp + 0x2c], 0x26b2060
mov dword [esp + 0x28], 0x100
mov dword [esp + 0x18], eax
mov dword [esp + 0x24], 0x26b2100
mov dword [esp + 0x20], str.11:21:30
mov dword [esp + 0x1c], 0x4c5b3b
mov dword [esp + 0x14], 0x4c5b47
mov dword [esp + 0x10], str.LUMILOOP
mov dword [esp + 0xc], 0x4d2cc0
mov dword [esp + 8], 0x4bcdf4
mov dword [esp + 4], 0x4cf960
mov dword [esp], 0x26b1ee0
call sym._SCPI_Init
mov eax, dword [0x26b16f0]
cmp byte [eax + 0xb4], 0
mov dword [esp + 0x30], 0x11
cmove ebx, esi
mov dword [esp + 0x2c], 0x26b2060
mov dword [esp + 0x28], 0x100
mov dword [esp + 0x24], 0x26b2100
mov dword [esp + 0x20], str.11:21:30
mov dword [esp + 0x1c], 0x4c5b3b
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], 0x4c5b47
mov dword [esp + 0x10], str.LUMILOOP
mov dword [esp + 0xc], 0x4d2cc0
mov dword [esp + 8], 0x4bcde0
mov dword [esp + 4], 0x4cf960
mov dword [esp], 0x26b1e20
call sym._SCPI_Init
lea eax, [esp + 0x68]
mov dword [esp + 4], 0x4c5b58
mov dword [esp + 8], eax
mov eax, dword [0x26b16f0]
mov dword [0x24f1520], 0
add eax, 0xb5
mov dword [esp], eax
call sym.sscanf_char_const__char_const__..._
movzx eax, word [esp + 0x68]
mov dword [esp], eax
call sym.make_socket_unsigned_short_
mov dword [esp + 4], 1
mov dword [esp + 0x54], eax
mov dword [esp], eax
call dword [sym.imp.WS2_32.dll_listen]
sub esp, 8
test eax, eax
js 0x4605ba
mov eax, dword [esp + 0x68]
mov dword [esp], str.Type__h__or__h___for_list_of_terminal_shortcut_commands._n_n
lea ebp, [esp + 0x28c]
mov edi, dword [esp + 0x54]
mov dword [esp + 4], eax
mov dword [esp + 0x18c], edi
call sym._pprintf
mov eax, dword [0x26b16f0]
mov dword [esp + 8], sym._consoleThread
mov dword [esp + 4], 0
mov dword [esp + 0xc], eax
mov dword [esp], 0x26b16f4
call dbg.pthread_create
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], 1
mov eax, dword [esp + 0x50]
lea ebx, [eax + 1]
lea esi, [esi]
nop
mov eax, dword [esp + 0x4c]
mov ecx, 0x41
mov edi, ebp
lea esi, [esp + 0x188]
mov dword [esp + 0x188], eax
mov eax, dword [0x26b16f0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax + 0x94]
test ecx, ecx
jne 0x460060
lea eax, [esp + 0x70]
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0x2710
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebp
mov dword [esp], ebx
call dword [sym.imp.WS2_32.dll_select]
sub esp, 0x14
mov esi, eax
test eax, eax
je 0x45fcb0
js 0x45fe10
mov eax, dword [0x26b16f0]
add eax, 0x30
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
sub esp, 4
mov edi, dword [esp + 0x54]
mov dword [esp + 4], ebp
mov dword [esp], edi
call sym.___WSAFDIsSet_8
sub esp, 8
test eax, eax
je 0x45fe40
lea eax, [esp + 0x6c]
mov dword [esp + 0x6c], 0x10
mov dword [esp + 8], eax
lea eax, [esp + 0x78]
mov dword [esp + 4], eax
mov dword [esp], edi
call dword [sym.imp.WS2_32.dll_accept]
sub esp, 0xc
mov ebx, eax
test eax, eax
js 0x460570
mov edx, dword [0x24f1520]
cmp edx, 0x1f
jle 0x45ff30
mov dword [esp + 4], 0x20
lea esi, [esp + 0x88]
mov dword [esp], str.TCP_Server:_Maximum_number_of_clients___d__exceeded__connection_refused._n
call sym._pprintf
mov dword [esp + 0xc], 0x20
mov dword [esp + 8], str.CI_250_1.2
mov dword [esp + 4], str._s_maximum_of__d_concurrent_connections_exceeded__connection_refused._n
mov dword [esp], esi
call sym.sprintf_char__char_const__..._
mov dword [esp], esi
call sym._strlen
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._write
mov dword [esp], ebx
call sym._close
mov eax, dword [0x26b16f0]
add eax, 0x30
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
sub esp, 4
mov eax, dword [esp + 0x50]
lea ebx, [eax + 1]
jmp 0x45fcb0
call dword [sym.imp.msvcrt.dll__errno]
cmp dword [eax], 4
je 0x45fca4
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp], str.ret:__d___d_n
call sym._pprintf
jmp 0x45fd22
mov ecx, dword [0x24f1520]
test ecx, ecx
jle 0x460050
mov dword [esp + 0x58], 0x4f0320
mov esi, 0x4f0320
xor ebx, ebx
jmp 0x45fe75
add ebx, 1
add esi, 0x100090
cmp dword [0x24f1520], ebx
jle 0x460050
mov dword [esp + 4], ebp
mov eax, dword [esi]
mov dword [esp], eax
call sym.___WSAFDIsSet_8
sub esp, 8
test eax, eax
je 0x45fe60
mov edx, dword [0x26b16f0]
mov ecx, dword [edx + 0x10]
test ecx, ecx
jle 0x460540
imul eax, ebx, 0x100090
mov dword [esp + 0x5c], edx
mov edi, dword [edx + 4]
mov esi, dword [eax + 0x5f03a8]
xor eax, eax
jmp 0x45fec3
add eax, 1
cmp eax, ecx
je 0x4603b0
mov edx, dword [edi + eax*4]
cmp dword [edx + 0x18c], esi
jne 0x45feb8
mov edx, dword [esp + 0x5c]
mov dword [edx + 0x14], eax
test ecx, ecx
je 0x45feea
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4]
mov eax, dword [eax + 0x18c]
mov dword [0x25f1550], eax
imul esi, ebx, 0x100090
lea edi, [esi + 0x4f0320]
mov dword [esp], edi
call sym.read_from_client_fd_buf_t_
test eax, eax
js 0x4603e8
mov eax, dword [0x26b16f0]
mov edx, dword [eax + 0x10]
test edx, edx
je 0x45fdee
mov edx, dword [0x25f1550]
mov dword [edi + 0x100088], edx
jmp 0x45fdee
mov ecx, dword [esp + 0x4c]
xor eax, eax
test ecx, ecx
jne 0x45ff4b
jmp 0x4603d3
add eax, 1
cmp ecx, eax
je 0x4603c8
cmp dword [esp + eax*4 + 0x18c], ebx
jne 0x45ff40
imul edx, edx, 0x100090
mov eax, dword [esp + 0x7c]
mov esi, dword [sym.imp.WS2_32.dll_inet_ntoa]
mov dword [esp], eax
mov dword [edx + 0x4f0320], ebx
xor ebx, ebx
mov word [edx + 0x5f03ac], bx
mov byte [edx + 0x4f0324], 0
mov dword [edx + 0x5f0324], 0
mov byte [edx + 0x5f03ae], 0
call esi
mov ebx, dword [0x24f1520]
sub esp, 4
imul edi, ebx, 0x100090
mov dword [esp + 4], eax
lea eax, [edi + 0x5f0328]
mov dword [esp], eax
call sym._strcpy
mov eax, dword [0x26b16f0]
mov edx, dword [eax + 0x10]
test edx, edx
je 0x45ffce
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x18c]
mov dword [edi + 0x5f03a8], eax
add ebx, 1
mov edx, dword [0x4f0320]
mov dword [0x24f1520], ebx
test ebx, ebx
jle 0x46055e
mov eax, 0x4f0320
add edi, 0x5f03b0
mov ecx, dword [eax]
cmp edx, ecx
cmovl edx, ecx
add eax, 0x100090
cmp eax, edi
jne 0x45fff0
mov eax, dword [esp + 0x54]
mov edi, 0x4c1028
cmp eax, edx
cmovge edx, eax
mov dword [esp + 0x50], edx
cmp ebx, 1
je 0x46001c
mov edi, 0x4c5afe
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call esi
sub esp, 4
mov dword [esp + 4], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], ebx
mov dword [esp], str.Connect_from_host__s___d_client_s_connected._n
call sym._pprintf
mov eax, dword [0x26b16f0]
jmp 0x45fdee
mov eax, dword [0x26b16f0]
jmp 0x45fdee
mov dword [esp], 0x25f1560
call sym._correctionCleanup
mov eax, dword [0x26b16f4]
mov dword [esp + 4], 0
mov dword [esp], eax
call dbg.pthread_join
mov eax, dword [0x4f0318]
test eax, eax
je 0x46009c
mov dword [esp], eax
call sym._free
mov dword [0x4f0318], 0
mov eax, dword [0x4f0278]
test eax, eax
je 0x4600b7
mov dword [esp], eax
call sym._free
mov dword [0x4f0278], 0
mov eax, dword [0x4f0274]
test eax, eax
je 0x4600d2
mov dword [esp], eax
call sym._free
mov dword [0x4f0274], 0
mov eax, dword [0x4f026c]
mov dword [0x4f0270], 0
test eax, eax
je 0x4600f7
mov dword [esp], eax
call sym._free
mov dword [0x4f026c], 0
mov eax, dword [0x4f0268]
test eax, eax
je 0x460112
mov dword [esp], eax
call sym._free
mov dword [0x4f0268], 0
mov eax, dword [0x4f0264]
test eax, eax
je 0x46012d
mov dword [esp], eax
call sym._free
mov dword [0x4f0264], 0
mov eax, dword [0x4f025c]
test eax, eax
je 0x460148
mov dword [esp], eax
call sym._free
mov dword [0x4f025c], 0
mov eax, dword [0x4f0258]
test eax, eax
je 0x460163
mov dword [esp], eax
call sym._free
mov dword [0x4f0258], 0
mov eax, dword [0x4f0260]
test eax, eax
je 0x46017e
mov dword [esp], eax
call sym._free
mov dword [0x4f0260], 0
mov eax, dword [0x4f0254]
test eax, eax
je 0x460199
mov dword [esp], eax
call sym._free
mov dword [0x4f0254], 0
mov eax, dword [0x4f0250]
test eax, eax
je 0x4601b4
mov dword [esp], eax
call sym._free
mov dword [0x4f0250], 0
mov eax, dword [0x4f0248]
test eax, eax
je 0x4601cf
mov dword [esp], eax
call sym._free
mov dword [0x4f0248], 0
mov eax, dword [0x4f0244]
test eax, eax
je 0x4601ea
mov dword [esp], eax
call sym._free
mov dword [0x4f0244], 0
mov eax, dword [0x4f0240]
test eax, eax
je 0x460205
mov dword [esp], eax
call sym._free
mov dword [0x4f0240], 0
mov eax, dword [0x4f023c]
test eax, eax
je 0x460220
mov dword [esp], eax
call sym._free
mov dword [0x4f023c], 0
mov eax, dword [0x4f0238]
test eax, eax
je 0x46023b
mov dword [esp], eax
call sym._free
mov dword [0x4f0238], 0
mov eax, dword [0x4f0234]
test eax, eax
je 0x460256
mov dword [esp], eax
call sym._free
mov dword [0x4f0234], 0
mov eax, dword [0x4f0230]
test eax, eax
je 0x460271
mov dword [esp], eax
call sym._free
mov dword [0x4f0230], 0
mov eax, dword [0x4f022c]
test eax, eax
je 0x46028c
mov dword [esp], eax
call sym._free
mov dword [0x4f022c], 0
mov eax, dword [0x4f0228]
test eax, eax
je 0x4602a7
mov dword [esp], eax
call sym._free
mov dword [0x4f0228], 0
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov dword [0x4f0220], 0
mov dword [0x4f0224], 0
mov dword [0x4f0218], 0
mov dword [0x4f021c], 0
mov dword [0x4f0210], 0
mov dword [0x4f0214], 0
mov dword [0x4f0208], 0
mov dword [0x4f020c], 0
mov dword [0x4f0200], 0
mov dword [0x4f0204], 0
mov dword [0x4f01f8], 0
mov dword [0x4f01fc], 0
mov dword [0x4f01f0], 0
mov dword [0x4f01f4], 0
mov dword [0x4f01e8], 0
mov dword [0x4f01ec], 0
mov dword [0x4f01e0], 0
mov dword [0x4f01e4], 0
mov dword [esp], 0x26b1fd8
call ebx
sub esp, 4
mov dword [esp], 0x26b1f18
call ebx
sub esp, 4
mov dword [esp], 0x26b1e58
call ebx
sub esp, 4
call sym._pthread_self
mov dword [esp], eax
call dbg.pthread_detach
mov dword [esp], 0
call dbg.pthread_exit
add esp, 0x39c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [esp + 0x5c]
mov dword [edx + 0x14], 0
xor eax, eax
jmp 0x45fed5
cmp dword [esp + 0x4c], 0x40
je 0x45ff54
add dword [esp + 0x4c], 1
mov dword [esp + eax*4 + 0x18c], ebx
jmp 0x45ff54
mov ecx, dword [0x24f1520]
mov edx, 0x4c1028
mov eax, 0x4c5afe
mov dword [esp], str.Connection_to__s_closed___d_client_s_connected._n
test ecx, ecx
cmove eax, edx
sub ecx, 1
mov dword [esp + 8], ecx
imul ecx, ecx, 0x100090
mov dword [esp + 0xc], eax
lea eax, [ecx + 0x5f0328]
mov dword [esp + 4], eax
call sym._pprintf
mov edx, dword [esp + 0x4c]
mov esi, dword [esi + 0x4f0320]
test edx, edx
je 0x460489
xor eax, eax
jmp 0x460447
add eax, 1
cmp edx, eax
je 0x460489
cmp dword [esp + eax*4 + 0x18c], esi
jne 0x460440
sub dword [esp + 0x4c], 1
mov edx, dword [esp + 0x4c]
cmp edx, eax
jbe 0x460489
lea ecx, [eax*4 + 4]
sub edx, eax
lea eax, [esp + ecx + 0x18c]
shl edx, 2
mov dword [esp + 4], eax
lea eax, [esp + 0x188]
add ecx, eax
mov dword [esp + 8], edx
mov dword [esp], ecx
call sym._memmove
mov dword [esp], esi
call sym._close
mov eax, dword [0x24f1520]
lea edx, [eax - 1]
mov dword [esp + 0x50], eax
cmp edx, ebx
je 0x4604f2
imul esi, edx, 0x100090
mov dword [esp], edi
mov dword [esp + 8], 0x100090
mov dword [esp + 0x5c], edx
lea ebx, [esi + 0x4f0320]
mov dword [esp + 4], ebx
call sym._memcpy
lea eax, [esi + 0x6f03b8]
mov ecx, 0x20
add esi, 0x5f0328
mov edi, eax
imul eax, dword [esp + 0x50], 0x100090
mov edx, dword [esp + 0x5c]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x100088]
mov dword [eax + 0x5f03a8], ecx
mov dword [0x24f1520], edx
mov eax, dword [0x4f0320]
test edx, edx
jle 0x460529
imul ecx, dword [esp + 0x50], 0x100090
mov edx, dword [esp + 0x58]
add ecx, 0x3f0290
lea esi, [esi]
nop
mov ebx, dword [edx]
cmp eax, ebx
cmovl eax, ebx
add edx, 0x100090
cmp ecx, edx
jne 0x460518
mov edx, dword [esp + 0x54]
cmp edx, eax
cmovge eax, edx
mov dword [esp + 0x50], eax
mov eax, dword [0x26b16f0]
jmp 0x45fdee
je 0x4603b4
xor eax, eax
jmp 0x45fed2
mov eax, dword [esp + 0x3b0]
mov dword [0x26b16f0], eax
jmp 0x45fa5f
mov eax, dword [esp + 0x54]
cmp eax, edx
cmovge edx, eax
mov dword [esp + 0x50], edx
jmp 0x460017
mov dword [esp], str.accept
call sym._perror
mov eax, dword [0x26b16f0]
add eax, 0x30
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
sub esp, 4
call sym._exit_programm
mov dword [esp], str.ERROR:tcpThread__Failed_allocate_scpiBuf_memory._n
call sym._pprintf
mov dword [0x4f0318], 0
mov dword [0x4f0314], 0
jmp 0x45fa52
mov dword [esp], str.listen
call sym._perror
call sym._exit_programm
nop
nop
nop
nop
nop