Function at 0x101d5470
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov eax, dword [0x104230a4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x28]
mov dword [ebp - 0x20], edi
push eax
lea eax, [ebp - 0x30]
mov dword [ebp - 0x2c], 2
push eax
push 0
push edi
mov dword [ebp - 0x34], 0
mov byte [ebp - 0x22], 0
mov byte [ebp - 0x38], 0
call fcn.101d0e10
mov ecx, dword [ebp - 0x30]
add esp, 0x14
mov ebx, ecx
lea edx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x101d54c4
mov eax, dword [ebp + 0xc]
sub ebx, edx
mov esi, dword [sym.imp.WS2_32.dll_inet_pton]
mov dword [ebp - 0x3c], ebx
cmp byte [eax + 0x203], 0
je 0x101d54fb
lea eax, [ebp - 0x14]
push eax
push ecx
push 0x17
call esi
test eax, eax
je 0x101d54f8
mov dword [ebp - 0x34], 0x10
jmp 0x101d550f
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x14]
push eax
push ecx
push 2
call esi
test eax, eax
je 0x101d5516
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x2c], 7
push 0
push 0
push 0x55
push dword [ebp - 0x44]
call fcn.10232870
mov esi, eax
add esp, 0x10
mov dword [ebp - 0x18], esi
test esi, esi
je 0x101d570f
push esi
mov byte [ebp - 0x19], 0
mov byte [ebp - 0x21], 0
call fcn.10227950
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], eax
test ecx, ecx
jle 0x101d56a6
nop word [eax + eax]
cmp byte [ebp - 0x19], 0
jne 0x101d56a6
push eax
push esi
call fcn.10227ac0
mov edi, eax
add esp, 8
mov eax, dword [edi]
cmp eax, 2
jne 0x101d5583
mov byte [ebp - 0x22], 1
jmp 0x101d5597
mov ecx, dword [ebp - 0x38]
cmp eax, 7
movzx ecx, cl
mov edx, 1
cmove ecx, edx
mov dword [ebp - 0x38], ecx
cmp eax, dword [ebp - 0x2c]
jne 0x101d568b
push dword [edi + 4]
call fcn.10236020
push dword [edi + 4]
mov esi, eax
call fcn.10288bf0
mov edx, eax
add esp, 8
mov eax, dword [ebp - 0x2c]
sub eax, 2
je 0x101d5645
sub eax, 5
jne 0x101d5690
cmp edx, dword [ebp - 0x34]
jne 0x101d5690
lea ecx, [ebp - 0x14]
sub edx, 4
jb 0x101d55f1
nop dword [eax]
mov eax, dword [esi]
cmp eax, dword [ecx]
jne 0x101d55f6
add esi, 4
add ecx, 4
sub edx, 4
jae 0x101d55e0
cmp edx, 0xfffffffc
je 0x101d562b
mov al, byte [esi]
cmp al, byte [ecx]
jne 0x101d5690
cmp edx, 0xfffffffd
je 0x101d562b
mov al, byte [esi + 1]
cmp al, byte [ecx + 1]
jne 0x101d5690
cmp edx, 0xfffffffe
je 0x101d562b
mov al, byte [esi + 2]
cmp al, byte [ecx + 2]
jne 0x101d5690
cmp edx, 0xffffffff
je 0x101d562b
mov al, byte [esi + 3]
cmp al, byte [ecx + 3]
jne 0x101d5690
push dword [ebp - 0x28]
mov edi, dword [ebp - 0x20]
push str._subjectAltName:_host___s__matched_certs_IP_address_
push edi
mov byte [ebp - 0x21], 1
call fcn.101c1060
add esp, 0xc
jmp 0x101d5693
mov ecx, esi
lea edi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101d5650
sub ecx, edi
cmp edx, ecx
jne 0x101d5690
mov edi, dword [ebp - 0x28]
push ebx
push dword [ebp - 0x30]
push edx
push esi
call fcn.101f6470
add esp, 0x10
test al, al
je 0x101d5690
push esi
push edi
mov edi, dword [ebp - 0x20]
push str._subjectAltName:_host___s__matched_certs___s_
push edi
call fcn.101c1060
add esp, 0x10
mov byte [ebp - 0x19], 1
jmp 0x101d5693
mov edi, dword [ebp - 0x20]
jmp 0x101d5696
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x48]
jl 0x101d5560
push esi
call fcn.102333c0
add esp, 4
cmp byte [ebp - 0x19], 0
jne 0x101d56fc
cmp byte [ebp - 0x21], 0
jne 0x101d56fc
cmp byte [ebp - 0x22], 0
jne 0x101d56c7
cmp byte [ebp - 0x38], 0
je 0x101d570f
push dword [ebp - 0x28]
push str._subjectAltName_does_not_match__s
push edi
call fcn.101c1060
push dword [ebp - 0x28]
push str.SSL:_no_alternative_certificate_subject_name_matches_target_host_name__s
push edi
call fcn.101c0fa0
add esp, 0x18
mov eax, 0x3c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100a9f90
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100a9f90
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x44]
mov dword [ebp - 0x18], 0
xor esi, esi
call fcn.102adb20
mov edi, eax
add esp, 4
test edi, edi
je 0x101d5820
push 0xffffffffffffffff
push 0xd
push edi
call fcn.10232700
add esp, 0xc
test eax, eax
js 0x101d5820
push eax
push 0xd
push edi
mov ebx, eax
call fcn.10232700
add esp, 0xc
test eax, eax
jns 0x101d5742
test ebx, ebx
js 0x101d581d
push ebx
push edi
call fcn.102326d0
push eax
call fcn.102323e0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x101d581d
push edi
call fcn.10251d80
add esp, 4
push edi
cmp eax, 0xc
jne 0x101d57e5
call fcn.10288bf0
mov esi, eax
add esp, 4
test esi, esi
js 0x101d57f3
push 0x91f
lea ecx, [esi + 1]
push str.C:UserschDownloadscurl_7.87.0lib_vtlsopenssl.c
push ecx
call fcn.10223820
add esp, 0xc
mov dword [ebp - 0x18], eax
test eax, eax
je 0x101d57cf
push esi
push edi
call fcn.10236020
add esp, 4
push eax
push dword [ebp - 0x18]
call fcn.101fcde0
mov eax, dword [ebp - 0x18]
add esp, 0xc
mov byte [esi + eax], 0
jmp 0x101d57f3
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100a9f90
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x18]
push eax
call fcn.1022cfa0
add esp, 8
mov esi, eax
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x101d5827
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101d5800
sub ecx, edx
push ecx
call fcn.101c3970
add esp, 4
cmp eax, esi
je 0x101d581d
push str.SSL:_illegal_cert_name_field
jmp 0x101d582c
mov ebx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x101d583e
push str.SSL:_unable_to_obtain_common_name_from_peer_certificate
push dword [ebp - 0x20]
call fcn.101c0fa0
add esp, 8
mov ebx, 0x3c
jmp 0x101d5882
push ebx
push dword [ebp - 0x30]
push esi
push eax
call fcn.101f6470
add esp, 0x10
test al, al
jne 0x101d586d
push dword [ebp - 0x28]
push dword [ebp - 0x18]
push str.SSL:_certificate_subject_name__s_does_not_match_target_host_name__s
push dword [ebp - 0x20]
call fcn.101c0fa0
add esp, 0x10
mov ebx, 0x3c
jmp 0x101d5882
push dword [ebp - 0x18]
push str._common_name:__s__matched_
push dword [ebp - 0x20]
call fcn.101c1060
add esp, 0xc
xor ebx, ebx
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x101d589c
push 0x946
push str.C:UserschDownloadscurl_7.87.0lib_vtlsopenssl.c
push eax
call fcn.10223850
add esp, 0xc
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100a9f90
mov esp, ebp
pop ebp
ret