Function at 0x46dd90
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
mov eax, dword [0x62aabc]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
test eax, eax
je 0x46deab
test edi, edi
je 0x46deab
movzx eax, word [eax + 8]
sub eax, 2
je 0x46df2a
sub eax, 0x15
jne 0x46deab
mov esi, dword [sym.imp.WS2_32.dll_inet_pton]
lea eax, [ebp - 0x68]
push eax
push 0x62d198
push 0x17
call esi
test eax, eax
je 0x46dfd3
lea eax, [ebp - 0x58]
push eax
push 0x62d1e0
push 0x17
call esi
test eax, eax
je 0x46dfd3
mov eax, dword [edi]
xor ebx, ebx
mov dword [ebp - 0x70], eax
test eax, eax
je 0x46deab
mov eax, dword [edi + 8]
mov dword [ebp - 0x6c], eax
lea edi, [eax + 0x30]
cmp byte [edi], 0xfe
jne 0x46de2f
mov al, byte [edi + 1]
and al, 0xc0
cmp al, 0x80
jne 0x46de2f
mov ecx, dword [0x62d1dc]
mov al, 1
jmp 0x46de37
mov ecx, dword [0x62d224]
xor al, al
mov esi, ecx
mov dword [ebp - 0x74], ecx
shr esi, 3
lea edx, [ebp - 0x68]
test al, al
lea ecx, [ebp - 0x58]
cmovne ecx, edx
mov edx, edi
sub esi, 4
jb 0x46de62
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x46de67
add edx, 4
add ecx, 4
sub esi, 4
jae 0x46de51
cmp esi, 0xfffffffc
je 0x46de94
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x46debe
cmp esi, 0xfffffffd
je 0x46de94
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x46debe
cmp esi, 0xfffffffe
je 0x46de94
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x46debe
cmp esi, 0xffffffff
je 0x46de94
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
jne 0x46debe
add dword [ebp - 0x6c], 0xa8
inc ebx
add edi, 0xa8
cmp ebx, dword [ebp - 0x70]
jb 0x46de17
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054f742
mov esp, ebp
pop ebp
ret
push 0x41
lea eax, [ebp - 0x48]
push eax
push edi
push 0x17
call sub.WS2_32.dll_inet_ntop
mov eax, dword [ebp - 0x6c]
cmp byte [eax + 0x30], 0xfe
jne 0x46dee2
mov al, byte [eax + 0x31]
and al, 0xc0
cmp al, 0x80
jne 0x46dee2
mov cl, 1
jmp 0x46dee4
xor cl, cl
push dword [ebp - 0x74]
test cl, cl
mov eax, 0x62d198
mov edx, 0x62d1e0
cmove eax, edx
push eax
lea eax, [ebp - 0x48]
push eax
push str.DeliveryURL__s_is_invalid._nIt_is_not_in_the_expected_network_segment__IPv6:__s__prefix:__d__n
push 0x520
push str.D:UsersphiliDropboxDevelopmentlibpupnppupnpupnp_srcgenagena_device.c
push 2
push 0
call fcn.00417540
add esp, 0x20
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054f742
mov esp, ebp
pop ebp
ret
mov esi, dword [sym.imp.WS2_32.dll_inet_pton]
lea eax, [ebp - 0x7c]
push eax
push 0x62d164
push 2
call esi
test eax, eax
je 0x46dfd3
lea eax, [ebp - 0x78]
push eax
push 0x62d17c
push 2
call esi
test eax, eax
je 0x46dfd3
mov ebx, dword [edi]
xor esi, esi
test ebx, ebx
je 0x46deab
mov eax, dword [ebp - 0x78]
mov ecx, eax
and ecx, dword [ebp - 0x7c]
mov edx, dword [edi + 8]
mov edi, ecx
add edx, 0x2c
mov ecx, dword [edx]
and ecx, eax
cmp ecx, edi
jne 0x46df9c
inc esi
add edx, 0xa8
cmp esi, ebx
jb 0x46df76
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0054f742
mov esp, ebp
pop ebp
ret
push 0x41
lea eax, [ebp - 0x48]
push eax
push edx
push 2
call sub.WS2_32.dll_inet_ntop
push 0x62d17c
push 0x62d164
lea eax, [ebp - 0x48]
push eax
push str.DeliveryURL__s_is_invalid._nIt_is_not_in_the_expected_network_segment__IPv4:__s__netmask:__s__n
push 0x4f6
push str.D:UsersphiliDropboxDevelopmentlibpupnppupnpupnp_srcgenagena_device.c
push 2
push 0
call fcn.00417540
add esp, 0x20
mov ecx, dword [ebp - 4]
or eax, 0xffffffff
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0054f742
mov esp, ebp
pop ebp
ret