Function at 0x180123320
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
movzx ebx, cl
xor r14d, r14d
mov edx, dword [0x180a562e4]
mov rax, qword gs:[0x58]
mov ecx, 0x1c
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x180a59ef0], eax
jg 0x180123664
mov rdi, qword [0x180a57108]
test rdi, rdi
jne 0x1801233cd
lea rax, str.Failed_to_patch__at_0x:X__Invalid_address_
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], 0x2e
call fcn.1801ea340
mov qword [rbp - 0x11], r14
mov qword [rbp - 0x19], r14
mov qword [rbp - 9], r14
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
movups xmm1, xmmword [rbp - 0x19]
movaps xmmword [rbp + 7], xmm1
movsd xmm0, qword [rbp - 9]
movsd qword [rbp + 0x17], xmm0
lea r9, [rbp - 0x29]
mov r8d, 4
lea rdx, [rbp + 7]
mov rcx, rax
call fcn.1801260f0
jmp 0x180123646
test bl, bl
je 0x180123593
cmp byte [0x180a57901], r14b
jne 0x180123646
mov ecx, 5
call fcn.180337400
mov rbx, rax
mov qword [rbp - 0x19], rax
lea rcx, [rax + 5]
mov qword [rbp - 9], rcx
xor eax, eax
mov dword [rbx], eax
mov byte [rbx + 4], al
mov qword [rbp - 0x11], rcx
lea r9, [rbp + 0x6f]
mov edx, 5
mov r8d, 0x40
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [rdi]
mov dword [rbx], eax
movzx eax, byte [rdi + 4]
mov byte [rbx + 4], al
lea r9, [rbp + 0x6f]
mov r8d, dword [rbp + 0x6f]
mov edx, 5
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
lea rdx, [rbp - 0x19]
lea rcx, [0x180a57908]
call fcn.18009bb10
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x180123489
mov rdx, qword [rbp - 9]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180123484
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18012365e
call fcn.180337884
mov ecx, 5
call fcn.180337400
mov rdi, rax
mov qword [rbp + 7], rax
lea rsi, [rax + 5]
mov qword [rbp + 0x17], rsi
movabs rax, 0x9090909090909090
mov dword [rdi], eax
mov byte [rdi + 4], al
mov qword [rbp + 0xf], rsi
mov rbx, qword [0x180a57108]
lea r9, [rbp + 0x6f]
mov edx, 5
mov r8d, 0x40
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, dword [rdi]
mov dword [rbx], eax
movzx eax, byte [rdi + 4]
mov byte [rbx + 4], al
lea r9, [rbp + 0x6f]
mov r8d, dword [rbp + 0x6f]
mov edx, 5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
lea rax, str.Patched__at_0x:X
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], 0x14
call fcn.1801ea340
mov qword [rbp - 0x11], r14
mov qword [rbp - 0x19], r14
mov qword [rbp - 9], r14
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
movups xmm1, xmmword [rbp - 0x19]
movaps xmmword [rbp + 0x27], xmm1
movsd xmm0, qword [rbp - 9]
movsd qword [rbp + 0x37], xmm0
lea r9, [rbp - 0x29]
mov r8d, 2
lea rdx, [rbp + 0x27]
mov rcx, rax
call fcn.1801260f0
mov byte [0x180a57901], 1
test rdi, rdi
je 0x180123646
sub rsi, rdi
cmp rsi, 0x1000
jb 0x180123583
mov esi, 0x2c
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x18012365e
mov rdi, rcx
mov rdx, rsi
mov rcx, rdi
call fcn.180337884
jmp 0x180123646
cmp byte [0x180a57901], r14b
je 0x180123646
mov rbx, qword [0x180a57910]
sub rbx, qword [0x180a57908]
lea r9, [rbp + 0x6f]
mov r8d, 0x40
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov r8, rbx
mov rdx, qword [0x180a57908]
mov rcx, rdi
call fcn.1803752c0
lea r9, [rbp + 0x6f]
mov r8d, dword [rbp + 0x6f]
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
lea rax, str.Unpatched__at_0x:X
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], 0x16
call fcn.1801ea340
mov qword [rbp - 0x11], r14
mov qword [rbp - 0x19], r14
mov qword [rbp - 9], r14
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
movups xmm1, xmmword [rbp - 0x19]
movaps xmmword [rbp + 0x27], xmm1
movsd xmm0, qword [rbp - 9]
movsd qword [rbp + 0x37], xmm0
lea r9, [rbp - 0x29]
mov r8d, 2
lea rdx, [rbp + 0x27]
mov rcx, rax
call fcn.1801260f0
mov byte [0x180a57901], r14b
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.1803459e4
int3
lea rcx, [0x180a59ef0]
call fcn.180337960
cmp dword [0x180a59ef0], 0xffffffff
jne 0x180123367
lea rcx, [0x180388c60]
call fcn.180337864
lea rcx, [0x180a59ef0]
call fcn.1803378f4
jmp 0x180123367