Function at 0x75a6c496
Capabilities:
Query or enumerate registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x74
mov eax, dword [0x75bc8d18]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 0x18]
push esi
mov esi, dword [ebp + 0x20]
push edi
mov edi, dword [ebp + 0x14]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x70], esi
call fcn.759b3ca6
xor ebx, ebx
cmp dword [ebp - 0x54], ebx
je 0x75a6c776
cmp edi, ebx
je 0x75a6c776
mov edi, dword [ebp - 0x58]
cmp edi, ebx
je 0x75a6c776
cmp dword [ebp - 0x64], ebx
je 0x75a6c4fc
cmp esi, ebx
je 0x75a6c776
cmp dword [ebp + 8], 1
je 0x75a6c50b
cmp dword [ebp + 8], ebx
jne 0x75a6c776
or dword [ebp - 0x4c], 0xffffffff
push 0x75bcdd74
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
call fcn.759c2fd9
pop ecx
cmp eax, ebx
je 0x75a6c535
mov esi, eax
lea ecx, [ebp - 0x6c]
call fcn.759b3ed0
mov eax, esi
jmp 0x75a6c781
mov ecx, dword [0x75bcdd74]
lea eax, [ebp - 0x50]
push eax
push ebx
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x50], 0x759b1758
call fcn.759c2ed7
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x75a6c584
cmp dx, bx
je 0x75a6c580
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x75a6c584
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x75a6c55e
xor eax, eax
jmp 0x75a6c589
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x75a6c5ad
mov eax, dword [ebp + 0x10]
cmp dword [ebp - 0x4c], eax
jne 0x75a6c5a5
cmp dword [ebp - 0x4c], 0xffffffff
jne 0x75a6c5a0
push 0x57
pop esi
jmp 0x75a6c526
dec dword [ebp - 0x44]
jmp 0x75a6c5bb
inc dword [ebp - 0x4c]
cmp dword [ebp - 0x4c], eax
je 0x75a6c5bb
cmp dword [ebp + 0x10], ebx
jne 0x75a6c59b
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x4c], ebx
lea ecx, [ebp - 0x3c]
call fcn.759b3c2d
mov byte [ebp - 0x3e], 1
mov dword [ebp - 0x50], ebx
cmp esi, ebx
je 0x75a6c5d3
mov eax, dword [esi]
mov dword [ebp - 0x50], eax
mov eax, dword [edi]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp + 8]
and eax, 1
mov dword [ebp - 0x60], eax
jmp 0x75a6c5e6
mov edi, dword [ebp - 0x58]
cmp esi, ebx
je 0x75a6c5ef
mov eax, dword [ebp - 0x50]
mov dword [esi], eax
mov eax, dword [ebp - 0x74]
mov dword [edi], eax
mov eax, 0x75a6c7a8
cmp dword [ebp - 0x60], ebx
jne 0x75a6c603
mov eax, 0x75a6c790
push ebx
push dword [ebp - 0x48]
lea ecx, [ebp - 0x3c]
push ebx
push ecx
push dword [ebp - 0x54]
push eax
call fcn.759b4521
mov edi, eax
add esp, 0x18
cmp edi, 2
jne 0x75a6c624
inc dword [ebp - 0x48]
jmp 0x75a6c5f4
cmp edi, ebx
jne 0x75a6c70c
cmp esi, ebx
je 0x75a6c632
shl dword [esi], 1
push esi
push dword [ebp - 0x64]
push ebx
push ebx
push dword [ebp - 0x58]
push dword [ebp - 0x5c]
push dword [ebp - 0x44]
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
mov edi, eax
cmp edi, 0xea
jne 0x75a6c66a
push ebx
push ebx
push esi
push dword [ebp - 0x58]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x3c]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
cmp esi, ebx
je 0x75a6c670
shr dword [esi], 1
cmp edi, ebx
jne 0x75a6c6fc
mov eax, dword [ebp - 0x5c]
mov byte [ebp - 0x3d], bl
cmp word [eax], bx
jne 0x75a6c687
mov byte [ebp - 0x3d], 1
xor esi, esi
cmp dword [ebp - 0x48], ebx
jbe 0x75a6c6ef
cmp byte [ebp - 0x3d], bl
jne 0x75a6c6f4
lea ecx, [ebp - 0x20]
call fcn.759b3c2d
mov eax, 0x75a6c7a8
cmp dword [ebp - 0x60], ebx
jne 0x75a6c6aa
mov eax, 0x75a6c790
push ebx
push esi
push ebx
lea ecx, [ebp - 0x20]
push ecx
push dword [ebp - 0x54]
push eax
call fcn.759b4521
add esp, 0x18
test eax, eax
jne 0x75a6c6d9
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x5c]
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x75a6c6d9
mov byte [ebp - 0x3d], 1
lea ecx, [ebp - 0x20]
call fcn.759b3c00
lea ecx, [ebp - 0x18]
call fcn.759b1681
inc esi
cmp esi, dword [ebp - 0x48]
jb 0x75a6c68e
cmp byte [ebp - 0x3d], bl
je 0x75a6c739
inc dword [ebp - 0x44]
mov esi, dword [ebp - 0x70]
jmp 0x75a6c70f
cmp edi, 0x103
jne 0x75a6c70c
inc dword [ebp - 0x48]
mov dword [ebp - 0x44], ebx
jmp 0x75a6c70f
mov byte [ebp - 0x3e], bl
cmp byte [ebp - 0x3e], bl
jne 0x75a6c5e3
cmp edi, 0x103
jne 0x75a6c739
cmp dword [ebp + 0x10], ebx
je 0x75a6c732
mov ecx, dword [0x75bcdd74]
call fcn.759c31d7
jmp 0x75a6c75a
mov edi, 0x647
jmp 0x75a6c75a
push dword [ebp - 0x54]
inc dword [ebp - 0x44]
push dword [ebp - 0x4c]
mov ecx, dword [0x75bcdd74]
push dword [ebp - 0x44]
push dword [ebp - 0x48]
call fcn.759c3bfe
test al, al
jne 0x75a6c75a
push 8
pop edi
lea ecx, [ebp - 0x3c]
call fcn.759b3c00
lea ecx, [ebp - 0x34]
call fcn.759b1681
lea ecx, [ebp - 0x6c]
call fcn.759b3ed0
mov eax, edi
jmp 0x75a6c781
lea ecx, [ebp - 0x6c]
call fcn.759b3ed0
push 0x57
pop eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.759b1748
leave
ret