Function at 0x4a1ab0
Capabilities:
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.WSOCK32.dll_inet_addr]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4a1ae1
cmp dword [ebp - 8], 0xffffffff
jne 0x4a1db5
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
mov al, byte [edx]
mov byte [ebp - 0x1d], al
movsx ecx, byte [ebp - 0x1d]
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
cmp ecx, 0x20
jne 0x4a1b03
jmp 0x4a1ae7
mov eax, dword [ebp - 0x14]
sub eax, 1
mov dword [ebp - 0x14], eax
push 0x2e
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.MSVCR80.dll_strchr]
add esp, 8
test eax, eax
je 0x4a1dac
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x2c], edx
push 0x52d8ac
lea eax, [ebp - 0x28]
push eax
call sub.MSVCR80.dll_strcpy
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x2c]
mov al, byte [edx]
mov byte [ebp - 0x1d], al
movsx ecx, byte [ebp - 0x1d]
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
test ecx, ecx
je 0x4a1c91
movsx eax, byte [ebp - 0x1d]
cmp eax, 0x2e
jne 0x4a1c4b
mov ecx, dword [ebp - 0x18]
mov byte [ecx], 0
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
push 0x52d984
lea eax, [ebp - 0x28]
push eax
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1bb6
push 0x52da08
lea ecx, [ebp - 0x28]
push ecx
call sub.MSVCR80.dll_strcpy
add esp, 8
jmp 0x4a1bdc
push 0x52da0c
lea edx, [ebp - 0x28]
push edx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1bdc
push 0x52da10
lea eax, [ebp - 0x28]
push eax
call sub.MSVCR80.dll_strcpy
add esp, 8
cmp dword [ebp - 0x30], 0
jne 0x4a1bf4
lea ecx, [ebp - 0x28]
push ecx
lea edx, [ebp - 0xc]
push edx
call sub.MSVCR80.dll_strcpy
add esp, 8
jmp 0x4a1c22
cmp dword [ebp - 0x30], 1
jne 0x4a1c0c
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x1c]
push ecx
call sub.MSVCR80.dll_strcpy
add esp, 8
jmp 0x4a1c22
cmp dword [ebp - 0x30], 2
jne 0x4a1c22
lea edx, [ebp - 0x28]
push edx
lea eax, [ebp - 0x24]
push eax
call sub.MSVCR80.dll_strcpy
add esp, 8
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
push 0x52da14
lea edx, [ebp - 0x28]
push edx
call sub.MSVCR80.dll_strcpy
add esp, 8
lea eax, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x38], 0
jmp 0x4a1c8c
movsx ecx, byte [ebp - 0x1d]
push ecx
call dword [sym.imp.MSVCR80.dll_isdigit]
add esp, 4
test eax, eax
je 0x4a1c8a
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 3
jle 0x4a1c77
jmp 0x4a1c91
mov ecx, dword [ebp - 0x18]
mov dl, byte [ebp - 0x1d]
mov byte [ecx], dl
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
jmp 0x4a1c8c
jmp 0x4a1c91
jmp 0x4a1b55
cmp dword [ebp - 0x30], 3
jne 0x4a1cb6
mov ecx, dword [ebp - 0x18]
mov byte [ecx], 0
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x10]
push ecx
call sub.MSVCR80.dll_strcpy
add esp, 8
cmp dword [ebp - 0x30], 3
jne 0x4a1da3
cmp dword [ebp - 0x34], 0
jl 0x4a1da3
cmp dword [ebp - 0x34], 0xc
jg 0x4a1da3
cmp dword [ebp - 8], 0
jne 0x4a1d37
push 0x52da18
lea edx, [ebp - 0xc]
push edx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d37
push 0x52da1c
lea eax, [ebp - 0x1c]
push eax
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d37
push 0x52da20
lea ecx, [ebp - 0x24]
push ecx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d37
push 0x52da24
lea edx, [ebp - 0x10]
push edx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d37
mov dword [ebp - 4], 1
jmp 0x4a1da1
cmp dword [ebp - 8], 0xffffffff
jne 0x4a1d9a
push 0x52da28
lea eax, [ebp - 0xc]
push eax
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d9a
push 0x52da2c
lea ecx, [ebp - 0x1c]
push ecx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d9a
push 0x52da30
lea edx, [ebp - 0x24]
push edx
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d9a
push 0x52da34
lea eax, [ebp - 0x10]
push eax
call sub.MSVCR80.dll_strcmp
add esp, 8
test eax, eax
jne 0x4a1d9a
mov dword [ebp - 4], 1
jmp 0x4a1da1
mov dword [ebp - 4], 0
jmp 0x4a1daa
mov dword [ebp - 4], 0
jmp 0x4a1db3
mov dword [ebp - 4], 0
jmp 0x4a1dbc
mov dword [ebp - 4], 1
push 4
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 0xc]
push edx
call sub.MSVCR80.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret