Function at 0x1089802
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xe8c
mov eax, 0x10a2d65
call fcn.01004469
mov edi, dword [ebp + 8]
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
xor esi, esi
lea eax, [ebp - 0x216]
push esi
push eax
mov ebx, ecx
mov dword [ebp - 0xe48], edi
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0xe98]
push eax
lea eax, [ebp - 0xe64]
push eax
lea eax, [ebp - 0xe54]
push eax
lea eax, [ebp - 0xe58]
push eax
lea eax, [ebp - 0xe40]
push eax
lea eax, [ebp - 0xe6c]
push eax
lea eax, [ebp - 0xe68]
push eax
lea eax, [ebp - 0xe50]
push eax
push esi
lea eax, [ebp - 0xe60]
push eax
lea eax, [ebp - 0x218]
push eax
push edi
mov dword [ebp - 0xe60], 0x104
mov dword [ebp - 0xe50], esi
mov dword [ebp - 0xe68], esi
mov dword [ebp - 0xe6c], esi
mov dword [ebp - 0xe40], esi
mov dword [ebp - 0xe58], esi
mov dword [ebp - 0xe54], esi
mov dword [ebp - 0xe64], esi
mov dword [ebp - 0xe3c], esi
mov dword [ebp - 0xe4c], 0x400
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
cmp eax, esi
je 0x10898d8
mov dword [ebp - 0xe40], esi
cmp dword [ebp - 0xe40], esi
je 0x1089b08
lea ecx, [ebp - 0xe38]
mov dword [ebp - 0xe44], 4
call fcn.0100c293
lea ecx, [ebp - 0xe1c]
mov dword [ebp - 4], esi
call fcn.0100c293
mov byte [ebp - 4], 1
mov dword [ebp - 0xe3c], esi
cmp dword [ebp - 0xe40], esi
jbe 0x1089a5e
mov edi, dword [sym.imp.ADVAPI32.dll_RegGetValueW]
push esi
push esi
push esi
xor eax, eax
push esi
mov word [ebp - 0xe00], ax
lea eax, [ebp - 0xe4c]
push eax
lea eax, [ebp - 0xe00]
push eax
push dword [ebp - 0xe3c]
mov dword [ebp - 0xe4c], 0x400
push dword [ebp - 0xe48]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
cmp eax, esi
jne 0x1089a46
lea eax, [ebp - 0xe00]
push eax
lea ecx, [ebp - 0xe1c]
call fcn.0100bf1d
cmp dword [ebp - 0xe04], 8
mov eax, dword [ebp - 0xe18]
mov dword [ebp - 0xe44], 4
jae 0x1089993
lea eax, [ebp - 0xe18]
lea ecx, [ebp - 0xe44]
push ecx
lea ecx, [ebp - 0xe5c]
push ecx
push esi
push 0x10
push eax
push 0x1004fe8
push dword [ebp - 0xe48]
call edi
test eax, eax
jne 0x10899cf
lea eax, [ebp - 0xe1c]
push eax
lea ecx, [ebx + 0x54]
call fcn.0108971a
mov ecx, dword [ebp - 0xe5c]
mov dword [eax], ecx
jmp 0x1089a46
cmp dword [ebp - 0xe04], 8
mov eax, dword [ebp - 0xe18]
mov dword [ebp - 0xe44], 0x3e8
jae 0x10899ee
lea eax, [ebp - 0xe18]
lea ecx, [ebp - 0xe44]
push ecx
lea ecx, [ebp - 0x600]
push ecx
push esi
push 0xffff
push eax
push 0x1004fe8
push dword [ebp - 0xe48]
call edi
test eax, eax
jne 0x1089a46
lea eax, [ebp - 0x600]
push eax
lea ecx, [ebp - 0xe38]
call fcn.0100bf1d
lea eax, [ebp - 0xe1c]
push eax
lea ecx, [ebx + 0x48]
call fcn.0108969c
push 0xffffffffffffffff
push esi
lea ecx, [ebp - 0xe38]
push ecx
mov ecx, eax
call fcn.0100c122
inc dword [ebp - 0xe3c]
mov eax, dword [ebp - 0xe3c]
cmp eax, dword [ebp - 0xe40]
jb 0x1089923
push 0x1021728
lea ecx, [ebp - 0xe90]
call fcn.0100bef1
lea eax, [ebp - 0xe90]
lea edi, [ebx + 0x54]
push eax
mov ecx, edi
mov byte [ebp - 4], 2
call fcn.0108971a
mov eax, dword [eax]
push esi
push 1
lea ecx, [ebp - 0xe90]
mov dword [ebp - 0xe74], eax
mov byte [ebp - 4], 1
call fcn.0100b890
push 0x102d4cc
lea ecx, [ebp - 0xe90]
call fcn.0100bef1
lea eax, [ebp - 0xe90]
push eax
mov ecx, edi
mov byte [ebp - 4], 3
call fcn.0108971a
mov eax, dword [eax]
xor edi, edi
push esi
inc edi
push edi
lea ecx, [ebp - 0xe90]
mov dword [ebp - 0xe70], eax
call fcn.0100b890
add ebx, 0x38
push ebx
lea eax, [ebp - 0xe74]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
push esi
push edi
lea ecx, [ebp - 0xe1c]
mov dword [ebp - 0xe3c], edi
call fcn.0100b890
push esi
push edi
lea ecx, [ebp - 0xe38]
call fcn.0100b890
mov eax, dword [ebp - 0xe3c]
call fcn.010044a6
ret 4