Function at 0x140012e20
Capabilities:
Allocate or change rwx memory
Check os version
Encode data using xor
Execute shellcode via indirect call
Generate random numbers using a mersenne twister

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
mov eax, 0x9860
call fcn.14002a1f0
sub rsp, rax
movaps xmmword [rsp + 0x9850], xmm6
movaps xmmword [rsp + 0x9840], xmm7
movaps xmmword [rsp + 0x9830], xmm8
movaps xmmword [rsp + 0x9820], xmm9
movaps xmmword [rsp + 0x9810], xmm10
movaps xmmword [rsp + 0x9800], xmm11
movaps xmmword [rsp + 0x97f0], xmm12
movaps xmmword [rsp + 0x97e0], xmm13
movaps xmmword [rsp + 0x97d0], xmm14
movaps xmmword [rsp + 0x97c0], xmm15
mov rax, qword [0x140036010]
xor rax, rsp
mov qword [rsp + 0x97b0], rax
xor r12d, r12d
mov r15d, 1
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_Sleep]
xorps xmm0, xmm0
movups xmmword [rsp + 0xa90], xmm0
lea rcx, [rsp + 0x9878]
movabs r14, 0xff00ff00ff00ff00
mov qword [rsp + 0xa98], r14
mov qword [rsp + 0xaa0], rcx
mov rax, qword [rcx]
xor rax, r14
mov qword [rsp + 0xa90], rax
mov qword [rcx], r12
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_Sleep]
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0xda4]
call sub.VCRUNTIME140.dll_memset
mov dword [rsp + 0xda0], 0x114
lea rcx, [rsp + 0xda0]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x2244], 0xffffffff
mov dword [rsp + 0xec4], eax
mov edx, r15d
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0xec4], eax
inc rdx
cmp rdx, 0x270
jb 0x140012f60
mov dword [rsp + 0xec0], 0x270
mov dword [rsp + 0x8c8], 0xffffff9c
mov dword [rsp + 0x8cc], 0x64
movsd xmm11, qword [0x14002e6e8]
mov dword [rsp + 0x40], r12d
xorps xmm14, xmm14
movsd qword [rsp + 0x50], xmm14
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140012fda
imul rax, rax, 0x64
jmp 0x140012ff5
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea rbx, [rax + 0x5f5e100]
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x8e0], xmm1
mov qword [rsp + 0x8f0], r12
mov ecx, 8
call fcn.140029398
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x4e0], r12
mov qword [rsp + 0x140], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x14001305c
mov qword [rsp + 0x140], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x140013072
lea r8, [rsp + 0x140]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x140]
test rcx, rcx
je 0x14001308c
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x4e0]
test rcx, rcx
je 0x1400130a5
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x500], r12
mov qword [rsp + 0x148], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x1400130f1
mov qword [rsp + 0x148], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x140013107
lea r8, [rsp + 0x148]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x140013121
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x500]
test rcx, rcx
je 0x14001313a
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x300], r12
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x140013186
mov qword [rsp + 0x150], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x14001319c
lea r8, [rsp + 0x150]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x150]
test rcx, rcx
je 0x1400131b6
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x300]
test rcx, rcx
je 0x1400131cf
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x308], r12
mov qword [rsp + 0x158], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x14001321b
mov qword [rsp + 0x158], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x140013231
lea r8, [rsp + 0x158]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x14001324b
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x308]
test rcx, rcx
je 0x140013264
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x310], r12
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x1400132b0
mov qword [rsp + 0x160], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x1400132c6
lea r8, [rsp + 0x160]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x160]
test rcx, rcx
je 0x1400132e0
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x310]
test rcx, rcx
je 0x1400132f9
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x318], r12
mov qword [rsp + 0x168], rax
mov rdx, qword [rsp + 0x8e8]
cmp rdx, qword [rsp + 0x8f0]
je 0x140013345
mov qword [rsp + 0x168], r12
mov qword [rdx], rax
add qword [rsp + 0x8e8], 8
jmp 0x14001335b
lea r8, [rsp + 0x168]
lea rcx, [rsp + 0x8e0]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x168]
test rcx, rcx
je 0x140013375
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x318]
test rcx, rcx
je 0x14001338e
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov esi, 0x80000000
movsd xmm8, qword [0x14002e6c0]
movsd xmm15, qword [0x14002e6e0]
movsd xmm12, qword [0x14002e6d8]
movsd xmm13, qword [0x14002e6c8]
movsd xmm7, qword [0x14002e7a0]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x1400133dd
imul rax, rax, 0x64
jmp 0x1400133f8
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x140014039
mov r13d, r12d
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x140013424
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013433
add eax, esi
jmp 0x140013438
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x14001344e
call fcn.1400214d0
jmp 0x14001348c
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013487
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013487
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013470
mov esi, 0x80000000
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x1400134a2
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x1400134b1
add eax, esi
jmp 0x1400134b6
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x1400134cf
call fcn.1400214d0
mov ecx, eax
jmp 0x140013511
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013508
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013508
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x1400134f1
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
mov r8, qword [rsp + 0x8e8]
mov r9, qword [rsp + 0x8e0]
sub r8, r9
sar r8, 3
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
movsxd rax, ecx
xor edx, edx
div r8
movsxd rax, edx
mov r15, qword [r9 + rax*8]
mov rax, qword [r15]
mov r12, qword [rax + 8]
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140013566
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013575
add eax, esi
jmp 0x14001357a
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013593
call fcn.1400214d0
mov ecx, eax
jmp 0x1400135e0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x1400135d7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x1400135d7
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x1400135c0
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
lea eax, [rdx + rsi]
lea r8d, [rdx - 0x80000000]
cmp edx, esi
cmovae r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, r15
call r12
mov dword [rsp + 0x40], eax
movaps xmm9, xmm14
movaps xmm1, xmm8
mov edi, 2
nop
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm9, xmm0
mulsd xmm1, xmm15
sub rdi, 1
jne 0x140013610
divsd xmm9, xmm1
mulsd xmm9, xmm12
addsd xmm9, xmm11
movaps xmm10, xmm14
movaps xmm1, xmm8
mov edi, 2
nop dword [rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm10, xmm0
mulsd xmm1, xmm15
sub rdi, 1
jne 0x140013660
divsd xmm10, xmm1
mulsd xmm10, xmm12
addsd xmm10, xmm11
movaps xmm6, xmm10
andps xmm6, xmm7
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
movaps xmm7, xmm0
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
mulsd xmm7, xmm0
addsd xmm6, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log
addsd xmm7, xmm0
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
subsd xmm7, xmm0
movsd xmm1, qword [rsp + 0x50]
addsd xmm7, xmm1
movsd qword [rsp + 0x50], xmm7
movaps xmm0, xmm14
movaps xmm2, xmm8
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140013700
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movaps xmm0, xmm14
movaps xmm2, xmm8
mov edi, 2
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140013763
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
movsd xmm1, qword [rsp + 0x50]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa50], xmm0
xor r15d, r15d
mov qword [rsp + 0xa60], r15
mov qword [rsp + 0xa68], r15
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xa50]
call fcn.140020140
nop
lea rdi, [rsp + 0xa50]
cmp qword [rsp + 0xa68], 0x10
jb 0x14001380c
mov rdi, qword [rsp + 0xa50]
mov rcx, rdi
jmp 0x140013814
lea rcx, [rsp + 0xa50]
mov rdx, rdi
mov rsi, qword [rsp + 0xa60]
add rsi, rcx
cmp rdx, rsi
je 0x140013878
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x140013868
nop dword [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x140013850
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, rsi
jne 0x140013830
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x930], xmm1
mov qword [rsp + 0x940], r15
mov ecx, 0x190
call fcn.140029398
mov qword [rsp + 0x930], rax
lea r14, [rax + 0x190]
mov qword [rsp + 0x940], r14
xor edx, edx
mov r8d, 0x190
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x938], r14
mov rsi, qword [rsp + 0x930]
cmp rsi, r14
je 0x140013910
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0xec0]
lea rcx, [rsp + 0x8c8]
call fcn.14001edd0
mov dword [rsi], eax
add rsi, 4
cmp rsi, r14
jne 0x1400138e0
mov r14, qword [rsp + 0x938]
mov rsi, qword [rsp + 0x930]
mov dword [rsp + 0xa88], 0xffffff9c
mov dword [rsp + 0xa8c], 0x64
cmp rsi, r14
je 0x140013964
nop dword [rax + rax]
mov edi, dword [rsi]
lea rdx, [rsp + 0xec0]
lea rcx, [rsp + 0xa88]
call fcn.14001edd0
add eax, edi
mov dword [rsi], eax
add rsi, 4
cmp rsi, r14
jne 0x140013930
mov r14, qword [rsp + 0x938]
mov rsi, qword [rsp + 0x930]
mov r8, r14
sub r8, rsi
sar r8, 2
xor r9d, r9d
mov rdx, r14
mov rcx, rsi
call fcn.140021cc0
mov r8d, r15d
mov rax, qword [rsp + 0x930]
mov rdx, r15
mov r9, qword [rsp + 0x938]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r15
test rcx, rcx
je 0x140013a05
cmp rcx, 8
jb 0x140013a05
and rcx, 0xfffffffffffffff8
xorps xmm1, xmm1
xorps xmm2, xmm2
nop dword [rax]
movdqu xmm0, xmmword [rax]
paddd xmm1, xmm0
movdqu xmm0, xmmword [rax + 0x10]
paddd xmm0, xmm2
movdqa xmm2, xmm0
add rax, 0x20
add rdx, 8
cmp rdx, rcx
jne 0x1400139c0
paddd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd r8d, xmm1
cmp rax, r9
je 0x140013a1c
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x140013a10
mov eax, dword [rsp + 0x40]
add eax, r8d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x8c8]
mov esi, 0x80000000
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140013a42
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
add eax, esi
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013a64
call fcn.1400214d0
mov ecx, eax
jmp 0x140013ab0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013aa7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013aa7
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013a90
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx - 0x80000000]
lea edi, [rcx + rsi]
cmp ecx, esi
cmovae edi, eax
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea r15d, [rax + rsi]
jb 0x140013ad7
lea r15d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013ae6
add eax, esi
jmp 0x140013aeb
add eax, 0x80000000
sub eax, r15d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013b04
call fcn.1400214d0
mov ecx, eax
jmp 0x140013b50
lea esi, [rax + 1]
call fcn.1400214d0
mov r14d, esi
mov ecx, eax
imul rcx, r14
cmp ecx, esi
jae 0x140013b47
mov eax, esi
neg eax
xor edx, edx
div esi
mov esi, edx
cmp ecx, edx
jae 0x140013b47
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, r14
cmp ecx, esi
jb 0x140013b30
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r15d
lea eax, [rcx - 0x80000000]
lea r8d, [rcx + rsi]
cmp ecx, esi
cmovae r8d, eax
mov ecx, edi
test edi, edi
mov eax, 1
cmove ecx, eax
mov eax, r8d
sub eax, edi
cdq
idiv ecx
imul r8d, edi
add eax, r8d
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140013b9a
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0x8c8]
lea r14d, [rax + rsi]
jne 0x140013c50
cmp eax, esi
jb 0x140013bb8
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013bc7
add eax, esi
jmp 0x140013bcc
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013be5
call fcn.1400214d0
mov ecx, eax
jmp 0x140013c30
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013c27
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013c27
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013c10
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140013cec
cmp eax, esi
jb 0x140013c5b
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013c6a
add eax, esi
jmp 0x140013c6f
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013c88
call fcn.1400214d0
mov ecx, eax
jmp 0x140013cd0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013cc7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013cc7
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013cb0
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
mov r12d, 5
nop dword [rax]
nop word [rax + rax]
xor r15d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140013d26
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013d35
add eax, esi
jmp 0x140013d3a
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013d53
call fcn.1400214d0
mov ecx, eax
jmp 0x140013da0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013d97
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013d97
nop word [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013d80
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
movaps xmm1, xmm14
movaps xmm2, xmm8
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140013dd0
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
test r15b, 1
jne 0x140013ece
mov eax, dword [rsp + 0x8c8]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140013e3d
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8cc]
cmp eax, esi
jae 0x140013e4c
add eax, esi
jmp 0x140013e51
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0xec0]
cmp eax, 0xffffffff
jne 0x140013e6a
call fcn.1400214d0
mov ecx, eax
jmp 0x140013eb0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140013ea7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140013ea7
nop dword [rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140013e90
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
imul edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140013f32
movaps xmm1, xmm14
movaps xmm2, xmm8
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0xec0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140013ee0
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
addsd xmm1, xmm8
divsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
inc r15d
cmp r15d, 5
jl 0x140013d10
sub r12, 1
jne 0x140013d00
mov rcx, qword [rsp + 0x930]
test rcx, rcx
je 0x140013fb0
mov rax, qword [rsp + 0x940]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013f92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001402b
call fcn.140029390
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x930], xmm0
xor r12d, r12d
mov qword [rsp + 0x940], r12
jmp 0x140013fb3
xor r12d, r12d
mov rdx, qword [rsp + 0xa68]
cmp rdx, 0x10
jb 0x140013ff2
inc rdx
mov rcx, qword [rsp + 0xa50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013fed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014032
call fcn.140029390
mov qword [rsp + 0xa60], r12
mov qword [rsp + 0xa68], 0xf
mov byte [rsp + 0xa50], 0
inc r13d
cmp r13d, 0x186a0
movsd xmm7, qword [0x14002e7a0]
jl 0x140013410
jmp 0x1400133b7
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
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x8e0]
test rbx, rbx
je 0x1400140e3
mov rdi, qword [rsp + 0x8e8]
mov r15d, 1
cmp rbx, rdi
je 0x140014086
mov rcx, qword [rbx]
test rcx, rcx
je 0x140014075
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x140014061
mov rbx, qword [rsp + 0x8e0]
mov rax, qword [rsp + 0x8f0]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400140c2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001642d
mov rcx, rbx
call fcn.140029390
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x8e0], xmm0
mov qword [rsp + 0x8f0], r12
mov ecx, r15d
jmp 0x1400140e8
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x14002e290]
mov dword [rsp + 0x90], eax
movzx eax, byte [0x14002e294]
movsd xmm0, qword [str._DEJUL_vlC_]
mov byte [rsp + 0x94], al
movsd qword [rsp + 0x88], xmm0
lea rbx, [0x140001710]
mov r9d, r12d
mov r13d, dword [0x140036018]
cmp r13d, 2
jl 0x140014348
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm7, eax
movdqa xmm8, xmmword [0x14002e7b0]
mov eax, 6
movd xmm9, eax
mov ecx, 0x1f
movd xmm11, ecx
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
paddb xmm3, xmmword [0x14002e770]
movd xmm0, dword [str._DEJUL_vlC_]
pxor xmm3, xmm0
movd dword [rsp + 0x88], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
paddb xmm3, xmmword [0x14002e770]
movd xmm0, dword [rsp + 0x8c]
pxor xmm3, xmm0
movd dword [rsp + 0x8c], xmm3
lea r9d, [rax + 2]
movsd xmm8, qword [0x14002e6c0]
movsd xmm11, qword [0x14002e6e8]
movsd xmm12, qword [0x14002e6d8]
movsd xmm7, qword [0x14002e7a0]
movsd xmm13, qword [0x14002e6c8]
movsxd rax, r9d
lea r10, [rsp + 0x88]
add r10, rax
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x140014360
lea rax, [rsp + 0x88]
mov qword [rsp + 0x320], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xbb0], xmm0
lea rsi, [rsp + 0x9878]
movabs rax, 0xff00ff00ff00ff00
mov qword [rsp + 0xbb8], rax
mov qword [rsp + 0xbc0], rsi
mov rdi, qword [rsi]
xor rdi, rax
mov qword [rsp + 0xbb0], rdi
mov qword [rsi], r12
mov ecx, r12d
mov rax, qword [0x140038960]
lea r15, [0x14001f480]
lea r14, [0x140000000]
test rax, rax
je 0x140014434
nop
cmp rax, r15
je 0x14001445f
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x140014420
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140014479
mov r8, r12
lea r12d, [rax + 3]
jmp 0x14001451e
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
je 0x140014434
mov r12d, 3
jmp 0x14001453f
mov rax, r15
mov rcx, r8
mov r12d, 3
mov edx, r12d
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014490
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x320]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rdi, rdx
mov qword [rsp + 0xbb0], rdi
mov qword [rsi], rdi
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov dword [rsp + 0x130], ecx
xorps xmm0, xmm0
movups xmmword [rsp + 0xbc8], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xbd0], rdx
mov qword [rsp + 0xbd8], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xbc8], rsi
mov qword [rax], rcx
mov rax, qword [0x140038c80]
lea rdi, [0x14001f7a0]
test rax, rax
je 0x1400145e9
nop dword [rax]
cmp rax, rdi
je 0x1400145d6
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x1400145c0
jmp 0x1400145e9
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x1400146cf
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1400146ae
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014620
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x130]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rsi, rdx
mov qword [rsp + 0xbc8], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x400
jne 0x1400148a9
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
mov eax, 1
mov dword [rsp + 0x134], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb08], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xb10], rdx
mov qword [rsp + 0xb18], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xb08], rsi
xor ecx, ecx
mov qword [rax], rcx
mov rax, qword [0x140038c80]
test rax, rax
je 0x140014789
nop
cmp rax, rdi
je 0x140014776
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x140014760
jmp 0x140014789
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x14001486f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x14001484e
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400147c0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x134]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rsi, rdx
mov qword [rsp + 0xb08], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x300
je 0x140014f39
cmp dword [rsp + 0xda4], 6
ja 0x1400148c7
jne 0x140014f39
cmp dword [rsp + 0xda8], 2
jb 0x140014f39
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov dword [rsp + 0x138], ecx
xorps xmm0, xmm0
movups xmmword [rsp + 0xb20], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xb28], rdx
mov qword [rsp + 0xb30], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xb20], rsi
mov qword [rax], rcx
mov rax, qword [0x140038c80]
test rax, rax
je 0x140014940
cmp rax, rdi
je 0x14001492d
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x140014917
jmp 0x140014940
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x140014a1f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1400149fe
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014970
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x138]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rsi, rdx
mov qword [rsp + 0xb20], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x500
jne 0x140014bf9
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
mov eax, 1
mov dword [rsp + 0x1a4], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb38], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xb40], rdx
mov qword [rsp + 0xb48], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xb38], rsi
xor ecx, ecx
mov qword [rax], rcx
mov rax, qword [0x140038c80]
test rax, rax
je 0x140014ad9
nop
cmp rax, rdi
je 0x140014ac6
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x140014ab0
jmp 0x140014ad9
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x140014bbf
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x140014b9e
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014b10
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x1a4]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rsi, rdx
mov qword [rsp + 0xb38], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x400
je 0x140014f39
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov dword [rsp + 0x13c], ecx
xorps xmm0, xmm0
movups xmmword [rsp + 0xb50], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xb58], rdx
mov qword [rsp + 0xb60], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xb50], rsi
mov qword [rax], rcx
mov rax, qword [0x140038c80]
test rax, rax
je 0x140014c79
nop dword [rax]
cmp rax, rdi
je 0x140014c66
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x140014c50
jmp 0x140014c79
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x140014d5f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x140014d3e
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014cb0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x13c]
mov rcx, rbx
call r8
nop
movabs rdx, 0xff00ff00ff00ff00
xor rsi, rdx
mov qword [rsp + 0xb50], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x320
jne 0x1400160ae
mov rbx, qword [sym.imp.USER32.dll_GetSystemMetrics]
mov eax, 1
mov dword [rsp + 0x1a0], eax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb68], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xb70], rdx
mov qword [rsp + 0xb78], rax
mov rsi, qword [rax]
xor rsi, rdx
mov qword [rsp + 0xb68], rsi
xor ecx, ecx
mov qword [rax], rcx
mov rax, qword [0x140038c80]
test rax, rax
je 0x140014e19
nop
cmp rax, rdi
je 0x140014e06
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38c80]
test rax, rax
jne 0x140014df0
jmp 0x140014e19
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37680]
test r8, r8
jne 0x140014eff
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x140014ede
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140014e50
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037670]
mov qword [r14 + rax*8 + 0x38c80], rdi
mov qword [r14 + rax*8 + 0x37680], r8
inc rax
mov qword [0x140037670], rax
lea rdx, [rsp + 0x1a0]
mov rcx, rbx
call r8
nop
movabs rcx, 0xff00ff00ff00ff00
xor rsi, rcx
mov qword [rsp + 0xb68], rsi
lea rcx, [rsp + 0x9878]
mov qword [rcx], rsi
cmp eax, 0x258
jne 0x1400160ae
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x35d4], 0xffffffff
mov dword [rsp + 0x2254], eax
mov r15d, 1
mov edx, r15d
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x2254], eax
inc rdx
cmp rdx, 0x270
jb 0x140014f60
mov dword [rsp + 0x2250], 0x270
mov dword [rsp + 0x8d0], 0xffffff9c
mov dword [rsp + 0x8d4], 0x64
xor r14d, r14d
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140014fd0
imul rax, rax, 0x64
jmp 0x140014feb
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea rbx, [rax + 0x5f5e100]
mov qword [rsp + 0x358], rbx
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x8f8], xmm1
mov qword [rsp + 0x908], r14
mov ecx, 8
call fcn.140029398
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x328], r14
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x14001505a
mov qword [rsp + 0x170], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x140015070
lea r8, [rsp + 0x170]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x170]
test rcx, rcx
je 0x14001508a
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x328]
test rcx, rcx
je 0x1400150a3
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x330], r14
mov qword [rsp + 0x178], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x1400150ef
mov qword [rsp + 0x178], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x140015105
lea r8, [rsp + 0x178]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x178]
test rcx, rcx
je 0x14001511f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x330]
test rcx, rcx
je 0x140015138
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x338], r14
mov qword [rsp + 0x180], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x140015184
mov qword [rsp + 0x180], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x14001519a
lea r8, [rsp + 0x180]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x180]
test rcx, rcx
je 0x1400151b4
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x338]
test rcx, rcx
je 0x1400151cd
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x340], r14
mov qword [rsp + 0x188], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x140015219
mov qword [rsp + 0x188], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x14001522f
lea r8, [rsp + 0x188]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x188]
test rcx, rcx
je 0x140015249
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x340]
test rcx, rcx
je 0x140015262
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x348], r14
mov qword [rsp + 0x190], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x1400152ae
mov qword [rsp + 0x190], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x1400152c4
lea r8, [rsp + 0x190]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x190]
test rcx, rcx
je 0x1400152de
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x348]
test rcx, rcx
je 0x1400152f7
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.140029398
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x350], r14
mov qword [rsp + 0x198], rax
mov rdx, qword [rsp + 0x900]
cmp rdx, qword [rsp + 0x908]
je 0x140015343
mov qword [rsp + 0x198], r14
mov qword [rdx], rax
add qword [rsp + 0x900], 8
jmp 0x140015359
lea r8, [rsp + 0x198]
lea rcx, [rsp + 0x8f8]
call fcn.140021210
nop
mov rcx, qword [rsp + 0x198]
test rcx, rcx
je 0x140015373
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x350]
test rcx, rcx
je 0x14001538c
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov esi, 0x80000000
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x1400153af
imul rax, rax, 0x64
jmp 0x1400153ca
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x140016011
mov r13d, r14d
nop word [rax + rax]
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x1400153f4
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015403
add eax, esi
jmp 0x140015408
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x14001541e
call fcn.1400214d0
jmp 0x14001545c
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015457
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015457
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015440
mov esi, 0x80000000
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140015472
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015481
add eax, esi
jmp 0x140015486
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x14001549f
call fcn.1400214d0
mov ecx, eax
jmp 0x1400154e1
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x1400154d8
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x1400154d8
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x1400154c1
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
mov r8, qword [rsp + 0x900]
mov r9, qword [rsp + 0x8f8]
sub r8, r9
sar r8, 3
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
movsxd rax, ecx
xor edx, edx
div r8
movsxd rax, edx
mov r15, qword [r9 + rax*8]
mov rax, qword [r15]
mov r12, qword [rax + 8]
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140015536
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015545
add eax, esi
jmp 0x14001554a
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015563
call fcn.1400214d0
mov ecx, eax
jmp 0x1400155b0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x1400155a7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x1400155a7
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015590
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
lea eax, [rdx + rsi]
lea r8d, [rdx - 0x80000000]
cmp edx, esi
cmovae r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, r15
call r12
mov dword [rsp + 0x40], eax
movaps xmm9, xmm14
movaps xmm1, xmm8
mov edi, 2
nop
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm9, xmm0
mulsd xmm1, xmm15
sub rdi, 1
jne 0x1400155e0
divsd xmm9, xmm1
mulsd xmm9, xmm12
addsd xmm9, xmm11
movaps xmm10, xmm14
movaps xmm1, xmm8
mov edi, 2
nop dword [rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm10, xmm0
mulsd xmm1, xmm15
sub rdi, 1
jne 0x140015630
divsd xmm10, xmm1
mulsd xmm10, xmm12
addsd xmm10, xmm11
movaps xmm6, xmm10
andps xmm6, xmm7
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
movaps xmm7, xmm0
movaps xmm0, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
mulsd xmm7, xmm0
addsd xmm6, xmm8
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log
addsd xmm7, xmm0
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
subsd xmm7, xmm0
movsd xmm1, qword [rsp + 0x50]
addsd xmm7, xmm1
movsd qword [rsp + 0x50], xmm7
movaps xmm0, xmm14
movaps xmm2, xmm8
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm15
sub rdi, 1
jne 0x1400156d0
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movaps xmm0, xmm14
movaps xmm2, xmm8
mov edi, 2
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140015733
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
movsd xmm1, qword [rsp + 0x50]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa20], xmm0
xor r15d, r15d
mov qword [rsp + 0xa30], r15
mov qword [rsp + 0xa38], r15
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xa20]
call fcn.140020140
nop
lea rdi, [rsp + 0xa20]
cmp qword [rsp + 0xa38], 0x10
jb 0x1400157dc
mov rdi, qword [rsp + 0xa20]
mov rcx, rdi
jmp 0x1400157e4
lea rcx, [rsp + 0xa20]
mov rdx, rdi
mov rsi, qword [rsp + 0xa30]
add rsi, rcx
cmp rdx, rsi
je 0x140015848
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x140015838
nop dword [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x140015820
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, rsi
jne 0x140015800
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x948], xmm1
mov qword [rsp + 0x958], r15
mov ecx, 0x190
call fcn.140029398
mov qword [rsp + 0x948], rax
lea r14, [rax + 0x190]
mov qword [rsp + 0x958], r14
xor edx, edx
mov r8d, 0x190
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x950], r14
mov rsi, qword [rsp + 0x948]
cmp rsi, r14
je 0x1400158e0
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x2250]
lea rcx, [rsp + 0x8d0]
call fcn.14001edd0
mov dword [rsi], eax
add rsi, 4
cmp rsi, r14
jne 0x1400158b0
mov r14, qword [rsp + 0x950]
mov rsi, qword [rsp + 0x948]
mov dword [rsp + 0xa80], 0xffffff9c
mov dword [rsp + 0xa84], 0x64
cmp rsi, r14
je 0x140015934
nop dword [rax + rax]
mov edi, dword [rsi]
lea rdx, [rsp + 0x2250]
lea rcx, [rsp + 0xa80]
call fcn.14001edd0
add eax, edi
mov dword [rsi], eax
add rsi, 4
cmp rsi, r14
jne 0x140015900
mov r14, qword [rsp + 0x950]
mov rsi, qword [rsp + 0x948]
mov r8, r14
sub r8, rsi
sar r8, 2
xor r9d, r9d
mov rdx, r14
mov rcx, rsi
call fcn.140021cc0
mov r8d, r15d
mov rax, qword [rsp + 0x948]
mov rdx, r15
mov r9, qword [rsp + 0x950]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r15
test rcx, rcx
je 0x1400159d1
cmp rcx, 8
jb 0x1400159d1
and rcx, 0xfffffffffffffff8
xorps xmm2, xmm2
xorps xmm1, xmm1
nop dword [rax]
movdqu xmm0, xmmword [rax]
paddd xmm2, xmm0
movdqu xmm0, xmmword [rax + 0x10]
paddd xmm1, xmm0
add rax, 0x20
add rdx, 8
cmp rdx, rcx
jne 0x140015990
paddd xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd r8d, xmm1
cmp rax, r9
je 0x1400159ec
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x1400159e0
mov eax, dword [rsp + 0x40]
add eax, r8d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x8d0]
mov esi, 0x80000000
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140015a12
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
add eax, esi
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015a34
call fcn.1400214d0
mov ecx, eax
jmp 0x140015a80
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015a77
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015a77
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015a60
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx - 0x80000000]
lea edi, [rcx + rsi]
cmp ecx, esi
cmovae edi, eax
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea r15d, [rax + rsi]
jb 0x140015aa7
lea r15d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015ab6
add eax, esi
jmp 0x140015abb
add eax, 0x80000000
sub eax, r15d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015ad4
call fcn.1400214d0
mov ecx, eax
jmp 0x140015b20
lea esi, [rax + 1]
call fcn.1400214d0
mov r14d, esi
mov ecx, eax
imul rcx, r14
cmp ecx, esi
jae 0x140015b17
mov eax, esi
neg eax
xor edx, edx
div esi
mov esi, edx
cmp ecx, edx
jae 0x140015b17
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, r14
cmp ecx, esi
jb 0x140015b00
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r15d
lea eax, [rcx - 0x80000000]
lea r8d, [rcx + rsi]
cmp ecx, esi
cmovae r8d, eax
mov ecx, edi
test edi, edi
mov eax, 1
cmove ecx, eax
mov eax, r8d
sub eax, edi
cdq
idiv ecx
imul edi, r8d
add eax, edi
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140015b69
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0x8d0]
lea r14d, [rax + rsi]
jne 0x140015c20
cmp eax, esi
jb 0x140015b87
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015b96
add eax, esi
jmp 0x140015b9b
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015bb4
call fcn.1400214d0
mov ecx, eax
jmp 0x140015c00
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015bf7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015bf7
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015be0
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140015cbc
cmp eax, esi
jb 0x140015c2b
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015c3a
add eax, esi
jmp 0x140015c3f
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015c58
call fcn.1400214d0
mov ecx, eax
jmp 0x140015ca0
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015c97
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015c97
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015c80
shr rcx, 0x20
mov esi, 0x80000000
lea edx, [rcx + r14]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
xor ebx, ebx
lea r12d, [rbx + 5]
nop dword [rax]
nop word [rax + rax]
mov r15d, ebx
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140015cf6
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015d05
add eax, esi
jmp 0x140015d0a
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015d23
call fcn.1400214d0
mov ecx, eax
jmp 0x140015d70
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015d67
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015d67
nop word [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015d50
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
movaps xmm1, xmm14
movaps xmm2, xmm8
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140015da0
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
test r15b, 1
jne 0x140015e9e
mov eax, dword [rsp + 0x8d0]
cmp eax, esi
lea r14d, [rax + rsi]
jb 0x140015e0d
lea r14d, [rax - 0x80000000]
mov eax, dword [rsp + 0x8d4]
cmp eax, esi
jae 0x140015e1c
add eax, esi
jmp 0x140015e21
add eax, 0x80000000
sub eax, r14d
lea rcx, [rsp + 0x2250]
cmp eax, 0xffffffff
jne 0x140015e3a
call fcn.1400214d0
mov ecx, eax
jmp 0x140015e80
lea edi, [rax + 1]
call fcn.1400214d0
mov esi, edi
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jae 0x140015e77
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140015e77
nop dword [rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov ecx, eax
imul rcx, rsi
cmp ecx, edi
jb 0x140015e60
shr rcx, 0x20
mov esi, 0x80000000
add ecx, r14d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
imul edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140015f02
movaps xmm1, xmm14
movaps xmm2, xmm8
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0x2250]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm15
sub rdi, 1
jne 0x140015eb0
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
addsd xmm1, xmm8
divsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
inc r15d
cmp r15d, 5
jl 0x140015ce0
sub r12, 1
jne 0x140015cd0
mov rbx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x948]
test rcx, rcx
je 0x140015f88
mov rax, qword [rsp + 0x958]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015f6a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140016003
call fcn.140029390
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x948], xmm0
xor r14d, r14d
mov qword [rsp + 0x958], r14
jmp 0x140015f8b
xor r14d, r14d
mov rdx, qword [rsp + 0xa38]
cmp rdx, 0x10
jb 0x140015fca
inc rdx
mov rcx, qword [rsp + 0xa20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015fc5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001600a
call fcn.140029390
mov qword [rsp + 0xa30], r14
mov qword [rsp + 0xa38], 0xf
mov byte [rsp + 0xa20], 0
inc r13d
cmp r13d, 0x186a0
movsd xmm7, qword [0x14002e7a0]
jl 0x1400153e0
jmp 0x140015391
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
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0x8f8]
test rbx, rbx
je 0x14001ba63
mov rdi, qword [rsp + 0x900]
cmp rbx, rdi
je 0x140016065
mov r15d, 1
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x140016054
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x140016040
mov rbx, qword [rsp + 0x8f8]
mov rax, qword [rsp + 0x908]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400160a1
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001642d
mov rcx, rbx
call fcn.140029390
jmp 0x14001ba63
movsd xmm0, qword [0x14002e580]
movsd qword [rsp + 0xb8], xmm0
mov eax, dword [0x14002e588]
mov dword [rsp + 0xc0], eax
movzx eax, word [0x14002e58c]
mov word [rsp + 0xc4], ax
xor edi, edi
cmp byte [0x14002e58d], dil
je 0x140016354
mov r9d, edi
cmp r13d, 2
jl 0x1400162e9
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
mov eax, 6
movd xmm10, eax
mov eax, 0x1f
movd xmm12, eax
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x14002e580]
pxor xmm3, xmm0
movd dword [rsp + 0xb8], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0xbc]
pxor xmm3, xmm1
movd dword [rsp + 0xbc], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xb8]
add r10, rax
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x140016300
lea rax, [rsp + 0xb8]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140016363
mov rdx, qword [0x14003af70]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x14001bae8
lea rax, [0x14003af60]
cmp qword [0x14003af78], 0x10
cmovae rax, qword [0x14003af60]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xb8]
lea rcx, [rsp + 0x2c8]
call fcn.140020ac0
lea r8, [rsp + 0x2c8]
cmp qword [rsp + 0x2e0], 0x10
cmovae r8, qword [rsp + 0x2c8]
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov qword [rsp + 0xd0], rax
mov rdx, qword [rsp + 0x2e0]
cmp rdx, 0x10
jb 0x140016439
inc rdx
mov rcx, qword [rsp + 0x2c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140016434
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140016434
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140029390
movzx eax, byte [0x14002e0d0]
movups xmm0, xmmword [0x14002e0c0]
mov byte [rsp + 0x1b8], al
movups xmmword [rsp + 0x1a8], xmm0
lea rbx, [0x140001710]
mov byte [rsp + 0x2c8], 0
mov qword [rsp + 0x2e0], 0xf
mov qword [rsp + 0x2d8], rdi
mov r9d, edi
mov esi, 0x1f
cmp r13d, 2
jl 0x1400166af
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
mov eax, 6
movd xmm11, eax
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, esi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x1a8]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x1400164f0
cmp r9d, 0x11
jge 0x140016714
movsxd rax, r9d
lea r10, [rsp + 0x1a8]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x1400166c0
lea rax, [rsp + 0x1a8]
mov qword [rsp + 0x360], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb80], xmm0
lea rax, [rsp + 0x9878]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0xb88], rcx
mov qword [rsp + 0xb90], rax
mov rdi, qword [rax]
xor rdi, rcx
mov qword [rsp + 0xb80], rdi
xor ecx, ecx
mov qword [rax], rcx
mov rax, qword [0x140038960]
test rax, rax
je 0x140016799
cmp rax, r15
je 0x140016786
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x140016770
jmp 0x140016799
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x14001687f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x14001685e
mov rax, r15
mov rcx, r8
mov rdx, r12
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400167d0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x360]
mov rcx, rbx
call r8
nop
movabs rcx, 0xff00ff00ff00ff00
xor rdi, rcx
mov qword [rsp + 0xb80], rdi
lea rax, [rsp + 0x9878]
mov qword [rax], rdi
xorps xmm0, xmm0
movups xmmword [rsp + 0xb98], xmm0
lea rax, [rsp + 0x9878]
mov qword [rsp + 0xba0], rcx
mov qword [rsp + 0xba8], rax
mov rbx, qword [rax]
xor rbx, rcx
mov qword [rsp + 0xb98], rbx
xor ecx, ecx
mov qword [rax], rcx
mov rax, qword [0x140038fa0]
lea rdi, [0x14001f840]
test rax, rax
je 0x140016920
cmp rax, rdi
je 0x14001690d
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38fa0]
test rax, rax
jne 0x1400168f7
jmp 0x140016920
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37020]
test r8, r8
jne 0x1400169ff
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
je 0x1400169de
mov rax, rdi
mov rcx, r8
mov rdx, r12
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140016950
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x1400392c0]
mov qword [r14 + rax*8 + 0x38fa0], rdi
mov qword [r14 + rax*8 + 0x37020], r8
inc rax
mov qword [0x1400392c0], rax
mov rcx, qword [sym.imp.KERNEL32.dll_GetLastError]
call r8
nop
movabs rcx, 0xff00ff00ff00ff00
xor rbx, rcx
mov qword [rsp + 0xb98], rbx
lea rcx, [rsp + 0x9878]
mov qword [rcx], rbx
cmp eax, 0xb7
jne 0x1400172d7
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x35e0]
call fcn.14001cf90
mov dword [rsp + 0x8d8], 0xffffff9c
mov dword [rsp + 0x8dc], 0x64
movaps xmm0, xmmword [0x14002e780]
movups xmmword [rsp + 0x960], xmm0
xor ebx, ebx
mov dword [rsp + 0x40], ebx
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x368]
call fcn.140001770
mov rax, qword [rsp + 0x368]
add rax, 0x5f5e100
mov qword [rsp + 0x1e8], rax
lea rcx, [rsp + 0x9b8]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x9b8], xmm0
mov qword [rsp + 0x9c8], rbx
lea rcx, [rsp + 0x370]
call fcn.14001eed0
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x2c0], rcx
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x2c0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x370]
call fcn.14001ce80
lea rcx, [rsp + 0x378]
call fcn.14001ef20
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x1c0], rcx
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1c0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x378]
call fcn.14001ce80
lea rcx, [rsp + 0x380]
call fcn.14001ef50
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x1c8], rcx
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1c8]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x380]
call fcn.14001ce80
lea rcx, [rsp + 0x388]
call fcn.14001ef80
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x1d0], rcx
lea rdx, [rsp + 0x1d0]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1d0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x388]
call fcn.14001ce80
lea rcx, [rsp + 0x390]
call fcn.14001efb0
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x1d8], rcx
lea rdx, [rsp + 0x1d8]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1d8]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x390]
call fcn.14001ce80
lea rcx, [rsp + 0x478]
call fcn.14001efe0
nop
mov rcx, qword [rax]
mov qword [rax], rbx
mov qword [rsp + 0x1e0], rcx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0x9b8]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1e0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x478]
call fcn.14001ce80
lea rcx, [rsp + 0x398]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x1e8]
call fcn.140002690
test al, al
jns 0x1400172b3
lea rax, [rsp + 0x8d8]
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x35e0]
mov qword [rsp + 0xd8], rax
movaps xmm6, xmmword [rsp + 0xd0]
movsd xmm7, qword [0x14002e6c8]
mov r13d, 0x80000000
nop dword [rax]
mov dword [rsp + 0xd0], ebx
nop word [rax + rax]
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
call fcn.14001edd0
mov rbx, qword [rsp + 0x9c0]
sub rbx, qword [rsp + 0x9b8]
sar rbx, 3
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
call fcn.14001edd0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x9b8]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
call fcn.14001edd0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x960]
call fcn.14001f010
movaps xmm5, xmm0
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x960]
call fcn.14001f010
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x960]
call fcn.14001f010
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x960]
call fcn.14001f010
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0xc58]
call fcn.14001df00
nop
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0xc58]
call fcn.1400024b0
lea rcx, [rsp + 0x9e8]
call fcn.1400026e0
lea rcx, [rsp + 0x9e8]
call fcn.14001d060
nop
movdqa xmmword [rsp + 0x670], xmm6
lea r8, [rsp + 0x670]
mov rdx, qword [rsp + 0x9f0]
mov rcx, qword [rsp + 0x9e8]
call fcn.14001f090
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x9e8]
call fcn.1400025c0
mov rdx, qword [rsp + 0x9f0]
mov rcx, qword [rsp + 0x9e8]
call fcn.14001f0f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
call fcn.14001edd0
mov ebx, eax
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
call fcn.14001edd0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140016f09
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x35e0]
lea rcx, [rsp + 0x8d8]
test eax, eax
jne 0x140016f2e
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140016f3d
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov r15d, 5
movsd xmm5, qword [0x14002e6c0]
xor r12d, r12d
nop
mov r14d, r12d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0x8d8]
cmp eax, r13d
lea esi, [rax + r13]
jb 0x140016f76
lea esi, [rax - 0x80000000]
mov eax, dword [rsp + 0x8dc]
cmp eax, r13d
jae 0x140016f87
add eax, r13d
jmp 0x140016f8c
add eax, 0x80000000
sub eax, esi
lea rcx, [rsp + 0x35e0]
cmp eax, 0xffffffff
jne 0x140016fa4
call fcn.1400214d0
mov ecx, eax
jmp 0x140016feb
lea ebx, [rax + 1]
call fcn.1400214d0
mov edi, ebx
mov ecx, eax
imul rcx, rdi
cmp ecx, ebx
jae 0x140016fe7
mov eax, ebx
neg eax
xor edx, edx
div ebx
mov ebx, edx
cmp ecx, edx
jae 0x140016fe7
nop word [rax + rax]
lea rcx, [rsp + 0x35e0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rdi
cmp ecx, ebx
jb 0x140016fd0
shr rcx, 0x20
add ecx, esi
lea eax, [rcx + r13]
lea edx, [rcx - 0x80000000]
cmp ecx, r13d
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
movaps xmm3, xmm14
movaps xmm2, xmm5
mov ebx, 2
lea rcx, [rsp + 0x35e0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm3, xmm0
mulsd xmm2, xmm15
sub rbx, 1
jne 0x140017013
movsd xmm1, qword [rsp + 0x968]
movups xmm0, xmmword [rsp + 0x960]
subsd xmm1, xmm0
divsd xmm3, xmm2
mulsd xmm1, xmm3
addsd xmm1, xmm0
addsd xmm1, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm1
test r14b, 1
jne 0x14001711a
mov eax, dword [rsp + 0x8d8]
cmp eax, r13d
lea esi, [rax + r13]
jb 0x14001708f
lea esi, [rax - 0x80000000]
mov eax, dword [rsp + 0x8dc]
cmp eax, r13d
jae 0x1400170a0
add eax, r13d
jmp 0x1400170a5
add eax, 0x80000000
sub eax, esi
lea rcx, [rsp + 0x35e0]
cmp eax, 0xffffffff
jne 0x1400170bd
call fcn.1400214d0
mov ecx, eax
jmp 0x1400170fb
lea ebx, [rax + 1]
call fcn.1400214d0
mov edi, ebx
mov ecx, eax
imul rcx, rdi
cmp ecx, ebx
jae 0x1400170f7
mov eax, ebx
neg eax
xor edx, edx
div ebx
mov ebx, edx
cmp ecx, edx
jae 0x1400170f7
nop
lea rcx, [rsp + 0x35e0]
call fcn.1400214d0
mov ecx, eax
imul rcx, rdi
cmp ecx, ebx
jb 0x1400170e0
shr rcx, 0x20
add ecx, esi
lea eax, [rcx + r13]
lea edx, [rcx - 0x80000000]
cmp ecx, r13d
cmovae edx, eax
mov eax, dword [rsp + 0x40]
imul edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140017194
movaps xmm4, xmm14
movaps xmm3, xmm5
mov ebx, 2
nop word [rax + rax]
lea rcx, [rsp + 0x35e0]
call fcn.1400214d0
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm3
addsd xmm4, xmm0
mulsd xmm3, xmm15
sub rbx, 1
jne 0x140017130
movsd xmm2, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x968]
movups xmm0, xmmword [rsp + 0x960]
subsd xmm1, xmm0
divsd xmm4, xmm3
mulsd xmm1, xmm4
addsd xmm1, xmm0
addsd xmm1, xmm5
divsd xmm2, xmm1
movsd qword [rsp + 0x50], xmm2
inc r14d
cmp r14d, 5
jl 0x140016f60
sub r15, 1
jne 0x140016f50
mov r12d, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x9e8]
test rcx, rcx
je 0x140017219
mov rax, qword [rsp + 0x9f8]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400171fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400172c9
call fcn.140029390
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x9e8], xmm0
xor ebx, ebx
mov qword [rsp + 0x9f8], rbx
jmp 0x14001721b
xor ebx, ebx
mov rdx, qword [rsp + 0xc70]
cmp rdx, 0x10
jb 0x14001725a
inc rdx
mov rcx, qword [rsp + 0xc58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140017255
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400172d0
call fcn.140029390
mov qword [rsp + 0xc68], rbx
mov qword [rsp + 0xc70], 0xf
mov byte [rsp + 0xc58], 0
inc r12d
mov dword [rsp + 0xd0], r12d
cmp r12d, 0x186a0
jl 0x140016d00
lea rcx, [rsp + 0x398]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x1e8]
call fcn.140002690
test al, al
js 0x140016cf0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x9b8]
call fcn.14001ced0
jmp 0x14001ba63
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
movsd xmm0, qword [str.XMLGFEwi]
movsd qword [rsp + 0xf0], xmm0
mov eax, dword [0x14002ddc0]
mov dword [rsp + 0xf8], eax
movzx eax, byte [0x14002ddc4]
mov byte [rsp + 0xfc], al
xor edi, edi
mov r9d, edi
cmp r13d, 2
jl 0x1400174ff
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
mov eax, 6
movd xmm10, eax
movd xmm12, esi
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str.XMLGFEwi]
pxor xmm3, xmm0
movd dword [rsp + 0xf0], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0xf4]
pxor xmm3, xmm1
movd dword [rsp + 0xf4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xf0]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x140017510
lea r8, [0x14003af40]
lea rdx, [rsp + 0xf0]
lea rcx, [rsp + 0x7e0]
call fcn.14001f7d0
mov rcx, rax
call fcn.14001dd50
mov r8, rax
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
mov rbx, rax
lea rcx, [rsp + 0x7e0]
call fcn.14001de90
movups xmm0, xmmword [str._DEJUL_v_ZEVM]
movups xmmword [rsp + 0x2e8], xmm0
movzx ecx, byte [0x14002e530]
mov byte [rsp + 0x2f8], cl
mov r9d, edi
cmp r13d, 2
jl 0x1400177ef
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
mov eax, 6
movd xmm11, eax
movdqa xmm12, xmmword [0x14002e740]
movdqa xmm13, xmmword [0x14002e730]
movd xmm8, esi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x2e8]
mov edx, dword [rsp + 0x50]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm13
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm13
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x140017630
cmp r9d, 0x11
jge 0x140017854
movsxd rax, r9d
lea r10, [rsp + 0x2e8]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x140017800
lea rax, [rsp + 0x2e8]
mov qword [rsp + 0x3a0], rax
lea rcx, [rsp + 0xbe0]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xbe0]
call fcn.1400026f0
nop
mov ecx, edi
mov rax, qword [0x140038960]
test rax, rax
je 0x1400178be
cmp rax, r15
je 0x1400178ab
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x140017895
jmp 0x1400178be
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x14001799f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400178e5
mov r8, rdi
jmp 0x14001797e
mov rax, r15
mov rcx, r8
mov rdx, r12
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400178f0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x3a0]
lea rcx, [0x140001710]
call r8
nop
mov rcx, qword [rsp + 0xbe0]
xor rcx, qword [rsp + 0xbe8]
mov qword [rsp + 0xbe0], rcx
mov rax, qword [rsp + 0xbf0]
mov qword [rax], rcx
test rbx, rbx
je 0x140018002
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x4970]
call fcn.14001cf90
mov dword [rsp + 0x910], 0xffffff9c
mov dword [rsp + 0x914], 0x64
movaps xmm0, xmmword [0x14002e780]
movups xmmword [rsp + 0xa10], xmm0
xor r14d, r14d
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x3a8]
call fcn.140001770
mov rax, qword [rsp + 0x3a8]
add rax, 0x5f5e100
mov qword [rsp + 0x220], rax
lea rcx, [rsp + 0x9d0]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x9d0], xmm0
mov qword [rsp + 0x9e0], r14
lea rcx, [rsp + 0x3b0]
call fcn.14001eed0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1f0], rcx
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1f0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3b0]
call fcn.14001ce80
lea rcx, [rsp + 0x3b8]
call fcn.14001ef20
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1f8], rcx
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x1f8]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3b8]
call fcn.14001ce80
lea rcx, [rsp + 0x3c0]
call fcn.14001ef50
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x200], rcx
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x200]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3c0]
call fcn.14001ce80
lea rcx, [rsp + 0x3c8]
call fcn.14001ef80
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x208], rcx
lea rdx, [rsp + 0x208]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x208]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3c8]
call fcn.14001ce80
lea rcx, [rsp + 0x3d0]
call fcn.14001efb0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x210], rcx
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x210]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3d0]
call fcn.14001ce80
lea rcx, [rsp + 0x3d8]
call fcn.14001efe0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x218], rcx
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x9d0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x218]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x3d8]
call fcn.14001ce80
lea rcx, [rsp + 0x3e0]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x220]
call fcn.140002690
test al, al
jns 0x140017fec
lea rax, [rsp + 0x910]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x4970]
mov qword [rsp + 0xa8], rax
movaps xmm6, xmmword [rsp + 0xa0]
movsd xmm15, qword [0x14002e6c0]
movsd xmm7, qword [0x14002e6c8]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov rbx, qword [rsp + 0x9d8]
sub rbx, qword [rsp + 0x9d0]
sar rbx, 3
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x9d0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
movaps xmm5, xmm0
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0xd40]
call fcn.14001df00
nop
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xd40]
call fcn.1400024b0
lea rcx, [rsp + 0xad8]
call fcn.1400026e0
lea rcx, [rsp + 0xad8]
call fcn.14001d060
nop
movdqa xmmword [rsp + 0x690], xmm6
lea r8, [rsp + 0x690]
mov rdx, qword [rsp + 0xae0]
mov rcx, qword [rsp + 0xad8]
call fcn.14001f090
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xad8]
call fcn.1400025c0
mov rdx, qword [rsp + 0xae0]
mov rcx, qword [rsp + 0xad8]
call fcn.14001f0f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov ebx, eax
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140017eb9
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
test eax, eax
jne 0x140017ede
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140017eed
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x4970]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4970]
test bl, 1
jne 0x140017f6b
lea rcx, [rsp + 0x910]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140017f8d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xa10]
call fcn.14001f010
addsd xmm0, xmm15
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140017f00
sub rdi, 1
jne 0x140017ef2
lea rcx, [rsp + 0xad8]
call fcn.14001d000
nop
lea rcx, [rsp + 0xd40]
call fcn.14001de90
sub rsi, 1
jne 0x140017cb0
lea rcx, [rsp + 0x3e0]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x220]
call fcn.140002690
test al, al
js 0x140017ca0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x9d0]
call fcn.14001ced0
jmp 0x14001ba54
movsd xmm0, qword [str._DEJUL_vlC_RT]
movsd qword [rsp + 0x100], xmm0
mov eax, dword [0x14002dde0]
mov dword [rsp + 0x108], eax
movzx eax, word [0x14002dde4]
mov word [rsp + 0x10c], ax
movzx eax, byte [0x14002dde6]
mov byte [rsp + 0x10e], al
mov r9d, edi
mov ebx, 6
cmp r13d, 2
jl 0x140018237
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
movd xmm10, ebx
movd xmm12, esi
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str._DEJUL_vlC_RT]
pxor xmm3, xmm0
movd dword [rsp + 0x100], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x104]
pxor xmm3, xmm1
movd dword [rsp + 0x104], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x100]
add r10, rax
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x140018250
lea rax, [rsp + 0x100]
mov qword [rsp + 0x3e8], rax
lea rcx, [rsp + 0xbf8]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xbf8]
call fcn.1400026f0
nop
mov ecx, edi
mov rax, qword [0x140038960]
test rax, rax
je 0x14001830e
cmp rax, r15
je 0x1400182fb
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x1400182e5
jmp 0x14001830e
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x1400183ef
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140018335
mov r8, rdi
jmp 0x1400183ce
mov rax, r15
mov rcx, r8
mov rdx, r12
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140018340
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x3e8]
lea rcx, [0x140001710]
call r8
nop
mov rcx, qword [rsp + 0xbf8]
xor rcx, qword [rsp + 0xc00]
mov qword [rsp + 0xbf8], rcx
mov rax, qword [rsp + 0xc08]
mov qword [rax], rcx
movups xmm0, xmmword [0x14002e038]
movups xmmword [rsp + 0x508], xmm0
movups xmm1, xmmword [0x14002e048]
movups xmmword [rsp + 0x518], xmm1
mov eax, dword [0x14002e058]
mov dword [rsp + 0x528], eax
movzx eax, word [0x14002e05c]
mov word [rsp + 0x52c], ax
mov r9d, edi
cmp r13d, 2
jl 0x14001868f
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
movd xmm11, ebx
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, esi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x508]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x1400184d0
cmp r9d, 0x26
jge 0x1400186f4
movsxd rax, r9d
lea r10, [rsp + 0x508]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x26
jl 0x1400186a0
lea rax, [rsp + 0x508]
mov qword [rsp + 0x3f0], rax
lea rdx, [rsp + 0x3f0]
lea rcx, [rsp + 0x6e8]
call fcn.14001f870
nop
lea rcx, [rsp + 0x6e8]
call fcn.140003240
movzx ebx, al
lea rcx, [rsp + 0x6e8]
call fcn.140002880
test bl, bl
je 0x140018a55
movups xmm0, xmmword [str.LG_vBQN_r]
movups xmmword [rsp + 0x530], xmm0
movups xmm1, xmmword [0x14002db80]
movups xmmword [rsp + 0x540], xmm1
movups xmm0, xmmword [0x14002db90]
movups xmmword [rsp + 0x550], xmm0
mov eax, dword [0x14002dba0]
mov dword [rsp + 0x560], eax
movzx eax, byte [0x14002dba4]
mov byte [rsp + 0x564], al
mov r9d, edi
cmp r13d, 2
jl 0x1400189bf
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
mov eax, 6
movd xmm11, eax
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, esi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x530]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x30
jl 0x140018800
cmp r9d, 0x35
jge 0x140018a24
movsxd rax, r9d
lea r10, [rsp + 0x530]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x35
jl 0x1400189d0
lea rdx, [rsp + 0x530]
lea rcx, [rsp + 0x708]
call fcn.14001df00
nop
lea rcx, [rsp + 0x708]
call fcn.14000f850
nop
lea rcx, [rsp + 0x708]
call fcn.14001de90
mov byte [rsp + 0x78], 0
mov eax, dword [str.CR_b_q]
mov dword [rsp + 0x84], eax
cmp byte [0x14002e64f], 0
je 0x140018be4
cmp r13d, 2
jl 0x140018b77
movd xmm6, esi
movdqa xmm7, xmmword [0x14002e710]
movdqa xmm4, xmm7
punpckldq xmm4, xmm7
movdqa xmm2, xmm7
punpckhdq xmm2, xmm7
movdqa xmm5, xmm4
pmuldq xmm5, xmmword [0x14002e790]
movdqa xmm0, xmm2
pmuldq xmm0, xmmword [0x14002e790]
shufps xmm5, xmm0, 0xdd
mov ecx, 5
movd xmm0, ecx
psrad xmm5, xmm0
pmuldq xmm4, xmmword [0x14002e7b0]
pmuldq xmm2, xmmword [0x14002e7b0]
shufps xmm4, xmm2, 0xdd
paddd xmm4, xmm7
mov ecx, 6
movd xmm0, ecx
psrad xmm4, xmm0
movdqa xmm1, xmm4
psrld xmm1, xmm6
paddd xmm1, xmm4
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm7
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm5
psrld xmm0, xmm6
paddd xmm0, xmm5
pmulld xmm0, xmmword [0x14002e730]
psubd xmm7, xmm0
pshuflw xmm0, xmm7, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
paddb xmm3, xmmword [0x14002e770]
movd xmm0, eax
pxor xmm3, xmm0
movd dword [rsp + 0x84], xmm3
jmp 0x140018be4
lea r10, [rsp + 0x84]
mov r9d, edi
nop dword [rax]
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x140018b90
lea rdx, [rsp + 0x84]
lea rcx, [rsp + 0x8a0]
call fcn.14001bb30
mov rbx, rax
movups xmm0, xmmword [0x14002e370]
movups xmmword [rsp + 0x570], xmm0
movups xmm1, xmmword [0x14002e380]
movups xmmword [rsp + 0x580], xmm1
movups xmm0, xmmword [0x14002e390]
movups xmmword [rsp + 0x590], xmm0
movups xmm1, xmmword [0x14002e3a0]
movups xmmword [rsp + 0x5a0], xmm1
movsd xmm0, qword [0x14002e3b0]
movsd qword [rsp + 0x5b0], xmm0
mov eax, dword [0x14002e3b8]
mov dword [rsp + 0x5b8], eax
movzx eax, word [0x14002e3bc]
mov word [rsp + 0x5bc], ax
movzx eax, byte [0x14002e3be]
mov byte [rsp + 0x5be], al
mov r9d, edi
cmp r13d, 2
jl 0x140018e9f
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
mov eax, 6
movd xmm11, eax
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, esi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x570]
mov edx, dword [rsp + 0x50]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x48
jl 0x140018ce0
cmp r9d, 0x4f
jge 0x140018f04
movsxd rax, r9d
lea r10, [rsp + 0x570]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x4f
jl 0x140018eb0
lea rdx, [rsp + 0x570]
lea rcx, [rsp + 0x7c0]
call fcn.14001df00
mov rdx, rax
lea rcx, [rsp + 0x7a0]
call fcn.14000bc20
nop
lea r9, [rsp + 0x78]
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0xce0]
call fcn.14001f8d0
nop
lea rcx, [rsp + 0x7a0]
call fcn.14001de90
nop
lea rcx, [rsp + 0x8a0]
call fcn.14001baf0
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x5d00]
call fcn.14001cf90
mov dword [rsp + 0x928], 0xffffff9c
mov dword [rsp + 0x92c], 0x64
movaps xmm0, xmmword [0x14002e780]
movups xmmword [rsp + 0xa00], xmm0
xor esi, esi
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x3f8]
call fcn.140001770
mov rax, qword [rsp + 0x3f8]
add rax, 0x5f5e100
mov qword [rsp + 0x258], rax
lea rcx, [rsp + 0x970]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x970], xmm0
mov qword [rsp + 0x980], rsi
lea rcx, [rsp + 0x400]
call fcn.14001eed0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x228], rcx
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x228]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x400]
call fcn.14001ce80
lea rcx, [rsp + 0x408]
call fcn.14001ef20
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x230], rcx
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x230]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x408]
call fcn.14001ce80
lea rcx, [rsp + 0x410]
call fcn.14001ef50
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x238], rcx
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x238]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x410]
call fcn.14001ce80
lea rcx, [rsp + 0x418]
call fcn.14001ef80
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x240], rcx
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x240]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x418]
call fcn.14001ce80
lea rcx, [rsp + 0x420]
call fcn.14001efb0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x248], rcx
lea rdx, [rsp + 0x248]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x248]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x420]
call fcn.14001ce80
lea rcx, [rsp + 0x428]
call fcn.14001efe0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x250], rcx
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0x970]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x250]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x428]
call fcn.14001ce80
lea rcx, [rsp + 0x430]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x258]
call fcn.140002690
movsd xmm15, qword [0x14002e6c0]
test al, al
jns 0x14001957a
lea rax, [rsp + 0x928]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x5d00]
mov qword [rsp + 0xa8], rax
movaps xmm6, xmmword [rsp + 0xa0]
movsd xmm7, qword [0x14002e6c8]
xor r13d, r13d
lea r14d, [rsi + 5]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov rbx, qword [rsp + 0x978]
sub rbx, qword [rsp + 0x970]
sar rbx, 3
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x970]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
movaps xmm5, xmm0
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0xd20]
call fcn.14001df00
nop
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xd20]
call fcn.1400024b0
lea rcx, [rsp + 0xac0]
call fcn.1400026e0
lea rcx, [rsp + 0xac0]
call fcn.14001d060
nop
movdqa xmmword [rsp + 0x6a0], xmm6
lea r8, [rsp + 0x6a0]
mov rdx, qword [rsp + 0xac8]
mov rcx, qword [rsp + 0xac0]
call fcn.14001f090
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xac0]
call fcn.1400025c0
mov rdx, qword [rsp + 0xac8]
mov rcx, qword [rsp + 0xac0]
call fcn.14001f0f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov ebx, eax
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140019439
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
test eax, eax
jne 0x14001945e
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001946d
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov rdi, r14
mov ebx, r13d
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x5d00]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x5d00]
test bl, 1
jne 0x1400194eb
lea rcx, [rsp + 0x928]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001950d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xa00]
call fcn.14001f010
addsd xmm0, xmm15
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140019480
sub rdi, 1
jne 0x140019470
lea rcx, [rsp + 0xac0]
call fcn.14001d000
nop
lea rcx, [rsp + 0xd20]
call fcn.14001de90
sub rsi, 1
jne 0x140019230
lea rcx, [rsp + 0x430]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x258]
call fcn.140002690
test al, al
js 0x140019220
lea r14, [0x140000000]
mov r13d, dword [0x140036018]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x970]
call fcn.14001ced0
movsd xmm0, qword [0x14002de28]
movsd qword [rsp + 0xe0], xmm0
mov eax, dword [0x14002de30]
mov dword [rsp + 0xe8], eax
movzx eax, byte [0x14002de34]
mov byte [rsp + 0xec], al
mov r9d, esi
cmp r13d, 2
jl 0x1400197b6
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
mov ebx, 6
movd xmm10, ebx
mov edi, 0x1f
movd xmm12, edi
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm2, xmm0, 0xdd
psrad xmm2, xmm8
pmuldq xmm4, xmm9
pmuldq xmm1, xmm9
shufps xmm4, xmm1, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e730]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e740]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x14002de28]
pxor xmm3, xmm0
movd dword [rsp + 0xe0], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0xe4]
pxor xmm3, xmm1
movd dword [rsp + 0xe4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xe0]
add r10, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1400197d0
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x438], rax
lea rcx, [rsp + 0xc10]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xc10]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x140038960]
test rax, rax
je 0x14001988e
cmp rax, r15
je 0x14001987b
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x140019865
jmp 0x14001988e
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x14001996f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400198b5
mov r8, rsi
jmp 0x14001994e
mov rax, r15
mov rcx, r8
mov rdx, r12
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400198c0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x438]
lea rcx, [0x140001710]
call r8
nop
mov rcx, qword [rsp + 0xc10]
xor rcx, qword [rsp + 0xc18]
mov qword [rsp + 0xc10], rcx
mov rax, qword [rsp + 0xc20]
mov qword [rax], rcx
movzx eax, word [0x14002e3e8]
mov word [rsp + 0x64], ax
cmp byte [0x14002e3e9], 0
je 0x1400199c4
mov byte [rsp + 0x64], 0x3a
xor byte [rsp + 0x65], 0x21
movzx eax, word [0x14002e3e8]
mov word [rsp + 0x60], ax
cmp byte [0x14002e3e9], 0
je 0x1400199e3
mov byte [rsp + 0x60], 0x3a
xor byte [rsp + 0x61], 0x21
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x820]
call fcn.14001ec90
nop
lea r8, [0x14003af60]
mov rdx, rax
lea rcx, [rsp + 0x740]
call fcn.14001ed70
nop
lea r8, [rsp + 0x64]
mov rdx, rax
lea rcx, [rsp + 0x780]
call fcn.14001ed10
nop
lea r8, [rsp + 0xce0]
mov rdx, rax
lea rcx, [rsp + 0xcc0]
call fcn.14001ed70
nop
lea rcx, [rsp + 0x780]
call fcn.14001de90
nop
lea rcx, [rsp + 0x740]
call fcn.14001de90
nop
lea rcx, [rsp + 0x820]
call fcn.14001de90
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x7090]
call fcn.14001cf90
mov dword [rsp + 0x920], 0xffffff9c
mov dword [rsp + 0x924], 0x64
movaps xmm0, xmmword [0x14002e780]
movups xmmword [rsp + 0xa40], xmm0
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x440]
call fcn.140001770
mov rax, qword [rsp + 0x440]
add rax, 0x5f5e100
mov qword [rsp + 0x4d8], rax
lea rcx, [rsp + 0x988]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x988], xmm0
mov qword [rsp + 0x998], rsi
lea rcx, [rsp + 0x448]
call fcn.14001eed0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x260], rcx
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x260]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x448]
call fcn.14001ce80
lea rcx, [rsp + 0x450]
call fcn.14001ef20
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x268], rcx
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x268]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x450]
call fcn.14001ce80
lea rcx, [rsp + 0x458]
call fcn.14001ef50
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x270], rcx
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x270]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x458]
call fcn.14001ce80
lea rcx, [rsp + 0x460]
call fcn.14001ef80
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x278], rcx
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x278]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x460]
call fcn.14001ce80
lea rcx, [rsp + 0x468]
call fcn.14001efb0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x280], rcx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x280]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x468]
call fcn.14001ce80
lea rcx, [rsp + 0x470]
call fcn.14001efe0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x288], rcx
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x988]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x288]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x470]
call fcn.14001ce80
nop dword [rax]
lea rcx, [rsp + 0x648]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x4d8]
call fcn.140002690
test al, al
jns 0x14001a04b
nop word [rax + rax]
cmp esi, 0x186a0
jge 0x14001a044
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov rbx, qword [rsp + 0x990]
sub rbx, qword [rsp + 0x988]
sar rbx, 3
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x988]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
movaps xmm5, xmm0
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
movsd xmm1, qword [0x14002e6c8]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0xd60]
call fcn.14001df00
nop
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xd60]
call fcn.1400024b0
lea rcx, [rsp + 0xaf0]
call fcn.1400026e0
lea rcx, [rsp + 0xaf0]
call fcn.14001d060
nop
lea rax, [rsp + 0x920]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x7090]
mov qword [rsp + 0xa8], rax
movaps xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x6b0], xmm0
lea r8, [rsp + 0x6b0]
mov rdx, qword [rsp + 0xaf8]
mov rcx, qword [rsp + 0xaf0]
call fcn.14001f090
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xaf0]
call fcn.1400025c0
mov rdx, qword [rsp + 0xaf8]
mov rcx, qword [rsp + 0xaf0]
call fcn.14001f0f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov ebx, eax
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140019f32
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
test eax, eax
jne 0x140019f57
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140019f66
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax + rax]
xor eax, eax
mov ebx, eax
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x7090]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7090]
test bl, 1
jne 0x140019feb
lea rcx, [rsp + 0x920]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001a00d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xa40]
call fcn.14001f010
addsd xmm0, xmm15
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140019f80
sub rdi, 1
jne 0x140019f70
lea rcx, [rsp + 0xaf0]
call fcn.14001d000
nop
lea rcx, [rsp + 0xd60]
call fcn.14001de90
inc esi
jmp 0x140019cf0
xor esi, esi
jmp 0x140019cc0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x988]
call fcn.14001ced0
movups xmm0, xmmword [str.0rWG_bBYDEZ_V_n]
movups xmmword [rsp + 0x4e8], xmm0
mov eax, dword [str.K97E]
mov dword [rsp + 0x4f8], eax
mov ebx, 6
lea edi, [rbx + 0x19]
cmp byte [0x14002db23], 0
je 0x14001a324
mov r9d, esi
cmp r13d, 2
jl 0x14001a2bf
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
movd xmm11, ebx
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, edi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x4e8]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x14001a100
cmp r9d, 0x14
jge 0x14001a324
movsxd rax, r9d
lea r10, [rsp + 0x4e8]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x14
jl 0x14001a2d0
movsd xmm0, qword [str.wUWUT]
movzx eax, byte [0x14002e6b8]
movsd qword [rsp + 0x68], xmm0
mov byte [rsp + 0x68], 0x68
xor byte [rsp + 0x69], 0x21
xor byte [rsp + 0x6a], 0x23
xor byte [rsp + 0x6b], 0x25
xor byte [rsp + 0x6c], 0x27
xor byte [rsp + 0x6d], 0x29
xor byte [rsp + 0x6e], 0x2b
xor byte [rsp + 0x6f], 0x2d
xor al, 0x2f
mov byte [rsp + 0x70], al
lea r8, [rsp + 0xce0]
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x860]
call fcn.14001f7d0
nop
lea r8, [rsp + 0x4e8]
mov rdx, rax
lea rcx, [rsp + 0x880]
call fcn.14001ed10
mov rdx, rax
lea rcx, [rsp + 0x840]
call fcn.14000bc20
nop
mov rdx, rax
lea rcx, [rsp + 0x728]
call fcn.14000c160
mov rdx, rax
call fcn.14001cdc0
lea rcx, [rsp + 0x728]
call fcn.14001cd60
nop
lea rcx, [rsp + 0x840]
call fcn.14001de90
nop
lea rcx, [rsp + 0x860]
call fcn.14001de90
mov eax, dword [0x14002e318]
mov dword [rsp + 0x7c], eax
movzx eax, byte [0x14002e31c]
mov byte [rsp + 0x7c], 0x22
xor byte [rsp + 0x7d], 0x21
xor byte [rsp + 0x7e], 0x23
xor byte [rsp + 0x7f], 0x25
xor al, 0x27
mov byte [rsp + 0x80], al
movups xmm0, xmmword [0x14002e070]
movups xmmword [rsp + 0x5c0], xmm0
movups xmm1, xmmword [0x14002e080]
movups xmmword [rsp + 0x5d0], xmm1
movups xmm0, xmmword [0x14002e090]
movups xmmword [rsp + 0x5e0], xmm0
movups xmm1, xmmword [0x14002e0a0]
movups xmmword [rsp + 0x5f0], xmm1
movsd xmm0, qword [0x14002e0b0]
movsd qword [rsp + 0x600], xmm0
movzx eax, word [0x14002e0b8]
mov word [rsp + 0x608], ax
movzx eax, byte [0x14002e0ba]
mov byte [rsp + 0x60a], al
mov r9d, esi
cmp r13d, 2
jl 0x14001a6af
movdqa xmm9, xmmword [0x14002e710]
movdqa xmm6, xmmword [0x14002e790]
mov eax, 5
movd xmm10, eax
movdqa xmm7, xmmword [0x14002e7b0]
movd xmm11, ebx
movdqa xmm12, xmmword [0x14002e730]
movdqa xmm13, xmmword [0x14002e740]
movd xmm8, edi
movdqa xmm0, xmmword [0x14002e770]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x5c0]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x48
jl 0x14001a4f0
cmp r9d, 0x4b
jge 0x14001a714
movsxd rax, r9d
lea r10, [rsp + 0x5c0]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x4b
jl 0x14001a6c0
lea r8, [rsp + 0xcc0]
lea rdx, [rsp + 0x5c0]
lea rcx, [rsp + 0x800]
call fcn.14001f7d0
nop
lea r8, [rsp + 0x7c]
mov rdx, rax
lea rcx, [rsp + 0x760]
call fcn.14001ed10
nop
mov rcx, rax
call fcn.14001dd50
mov qword [rsp + 0x480], rax
lea rcx, [rsp + 0xc28]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xc28]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x14003a8f0]
lea rbx, [0x14001f480]
test rax, rax
je 0x14001a7b9
cmp rax, rbx
je 0x14001a7a6
inc ecx
mov rax, qword [r14 + rcx*8 + 0x3a8f0]
test rax, rax
jne 0x14001a790
jmp 0x14001a7b9
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x392d0]
test r8, r8
jne 0x14001a89f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001a7e0
mov r8, rsi
jmp 0x14001a87e
mov rax, rbx
mov rcx, r8
mov rdx, r12
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14001a7f0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037340]
mov qword [r14 + rax*8 + 0x3a8f0], rbx
mov qword [r14 + rax*8 + 0x392d0], r8
inc rax
mov qword [0x140037340], rax
lea rdx, [rsp + 0x480]
lea rcx, [0x14000c370]
call r8
nop
mov rcx, qword [rsp + 0xc28]
xor rcx, qword [rsp + 0xc30]
mov qword [rsp + 0xc28], rcx
mov rax, qword [rsp + 0xc38]
mov qword [rax], rcx
lea rcx, [rsp + 0x760]
call fcn.14001de90
nop
lea rcx, [rsp + 0x800]
call fcn.14001de90
movsd xmm0, qword [0x14002ddc8]
movsd qword [rsp + 0x120], xmm0
mov eax, dword [0x14002ddd0]
mov dword [rsp + 0x128], eax
movzx eax, word [0x14002ddd4]
mov word [rsp + 0x12c], ax
cmp byte [0x14002ddd5], 0
je 0x14001ab94
mov r9d, esi
cmp r13d, 2
jl 0x14001ab24
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
mov eax, 6
movd xmm10, eax
movd xmm12, edi
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x14002ddc8]
pxor xmm3, xmm0
movd dword [rsp + 0x120], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x124]
pxor xmm3, xmm1
movd dword [rsp + 0x124], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x120]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x14001ab40
lea rax, [rsp + 0x120]
mov qword [rsp + 0x488], rax
lea rcx, [rsp + 0xc40]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xc40]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x140038960]
test rax, rax
je 0x14001abfe
cmp rax, r15
je 0x14001abeb
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x14001abd5
jmp 0x14001abfe
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x14001acdf
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001ac25
mov r8, rsi
jmp 0x14001acbe
mov rax, r15
mov rcx, r8
mov rdx, r12
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14001ac30
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x488]
lea rcx, [0x140001710]
call r8
nop
mov rcx, qword [rsp + 0xc40]
xor rcx, qword [rsp + 0xc48]
mov qword [rsp + 0xc40], rcx
mov rax, qword [rsp + 0xc50]
mov qword [rax], rcx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x8420]
call fcn.14001cf90
mov dword [rsp + 0x918], 0xffffff9c
mov dword [rsp + 0x91c], 0x64
movaps xmm0, xmmword [0x14002e780]
movups xmmword [rsp + 0xa70], xmm0
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x490]
call fcn.140001770
mov rax, qword [rsp + 0x490]
add rax, 0x5f5e100
mov qword [rsp + 0x4c8], rax
lea rcx, [rsp + 0x9a0]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x9a0], xmm0
mov qword [rsp + 0x9b0], rsi
lea rcx, [rsp + 0x498]
call fcn.14001eed0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x290], rcx
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x290]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x498]
call fcn.14001ce80
lea rcx, [rsp + 0x4a0]
call fcn.14001ef20
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x298], rcx
lea rdx, [rsp + 0x298]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x298]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x4a0]
call fcn.14001ce80
lea rcx, [rsp + 0x4a8]
call fcn.14001ef50
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x2a0], rcx
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x2a0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x4a8]
call fcn.14001ce80
lea rcx, [rsp + 0x4b0]
call fcn.14001ef80
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x2a8], rcx
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x2a8]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x4b0]
call fcn.14001ce80
lea rcx, [rsp + 0x4b8]
call fcn.14001efb0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x2b0], rcx
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x2b0]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x4b8]
call fcn.14001ce80
lea rcx, [rsp + 0x4c0]
call fcn.14001efe0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x2b8], rcx
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x9a0]
call fcn.14001cea0
nop
lea rcx, [rsp + 0x2b8]
call fcn.14001ce80
nop
lea rcx, [rsp + 0x4c0]
call fcn.14001ce80
nop dword [rax]
lea rcx, [rsp + 0x658]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x4c8]
call fcn.140002690
test al, al
jns 0x14001b2fb
nop word [rax + rax]
cmp esi, 0x186a0
jge 0x14001b2f4
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov rbx, qword [rsp + 0x9a8]
sub rbx, qword [rsp + 0x9a0]
sar rbx, 3
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x9a0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
movaps xmm5, xmm0
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
movsd xmm1, qword [0x14002e6c8]
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0xd00]
call fcn.14001df00
nop
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xd00]
call fcn.1400024b0
lea rcx, [rsp + 0xaa8]
call fcn.1400026e0
lea rcx, [rsp + 0xaa8]
call fcn.14001d060
nop
lea rax, [rsp + 0x918]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x8420]
mov qword [rsp + 0xa8], rax
movaps xmm0, xmmword [rsp + 0xa0]
movdqa xmmword [rsp + 0x6c0], xmm0
lea r8, [rsp + 0x6c0]
mov rdx, qword [rsp + 0xab0]
mov rcx, qword [rsp + 0xaa8]
call fcn.14001f090
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xaa8]
call fcn.1400025c0
mov rdx, qword [rsp + 0xab0]
mov rcx, qword [rsp + 0xaa8]
call fcn.14001f0f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov ebx, eax
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14001b1e2
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
test eax, eax
jne 0x14001b207
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001b216
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax + rax]
xor eax, eax
mov ebx, eax
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x8420]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x8420]
test bl, 1
jne 0x14001b29b
lea rcx, [rsp + 0x918]
call fcn.14001edd0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001b2bd
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xa70]
call fcn.14001f010
addsd xmm0, xmm15
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14001b230
sub rdi, 1
jne 0x14001b220
lea rcx, [rsp + 0xaa8]
call fcn.14001d000
nop
lea rcx, [rsp + 0xd00]
call fcn.14001de90
inc esi
jmp 0x14001afa0
xor esi, esi
jmp 0x14001af70
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x9a0]
call fcn.14001ced0
lea rcx, [rsp + 0xc78]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xc78]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x1400379a0]
lea rbx, [0x14001f840]
test rax, rax
je 0x14001b36d
cmp rax, rbx
je 0x14001b35a
inc ecx
mov rax, qword [r14 + rcx*8 + 0x379a0]
test rax, rax
jne 0x14001b344
jmp 0x14001b36d
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x39c50]
test r8, r8
jne 0x14001b44f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001b394
mov r8, rsi
jmp 0x14001b42e
mov rax, rbx
mov rcx, r8
mov rdx, r12
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14001b3a0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x14003ac10]
mov qword [r14 + rax*8 + 0x379a0], rbx
mov qword [r14 + rax*8 + 0x39c50], r8
inc rax
mov qword [0x14003ac10], rax
lea rcx, [0x140003640]
call r8
nop
mov rcx, qword [rsp + 0xc78]
xor rcx, qword [rsp + 0xc80]
mov rax, qword [rsp + 0xc88]
mov qword [rax], rcx
lea rdx, [rsp + 0xcc0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001f9e0
lea rdx, [0x14001fa00]
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___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movsd xmm0, qword [0x14002e600]
movsd qword [rsp + 0x110], xmm0
mov eax, dword [0x14002e608]
mov dword [rsp + 0x118], eax
movzx eax, word [0x14002e60c]
mov word [rsp + 0x11c], ax
movzx eax, byte [0x14002e60e]
mov byte [rsp + 0x11e], al
mov r9d, esi
cmp r13d, 2
jl 0x14001b6d3
movdqa xmm7, xmmword [0x14002e790]
mov eax, 5
movd xmm8, eax
movdqa xmm9, xmmword [0x14002e7b0]
mov eax, 6
movd xmm10, eax
mov eax, 0x1f
movd xmm12, eax
movdqa xmm5, xmmword [0x14002e710]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm2, xmm0, 0xdd
psrad xmm2, xmm8
pmuldq xmm4, xmm9
pmuldq xmm1, xmm9
shufps xmm4, xmm1, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e730]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e740]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002e770]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x14002e600]
pxor xmm3, xmm0
movd dword [rsp + 0x110], xmm3
movdqa xmm5, xmmword [0x14002e720]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002e740]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002e760]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002e730]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002e760]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x114]
pxor xmm3, xmm1
movd dword [rsp + 0x114], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x110]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x1f
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x14001b6f0
lea rax, [rsp + 0x110]
mov qword [rsp + 0x4d0], rax
lea rcx, [rsp + 0xc90]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xc90]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x140038960]
test rax, rax
je 0x14001b7ae
cmp rax, r15
je 0x14001b79b
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38960]
test rax, rax
jne 0x14001b785
jmp 0x14001b7ae
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x37350]
test r8, r8
jne 0x14001b88f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001b7d5
mov r8, rsi
jmp 0x14001b86e
mov rax, r15
mov rcx, r8
mov rdx, r12
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x14001b7e0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037cc0]
mov qword [r14 + rax*8 + 0x38960], r15
mov qword [r14 + rax*8 + 0x37350], r8
inc rax
mov qword [0x140037cc0], rax
lea rdx, [rsp + 0x4d0]
lea rcx, [0x140001710]
call r8
nop
mov rcx, qword [rsp + 0xc90]
xor rcx, qword [rsp + 0xc98]
mov rax, qword [rsp + 0xca0]
mov qword [rax], rcx
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rsp + 0xb0], 0x5dc
lea rcx, [rsp + 0xca8]
call fcn.1400026e0
lea rdx, [rsp + 0x9878]
lea rcx, [rsp + 0xca8]
call fcn.1400026f0
nop
mov ecx, esi
mov rax, qword [0x140038310]
lea rdi, [0x14001f7a0]
test rax, rax
je 0x14001b930
cmp rax, rdi
je 0x14001b91d
inc ecx
mov rax, qword [r14 + rcx*8 + 0x38310]
test rax, rax
jne 0x14001b907
jmp 0x14001b930
mov eax, ecx
mov r8, qword [r14 + rax*8 + 0x39930]
test r8, r8
jne 0x14001ba0f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001b957
mov r8, rsi
jmp 0x14001b9ee
mov rax, rdi
mov rcx, r8
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub r12, 1
jne 0x14001b960
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140038950]
mov qword [r14 + rax*8 + 0x38310], rdi
mov qword [r14 + rax*8 + 0x39930], r8
inc rax
mov qword [0x140038950], rax
lea rdx, [rsp + 0xb0]
mov rcx, rbx
call r8
nop
mov rcx, qword [rsp + 0xca8]
xor rcx, qword [rsp + 0xcb0]
mov rax, qword [rsp + 0xcb8]
mov qword [rax], rcx
lea rcx, [rsp + 0xcc0]
call fcn.14001de90
nop
lea rcx, [rsp + 0xce0]
call fcn.14001de90
mov rcx, qword [rsp + 0xd0]
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
nop
mov rcx, qword [rsp + 0xa98]
xor rcx, qword [rsp + 0xa90]
mov rax, qword [rsp + 0xaa0]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x97b0]
xor rcx, rsp
call fcn.140029370
lea r11, [rsp + 0x9860]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.140001980
nop
int3