Function at 0x180017950
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov rsi, qword [0x180059e98]
mov qword [rsp + 0x30], r14
mov r14d, 0x5a4d
cmp word [rsi], r14w
jne 0x1800179c7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800179c7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x1800179c7
nop word [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_domain_assembly_open
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018697
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x1800179a0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e50], rax
cmp word [rsi], r14w
jne 0x180017a27
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017a27
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017a27
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_assembly_get_image
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800186b2
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017a00
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x18005a2b0], rax
cmp word [rsi], r14w
jne 0x180017a87
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017a87
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017a87
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_class_from_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800186cd
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017a60
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e40], rax
cmp word [rsi], r14w
jne 0x180017ae7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017ae7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017ae7
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_class_get_method_from_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800186e8
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017ac0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e68], rax
cmp word [rsi], r14w
jne 0x180017b47
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017b47
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017b47
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_compile_method
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018703
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017b20
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059ae0], rax
cmp word [rsi], r14w
jne 0x180017ba7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017ba7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017ba7
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_runtime_invoke
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x18001871e
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017b80
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059ad8], rax
cmp word [rsi], r14w
jne 0x180017c07
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017c07
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017c07
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_class_get_field_from_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018739
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017be0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x18005a2d0], rax
cmp word [rsi], r14w
jne 0x180017c67
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017c67
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017c67
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_field_get_value
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018754
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017c40
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059ad0], rax
cmp word [rsi], r14w
jne 0x180017cc7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017cc7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017cc7
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_field_set_value
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x18001876f
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017ca0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e58], rax
cmp word [rsi], r14w
jne 0x180017d27
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017d27
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017d27
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_field_static_get_value
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x18001878a
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017d00
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059af8], rax
cmp word [rsi], r14w
jne 0x180017d85
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017d85
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017d85
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_field_static_set_value
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017d85
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017d60
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017dd5
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017dd5
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017dd5
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_method_get_class
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017dd5
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017db0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017e27
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017e27
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017e27
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_class_vtable
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800187a5
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017e00
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e30], rax
cmp word [rsi], r14w
jne 0x180017e85
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017e85
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017e85
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_vtable_get_static_field_data
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017e85
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017e60
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017ed5
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017ed5
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017ed5
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_field_get_offset
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017ed5
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017eb0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017f25
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017f25
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017f25
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_field_get_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017f25
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017f00
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017f75
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017f75
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180017f75
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_vtable_class
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180017f75
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180017f50
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180017fc7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180017fc7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180017fc7
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_runtime_class_init
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800187c0
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180017fa0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059b08], rax
cmp word [rsi], r14w
jne 0x180018025
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018025
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018025
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_image_get_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018025
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018000
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018077
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018077
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180018077
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_object_get_class
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800187db
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180018050
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059e60], rax
cmp word [rsi], r14w
jne 0x1800180d5
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800180d5
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x1800180d5
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_class_get_image
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800180d5
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x1800180b0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018125
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018125
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018125
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_class_get_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018125
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018100
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018175
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018175
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018175
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_class_get_namespace
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018175
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018150
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x1800181c7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800181c7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x1800181c7
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_field_get_parent
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800187f6
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x1800181a0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059b18], rax
cmp word [rsi], r14w
jne 0x180018225
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018225
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018225
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_class_get_methods
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018225
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018200
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018275
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018275
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018275
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_method_full_name
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018275
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018250
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x1800182c7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800182c7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x1800182c7
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_object_unbox
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018811
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x1800182a0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x180059b00], rax
cmp word [rsi], r14w
jne 0x180018325
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018325
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018325
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_string_new_len
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018325
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018300
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018377
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018377
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180018377
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_string_chars
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x18001882c
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180018350
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x18005a2b8], rax
cmp word [rsi], r14w
jne 0x1800183d5
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800183d5
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x1800183d5
nop dword [rax]
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_object_new
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800183d5
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x1800183b0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018425
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018425
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018425
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_runtime_object_init
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018425
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018400
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018475
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018475
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018475
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_array_length
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018475
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018450
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x1800184c5
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800184c5
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x1800184c5
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_class_get_type
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x1800184c5
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x1800184a0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018515
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018515
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018515
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_type_get_class
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018515
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x1800184f0
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x180018565
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018565
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
cmp dword [rdi + rsi + 0x18], ebx
jbe 0x180018565
nop
mov ecx, dword [rdi + rsi + 0x20]
lea r8, str.mono_type_get_object
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018565
inc ebx
cmp ebx, dword [rdi + rsi + 0x18]
jb 0x180018540
mov rsi, qword [0x180059e98]
cmp word [rsi], r14w
jne 0x1800185b7
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x1800185b7
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x1800185b7
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_thread_attach
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018847
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180018590
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x18005a2c0], rax
cmp word [rsi], r14w
jne 0x180018617
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018617
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180018617
nop dword [rax + rax]
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_get_root_domain
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x180018862
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x1800185f0
xor eax, eax
mov rsi, qword [0x180059e98]
mov qword [0x18005a2a8], rax
cmp word [rsi], r14w
mov r14, qword [rsp + 0x30]
jne 0x180018677
movsxd rax, dword [rsi + 0x3c]
cmp dword [rax + rsi], 0x4550
jne 0x180018677
mov edi, dword [rax + rsi + 0x88]
xor ebx, ebx
add rdi, rsi
cmp dword [rdi + 0x18], ebx
jbe 0x180018677
mov ecx, dword [rdi + 0x20]
lea r8, str.mono_domain_get
add rcx, rsi
mov edx, dword [rcx + rbx*4]
add rdx, rsi
call fcn.180017600
test al, al
jne 0x18001887d
inc ebx
cmp ebx, dword [rdi + 0x18]
jb 0x180018650
mov qword [0x18005a2c8], 0
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x1800179c9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017a29
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017a89
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017ae9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017b49
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017ba9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017c09
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017c69
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017cc9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017d29
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017e29
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180017fc9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180018079
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x1800181c9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x1800182c9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180018379
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x1800185b9
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
jmp 0x180018619
mov ecx, dword [rdi + 0x24]
add rcx, rsi
movzx edx, word [rcx + rbx*2]
mov ecx, dword [rdi + 0x1c]
add rcx, rsi
mov eax, dword [rcx + rdx*4]
add rax, rsi
mov qword [0x18005a2c8], rax
jmp 0x180018682