Function at 0x14023a630
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 + 0x20], r12
push r13
push r14
push r15
sub rsp, 0xa90
movaps xmmword [r11 - 0x28], xmm6
movaps xmmword [r11 - 0x38], xmm7
movaps xmmword [r11 - 0x48], xmm8
movaps xmmword [r11 - 0x58], xmm9
movaps xmmword [r11 - 0x68], xmm10
movaps xmmword [r11 - 0x78], xmm11
movaps xmmword [r11 - 0x88], xmm12
movaps xmmword [r11 - 0x98], xmm13
mov rax, qword [0x1402bd028]
xor rax, rsp
mov qword [rsp + 0xa00], rax
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rsp + 0x590], xmm0
lea rcx, [rsp + 0xaa8]
movabs rdx, 0xff00ff00ff00ff00
mov qword [r11 - 0x510], rdx
mov qword [r11 - 0x508], rcx
mov rax, qword [rcx]
xor rax, rdx
mov qword [r11 - 0x518], rax
mov qword [rcx], rsi
mov byte [0x1402bfe50], sil
mov byte [0x1402bfe52], sil
mov byte [rsp + 0x6b], sil
lea rax, [rsp + 0x6b]
mov r14, 0xffffffffffffffff
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14023a6f0
lea rdx, [rsp + 0x6b]
lea rcx, [0x1402c0020]
call fcn.1402594a0
mov byte [rsp + 0x68], 0
lea rax, [rsp + 0x68]
mov r8, r14
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14023a720
lea rdx, [rsp + 0x68]
lea rcx, [0x1402c0340]
call fcn.1402594a0
lea rcx, [rsp + 0x6f0]
call fcn.140212060
nop
mov r8, qword [rsp + 0x700]
test r8, r8
je 0x14023a7ca
mov byte [rsp + 0x69], 0
lea rcx, [rsp + 0x69]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023a763
lea rcx, [rsp + 0x6f0]
cmp qword [rsp + 0x708], 0x10
cmovae rcx, qword [rsp + 0x6f0]
cmp r8, rax
jne 0x14023a799
lea rdx, [rsp + 0x69]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023a7ca
lea rdx, [rsp + 0x6f0]
lea rcx, [rsp + 0x1f0]
call fcn.140214220
mov rdx, rax
lea rcx, [0x1402c0340]
call fcn.140257710
lea rcx, [rsp + 0x1f0]
call fcn.140259200
mov r8, qword [0x1402bdb10]
test r8, r8
je 0x14023a850
mov byte [rsp + 0x6a], 0
lea rcx, [rsp + 0x6a]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023a7e3
lea rcx, [0x1402bdb00]
cmp qword [0x1402bdb18], 0x10
cmovae rcx, qword [0x1402bdb00]
cmp r8, rax
jne 0x14023a816
lea rdx, [rsp + 0x6a]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023a850
lea rdx, [0x1402bdb00]
lea rcx, [rsp + 0x190]
call fcn.140214220
mov rdx, rax
lea rcx, [0x1402c0020]
call fcn.140257710
lea rcx, [rsp + 0x190]
call fcn.140259200
nop word [rax + rax]
mov byte [rsp + 0x50], 0
lea rcx, [rsp + 0x50]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023a860
mov r13, qword [0x1402c0038]
lea rcx, [0x1402c0020]
cmp r13, 0x10
cmovae rcx, qword [0x1402c0020]
mov rdi, qword [0x1402c0030]
cmp rdi, rax
jne 0x14023a8f9
mov r8, rdi
lea rdx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023a8f9
mov byte [rsp + 0x44], al
lea rcx, [rsp + 0x44]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023a8b0
lea rcx, [0x1402c0340]
mov r15, qword [0x1402c0340]
mov r12, qword [0x1402c0358]
cmp r12, 0x10
cmovae rcx, r15
mov rbx, qword [0x1402c0350]
cmp rbx, rax
jne 0x14023a90e
mov r8, rbx
lea rdx, [rsp + 0x44]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023efc1
jmp 0x14023a90e
mov r12, qword [0x1402c0358]
mov rbx, qword [0x1402c0350]
mov r15, qword [0x1402c0340]
mov byte [rsp + 0x40], 0
lea rcx, [rsp + 0x40]
mov rax, r14
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023a920
lea rcx, [0x1402c0020]
cmp r13, 0x10
cmovae rcx, qword [0x1402c0020]
cmp rdi, rax
jne 0x14023a970
mov r8, rdi
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023a970
lea rdx, [0x1402c0340]
cmp r12, 0x10
cmovae rdx, r15
mov r8, rbx
lea rcx, [0x1402c0020]
call fcn.1402594a0
lea rdx, [0x1402c0020]
lea rcx, [rsp + 0x530]
call fcn.1402578e0
nop
lea rcx, [rsp + 0x530]
call fcn.140217620
movzx ebx, al
movups xmm0, xmmword [0x1402aa130]
movups xmmword [rsp + 0xf0], xmm0
mov ecx, dword [0x1402aa140]
mov dword [rsp + 0x100], ecx
movzx ecx, word [0x1402aa144]
mov word [rsp + 0x104], cx
movzx eax, byte [0x1402aa146]
mov byte [rsp + 0x106], al
mov r9d, esi
mov r13d, dword [0x1402bd008]
mov edi, 6
lea r15d, [rdi + 0x19]
cmp r13d, 2
jl 0x14023ac07
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, edi
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad1a0]
movd xmm9, r15d
movdqa xmm12, xmmword [0x1402ad0e0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x570], xmm0
lea rcx, [rsp + 0xf4]
mov edx, dword [rsp + 0x570]
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, 0x10
jl 0x14023aa40
cmp r9d, 0x17
jge 0x14023ac77
movsxd rax, r9d
lea r10, [rsp + 0xf0]
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, 0x17
jl 0x14023ac20
lea rdx, [rsp + 0xf0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
movzx edx, bl
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___bool____ptr64]
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]
test bl, bl
jne 0x14023acf4
lea rcx, [rsp + 0x530]
call fcn.140259200
nop
lea rcx, [rsp + 0x6f0]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x590]
movabs rax, 0xff00ff00ff00ff00
xor rcx, rax
mov qword [rsp + 0x590], rcx
lea rax, [rsp + 0xaa8]
mov qword [rax], rcx
jmp 0x14023efea
movsd xmm0, qword [0x1402aba40]
movsd qword [rsp + 0xe0], xmm0
mov eax, dword [0x1402aba48]
mov dword [rsp + 0xe8], eax
movzx eax, word [0x1402aba4c]
mov word [rsp + 0xec], ax
cmp byte [0x1402aba4d], 0
je 0x14023af87
mov r9d, esi
cmp r13d, 2
jl 0x14023af21
movdqa xmm7, xmmword [0x1402ad190]
movd xmm9, edi
movdqa xmm8, xmmword [0x1402ad180]
movd xmm11, r15d
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 [0x1402aba40]
pxor xmm3, xmm0
movd dword [rsp + 0xe0], 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 + 0xe4]
pxor xmm3, xmm1
movd dword [rsp + 0xe4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xe0]
add r10, rax
nop
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 0x14023af30
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, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rdx, qword [rsp + 0x530]
mov r8, qword [rsp + 0x540]
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]
mov byte [rsp + 0x48], 0
lea rax, [rsp + 0x48]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x14023afe2
lea rdx, [rsp + 0x48]
lea rcx, [0x1402c0020]
call fcn.1402594a0
mov byte [rsp + 0x4c], 0
lea rax, [rsp + 0x4c]
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14023b010
lea rdx, [rsp + 0x4c]
lea rcx, [0x1402c0340]
call fcn.1402594a0
lea rdx, [0x1402bdb00]
lea rcx, [rsp + 0x8c8]
call fcn.1402578e0
nop
xor r8d, r8d
lea rdx, [0x1402a7bc3]
lea rcx, [0x1402bdb00]
call fcn.1402594a0
mov qword [0x1402bdb30], rsi
cmp qword [0x1402bdb38], 0x10
jb 0x14023b073
mov rax, qword [0x1402bdb20]
mov byte [rax], 0
jmp 0x14023b07a
mov byte [0x1402bdb20], 0
mov eax, dword [str._6_I]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0x58], 0x6e
xor byte [rsp + 0x59], 0x43
xor byte [rsp + 0x5a], 0x45
xor byte [rsp + 0x5b], 0x47
xor al, 0x49
mov byte [rsp + 0x5c], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x5a8], xmm0
mov qword [rsp + 0x5b8], rsi
mov qword [rsp + 0x5c0], rsi
lea rax, [rsp + 0x58]
mov r8, r14
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14023b0d0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x5a8]
call fcn.14021d330
nop
mov eax, dword [str._6_I]
mov dword [rsp + 0xd8], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0xd8], 0x6e
xor byte [rsp + 0xd9], 0x43
xor byte [rsp + 0xda], 0x45
xor byte [rsp + 0xdb], 0x47
xor al, 0x49
mov byte [rsp + 0xdc], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x510], xmm0
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x528], rsi
lea rax, [rsp + 0xd8]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x14023b150
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x510]
call fcn.14021d330
nop
mov eax, dword [str._6_I]
mov dword [rsp + 0x70], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0x70], 0x6e
xor byte [rsp + 0x71], 0x43
xor byte [rsp + 0x72], 0x45
xor byte [rsp + 0x73], 0x47
xor al, 0x49
mov byte [rsp + 0x74], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x550], xmm0
mov qword [rsp + 0x560], rsi
mov qword [rsp + 0x568], rsi
lea rax, [rsp + 0x70]
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14023b1c0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x550]
call fcn.14021d330
nop
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 0x14023b1fb
imul rdi, rax, 0x64
jmp 0x14023b216
cqo
idiv rbx
imul rdi, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rdi, rax
movabs r12, 0x7fffffffffffffff
movsd xmm13, qword [0x1402ad068]
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 0x14023b24e
imul rbx, rax, 0x64
jmp 0x14023b26a
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
sub rbx, rdi
mov r8, qword [0x1402bdb10]
test r8, r8
je 0x14023b81d
mov byte [rsp + 0x6c], 0
lea rcx, [rsp + 0x6c]
mov rax, r14
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b290
lea rcx, [0x1402bdb00]
cmp qword [0x1402bdb18], 0x10
cmovae rcx, qword [0x1402bdb00]
cmp r8, rax
jne 0x14023b2c7
lea rdx, [rsp + 0x6c]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023b81d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x5c8], xmm0
movups xmmword [rsp + 0x5d8], xmm0
mov qword [rsp + 0x5e8], rax
mov eax, dword [0x1402a9688]
mov dword [rsp + 0xa4], eax
movzx ecx, word [0x1402a968c]
mov word [rsp + 0xa8], cx
movzx eax, byte [0x1402a968e]
mov byte [rsp + 0xa4], 0x5b
xor byte [rsp + 0xa5], 0x43
xor byte [rsp + 0xa6], 0x45
xor byte [rsp + 0xa7], 0x47
xor cl, 0x49
mov byte [rsp + 0xa8], cl
xor byte [rsp + 0xa9], 0x4b
xor al, 0x4d
mov byte [rsp + 0xaa], al
mov qword [rsp + 0x5c8], rsi
lea rcx, [rsp + 0x5d0]
call fcn.140257b80
nop
lea rcx, [rsp + 0xa4]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b363
lea r8, [rsp + 0xa4]
add r8, rax
lea rdx, [rsp + 0xa4]
lea rcx, [rsp + 0x5c8]
call fcn.14025c1b0
nop
mov byte [rsp + 0xbc], 0
lea r9, [rsp + 0xbc]
lea r8, [rsp + 0x5c8]
lea rdx, [0x1402bdb00]
lea rcx, [rsp + 0x610]
call fcn.14025bba0
nop
lea rax, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rax, qword [rsp + 0x530]
cmp byte [rax], 0x33
mov rax, qword [rsp + 0x620]
jne 0x14023bf1a
cmp rax, 8
jb 0x14023b3fd
cmp byte [0x1402bfe50], 0
jne 0x14023b3fd
cmp byte [0x1402bfe52], 0
je 0x14023b407
cmp rax, 9
jb 0x14023b78c
lea rdx, [rsp + 0x610]
lea rcx, [rsp + 0x670]
call fcn.140213c00
nop
mov r15, qword [rsp + 0x680]
movzx eax, word [0x1402a9d50]
mov word [rsp + 0x80], ax
movzx eax, byte [0x1402a9d52]
cmp r15, 5
jb 0x14023b450
mov byte [0x1402bfe52], 1
nop dword [rax + rax]
mov byte [rsp + 0x80], 0x6e
xor byte [rsp + 0x81], 0x43
xor al, 0x45
mov byte [rsp + 0x82], al
lea rcx, [rsp + 0x80]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b474
lea rcx, [rsp + 0x670]
cmp qword [rsp + 0x688], 0x10
cmovae rcx, qword [rsp + 0x670]
cmp r15, rax
jne 0x14023bc70
mov r8, r15
lea rdx, [rsp + 0x80]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023bc70
movsd xmm0, qword [0x1402aba30]
movsd qword [rsp + 0x108], xmm0
mov eax, dword [0x1402aba38]
mov dword [rsp + 0x110], eax
movzx eax, byte [0x1402aba3c]
mov byte [rsp + 0x114], al
mov r11, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov r9d, esi
cmp r13d, 2
jl 0x14023b6e8
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 [0x1402aba30]
pxor xmm3, xmm0
movd dword [rsp + 0x108], 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 + 0x10c]
pxor xmm3, xmm1
movd dword [rsp + 0x10c], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x108]
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, 0xd
jl 0x14023b700
lea rdx, [rsp + 0x108]
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]
mov byte [0x1402bfe50], 1
lea rcx, [rsp + 0x670]
call fcn.140259200
nop
lea rcx, [rsp + 0x610]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x5c8]
test rcx, rcx
je 0x14023b7ec
mov eax, r14d
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14023b7ec
mov r15, qword [rsp + 0x5c8]
test r15, r15
je 0x14023b7ec
nop dword [rax]
nop word [rax + rax]
mov rcx, r15
lea rax, [r15 + 0x10]
mov r15, qword [rax]
mov qword [rax], rsi
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test r15, r15
jne 0x14023b7d0
mov qword [rsp + 0x5c8], rsi
mov rcx, qword [rsp + 0x5e8]
test rcx, rcx
je 0x14023b81d
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14023b81d
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
movabs rax, 0x6fc23ac00
cmp rbx, rax
je 0x14023b832
jl 0x14023f044
mov r12d, 3
mov eax, dword [str._6_I]
mov dword [rsp + 0x78], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0x78], 0x6e
xor byte [rsp + 0x79], 0x43
xor byte [rsp + 0x7a], 0x45
xor byte [rsp + 0x7b], 0x47
xor al, 0x49
mov byte [rsp + 0x7c], al
lea rcx, [rsp + 0x78]
mov rax, r14
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b870
lea rcx, [rsp + 0x510]
cmp qword [rsp + 0x528], 0x10
cmovae rcx, qword [rsp + 0x510]
mov rdi, qword [rsp + 0x520]
cmp rdi, rax
jne 0x14023b8b5
mov r8, rdi
lea rdx, [rsp + 0x78]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023b94c
mov eax, dword [str._6_I]
mov dword [rsp + 0xac], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0xac], 0x6e
xor byte [rsp + 0xad], 0x43
xor byte [rsp + 0xae], 0x45
xor byte [rsp + 0xaf], 0x47
xor al, 0x49
mov byte [rsp + 0xb0], al
lea rcx, [rsp + 0xac]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b900
lea rcx, [rsp + 0x550]
cmp qword [rsp + 0x568], 0x10
cmovae rcx, qword [rsp + 0x550]
mov rbx, qword [rsp + 0x560]
cmp rbx, rax
jne 0x14023c68d
mov r8, rbx
lea rdx, [rsp + 0xac]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023c68d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x750], xmm0
movups xmmword [rsp + 0x760], xmm0
mov qword [rsp + 0x770], rax
mov eax, dword [0x1402a9688]
mov dword [rsp + 0x9c], eax
movzx ecx, word [0x1402a968c]
mov word [rsp + 0xa0], cx
movzx eax, byte [0x1402a968e]
mov byte [rsp + 0x9c], 0x5b
xor byte [rsp + 0x9d], 0x43
xor byte [rsp + 0x9e], 0x45
xor byte [rsp + 0x9f], 0x47
xor cl, 0x49
mov byte [rsp + 0xa0], cl
xor byte [rsp + 0xa1], 0x4b
xor al, 0x4d
mov byte [rsp + 0xa2], al
mov qword [rsp + 0x750], rsi
lea rcx, [rsp + 0x758]
call fcn.140257b80
nop
lea rcx, [rsp + 0x9c]
mov rax, r14
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023b9f0
lea r8, [rsp + 0x9c]
add r8, rax
lea rdx, [rsp + 0x9c]
lea rcx, [rsp + 0x750]
call fcn.14025c1b0
nop
mov byte [rsp + 0xbd], 0
lea r9, [rsp + 0xbd]
lea r8, [rsp + 0x750]
lea rdx, [0x1402bdb00]
lea rcx, [rsp + 0x8a8]
call fcn.14025bba0
nop
lea rdx, [rsp + 0x8a8]
lea rcx, [rsp + 0x7a0]
call fcn.140213640
nop
movzx eax, word [0x1402a9d50]
mov word [rsp + 0x90], ax
movzx eax, byte [0x1402a9d52]
mov byte [rsp + 0x90], 0x6e
xor byte [rsp + 0x91], 0x43
xor al, 0x45
mov byte [rsp + 0x92], al
lea rcx, [rsp + 0x90]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023ba97
lea rcx, [rsp + 0x7a0]
cmp qword [rsp + 0x7b8], 0x10
cmovae rcx, qword [rsp + 0x7a0]
mov r8, qword [rsp + 0x7b0]
cmp r8, rax
jne 0x14023badc
lea rdx, [rsp + 0x90]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023c5ea
lea rdx, [rsp + 0x8a8]
lea rcx, [rsp + 0x3a8]
call fcn.1402578e0
lea r8, [rsp + 0x7a0]
mov rdx, rax
lea rcx, [rsp + 0x800]
call fcn.140213a80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x6b0], xmm0
mov qword [rsp + 0x6c0], rsi
mov qword [rsp + 0x6c8], rsi
mov r8, r12
cmp qword [rsp + 0x810], 3
cmovb r8, qword [rsp + 0x810]
lea rdx, [rsp + 0x800]
cmp qword [rsp + 0x818], 0x10
cmovae rdx, qword [rsp + 0x800]
lea rcx, [rsp + 0x6b0]
call fcn.14021d330
nop
lea rax, [rsp + 0x530]
mov rcx, qword [rsp + 0x530]
mov r8, qword [rsp + 0x548]
cmp r8, 0x10
cmovae rax, rcx
cmp byte [rax], 0x33
jne 0x14023bbd2
mov r9d, 4
xor r8d, r8d
lea rdx, [rsp + 0x3c8]
lea rcx, [rsp + 0x800]
call fcn.140257440
mov rdx, rax
lea rcx, [rsp + 0x6b0]
call fcn.140257710
lea rcx, [rsp + 0x3c8]
call fcn.140259200
mov r8, qword [rsp + 0x548]
mov rcx, qword [rsp + 0x530]
lea rdx, [rsp + 0x530]
cmp r8, 0x10
cmovae rdx, rcx
mov r8, qword [rsp + 0x540]
lea rcx, [rsp + 0x5a8]
call fcn.1402594a0
mov r8b, 1
lea rdx, [rsp + 0x7a0]
lea rcx, [rsp + 0x4a8]
call fcn.1402137c0
mov rbx, rax
lea rax, [rsp + 0x510]
cmp rax, rbx
je 0x14023c591
mov rdx, qword [rsp + 0x528]
cmp rdx, 0x10
jb 0x14023c54f
inc rdx
mov rcx, qword [rsp + 0x510]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023c54a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023c54a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
cmp r15, 5
jb 0x14023bcaf
cmp qword [rsp + 0x620], 9
jae 0x14023bcaf
lea rcx, [rsp + 0x670]
call fcn.140259200
nop
lea rcx, [rsp + 0x610]
call fcn.140259200
nop
lea rcx, [rsp + 0x5c8]
call fcn.140254230
jmp 0x14023b230
lea rdx, [rsp + 0x610]
lea rcx, [rsp + 0x328]
call fcn.1402578e0
lea r8, [rsp + 0x670]
mov rdx, rax
lea rcx, [rsp + 0x868]
call fcn.140213a80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x6d0], xmm0
mov qword [rsp + 0x6e0], rsi
mov qword [rsp + 0x6e8], rsi
mov r8d, 4
cmp qword [rsp + 0x878], r8
cmovb r8, qword [rsp + 0x878]
lea rdx, [rsp + 0x868]
cmp qword [rsp + 0x880], 0x10
cmovae rdx, qword [rsp + 0x868]
lea rcx, [rsp + 0x6d0]
call fcn.14021d330
nop
lea rdx, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rdx, qword [rsp + 0x530]
mov r8, qword [rsp + 0x540]
lea rcx, [rsp + 0x5a8]
call fcn.1402594a0
xor r8d, r8d
lea rdx, [rsp + 0x670]
lea rcx, [rsp + 0x348]
call fcn.1402137c0
mov rbx, rax
lea rax, [rsp + 0x510]
cmp rax, rbx
je 0x14023be1a
mov rdx, qword [rsp + 0x528]
cmp rdx, 0x10
jb 0x14023bdd8
inc rdx
mov rcx, qword [rsp + 0x510]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023bdd3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023bdd3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027cdf0
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x528], 0xf
mov byte [rsp + 0x510], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x510], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x520], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x348]
call fcn.140259200
lea rdx, [rsp + 0x6d0]
cmp qword [rsp + 0x6e8], 0x10
cmovae rdx, qword [rsp + 0x6d0]
mov r8, qword [rsp + 0x6e0]
lea rcx, [rsp + 0x550]
call fcn.1402594a0
nop
lea rcx, [rsp + 0x6d0]
call fcn.140259200
nop
lea rcx, [rsp + 0x868]
call fcn.140259200
nop
lea rcx, [rsp + 0x670]
call fcn.140259200
nop
lea rcx, [rsp + 0x610]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x5c8]
test rcx, rcx
je 0x14023bedc
mov eax, r14d
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14023bedc
mov rbx, qword [rsp + 0x5c8]
test rbx, rbx
je 0x14023bedc
nop word [rax + rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], rsi
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14023bec0
mov qword [rsp + 0x5c8], rsi
mov rcx, qword [rsp + 0x5e8]
test rcx, rcx
je 0x14023b832
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14023b832
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
jmp 0x14023b832
cmp rax, 7
jb 0x14023bf32
cmp byte [0x1402bfe50], 0
jne 0x14023bf32
cmp byte [0x1402bfe52], 0
je 0x14023bf3c
cmp rax, 8
jb 0x14023b78c
lea rdx, [rsp + 0x610]
lea rcx, [rsp + 0x690]
call fcn.140213c00
nop
mov r15, qword [rsp + 0x6a0]
movzx eax, word [0x1402a9d50]
mov word [rsp + 0x84], ax
movzx eax, byte [0x1402a9d52]
cmp r15, 5
jb 0x14023bf80
mov byte [0x1402bfe52], 1
nop dword [rax]
mov byte [rsp + 0x84], 0x6e
xor byte [rsp + 0x85], 0x43
xor al, 0x45
mov byte [rsp + 0x86], al
lea rcx, [rsp + 0x84]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023bfa4
lea rcx, [rsp + 0x690]
cmp qword [rsp + 0x6a8], 0x10
cmovae rcx, qword [rsp + 0x690]
cmp r15, rax
jne 0x14023c2bb
mov r8, r15
lea rdx, [rsp + 0x84]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023c2bb
movsd xmm0, qword [0x1402aba30]
movsd qword [rsp + 0x118], xmm0
mov eax, dword [0x1402aba38]
mov dword [rsp + 0x120], eax
movzx eax, byte [0x1402aba3c]
mov byte [rsp + 0x124], al
mov r11, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov r9d, esi
cmp r13d, 2
jl 0x14023c218
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 [0x1402aba30]
pxor xmm3, xmm0
movd dword [rsp + 0x118], 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 + 0x11c]
pxor xmm3, xmm1
movd dword [rsp + 0x11c], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x118]
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, 0xd
jl 0x14023c230
lea rdx, [rsp + 0x118]
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]
mov byte [0x1402bfe50], 1
lea rcx, [rsp + 0x690]
jmp 0x14023b786
cmp r15, 5
jb 0x14023c2d9
cmp qword [rsp + 0x620], 9
jae 0x14023c2d9
lea rcx, [rsp + 0x690]
jmp 0x14023bc89
lea rdx, [rsp + 0x610]
lea rcx, [rsp + 0x368]
call fcn.1402578e0
lea r8, [rsp + 0x690]
mov rdx, rax
lea rcx, [rsp + 0x888]
call fcn.140213a80
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x730], xmm0
mov qword [rsp + 0x740], rsi
mov qword [rsp + 0x748], rsi
mov r12d, 3
mov r8d, r12d
cmp qword [rsp + 0x898], r12
cmovb r8, qword [rsp + 0x898]
lea rdx, [rsp + 0x888]
cmp qword [rsp + 0x8a0], 0x10
cmovae rdx, qword [rsp + 0x888]
lea rcx, [rsp + 0x730]
call fcn.14021d330
nop
lea rdx, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rdx, qword [rsp + 0x530]
mov r8, qword [rsp + 0x540]
lea rcx, [rsp + 0x5a8]
call fcn.1402594a0
xor r8d, r8d
lea rdx, [rsp + 0x690]
lea rcx, [rsp + 0x388]
call fcn.1402137c0
mov rbx, rax
lea rax, [rsp + 0x510]
cmp rax, rbx
je 0x14023c447
mov rdx, qword [rsp + 0x528]
cmp rdx, 0x10
jb 0x14023c405
inc rdx
mov rcx, qword [rsp + 0x510]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023c400
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023c400
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027cdf0
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x528], 0xf
mov byte [rsp + 0x510], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x510], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x520], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x388]
call fcn.140259200
lea rdx, [rsp + 0x730]
cmp qword [rsp + 0x748], 0x10
cmovae rdx, qword [rsp + 0x730]
mov r8, qword [rsp + 0x740]
lea rcx, [rsp + 0x550]
call fcn.1402594a0
nop
lea rcx, [rsp + 0x730]
call fcn.140259200
nop
lea rcx, [rsp + 0x888]
call fcn.140259200
nop
lea rcx, [rsp + 0x690]
call fcn.140259200
nop
lea rcx, [rsp + 0x610]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x5c8]
test rcx, rcx
je 0x14023c50c
mov eax, r14d
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14023c50c
mov rbx, qword [rsp + 0x5c8]
test rbx, rbx
je 0x14023c50c
nop dword [rax]
nop word [rax + rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], rsi
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14023c4f0
mov qword [rsp + 0x5c8], rsi
mov rcx, qword [rsp + 0x5e8]
test rcx, rcx
je 0x14023b838
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14023b838
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
jmp 0x14023b838
call fcn.14027cdf0
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x528], 0xf
mov byte [rsp + 0x510], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x510], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x520], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x4a8]
call fcn.140259200
lea rdx, [rsp + 0x6b0]
cmp qword [rsp + 0x6c8], 0x10
cmovae rdx, qword [rsp + 0x6b0]
mov r8, qword [rsp + 0x6c0]
lea rcx, [rsp + 0x550]
call fcn.1402594a0
nop
lea rcx, [rsp + 0x6b0]
call fcn.140259200
nop
lea rcx, [rsp + 0x800]
call fcn.140259200
nop
lea rcx, [rsp + 0x7a0]
call fcn.140259200
nop
lea rcx, [rsp + 0x8a8]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x750]
test rcx, rcx
je 0x14023c64c
mov eax, r14d
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14023c64c
mov rbx, qword [rsp + 0x750]
test rbx, rbx
je 0x14023c64c
nop dword [rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], rsi
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14023c630
mov qword [rsp + 0x750], rsi
mov rcx, qword [rsp + 0x770]
test rcx, rcx
je 0x14023c67d
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14023c67d
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov rbx, qword [rsp + 0x560]
mov rdi, qword [rsp + 0x520]
mov eax, dword [str._6_I]
mov dword [rsp + 0x88], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0x88], 0x6e
xor byte [rsp + 0x89], 0x43
xor byte [rsp + 0x8a], 0x45
xor byte [rsp + 0x8b], 0x47
xor al, 0x49
mov byte [rsp + 0x8c], al
lea rcx, [rsp + 0x88]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023c6d5
lea rcx, [rsp + 0x510]
cmp qword [rsp + 0x528], 0x10
cmovae rcx, qword [rsp + 0x510]
cmp rdi, rax
jne 0x14023c715
mov r8, rdi
lea rdx, [rsp + 0x88]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023c7a4
mov eax, dword [str._6_I]
mov dword [rsp + 0xb4], eax
movzx eax, byte [0x1402aa344]
mov byte [rsp + 0xb4], 0x6e
xor byte [rsp + 0xb5], 0x43
xor byte [rsp + 0xb6], 0x45
xor byte [rsp + 0xb7], 0x47
xor al, 0x49
mov byte [rsp + 0xb8], al
lea rcx, [rsp + 0xb4]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023c760
lea rcx, [rsp + 0x550]
cmp qword [rsp + 0x568], 0x10
cmovae rcx, qword [rsp + 0x550]
cmp rbx, rax
jne 0x14023cf84
mov r8, rbx
lea rdx, [rsp + 0xb4]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023cf84
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x778], xmm0
movups xmmword [rsp + 0x788], xmm0
mov qword [rsp + 0x798], rax
mov eax, dword [0x1402a9688]
mov dword [rsp + 0x94], eax
movzx ecx, word [0x1402a968c]
mov word [rsp + 0x98], cx
movzx eax, byte [0x1402a968e]
mov byte [rsp + 0x94], 0x5b
xor byte [rsp + 0x95], 0x43
xor byte [rsp + 0x96], 0x45
xor byte [rsp + 0x97], 0x47
xor cl, 0x49
mov byte [rsp + 0x98], cl
xor byte [rsp + 0x99], 0x4b
xor al, 0x4d
mov byte [rsp + 0x9a], al
mov qword [rsp + 0x778], rsi
lea rcx, [rsp + 0x780]
call fcn.140257b80
nop
lea rcx, [rsp + 0x94]
mov rax, r14
inc rax
cmp byte [rcx + rax], 0
jne 0x14023c840
lea r8, [rsp + 0x94]
add r8, rax
lea rdx, [rsp + 0x94]
lea rcx, [rsp + 0x778]
call fcn.14025c1b0
nop
mov byte [rsp + 0xc4], 0
lea r9, [rsp + 0xc4]
lea r8, [rsp + 0x778]
lea rdx, [rsp + 0x8c8]
lea rcx, [rsp + 0x710]
call fcn.14025bba0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x820], xmm0
lea rdi, [rsp + 0xaa8]
movabs rax, 0xff00ff00ff00ff00
mov qword [rsp + 0x828], rax
mov qword [rsp + 0x830], rdi
mov rbx, qword [rdi]
xor rbx, rax
mov qword [rsp + 0x820], rbx
mov qword [rdi], rsi
lea r9, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae r9, qword [rsp + 0x530]
lea rcx, [rsp + 0x710]
mov r13, qword [rsp + 0x710]
cmp qword [rsp + 0x728], 0x10
cmovae rcx, r13
mov rax, qword [rsp + 0x540]
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov r15, qword [rsp + 0x720]
mov rdx, r15
call fcn.14025c7e0
lea rdx, [rsp + 0x710]
lea rcx, [rsp + 0x7c0]
cmp rax, 0xffffffffffffffff
je 0x14023c978
xorps xmm0, xmm0
movups xmmword [rsp + 0x7c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x7d0], xmm1
cmp r15, rax
cmovb rax, r15
cmp qword [rsp + 0x728], 0x10
cmovae rdx, r13
mov r8, rax
call fcn.14021d330
jmp 0x14023c97e
call fcn.1402578e0
nop
movabs rax, 0xff00ff00ff00ff00
xor rbx, rax
mov qword [rdi], rbx
lea rdx, [rsp + 0x7c0]
lea rcx, [rsp + 0x5f0]
call fcn.140213c00
nop
xor r15b, r15b
movzx eax, word [0x1402a9d50]
mov word [rsp + 0xc0], ax
movzx eax, byte [0x1402a9d52]
mov byte [rsp + 0xc0], 0x6e
xor byte [rsp + 0xc1], 0x43
xor al, 0x45
mov byte [rsp + 0xc2], al
lea rcx, [rsp + 0xc0]
mov rax, r14
inc rax
cmp byte [rcx + rax], r15b
jne 0x14023c9e1
lea rcx, [rsp + 0x5f0]
cmp qword [rsp + 0x608], 0x10
cmovae rcx, qword [rsp + 0x5f0]
mov r8, qword [rsp + 0x600]
cmp r8, rax
jne 0x14023caeb
lea rdx, [rsp + 0xc0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023caeb
mov r15b, 1
lea rdx, [rsp + 0x7c0]
lea rcx, [rsp + 0x3e8]
call fcn.140213640
mov rbx, rax
lea rax, [rsp + 0x5f0]
cmp rax, rbx
je 0x14023cade
mov rdx, qword [rsp + 0x608]
cmp rdx, 0x10
jb 0x14023ca9c
inc rdx
mov rcx, qword [rsp + 0x5f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023ca97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023ca97
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027cdf0
mov qword [rsp + 0x600], rsi
mov qword [rsp + 0x608], 0xf
mov byte [rsp + 0x5f0], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x5f0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x600], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x3e8]
call fcn.140259200
lea rdx, [rsp + 0x7c0]
lea rcx, [rsp + 0x408]
call fcn.1402578e0
lea r8, [rsp + 0x5f0]
mov rdx, rax
lea rcx, [rsp + 0x630]
call fcn.140213a80
nop
mov rdi, qword [rsp + 0x640]
lea eax, [rdi - 3]
movsxd rbx, eax
xorps xmm0, xmm0
movups xmmword [rsp + 0x650], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x660], xmm1
cmp rdi, rbx
jb 0x14023f15f
mov rax, rdi
sub rax, rbx
mov r8, r14
cmp rax, r14
cmovb r8, rax
lea rdx, [rsp + 0x630]
cmp qword [rsp + 0x648], 0x10
cmovae rdx, qword [rsp + 0x630]
add rdx, rbx
lea rcx, [rsp + 0x650]
call fcn.14021d330
nop
lea rax, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rax, qword [rsp + 0x530]
xorps xmm0, xmm0
xorps xmm1, xmm1
cmp byte [rax], 0x33
jne 0x14023cc8b
lea eax, [rdi - 4]
movsxd rcx, eax
movups xmmword [rsp + 0x1d0], xmm0
movdqu xmmword [rsp + 0x1e0], xmm1
mov rax, qword [rsp + 0x640]
cmp rax, rcx
jb 0x14023f165
sub rax, rcx
mov r8, r14
cmp rax, r14
cmovb r8, rax
lea rdx, [rsp + 0x630]
cmp qword [rsp + 0x648], 0x10
cmovae rdx, qword [rsp + 0x630]
add rdx, rcx
lea rcx, [rsp + 0x1d0]
call fcn.14021d330
mov rdx, qword [rsp + 0x668]
cmp rdx, 0x10
jb 0x14023cc4d
inc rdx
mov rcx, qword [rsp + 0x650]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023cc48
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14023cd1e
call fcn.14027cdf0
movups xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rsp + 0x650], xmm0
movups xmm1, xmmword [rsp + 0x1e0]
movdqa xmm0, xmmword [0x1402ad090]
movdqu xmmword [rsp + 0x1e0], xmm0
mov byte [rsp + 0x1d0], 0
lea rcx, [rsp + 0x1d0]
jmp 0x14023cd63
movups xmmword [rsp + 0x1b0], xmm0
movdqu xmmword [rsp + 0x1c0], xmm1
mov rax, qword [rsp + 0x640]
cmp rax, rbx
jb 0x14023f16a
sub rax, rbx
mov r8, r14
cmp rax, r14
cmovb r8, rax
lea rdx, [rsp + 0x630]
cmp qword [rsp + 0x648], 0x10
cmovae rdx, qword [rsp + 0x630]
add rdx, rbx
lea rcx, [rsp + 0x1b0]
call fcn.14021d330
mov rdx, qword [rsp + 0x668]
cmp rdx, 0x10
jb 0x14023cd2a
inc rdx
mov rcx, qword [rsp + 0x650]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023cd25
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023cd25
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027cdf0
movups xmm0, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0x650], xmm0
movups xmm1, xmmword [rsp + 0x1c0]
movdqa xmm0, xmmword [0x1402ad090]
movdqu xmmword [rsp + 0x1c0], xmm0
mov byte [rsp + 0x1b0], 0
lea rcx, [rsp + 0x1b0]
movups xmmword [rsp + 0x660], xmm1
call fcn.140259200
lea rdx, [rsp + 0x650]
lea rcx, [rsp + 0x838]
call fcn.1402578e0
nop
lea rdx, [rsp + 0x530]
cmp qword [rsp + 0x548], 0x10
cmovae rdx, qword [rsp + 0x530]
mov r8, qword [rsp + 0x540]
lea rcx, [rsp + 0x5a8]
call fcn.1402594a0
movzx r8d, r15b
lea rdx, [rsp + 0x5f0]
lea rcx, [rsp + 0x428]
call fcn.1402137c0
mov rbx, rax
lea rax, [rsp + 0x510]
cmp rax, rbx
je 0x14023ce6a
mov rdx, qword [rsp + 0x528]
cmp rdx, 0x10
jb 0x14023ce28
inc rdx
mov rcx, qword [rsp + 0x510]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14023ce23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14023ce23
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14027cdf0
mov qword [rsp + 0x520], rsi
mov qword [rsp + 0x528], 0xf
mov byte [rsp + 0x510], 0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x510], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x520], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
lea rcx, [rsp + 0x428]
call fcn.140259200
lea rdx, [rsp + 0x838]
cmp qword [rsp + 0x850], 0x10
cmovae rdx, qword [rsp + 0x838]
mov r8, qword [rsp + 0x848]
lea rcx, [rsp + 0x550]
call fcn.1402594a0
nop
lea rcx, [rsp + 0x838]
call fcn.140259200
nop
lea rcx, [rsp + 0x650]
call fcn.140259200
nop
lea rcx, [rsp + 0x630]
call fcn.140259200
nop
lea rcx, [rsp + 0x5f0]
call fcn.140259200
nop
lea rcx, [rsp + 0x7c0]
call fcn.140259200
nop
lea rcx, [rsp + 0x710]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x778]
test rcx, rcx
je 0x14023cf4c
mov eax, r14d
lock xadd dword [rcx + 0x2c], eax
cmp eax, 1
jne 0x14023cf4c
mov rbx, qword [rsp + 0x778]
test rbx, rbx
je 0x14023cf4c
nop dword [rax]
nop word [rax + rax]
mov rcx, rbx
lea rax, [rbx + 0x10]
mov rbx, qword [rax]
mov qword [rax], rsi
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
test rbx, rbx
jne 0x14023cf30
mov qword [rsp + 0x778], rsi
mov rcx, qword [rsp + 0x798]
test rcx, rcx
je 0x14023cf7d
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x14023cf7d
mov rcx, qword [rax]
mov r8, qword [rcx]
mov edx, 1
mov rcx, rax
call r8
mov r13d, dword [0x1402bd008]
movsd xmm0, qword [0x1402ac178]
movsd qword [rsp + 0x128], xmm0
mov eax, dword [0x1402ac180]
mov dword [rsp + 0x130], eax
cmp byte [0x1402ac183], 0
je 0x14023d217
mov r9d, esi
cmp r13d, 2
jl 0x14023d1ac
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 [0x1402ac178]
pxor xmm3, xmm0
movd dword [rsp + 0x128], 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 + 0x12c]
pxor xmm3, xmm1
movd dword [rsp + 0x12c], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x128]
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, 0xc
jl 0x14023d1c0
lea rdx, [rsp + 0x128]
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 + 0x5a8]
cmp qword [rsp + 0x5c0], 0x10
cmovae rdx, qword [rsp + 0x5a8]
mov r8, qword [rsp + 0x5b8]
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]
movsd xmm0, qword [0x1402aba08]
movsd qword [rsp + 0x570], xmm0
mov eax, dword [0x1402aba10]
mov dword [rsp + 0x578], eax
movzx eax, word [0x1402aba14]
mov word [rsp + 0x57c], ax
cmp byte [0x1402aba15], 0
je 0x14023d507
mov r9d, esi
cmp r13d, 2
jl 0x14023d49c
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 [0x1402aba08]
pxor xmm3, xmm0
movd dword [rsp + 0x570], 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 + 0x574]
pxor xmm3, xmm1
movd dword [rsp + 0x574], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x570]
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, 0xe
jl 0x14023d4b0
lea rdx, [rsp + 0x570]
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 + 0x510]
cmp qword [rsp + 0x528], 0x10
cmovae rdx, qword [rsp + 0x510]
mov r8, qword [rsp + 0x520]
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]
movsd xmm0, qword [0x1402a9550]
movsd qword [rsp + 0xc8], xmm0
movzx edx, word [0x1402a9558]
mov word [rsp + 0xd0], dx
movzx eax, byte [0x1402a955a]
mov byte [rsp + 0xc8], 0x43
xor byte [rsp + 0xc9], 0x43
xor byte [rsp + 0xca], 0x45
xor byte [rsp + 0xcb], 0x47
xor byte [rsp + 0xcc], 0x49
xor byte [rsp + 0xcd], 0x4b
xor byte [rsp + 0xce], 0x4d
xor byte [rsp + 0xcf], 0x4f
xor dl, 0x51
mov byte [rsp + 0xd0], dl
xor byte [rsp + 0xd1], 0x53
xor al, 0x55
mov byte [rsp + 0xd2], al
lea rdx, [rsp + 0xc8]
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 + 0x550]
cmp qword [rsp + 0x568], 0x10
cmovae rdx, qword [rsp + 0x550]
mov r8, qword [rsp + 0x560]
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]
movsd xmm0, qword [0x1402a9900]
movsd qword [rsp + 0x140], xmm0
mov eax, dword [0x1402a9908]
mov dword [rsp + 0x148], eax
cmp byte [0x1402a990b], 0
je 0x14023d8b7
mov r9d, esi
cmp r13d, 2
jl 0x14023d84d
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 [0x1402a9900]
pxor xmm3, xmm0
movd dword [rsp + 0x140], 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 + 0x144]
pxor xmm3, xmm1
movd dword [rsp + 0x144], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0x140]
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 edx, eax, 0x69
sub r8b, dl
add r8b, 0x41
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xc
jl 0x14023d860
lea rdx, [rsp + 0x140]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14025af20
mov rbx, rax
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0x1f0]
call fcn.140216070
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14023d8f2
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
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]
nop
lea rcx, [rsp + 0x1f0]
call fcn.140259200
mov byte [rsp + 0x4c], 0
lea rcx, [rsp + 0x4c]
mov rax, r14
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023d930
lea rcx, [rsp + 0x550]
cmp qword [rsp + 0x568], 0x10
cmovae rcx, qword [rsp + 0x550]
mov r8, qword [rsp + 0x560]
cmp r8, rax
jne 0x14023d972
lea rdx, [rsp + 0x4c]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14023db52
mov eax, dword [0x1402abb8c]
mov dword [rsp + 0x4c], eax
cmp byte [0x1402abb8f], 0
je 0x14023daf7
cmp r13d, 2
jl 0x14023da95
mov r15d, 6
movd xmm5, r15d
mov ebx, 0x1f
movd xmm7, ebx
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 + 0x4c], xmm3
jmp 0x14023db01
lea r10, [rsp + 0x4c]
mov r9d, esi
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, 4
jl 0x14023daa0
mov r15d, 6
lea ebx, [r15 + 0x19]
lea rcx, [rsp + 0x4c]
mov rax, r14
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14023db10
lea rcx, [rsp + 0x510]
cmp qword [rsp + 0x528], 0x10
cmovae rcx, qword [rsp + 0x510]
mov r8, qword [rsp + 0x520]
cmp r8, rax
jne 0x14023dbce
lea rdx, [rsp + 0x4c]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14023dbce
lea rcx, [rsp + 0x550]
call fcn.140259200
nop
lea rcx, [rsp + 0x510]
call fcn.140259200
nop
lea rcx, [rsp + 0x5a8]
call fcn.140259200
nop
lea rcx, [rsp + 0x8c8]
call fcn.140259200
nop
lea rcx, [rsp + 0x530]
call fcn.140259200
nop
lea rcx, [rsp + 0x6f0]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x590]
xor rcx, qword [rsp + 0x598]
mov qword [rsp + 0x590], rcx
mov rax, qword [rsp + 0x5a0]
mov qword [rax], rcx
jmp 0x14023efea
movups xmm0, xmmword [0x1402aa770]
movups xmmword [rsp + 0x160], xmm0
movups xmm1, xmmword [0x1402aa780]
movups xmmword [rsp + 0x170], xmm1
movsd xmm0, qword [0x1402aa790]
movsd qword [rsp + 0x180], xmm0
mov eax, dword [0x1402aa798]
mov dword [rsp + 0x188], eax
movzx eax, word [0x1402aa79c]
mov word [rsp + 0x18c], ax
mov r9d, esi
cmp r13d, 2
jl 0x14023de47
movdqa xmm10, xmmword [0x1402ad0a0]
movdqa xmm6, xmmword [0x1402ad190]
movd xmm7, r15d
movdqa xmm8, xmmword [0x1402ad180]
movdqa xmm11, xmmword [0x1402ad1a0]
movd xmm9, ebx
movdqa xmm12, xmmword [0x1402ad0e0]
movdqa xmm0, xmmword [str.AAAAAAAAAAAAAAAA]
movdqa xmmword [rsp + 0x570], xmm0
lea rcx, [rsp + 0x164]
mov edx, dword [rsp + 0x570]
nop dword [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, 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, 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, 0x28
jl 0x14023dc80
cmp r9d, 0x2e
jge 0x14023deb7
movsxd rax, r9d
lea r10, [rsp + 0x160]
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, 0x2e
jl 0x14023de60
movsd xmm0, qword [str._717:qb_Q]
movzx eax, byte [0x1402a97e0]
movsd qword [rsp + 0x58], xmm0
mov byte [rsp + 0x58], 0x68
xor byte [rsp + 0x59], 0x43
xor byte [rsp + 0x5a], 0x45
xor byte [rsp + 0x5b], 0x47
xor byte [rsp + 0x5c], 0x49
xor byte [rsp + 0x5d], 0x4b
xor byte [rsp + 0x5e], 0x4d
xor byte [rsp + 0x5f], 0x4f
xor al, 0x51
mov byte [rsp + 0x60], al
lea rax, [rsp + 0x58]
mov rcx, r14
inc rcx
cmp byte [rax + rcx], 0
jne 0x14023df02
mov rdx, qword [0x1402c0470]
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, rdx
cmp rax, rcx
jb 0x14023f170
lea rax, [0x1402c0460]
cmp qword [0x1402c0478], 0x10
cmovae rax, qword [0x1402c0460]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x58]
lea rcx, [rsp + 0x2e8]
call fcn.14025e2d0
nop
lea rax, [rsp + 0x160]
mov r8, r14
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14023df70
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x2e8]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x7e0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x7f0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x7e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x7f0], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x2e8]
call fcn.140259200
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x50], ax
cmp byte [0x1402a94d5], 0
je 0x14023dff8
mov byte [rsp + 0x50], 0x7c
xor byte [rsp + 0x51], 0x43
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x44], ax
cmp byte [0x1402a94d5], 0
je 0x14023e017
mov byte [rsp + 0x44], 0x7c
xor byte [rsp + 0x45], 0x43
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0x488]
call fcn.140216070
mov rbx, rax
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x40], ax
cmp byte [0x1402a94d5], 0
je 0x14023e04e
mov byte [rsp + 0x40], 0x7c
xor byte [rsp + 0x41], 0x43
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x48], ax
cmp byte [0x1402a94d5], 0
je 0x14023e06d
mov byte [rsp + 0x48], 0x7c
xor byte [rsp + 0x49], 0x43
movzx eax, word [0x1402a94d4]
mov word [rsp + 0x4c], ax
cmp byte [0x1402a94d5], 0
je 0x14023e08c
mov byte [rsp + 0x4c], 0x7c
xor byte [rsp + 0x4d], 0x43
movups xmm0, xmmword [0x1402a96e0]
movups xmmword [rsp + 0x140], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x14023e347
cmp r13d, 2
jl 0x14023e2e1
movdqa xmm10, xmmword [0x1402ad0a0]
mov edx, esi
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 + 0x570], xmm0
lea rcx, [rsp + 0x144]
mov r8d, dword [rsp + 0x570]
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, 0x10
jl 0x14023e120
jmp 0x14023e347
lea r10, [rsp + 0x140]
mov r9d, esi
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, 0x10
jl 0x14023e2f0
lea rax, [rsp + 0x140]
mov rcx, r14
inc rcx
cmp byte [rax + rcx], 0
jne 0x14023e352
mov rdx, qword [rsp + 0x5b8]
sub rdi, rdx
cmp rdi, rcx
jb 0x14023f176
lea rax, [rsp + 0x5a8]
cmp qword [rsp + 0x5c0], 0x10
cmovae rax, qword [rsp + 0x5a8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x140]
lea rcx, [rsp + 0x308]
call fcn.14025e2d0
nop
lea rax, [rsp + 0x4c]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x14023e3b6
lea rdx, [rsp + 0x4c]
lea rcx, [rsp + 0x308]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x220], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x230], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x220], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x230], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rsp + 0x510]
cmp qword [rsp + 0x528], 0x10
cmovae rdx, qword [rsp + 0x510]
mov r8, qword [rsp + 0x520]
lea rcx, [rsp + 0x220]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x240], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x250], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x240], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x250], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rsp + 0x48]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x14023e483
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x240]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x260], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x270], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x260], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x270], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rdx, [rsp + 0x550]
cmp qword [rsp + 0x568], 0x10
cmovae rdx, qword [rsp + 0x550]
mov r8, qword [rsp + 0x560]
lea rcx, [rsp + 0x260]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x280], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x290], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x280], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x290], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rax, [rsp + 0x40]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x14023e550
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x280]
call fcn.140257640
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x190], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x1a0], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov r9, rbx
lea r8, [rsp + 0x190]
lea rcx, [rsp + 0x2c8]
call fcn.14025e0e0
nop
lea rax, [rsp + 0x44]
inc r14
cmp byte [rax + r14], 0
jne 0x14023e5b0
mov r8, r14
lea rdx, [rsp + 0x44]
lea rcx, [rsp + 0x2c8]
call fcn.140257640
xorps xmm0, xmm0
movups xmmword [rsp + 0x2a0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x2b0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x2a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x2b0], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [0x1402c0110]
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0x468]
call fcn.14025a780
nop
lea r8, [rsp + 0x50]
mov rdx, rax
lea rcx, [rsp + 0x448]
call fcn.14025a710
nop
lea r8, [0x1402c0430]
mov rdx, rax
lea rcx, [rsp + 0x8e8]
call fcn.14025a780
nop
lea rcx, [rsp + 0x448]
call fcn.140259200
nop
lea rcx, [rsp + 0x468]
call fcn.140259200
nop
lea rcx, [rsp + 0x2a0]
call fcn.140259200
nop
lea rcx, [rsp + 0x2c8]
call fcn.140259200
nop
lea rcx, [rsp + 0x190]
call fcn.140259200
nop
lea rcx, [rsp + 0x280]
call fcn.140259200
nop
lea rcx, [rsp + 0x260]
call fcn.140259200
nop
lea rcx, [rsp + 0x240]
call fcn.140259200
nop
lea rcx, [rsp + 0x220]
call fcn.140259200
nop
lea rcx, [rsp + 0x308]
call fcn.140259200
nop
lea rcx, [rsp + 0x488]
call fcn.140259200
lea rdx, [rsp + 0x8e8]
lea rcx, [rsp + 0x908]
call fcn.14020c060
nop
lea rcx, [rsp + 0x7e0]
call fcn.14021d2e0
mov qword [rsp + 0xd8], rax
lea rcx, [rsp + 0x570]
call fcn.14020a170
lea rdx, [rsp + 0xaa8]
lea rcx, [rsp + 0x570]
call fcn.140203bd0
nop
mov ecx, esi
mov rax, qword [0x1402bfb20]
lea rdi, [0x14025b2b0]
lea rbx, [0x140000000]
test rax, rax
je 0x14023e78a
mov r8, rsi
nop dword [rax]
cmp rax, rdi
je 0x14023e779
inc ecx
mov r8d, ecx
mov rax, qword [rbx + rcx*8 + 0x2bfb20]
test rax, rax
jne 0x14023e760
jmp 0x14023e78a
mov r8, qword [rbx + r8*8 + 0x2c4050]
test r8, r8
jne 0x14023e86f
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 0x14023e7b1
mov r8, rsi
jmp 0x14023e84e
mov rax, rdi
mov rcx, r8
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub r12, 1
jne 0x14023e7c0
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 [rbx + rax*8 + 0x2bfb20], rdi
mov qword [rbx + rax*8 + 0x2c4050], r8
inc rax
mov qword [0x1402c49b0], rax
lea rdx, [rsp + 0xd8]
lea rcx, [fcn.140202680]
call r8
nop
mov rcx, qword [rsp + 0x570]
xor rcx, qword [rsp + 0x578]
mov rax, qword [rsp + 0x580]
mov qword [rax], rcx
mov eax, dword [0x1402a9818]
mov dword [rsp + 0x70], eax
movzx eax, byte [0x1402a981c]
mov byte [rsp + 0x70], 0x50
xor byte [rsp + 0x71], 0x43
xor byte [rsp + 0x72], 0x45
xor byte [rsp + 0x73], 0x47
xor al, 0x49
mov byte [rsp + 0x74], al
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x1f0]
call fcn.14021d2f0
nop
movsd xmm0, qword [0x1402a9778]
movsd qword [rsp + 0xe0], xmm0
mov eax, dword [0x1402a9780]
mov dword [rsp + 0xe8], eax
movzx eax, byte [0x1402a9784]
mov byte [rsp + 0xec], al
mov r9d, esi
mov r11d, 0x1f
cmp r13d, 2
jl 0x14023eb00
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 + 0xe0], 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 + 0xe4]
pxor xmm3, xmm1
movd dword [rsp + 0xe4], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xe0]
add r10, rax
nop
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 0x14023eb10
lea rax, [rsp + 0xe0]
mov qword [rsp + 0xd8], rax
movups xmm0, xmmword [str._35____8__x_v_]
movups xmmword [rsp + 0x160], xmm0
movups xmm1, xmmword [0x1402a98d0]
movups xmmword [rsp + 0x170], xmm1
movzx eax, word [0x1402a98e0]
mov word [rsp + 0x180], ax
cmp r13d, 2
jl 0x14023edd4
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 + 0x570], xmm0
lea rcx, [rsp + 0x164]
mov edx, dword [rsp + 0x570]
nop dword [rax]
nop dword [rax + rax]
movd xmm5, esi
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, [rsi + 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 esi, 8
mov eax, esi
lea rcx, [rcx + 8]
cmp esi, 0x20
jl 0x14023ec10
cmp eax, 0x22
jge 0x14023ee33
movsxd rax, esi
lea r9, [rsp + 0x160]
add r9, rax
mov eax, 0x8fb823ef
imul esi
add edx, esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx r8d, sil
sub r8b, cl
add r8b, r8b
mov eax, 0x9c09c09d
imul esi
add edx, esi
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 [r9], r8b
inc esi
lea r9, [r9 + 1]
cmp esi, 0x22
jl 0x14023ede2
lea rax, [rsp + 0x160]
mov qword [rsp + 0x70], rax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x4d0]
call fcn.14025b4b0
nop
lea rax, [rsp + 0x4d0]
mov qword [rsp + 0x210], rax
lea rax, [rsp + 0x510]
mov qword [rsp + 0x218], rax
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0xf0]
call fcn.140204610
mov rbx, rax
lea rdx, [rsp + 0x908]
lea rcx, [rsp + 0x140]
call fcn.1402578e0
nop
lea rdx, [rsp + 0x7e0]
lea rcx, [rsp + 0x190]
call fcn.1402578e0
nop
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x20], rax
mov r9, rbx
lea r8, [rsp + 0x140]
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x930]
call fcn.14025b540
nop
lea rcx, [rsp + 0x190]
call fcn.140259200
nop
lea rcx, [rsp + 0x140]
call fcn.140259200
nop
lea rcx, [rsp + 0xf0]
call fcn.140204770
nop
lea r9, [fcn.1402047a0]
mov edx, 0x40
lea r8d, [rdx - 0x3f]
lea rcx, [rsp + 0x4d0]
call fcn.14027d34c
nop
lea rcx, [rsp + 0x1f0]
call fcn.140259200
nop
lea rcx, [rsp + 0x930]
call fcn.140204a00
nop
lea rcx, [rsp + 0x908]
call fcn.140259200
nop
lea rcx, [rsp + 0x8e8]
call fcn.140259200
nop
lea rcx, [rsp + 0x7e0]
call fcn.140259200
nop
lea rcx, [rsp + 0x550]
call fcn.140259200
nop
lea rcx, [rsp + 0x510]
call fcn.140259200
nop
lea rcx, [rsp + 0x5a8]
call fcn.140259200
nop
lea rcx, [rsp + 0x8c8]
call fcn.140259200
nop
lea rcx, [rsp + 0x530]
call fcn.140259200
nop
lea rcx, [rsp + 0x6f0]
call fcn.140259200
nop
mov rcx, qword [rsp + 0x598]
mov rax, qword [rsp + 0x5a0]
xor rcx, qword [rsp + 0x590]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xa00]
xor rcx, rsp
call fcn.14027cdd0
lea r11, [rsp + 0xa90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
mov rsp, r11
pop r15
pop r14
pop r13
ret
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
nop
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14023f063
imul rax, rax, 0x64
jmp 0x14023f081
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
movabs rcx, 0x7ffffffffd050f7e
cmp rax, rcx
lea r15, [rax + 0x2faf080]
jle 0x14023f0a0
mov r15, r12
nop word [rax + 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 0x14023f0be
imul rbx, rax, 0x64
jmp 0x14023f0df
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rbx, rax
imul rax, rcx, 0x3b9aca00
add rbx, rax
cmp r15, rbx
je 0x14023b230
jl 0x14023b230
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
imul rcx, rax, 0x64
mov rax, r15
sub rax, rbx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
comisd xmm0, xmm13
jbe 0x14023f117
movabs rax, 0x311cdad160000
add rcx, rax
movabs rax, 0x112e0be826d694b3
imul rcx
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x858], rdx
imul eax, edx, 0x3b9aca00
sub ecx, eax
mov dword [rsp + 0x860], ecx
lea rcx, [rsp + 0x858]
call qword [sym.imp.MSVCP140.dll__Thrd_sleep]
jmp 0x14023f0a0
call fcn.140259fb0
nop
call fcn.140259fb0
call fcn.140259fb0
nop
call fcn.1402029d0
nop
call fcn.1402029d0
int3