Function at 0x467610
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4a763c
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
mov eax, dword [0x4c97a0]
xor eax, esp
mov dword [esp + 0xe0], eax
push ebx
push esi
push edi
mov eax, dword [0x4c97a0]
xor eax, esp
push eax
lea eax, [esp + 0xf8]
mov dword fs:[0], eax
mov edi, ecx
lea esi, [edi + 0xf8]
mov dword [edi + 0xdc], 0
mov ebx, dword [esi + 0x10]
cmp dword [esi + 0xc], ebx
jbe 0x46766f
call fcn.0048b4bc
mov ecx, dword [esi + 0xc]
mov eax, dword [esi]
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x10]
jbe 0x46768a
call fcn.0048b4bc
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov eax, dword [esi]
push ebx
push edx
push ecx
push eax
lea eax, [esp + 0x28]
push eax
call fcn.00467550
cmp dword [edi + 0xf0], 0
je 0x46795a
mov edx, dword [0x4ce67c]
mov eax, dword [edx + 0xc]
mov ecx, 0x4ce67c
call eax
lea esi, [eax + 0x10]
mov dword [esp + 0x10], esi
push 0x9cae
mov dword [esp + 0x104], 0
call fcn.0046c4a0
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4676f3
lea edx, [esp + 0x10]
push edx
mov eax, 0x9cae
call fcn.0046c580
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x14]
push esi
push eax
mov dword [esp + 0x108], 1
call fcn.00468430
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
add esp, 8
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x46772c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov dword [esp + 0x100], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x467753
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [edi + 0xf0]
mov edx, dword [ebp + 8]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x20]
call eax
xor ebx, ebx
test eax, eax
setge bl
xor ecx, ecx
xor esi, esi
cmp ebx, esi
sete cl
mov dword [edi + 0x190], ecx
cmp ebx, esi
je 0x4678c8
lea edx, [esp + 0x20]
push edx
mov ecx, 0x9c87
call fcn.0046c8c0
mov dword [esp + 0x100], 2
mov eax, dword [eax]
push str.CLeakFixerMgr::ScanLeak
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00468430
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4677d2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x100], 0xffffffff
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4677fd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0xc6
lea edx, [esp + 0x2a]
xor ecx, ecx
push esi
push edx
mov dword [edi + 0x70], esi
mov dword [edi + 0x74], esi
mov dword [edi + 0x78], esi
mov dword [edi + 0x7c], esi
mov dword [edi + 0x80], esi
mov dword [edi + 0x84], esi
mov dword [edi + 0x88], esi
mov dword [edi + 0x8c], esi
mov dword [edi + 0x90], esi
mov dword [edi + 0x94], esi
mov dword [edi + 0x1020], esi
mov dword [edi + 0x1024], esi
mov word [esp + 0x30], cx
call fcn.0048dc10
add esp, 0xc
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x20]
push edx
push str.lastscantime
push str.SOFTWARE360SafeLeak
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x30], 1
mov dword [esp + 0x28], 0xc8
call dword [sym.imp.SHLWAPI.dll_SHGetValueW]
test eax, eax
jne 0x4678a0
cmp dword [esp + 0x10], esi
jbe 0x4678a0
add edi, 0xc4
lea edx, [esp + 0x24]
call fcn.0046c880
mov eax, ebx
mov ecx, dword [esp + 0xf8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xe0]
xor ecx, esp
call fcn.0048b133
mov esp, ebp
pop ebp
ret 4
mov edi, dword [edi + 0xf0]
lea eax, [esp + 0x14]
push eax
mov ecx, 0x9c86
call fcn.0046c8c0
mov dword [esp + 0x100], 3
mov ecx, dword [edi]
mov edx, dword [ecx + 0x34]
mov esi, dword [eax]
push edi
call edx
push eax
push str.CLeakFixerMgr::ScanLeak
lea eax, [esp + 0x20]
push esi
push eax
call fcn.00468430
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
add esp, 0x10
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x467926
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x100], 0xffffffff
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4678a0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x4678a0
xor eax, eax
jmp 0x4678a2