Function at 0x180010760
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x50
xor ebp, ebp
mov r15, r9
mov r13, r8
mov r12, rdx
mov rsi, rcx
mov edi, ebp
test r8, r8
je 0x18001078b
mov qword [r8], rbp
test r15, r15
je 0x180010793
mov qword [r9], rbp
mov rbx, qword [rsp + 0xb0]
test rbx, rbx
je 0x1800107a3
mov qword [rbx], rbp
test r12, r12
jne 0x1800107bc
lea eax, [r12 + 0x57]
add rsp, 0x50
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x18003e068], eax
je 0x1800107de
mov eax, 0x10dd
add rsp, 0x50
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, dword [0x18003e07c]
test eax, eax
jne 0x180010aea
test rsi, rsi
jne 0x180010803
lea eax, [rsi + 6]
add rsp, 0x50
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, qword [rsi]
test rcx, rcx
jne 0x18001082e
mov edi, 6
mov qword [0x18003e080], rsi
mov dword [0x18003e07c], edi
mov eax, edi
add rsp, 0x50
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov qword [rsp + 0x48], r14
xor edx, edx
mov r14, rbp
mov rsi, rbp
call fcn.180010690
xor edx, edx
mov rcx, r12
mov rbp, rax
call fcn.180010690
mov qword [rsp + 0x30], rax
cmp rax, rbp
jne 0x180010868
cmp dword [0x18003e06c], esi
jne 0x180010ad4
jmp 0x180010a86
test r15, r15
je 0x180010870
mov qword [r15], rbp
test rbx, rbx
je 0x180010878
mov qword [rbx], rax
mov ecx, 0x30
call fcn.180012274
mov r14, rax
test rax, rax
jne 0x180010892
lea edi, [rax + 8]
jmp 0x180010a86
mov rcx, rbp
call fcn.1800100b0
mov rsi, rax
test rax, rax
jne 0x1800108aa
lea edi, [rax + 8]
jmp 0x180010a86
test r13, r13
je 0x1800108b3
mov qword [r13], rsi
xor eax, eax
mov rdi, rbp
mov qword [rsi + 0x40], rax
mov r15, rsi
lea rax, [rsi + 0x1e]
mov qword [rsp + 0xa8], rax
xor eax, eax
mov dword [rsp + 0xb0], eax
lea rax, [rsp + 0x98]
mov dword [rsp + 0x98], 0
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, rdi
lea rdx, [rsp + 0xa8]
mov rcx, r15
mov r12, rdi
call fcn.1800118a0
mov ecx, dword [rsp + 0xb0]
mov rdi, rax
movsxd rax, dword [rsp + 0x98]
mov ebx, edi
sub rax, r12
sub ebx, ebp
add rax, rdi
add r15, rax
movzx eax, bl
and al, 7
movzx edx, r15b
sub dl, sil
shl dl, 3
or dl, al
mov byte [rcx + rsi + 0x40], dl
inc ecx
mov dword [rsp + 0xb0], ecx
cmp ecx, 8
jae 0x18001095e
mov rcx, r12
call fcn.180010310
test eax, eax
jne 0x18001095e
cmp ebx, 5
jb 0x1800108d4
jmp 0x180010988
cmp ebx, 5
jae 0x180010988
mov rcx, rdi
call fcn.180010450
test eax, eax
je 0x18001097f
cdqe
add rdi, rax
mov ebx, edi
sub ebx, ebp
cmp ebx, 5
jb 0x180010963
jmp 0x180010988
cmp ebx, 5
jb 0x180010a78
cmp dword [rsp + 0xb0], 8
ja 0x180010a78
cmp r15, qword [rsp + 0xa8]
jbe 0x1800109a1
int3
sub r15b, sil
mov byte [rsi + 0x3e], bl
lea rcx, [rsi + 0x20]
mov byte [rsi + 0x1e], r15b
mov r8, rbx
mov rdx, rbp
call fcn.1800133e0
cmp rbx, 0x19
jbe 0x1800109ca
mov edi, 6
jmp 0x180010a86
movzx r8d, byte [rsi + 0x1e]
lea rax, [rbx + rbp]
mov qword [rsi + 0x48], rax
add r8, rsi
mov rax, qword [rsp + 0x30]
mov qword [rsi + 0x50], rax
mov eax, esi
lea rcx, [r8 + 6]
mov word [r8], 0x25ff
sub eax, ecx
lea rcx, [r8 + 6]
add eax, 0x48
mov dword [r8 + 2], eax
mov rdx, qword [rsp + 0xa8]
call fcn.180010410
lea r9, [rsp + 0xa0]
mov dword [rsp + 0xa0], 0
mov r8d, 0x40
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x180010a3c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x180010a86
mov rax, qword [rsp + 0x90]
mov qword [r14 + 0x10], rax
mov dword [r14 + 8], 0
mov qword [r14 + 0x20], rsi
mov qword [r14 + 0x18], rbp
mov eax, dword [rsp + 0xa0]
mov dword [r14 + 0x28], eax
mov rax, qword [0x18003e090]
mov qword [r14], rax
xor eax, eax
mov qword [0x18003e090], r14
jmp 0x180010ae5
cmp dword [0x18003e06c], 0
mov edi, 9
jne 0x180010a8c
mov dword [0x18003e07c], edi
test rsi, rsi
je 0x180010ac2
xor edx, edx
mov rbx, rsi
mov rcx, rsi
and rbx, 0xffffffffffff0000
lea r8d, [rdx + 0x60]
call fcn.180015470
mov rax, qword [rbx + 0x10]
mov qword [rsi + 0x48], rax
mov qword [rbx + 0x10], rsi
test r13, r13
je 0x180010ac2
mov qword [r13], 0
test r14, r14
je 0x180010ad4
mov edx, 0x30
mov rcx, r14
call fcn.180012694
mov rax, qword [rsp + 0x90]
mov qword [0x18003e080], rax
mov eax, edi
mov r14, qword [rsp + 0x48]
add rsp, 0x50
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret