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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x168]
sub rsp, 0x268
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_domain_get
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_domain_get_assemblies
xor r12d, r12d
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x18], r12
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x18]
mov rcx, rbx
call rax
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_domain_get_assemblies
mov rsi, rax
mov qword [rbp + 0x28], rax
mov edi, r12d
mov dword [rbp + 0x1b8], r12d
mov qword [rbp + 0x1c0], r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x1c0]
mov rcx, rbx
call rax
cmp qword [rbp + 0x1c0], r12
jbe 0x18003d32c
mov ebx, r12d
lea r13d, [r12 + 0x16]
mov qword [rbp + 0x10], rbx
movabs r14, 0x7fffffffffffffff
mov rax, qword [rsi + rbx*8]
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1801a8db0]
mov r15d, r12d
mov dword [rbp + 0x1b0], r12d
mov rbx, qword [rax]
mov qword [rbp + 8], rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
test rax, rax
je 0x18003d2e1
mov rdi, qword [rbx]
or rsi, 0xffffffffffffffff
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x58], 0xf
inc rsi
cmp byte [rdi + rsi], r12b
jne 0x18003c4b4
cmp rsi, 0xf
ja 0x18003c4f1
mov r8, rsi
mov qword [rsp + 0x50], rsi
mov rdx, rdi
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + rsi + 0x40], r12b
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x40]
jmp 0x18003c588
cmp rsi, r14
ja 0x18003d370
mov rbx, rsi
or rbx, 0xf
cmp rbx, r14
jbe 0x18003c515
mov rbx, r14
movabs rax, 0x8000000000000027
jmp 0x18003c536
cmp rbx, r13
cmovb rbx, r13
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18003c555
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18003d376
mov rcx, rax
call fcn.180065280
test rax, rax
je 0x18003d363
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x18003c567
test rcx, rcx
je 0x18003c564
call fcn.180065280
mov r14, rax
jmp 0x18003c567
mov r14, r12
mov r8, rsi
mov qword [rsp + 0x50], rsi
mov rdx, rdi
mov qword [rsp + 0x58], rbx
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + rsi], r12b
mov qword [rsp + 0x40], r14
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_image_get_class
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 8]
movsxd rdx, r15d
call rax
mov qword [rbp + 0x20], rax
mov rcx, rax
test rax, rax
jne 0x18003c5f1
cmp rbx, 0x10
jb 0x18003d290
lea rdx, [rbx + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x18003c5e4
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d363
mov rcx, r14
call fcn.1800652bc
jmp 0x18003d290
mov rax, qword [rax + 0x10]
mov r13, qword [rcx + 0x18]
mov qword [rbp + 0x38], r12
or r12, 0xffffffffffffffff
mov qword [rbp + 0x1c8], rax
mov qword [rbp + 0x50], 0xf
inc r12
cmp byte [r12 + r13], 0
jne 0x18003c610
cmp r12, 0xf
ja 0x18003c64a
mov r8, r12
mov qword [rbp + 0x48], r12
mov rdx, r13
lea rcx, [rbp + 0x38]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp + r12 + 0x38], 0
mov rdi, qword [rbp + 0x50]
mov r12, qword [rbp + 0x48]
mov r15, qword [rbp + 0x38]
jmp 0x18003c6e2
movabs rax, 0x7fffffffffffffff
cmp r12, rax
ja 0x18003d370
mov rdi, r12
or rdi, 0xf
cmp rdi, rax
jbe 0x18003c678
mov rdi, rax
movabs rax, 0x8000000000000027
jmp 0x18003c69e
mov eax, 0x16
cmp rdi, rax
cmovb rdi, rax
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x18003c6bd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18003d376
mov rcx, rax
call fcn.180065280
test rax, rax
je 0x18003d363
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x18003c6cf
test rcx, rcx
je 0x18003c6cc
call fcn.180065280
mov r15, rax
jmp 0x18003c6cf
xor r15d, r15d
mov r8, r12
mov rdx, r13
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov byte [r15 + r12], 0
test r12, r12
sete r12b
cmp rdi, 0x10
jb 0x18003c720
lea rdx, [rdi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x18003c718
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d363
mov rcx, r15
call fcn.1800652bc
movabs rdi, 0x7fffffffffffffff
mov rax, rdi
sub rax, rsi
test r12b, r12b
je 0x18003c849
cmp rax, 2
jb 0x18003d37c
lea rax, [0x18015476c]
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x40]
cmp rbx, 0x10
mov qword [rsp + 0x20], rsi
lea rcx, [rbp + 0x78]
cmovae r9, r14
call fcn.1800030a8
mov rdx, qword [rbp + 0x1c8]
lea rcx, [rbp + 0x78]
call fcn.180061674
mov rdx, qword [rsp + 0x58]
xor r12d, r12d
movups xmm0, xmmword [rax]
lea esi, [r12 + 0xf]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rsi
mov byte [rax], r12b
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x60], xmm1
cmp rdx, 0x10
jb 0x18003c7ea
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c7dd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d340
call fcn.1800652bc
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 0x60]
mov rdx, qword [rbp + 0x90]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, 0x10
jb 0x18003c832
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c82d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d340
call fcn.1800652bc
mov qword [rbp + 0x88], r12
mov qword [rbp + 0x90], rsi
mov byte [rbp + 0x78], r12b
jmp 0x18003cb4a
cmp rax, 2
jb 0x18003d36a
lea rax, [0x18015476c]
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x40]
cmp rbx, 0x10
mov qword [rsp + 0x20], rsi
lea rcx, [rbp + 0x98]
cmovae r9, r14
call fcn.1800030a8
mov rdx, r13
lea rcx, [rbp + 0x98]
call fcn.180061674
xor r12d, r12d
movups xmm1, xmmword [rax + 0x10]
movups xmm0, xmmword [rax]
mov qword [rax + 0x10], r12
movq rsi, xmm1
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
movups xmmword [rbp - 0x10], xmm1
psrldq xmm1, 8
movq r14, xmm1
mov rax, r14
sub rax, rsi
movups xmmword [rbp - 0x20], xmm0
cmp rax, 2
jb 0x18003c8f9
lea rax, [rsi + 2]
cmp r14, 0x10
mov qword [rbp - 0x10], rax
mov ecx, 0x3a3a
lea rax, [rbp - 0x20]
cmovae rax, qword [rbp - 0x20]
mov word [rax + rsi], cx
mov byte [rax + rsi + 2], r12b
jmp 0x18003ca25
mov rax, rdi
sub rax, rsi
cmp rax, 2
jb 0x18003d36a
lea r15, [rsi + 2]
mov rbx, r15
or rbx, 0xf
cmp rbx, rdi
ja 0x18003c92a
mov rcx, r14
mov rax, rdi
shr rcx, 1
sub rax, rcx
cmp r14, rax
jbe 0x18003c939
mov rbx, rdi
movabs rax, 0x8000000000000027
jmp 0x18003c95e
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18003c97d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18003d382
mov rcx, rax
call fcn.180065280
test rax, rax
je 0x18003d347
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18003c98f
test rcx, rcx
je 0x18003c98c
call fcn.180065280
mov rdi, rax
jmp 0x18003c98f
mov rdi, r12
mov qword [rbp - 0x10], r15
mov r8, rsi
mov qword [rbp - 8], rbx
mov rcx, rdi
cmp r14, 0x10
jb 0x18003ca00
mov rbx, qword [rbp - 0x20]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rdx, [r14 + 1]
mov eax, 0x3a3a
mov word [rsi + rdi], ax
mov r14d, 0x1000
mov byte [rdi + rsi + 2], r12b
mov rax, rbx
cmp rdx, r14
jb 0x18003c9e8
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d347
mov rcx, rbx
call fcn.1800652bc
mov qword [rbp - 0x20], rdi
movabs rdi, 0x7fffffffffffffff
jmp 0x18003ca2b
lea rdx, [rbp - 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
mov qword [rbp - 0x20], rdi
mov word [rsi + rdi], ax
mov byte [rdi + rsi + 2], r12b
movabs rdi, 0x7fffffffffffffff
mov r14d, 0x1000
movups xmm0, xmmword [rbp - 0x20]
mov rdx, qword [rbp + 0x1c8]
lea rcx, [rbp + 0x58]
movups xmm1, xmmword [rbp - 0x10]
movups xmmword [rbp + 0x58], xmm0
movups xmmword [rbp + 0x68], xmm1
call fcn.180061674
mov rdx, qword [rsp + 0x58]
mov esi, 0xf
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rsi
mov byte [rax], r12b
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x40], xmm1
cmp rdx, 0x10
jb 0x18003caab
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, r14
jb 0x18003ca9e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d347
call fcn.1800652bc
movups xmm0, xmmword [rbp - 0x60]
movups xmm1, xmmword [rbp - 0x40]
mov rdx, qword [rbp + 0x70]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, 0x10
jb 0x18003caec
mov rcx, qword [rbp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, r14
jb 0x18003cae7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d347
call fcn.1800652bc
mov rdx, qword [rbp + 0xb0]
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x70], rsi
mov byte [rbp + 0x58], r12b
cmp rdx, 0x10
jb 0x18003cb35
mov rcx, qword [rbp + 0x98]
inc rdx
mov rax, rcx
cmp rdx, r14
jb 0x18003cb30
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d347
call fcn.1800652bc
mov qword [rbp + 0xa8], r12
mov qword [rbp + 0xb0], rsi
mov byte [rbp + 0x98], r12b
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_class_get_methods
mov qword [rbp], r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, qword [rbp + 0x20]
lea rdx, [rbp]
mov rcx, r13
call rax
mov r14, rax
test rax, rax
je 0x18003d24d
or r15, 0xffffffffffffffff
jmp 0x18003cb8b
movabs rdi, 0x7fffffffffffffff
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_name
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
sub rcx, rdx
mov rbx, rax
cmp rcx, 2
jb 0x18003d3a0
cmp qword [rsp + 0x58], 0x10
lea rax, [0x18015476c]
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmovae r9, qword [rsp + 0x40]
lea rcx, [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
call fcn.1800030a8
mov rdx, rbx
lea rcx, [rbp - 0x60]
call fcn.180061674
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rsi
mov byte [rax], r12b
mov rdx, qword [rbp - 0x48]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rdx, 0x10
jb 0x18003cc53
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003cc4e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d34e
call fcn.1800652bc
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_param_count
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], rsi
mov byte [rbp - 0x60], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
test eax, eax
je 0x18003d0a6
mov rcx, qword [rsp + 0x70]
mov rax, rdi
sub rax, rcx
cmp rax, 1
jb 0x18003d39a
cmp qword [rsp + 0x78], 0x10
lea rax, [0x180154770]
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, [rbp - 0x40]
call fcn.1800030a8
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18003cd06
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003cd01
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d355
call fcn.1800652bc
movups xmm0, xmmword [rbp - 0x40]
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_param_count
movups xmm1, xmmword [rbp - 0x30]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
xor esi, esi
test eax, eax
je 0x18003cfa1
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_param
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, r12d
mov rcx, r14
call rax
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov r15, rax
mov qword [rbp - 0x80], rsi
or rdi, 0xffffffffffffffff
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x68], 0xf
inc rdi
cmp byte [rax + rdi], sil
jne 0x18003cd8a
cmp rdi, 0xf
ja 0x18003cdb6
mov r8, rdi
mov qword [rbp - 0x70], rdi
mov rdx, r15
lea rcx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp + rdi - 0x80], sil
jmp 0x18003ce56
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x18003d394
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x18003cde4
mov rbx, rax
movabs rax, 0x8000000000000027
jmp 0x18003ce0a
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18003ce29
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18003d388
mov rcx, rax
call fcn.180065280
test rax, rax
je 0x18003d35c
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18003ce36
test rcx, rcx
je 0x18003ce36
call fcn.180065280
mov rsi, rax
mov r8, rdi
mov qword [rbp - 0x70], rdi
mov rdx, r15
mov qword [rbp - 0x68], rbx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rdi], 0
mov qword [rbp - 0x80], rsi
xor esi, esi
lea rdx, [0x180154774]
lea rcx, [rbp - 0x80]
call fcn.1800615b8
or r15, 0xffffffffffffffff
lea rdx, [rbp + 0xc8]
mov r9, r15
lea rcx, [rbp - 0x80]
lea r8, [rax + 1]
call fcn.1800018a8
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180001a10
lea rcx, [rbp + 0xc8]
call fcn.1800019b4
mov rcx, qword [rsp + 0x70]
movabs rax, 0x7fffffffffffffff
mov rdx, qword [rbp - 0x70]
sub rax, rcx
cmp rax, rdx
jb 0x18003d38e
cmp qword [rsp + 0x78], 0x10
lea r9, [rsp + 0x60]
mov qword [rsp + 0x30], rdx
lea rax, [rbp - 0x80]
cmovae r9, qword [rsp + 0x60]
cmp qword [rbp - 0x68], 0x10
cmovae rax, qword [rbp - 0x80]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0xc8]
call fcn.1800030a8
lea r8, [0x180154778]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x138]
call fcn.180061f5c
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001a10
lea rcx, [rbp + 0x138]
call fcn.1800019b4
lea rcx, [rbp + 0xc8]
call fcn.1800019b4
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18003cf6c
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003cf67
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d35c
call fcn.1800652bc
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_param_count
mov qword [rbp - 0x70], rsi
inc r12d
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], sil
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
cmp r12d, eax
jb 0x18003cd3b
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.180001a98
mov r9, qword [rsp + 0x70]
lea rdx, [rbp - 0x40]
dec r9
lea rcx, [rsp + 0x60]
xor r8d, r8d
call fcn.1800018a8
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001a10
lea rcx, [rbp - 0x40]
call fcn.1800019b4
lea rdx, [0x180154774]
lea rcx, [rbp - 0x60]
call fcn.1800615b8
mov r9, r15
lea rdx, [rbp + 0x108]
lea rcx, [rbp - 0x60]
lea r8, [rax + 1]
call fcn.1800018a8
lea r8, [0x18015477c]
mov rbx, rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xe8]
call fcn.180061efc
mov r8, rbx
lea rcx, [rbp - 0x40]
mov rdx, rax
call fcn.180002d6c
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001a10
lea rcx, [rbp - 0x40]
call fcn.1800019b4
lea rcx, [rbp + 0xe8]
call fcn.1800019b4
lea rcx, [rbp + 0x108]
call fcn.1800019b4
lea rcx, [rbp - 0x60]
call fcn.1800019b4
xor r12d, r12d
lea esi, [r12 + 0xf]
jmp 0x18003d16f
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.180001a98
lea rdx, [0x180154774]
lea rcx, [rbp - 0x60]
call fcn.1800615b8
mov r9, r15
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x60]
lea r8, [rax + 1]
call fcn.1800018a8
lea r8, str.__:
mov rbx, rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xe8]
call fcn.180061efc
mov r8, rbx
lea rcx, [rbp + 0x108]
mov rdx, rax
call fcn.180002d6c
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001a10
lea rcx, [rbp + 0x108]
call fcn.1800019b4
lea rcx, [rbp + 0xe8]
call fcn.1800019b4
lea rcx, [rbp - 0x40]
call fcn.1800019b4
lea rcx, [rbp - 0x60]
call fcn.1800019b4
mov rdi, qword [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rbx, qword [rsp + 0x60]
cmp rdi, 0x10
mov rax, r15
cmovae rcx, rbx
inc rax
cmp byte [rcx + rax], r12b
jne 0x18003d189
cmp rdi, 0x10
lea r8, [rsp + 0x60]
cmovae r8, rbx
or edx, 0xffffffff
test eax, eax
je 0x18003d1cb
mov r9d, eax
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
shr edx, 8
movzx eax, cl
inc r8
lea rcx, [0x1800f37c0]
xor edx, dword [rcx + rax*4]
sub r9, 1
jne 0x18003d1a9
not edx
mov qword [rbp + 0xc0], r14
mov dword [rbp + 0xb8], edx
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x128]
call fcn.180061fa8
cmp rdi, 0x10
jb 0x18003d224
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18003d21c
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d363
mov rcx, rbx
call fcn.1800652bc
mov rcx, qword [0x1801a8db0]
lea rdx, str.il2cpp_class_get_methods
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp]
mov rcx, r13
call rax
mov r14, rax
test rax, rax
jne 0x18003cb81
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x18003d28a
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003d285
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003d363
call fcn.1800652bc
mov r13d, 0x16
mov r14d, dword [rbp + 0x1b0]
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1801a8db0]
inc r14d
mov dword [rbp + 0x1b0], r14d
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, qword [rbp + 8]
mov rcx, rbx
call rax
movsxd rcx, r14d
mov r15d, r14d
movabs r14, 0x7fffffffffffffff
cmp rcx, rax
jb 0x18003c49f
mov edi, dword [rbp + 0x1b8]
mov rsi, qword [rbp + 0x28]
mov rbx, qword [rbp + 0x10]
lea rdx, str.il2cpp_domain_get_assemblies
mov rcx, qword [0x1801a8db0]
inc rbx
inc edi
mov qword [rbp + 0x10], rbx
mov dword [rbp + 0x1b8], edi
mov qword [rbp + 0x1c0], r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0x30]
lea rdx, [rbp + 0x1c0]
call rax
movsxd rax, edi
cmp rax, qword [rbp + 0x1c0]
jb 0x18003c468
add rsp, 0x268
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
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 fcn.180001894
int3
call fcn.180001894
int3
call fcn.1800017f4
int3
call fcn.180001894
int3
call fcn.1800017f4
int3
call fcn.1800017f4
int3
call fcn.180001894
int3
call fcn.180001894
int3
call fcn.180001894
int3
call fcn.180001894
int3