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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
push esi
mov ebx, edx
push edi
mov edi, ecx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], edi
lea eax, [ebx + ebx*4]
shl eax, 4
mov ecx, dword [edi]
lea esi, [edi + 0x178]
add esi, eax
mov dword [esp + 0x10], ecx
mov eax, dword [edi + ebx*4 + 0x154]
mov dword [esp + 0x18], esi
mov dword [esp + 0x24], eax
cmp dword [esi + 4], 2
jne 0x100d0180
mov eax, dword [ebp + 0xc]
mov byte [eax], 1
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esi + 8], 0
jne 0x100d0254
mov esi, dword [ecx + 0x208]
xor eax, eax
mov edx, 0x493e0
test esi, esi
mov dword [esp + 0x14], edx
mov edx, 1
cmovg eax, edx
mov edx, dword [ecx + 0x20c]
test edx, edx
jle 0x100d01b2
or eax, 2
dec eax
je 0x100d01ce
dec eax
je 0x100d01c8
dec eax
jne 0x100d01d2
cmp esi, edx
mov eax, edx
cmovl eax, esi
mov dword [esp + 0x14], eax
jmp 0x100d01d2
mov dword [esp + 0x14], edx
jmp 0x100d01d2
mov dword [esp + 0x14], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [esp + 0x10]
mov esi, eax
mov eax, 0x10624dd3
mul esi
mov eax, 0x10624dd3
mov edi, edx
shr edi, 6
imul ecx, edi, 0x3e8
sub esi, ecx
imul ecx, esi, 0x3e8
mov esi, dword [ebx + 0x508]
sub esi, edi
sub ecx, dword [ebx + 0x50c]
imul ecx
imul eax, esi, 0x3e8
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub eax, ecx
mov ecx, dword [esp + 0x14]
add ecx, eax
je 0x100d0433
test ecx, ecx
js 0x100d0433
mov ebx, dword [esp + 0x1c]
mov edx, ebx
mov edi, dword [esp + 0x20]
mov ecx, edi
call fcn.100cf6d0
test eax, eax
jne 0x100d0446
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov eax, dword [esi + 8]
cmp eax, 1
je 0x100d026a
cmp eax, 2
je 0x100d026a
cmp eax, 3
jne 0x100d0393
mov edx, dword [ecx + 0x208]
xor eax, eax
mov ecx, dword [ecx + 0x20c]
test edx, edx
mov esi, 1
mov ebx, 0x493e0
cmovg eax, esi
test ecx, ecx
jle 0x100d028e
or eax, 2
dec eax
je 0x100d02a4
dec eax
je 0x100d02a0
dec eax
jne 0x100d02a6
cmp edx, ecx
mov ebx, ecx
cmovl ebx, edx
jmp 0x100d02a6
mov ebx, ecx
jmp 0x100d02a6
mov ebx, edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
mov eax, 0x10624dd3
mul esi
mov eax, dword [esp + 0x10]
mov edi, edx
shr edi, 6
imul ecx, edi, 0x3e8
sub esi, ecx
imul ecx, esi, 0x3e8
mov esi, dword [eax + 0x508]
sub esi, edi
sub ecx, dword [eax + 0x50c]
mov eax, 0x10624dd3
imul ecx
imul eax, esi, 0x3e8
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub eax, ecx
add ebx, eax
je 0x100d042f
test ebx, ebx
js 0x100d042f
mov esi, dword [esp + 0x18]
mov edx, dword [esi + 8]
cmp edx, 2
je 0x100d0314
cmp edx, 3
jne 0x100d034a
or eax, 0xffffffff
cmp edx, 3
cmove eax, dword [esp + 0x24]
or ecx, 0xffffffff
cmp edx, 2
cmove ecx, dword [esp + 0x24]
xor edx, edx
cmp byte [ebp + 8], dl
cmovne ebx, edx
push ebx
push eax
call fcn.100bbfd0
add esp, 8
test eax, eax
js 0x100d040a
je 0x100d03f5
mov ebx, dword [esp + 0x1c]
mov edx, ebx
mov edi, dword [esp + 0x20]
mov ecx, edi
call fcn.100cfa90
test eax, eax
jne 0x100d0446
mov ecx, dword [esp + 0x10]
cmp byte [ebp + 8], al
je 0x100d0254
mov ecx, dword [esi + 8]
cmp ecx, 1
je 0x100d0446
cmp ecx, 2
je 0x100d0446
cmp ecx, 3
je 0x100d0446
jmp 0x100d0250
cmp eax, 4
jne 0x100d03a9
mov edx, ebx
mov ecx, edi
call fcn.100cffc0
test eax, eax
jne 0x100d0446
cmp dword [esi + 8], 5
mov eax, dword [ebp + 0xc]
jne 0x100d03e2
mov dword [esi + 4], 2
mov dword [edi + ebx*4 + 0x168], 0x100d07c0
mov dword [edi + ebx*4 + 0x170], 0x100d0450
mov byte [eax], 1
xor eax, eax
mov dword [esi + 8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov byte [eax], 0
xor eax, eax
mov dword [esi + 8], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [ebp + 8], 0
je 0x100d042f
mov eax, dword [ebp + 0xc]
mov byte [eax], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, dword [esp + 0x10]
push eax
push str.select_poll_on_SSL_TLS_socket__errno:__d
push ebx
call fcn.100bc7f0
add esp, 0xc
mov eax, 0x23
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [esp + 0x10]
push str.SSL_TLS_connection_timeout
push ebx
call fcn.100bc7f0
add esp, 8
mov eax, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret