Function at 0x14008f380
Capabilities:
Convert ip address from string

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x80
mov rax, qword [0x140283aa8]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rbx, rdx
lea r8, [rsp + 0x50]
mov rsi, rcx
lea rdx, str.__45_0123456789abcdefABCDEF:.__c
mov rcx, qword [rbx + 0xb8]
call fcn.140088260
cmp eax, 1
jne 0x14008f3f8
cmp byte [rsp + 0x50], 0x5d
jne 0x14008f3f8
inc qword [rbx + 0xb8]
lea edx, [rax + 0x5c]
mov rcx, qword [rbx + 0xb8]
mov byte [rbx + 0x3b9], al
call qword [sym.imp.VCRUNTIME140.dll_strchr]
mov rdi, rax
test rax, rax
je 0x14008f440
inc rdi
mov byte [rax], 0
cmp byte [rdi], 0x3a
je 0x14008f440
xor edi, edi
jmp 0x14008f440
mov rdx, qword [rbx + 0xb8]
lea r8, [rsp + 0x58]
mov ecx, reloc.WS2_32.dll_socket
call sub.WS2_32.dll_inet_pton
test eax, eax
jle 0x14008f42b
lea rdx, str.IPv6_numerical_address_used_in_URL_without_brackets
mov rcx, rsi
call fcn.1400917f0
mov eax, 3
jmp 0x14008f5c7
mov rcx, qword [rbx + 0xb8]
mov edx, 0x3a
call qword [sym.imp.VCRUNTIME140.dll_strrchr]
mov rdi, rax
cmp dword [rsi + 0x240], 0
mov qword [rsp + 0xb0], rbp
je 0x14008f5df
cmp byte [rsi + 0x88a0], 0
je 0x14008f5df
movzx eax, word [rsi + 0x240]
mov dword [rbx + 0x10c], eax
test rdi, rdi
je 0x14008f477
mov byte [rdi], 0
cmp byte [rbx + 0x3b6], 0
je 0x14008f5a3
xor eax, eax
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x69], rax
mov word [rsp + 0x71], ax
mov byte [rsp + 0x73], al
cmp byte [rbx + 0x3ca], al
je 0x14008f4db
cmp byte [rsi + 0x49b], al
je 0x14008f4af
lea r9d, [rax + 0x41]
jmp 0x14008f4c5
cmp byte [rsi + 0x49d], 0
mov eax, 0x44
mov r9d, 0x49
cmovne r9d, eax
lea r8, str._type_c
mov edx, recv
lea rcx, [rsp + 0x68]
call fcn.14009c9a0
cmp byte [rsi + 0x8a38], 0
lea r8, [0x140225bb1]
movzx eax, byte [rbx + 0x3b9]
lea rcx, [0x1402264f0]
mov r9, r8
lea rdx, [0x140225cf0]
cmovne r9, rcx
test al, al
mov rcx, r8
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], rax
cmovne rcx, rdx
mov rax, qword [rsi + 0x8a30]
lea rdx, [0x140239de8]
mov qword [rsp + 0x38], rax
cmovne r8, rdx
mov rdx, qword [rbx + 0x3e8]
mov eax, dword [rbx + 0x10c]
mov qword [rsp + 0x30], r9
mov r9, qword [rbx + 0xb8]
mov rdx, qword [rdx]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
lea rcx, str._s:___s_s_s:_hu_s_s_s
call fcn.14009c8d0
mov rdi, rax
test rax, rax
jne 0x14008f56d
lea eax, [rdi + 0x1b]
jmp 0x14008f5bf
cmp byte [rsi + 0x6d0], 0
je 0x14008f595
mov rcx, qword [rsi + 0x6c8]
call qword [case.0x14009ea5b.0]
mov qword [rsi + 0x6c8], 0
mov byte [rsi + 0x6d0], 0
mov qword [rsi + 0x6c8], rdi
mov byte [rsi + 0x6d0], 1
cmp dword [rbx + 0x10c], 0
jge 0x14008f5bd
mov rax, qword [rbx + 0x3e8]
movzx ecx, word [rax + 0x70]
mov dword [rbx + 0x10c], ecx
xor eax, eax
mov rbp, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1401aad60
add rsp, 0x80
pop rdi
pop rsi
pop rbx
ret
test rdi, rdi
je 0x14008f5a3
lea rbp, [rdi + 1]
mov r8d, 0xa
mov rcx, rbp
lea rdx, [rsp + 0x68]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtol]
cmp eax, 0xffff
ja 0x14008f61f
mov byte [rdi], 0
cmp qword [rsp + 0x68], rbp
je 0x14008f5a3
mov ecx, eax
call fcn.14009b690
movzx eax, ax
mov dword [rbx + 0x10c], eax
jmp 0x14008f5a3
lea rdx, str.Port_number_out_of_range
mov rcx, rsi
call fcn.1400917f0
mov eax, 3
jmp 0x14008f5bf