Function at 0x5168a0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x631345
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x717f80]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xb4], ebx
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp - 0x38]
mov edi, dword [ebp + 8]
xorps xmm0, xmm0
mov esi, dword [ebp + 0x20]
push ebx
mov dword [ebp - 0xc0], edi
mov dword [ebp - 0xc4], eax
movq qword [ebp - 0x38], xmm0
mov dword [ebp - 0x30], 0
call fcn.004c8230
push str.findAddHttpConn
xorps xmm0, xmm0
mov dword [ebp - 4], 0
push esi
lea ecx, [ebp - 0x2c]
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0
call fcn.004b2490
cmp byte [esi + 0x129], 0
mov byte [ebp - 4], 1
je 0x51696e
push edi
push str.sbHostname0
mov ecx, esi
call fcn.004b3100
push dword [ebp + 0xc]
mov ecx, esi
push str.port
call fcn.004b2d90
push dword [ebp + 0x10]
mov ecx, esi
push str.bTls
call fcn.004b2b10
push dword [ebp + 0x14]
mov ecx, esi
push str.bForceNewConnection
call fcn.004b2b10
lea eax, [ebx + 0x2c]
mov ecx, eax
mov dword [ebp - 0xbc], eax
call fcn.004c73b0
mov edi, eax
lea eax, [ebp - 0xac]
push 0x74
push 0
push eax
mov dword [ebp - 0xb8], edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xac]
call fcn.00494a40
mov ecx, dword [ebp - 0xc4]
lea eax, [ebp - 0x14]
push esi
push eax
lea eax, [ebp - 0xac]
mov byte [ebp - 4], 2
push eax
push 0
add ecx, 0x354
mov dword [ebp - 0x14], 0
call fcn.0047f8a0
cmp byte [esi + 0x129], 0
je 0x5169f9
lea eax, [ebp - 0xac]
mov ecx, esi
push eax
push str.sbProxyDomain
call fcn.004b3100
push dword [ebp - 0x14]
mov ecx, esi
push str.proxyPort
call fcn.004b2d90
mov al, byte [esi + 0x129]
mov byte [ebp - 0xad], al
test al, al
je 0x516a64
push edi
push str.numExistingConnections
mov ecx, esi
call fcn.004b2d90
mov ecx, dword [ebp - 0xc0]
call fcn.00499300
push eax
push str.lookingForHost
mov ecx, esi
call fcn.004b2890
push dword [ebp + 0xc]
mov ecx, esi
push str.lookingForPort
call fcn.004b2d90
lea ecx, [ebp - 0xac]
call fcn.004992a0
test eax, eax
je 0x516a64
lea ecx, [ebp - 0xac]
call fcn.00499300
push eax
push str.lookingForProxy
mov ecx, esi
call fcn.004b2890
xor ebx, ebx
test edi, edi
jle 0x516c4b
nop
push str.existingConnection
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
push esi
lea ecx, [ebp - 0x20]
movq qword [ebp - 0x20], xmm0
call fcn.004b2490
mov ecx, dword [ebp - 0xbc]
push ebx
mov byte [ebp - 4], 3
call fcn.004c7270
mov edi, eax
test edi, edi
jne 0x516abb
mov ecx, dword [ebp - 0xbc]
push ebx
call fcn.004c7d90
dec dword [ebp - 0xb8]
dec ebx
jmp 0x516c32
cmp dword [edi + 0x5b4], 0x99b4002d
je 0x516b03
mov eax, dword [esi]
mov ecx, esi
push str.Invalid_HTTP_connection_object_found.
call dword [eax + 0x14]
push 0x78
push str.calledFrom
mov ecx, esi
call fcn.004b2d90
push 0
call fcn.00401ab0
mov ecx, dword [ebp - 0xbc]
add esp, 4
push ebx
call fcn.004c7d90
dec dword [ebp - 0xb8]
dec ebx
jmp 0x516c32
cmp byte [ebp - 0xad], 0
je 0x516b61
mov ecx, edi
call fcn.004e7a10
push eax
push str.connection
mov ecx, esi
call fcn.004b2890
mov ecx, edi
call fcn.004e7a20
push eax
push str.port
mov ecx, esi
call fcn.004b2d90
lea ecx, [edi + 0x48c]
call fcn.0046be50
push eax
push str.connection_proxyHost
mov ecx, esi
call fcn.004b2890
lea ecx, [edi + 0x28]
call fcn.0047fb30
push eax
push str.proxyPort
mov ecx, esi
call fcn.004b2d90
lea ecx, [ebp - 0xac]
call fcn.004992a0
mov ecx, edi
test eax, eax
je 0x516c0d
call fcn.004e7a20
cmp eax, dword [ebp + 0xc]
jne 0x516c32
mov ecx, edi
call fcn.004e7a10
mov ecx, dword [ebp - 0xc0]
push eax
call fcn.004989f0
test al, al
je 0x516c32
lea ecx, [edi + 0x28]
call fcn.0047fb30
cmp eax, dword [ebp - 0x14]
jne 0x516c32
lea ecx, [edi + 0x48c]
call fcn.0046be50
push eax
lea ecx, [ebp - 0xac]
call fcn.004989f0
test al, al
je 0x516c32
cmp byte [ebp + 0x14], 0
jne 0x516ce3
mov ecx, dword [ebp - 0xb4]
push esi
push edi
call fcn.00517020
test al, al
jne 0x516ccc
mov ecx, dword [ebp - 0xb4]
push ebx
call fcn.00517240
cmp byte [ebp - 0xad], 0
je 0x516d42
push str.Found_existing_proxy_connection.
jmp 0x516d3b
call fcn.004e7a20
cmp eax, dword [ebp + 0xc]
jne 0x516c32
mov ecx, edi
call fcn.004e7a10
mov ecx, dword [ebp - 0xc0]
push eax
call fcn.004989f0
test al, al
jne 0x516d0a
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.004b2630
inc ebx
cmp ebx, dword [ebp - 0xb8]
jl 0x516a70
mov ebx, dword [ebp - 0xb4]
cmp dword [ebx + 0x28], 0
je 0x516d98
lea ecx, [ebx + 0x2c]
call fcn.004c73b0
cmp eax, dword [ebx + 0x28]
jne 0x516d98
cmp byte [ebp - 0xad], 0
je 0x516c81
mov eax, dword [esi]
mov ecx, esi
push str.At_max_connections__removing_oldest.
call dword [eax + 0x18]
push 0
lea ecx, [ebx + 0x2c]
call fcn.004c7d90
test eax, eax
je 0x516d98
cmp dword [eax + 0x5b4], 0x99b4002d
je 0x516d91
mov eax, dword [esi]
mov ecx, esi
push str.Invalid_HTTP_connection_object_found.
call dword [eax + 0x14]
push 0x79
push str.calledFrom
mov ecx, esi
call fcn.004b2d90
push 0
call fcn.00401ab0
add esp, 4
jmp 0x516d98
cmp byte [esi + 0x129], 0
je 0x516ce3
push 1
push str.inactiveForTooLong
mov ecx, esi
call fcn.004b2b10
push ebx
mov ebx, dword [ebp - 0xb4]
lea ecx, [ebx + 0x2c]
call fcn.004c7d90
mov ecx, edi
call fcn.00471570
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.004b2630
jmp 0x516c51
cmp byte [ebp + 0x14], 0
jne 0x516ce3
mov ecx, dword [ebp - 0xb4]
push esi
push edi
call fcn.00517020
test al, al
jne 0x516ce3
mov ecx, dword [ebp - 0xb4]
push ebx
call fcn.00517240
cmp byte [ebp - 0xad], 0
je 0x516d42
push str.Found_existing_connection.
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x18]
call sub.KERNEL32.dll_GetTickCount
push 0x67d0e0
lea ecx, [edi + 0x638]
mov dword [edi + 0x634], eax
call fcn.00496a00
test al, al
je 0x516d6c
lea ecx, [edi + 0x638]
call fcn.00496de0
mov ecx, edi
call fcn.00471600
mov eax, dword [ebp - 0xb4]
mov ecx, edi
add eax, 0x6c
push eax
call fcn.004eab40
lea ecx, [ebp - 0x20]
call fcn.004b2630
jmp 0x516f7d
mov ecx, eax
call fcn.00471570
push 0x870
call fcn.006222af
mov edi, eax
add esp, 4
mov dword [ebp - 0xc4], edi
mov byte [ebp - 4], 4
test edi, edi
je 0x516dd0
push 0x870
push 0
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, edi
call fcn.004df180
mov edi, eax
jmp 0x516dd2
xor edi, edi
mov byte [ebp - 4], 2
test edi, edi
je 0x516e0d
cmp dword [edi + 0x5b4], 0x99b4002d
je 0x516e14
mov eax, dword [esi]
mov ecx, esi
push str.Invalid_HTTP_connection_object_found.
call dword [eax + 0x14]
push 0x3e9
push str.calledFrom
mov ecx, esi
call fcn.004b2d90
push 0
call fcn.00401ab0
add esp, 4
xor edi, edi
jmp 0x516f7d
mov ecx, edi
call fcn.00471600
push edi
lea ecx, [ebx + 0x2c]
call fcn.004c6f00
cmp byte [ebp + 0x10], 0
je 0x516f4b
movzx eax, byte [esi + 0x129]
lea ecx, [ebp - 0x20]
push eax
push str.findRecentTlsSession
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
push esi
movq qword [ebp - 0x20], xmm0
call fcn.004b24c0
lea ecx, [ebx + 0x50]
mov byte [ebp - 4], 5
call fcn.004c73a0
xor ebx, ebx
mov dword [ebp - 0xb8], eax
test eax, eax
jle 0x516f2f
nop
mov ecx, dword [ebp - 0xb4]
push ebx
lea ecx, [ecx + 0x50]
call fcn.004c7230
mov dword [ebp - 0xc4], eax
test eax, eax
je 0x516f20
cmp dword [eax + 4], 0x62cb09e3
je 0x516ec1
mov eax, dword [esi]
mov ecx, esi
push str.Found_invalid_RecentTlsSession_object.
call dword [eax + 0x14]
mov ecx, dword [ebp - 0xb4]
push ebx
lea ecx, [ecx + 0x50]
call fcn.004c7c70
mov eax, dword [ebp - 0xb8]
dec ebx
dec eax
mov dword [ebp - 0xb8], eax
jmp 0x516f26
push dword [ebp - 0xc0]
lea ecx, [eax + 8]
call fcn.004989c0
test al, al
je 0x516f20
mov ecx, dword [ebp - 0xb4]
push ebx
lea ecx, [ecx + 0x50]
call fcn.004c7c70
mov eax, dword [ebp - 0xc4]
push eax
mov ecx, dword [eax + 0x7c]
mov dword [ebp - 0xbc], ecx
mov dword [eax + 0x7c], 0
call fcn.00477310
mov eax, dword [ebp - 0xbc]
add esp, 4
cmp dword [eax + 4], 0x62cb09e3
je 0x516fb8
mov eax, dword [esi]
mov ecx, esi
push str.Found_invalid_s730476zz_object.
call dword [eax + 0x14]
mov eax, dword [ebp - 0xb8]
inc ebx
cmp ebx, eax
jl 0x516e70
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.004b2630
mov ebx, dword [ebp - 0xb4]
mov dword [edi + 0x864], 0
cmp byte [ebp - 0xad], 0
je 0x516f60
mov eax, dword [esi]
mov ecx, esi
push str.Will_need_to_open_a_new_connection.
call dword [eax + 0x18]
call sub.KERNEL32.dll_GetTickCount
mov ecx, edi
mov dword [edi + 0x634], eax
call fcn.00471600
lea eax, [ebx + 0x6c]
mov ecx, edi
push eax
call fcn.004eab40
lea ecx, [ebp - 0xac]
call fcn.00494a90
lea ecx, [ebp - 0x2c]
call fcn.004b2630
lea ecx, [ebp - 0x38]
call fcn.004c8300
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00622073
mov esp, ebp
pop ebp
ret 0x1c
cmp byte [esi + 0x129], 0
je 0x516fdf
mov eax, dword [esi]
mov ecx, esi
push str.Returning_matching_recent_TLS_session.
call dword [eax + 0x18]
push dword [ebp - 0xc0]
mov ecx, esi
push str.host
call fcn.004b3100
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
call fcn.004b2630
mov eax, dword [ebp - 0xbc]
mov ebx, dword [ebp - 0xb4]
mov dword [edi + 0x864], eax
test eax, eax
je 0x516f4b
cmp dword [eax + 4], 0x62cb09e3
je 0x516f4b
jmp 0x516f41