Function at 0x180011384
Capabilities:
Allocate or change rwx memory

Disassembly:
jmp 0x180012400
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x1f8
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x46
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x218]
mov rax, qword [section..data]
xor rax, rbp
mov qword [rbp + 0x1c8], rax
lea rcx, [0x1800250bb]
call fcn.1800113ac
nop
mov dword [rbp + 4], 0
lea rdx, str.Target_:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18001107d
lea rdx, [0x180011370]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [rbp + 0x1f0]
mov rcx, rax
call fcn.18001107d
lea rdx, [0x180011037]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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]
nop
lea rdx, str.Hook_:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18001107d
lea rdx, [0x180011370]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [rbp + 0x1f8]
mov rcx, rax
call fcn.18001107d
lea rdx, [0x180011037]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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]
nop
lea rdx, [rbp + 0x28]
mov rcx, qword [rbp + 0x1f0]
call fcn.180012110
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0
je 0x180012507
mov eax, dword [rbp + 4]
jmp 0x18001279c
lea rdx, str.Trampoline
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18001107d
lea rdx, [0x180011370]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rdx, qword [rbp + 0x28]
mov rcx, rax
call fcn.18001107d
lea rdx, [0x180011037]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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]
nop
mov byte [rbp + 0x48], 0x49
mov byte [rbp + 0x49], 0xba
mov byte [rbp + 0x4a], 0
mov byte [rbp + 0x4b], 0
mov byte [rbp + 0x4c], 0
mov byte [rbp + 0x4d], 0
mov byte [rbp + 0x4e], 0
mov byte [rbp + 0x4f], 0
mov byte [rbp + 0x50], 0
mov byte [rbp + 0x51], 0
mov byte [rbp + 0x52], 0x41
mov byte [rbp + 0x53], 0xff
mov byte [rbp + 0x54], 0xe2
lea rax, [rbp + 0x4a]
mov r8d, 8
lea rdx, [rbp + 0x1f8]
mov rcx, rax
call fcn.1800111d6
nop
mov r8d, 0xd
mov rdx, qword [rbp + 0x1f0]
lea rcx, [rbp + 0x48]
call fcn.1800111d6
nop
mov rax, qword [rbp + 0x28]
add rax, 0xd
mov rcx, qword [rbp + 0x200]
mov qword [rcx], rax
movsxd rax, dword [rbp + 0x208]
lea r9, [rbp + 0x74]
mov r8d, 0x40
mov rdx, rax
mov rcx, qword [rbp + 0x1f0]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
movsxd rax, dword [rbp + 0x208]
mov r8, rax
mov rdx, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x28]
call fcn.1800111d6
nop
movsxd rax, dword [rbp + 0x208]
mov rcx, qword [rbp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rbp + 0x28], rax
mov byte [rbp + 0x94], 0xe9
mov byte [rbp + 0x95], 0
mov byte [rbp + 0x96], 0
mov byte [rbp + 0x97], 0
mov byte [rbp + 0x98], 0
movsxd rax, dword [rbp + 0x208]
mov rcx, qword [rbp + 0x1f0]
add rcx, rax
mov rax, rcx
lea rcx, [rbp + 0x95]
mov r8d, 4
mov rdx, rax
call fcn.1800111d6
nop
mov r8d, 5
lea rdx, [rbp + 0x94]
mov rcx, qword [rbp + 0x28]
call fcn.1800111d6
nop
mov byte [rbp + 0xb4], 0xe9
mov byte [rbp + 0xb5], 0
mov byte [rbp + 0xb6], 0
mov byte [rbp + 0xb7], 0
mov byte [rbp + 0xb8], 0
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x28]
sub rcx, rax
mov rax, rcx
lea rcx, [rbp + 0xb5]
mov r8d, 4
mov rdx, rax
call fcn.1800111d6
nop
mov r8d, 5
lea rdx, [rbp + 0xb4]
mov rcx, qword [rbp + 0x1f0]
call fcn.1800111d6
nop
mov byte [rbp + 0xd4], 0x90
mov dword [rbp + 0xf4], 5
jmp 0x1800126f9
mov eax, dword [rbp + 0xf4]
inc eax
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0x208]
cmp dword [rbp + 0xf4], eax
jge 0x180012733
movsxd rax, dword [rbp + 0xf4]
mov rcx, qword [rbp + 0x1f0]
add rcx, rax
mov rax, rcx
mov r8d, 1
lea rdx, [rbp + 0xd4]
mov rcx, rax
call fcn.1800111d6
nop
jmp 0x1800126eb
movsxd rax, dword [rbp + 0x208]
lea r9, [rbp + 0x74]
mov r8d, dword [rbp + 0x74]
mov rdx, rax
mov rcx, qword [rbp + 0x1f0]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
lea rdx, str.Original_function_:
mov rcx, qword [sym.imp.MSVCP140D.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.18001107d
lea rdx, [0x180011370]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov rcx, qword [rbp + 0x200]
mov rdx, qword [rcx]
mov rcx, rax
call qword [sym.imp.MSVCP140D.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___void_const____ptr64____ptr64]
lea rdx, [0x180011037]
mov rcx, rax
call qword [sym.imp.MSVCP140D.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]
nop
xor eax, eax
mov rdi, rax
lea rcx, [rbp - 0x20]
lea rdx, [0x18001ba60]
call fcn.18001132f
mov rax, rdi
mov rcx, qword [rbp + 0x1c8]
xor rcx, rbp
call fcn.1800111d1
lea rsp, [rbp + 0x1d8]
pop rdi
pop rbp
ret