Function at 0x18000e200
Capabilities:
Encode data using xor
Hash data with crc32
Link many functions at runtime

Disassembly:
mov dword [rsp + 8], ecx
push rbp
push rbx
lea rbp, [rsp - 0x168]
sub rsp, 0x268
mov ebx, ecx
lea rcx, [rbp + 0x68]
call fcn.18004c7b0
mov edx, ebx
mov rcx, rax
call fcn.18004da60
test al, al
je 0x18000e247
lea rdx, [rbp + 0x180]
call fcn.18004c6d0
mov rax, qword [rax]
add rsp, 0x268
pop rbx
pop rbp
ret
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_domain_get
mov qword [rsp + 0x260], rsi
mov qword [rsp + 0x258], rdi
mov qword [rsp + 0x250], r12
mov qword [rsp + 0x248], r13
mov qword [rsp + 0x240], r14
mov qword [rsp + 0x238], r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov rcx, rax
mov qword [rbp + 0x68], rax
mov rdi, rax
call fcn.18000d720
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_domain_get_assemblies
xor r13d, r13d
mov qword [rbp + 0x100], rax
mov ebx, r13d
mov qword [rbp - 0x40], r13
mov dword [rbp + 0x198], ebx
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp - 0x40]
mov rcx, rdi
call rax
cmp qword [rbp - 0x40], rbx
jbe 0x18000f861
mov edi, r13d
mov qword [rbp + 0x60], r13
mov rax, qword [rsi + rdi*8]
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x180230870]
mov r12d, r13d
mov dword [rbp + 0x190], r13d
mov r15, qword [rax]
mov qword [rbp + 0x58], r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
test rax, rax
je 0x18000f823
nop dword [rax + rax]
mov rdx, qword [r15]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r13
mov r8, 0xffffffffffffffff
mov qword [rbp - 0x68], r13
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18000e340
lea rcx, [rbp - 0x80]
call fcn.18004eca0
mov r15, qword [rbp - 0x68]
lea rbx, [rbp - 0x80]
mov r14, qword [rbp - 0x80]
cmp r15, 0x10
mov rsi, qword [rbp - 0x70]
cmovae rbx, r14
cmp rsi, 4
jb 0x18000e3bd
lea rdi, [rsi + rbx]
mov edx, 0x2e
lea r8, [rdi - 3]
mov rcx, rbx
sub r8, rbx
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
je 0x18000e3bd
cmp dword [r9], 0x6c6c642e
je 0x18000e479
inc r9
lea r8, [rdi - 3]
sub r8, r9
mov rcx, r9
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
mov r9, rax
test rax, rax
jne 0x18000e391
mov r9, 0xffffffffffffffff
cmp rsi, r9
jb 0x18000f96c
mov rax, rsi
lea rcx, [rbp - 0x80]
sub rax, r9
mov edx, 4
cmp rax, rdx
cmovb rdx, rax
cmp r15, 0x10
cmovae rcx, r14
sub rsi, rdx
add rcx, r9
mov r8, rsi
sub r8, r9
add rdx, rcx
inc r8
call sub.VCRUNTIME140.dll_memmove
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_image_get_class
mov qword [rbp - 0x70], rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, qword [rbp + 0x58]
mov rcx, r15
movsxd rdx, r12d
call rax
mov qword [rbp + 0xb8], rax
mov r14, rax
test rax, rax
jne 0x18000e481
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18000f7d3
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e46f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f95f
call fcn.1800fbcf0
jmp 0x18000f7d3
sub r9, rbx
jmp 0x18000e3c4
mov rdi, qword [rax + 0x10]
xorps xmm0, xmm0
mov rbx, qword [rax + 0x18]
mov r8, 0xffffffffffffffff
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], r13
inc r8
cmp byte [rbx + r8], 0
jne 0x18000e4a2
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.18004eca0
cmp qword [rsp + 0x70], 0
mov r8, qword [rsp + 0x78]
sete sil
cmp r8, 0x10
jb 0x18000e4db
mov rdx, qword [rsp + 0x60]
inc r8
call fcn.18004d5d0
mov rcx, qword [rbp - 0x70]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
test sil, sil
je 0x18000e5fe
cmp rax, 2
jb 0x18000f972
cmp qword [rbp - 0x68], 0x10
lea rsi, [0x1801991b4]
mov qword [rsp + 0x30], 2
lea r9, [rbp - 0x80]
cmovae r9, qword [rbp - 0x80]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0xc0]
call fcn.18004f860
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x18000e540
mov rdx, rdi
lea rcx, [rbp + 0xc0]
call fcn.18004cbf0
xor ebx, ebx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rbp - 0x38], xmm1
cmp rdx, 0x10
jb 0x18000e5bd
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e5af
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8a5
call fcn.1800fbcf0
movups xmm0, xmmword [rsp + 0x40]
movups xmm1, xmmword [rbp - 0x38]
mov r8, qword [rbp + 0xd8]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm1
cmp r8, 0x10
jb 0x18000e5e1
mov rdx, qword [rbp + 0xc0]
inc r8
call fcn.18004d5d0
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xd8], 0xf
mov byte [rbp + 0xc0], bl
jmp 0x18000e82a
cmp rax, 2
jb 0x18000f966
cmp qword [rbp - 0x68], 0x10
lea rsi, [0x1801991b4]
mov qword [rsp + 0x30], 2
lea r9, [rbp - 0x80]
cmovae r9, qword [rbp - 0x80]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0xe0]
call fcn.18004f860
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rbx + r8], 0
jne 0x18000e643
mov rdx, rbx
lea rcx, [rbp + 0xe0]
call fcn.18004cbf0
xor ebx, ebx
lea rcx, [rbp + 0x98]
mov qword [rbp + 0xa8], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x98], xmm0
mov qword [rbp + 0xb0], rbx
mov rdx, rsi
movups xmm0, xmmword [rax]
lea r8d, [rbx + 2]
movups xmmword [rbp + 0x98], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xa8], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
call fcn.18004cbf0
mov qword [rbp + 0x88], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x78], xmm0
mov qword [rbp + 0x90], rbx
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x88], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
nop dword [rax + rax]
inc r8
cmp byte [rdi + r8], bl
jne 0x18000e6f0
mov rdx, rdi
lea rcx, [rbp + 0x78]
call fcn.18004cbf0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 0xf
mov byte [rax], bl
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rbp - 0x38], xmm1
cmp rdx, 0x10
jb 0x18000e767
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e759
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8ac
call fcn.1800fbcf0
movups xmm0, xmmword [rsp + 0x40]
movups xmm1, xmmword [rbp - 0x38]
mov rdx, qword [rbp + 0x90]
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm1
cmp rdx, 0x10
jb 0x18000e7ad
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e7a8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8ac
call fcn.1800fbcf0
mov r8, qword [rbp + 0xb0]
mov qword [rbp + 0x88], rbx
mov qword [rbp + 0x90], 0xf
mov byte [rbp + 0x78], bl
cmp r8, 0x10
jb 0x18000e7de
mov rdx, qword [rbp + 0x98]
inc r8
call fcn.18004d5d0
mov r8, qword [rbp + 0xf8]
mov qword [rbp + 0xa8], rbx
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], bl
cmp r8, 0x10
jb 0x18000e812
mov rdx, qword [rbp + 0xe0]
inc r8
call fcn.18004d5d0
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0xf8], 0xf
mov byte [rbp + 0xe0], bl
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_class_get_methods
mov qword [rbp + 0x50], rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x50]
mov rcx, r14
call rax
mov qword [rbp - 0x18], rax
mov r13, rax
test rax, rax
je 0x18000f795
jmp 0x18000e862
xor ebx, ebx
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_method_get_name
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
mov r15, qword [rbp - 0x70]
mov rsi, rax
movabs rax, 0x7fffffffffffffff
mov rcx, rax
sub rcx, r15
cmp rcx, 2
jb 0x18000f9b4
cmp qword [rbp - 0x68], 0x10
lea r12, [rbp - 0x80]
mov qword [rsp + 0x50], rbx
lea r14, [r15 + 2]
cmovae r12, qword [rbp - 0x80]
lea rdi, [rsp + 0x40]
mov qword [rsp + 0x58], rbx
xorps xmm0, xmm0
mov ebx, 0xf
movups xmmword [rsp + 0x40], xmm0
cmp r14, rbx
jbe 0x18000e94a
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x18000e8ee
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18000e915
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000e934
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f978
mov rcx, rax
call fcn.1800fb934
test rax, rax
je 0x18000f8b3
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18000e945
test rcx, rcx
je 0x18000e943
call fcn.1800fb934
mov rdi, rax
jmp 0x18000e945
xor edi, edi
mov qword [rsp + 0x40], rdi
mov r8, r15
mov qword [rsp + 0x50], r14
mov rdx, r12
mov qword [rsp + 0x58], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
mov r8, 0xffffffffffffffff
mov word [rdi + r15], ax
mov byte [rdi + r14], 0
nop dword [rax + rax]
inc r8
cmp byte [rsi + r8], 0
jne 0x18000e980
mov rdx, rsi
lea rcx, [rsp + 0x40]
call fcn.18004cbf0
xor r12d, r12d
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rdx, qword [rsp + 0x58]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rdx, 0x10
jb 0x18000e9f7
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e9f2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8b3
call fcn.1800fbcf0
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_method_get_param_count
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
test eax, eax
je 0x18000f43a
mov rcx, qword [rsp + 0x70]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 1
jb 0x18000f9a2
cmp qword [rsp + 0x78], 0x10
lea rax, [0x1801991b8]
mov qword [rsp + 0x30], 1
lea r9, [rsp + 0x60]
cmovae r9, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.18004f860
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18000eab9
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000eab4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
call fcn.1800fbcf0
movups xmm0, xmmword [rsp + 0x40]
mov rcx, qword [0x180230870]
mov ebx, r12d
movups xmm1, xmmword [rsp + 0x50]
lea rdx, str.il2cpp_method_get_param_count
mov dword [rbp + 0x188], ebx
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
test eax, eax
je 0x18000ef87
nop word [rax + rax]
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_method_get_param
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, ebx
mov rcx, r13
call rax
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
xorps xmm0, xmm0
mov qword [rbp], r12
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp + 8], r12
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18000eb50
mov rdx, rax
lea rcx, [rbp - 0x10]
call fcn.18004eca0
mov r13, qword [rbp + 8]
lea rsi, [rbp - 0x10]
mov r14, qword [rbp - 0x10]
cmp r13, 0x10
mov rbx, qword [rbp]
cmovae rsi, r14
cmp rbx, 1
jb 0x18000ebc4
mov r8, rbx
lea rdi, [rbx + rsi]
mov edx, 0x2e
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x18000ebc4
nop dword [rax]
cmp byte [rax], 0x2e
je 0x18000ec46
inc rax
mov r8, rdi
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000eba0
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
cmp rbx, rcx
jb 0x18000f990
sub rbx, rcx
lea r15, [rbp - 0x10]
mov rdi, 0xffffffffffffffff
movabs rax, 0x7fffffffffffffff
cmp rbx, rdi
cmovb rdi, rbx
cmp r13, 0x10
cmovae r15, r14
add r15, rcx
cmp rdi, rax
ja 0x18000f98a
cmp rdi, 0x10
jae 0x18000ec4b
mov r8, rdi
mov qword [rbp - 0x50], rdi
mov rdx, r15
mov qword [rbp - 0x48], 0xf
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbp + rdi - 0x60], 0
mov rbx, qword [rbp - 0x48]
mov rdi, qword [rbp - 0x50]
mov rsi, qword [rbp - 0x60]
jmp 0x18000ec9b
sub rax, rsi
jmp 0x18000ebcb
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x18000ec5c
mov rbx, rax
jmp 0x18000ec69
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rdx, [rbx + 1]
call fcn.18004d570
mov r8, rdi
mov qword [rbp - 0x60], rax
mov rdx, r15
mov qword [rbp - 0x50], rdi
mov rcx, rax
mov qword [rbp - 0x48], rbx
mov rsi, rax
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rdi], 0
mov r13, qword [rbp + 8]
mov r14, qword [rbp - 0x10]
cmp r13, 0x10
jb 0x18000ecd2
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18000ecca
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c1
mov rcx, r14
call fcn.1800fbcf0
mov r15, qword [rsp + 0x70]
movabs rdx, 0x7fffffffffffffff
movups xmm0, xmmword [rbp - 0x60]
mov rax, rdx
movups xmm1, xmmword [rbp - 0x50]
sub rax, r15
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm1
cmp rax, rdi
jb 0x18000f984
mov r13, qword [rsp + 0x78]
lea rax, [rsp + 0x60]
mov r14, qword [rsp + 0x60]
lea rcx, [rbp - 0x10]
cmp r13, 0x10
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
xorps xmm0, xmm0
cmovae rax, r14
lea r12, [r15 + rdi]
cmp rbx, 0x10
mov qword [rbp - 0x38], rax
mov ebx, 0xf
cmovae rcx, rsi
lea rsi, [rbp - 0x60]
mov qword [rsp + 0x40], rcx
movups xmmword [rbp - 0x60], xmm0
cmp r12, rbx
jbe 0x18000edd3
mov rbx, r12
or rbx, 0xf
cmp rbx, rdx
jbe 0x18000ed70
movabs rax, 0x8000000000000000
mov rbx, rdx
add rax, 0x27
jmp 0x18000ed97
cmp rbx, 0x16
mov ecx, 0x16
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000edba
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f97e
mov rcx, rax
call fcn.1800fb934
test rax, rax
je 0x18000f8ba
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
mov rax, qword [rbp - 0x38]
jmp 0x18000edcf
test rcx, rcx
je 0x18000edcd
call fcn.1800fb934
mov rsi, rax
mov rax, qword [rbp - 0x38]
jmp 0x18000edcf
xor esi, esi
mov qword [rbp - 0x60], rsi
mov r8, r15
mov qword [rbp - 0x50], r12
mov rdx, rax
mov qword [rbp - 0x48], rbx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x40]
lea rcx, [r15 + rsi]
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + r12], 0
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x18000ee34
lea rax, [rcx + 1]
cmp rdx, 0x10
mov qword [rbp - 0x50], rax
lea rax, [rbp - 0x60]
cmovae rax, qword [rbp - 0x60]
mov word [rax + rcx], 0x2c
lea rax, [rbp - 0x60]
jmp 0x18000ee52
lea r9, [0x1801991bc]
mov qword [rsp + 0x20], 1
mov edx, 1
lea rcx, [rbp - 0x60]
call fcn.18004eb10
movups xmm0, xmmword [rax]
xor r12d, r12d
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rbp - 0x38], xmm1
cmp r13, 0x10
jb 0x18000eeb4
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18000eea3
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8ba
mov rcx, r14
call fcn.1800fbcf0
movups xmm0, xmmword [rsp + 0x40]
movups xmm1, xmmword [rbp - 0x38]
mov rdx, qword [rbp - 0x48]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rdx, 0x10
jb 0x18000eef9
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000eef4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8ba
call fcn.1800fbcf0
mov rdx, qword [rbp + 8]
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r12b
cmp rdx, 0x10
jb 0x18000ef44
mov rcx, qword [rbp - 0x10]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ef3f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c1
call fcn.1800fbcf0
mov ebx, dword [rbp + 0x188]
lea rdx, str.il2cpp_method_get_param_count
mov rcx, qword [0x180230870]
inc ebx
mov dword [rbp + 0x188], ebx
mov qword [rbp], r12
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, qword [rbp - 0x18]
mov rcx, r13
call rax
cmp ebx, eax
jb 0x18000eb00
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
xorps xmm0, xmm0
mov qword [rbp + 0x20], r12
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x28], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18000efd2
mov rdx, rax
lea rcx, [rbp + 0x10]
call fcn.18004eca0
mov rax, qword [rsp + 0x70]
lea r15, [rsp + 0x60]
mov r13, qword [rsp + 0x78]
movabs r12, 0x7fffffffffffffff
mov r14, qword [rsp + 0x60]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
lea rdi, [rax - 1]
cmp rax, rdi
cmovb rdi, rax
cmp r13, 0x10
cmovae r15, r14
cmp rdi, r12
ja 0x18000f9a2
cmp rdi, 0x10
jae 0x18000f055
mov r8, rdi
mov qword [rsp + 0x50], rdi
mov rdx, r15
mov qword [rsp + 0x58], 0xf
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rdi + 0x40], 0
jmp 0x18000f0a0
mov rsi, rdi
or rsi, 0xf
cmp rsi, r12
jbe 0x18000f066
mov rsi, r12
jmp 0x18000f073
cmp rsi, 0x16
mov eax, 0x16
cmovb rsi, rax
lea rdx, [rsi + 1]
call fcn.18004d570
mov r8, rdi
mov qword [rsp + 0x40], rax
mov rdx, r15
mov qword [rsp + 0x50], rdi
mov rcx, rax
mov qword [rsp + 0x58], rsi
mov rbx, rax
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi], 0
cmp r13, 0x10
jb 0x18000f0d7
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18000f0cf
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
mov rcx, r14
call fcn.1800fbcf0
mov r15, qword [rbp + 0x28]
lea rdi, [rbp + 0x10]
movups xmm0, xmmword [rsp + 0x40]
mov r14, qword [rbp + 0x10]
cmp r15, 0x10
movups xmm1, xmmword [rsp + 0x50]
mov rbx, qword [rbp + 0x20]
cmovae rdi, r14
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rbx, 1
jb 0x18000f146
mov r8, rbx
lea rsi, [rbx + rdi]
mov edx, 0x2e
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x18000f146
cmp byte [rax], 0x2e
je 0x18000f1b7
inc rax
mov r8, rsi
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000f122
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
cmp rbx, rcx
jb 0x18000f99c
sub rbx, rcx
lea rax, [rbp + 0x10]
mov rdi, 0xffffffffffffffff
cmp rbx, rdi
cmovb rdi, rbx
cmp r15, 0x10
cmovae rax, r14
lea r14, [rax + rcx]
cmp rdi, r12
ja 0x18000f9a2
cmp rdi, 0x10
jae 0x18000f1bc
mov r8, rdi
mov qword [rsp + 0x50], rdi
mov rdx, r14
mov qword [rsp + 0x58], 0xf
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rdi + 0x40], 0
jmp 0x18000f207
sub rax, rdi
jmp 0x18000f14d
mov rsi, rdi
or rsi, 0xf
cmp rsi, r12
jbe 0x18000f1cd
mov rsi, r12
jmp 0x18000f1da
cmp rsi, 0x16
mov eax, 0x16
cmovb rsi, rax
lea rdx, [rsi + 1]
call fcn.18004d570
mov r8, rdi
mov qword [rsp + 0x40], rax
mov rdx, r14
mov qword [rsp + 0x50], rdi
mov rcx, rax
mov qword [rsp + 0x58], rsi
mov rbx, rax
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi], 0
mov r14, qword [rsp + 0x70]
mov rax, r12
sub rax, r14
cmp rax, 3
jb 0x18000f9a2
mov r13, qword [rsp + 0x78]
lea r12, [rsp + 0x60]
mov rsi, qword [rsp + 0x60]
lea r15, [r14 + 3]
cmp r13, 0x10
lea rdi, [rbp - 0x38]
mov ebx, 0xf
xorps xmm0, xmm0
cmovae r12, rsi
movups xmmword [rbp - 0x38], xmm0
cmp r15, rbx
jbe 0x18000f2d4
mov rbx, r15
movabs rax, 0x7fffffffffffffff
or rbx, 0xf
cmp rbx, rax
jbe 0x18000f279
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x18000f2a0
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000f2bf
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f996
mov rcx, rax
call fcn.1800fb934
test rax, rax
je 0x18000f8c8
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18000f2d0
test rcx, rcx
je 0x18000f2ce
call fcn.1800fb934
mov rdi, rax
jmp 0x18000f2d0
xor edi, edi
mov qword [rbp - 0x38], rdi
mov r8, r14
mov qword [rbp - 0x28], r15
mov rdx, r12
mov qword [rbp - 0x20], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [0x1801991c0]
lea r9, [rsp + 0x40]
mov word [r14 + rdi], ax
lea r8, [rbp - 0x38]
movzx eax, byte [0x1801991c2]
lea rcx, [rbp + 0x110]
mov byte [r14 + rdi + 2], al
mov byte [rdi + r15], 0
call fcn.18004f6b0
cmp r13, 0x10
jb 0x18000f352
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18000f34a
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
mov rcx, rsi
call fcn.1800fbcf0
movups xmm0, xmmword [rbp + 0x110]
mov rdx, qword [rbp - 0x20]
movups xmm1, xmmword [rbp + 0x120]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rdx, 0x10
jb 0x18000f3a5
mov rcx, qword [rbp - 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f3a0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
call fcn.1800fbcf0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x18000f3e2
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f3dd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
call fcn.1800fbcf0
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x18000f41d
mov rcx, qword [rbp + 0x10]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f418
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8c8
call fcn.1800fbcf0
mov r13, qword [rbp - 0x18]
mov qword [rbp + 0x20], 0
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
jmp 0x18000f69d
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r13
call rax
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
xorps xmm0, xmm0
mov qword [rbp + 0x40], r12
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp + 0x48], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r12b
jne 0x18000f485
mov rdx, rax
lea rcx, [rbp + 0x30]
call fcn.18004eca0
mov r15, qword [rbp + 0x48]
lea rsi, [rbp + 0x30]
mov r14, qword [rbp + 0x30]
cmp r15, 0x10
mov rbx, qword [rbp + 0x40]
cmovae rsi, r14
cmp rbx, 1
jb 0x18000f4f5
mov r8, rbx
lea rdi, [rbx + rsi]
mov edx, 0x2e
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x18000f4f5
cmp byte [rax], 0x2e
je 0x18000f89d
inc rax
mov r8, rdi
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000f4d1
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
cmp rbx, rcx
jb 0x18000f9ae
sub rbx, rcx
lea rdx, [rbp + 0x30]
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
cmp r15, 0x10
cmovae rdx, r14
add rdx, rcx
lea rcx, [rsp + 0x40]
call fcn.18004eca0
mov rcx, qword [rsp + 0x70]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 4
jb 0x18000f9a8
cmp qword [rsp + 0x78], 0x10
lea rax, str.__:
mov qword [rsp + 0x30], 4
lea r9, [rsp + 0x60]
cmovae r9, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x38]
call fcn.18004f860
lea r9, [rsp + 0x40]
lea r8, [rbp - 0x38]
lea rcx, [rbp + 0x110]
call fcn.18004f6b0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18000f5e7
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f5e2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8cf
call fcn.1800fbcf0
movups xmm0, xmmword [rbp + 0x110]
mov r8, qword [rbp - 0x20]
movups xmm1, xmmword [rbp + 0x120]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp r8, 0x10
jb 0x18000f615
mov rdx, qword [rbp - 0x38]
inc r8
call fcn.18004d5d0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x18000f652
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f64d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8cf
call fcn.1800fbcf0
mov rdx, qword [rbp + 0x48]
cmp rdx, 0x10
jb 0x18000f68d
mov rcx, qword [rbp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f688
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8cf
call fcn.1800fbcf0
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], 0xf
mov byte [rbp + 0x30], r12b
mov rdi, qword [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rbx, qword [rsp + 0x60]
cmp rdi, 0x10
mov rax, 0xffffffffffffffff
cmovae rcx, rbx
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x18000f6c0
cmp rdi, 0x10
lea r8, [rsp + 0x60]
mov edx, 0xffffffff
cmovae r8, rbx
test eax, eax
je 0x18000f712
mov r9d, eax
lea r13, [0x18017e450]
nop dword [rax]
movsx ecx, byte [r8]
lea r8, [r8 + 1]
mov eax, edx
shr edx, 8
xor rcx, rax
movzx eax, cl
xor edx, dword [r13 + rax*4]
sub r9, 1
jne 0x18000f6f0
mov r13, qword [rbp - 0x18]
mov eax, dword [rbp + 0x180]
not edx
cmp edx, eax
je 0x18000f8d6
cmp rdi, 0x10
jb 0x18000f759
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18000f751
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f95f
mov rcx, rbx
call fcn.1800fbcf0
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_class_get_methods
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0xb8]
lea rdx, [rbp + 0x50]
call rax
mov qword [rbp - 0x18], rax
mov r13, rax
test rax, rax
jne 0x18000e860
mov r12d, dword [rbp + 0x190]
mov r15, qword [rbp + 0x58]
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18000f7d0
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f7cb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f95f
call fcn.1800fbcf0
xor r13d, r13d
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_image_get_class_count
inc r12d
mov qword [rbp - 0x70], r13
mov dword [rbp + 0x190], r12d
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
movsxd rcx, r12d
cmp rcx, rax
jb 0x18000e320
mov ebx, dword [rbp + 0x198]
mov rdi, qword [rbp + 0x60]
mov rsi, qword [rbp + 0x100]
mov rcx, qword [0x180230870]
lea rdx, str.il2cpp_domain_get_assemblies
inc ebx
mov qword [rbp - 0x40], r13
inc rdi
mov dword [rbp + 0x198], ebx
mov qword [rbp + 0x60], rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x68]
lea rdx, [rbp - 0x40]
call rax
movsxd rax, ebx
cmp rax, qword [rbp - 0x40]
jb 0x18000e2e4
xor eax, eax
mov r14, qword [rsp + 0x240]
mov r13, qword [rsp + 0x248]
mov r12, qword [rsp + 0x250]
mov rdi, qword [rsp + 0x258]
mov rsi, qword [rsp + 0x260]
mov r15, qword [rsp + 0x238]
add rsp, 0x268
pop rbx
pop rbp
ret
sub rax, rsi
jmp 0x18000f4fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea r8, [rbp + 0x68]
mov dword [rbp + 0x68], eax
lea rdx, [rbp + 0x100]
mov qword [rbp + 0x70], r13
call fcn.18004dac0
cmp rdi, 0x10
jb 0x18000f920
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18000f918
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f95f
mov rcx, rbx
call fcn.1800fbcf0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18000f957
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f952
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f95f
call fcn.1800fbcf0
mov rax, r13
jmp 0x18000f863
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18000bbc0
int3
call fcn.18004d8a0
int3
call fcn.18000bbc0
int3
call fcn.180003f60
int3
call fcn.180003f60
int3
call fcn.18000bbc0
int3
call fcn.18000bbc0
int3
call fcn.18004d8a0
int3
call fcn.180003f60
int3
call fcn.18004d8a0
int3
call fcn.18000bbc0
int3
call fcn.18000bbc0
int3
call fcn.18004d8a0
int3
call fcn.18000bbc0
int3