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

Disassembly:
push 0xffffffffffffffff
push 0x101553c3
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101f2fb0]
xor eax, esp
push eax
lea eax, [esp + 0x90]
mov dword fs:[0], eax
mov esi, ecx
push 0x54
call sub.MSVCR90.dll_void____cdecl_operator_new_unsigned_int_
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
xor ebx, ebx
mov dword [esp + 0x98], ebx
cmp edi, ebx
je 0x1011f989
lea ecx, [edi + 4]
call fcn.101046b0
lea ecx, [edi + 0x34]
mov dword [edi], vtable.EnumForReg.0
call fcn.1010a440
lea ecx, [edi + 0x44]
call fcn.100b20a0
mov ebx, edi
push ebx
lea ecx, [esi + 0xf8]
mov dword [esp + 0x9c], 0xffffffff
call fcn.10102a30
mov eax, dword [0x1018c384]
lea edi, [ebx + 0x24]
mov dword [edi], eax
mov ecx, dword [0x1018c388]
mov dword [edi + 4], ecx
mov edx, dword [0x1018c38c]
mov dword [edi + 8], edx
mov eax, dword [0x1018c390]
lea ecx, [esp + 0x7c]
mov dword [esp + 0x2c], edi
mov dword [edi + 0xc], eax
call fcn.1010d9d0
lea ecx, [esp + 0x68]
mov dword [esp + 0x98], 1
call fcn.1010a4f0
mov ecx, esi
mov byte [esp + 0x98], 2
call fcn.10128770
mov ecx, eax
call fcn.10102260
test al, al
je 0x1011fd41
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x20]
lea ecx, [esp + 0x30]
push ecx
lea ecx, [esp + 0x38]
push ecx
lea ecx, [esp + 0x40]
push ecx
mov ecx, eax
call edx
push str.ElementType
call fcn.10105580
push eax
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.101023a0
test al, al
je 0x1011fabc
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
cmp eax, 7
jne 0x1011fddf
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x28]
lea ecx, [esp + 0x3c]
push ecx
lea ecx, [esp + 0x1c]
push ecx
mov ecx, eax
call edx
mov eax, dword [esp + 0x18]
push eax
lea ecx, [esp + 0x5c]
push ecx
mov ecx, esi
call fcn.10105210
mov edx, dword [eax]
mov dword [edi], edx
mov ecx, dword [eax + 4]
mov dword [edi + 4], ecx
mov edx, dword [eax + 8]
mov dword [edi + 8], edx
mov eax, dword [eax + 0xc]
mov ecx, esi
mov dword [edi + 0xc], eax
call fcn.10128770
mov ecx, eax
call fcn.10102330
jmp 0x1011fd2b
push str.Elements
call fcn.10105580
push eax
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.101023a0
mov ecx, esi
test al, al
je 0x1011fd1a
call fcn.10128770
mov ecx, eax
call fcn.10102260
test al, al
je 0x1011fd0a
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x20]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
push ecx
mov ecx, eax
call edx
push str.Name
call fcn.10105580
push eax
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.101023a0
test al, al
je 0x1011fdfc
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
cmp eax, 7
jne 0x1011fe19
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x28]
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call edx
mov eax, dword [esp + 0x14]
push ecx
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.10120bb0
lea ecx, [esp + 0x80]
call fcn.10124730
test al, al
jne 0x1011fe36
mov edx, dword [esp + 0x14]
push ecx
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.10120bb0
mov eax, dword [esp + 0x18]
push ecx
mov ecx, esp
mov dword [esp + 0x4c], esp
push eax
mov byte [esp + 0xa4], 3
call fcn.10120bb0
lea ecx, [esp + 0x84]
mov byte [esp + 0xa0], 2
call fcn.1011f7d0
mov ecx, dword [esp + 0x14]
push ecx
call fcn.101276b0
add esp, 4
push eax
lea ecx, [ebx + 0x34]
call fcn.10102a30
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102330
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102260
test al, al
je 0x1011fe53
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x20]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x2c]
push ecx
mov ecx, eax
call edx
push str.Value
call fcn.10105580
push eax
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.101023a0
test al, al
je 0x1011fe70
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 4]
call eax
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
cmp eax, 7
jne 0x1011fe8d
mov ecx, esi
call fcn.10128770
mov edx, dword [eax]
mov edx, dword [edx + 0x28]
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x18]
push ecx
mov ecx, eax
call edx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x48]
push eax
push ecx
call fcn.10127020
mov edi, dword [esp + 0x54]
mov ebp, dword [esp + 0x50]
add esp, 8
push edi
push ebp
lea ecx, [esp + 0x70]
call fcn.1010dbb0
test al, al
jne 0x1011feaa
push edi
push ebp
push edi
push ebp
lea ecx, [esp + 0x78]
call fcn.1011f8e0
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
push edx
push eax
lea ecx, [ebx + 0x44]
call fcn.100c7670
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102330
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102260
test al, al
jne 0x1011faf3
mov edi, dword [esp + 0x2c]
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102330
jmp 0x1011fd2b
lea eax, [ebx + 4]
push eax
call fcn.10107b80
test al, al
je 0x1011fec7
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102260
test al, al
jne 0x1011fa03
mov ecx, esi
call fcn.10128770
mov ecx, eax
call fcn.10102330
lea esi, [ebx + 4]
push 0x1018c384
push esi
call fcn.100830f0
add esp, 8
test al, al
je 0x1011fee4
lea ecx, [esi + 0x10]
call fcn.10120c70
test eax, eax
jbe 0x1011fee4
lea ecx, [esi + 0x14]
call fcn.10120c70
test eax, eax
jbe 0x1011fee4
push 0x1018c384
push edi
call fcn.100705a0
add esp, 8
test al, al
jne 0x1011fee4
lea ecx, [esp + 0x68]
mov byte [esp + 0x98], 1
call fcn.1010a510
lea ecx, [esp + 0x7c]
mov dword [esp + 0x98], 0xffffffff
call fcn.1010da80
mov ecx, dword [esp + 0x90]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x88
ret 4
push str.Empty_string_is_invalid_Enumerated_ElementType_value
lea ecx, [esp + 0x4c]
call fcn.100dc080
push 0x101d5f40
lea ecx, [esp + 0x4c]
push ecx
call sub.MSVCR90.dll__CxxThrowException
push str.Expecting_Name_element_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea edx, [esp + 0x5c]
push edx
call sub.MSVCR90.dll__CxxThrowException
push str.Invalid_Name_element_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea eax, [esp + 0x5c]
push eax
call sub.MSVCR90.dll__CxxThrowException
push str.Duplicate_Name_value_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea ecx, [esp + 0x5c]
push ecx
call sub.MSVCR90.dll__CxxThrowException
push str.Missing_matching_Value_element_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea edx, [esp + 0x5c]
push edx
call sub.MSVCR90.dll__CxxThrowException
push str.Expecting_Value_element_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea eax, [esp + 0x5c]
push eax
call sub.MSVCR90.dll__CxxThrowException
push str.Invalid_Value_element_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea ecx, [esp + 0x5c]
push ecx
call sub.MSVCR90.dll__CxxThrowException
push str.Duplicate_Value_value_in_EnumeratedType_Elements
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea edx, [esp + 0x5c]
push edx
call sub.MSVCR90.dll__CxxThrowException
push str.Unknown_element_in_EnumeratedTypeDef
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea eax, [esp + 0x5c]
push eax
call sub.MSVCR90.dll__CxxThrowException
push str.Incomplete_EnumeratedTypeDef
lea ecx, [esp + 0x5c]
call fcn.100dc080
push 0x101d5f40
lea ecx, [esp + 0x5c]
push ecx
call sub.MSVCR90.dll__CxxThrowException
int3