Function at 0x5b47a0
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [ebp + 0xc]
push ebx
push esi
push edi
cmp dword [eax], 0x8f7f9c
mov ecx, dword [eax + 8]
mov dword [ebp - 8], ecx
mov ecx, dword [eax + 0xc]
jne 0x5b47ce
mov eax, dword [ecx + 0x7c]
mov esi, dword [ecx + 0x78]
mov dword [ebp + 0xc], eax
mov eax, dword [ecx + 0x80]
jmp 0x5b47dd
mov eax, dword [ecx + 0x34]
mov esi, dword [ecx + 0x30]
mov dword [ebp + 0xc], eax
mov eax, dword [ecx + 0x24c]
mov dword [ebp - 4], eax
test esi, esi
je 0x5b49b9
mov edi, dword [ebp + 8]
mov ebx, dword [edi]
test ebx, ebx
je 0x5b4822
mov ecx, ebx
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x5b4815
test dl, dl
je 0x5b4811
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x5b4815
add eax, 2
add ecx, 2
test dl, dl
jne 0x5b47f5
xor eax, eax
jmp 0x5b481a
sbb eax, eax
or eax, 1
test eax, eax
je 0x5b49b9
mov eax, dword [edi + 4]
cmp eax, ebx
je 0x5b4833
push eax
call dword [0x8f7f50]
add esp, 4
push dword [edi + 8]
call dword [0x8f7f50]
push dword [edi]
call dword [0x8f7f50]
push esi
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [edi], 0
mov byte [edi + 0xc], 0
call dword [0x8f7f58]
mov edx, eax
add esp, 0xc
mov dword [edi], edx
test edx, edx
jne 0x5b48b7
mov eax, dword [edi + 4]
test eax, eax
je 0x5b487f
push eax
call dword [0x8f7f50]
add esp, 4
push dword [edi + 8]
call dword [0x8f7f50]
push dword [edi]
call dword [0x8f7f50]
add esp, 8
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov eax, 0x1b
mov dword [edi], 0
mov byte [edi + 0xc], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0xc]
test ebx, ebx
je 0x5b490f
mov eax, ebx
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x5b48e0
test cl, cl
je 0x5b48dc
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x5b48e0
add esi, 2
add eax, 2
test cl, cl
jne 0x5b48c0
xor eax, eax
jmp 0x5b48e5
sbb eax, eax
or eax, 1
test eax, eax
je 0x5b490f
push ebx
call dword [0x8f7f58]
add esp, 4
mov dword [edi + 4], eax
test eax, eax
jne 0x5b4912
push edi
call fcn.005b4750
add esp, 4
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [edi + 4], edx
mov esi, dword [edi]
mov dword [edi + 8], 0
test esi, esi
je 0x5b4948
cmp byte [esi], 0
je 0x5b4948
mov ebx, dword [sym.imp.WS2_32.dll_inet_pton]
lea eax, [ebp - 0x18]
push eax
push esi
push 2
call ebx
test eax, eax
jne 0x5b4944
lea eax, [ebp - 0x18]
push eax
push esi
push 0x17
call ebx
test eax, eax
je 0x5b4948
mov al, 1
jmp 0x5b494a
xor al, al
mov ecx, dword [edi]
mov byte [edi + 0xc], al
cmp byte [ecx], 0
je 0x5b49b9
test al, al
jne 0x5b49b9
mov esi, ecx
lea edx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x5b4960
sub esi, edx
je 0x5b4973
cmp byte [ecx + esi - 1], 0x2e
jne 0x5b4973
dec esi
cmp esi, 0xffff
jae 0x5b49b9
lea eax, [esi + 1]
push eax
push 1
call dword [0x8f7f5c]
add esp, 8
mov dword [edi + 8], eax
test eax, eax
jne 0x5b49a6
push edi
call fcn.005b4750
add esp, 4
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
push dword [edi]
push eax
call fcn.005c1dc0
mov eax, dword [edi + 8]
add esp, 0xc
mov byte [esi + eax], 0
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 4]
pop edi
pop esi
mov dword [ecx + 0x38], eax
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret