Function at 0x4c9f00
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
cmp dword [0x546e98], 0
jne 0x4c9f2e
push str.LM_NO_NETWORK
call fcn.00498980
add esp, 4
neg eax
sbb eax, eax
neg eax
mov dword [0x546e9c], eax
mov dword [0x546e98], 1
cmp dword [0x546e9c], 0
je 0x4c9f3e
xor eax, eax
jmp 0x4ca63b
cmp dword [0x546e84], 0x20
jb 0x4c9f76
cmp dword [0x546e90], 0
jne 0x4c9f6c
push 0x58ca80
mov ax, word [0x58cc10]
push eax
call dword [0x546e44]
mov dword [0x546e90], 1
mov eax, 1
jmp 0x4ca63b
push 0x8000
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x4c9fb3
push str.WS2_32.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x546e84], eax
cmp dword [0x546e84], 0x20
jb 0x4c9fb3
mov dword [0x546e80], 1
jmp 0x4c9fe9
push str.WSOCK32.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x546e84], eax
cmp dword [0x546e84], 0x20
jae 0x4c9fdf
mov dword [0x58c380], 0
xor eax, eax
jmp 0x4ca63b
mov dword [0x546e80], 0
push str.icmp.Dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x546e88], eax
cmp dword [0x546e88], 0x20
jae 0x4ca00e
mov dword [0x58c37c], 0
jmp 0x4ca052
push str.IcmpCreateFile
mov ecx, dword [0x546e88]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546dfc], eax
push str.IcmpSendEcho
mov edx, dword [0x546e88]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e24], eax
push str.IcmpCloseHandle
mov eax, dword [0x546e88]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e08], eax
push str.send
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e68], eax
push 0x530ca8
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e18], eax
push 0x530cb4
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546de4], eax
push str.recv
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e28], eax
push 0x530ccc
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e40], eax
push 0x530cd8
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e20], eax
push 0x530ce8
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e6c], eax
push 0x530cf8
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e48], eax
push 0x530d04
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e44], eax
push str.WSACleanup
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546ddc], eax
push 0x530d1c
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e64], eax
push 0x530d24
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e10], eax
push str.connect
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e38], eax
push 0x530d34
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e14], eax
push 0x530d3c
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e4c], eax
push 0x530d44
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e54], eax
push str.__WSAFDIsSet
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e74], eax
push 0x530d5c
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546dec], eax
push 0x530d64
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546de8], eax
push str.accept
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e70], eax
push str.listen
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e0c], eax
push str.WSASetLastError
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e58], eax
push 0x530d90
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546de0], eax
push 0x530d9c
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e50], eax
push 0x530da4
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546df8], eax
push 0x530db0
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e30], eax
push str.shutdown
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e3c], eax
push str.getsockopt
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546df0], eax
push 0x530dd0
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e60], eax
push str.EnumProtocolsA
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e1c], eax
push str.GetAddressByNameA
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546df4], eax
cmp dword [0x546e80], 0
je 0x4ca3d3
mov edx, dword [0x546e4c]
mov dword [0x546e34], edx
mov word [0x58cc10], 2
push str.WSACreateEvent
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e5c], eax
push str.WSAEventSelect
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e7c], eax
push str.WSAWaitForMultipleEvents
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546dd8], eax
push str.WSAEnumNetworkEvents
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e2c], eax
push str.WSALookupServiceBeginA
mov ecx, dword [0x546e84]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e78], eax
push str.WSALookupServiceNextA
mov edx, dword [0x546e84]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e04], eax
push str.WSALookupServiceEnd
mov eax, dword [0x546e84]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x546e00], eax
jmp 0x4ca3e8
mov ecx, dword [0x546e4c]
mov dword [0x546e34], ecx
mov word [0x58cc10], 0x101
cmp dword [0x546e68], 0
je 0x4ca559
cmp dword [0x546e18], 0
je 0x4ca559
cmp dword [0x546de4], 0
je 0x4ca559
cmp dword [0x546e28], 0
je 0x4ca559
cmp dword [0x546e40], 0
je 0x4ca559
cmp dword [0x546e20], 0
je 0x4ca559
cmp dword [0x546e6c], 0
je 0x4ca559
cmp dword [0x546e48], 0
je 0x4ca559
cmp dword [0x546e44], 0
je 0x4ca559
cmp dword [0x546ddc], 0
je 0x4ca559
cmp dword [0x546e64], 0
je 0x4ca559
cmp dword [0x546e38], 0
je 0x4ca559
cmp dword [0x546e14], 0
je 0x4ca559
cmp dword [0x546e34], 0
je 0x4ca559
cmp dword [0x546e74], 0
je 0x4ca559
cmp dword [0x546e54], 0
je 0x4ca559
cmp dword [0x546dec], 0
je 0x4ca559
cmp dword [0x546de8], 0
je 0x4ca559
cmp dword [0x546e10], 0
je 0x4ca559
cmp dword [0x546e70], 0
je 0x4ca559
cmp dword [0x546e0c], 0
je 0x4ca559
cmp dword [0x546e58], 0
je 0x4ca559
cmp dword [0x546de0], 0
je 0x4ca559
cmp dword [0x546e50], 0
je 0x4ca559
cmp dword [0x546df8], 0
je 0x4ca559
cmp dword [0x546e30], 0
je 0x4ca559
cmp dword [0x546e3c], 0
je 0x4ca559
cmp dword [0x546df0], 0
je 0x4ca559
cmp dword [0x546e60], 0
je 0x4ca559
cmp dword [0x546e80], 0
jne 0x4ca547
cmp dword [0x546e1c], 0
je 0x4ca559
cmp dword [0x546e80], 0
jne 0x4ca585
cmp dword [0x546df4], 0
jne 0x4ca585
cmp dword [ebp + 8], 0
je 0x4ca57e
push 0x10010
mov edx, dword [str.FLEXnet_WINSOCK_error]
push edx
mov eax, dword [str.WINSOCK_usage_error_detected.__You_must_make_sure_your_license_file_does_only_node_locking__or_you_must_have_a_WINSOCK.DLL_in_order_to_communicate_with_FLEXnet_license_server.]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x4ca63b
cmp dword [0x546e80], 0
je 0x4ca5f7
cmp dword [0x546e5c], 0
je 0x4ca5cd
cmp dword [0x546e7c], 0
je 0x4ca5cd
cmp dword [0x546dd8], 0
je 0x4ca5cd
cmp dword [0x546e2c], 0
je 0x4ca5cd
cmp dword [0x546e78], 0
je 0x4ca5cd
cmp dword [0x546e04], 0
je 0x4ca5cd
cmp dword [0x546e00], 0
jne 0x4ca5f7
cmp dword [ebp + 8], 0
je 0x4ca5f3
push 0x10010
mov ecx, dword [str.FLEXnet_WINSOCK_error]
push ecx
mov edx, dword [str.WINSOCK_usage_error_detected.__You_must_make_sure_your_license_file_does_only_node_locking__or_you_must_have_a_WINSOCK.DLL_in_order_to_communicate_with_FLEXnet_license_server.]
push edx
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x4ca63b
mov dword [0x58c380], 1
push 0x58ca80
mov ax, word [0x58cc10]
push eax
call dword [0x546e44]
mov dword [0x545738], 0x400
mov ecx, dword [0x546e8c]
add ecx, 1
mov dword [0x546e8c], ecx
mov dword [0x546e90], 1
mov eax, 1
pop ebp
ret