Function at 0x44cbe3
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x31c
push ebx
push esi
push edi
lea eax, [ebp - 0x11c]
push dword [ebp + 0xc]
mov ebx, 0x100
xor edi, edi
mov dword [ebp - 0x14], ecx
push eax
mov dword [ebp - 8], ebx
mov dword [ebp - 4], edi
call dword [sym.imp.kernel32.dll_lstrcpy]
push dword [ebp - 8]
call fcn.0045b6eb
cmp eax, edi
pop ecx
mov dword [ebp + 0xc], eax
je 0x44cd7a
cmp word [ebp + 0x14], di
mov esi, 0x103
jle 0x44cd53
push dword [ebp + 0x18]
lea eax, [ebp - 0x31c]
push eax
call dword [sym.imp.kernel32.dll_lstrcpy]
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x31c]
push 0x5c
push eax
lea eax, [ebp - 0x11c]
push eax
call fcn.0044cf24
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.kernel32.dll_lstrlen]
cmp byte [ebp + eax - 0x11d], 0x7e
jne 0x44cd53
push ebx
lea eax, [ebp - 0x21c]
push edi
push eax
call fcn.0045bef0
mov ecx, dword [ebp - 0x14]
add esp, 0xc
lea eax, [ebp - 0x11c]
push 0x5c
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0044cf24
lea eax, [ebp - 0xc]
push eax
push 0x20019
lea eax, [ebp - 0x21c]
push edi
push eax
push dword [ebp + 8]
call dword [sym.imp.advapi32.dll_RegOpenKeyExA]
test eax, eax
jne 0x44cd71
lea eax, [ebp - 0x1c]
mov dword [ebp - 8], ebx
push eax
push edi
push edi
lea eax, [ebp - 8]
push edi
push eax
push dword [ebp + 0xc]
push dword [ebp - 4]
push dword [ebp - 0xc]
call dword [sym.imp.advapi32.dll_RegEnumKeyExA]
cmp eax, esi
mov dword [ebp - 0x10], eax
je 0x44cd05
lea eax, [ebp - 0x11c]
test eax, eax
je 0x44cd05
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x11c]
push edi
push edx
mov eax, dword [ecx]
push dword [ebp + 0xc]
call dword [eax + 8]
test eax, eax
jne 0x44cd0f
inc dword [ebp - 4]
cmp dword [ebp - 0x10], esi
je 0x44cd71
jmp 0x44ccc0
lea eax, [ebp - 0x21c]
push 0x46f438
push eax
call dword [sym.imp.kernel32.dll_lstrcat]
push dword [ebp + 0xc]
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.kernel32.dll_lstrcat]
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.kernel32.dll_lstrcpy]
cmp dword [ebp - 0x10], esi
je 0x44cd71
push dword [ebp - 0xc]
call dword [sym.imp.advapi32.dll_RegCloseKey]
lea eax, [ebp - 0xc]
push eax
push 0x20019
lea eax, [ebp - 0x11c]
push edi
push eax
push dword [ebp + 8]
call dword [sym.imp.advapi32.dll_RegOpenKeyExA]
test eax, eax
je 0x44cd81
push dword [ebp + 0xc]
call fcn.0045bc4b
pop ecx
xor eax, eax
jmp 0x44ce07
lea eax, [ebp - 0x1c]
mov dword [ebp - 8], ebx
push eax
push edi
push edi
lea eax, [ebp - 8]
push edi
push eax
push dword [ebp + 0xc]
push dword [ebp - 4]
push dword [ebp - 0xc]
call dword [sym.imp.advapi32.dll_RegEnumKeyExA]
cmp eax, esi
mov dword [ebp - 0x10], eax
je 0x44cddc
cmp dword [ebp + 0x18], edi
je 0x44cdd0
cmp word [ebp + 0x14], di
je 0x44cdd0
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x31c]
push edi
push edx
mov eax, dword [ecx]
push dword [ebp + 0xc]
call dword [eax + 8]
test eax, eax
je 0x44cdd0
cmp word [ebp + 0x14], 1
jne 0x44cde6
jmp 0x44cddc
cmp word [ebp + 0x14], 2
je 0x44cddc
mov eax, dword [ebp + 0x10]
inc dword [eax]
inc dword [ebp - 4]
cmp dword [ebp - 0x10], esi
je 0x44cdeb
jmp 0x44cd81
mov eax, dword [ebp + 0x10]
inc dword [eax]
push dword [ebp - 0xc]
call dword [sym.imp.advapi32.dll_RegCloseKey]
push dword [ebp + 0xc]
call fcn.0045bc4b
pop ecx
xor eax, eax
mov ecx, dword [ebp + 0x10]
cmp dword [ecx], edi
setg al
pop edi
pop esi
pop ebx
leave
ret 0x14