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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r15
lea rbp, [rsp - 0x160]
sub rsp, 0x260
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_domain_get
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
call rax
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_domain_get_assemblies
xor r15d, r15d
mov qword [rbp + 0xf8], rax
mov qword [rbp + 0xe0], r15
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0xe0]
mov rcx, rbx
call rax
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_domain_get_assemblies
mov rsi, rax
mov qword [rbp + 0xf0], rax
mov edi, r15d
mov dword [rbp + 0x1a0], r15d
mov qword [rbp + 0x1a8], r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x1a8]
mov rcx, rbx
call rax
cmp qword [rbp + 0x1a8], rdi
jbe 0x18000f759
mov qword [rsp + 0x258], r12
mov ebx, r15d
mov qword [rsp + 0x250], r13
mov qword [rsp + 0x248], r14
mov qword [rbp + 0x98], rbx
nop word [rax + rax]
mov rax, qword [rsi + rbx*8]
lea rdx, str.il2cpp_image_get_class_count
mov rcx, qword [0x1802dfe10]
mov r14d, r15d
mov dword [rbp + 0x198], r15d
mov r12, qword [rax]
mov qword [rbp + 0xe8], r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
call rax
test rax, rax
je 0x18000f6f4
nop word [rax + rax]
mov rdx, qword [r12]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r15
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x58], r15
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18000e390
lea rcx, [rsp + 0x40]
call fcn.180040de0
mov rsi, qword [rsp + 0x58]
lea rcx, [rsp + 0x40]
mov rdi, qword [rsp + 0x40]
lea r9, str..dll
mov rbx, qword [rsp + 0x50]
cmp rsi, 0xf
mov rdx, rbx
mov qword [rsp + 0x20], 4
cmova rcx, rdi
call fcn.180040b90
cmp rbx, rax
jb 0x18000f7a5
mov rcx, rbx
mov edx, 4
sub rcx, rax
cmp rcx, rdx
cmovb rdx, rcx
cmp rsi, 0xf
lea rcx, [rsp + 0x40]
cmova rcx, rdi
sub rbx, rdx
add rcx, rax
mov r8, rbx
sub r8, rax
add rdx, rcx
inc r8
call sub.VCRUNTIME140.dll_memmove
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_image_get_class
mov qword [rsp + 0x50], rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
movsxd rdx, r14d
mov rcx, r12
call rax
mov qword [rbp + 0x88], rax
mov r13, rax
test rax, rax
jne 0x18000e48d
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x18000f69e
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e483
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f798
call fcn.1800803cc
jmp 0x18000f69e
mov rdi, qword [rax + 0x10]
xorps xmm0, xmm0
mov rbx, qword [rax + 0x18]
mov r8, 0xffffffffffffffff
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
nop dword [rax + rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x18000e4b0
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.180040de0
cmp qword [rbp - 0x70], 0
mov rdx, qword [rbp - 0x68]
sete sil
cmp rdx, 0xf
jbe 0x18000e50a
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e505
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f798
call fcn.1800803cc
mov rcx, qword [rsp + 0x50]
test sil, sil
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
je 0x18000e604
sub rax, rcx
cmp rax, 2
jb 0x18000f7ab
cmp qword [rsp + 0x58], 0xf
lea rax, [0x18026c9a4]
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x100]
call fcn.180041690
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdi + r8], 0
jne 0x18000e570
mov rdx, rdi
lea rcx, [rbp + 0x100]
call fcn.18003ec50
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x58]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x20], xmm1
cmp rdx, 0xf
jbe 0x18000e5ee
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e5e0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f767
call fcn.1800803cc
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x100]
movups xmmword [rsp + 0x50], xmm1
jmp 0x18000e844
sub rax, rcx
cmp rax, 2
jb 0x18000f79f
cmp qword [rsp + 0x58], 0xf
lea rax, [0x18026c9a4]
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x120]
call fcn.180041690
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rbx + r8], 0
jne 0x18000e650
mov rdx, rbx
lea rcx, [rbp + 0x120]
call fcn.18003ec50
mov qword [rbp + 0xd0], r15
lea rdx, [0x18026c9a4]
mov qword [rbp + 0xd8], r15
lea rcx, [rbp + 0xc0]
xorps xmm0, xmm0
mov r8d, 2
movups xmmword [rbp + 0xc0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
call fcn.18003ec50
mov qword [rbp + 0xb0], r15
xorps xmm0, xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb8], r15
mov r8, 0xffffffffffffffff
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xa0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xb0], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
inc r8
cmp byte [rdi + r8], 0
jne 0x18000e701
mov rdx, rdi
lea rcx, [rbp + 0xa0]
call fcn.18003ec50
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x58]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x20], xmm1
cmp rdx, 0xf
jbe 0x18000e77f
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e771
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f76e
call fcn.1800803cc
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rbp - 0x20]
mov rdx, qword [rbp + 0xb8]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
cmp rdx, 0xf
jbe 0x18000e7ca
mov rcx, qword [rbp + 0xa0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e7c5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f76e
call fcn.1800803cc
mov rdx, qword [rbp + 0xd8]
mov qword [rbp + 0xb0], r15
mov qword [rbp + 0xb8], 0xf
mov byte [rbp + 0xa0], 0
cmp rdx, 0xf
jbe 0x18000e824
mov rcx, qword [rbp + 0xc0]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e81f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f76e
call fcn.1800803cc
mov qword [rbp + 0xd0], r15
lea rcx, [rbp + 0x120]
mov qword [rbp + 0xd8], 0xf
mov byte [rbp + 0xc0], 0
call fcn.18003ecd0
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_class_get_methods
mov qword [rbp + 0x90], r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x90]
mov rcx, r13
call rax
mov qword [rbp + 0x40], rax
mov r15, rax
test rax, rax
je 0x18000f65e
xor r12d, r12d
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_name
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
mov rbx, rax
mov rcx, rsi
mov rax, qword [rsp + 0x50]
sub rcx, rax
cmp rcx, 2
jb 0x18000f7e7
cmp qword [rsp + 0x58], 0xf
lea rcx, [0x18026c9a4]
mov qword [rsp + 0x30], 2
lea r9, [rsp + 0x40]
cmova r9, qword [rsp + 0x40]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x20], rax
call fcn.180041690
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x18000e900
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.18003ec50
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
cmp rdx, 0xf
jbe 0x18000e974
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000e96f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f775
call fcn.1800803cc
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_param_count
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], 0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
test eax, eax
je 0x18000f266
mov rcx, qword [rsp + 0x60]
mov rax, rsi
sub rax, rcx
cmp rax, 1
jb 0x18000f7cf
cmp qword [rbp - 0x48], 0xf
lea rax, [0x18026c9a8]
mov qword [rsp + 0x30], 1
lea r9, [rbp - 0x60]
cmova r9, qword [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x40]
call fcn.180041690
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x18000ea26
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ea21
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
call fcn.1800803cc
movups xmm0, xmmword [rbp - 0x40]
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_param_count
mov ebx, r12d
movups xmmword [rbp - 0x20], xmm0
mov dword [rbp + 0x190], ebx
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
test eax, eax
je 0x18000ee8d
nop dword [rax]
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_param
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, ebx
mov rcx, r15
call rax
mov rcx, qword [0x1802dfe10]
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 + 0x30], r12
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x38], r12
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18000eac0
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.180040de0
mov r15, qword [rbp + 0x38]
lea rsi, [rbp + 0x20]
mov r14, qword [rbp + 0x20]
cmp r15, 0xf
mov rdi, qword [rbp + 0x30]
cmova rsi, r14
cmp rdi, 1
jb 0x18000eb34
mov r8, rdi
lea rbx, [rdi + rsi]
mov edx, 0x2e
mov rcx, rsi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x18000eb34
nop dword [rax]
cmp byte [rax], 0x2e
je 0x18000ec77
inc rax
mov r8, rbx
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000eb10
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
cmp rdi, rcx
jb 0x18000f7bd
sub rdi, rcx
lea rdx, [rbp + 0x20]
mov r8, 0xffffffffffffffff
cmp rdi, r8
cmovb r8, rdi
cmp r15, 0xf
cmova rdx, r14
add rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.180040de0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0xf
jbe 0x18000ebbb
mov rcx, qword [rbp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ebb6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f783
call fcn.1800803cc
movups xmm0, xmmword [rbp - 0x30]
movabs r9, 0x7fffffffffffffff
movups xmm2, xmmword [rsp + 0x60]
mov rax, r9
movups xmm1, xmmword [rbp - 0x40]
movq r14, xmm2
movq r12, xmm0
sub rax, r14
movups xmmword [rbp + 0x20], xmm1
movups xmmword [rbp + 0x30], xmm0
cmp rax, r12
jb 0x18000f7b7
mov rsi, qword [rbp - 0x20]
lea rdx, [rbp - 0x60]
psrldq xmm0, 8
lea r8, [rbp + 0x20]
movq rax, xmm0
psrldq xmm2, 8
movq r13, xmm2
lea r15, [r12 + r14]
cmp r13, 0xf
lea rdi, [rbp]
movq rcx, xmm1
mov ebx, 0xf
cmova rdx, rsi
xorps xmm0, xmm0
cmp rax, 0xf
mov qword [rbp - 0x20], rdx
movups xmmword [rbp], xmm0
cmova r8, rcx
xor eax, eax
mov qword [rsp + 0x60], r8
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
cmp r15, rbx
jbe 0x18000ecde
mov rbx, r15
or rbx, 0xf
cmp rbx, r9
jbe 0x18000ec7f
movabs rax, 0x8000000000000000
mov rbx, r9
add rax, 0x27
jmp 0x18000eca6
sub rax, rsi
jmp 0x18000eb3b
cmp rbx, 0x16
mov ecx, 0x16
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000ecc9
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f7b1
mov rcx, rax
call fcn.180080390
test rax, rax
je 0x18000f77c
mov rdx, qword [rbp - 0x20]
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18000ecda
test rcx, rcx
je 0x18000ecd7
call fcn.180080390
mov rdx, qword [rbp - 0x20]
mov rdi, rax
mov qword [rbp], rdi
mov r8, r14
mov qword [rbp + 0x10], r15
mov rcx, rdi
mov qword [rbp + 0x18], rbx
call sub.VCRUNTIME140.dll_memcpy
mov rdx, qword [rsp + 0x60]
lea rcx, [r14 + rdi]
mov r8, r12
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + r15], 0
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x10]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x18000ed3c
lea rax, [rcx + 1]
cmp rdx, 0xf
mov qword [rbp + 0x10], rax
lea rax, [rbp]
cmova rax, qword [rbp]
mov word [rax + rcx], 0x2c
lea rax, [rbp]
jmp 0x18000ed5a
lea r9, [0x18026c9b0]
mov qword [rsp + 0x20], 1
mov edx, 1
lea rcx, [rbp]
call fcn.180040c50
movups xmm0, xmmword [rax]
xor r12d, r12d
movups xmmword [rbp - 0x20], xmm0
movups xmm0, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
movups xmmword [rsp + 0x60], xmm0
cmp r13, 0xf
jbe 0x18000edb8
lea rdx, [r13 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18000edab
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f77c
mov rcx, rsi
call fcn.1800803cc
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rbp - 0x20]
mov rdx, qword [rbp + 0x18]
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x60], xmm1
cmp rdx, 0xf
jbe 0x18000edff
mov rcx, qword [rbp]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000edfa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f77c
call fcn.1800803cc
mov rdx, qword [rbp + 0x38]
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x18], 0xf
mov byte [rbp], r12b
cmp rdx, 0xf
jbe 0x18000ee4a
mov rcx, qword [rbp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ee45
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f783
call fcn.1800803cc
mov ebx, dword [rbp + 0x190]
lea rdx, str.il2cpp_method_get_param_count
mov rcx, qword [0x1802dfe10]
inc ebx
mov dword [rbp + 0x190], ebx
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], r12b
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, qword [rbp + 0x40]
mov rcx, r15
call rax
cmp ebx, eax
jb 0x18000ea70
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
mov rcx, qword [0x1802dfe10]
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 + 0x58], r12
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x60], r12
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18000eee0
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.180040de0
mov rax, qword [rbp - 0x50]
lea rdx, [rbp - 0x60]
xorps xmm0, xmm0
mov qword [rbp - 0x70], r12
lea rcx, [rbp - 0x80]
mov qword [rbp - 0x68], r12
movups xmmword [rbp - 0x80], xmm0
lea r8, [rax - 1]
cmp rax, r8
cmovb r8, rax
cmp qword [rbp - 0x48], 0xf
cmova rdx, qword [rbp - 0x60]
call fcn.180040de0
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x18000ef66
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ef61
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
call fcn.1800803cc
movups xmm0, xmmword [rbp - 0x80]
mov r15, qword [rbp + 0x60]
lea rbx, [rbp + 0x48]
mov r14, qword [rbp + 0x48]
cmp r15, 0xf
mov rdi, qword [rbp + 0x58]
movups xmmword [rbp - 0x60], xmm0
cmova rbx, r14
movups xmm0, xmmword [rbp - 0x70]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
cmp rdi, 1
jb 0x18000efd6
mov r8, rdi
lea rsi, [rbx + rdi]
mov edx, 0x2e
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x18000efd6
cmp byte [rax], 0x2e
je 0x18000f09c
inc rax
mov r8, rsi
sub r8, rax
mov rcx, rax
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x18000efb2
mov rax, 0xffffffffffffffff
lea rcx, [rax + 1]
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
cmp rdi, rcx
jb 0x18000f7c9
sub rdi, rcx
lea rdx, [rbp + 0x48]
mov r8, 0xffffffffffffffff
cmp rdi, r8
cmovb r8, rdi
cmp r15, 0xf
cmova rdx, r14
add rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.180040de0
movups xmm0, xmmword [rsp + 0x60]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
movq r13, xmm0
sub rax, r13
cmp rax, 3
jb 0x18000f7cf
mov rsi, qword [rbp - 0x80]
lea r12, [rbp - 0x60]
psrldq xmm0, 8
lea r14, [r13 + 3]
movq r15, xmm0
lea rdi, [rbp - 0x80]
cmp r15, 0xf
mov ebx, 0xf
xorps xmm0, xmm0
cmova r12, rsi
movups xmmword [rbp - 0x80], xmm0
cmp r14, rbx
jbe 0x18000f0ff
mov rbx, r14
or rbx, 0xf
cmp rbx, rcx
jbe 0x18000f0a4
movabs rax, 0x8000000000000000
mov rbx, rcx
add rax, 0x27
jmp 0x18000f0cb
sub rax, rbx
jmp 0x18000efdd
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18000f0ea
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f7c3
mov rcx, rax
call fcn.180080390
test rax, rax
je 0x18000f78a
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x18000f0fb
test rcx, rcx
je 0x18000f0f9
call fcn.180080390
mov rdi, rax
jmp 0x18000f0fb
xor edi, edi
mov qword [rbp - 0x80], rdi
mov r8, r13
mov qword [rbp - 0x70], r14
mov rdx, r12
mov qword [rbp - 0x68], rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [0x18026c9b4]
lea r9, [rbp - 0x40]
mov word [rdi + r13], ax
lea r8, [rbp - 0x80]
movzx eax, byte [0x18026c9b6]
lea rcx, [rbp - 0x20]
mov byte [rdi + r13 + 2], al
mov byte [rdi + r14], 0
call fcn.180041490
cmp r15, 0xf
jbe 0x18000f179
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18000f171
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
mov rcx, rsi
call fcn.1800803cc
movups xmm0, xmmword [rbp - 0x20]
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x50], xmm0
cmp rdx, 0xf
jbe 0x18000f1cd
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f1c8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
call fcn.1800803cc
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x18000f208
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f203
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
call fcn.1800803cc
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x18000f243
mov rcx, qword [rbp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f23e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f78a
call fcn.1800803cc
mov r15, qword [rbp + 0x40]
xor r12d, r12d
mov r13, qword [rbp + 0x88]
mov qword [rbp + 0x58], r12
mov byte [rbp + 0x48], r12b
mov qword [rbp + 0x60], 0xf
jmp 0x18000f4bb
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_method_get_return_type
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r15
call rax
mov rcx, qword [0x1802dfe10]
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 + 0x78], r12
movups xmmword [rbp + 0x68], xmm0
mov qword [rbp + 0x80], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18000f2b4
mov rdx, rax
lea rcx, [rbp + 0x68]
call fcn.180040de0
mov rsi, qword [rbp + 0x80]
lea rcx, [rbp + 0x68]
mov rdi, qword [rbp + 0x68]
lea r9, [0x18026c9ac]
mov rbx, qword [rbp + 0x78]
cmp rsi, 0xf
mov rdx, rbx
mov qword [rsp + 0x20], 1
cmova rcx, rdi
call fcn.180040b90
xorps xmm0, xmm0
mov qword [rbp - 0x30], r12
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x28], r12
lea rcx, [rax + 1]
cmp rbx, rcx
jb 0x18000f7e1
sub rbx, rcx
lea rdx, [rbp + 0x68]
mov r8, 0xffffffffffffffff
cmp rbx, r8
cmovb r8, rbx
cmp rsi, 0xf
cmova rdx, rdi
add rdx, rcx
lea rcx, [rbp - 0x40]
call fcn.180040de0
mov rcx, qword [rsp + 0x60]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 4
jb 0x18000f7db
cmp qword [rbp - 0x48], 0xf
lea rax, str.__:
mov qword [rsp + 0x30], 4
lea r9, [rbp - 0x60]
cmova r9, qword [rbp - 0x60]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x80]
call fcn.180041690
lea r9, [rbp - 0x40]
lea r8, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.180041490
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x18000f3db
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f3d6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f791
call fcn.1800803cc
movups xmm0, xmmword [rbp - 0x20]
mov rdx, qword [rbp - 0x68]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x50], xmm0
cmp rdx, 0xf
jbe 0x18000f42f
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f42a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f791
call fcn.1800803cc
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x18000f46a
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f465
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f791
call fcn.1800803cc
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x18000f4a8
mov rcx, qword [rbp + 0x68]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f4a3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f791
call fcn.1800803cc
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
movups xmm0, xmmword [rbp - 0x20]
mov rsi, qword [rsp + 0x60]
lea rcx, [rbp - 0x60]
mov rax, 0xffffffffffffffff
psrldq xmm0, 8
movq r14, xmm0
cmp r14, 0xf
cmova rcx, rsi
inc rax
cmp byte [rcx + rax], 0
jne 0x18000f4e1
cmp r14, 0xf
lea rdx, [rbp - 0x60]
mov ebx, 0xffffffff
cmova rdx, rsi
test eax, eax
je 0x18000f534
mov r8d, eax
lea r13, [0x180243030]
nop dword [rax]
movsx ecx, byte [rdx]
lea rdx, [rdx + 1]
mov eax, ebx
shr ebx, 8
xor rcx, rax
movzx eax, cl
xor ebx, dword [r13 + rax*4]
sub r8, 1
jne 0x18000f510
mov r13, qword [rbp + 0x88]
mov rdi, qword [0x1802dfe80]
not ebx
mov dword [rsp + 0x68], r12d
mov rcx, rdi
mov rax, qword [rdi + 8]
mov qword [rsp + 0x60], rax
cmp byte [rax + 0x19], 0
jne 0x18000f57d
mov qword [rsp + 0x60], rax
cmp dword [rax + 0x20], ebx
jae 0x18000f569
mov rax, qword [rax + 0x10]
mov dword [rsp + 0x68], r12d
jmp 0x18000f577
mov rcx, rax
mov dword [rsp + 0x68], 1
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18000f554
cmp byte [rcx + 0x19], 0
jne 0x18000f588
cmp ebx, dword [rcx + 0x20]
jae 0x18000f5df
movabs rax, 0x555555555555555
cmp qword [0x1802dfe88], rax
je 0x18000f7d5
mov ecx, 0x30
call fcn.180080390
movups xmm0, xmmword [rsp + 0x60]
mov r8, rax
lea rdx, [rsp + 0x60]
lea rcx, [0x1802dfe80]
mov dword [rax + 0x20], ebx
mov qword [rax + 0x28], r15
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
movaps xmmword [rsp + 0x60], xmm0
call fcn.180041230
cmp r14, 0xf
jbe 0x18000f616
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x18000f60e
mov rsi, qword [rsi - 8]
add rdx, 0x27
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f798
mov rcx, rsi
call fcn.1800803cc
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_class_get_methods
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x90]
mov rcx, r13
call rax
mov qword [rbp + 0x40], rax
mov r15, rax
movabs rsi, 0x7fffffffffffffff
test rax, rax
jne 0x18000e890
mov r14d, dword [rbp + 0x198]
mov r12, qword [rbp + 0xe8]
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x18000f69b
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000f696
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f798
call fcn.1800803cc
xor r15d, r15d
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_image_get_class_count
inc r14d
mov qword [rsp + 0x50], r15
mov dword [rbp + 0x198], r14d
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, r12
call rax
movsxd rcx, r14d
cmp rcx, rax
jb 0x18000e370
mov rbx, qword [rbp + 0x98]
mov edi, dword [rbp + 0x1a0]
mov rsi, qword [rbp + 0xf0]
mov rcx, qword [0x1802dfe10]
lea rdx, str.il2cpp_domain_get_assemblies
inc edi
mov qword [rbp + 0x1a8], r15
inc rbx
mov dword [rbp + 0x1a0], edi
mov qword [rbp + 0x98], rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbp + 0xf8]
lea rdx, [rbp + 0x1a8]
call rax
movsxd rax, edi
cmp rax, qword [rbp + 0x1a8]
jb 0x18000e330
mov r13, qword [rsp + 0x250]
mov r12, qword [rsp + 0x258]
mov r14, qword [rsp + 0x248]
add rsp, 0x260
pop r15
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 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.180009520
int3
call fcn.18003f940
int3
call fcn.180009520
int3
call fcn.180004040
int3
call fcn.180009520
int3
call fcn.18003f940
int3
call fcn.180004040
int3
call fcn.18003f940
int3
call fcn.180009520
int3
call fcn.18000a1e0
int3
call fcn.180009520
int3
call fcn.18003f940
int3
call fcn.180009520
int3