Function at 0x140001800
Capabilities:
Accept command line arguments
Check mutex and terminate process on windows
Check mutex on windows
Create process on windows
Create thread
Get common file path
Query environment variable
Resume thread
Set current directory
Terminate process

Disassembly:
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbp
push r14
lea rbp, [rsp - 0xcd8]
sub rsp, 0xdd8
lea rcx, str.GIVE_DEBUGGER_CHANCE_TO_ATTACH
call fcn.140052680
test rax, rax
je 0x140001845
xor r9d, r9d
lea r8, str.Tundra
lea rdx, str.Native_debugger_can_attach_now
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov qword [rsp + 0xdb0], r13
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
lea rdx, str.Tundra_Main_Thread
call fcn.140045e50
mov ecx, 0x8007
call qword [sym.imp.KERNEL32.dll_SetErrorMode]
xor edx, edx
lea rcx, [rbp + 0x770]
mov r8d, 0x280
call fcn.140070780
xor r14d, r14d
mov qword [rsp + 0x60], 0
mov ecx, 0xffff
mov qword [rbp - 0x58], r14
mov dword [rsp + 0x70], r14d
mov dword [rsp + 0x6a], 0
mov word [rsp + 0x68], 0
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorCount]
lea r8, [rbp + 0xcf8]
mov qword [rbp - 0x80], r14
mov dword [rsp + 0x7c], eax
lea rdx, [rbp + 0xcf0]
lea rax, str..tundra2.dag
mov qword [rbp - 0x68], r14
lea rcx, [rsp + 0x60]
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x60], r14
mov dword [rsp + 0x74], 0x3e8
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x50], r14
mov byte [rsp + 0x78], 1
call fcn.140001250
test al, al
jne 0x140001918
call fcn.140001540
lea eax, [r14 + 1]
mov r13, qword [rsp + 0xdb0]
add rsp, 0xdd8
pop r14
pop rbp
ret
mov qword [rsp + 0xdc8], rsi
mov rsi, qword [rbp - 0x78]
mov qword [0x14008eb08], rsi
cmp byte [rsp + 0x6c], r14b
je 0x140001949
mov rdx, qword [rbp + 0xcf8]
mov ecx, dword [rbp + 0xcf0]
call fcn.140032a20
jmp 0x140002daa
mov qword [rsp + 0xdd0], rbx
cmp byte [rsp + 0x78], r14b
jne 0x140001b1a
lea rcx, str._TUNDRA2_PARENT_PROCESS_HANDLE
call fcn.140052680
test rax, rax
jne 0x140001b1a
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], 2
lea r9, [rbp - 0x40]
mov r13d, 1
mov qword [rbp - 0x40], r14
mov dword [rsp + 0x28], r13d
mov r8, rax
mov rdx, rax
mov dword [rsp + 0x20], r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
test eax, eax
je 0x140002ddf
mov r9, qword [rbp - 0x40]
lea r8, str._TUNDRA2_PARENT_PROCESS_HANDLE_016I64x
lea edx, [r13 + 0x7f]
lea rcx, [rbp + 0x4d0]
call fcn.1400011f0
lea rcx, [rbp + 0x4d0]
call fcn.140050094
xorps xmm0, xmm0
mov dword [rbp - 0x10], 0x68
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [rbp + 0x54], eax
movups xmmword [rbp - 0xc], xmm0
mov qword [rbp - 0x28], rax
movups xmmword [rbp + 4], xmm0
movups xmmword [rbp + 0x14], xmm0
movups xmmword [rbp + 0x24], xmm0
movups xmmword [rbp + 0x34], xmm0
movups xmmword [rbp + 0x44], xmm0
movups xmmword [rbp - 0x38], xmm0
call qword [sym.imp.KERNEL32.dll_CreateJobObjectA]
xorps xmm0, xmm0
lea r8, [rbp + 0x60]
movups xmmword [rbp + 0x70], xmm0
mov r9d, 0x90
mov dword [rbp + 0x70], 0x1800
lea edx, [r13 + 8]
mov rcx, rax
mov rbx, rax
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
call qword [sym.imp.KERNEL32.dll_SetInformationJobObject]
test eax, eax
je 0x140002dec
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
xor r9d, r9d
xor r8d, r8d
mov rdx, rax
xor ecx, ecx
lea rax, [rbp - 0x38]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x10]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x1000204
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x140002df9
mov rdx, qword [rbp - 0x38]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_AssignProcessToJobObject]
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov rcx, qword [rbp - 0x38]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 0x38]
lea rdx, [rbp + 0xd08]
mov dword [rbp + 0xd08], r13d
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x38]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [rbp + 0xd08]
call qword [sym.imp.KERNEL32.dll_ExitProcess]
lea rcx, str._TUNDRA2_PARENT_PROCESS_HANDLE
mov qword [rsp + 0xdb8], r12
call fcn.140052680
test rax, rax
je 0x140001b9c
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x10]
call fcn.14004fb48
lea rcx, [0x1400b70b0]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov r12d, 1
lea rcx, [0x140045890]
mov edx, r12d
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
mov r9, rbx
mov qword [rsp + 0x28], r14
lea r8, [0x140045900]
mov dword [rsp + 0x20], r14d
mov edx, 0x4000
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
je 0x140002e06
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140001bbf
lea rcx, [0x1400b70b0]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov r12d, 1
lea rcx, [0x140045890]
mov edx, r12d
call qword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
mov qword [rsp + 0xdc0], rdi
call fcn.140013bf0
mov rbx, qword [rbp - 0x80]
mov qword [rbp + 0xd08], rax
test rbx, rbx
je 0x140001c46
mov rdx, rbx
lea rcx, [rbp - 0x38]
call fcn.140013c40
cmp qword [rax + 0x18], 7
jbe 0x140001bf2
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rdx, qword [rbp - 0x20]
mov edi, eax
cmp rdx, 7
jbe 0x140001c3d
mov rcx, qword [rbp - 0x38]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140001c38
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140002e23
mov rcx, r8
call fcn.140048124
cmp edi, 1
jne 0x140002e13
mov r13d, dword [rsp + 0x7c]
cmp r13d, 0x80
jle 0x140001c78
mov r9d, 0x80
lea rdx, str.too_many_build_threads___d____clamping_to__d
mov r8d, r13d
lea ecx, [r9 - 0x7e]
call fcn.140013a20
mov r13d, 0x80
mov dword [rsp + 0x7c], r13d
cmp byte [rsp + 0x60], r14b
je 0x140001c8b
call fcn.140001540
xor eax, eax
jmp 0x140002d92
cmp byte [rsp + 0x62], r14b
mov eax, 3
mov ecx, 0xf
cmovne eax, ecx
cmp byte [rsp + 0x64], r14b
je 0x140001ca7
or eax, 0x1c
lea rdx, [rbp + 0x550]
mov dword [0x14008e778], eax
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
dec eax
cmp eax, 0x102
ja 0x140002dd2
lea rdx, [rbp + 0x550]
lea rax, [rbp + 0x660]
nop word [rax + rax]
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
cmp cl, 0x3a
je 0x140001e0a
cmp cl, 0x5c
je 0x140001e0a
mov byte [rax], cl
inc rax
test cl, cl
jne 0x140001ce0
lea r9, [rbp + 0x660]
mov qword [rsp + 0x20], rsi
lea r8, str.GlobalTundra___s__s
mov edx, 0x104
lea rcx, [rbp + 0x60]
call fcn.1400011f0
lea r8, [rbp + 0x60]
mov byte [rbp + 0x163], r14b
xor edx, edx
xor ecx, ecx
xor bl, bl
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov rcx, rax
mov edx, 0x64
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x140001d99
test bl, bl
jne 0x140001d79
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea r8, [rbp + 0x550]
mov ecx, 2
mov r9d, eax
lea rdx, str.More_than_one_copy_of_Tundra_running_in__s____PID__u_waiting
call fcn.140013a20
mov bl, 1
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 0x64
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x140001d52
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea r9, [rbp + 0x550]
mov ecx, 8
mov r8d, eax
lea rdx, str.PID__u_successfully_locked__s
call fcn.140013a20
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea rdx, [0x14008eb10]
mov ecx, 0x104
mov dword [0x14008ec14], eax
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
je 0x140002e29
mov qword [rsp + 0xda8], r15
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
mov rcx, rax
mov r9d, r14d
cmp word [rcx], r14w
jne 0x140001e01
cmp word [rcx + 2], r14w
je 0x140001e15
inc r9d
add rcx, 2
jmp 0x140001df4
mov byte [rax], 0x5e
inc rax
jmp 0x140001ce0
mov qword [rsp + 0x38], r14
lea rdi, [0x14008ec20]
mov qword [rsp + 0x30], r14
add r9d, 2
mov dword [rsp + 0x28], 0x20000
mov r8, rax
xor edx, edx
mov qword [rsp + 0x20], rdi
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp byte [0x14008ec20], r14b
mov r15, 0xffffffffffffffff
je 0x140001ebe
xor ebx, ebx
mov esi, ebx
nop dword [rax + rax]
cmp rsi, 0x6000
jae 0x140001ebe
mov rbx, r15
nop dword [rax]
inc rbx
cmp byte [rdi + rbx], 0
jne 0x140001e70
mov edx, 0x3d
mov rcx, rdi
call fcn.140048fbc
test rax, rax
je 0x140001eb3
cmp rax, rdi
je 0x140001eb3
lea rdx, [0x1400aec20]
inc r14
lea rcx, [rax + 1]
mov qword [rsi + rdx], rdi
sub rax, rdi
mov qword [rsi + rdx + 8], rcx
mov qword [rsi + rdx + 0x10], rax
add rsi, 0x18
inc rdi
add rdi, rbx
cmp byte [rdi], 0
jne 0x140001e60
lea rcx, [0x1400807c0]
mov qword [0x14008ec18], r14
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.GetOverlappedResultEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp qword [rbp - 0x68], 0
lea rsi, [0x14007dff8]
mov qword [0x1400c3c18], rax
mov qword [rsp + 0x58], rsi
je 0x1400020a2
lea eax, [r13 + 1]
mov byte [0x14008eab8], 1
mov dword [0x1400b70a8], eax
lock inc qword [0x1400c3c40]
mov rax, qword [rbp - 0x68]
xor r14d, r14d
mov qword [0x1400b7090], r14
mov rdi, r15
nop word [rax + rax]
cmp byte [rax + rdi + 1], r14b
lea rdi, [rdi + 1]
jne 0x140001f30
lea rbx, [rdi + 1]
lea rcx, [rbx + 8]
call fcn.140053cb4
mov qword [rax], rbx
lock add qword [0x1400b7090], rbx
mov rdx, qword [rbp - 0x68]
lea rcx, [rax + 8]
lea r8, [rdi + 1]
mov qword [0x1400b7098], rcx
call fcn.1400700e0
movsxd rbx, dword [0x1400b70a8]
shl rbx, 6
lea rcx, [rbx + 8]
call fcn.140053cb4
mov qword [rax], rbx
lock add qword [0x1400b7090], rbx
cmp dword [0x1400b70a8], r14d
lea rdi, [rax + 8]
mov qword [0x1400b70a0], rdi
mov esi, r14d
jle 0x140002099
mov rbx, r14
lea r13, str.profilerStrings
lea r15, [0x1400b7090]
mov ecx, 0x140008
call fcn.140053cb4
mov qword [rax], 0x140000
lock add qword [0x1400b7090], 0x140000
mov dword [rdi + rbx + 0x38], r14d
add rax, 8
mov qword [rdi + rbx + 0x30], rax
mov ecx, 0x100078
mov qword [rdi + rbx], r14
mov qword [rdi + rbx + 8], r14
mov qword [rdi + rbx + 0x18], r15
mov qword [rdi + rbx + 0x10], r14
mov qword [rdi + rbx + 0x20], r13
mov qword [rdi + rbx + 0x28], r14
call fcn.140053cb4
mov qword [rax], 0x100070
lock add qword [0x1400b7090], 0x100070
lea r8, [rax + 8]
mov rax, qword [rdi + rbx + 8]
mov qword [r8], rax
lea rax, [r8 + 0x6f]
and rax, 0xffffffffffffffc0
mov qword [r8 + 8], r14
mov qword [r8 + 0x28], rax
mov qword [r8 + 0x10], 0x100000
mov qword [r8 + 0x18], r14
cmp qword [rdi + rbx + 8], r14
je 0x140002066
mov rax, qword [rdi + rbx + 8]
mov rdx, qword [rax + 0x20]
add rdx, qword [rax + 0x10]
mov qword [r8 + 0x20], rdx
mov rax, qword [rdi + rbx + 8]
mov qword [rax + 8], r8
jmp 0x14000206e
mov qword [r8 + 0x20], r14
mov qword [rdi + rbx], r8
mov qword [rdi + rbx + 8], r8
inc esi
mov byte [rdi + rbx + 0x3c], r14b
add rbx, 0x40
cmp esi, dword [0x1400b70a8]
jge 0x140002092
mov rdi, qword [0x1400b70a0]
jmp 0x140001fb6
mov r15, 0xffffffffffffffff
lea rsi, [0x14007dff8]
jmp 0x1400020a5
xor r14d, r14d
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x170]
call fcn.140020de0
test al, al
jne 0x1400020c2
mov eax, r12d
jmp 0x140002d8a
lea rcx, [rbp + 0x170]
movaps xmmword [rsp + 0xd80], xmm7
mov dword [rbp + 0xd00], r14d
mov r12d, r14d
call fcn.140020240
movsd xmm7, qword [0x140083220]
test al, al
je 0x14000213d
mov rax, qword [rbp + 0x228]
add rax, 0x88
movsxd rcx, dword [rax]
add rcx, rax
cmp dword [rax], 0
cmove rcx, r14
call fcn.14005009c
cmp byte [rbp + 0x249], 0
lea rcx, [rbp + 0x170]
mov rsi, rax
mov qword [rsp + 0x58], rax
je 0x1400021f2
call fcn.14001f110
lea rdx, str.Only_showing_targets___quitting
mov ecx, 8
call fcn.140013a20
mov r13d, 1
lea rcx, [rbp + 0x170]
movaps xmmword [rsp + 0xd90], xmm6
call fcn.1400210c0
cmp qword [rbp + 0x280], 0
je 0x14000261a
cmp byte [0x14008eab8], 0
je 0x14000261a
mov ecx, dword [0x1400b70a8]
mov ebx, r14d
test ecx, ecx
jle 0x1400021a7
mov rdi, r14
mov rax, qword [0x1400b70a0]
cmp byte [rax + rdi + 0x3c], 0
je 0x14000219d
mov ecx, ebx
call fcn.14003df60
mov ecx, dword [0x1400b70a8]
inc ebx
add rdi, 0x40
cmp ebx, ecx
jl 0x140002182
call fcn.14003dac0
cmp dword [0x1400b70a8], 0
jle 0x1400025a8
movsd xmm6, qword [0x1400831f8]
xor ebx, ebx
mov edi, ebx
nop word [rax + rax]
mov rsi, qword [0x1400b70a0]
xorps xmm0, xmm0
mov rcx, qword [rsi + rdi + 0x10]
test rcx, rcx
js 0x1400024f4
cvtsi2sd xmm0, rcx
jmp 0x140002509
cmp qword [rbp + 0x288], 0
je 0x140002219
call fcn.140040240
test al, al
lea rdx, str.Only_reporting_includes___quitting
mov r12d, 3
cmovne r12d, r14d
jmp 0x140002133
mov edi, dword [rbp + 0xcf0]
mov r8d, edi
mov rdx, qword [rbp + 0xcf8]
call fcn.14001f220
lea rcx, [rbp + 0x170]
call fcn.14003dff0
mov r9, qword [rbp + 0xcf8]
lea r8, [rbp + 0x770]
lea rdx, [rbp + 0xd00]
mov dword [rsp + 0x20], edi
lea rcx, [rbp + 0x170]
call fcn.1400215b0
cmp qword [0x14008e868], 0
mov r12d, eax
je 0x140002354
lea rcx, [0x14008e870]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [0x14008e89c]
lea rdx, [rsp + 0x50]
add ecx, 0x10
mov dword [rbp + 0x4cc], r14d
mov r9d, 7
mov dword [rbp + 0x4c8], ecx
lea rcx, [rbp + 0x450]
mov dword [rsp + 0x50], r12d
lea r8d, [r9 - 3]
call fcn.140022e90
lea rcx, [0x14008e870]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rbp - 0x18]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x140002e36
mov rax, qword [rbp - 0x18]
xor edx, edx
sub rax, qword [0x14008eac8]
xorps xmm0, xmm0
imul rax, rax, 0xf4240
div qword [0x14008eac0]
mov rbx, rax
add rbx, qword [0x14008ead0]
mov rcx, rbx
sub rcx, qword [0x14008e8a0]
js 0x14000230d
cvtsi2sd xmm0, rcx
jmp 0x140002322
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm0, xmm7
comisd xmm0, xmmword [0x140083200]
jbe 0x140002343
mov rcx, qword [0x14008e868]
call fcn.14005342c
mov qword [0x14008e8a0], rbx
mov rcx, qword [0x14008e868]
test rcx, rcx
je 0x140002354
call fcn.140052714
lea rcx, [rbp + 0x170]
mov qword [0x14008e868], r14
call fcn.140004140
mov r13d, 1
test al, al
jne 0x140002384
lea rdx, str.Couldnt_save_AllBuiltNodes
mov ecx, r13d
call fcn.140013a20
lea r12d, [r13 + 1]
lea rcx, [rbp + 0x170]
call fcn.140021c60
test al, al
jne 0x1400023ab
lea rdx, str.Couldnt_save_header_scanning_cache
mov ecx, 2
call fcn.140013a20
mov r12d, 2
mov rcx, qword [rbp + 0x228]
mov eax, r14d
sub rcx, 0xffffffffffffff80
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
lea rcx, [rbp + 0x9f0]
neg eax
sbb rax, rax
and rdx, rax
call fcn.14003d630
lea rdx, [rbp + 0x9f0]
lea rcx, [rbp + 0x358]
call fcn.140038970
test al, al
jne 0x14000241b
mov rcx, qword [rbp + 0x228]
lea rdx, str.Failed_to_create_directories_for___s_
sub rcx, 0xffffffffffffff80
mov eax, r14d
sub eax, dword [rcx]
movsxd r8, dword [rcx]
add r8, rcx
mov ecx, 2
neg eax
sbb rax, rax
and r8, rax
call fcn.140013a20
mov rcx, qword [rbp + 0x228]
mov eax, r14d
add rcx, 0x84
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
lea rcx, [rbp + 0x9f0]
neg eax
sbb rax, rax
and rdx, rax
call fcn.14003d630
lea rdx, [rbp + 0x9f0]
lea rcx, [rbp + 0x358]
call fcn.140038970
test al, al
jne 0x140002491
mov rcx, qword [rbp + 0x228]
lea rdx, str.Failed_to_create_directories_for___s_
add rcx, 0x84
mov eax, r14d
sub eax, dword [rcx]
movsxd r8, dword [rcx]
add r8, rcx
mov ecx, 2
neg eax
sbb rax, rax
and r8, rax
call fcn.140013a20
mov rax, qword [rbp + 0x228]
lea rdx, [rbp + 0x170]
lea rcx, [rax + 0x84]
sub rax, 0xffffffffffffff80
movsxd r9, dword [rcx]
add r9, rcx
cmp dword [rcx], 0
lea rcx, [rbp + 0x3a0]
movsxd r8, dword [rax]
cmove r9, r14
add r8, rax
cmp dword [rax], 0
cmove r8, r14
call fcn.14001e910
test al, al
jne 0x140002143
lea rdx, str.Couldnt_save_SHA1_digest_cache
mov ecx, 2
call fcn.140013a20
mov r12d, 2
jmp 0x140002143
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
mov r9d, dword [rsi + rdi + 0x38]
lea rdx, str.profiler:_thread__i_had__d_events___.1f_KB_strings
mulsd xmm0, xmm6
mov r8d, r14d
mov ecx, 0x10
movsd qword [rsp + 0x20], xmm0
call fcn.140013a20
mov rcx, qword [rsi + rdi + 0x30]
test rcx, rcx
je 0x14000254e
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
neg rax
lock add qword [0x1400b7090], rax
call fcn.140053948
mov rcx, qword [rsi + rdi]
test rcx, rcx
je 0x140002584
nop word [rax + rax]
mov rbx, qword [rcx + 8]
add rcx, 0xfffffffffffffff8
mov rax, qword [rsi + rdi + 0x18]
mov rdx, qword [rcx]
neg rdx
lock add qword [rax], rdx
call fcn.140053948
mov rcx, rbx
test rbx, rbx
jne 0x140002560
xor eax, eax
inc r14d
mov qword [rsi + rdi], rax
mov qword [rsi + rdi + 8], rax
add rdi, 0x40
cmp r14d, dword [0x1400b70a8]
jl 0x1400021d0
mov rsi, qword [rsp + 0x58]
mov rcx, qword [0x1400b70a0]
test rcx, rcx
je 0x1400025cc
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
neg rax
lock add qword [0x1400b7090], rax
call fcn.140053948
mov rcx, qword [0x1400b7098]
test rcx, rcx
je 0x1400025f0
mov rax, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
neg rax
lock add qword [0x1400b7090], rax
call fcn.140053948
lock dec qword [0x1400c3c40]
cmp qword [0x1400b7090], 0
je 0x140002617
lea rcx, str.BEE_ENABLE_TUNDRA_HEAP_VALIDATION
call fcn.140052680
test rax, rax
jne 0x140002e43
xor r14d, r14d
cmp byte [rsp + 0x65], 0
je 0x140002ba5
mov rcx, qword [0x14008e800]
xorps xmm1, xmm1
test rcx, rcx
js 0x14000263b
cvtsi2sd xmm1, rcx
jmp 0x140002650
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
movsd xmm6, qword [0x140083218]
lea rcx, str.output_cleanup:_____10.2f_ms_n
divsd xmm1, xmm7
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e818]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002687
cvtsi2sd xmm1, rcx
jmp 0x14000269c
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.json_parse_time:____10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
lea rcx, str.scan_cache:_n
call fcn.1400011a0
mov edx, dword [0x14008e780]
lea rcx, str.__hits__new_:_______10u_n
call fcn.1400011a0
mov edx, dword [0x14008e784]
lea rcx, str.__hits__frozen_:____10u_n
call fcn.1400011a0
mov edx, dword [0x14008e788]
lea rcx, str.__misses:___________10u_n
call fcn.1400011a0
mov edx, dword [0x14008e78c]
lea rcx, str.__inserts:__________10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e790]
xorps xmm1, xmm1
test rcx, rcx
js 0x14000271f
cvtsi2sd xmm1, rcx
jmp 0x140002734
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__save_time:________10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e798]
lea rcx, str.__entries_dropped:__10u_n
call fcn.1400011a0
lea rcx, str.file_signing:_n
call fcn.1400011a0
mov edx, dword [0x14008e830]
lea rcx, str.__cache_hits:_______10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e828]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002793
cvtsi2sd xmm1, rcx
jmp 0x1400027a8
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__cache_get_time:___10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e820]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400027d7
cvtsi2sd xmm1, rcx
jmp 0x1400027ec
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__cache_save_time:__10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e834]
lea rcx, str.__digests:__________10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e838]
xorps xmm1, xmm1
test rcx, rcx
js 0x14000282d
cvtsi2sd xmm1, rcx
jmp 0x140002842
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__digest_time:______10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
lea rcx, str.stat_cache:_n
call fcn.1400011a0
mov edx, dword [0x14008e7f0]
lea rcx, str.__hits:_____________10u_n
call fcn.1400011a0
mov edx, dword [0x14008e7f4]
lea rcx, str.__misses:___________10u_n
call fcn.1400011a0
mov edx, dword [0x14008e7f8]
lea rcx, str.__dirty:____________10u_n
call fcn.1400011a0
lea rcx, str.building:_n
call fcn.1400011a0
mov edx, dword [0x14008e7a0]
lea rcx, str.__old_records:______10u_n
call fcn.1400011a0
mov edx, dword [0x14008e79c]
lea rcx, str.__new_records:______10u_n
call fcn.1400011a0
mov edx, dword [0x14008e7a4]
lea rcx, str.__dropped_records:__10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e7a8]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400028f5
cvtsi2sd xmm1, rcx
jmp 0x14000290a
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__state_save_time:__10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e808]
lea rcx, str.__exec___count:_____10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e810]
xorps xmm1, xmm1
test rcx, rcx
js 0x14000294b
cvtsi2sd xmm1, rcx
jmp 0x140002960
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__exec___time:______10.2f_s_n
movq rdx, xmm1
call fcn.1400011a0
lea rcx, str.low_level_syscalls:_n
call fcn.1400011a0
mov edx, dword [0x14008e7b0]
lea rcx, str.__mmap___calls:_____10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e7b8]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400029a9
cvtsi2sd xmm1, rcx
jmp 0x1400029be
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__mmap___time:______10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e7c0]
lea rcx, str.__munmap___calls:___10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e7c8]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400029ff
cvtsi2sd xmm1, rcx
jmp 0x140002a14
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__munmap___time:____10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e7e0]
lea rcx, str.__stat___calls:_____10u_n
call fcn.1400011a0
mov rcx, qword [0x14008e7e8]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002a55
cvtsi2sd xmm1, rcx
jmp 0x140002a6a
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__stat___time:______10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e840]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002a99
cvtsi2sd xmm1, rcx
jmp 0x140002aae
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.compiledag:_________10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e848]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002add
cvtsi2sd xmm1, rcx
jmp 0x140002af2
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.compilederived______10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e858]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002b21
cvtsi2sd xmm1, rcx
jmp 0x140002b36
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__cumulativepoints__10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov rcx, qword [0x14008e850]
xorps xmm1, xmm1
test rcx, rcx
js 0x140002b65
cvtsi2sd xmm1, rcx
jmp 0x140002b7a
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
divsd xmm1, xmm7
lea rcx, str.__nongenindices_____10.2f_ms_n
mulsd xmm1, xmm6
movq rdx, xmm1
call fcn.1400011a0
mov edx, dword [0x14008e860]
lea rcx, str.pointless_wakeups___10u_n
call fcn.1400011a0
call fcn.140013bf0
mov rcx, rax
xorps xmm6, xmm6
sub rcx, qword [rbp + 0xd08]
js 0x140002bc0
cvtsi2sd xmm6, rcx
jmp 0x140002bd5
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2sd xmm6, rax
addsd xmm6, xmm6
divsd xmm6, xmm7
mov rax, r15
nop dword [rax]
inc rax
cmp byte [rsi + rax], 0
jne 0x140002be0
test rax, rax
je 0x140002d05
test r12d, r12d
jne 0x140002c04
cmp byte [rsp + 0x66], r12b
jne 0x140002d05
jmp 0x140002c0a
cmp r12d, 4
jne 0x140002c0d
mov r13d, r14d
movsd xmm0, qword [0x140083210]
mov ecx, r12d
comisd xmm0, xmm6
mov ebx, dword [0x14008e808]
jbe 0x140002c54
call fcn.140001790
mov ecx, dword [rbp + 0xd00]
lea rdx, str.__s__s___.2f_seconds____d_items_updated___d_evaluated
mov dword [rsp + 0x30], ecx
mov r9, rax
mov dword [rsp + 0x28], ebx
mov ecx, r13d
mov r8, rsi
movsd qword [rsp + 0x20], xmm6
call fcn.1400392a0
jmp 0x140002cd1
cvttsd2si r14d, xmm6
mov eax, 0x91a2b3c5
imul r14d
lea esi, [r14 + rdx]
sar esi, 0xb
mov eax, esi
shr eax, 0x1f
add esi, eax
imul eax, esi, 0xfffff1f0
add r14d, eax
mov eax, 0x88888889
imul r14d
lea edi, [r14 + rdx]
sar edi, 5
mov eax, edi
shr eax, 0x1f
add edi, eax
call fcn.140001790
mov r8, qword [rsp + 0x58]
lea rdx, str.__s__s___.2f_seconds____d:_02d:_02d____d_items_updated___d_evaluated
imul ecx, edi, 0x3c
mov r9, rax
sub r14d, ecx
mov ecx, dword [rbp + 0xd00]
mov dword [rsp + 0x48], ecx
mov ecx, r13d
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], esi
movsd qword [rsp + 0x20], xmm6
call fcn.1400392a0
cmp r12d, 4
jne 0x140002d05
lea rax, [rbp + 0x770]
nop
inc r15
cmp byte [rax + r15], 0
jne 0x140002ce0
test r15, r15
je 0x140002d05
lea r8, [rbp + 0x770]
mov ecx, r13d
lea rdx, str._Additional_run_caused_by:__s
call fcn.1400392a0
mov rcx, qword [0x14008e770]
test rcx, rcx
je 0x140002d2e
call fcn.140052714
lea rcx, [0x14008ead8]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
xor ebx, ebx
mov qword [0x14008e770], rbx
jmp 0x140002d30
xor ebx, ebx
mov rcx, qword [0x14008e868]
test rcx, rcx
je 0x140002d41
call fcn.140052714
cmp byte [0x1400c3c10], 0
mov qword [0x14008e868], rbx
je 0x140002d5e
lea rcx, [0x14008e870]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
lea rcx, [0x1400b4c58]
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov rdx, qword [0x1400c3c40]
test rdx, rdx
jne 0x140002dc5
movaps xmm6, xmmword [rsp + 0xd90]
mov eax, r12d
movaps xmm7, xmmword [rsp + 0xd80]
mov r15, qword [rsp + 0xda8]
mov rdi, qword [rsp + 0xdc0]
mov r12, qword [rsp + 0xdb8]
mov rbx, qword [rsp + 0xdd0]
mov rsi, qword [rsp + 0xdc8]
mov r13, qword [rsp + 0xdb0]
add rsp, 0xdd8
pop r14
pop rbp
ret
lea rcx, str._d_heaps_have_been_initialized_but_not_destroyed.
call fcn.140013920
int3
lea rcx, str.couldnt_get_working_directory
call fcn.1400139a0
int3
lea rcx, str.DuplicateHandle___failed
call fcn.1400139a0
int3
lea rcx, str.couldnt_set_job_info
call fcn.1400139a0
int3
lea rcx, str.CreateProcess___failed
call fcn.1400139a0
int3
lea rcx, str.Failed_to_create_canary_watcher_thread
call fcn.1400139a0
int3
mov rdx, rbx
lea rcx, str.couldnt_change_directory_to__s
call fcn.1400139a0
int3
call fcn.140052424
int3
lea rcx, str.couldnt_get_temporary_directory_path
call fcn.1400139a0
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.1400139a0
int3
mov r8, qword [0x1400b7090]
lea rdx, [0x1400b7090]
lea rcx, str.Destroying_heap__p_which_still_contains__zu_bytes_of_allocated_memory__which_indicates_a_memory_leak.
call fcn.140013920
int3