Function at 0x1072a94
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x858
mov eax, dword [0x10cd598]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x20c]
mov dword [ebp - 0x848], ecx
lea ecx, [ebp - 0x61c]
mov dword [ebp - 0x844], ecx
lea ecx, [ebp - 0x414]
push ebx
mov dword [ebp - 0x834], eax
mov eax, dword [ebp + 0x10]
xor ebx, ebx
mov dword [ebp - 0x840], ecx
lea ecx, [ebp - 0x824]
push edi
mov dword [ebp - 0x838], eax
mov dword [ebp - 0x82c], ebx
mov dword [ebp - 0x83c], ecx
mov dword [ebp - 0x858], 0x10139fc
mov dword [ebp - 0x854], 0x10139dc
mov dword [ebp - 0x850], 0x10139b8
mov dword [ebp - 0x84c], 0x1013998
cmp eax, ebx
jne 0x1072b36
mov edi, 0x80004003
push edi
push 0x86b013c
call fcn.010893e6
jmp 0x1072d4a
push esi
mov dword [eax], ebx
lea eax, [ebp - 0x82c]
push eax
push 0x1013928
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
mov edi, eax
cmp edi, ebx
je 0x1072b61
push edi
push 0x872013c
jmp 0x1072d2f
mov esi, 0x208
lea eax, [ebp - 0x830]
push eax
push dword [ebp + ebx - 0x848]
mov dword [ebp - 0x830], esi
push 0
push 0
push dword [ebp + ebx - 0x858]
push dword [ebp - 0x82c]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov edi, eax
test edi, edi
jne 0x1072bf3
add ebx, 4
cmp ebx, 0x10
jb 0x1072b66
lea eax, [ebp - 0x20c]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x1072ba8
mov ecx, dword [ebp - 0x834]
sub eax, edx
sar eax, 1
lea edx, [ecx + 2]
mov di, word [ecx]
inc ecx
inc ecx
test di, di
jne 0x1072bbf
sub ecx, edx
sar ecx, 1
lea eax, [ecx + eax + 5]
cmp eax, 0x104
jb 0x1072bfe
mov edi, 0x8007006f
push edi
push 0x886013c
push dword [ebp - 0x834]
call fcn.01089421
jmp 0x1072d34
push edi
push 0x87e013c
jmp 0x1072d2f
push 0x1008aa0
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.0103e10a
push dword [ebp - 0x834]
lea eax, [ebp - 0x20c]
push esi
push eax
call fcn.0103e10a
push 0x101391c
push esi
lea eax, [ebp - 0x20c]
push eax
call fcn.0103e10a
lea eax, [ebp - 0x830]
push eax
lea eax, [ebp - 0x828]
push eax
xor ebx, ebx
push ebx
push ebx
mov esi, 0x100e008
push esi
push dword [ebp - 0x82c]
mov dword [ebp - 0x830], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp eax, ebx
je 0x1072c7d
push eax
push 0x896013c
push esi
call fcn.01089421
mov dword [ebp - 0x828], 0xb0
and dword [ebp - 0x828], 0xfffffffe
lea eax, [ebp - 0x20c]
push eax
push 0x1b9
call fcn.01088aa0
push eax
call fcn.01099014
push 0x1004208
call fcn.01099014
mov esi, dword [ebp - 0x838]
add esp, 0xc
push esi
push 0x102229c
push 1
push ebx
push 0x10222cc
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov edi, eax
cmp edi, ebx
je 0x1072cd0
push edi
push 0x8a6013c
jmp 0x1072d2f
cmp dword [ebp + 0xc], ebx
je 0x1072ce1
or dword [ebp - 0x828], 0x401
jmp 0x1072cf0
cmp dword [0x10cf1f0], ebx
je 0x1072cf0
or dword [ebp - 0x828], 2
mov eax, dword [esi]
mov ecx, dword [eax]
lea edx, [ebp - 0x824]
push edx
lea edx, [ebp - 0x414]
push edx
lea edx, [ebp - 0x61c]
push edx
lea edx, [ebp - 0x20c]
push edx
push 0x1004598
push 1
push 2
push dword [ebp - 0x828]
push eax
call dword [ecx + 0xc]
mov edi, eax
cmp edi, ebx
je 0x1072d49
push edi
push 0x8b9013c
call fcn.010893e6
mov esi, dword [ebp - 0x838]
mov eax, dword [esi]
test eax, eax
je 0x1072d49
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
and dword [esi], 0
pop esi
cmp dword [ebp - 0x82c], 0
je 0x1072d5f
push dword [ebp - 0x82c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
xor ecx, ebp
pop ebx
call fcn.01074bd5
leave
ret 0xc