Function at 0x4beb50
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x118
mov eax, dword [0x578704]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x108], edi
mov dword [ebp - 0x114], eax
mov byte [eax], 0
test edi, edi
je 0x4bedfe
mov bl, byte [edi]
test bl, bl
je 0x4bedfe
test esi, esi
je 0x4bedfe
cmp byte [esi], 0
je 0x4bedfe
xor eax, eax
mov ecx, esi
mov dword [ebp - 0x10c], eax
mov eax, 0x55470c
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4bebd0
test dl, dl
je 0x4bebcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4bebd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4bebb0
xor eax, eax
jmp 0x4bebd5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4bebec
pop edi
pop esi
mov al, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004e1d28
mov esp, ebp
pop ebp
ret
cmp bl, 0x5b
jne 0x4bec4d
push 0x5d
push edi
call fcn.004fd0e0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4bedfe
inc edi
sub ebx, edi
mov dword [ebp - 0x110], ebx
cmp ebx, 0x80
jae 0x4bedfe
push ebx
lea eax, [ebp - 0x104]
push edi
push eax
call fcn.004faeb0
lea eax, [ebp - 0x104]
mov byte [ebp + ebx - 0x104], 0
mov ecx, 2
mov dword [ebp - 0x108], eax
add esp, 0xc
mov dword [ebp - 0x10c], ecx
jmp 0x4bec90
mov ebx, edi
lea ecx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x4bec52
lea eax, [ebp - 0x118]
sub ebx, ecx
push eax
push edi
push 2
mov dword [ebp - 0x110], ebx
call dword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
jne 0x4bec80
mov ecx, eax
mov dword [ebp - 0x10c], ecx
jmp 0x4bec90
cmp byte [edi + ebx - 1], 0x2e
jne 0x4bec8e
dec ebx
mov dword [ebp - 0x110], ebx
xor ecx, ecx
cmp byte [esi], 0
je 0x4bedfe
nop dword [eax]
mov al, byte [esi]
xor edi, edi
test al, al
je 0x4becb8
cmp al, 0x20
je 0x4becb0
cmp al, 9
jne 0x4becb8
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x4beca8
mov al, byte [esi]
mov edx, esi
test al, al
je 0x4bedc0
cmp al, 0x20
je 0x4becd9
cmp al, 9
je 0x4becd9
cmp al, 0x2c
je 0x4becd9
mov al, byte [esi + 1]
inc esi
inc edi
test al, al
jne 0x4becc4
test edi, edi
je 0x4bedc0
test ecx, ecx
je 0x4bed5b
xor ebx, ebx
cmp edi, 0x80
jae 0x4bedc0
push edi
push edx
lea eax, [ebp - 0x84]
push eax
call fcn.004faeb0
lea eax, [ebp - 0x84]
mov byte [ebp + edi - 0x84], bl
push 0x2f
push eax
call fcn.004fd0e0
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4bed30
lea ecx, [edi + 1]
push ecx
call fcn.0050302a
add esp, 4
mov byte [edi], 0
mov ebx, eax
cmp dword [ebp - 0x10c], 2
lea eax, [ebp - 0x84]
push ebx
push eax
push dword [ebp - 0x108]
jne 0x4bed51
call fcn.004beec0
add esp, 0xc
jmp 0x4bedb7
call fcn.004bee20
add esp, 0xc
jmp 0x4bedb7
cmp byte [edx + edi - 1], 0x2e
lea eax, [edi - 1]
cmovne eax, edi
mov ecx, eax
test eax, eax
je 0x4bed75
cmp byte [edx], 0x2e
jne 0x4bed75
inc edx
lea ecx, [eax - 1]
cmp ecx, ebx
jne 0x4bed90
push ebx
push dword [ebp - 0x108]
push edx
call sym.Setup.exe_curl_strnequal
add esp, 0xc
test eax, eax
setne al
jmp 0x4bedb7
jae 0x4bedc0
mov eax, dword [ebp - 0x108]
sub eax, ecx
add eax, ebx
cmp byte [eax - 1], 0x2e
jne 0x4bedb5
push ecx
push eax
push edx
call sym.Setup.exe_curl_strnequal
add esp, 0xc
test eax, eax
je 0x4bedb5
mov al, 1
jmp 0x4bedb7
xor al, al
test al, al
jne 0x4bebd9
nop
mov al, byte [esi]
cmp al, 0x20
je 0x4bedca
cmp al, 9
jne 0x4bedcd
inc esi
jmp 0x4bedc0
mov al, byte [esi]
test al, al
je 0x4bede8
cmp al, 0x2c
je 0x4bede2
mov eax, dword [ebp - 0x114]
mov byte [eax], 1
jmp 0x4bede8
inc esi
cmp byte [esi], 0x2c
je 0x4bede2
cmp byte [esi], 0
je 0x4bedfe
mov ebx, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x10c]
jmp 0x4beca0
mov ecx, dword [ebp - 4]
xor al, al
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004e1d28
mov esp, ebp
pop ebp
ret