Function at 0x14000a470
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push r14
sub rsp, 0xf8
cmp dword [0x1400b39e4], 0
mov r14, rcx
mov rbx, qword [0x1400b04a0]
mov qword [rsp + 0x90], rbx
je 0x14000a4ac
xor eax, eax
add rsp, 0xf8
pop r14
pop rbx
ret
mov ecx, dword [rcx + 0x1b0]
mov edx, 1
mov qword [rsp + 0xf0], rbp
mov eax, ecx
mov qword [rsp + 0xe8], rsi
neg eax
mov qword [rsp + 0xe0], rdi
mov ebp, 0x14069
sbb esi, esi
mov qword [rsp + 0xd8], r12
add esi, 0x32
mov qword [rsp + 0xc8], r15
xor r12d, r12d
mov dword [0x1400b39e4], 1
test ecx, ecx
mov r15d, 0x2fdb
mov ecx, dword [r14 + 0x1e4]
mov edi, 0x198e
setne r12b
shr rcx, 3
add r12d, 4
sub ebp, r12d
mov dword [rsp + 0x6c], r12d
sub ebp, esi
sub r15d, r12d
sub edi, r12d
shr ebp, 8
sub r15d, esi
sub ebp, 3
sub edi, esi
shr r15d, 8
mov dword [rsp + 0x70], ebp
shr edi, 8
mov dword [rsp + 0x68], r15d
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov ecx, dword [r14 + 0x1e4]
mov qword [r14 + 0x180], rax
test rax, rax
jne 0x14000a579
shr ecx, 3
mov edx, ecx
lea rcx, str.ERROR:_malloc_h_bitarray___u_bytes__failed_n
call fcn.140001020
mov eax, 1
jmp 0x14000bacd
mov r8, rcx
mov r9, rax
lea rcx, [rsp + 0x118]
shr r8, 3
mov qword [rsp + 0x20], rcx
mov edx, 0x21
mov rcx, rbx
call qword [sym.imp.OpenCL.dll_clCreateBuffer]
mov ecx, dword [rsp + 0x118]
mov qword [r14 + 0x188], rax
test ecx, ecx
je 0x14000a60e
call fcn.140016860
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140021214]
mov rbx, rax
call fcn.140001350
mov edx, dword [rsp + 0x118]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140021210]
call fcn.140001350
mov rcx, rax
mov rdx, rbx
call fcn.140001350
mov rcx, rax
lea rdx, str._:_clCreateBuffer__d_bitarray__n
call fcn.140001350
mov eax, 1
jmp 0x14000bacd
mov eax, dword [r14 + 0x1c8]
mov ecx, 0x106a36
add eax, 0x2000
mov qword [rsp + 0xd0], r13
cmp eax, ecx
mov edx, 1
cmova eax, ecx
mov ecx, eax
mov dword [r14 + 0x1d0], ecx
shl rcx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r13, rax
test rax, rax
jne 0x14000a663
lea rcx, str.error_in_malloc_primes_n
call fcn.140001020
lea ecx, [r13 + 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, dword [r14 + 0x1d0]
mov rdx, rax
call fcn.14000bb10
mov r10d, dword [r14 + 0x1c8]
mov ebx, 0x200
sub r10d, esi
sub r10d, r12d
and r10d, 0xffffff00
add r10d, esi
add r10d, r12d
mov r9d, r10d
mov dword [r14 + 0x1c8], r10d
sub r9d, esi
sub r9d, r12d
shr r9d, 8
mov dword [0x1400b0490], r9d
cmp r9d, 1
jbe 0x14000a6d4
cmp r9d, edi
mov ecx, edi
mov eax, 0xaaaaaaab
mov r8d, r10d
cmovb ecx, r9d
dec ecx
mul ecx
shr edx, 1
lea eax, [rdx + rdx*2]
cmp ecx, eax
jne 0x14000a7be
lea eax, [rdi + 1]
mov r8d, r10d
cmp r9d, eax
je 0x14000a7be
lea r11d, [r15 + 1]
jbe 0x14000a70e
cmp r9d, r11d
mov ecx, r9d
mov eax, 0xaaaaaaab
cmovae ecx, r11d
sub ecx, edi
dec ecx
mul ecx
shr edx, 1
lea eax, [rdx + rdx*2]
sub ecx, eax
cmp ecx, 1
jne 0x14000a7be
cmp r9d, r11d
jbe 0x14000a72e
cmp r9d, ebp
mov eax, ebp
mov r8d, r10d
cmovb eax, r9d
sub eax, r15d
dec eax
and al, 3
cmp al, 1
jne 0x14000a7be
mov eax, r9d
sub eax, ebp
mov dword [rsp + 0x128], eax
cmp r9d, ebp
jbe 0x14000a748
and al, 3
mov r8d, r10d
cmp al, 1
jne 0x14000a7be
cmp r10d, dword [r14 + 0x1d0]
jbe 0x14000a77f
mov edx, r10d
mov rcx, r13
shl rdx, 2
mov dword [r14 + 0x1d0], r10d
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov r13, rax
test rax, rax
je 0x14000a7ca
mov ecx, dword [r14 + 0x1d0]
mov rdx, rax
call fcn.14000bb10
mov edx, dword [r14 + 0x1b8]
test edx, edx
je 0x14000a7e2
mov r8d, dword [r14 + 0x1c8]
lea eax, [r8 - 1]
cmp edx, dword [r13 + rax*4]
ja 0x14000a7e2
nop dword [rax]
dec r8d
mov dword [r14 + 0x1c8], r8d
lea eax, [r8 - 1]
cmp edx, dword [r13 + rax*4]
jbe 0x14000a7a0
sub r8d, ebx
add ebx, 0x100
lea r10d, [r8 + 0x100]
jmp 0x14000a691
lea rcx, str.error_in_realloc_primes_n
call fcn.140001020
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov edx, dword [r14 + 0x1c8]
lea eax, [rdx - 1]
mov eax, dword [r13 + rax*4]
inc eax
cmp dword [r14 + 0x230], 1
mov dword [r14 + 0x1ec], eax
jl 0x14000a82a
lea rcx, str.__GPUSievePrimes__adjusted___d_n
call fcn.140001020
mov edx, dword [r14 + 0x1ec]
lea rcx, str.__GPUsieve_minimum_exponent__u_n
call fcn.140001020
mov edx, dword [r14 + 0x1c8]
lea ecx, [rdx + rdx*2]
mov edx, 1
shl ecx, 2
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x14000a85d
lea rcx, str.error_in_malloc_pinfo_n
call fcn.140001020
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, dword [r14 + 0x1c8]
mov edx, 1
lea eax, [rax*8 + 0x10800]
mov ecx, eax
mov qword [rsp + 0x98], rax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov qword [rsp + 0x88], rax
test rax, rax
jne 0x14000a8a5
lea rcx, str.error_in_malloc_rowinfo_n
call fcn.140001020
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r11, qword [rsp + 0x50]
lea ebp, [rsi + r12]
mov r14d, dword [0x1400b0490]
mov r8, r11
mov qword [rsp + 0x80], r11
mov ebx, edi
mov qword [rsp + 0x60], r11
mov r12, rax
add r11, 0x400
movaps xmmword [rsp + 0xb0], xmm6
cmp r14d, edi
movaps xmmword [rsp + 0xa0], xmm7
mov dword [rsp + 0x120], ebp
cmovb ebx, r14d
mov qword [rsp + 0x50], r11
shl ebx, 8
add ebx, esi
add ebx, dword [rsp + 0x6c]
cmp ebp, ebx
jae 0x14000a9b8
mov r15, r8
nop dword [rax + rax]
mov eax, r11d
mov dword [r12 + 0x4200], ebp
sub eax, r15d
mov dword [r12 + 0x8400], 1
mov dword [r12], eax
xor r9d, r9d
mov dword [r12 + 0xc600], 0xffff0000
mov r10, r11
add r12, 4
add r11, 0x400
nop dword [rax + rax]
lea eax, [r9 + rbp]
xor edx, edx
mov ecx, eax
lea r11, [r11 + 4]
mov eax, dword [r13 + rax*4]
lea r10, [r10 + 4]
shl eax, 0x10
inc r9d
mov dword [r10 - 4], eax
mov eax, 0xffffffff
div dword [r13 + rcx*4]
inc eax
mov dword [r11 - 4], eax
cmp r9d, 0x100
jb 0x14000a950
mov r11, qword [rsp + 0x50]
add ebp, 0x100
add r11, 0x800
mov qword [rsp + 0x50], r11
cmp ebp, ebx
jb 0x14000a910
mov r15d, dword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
mov dword [rsp + 0x120], ebp
lea ebp, [rdi + 1]
cmp r14d, ebp
mov ebx, ebp
cmovb ebx, r14d
shl ebx, 8
add ebx, esi
mov esi, dword [rsp + 0x120]
add ebx, dword [rsp + 0x6c]
cmp esi, ebx
jae 0x14000aa9d
mov r15, qword [rsp + 0x80]
mov r10, qword [rsp + 0x50]
mov eax, r11d
sub eax, r15d
mov dword [r12 + 0x4200], esi
mov dword [r12], eax
xor r9d, r9d
mov dword [r12 + 0x8400], 1
mov dword [r12 + 0xc600], 0
add r12, 4
add r10, 0x800
nop dword [rax]
nop word [rax + rax]
lea eax, [r9 + rsi]
mov dword [r11], 0
mov r8d, dword [r13 + rax*4]
xor edx, edx
mov dword [r10], r8d
lea r10, [r10 + 4]
mov eax, 0xffffffff
lea r11, [r11 + 4]
div r8d
inc r9d
inc eax
mov dword [r10 - 0x404], eax
cmp r9d, 0x100
jb 0x14000aa30
mov r11, qword [rsp + 0x50]
add esi, 0x100
add r11, 0xc00
mov qword [rsp + 0x50], r11
cmp esi, ebx
jb 0x14000a9e4
mov r8d, r15d
mov dword [rsp + 0x120], esi
mov r15d, dword [rsp + 0x68]
mov qword [rsp + 0x60], r8
cmp r14d, ebp
jbe 0x14000ab44
lea ebx, [r15 + 1]
mov dword [r12 + 0x4200], esi
cmp r14d, ebx
mov dword [r12 + 0xc600], 0
mov eax, r11d
lea r9, [r11 + 0x800]
cmovb ebx, r14d
mov r10, r11
sub ebx, edi
sub eax, r8d
dec ebx
mov dword [r12], eax
mov dword [r12 + 0x8400], ebx
add r12, 4
xor r8d, r8d
mov dword [rsp + 0x128], ebx
mov eax, r8d
mov dword [r10], 0
imul eax, ebx
lea r9, [r9 + 4]
xor edx, edx
lea r10, [r10 + 4]
inc r8d
add eax, esi
mov ecx, dword [r13 + rax*4]
mov eax, 0xffffffff
div ecx
mov dword [r9 - 4], ecx
inc eax
mov dword [r9 - 0x404], eax
cmp r8d, 0x100
jb 0x14000aaf3
mov r8, qword [rsp + 0x60]
add r11, 0xc00
mov qword [rsp + 0x50], r11
jmp 0x14000ab4b
mov ebx, dword [rsp + 0x128]
lea eax, [rdi + 2]
cmp r14d, eax
jbe 0x14000ad5e
mov ecx, 1
cmp ebx, ecx
jbe 0x14000ad3e
mov edx, r11d
sub edx, r8d
nop word [rax + rax]
lea eax, [rcx + rsi]
mov dword [r12], edx
mov dword [r12 + 0x4200], eax
inc ecx
mov dword [r12 + 0x8400], ebx
add edx, 0x400
mov dword [r12 + 0xc600], 0xfffc0000
add r12, 4
cmp ecx, ebx
jb 0x14000ab70
mov qword [rsp + 0x78], r12
mov r12d, 1
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x58], r12d
nop dword [rax]
lea ebp, [r12 - 1]
mov r15d, 0x100
lea r14d, [r12 + rsi]
shl ebp, 8
mov r12d, dword [rsp + 0x128]
nop word [rax + rax]
xor edx, edx
movsxd rsi, r14d
mov eax, 0xffffffff
mov r10d, dword [r13 + rsi*4]
mov edi, r10d
mov r8d, dword [r13 + rsi*4 - 4]
sub edi, r8d
div r10d
xor edx, edx
shr edi, 1
mov ecx, eax
mov eax, 0xffffffff
div r8d
mov ebx, eax
sub ebx, ecx
cmp edi, 0x7f
ja 0x14000ac19
cmp ebx, 0x7f
jbe 0x14000ac38
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
mov edx, r10d
call fcn.140001020
mov r8d, dword [r13 + rsi*4 - 4]
mov r11, qword [rsp + 0x50]
mov ecx, dword [r13 + rsi*4 + 4]
xor edx, edx
shl ebx, 7
mov eax, 0xffffffff
add ebx, edi
mov edi, ecx
div r8d
shl ebx, 0x12
xor edx, edx
mov dword [r11 + rbp*4], ebx
sub edi, r8d
mov ebx, eax
shr edi, 1
mov eax, 0xffffffff
div ecx
sub ebx, eax
cmp edi, 0x7f
ja 0x14000ac71
cmp ebx, 0x7f
jbe 0x14000ac8f
mov edx, ecx
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r8d, dword [r13 + rsi*4 - 4]
mov r11, qword [rsp + 0x50]
mov ecx, dword [r13 + rsi*4 + 8]
lea eax, [rbp + 0x100]
shl ebx, 7
xor edx, edx
add ebx, edi
mov edi, ecx
shl ebx, 0x12
sub edi, r8d
mov dword [r11 + rax*4], ebx
mov eax, 0xffffffff
div r8d
xor edx, edx
shr edi, 1
mov ebx, eax
mov eax, 0xffffffff
div ecx
sub ebx, eax
cmp edi, 0x7f
ja 0x14000acce
cmp ebx, 0x7f
jbe 0x14000ace7
mov edx, ecx
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
shl ebx, 7
lea eax, [rbp + 0x200]
add ebx, edi
inc ebp
shl ebx, 0x12
add r14d, r12d
mov dword [r11 + rax*4], ebx
sub r15, 1
jne 0x14000abe0
mov r12d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x128]
add r12d, 3
mov esi, dword [rsp + 0x120]
mov dword [rsp + 0x58], r12d
cmp r12d, ebx
jb 0x14000abc0
mov r14d, dword [0x1400b0490]
mov r15d, dword [rsp + 0x68]
mov r12, qword [rsp + 0x78]
mov eax, ebx
shl eax, 0xa
sub eax, 0x400
add r11, rax
mov eax, ebx
shl eax, 8
add esi, eax
mov qword [rsp + 0x50], r11
mov dword [rsp + 0x120], esi
movsd xmm6, qword [0x140025ca8]
lea eax, [r15 + 1]
movsd xmm7, qword [0x140025c30]
movabs r8, 0x8000000000000000
mov rdi, qword [rsp + 0x60]
cmp r14d, eax
jbe 0x14000ae85
mov ebx, dword [rsp + 0x70]
lea rdx, [r11 + 0x800]
cmp r14d, ebx
mov dword [r12 + 0x4200], esi
mov eax, r11d
mov dword [r12 + 0xc600], 0
cmovb ebx, r14d
mov r9, r11
sub ebx, r15d
sub eax, edi
dec ebx
mov dword [r12], eax
mov dword [r12 + 0x8400], ebx
movabs rbp, 0x8000000000000000
add r12, 4
mov dword [rsp + 0x128], ebx
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, r8d
mov dword [r9], 0
imul eax, ebx
xorps xmm0, xmm0
movaps xmm1, xmm6
add eax, esi
mov r10d, eax
mov eax, dword [r13 + rax*4]
cvtsi2sd xmm0, rax
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, rbp
je 0x14000ae4c
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000ae4c
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
inc r8d
add r9, 4
mov dword [rdx - 0x400], eax
mov eax, dword [r13 + r10*4]
mov dword [rdx], eax
add rdx, 4
cmp r8d, 0x100
jb 0x14000adf0
add r11, 0xc00
mov r8, rbp
mov qword [rsp + 0x50], r11
lea eax, [r15 + 2]
cmp r14d, eax
jbe 0x14000b2e0
mov ecx, 1
cmp ebx, ecx
jbe 0x14000b2c0
mov edx, r11d
sub edx, edi
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx + rsi]
mov dword [r12], edx
mov dword [r12 + 0x4200], eax
inc ecx
mov dword [r12 + 0x8400], ebx
add edx, 0x400
mov dword [r12 + 0xc600], 0xfff00000
add r12, 4
cmp ecx, ebx
jb 0x14000aeb0
mov eax, 1
mov dword [rsp + 0x58], eax
nop dword [rax]
lea ebp, [rax - 1]
mov r15d, 0x100
shl ebp, 8
lea r14d, [rax + rsi]
movsxd rsi, r14d
xorps xmm0, xmm0
movaps xmm1, xmm6
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000af58
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000af58
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000afa2
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000afa2
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000afb3
cmp ebx, 0x1f
jbe 0x14000afd4
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
xorps xmm0, xmm0
add ebx, edi
movaps xmm1, xmm6
shl ebx, 0x14
mov dword [r11 + rbp*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 4]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b035
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b035
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b07f
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b07f
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b090
cmp ebx, 0x1f
jbe 0x14000b0b1
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x100]
add ebx, edi
xorps xmm0, xmm0
shl ebx, 0x14
movaps xmm1, xmm6
mov dword [r11 + rax*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 8]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b118
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b118
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b162
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b162
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b173
cmp ebx, 0x1f
jbe 0x14000b194
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x200]
add ebx, edi
xorps xmm0, xmm0
shl ebx, 0x14
movaps xmm1, xmm6
mov dword [r11 + rax*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 0xc]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b1fb
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b1fb
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b245
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b245
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b256
cmp ebx, 0x1f
jbe 0x14000b277
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x300]
add ebx, edi
inc ebp
shl ebx, 0x14
mov dword [r11 + rax*4], ebx
mov ebx, dword [rsp + 0x128]
add r14d, ebx
sub r15, 1
jne 0x14000af00
mov eax, dword [rsp + 0x58]
mov esi, dword [rsp + 0x120]
add eax, 4
mov dword [rsp + 0x58], eax
cmp eax, ebx
jb 0x14000aef0
mov r14d, dword [0x1400b0490]
mov eax, ebx
shl eax, 0xa
sub eax, 0x400
add r11, rax
mov eax, ebx
shl eax, 8
add esi, eax
mov qword [rsp + 0x50], r11
mov dword [rsp + 0x120], esi
mov edi, dword [rsp + 0x70]
mov rbp, qword [rsp + 0x60]
cmp r14d, edi
jbe 0x14000b3d7
mov ebx, r14d
mov dword [r12 + 0x4200], esi
sub ebx, edi
mov dword [r12 + 0xc600], 0
mov eax, r11d
mov dword [r12 + 0x8400], ebx
sub eax, ebp
mov dword [rsp + 0x128], ebx
mov dword [r12], eax
lea rdx, [r11 + 0x800]
add r12, 4
mov r9, r11
xor r8d, r8d
movabs rbp, 0x8000000000000000
nop
mov eax, r8d
mov dword [r9], 0
imul eax, ebx
xorps xmm0, xmm0
movaps xmm1, xmm6
add eax, esi
mov r10d, eax
mov eax, dword [r13 + rax*4]
cvtsi2sd xmm0, rax
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, rbp
je 0x14000b39c
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b39c
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
inc r8d
add r9, 4
mov dword [rdx - 0x400], eax
mov eax, dword [r13 + r10*4]
mov dword [rdx], eax
add rdx, 4
cmp r8d, 0x100
jb 0x14000b340
mov rbp, qword [rsp + 0x60]
add r11, 0xc00
mov qword [rsp + 0x50], r11
lea eax, [rdi + 1]
cmp r14d, eax
jbe 0x14000b81f
mov edx, 1
cmp ebx, edx
jbe 0x14000b813
mov r8d, r11d
lea rcx, [r12 + 0x8400]
sub r8d, ebp
nop
mov dword [rcx - 0x8400], r8d
lea eax, [rdx + rsi]
inc edx
mov dword [rcx - 0x4200], eax
add r8d, 0x400
mov dword [rcx], ebx
mov dword [rcx + 0x4200], 0xff000000
lea rcx, [rcx + 4]
cmp edx, ebx
jb 0x14000b400
mov r12d, 1
nop dword [rax]
nop word [rax + rax]
lea ebp, [r12 - 1]
mov r15d, 0x100
shl ebp, 8
lea r14d, [r12 + rsi]
movabs r8, 0x8000000000000000
nop dword [rax]
movsxd rsi, r14d
xorps xmm0, xmm0
movaps xmm1, xmm6
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b4b8
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b4b8
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b502
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b502
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b513
cmp ebx, 1
jbe 0x14000b534
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
xorps xmm0, xmm0
add ebx, edi
movaps xmm1, xmm6
shl ebx, 0x18
mov dword [r11 + rbp*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 4]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b595
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b595
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b5df
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b5df
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b5f0
cmp ebx, 1
jbe 0x14000b611
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x100]
add ebx, edi
xorps xmm0, xmm0
shl ebx, 0x18
movaps xmm1, xmm6
mov dword [r11 + rax*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 8]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b678
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b678
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b6c2
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b6c2
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b6d3
cmp ebx, 1
jbe 0x14000b6f4
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x200]
add ebx, edi
xorps xmm0, xmm0
shl ebx, 0x18
movaps xmm1, xmm6
mov dword [r11 + rax*4], ebx
mov eax, dword [r13 + rsi*4 - 4]
mov edx, dword [r13 + rsi*4 + 0xc]
mov edi, edx
sub edi, eax
cvtsi2sd xmm0, rax
shr edi, 1
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b75b
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b75b
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rbx, xmm1
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtsi2sd xmm0, rdx
divsd xmm1, xmm0
xorps xmm0, xmm0
subsd xmm1, xmm7
cvttsd2si rcx, xmm1
cmp rcx, r8
je 0x14000b7a5
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
ucomisd xmm0, xmm1
je 0x14000b7a5
unpcklpd xmm1, xmm1
movmskpd eax, xmm1
xorps xmm1, xmm1
and eax, 1
sub rcx, rax
cvtsi2sd xmm1, rcx
cvttsd2si rax, xmm1
sub ebx, eax
cmp edi, 0x7f
ja 0x14000b7b6
cmp ebx, 1
jbe 0x14000b7d7
mov r9d, ebx
lea rcx, str.Bad_compress:__d___d___d_n
mov r8d, edi
call fcn.140001020
mov r11, qword [rsp + 0x50]
movabs r8, 0x8000000000000000
shl ebx, 7
lea eax, [rbp + 0x300]
add ebx, edi
inc ebp
shl ebx, 0x18
mov dword [r11 + rax*4], ebx
mov ebx, dword [rsp + 0x128]
add r14d, ebx
sub r15, 1
jne 0x14000b460
mov esi, dword [rsp + 0x120]
add r12d, 4
cmp r12d, ebx
jb 0x14000b440
shl ebx, 0xa
lea eax, [rbx - 0x400]
add r11, rax
mov rdi, qword [rsp + 0x110]
sub r11d, dword [rsp + 0x60]
mov edx, dword [rsp + 0x6c]
movaps xmm7, xmmword [rsp + 0xa0]
mov ecx, dword [rdi + 0x1c8]
movaps xmm6, xmmword [rsp + 0xb0]
mov rsi, qword [rsp + 0x88]
cmp edx, ecx
jae 0x14000b888
lea r9, [rdx*4]
add r9, r13
lea r8d, [rdx + 0x2100]
sub ecx, edx
mov r10d, ecx
nop dword [rax]
mov eax, dword [r9]
lea edx, [r8 + r8]
mov dword [rsi + rdx*4], eax
lea r9, [r9 + 4]
lea r8d, [r8 + 1]
sub r10, 1
jne 0x14000b870
mov rcx, qword [rsp + 0x80]
mov edx, r11d
mov ebx, r11d
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov rbp, qword [rsp + 0x90]
lea rcx, [rsp + 0x118]
mov qword [rsp + 0x20], rcx
mov r9, rax
mov rcx, rbp
mov qword [rdi + 0x190], rax
mov r8d, ebx
mov edx, 0x21
call qword [sym.imp.OpenCL.dll_clCreateBuffer]
mov ecx, dword [rsp + 0x118]
mov rdx, rax
mov qword [rdi + 0x198], rax
test ecx, ecx
je 0x14000b93f
call fcn.140016860
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140021214]
mov rbx, rax
call fcn.140001350
mov edx, dword [rsp + 0x118]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140021210]
call fcn.140001350
mov rcx, rax
mov rdx, rbx
call fcn.140001350
mov rcx, rax
lea rdx, str._:_clCreateBuffer__d_sieve_info__n
call fcn.140001350
mov eax, 1
jmp 0x14000bac5
mov rax, qword [rdi + 0x190]
xor r14d, r14d
mov rcx, qword [0x1400b04b8]
xor r9d, r9d
mov qword [rsp + 0x40], r14
xor r8d, r8d
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], r14d
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call qword [sym.imp.OpenCL.dll_clEnqueueWriteBuffer]
mov dword [rsp + 0x118], eax
test eax, eax
jne 0x14000ba5d
mov rbx, qword [rsp + 0x98]
lea rax, [rsp + 0x118]
mov r8, rbx
mov qword [rdi + 0x1a0], rsi
mov r9, rsi
mov qword [rsp + 0x20], rax
lea edx, [r14 + 0x21]
mov rcx, rbp
call qword [sym.imp.OpenCL.dll_clCreateBuffer]
mov ecx, dword [rsp + 0x118]
mov qword [rdi + 0x1a8], rax
test ecx, ecx
je 0x14000ba22
call fcn.140016860
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140021214]
mov rbx, rax
call fcn.140001350
mov edx, dword [rsp + 0x118]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140021210]
call fcn.140001350
mov rcx, rax
mov rdx, rbx
call fcn.140001350
mov rcx, rax
lea rdx, str._:_clCreateBuffer__d_calc_bit_to_clear_info__n
call fcn.140001350
lea eax, [r14 + 1]
jmp 0x14000bac5
mov rcx, qword [0x1400b04b8]
xor r9d, r9d
mov qword [rsp + 0x40], r14
mov rdx, rax
mov qword [rsp + 0x38], r14
mov dword [rsp + 0x30], r14d
lea r8d, [r9 + 1]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
call qword [sym.imp.OpenCL.dll_clEnqueueWriteBuffer]
mov dword [rsp + 0x118], eax
test eax, eax
je 0x14000baba
mov ecx, eax
call fcn.140016860
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140021214]
mov rbx, rax
call fcn.140001350
mov edx, dword [rsp + 0x118]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___int____ptr64]
mov rcx, rax
lea rdx, [0x140021210]
call fcn.140001350
mov rcx, rax
mov rdx, rbx
call fcn.140001350
mov rcx, rax
lea rdx, str._:_Copying_rowinfo_clEnqueueWriteBuffer__n
call fcn.140001350
mov eax, 0x3b9aca01
jmp 0x14000bac5
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor eax, eax
mov r13, qword [rsp + 0xd0]
mov r12, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
mov rsi, qword [rsp + 0xe8]
mov rbp, qword [rsp + 0xf0]
mov r15, qword [rsp + 0xc8]
add rsp, 0xf8
pop r14
pop rbx
ret