Function at 0x180041d24
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
sub rsp, 0x50
mov eax, dword [rsp + 0x90]
lea ebx, [r8 - 0xe4]
mov ecx, eax
mov dword [rsp + 0x44], ebx
mov rsi, rdx
lea edi, [r8 - 0xca6]
xor r9d, 0xe0
mov dword [rsp + 0x48], edi
lea ebp, [rax - 0x172]
mov dword [rsp + 0x80], r9d
add eax, 0xffffbae3
mov r10d, 0x451d
xor ecx, r10d
mov dword [rsp + 0x88], eax
mov edx, r8d
mov dword [rsp + 0x90], ecx
xor edx, 0x7fa3
mov dword [rsp + 0x40], edx
lea eax, [rcx + 0x3e14]
cmp ebx, eax
jle 0x180042015
lea eax, [r9 - 0x20]
cmp ebp, eax
je 0x180041e24
mov eax, dword [rsi + 0x28]
lea ecx, [rbx - 0x8e]
sub eax, dword [rsi + 0x6c]
xor edx, 0x272
mov dword [rsp + 0x28], edx
mov r8d, ebx
xor eax, 0x497
mov qword [rsp + 0x20], rsi
sub dword [rsi + 0x80], eax
xor edi, 0x64d
xor ebp, 0x7915
xor r8d, 0x796e
mov edx, ebp
lea r9d, [rdi - 0x4dd]
call fcn.18004545c
cmp dword [rsi + 0x28], 0xf30f
mov ebp, eax
jae 0x180041e13
mov rcx, qword [section..data]
mov eax, dword [rcx + 0xfc]
mov dword [rcx + 0xf0], eax
jmp 0x180041f9e
mov eax, dword [rsi + 0xa4]
add dword [0x1801ba058], eax
jmp 0x180041f9e
mov ecx, dword [rsi + 0x6c]
or ebp, 0x3abe
and ecx, dword [0x1801ba038]
sub ebp, r9d
mov r8d, dword [0x1801ba054]
or ecx, r9d
sub r8d, dword [0x1801ba130]
mov r9d, edi
or r9d, r10d
mov dword [rsp + 0x20], ebp
mov rdx, rsi
call fcn.180041d24
mov r10, qword [section..data]
mov ecx, dword [rsp + 0x90]
mov r9d, dword [0x1801ba09c]
mov edx, dword [rsi + 0x8c]
or r9, rcx
mov ebx, dword [r10 + 0x114]
xor edx, ecx
mov edi, dword [rsi + 0x94]
add ebx, 0xffffbbc7
mov ecx, dword [r10 + 0x14]
add ebx, eax
and edi, dword [rsi + 4]
mov r8d, dword [rsp + 0x88]
mov ebp, eax
xor r8d, 0x3abe
mov eax, dword [r10 + 4]
and eax, dword [rsp + 0x80]
imul r11d, eax, 0x3abe
mov eax, dword [0x1801ba038]
and rcx, rax
mov qword [rsp + 0x30], rbx
and rcx, rbp
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r11d
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov edx, dword [rsi + 0x18]
mov eax, ebp
sub eax, dword [rsp + 0x40]
sub edx, dword [rsi + 0xf4]
movsxd rdi, dword [rsp + 0x90]
or rdx, 0x43ab
movsxd r9, eax
mov r8, rdi
mov rax, qword [section..data]
mov ecx, dword [rax + 0x140]
mov eax, dword [rsi + 0x140]
xor rcx, rax
call qword [sym.imp.KERNEL32.dll_SetNamedPipeHandleState]
mov ecx, dword [rsp + 0x80]
mov eax, ecx
mov rdx, qword [section..data]
xor eax, ebp
sub dword [0x1801ba0f4], eax
mov eax, dword [rsi + 0x8c]
mov ebx, dword [rsp + 0x44]
and eax, ebp
sub ebp, eax
mov eax, dword [rdx + 0x12c]
add eax, ecx
xor dword [0x1801ba124], eax
mov eax, dword [rsi + 0x134]
or eax, dword [0x1801ba0c0]
sub dword [0x1801ba020], eax
mov eax, dword [rdx]
sub eax, dword [rsi + 0x18]
xor ebx, eax
mov eax, dword [rsi + 0x98]
add eax, ebp
or dword [0x1801ba0ac], eax
imul ecx, dword [rsi + 0x14]
mov eax, dword [rdx + 0x150]
xor rcx, rax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [0x1801ba048]
xor eax, edi
sub eax, edi
imul edi, eax
mov dword [rsp + 0x90], edi
mov edi, dword [rsp + 0x48]
xor ebx, 0x792
cmp dword [rsp + 0x90], ebx
je 0x18004200d
mov eax, dword [0x1801ba034]
add dword [0x1801ba100], eax
mov rax, qword [section..data]
mov ecx, dword [rax + 0x64]
add ecx, 0x19d7
mov dword [rsi + 0x3c], ecx
mov rcx, qword [section..data]
mov eax, dword [rcx + 0x14]
cmp dword [0x1801ba160], eax
jbe 0x180041fee
mov eax, dword [rsi + 0x94]
xor eax, 0x6319
or dword [rcx + 0x28], eax
jmp 0x180041fff
mov eax, dword [rsi + 0x5c]
add eax, dword [0x1801ba0c4]
xor eax, 0xac8
sub dword [rcx + 0x3c], eax
mov rax, qword [section..data]
add dword [rax + 0x3c], 0x236e8
mov r9d, dword [rsp + 0x80]
lea eax, [r9 + 0x108]
cmp ebp, eax
jl 0x180042142
mov rcx, qword [section..data]
cmp dword [rcx + 0xf4], 0x174e1
jbe 0x18004204c
mov eax, dword [rsi + 0x38]
xor eax, dword [rcx + 0x3c]
xor eax, 0x27eeb6
mov dword [rcx + 0x3c], eax
mov rcx, qword [section..data]
mov eax, dword [rcx + 0x168]
xor ecx, ecx
sub eax, dword [0x1801ba02c]
xor eax, 0x12c6ed
sub dword [rsi + 0x3c], eax
mov r8d, dword [rsi + 0x48]
lea r9d, [rcx + 0x40]
mov edx, dword [rsi + 0x3c]
add r8d, 0x11e677
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8d, 0x6d
lea rcx, [rax + 0x1000]
mov rax, qword [section..data]
mov qword [rax + 0xe8], rcx
mov ecx, dword [0x1801ba098]
mov rdx, qword [section..data]
mov eax, dword [rdx + 0x120]
cmp dword [0x1801ba118], eax
cmovbe ecx, r8d
mov dword [0x1801ba098], ecx
mov eax, dword [rsi + 0x14]
cmp dword [0x1801ba178], eax
ja 0x1800420e1
mov eax, dword [rdx + 0xf8]
xor eax, dword [rsi + 0x16c]
xor eax, 0x5cf25
sub dword [rsi + 0x88], eax
mov rdx, qword [section..data]
cmp dword [rdx + 0x15c], 0xb27e
jne 0x1800420fe
mov eax, dword [rdx + 0x108]
sub eax, dword [rdx + 0x50]
xor dword [rdx + 0x16c], eax
jmp 0x18004210c
mov rax, qword [rsi + 0xe8]
mov qword [rdx + 0xd0], rax
mov ecx, dword [rsi + 0x28]
sub ecx, dword [rsi + 0x15c]
mov r8, qword [section..data]
add ecx, 0x1447
mov dword [0x1801ba094], ecx
mov ecx, 0xfaa10a74
mov edx, dword [rsi + 0x134]
xor edx, dword [rsi + 0xa4]
sub ecx, edx
add dword [r8 + 0x84], ecx
mov rbx, qword [rsp + 0x70]
xor edi, 0x44b
mov eax, edi
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret