Function at 0x14000dc60
Capabilities:
Check for time delay via queryperformancecounter
Delete file
Encode data using xor
Hash data using crc32b
Move file

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1c8]
sub rsp, 0x290
mov r15d, dword [rcx + 0x1fc]
xor r12d, r12d
mov r10d, dword [rcx + 0x1b8]
mov ebx, edx
mov r9d, dword [rcx + 0x1c4]
mov rsi, r8
mov r8d, dword [rcx + 0x1bc]
mov rdi, rcx
mov dword [rcx + 0x45c], r12d
mov edx, 1
movaps xmmword [rax - 0x48], xmm6
mov r14d, r12d
mov qword [rsp + 0x60], r12
xorps xmm1, xmm1
lea ecx, [r8 - 0x2f]
mov dword [rsp + 0x50], r12d
shl rdx, cl
mov dword [rsp + 0x5c], r12d
mov dword [rsp + 0x54], r12d
test rdx, rdx
js 0x14000dcec
cvtsi2sd xmm1, rdx
jmp 0x14000dd01
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2sd xmm1, rax
addsd xmm1, xmm1
mulsd xmm1, qword [0x140025c58]
xorps xmm0, xmm0
mov eax, dword [rdi + 0x1b4]
mov ecx, r9d
cvtsi2sd xmm0, r10
sub ecx, r8d
dec eax
mov edx, 1
mov dword [rsp + 0x58], eax
shl edx, cl
dec edx
cmp dword [rdi + 0x1f8], 2
divsd xmm1, xmm0
movd xmm0, edx
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movsd qword [rdi + 0x468], xmm1
je 0x14000dd62
mov edx, r10d
movsd qword [rsp + 0x20], xmm1
lea rcx, str.Starting_trial_factoring_M_u_from_2_d_to_2_d___.2f_GHz_days__n
call fcn.140001020
cmp dword [0x1400b0488], r12d
jne 0x14000dd82
lea rcx, [0x1400b40a0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov dword [0x1400b0488], 1
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [0x1400b40a0]
xorps xmm0, xmm0
mov rax, qword [rsp + 0x68]
movsd xmm6, qword [0x140025c98]
cqo
idiv rcx
cvtsi2sd xmm0, rcx
mov qword [rbp - 0x38], rax
lea rcx, [rbp - 0x70]
movaps xmm1, xmm6
divsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
mulsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [rsp + 0x78], eax
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov r10d, dword [rdi + 0x1b8]
mov ecx, r10d
mov edx, dword [rdi + 0x1bc]
mov dword [rdi + 0x460], r12d
call fcn.14000f0f0
mov edx, dword [rdi + 0x1c4]
mov ecx, r10d
mov r13, rax
call fcn.14000f0f0
mov r10d, dword [rdi + 0x1f8]
mov r11, rax
mov qword [rsp + 0x68], rax
cmp r10d, 1
jle 0x14000de94
cmp dword [rdi + 0x1b0], r12d
movabs rcx, 0x174876e800
movabs rax, 0x2540be400
cmove rcx, rax
cmp r10d, 2
jne 0x14000de52
movabs rax, 0xcccccccccccccccd
mul rcx
mov rcx, rdx
shr rcx, 2
mov rax, r11
lea r9, [rcx + rcx*2]
sub rax, r13
cmp rax, r9
jbe 0x14000de94
xor edx, edx
mov rax, rsi
div rcx
mov r8, rsi
sub r8, rdx
sub r8, rcx
cmp r8, r13
mov rax, r8
cmovbe rax, r13
add r8, r9
mov r13, rax
cmp r8, r11
jb 0x14000de8c
cmp r11, rax
jae 0x14000de94
mov r11, r8
mov qword [rsp + 0x68], r8
mov ecx, dword [rdi + 0x1b4]
xor edx, edx
mov rax, r13
div rcx
sub r13, rdx
mov qword [rbp - 0x78], r13
cmp r10d, 2
je 0x14000deca
cmp dword [rdi + 0x230], 2
jl 0x14000deca
mov r8, r11
lea rcx, str.__k_min___llu___k_max___llu_n
mov rdx, r13
call fcn.140001020
mov eax, dword [rbp + 0x1e8]
test eax, eax
jne 0x14000df0e
mov rcx, rdi
call fcn.14000edd0
mov dword [rbp + 0x1e8], eax
test eax, eax
je 0x14000deeb
cmp eax, 0x14
jne 0x14000df0e
mov r8d, dword [rdi + 0x1c4]
lea rcx, str.ERROR:_No_suitable_kernel_found_for_bit_min_d__bit_max_d._n
mov edx, dword [rdi + 0x1bc]
call fcn.140001020
mov eax, 0x3b9aca01
jmp 0x14000eda5
mov r9d, dword [rdi + 0x214]
lea rdx, str._s__d
cdqe
imul rcx, rax, 0x38
lea rax, str.auto
add rax, rcx
lea rcx, [rdi + 0x470]
mov r8, rax
mov qword [rbp - 0x80], rax
call fcn.140001790
mov eax, dword [rdi + 0x1f8]
cmp eax, 2
je 0x14000df6c
cmp dword [rdi + 0x230], 1
jl 0x14000df6c
lea rdx, [rdi + 0x470]
lea rcx, str.Using_GPU_kernel___s__n
call fcn.140001020
mov eax, dword [rdi + 0x1f8]
lea rsi, [0x14001e88a]
cmp eax, 1
jne 0x14000e082
cmp dword [rdi + 0x1fc], r12d
jbe 0x14000e073
mov eax, dword [rdi + 0x230]
lea r9, [rbp + 0x1d0]
mov r8d, dword [rdi + 0x1c4]
mov edx, dword [rdi + 0x1bc]
mov ecx, dword [rdi + 0x1b8]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.140004970
cmp eax, 1
jne 0x14000e073
lea rcx, str._nFound_a_valid_checkpoint_file._n
call fcn.140001020
mov eax, dword [rdi + 0x230]
cmp eax, 1
jl 0x14000dff4
mov edx, dword [rbp + 0x1d0]
lea rcx, str.__last_finished_class_was:__d_n
call fcn.140001020
mov eax, dword [rdi + 0x230]
cmp eax, 2
jl 0x14000e017
mov edx, dword [rsp + 0x50]
lea r8, [0x140021528]
cmp edx, 1
lea rcx, str.__found__d_factor_s_already_n
cmove r8, rsi
call fcn.140001020
lea rcx, [0x14001f220]
call fcn.140001020
mov ebx, dword [rbp + 0x1d0]
mov esi, r12d
add ebx, 1
mov dword [rbp + 0x1d0], ebx
je 0x14000e063
mov r14d, dword [rdi + 0x1b8]
nop
mov r8d, esi
mov rdx, r13
mov ecx, r14d
call fcn.14000eec0
test eax, eax
je 0x14000e058
inc dword [rdi + 0x460]
inc esi
cmp esi, ebx
jb 0x14000e040
mov r14d, dword [rsp + 0x54]
mov eax, dword [rdi + 0x460]
mov esi, dword [rsp + 0x58]
mov dword [rsp + 0x5c], eax
jmp 0x14000e09a
mov esi, dword [rsp + 0x58]
mov ebx, r12d
mov dword [rbp + 0x1d0], ebx
jmp 0x14000e09a
mov eax, ebx
xor edx, edx
div dword [rdi + 0x1b4]
mov esi, edx
mov dword [rsp + 0x58], edx
mov ebx, edx
mov dword [rbp + 0x1d0], edx
cmp dword [rdi + 0x1e0], 1
jne 0x14000e0b1
mov rcx, rdi
call fcn.14000be70
mov ebx, dword [rbp + 0x1d0]
cmp ebx, esi
ja 0x14000e5ea
nop dword [rax]
mov esi, dword [rdi + 0x1b8]
mov r8d, ebx
mov ecx, esi
mov rdx, r13
call fcn.14000eec0
test eax, eax
je 0x14000e587
mov dword [rdi + 0x440], ebx
cmp dword [rdi + 0x224], r12d
jne 0x14000e5cb
inc dword [rdi + 0x460]
cmp dword [rdi + 0x1e0], 1
jne 0x14000e139
mov ecx, dword [0x1400b0490]
mov edx, 0x100
mov r9d, ebx
add r9, r13
inc ecx
call fcn.140014f20
mov edx, dword [rbp + 0x1e8]
lea eax, [rdx - 0x1a]
cmp eax, 0xd
jbe 0x14000e15e
lea rcx, str.ERROR:_Unknown_GPU_sieve_kernel_selected___d___n
call fcn.140001020
mov eax, 0x3b9aca01
jmp 0x14000eda5
mov r8d, dword [rdi + 0x1c8]
mov ecx, esi
mov edx, ebx
add rdx, r13
call fcn.1400090f0
mov edx, dword [rbp + 0x1e8]
lea eax, [rdx - 2]
cmp eax, 0x11
ja 0x14000e5b5
mov ecx, dword [rbp + 0x1d0]
mov r9d, edx
mov rdx, qword [rsp + 0x68]
add rcx, r13
mov r8, rdi
call fcn.140011c10
cmp eax, 0x3b9aca01
je 0x14000e59f
add dword [rsp + 0x50], eax
cmp dword [rdi + 0x1f8], 1
jne 0x14000e579
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov qword [rbp - 0x40], rax
mov rsi, rax
test r14d, r14d
je 0x14000e1d1
mov rax, qword [rsp + 0x60]
add rax, 0x12c
cmp rsi, rax
jle 0x14000e31c
lea rcx, [rdi + 0x490]
call fcn.1400050b0
mov dword [rsp + 0x54], r12d
jmp 0x14000e31c
cmp dword [0x1400b0f50], r12d
je 0x14000e1e4
mov dword [rsp + 0x54], r12d
jmp 0x14000e317
lea rdx, [rdi + 0x490]
mov r8d, 0xf5
lea rcx, [rbp + 0x80]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov edx, 0x2e
mov byte [rbp + 0x175], r12b
lea rcx, [rbp + 0x80]
call qword [sym.imp.VCRUNTIME140.dll_strrchr]
mov rbx, rax
test rax, rax
jne 0x14000e243
lea rcx, [rbp + 0x80]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], r12b
jne 0x14000e230
lea rbx, [rbp + 0x80]
add rbx, rax
cmp qword [0x1400b3488], r12
mov eax, dword [str..add]
mov dword [rbx], eax
movzx eax, byte [0x14001f308]
mov byte [rbx + 4], al
jne 0x14000e27d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__getcwd]
mov qword [0x1400b3488], rax
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__getdrive]
mov dword [0x1400b337c], eax
jmp 0x14000e283
mov eax, dword [0x1400b337c]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__chdrive]
test eax, eax
jne 0x14000e2a0
mov rcx, qword [0x1400b3488]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__chdir]
test eax, eax
je 0x14000e2c1
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [0x1400b3488]
lea rdx, str._nWarning:_Current_Directory___s__is_not_available._n
mov rcx, rax
call fcn.140001740
xor edx, edx
lea rcx, [rbp + 0x80]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__open]
test eax, eax
jns 0x14000e306
movsd xmm0, qword [str..add.txt]
lea rcx, [rbp + 0x80]
movsd qword [rbx], xmm0
movzx eax, byte [0x14001f318]
mov byte [rbx + 8], al
call fcn.14000a210
mov r14d, r12d
test eax, eax
setne r14b
mov dword [rsp + 0x54], r14d
jmp 0x14000e317
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__close]
mov eax, 1
mov dword [rsp + 0x54], eax
mov qword [rsp + 0x60], rsi
mov eax, dword [rdi + 0x1fc]
test eax, eax
je 0x14000e555
cmp eax, 1
jbe 0x14000e338
sub r15d, 1
je 0x14000e359
cmp eax, 1
jne 0x14000e34c
mov eax, dword [rdi + 0x200]
mov rcx, rsi
sub rcx, qword [rbp - 0x70]
cmp rcx, rax
jg 0x14000e359
cmp dword [rdi + 0x224], r12d
je 0x14000e555
mov r14d, dword [rdi + 0x1b8]
lea rdx, str.M_u.ckp
mov ebx, dword [rdi + 0x1c4]
lea rcx, [rbp - 0x30]
mov esi, dword [rdi + 0x1bc]
mov r8d, r14d
mov r15d, dword [rsp + 0x50]
mov r13d, dword [rbp + 0x1d0]
mov dword [rsp + 0x70], ebx
mov dword [rsp + 0x74], esi
call fcn.140001790
mov r8d, r14d
lea rdx, str.M_u.ckp.bu
lea rcx, [rbp - 0x10]
call fcn.140001790
mov r8d, r14d
lea rdx, str.M_u.ckp.write
lea rcx, [rbp - 0x68]
call fcn.140001790
lea rdx, [0x14001ee28]
lea rcx, [rbp - 0x68]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [rbp - 0x48], rax
test rax, rax
jne 0x14000e3e8
lea rdx, [rbp - 0x68]
lea rcx, str.WARNING:_Could_not_create_checkpoint_file___s__n
call fcn.140001020
jmp 0x14000e542
mov eax, dword [0x1400b3bf4]
lea r9, str.mfakto_0.15pre8_Win
mov dword [rsp + 0x40], r15d
lea rdx, str._u__d__d__d__s:__d__d
mov dword [rsp + 0x38], r13d
lea rcx, [rbp + 0x10]
mov qword [rsp + 0x30], r9
mov r8d, r14d
mov dword [rsp + 0x28], eax
mov r9d, esi
mov dword [rsp + 0x20], ebx
call fcn.140001790
mov r10d, r12d
lea rcx, [rbp + 0x10]
mov rax, 0xffffffffffffffff
mov rbx, r12
inc rax
cmp byte [rcx + rax], bl
jne 0x14000e433
movsxd rsi, eax
test eax, eax
jle 0x14000e495
nop dword [rax]
nop word [rax + rax]
movsx r11d, byte [rbp + rbx + 0x10]
mov r9d, 7
nop dword [rax]
movzx ecx, r9b
lea r8d, [r10 + r10]
mov edx, r11d
mov eax, r8d
sar edx, cl
xor eax, 0x4c11db7
mov ecx, r10d
and edx, 1
shr ecx, 0x1f
mov r10d, r8d
cmp cl, dl
cmovne r10d, eax
sub r9d, 1
jns 0x14000e460
inc rbx
cmp rbx, rsi
jl 0x14000e450
mov r9d, dword [rsp + 0x74]
lea rax, str.mfakto_0.15pre8_Win
mov rcx, qword [rbp - 0x48]
lea rdx, str._u__d__d__d__s:__d__d__08X_n
mov dword [rsp + 0x48], r10d
mov r8d, r14d
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], rax
mov eax, dword [0x1400b3bf4]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
call fcn.140001740
mov rcx, qword [rbp - 0x48]
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
cmp ebx, 0x22
jbe 0x14000e52f
test eax, eax
jne 0x14000e52f
lea rcx, [rbp - 0x10]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_rename]
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x68]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_rename]
test eax, eax
je 0x14000e542
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x68]
lea rcx, str.WARNING:_rename__s_to__s_failed._n
call fcn.140001020
jmp 0x14000e542
mov r8d, ebx
lea rdx, [rbp - 0x68]
lea rcx, str.WARNING:_Could_not_write_checkpoint_file___s____u_chars_written._n
call fcn.140001020
mov rax, qword [rbp - 0x40]
mov r15d, dword [rdi + 0x1fc]
mov r13, qword [rbp - 0x78]
mov qword [rbp - 0x70], rax
cmp dword [rdi + 0x208], 2
jb 0x14000e579
cmp dword [rsp + 0x50], r12d
jle 0x14000e579
mov eax, dword [rsp + 0x58]
cmp dword [rbp + 0x1d0], eax
je 0x14000e579
inc eax
mov dword [rbp + 0x1d0], eax
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fflush]
mov ebx, dword [rbp + 0x1d0]
inc ebx
mov dword [rbp + 0x1d0], ebx
cmp ebx, dword [rsp + 0x58]
ja 0x14000e5ea
mov r14d, dword [rsp + 0x54]
jmp 0x14000e0c0
lea rcx, str.ERROR_from_tf_class._n
call fcn.140001020
mov eax, 0x3b9aca01
jmp 0x14000eda5
lea rcx, str.ERROR:_Unknown_kernel_selected___d___n
call fcn.140001020
mov eax, 0x3b9aca01
jmp 0x14000eda5
cmp dword [rdi + 0x218], 1
jne 0x14000e5e0
lea rcx, [0x14001f220]
call fcn.140001020
mov eax, 0x3b9aca02
jmp 0x14000eda5
cmp dword [rdi + 0x1f8], 2
je 0x14000e608
cmp dword [rdi + 0x218], 1
jne 0x14000e608
lea rcx, [0x14001f220]
call fcn.140001020
mov ebx, dword [rsp + 0x50]
lea r8, [rdi + 0x529]
mov rsi, r12
mov eax, 0x60
cmp dword [rdi + 0x1b0], esi
mov r14d, 0x3c0
cmove r14d, eax
cmp byte [r8], sil
je 0x14000e64e
lea r9, [rdi + 0x55c]
cmp byte [r9], sil
je 0x14000e64e
lea rdx, str.UID:__s__s_
lea rcx, [rbp + 0x10]
call fcn.140001790
jmp 0x14000e652
mov byte [rbp + 0x10], sil
cmp dword [rdi + 0x1f8], 1
jne 0x14000e6c7
lea rcx, [rdi + 0x4f6]
lea rdx, [0x140024820]
call fcn.140009f60
cmp dword [rdi + 0x220], 1
mov rsi, rax
jne 0x14000e6c7
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rcx, rax
mov qword [rsp + 0x60], rax
mov rax, qword [0x1400b39f0]
add rax, 5
cmp rax, rcx
jge 0x14000e6c7
lea rcx, [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__ctime64]
lea rdx, str.__s__n
mov rcx, rsi
mov r8, rax
mov byte [rax + 0x18], r12b
call fcn.140001740
mov rax, qword [rsp + 0x60]
mov qword [0x1400b39f0], rax
test ebx, ebx
je 0x14000e74a
cmp dword [rdi + 0x1f8], 1
jne 0x14000e6e4
lea rdx, str.found__d_factor_s_for_M_u_from_2_2d_to_2_2d__partially_tested____s__s_
cmp dword [rdi + 0x460], r14d
jb 0x14000e6eb
lea rdx, str.found__d_factor_s_for_M_u_from_2_2d_to_2_2d___s__s_
mov ecx, dword [rdi + 0x1c4]
lea rax, [0x140021528]
lea r9, [rdi + 0x470]
cmp ebx, 1
mov qword [rsp + 0x40], r9
lea r8, [0x14001e88a]
cmovg r8, rax
lea r9, str.mfakto_0.15pre8_Win
mov eax, dword [rdi + 0x1bc]
mov qword [rsp + 0x38], r9
mov r9, r8
mov dword [rsp + 0x30], ecx
mov r8d, ebx
mov dword [rsp + 0x28], eax
lea rcx, [rbp + 0x80]
mov eax, dword [rdi + 0x1b8]
mov dword [rsp + 0x20], eax
call fcn.140001790
jmp 0x14000e78d
mov r8d, dword [rdi + 0x1b8]
lea r9, [rdi + 0x470]
mov qword [rsp + 0x30], r9
lea rax, str.mfakto_0.15pre8_Win
mov r9d, dword [rdi + 0x1bc]
lea rdx, str.no_factor_for_M_u_from_2_d_to_2_d___s__s_
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x80]
mov eax, dword [rdi + 0x1c4]
mov dword [rsp + 0x20], eax
call fcn.140001790
mov r11d, dword [rdi + 0x1f8]
mov eax, r11d
cmp r11d, 2
je 0x14000e7ba
lea rdx, [rbp + 0x80]
lea rcx, [0x14002475c]
call fcn.140001020
mov r11d, dword [rdi + 0x1f8]
mov eax, r11d
cmp eax, 1
jne 0x14000e866
lea r9, [rbp + 0x80]
mov rcx, rsi
lea r8, [rbp + 0x10]
lea rdx, str._s_s_n
call fcn.140001740
mov rcx, rsi
call fcn.140009d70
mov r11d, dword [rdi + 0x1f8]
cmp r11d, 1
jne 0x14000e866
cmp dword [rdi + 0x1fc], 0
mov r12d, dword [rsp + 0x50]
jbe 0x14000ea38
mov ebx, dword [rdi + 0x1b8]
lea rdx, str.M_u.ckp
mov r8d, ebx
lea rcx, [rbp - 0x68]
call fcn.140001790
lea rcx, [rbp - 0x68]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
mov r8d, ebx
lea rdx, str.M_u.ckp.bu
lea rcx, [rbp - 0x68]
call fcn.140001790
lea rcx, [rbp - 0x68]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
mov r8d, ebx
lea rdx, str.M_u.ckp.write
lea rcx, [rbp - 0x68]
call fcn.140001790
lea rcx, [rbp - 0x68]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
jmp 0x14000ea38
mov r9, qword [rdi + 0x140]
mov r15d, dword [rdi + 0x1b8]
mov r14d, dword [r9]
test r14d, r14d
jne 0x14000e8a4
mov r8, qword [rbp - 0x80]
lea rcx, str.ERROR:_self_test_failed_for_M_u___s__n
mov edx, r15d
call fcn.140001020
lea rcx, str.__no_factor_found_n
call fcn.140001020
lea r12d, [r14 + 1]
jmp 0x14000ea38
mov r13, qword [rbp + 0x1e0]
movsxd rcx, dword [rbp + 0x1e8]
mov rdx, r13
shr rdx, 0x1f
mov edx, edx
lea rbx, [r13*2]
shr r13, 0x3f
mov ebx, ebx
imul rbx, r15
imul rdx, r15
imul r13d, r15d
lea esi, [rbx + 1]
shr rbx, 0x20
mov eax, edx
add rbx, rax
shr rdx, 0x20
add r13d, edx
mov rax, rbx
shr rax, 0x20
add r13d, eax
lea eax, [rcx - 2]
cmp eax, 1
jbe 0x14000e931
cmp ecx, 0x27
ja 0x14000e953
movabs rax, 0xff000bfc00
bt rax, rcx
jae 0x14000e953
mov eax, ebx
shl r13d, 4
shr eax, 0x1c
add r13d, eax
mov eax, esi
shr eax, 0x1e
lea ebx, [rax + rbx*4]
and ebx, 0x3fffffff
and esi, 0x3fffffff
jmp 0x14000e953
mov eax, ebx
shl r13d, 0x10
shr eax, 0x10
add r13d, eax
shl ebx, 8
mov eax, esi
shr eax, 0x18
add ebx, eax
and ebx, 0xffffff
and esi, 0xffffff
mov r10, r12
mov edx, r12d
test r14d, r14d
je 0x14000e9b9
nop
cmp edx, 0xa
jae 0x14000e991
lea r8d, [rdx + rdx*2]
lea eax, [r8 + 1]
cmp dword [r9 + rax*4], r13d
jne 0x14000e98a
lea eax, [r8 + 2]
cmp dword [r9 + rax*4], ebx
jne 0x14000e98a
lea eax, [r8 + 3]
cmp dword [r9 + rax*4], esi
jne 0x14000e98a
inc r10
inc edx
cmp edx, r14d
jb 0x14000e960
cmp r10, 1
jne 0x14000e9b9
cmp r11d, 2
je 0x14000ea38
mov r8, qword [rbp - 0x80]
lea rcx, str.self_test_for_M_u_passed___s___n
mov edx, r15d
call fcn.140001020
jmp 0x14000ea38
mov r8, qword [rbp - 0x80]
lea rcx, str.ERROR:_self_test_failed_for_M_u___s__n
mov edx, r15d
call fcn.140001020
mov r9d, esi
lea rcx, str.__expected_result:__08X__08X__08X_n
mov r8d, ebx
mov edx, r13d
call fcn.140001020
mov rax, qword [rdi + 0x140]
cmp dword [rax], r12d
jbe 0x14000ea32
nop dword [rax]
cmp r12d, 0xa
jae 0x14000ea32
mov rdx, qword [rdi + 0x140]
lea ecx, [r12 + r12*2]
lea r9d, [rcx + 3]
lea r8d, [rcx + 2]
lea eax, [rcx + 1]
mov r9d, dword [rdx + r9*4]
lea rcx, str.__reported_result:__08X__08X__08X_n
mov r8d, dword [rdx + r8*4]
mov edx, dword [rdx + rax*4]
call fcn.140001020
mov rax, qword [rdi + 0x140]
inc r12d
cmp r12d, dword [rax]
jb 0x14000e9f0
mov r12d, 2
cmp dword [rdi + 0x1f8], 2
je 0x14000eda2
cmp dword [0x1400b0488], 0
jne 0x14000ea65
lea rcx, [0x1400b40a0]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
mov dword [0x1400b0488], 1
lea rcx, [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [0x1400b40a0]
xorps xmm0, xmm0
mov rax, qword [rbp - 0x78]
xorps xmm1, xmm1
mov esi, dword [rsp + 0x5c]
cqo
idiv rcx
cvtsi2sd xmm0, rcx
sub eax, dword [rbp - 0x38]
cdqe
imul rbx, rax, 0xf4240
divsd xmm6, xmm0
movsxd rax, dword [rsp + 0x78]
sub rbx, rax
cvtsi2sd xmm1, rdx
mulsd xmm6, xmm1
cvttsd2si ecx, xmm6
movsxd rax, ecx
lea rcx, str.tf__:_total_time_spent:
add rbx, rax
movabs rax, 0x624dd2f1a9fbe77
mul rbx
lea rax, str.tf__:_time_spent_since_restart:
sub rbx, rdx
shr rbx, 1
add rbx, rdx
shr rbx, 9
test esi, esi
cmovne rcx, rax
call fcn.140001020
movabs rax, 0x179ec9cbd821dc3b
movabs r15, 0x8daea1d7f4cf721b
movabs r13, 0x4a90be587de6e565
movabs r14, 0x8888888888888889
cmp rbx, 0x5265c00
jbe 0x14000eb41
mov rax, r15
lea rcx, str._llud
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rdx, rax
shr rdx, 0x1a
call fcn.140001020
jmp 0x14000eb4a
cmp rbx, 0x36ee80
jbe 0x14000eb8e
mov rax, r13
mul rbx
movabs rax, 0xaaaaaaaaaaaaaaab
mov rcx, rdx
shr rcx, 0x14
mul rcx
shr rdx, 4
lea rax, [rdx + rdx*2]
shl rax, 3
sub rcx, rax
mov rdx, rcx
lea rcx, str._2lluh
call fcn.140001020
movabs rax, 0x179ec9cbd821dc3b
jmp 0x14000eb97
cmp rbx, 0xea60
jbe 0x14000ebca
mul rbx
mov rcx, rbx
mov rax, r14
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 0xf
mul rcx
shr rdx, 5
imul rax, rdx, 0x3c
sub rcx, rax
mov rdx, rcx
lea rcx, str._2llum
call fcn.140001020
movabs rax, 0x624dd2f1a9fbe77
mov rcx, rbx
mul rbx
mov r8, rbx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 9
imul rax, rcx, 0x3e8
sub r8, rax
mov rax, r14
mul rcx
shr rdx, 5
imul rax, rdx, 0x3c
sub rcx, rax
mov rdx, rcx
lea rcx, str._2llu._03llus
call fcn.140001020
test esi, esi
je 0x14000ed44
mov eax, dword [rdi + 0x460]
xor edx, edx
mov r8d, eax
sub eax, esi
mov ecx, eax
imul r8, rbx
mov rax, r8
div rcx
lea rcx, str._n______estimated_total_time_spent:
mov rbx, rax
call fcn.140001020
cmp rbx, 0x5265c00
jbe 0x14000ec71
mov rax, r15
lea rcx, str._llud
mul rbx
mov rax, rbx
sub rax, rdx
shr rax, 1
add rdx, rax
shr rdx, 0x1a
call fcn.140001020
jmp 0x14000ec7a
cmp rbx, 0x36ee80
jbe 0x14000ecb4
mov rax, r13
lea rcx, str._2lluh
mul rbx
movabs rax, 0xaaaaaaaaaaaaaaab
mov r8, rdx
shr r8, 0x14
mul r8
shr rdx, 4
lea rax, [rdx + rdx*2]
shl rax, 3
sub r8, rax
mov rdx, r8
call fcn.140001020
jmp 0x14000ecbd
cmp rbx, 0xea60
jbe 0x14000ecfa
movabs rax, 0x179ec9cbd821dc3b
lea rcx, str._2llum
mul rbx
mov r8, rbx
mov rax, r14
sub r8, rdx
shr r8, 1
add r8, rdx
shr r8, 0xf
mul r8
shr rdx, 5
imul rax, rdx, 0x3c
sub r8, rax
mov rdx, r8
call fcn.140001020
movabs rax, 0x624dd2f1a9fbe77
lea rcx, str._2llu._03llus
mul rbx
mov r9, rbx
mov r8, rbx
sub r9, rdx
shr r9, 1
add r9, rdx
shr r9, 9
imul rax, r9, 0x3e8
sub r8, rax
mov rax, r14
mul r9
shr rdx, 5
imul rax, rdx, 0x3c
sub r9, rax
mov rdx, r9
call fcn.140001020
cmp dword [rdi + 0x1f8], 1
jne 0x14000ed96
movsd xmm1, qword [rdi + 0x468]
xorps xmm0, xmm0
mulsd xmm1, qword [0x140025ca0]
test rbx, rbx
js 0x14000ed6c
cvtsi2sd xmm0, rbx
jmp 0x14000ed81
mov rax, rbx
and ebx, 1
shr rax, 1
or rax, rbx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm1, xmm0
lea rcx, str.___.2f_GHz_days___day_
movq rdx, xmm1
call fcn.140001020
lea rcx, [0x140021720]
call fcn.140001020
mov eax, r12d
mov rbx, qword [rsp + 0x2d8]
movaps xmm6, xmmword [rsp + 0x280]
add rsp, 0x290
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret