Function at 0x14005a9d0
Capabilities:
Check for time delay via gettickcount
Terminate process

Disassembly:
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x17e40
call fcn.1400d1960
sub rsp, rax
mov qword [rsp + 0xf8], 0xfffffffffffffffe
mov qword [rsp + 0x17e80], rbx
mov qword [rsp + 0x17e88], rsi
mov rax, qword [0x1401bee90]
xor rax, rsp
mov qword [rsp + 0x17e30], rax
mov r13, rdx
mov r12, rcx
mov qword [rsp + 0xa8], rcx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
xor r15d, r15d
nop
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x20]
mov rcx, qword [r13 + 0x1d8]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov edi, eax
mov ebx, dword [r12 + 0x1ec]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, ebx
cmp eax, dword [r13 + 0x1f0]
jbe 0x14005ac17
test ebx, ebx
jne 0x14005aa75
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x1401c6d80]
mov ecx, eax
imul ecx, eax
imul ecx, eax
and ecx, 0x80000007
jge 0x14005aa92
dec ecx
or ecx, 0xfffffff8
inc ecx
cmp ecx, 4
jne 0x14005abc3
mov rbx, r15
nop
call fcn.1400cd268
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rsp + rbx*8 + 0x130], xmm0
inc rbx
cmp rbx, 0xc2
jb 0x14005aaa0
mov r9, r15
mov r10d, 0xc1
lea r11d, [r10 + 1]
nop
mov edx, 0xc1
cmp r9, rdx
jge 0x14005abb4
cmp r10, 4
jl 0x14005ab7d
lea rcx, [rsp + 0x728]
mov r8d, 0xbd
sub r8, r9
shr r8, 2
inc r8
lea rax, [r8*4]
sub rdx, rax
nop dword [rax + rax]
movsd xmm0, qword [rcx + 0x10]
movsd xmm1, qword [rcx + 8]
comisd xmm0, xmm1
jbe 0x14005ab2a
movsd qword [rcx + 0x10], xmm1
movsd qword [rcx + 8], xmm0
movsd xmm0, qword [rcx + 8]
movsd xmm1, qword [rcx]
comisd xmm0, xmm1
jbe 0x14005ab42
movsd qword [rcx + 8], xmm1
movsd qword [rcx], xmm0
movsd xmm0, qword [rcx]
movsd xmm1, qword [rcx - 8]
comisd xmm0, xmm1
jbe 0x14005ab5a
movsd qword [rcx], xmm1
movsd qword [rcx - 8], xmm0
movsd xmm0, qword [rcx - 8]
movsd xmm1, qword [rcx - 0x10]
comisd xmm0, xmm1
jbe 0x14005ab74
movsd qword [rcx - 8], xmm1
movsd qword [rcx - 0x10], xmm0
sub rcx, 0x20
dec r8
jne 0x14005ab10
cmp rdx, r9
jle 0x14005abb4
movsd xmm0, qword [rsp + rdx*8 + 0x130]
movsd xmm1, qword [rsp + rdx*8 + 0x128]
comisd xmm0, xmm1
jbe 0x14005abac
movsd qword [rsp + rdx*8 + 0x130], xmm1
movsd qword [rsp + rdx*8 + 0x128], xmm0
dec rdx
cmp rdx, r9
jg 0x14005ab82
inc r9
dec r10
dec r11
jne 0x14005aad0
lea rbx, [r13 + 0x1f8]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, qword [rbx + 0xb8]
mov dword [rcx + 0x1ec], eax
mov rax, qword [rbx + 0xb8]
mov dword [rax + 0x2d0], r15d
mov rax, qword [rbx + 0xb8]
mov dword [rax + 0x2d4], r15d
xor edx, edx
mov rcx, qword [rbx + 0xb8]
call fcn.14005bcf0
mov rax, qword [rbx]
lea rdx, [rbx + 0xc8]
mov rcx, rbx
call qword [rax + 0x48]
test edi, edi
je 0x14005ac37
cmp dword [rsp + 0x20], 0x103
jne 0x14005ac37
mov ecx, dword [r13 + 0x1e4]
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x14005aa30
mov ecx, dword [0x1401c6d80]
lea r8d, [rcx + 2]
lea eax, [rcx + 1]
imul r8d, eax
imul r8d, ecx
mov eax, 0x2e8ba2e9
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x16
sub r8d, edx
cmp r8d, 0x11
jne 0x14005ac8b
lea ecx, [r8 - 0xd]
call fcn.1400cd068
mov rbx, rax
call fcn.1400cd268
mov dword [rbx], eax
mov dword [0x1401c6d80], eax
mov rcx, rbx
call fcn.1400cc890
cmp dword [rsp + 0x20], r15d
je 0x14005af8a
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, esi
mov eax, 0x10624dd3
mul ecx
mov esi, edx
shr esi, 6
lea rcx, [r12 + 0x48]
mov r8d, 8
lea rdx, [rsp + 0xd0]
call fcn.14001b4b0
nop
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rax
call fcn.14001b570
nop
xor edx, edx
lea r8d, [rdx + 0x10]
mov rcx, qword [rax]
call fcn.1400d162c
mov ebx, eax
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffe8
or rdi, 0xffffffffffffffff
lock add dword [rdx + 0x10], edi
jg 0x14005ad0c
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xd0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005ad28
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ebx, eax
cmp ebx, 7
jne 0x14005af8e
xor ecx, ecx
call fcn.1400cdb00
mov rbx, rax
call fcn.140027960
movsxd rcx, eax
sub rbx, rcx
cmp rbx, 0x93a80
jge 0x14005af8e
call fcn.140053d70
mov rbx, rax
lea rcx, [0x1401be9a8]
mov rdx, qword [0x1401be9a8]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x28], rax
test rbx, rbx
je 0x14005adcc
test rbx, 0xffffffffffff0000
jne 0x14005adbc
movzx ebx, bx
mov ecx, ebx
call fcn.1400019e0
test rax, rax
je 0x14005ade0
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x28]
call fcn.1400026e0
jmp 0x14005ade0
mov rax, rdi
nop
inc rax
cmp word [rbx + rax*2], 0
jne 0x14005adc0
jmp 0x14005adcf
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.1400023f0
nop
call fcn.140051d30
mov rbx, rax
lea rcx, [0x1401be9a8]
mov rdx, qword [0x1401be9a8]
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x30], rax
test rbx, rbx
je 0x14005ae40
test rbx, 0xffffffffffff0000
jne 0x14005ae31
movzx ebx, bx
mov ecx, ebx
call fcn.1400019e0
test rax, rax
je 0x14005ae54
mov r8d, ebx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400026e0
jmp 0x14005ae54
mov rax, rdi
inc rax
cmp word [rbx + rax*2], 0
jne 0x14005ae34
jmp 0x14005ae43
mov eax, r15d
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.1400023f0
nop
mov r8d, dword [rsp + 0x20]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xe0]
call fcn.140022790
nop
lea r8, [rsp + 0x28]
mov rdx, rax
lea rcx, [rsp + 0xa0]
call fcn.140022810
nop
mov r8d, esi
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140022790
nop
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005aeb0
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0xe0]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005aecd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x30]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005aee7
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 add dword [rdx + 0x10], 0xffffffff
jg 0x14005af00
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
call fcn.140052fc0
mov r8, rax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x70]
call fcn.14001b610
nop
lea r8, [r12 + 0x198]
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.14000f540
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005af47
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rdx, [rsp + 0x48]
mov rcx, r12
call fcn.140014de0
nop
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005af6f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rsp + 0x60]
add rdx, 0xffffffffffffffe8
lock add dword [rdx + 0x10], 0xffffffff
jg 0x14005af8e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
jmp 0x14005af8e
or rdi, 0xffffffffffffffff
mov dword [r12 + 0x1e0], r15d
mov rbx, qword [r12 + 0x190]
sub rbx, 0x18
mov qword [rsp + 0x118], rbx
mov rcx, qword [rbx]
mov rax, qword [rcx]
call qword [rax + 0x20]
mov rcx, rax
mov qword [rsp + 0x110], rax
cmp dword [rbx + 0x10], 0
jl 0x14005afd9
cmp rax, qword [rbx]
jne 0x14005afd9
mov qword [rsp + 0x50], rbx
lock inc dword [rbx + 0x10]
mov rsi, qword [rsp + 0x50]
jmp 0x14005b026
mov rax, qword [rax]
mov r14d, 2
mov r8d, r14d
mov edx, dword [rbx + 8]
call qword [rax]
mov rsi, rax
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x14005affc
call fcn.1400025d0
mov eax, dword [rbx + 8]
mov dword [rsi + 8], eax
mov eax, dword [rbx + 8]
inc eax
movsxd rdx, eax
mov qword [rsp + 0x108], rdx
lea r9, [rdx + rdx]
lea r8, [rbx + 0x18]
add rdx, rdx
lea rcx, [rsi + 0x18]
call fcn.1400cd294
lea rbx, [rsi + 0x18]
mov qword [rsp + 0x68], rbx
mov rcx, r13
call fcn.140059f20
mov esi, eax
mov dword [rsp + 0xc0], eax
test eax, eax
je 0x14005b178
mov ecx, dword [0x1401c6d80]
lea r8d, [rcx + 1]
imul r8d, ecx
mov eax, 0x2aaaaaab
imul r8d
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea eax, [rdx + rdx*2]
shl eax, 2
sub r8d, eax
cmp r8d, 0xb
jne 0x14005b121
mov word [rsp + 0x770], r15w
xor edx, edx
mov r8d, 0x176b0
lea rcx, [rsp + 0x772]
call fcn.1400d1cf0
mov dword [0x1401c6d80], r15d
mov r9d, r15d
mov dword [rsp + 0x3c], r15d
cmp r9d, 0xdb
jge 0x14005b113
mov r8d, r15d
mov dword [rsp + 0x40], r15d
nop dword [rax + rax]
cmp r8d, 0xdb
jge 0x14005b109
test r9d, r9d
je 0x14005b0ff
test r8d, r8d
je 0x14005b0ff
movsxd rdx, r9d
imul rdx, rdx, 0xdb
movsxd rax, r8d
add rdx, rax
movsx ecx, word [rsp + rdx*2 + 0x5ba]
movsx eax, word [rsp + rdx*2 + 0x76e]
inc ecx
add ecx, eax
mov word [rsp + rdx*2 + 0x770], cx
inc r8d
mov dword [rsp + 0x40], r8d
jmp 0x14005b0c0
inc r9d
mov dword [rsp + 0x3c], r9d
jmp 0x14005b0a7
movsx eax, word [rsp + 0x17e20]
mov dword [0x1401c6d80], eax
mov rdx, qword [r12 + 0xe0]
mov rcx, r15
lea r8, str.task
nop word [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x14005b157
cmp rcx, 5
jne 0x14005b140
jmp 0x14005b15e
sbb r15d, r15d
or r15d, 1
test r15d, r15d
sete al
test al, al
je 0x14005b170
mov rcx, r12
call fcn.140016960
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_ExitProcess]
mov rdx, qword [r12 + 0x190]
mov qword [rsp + 0x100], rdx
mov eax, r15d
test rdx, rdx
setne al
mov dword [rsp + 0xb0], eax
test eax, eax
jne 0x14005b1a6
mov ecx, 0x80004005
call fcn.140001920
mov rax, rbx
sub rdx, rbx
nop dword [rax]
movzx ecx, word [rax]
cmp cx, word [rax + rdx]
jne 0x14005b1c7
add rax, 2
test cx, cx
jne 0x14005b1b0
mov eax, r15d
jmp 0x14005b1cc
sbb eax, eax
or eax, 1
mov dword [rsp + 0x80], eax
test eax, eax
je 0x14005b3be
lea rdx, [0x14014ed3c]
lea rcx, [rsp + 0x58]
call fcn.140003450
nop
lea r9, [0x1401c25e0]
cmp byte [0x1401c7fb1], 0
jne 0x14005b2a2
mov dword [rsp + 0x740], 0xa0013
mov dword [rsp + 0x744], 0x180030
mov dword [rsp + 0x748], 0x16000f
mov dword [rsp + 0x74c], 0x1b001b
mov dword [rsp + 0x750], 0x1c000c
mov dword [rsp + 0x754], 0x20030
mov dword [rsp + 0x758], 0xc001d
mov dword [rsp + 0x75c], 0x12000c
mov dword [rsp + 0x760], 0x340003
mov word [rsp + 0x764], r15w
lea r8, [0x1401c1da0]
mov dword [rsp + 0x38], r15d
cmp r15d, 0x12
jge 0x14005b29b
movsxd rdx, r15d
movzx ecx, word [rsp + rdx*2 + 0x740]
movzx eax, byte [rdx + r8]
xor ecx, eax
mov word [r9 + rdx*2], cx
inc r15d
jmp 0x14005b274
mov byte [0x1401c7fb1], 1
lea r8, [rsp + 0x68]
mov rdx, r9
lea rcx, [rsp + 0xb8]
call fcn.14001b6f0
nop
lea r8, [rsp + 0x58]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000f540
nop
lea r8, [r12 + 0x190]
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.14000f540
nop
mov rdx, rax
mov rcx, r12
call fcn.14005c4a0
nop
mov rcx, qword [rsp + 0xf0]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0xd8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
dec eax
jg 0x14005b324
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xc8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0xe8], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
dec eax
jg 0x14005b355
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0xb8]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x78], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
dec eax
jg 0x14005b380
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x58]
add rcx, 0xffffffffffffffe8
mov qword [rsp + 0x88], rcx
mov eax, edi
lock xadd dword [rcx + 0x10], eax
dec eax
jg 0x14005b3ad
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea rcx, [r13 + 0x1f8]
call fcn.14006b0e0
mov rbx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [r12 + 0x1e0], eax
add rbx, 0xffffffffffffffe8
mov qword [rsp + 0x98], rbx
lock xadd dword [rbx + 0x10], edi
dec edi
jg 0x14005b3f3
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
xor eax, eax
mov rcx, qword [rsp + 0x17e30]
xor rcx, rsp
call fcn.1400cc8b0
lea r11, [rsp + 0x17e40]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret