Function at 0x4183d0
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x560fd7
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x640040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x44], eax
mov edi, dword [ebp + 0x14]
mov dword [ebp - 4], 0
mov byte [ebp - 4], 1
test eax, eax
jne 0x418468
push 0x448
push str.c:DevjenkinsworkspaceiTools_for_IDMDeployer_V9.87_servermodbusporthandler_TCP.cpp
push 0x587798
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec040
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0055c86d
mov esp, ebp
pop ebp
ret 0x10
xorps xmm0, xmm0
movups xmmword [eax], xmm0
xor al, al
mov byte [ebp - 0x3d], al
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x38], xmm0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x34], 2
mov dword [ebp - 0x30], 1
mov dword [ebp - 0x2c], 6
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 2
mov eax, dword [ebp + 0xc]
movzx eax, ax
push eax
push 0x5888f0
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__31]
add esp, 0xc
xor esi, esi
mov dword [ebp - 0x4c], esi
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x38]
push eax
push dword [ebp - 0x18]
push dword [ebp + 8]
call dword [sym.imp.WS2_32.dll_GetAddrInfoW]
cmp eax, 0x2afa
jne 0x4184ea
mov eax, esi
inc esi
mov dword [ebp - 0x4c], esi
cmp eax, 2
jl 0x4184c2
jmp 0x4184ee
test eax, eax
je 0x418519
test edi, edi
je 0x418507
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, 0x4ba
cmp eax, 0x2afc
cmovne ecx, eax
mov dword [edi], ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
jmp 0x418438
xor ecx, ecx
mov dword [ebp - 0x48], ecx
mov esi, dword [ebp - 0x3c]
test esi, esi
je 0x418693
mov edx, dword [esi + 4]
mov eax, edx
sub eax, 0
je 0x41863c
sub eax, 2
je 0x418581
sub eax, 0xf
mov eax, dword [0x641a88]
je 0x418564
push edx
push str.ResolveHostName::Other__ld_n
push 0x3ec
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
jmp 0x41863c
push str.ResolveHostName::AF_NETBIOS_NetBIOS_
push 0x3ec
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
jmp 0x41863c
mov edi, dword [esi + 0x18]
mov eax, ecx
inc ecx
mov dword [ebp - 0x48], ecx
cmp eax, 1
jge 0x4185cc
mov eax, dword [ebp - 0x44]
mov ecx, 2
mov word [eax], cx
push dword [ebp + 0xc]
call dword [sym.imp.WS2_32.dll_htons]
mov ecx, dword [ebp - 0x44]
mov word [ecx + 2], ax
movzx eax, byte [edi + 4]
mov byte [ecx + 4], al
movzx eax, byte [edi + 5]
mov byte [ecx + 5], al
movzx eax, byte [edi + 6]
mov byte [ecx + 6], al
movzx eax, byte [edi + 7]
mov byte [ecx + 7], al
mov byte [ebp - 0x3d], 1
jmp 0x41863c
cmp ecx, 3
jge 0x418608
mov ecx, dword [ebp - 0x44]
movzx eax, byte [ecx + 7]
push eax
movzx eax, byte [ecx + 6]
push eax
movzx eax, byte [ecx + 5]
push eax
movzx eax, byte [ecx + 4]
push eax
push dword [ebp + 8]
push str.Resolved__s_____02d._02d._02d._02d
push 0x3ec
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x20
movzx eax, byte [edi + 7]
push eax
movzx eax, byte [edi + 6]
push eax
movzx eax, byte [edi + 5]
push eax
movzx eax, byte [edi + 4]
push eax
push dword [ebp + 8]
push str.Found_alternative__s_____02d._02d._02d._02d
push 0x3ec
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x20
mov eax, dword [esi + 8]
cmp eax, 1
je 0x418662
push eax
push str.ResolveHostName::Asked_for_SOCKET_STREAM___got__ld
push 0x3ec
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov eax, dword [esi + 0xc]
cmp eax, 6
je 0x418688
push eax
push str.ResolveHostName::Asked_for_IPPROTO_TCP___got__ld
push 0x3ec
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov esi, dword [esi + 0x1c]
mov ecx, dword [ebp - 0x48]
jmp 0x418521
push dword [ebp - 0x3c]
call dword [sym.imp.WS2_32.dll_FreeAddrInfoW]
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov al, byte [ebp - 0x3d]
jmp 0x41844a