Function at 0x140003d70
Capabilities:
Execute command

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x140022040]
xor rax, rsp
mov qword [rbp + 0x30], 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 ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
mov r8d, 2
call fcn.140014f70
lea rcx, [0x140022138]
call fcn.1400154b0
lea r12, [0x140022130]
test rax, rax
jne 0x140003e07
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x60], xmm0
movdqa xmm1, xmmword [0x14001eae0]
movdqa xmmword [rbp - 0x50], xmm1
mov dword [rbp - 0x40], 0x1e
movups xmmword [rbp - 0x38], xmm0
xor r14d, r14d
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], r14b
movdqa xmmword [rbp - 0x10], xmm0
mov qword [rbp], r14
mov dword [rbp + 8], 0x1e
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], r14b
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.140007ba0
cmp dword [0x140022b98], 5
je 0x140005a74
movabs r13, 0x7fffffffffffffff
movabs r15, 0x8000000000000000
mov r12d, 0x16
lea rbx, [0x140022de0]
cmp dword [0x140022b98], 3
jne 0x1400041d4
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.140006580
mov dword [0x140022bb0], eax
test eax, eax
je 0x1400040a1
sub eax, 1
je 0x140003fba
cmp eax, 1
jne 0x140005a67
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rdx, [0x1400234e0]
cmp qword [0x1400234f8], 0xf
cmova rdx, qword [0x1400234e0]
mov r8, qword [0x1400234f0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [0x1400234e0]
cmp qword [0x1400234f8], 0xf
cmova rsi, qword [0x1400234e0]
mov rdi, qword [0x1400234f0]
cmp rdi, r13
ja 0x140005bcc
cmp rdi, 0xf
jbe 0x14000410a
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140003f62
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140003f95
cmp rbx, 0x16
cmovb rbx, r12
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140003f7b
mov rax, r14
jmp 0x14000418d
cmp rcx, 0x1000
jb 0x140004188
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bc6
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005ab9
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000418d
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rdx, [0x140022c20]
cmp qword [0x140022c38], 0xf
cmova rdx, qword [0x140022c20]
mov r8, qword [0x140022c30]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [0x140022c20]
cmp qword [0x140022c38], 0xf
cmova rsi, qword [0x140022c20]
mov rdi, qword [0x140022c30]
cmp rdi, r13
ja 0x140005bd8
cmp rdi, 0xf
jbe 0x14000410a
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140004049
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x14000407c
cmp rbx, 0x16
cmovb rbx, r12
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004062
mov rax, r14
jmp 0x14000418d
cmp rcx, 0x1000
jb 0x140004188
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bd2
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005ac0
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000418d
lea rdx, [0x140022c00]
cmp qword [0x140022c18], 0xf
cmova rdx, qword [0x140022c00]
mov r8, qword [0x140022c10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [0x140022c00]
cmp qword [0x140022c18], 0xf
cmova rsi, qword [0x140022c00]
mov rdi, qword [0x140022c10]
cmp rdi, r13
ja 0x140005be4
cmp rdi, 0xf
ja 0x140004125
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x1400041ab
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x14000413a
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140004166
cmp rbx, 0x16
cmovb rbx, r12
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004150
mov rax, r14
jmp 0x14000418d
cmp rcx, 0x1000
jb 0x140004188
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bde
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005ac7
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000418d
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rcx, str.pause
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.140007ba0
jmp 0x140005a67
cmp dword [0x140022b98], 2
jne 0x140005a67
call fcn.1400061b0
mov rdx, rbx
cmp qword [0x140022df8], 0xf
cmova rdx, qword [0x140022de0]
mov r8, qword [0x140022df0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140022df8], 0xf
cmova rsi, qword [0x140022de0]
mov rdi, qword [0x140022df0]
cmp rdi, r13
ja 0x140005bc0
cmp rdi, 0xf
ja 0x140004262
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x1400042e8
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140004277
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400042a3
cmp rbx, 0x16
cmovb rbx, r12
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14000428d
mov rax, r14
jmp 0x1400042ca
cmp rcx, 0x1000
jb 0x1400042c5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bea
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005ace
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400042ca
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.140016070
lea rdx, [0x1400220c8]
mov rdi, qword [0x1400220c8]
mov rsi, qword [0x1400220e0]
cmp rsi, 0xf
cmova rdx, rdi
lea rcx, [rbp - 0x38]
mov r14, qword [rbp - 0x38]
mov r15, qword [rbp - 0x20]
cmp r15, 0xf
cmova rcx, r14
mov rbx, qword [rbp - 0x28]
mov r12, qword [0x1400220d8]
cmp rbx, r12
jne 0x14000436c
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400044d2
lea rdx, [0x140022de0]
lea rcx, [rsp + 0x78]
call fcn.140015190
mov rdi, rax
mov qword [rsp + 0x48], rax
lea rsi, [rax + 0x18]
lea r13, [0x140022130]
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
jbe 0x1400043a3
mov rax, qword [rbp - 0x38]
lea rsi, [rdi + 0x18]
cmp byte [rax], 0x2a
jne 0x14000445c
mov r8d, 8
call fcn.140014f70
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x28]
mov rcx, r13
call fcn.140015eb0
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x14000440e
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r13
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov rdx, rdi
lea rsi, [rdi + 0x18]
cmp qword [rsi], 0xf
jbe 0x14000441e
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.140016070
jmp 0x140004390
mov rdx, qword [rsi]
cmp rdx, 0xf
movabs r13, 0x7fffffffffffffff
jbe 0x14000449f
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14000449a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140005ad5
mov rcx, r8
call fcn.14001661c
mov qword [rdi + 0x10], 0
mov qword [rsi], 0xf
mov byte [rdi], 0
mov r15, qword [rbp - 0x20]
mov rbx, qword [rbp - 0x28]
mov r14, qword [rbp - 0x38]
mov rsi, qword [0x1400220e0]
mov r12, qword [0x1400220d8]
mov rdi, qword [0x1400220c8]
lea rdx, [0x1400220c8]
cmp rsi, 0xf
cmova rdx, rdi
lea rcx, [rbp - 0x38]
cmp r15, 0xf
cmova rcx, r14
cmp rbx, r12
jne 0x140004525
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140004525
lea rdx, [0x140022be0]
cmp qword [0x140022bf8], 0xf
cmova rdx, qword [0x140022be0]
mov r8, qword [0x140022bf0]
lea rcx, [rbp - 0x38]
call fcn.140015570
lea rdx, [rbp - 0x38]
lea rcx, [rsp + 0x20]
call fcn.140015190
mov rcx, rax
call fcn.140005d80
cmp byte [0x140022b90], 0
je 0x140004a84
lea r12, [0x1400233c0]
mov rdx, r12
cmp qword [0x1400233d8], 0xf
cmova rdx, qword [0x1400233c0]
mov r8, qword [0x1400233d0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xor r14d, r14d
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, r12
cmp qword [0x1400233d8], 0xf
cmova rsi, qword [0x1400233c0]
mov rdi, qword [0x1400233d0]
cmp rdi, r13
ja 0x140005c02
cmp rdi, 0xf
ja 0x1400045d8
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
movabs r15, 0x8000000000000000
jmp 0x140004681
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400045f7
mov rbx, r13
movabs r15, 0x8000000000000000
lea rax, [r15 + 0x27]
jmp 0x140004632
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004612
mov rax, r14
jmp 0x140004659
cmp rcx, 0x1000
jb 0x140004654
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bf0
movabs r15, 0x8000000000000000
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005adc
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004663
call fcn.1400162d0
movabs r15, 0x8000000000000000
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [0x1400220e8]
mov rcx, rbx
call fcn.140016070
lea rax, [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov rdx, r12
lea rcx, [rsp + 0x20]
call fcn.140015190
mov rbx, rax
lea rdx, [0x1400220e8]
lea rcx, [rsp + 0x58]
call fcn.140015190
nop
lea r8, [rbp]
mov rdx, rbx
mov rcx, rax
call fcn.140005f00
lea rdi, [0x140022d40]
nop dword [rax]
mov ebx, dword [rbp]
lea eax, [rbx + 0xa]
cmp eax, 0x14
jbe 0x1400047a1
mov rdx, rdi
cmp qword [0x140022d58], 0xf
cmova rdx, qword [0x140022d40]
mov r8, qword [0x140022d50]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [0x1400220e8]
mov rcx, rbx
call fcn.140016070
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov rdx, rdi
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rbx, rax
lea rdx, [0x1400220e8]
lea rcx, [rsp + 0x20]
call fcn.140015190
nop
lea r8, [rbp]
mov rdx, rbx
mov rcx, rax
call fcn.140005f00
jmp 0x140004700
mov r8d, 8
call fcn.140014f70
lea r12, [0x140022130]
cmp qword [0x1400221b8], 0
je 0x140004805
mov edx, ebx
mov rcx, r12
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___int____ptr64]
mov rcx, rax
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x140004805
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rbx, [0x1400232a0]
mov rdx, rbx
cmp qword [0x1400232b8], 0xf
cmova rdx, qword [0x1400232a0]
mov r8, qword [0x1400232b0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x1400232b8], 0xf
cmova rsi, qword [0x1400232a0]
mov rdi, qword [0x1400232b0]
cmp rdi, r13
ja 0x140005bfc
cmp rdi, 0xf
ja 0x140004895
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140004920
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400048aa
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400048db
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400048c5
mov rax, r14
jmp 0x140004902
cmp rcx, 0x1000
jb 0x1400048fd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005bf6
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005ae3
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004902
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
mov rax, qword [rbx]
movsxd rcx, dword [rax + 4]
add rcx, rbx
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [0x1400220e8]
mov rcx, rbx
call fcn.140016070
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
lea rdx, [0x1400232a0]
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rbx, rax
lea rdx, [0x1400220e8]
lea rcx, [rsp + 0x20]
call fcn.140015190
nop
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rax
call fcn.140005f00
mov r8d, 8
call fcn.140014f70
mov ebx, dword [rsp + 0x50]
cmp qword [0x1400221b8], 0
je 0x1400049f7
mov edx, ebx
mov rcx, r12
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___int____ptr64]
mov rcx, rax
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x1400049f7
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
sub ebx, 1
je 0x140004a79
sub ebx, 1
je 0x140004a6e
cmp ebx, 1
je 0x140004a63
lea rdx, [0x1400232e0]
cmp qword [0x1400232f8], 0xf
cmova rdx, qword [0x1400232e0]
mov r8, qword [0x1400232f0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
lea rdx, [0x1400232e0]
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rcx, rax
call fcn.140005d80
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
jmp 0x140004a91
lea rcx, [rbp]
call fcn.140013470
jmp 0x140004a91
lea rcx, [rbp]
call fcn.1400125d0
jmp 0x140004a91
lea rcx, [rbp]
call fcn.140011580
jmp 0x140004a91
xor r14d, r14d
movabs r15, 0x8000000000000000
lea rdx, [0x140022d20]
cmp qword [0x140022d38], 0xf
cmova rdx, qword [0x140022d20]
mov r8, qword [0x140022d30]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
lea rdx, [0x140022d20]
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rcx, rax
call fcn.140005d80
lea rcx, [rbp - 4]
call fcn.140008420
mov ebx, dword [rbp - 4]
mov r8d, 8
call fcn.140014f70
lea r12, [0x140022130]
cmp qword [0x1400221b8], 0
je 0x140004b44
mov edx, ebx
mov rcx, r12
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___int____ptr64]
mov rcx, rax
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x140004b44
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
lea rdx, [0x1400222d8]
cmp qword [0x1400222f0], 0xf
cmova rdx, qword [0x1400222d8]
mov r8, qword [0x1400222e8]
lea rcx, [rbp + 0x10]
call fcn.140015570
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
sub r8d, ecx
mov ecx, r14d
cmp r8d, 0x32
setl cl
add ecx, 2
mov dword [rbp - 0x54], ecx
lea rdx, [0x14001c790]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015720
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
sub r8d, ecx
lea ecx, [r8 + 1]
mov dword [0x140022ba4], ecx
mov eax, r14d
cmp ecx, 0x28
setle al
inc eax
mov dword [0x140022ba0], eax
lea rbx, [0x140022d60]
mov r8, qword [0x140022d70]
mov rdx, rbx
cmp ecx, 0x28
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jle 0x140004d5c
cmp qword [0x140022d78], 0xf
cmova rdx, qword [0x140022d60]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140022d78], 0xf
cmova rsi, qword [0x140022d60]
mov rdi, qword [0x140022d70]
cmp rdi, r13
ja 0x140005c0e
cmp rdi, 0xf
ja 0x140004c84
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140004d0f
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140004c99
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140004cca
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004cb4
mov rax, r14
jmp 0x140004cf1
cmp rcx, 0x1000
jb 0x140004cec
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c08
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005aea
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004cf1
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x20]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
lea rdx, [0x14001c794]
mov rcx, rax
call fcn.140015720
lea rdx, [rbp + 0x10]
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rcx, rax
jmp 0x140004f67
cmp qword [0x140022d78], 0xf
cmova rdx, qword [0x140022d60]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140022d78], 0xf
cmova rsi, qword [0x140022d60]
mov rdi, qword [0x140022d70]
cmp rdi, r13
ja 0x140005c92
cmp rdi, 0xf
ja 0x140004dc7
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140004e52
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140004ddc
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140004e0d
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004df7
mov rax, r14
jmp 0x140004e34
cmp rcx, 0x1000
jb 0x140004e2f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c14
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005af1
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004e34
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x28]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
lea rdx, [0x14001c794]
mov rcx, rax
call fcn.140015720
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rsi, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x28]
cmp rdi, r13
ja 0x140005c8c
cmp rdi, 0xf
ja 0x140004ed7
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140004f62
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x140004eec
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140004f1d
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140004f07
mov rax, r14
jmp 0x140004f44
cmp rcx, 0x1000
jb 0x140004f3f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c1a
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005af8
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140004f44
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.14000f560
lea rdx, [0x140022cc0]
cmp qword [0x140022cd8], 0xf
cmova rdx, qword [0x140022cc0]
mov r8, qword [0x140022cd0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
lea rdx, [0x140022cc0]
lea rcx, [rsp + 0x58]
call fcn.140015190
mov rcx, rax
call fcn.140005d80
lea rcx, str.pause
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rcx, [0x14001c784]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rbx, [0x140022d00]
mov rdx, rbx
cmp qword [0x140022d18], 0xf
cmova rdx, qword [0x140022d00]
mov r8, qword [0x140022d10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140022d18], 0xf
cmova rsi, qword [0x140022d00]
mov rdi, qword [0x140022d10]
cmp rdi, r13
ja 0x140005c86
cmp rdi, 0xf
ja 0x140005059
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x1400050e4
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x14000506e
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x14000509f
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140005089
mov rax, r14
jmp 0x1400050c6
cmp rcx, 0x1000
jb 0x1400050c1
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c20
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005aff
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1400050c6
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
mov eax, r14d
cmp dword [0x140022ba0], 1
sete al
inc eax
mov dword [0x140022ba0], eax
mov dword [0x140022bb4], r14d
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.14000f560
lea rbx, [0x140023140]
mov rdx, rbx
cmp qword [0x140023158], 0xf
cmova rdx, qword [0x140023140]
mov r8, qword [0x140023150]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140023158], 0xf
cmova rsi, qword [0x140023140]
mov rdi, qword [0x140023150]
cmp rdi, r13
ja 0x140005c80
cmp rdi, 0xf
ja 0x14000519a
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140005225
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400051af
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400051e0
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400051ca
mov rax, r14
jmp 0x140005207
cmp rcx, 0x1000
jb 0x140005202
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c26
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b06
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005207
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x20]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rsi, qword [rbp + 0x10]
mov rdi, qword [rbp + 0x20]
cmp rdi, r13
ja 0x140005c7a
cmp rdi, 0xf
ja 0x14000529b
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140005326
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400052b0
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400052e1
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400052cb
mov rax, r14
jmp 0x140005308
cmp rcx, 0x1000
jb 0x140005303
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c2c
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b0d
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005308
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
mov dl, 0x20
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015900
mov edx, dword [rbp - 0x10]
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___int____ptr64]
mov ebx, dword [rbp - 0x10]
mov r8d, 8
call fcn.140014f70
cmp qword [0x1400221b8], 0
je 0x1400053ae
mov edx, ebx
mov rcx, r12
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___int____ptr64]
mov rcx, rax
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x1400053ae
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov dl, 0x20
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015900
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x28]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rsi, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x28]
cmp rdi, r13
ja 0x140005c74
cmp rdi, 0xf
ja 0x140005428
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x1400054b3
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x14000543d
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x14000546e
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140005458
mov rax, r14
jmp 0x140005495
cmp rcx, 0x1000
jb 0x140005490
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c32
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b14
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005495
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [0x14001a848]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015720
mov edx, dword [rbp - 0x60]
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___int____ptr64]
mov rcx, rax
lea rdx, [0x14001c798]
call fcn.140015720
mov ebx, dword [rbp - 0x60]
mov r8d, 8
call fcn.140014f70
cmp qword [0x1400221b8], 0
je 0x14000554f
mov edx, ebx
mov rcx, r12
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___int____ptr64]
mov rcx, rax
lea rdx, [0x140015ad0]
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, [0x140022138]
call fcn.1400154b0
test rax, rax
jne 0x14000554f
mov rax, qword [0x140022130]
movsxd rcx, dword [rax + 4]
add rcx, r12
xor r8d, r8d
mov edx, 2
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov eax, dword [rbp - 0x10]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
cmp eax, dword [rbp - 0x60]
jle 0x14000573a
lea r12, [0x140022d80]
mov rdx, r12
cmp qword [0x140022d98], 0xf
cmova rdx, qword [0x140022d80]
mov r8, qword [0x140022d90]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, r12
cmp qword [0x140022d98], 0xf
cmova rsi, qword [0x140022d80]
mov rdi, qword [0x140022d90]
cmp rdi, r13
ja 0x140005c4a
cmp rdi, 0xf
ja 0x1400055de
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140005669
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400055f3
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140005624
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14000560e
mov rax, r14
jmp 0x14000564b
cmp rcx, 0x1000
jb 0x140005646
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c38
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b1b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14000564b
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x20]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [rbp + 0x10]
cmp qword [rbp + 0x28], 0xf
cmova rsi, qword [rbp + 0x10]
mov rdi, qword [rbp + 0x20]
cmp rdi, r13
ja 0x140005c44
cmp rdi, 0xf
jbe 0x140005979
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400056dd
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140005715
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400056fb
mov rax, r14
jmp 0x140005a01
cmp rcx, 0x1000
jb 0x1400059fc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c3e
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b22
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005a01
jge 0x140005918
lea rbx, [0x140022d80]
mov rdx, rbx
cmp qword [0x140022d98], 0xf
cmova rdx, qword [0x140022d80]
mov r8, qword [0x140022d90]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140022d98], 0xf
cmova rsi, qword [0x140022d80]
mov rdi, qword [0x140022d90]
cmp rdi, r13
ja 0x140005c62
cmp rdi, 0xf
ja 0x1400057bc
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140005847
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400057d1
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x140005802
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400057ec
mov rax, r14
jmp 0x140005829
cmp rcx, 0x1000
jb 0x140005824
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c50
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b29
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005829
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x28]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
lea rsi, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rsi, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x28]
cmp rdi, r13
ja 0x140005c5c
cmp rdi, 0xf
jbe 0x140005979
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400058bb
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400058f3
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400058d9
mov rax, r14
jmp 0x140005a01
cmp rcx, 0x1000
jb 0x1400059fc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c56
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b30
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005a01
lea rbx, [0x140023100]
mov rdx, rbx
cmp qword [0x140023118], 0xf
cmova rdx, qword [0x140023100]
mov r8, qword [0x140023110]
call fcn.140015eb0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x38], r14
mov rsi, rbx
cmp qword [0x140023118], 0xf
cmova rsi, qword [0x140023100]
mov rdi, qword [0x140023110]
cmp rdi, r13
ja 0x140005c6e
cmp rdi, 0xf
ja 0x140005994
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
movups xmm0, xmmword [rsi]
movups xmmword [rsp + 0x20], xmm0
jmp 0x140005a1f
mov rbx, rdi
or rbx, 0xf
cmp rbx, r13
jbe 0x1400059a9
mov rbx, r13
lea rax, [r15 + 0x27]
jmp 0x1400059da
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x1400059c4
mov rax, r14
jmp 0x140005a01
cmp rcx, 0x1000
jb 0x1400059fc
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140005c68
mov rcx, rax
call fcn.1400162d0
mov rcx, rax
test rax, rax
je 0x140005b37
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x140005a01
call fcn.1400162d0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rsp + 0x20]
call fcn.140005d80
lea rdx, [0x140015ad0]
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]
lea rcx, str.pause
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x10]
call fcn.140007ba0
movabs r15, 0x8000000000000000
mov r12d, 0x16
cmp dword [0x140022b98], 5
jne 0x140003e92
mov rdx, qword [rbp + 0x28]
cmp rdx, 0xf
jbe 0x140005b43
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005b3e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140005b3e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.14001661c
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x140005b91
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005b8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140005b8c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14001661c
xor eax, eax
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.1400162b0
lea r11, [rsp + 0x140]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140003bd0
nop
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003b30
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3
call fcn.140003bd0
int3