Function at 0x14003a390
Capabilities:
Check for time delay via queryperformancecounter
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3a0]
sub rsp, 0x4a0
mov rsi, qword [0x140099fd0]
lea r8, str._unknown_reason_
mov rdi, rcx
mov edx, 0x1f4
lea rcx, [rbp + 0x1a0]
call fcn.140003390
mov r9, rsi
lea r8, str._s_derived
mov edx, 0x200
lea rcx, [rbp - 0x60]
call fcn.140003390
lea rdx, [rbp - 0x60]
mov byte [rbp + 0x19f], 0
lea rcx, [rsp + 0x70]
call fcn.140027500
cmp qword [rdi + 0x108], 0
movups xmm0, xmmword [rax]
movsd xmm1, qword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm0
movsd qword [rsp + 0x60], xmm1
je 0x14003a51a
mov rbx, qword [rdi + 0x108]
lea rcx, [rbp - 0x78]
mov rdx, rbx
call fcn.140027500
movups xmm1, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movd eax, xmm1
movups xmmword [rsp + 0x30], xmm1
movsd qword [rsp + 0x40], xmm0
test al, 1
je 0x14003a86e
mov r15, qword [rsp + 0x38]
inc r15
mov rcx, r15
call fcn.140058a4c
mov r14, rax
test rax, rax
je 0x14003a8fb
lea rdx, [0x14008abcc]
mov rcx, rbx
call fcn.1400147d0
mov r12, rax
test rax, rax
jne 0x14003a4a0
mov r8, rbx
lea rdx, str.couldnt_open__s_for_reading
lea ecx, [rax + 1]
call fcn.140013ae0
jmp 0x14003a882
lea r8, [r15 - 1]
mov r9, r12
mov edx, 1
mov rcx, r14
call fcn.140058984
lea rcx, [r15 - 1]
mov r13, rax
cmp rcx, rax
mov rcx, r12
je 0x14003a4f1
call fcn.140056cc4
mov rcx, r14
call fcn.140058710
mov r9d, r13d
mov dword [rsp + 0x20], r15d
mov r8, rbx
lea rdx, str.couldnt_read_JSON_data___d_bytes_read_out_of__d_
mov ecx, 1
call fcn.140013ae0
jmp 0x14003a882
call fcn.140056cc4
mov rdx, rsi
mov byte [r14 + r15 - 1], 0
mov rcx, r14
call fcn.14001dde0
mov rcx, r14
movzx ebx, al
call fcn.140058710
test bl, bl
je 0x14003a882
xor r15d, r15d
lea rcx, [rsp + 0x30]
mov rdx, rsi
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r15
call fcn.14003b820
mov rbx, qword [rsp + 0x30]
lea ecx, [r15 + 8]
mov r8, rsi
test rbx, rbx
je 0x14003a7db
mov r14, qword [rsp + 0x38]
lea rdx, str._s:_successfully_mapped_at__p___d_bytes_
mov r9, rbx
mov dword [rsp + 0x20], r14d
call fcn.140013ae0
cmp r14, 0xa4
jae 0x14003a598
mov r9d, r14d
mov dword [rsp + 0x20], 0xa4
mov r8, rsi
lea rdx, str._s:_Bad_mmap_size__d___need_at_least__d_bytes
lea ecx, [r15 + 2]
call fcn.140013ae0
jmp 0x14003a7e7
cmp dword [rbx], 0x2b33e3e6
je 0x14003a5c4
mov r9d, dword [rbx]
lea rdx, str._s:_Bad_magic_number__08x___current_is__08x
mov r8, rsi
mov dword [rsp + 0x20], 0x2b33e3e6
mov ecx, 8
call fcn.140013ae0
jmp 0x14003a7e7
cmp dword [rbx + 0xa0], 0x2b33e3e6
je 0x14003a5e4
mov r8, rsi
lea rdx, str.Did_not_find_expected_magic_number_marker_at_the_end_of__s._This_most_likely_means_data_writing_code_for_that_file_is_writing_too_much_or_too_little_data
mov ecx, 1
jmp 0x14003a7e2
movups xmm0, xmmword [rsp + 0x30]
mov qword [rdi + 0xb8], rbx
movups xmm1, xmmword [rsp + 0x40]
movups xmmword [rdi + 0x38], xmm0
movups xmmword [rdi + 0x48], xmm1
cmp qword [rdi + 0x108], r15
je 0x14003a619
mov rdx, rdi
mov rcx, rbx
call fcn.14001f3e0
test al, al
jne 0x14003a908
test byte [rsp + 0x50], 1
je 0x14003a629
cmp qword [rdi + 0x108], r15
je 0x14003a654
mov rcx, qword [rdi + 0xb8]
lea rax, [rbp - 0x60]
lea r9, [rdi + 0x1e8]
mov qword [rsp + 0x20], rax
lea r8, [rdi + 8]
mov rdx, rdi
call fcn.140018340
test al, al
je 0x14003a92d
lea rdx, [rbp - 0x60]
mov qword [rsp + 0x50], r15
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
call fcn.14003b820
mov rbx, qword [rsp + 0x50]
lea r8, [rbp - 0x60]
mov ecx, 8
test rbx, rbx
je 0x14003a74c
mov r14, qword [rsp + 0x58]
lea rdx, str._s:_successfully_mapped_at__p___d_bytes_
mov r9, rbx
mov dword [rsp + 0x20], r14d
call fcn.140013ae0
cmp r14, 0x64
jae 0x14003a6d1
mov r9d, r14d
mov dword [rsp + 0x20], 0x64
lea r8, [rbp - 0x60]
mov ecx, 2
lea rdx, str._s:_Bad_mmap_size__d___need_at_least__d_bytes
call fcn.140013ae0
jmp 0x14003a758
cmp dword [rbx], 0xeaeaf2a7
je 0x14003a6fb
mov r9d, dword [rbx]
lea r8, [rbp - 0x60]
lea rdx, str._s:_Bad_magic_number__08x___current_is__08x
mov dword [rsp + 0x20], 0xeaeaf2a7
mov ecx, 8
call fcn.140013ae0
jmp 0x14003a758
cmp dword [rbx + 0x60], 0xeaeaf2a7
je 0x14003a716
lea r8, [rbp - 0x60]
mov ecx, 1
lea rdx, str.Did_not_find_expected_magic_number_marker_at_the_end_of__s._This_most_likely_means_data_writing_code_for_that_file_is_writing_too_much_or_too_little_data
jmp 0x14003a753
movups xmm0, xmmword [rsp + 0x50]
mov qword [rdi + 0xc0], rbx
mov al, 1
movups xmm1, xmmword [rsp + 0x60]
mov rbx, qword [rsp + 0x4f0]
movups xmmword [rdi + 0x58], xmm0
movups xmmword [rdi + 0x68], xmm1
add rsp, 0x4a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, str._s:_mmap_failed
call fcn.140013ae0
lea rcx, [rbp + 0x3e8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14003a93e
mov rax, qword [rbp + 0x3e8]
xor edx, edx
sub rax, qword [0x140099f88]
imul rax, rax, 0xf4240
div qword [0x140099f80]
mov rdi, rax
add rdi, qword [0x140099f90]
test rbx, rbx
je 0x14003a7c1
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
je 0x14003a94b
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14003a896
jmp 0x14003a958
lea rdx, str._s:_mmap_failed
call fcn.140013ae0
lea rcx, [rbp + 0x3e8]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14003a9b0
mov rax, qword [rbp + 0x3e8]
xor edx, edx
sub rax, qword [0x140099f88]
imul rax, rax, 0xf4240
div qword [0x140099f80]
mov rdi, rax
add rdi, qword [0x140099f90]
test rbx, rbx
je 0x14003a850
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
je 0x14003a9bd
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rbp + 0x3e0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
jne 0x14003a8a3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
mov r8, rbx
lea rdx, str.build_script_didnt_generate__s
mov ecx, 1
call fcn.140013ae0
mov rdx, qword [rdi + 0x108]
lea rcx, str._s_failed_to_freeze
call fcn.14003a320
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
mov rax, qword [rbp + 0x3e0]
xor edx, edx
sub rax, qword [0x140099f88]
imul rax, rax, 0xf4240
div qword [0x140099f80]
sub rax, rdi
add rax, qword [0x140099f90]
lock inc dword [0x140099870]
lock add qword [0x140099878], rax
mov rcx, rsi
call fcn.1400145f0
lea rcx, [rbp - 0x60]
call fcn.1400145f0
mov rdx, rsi
lea rcx, str._s_couldnt_be_loaded
call fcn.14003a320
int3
lea rcx, str.couldnt_allocate_memory_for_JSON_buffer
call fcn.1400139e0
int3
lea rcx, [rdi + 0x38]
call fcn.14003ba70
mov rcx, rsi
call fcn.1400145f0
lea rcx, [rbp - 0x60]
call fcn.1400145f0
mov ecx, 3
call fcn.140057850
int3
lea rdx, [rbp - 0x60]
lea rcx, str.failed_to_create_derived_dag_file__s
call fcn.14003a320
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
lea rcx, str.UnMapViewOfFile___failed
call fcn.140013a60
int3
mov rax, qword [rbp + 0x3e0]
xor edx, edx
sub rax, qword [0x140099f88]
imul rax, rax, 0xf4240
div qword [0x140099f80]
sub rax, rdi
add rax, qword [0x140099f90]
lock inc dword [0x140099870]
lock add qword [0x140099878], rax
mov rcx, rsi
call fcn.1400145f0
lea rcx, [rbp - 0x60]
call fcn.1400145f0
mov rdx, rsi
lea rcx, str._s_couldnt_be_loaded
call fcn.14003a320
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013a60
int3
lea rcx, str.UnMapViewOfFile___failed
call fcn.140013a60
int3