Function at 0x10032730
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0x10]
sub esp, 0x10c
push ebx
push edi
mov edi, dword [ebp + 8]
mov byte [eax], 0
test edi, edi
je 0x1003299c
mov bl, byte [edi]
test bl, bl
je 0x1003299c
push esi
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x10032993
cmp byte [esi], 0
je 0x10032993
xor eax, eax
mov ecx, esi
mov dword [ebp - 4], eax
mov eax, 0x10069b1c
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10032797
test dl, dl
je 0x10032793
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10032797
add eax, 2
add ecx, 2
test dl, dl
jne 0x10032777
xor eax, eax
jmp 0x1003279c
sbb eax, eax
or eax, 1
test eax, eax
je 0x1003298a
cmp bl, 0x5b
jne 0x100327fc
push 0x5d
push edi
call fcn.10051a80
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x10032993
inc edi
sub ebx, edi
mov dword [ebp - 8], ebx
cmp ebx, 0x80
jae 0x10032993
push ebx
lea eax, [ebp - 0x10c]
push edi
push eax
call fcn.10050b30
lea edx, [ebp - 0x10c]
mov byte [ebp + ebx - 0x10c], 0
mov eax, 2
mov dword [ebp + 8], edx
add esp, 0xc
mov dword [ebp - 4], eax
jmp 0x10032831
mov ebx, edi
lea ecx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x10032801
lea eax, [ebp - 0xc]
sub ebx, ecx
push eax
push edi
push 2
mov dword [ebp - 8], ebx
call dword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
jne 0x10032824
mov dword [ebp - 4], eax
jmp 0x1003282f
cmp byte [ebx + edi - 1], 0x2e
jne 0x1003282f
dec ebx
mov dword [ebp - 8], ebx
mov edx, edi
cmp byte [esi], 0
je 0x10032993
lea ebx, [ebx]
mov al, byte [esi]
xor edi, edi
test al, al
je 0x10032858
cmp al, 0x20
je 0x10032850
cmp al, 9
jne 0x10032858
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x10032848
mov al, byte [esi]
mov ecx, esi
test al, al
je 0x10032955
cmp al, 0x20
je 0x10032879
cmp al, 9
je 0x10032879
cmp al, 0x2c
je 0x10032879
mov al, byte [esi + 1]
inc esi
inc edi
test al, al
jne 0x10032864
test edi, edi
je 0x10032955
mov eax, dword [ebp - 4]
test eax, eax
je 0x10032902
dec eax
cmp eax, 1
ja 0x10032955
xor ebx, ebx
cmp edi, 0x80
jae 0x10032955
push edi
push ecx
lea eax, [ebp - 0x8c]
push eax
call fcn.10050b30
lea eax, [ebp - 0x8c]
mov byte [ebp + edi - 0x8c], bl
push 0x2f
push eax
call fcn.10051a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x100328dd
lea ecx, [edi + 1]
push ecx
call fcn.100541d5
add esp, 4
mov byte [edi], 0
mov ebx, eax
cmp dword [ebp - 4], 2
lea eax, [ebp - 0x8c]
push ebx
push eax
push dword [ebp + 8]
jne 0x100328f8
call fcn.10032a50
add esp, 0xc
jmp 0x10032951
call fcn.100329b0
add esp, 0xc
jmp 0x10032951
cmp byte [ecx + edi - 1], 0x2e
jne 0x1003290a
dec edi
test edi, edi
je 0x10032915
cmp byte [ecx], 0x2e
jne 0x10032915
inc ecx
dec edi
cmp edi, ebx
jne 0x10032926
push ebx
push edx
push ecx
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
jmp 0x1003294c
jae 0x10032955
mov eax, ebx
sub eax, edi
add eax, edx
cmp byte [eax - 1], 0x2e
jne 0x1003294a
push edi
push eax
push ecx
call sym.libcurl.dll_curl_strnequal
add esp, 0xc
test eax, eax
je 0x1003294a
mov eax, 1
jmp 0x1003294c
xor eax, eax
test eax, eax
setne al
test al, al
jne 0x1003298a
mov al, byte [esi]
cmp al, 0x20
je 0x1003295f
cmp al, 9
jne 0x10032962
inc esi
jmp 0x10032955
mov al, byte [esi]
test al, al
je 0x1003297a
cmp al, 0x2c
je 0x10032974
mov eax, dword [ebp + 0x10]
mov byte [eax], 1
jmp 0x1003297a
inc esi
cmp byte [esi], 0x2c
je 0x10032974
cmp byte [esi], 0
je 0x10032993
mov ebx, dword [ebp - 8]
mov edx, dword [ebp + 8]
jmp 0x10032840
pop esi
pop edi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret
pop esi
pop edi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret