Function at 0x436b00
Capabilities:
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
push 0x133f
sub esp, 0x70
push fcn.00436b00
xor esi, esi
xor edi, edi
mov ecx, 0x4a
push esi
dec ecx
jne 0x436b1c
push 0
push 0
push 0
push 0
xor eax, eax
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
mov edx, 0x18674b8
call fcn.0045d0ba
lea ebx, [esp + 0xc]
call fcn.0045c36b
mov edx, 0x186745c
call fcn.0045d0ba
lea ebx, [esp + 0xc]
call fcn.0045c36b
fild qword [0x186d0c4]
fistp qword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
call fcn.00430f3a
mov ebx, esp
mov eax, dword [ebx + 8]
call fcn.00457d88
mov eax, dword [ebx + 4]
call fcn.00457d88
add esp, 0x10
push 0
push 0
push 0
push 0
mov edx, 0x18674b8
call fcn.0045d0ba
lea ebx, [esp + 0xc]
push ebx
call fcn.0045c2a9
mov edx, 0x186745c
call fcn.0045d0ba
lea ebx, [esp + 0xc]
push ebx
call fcn.0045c2a9
fild qword [0x186d0c4]
fistp qword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
call fcn.0043105b
mov ebx, esp
mov eax, dword [ebx + 8]
call fcn.00457d88
mov eax, dword [ebx + 4]
call fcn.00457d88
add esp, 0xc
push 0
push 0
lea ebx, [ebp - 0x98]
mov dword [ebx], esi
push ebx
push 0x20019
push 0
mov edx, 0x18674d8
call fcn.0045d0ba
lea ebx, [esp + 0xc]
call fcn.0045c36b
fild qword [0x186d0c4]
call fcn.0045c2a2
push eax
call dword [sym.imp.ADVAPI32.DLL_RegOpenKeyExA]
push eax
mov ebx, esp
mov eax, dword [ebx + 4]
call fcn.00457d88
pop eax
add esp, 4
mov esi, dword [ebp - 0x98]
fldcw word [ebp - 0x10]
pop dword [ebp - 0x30]
cmp eax, dword [ebp - 0x30]
jne 0x436e35
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ebx, [ebp - 0x9c]
mov dword [ebx], edi
push ebx
push 0
push 0
push 0
mov eax, esi
push eax
call dword [sym.imp.ADVAPI32.DLL_RegQueryInfoKeyA]
mov edi, dword [ebp - 0x9c]
fldcw word [ebp - 0x10]
mov eax, edi
sub eax, 1
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0xa4], 0
jmp 0x436e17
mov dword [ebp - 0xa0], 0xff
push 0
push 0
push 0
push 0
push 0
lea ebx, [ebp - 0xa0]
push ebx
lea ebx, [ebp - 0x1a4]
push ebx
push dword [ebp - 0xa4]
mov eax, esi
push eax
call dword [sym.imp.ADVAPI32.DLL_RegEnumKeyExA]
fldcw word [ebp - 0x10]
pop dword [ebp - 0x30]
cmp eax, dword [ebp - 0x30]
jne 0x436e11
lea ebx, [ebp - 0x1a4]
call fcn.0045ce8d
mov eax, 1
mov ecx, dword [ebp - 0xa0]
xchg ecx, eax
call fcn.00454232
mov edx, 0x1867500
call fcn.0045d0ba
call fcn.0045c602
jne 0x436d8a
push 0
push 0
push 0
push 0
xor eax, eax
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
mov edx, 0x1867518
call fcn.0045d0ba
lea ebx, [esp + 0xc]
call fcn.0045c36b
mov edx, 0x18674d8
call fcn.0045d0ba
lea ebx, [ebp - 0x1a4]
call fcn.0045ce8d
mov ecx, 1
mov eax, dword [ebp - 0xa0]
call fcn.00454232
call fcn.0045c56d
lea ebx, [esp + 0xc]
call fcn.0045c36b
fild qword [0x186d0c4]
fistp qword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
call fcn.00430f3a
mov ebx, esp
mov eax, dword [ebx + 8]
call fcn.00457d88
mov eax, dword [ebx + 4]
call fcn.00457d88
add esp, 0x10
jmp 0x436e11
push 0
push 0
push 0
push 0
mov eax, 1
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
mov edx, 0x1867518
call fcn.0045d0ba
lea ebx, [esp + 0xc]
call fcn.0045c36b
mov edx, 0x18674d8
call fcn.0045d0ba
lea ebx, [ebp - 0x1a4]
call fcn.0045ce8d
mov ecx, 1
mov eax, dword [ebp - 0xa0]
call fcn.00454232
call fcn.0045c56d
lea ebx, [esp + 0xc]
call fcn.0045c36b
fild qword [0x186d0c4]
fistp qword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
lea ebx, [esp + 0xc]
push ebx
mov dword [ebx], eax
call fcn.00430f3a
mov ebx, esp
mov eax, dword [ebx + 8]
call fcn.00457d88
mov eax, dword [ebx + 4]
call fcn.00457d88
add esp, 0x10
inc dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x1ac]
jle 0x436c90
mov eax, esi
push eax
call dword [sym.imp.ADVAPI32.DLL_RegCloseKey]
fldcw word [ebp - 0x10]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret