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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1c0
mov r12, rdx
mov r15, rcx
xor r13d, r13d
mov edi, r13d
mov dword [rsp + 0x20], r13d
cmp byte [0x18032e2d0], dil
jne 0x18005002a
mov qword [rsp + 0x200], r13
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], r13
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_class_get_fields]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6e98]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d6e9c]
mov word [rax + 0x14], cx
movzx eax, byte [0x1800d6e9e]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0
lea r8, [rsp + 0x200]
mov rdx, r12
lea rcx, [rsp + 0x28]
call fcn.180058e60
mov r14, rax
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x18004fb49
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004fb44
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005085f
call fcn.18006f1e0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], 0xf
mov byte [rsp + 0x28], 0
test r14, r14
je 0x180050842
mov ecx, 0x48
call fcn.18006ee24
mov rsi, rax
mov qword [rsp + 0xe8], rax
mov qword [rax], r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xa0], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x88]
call fcn.180007eb0
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], 0x15
mov qword [rsp + 0xa0], 0x1f
vmovups xmm0, xmmword [str.il2cpp_field_get_name]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6e48]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d6e4c]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
or edi, 1
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0x88]
call fcn.180016b30
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsi + 8], xmm0
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x20], r13
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18004fc30
mov rdx, rax
lea rcx, [rsi + 8]
call fcn.180007dc0
nop
or edi, 2
mov dword [rsp + 0x20], edi
mov ecx, 0x30
call fcn.18006ee24
mov rbx, rax
mov qword [rsp + 0x140], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x80], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x68]
call fcn.180007eb0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x78], 0x15
mov qword [rsp + 0x80], 0x1f
vmovups xmm0, xmmword [str.il2cpp_field_get_type]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6e60]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d6e64]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
or edi, 4
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.180016b30
mov qword [rbx], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbx + 8], xmm0
mov qword [rbx + 0x18], r13
mov qword [rbx + 0x20], 0xf
mov byte [rbx + 8], 0
or edi, 8
mov dword [rsp + 0x20], edi
mov dword [rbx + 0x28], r13d
mov qword [rsi + 0x28], rbx
mov qword [rsi + 0x30], r15
vmovups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x60], 0xf
mov edx, 0x20
lea rcx, [rsp + 0x48]
call fcn.180007eb0
mov rdx, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], 0x17
mov qword [rsp + 0x60], 0x1f
vmovups xmm0, xmmword [str.il2cpp_field_get_offset]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6ee0]
mov dword [rax + 0x10], ecx
movzx ecx, word [0x1800d6ee4]
mov word [rax + 0x14], cx
movzx eax, byte [0x1800d6ee6]
mov byte [rdx + 0x16], al
mov byte [rdx + 0x17], 0
or edi, 0x10
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.180016b30
mov dword [rsi + 0x38], eax
mov byte [rsi + 0x3c], 0
mov qword [rsi + 0x40], r13
mov qword [rsp + 0x208], rsi
test dil, 0x10
je 0x18004fe09
and edi, 0xffffffef
mov dword [rsp + 0x20], edi
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x18004fdf6
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004fdf1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050865
call fcn.18006f1e0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
test dil, 4
je 0x18004fe6c
and edi, 0xfffffffb
mov dword [rsp + 0x20], edi
mov rdx, qword [rsp + 0x80]
cmp rdx, 0x10
jb 0x18004fe56
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004fe51
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005086b
call fcn.18006f1e0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], 0xf
mov byte [rsp + 0x68], 0
test dil, 1
je 0x18004fed8
and edi, 0xfffffffe
mov dword [rsp + 0x20], edi
mov rdx, qword [rsp + 0xa0]
cmp rdx, 0x10
jb 0x18004febc
inc rdx
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004feb7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050871
call fcn.18006f1e0
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], 0xf
mov byte [rsp + 0x88], 0
cmp dword [rsi + 0x38], 0
setle al
mov byte [rsi + 0x3c], al
mov rax, qword [rsi + 0x28]
mov rbx, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc0], 0xf
mov edx, 0x20
lea rcx, [rsp + 0xa8]
call fcn.180007eb0
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb8], 0x14
mov qword [rsp + 0xc0], 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, rbx
lea rcx, [rsp + 0xa8]
call fcn.180016b30
mov rcx, qword [rsi + 0x28]
add rcx, 8
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18004ff80
mov rdx, rax
call fcn.1800169b0
nop
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x18004ffd6
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004ffd1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050877
call fcn.18006f1e0
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], 0xf
mov byte [rsp + 0xa8], 0
mov rax, qword [rsi + 0x28]
mov dword [rax + 0x28], 0xffffffff
lea rcx, [r15 + 0x68]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x180050018
mov qword [rdx], rsi
add qword [rcx + 8], 8
jmp 0x18004fa80
lea r8, [rsp + 0x208]
call fcn.18005ac70
jmp 0x18004fa80
mov qword [rsp + 0x208], r13
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xa8], xmm0
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], r13
mov qword [rsp + 0xc0], 0xf
mov qword [rsp + 0x140], 0x1f
mov qword [rsp + 0x148], 0x16
mov edx, 0x20
lea rcx, [rsp + 0xa8]
call fcn.180007eb0
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb8], 0x15
mov qword [rsp + 0xc0], 0x1f
vmovups xmm0, xmmword [str.mono_class_get_fields]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6eb0]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d6eb4]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
lea r8, [rsp + 0x208]
mov rdx, r12
lea rcx, [rsp + 0xa8]
call fcn.180058e60
mov r14, rax
mov qword [rsp + 0x150], rax
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x18005013e
inc rdx
mov qword [rsp + 0x110], rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050139
add rdx, 0x27
mov qword [rsp + 0x110], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005087d
call fcn.18006f1e0
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], 0xf
mov byte [rsp + 0xa8], 0
test r14, r14
je 0x180050837
mov ecx, 0x48
call fcn.18006ee24
mov rbx, rax
mov qword [rsp + 0x158], rax
mov qword [rax], r14
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x80], 0xf
mov qword [rsp + 0x160], 0x1f
mov qword [rsp + 0x168], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x68]
call fcn.180007eb0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x78], 0x13
mov qword [rsp + 0x80], 0x1f
vmovups xmm0, xmmword [str.mono_field_get_name]
vmovups xmmword [rax], xmm0
movzx ecx, word [0x1800d6ec8]
mov word [rax + 0x10], cx
movzx ecx, byte [0x1800d6eca]
mov byte [rax + 0x12], cl
mov byte [rax + 0x13], 0
or edi, 0x20
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0x68]
call fcn.180016b30
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbx + 8], xmm0
mov qword [rbx + 0x18], r13
mov qword [rbx + 0x20], r13
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180050230
mov rdx, rax
lea rcx, [rbx + 8]
call fcn.180007dc0
nop
or edi, 0x40
mov dword [rsp + 0x20], edi
mov ecx, 0x30
call fcn.18006ee24
mov rsi, rax
mov qword [rsp + 0x170], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x100], r13
mov qword [rsp + 0x108], r13
mov qword [rsp + 0x108], 0xf
mov qword [rsp + 0x178], 0x1f
mov qword [rsp + 0x180], 0x16
mov edx, 0x20
lea rcx, [rsp + 0xf0]
call fcn.180007eb0
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x100], 0x13
mov qword [rsp + 0x108], 0x1f
vmovups xmm0, xmmword [str.mono_field_get_type]
vmovups xmmword [rax], xmm0
movzx ecx, word [0x1800d6f40]
mov word [rax + 0x10], cx
movzx ecx, byte [0x1800d6f42]
mov byte [rax + 0x12], cl
mov byte [rax + 0x13], 0
bts edi, 7
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0xf0]
call fcn.180016b30
mov qword [rsi], rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsi + 8], xmm0
mov qword [rsi + 0x18], r13
mov qword [rsi + 0x20], r13
mov qword [rsi + 0x20], 0xf
mov byte [rsi + 8], 0
bts edi, 8
mov dword [rsp + 0x20], edi
mov dword [rsi + 0x28], r13d
mov qword [rbx + 0x28], rsi
mov qword [rbx + 0x30], r15
vmovups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xa0], 0xf
mov qword [rsp + 0x188], 0x1f
mov qword [rsp + 0x190], 0x16
mov edx, 0x20
lea rcx, [rsp + 0x88]
call fcn.180007eb0
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x98], 0x15
mov qword [rsp + 0xa0], 0x1f
vmovups xmm0, xmmword [str.mono_field_get_offset]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6f58]
mov dword [rax + 0x10], ecx
movzx ecx, byte [0x1800d6f5c]
mov byte [rax + 0x14], cl
mov byte [rax + 0x15], 0
bts edi, 9
mov dword [rsp + 0x20], edi
mov rdx, r14
lea rcx, [rsp + 0x88]
call fcn.180016b30
mov dword [rbx + 0x38], eax
mov byte [rbx + 0x3c], 0
mov qword [rbx + 0x40], r13
mov qword [rsp + 0xe8], rbx
bt edi, 9
jae 0x180050481
btr edi, 9
mov dword [rsp + 0x20], edi
mov rdx, qword [rsp + 0xa0]
cmp rdx, 0x10
jb 0x180050465
inc rdx
mov qword [rsp + 0x118], rdx
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050460
add rdx, 0x27
mov qword [rsp + 0x118], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050883
call fcn.18006f1e0
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], 0xf
mov byte [rsp + 0x88], 0
test dil, dil
jns 0x18005049c
btr edi, 7
mov dword [rsp + 0x20], edi
lea rcx, [rsp + 0xf0]
call fcn.1800052a0
nop
test dil, 0x20
je 0x18005050f
and edi, 0xffffffdf
mov dword [rsp + 0x20], edi
mov rdx, qword [rsp + 0x80]
cmp rdx, 0x10
jb 0x1800504f9
inc rdx
mov qword [rsp + 0x120], rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800504f4
add rdx, 0x27
mov qword [rsp + 0x120], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050889
call fcn.18006f1e0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], 0xf
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x200], r13d
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x60], 0xf
mov qword [rsp + 0x198], 0x1f
mov qword [rsp + 0x1a0], 0x16
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.mono_field_get_flags]
vmovups xmmword [rax], xmm0
mov ecx, dword [0x1800d6f10]
mov dword [rax + 0x10], ecx
mov byte [rax + 0x14], 0
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.180016b30
mov esi, eax
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x1800505e7
inc rdx
mov qword [rsp + 0x128], rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800505e2
add rdx, 0x27
mov qword [rsp + 0x128], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18005088e
call fcn.18006f1e0
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
test sil, 0x10
je 0x180050604
mov byte [rbx + 0x3c], 1
mov rax, qword [rbx + 0x28]
mov rsi, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xc8], xmm0
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0xe0], 0xf
mov qword [rsp + 0x1a8], 0x1f
mov qword [rsp + 0x1b0], 0x16
mov edx, 0x20
lea rcx, [rsp + 0xc8]
call fcn.180007eb0
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd8], 0x12
mov qword [rsp + 0xe0], 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, rsi
lea rcx, [rsp + 0xc8]
call fcn.180016b30
mov rcx, qword [rbx + 0x28]
add rcx, 8
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1800506c0
mov rdx, rax
call fcn.1800169b0
nop
mov rdx, qword [rsp + 0xe0]
cmp rdx, 0x10
jb 0x180050726
inc rdx
mov qword [rsp + 0x130], rdx
mov rcx, qword [rsp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180050721
add rdx, 0x27
mov qword [rsp + 0x130], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050893
call fcn.18006f1e0
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], 0xf
mov byte [rsp + 0xc8], 0
mov rax, qword [rbx + 0x28]
mov rdx, qword [rax]
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], 0xe
mov qword [rsp + 0x40], 0xf
vmovsd xmm0, qword [str.mono_type_size]
vmovsd qword [rsp + 0x28], xmm0
mov eax, dword [0x1800d6fa0]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1800d6fa4]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x36], 0
lea r8, [rsp + 0x200]
lea rcx, [rsp + 0x28]
call fcn.180058e60
mov rcx, qword [rbx + 0x28]
mov dword [rcx + 0x28], eax
mov rdx, qword [rsp + 0x40]
cmp rdx, 0x10
jb 0x1800507fe
inc rdx
mov qword [rsp + 0x138], rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800507f9
add rdx, 0x27
mov qword [rsp + 0x138], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050898
call fcn.18006f1e0
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], 0xf
mov byte [rsp + 0x28], 0
lea rcx, [r15 + 0x68]
mov rdx, qword [rcx + 8]
cmp rdx, qword [rcx + 0x10]
je 0x180050829
mov qword [rdx], rbx
add qword [rcx + 8], 8
jmp 0x180050837
lea r8, [rsp + 0xe8]
call fcn.18005ac70
nop
test r14, r14
jne 0x180050032
jmp 0x180050842
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
int3
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
nop
call fcn.180075e04
call fcn.180075e04
call fcn.180075e04
call fcn.180075e04
int3