Function at 0x40ac80
Capabilities:
Load windows common language runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x58f225
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x5fb1a0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], ecx
push str.mscoree.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
jne 0x40ad02
push str.D:_source_aprelSibSiblSiblClrHost.cpp
lea ecx, [ebp - 0x14]
call fcn.004020d0
mov esi, dword [eax]
mov dword [ebp - 4], edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x73
push esi
push eax
call fcn.004277f0
mov edx, dword [ebp - 0x14]
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ad02
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str.CorBindToRuntimeEx
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, eax
test ebx, ebx
jne 0x40ad66
call dword [sym.imp.KERNEL32.dll_GetLastError]
push edi
mov esi, eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push str.D:_source_aprelSibSiblSiblClrHost.cpp
lea ecx, [ebp - 0x14]
call fcn.004020d0
push 0x7c
push dword [eax]
mov dword [ebp - 4], 1
push esi
call fcn.004277f0
mov edx, dword [ebp - 0x14]
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ad66
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x10]
add esi, 8
push esi
push 0x5a1bc4
push 0x5a1bb4
push 2
push 0
push str.v2.0.50727
call ebx
test eax, eax
jns 0x40adf6
push esi
push 0x5a1bc4
push 0x5a1bb4
push 2
push 0
push str.v4.0.30319
call ebx
mov ebx, dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [ebp - 0x14], eax
test eax, eax
jns 0x40ae02
push edi
call ebx
push str.D:_source_aprelSibSiblSiblClrHost.cpp
lea ecx, [ebp - 0x10]
call fcn.004020d0
push 0x8b
push dword [eax]
mov dword [ebp - 4], 2
push dword [ebp - 0x14]
call fcn.004277f0
mov edx, dword [ebp - 0x10]
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ae02
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x40ae02
mov eax, dword [ebp - 0x10]
mov ebx, dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [eax], 1
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov dword [ebp - 0x14], eax
test eax, eax
jns 0x40ae63
mov ecx, dword [esi]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
push edi
mov dword [esi], 0
call ebx
push str.D:_source_aprelSibSiblSiblClrHost.cpp
lea ecx, [ebp - 0x18]
call fcn.004020d0
push 0x98
push dword [eax]
mov dword [ebp - 4], 3
push dword [ebp - 0x14]
call fcn.004277f0
mov edx, dword [ebp - 0x18]
add esp, 0xc
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ae63
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push edi
call ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret