Function at 0x44df50
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c7d8c
mov eax, dword fs:[0]
push eax
sub esp, 0x830
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
mov edi, dword [ebp + 8]
mov esi, ecx
lea ecx, [ebp - 0x818]
mov dword [ebp - 0x828], edi
call dword [0x4cb4cc]
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x81c], eax
cmp edi, eax
jne 0x44dfc6
cmp dword [esi + 0xa0], eax
je 0x44dfb3
mov ecx, esi
call fcn.0044f430
lea ecx, [esi + 0x7c]
push 0x4cbbf0
call dword [0x4ca7f8]
jmp 0x44e138
cmp edi, 0xffffffff
jne 0x44e0e9
push 0x4cbbf0
lea ecx, [esi + 0x7c]
call dword [0x4ca7f8]
push 0x20019
push 1
mov ecx, esi
call fcn.0044ccf0
mov ebx, eax
test ebx, ebx
je 0x44e039
lea eax, [ebp - 0x834]
push eax
lea ecx, [ebp - 0x810]
push ecx
lea edx, [ebp - 0x83c]
push edx
push 0
push str.InitialView
push ebx
mov dword [ebp - 0x834], 0x800
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x44e032
lea eax, [ebp - 0x810]
push eax
lea ecx, [esi + 0x7c]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_2]
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [esi + 0x7c]
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 - 0x814]
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 - 0x814]
push ecx
lea ecx, [esi + 0x7c]
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_____::Compare]
test eax, eax
lea ecx, [ebp - 0x814]
sete bl
mov byte [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
test bl, bl
je 0x44e138
mov dword [0x52699c], 0
mov eax, dword [esi + 0x8c]
test dword [eax + 0x10], 0x800000
je 0x44e0c6
mov eax, dword [eax + 0x14]
test eax, eax
je 0x44e0c6
cmp byte [eax + 0x56], 0xa
je 0x44e0b3
mov eax, dword [eax]
test eax, eax
jne 0x44e0a5
jmp 0x44e0c6
mov eax, dword [eax + 0x68]
test eax, eax
je 0x44e0c6
mov edx, dword [eax + 0x178]
mov dword [0x52699c], edx
mov eax, dword [esi + 0x78]
test eax, eax
je 0x44e0d6
cmp dword [eax + 0x120], 0
jne 0x44e138
lea ecx, [ebp - 0x818]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
xor eax, eax
jmp 0x44e3fb
cmp edi, 0xfffffffe
je 0x44e138
cmp dword [0x50bdd4], esi
je 0x44e0ff
push eax
push eax
mov ecx, esi
call fcn.0044d890
lea eax, [edi - 1]
cmp eax, 0x13
ja 0x44e0d6
lea edi, [edi*4 + 0x50bdec]
lea ebx, [esi + 0x7c]
push edi
push ebx
call fcn.00401d30
add esp, 8
test al, al
jne 0x44e0d6
cmp dword [esi + 0xa0], 0
je 0x44e12f
mov ecx, esi
call fcn.0044f430
push edi
mov ecx, ebx
call dword [0x4ca7ec]
lea edi, [esi + 0x7c]
mov ecx, edi
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 - 0x814]
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 - 0x814]
push ecx
mov ecx, edi
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 - 0x814]
setne bl
mov byte [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
test bl, bl
je 0x44e29d
cmp word [0x4f907c], 0
jne 0x44e29d
push edi
lea ecx, [ebp - 0x814]
call dword [0x4ca8d4]
push 0
push 0x26
lea ecx, [ebp - 0x814]
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_____::Find]
test eax, eax
js 0x44e1c7
push 1
push eax
lea ecx, [ebp - 0x814]
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 - 0x824]
call dword [0x4cb4dc]
push 0x4d8810
lea ecx, [ebp - 0x820]
mov byte [ebp - 4], 4
call dword [0x4cb4dc]
lea edx, [ebp - 0x814]
push edx
lea eax, [ebp - 0x820]
push eax
lea ecx, [ebp - 0x830]
push ecx
mov byte [ebp - 4], 5
call fcn.00406410
lea edx, [ebp - 0x824]
push edx
push eax
lea eax, [ebp - 0x838]
push eax
mov byte [ebp - 4], 6
call fcn.00406410
lea ecx, [esi + 0x80]
push ecx
push eax
lea edx, [ebp - 0x82c]
push edx
mov byte [ebp - 4], 7
call fcn.00406410
add esp, 0x24
push eax
lea ecx, [ebp - 0x818]
mov byte [ebp - 4], 8
call dword [0x4ca7ec]
lea ecx, [ebp - 0x82c]
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 - 0x838]
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 - 0x830]
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 - 0x820]
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 - 0x824]
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 - 0x814]
mov byte [ebp - 4], 0
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 0x44e2b0
lea eax, [esi + 0x80]
push eax
lea ecx, [ebp - 0x818]
call dword [0x4ca7ec]
mov ecx, dword [ebp - 0x818]
push ecx
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetWindowTextW
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x44e2d1
mov edx, dword [ebp - 0x818]
push edx
call sub.mfc100u.dll_CWnd::SetWindowTextW
cmp dword [esi + 0xbc], 0
je 0x44e3d6
mov eax, dword [esi + 0x78]
test eax, eax
je 0x44e389
mov eax, dword [eax + 0x120]
test eax, eax
je 0x44e389
mov edi, dword [ebp - 0x828]
test edi, edi
jns 0x44e308
mov ecx, eax
call fcn.00491120
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x120]
cmp dword [ecx + 0x74], 0
je 0x44e376
push 0
push 1
mov ecx, esi
call fcn.0044d890
mov ebx, eax
lea eax, [esi + 0x7c]
push 0x4cbbf0
push eax
call fcn.00401d50
add esp, 8
xor edi, edi
test al, al
jne 0x44e37a
test ebx, ebx
jle 0x44e371
mov dword [ebp - 0x814], 0x50bdf0
mov eax, dword [esi + 0x7c]
mov ecx, dword [ebp - 0x814]
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 0x44e36d
add dword [ebp - 0x814], 4
inc edi
cmp edi, ebx
jl 0x44e349
xor edi, edi
jmp 0x44e37a
cmp edi, ebx
jl 0x44e375
xor edi, edi
jmp 0x44e37a
inc edi
test edi, edi
js 0x44e389
mov edx, dword [esi + 0x78]
mov ecx, dword [edx + 0x120]
push edi
call fcn.00491170
mov eax, dword [esi + 0x8c]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x44e3d6
cmp byte [eax + 0x56], 0xa
je 0x44e3a4
mov eax, dword [eax]
test eax, eax
jne 0x44e396
jmp 0x44e3d6
mov edi, dword [eax + 0x68]
test edi, edi
je 0x44e3d6
push 0
mov ecx, edi
call fcn.0042ba00
xor ecx, ecx
cmp dword [ebp - 0x828], 0xffffffff
sete cl
push ecx
mov ecx, edi
call fcn.0042c610
test eax, eax
je 0x44e3d6
mov dword [ebp - 0x81c], 1
mov ecx, esi
call fcn.0044de30
mov ecx, dword [0x50af1c]
push eax
call fcn.00433a40
lea ecx, [ebp - 0x818]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
mov eax, dword [ebp - 0x81c]
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