Function at 0x140040f30
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x968]
sub rsp, 0xa68
mov rsi, rcx
call fcn.140013cb0
xor r9d, r9d
mov qword [rbp + 0x10], rax
cmp byte [0x140099b70], r9b
mov r15, rax
je 0x140040fa0
lea rax, str.RemoveStaleOutputs
mov dword [rbp + 0xe8], r9d
xorps xmm0, xmm0
mov qword [rbp + 0xf0], rax
movdqu xmmword [rbp + 0xf8], xmm0
mov dword [rbp + 0x110], 0x32
call fcn.140013cb0
mov qword [rbp + 0x108], rax
xor r9d, r9d
mov rcx, qword [rsi + 0xc8]
lea rbx, [rsi + 8]
mov r8, qword [rsi + 0xb8]
mov rdi, rbx
mov qword [rbp], rbx
mov r14, qword [rbx + 0x10]
mov qword [rsp + 0xa60], r12
mov qword [rbp + 0xc0], r14
mov qword [rsp + 0xa58], r13
mov qword [rbp - 0x48], r8
mov qword [rbp + 0x9b0], rcx
mov qword [rbp + 0xb8], rbx
test rcx, rcx
jne 0x140041001
lea rdx, str.unable_to_clean_up_stale_output_files___no_previous_build_state
mov ecx, 8
call fcn.140013ae0
jmp 0x14004245d
xorps xmm0, xmm0
mov qword [rbp + 0x28], 0
movdqu xmmword [rbp + 0x18], xmm0
mov dword [rbp + 0x30], r9d
movdqu xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x38], rsi
mov qword [rbp + 0x50], 0
mov dword [rbp + 0x58], r9d
mov qword [rbp + 0x60], rsi
movsxd r12, dword [r8 + 8]
test r12, r12
jle 0x140041268
lea r13, [r8 + 0x10]
mov r15, r9
mov qword [rbp + 0x9a8], r13
nop dword [rax]
movsxd rsi, dword [r13]
mov eax, r9d
sub eax, dword [r13]
add rsi, r13
neg eax
sbb rax, rax
and rsi, rax
mov eax, r9d
add rsi, r15
sub eax, dword [rsi + 0x3c]
lea rcx, [rsi + 0x3c]
movsxd rdx, dword [rcx]
lea r8, [rsi + 0x3c]
movsxd rbx, dword [r8]
add rdx, rcx
neg eax
sbb rax, rax
add rbx, r8
and rdx, rax
movsxd rax, dword [rsi + 0x38]
lea r14, [rdx + rax*8]
mov eax, r9d
sub eax, dword [r8]
neg eax
sbb rax, rax
and rbx, rax
cmp rbx, r14
je 0x140041107
xor r13d, r13d
nop dword [rax]
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x18]
mov edi, dword [rbx + 4]
add r8, rbx
mov eax, r13d
mov edx, edi
sub eax, dword [rbx]
neg eax
sbb rax, rax
and r8, rax
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x1400410f4
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x18]
add r8, rbx
mov eax, r13d
sub eax, dword [rbx]
mov edx, edi
neg eax
sbb rax, rax
and r8, rax
call fcn.140018b10
add rbx, 8
cmp rbx, r14
jne 0x1400410b0
mov r13, qword [rbp + 0x9a8]
xor r9d, r9d
movsxd rdx, dword [rsi + 0x54]
lea rcx, [rsi + 0x54]
movsxd rbx, dword [rsi + 0x54]
lea r8, [rsi + 0x54]
add rdx, rcx
mov eax, r9d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rbx, r8
and rdx, rax
movsxd rax, dword [rsi + 0x50]
lea r14, [rdx + rax*8]
mov eax, r9d
sub eax, dword [r8]
neg eax
sbb rax, rax
and rbx, rax
cmp rbx, r14
je 0x1400411a1
xor r13d, r13d
nop dword [rax + rax]
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x18]
mov edi, dword [rbx + 4]
add r8, rbx
cmp dword [rbx], r13d
mov edx, edi
cmove r8, r13
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x14004118e
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x18]
add r8, rbx
mov eax, r13d
sub eax, dword [rbx]
mov edx, edi
neg eax
sbb rax, rax
and r8, rax
call fcn.140018b10
add rbx, 8
cmp rbx, r14
jne 0x140041150
mov r13, qword [rbp + 0x9a8]
xor r9d, r9d
movsxd rdx, dword [rsi + 0x44]
lea rcx, [rsi + 0x44]
movsxd rbx, dword [rsi + 0x44]
lea r8, [rsi + 0x44]
add rdx, rcx
mov eax, r9d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rbx, r8
and rdx, rax
movsxd rax, dword [rsi + 0x40]
lea rsi, [rdx + rax*8]
mov eax, r9d
sub eax, dword [r8]
neg eax
sbb rax, rax
and rbx, rax
cmp rbx, rsi
je 0x140041241
xor r13d, r13d
nop dword [rax]
nop word [rax + rax]
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x40]
mov edi, dword [rbx + 4]
add r8, rbx
cmp dword [rbx], r13d
mov edx, edi
cmove r8, r13
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x14004122e
movsxd r8, dword [rbx]
lea rcx, [rbp + 0x40]
add r8, rbx
mov eax, r13d
sub eax, dword [rbx]
mov edx, edi
neg eax
sbb rax, rax
and r8, rax
call fcn.140018b10
add rbx, 8
cmp rbx, rsi
jne 0x1400411f0
mov r13, qword [rbp + 0x9a8]
xor r9d, r9d
add r15, 0xb0
sub r12, 1
jne 0x140041050
mov rbx, qword [rbp]
mov rcx, qword [rbp + 0x9b0]
mov rsi, qword [rbp + 0x9a0]
mov r8, qword [rbp - 0x48]
lea rdx, [rbp - 0x30]
mov qword [rbp - 0x20], 0
mov qword [rbp + 0xd0], rdx
xorps xmm0, xmm0
lea rdx, [rbp]
mov qword [rbp - 0x10], rsi
mov qword [rbp + 0xd8], rdx
mov eax, r9d
lea rdx, [rbp + 0x18]
mov dword [rbp - 0x18], eax
mov qword [rbp + 0x68], rdx
lea rdx, [rbp - 0x30]
movdqu xmmword [rbp - 0x30], xmm0
mov qword [rbp + 0x70], rdx
lea rdx, [rbp + 0x40]
movups xmm0, xmmword [rbp + 0xd0]
mov qword [rbp + 0x88], rdx
movups xmmword [rbp + 0x78], xmm0
movsxd rdi, dword [rcx + 4]
mov qword [rbp + 0x9b0], rdi
test rdi, rdi
jle 0x1400415fe
lea rdx, [rcx + 0xc]
mov rcx, r9
mov qword [rbp + 0x9b8], rcx
mov qword [rbp - 8], rdx
nop dword [rax]
nop dword [rax + rax]
movsxd rbx, dword [rdx]
mov eax, r9d
sub eax, dword [rdx]
add rbx, rdx
mov edx, dword [r8 + 4]
neg eax
sbb rax, rax
and rbx, rax
add rbx, rcx
mov rcx, rbx
mov qword [rbp - 0x50], rbx
call fcn.140003fb0
xor r9d, r9d
test al, al
je 0x1400415c5
movsxd rdx, dword [rbx + 0x38]
lea rcx, [rbx + 0x38]
movsxd r13, dword [rbx + 0x38]
lea r8, [rbx + 0x38]
add rdx, rcx
mov eax, r9d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add r13, r8
and rdx, rax
movsxd rax, dword [rbx + 0x34]
lea rcx, [rdx + rax*8]
mov eax, r9d
sub eax, dword [r8]
neg eax
mov qword [rbp - 0x40], rcx
sbb rax, rax
and r13, rax
cmp r13, rcx
je 0x14004147b
nop word [rax + rax]
mov r12d, dword [r13 + 4]
mov eax, r9d
sub eax, dword [r13]
mov edx, r12d
movsxd r14, dword [r13]
mov rcx, qword [rbp + 0x68]
add r14, r13
neg eax
mov dword [rbp + 0x9a8], r12d
sbb rax, rax
and r14, rax
mov r8, r14
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x14004145c
mov rax, qword [rbp + 0x88]
xor dil, dil
mov ecx, dword [rax + 0x10]
mov rbx, qword [rax]
mov rsi, qword [rax + 8]
test ecx, ecx
je 0x140041415
mov r15d, ecx
mov r12d, 1
nop word [rax + rax]
cmp dword [rbx], 0
je 0x1400413fc
mov rcx, qword [rsi]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rcx + r8], 0
jne 0x1400413e0
mov rdx, r14
call fcn.140058690
test eax, eax
movzx edi, dil
cmove edi, r12d
add rbx, 4
add rsi, 8
sub r15, r12
jne 0x1400413d0
mov r12d, dword [rbp + 0x9a8]
test dil, dil
jne 0x14004145c
mov rdx, r14
lea rcx, [rbp + 0x78]
call fcn.140042520
mov rdx, r14
lea rcx, [rbp + 0x118]
call fcn.140027500
mov eax, dword [rax]
shr eax, 2
test al, 1
je 0x14004145c
mov rcx, qword [rbp + 0x70]
mov r8, r14
mov edx, r12d
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x14004145c
mov rcx, qword [rbp + 0x70]
mov r8, r14
mov edx, r12d
call fcn.140018b10
add r13, 8
mov r9d, 0
cmp r13, qword [rbp - 0x40]
jne 0x140041370
mov rbx, qword [rbp - 0x50]
mov rdi, qword [rbp + 0x9b0]
movsxd rdx, dword [rbx + 0x40]
lea rcx, [rbx + 0x40]
movsxd r13, dword [rbx + 0x40]
lea r8, [rbx + 0x40]
add rdx, rcx
mov eax, r9d
sub eax, dword [rcx]
neg eax
sbb rax, rax
add r13, r8
and rdx, rax
movsxd rax, dword [rbx + 0x3c]
lea rcx, [rdx + rax*8]
mov eax, r9d
sub eax, dword [r8]
neg eax
mov qword [rbp - 0x40], rcx
sbb rax, rax
and r13, rax
cmp r13, rcx
je 0x1400415c5
mov r12d, dword [r13 + 4]
mov eax, r9d
sub eax, dword [r13]
mov edx, r12d
movsxd r14, dword [r13]
mov rcx, qword [rbp + 0x68]
add r14, r13
neg eax
mov dword [rbp + 0x9a8], r12d
sbb rax, rax
and r14, rax
mov r8, r14
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x1400415aa
mov rax, qword [rbp + 0x88]
xor bl, bl
mov ecx, dword [rax + 0x10]
mov rdi, qword [rax]
mov rsi, qword [rax + 8]
test ecx, ecx
je 0x140041563
mov r15d, ecx
mov r12d, 1
nop word [rax + rax]
cmp dword [rdi], 0
je 0x14004154b
mov rcx, qword [rsi]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rcx + r8], 0
jne 0x140041530
mov rdx, r14
call fcn.140058690
test eax, eax
movzx ebx, bl
cmove ebx, r12d
add rdi, 4
add rsi, 8
sub r15, r12
jne 0x140041520
mov r12d, dword [rbp + 0x9a8]
test bl, bl
jne 0x1400415aa
mov rdx, r14
lea rcx, [rbp + 0x78]
call fcn.140042520
mov rdx, r14
lea rcx, [rbp + 0x130]
call fcn.140027500
mov eax, dword [rax]
shr eax, 2
test al, 1
je 0x1400415aa
mov rcx, qword [rbp + 0x70]
mov r8, r14
mov edx, r12d
call fcn.140015f60
cmp eax, 0xffffffff
jne 0x1400415aa
mov rcx, qword [rbp + 0x70]
mov r8, r14
mov edx, r12d
call fcn.140018b10
add r13, 8
mov r9d, 0
cmp r13, qword [rbp - 0x40]
jne 0x1400414c1
mov rdi, qword [rbp + 0x9b0]
mov rcx, qword [rbp + 0x9b8]
mov rdx, qword [rbp - 8]
add rcx, 0x70
mov r8, qword [rbp - 0x48]
sub rdi, 1
mov qword [rbp + 0x9b0], rdi
mov qword [rbp + 0x9b8], rcx
jne 0x1400412f0
mov rbx, qword [rbp]
mov eax, dword [rbp - 0x18]
mov rsi, qword [rbp + 0x9a0]
mov edi, eax
mov rax, qword [rbx + 8]
shl rdi, 3
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rcx, [rdx + rdi]
cmp rcx, qword [rax + 0x10]
jbe 0x14004162f
mov rdx, rdi
mov rcx, rbx
call fcn.14003b680
xor r9d, r9d
mov edx, r9d
mov rax, qword [rbx + 8]
lea rcx, [rdx + rdi]
mov r14, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add r14, rdx
mov rax, qword [rbx + 8]
mov qword [rbp - 0x48], r14
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov qword [rbx + 0x10], rdx
mov eax, dword [rbp - 0x20]
test eax, eax
je 0x140041688
mov r8, qword [rbp - 0x28]
mov r10d, eax
mov rdx, qword [rbp - 0x30]
cmp dword [rdx], 0
je 0x14004167a
mov rax, qword [r8]
mov ecx, r9d
inc r9d
mov qword [r14 + rcx*8], rax
add rdx, 4
add r8, 8
sub r10, 1
jne 0x140041668
mov eax, dword [rbp - 0x18]
mov rcx, r14
movzx r9d, byte [rbp + 0x9a0]
lea rdx, [r14 + rax*8]
mov r8, rdx
sub r8, r14
sar r8, 3
call fcn.140042750
mov ebx, dword [rbp - 0x18]
lea rcx, [rbp + 0xb0]
mov dword [rbp - 8], ebx
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1400424fd
mov rax, qword [rbp + 0xb0]
xor edx, edx
sub rax, qword [0x140099f88]
xor r15d, r15d
imul rax, rax, 0xf4240
mov dword [rbp - 0x38], r15d
div qword [0x140099f80]
mov rdi, rax
add rdi, qword [0x140099f90]
mov qword [rbp + 8], rdi
test ebx, ebx
je 0x140042349
lea r13, [rsi + 8]
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x40], r13
mov edi, r15d
nop
mov rbx, qword [r14 + rdi*8]
lea rcx, [rbp + 0x148]
mov rdx, rbx
call fcn.140027500
movups xmm1, xmmword [rax]
movd eax, xmm1
movups xmmword [rbp + 0x98], xmm1
test al, 1
je 0x14004176b
mov eax, dword [rbp + 0x98]
shr eax, 4
test al, 1
jne 0x14004176b
mov rcx, rbx
call fcn.1400145f0
mov rdx, qword [r14 + rdi*8]
test al, al
je 0x14004176f
mov r8, rdx
mov ecx, 8
lea rdx, str.cleaned_up__s
call fcn.140013ae0
jmp 0x140042288
mov rdx, qword [r14 + rdi*8]
lea rcx, [rbp + 0x160]
call fcn.140027500
mov eax, dword [rax]
shr eax, 2
test al, 1
je 0x140042288
mov r8, qword [r14 + rdi*8]
lea rdx, str.Failed_deleting_stale_output_file__s
mov ecx, 2
call fcn.140013ae0
mov rcx, r13
mov qword [rsp + 0x78], r13
call fcn.140036970
xor r12d, r12d
mov qword [rbp - 0x78], rax
mov rsi, rax
mov qword [rbp - 0x80], rax
mov rdi, rax
mov byte [rbp + 0x9a0], 0x7b
lea r15, [rbp + 0x9a0]
lea r14d, [r12 + 1]
nop
mov rcx, rsi
sub rcx, rdi
add rcx, 0x3f8
jne 0x140041843
mov rax, qword [r13 + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x14004180e
mov edx, 0x400
mov rcx, r13
call fcn.14003b680
xor edx, edx
mov rax, qword [r13 + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [r13 + 8]
mov ecx, 0x3f8
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov qword [r13 + 0x10], rdx
mov qword [rsi + 0x3f8], rdi
mov rsi, rdi
cmp rcx, r14
mov rbx, r14
mov rdx, r15
cmovb rbx, rcx
mov rcx, rdi
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r12, rbx
add r15, rbx
sub r14, rbx
jne 0x1400417d0
mov byte [rbp - 0x68], r14b
lea r15, [rbp + 0x9a8]
mov r14d, 1
mov qword [rbp - 0x78], rsi
mov byte [rbp + 0x9a8], 0x22
nop dword [rax]
mov rax, rsi
sub rax, rdi
add rax, 0x3f8
jne 0x140041902
mov rax, qword [r13 + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x1400418cd
mov edx, 0x400
mov rcx, r13
call fcn.14003b680
xor edx, edx
mov rax, qword [r13 + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [r13 + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [r13 + 0x10], rdx
mov qword [rsi + 0x3f8], rdi
mov rsi, rdi
cmp rax, r14
mov rbx, r14
mov rdx, r15
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r12, rbx
add r15, rbx
sub r14, rbx
jne 0x140041890
lea r8, [r14 - 1]
mov qword [rbp - 0x70], rdi
lea rdx, [0x1400895cc]
mov qword [rbp - 0x78], rsi
lea rcx, [rsp + 0x78]
mov qword [rbp - 0x60], r12
call fcn.1400367e0
mov rsi, qword [rsp + 0x78]
lea r15d, [r14 + 1]
mov r14, qword [rbp - 0x78]
lea r12, [rbp + 0x9b0]
mov r13, qword [rbp - 0x60]
mov rdi, qword [rbp - 0x70]
mov byte [rbp + 0x9b0], 0x22
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x1400419e2
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x1400419ad
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041970
mov qword [rbp - 0x78], r14
lea r12, [rbp + 0x9b8]
mov byte [rbp + 0x9b8], 0x3a
mov r15d, 1
nop dword [rax]
nop dword [rax + rax]
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x140041aa2
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041a6d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041a30
mov byte [rbp - 0x68], r15b
lea r12, [rsp + 0x30]
mov r15d, 1
mov qword [rbp - 0x78], r14
mov byte [rsp + 0x30], 0x22
nop dword [rax]
nop dword [rax + rax]
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x140041b62
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041b2d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041af0
lea r8, [r15 - 1]
mov qword [rbp - 0x70], rdi
lea rdx, str.removeStaleOutputFailed
mov qword [rbp - 0x78], r14
lea rcx, [rsp + 0x78]
mov qword [rbp - 0x60], r13
call fcn.1400367e0
mov rsi, qword [rsp + 0x78]
lea r12, [rsp + 0x38]
mov r13, qword [rbp - 0x60]
mov r15d, 1
mov rdi, qword [rbp - 0x70]
mov r14, qword [rbp - 0x78]
mov byte [rsp + 0x38], 0x22
nop
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x140041c42
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041c0d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041bd0
mov qword [rbp - 0x78], r14
lea r12, [rsp + 0x40]
mov byte [rbp - 0x68], 1
mov r15d, 1
mov byte [rsp + 0x40], 0x2c
nop dword [rax]
nop dword [rax + rax]
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x140041d02
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041ccd
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041c90
mov qword [rbp - 0x78], r14
lea r12, [rsp + 0x48]
mov byte [rsp + 0x48], 0x22
mov r15d, 1
mov rax, r14
sub rax, rdi
add rax, 0x3f8
jne 0x140041db2
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041d7d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r14 + 0x3f8], rdi
mov r14, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r15, rbx
jne 0x140041d40
lea r8, [r15 - 1]
mov qword [rbp - 0x70], rdi
lea rdx, str.file
mov qword [rbp - 0x78], r14
lea rcx, [rsp + 0x78]
mov qword [rbp - 0x60], r13
call fcn.1400367e0
mov rsi, qword [rsp + 0x78]
lea r14d, [r15 + 1]
mov r15, qword [rbp - 0x78]
lea r12, [rsp + 0x50]
mov r13, qword [rbp - 0x60]
mov rdi, qword [rbp - 0x70]
mov byte [rsp + 0x50], 0x22
nop dword [rax]
mov rax, r15
sub rax, rdi
add rax, 0x3f8
jne 0x140041e92
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041e5d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r15 + 0x3f8], rdi
mov r15, rdi
cmp rax, r14
mov rbx, r14
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r14, rbx
jne 0x140041e20
mov qword [rbp - 0x78], r15
lea r12, [rsp + 0x58]
mov byte [rsp + 0x58], 0x3a
mov r14d, 1
mov rax, r15
sub rax, rdi
add rax, 0x3f8
jne 0x140041f42
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x140041f0d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r15 + 0x3f8], rdi
mov r15, rdi
cmp rax, r14
mov rbx, r14
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r14, rbx
jne 0x140041ed0
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x60], r13
mov rax, qword [rax + rcx*8]
mov byte [rbp - 0x68], r14b
mov qword [rbp + 0xc8], rax
test rax, rax
jne 0x140041fbf
lea r8d, [r14 + 4]
lea rdx, str.null
lea rcx, [rsp + 0x78]
call fcn.1400366e0
mov r14, qword [rbp - 0x60]
mov rdi, qword [rbp - 0x70]
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x78]
jmp 0x140042150
mov byte [rsp + 0x60], 0x22
lea r12, [rsp + 0x60]
mov r14d, 1
nop
mov rax, r15
sub rax, rdi
add rax, 0x3f8
jne 0x140042042
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x14004200d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r15 + 0x3f8], rdi
mov r15, rdi
cmp rax, r14
mov rbx, r14
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r13, rbx
add r12, rbx
sub r14, rbx
jne 0x140041fd0
mov rdx, qword [rbp + 0xc8]
lea r8, [r14 - 1]
lea rcx, [rsp + 0x78]
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x60], r13
call fcn.1400367e0
mov rsi, qword [rsp + 0x78]
lea r15d, [r14 + 1]
mov r14, qword [rbp - 0x60]
lea r12, [rsp + 0x68]
mov rdi, qword [rbp - 0x70]
mov r13, qword [rbp - 0x78]
mov byte [rsp + 0x68], 0x22
nop dword [rax]
mov rax, r13
sub rax, rdi
add rax, 0x3f8
jne 0x140042122
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x1400420ed
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r13 + 0x3f8], rdi
mov r13, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r14, rbx
add r12, rbx
sub r15, rbx
jne 0x1400420b0
mov qword [rbp - 0x78], r13
mov byte [rsp + 0x70], 0x7d
lea r12, [rsp + 0x70]
mov r15d, 1
mov rax, r13
sub rax, rdi
add rax, 0x3f8
jne 0x1400421d2
mov rax, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rax + 0x18]
add rdx, 7
and rdx, 0xfffffffffffffff8
lea rax, [rdx + 0x400]
cmp rax, qword [rcx + 0x10]
jbe 0x14004219d
mov edx, 0x400
mov rcx, rsi
call fcn.14003b680
xor edx, edx
mov rax, qword [rsi + 8]
lea rcx, [rdx + 0x400]
mov rdi, qword [rax + 0x28]
mov qword [rax + 0x18], rcx
add rdi, rdx
mov rax, qword [rsi + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x18]
mov eax, 0x3f8
mov qword [rsi + 0x10], rdx
mov qword [r13 + 0x3f8], rdi
mov r13, rdi
cmp rax, r15
mov rbx, r15
mov rdx, r12
mov rcx, rdi
cmovb rbx, rax
mov r8, rbx
call fcn.14004dd10
add rdi, rbx
add r14, rbx
add r12, rbx
sub r15, rbx
jne 0x140042160
cmp qword [0x140099830], r15
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x78], r13
je 0x14004227c
lea rcx, [0x140099fa0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rsi, qword [0x140099830]
mov rdi, qword [rbp - 0x80]
test r14, r14
je 0x140042262
nop
mov ebx, 0x3f8
mov r9, rsi
cmp r14, rbx
mov edx, 1
mov rcx, rdi
cmovb rbx, r14
mov r8, rbx
call fcn.1400570cc
mov rdi, qword [rdi + 0x3f8]
sub r14, rbx
jne 0x140042230
mov rsi, qword [0x140099830]
mov rdx, rsi
mov ecx, 0xa
call fcn.1400579dc
lea rcx, [0x140099fa0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rdi, qword [rbp - 0x50]
mov r14, qword [rbp - 0x48]
mov r13, qword [rbp - 0x40]
mov eax, dword [rbp - 0x38]
inc rdi
mov ebx, dword [rbp - 8]
inc eax
mov dword [rbp - 0x38], eax
mov qword [rbp - 0x50], rdi
cmp eax, ebx
jb 0x140041710
mov rdi, qword [rbp + 8]
xor r15d, r15d
test ebx, ebx
je 0x140042349
mov rax, qword [r14]
lea r8, str.Delete__d_artifact_files_that_are_no_longer_in_use.__like__s_
mov r9d, ebx
mov qword [rsp + 0x20], rax
mov edx, 0x7d0
lea rcx, [rbp + 0x180]
call fcn.140003390
lea rcx, [rbp + 8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14004250a
mov rax, qword [rbp + 8]
xor edx, edx
sub rax, qword [0x140099f88]
xorps xmm0, xmm0
imul rax, rax, 0xf4240
div qword [0x140099f80]
mov rcx, rax
sub rcx, rdi
add rcx, qword [0x140099f90]
js 0x14004231a
cvtsi2sd xmm0, rcx
jmp 0x14004232f
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm0, qword [0x14008df68]
lea r8, [rbp + 0x180]
xor ecx, ecx
cvttsd2si edx, xmm0
call fcn.14003c360
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x14004236a
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp - 0x10]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x14004238b
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp - 0x10]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rcx, qword [rbp + 0x40]
xorps xmm0, xmm0
mov qword [rbp - 0x20], 0
mov dword [rbp - 0x18], r15d
movdqu xmmword [rbp - 0x30], xmm0
test rcx, rcx
je 0x1400423c0
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp + 0x60]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rcx, qword [rbp + 0x48]
test rcx, rcx
je 0x1400423e1
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp + 0x60]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rcx, qword [rbp + 0x18]
xorps xmm0, xmm0
mov qword [rbp + 0x50], 0
mov dword [rbp + 0x58], r15d
movdqu xmmword [rbp + 0x40], xmm0
test rcx, rcx
je 0x140042416
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp + 0x38]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x140042437
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rbp + 0x38]
neg rdx
lock add qword [rax], rdx
call fcn.140058710
mov rdi, qword [rbp + 0xb8]
xorps xmm0, xmm0
mov r14, qword [rbp + 0xc0]
mov dword [rbp + 0x30], r15d
mov r15, qword [rbp + 0x10]
movdqu xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], 0
mov qword [rdi + 0x10], r14
mov rax, qword [rdi + 8]
cmp qword [rax + 0x20], r14
jbe 0x14004247d
nop dword [rax + rax]
mov rax, qword [rax]
mov qword [rdi + 8], rax
cmp qword [rax + 0x20], r14
ja 0x140042470
mov rax, qword [rdi + 8]
lea rcx, [rbp + 0xe8]
sub r14, qword [rax + 0x20]
mov qword [rax + 0x18], r14
call fcn.140001250
lea rcx, [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x1400424f0
mov rax, qword [rbp + 0x10]
xor edx, edx
sub rax, qword [0x140099f88]
imul rax, rax, 0xf4240
div qword [0x140099f80]
sub rax, r15
add rax, qword [0x140099f90]
lock add qword [0x1400998c0], rax
mov r13, qword [rsp + 0xa58]
mov r12, qword [rsp + 0xa60]
add rsp, 0xa68
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3