Function at 0x44e600
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c7e74
mov eax, dword fs:[0]
push eax
sub esp, 0x918
mov eax, dword [0x4ff94c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor edi, edi
push edi
mov esi, ecx
push edi
lea ecx, [ebp - 0x924]
call fcn.00456120
lea ecx, [ebp - 0x850]
mov dword [ebp - 4], edi
call dword [0x4cb4cc]
lea ebx, [esi + 0x7c]
push ebx
lea ecx, [ebp - 0x850]
mov byte [ebp - 4], 1
call dword [0x4ca7ec]
push ebx
lea ecx, [ebp - 0x890]
call dword [0x4ca7ec]
lea ecx, [ebp - 0x924]
call sub.mfc100u.dll_CDialog::DoModal
cmp eax, 1
jne 0x44eb22
lea eax, [ebp - 0x890]
push eax
mov ecx, ebx
call dword [0x4ca7ec]
mov ecx, ebx
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::GetManager]
push eax
push 0x4cbbf0
lea ecx, [ebp - 0x84c]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
mov ecx, dword [ebp - 0x84c]
push ecx
mov ecx, ebx
mov byte [ebp - 4], 2
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Compare]
test eax, eax
lea ecx, [ebp - 0x84c]
sete byte [ebp - 0x851]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
cmp byte [ebp - 0x851], 0
lea ecx, [ebp - 0x850]
jne 0x44eb28
mov eax, dword [ebx]
push eax
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Compare]
test eax, eax
je 0x44e986
push 0x20019
push edi
mov ecx, esi
call fcn.0044ccf0
mov dword [ebp - 0x84c], eax
cmp eax, edi
je 0x44e79c
mov dword [ebp - 0x868], 0x400
jmp 0x44e729
mov eax, dword [ebp - 0x84c]
lea edx, [ebp - 0x878]
push edx
push 0
push 0
push 0
lea ecx, [ebp - 0x868]
push ecx
lea edx, [ebp - 0x810]
push edx
push edi
push eax
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x44e760
inc edi
mov dword [ebp - 0x868], 0x400
cmp edi, 0x14
jb 0x44e723
mov eax, dword [ebp - 0x84c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp edi, 0x14
jb 0x44e79c
mov ecx, dword [esi + 0x20]
push 0x30
push str.Pronto_Xi
push str.Cannot_save_new_view._nToo_many_views_defined.
push ecx
call dword [sym.imp.USER32.dll_MessageBoxA]
lea edx, [ebp - 0x850]
push edx
mov ecx, ebx
call dword [0x4ca7ec]
jmp 0x44eb22
push 0x20019
push 1
mov ecx, esi
call fcn.0044ccf0
mov edi, eax
test edi, edi
je 0x44e804
mov eax, dword [esi + 0x20]
push 0x24
push str.Pronto_Xi
push str.View_name_already_exists._nOverwrite_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
je 0x44e7fd
lea ecx, [ebp - 0x850]
push ecx
mov ecx, ebx
call dword [0x4ca7ec]
lea ecx, [ebp - 0x850]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x924]
mov dword [ebp - 4], 0xffffffff
call fcn.0044ae50
jmp 0x44eb4c
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0x858]
call dword [0x4cb4cc]
push 0x4cbbf0
push ebx
mov byte [ebp - 4], 3
call fcn.004043c0
add esp, 8
test al, al
je 0x44e942
cmp word [0x4f907c], 0
jne 0x44e942
push ebx
lea ecx, [ebp - 0x84c]
call dword [0x4ca8d4]
push 0
push 0x26
lea ecx, [ebp - 0x84c]
mov byte [ebp - 4], 4
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Find]
test eax, eax
js 0x44e86c
push 1
push eax
lea ecx, [ebp - 0x84c]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::Delete]
push 0x4d8814
lea ecx, [ebp - 0x860]
call dword [0x4cb4dc]
push 0x4d8810
lea ecx, [ebp - 0x85c]
mov byte [ebp - 4], 5
call dword [0x4cb4dc]
lea edx, [ebp - 0x84c]
push edx
lea eax, [ebp - 0x85c]
push eax
lea ecx, [ebp - 0x864]
push ecx
mov byte [ebp - 4], 6
call fcn.00406410
lea edx, [ebp - 0x860]
push edx
push eax
lea eax, [ebp - 0x870]
push eax
mov byte [ebp - 4], 7
call fcn.00406410
lea ecx, [esi + 0x80]
push ecx
push eax
lea edx, [ebp - 0x86c]
push edx
mov byte [ebp - 4], 8
call fcn.00406410
add esp, 0x24
push eax
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 9
call dword [0x4ca7ec]
lea ecx, [ebp - 0x86c]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x870]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x864]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x85c]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x860]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x84c]
mov byte [ebp - 4], 3
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
jmp 0x44e955
lea eax, [esi + 0x80]
push eax
lea ecx, [ebp - 0x858]
call dword [0x4ca7ec]
mov ecx, dword [ebp - 0x858]
push ecx
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetWindowTextW
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x44e976
mov edx, dword [ebp - 0x858]
push edx
call sub.mfc100u.dll_CWnd::SetWindowTextW
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
cmp dword [esi + 0xbc], 0
mov dword [esi + 0xa0], 0
je 0x44eb22
mov eax, dword [esi + 0x8c]
mov eax, dword [eax + 0x14]
mov bl, 0xa
test eax, eax
je 0x44e9cb
lea esp, [esp]
cmp byte [eax + 0x56], bl
je 0x44e9bd
mov eax, dword [eax]
test eax, eax
jne 0x44e9b0
jmp 0x44e9cb
mov eax, dword [eax + 0x68]
test eax, eax
je 0x44e9cb
mov ecx, eax
call fcn.0042ad00
mov eax, dword [esi + 0x78]
test eax, eax
je 0x44e9f2
mov eax, dword [eax + 0x120]
test eax, eax
je 0x44e9f2
cmp dword [ebp + 8], 0
mov dword [eax + 0x74], 1
je 0x44eb22
jmp 0x44eb19
cmp word [0x4f907c], 0
je 0x44eb22
mov ecx, dword [esi + 0x8c]
test dword [ecx + 0x10], 0x800000
je 0x44eb22
push 0x228
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [ebp - 0x864], eax
mov byte [ebp - 4], bl
test eax, eax
je 0x44ea36
mov ecx, eax
call fcn.00491c90
jmp 0x44ea38
xor eax, eax
mov edx, dword [esi + 0x78]
mov dword [edx + 0x120], eax
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x120]
push eax
mov byte [ebp - 4], 1
call fcn.00491da0
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x11c]
test ecx, ecx
je 0x44ea66
call fcn.00401e60
push 0
push 1
mov ecx, esi
call fcn.0044d890
mov ecx, dword [esi + 0x78]
push 5
push 0
push 0
call fcn.00403420
mov ecx, dword [esi + 0x78]
push eax
call fcn.00403450
push eax
push 0
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetWindowPos
mov eax, dword [esi + 0x78]
mov edx, dword [eax + 0x20]
lea ecx, [ebp - 0x820]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [esi + 0x78]
call fcn.00403420
mov ecx, dword [esi + 0x78]
mov edi, eax
call fcn.00403510
add edi, eax
mov eax, dword [esi + 0x78]
add edi, dword [eax + 0x128]
lea ecx, [ebp - 0x888]
add edi, dword [ebp - 0x814]
push 1
push ecx
call fcn.0044ab60
mov eax, dword [ebp - 0x87c]
add esp, 8
cmp edi, eax
jle 0x44eae6
mov edi, eax
mov ecx, dword [esi + 0x78]
lea edx, [ebp - 0x848]
push edx
call fcn.00402340
mov eax, dword [ebp - 0x82c]
cmp edi, eax
jge 0x44eb01
mov edi, eax
mov eax, dword [ebp - 0x818]
mov ecx, dword [esi + 0x78]
push 0x66
push edi
push eax
push 0
push 0
push 0
call sub.mfc100u.dll_CWnd::SetWindowPos
push 0xfffffffffffffffe
mov ecx, esi
call fcn.0044df50
lea ecx, [ebp - 0x850]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x890]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x924]
call sub.mfc100u.dll_CDialog::CDialog
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b7f56
mov esp, ebp
pop ebp
ret 4