Function at 0x180001780
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0x60
mov rax, qword [0x18005e010]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov qword [r11 - 0x10], r14
mov qword [r11 - 0x18], r15
call qword [0x180085930]
mov rdx, qword [0x180085968]
mov rcx, rax
call rdx
lea rcx, str.UnityEngine.GameObject
mov r14, rax
call fcn.180001a40
xor r15d, r15d
mov rcx, rax
test rax, rax
jne 0x1800017d8
mov esi, r15d
jmp 0x1800017fc
mov rax, qword [0x180085928]
mov rbx, qword [0x180085978]
call rax
mov rcx, rax
call rbx
mov rdx, qword [0x180085a30]
mov rcx, rax
call rdx
mov rsi, rax
mov rdi, r15
mov qword [rsp + 0x70], rbp
cmp qword [rsi + 0x18], r15
jbe 0x180001887
nop word [rax + rax]
mov ecx, edi
mov rbp, qword [rsi + rcx*8 + 0x20]
test rbp, rbp
je 0x18000187e
lea rcx, str.UnityEngine.MonoBehaviour
call fcn.180001a40
test rax, rax
je 0x18000187e
mov rdx, qword [0x180085928]
mov rcx, rax
mov rbx, qword [0x180085978]
call rdx
mov rcx, rax
call rbx
mov r10, qword [0x1800859f8]
xor r9d, r9d
mov qword [rsp + 0x30], r15
xor r8d, r8d
mov byte [rsp + 0x28], r15b
mov rdx, rax
mov rcx, rbp
mov byte [rsp + 0x20], 1
call r10
test rax, rax
je 0x18000187e
cmp qword [rax + 0x18], r15
jbe 0x18000187e
mov rax, qword [rax + 0x20]
test rax, rax
jne 0x18000188a
inc rdi
cmp qword [rsi + 0x18], rdi
ja 0x180001810
mov rax, r15
mov rax, qword [rax + 0x10]
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x70]
mov r11, qword [rax]
test r11, r11
je 0x180001969
mov word [rsp + 0x40], 0xd233
mov r10d, r15d
mov byte [rsp + 0x42], 0xe9
mov r9, r15
nop
mov r8, qword [r11 + r9*8]
lea rax, [rsp + 0x40]
sub r8, rax
mov rdx, r15
nop
lea rcx, [rsp + 0x40]
add rcx, rdx
movzx eax, byte [r8 + rcx]
cmp byte [rcx], al
jne 0x1800018f3
inc rdx
cmp rdx, 3
jl 0x1800018d0
movsxd rax, r10d
lea rcx, [r11 + rax*8]
jmp 0x180001902
inc r10d
inc r9
cmp r9, 0x63
jl 0x1800018c0
mov rcx, r15
mov qword [0x180085ba8], rcx
mov r10d, r15d
mov dword [rsp + 0x40], 0x1ba
mov r9, r15
mov word [rsp + 0x44], 0xe900
nop
mov r8, qword [r11 + r9*8]
lea rcx, [rsp + 0x40]
sub r8, rcx
mov rax, r15
nop
lea rdx, [rsp + 0x40]
add rdx, rax
movzx ecx, byte [r8 + rdx]
cmp byte [rdx], cl
jne 0x180001953
inc rax
cmp rax, 6
jl 0x180001930
movsxd rax, r10d
lea rcx, [r11 + rax*8]
jmp 0x180001962
inc r10d
inc r9
cmp r9, 0x63
jl 0x180001920
mov rcx, r15
mov qword [0x180085bd0], rcx
mov rcx, r14
call qword [0x180085970]
mov rbx, qword [0x180085ba8]
mov r14, qword [rsp + 0x58]
mov dword [rsp + 0x40], r15d
test rbx, rbx
je 0x1800019cf
mov edx, 8
lea r9, [rsp + 0x40]
mov rcx, rbx
lea r8d, [rdx - 4]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x1800019cf
mov rax, qword [rbx]
lea r9, [rsp + 0x40]
mov r8d, dword [rsp + 0x40]
mov edx, 8
mov qword [0x180085bb0], rax
mov rcx, rbx
lea rax, [0x1800016e0]
mov qword [rbx], rax
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov rbx, qword [0x180085bd0]
mov dword [rsp + 0x40], r15d
mov r15, qword [rsp + 0x50]
test rbx, rbx
je 0x180001a2c
mov edx, 8
lea r9, [rsp + 0x40]
mov rcx, rbx
lea r8d, [rdx - 4]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x180001a2c
mov rax, qword [rbx]
lea r9, [rsp + 0x40]
mov r8d, dword [rsp + 0x40]
mov edx, 8
mov qword [0x180085bd8], rax
mov rcx, rbx
lea rax, [0x180001730]
mov qword [rbx], rax
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.180047550
add rsp, 0x60
pop rbx
ret