Function at 0x3000734c
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
and dword [ebp - 0xc], 0
push edi
push 4
pop ebx
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001ac0
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x300073ff
mov ecx, dword [ebp - 0x10]
cmp ecx, 3
jb 0x30007408
cmp ecx, 0x3c
ja 0x30007408
mov dword [0x30015198], ecx
mov edi, 0x80070000
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001aac
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
cmp eax, 2
je 0x300073ce
test eax, eax
je 0x300073ce
jle 0x300073c6
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
push 3
pop eax
cmp dword [ebp - 0xc], eax
jbe 0x300073d9
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp + 0xc]
xor eax, eax
cmp dword [ecx], eax
je 0x30007434
cmp dword [ebp - 0xc], eax
jne 0x30007428
xor edi, edi
inc edi
push edi
call fcn.30011f46
push edi
push edi
call fcn.30011f8a
mov eax, dword [ebp + 0xc]
and dword [eax], 0
jmp 0x30007466
cmp eax, 2
je 0x30007394
test eax, eax
jg 0x3000740f
mov edi, 0x80070000
jmp 0x3000741b
and eax, 0xffff
mov edi, 0x80070000
or eax, edi
test eax, eax
jl 0x3000762b
jmp 0x30007399
push 1
push dword [ebp - 0xc]
call fcn.30011f8a
jmp 0x3000746b
cmp dword [ebp - 0xc], eax
jbe 0x3000746b
xor edi, edi
inc edi
push edi
push dword [ebp - 0xc]
call fcn.30011f8a
push edi
push 0
push 0x30001aa4
push 0x30001a9c
push 0
call fcn.30011e61
test eax, eax
jl 0x3000762b
mov eax, dword [ebp + 0xc]
mov dword [eax], edi
mov edi, 0x80070000
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001a80
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x30007497
cmp dword [ebp - 0x14], eax
setne al
mov dword [0x3001519c], eax
jmp 0x300074af
cmp eax, 2
je 0x300074af
test eax, eax
jle 0x300074a9
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001a64
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x300074dd
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jbe 0x300074ed
mov dword [0x300151a0], ecx
jmp 0x300074f5
cmp eax, 2
je 0x300074f5
test eax, eax
jle 0x300074ef
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001a40
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x30007521
cmp dword [ebp - 0x14], eax
setne al
mov dword [0x300151a4], eax
jmp 0x30007539
cmp eax, 2
je 0x30007539
test eax, eax
jle 0x30007533
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x30001a1c
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x30007567
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jbe 0x30007577
mov dword [0x300151a8], ecx
jmp 0x3000757f
cmp eax, 2
je 0x3000757f
test eax, eax
jle 0x30007579
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x300019f4
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x300075ab
cmp dword [ebp - 0x14], eax
setne al
mov dword [0x300151ac], eax
jmp 0x300075bf
cmp eax, 2
je 0x300075bf
test eax, eax
jle 0x300075bd
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x300019cc
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x300075ed
mov ecx, dword [ebp - 0x10]
test ecx, ecx
jbe 0x300075fd
mov dword [0x300151b0], ecx
jmp 0x30007601
cmp eax, 2
je 0x30007601
test eax, eax
jle 0x300075ff
and eax, 0xffff
or eax, edi
test eax, eax
jl 0x3000762b
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
push 0
push 0x300019b4
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call esi
test eax, eax
jne 0x3000762b
cmp dword [ebp - 0x14], eax
setne al
mov dword [0x300151b4], eax
pop edi
pop esi
pop ebx
leave
ret 8