Function at 0x140002730
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0xbf0]
sub rsp, 0xcf0
mov rax, qword [0x14000b010]
xor rax, rsp
mov qword [rbp + 0xbe0], rax
mov ecx, 0x4e3
call qword [sym.imp.KERNEL32.dll_SetConsoleCP]
mov ecx, 0x4e3
call qword [sym.imp.KERNEL32.dll_SetConsoleOutputCP]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
xor edx, edx
mov r8d, 0x3c8
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rsp + 0x70]
call fcn.140004940
mov word [rbp + 0x338], 0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x33a], xmm0
movups xmmword [rbp + 0x34a], xmm0
movups xmmword [rbp + 0x35a], xmm0
movups xmmword [rbp + 0x36a], xmm0
movups xmmword [rbp + 0x37a], xmm0
movups xmmword [rbp + 0x38a], xmm0
movups xmmword [rbp + 0x39a], xmm0
mov qword [rbp + 0x3aa], rax
mov word [rbp + 0x3b2], ax
xor r15d, r15d
mov qword [rbp + 0x3b4], r15
lea rcx, [rbp + 0x33c]
lea rax, [rsp + 0x7c]
mov ebx, 0xb
mov edx, ebx
nop dword [rax]
nop word [rax + rax]
mov byte [rax - 0xc], 0x20
mov dword [rax - 8], r15d
mov byte [rcx - 1], r15b
mov byte [rax - 4], 0x20
mov dword [rax], r15d
mov byte [rcx], r15b
mov byte [rax + 4], 0x20
mov dword [rax + 8], r15d
mov byte [rcx + 1], r15b
mov byte [rax + 0xc], 0x20
mov dword [rax + 0x10], r15d
mov byte [rcx + 2], r15b
mov byte [rax + 0x14], 0x20
mov dword [rax + 0x18], r15d
mov byte [rcx + 3], r15b
mov byte [rax + 0x1c], 0x20
mov dword [rax + 0x20], r15d
mov byte [rcx + 4], r15b
mov byte [rax + 0x24], 0x20
mov dword [rax + 0x28], r15d
mov byte [rcx + 5], r15b
mov byte [rax + 0x2c], 0x20
mov dword [rax + 0x30], r15d
mov byte [rcx + 6], r15b
mov byte [rax + 0x34], 0x20
mov dword [rax + 0x38], r15d
mov byte [rcx + 7], r15b
mov byte [rax + 0x3c], 0x20
mov dword [rax + 0x40], r15d
mov byte [rcx + 8], r15b
mov byte [rax + 0x44], 0x20
mov dword [rax + 0x48], r15d
mov byte [rcx + 9], r15b
lea rax, [rax + 0x58]
lea rcx, [rcx + 0xb]
sub rdx, 1
jne 0x140002820
lea rcx, [rsp + 0x70]
call fcn.140001e10
lea rdx, [0x140007980]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x1400079b0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [rsp + 0x5b]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
movzx eax, byte [rsp + 0x5b]
test al, al
je 0x140002a53
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], r15b
mov r8d, 0xc
lea rcx, [rsp + 0x38]
call fcn.140004660
nop
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x3c0]
call fcn.1400018c0
mov rcx, rax
lea rdx, [rsp + 0x70]
mov eax, 8
nop word [rax + rax]
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rdx - 0x10], xmm1
lea rcx, [rcx + 0x80]
sub rax, 1
jne 0x140002970
movups xmm0, xmmword [rcx]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx + 0x30], xmm1
mov rax, qword [rcx + 0x40]
mov qword [rdx + 0x40], rax
mov eax, dword [rcx + 0x48]
mov dword [rdx + 0x48], eax
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x140002a2e
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002a29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002a29
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140005a8c
lea rcx, [rsp + 0x70]
call fcn.140001e10
movzx eax, byte [rbp + 0x339]
mov byte [rsp + 0x59], al
movzx eax, byte [rbp + 0x33a]
mov byte [rsp + 0x5a], al
movzx eax, byte [rsp + 0x5b]
cmp al, 1
je 0x140002ca4
lea rdx, [0x1400079f0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [rsp + 0x58]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
cmp byte [rsp + 0x58], 0
jne 0x140002a93
lea rcx, [rsp + 0x70]
call fcn.1400020e0
jmp 0x140002aa4
cmp byte [rsp + 0x58], 1
jne 0x140002ae6
lea rcx, [rsp + 0x70]
call fcn.140002250
lea rdx, [0x140007a68]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [0x140005060]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x140005060]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rcx, [rsp + 0x70]
call fcn.140001e10
cmp byte [rsp + 0x58], 1
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jbe 0x140002b1f
lea rdx, [0x140007a88]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [rsp + 0x58]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
jmp 0x140002ae1
lea rdx, [0x140005060]
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 rcx, rax
lea rdx, [0x140007ac0]
call fcn.140004e90
lea rdx, [rsp + 0x59]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp byte [rsp + 0x59], 1
jbe 0x140002b79
lea rdx, [0x140007a88]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 0x140002b3b
lea rdx, [0x140005060]
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 rcx, rax
lea rdx, [0x140007b30]
call fcn.140004e90
lea rdx, [rsp + 0x5a]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp byte [rsp + 0x5a], 1
jbe 0x140002bd3
lea rdx, [0x140007a88]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 0x140002b95
lea rdx, [0x140007bc0]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x140007c00]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [rsp + 0x5c]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
cmp byte [rsp + 0x5c], 0
je 0x140002ca4
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov r8d, 0xc
lea rcx, [rsp + 0x38]
call fcn.140004660
nop
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x70]
call fcn.1400016e0
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x140002ca4
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002c9f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002c9f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140005a8c
lea rdx, [0x140007c28]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [rsp + 0x64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___int____ptr64____ptr64]
movzx eax, byte [rsp + 0x59]
test al, al
jne 0x140003382
xor edx, edx
mov r8d, 0x3c8
lea rcx, [rbp + 0x3c0]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x3c0]
call fcn.140004940
lea rcx, [rbp + 0x3cc]
nop dword [rax]
mov byte [rcx - 0xc], 0x20
mov dword [rcx - 8], r15d
mov byte [rcx - 4], 0x20
mov dword [rcx], r15d
mov byte [rcx + 4], 0x20
mov dword [rcx + 8], r15d
mov byte [rcx + 0xc], 0x20
mov dword [rcx + 0x10], r15d
mov byte [rcx + 0x14], 0x20
mov dword [rcx + 0x18], r15d
mov byte [rcx + 0x1c], 0x20
mov dword [rcx + 0x20], r15d
mov byte [rcx + 0x24], 0x20
mov dword [rcx + 0x28], r15d
mov byte [rcx + 0x2c], 0x20
mov dword [rcx + 0x30], r15d
mov byte [rcx + 0x34], 0x20
mov dword [rcx + 0x38], r15d
mov byte [rcx + 0x3c], 0x20
mov dword [rcx + 0x40], r15d
mov byte [rcx + 0x44], 0x20
mov dword [rcx + 0x48], r15d
lea rcx, [rcx + 0x58]
sub rbx, 1
jne 0x140002d00
lea rcx, [rbp + 0x3c0]
call fcn.1400020e0
mov r14d, dword [rsp + 0x64]
lea rcx, [rsp + 0x70]
call fcn.140001e10
lea rdx, [0x1400078d0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x140007730]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [rsp + 0x30]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140005260
mov rcx, rax
lea rdx, [rsp + 0x60]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___int____ptr64____ptr64]
mov edx, dword [rsp + 0x60]
cmp edx, 9
jbe 0x140002e06
lea rdx, [0x140007780]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
jmp 0x140002dc6
movsx ecx, byte [rsp + 0x30]
lea eax, [rcx + 0x40]
cmp al, 9
ja 0x140002e18
lea r14d, [rcx + 0x40]
jmp 0x140002e5f
add cl, 0x40
cmp cl, 9
jbe 0x140002e5b
lea rdx, [0x1400077c0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [rsp + 0x30]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.140005260
movzx ecx, byte [rsp + 0x30]
jmp 0x140002e18
mov edx, dword [rsp + 0x60]
lea ecx, [rdx + 1]
movsxd rax, r14d
imul rdx, rax, 0xb
movsxd rax, ecx
add rdx, rax
lea rbx, [rbp + 0x418]
lea rbx, [rbx + rdx*8]
movzx eax, byte [rbx]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp al, 0x58
jne 0x140002ea9
lea rdx, [0x1400078f8]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rbx], 0x48
jmp 0x140002eea
cmp al, 0x20
jne 0x140002ece
lea rdx, [0x140007908]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rbx], 0x4d
jmp 0x140002eea
lea rdx, [0x140007920]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 r9d, 1
lea r8, [rbp + 0x420]
nop word [rax + rax]
mov edx, 1
mov rcx, r8
nop dword [rax + rax]
movzx eax, byte [rcx]
sub al, 0x48
test al, 0xef
je 0x140002f3d
inc edx
add rcx, 8
cmp edx, 0xb
jl 0x140002f10
inc r9d
add r8, 0x58
cmp r9d, 0xb
jl 0x140002f00
lea rdx, [0x140007c58]
jmp 0x14000367e
cmp byte [rsp + 0x5a], 0
jne 0x14000302e
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov ebx, eax
mov eax, 0x66666667
imul ebx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub ebx, ecx
lea edi, [rbx + 1]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub r8d, ecx
lea esi, [r8 + 1]
movsxd rdx, ebx
inc rdx
movsxd r9, r8d
inc r9
imul rcx, rdx, 0xb
add rcx, r9
cmp byte [rsp + rcx*8 + 0x70], 0x20
jne 0x140002f48
cmp byte [rbp + rcx + 0x33b], 0
jne 0x140002f48
imul rcx, rdx, 0xb
add rcx, r9
mov byte [rbp + rcx + 0x33b], 1
lea rbx, [rsp + 0x70]
lea rbx, [rbx + rcx*8]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp byte [rbx], 0x58
jne 0x14000300a
lea rdx, [0x140007950]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rbx], 0x48
mov dword [rbp + 0x3b4], edi
mov dword [rbp + 0x3b8], esi
jmp 0x14000323d
lea rdx, [0x140007968]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rbx], 0x4d
jmp 0x14000323d
movsxd rdx, dword [rbp + 0x3b4]
test edx, edx
je 0x140003165
movsxd rbx, dword [rbp + 0x3b8]
test ebx, ebx
je 0x140003165
lea edi, [rdx - 1]
cmp edi, 1
jl 0x140003075
movsxd rax, edi
imul r8, rax, 0xb
add r8, rbx
cmp byte [rsp + r8*8 + 0x70], 0x4d
je 0x140003075
cmp byte [rbp + r8 + 0x33b], 0
je 0x1400031c7
lea edi, [rdx + 1]
cmp edi, 0xb
jge 0x14000309e
movsxd rax, edi
imul r8, rax, 0xb
add r8, rbx
cmp byte [rsp + r8*8 + 0x70], 0x4d
je 0x14000309e
cmp byte [rbp + r8 + 0x33b], 0
je 0x1400031c7
lea r8d, [rbx - 1]
cmp r8d, 1
jl 0x1400030cf
imul r9, rdx, 0xb
movsxd rax, r8d
add r9, rax
cmp byte [rsp + r9*8 + 0x70], 0x4d
je 0x1400030cf
cmp byte [rbp + r9 + 0x33b], 0
jne 0x1400030cf
mov edi, edx
mov ebx, r8d
jmp 0x1400031c7
inc ebx
cmp ebx, 0xb
jge 0x1400030fa
imul r8, rdx, 0xb
movsxd rax, ebx
add r8, rax
cmp byte [rsp + r8*8 + 0x70], 0x4d
je 0x1400030fa
cmp byte [rbp + r8 + 0x33b], 0
jne 0x1400030fa
mov edi, edx
jmp 0x1400031c7
mov qword [rbp + 0x3b4], r15
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov edi, eax
mov eax, 0x66666667
imul edi
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub edi, ecx
inc edi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov ebx, eax
mov eax, 0x66666667
imul ebx
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
sub ebx, ecx
inc ebx
movsxd rax, edi
imul rdx, rax, 0xb
movsxd rax, ebx
add rdx, rax
cmp byte [rsp + rdx*8 + 0x70], 0x20
jne 0x140003101
cmp byte [rbp + rdx + 0x33b], 0
jne 0x140003101
jmp 0x1400031c7
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov edi, eax
mov eax, 0x66666667
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub edi, eax
inc edi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov ebx, eax
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
add eax, eax
sub ebx, eax
inc ebx
movsxd rax, edi
imul rdx, rax, 0xb
movsxd rax, ebx
add rdx, rax
cmp byte [rsp + rdx*8 + 0x70], 0x20
jne 0x140003165
cmp byte [rbp + rdx + 0x33b], 0
jne 0x140003165
movsxd rax, edi
imul rdx, rax, 0xb
movsxd rax, ebx
add rdx, rax
mov byte [rbp + rdx + 0x33b], 1
lea rsi, [rsp + 0x70]
lea rsi, [rsi + rdx*8]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp byte [rsi], 0x58
jne 0x14000321e
lea rdx, [0x140007950]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rsi], 0x48
mov dword [rbp + 0x3b4], edi
mov dword [rbp + 0x3b8], ebx
jmp 0x14000323d
lea rdx, [0x140007968]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
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 [rsi], 0x4d
mov r9d, 1
lea r8, [rbp - 0x30]
nop word [rax + rax]
mov edx, 1
mov rcx, r8
nop dword [rax + rax]
movzx eax, byte [rcx]
sub al, 0x48
test al, 0xef
je 0x14000328d
inc edx
add rcx, 8
cmp edx, 0xb
jl 0x140003260
inc r9d
add r8, 0x58
cmp r9d, 0xb
jl 0x140003250
lea rdx, [0x140007c68]
jmp 0x14000367e
lea rdx, [0x140005060]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
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 rcx, rax
lea rdx, [0x140007c80]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x140007c00]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
mov rcx, rax
lea rdx, [0x140005060]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [rsp + 0x5d]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___bool____ptr64____ptr64]
cmp byte [rsp + 0x5d], 0
je 0x140002d72
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x50], 0xf
mov byte [rsp + 0x38], 0
mov r8d, 0xc
lea rcx, [rsp + 0x38]
call fcn.140004660
nop
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x70]
call fcn.1400016e0
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 0x10
jb 0x140002d72
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003371
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000337b
call fcn.140005a8c
jmp 0x140002d72
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp al, 1
jne 0x14000369a
xor edx, edx
mov r8d, 0x3c8
lea rcx, [rbp + 0x3c0]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x3c0]
call fcn.140004940
xor edx, edx
mov r8d, 0x3c8
lea rcx, [rbp + 0x810]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp + 0x810]
call fcn.140004940
mov rcx, r15
nop dword [rax]
mov byte [rbp + rcx + 0x3c0], 0x20
mov dword [rbp + rcx + 0x3c4], r15d
mov byte [rbp + rcx + 0x810], 0x20
mov dword [rbp + rcx + 0x814], r15d
mov byte [rbp + rcx + 0x3c8], 0x20
mov dword [rbp + rcx + 0x3cc], r15d
mov byte [rbp + rcx + 0x818], 0x20
mov dword [rbp + rcx + 0x81c], r15d
mov byte [rbp + rcx + 0x3d0], 0x20
mov dword [rbp + rcx + 0x3d4], r15d
mov byte [rbp + rcx + 0x820], 0x20
mov dword [rbp + rcx + 0x824], r15d
mov byte [rbp + rcx + 0x3d8], 0x20
mov dword [rbp + rcx + 0x3dc], r15d
mov byte [rbp + rcx + 0x828], 0x20
mov dword [rbp + rcx + 0x82c], r15d
mov byte [rbp + rcx + 0x3e0], 0x20
mov dword [rbp + rcx + 0x3e4], r15d
mov byte [rbp + rcx + 0x830], 0x20
mov dword [rbp + rcx + 0x834], r15d
mov byte [rbp + rcx + 0x3e8], 0x20
mov dword [rbp + rcx + 0x3ec], r15d
mov byte [rbp + rcx + 0x838], 0x20
mov dword [rbp + rcx + 0x83c], r15d
mov byte [rbp + rcx + 0x3f0], 0x20
mov dword [rbp + rcx + 0x3f4], r15d
mov byte [rbp + rcx + 0x840], 0x20
mov dword [rbp + rcx + 0x844], r15d
mov byte [rbp + rcx + 0x3f8], 0x20
mov dword [rbp + rcx + 0x3fc], r15d
mov byte [rbp + rcx + 0x848], 0x20
mov dword [rbp + rcx + 0x84c], r15d
mov byte [rbp + rcx + 0x400], 0x20
mov dword [rbp + rcx + 0x404], r15d
mov byte [rbp + rcx + 0x850], 0x20
mov dword [rbp + rcx + 0x854], r15d
mov byte [rbp + rcx + 0x408], 0x20
mov dword [rbp + rcx + 0x40c], r15d
mov byte [rbp + rcx + 0x858], 0x20
mov dword [rbp + rcx + 0x85c], r15d
mov byte [rbp + rcx + 0x410], 0x20
mov dword [rbp + rcx + 0x414], r15d
mov byte [rbp + rcx + 0x860], 0x20
mov dword [rbp + rcx + 0x864], r15d
add rcx, 0x58
cmp rcx, 0x3c8
jl 0x1400033d0
lea rcx, [rbp + 0x3c0]
call fcn.1400020e0
lea rcx, [rbp + 0x810]
call fcn.1400020e0
nop dword [rax]
lea rcx, [rbp + 0x3c0]
call fcn.140001e10
movzx eax, byte [rbp + 0x33a]
mov byte [rsp + 0x28], al
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x3b4]
lea r8, [rbp + 0x33b]
lea rcx, [rbp + 0x3c0]
call fcn.140002500
mov r8d, 1
lea r9, [rbp + 0x870]
nop word [rax + rax]
mov ecx, 1
mov rdx, r9
nop dword [rax + rax]
movzx eax, byte [rdx]
sub al, 0x48
test al, 0xef
je 0x1400035ed
inc ecx
add rdx, 8
cmp ecx, 0xb
jl 0x1400035c0
inc r8d
add r9, 0x58
cmp r8d, 0xb
jl 0x1400035b0
lea rdx, [0x140007cb0]
jmp 0x14000367e
lea rcx, [rbp + 0x810]
call fcn.140001e10
movzx eax, byte [rbp + 0x33a]
mov byte [rsp + 0x28], al
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x3b4]
lea r8, [rbp + 0x33b]
lea rcx, [rbp + 0x810]
call fcn.140002500
mov r8d, 1
lea r9, [rbp + 0x420]
nop word [rax + rax]
mov eax, 1
mov rdx, r9
nop dword [rax + rax]
movzx ecx, byte [rdx]
sub cl, 0x48
test cl, 0xef
je 0x1400036ed
inc eax
add rdx, 8
cmp eax, 0xb
jl 0x140003650
inc r8d
add r9, 0x58
cmp r8d, 0xb
jl 0x140003640
lea rdx, [0x140007cd0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [0x140005060]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdx, [0x140007cf0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140004e90
lea rdx, [rsp + 0x68]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_istream_char__struct_std::char_traits_char__::operator___int____ptr64____ptr64]
xor eax, eax
mov rcx, qword [rbp + 0xbe0]
xor rcx, rsp
call fcn.1400057e0
lea r11, [rsp + 0xcf0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
mov ecx, 0xfa
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003560