Function at 0x140002af0
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x15c0]
mov eax, 0x16c0
call fcn.1400036f0
sub rsp, rax
vmovaps xmmword [rsp + 0x16b0], xmm6
vmovaps xmmword [rsp + 0x16a0], xmm7
vmovaps xmmword [rsp + 0x1690], xmm8
vmovaps xmmword [rsp + 0x1680], xmm9
vmovaps xmmword [rsp + 0x1670], xmm10
vmovaps xmmword [rsp + 0x1660], xmm11
vmovaps xmmword [rsp + 0x1650], xmm12
vmovaps xmmword [rsp + 0x1640], xmm13
vmovaps xmmword [rsp + 0x1630], xmm14
vmovaps xmmword [rsp + 0x1620], xmm15
mov rax, qword [0x140007008]
xor rax, rsp
mov qword [rbp + 0x1510], rax
mov rdi, rdx
mov ebx, ecx
xor r13d, r13d
cmp ecx, 1
jle 0x140002bdc
mov rcx, qword [rdx + 8]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov esi, eax
mov dword [rsp + 0x24], eax
cmp ebx, 2
jle 0x140002be4
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov r14d, eax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x24], esi
cmp ebx, 3
jle 0x140002bec
mov rcx, qword [rdi + 0x18]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov r12d, eax
mov dword [rsp + 0x24], esi
mov dword [rsp + 0x28], r14d
jmp 0x140002bef
mov dword [rsp + 0x24], 0xa
mov r14d, r13d
mov dword [rsp + 0x28], r13d
mov r12d, r13d
mov dword [rsp + 0x2c], r12d
test r14d, r14d
je 0x140002c89
test r12d, r12d
je 0x140002c89
lea rcx, [0x1400053f0]
call fcn.1400035a0
mov eax, 1
mov rcx, qword [rbp + 0x1510]
xor rcx, rsp
call fcn.140003750
lea r11, [rsp + 0x16c0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
vmovaps xmm6, xmmword [r11 - 0x10]
vmovaps xmm7, xmmword [r11 - 0x20]
vmovaps xmm8, xmmword [r11 - 0x30]
vmovaps xmm9, xmmword [r11 - 0x40]
vmovaps xmm10, xmmword [r11 - 0x50]
vmovaps xmm11, xmmword [r11 - 0x60]
vmovaps xmm12, xmmword [r11 - 0x70]
vmovaps xmm13, xmmword [r11 - 0x80]
vmovaps xmm14, xmmword [r11 - 0x90]
vmovaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov dword [rbp + 0x1504], 0xffffffff
mov edx, 0x4d2
mov dword [rbp + 0x184], edx
mov ecx, 1
nop dword [rax]
nop word [rax + rax]
mov eax, edx
shr eax, 0x1e
xor eax, edx
imul edx, eax, 0x6c078965
add edx, ecx
mov dword [rbp + rcx*4 + 0x184], edx
inc rcx
cmp rcx, 0x270
jb 0x140002cb0
mov dword [rbp + 0x180], 0x270
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r13
mov ecx, 0x100027
call fcn.140003610
test rax, rax
je 0x140003598
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
mov qword [rsp + 0x70], r14
lea rbx, [r14 + 0x100000]
mov qword [rbp - 0x80], rbx
xor edx, edx
mov r8d, 0x100000
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x78], rbx
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r13
mov ecx, 0x100027
call fcn.140003610
test rax, rax
je 0x140003591
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
mov qword [rbp - 0x78], rdi
lea r15, [rdi + 0x100000]
mov qword [rbp - 0x68], r15
xor edx, edx
mov r8d, 0x100000
mov rcx, rdi
call sub.VCRUNTIME140.dll_memset
mov qword [rbp - 0x70], r15
test r12d, r12d
je 0x140002db9
mov edx, 3
lea rcx, [rbp + 0xe8]
call sub.llama.dll_ggml_internal_get_type_traits
vmovups zmm0, zmmword [rax]
vmovups zmmword [rbp + 0xa0], zmm0
vmovsd xmm0, qword [rax + 0x40]
vmovsd qword [rbp + 0xe0], xmm0
lea rax, [rbp + 0xa0]
jmp 0x140002deb
mov edx, 2
lea rcx, [rbp + 0x130]
call sub.llama.dll_ggml_internal_get_type_traits
vmovups zmm0, zmmword [rax]
vmovups zmmword [rbp + 0x50], zmm0
vmovsd xmm0, qword [rax + 0x40]
vmovsd qword [rbp + 0x90], xmm0
lea rax, [rbp + 0x50]
vmovups ymm1, ymmword [rax + 0x20]
vmovups ymmword [rbp + 0x20], ymm1
vmovsd xmm0, qword [rax + 0x40]
vmovsd qword [rbp + 0x40], xmm0
vpxor xmm1, xmm1, xmm1
vmovdqu xmmword [rbp - 0x30], xmm1
mov qword [rsp + 0x68], r13
mov qword [rbp - 0x20], r13
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rbp - 0x60], xmm0
xor esi, esi
mov qword [rsp + 0x60], rsi
mov qword [rbp - 0x50], rsi
lea r8, [rsp + 0x20]
mov edx, 0x2000
test r12d, r12d
je 0x140002e4b
lea rcx, [rbp - 0x60]
vzeroupper
call fcn.1400011d0
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x60], rax
jmp 0x140002e60
lea rcx, [rbp - 0x30]
vzeroupper
call section..text
mov rax, qword [rbp - 0x20]
mov qword [rsp + 0x68], rax
vpxor xmm0, xmm0, xmm0
vmovdqu xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x38], 0
mov ecx, 0x48027
call fcn.140003610
test rax, rax
je 0x14000358a
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov qword [rbp - 0x48], rsi
lea r12, [rsi + 0x48000]
mov qword [rbp - 0x38], r12
xor edx, edx
mov r8d, 0x48000
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
mov qword [rbp - 0x40], r12
mov ecx, 0x80
call fcn.140003610
mov r13, rax
mov qword [rbp - 0x18], rax
sub rax, 0xffffffffffffff80
mov qword [rbp - 8], rax
vpxor xmm0, xmm0, xmm0
vmovups zmmword [r13], zmm0
vmovups zmmword [r13 + 0x40], zmm0
mov qword [rbp - 0x10], rax
vxorpd xmm9, xmm9, xmm9
vxorpd xmm15, xmm15, xmm15
vxorpd xmm8, xmm8, xmm8
vmovsd qword [rsp + 0x38], xmm8
vxorpd xmm11, xmm11, xmm11
vmovsd qword [rsp + 0x50], xmm11
vxorpd xmm13, xmm13, xmm13
vxorpd xmm14, xmm14, xmm14
vxorpd xmm10, xmm10, xmm10
vmovsd qword [rsp + 0x58], xmm10
vxorpd xmm6, xmm6, xmm6
vxorpd xmm12, xmm12, xmm12
vmovsd qword [rsp + 0x48], xmm0
mov r12, qword [rbp - 0x30]
mov eax, dword [rsp + 0x24]
test eax, eax
jle 0x14000329a
mov qword [rsp + 0x38], rax
mov rbx, qword [rbp + 0x28]
vmovsd xmm7, qword [0x1400054e0]
vmovq xmm9, xmm0
mov r13, qword [rbp - 0x60]
nop
vxorps xmm2, xmm2, xmm2
lea rdx, [rbp + 0x180]
lea rcx, [rsp + 0x70]
vzeroupper
call fcn.1400025d0
vxorps xmm2, xmm2, xmm2
lea rdx, [rbp + 0x180]
lea rcx, [rbp - 0x78]
call fcn.1400025d0
mov rdi, qword [rbp - 0x78]
lea rax, [rdi + 4]
mov r14, qword [rsp + 0x70]
mov rcx, r14
sub rcx, rdi
mov edx, 0x8000
nop dword [rax]
nop dword [rax + rax]
vmovss xmm0, dword [rcx + rax - 4]
vmulss xmm1, xmm0, dword [rax - 4]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm3, xmm2, xmm9
vmovss xmm0, dword [rcx + rax]
vmulss xmm1, xmm0, dword [rax]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm4, xmm3, xmm2
vmovss xmm0, dword [rcx + rax + 4]
vmulss xmm1, xmm0, dword [rax + 4]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm3, xmm4, xmm2
vmovss xmm0, dword [rcx + rax + 8]
vmulss xmm1, xmm0, dword [rax + 8]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm4, xmm3, xmm2
vmovss xmm0, dword [rcx + rax + 0xc]
vmulss xmm1, xmm0, dword [rax + 0xc]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm3, xmm4, xmm2
vmovss xmm0, dword [rcx + rax + 0x10]
vmulss xmm1, xmm0, dword [rax + 0x10]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm4, xmm3, xmm2
vmovss xmm0, dword [rcx + rax + 0x14]
vmulss xmm1, xmm0, dword [rax + 0x14]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm3, xmm4, xmm2
vmovss xmm0, dword [rcx + rax + 0x18]
vmulss xmm1, xmm0, dword [rax + 0x18]
vcvtss2sd xmm2, xmm1, xmm1
vaddsd xmm9, xmm3, xmm2
lea rax, [rax + 0x20]
sub rdx, 1
jne 0x140002fa0
vmovsd qword [rsp + 0x48], xmm9
mov r15d, dword [rsp + 0x2c]
mov r8d, 0x40000
mov rcx, r14
test r15d, r15d
mov rdx, r13
jne 0x140003064
mov rdx, r12
call rbx
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140003082
imul rbx, rax, 0x64
jmp 0x14000309e
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
mov r8, rdi
mov ecx, 0x2000
test r15d, r15d
je 0x1400030b5
mov rdx, r13
call fcn.1400019c0
jmp 0x1400030bd
mov rdx, r12
call fcn.140001ef0
vaddsd xmm6, xmm0, xmm6
call sub.MSVCP140.dll__Query_perf_frequency
mov r15, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp r15, 0x989680
jne 0x1400030dd
imul rax, rax, 0x64
jmp 0x1400030f8
cqo
idiv r15
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv r15
add rax, rcx
sub rax, rbx
vxorpd xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, rax
vmulsd xmm1, xmm0, xmm7
vmovsd qword [rsp + 0x40], xmm1
vaddsd xmm15, xmm15, xmm1
vmulsd xmm0, xmm1, xmm1
vaddsd xmm8, xmm8, xmm0
lea rax, [rsp + 0x40]
lea rcx, [rsp + 0x50]
vcomisd xmm1, xmm11
cmovbe rax, rcx
vmovsd xmm11, qword [rax]
vmovsd qword [rsp + 0x50], xmm11
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140003153
imul r15, rax, 0x64
jmp 0x14000316e
cqo
idiv rbx
imul r15, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add r15, rax
cmp dword [rsp + 0x28], 0
je 0x14000319d
mov r8d, 0x40000
mov rdx, rsi
mov rcx, rdi
call fcn.140002760
mov r9, rsi
mov r8, r12
lea rdx, [rsp + 0x30]
mov ecx, 0x40000
call fcn.1400022b0
jmp 0x1400031e5
mov edx, dword [rbp + 0x40]
lea rcx, [rbp + 0xa0]
call sub.llama.dll_ggml_internal_get_type_traits
vmovups ymm1, ymmword [rax + 0x20]
mov r8d, 0x40000
mov rdx, rsi
mov rcx, rdi
vpextrq rax, xmm1, 1
vzeroupper
call rax
mov r9, rsi
lea rdx, [rsp + 0x30]
mov ecx, 0x40000
cmp dword [rsp + 0x2c], 0
mov r8, r13
jne 0x1400031e2
mov r8, r12
call qword [rbp + 0x38]
vmovss xmm0, dword [rsp + 0x30]
vcvtss2sd xmm0, xmm0, xmm0
vaddsd xmm12, xmm12, xmm0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x14000320f
imul rax, rax, 0x64
jmp 0x14000322a
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
sub rax, r15
vxorpd xmm0, xmm0, xmm0
vcvtsi2sd xmm0, xmm0, rax
vmulsd xmm1, xmm0, xmm7
vmovsd qword [rsp + 0x40], xmm1
vaddsd xmm13, xmm13, xmm1
vmulsd xmm0, xmm1, xmm1
vaddsd xmm14, xmm14, xmm0
lea rax, [rsp + 0x40]
lea rcx, [rsp + 0x58]
vcomisd xmm1, xmm10
cmovbe rax, rcx
vmovsd xmm10, qword [rax]
vmovsd qword [rsp + 0x58], xmm10
sub qword [rsp + 0x38], 1
mov rbx, qword [rbp + 0x28]
jne 0x140002f50
vmovsd qword [rsp + 0x38], xmm8
mov rbx, qword [rbp - 0x80]
mov r15, qword [rbp - 0x68]
vxorpd xmm9, xmm9, xmm9
vmovsd xmm0, qword [rsp + 0x48]
mov r13, qword [rbp - 0x18]
mov eax, dword [rsp + 0x24]
vxorps xmm8, xmm8, xmm8
vcvtsi2sd xmm8, xmm8, eax
vdivsd xmm7, xmm6, xmm8
vdivsd xmm6, xmm12, xmm8
vdivsd xmm1, xmm0, xmm8
vmovq rdx, xmm1
lea rcx, str.Exact_result:__dot____g_n
vzeroupper
call fcn.1400035a0
vmovaps xmm2, xmm6
vmovq r8, xmm6
vmovaps xmm1, xmm7
vmovq rdx, xmm7
lea rcx, str._dot____g___g_n
call fcn.1400035a0
vdivsd xmm6, xmm15, xmm8
vmovsd xmm0, qword [rsp + 0x38]
vdivsd xmm1, xmm0, xmm8
vmulsd xmm0, xmm6, xmm6
vsubsd xmm2, xmm1, xmm0
vcomisd xmm2, xmm9
jbe 0x140003320
vxorpd xmm0, xmm0, xmm0
vucomisd xmm0, xmm2
ja 0x140003313
vsqrtsd xmm2, xmm2, xmm2
jmp 0x140003320
vmovaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
vmovaps xmm2, xmm0
vmovaps xmm3, xmm11
vmovq r9, xmm3
vmovq r8, xmm2
vmovaps xmm1, xmm6
vmovq rdx, xmm6
lea rcx, str.time___g_____g_us._maxt___g_us_n
call fcn.1400035a0
vdivsd xmm6, xmm13, xmm8
vdivsd xmm1, xmm14, xmm8
vmulsd xmm0, xmm6, xmm6
vsubsd xmm2, xmm1, xmm0
vcomisd xmm2, xmm9
jbe 0x14000337a
vxorpd xmm0, xmm0, xmm0
vucomisd xmm0, xmm2
ja 0x14000336d
vsqrtsd xmm2, xmm2, xmm2
jmp 0x14000337a
vmovaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
vmovaps xmm2, xmm0
vmovaps xmm3, xmm10
vmovq r9, xmm3
vmovq r8, xmm2
vmovaps xmm1, xmm6
vmovq rdx, xmm6
lea rcx, str.timeq___g_____g_us._maxt___g_us_n
call fcn.1400035a0
nop
test r13, r13
je 0x1400033e8
lea rax, [r13 + 0x80]
sub rax, r13
sar rax, 3
lea rdx, [rax*8]
cmp rdx, 0x1000
jb 0x1400033df
add rdx, 0x27
mov rcx, qword [r13 - 8]
sub r13, rcx
lea rax, [r13 - 8]
cmp rax, 0x1f
ja 0x14000349e
mov r13, rcx
mov rcx, r13
call fcn.14000364c
nop
lea rcx, [rsi + 0x48000]
sub rcx, rsi
movabs rax, 0xe38e38e38e38e39
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*8]
shl rdx, 2
cmp rdx, 0x1000
jb 0x140003439
add rdx, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x14000358a
mov rsi, rcx
mov rcx, rsi
call fcn.14000364c
nop
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x1400034ab
mov rdx, qword [rsp + 0x60]
sub rdx, rcx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 3
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400034a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400034a5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14000364c
nop
test r12, r12
je 0x14000350d
mov rcx, qword [rsp + 0x68]
sub rcx, r12
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*4]
shl rdx, 2
mov rax, r12
cmp rdx, 0x1000
jb 0x140003504
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003504
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.14000364c
nop
test rdi, rdi
je 0x14000354b
sub r15, rdi
sar r15, 2
lea rdx, [r15*4]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140003542
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003591
mov rcx, rdi
call fcn.14000364c
nop
test r14, r14
je 0x140003583
sub rbx, r14
and rbx, 0xfffffffffffffffc
mov rax, r14
cmp rbx, 0x1000
jb 0x140003578
add rbx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003598
mov rdx, rbx
mov rcx, r14
call fcn.14000364c
xor eax, eax
jmp 0x140002c17
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3