Function at 0x10017a20
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x19c
mov eax, dword [0x1007d820]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x18c], 0
movzx eax, word [edi + 0x17a]
mov ebx, dword [edi + 0x54c]
movzx esi, word [edi + 0x178]
mov dword [ebp - 0x19c], eax
test ebx, ebx
jne 0x10017a7d
test si, si
je 0x10017eed
push 0x80
lea eax, [ebp - 0x184]
push 0
push eax
call fcn.10064710
add esp, 0xc
test ebx, ebx
je 0x10017e11
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10017aa0
sub ecx, edx
cmp ecx, 0xff
jae 0x10017e11
push 0xff
mov byte [ebp - 0x104], al
lea eax, [ebp - 0x103]
push 0
push eax
call fcn.10064710
mov edx, dword [0x1007c0ec]
add esp, 0xc
mov ecx, edx
mov byte [ebp - 0x185], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x198], eax
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10017af0
sub ecx, dword [ebp - 0x198]
push ecx
push ebx
push edx
call fcn.10064a00
add esp, 0xc
test eax, eax
jne 0x10017ba8
mov ecx, dword [0x1007c0ec]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10017b20
sub ecx, edx
mov byte [ebp - 0x185], 1
add ebx, ecx
mov ecx, dword [ebp - 0x194]
lea eax, [ebp - 0x104]
push pe_nt_image_headers32
push eax
push ebx
push dword [ecx + 0x3a4]
mov ecx, dword [ebp + 0x14]
push dword [ebp + 0x18]
push ecx
call sym.libcurl.dll_curl_pushheader_byname
add esp, 0x18
sub eax, 0
je 0x10017c31
dec eax
je 0x10017c1b
dec eax
je 0x10017bfd
cmp byte [ebp - 0x185], 0
jne 0x10017de5
mov ecx, dword [ebp - 0x194]
mov al, byte [ecx + 0x3af]
mov byte [ebp - 0x185], al
mov eax, dword [ebp + 0x14]
cmp eax, 2
jne 0x10017c63
mov byte [ecx + 0x3af], 1
jmp 0x10017c6f
mov edx, dword [0x1007c0f0]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x198], eax
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10017bc0
sub ecx, dword [ebp - 0x198]
push ecx
push ebx
push edx
call fcn.10064a00
add esp, 0xc
test eax, eax
jne 0x10017b32
mov ecx, dword [0x1007c0f0]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10017bf0
sub ecx, edx
add ebx, ecx
jmp 0x10017b7e
push dword [ebp + 0x14]
lea eax, [ebp - 0x104]
push eax
push ebx
push 0x10001aa4
push edi
call fcn.100213c0
add esp, 0x14
jmp 0x10017d10
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100631a7
mov esp, ebp
pop ebp
ret
cmp byte [ebp - 0x185], 0
je 0x10017b7e
push ebx
push 0x10001a84
push edi
call fcn.10021300
add esp, 0xc
mov eax, 0x2d
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100631a7
mov esp, ebp
pop ebp
ret
cmp eax, 0x17
jne 0x10017c6f
mov byte [ecx + 0x3af], 2
lea eax, [ebp - 0x18c]
push eax
push 0
push 0x50
push ebx
push edi
call fcn.1002f850
add esp, 0x14
cmp eax, 1
jne 0x10017c99
lea eax, [ebp - 0x18c]
push eax
push edi
call fcn.10013760
add esp, 8
mov ecx, dword [ebp - 0x194]
mov al, byte [ebp - 0x185]
mov byte [ecx + 0x3af], al
mov eax, dword [ebp - 0x18c]
test eax, eax
je 0x10017de5
push pe_nt_image_headers32
lea ecx, [ebp - 0x104]
push ecx
push dword [eax]
call fcn.1002f800
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
push dword [eax + 4]
lea eax, [ebp - 0x104]
push eax
push dword [ebp + 0x14]
push ebx
push 0x10001ad8
push edi
call fcn.100213c0
push dword [ebp - 0x18c]
push edi
call fcn.1002fbf0
mov eax, dword [ebp - 0x18c]
add esp, 0x2c
mov ecx, dword [ebp + 0x14]
mov eax, dword [eax]
cmp ecx, dword [eax + 4]
jne 0x10017c1b
mov eax, dword [ebp + 0x14]
cmp eax, 0x17
jne 0x10017d97
lea eax, [ebp - 0x104]
push 0x25
push eax
call fcn.10064a80
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x10017d33
mov byte [ebx], 0
inc ebx
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x104]
push eax
push 0x17
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x10017d87
mov eax, 0x17
push esi
mov word [ebp - 0x184], ax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x182], ax
test ebx, ebx
je 0x10017d87
push 0xa
push 0
push ebx
call fcn.1006403c
add esp, 0xc
cmp eax, 0xffffffff
ja 0x10017c1b
mov dword [ebp - 0x16c], eax
mov eax, 0x1c
mov dword [ebp - 0x190], eax
jmp 0x10017e64
cmp eax, 2
jne 0x10017e62
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x104]
push eax
push 2
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jle 0x10017e62
mov eax, 2
push esi
mov word [ebp - 0x184], ax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x182], ax
mov eax, 0x10
mov dword [ebp - 0x190], eax
jmp 0x10017e64
push ebx
push 0x10001b08
push edi
mov byte [edi + 0xd03], 0
call fcn.10021300
add esp, 0xc
mov eax, 0x2d
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100631a7
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
cmp eax, 0x17
jne 0x10017e3b
push esi
mov word [ebp - 0x184], ax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x182], ax
mov eax, 0x1c
mov dword [ebp - 0x190], eax
jmp 0x10017e64
cmp eax, 2
jne 0x10017e62
push esi
mov word [ebp - 0x184], ax
call dword [sym.imp.WS2_32.dll_htons]
mov word [ebp - 0x182], ax
mov eax, 0x10
mov dword [ebp - 0x190], eax
jmp 0x10017e64
xor eax, eax
push eax
lea eax, [ebp - 0x184]
push eax
push dword [ebp + 0x10]
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
jns 0x10017ece
mov ebx, dword [sym.imp.WS2_32.dll_ntohs]
nop
mov eax, dword [ebp - 0x19c]
dec eax
mov dword [ebp - 0x19c], eax
test eax, eax
jle 0x10017f00
inc esi
test si, si
je 0x10017f00
movzx eax, si
dec eax
push eax
push 0x10001b30
push edi
call fcn.100213c0
add esp, 0xc
push esi
call ebx
push dword [ebp - 0x190]
mov word [ebp - 0x182], ax
lea eax, [ebp - 0x184]
push eax
push dword [ebp + 0x10]
call dword [sym.imp.WS2_32.dll_bind]
test eax, eax
js 0x10017e80
movzx eax, si
push eax
push 0x10001b20
push edi
call fcn.100213c0
mov eax, dword [ebp - 0x194]
add esp, 0xc
mov byte [eax + 0x255], 1
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100631a7
mov esp, ebp
pop ebp
ret
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov esi, eax
lea eax, [ebp - 0x104]
push pe_nt_image_headers32
push eax
push esi
mov dword [edi + 0x8a8], esi
call fcn.10054020
push eax
push esi
push 0x10001b5c
push edi
call fcn.10021300
mov ecx, dword [ebp - 4]
add esp, 0x1c
xor ecx, ebp
mov eax, 0x2d
pop edi
pop esi
pop ebx
call fcn.100631a7
mov esp, ebp
pop ebp
ret