Function at 0x5277b0
Capabilities:
Convert ip address from string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x160
mov eax, dword [0x63f070]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov eax, dword [ebx + 8]
push ebx
mov dword [ebp - 0x12c], eax
mov esi, dword [eax + 0x14]
call fcn.0050af00
push edi
push ebx
mov dword [ebp - 0x120], eax
call fcn.0050aee0
push 1
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x12c]
push 2
push 0
mov dword [ebp - 0x118], 0
mov eax, dword [eax + 8]
push 1
push 5
mov dword [ebp - 0x11c], eax
call fcn.005435f0
add esp, 0x20
test al, al
je 0x52782e
push str.schannel:_Windows_version_is_old_and_may_not_be_able_to_connect_to_some_servers_due_to_lack_of_SNI__algorithms__etc.
push edi
call fcn.00511de0
add esp, 8
mov eax, dword [ebp - 0x120]
mov byte [esi + 0x47], 0
cmp dword [eax + 4], 0
jne 0x52784a
cmp dword [eax + 0x24], 0
jne 0x52784a
mov byte [esi + 0x48], 0
jmp 0x527868
push 3
push 2
push 0
push 1
push 6
call fcn.005435f0
add esp, 0x14
test al, al
je 0x527be2
mov byte [esi + 0x48], 1
mov eax, dword [ebp - 0x124]
mov dword [esi], 0
cmp byte [eax + 0x3c], 0
je 0x5278b6
push edi
call fcn.0050b7d0
push 0
lea eax, [ebp - 0x118]
push eax
push edi
push ebx
call fcn.0050b410
add esp, 0x14
test al, al
jne 0x5278a8
mov eax, dword [ebp - 0x118]
mov dword [esi], eax
mov eax, dword [ebp - 0x118]
inc dword [eax + 0x18]
push edi
call fcn.0050b800
add esp, 4
cmp dword [esi], 0
jne 0x527920
push edi
push ebx
call fcn.005266c0
add esp, 8
mov dword [ebp - 0x128], eax
test eax, eax
jne 0x527bf5
push eax
push dword [ebp - 0x11c]
push edi
call fcn.0050b840
add esp, 0xc
test eax, eax
jne 0x527906
push str.Failed_to_set_SNI
push edi
call fcn.00511d20
add esp, 8
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
push eax
call fcn.00522bf0
mov ecx, dword [esi]
add esp, 4
mov dword [ecx + 0x10], eax
mov eax, dword [esi]
cmp dword [eax + 0x10], 0
je 0x527b2c
lea eax, [ebp - 0x160]
push eax
push dword [ebp - 0x11c]
push 2
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
jne 0x527952
lea eax, [ebp - 0x114]
push eax
push dword [ebp - 0x11c]
push 0x17
call dword [sym.imp.WS2_32.dll_inet_pton]
test eax, eax
je 0x527960
push str.schannel:_using_IP_address__SNI_is_not_supported_by_OS.
push edi
call fcn.00511de0
add esp, 8
lea eax, [ebp - 0x144]
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x154], eax
lea eax, [ebp - 0x138]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x138], 0
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 1
mov dword [esi + 0x38], 0x811c
cmp byte [eax + 0x67], 0
jne 0x5279f6
mov dword [esi + 0x38], 0x819c
push 0x10
push 1
call dword [0x63f154]
mov edx, eax
add esp, 8
mov dword [esi + 4], edx
test edx, edx
jne 0x527a30
push str.schannel:_unable_to_allocate_memory
push edi
call fcn.00511d20
add esp, 8
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi]
lea eax, [edx + 8]
push eax
lea eax, [esi + 0x3c]
push eax
lea eax, [ebp - 0x150]
push eax
push edx
xor edx, edx
lea eax, [ebp - 0x15c]
cmp byte [esi + 0x47], dl
push 0
cmove eax, edx
push eax
mov eax, dword [0x645690]
push edx
push edx
push dword [esi + 0x38]
mov eax, dword [eax + 0x18]
push dword [ecx + 0x10]
push edx
push ecx
call eax
mov dword [ebp - 0x120], eax
cmp eax, 0x90312
je 0x527b42
push dword [esi + 4]
call dword [0x63f148]
mov eax, dword [ebp - 0x120]
add esp, 4
mov dword [esi + 4], 0
push 0x100
cmp eax, 0x80090300
je 0x527b0c
cmp eax, 0x80090322
je 0x527ad6
lea ecx, [ebp - 0x104]
push ecx
push eax
call fcn.00522e40
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.00511d20
add esp, 0x18
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x104]
push eax
push 0x80090322
call fcn.00522e40
push eax
push str.schannel:_SNI_or_certificate_check_failed:__s
push edi
call fcn.00511d20
add esp, 0x18
mov eax, 0x3c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x104]
push eax
push 0x80090300
call fcn.00522e40
push eax
push str.schannel:_initial_InitializeSecurityContext_failed:__s
push edi
call fcn.00511d20
add esp, 0x18
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x128]
push eax
push dword [ebp - 0x138]
push dword [ebp - 0x130]
push edi
push dword [ebx + 4]
call fcn.00511480
mov ecx, dword [0x645690]
add esp, 0x14
mov ebx, eax
push dword [ebp - 0x130]
mov ecx, dword [ecx + 0x40]
call ecx
cmp dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x138]
jne 0x527bbc
cmp eax, ebx
jne 0x527bbc
mov eax, dword [ebp - 0x12c]
pop edi
mov dword [esi + 0x40], 0
mov word [esi + 0x44], 0
mov byte [esi + 0x46], 0
mov byte [esi + 0x34], 0
pop esi
mov dword [eax + 4], 1
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
push eax
push ebx
push str.schannel:_failed_to_send_initial_handshake_data:_sent__zd_of__lu_bytes
push edi
call fcn.00511d20
add esp, 0x10
mov eax, 0x23
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004a6edb
mov esp, ebp
pop ebp
ret
push str.schannel:_this_version_of_Windows_is_too_old_to_support_certificate_verification_via_CA_bundle_file.
push edi
call fcn.00511d20
mov eax, 0x4d
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a6edb
mov esp, ebp
pop ebp
ret