Function at 0x180009b38
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 [0x1801b5bb0]
lea rdx, str.il2cpp_domain_get
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov rcx, qword [0x1801b5bb0]
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 [0x1801b5bb0]
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 0x18000ab28
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 [0x1801b5bb0]
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 0x18000aadd
mov rsi, qword [rbx]
or rdi, 0xffffffffffffffff
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x58], 0xf
inc rdi
cmp byte [rsi + rdi], r12b
jne 0x180009c3c
cmp rdi, 0xf
ja 0x180009c79
mov r8, rdi
mov qword [rsp + 0x50], rdi
mov rdx, rsi
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + rdi + 0x40], r12b
mov rbx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r14, qword [rsp + 0x40]
jmp 0x180009d10
cmp rdi, r14
ja 0x18000ab6c
mov rbx, rdi
or rbx, 0xf
cmp rbx, r14
jbe 0x180009c9d
mov rbx, r14
movabs rax, 0x8000000000000027
jmp 0x180009cbe
cmp rbx, r13
cmovb rbx, r13
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x180009cdd
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000ab72
mov rcx, rax
call fcn.18006f980
test rax, rax
je 0x18000ab5f
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x180009cef
test rcx, rcx
je 0x180009cec
call fcn.18006f980
mov r14, rax
jmp 0x180009cef
mov r14, r12
mov r8, rdi
mov qword [rsp + 0x50], rdi
mov rdx, rsi
mov qword [rsp + 0x58], rbx
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov byte [r14 + rdi], r12b
mov qword [rsp + 0x40], r14
mov rcx, qword [0x1801b5bb0]
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 0x180009d79
cmp rbx, 0x10
jb 0x18000aa8c
lea rdx, [rbx + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x180009d6c
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab5f
mov rcx, r14
call fcn.18006f9bc
jmp 0x18000aa8c
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 0x180009d98
cmp r12, 0xf
ja 0x180009dd2
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 rsi, qword [rbp + 0x50]
mov r12, qword [rbp + 0x48]
mov r15, qword [rbp + 0x38]
jmp 0x180009e6a
movabs rax, 0x7fffffffffffffff
cmp r12, rax
ja 0x18000ab6c
mov rsi, r12
or rsi, 0xf
cmp rsi, rax
jbe 0x180009e00
mov rsi, rax
movabs rax, 0x8000000000000027
jmp 0x180009e26
mov eax, 0x16
cmp rsi, rax
cmovb rsi, rax
lea rcx, [rsi + 1]
cmp rcx, 0x1000
jb 0x180009e45
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000ab72
mov rcx, rax
call fcn.18006f980
test rax, rax
je 0x18000ab5f
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x180009e57
test rcx, rcx
je 0x180009e54
call fcn.18006f980
mov r15, rax
jmp 0x180009e57
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 rsi, 0x10
jb 0x180009ea8
lea rdx, [rsi + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x180009ea0
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab5f
mov rcx, r15
call fcn.18006f9bc
test r12b, r12b
je 0x180009fd1
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
sub rax, rdi
cmp rax, 2
jb 0x18000ab78
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmp rbx, 0x10
lea r15, [0x18015dbf4]
mov qword [rsp + 0x28], r15
lea rcx, [rbp + 0x78]
cmovae r9, r14
mov qword [rsp + 0x20], rdi
call fcn.18000432c
mov rdx, qword [rbp + 0x1c8]
lea rcx, [rbp + 0x78]
call fcn.1800367c4
mov rdx, qword [rsp + 0x58]
xor r12d, r12d
movups xmm0, xmmword [rax]
lea edi, [r12 + 0xf]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rdi
mov byte [rax], r12b
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x80], xmm1
cmp rdx, 0x10
jb 0x180009f72
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009f65
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab3c
call fcn.18006f9bc
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 0x80]
mov rdx, qword [rbp + 0x90]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, 0x10
jb 0x180009fba
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180009fb5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab3c
call fcn.18006f9bc
mov qword [rbp + 0x88], r12
mov qword [rbp + 0x90], rdi
mov byte [rbp + 0x78], r12b
jmp 0x18000a2f0
movabs rax, 0x7fffffffffffffff
sub rax, rdi
cmp rax, 2
jb 0x18000ab66
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmp rbx, 0x10
lea r15, [0x18015dbf4]
mov qword [rsp + 0x28], r15
lea rcx, [rbp + 0x98]
cmovae r9, r14
mov qword [rsp + 0x20], rdi
call fcn.18000432c
mov rdx, r13
lea rcx, [rbp + 0x98]
call fcn.1800367c4
xor r12d, r12d
movups xmm1, xmmword [rax + 0x10]
lea edi, [r12 + 0xf]
movups xmm0, xmmword [rax]
mov qword [rax + 0x10], r12
movq rsi, xmm1
mov qword [rax + 0x18], rdi
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 0x18000a08f
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 0x18000a1c7
movabs rdx, 0x7fffffffffffffff
mov rax, rdx
sub rax, rsi
cmp rax, 2
jb 0x18000ab66
lea r15, [rsi + 2]
mov rbx, r15
or rbx, rdi
cmp rbx, rdx
ja 0x18000a0c9
mov rcx, r14
mov rax, rdx
shr rcx, 1
sub rax, rcx
cmp r14, rax
jbe 0x18000a0d8
mov rbx, rdx
movabs rax, 0x8000000000000027
jmp 0x18000a0fd
lea rax, [r14 + rcx]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000a11c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000ab7e
mov rcx, rax
call fcn.18006f980
test rax, rax
je 0x18000ab43
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18000a12e
test rcx, rcx
je 0x18000a12b
call fcn.18006f980
mov rdi, rax
jmp 0x18000a12e
mov rdi, r12
mov qword [rbp - 0x10], r15
mov r8, rsi
mov qword [rbp - 8], rbx
mov rcx, rdi
cmp r14, 0x10
jb 0x18000a1a0
mov rbx, qword [rbp - 0x20]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
lea rdx, [r14 + 1]
mov word [rdi + rsi], ax
mov rax, rbx
mov byte [rdi + rsi + 2], r12b
mov esi, 0x1000
cmp rdx, rsi
jb 0x18000a186
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab43
mov rcx, rbx
call fcn.18006f9bc
mov qword [rbp - 0x20], rdi
lea r15, [0x18015dbf4]
mov edi, 0xf
jmp 0x18000a1cc
lea rdx, [rbp - 0x20]
call sub.VCRUNTIME140.dll_memcpy
mov eax, 0x3a3a
mov qword [rbp - 0x20], rdi
mov word [rdi + rsi], ax
lea r15, [0x18015dbf4]
mov byte [rdi + rsi + 2], r12b
mov edi, 0xf
mov esi, 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.1800367c4
mov rdx, qword [rsp + 0x58]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rdi
mov byte [rax], r12b
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x40], xmm1
cmp rdx, 0x10
jb 0x18000a247
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, rsi
jb 0x18000a23a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab43
call fcn.18006f9bc
movups xmm0, xmmword [rbp - 0x80]
movups xmm1, xmmword [rbp - 0x40]
mov rdx, qword [rbp + 0x70]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, 0x10
jb 0x18000a288
mov rcx, qword [rbp + 0x58]
inc rdx
mov rax, rcx
cmp rdx, rsi
jb 0x18000a283
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab43
call fcn.18006f9bc
mov rdx, qword [rbp + 0xb0]
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x70], rdi
mov byte [rbp + 0x58], r12b
cmp rdx, 0x10
jb 0x18000a2d1
mov rcx, qword [rbp + 0x98]
inc rdx
mov rax, rcx
cmp rdx, rsi
jb 0x18000a2cc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab43
call fcn.18006f9bc
mov qword [rbp + 0xa8], r12
movabs rsi, 0x7fffffffffffffff
mov qword [rbp + 0xb0], rdi
mov byte [rbp + 0x98], r12b
mov rcx, qword [0x1801b5bb0]
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
jmp 0x18000aa3d
mov rcx, qword [0x1801b5bb0]
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, rsi
sub rcx, rdx
mov rbx, rax
cmp rcx, 2
jb 0x18000ab9c
cmp qword [rsp + 0x58], 0x10
lea r9, [rsp + 0x40]
mov qword [rsp + 0x30], 2
lea rcx, [rbp - 0x80]
cmovae r9, qword [rsp + 0x40]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rdx
call fcn.18000432c
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.1800367c4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], rdi
mov byte [rax], r12b
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm1
cmp rdx, 0x10
jb 0x18000a3db
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a3d6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab4a
call fcn.18006f9bc
mov rcx, qword [0x1801b5bb0]
lea rdx, str.il2cpp_method_get_param_count
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], rdi
mov byte [rbp - 0x80], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
test eax, eax
je 0x18000a884
mov rcx, qword [rsp + 0x70]
mov rax, rsi
sub rax, rcx
cmp rax, 1
jb 0x18000ab96
cmp qword [rsp + 0x78], 0x10
lea rax, [0x18015dbf8]
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.18000432c
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x18000a48e
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a489
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab51
call fcn.18006f9bc
movups xmm0, xmmword [rbp - 0x40]
mov rcx, qword [0x1801b5bb0]
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
test eax, eax
je 0x18000a764
mov rcx, qword [0x1801b5bb0]
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 [0x1801b5bb0]
lea rdx, str.il2cpp_type_get_name
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rbx
call rax
and qword [rbp - 0x60], 0
mov r15, rax
and qword [rbp - 0x50], 0
mov qword [rbp - 0x48], rdi
or rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], 0
jne 0x18000a50e
cmp rdi, 0xf
ja 0x18000a53e
mov r8, rdi
mov qword [rbp - 0x50], rdi
mov rdx, r15
lea rcx, [rbp - 0x60]
call sub.VCRUNTIME140.dll_memmove
mov byte [rbp + rdi - 0x60], 0
mov rsi, qword [rbp - 0x60]
jmp 0x18000a5d6
cmp rdi, rsi
ja 0x18000ab90
mov rbx, rdi
or rbx, 0xf
cmp rbx, rsi
jbe 0x18000a562
mov rbx, rsi
movabs rax, 0x8000000000000027
jmp 0x18000a588
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000a5a7
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000ab84
mov rcx, rax
call fcn.18006f980
test rax, rax
je 0x18000ab58
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x18000a5b8
test rcx, rcx
je 0x18000a5b6
call fcn.18006f980
mov rsi, rax
jmp 0x18000a5b8
xor esi, esi
mov r8, rdi
mov qword [rbp - 0x50], rdi
mov rdx, r15
mov qword [rbp - 0x48], rbx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsi + rdi], 0
mov qword [rbp - 0x60], rsi
cmp qword [rbp - 0x48], 0x10
lea rbx, [rbp - 0x60]
mov r8, qword [rbp - 0x50]
cmovae rbx, rsi
cmp r8, 1
jb 0x18000a61c
lea rdi, [r8 + rbx]
mov esi, 0x2e
mov rcx, rbx
jmp 0x18000a610
cmp byte [rax], sil
je 0x18000a87c
inc rax
mov r8, rdi
sub r8, rax
mov rcx, rax
mov edx, esi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000a5fb
or rax, 0xffffffffffffffff
lea r8, [rax + 1]
or r9, 0xffffffffffffffff
lea rdx, [rbp + 0xc8]
lea rcx, [rbp - 0x60]
call fcn.180001c58
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.180001dc0
lea rcx, [rbp + 0xc8]
call fcn.180001d64
mov rcx, qword [rsp + 0x70]
movabs rsi, 0x7fffffffffffffff
mov rdx, qword [rbp - 0x50]
mov rax, rsi
sub rax, rcx
cmp rax, rdx
jb 0x18000ab8a
cmp qword [rsp + 0x78], 0x10
lea r9, [rsp + 0x60]
mov qword [rsp + 0x30], rdx
lea rax, [rbp - 0x60]
cmovae r9, qword [rsp + 0x60]
cmp qword [rbp - 0x48], 0x10
cmovae rax, qword [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0xc8]
call fcn.18000432c
lea r8, [0x18015dc00]
lea rdx, [rbp + 0xc8]
lea rcx, [rbp + 0x138]
call fcn.1800371e8
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001dc0
lea rcx, [rbp + 0x138]
call fcn.180001d64
lea rcx, [rbp + 0xc8]
call fcn.180001d64
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x18000a726
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a721
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab58
call fcn.18006f9bc
mov rcx, qword [0x1801b5bb0]
lea rdx, str.il2cpp_method_get_param_count
and qword [rbp - 0x50], 0
mov edi, 0xf
mov qword [rbp - 0x48], rdi
inc r12d
mov byte [rbp - 0x60], 0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
cmp r12d, eax
jb 0x18000a4c1
lea r15, [0x18015dbf4]
mov rcx, qword [0x1801b5bb0]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
mov rcx, qword [0x1801b5bb0]
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 - 0x80]
call fcn.180001e48
mov r9, qword [rsp + 0x70]
lea rdx, [rbp - 0x40]
dec r9
lea rcx, [rsp + 0x60]
xor r8d, r8d
call fcn.180001c58
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001dc0
lea rcx, [rbp - 0x40]
call fcn.180001d64
cmp qword [rbp - 0x68], 0x10
lea rcx, [rbp - 0x80]
mov rdx, qword [rbp - 0x70]
lea r9, [0x18015dbfc]
cmovae rcx, qword [rbp - 0x80]
mov qword [rsp + 0x20], 1
call fcn.180039908
or r9, 0xffffffffffffffff
lea rdx, [rbp + 0x108]
lea rcx, [rbp - 0x80]
lea r8, [rax + 1]
call fcn.180001c58
lea r8, [0x18015dc04]
mov rbx, rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xe8]
call fcn.180037188
mov r8, rbx
lea rcx, [rbp - 0x40]
mov rdx, rax
call fcn.180003ff0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001dc0
lea rcx, [rbp - 0x40]
call fcn.180001d64
lea rcx, [rbp + 0xe8]
call fcn.180001d64
lea rcx, [rbp + 0x108]
call fcn.180001d64
lea rcx, [rbp - 0x80]
call fcn.180001d64
xor r12d, r12d
jmp 0x18000a965
sub rax, rbx
jmp 0x18000a620
mov rcx, qword [0x1801b5bb0]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r14
call rax
mov rcx, qword [0x1801b5bb0]
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 - 0x80]
call fcn.180001e48
cmp qword [rbp - 0x68], 0x10
lea rcx, [rbp - 0x80]
mov rdx, qword [rbp - 0x70]
lea r9, [0x18015dbfc]
cmovae rcx, qword [rbp - 0x80]
mov qword [rsp + 0x20], 1
call fcn.180039908
or r9, 0xffffffffffffffff
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x80]
lea r8, [rax + 1]
call fcn.180001c58
lea r8, str.__:
mov rbx, rax
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0xe8]
call fcn.180037188
mov r8, rbx
lea rcx, [rbp + 0x108]
mov rdx, rax
call fcn.180003ff0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180001dc0
lea rcx, [rbp + 0x108]
call fcn.180001d64
lea rcx, [rbp + 0xe8]
call fcn.180001d64
lea rcx, [rbp - 0x40]
call fcn.180001d64
lea rcx, [rbp - 0x80]
call fcn.180001d64
mov rdi, qword [rsp + 0x78]
lea rcx, [rsp + 0x60]
mov rbx, qword [rsp + 0x60]
cmp rdi, 0x10
cmovae rcx, rbx
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r12b
jne 0x18000a980
cmp rdi, 0x10
lea r8, [rsp + 0x60]
cmovae r8, rbx
or edx, 0xffffffff
test eax, eax
je 0x18000a9c2
mov r9d, eax
movsx ecx, byte [r8]
mov eax, edx
xor rcx, rax
shr edx, 8
movzx eax, cl
inc r8
lea rcx, [0x180158d00]
xor edx, dword [rcx + rax*4]
sub r9, 1
jne 0x18000a9a0
not edx
mov qword [rbp + 0xc0], r14
mov dword [rbp + 0xb8], edx
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x128]
call fcn.180037234
cmp rdi, 0x10
jb 0x18000aa1b
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18000aa13
mov rbx, qword [rbx - 8]
add rdx, 0x27
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab5f
mov rcx, rbx
call fcn.18006f9bc
mov rcx, qword [0x1801b5bb0]
lea rdx, str.il2cpp_class_get_methods
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp]
mov rcx, r13
call rax
mov edi, 0xf
mov r14, rax
test rax, rax
jne 0x18000a31a
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x18000aa86
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000aa81
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ab5f
call fcn.18006f9bc
mov r13d, 0x16
mov r14d, dword [rbp + 0x1b0]
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1801b5bb0]
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 0x180009c27
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 [0x1801b5bb0]
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 0x180009bf0
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.180001c44
int3
call fcn.180001c44
int3
call fcn.180001ba4
int3
call fcn.180001c44
int3
call fcn.180001ba4
int3
call fcn.180001ba4
int3
call fcn.180001c44
int3
call fcn.180001c44
int3
call fcn.180001c44
int3
call fcn.180001c44
int3