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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rsi
push rdi
push r12
push r13
lea rbp, [rsp - 0x148]
sub rsp, 0x248
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rsi, rdx
movzx r12d, cl
xor r13d, r13d
cmp dword [reloc.WS2_32.dll_accept], r13d
je 0x140034961
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x140637f5c], eax
mov dword [reloc.WS2_32.dll_accept], r13d
jmp 0x14003498e
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x140637f5c]
cmp eax, 0x3e8
jae 0x14003498e
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x140637f5c]
sub ecx, eax
add ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.1402255b4
mov rdx, rax
mov ecx, r13d
test rax, rax
setne cl
test ecx, ecx
jne 0x1400349ae
mov ecx, 0x80004005
call fcn.1400042e0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x28]
test r12b, r12b
je 0x140034a03
mov r8d, 5
lea rdx, str.ERROR
call fcn.140004100
lea rcx, [rsp + 0x40]
call fcn.14003d500
nop
mov edx, 1
lea rcx, [rsp + 0x40]
call fcn.14003da00
nop
lea rcx, [rsp + 0x40]
call fcn.140037dd0
jmp 0x140034a15
mov r8d, 7
lea rdx, str.WARNING
call fcn.140004100
lea rdi, [rbp + 0x198]
mov qword [rbp + 0x18], rdi
call fcn.1402255b4
mov rdx, rax
mov ecx, r13d
test rax, rax
setne cl
test ecx, ecx
jne 0x140034a40
mov ecx, 0x80004005
call fcn.1400042e0
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x20], rax
mov r8, rdi
mov rdx, qword [rbp + 0x190]
lea rcx, [rsp + 0x20]
call fcn.140055a10
lea r8, str.:__s_n
lea rdx, [rsp + 0x28]
lea rcx, [rbp - 0x48]
call fcn.1400045a0
nop
mov r8, qword [rsp + 0x20]
mov rdx, qword [rax]
lea rcx, [0x140636e50]
call fcn.140019030
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
or rbx, 0xffffffffffffffff
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034ab3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdi, qword [rsp + 0x20]
cmp dword [rdi - 0x10], 0
jle 0x140034b1b
mov edx, 0x5c
mov rcx, rdi
call fcn.1403600dc
test rax, rax
je 0x140034b1b
sub rax, rdi
sar rax, 1
cmp eax, 0xffffffff
je 0x140034b1b
mov r8d, eax
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x20]
call fcn.140005000
nop
mov rdx, rdi
mov rcx, qword [rax]
call fcn.140029b80
nop
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034b26
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x140034b26
mov rdx, rdi
mov rcx, rsi
call fcn.140029b80
call fcn.1400344a0
mov rcx, rax
lea rdx, [rbp - 0x80]
call fcn.14003b7e0
nop
mov r8, rax
lea rdx, str.HKEY_CURRENT_USERSOFTWARE_
lea rcx, [rsp + 0x60]
call fcn.140005ec0
nop
lea r8, str.PC_Repair
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400045a0
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034b82
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034ba0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, qword [rsp + 0x30]
cmp dword [rdx - 8], 1
jle 0x140034bbd
mov edx, dword [rdx - 0x10]
lea rcx, [rsp + 0x30]
call fcn.140003fa0
mov rdx, qword [rsp + 0x30]
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], r13
mov word [rbp - 0x40], r13w
xor eax, eax
mov rcx, rbx
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rbp - 0x40]
call fcn.140002220
nop
mov r8b, 1
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x90]
call fcn.140187640
nop
cmp qword [rbp - 0x28], 8
jb 0x140034c0e
mov rcx, qword [rbp - 0x40]
call fcn.140224608
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], r13
mov word [rbp - 0x40], r13w
mov qword [rbp - 0x60], 7
mov qword [rbp - 0x68], r13
mov word [rbp - 0x78], r13w
mov r8d, 4
lea rdx, str.sdlg
lea rcx, [rbp - 0x78]
call fcn.140002220
nop
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x90]
call fcn.1401878c0
nop
lea rdx, [rbp - 0x18]
mov rcx, rax
call fcn.1401869d0
nop
cmp qword [rax + 0x18], 8
jb 0x140034c73
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rsp + 0x38]
call fcn.1400041f0
nop
cmp qword [rbp], 8
jb 0x140034c91
mov rcx, qword [rbp - 0x18]
call fcn.140224608
mov qword [rbp], 7
mov qword [rbp - 8], r13
mov word [rbp - 0x18], r13w
lea rcx, [rbp + 0x20]
call fcn.140186330
nop
cmp qword [rbp - 0x60], 8
jb 0x140034cbc
mov rcx, qword [rbp - 0x78]
call fcn.140224608
mov qword [rbp - 0x60], 7
mov qword [rbp - 0x68], r13
mov word [rbp - 0x78], r13w
test r12b, r12b
je 0x140034d6b
mov ecx, 0x43
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov byte [0x140638102], 1
mov cl, 1
call fcn.140037fa0
mov r8b, 1
mov rdx, qword [rsp + 0x20]
lea rcx, str.ErrorText
call fcn.140029b30
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x78], rdx
lea rax, [rsp + 0x48]
mov qword [rbp - 0x50], rax
mov rdx, rsi
lea rcx, [rsp + 0x70]
call fcn.1400041f0
mov rdi, rax
lea rdx, str.QuitMessage
lea rcx, [rsp + 0x48]
call fcn.1400041f0
nop
mov rdx, rdi
mov rcx, rax
call fcn.140034680
lea rdx, str.True
mov rcx, qword [rsp + 0x38]
call fcn.140361494
mov r8b, 1
lea rcx, str.ErrorID
test eax, eax
jne 0x140034dde
lea rdx, str.QuitMsg
jmp 0x140034de1
lea rax, [rsp + 0x50]
mov qword [rbp - 0x50], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x78], rax
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1400041f0
mov rdi, rax
lea rdx, str.WarningMessage
lea rcx, [rsp + 0x58]
call fcn.1400041f0
nop
mov rdx, rdi
mov rcx, rax
call fcn.140034680
lea rdx, str.True
mov rcx, qword [rsp + 0x38]
call fcn.140361494
test eax, eax
je 0x140034de7
mov r8b, 1
mov rdx, qword [rsp + 0x20]
lea rcx, str.ErrorText
call fcn.140029b30
mov r8b, 1
lea rcx, str.ErrorID
mov rdx, rsi
call fcn.140029b30
nop
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034e07
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rbp + 0x90]
call fcn.140186410
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034e34
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, ebx
lock xadd dword [rdx + 0x10], eax
dec eax
test eax, eax
jg 0x140034e54
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x28]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ebx
dec ebx
test ebx, ebx
jg 0x140034e71
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
add rsp, 0x248
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret