Function at 0x1801c3a00
Capabilities:
Check for time delay via gettickcount
Create thread

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x18036d060]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xf0]
mov r15, rcx
mov rcx, qword [rsp + 0xe8]
mov rdi, r9
mov rbp, qword [rsp + 0xd8]
mov r12, rdx
mov rsi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xd0]
mov byte [rcx], 0
mov qword [rsp + 0x38], rcx
mov rcx, rbp
mov dword [rsp + 0x30], r8d
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rax
mov byte [rax], 0
call fcn.1800d4870
lea r14, [r15 + 0x40]
mov dword [rsi], 0
mov rcx, r14
mov rdx, r12
call fcn.1800d83d0
xor r9d, r9d
lea r8, [0x180304043]
lea rdx, str.http:__
mov rcx, r14
call fcn.1800d8000
xor r9d, r9d
lea r8, [0x180304043]
lea rdx, str.https:__
mov rcx, r14
call fcn.1800d8000
mov dl, 0x2f
mov rcx, r14
call fcn.1800d4710
mov dl, 0x3a
mov rcx, r14
call fcn.1800d4710
mov rcx, r14
call fcn.1800d9ae0
mov rcx, r14
call fcn.1800d6d70
test eax, eax
jne 0x1801c3b09
mov rax, qword [rdi]
lea rdx, str.Invalid_hostname_for_resolving_hostname_to_IP_address.
mov rcx, rdi
call qword [rax + 0x28]
mov r8, r12
lea rdx, str.hostname
mov rcx, rdi
call fcn.180106500
xor al, al
jmp 0x1801c3da6
mov rcx, r14
call fcn.1800d6d80
test rbx, rbx
je 0x1801c3b28
mov r8, rax
lea rdx, str.HostnameResolve
mov rcx, rbx
call fcn.180125810
mov r8, r14
lea rdx, str.dnsCacheLookup
mov rcx, rdi
call fcn.180106500
mov rcx, rbp
call fcn.1800d4870
mov rcx, r14
call fcn.180157310
test al, al
je 0x1801c3b5b
mov rdx, r14
mov rcx, rbp
call fcn.1800d83d0
jmp 0x1801c3b6e
mov rdx, rbp
mov rcx, r14
call fcn.180143bd0
test al, al
je 0x1801c3c18
mov rcx, rbp
call fcn.1800d6d70
test eax, eax
je 0x1801c3c18
mov rcx, rbp
call fcn.1800d6d80
mov rcx, rax
lea r9, [rsp + 0x58]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x54]
lea rax, [rsp + 0x5c]
lea rdx, str._d._d._d._d
mov qword [rsp + 0x20], rax
call fcn.180104010
cmp eax, 4
jne 0x1801c3c18
movzx eax, byte [rsp + 0x54]
mov byte [rsi], al
movzx eax, byte [rsp + 0x58]
mov byte [rsi + 1], al
movzx eax, byte [rsp + 0x5c]
mov byte [rsi + 2], al
movzx eax, byte [rsp + 0x50]
mov byte [rsi + 3], al
test rbx, rbx
je 0x1801c3bf6
mov rcx, rbp
call fcn.1800d6d80
mov r8, rax
lea rdx, str.ResolvedToIp
mov rcx, rbx
call fcn.180125810
mov rbx, qword [rdi]
mov rcx, rbp
call fcn.1800d6d80
mov r8, rax
lea rdx, str.dnsCacheHit
mov rcx, rdi
call qword [rbx + 0x58]
mov al, 1
jmp 0x1801c3da6
mov rcx, r15
mov qword [rsp + 0xc0], r13
mov qword [r15 + 0xd0], rbx
mov byte [r15 + 0x168], 1
call fcn.1800ba6f0
call sub.KERNEL32.dll_GetTickCount
mov r13d, eax
lea r8, [0x1801c3410]
lea rax, [rsp + 0x50]
mov r9, r15
mov qword [rsp + 0x28], rax
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rsi, rax
test rax, rax
je 0x1801c3c76
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rdi]
mov rcx, rdi
test rsi, rsi
jne 0x1801c3c92
lea rdx, str.Failed_to_start_background_thread_for_resolving_IPV4_domain_name.
call qword [rax + 0x28]
xor al, al
jmp 0x1801c3d9e
lea rdx, str.Resolving_domain_name__IPV4_
call qword [rax + 0x30]
xor esi, esi
xor r12d, r12d
cmp byte [r15 + 0x168], sil
je 0x1801c3d18
mov eax, 2
mov ecx, 0xa
inc r12d
cmp r12d, 0xc8
cmovle ecx, eax
add esi, ecx
call fcn.180104b90
test rbx, rbx
je 0x1801c3cea
cmp esi, dword [rbx + 0xd0]
jb 0x1801c3cea
mov rdx, rdi
mov rcx, rbx
xor esi, esi
call fcn.180125000
test al, al
jne 0x1801c3dc2
mov r14d, dword [rsp + 0x30]
test r14d, r14d
je 0x1801c3d0a
call sub.KERNEL32.dll_GetTickCount
cmp eax, r13d
jbe 0x1801c3d0a
sub eax, r13d
cmp eax, r14d
ja 0x1801c3dde
cmp byte [r15 + 0x168], 0
jne 0x1801c3caa
lea r14, [r15 + 0x40]
lea rdx, [r15 + 0xd8]
mov rcx, rbp
call fcn.1800d83d0
mov rcx, qword [rsp + 0x48]
mov eax, dword [r15 + 0x16c]
mov dword [rcx], eax
mov rcx, rbp
call fcn.1800d6d70
test eax, eax
je 0x1801c3d54
mov rcx, rbp
call fcn.1800d6d80
mov rdx, rax
mov rcx, r14
call fcn.180143a10
test rbx, rbx
je 0x1801c3d7f
mov rcx, rbp
call fcn.1800d6d70
test eax, eax
je 0x1801c3d7f
mov rcx, rbp
call fcn.1800d6d80
mov r8, rax
lea rdx, str.ResolvedToIp
mov rcx, rbx
call fcn.180125810
mov r8, rbp
lea rdx, str.resolvedToIp
mov rcx, rdi
call fcn.180106500
mov rcx, rbp
call fcn.1800d6d70
test eax, eax
setne al
mov r13, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.18007b140
add rsp, 0x70
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rsp + 0x38]
lea rdx, str.DNS_lookup_aborted_by_application_callback
mov rcx, rdi
mov byte [rax], 1
mov rax, qword [rdi]
call qword [rax + 0x28]
xor al, al
jmp 0x1801c3d9e
mov rax, qword [rsp + 0x40]
mov byte [rax], 1
xor al, al
jmp 0x1801c3d9e