Function at 0x140529640
Capabilities:
Convert ip address from string

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xf0
lea rdi, [rsp + 0x20]
mov ecx, 0x34
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x100]
mov rax, qword [0x140814ac0]
xor rax, rsp
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x108]
movsx eax, byte [rax]
cmp eax, 0x5b
je 0x1405296ad
mov r8d, 0x243
lea rdx, [0x140808c50]
lea rcx, str.hostname___
call fcn.1401d5938
xor eax, eax
cmp qword [rsp + 0x110], 4
jae 0x1405296c2
mov eax, socket
jmp 0x140529997
mov rax, qword [rsp + 0x108]
inc rax
mov qword [rsp + 0x108], rax
mov rax, qword [rsp + 0x110]
sub rax, 2
mov qword [rsp + 0x110], rax
lea rdx, str.0123456789abcdefABCDEF:.
mov rcx, qword [rsp + 0x108]
call fcn.1401d793b
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
cmp qword [rsp + 0x110], rax
je 0x1405298bf
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
movsx eax, byte [rax]
cmp eax, 0x25
jne 0x1405298b5
mov dword [rsp + 0x54], 0
mov rax, qword [rsp + 0x108]
mov rcx, qword [rsp + 0x20]
lea rax, [rax + rcx + 1]
mov qword [rsp + 0x58], rax
mov r8d, 2
lea rdx, [0x140808d24]
mov rcx, qword [rsp + 0x58]
call fcn.1401dc9cc
test eax, eax
jne 0x1405297b6
mov eax, 1
imul rax, rax, 2
mov rcx, qword [rsp + 0x58]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x1405297b6
mov eax, 1
imul rax, rax, 2
mov rcx, qword [rsp + 0x58]
movsx eax, byte [rcx + rax]
cmp eax, 0x5d
je 0x1405297b6
mov rax, qword [rsp + 0x58]
add rax, 2
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
test eax, eax
je 0x140529800
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
cmp eax, 0x5d
je 0x140529800
cmp dword [rsp + 0x54], 0xf
jge 0x140529800
movsxd rax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x58]
movzx ecx, byte [rcx]
mov byte [rsp + rax + 0x38], cl
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x58]
inc rax
mov qword [rsp + 0x58], rax
jmp 0x1405297b6
cmp dword [rsp + 0x54], 0
je 0x140529814
mov rax, qword [rsp + 0x58]
movsx eax, byte [rax]
cmp eax, 0x5d
je 0x14052981e
mov eax, socket
jmp 0x140529997
movsxd rax, dword [rsp + 0x54]
mov qword [rsp + 0xe0], rax
cmp qword [rsp + 0xe0], 0x10
jae 0x140529838
jmp 0x14052983e
call fcn.1401dbafe
nop
mov rax, qword [rsp + 0xe0]
mov byte [rsp + rax + 0x38], 0
lea r8, [0x140808d30]
mov edx, 0x25b
lea rcx, [rsp + 0x38]
call fcn.1401dcc79
mov rcx, qword [rsp + 0x100]
mov qword [rcx + 0x28], rax
mov rax, qword [rsp + 0x100]
cmp qword [rax + 0x28], 0
jne 0x140529886
mov eax, 7
jmp 0x140529997
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov byte [rax], 0x5d
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov byte [rax + 1], 0
jmp 0x1405298bf
mov eax, socket
jmp 0x140529997
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov byte [rax], 0
lea r8, [rsp + 0x68]
mov rdx, qword [rsp + 0x108]
mov ecx, reloc.WS2_32.dll_socket
call qword [sym.imp.WS2_32.dll_inet_pton]
cmp eax, 1
je 0x1405298ff
mov eax, socket
jmp 0x140529997
mov r9d, 0x2e
lea r8, [rsp + 0x98]
lea rdx, [rsp + 0x68]
mov ecx, reloc.WS2_32.dll_socket
call fcn.1401da370
test rax, rax
je 0x14052997c
lea rcx, [rsp + 0x98]
call fcn.1401d91f0
cmp rax, qword [rsp + 0x110]
jae 0x14052997c
lea rdx, [rsp + 0x98]
mov rcx, qword [rsp + 0x108]
call fcn.1401d802a
lea rcx, [rsp + 0x98]
call fcn.1401d91f0
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov byte [rax + 1], 0
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
add rcx, rax
mov rax, rcx
mov byte [rax], 0x5d
xor eax, eax
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_closesocket
call fcn.1401dcb34
mov rax, rdi
mov rcx, qword [rsp + 0xe8]
xor rcx, rsp
call fcn.1401d9736
add rsp, 0xf0
pop rdi
ret