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

Disassembly:
push rsi
push r14
push r15
sub rsp, 0x30
cmp dword [0x140125a38], 0
jg 0x140004249
mov rcx, qword [0x14011f188]
mov eax, dword [0x140125a3c]
cmp byte [rcx + 0xc1], 0
jne 0x140003f85
test eax, eax
jne 0x140004249
cmp eax, dword [reloc.WSOCK32.dll_inet_addr]
jge 0x140004249
cmp dword [0x14011f180], 0
je 0x140004249
cmp dword [0x140125a2c], 0
jne 0x140004249
test eax, eax
je 0x140003fe4
cmp byte [rcx + 0x7f], 0
jne 0x140003fe4
cmp dword [rcx + 0x70], 0xffffffff
jle 0x140003fda
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [0x14011f188]
sub eax, dword [rcx + 0x74]
cmp eax, dword [rcx + 0x70]
jb 0x140003fda
cmp dword [rcx + 0x6c], 0
je 0x140003fda
mov byte [rcx + 0x7f], 1
cmp byte [rcx + 0x7f], 0
je 0x140004249
mov rsi, qword [0x140127c48]
xor r15d, r15d
mov r14d, r15d
test rsi, rsi
je 0x140004249
mov qword [rsp + 0x58], rbx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], rdi
nop
cmp byte [rsi + 0x16], r15b
je 0x14000403d
cmp byte [rsi + 0x14], r15b
ja 0x14000403d
mov eax, dword [rcx + 0x68]
cmp dword [rsi + 0x10], eax
jl 0x14000403d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov ebp, eax
sub ecx, dword [rsi + 0xc]
cmp ecx, dword [rsi + 8]
jae 0x140004072
mov rcx, qword [0x14011f188]
mov rbx, qword [rsi + 0x18]
mov rsi, rbx
test rbx, rbx
jne 0x140004010
mov rdi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
test r14d, r14d
je 0x140004249
call fcn.1400047c0
mov al, 1
add rsp, 0x30
pop r15
pop r14
pop rsi
ret
mov rdi, qword [0x14011f188]
test r14d, r14d
jne 0x140004098
inc dword [0x140125a3c]
mov r14d, 1
add rdi, 0xc8
mov qword [0x14011f188], rdi
mov dword [rsi + 0xc], ebp
cmp byte [rsi + 0x17], r15b
je 0x1400040f5
mov byte [rsi + 0x16], r15b
add dword [0x140127c5c], 0xffffffff
jne 0x1400040f5
cmp dword [0x140125a6c], r15d
jne 0x1400040f5
cmp dword [0x140125ec0], r15d
jne 0x1400040f5
cmp byte [0x140125a26], r15b
je 0x1400040f5
mov rcx, qword [0x140125a70]
mov edx, 9
call qword [sym.imp.USER32.dll_KillTimer]
movzx ecx, byte [0x140125a26]
test eax, eax
mov rdi, qword [0x14011f188]
cmovne ecx, r15d
mov byte [0x140125a26], cl
mov rax, qword [0x140125a30]
mov dword [0x140127cd8], ebp
mov edx, dword [rsi + 0x10]
lea rcx, [rax + 0x80]
test rax, rax
jne 0x140004114
mov rcx, r15
lea rax, [rdi + 0x80]
test rdi, rdi
jne 0x140004123
mov rax, r15
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x30], xmm1
movsd xmm0, qword [rcx + 0x40]
xorps xmm1, xmm1
movsd qword [rax + 0x40], xmm0
movups xmmword [rdi], xmm1
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi + 0x20], xmm1
movups xmmword [rdi + 0x30], xmm1
movups xmmword [rdi + 0x40], xmm1
movups xmmword [rdi + 0x50], xmm1
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm1
movzx eax, byte [rdi + 0xc2]
mov byte [rdi + 0x7f], 1
mov dword [rdi + 0x68], edx
test al, al
jne 0x140004186
mov byte [rdi + 0xc2], r15b
cmp dword [0x140127cd4], r15d
je 0x140004198
cmp dword [0x140127cd0], r15d
jne 0x14000419c
test al, al
je 0x1400041cf
mov byte [rdi + 0x7f], r15b
test al, al
jne 0x1400041cf
cmp dword [0x140127cd4], r15d
jge 0x1400041b6
mov dword [rdi + 0x70], 0xffffffff
jmp 0x1400041cf
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x74], eax
mov eax, dword [0x140127cd4]
mov dword [rdi + 0x70], eax
mov rdi, qword [0x14011f188]
mov qword [rdi + 0x30], rsi
lea rdx, str.Timer
inc byte [rsi + 0x14]
xor r9d, r9d
xor r8d, r8d
mov byte [rsp + 0x20], r15b
mov rcx, rsi
call fcn.1400950c0
dec byte [rsi + 0x14]
mov rcx, rsi
cmp byte [rcx + 0x16], r15b
jne 0x140004234
cmp byte [rcx + 0x14], r15b
jne 0x140004234
cmp byte [rcx + 0x15], r15b
jne 0x140004234
mov rbx, qword [rcx + 0x18]
test rbx, rbx
je 0x140004214
inc byte [rbx + 0x15]
mov rdx, qword [rcx]
lea rcx, [0x140127530]
call fcn.14004e0d0
mov rcx, rbx
test rbx, rbx
je 0x140004049
dec byte [rbx + 0x15]
jmp 0x1400041f6
cmp rcx, rsi
jne 0x14000423d
mov rbx, qword [rcx + 0x18]
mov rcx, qword [0x14011f188]
jmp 0x140004041
xor al, al
add rsp, 0x30
pop r15
pop r14
pop rsi
ret