Function at 0x18024935b
Capabilities:
Allocate or change rwx memory

Disassembly:
jmp 0x1804e5710
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rdi
sub rsp, 0x148
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x1a
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x168]
mov rax, qword [0x180ad8300]
xor rax, rbp
mov qword [rbp + 0x118], rax
lea rcx, [0x180b304f2]
call fcn.18024a9d1
nop
mov rax, qword [rbp + 0x140]
mov byte [rax], 1
mov rax, qword [rbp + 0x140]
movzx ecx, byte [rbp + 0x160]
mov byte [rax + 1], cl
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x150]
mov qword [rax + 8], rcx
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x148]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp + 0x140]
mov qword [rax + 0x18], 0
mov rax, qword [rbp + 0x140]
mov qword [rax + 0x20], 0
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x28], 0xff
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x29], 0x25
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2a], 0
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2b], 0
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2c], 0
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2d], 0
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2e], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x2f], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x30], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x31], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x32], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x33], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x34], 1
mov rax, qword [rbp + 0x140]
mov byte [rax + 0x35], 1
mov rax, qword [rbp + 0x140]
movzx eax, byte [rax + 1]
cmp eax, 5
jge 0x1804e5886
mov rcx, qword [rbp + 0x148]
call fcn.1802492d9
mov rcx, qword [rbp + 0x140]
mov byte [rcx + 1], al
mov r8d, 0x40
mov edx, 0xe
mov rax, qword [rbp + 0x140]
mov rcx, qword [rax + 0x10]
call fcn.18024995a
mov rcx, qword [rbp + 0x140]
mov qword [rcx + 0x20], rax
mov rax, qword [rbp + 0x140]
cmp qword [rax + 0x20], 0
jne 0x1804e58d3
lea rdx, str.Hook:_Failed_to_allocate_memory_n
lea rcx, [0x180ae69f0]
call fcn.18023f513
nop
jmp 0x1804e5aaa
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x140]
mov rcx, qword [rcx + 8]
mov qword [rax + 0x2e], rcx
mov rax, qword [rbp + 0x140]
add rax, 0x28
mov r8d, 0xe
mov rdx, rax
mov rax, qword [rbp + 0x140]
mov rcx, qword [rax + 0x20]
call fcn.18024418a
nop
mov rax, qword [rbp + 0x140]
movzx eax, byte [rax + 1]
add rax, 0xe
mov r9d, 0x40
mov r8d, 0x3000
mov rdx, rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rcx, qword [rbp + 0x140]
mov qword [rcx + 0x18], rax
mov rax, qword [rbp + 0x140]
cmp qword [rax + 0x18], 0
jne 0x1804e5966
lea rdx, str.Hook:_Failed_to_allocate_memory_n
lea rcx, [0x180ae69f0]
call fcn.18023f513
nop
jmp 0x1804e5aaa
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0x140]
mov rcx, qword [rcx + 0x18]
mov qword [rax], rcx
mov rax, qword [rbp + 0x140]
movzx eax, byte [rax + 1]
mov r8d, eax
mov rax, qword [rbp + 0x140]
mov rdx, qword [rax + 0x10]
mov rax, qword [rbp + 0x140]
mov rcx, qword [rax + 0x18]
call fcn.18024418a
nop
mov rax, qword [rbp + 0x140]
movzx eax, byte [rax + 1]
mov rcx, qword [rbp + 0x140]
add rax, qword [rcx + 0x10]
mov qword [rbp + 8], rax
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 8]
mov qword [rax + 0x2e], rcx
mov rax, qword [rbp + 0x140]
add rax, 0x28
mov rcx, qword [rbp + 0x140]
movzx ecx, byte [rcx + 1]
mov rdx, qword [rbp + 0x140]
add rcx, qword [rdx + 0x18]
mov r8d, 0xe
mov rdx, rax
call fcn.18024418a
nop
mov rax, qword [rbp + 0x140]
mov rax, qword [rax + 0x10]
add rax, 5
mov rcx, qword [rbp + 0x140]
mov rcx, qword [rcx + 0x20]
sub rcx, rax
mov rax, rcx
mov dword [rbp + 0x24], eax
mov dword [rbp + 0x44], 0
lea r9, [rbp + 0x44]
mov r8d, 0x40
mov edx, 5
mov rax, qword [rbp + 0x140]
mov rcx, qword [rax + 0x10]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x1804e5a62
lea rdx, str.Hook:_Failed_to_change_target_function_protection_n
lea rcx, [0x180ae69f0]
call fcn.18023f513
nop
jmp 0x1804e5aaa
mov rax, qword [rbp + 0x140]
mov rax, qword [rax + 0x10]
mov byte [rax], 0xe9
mov rax, qword [rbp + 0x140]
mov rax, qword [rax + 0x10]
mov ecx, dword [rbp + 0x24]
mov dword [rax + 1], ecx
lea r9, [rbp + 0x44]
mov r8d, dword [rbp + 0x44]
mov edx, 5
mov rax, qword [rbp + 0x140]
mov rcx, qword [rax + 0x10]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
mov rax, qword [rbp + 0x140]
mov byte [rax], 0
mov rax, qword [rbp + 0x140]
mov rdi, rax
lea rcx, [rbp - 0x20]
lea rdx, [0x1807abdc0]
call fcn.18024867c
mov rax, rdi
mov rcx, qword [rbp + 0x118]
xor rcx, rbp
call fcn.180244135
lea rsp, [rbp + 0x128]
pop rdi
pop rbp
ret