Function at 0x44df05
Capabilities:
Connect socket
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x214
push ebx
push esi
push edi
xor esi, esi
push 0x58c
mov dword [ebp - 0x14], esi
call fcn.0043e8d8
mov edi, eax
pop ecx
cmp edi, esi
mov dword [ebp - 4], edi
je 0x44e5df
lea eax, [ebp - 0x110]
push 0x40
push eax
push dword [ebp + 0xc]
call fcn.00449ca7
add esp, 0xc
call fcn.0044980e
push 1
mov edx, eax
pop ecx
and edx, ecx
cmp dl, cl
jne 0x44df5a
push 2
mov dword [ebp - 0xc], ecx
pop ebx
jmp 0x44df6a
push 2
pop ebx
and eax, ebx
cmp al, bl
jne 0x44e5d8
mov dword [ebp - 0xc], ebx
call fcn.004327f3
test eax, eax
jge 0x44dfa4
cmp dword [ebp - 0xc], ebx
jne 0x44df82
push 0x3e8
push ebx
push 6
jmp 0x44df85
push esi
push ebx
push ebx
call fcn.00447aa0
add esp, 0xc
cmp eax, esi
jge 0x44df9d
push 0x1a
push 0xa79
jmp 0x44e5c0
push eax
call fcn.004327cf
pop ecx
cmp dword [ebp - 0xc], ebx
jne 0x44dfd9
push dword [ebp + 0xc]
push str.Going_to_send_msg_to_host__s_n
call fcn.0049845c
lea eax, [ebp - 0x88]
push esi
push eax
push dword [ebp + 0xc]
call fcn.0044e6dd
add esp, 0x14
test eax, eax
je 0x44e000
push 0x19
push 0xa8a
jmp 0x44e5c0
lea eax, [ebp - 0x88]
push esi
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.0043e4f1
add esp, 0xc
test eax, eax
je 0x44e000
push 0x19
push 0xa96
jmp 0x44e5c0
cmp dword [0x5202d0], esi
je 0x44e01e
call fcn.0043278d
cmp eax, esi
je 0x44e018
push eax
call fcn.0045060d
pop ecx
mov dword [0x5202d0], esi
call fcn.0043276c
mov dword [0x54e220], eax
call fcn.0043278d
cmp eax, esi
mov dword [ebp - 8], eax
je 0x44e5b9
lea ecx, [ebp - 0x88]
push ecx
push dword [eax]
call fcn.0044e5e6
mov edi, eax
pop ecx
cmp edi, esi
pop ecx
jne 0x44e10f
push 0x7c
call fcn.004dd48b
mov edi, eax
pop ecx
cmp edi, esi
jne 0x44e07c
push 0x12
push 0xac1
push dword [0x5202bc]
push 4
call fcn.0043ed15
push dword [ebp - 4]
jmp 0x44e5ce
cmp dword [ebp - 0xc], ebx
lea esi, [edi + 8]
push 0x10
push 0
push esi
jne 0x44e1b6
call fcn.004d9ad0
mov word [esi], 6
call fcn.00432814
push eax
call fcn.00447b98
mov word [esi + 0xc], ax
lea eax, [ebp - 0x88]
push eax
push dword [ebp + 0xc]
push str.host__s_has_IPX_address__s_n
call fcn.0049845c
lea eax, [ebp - 0x88]
push esi
push eax
call fcn.0044e66d
add esp, 0x24
test eax, eax
jne 0x44e0da
push 0x19
push 0xad2
jmp 0x44e1ef
lea eax, [ebp - 0x88]
push eax
push str.VLM_IPXaddrtosockaddr__s__succeeded._n
call fcn.0049845c
pop ecx
pop ecx
lea eax, [ebp - 0x88]
push eax
lea eax, [edi + 0x18]
push eax
call fcn.004dd750
push edi
mov dword [edi], 1
push dword [ebp - 8]
call fcn.00450615
add esp, 0x10
mov eax, dword [edi]
push dword [ebp + 8]
and eax, 0x1fff
mov dword [0x54e218], eax
call fcn.004d9400
inc eax
push eax
push dword [ebp + 8]
push 0x54e224
call fcn.004dcb20
mov esi, 0x598
push esi
push 0
push 0x54d618
call fcn.004d9ad0
add esp, 0x1c
call fcn.00432bd0
fld1
mov dword [ebp + 0xc], eax
lea eax, [ebp - 0x28]
fld1
mov ecx, ebx
fstp dword [ebp - 0x2c]
fld dword [eax - 4]
fmul dword [0x502f58]
fst dword [eax]
add eax, 4
dec ecx
faddp st(1)
jne 0x44e15b
fild dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp + 8], ebx
fld st(0)
fmul dword [ebp + ebx*4 - 0x2c]
fdiv st(2)
fld st(0)
call fcn.004dec80
cmp dword [ebp + 0xc], 0
lea ecx, [ebp + ebx*4 - 0x48]
mov edx, eax
mov dword [ebp - 8], edx
mov dword [ecx], edx
jle 0x44e212
fild dword [ebp - 8]
fsubr st(1)
fcomp qword [0x502f50]
fnstsw ax
sahf
fstp st(0)
jbe 0x44e1ab
inc edx
mov dword [ecx], edx
push 1
pop eax
cmp dword [ecx], eax
jge 0x44e214
mov dword [ecx], eax
jmp 0x44e214
call fcn.004d9ad0
mov word [esi], bx
call fcn.00432814
push eax
call fcn.00447b98
mov word [edi + 0xa], ax
lea eax, [ebp - 0x88]
push eax
call fcn.00447a5a
add esp, 0x14
cmp eax, 0xffffffff
mov dword [edi + 0xc], eax
jne 0x44e0ed
push 0x19
push 0xaf4
push dword [0x5202bc]
push 4
call fcn.0043ed15
push dword [ebp - 4]
call fcn.004dce85
push edi
call fcn.004dce85
add esp, 0x18
jmp 0x44e5df
fstp st(0)
mov eax, dword [ecx]
add dword [ebp + 8], eax
inc ebx
cmp ebx, 2
jl 0x44e176
mov ecx, dword [ebp + 0xc]
lea eax, [ebp + ebx*4 - 0x48]
sub ecx, dword [ebp + 8]
fstp st(0)
fstp st(0)
mov dword [eax], ecx
jns 0x44e23b
xor edx, edx
mov dword [eax], edx
jmp 0x44e23d
xor edx, edx
cmp dword [ebp + 0xc], edx
jle 0x44e24b
push 1
pop ecx
cmp dword [eax], ecx
jge 0x44e24b
mov dword [eax], ecx
push esi
push edx
push 0x54dc78
mov dword [ebp - 8], edx
mov dword [ebp + 8], edx
mov dword [ebp + 0xc], 1
call fcn.004d9ad0
push dword [0x54e218]
call fcn.00447bba
push dword [0x54e21c]
mov dword [0x54dc78], eax
call fcn.00447bba
push dword [0x54e220]
mov dword [0x54dc7c], eax
call fcn.00447bba
push 0x54e224
push 0x54dc84
mov dword [0x54dc80], eax
call fcn.004dd750
lea eax, [ebp - 0x48]
add esp, 0x20
mov dword [ebp - 0x10], eax
cmp dword [ebp + 8], 3
jge 0x44e50c
cmp dword [ebp - 0xc], 2
jne 0x44e2f0
lea eax, [edi + 8]
push 0x10
push eax
call fcn.004327f3
push eax
call sub.WS2_32.dll_connect
xor ebx, ebx
cmp dword [ebp + 0xc], ebx
je 0x44e31c
push ebx
push esi
push 0x54dc78
call fcn.004327f3
push eax
call sub.WS2_32.dll_send
cmp eax, esi
jne 0x44e524
jmp 0x44e31c
cmp dword [ebp + 0xc], 0
je 0x44e31a
lea eax, [edi + 8]
push 0x10
push eax
push 0
push esi
push 0x54dc78
call fcn.004327f3
push eax
call fcn.00447b2e
add esp, 0x18
cmp eax, esi
jne 0x44e535
xor ebx, ebx
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x214], ebx
call fcn.004327f3
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x1c], ebx
mov dword [ebp + ecx*4 - 0x210], eax
mov eax, dword [ebp - 0x10]
inc dword [ebp - 0x214]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
push ebx
lea eax, [ebp - 0x214]
push ebx
push eax
call fcn.004327f3
inc eax
push eax
call fcn.00447aca
add esp, 0x14
cmp eax, 0xffffffff
je 0x44e4f2
cmp eax, ebx
je 0x44e4df
push 0x10
pop eax
mov dword [ebp - 0x18], eax
push eax
lea eax, [ebp - 0x3c]
push ebx
push eax
call fcn.004d9ad0
push esi
push ebx
push 0x54d080
call fcn.004d9ad0
add esp, 0x18
cmp dword [ebp - 0xc], 2
jne 0x44e3ba
push ebx
push esi
push 0x54d080
call fcn.004327f3
push eax
call sub.WS2_32.dll_recv
cmp eax, esi
jne 0x44e56f
jmp 0x44e488
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x3c]
push eax
push ebx
push esi
push 0x54d080
call fcn.004327f3
push eax
call fcn.00447b63
add esp, 0x18
cmp eax, 0xffffffff
jne 0x44e488
call sub.WS2_32.dll_WSAGetLastError
cmp eax, 0x2746
jne 0x44e587
push dword [ebp - 0x38]
call fcn.00447a81
push 0x20
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.0043f6c3
mov eax, dword [0x54e7b8]
push eax
mov dword [ebp - 8], eax
call fcn.004505be
add esp, 0x14
test eax, eax
jne 0x44e45c
push dword [ebp - 8]
call fcn.004505c8
push dword [eax + 4]
call fcn.00447a81
push 0x20
push eax
lea eax, [ebp - 0xd0]
push eax
call fcn.0043f6c3
lea eax, [ebp - 0xd0]
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.004dd6c0
add esp, 0x1c
test eax, eax
jne 0x44e45c
mov dword [ebp - 0x14], 1
cmp dword [ebp - 0x14], 1
jne 0x44e488
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x3c]
push eax
push ebx
push esi
push 0x54d080
call fcn.004327f3
push eax
call fcn.00447b63
add esp, 0x18
cmp eax, 0xffffffff
je 0x44e57b
push dword [0x54d080]
call fcn.00447bba
push dword [0x54d084]
mov dword [0x54d618], eax
call fcn.00447bba
push dword [0x54d088]
mov dword [0x54d61c], eax
call fcn.00447bba
push 0x54d08c
push 0x54d624
mov dword [0x54d620], eax
call fcn.004dd750
mov eax, dword [0x54d618]
add esp, 0x14
cmp eax, dword [0x54e218]
mov dword [ebp - 8], ebx
je 0x44e505
jmp 0x44e31f
inc dword [ebp + 8]
add dword [ebp - 0x10], 4
mov dword [ebp + 0xc], 1
jmp 0x44e2ac
call fcn.004df2f0
cmp dword [eax], 4
jne 0x44e593
jmp 0x44e2ac
mov dword [ebp - 8], 1
inc dword [edi]
cmp dword [ebp - 8], 1
je 0x44e59f
push 0x1b
push 0xc50
jmp 0x44e067
call sub.WS2_32.dll_WSAGetLastError
push 0x34
push 0xb7a
jmp 0x44e067
push 0x34
push 0xb89
push dword [0x5202bc]
push 4
call fcn.0043ed15
call fcn.00447d17
push 0x34
push 0xb90
push dword [0x5202bc]
push 4
call fcn.0043ed15
push dword [ebp - 4]
call fcn.004dce85
add esp, 0x24
jmp 0x44e5df
push 0x35
push 0xbdc
jmp 0x44e067
push 0x35
push 0xc0d
jmp 0x44e067
push 0x35
push 0xc16
jmp 0x44e067
push 0x3c
push 0xbb5
jmp 0x44e067
push 0x58c
push 0x54d624
push dword [ebp - 4]
call fcn.004dded0
mov eax, dword [ebp - 4]
add esp, 0xc
jmp 0x44e5e1
push 0x5e
push 0xab6
push dword [0x5202bc]
push 4
call fcn.0043ed15
push edi
call fcn.004dce85
add esp, 0x14
jmp 0x44e5df
push edi
call fcn.004dce85
pop ecx
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret