Function at 0x1800508a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2f0
xor ebx, ebx
mov esi, ebx
mov dword [rsp + 0x20], ebx
lea r13, [rbx - 1]
cmp byte [0x18032e2d0], bl
jne 0x1800514d8
mov qword [rsp + 0x180], rbx
nop dword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x150], xmm0
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x168], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x150]
call fcn.180007eb0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x160], 0x18
mov qword [rsp + 0x168], 0x1f
vmovups xmm0, xmmword [str.il2cpp_class_get_methods]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d6fb8]
vmovsd qword [rax + 0x10], xmm0
mov byte [rax + 0x18], 0
lea r8, [rsp + 0x180]
mov rdx, qword [rsp + 0x338]
lea rcx, [rsp + 0x150]
call fcn.180058e60
mov r12, rax
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x168]
cmp rdx, 0x10
jb 0x1800509c3
inc rdx
mov rcx, qword [rsp + 0x150]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800509be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522ac
call fcn.18006f1e0
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], 0xf
mov byte [rsp + 0x150], 0
test r12, r12
je 0x180052296
mov dword [rsp + 0x340], ebx
mov ecx, 0x60
call fcn.18006ee24
mov r14, rax
mov qword [rsp + 0x1a0], rax
xor eax, eax
mov qword [r14], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [r14 + 8], xmm0
mov qword [r14 + 0x18], rbx
mov qword [r14 + 0x20], 0xf
mov byte [r14 + 8], al
or esi, 1
mov dword [rsp + 0x20], esi
vmovups ymmword [r14 + 0x28], ymm0
lea r15, [r14 + 0x48]
mov qword [r15], rbx
mov qword [r15 + 8], rbx
mov qword [r15 + 0x10], rbx
or esi, 2
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x348], r14
mov qword [r14], r12
vmovups xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x148], 0xf
lea edx, [rax + 0x20]
lea rcx, [rsp + 0x130]
vzeroupper
call fcn.180007eb0
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x140], 0x16
mov qword [rsp + 0x148], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_name]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6f70]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d6f74]
mov word [rax + 0x14], cx
mov byte [rax + 0x16], 0
mov rdx, r12
lea rcx, [rsp + 0x130]
call fcn.180016b30
mov r8, r13
inc r8
cmp byte [rax + r8], 0
jne 0x180050ae0
mov rdx, rax
lea rcx, [r14 + 8]
call fcn.1800169b0
nop
mov rdx, qword [rsp + 0x148]
cmp rdx, 0x10
jb 0x180050b3a
inc rdx
mov rcx, qword [rsp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050b35
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522b2
call fcn.18006f1e0
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], 0xf
mov byte [rsp + 0x130], 0
mov rax, qword [rsp + 0x330]
mov qword [r14 + 0x28], rax
mov ecx, 0x30
call fcn.18006ee24
mov rdi, rax
mov qword [rsp + 0x198], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x108], xmm0
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x120], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x108]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x118], 0x1d
mov qword [rsp + 0x120], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_return_type]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d6f88]
vmovsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1800d6f90]
mov dword [rax + 0x18], ecx
movzx eax, byte [0x1800d6f94]
mov byte [rdx + 0x1c], al
mov byte [rdx + 0x1d], 0
or esi, 4
mov dword [rsp + 0x20], esi
mov rdx, r12
lea rcx, [rsp + 0x108]
call fcn.180016b30
mov qword [rdi], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rdi + 8], xmm0
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], 0xf
mov byte [rdi + 8], 0
or esi, 8
mov dword [rsp + 0x20], esi
mov dword [rdi + 0x28], ebx
mov qword [r14 + 0x30], rdi
test sil, 4
je 0x180050cb2
and esi, 0xfffffffb
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0x120]
cmp rdx, 0x10
jb 0x180050c96
inc rdx
mov rcx, qword [rsp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050c91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522b8
call fcn.18006f1e0
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x120], 0xf
mov byte [rsp + 0x108], 0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0x100], 0xf
mov edx, 0x20
lea rcx, [rsp + 0xe8]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf8], 0x17
mov qword [rsp + 0x100], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_flags]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d7010]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d7014]
mov word [rax + 0x14], cx
movzx eax, byte [0x1800d7016]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0
lea r8, [rsp + 0x340]
mov rdx, r12
lea rcx, [rsp + 0xe8]
call fcn.180058e60
mov dword [r14 + 0x38], eax
mov rdx, qword [rsp + 0x100]
cmp rdx, 0x10
jb 0x180050d9d
inc rdx
mov rcx, qword [rsp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050d98
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522be
call fcn.18006f1e0
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x100], 0xf
mov byte [rsp + 0xe8], 0
mov eax, dword [r14 + 0x38]
shr eax, 4
and al, 1
mov byte [r14 + 0x3c], al
mov rax, qword [r14 + 0x30]
mov rdi, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x80], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x68]
call fcn.180007eb0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x78], 0x14
mov qword [rsp + 0x80], 0x1f
vmovups xmm0, xmmword [str.il2cpp_type_get_name]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6ef8]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.180016b30
mov rcx, qword [r14 + 0x30]
add rcx, 8
mov r8, r13
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180050e50
mov rdx, rax
call fcn.1800169b0
nop
mov rdx, qword [rsp + 0x80]
cmp rdx, 0x10
jb 0x180050ea3
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050e9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522c4
call fcn.18006f1e0
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], 0xf
mov byte [rsp + 0x68], 0
mov rax, qword [r14 + 0x30]
mov dword [rax + 0x28], r13d
mov rdi, qword [rsp + 0x170]
mov rax, qword [rdi]
mov qword [r14 + 0x40], rax
mov rcx, qword [rsp + 0x330]
sub rcx, 0xffffffffffffff80
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x180050ef0
mov qword [rdx], r14
add qword [rcx + 8], 8
jmp 0x180050efd
lea r8, [rsp + 0x348]
call fcn.18005ac70
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa0], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x88]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], 0x1d
mov qword [rsp + 0xa0], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_param_count]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d7028]
vmovsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1800d7030]
mov dword [rax + 0x18], ecx
movzx eax, byte [0x1800d7034]
mov byte [rdx + 0x1c], al
mov byte [rdx + 0x1d], 0
mov rdx, rdi
lea rcx, [rsp + 0x88]
call fcn.180016b30
mov r14d, eax
mov dword [rsp + 0x348], eax
mov rdx, qword [rsp + 0xa0]
cmp rdx, 0x10
jb 0x180050fe8
inc rdx
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050fe3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522ca
call fcn.18006f1e0
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], 0xf
mov byte [rsp + 0x88], 0
mov r12d, ebx
test r14d, r14d
jle 0x1800508e0
mov ecx, 0x28
call fcn.18006ee24
mov r14, rax
mov qword [rsp + 0x190], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc0], 0xf
mov edx, 0x20
lea rcx, [rsp + 0xa8]
call fcn.180007eb0
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb8], 0x1c
mov qword [rsp + 0xc0], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_param_name]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d6fd8]
vmovsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1800d6fe0]
mov dword [rax + 0x18], ecx
mov byte [rax + 0x1c], 0
or esi, 0x10
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov rdx, rdi
lea rcx, [rsp + 0xa8]
call fcn.180059070
vpxor xmm0, xmm0, xmm0
vmovups xmmword [r14], xmm0
mov qword [r14 + 0x10], rbx
mov qword [r14 + 0x18], rbx
mov r8, r13
inc r8
cmp byte [rax + r8], 0
jne 0x1800510d4
mov rdx, rax
mov rcx, r14
call fcn.180007dc0
nop
or esi, 0x20
mov dword [rsp + 0x20], esi
mov ecx, 0x30
call fcn.18006ee24
mov r13, rax
mov qword [rsp + 0x228], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xc8], xmm0
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe0], 0xf
mov edx, 0x20
lea rcx, [rsp + 0xc8]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd8], 0x17
mov qword [rsp + 0xe0], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_param]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6ff8]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d6ffc]
mov word [rax + 0x14], cx
movzx eax, byte [0x1800d6ffe]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0
or esi, 0x40
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov rdx, rdi
lea rcx, [rsp + 0xc8]
call fcn.180059070
mov qword [r13], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x40], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x28]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x38], 0x17
mov qword [rsp + 0x40], 0x1f
vmovups xmm0, xmmword [str.il2cpp_method_get_param]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6ff8]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d6ffc]
mov word [rax + 0x14], cx
movzx eax, byte [0x1800d6ffe]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0
bts esi, 7
mov dword [rsp + 0x20], esi
mov r8d, r12d
mov rdx, rdi
lea rcx, [rsp + 0x28]
call fcn.180059070
mov rdi, rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x60], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x48]
call fcn.180007eb0
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], 0x14
mov qword [rsp + 0x60], 0x1f
vmovups xmm0, xmmword [str.il2cpp_type_get_name]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6ef8]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
bts esi, 8
mov dword [rsp + 0x20], esi
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.180016b30
vpxor xmm0, xmm0, xmm0
lea rcx, [r13 + 8]
vmovups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rbx
mov qword [rcx + 0x18], rbx
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1800512d0
mov rdx, rax
call fcn.180007dc0
nop
bts esi, 9
mov dword [rsp + 0x20], esi
mov dword [r13 + 0x28], edi
mov qword [r14 + 0x20], r13
mov qword [rsp + 0x178], r14
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x18005130f
mov qword [rdx], r14
add qword [r15 + 8], 8
jmp 0x180051320
lea r8, [rsp + 0x178]
mov rcx, r15
call fcn.18005ac70
nop
bt esi, 8
jae 0x18005137e
btr esi, 8
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x18005136b
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051366
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522d0
call fcn.18006f1e0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
test sil, sil
jns 0x1800513db
btr esi, 7
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x1800513c8
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800513c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522d6
call fcn.18006f1e0
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], 0xf
mov byte [rsp + 0x28], 0
test sil, 0x40
je 0x180051447
and esi, 0xffffffbf
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0xe0]
cmp rdx, 0x10
jb 0x18005142b
inc rdx
mov rcx, qword [rsp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051426
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522dc
call fcn.18006f1e0
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], 0xf
mov byte [rsp + 0xc8], 0
test sil, 0x10
je 0x1800514b3
and esi, 0xffffffef
mov dword [rsp + 0x20], esi
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x180051497
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051492
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522e2
call fcn.18006f1e0
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], 0xf
mov byte [rsp + 0xa8], 0
inc r12d
cmp r12d, dword [rsp + 0x348]
mov rdi, qword [rsp + 0x170]
mov r13, 0xffffffffffffffff
jl 0x180051010
jmp 0x1800508e0
mov qword [rsp + 0x190], rbx
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0x228], 0x1f
mov qword [rsp + 0x2c8], 0x16
mov edx, 0x20
lea rcx, [rsp + 0xa8]
vzeroupper
call fcn.180007eb0
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb8], 0x16
mov qword [rsp + 0xc0], 0x1f
vmovups xmm0, xmmword [str.mono_class_get_methods]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d7080]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d7084]
mov word [rax + 0x14], cx
mov byte [rax + 0x16], 0
lea r8, [rsp + 0x190]
mov rdx, qword [rsp + 0x338]
lea rcx, [rsp + 0xa8]
call fcn.180058e60
mov r14, rax
mov qword [rsp + 0x230], rax
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x1800515f5
inc rdx
mov qword [rsp + 0x1e8], rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800515f0
add rdx, 0x27
mov qword [rsp + 0x1e8], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522e8
call fcn.18006f1e0
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], 0xf
mov byte [rsp + 0xa8], 0
test r14, r14
je 0x180052285
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x130], xmm0
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rbx
mov qword [rsp + 0x148], 0xf
mov qword [rsp + 0x2c0], 0x1f
mov qword [rsp + 0x2b0], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x130]
call fcn.180007eb0
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x140], 0x15
mov qword [rsp + 0x148], 0x1f
vmovups xmm0, xmmword [str.mono_method_signature]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d7098]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d709c]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
mov rdx, r14
lea rcx, [rsp + 0x130]
call fcn.180016b30
mov r12, rax
mov qword [rsp + 0x220], rax
lea rcx, [rsp + 0x130]
call fcn.1800052a0
test r12, r12
je 0x180052285
mov dword [rsp + 0x340], ebx
mov ecx, 0x60
call fcn.18006ee24
mov r15, rax
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x2a8], rax
xor eax, eax
mov qword [r15], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [r15 + 8], xmm0
mov qword [r15 + 0x18], rbx
mov qword [r15 + 0x20], rbx
mov qword [r15 + 0x20], 0xf
mov byte [r15 + 8], al
bts esi, 0xa
mov dword [rsp + 0x20], esi
vmovups ymmword [r15 + 0x28], ymm0
mov qword [r15 + 0x48], rbx
mov qword [r15 + 0x50], rbx
mov qword [r15 + 0x58], rbx
bts esi, 0xb
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x178], r15
mov qword [r15], r14
mov qword [rsp + 0x188], rbx
vmovups xmmword [rsp + 0x150], xmm0
mov qword [rsp + 0x160], rbx
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x168], 0xf
mov qword [rsp + 0x2a0], 0x1f
mov qword [rsp + 0x298], 0x16
lea edx, [rax + 0x20]
lea rcx, [rsp + 0x150]
vzeroupper
call fcn.180007eb0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x160], 0x14
mov qword [rsp + 0x168], 0x1f
vmovups xmm0, xmmword [str.mono_method_get_name]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d7048]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
mov rdx, r14
lea rcx, [rsp + 0x150]
call fcn.180016b30
mov r8, r13
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x180051800
mov rdx, rax
lea rcx, [r15 + 8]
call fcn.1800169b0
nop
lea rcx, [rsp + 0x150]
call fcn.1800052a0
mov rax, qword [rsp + 0x330]
mov qword [r15 + 0x28], rax
mov ecx, 0x30
call fcn.18006ee24
mov rdi, rax
mov qword [rsp + 0x290], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x1c8], xmm0
mov qword [rsp + 0x1d8], rbx
mov qword [rsp + 0x1e0], rbx
mov qword [rsp + 0x1e0], 0xf
mov qword [rsp + 0x288], 0x1f
mov qword [rsp + 0x2b8], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x1c8]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0x1d8], 0x1e
mov qword [rsp + 0x1e0], 0x1f
vmovups xmm0, xmmword [str.mono_signature_get_return_type]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d7060]
vmovsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1800d7068]
mov dword [rax + 0x18], ecx
movzx eax, word [0x1800d706c]
mov word [rdx + 0x1c], ax
mov byte [rdx + 0x1e], 0
bts esi, 0xc
mov dword [rsp + 0x20], esi
mov rdx, r12
lea rcx, [rsp + 0x1c8]
call fcn.180016b30
mov qword [rdi], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rdi + 8], xmm0
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
mov qword [rdi + 0x20], 0xf
mov byte [rdi + 8], 0
bts esi, 0xd
mov dword [rsp + 0x20], esi
mov dword [rdi + 0x28], ebx
mov qword [r15 + 0x30], rdi
bt esi, 0xc
jae 0x18005194e
btr esi, 0xc
mov dword [rsp + 0x20], esi
lea rcx, [rsp + 0x1c8]
call fcn.1800052a0
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xc8], xmm0
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe0], 0xf
mov qword [rsp + 0x2e0], 0x1f
mov qword [rsp + 0x2d0], 0x16
mov edx, 0x20
lea rcx, [rsp + 0xc8]
call fcn.180007eb0
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd8], 0x15
mov qword [rsp + 0xe0], 0x1f
vmovups xmm0, xmmword [str.mono_method_get_flags]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d70f0]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d70f4]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
lea r8, [rsp + 0x340]
mov rdx, r14
lea rcx, [rsp + 0xc8]
call fcn.180058e60
mov dword [r15 + 0x38], eax
mov rdx, qword [rsp + 0xe0]
cmp rdx, 0x10
jb 0x180051a53
inc rdx
mov qword [rsp + 0x1f0], rdx
mov rcx, qword [rsp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051a4e
add rdx, 0x27
mov qword [rsp + 0x1f0], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522ee
call fcn.18006f1e0
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], 0xf
mov byte [rsp + 0xc8], 0
mov eax, dword [r15 + 0x38]
shr eax, 4
and al, 1
mov byte [r15 + 0x3c], al
mov rax, qword [r15 + 0x30]
mov rdi, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x40], 0xf
mov qword [rsp + 0x2d8], 0x1f
mov qword [rsp + 0x238], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x28]
call fcn.180007eb0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x38], 0x12
mov qword [rsp + 0x40], 0x1f
vmovups xmm0, xmmword [str.mono_type_get_name]
vmovups xmmword [rax], xmm0
movzx ecx, word [0x1800d6f28]
mov word [rax + 0x10], cx
mov byte [rax + 0x12], 0
mov rdx, rdi
lea rcx, [rsp + 0x28]
call fcn.180016b30
mov rcx, qword [r15 + 0x30]
add rcx, 8
mov r8, r13
inc r8
cmp byte [rax + r8], 0
jne 0x180051b11
mov rdx, rax
call fcn.1800169b0
nop
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x180051b71
inc rdx
mov qword [rsp + 0x1f8], rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051b6c
add rdx, 0x27
mov qword [rsp + 0x1f8], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522f3
call fcn.18006f1e0
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], 0xf
mov byte [rsp + 0x28], 0
mov dword [rsp + 0x348], ebx
mov rax, qword [r15 + 0x30]
mov rdx, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xf8], 0xe
mov qword [rsp + 0x100], 0xf
vmovsd xmm0, qword [str.mono_type_size]
vmovsd qword [rsp + 0xe8], xmm0
mov eax, dword [0x1800d6fa0]
mov dword [rsp + 0xf0], eax
movzx eax, word [0x1800d6fa4]
mov word [rsp + 0xf4], ax
mov byte [rsp + 0xf6], 0
lea r8, [rsp + 0x348]
lea rcx, [rsp + 0xe8]
call fcn.180058e60
mov rcx, qword [r15 + 0x30]
mov dword [rcx + 0x28], eax
lea rcx, [rsp + 0xe8]
call fcn.1800052a0
mov rcx, qword [rsp + 0x330]
sub rcx, 0xffffffffffffff80
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x180051c45
mov qword [rdx], r15
add qword [rcx + 8], 8
jmp 0x180051c52
lea r8, [rsp + 0x178]
call fcn.18005ac70
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x60], 0xf
mov qword [rsp + 0x240], 0x1f
mov qword [rsp + 0x248], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x48]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], 0x1e
mov qword [rsp + 0x60], 0x1f
vmovups xmm0, xmmword [str.mono_signature_get_param_count]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d7108]
vmovsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1800d7110]
mov dword [rax + 0x18], ecx
movzx eax, word [0x1800d7114]
mov word [rdx + 0x1c], ax
mov byte [rdx + 0x1e], 0
mov rdx, r12
lea rcx, [rsp + 0x48]
call fcn.180016b30
movsxd rdi, eax
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x180051d3e
inc rdx
mov qword [rsp + 0x200], rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051d39
add rdx, 0x27
mov qword [rsp + 0x200], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522f8
call fcn.18006f1e0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
mov eax, 8
mul rdi
cmovo rax, r13
mov rcx, rax
call fcn.18006f404
mov rdi, rax
mov qword [rsp + 0x188], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa0], 0xf
mov qword [rsp + 0x250], 0x1f
mov qword [rsp + 0x258], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x88]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], 0x1b
mov qword [rsp + 0xa0], 0x1f
vmovups xmm0, xmmword [str.mono_method_get_param_names]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d70b0]
vmovsd qword [rax + 0x10], xmm0
movzx ecx, word [0x1800d70b8]
mov word [rax + 0x18], cx
movzx eax, byte [0x1800d70ba]
mov byte [rdx + 0x1a], al
mov byte [rdx + 0x1b], 0
mov r8, rdi
mov rdx, r14
lea rcx, [rsp + 0x88]
call fcn.180059180
nop
mov rdx, qword [rsp + 0xa0]
cmp rdx, 0x10
jb 0x180051e7f
inc rdx
mov qword [rsp + 0x208], rdx
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051e7a
add rdx, 0x27
mov qword [rsp + 0x208], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800522fd
call fcn.18006f1e0
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], 0xf
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x198], rbx
mov r14d, ebx
mov dword [rsp + 0x128], ebx
nop dword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x80], 0xf
mov qword [rsp + 0x260], 0x1f
mov qword [rsp + 0x268], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x68]
call fcn.180007eb0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x78], 0x19
mov qword [rsp + 0x80], 0x1f
vmovups xmm0, xmmword [str.mono_signature_get_params]
vmovups xmmword [rax], xmm0
vmovsd xmm0, qword [0x1800d70d0]
vmovsd qword [rax + 0x10], xmm0
movzx ecx, byte [0x1800d70d8]
mov byte [rax + 0x18], cl
mov byte [rax + 0x19], 0
lea r8, [rsp + 0x198]
mov rdx, r12
lea rcx, [rsp + 0x68]
call fcn.180058e60
mov r12, rax
mov qword [rsp + 0x218], rax
mov rdx, qword [rsp + 0x80]
cmp rdx, 0x10
jb 0x180051fab
inc rdx
mov qword [rsp + 0x210], rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180051fa6
add rdx, 0x27
mov qword [rsp + 0x210], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180052303
call fcn.18006f1e0
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], 0xf
mov byte [rsp + 0x68], 0
test r12, r12
je 0x18005225a
mov dword [rsp + 0x170], ebx
lea r13, [r15 + 0x48]
mov ecx, 0x28
call fcn.18006ee24
mov rdi, rax
mov qword [rsp + 0x270], rax
movsxd rcx, r14d
mov rax, qword [rsp + 0x188]
mov rdx, qword [rax + rcx*8]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rbx
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180052010
mov rcx, rdi
call fcn.180007dc0
nop
bts esi, 0xe
mov dword [rsp + 0x20], esi
mov ecx, 0x30
call fcn.18006ee24
mov r15, rax
mov qword [rsp + 0x278], rax
mov qword [rax], r12
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x1a8], xmm0
mov qword [rsp + 0x1b8], rbx
mov qword [rsp + 0x1c0], rbx
mov qword [rsp + 0x1c0], 0xf
mov qword [rsp + 0x280], 0x1f
mov qword [rsp + 0x2e8], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x1a8]
call fcn.180007eb0
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b8], 0x12
mov qword [rsp + 0x1c0], 0x1f
vmovups xmm0, xmmword [str.mono_type_get_name]
vmovups xmmword [rax], xmm0
movzx ecx, word [0x1800d6f28]
mov word [rax + 0x10], cx
mov byte [rax + 0x12], 0
bts esi, 0xf
mov dword [rsp + 0x20], esi
mov rdx, r12
lea rcx, [rsp + 0x1a8]
call fcn.180016b30
vpxor xmm0, xmm0, xmm0
vmovups xmmword [r15 + 8], xmm0
mov qword [r15 + 0x18], rbx
mov qword [r15 + 0x20], rbx
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180052102
mov rdx, rax
lea rcx, [r15 + 8]
call fcn.180007dc0
nop
bts esi, 0x10
mov dword [rsp + 0x20], esi
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x108], xmm0
mov qword [rsp + 0x118], rbx
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x118], 0xe
mov qword [rsp + 0x120], 0xf
vmovsd xmm0, qword [str.mono_type_size]
vmovsd qword [rsp + 0x108], xmm0
mov eax, dword [0x1800d6fa0]
mov dword [rsp + 0x110], eax
movzx eax, word [0x1800d6fa4]
mov word [rsp + 0x114], ax
mov byte [rsp + 0x116], 0
bts esi, 0x11
mov dword [rsp + 0x20], esi
lea r8, [rsp + 0x170]
mov rdx, r12
lea rcx, [rsp + 0x108]
call fcn.180058e60
mov dword [r15 + 0x28], eax
mov qword [rdi + 0x20], r15
mov qword [rsp + 0x1a0], rdi
mov rdx, qword [r13 + 8]
cmp rdx, qword [r13 + 0x10]
je 0x1800521cf
mov qword [rdx], rdi
add qword [r13 + 8], 8
jmp 0x1800521e0
lea r8, [rsp + 0x1a0]
mov rcx, r13
call fcn.18005ac70
nop
bt esi, 0x11
jae 0x1800521fc
btr esi, 0x11
mov dword [rsp + 0x20], esi
lea rcx, [rsp + 0x108]
call fcn.1800052a0
nop
bt esi, 0xf
jae 0x180052218
btr esi, 0xf
mov dword [rsp + 0x20], esi
lea rcx, [rsp + 0x1a8]
call fcn.1800052a0
nop
mov r15, qword [rsp + 0x180]
jmp 0x180052240
mov r13, 0xffffffffffffffff
mov r14d, dword [rsp + 0x128]
inc r14d
mov dword [rsp + 0x128], r14d
test r12, r12
mov r12, qword [rsp + 0x220]
jne 0x180051eb0
jmp 0x180052285
cmp qword [rsp + 0x230], 0
jne 0x1800514e0
jmp 0x180052296
vzeroupper
add rsp, 0x2f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
call fcn.180075e04
int3
call fcn.180075e04
int3
call fcn.180075e04
int3
call fcn.180075e04
int3
call fcn.180075e04
int3
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
call fcn.180075e04
call fcn.180075e04
call fcn.180075e04
nop
call fcn.180075e04
int3