Function at 0x140031b20
Capabilities:
Encode data using xor
Set console window title
Terminate process

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rcx
push rbp
push r15
sub rsp, 0xc8
mov rax, qword [0x14005b230]
xor rax, rsp
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [str.tOOYE]
movzx eax, word [0x140053ce8]
xor r8d, r8d
cmp dword [0x14005b238], 2
mov rbp, rcx
movups xmm1, xmmword [0x140053cd8]
mov word [rsp + 0x50], ax
lea r15d, [r8 + 5]
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm1
jl 0x140031ceb
movdqa xmm5, xmmword [0x140054270]
lea rcx, [rsp + 0x30]
movdqa xmm4, xmmword [0x140054390]
mov eax, 0x1f
movaps xmmword [r11 - 0x28], xmm6
movaps xmmword [r11 - 0x38], xmm7
movdqa xmm7, xmmword [str.9999::::]
movaps xmmword [r11 - 0x48], xmm8
movaps xmmword [r11 - 0x58], xmm9
movdqa xmm9, xmmword [0x1400542f0]
movd xmm8, eax
movd xmm6, r15d
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm5
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm5
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x10
jl 0x140031bd0
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
cmp r8d, 0x11
jge 0x140031d39
movsxd rax, r8d
lea r9, [rsp + 0x30]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 2]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub ax, dx
movzx eax, ax
imul ecx, eax, 0x39
add cx, r8w
inc r8d
xor word [r9 - 2], cx
cmp r8d, 0x11
jl 0x140031d00
lea rax, [rsp + 0x30]
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rax
call qword [sym.imp.KERNEL32.dll_AllocConsole]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rax
lea r8, [0x140053b2c]
lea rdx, str.CONOUT_
lea rcx, [rsp + 0x58]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_freopen_s]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
call fcn.140031680
test al, al
jne 0x140031dcb
lea rdx, [0x140053bd0]
lea rcx, [rsp + 0x30]
call fcn.1400302f0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x60]
call fcn.140030a20
lea rcx, [rsp + 0x30]
call fcn.140030280
mov ecx, 0xbb8
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xc0], rdi
call fcn.140031920
mov rsi, rax
call fcn.140031920
mov ecx, 0xf0
mov rdi, rax
call fcn.140034668
xor edx, edx
mov r8d, 0xf0
mov rcx, rax
mov rbx, rax
call sub.VCRUNTIME140.dll_memset
mov r9, rbp
mov r8, rsi
mov rdx, rdi
mov rcx, rbx
call fcn.1400336b0
mov rbx, qword [0x14005b9f8]
mov rsi, qword [rsp + 0xf0]
mov qword [0x14005b9f8], rax
test rbx, rbx
je 0x140031e58
mov rcx, rbx
call fcn.140033a30
mov edx, 0xf0
mov rcx, rbx
call fcn.14003432c
mov rax, qword [0x14005b9f8]
test rax, rax
jne 0x140031e66
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea r8, [rsp + 0xe0]
lea rdx, [0x140032120]
call fcn.140032040
lea r8, [rsp + 0xe0]
lea rdx, [0x140032440]
call fcn.140032040
mov rdx, qword [0x14005b2d8]
cmp rdx, qword [0x14005b2e0]
je 0x140031ead
call fcn.140032c90
add qword [0x14005b2d8], 0x10
jmp 0x140031eb2
call fcn.1400329e0
mov rdi, qword [0x14005b9f8]
nop dword [rax]
xor r9d, r9d
mov dword [rsp + 0x20], 1
xor r8d, r8d
lea rcx, [rdi + 0xc0]
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140031f06
cmp dword [rdi + 0xc8], 0x12
je 0x140031f13
lea rcx, [rdi + 0xc0]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rdi + 0xc0]
call qword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x140031ec0
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140031ec0
mov rbx, qword [0x14005b9f8]
mov qword [0x14005b9f8], 0
test rbx, rbx
je 0x140031f3f
mov rcx, rbx
call fcn.140033a30
mov edx, 0xf0
mov rcx, rbx
call fcn.14003432c
mov ecx, dword [0x14005b9f0]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x63]
call qword [sym.imp.USER32.dll_PostThreadMessageW]
cmp byte [0x14005b2c8], 1
jne 0x140031f65
mov byte [0x14005b2c8], 0
mov rdx, qword [0x14005b2d8]
sub rdx, qword [0x14005b2d0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
sar rdx, 4
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_long_long_unsigned___int64_____ptr64]
mov rcx, rax
lea rdx, [0x140032720]
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 rbx, qword [0x14005b2d0]
mov rdi, qword [0x14005b2d8]
cmp rbx, rdi
je 0x140031fe0
cmp dword [rbx + 8], 0
je 0x140032026
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rbx + 8], eax
je 0x14003201c
movups xmm0, xmmword [rbx]
xor edx, edx
lea rcx, [rsp + 0x60]
movaps xmmword [rsp + 0x60], xmm0
call qword [sym.imp.MSVCP140.dll__Thrd_join]
test eax, eax
jne 0x140032010
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
add rbx, 0x10
cmp rbx, rdi
jne 0x140031fa7
call qword [sym.imp.KERNEL32.dll_FreeConsole]
mov rbx, qword [rsp + 0xe8]
xor eax, eax
mov rdi, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140034190
add rsp, 0xc8
pop r15
pop rbp
ret
mov ecx, 2
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, r15d
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3