Function at 0x140001460
Capabilities:
Allocate or change rwx memory
Check for peb beingdebugged flag
Terminate process

Disassembly:
push rbp
push r12
sub rsp, 0xc8
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov r12d, r9d
mov r9d, 0x64
lea r8, [0x140177560]
lea edx, [r9 + 3]
mov rbp, rcx
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x64
lea r8, [0x140177630]
lea edx, [r9 + 9]
mov rcx, rbp
call qword [sym.imp.USER32.dll_LoadStringW]
mov rcx, rbp
call fcn.1400018e0
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x1400014f2
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140003430]
call fcn.140001af0
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
xor ecx, ecx
call qword [sym.imp.MSVCR100.dll_exit]
int3
mov rax, qword gs:[0x60]
cmp byte [rax + 2], 0
je 0x14000152d
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140003440]
call fcn.140001af0
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
xor ecx, ecx
call qword [sym.imp.MSVCR100.dll_exit]
int3
call fcn.140001280
test al, al
je 0x140001562
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [0x140003458]
call fcn.140001af0
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
xor ecx, ecx
call qword [sym.imp.MSVCR100.dll_exit]
int3
call fcn.140001370
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
test al, al
je 0x140001597
lea rdx, [0x140003468]
call fcn.140001af0
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
xor ecx, ecx
call qword [sym.imp.MSVCR100.dll_exit]
int3
mov qword [rsp + 0xe8], rbx
lea rdx, str.28_
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xc0], rdi
call fcn.140001af0
mov edx, 0x100
mov rcx, rax
call qword [sym.imp.MSVCP100.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 rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Number_is_even:
call fcn.140001af0
xor edx, edx
mov rcx, rax
call qword [sym.imp.MSVCP100.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___bool____ptr64]
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Number_is_odd:
call fcn.140001af0
mov dl, 1
mov rcx, rax
call qword [sym.imp.MSVCP100.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___bool____ptr64]
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Average:
call fcn.140001af0
mov rcx, rax
movsd xmm1, qword [0x140003518]
call qword [sym.imp.MSVCP100.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___double____ptr64]
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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 ebx, 0x2a
mov dword [rsp + 0x9c], 7
mov dword [rsp + 0x98], ebx
mov dword [rsp + 0xa0], 0x12
mov dword [rsp + 0xa4], 0x38
lea edx, [rbx - 0x26]
mov dword [rsp + 0xa8], 0x63
mov edi, ebx
lea rcx, [rsp + 0x9c]
nop
mov eax, dword [rcx]
cmp eax, ebx
cmovg ebx, eax
cmp eax, edi
cmovl edi, eax
add rcx, 4
dec rdx
jne 0x1400016b0
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Max:
call fcn.140001af0
mov edx, ebx
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
lea rdx, str.__Min:
mov rcx, rax
call fcn.140001af0
mov edx, edi
mov rcx, rax
call qword [sym.imp.MSVCP100.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 rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, rax
call qword [sym.imp.MSVCP100.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 edi, 1
nop word [rax + rax]
mov ebx, 1
mov esi, edi
nop word [rax + rax]
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov edx, edi
call qword [sym.imp.MSVCP100.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]
lea rdx, [0x1400033ac]
mov rcx, rax
call fcn.140001af0
mov edx, ebx
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
lea rdx, [0x14000339c]
mov rcx, rax
call fcn.140001af0
mov edx, esi
mov rcx, rax
call qword [sym.imp.MSVCP100.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]
lea rdx, [0x140003384]
mov rcx, rax
call fcn.140001af0
inc ebx
add esi, edi
cmp ebx, 9
jle 0x140001730
mov rdx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::endl_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_]
mov rcx, qword [sym.imp.MSVCP100.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call qword [sym.imp.MSVCP100.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]
inc edi
cmp edi, 2
jle 0x140001720
call section..text
xor ebx, ebx
lea r9, [rsp + 0x60]
lea r8d, [rbx + 0x40]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x60], ebx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], 0x80000000
lea r8, [0x140177560]
lea rdx, [0x140177630]
mov r9d, 0xcf0000
xor ecx, ecx
mov dword [rsp + 0x28], ebx
mov qword [0x140177628], rbp
mov dword [rsp + 0x20], 0x80000000
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rdi, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xf0]
mov rbx, rax
test rax, rax
je 0x1400018b8
mov edx, r12d
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, rbx
call qword [sym.imp.USER32.dll_UpdateWindow]
mov edx, 0x6d
mov rcx, rbp
call qword [sym.imp.USER32.dll_LoadAcceleratorsW]
lea rcx, [rsp + 0x68]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rbx, rax
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x1400018b4
mov rcx, qword [rsp + 0x68]
lea r8, [rsp + 0x68]
mov rdx, rbx
call qword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x14000189d
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rsp + 0x68]
call qword [sym.imp.USER32.dll_DispatchMessageW]
lea rcx, [rsp + 0x68]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jne 0x140001870
mov eax, dword [rsp + 0x78]
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.140001d00
add rsp, 0xc8
pop r12
pop rbp
ret