Function at 0x140001aa0
Capabilities:
Encode data using xor
Execute command

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x4a8]
sub rsp, 0x580
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
mov rax, qword [0x14008d0c0]
xor rax, rsp
mov qword [rbp + 0x420], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
xor r12d, r12d
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x98], r12b
movups xmm0, xmmword [str.eWDKNUIXzKZ321DeWDKNUIX]
movups xmmword [rsp + 0x40], xmm0
movdqa xmm8, xmmword [0x1400813a0]
movdqa xmm7, xmmword [0x140081370]
movdqa xmm10, xmmword [0x1400813c0]
movdqa xmm9, xmmword [0x140081390]
movdqa xmm6, xmmword [0x1400813b0]
mov r13d, dword [reloc.WS2_32.dll_accept]
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x140001c9f
cmp r13d, 2
jl 0x140001c66
mov edx, r12d
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
movd xmm2, edx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x140001b81
jmp 0x140001c9f
lea r9, [rsp + 0x40]
mov r8d, r12d
nop
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x140001c70
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x158]
call fcn.1400035a0
nop
movsd xmm0, qword [0x140081258]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x140081260]
mov word [rsp + 0x48], cx
movzx eax, byte [0x140081262]
mov byte [rsp + 0x40], Ordinal_79
xor byte [rsp + 0x41], 0x36
xor byte [rsp + 0x42], 0x37
xor byte [rsp + 0x43], 0x38
xor byte [rsp + 0x44], 0x39
xor byte [rsp + 0x45], 0x3a
xor byte [rsp + 0x46], 0x3b
xor byte [rsp + 0x47], 0x3c
xor cl, 0x3d
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x3e
xor al, 0x3f
mov byte [rsp + 0x4a], al
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x138]
call fcn.1400035a0
nop
movups xmm0, xmmword [0x140081270]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [0x140081280]
movups xmmword [rbp - 0x80], xmm1
movups xmm0, xmmword [0x140081290]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [0x1400812a0]
movups xmmword [rbp - 0x60], xmm1
movzx eax, byte [0x1400812b0]
mov byte [rbp - 0x50], al
mov r8d, r12d
cmp r13d, 2
jl 0x140001e5d
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x74]
mov edx, dword [rsp + 0x60]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x40
jl 0x140001d72
cmp r8d, 0x41
jge 0x140001e9f
movsxd rax, r8d
lea r9, [rsp + 0x70]
add r9, rax
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x41
jl 0x140001e70
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x118]
call fcn.1400035a0
nop
mov eax, dword [0x1400811e4]
mov dword [rsp + 0x58], eax
cmp byte [0x1400811e7], 0
je 0x140001f6f
cmp r13d, 2
jl 0x140001f2c
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
jmp 0x140001f6f
lea r9, [rsp + 0x58]
mov r8d, r12d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140001f40
lea rdx, [rsp + 0x58]
lea rcx, [rbp + 0xf8]
call fcn.1400035a0
nop
movups xmm0, xmmword [str._BCHJ]
movups xmmword [rsp + 0x70], xmm0
movsd xmm0, qword [0x1400811c8]
movsd qword [rbp - 0x80], xmm0
mov eax, dword [0x1400811d0]
mov dword [rbp - 0x78], eax
movzx eax, byte [0x1400811d4]
mov byte [rbp - 0x74], al
mov r8d, r12d
cmp r13d, 2
jl 0x1400020bb
movdqa xmmword [rsp + 0x60], xmm10
lea rcx, [rsp + 0x74]
mov edx, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140001fd0
cmp r8d, 0x1d
jge 0x1400020ff
movsxd rax, r8d
lea r9, [rsp + 0x70]
add r9, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1d
jl 0x1400020d0
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xd8]
call fcn.1400035a0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xb8], xmm0
movdqa xmm1, xmmword [0x140081360]
movdqu xmmword [rbp + 0xc8], xmm1
mov byte [rbp + 0xb8], 0
xor edx, edx
mov r8d, 0x298
lea rcx, [rbp + 0x180]
call sub.VCRUNTIME140.dll_memset
lea rax, [rbp - 0x28]
mov qword [rsp + 0x58], rax
lea rdx, [rbp + 0xb8]
lea rcx, [rbp - 0x28]
call fcn.1400036c0
mov r15, rax
lea rax, [rbp - 8]
mov qword [rbp - 0x40], rax
lea rdx, [rbp + 0xd8]
lea rcx, [rbp - 8]
call fcn.1400036c0
mov r14, rax
lea rax, [rbp + 0x18]
mov qword [rbp - 0x38], rax
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0x18]
call fcn.1400036c0
mov rsi, rax
lea rax, [rbp + 0x38]
mov qword [rbp - 0x30], rax
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0x38]
call fcn.1400036c0
mov rdi, rax
lea rax, [rbp + 0x58]
mov qword [rsp + 0x60], rax
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x58]
call fcn.1400036c0
mov rbx, rax
lea rdx, [rbp + 0x158]
lea rcx, [rbp + 0x78]
call fcn.1400036c0
nop
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rsi
mov r9, rdi
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x180]
call fcn.1400012c0
nop
lea rcx, [rbp + 0x180]
call fcn.1400174a0
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
mov r9, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movups xmm0, xmmword [0x1400811e8]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [0x1400811f8]
movups xmmword [rbp - 0x80], xmm1
mov eax, dword [0x140081208]
mov dword [rbp - 0x70], eax
movzx eax, byte [0x14008120c]
mov byte [rbp - 0x6c], al
mov ecx, r12d
cmp r13d, 2
jl 0x140002358
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x74]
mov r8d, dword [rsp + 0x60]
nop
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x20
jl 0x140002270
cmp ecx, 0x25
jge 0x14000239b
movsxd rax, ecx
lea r8, [rsp + 0x70]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x25
jl 0x140002370
lea rdx, [rsp + 0x70]
mov rcx, r9
call fcn.140003b50
lea rdx, [rbp + 0x98]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140003d30
movsd xmm0, qword [str.EWDKNUIX]
movzx eax, byte [0x1400812c0]
movsd qword [rsp + 0x40], xmm0
mov byte [rsp + 0x40], reloc.WS2_32.dll_WSASetLastError
xor byte [rsp + 0x41], 0x36
xor byte [rsp + 0x42], 0x37
xor byte [rsp + 0x43], 0x38
xor byte [rsp + 0x44], 0x39
xor byte [rsp + 0x45], 0x3a
xor byte [rsp + 0x46], 0x3b
xor byte [rsp + 0x47], 0x3c
xor al, 0x3d
mov byte [rsp + 0x48], al
lea rcx, [rsp + 0x40]
mov rax, rbx
inc rax
cmp byte [rcx + rax], 0
jne 0x140002406
lea rcx, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0xf
cmova rcx, qword [rbp + 0x98]
mov r8, qword [rbp + 0xa8]
cmp r8, rax
jne 0x140002444
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400025e1
movups xmm0, xmmword [0x140081240]
movups xmmword [rsp + 0x70], xmm0
mov eax, dword [0x140081250]
mov dword [rbp - 0x80], eax
movzx eax, word [0x140081254]
mov word [rbp - 0x7c], ax
movzx eax, byte [0x140081256]
mov byte [rbp - 0x7a], al
mov ecx, r12d
cmp r13d, 2
jl 0x140002578
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x74]
mov r8d, dword [rsp + 0x60]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x140002490
cmp ecx, 0x17
jge 0x1400025bb
movsxd rax, ecx
lea r8, [rsp + 0x70]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x17
jl 0x140002590
lea rdx, [rsp + 0x70]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140003b50
lea rdx, [0x140003f90]
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]
jmp 0x140002220
movups xmm0, xmmword [str.eWDKNUIX]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [0x1400812d8]
movups xmmword [rbp - 0x80], xmm1
movsd xmm0, qword [0x1400812e8]
movsd qword [rbp - 0x70], xmm0
mov eax, dword [0x1400812f0]
mov dword [rbp - 0x68], eax
movzx eax, byte [0x1400812f4]
mov byte [rbp - 0x64], al
mov ecx, r12d
cmp r13d, 2
jl 0x140002728
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x74]
mov r8d, dword [rsp + 0x60]
nop word [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x28
jl 0x140002640
cmp ecx, 0x2d
jge 0x14000276b
movsxd rax, ecx
lea r8, [rsp + 0x70]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x2d
jl 0x140002740
lea rdx, [rsp + 0x70]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140003b50
lea rdx, [rbp + 0x98]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140003d30
movsd xmm0, qword [str.XTWKH_I_]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x140081220]
mov word [rsp + 0x48], ax
cmp byte [0x140081221], 0
je 0x1400027e4
mov byte [rsp + 0x40], 0x69
xor byte [rsp + 0x41], 0x36
xor byte [rsp + 0x42], 0x37
xor byte [rsp + 0x43], 0x38
xor byte [rsp + 0x44], 0x39
xor byte [rsp + 0x45], 0x3a
xor byte [rsp + 0x46], 0x3b
xor byte [rsp + 0x47], 0x3c
xor byte [rsp + 0x48], 0x3d
xor byte [rsp + 0x49], 0x3e
lea rcx, [rsp + 0x40]
mov rax, rbx
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400027f0
lea rcx, [rbp + 0x98]
mov rdi, qword [rbp + 0x98]
mov rsi, qword [rbp + 0xb0]
cmp rsi, 0xf
cmova rcx, rdi
mov r8, qword [rbp + 0xa8]
cmp r8, rax
jne 0x140002e7d
lea rdx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140002e7d
mov eax, dword [str.VZD8]
mov dword [rsp + 0x58], eax
cmp byte [0x140081213], 0
je 0x1400028ef
cmp r13d, 2
jl 0x1400028b3
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm8
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm10
movd xmm0, eax
xorps xmm1, xmm0
movd dword [rsp + 0x58], xmm1
jmp 0x1400028ef
lea r9, [rsp + 0x58]
mov r8d, r12d
nop dword [rax + rax]
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x1400028c0
lea rcx, [rsp + 0x58]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
movzx eax, word [0x1400811e0]
movsd xmm0, qword [0x1400811d8]
mov word [rsp + 0x48], ax
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movsd qword [rsp + 0x40], xmm0
movzx eax, byte [0x1400811e2]
mov byte [rsp + 0x40], 0x54
xor byte [rsp + 0x41], 0x36
xor byte [rsp + 0x42], 0x37
xor byte [rsp + 0x43], 0x38
xor byte [rsp + 0x44], 0x39
xor byte [rsp + 0x45], 0x3a
xor byte [rsp + 0x46], 0x3b
xor byte [rsp + 0x47], 0x3c
xor byte [rsp + 0x48], 0x3d
xor byte [rsp + 0x49], 0x3e
xor al, 0x3f
mov byte [rsp + 0x4a], al
lea rdx, [rsp + 0x40]
call fcn.140003b50
lea rdx, [0x140003f90]
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 r9, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movups xmm0, xmmword [str.pXC_K]
movups xmmword [rsp + 0x40], xmm0
mov eax, dword [0x140081308]
mov dword [rsp + 0x50], eax
movzx eax, word [0x14008130c]
mov word [rsp + 0x54], ax
cmp byte [0x14008130d], 0
je 0x140002afb
mov ecx, r12d
cmp r13d, 2
jl 0x140002ab8
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x44]
mov r8d, dword [rsp + 0x60]
nop dword [rax + rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x10
jl 0x1400029d0
cmp ecx, 0x16
jge 0x140002afb
movsxd rax, ecx
lea r8, [rsp + 0x40]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x94f2095
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x16
jl 0x140002ad0
lea rdx, [rsp + 0x40]
mov rcx, r9
call fcn.140003b50
lea rdx, [rbp + 0x98]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140003d30
mov eax, dword [str.TQVQW:]
mov dword [rsp + 0x58], eax
movzx eax, word [0x140081228]
mov word [rsp + 0x5c], ax
mov byte [rsp + 0x58], 0x61
xor byte [rsp + 0x59], 0x36
xor byte [rsp + 0x5a], 0x37
xor byte [rsp + 0x5b], 0x38
xor byte [rsp + 0x5c], 0x39
xor byte [rsp + 0x5d], 0x3a
lea rax, [rsp + 0x58]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140002b54
lea rcx, [rbp + 0x98]
mov rdi, qword [rbp + 0x98]
mov rsi, qword [rbp + 0xb0]
cmp rsi, 0xf
cmova rcx, rdi
mov r8, qword [rbp + 0xa8]
cmp r8, rbx
jne 0x140002e7d
lea rdx, [rsp + 0x58]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140002e7d
movups xmm0, xmmword [0x140081310]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [0x140081320]
movups xmmword [rbp - 0x80], xmm1
movups xmm0, xmmword [0x140081330]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [str.E_r_t_a]
movups xmmword [rbp - 0x60], xmm1
movzx eax, word [0x140081350]
mov word [rbp - 0x50], ax
mov ecx, r12d
cmp r13d, 2
jl 0x140002cda
movdqa xmmword [rsp + 0x60], xmm10
lea rdx, [rsp + 0x74]
mov r8d, dword [rsp + 0x60]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx - 4]
xorps xmm2, xmm0
movd dword [rdx - 4], xmm2
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm7
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rdx]
xorps xmm2, xmm0
movd dword [rdx], xmm2
add ecx, 8
lea rdx, [rdx + 8]
cmp ecx, 0x40
jl 0x140002bf2
cmp ecx, 0x42
jge 0x140002d1b
movsxd rax, ecx
lea r8, [rsp + 0x70]
add r8, rax
nop word [rax + rax]
mov eax, 0x94f2095
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x37
movzx eax, cl
sub al, dl
add al, 0x35
xor byte [r8], al
inc ecx
lea r8, [r8 + 1]
cmp ecx, 0x42
jl 0x140002cf0
lea rdx, [rsp + 0x70]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140003b50
lea rdx, [0x140003f90]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rax, qword [str.FCT_IH_]
mov qword [rsp + 0x58], rax
cmp byte [reloc.WLDAP32.dll_Ordinal_60], 0
je 0x140002e5f
cmp r13d, 2
jl 0x140002e28
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm6
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm7, xmm0
andps xmm7, xmm8
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm10
movd xmm0, eax
paddb xmm7, xmm0
movd xmm1, dword [rsp + 0x58]
xorps xmm7, xmm1
movd dword [rsp + 0x58], xmm7
movdqa xmm2, xmmword [0x140081380]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
andps xmm2, xmm8
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rsp + 0x5c]
xorps xmm2, xmm1
movd dword [rsp + 0x5c], xmm2
jmp 0x140002e5f
lea r8, [rsp + 0x58]
nop dword [rax]
mov eax, 0x94f2095
imul r12d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r12b
sub al, cl
add al, 0x35
xor byte [r8], al
inc r12d
lea r8, [r8 + 1]
cmp r12d, 8
jl 0x140002e30
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x70]
call fcn.1400035a0
mov rdx, rax
lea rcx, [rbp + 0x180]
call fcn.1400191b0
lea rcx, str.pause
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
nop
lea rcx, [rbp + 0x180]
call fcn.1400030c0
nop
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0xf
jbe 0x140002edd
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002ed7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002ed7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0xf
jbe 0x140002f22
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002f1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002f1c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
mov rdx, qword [rbp + 0x110]
cmp rdx, 0xf
jbe 0x140002f67
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002f61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002f61
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
mov rdx, qword [rbp + 0x130]
cmp rdx, 0xf
jbe 0x140002fac
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002fa6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002fa6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
mov rdx, qword [rbp + 0x150]
cmp rdx, 0xf
jbe 0x140002ff1
inc rdx
mov rcx, qword [rbp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002feb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002feb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
mov rdx, qword [rbp + 0x170]
cmp rdx, 0xf
jbe 0x140003036
inc rdx
mov rcx, qword [rbp + 0x158]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003030
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003030
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006e224
nop
cmp rsi, 0xf
jbe 0x140003070
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140003068
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003068
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.14006e224
mov eax, 0x539
mov rcx, qword [rbp + 0x420]
xor rcx, rsp
call fcn.14006e1c0
lea r11, [rsp + 0x580]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret