Function at 0x18000163c
Capabilities:
Load windows common language runtime

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
lea rbp, [rax - 0x28]
sub rsp, 0x110
mov qword [rbp - 0x48], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov rbx, rcx
lea rcx, [rbp - 8]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
lea rdx, [0x180018450]
lea rcx, [rbp - 0x80]
call fcn.180001584
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantClear]
nop
mov eax, 8
mov word [rbp - 0x78], ax
mov rcx, rbx
call fcn.180002a60
mov qword [rbp - 0x70], rax
lea rdx, str.shellenium.Program
lea rcx, [rsp + 0x78]
call fcn.180001584
nop
xor esi, esi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x58], rsi
mov qword [rbp + 0x48], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x40], rsi
lea ecx, [rsi + 0x11]
lea r8, [rsp + 0x70]
lea edx, [rsi + 1]
call qword [sym.imp.OLEAUT32.dll_SafeArrayDestroy]
lea rcx, [rsp + 0x68]
call fcn.180001580
mov r8, rax
lea rdx, [0x180018408]
lea rcx, [0x180018398]
call sub.mscoree.dll_CLRCreateInstance
test eax, eax
jns 0x180001755
lea rax, [rbp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [0x180018388]
mov qword [rsp + 0x20], rax
lea r9, [0x180018378]
lea r8d, [rsi + 3]
lea rdx, [0x180018480]
lea rcx, str.v2.0.50727
call sub.mscoree.dll_CorBindToRuntimeEx
test eax, eax
jns 0x180001802
lea rcx, str.CorBindToRuntimeEx_failed_w_hr_0x_08lx_n
jmp 0x180001a29
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rbx]
lea rcx, [rsp + 0x40]
call fcn.180001580
mov r9, rax
lea r8, [0x180018418]
lea rdx, str.v4.0.30319
mov rcx, rbx
call qword [rdi + SafeArrayCopy]
test eax, eax
jns 0x18000178e
lea rcx, str.ICLRMetaHost::GetRuntime_failed_w_hr_0x_08lx_n
jmp 0x180001a29
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
lea rdx, [rbp + 0x38]
call qword [rax + 0x50]
test eax, eax
jns 0x1800017ad
lea rcx, str.ICLRRuntimeInfo::IsLoadable_failed_w_hr_0x_08lx_n
jmp 0x180001a29
cmp dword [rbp + 0x38], esi
jne 0x1800017ca
lea rdx, str.v4.0.30319
lea rcx, str..NET_runtime__s_cannot_be_loaded_n
call fcn.180001be4
jmp 0x180001a30
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rbx]
lea rcx, [rbp + 0x48]
call fcn.180001580
mov r9, rax
lea r8, [0x180018428]
lea rdx, [0x180018378]
mov rcx, rbx
call qword [rdi + 0x48]
test eax, eax
jns 0x180001802
lea rcx, str.ICLRRuntimeInfo::GetInterface_failed_w_hr_0x_08lx_n
jmp 0x180001a29
mov rcx, qword [rbp + 0x48]
mov rax, qword [rcx]
call qword [rax + 0x50]
test eax, eax
jns 0x18000181c
lea rcx, str.CLR_failed_to_start_w_hr_0x_08lx_n
jmp 0x180001a29
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x18000182c
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x50], rsi
mov rcx, qword [rbp + 0x48]
mov rax, qword [rcx]
lea rdx, [rsp + 0x50]
call qword [rax + 0x68]
test eax, eax
jns 0x180001850
lea rcx, str.ICorRuntimeHost::GetDefaultDomain_failed_w_hr_0x_08lx_n
jmp 0x180001a29
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x180001b2c
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x18000186e
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x48], rsi
mov rdi, qword [rbx]
lea rcx, [rsp + 0x48]
call fcn.180001580
mov r8, rax
lea rdx, [0x1800183f8]
mov rcx, rbx
call qword [rdi]
test eax, eax
jns 0x18000189f
lea rcx, str.Failed_to_get_default_AppDomain_w_hr_0x_08lx_n
jmp 0x180001a29
mov eax, dword [0x18053ce00]
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], esi
mov ecx, SafeArrayUnlock
lea r8, [rsp + 0x70]
lea edx, [rcx - 0x10]
call qword [sym.imp.OLEAUT32.dll_SafeArrayDestroy]
mov rdi, rax
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SafeArrayUnlock]
mov r8d, dword [0x18053ce00]
lea rdx, section..data
mov rcx, qword [rdi + 0x10]
call fcn.180001bb8
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SafeArrayAccessData]
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x180001b37
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x18000190a
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x58], rsi
mov rax, qword [rbx]
lea r8, [rsp + 0x58]
mov rdx, rdi
mov rcx, rbx
call qword [rax + 0x168]
test eax, eax
jns 0x180001933
lea rcx, str.Failed_to_load_the_assembly_w_hr_0x_08lx_n
jmp 0x180001a29
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x180001b42
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180001951
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x60], rsi
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x180001965
mov rdx, qword [rax]
jmp 0x180001968
mov rdx, rsi
mov rax, qword [rbx]
lea r8, [rsp + 0x60]
mov rcx, rbx
call qword [rax + 0x88]
test eax, eax
jns 0x180001989
lea rcx, str.Failed_to_get_the_Type_interface_w_hr_0x_08lx_n
jmp 0x180001a29
mov ecx, SafeArrayGetDim
xor edx, edx
lea r8d, [rcx - 0xb]
call qword [sym.imp.OLEAUT32.dll_SafeArrayCopyData]
mov qword [rbp + 0x38], rax
mov dword [rbp + 0x40], esi
lea r8, [rbp - 0x78]
lea rdx, [rbp + 0x40]
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SafeArrayCopy]
test eax, eax
jns 0x1800019bf
lea rcx, str.SafeArrayPutElement_failed_w_hr_0x_08lx_n
jmp 0x180001a29
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp - 0x40], xmm0
movsd xmm1, qword [rbp - 0x50]
movsd qword [rbp - 0x30], xmm1
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180001b21
mov rax, qword [rbp - 0x80]
test rax, rax
je 0x1800019ed
mov rdx, qword [rax]
jmp 0x1800019f0
mov rdx, rsi
mov r10, qword [rcx]
lea rax, [rbp - 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x118
call qword [r10 + 0x1c8]
test eax, eax
jns 0x180001a30
lea rcx, str.Failed_to_invoke_method_w_hr_0x_08lx_n
mov edx, eax
call fcn.180001be4
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x180001a45
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x68], rsi
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x180001a5a
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rsp + 0x40], rsi
mov rcx, qword [rbp + 0x48]
test rcx, rcx
je 0x180001a77
mov rax, qword [rcx]
call qword [rax + 0x58]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
mov qword [rbp + 0x48], rsi
mov rax, qword [rbp + 0x38]
test rax, rax
je 0x180001a8a
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x180001a9b
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x180001aac
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x180001abd
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x180001ace
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
nop
lea rcx, [rsp + 0x78]
call fcn.180001b50
nop
lea rcx, [rbp - 0x78]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x20]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
nop
lea rcx, [rbp - 0x80]
call fcn.180001b50
nop
lea rcx, [rbp - 8]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rbx, qword [rsp + 0x130]
add rsp, 0x110
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004003
call fcn.180002a50
int3
mov ecx, 0x80004003
call fcn.180002a50
int3
mov ecx, 0x80004003
call fcn.180002a50
int3
mov ecx, 0x80004003
call fcn.180002a50
int3