Function at 0x4a75d0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Get socket status

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x531f87
mov eax, dword fs:[0]
push eax
sub esp, 0x244
mov eax, dword [0x5ba11c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x238], ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x244], eax
test eax, eax
je 0x4a7617
mov dword [eax], 0x57
push 6
push 1
push 2
xor edi, edi
xor bl, bl
call dword [sym.imp.WSOCK32.dll_socket]
mov esi, eax
mov dword [ebp - 0x250], esi
mov dword [ebp - 4], edi
cmp esi, 0xffffffff
jne 0x4a76f7
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov edi, eax
call fcn.004d03a0
mov esi, eax
mov ecx, esi
call fcn.004d0140
cmp byte [0x5c221d], bl
jne 0x4a76a4
mov ecx, 0xf0
call fcn.004d0a00
mov dword [ebp - 0x234], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x4a7699
sub esp, 8
xorps xmm0, xmm0
mov ecx, eax
movsd qword [esp], xmm0
push 0x5c221d
sub esp, 0xc
push 0x1a9
push str.C:BuildAgentwork4d643bb3f4c71f96RemoteInstallerInstallerUIutils_collector.cpp
push 0x50
call fcn.004d0210
jmp 0x4a769b
xor eax, eax
mov byte [ebp - 4], 0
mov dword [0x5c4b00], eax
mov ecx, esi
call fcn.004d0150
mov ecx, dword [0x5c4b00]
lea ecx, [ecx + 0xd0]
call fcn.004d0140
mov eax, dword [0x5c4b00]
push edi
push dword [ebp - 0x238]
mov ecx, dword [eax]
push str.Probe_socket_failed:__u:__d
push eax
call dword [ecx + 0x48]
mov ecx, dword [0x5c4b00]
add esp, 0x10
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [0x5c4b00]
lea ecx, [ecx + 0xd0]
call fcn.004d0150
jmp 0x4a7a34
xorps xmm0, xmm0
mov eax, 2
push 0x1bd
movlpd qword [ebp - 0x18], xmm0
mov word [ebp - 0x20], ax
call dword [sym.imp.WSOCK32.dll_htons]
push dword [ebp - 0x238]
mov word [ebp - 0x1e], ax
call dword [sym.imp.WSOCK32.dll_htonl]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x240]
push eax
push 0x8004667e
push esi
mov dword [ebp - 0x240], 1
call dword [sym.imp.WSOCK32.dll_ioctlsocket]
cmp eax, 0xffffffff
jne 0x4a7806
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov edi, eax
call fcn.004d03a0
mov ecx, eax
mov dword [ebp - 0x234], eax
call fcn.004d0140
cmp byte [0x5c2217], 0
jne 0x4a77ba
mov ecx, 0xf0
call fcn.004d0a00
mov dword [ebp - 0x23c], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x4a77af
sub esp, 8
xorps xmm0, xmm0
mov ecx, eax
movsd qword [esp], xmm0
push 0x5c2217
sub esp, 0xc
push 0x1b6
push str.C:BuildAgentwork4d643bb3f4c71f96RemoteInstallerInstallerUIutils_collector.cpp
push 0x50
call fcn.004d0210
jmp 0x4a77b1
xor eax, eax
mov byte [ebp - 4], 0
mov dword [0x5c4ae0], eax
mov ecx, dword [ebp - 0x234]
call fcn.004d0150
mov ecx, dword [0x5c4ae0]
lea ecx, [ecx + 0xd0]
call fcn.004d0140
mov eax, dword [0x5c4ae0]
push edi
push dword [ebp - 0x238]
mov ecx, dword [eax]
push str.Probe_ioctl_failed:__u:__d
push eax
call dword [ecx + 0x48]
mov ecx, dword [0x5c4ae0]
add esp, 0x10
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [0x5c4ae0]
jmp 0x4a7a22
push 0x10
lea eax, [ebp - 0x20]
push eax
push esi
call dword [sym.imp.WSOCK32.dll_connect]
cmp eax, 0xffffffff
jne 0x4a796d
mov ecx, dword [ebp + 8]
mov eax, 0x10624dd3
mul ecx
mov dword [ebp - 0x124], esi
shr edx, 6
imul eax, edx, 0x3e8
mov dword [ebp - 0x24c], edx
mov dword [ebp - 0x128], 1
mov dword [ebp - 0x22c], esi
mov dword [ebp - 0x230], 1
sub ecx, eax
imul eax, ecx, 0x3e8
mov dword [ebp - 0x248], eax
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x128]
push eax
push 0
push 0
call dword [sym.imp.WSOCK32.dll_select]
cmp eax, 0xffffffff
jne 0x4a7945
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov edi, eax
call fcn.004d03a0
mov ecx, eax
mov dword [ebp - 0x234], eax
call fcn.004d0140
cmp byte [0x5c221a], 0
jne 0x4a78f9
mov ecx, 0xf0
call fcn.004d0a00
mov dword [ebp - 0x23c], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x4a78ee
sub esp, 8
xorps xmm0, xmm0
mov ecx, eax
movsd qword [esp], xmm0
push 0x5c221a
sub esp, 0xc
push 0x1cd
push str.C:BuildAgentwork4d643bb3f4c71f96RemoteInstallerInstallerUIutils_collector.cpp
push 0x50
call fcn.004d0210
jmp 0x4a78f0
xor eax, eax
mov byte [ebp - 4], 0
mov dword [0x5c4adc], eax
mov ecx, dword [ebp - 0x234]
call fcn.004d0150
mov ecx, dword [0x5c4adc]
lea ecx, [ecx + 0xd0]
call fcn.004d0140
mov eax, dword [0x5c4adc]
push edi
push dword [ebp - 0x238]
mov ecx, dword [eax]
push str.Probe_select_failed:__u:__d
push eax
call dword [ecx + 0x48]
mov ecx, dword [0x5c4adc]
add esp, 0x10
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [0x5c4adc]
jmp 0x4a7a22
test eax, eax
je 0x4a7a2d
lea eax, [ebp - 0x128]
push eax
push esi
call dword [sym.imp.WSOCK32.dll___WSAFDIsSet]
test eax, eax
movzx ebx, bl
mov ecx, 1
cmovne ebx, ecx
jmp 0x4a7a2d
call dword [sym.imp.WSOCK32.dll_WSAGetLastError]
mov edi, eax
call fcn.004d03a0
mov ecx, eax
mov dword [ebp - 0x234], eax
call fcn.004d0140
cmp byte [0x5c2216], 0
jne 0x4a79db
mov ecx, 0xf0
call fcn.004d0a00
mov dword [ebp - 0x23c], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x4a79d0
sub esp, 8
xorps xmm0, xmm0
mov ecx, eax
movsd qword [esp], xmm0
push 0x5c2216
sub esp, 0xc
push 0x1dd
push str.C:BuildAgentwork4d643bb3f4c71f96RemoteInstallerInstallerUIutils_collector.cpp
push 0x50
call fcn.004d0210
jmp 0x4a79d2
xor eax, eax
mov byte [ebp - 4], 0
mov dword [0x5c4ac4], eax
mov ecx, dword [ebp - 0x234]
call fcn.004d0150
mov ecx, dword [0x5c4ac4]
lea ecx, [ecx + 0xd0]
call fcn.004d0140
mov eax, dword [0x5c4ac4]
push edi
push dword [ebp - 0x238]
mov ecx, dword [eax]
push str.Probe_connect_failed:__u:__d
push eax
call dword [ecx + 0x48]
mov ecx, dword [0x5c4ac4]
add esp, 0x10
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [0x5c4ac4]
lea ecx, [ecx + 0xd0]
call fcn.004d0150
push esi
call dword [sym.imp.WSOCK32.dll_closesocket]
mov eax, dword [ebp - 0x244]
test eax, eax
je 0x4a7a40
mov dword [eax], edi
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004eabba
mov esp, ebp
pop ebp
ret