Function at 0x6054a0
Capabilities:
Query or enumerate registry value

Disassembly:
push 0xffffffffffffffff
push 0x66eb36
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push ebp
push esi
mov dword [esp + 0x14], 0x6b6b2c
lea eax, [esp + 0x14]
xor ebx, ebx
push eax
mov dword [esp + 0x28], ebx
call fcn.00492530
mov ecx, dword [esp + 0x30]
add esp, 4
mov dword [0x7591e8], ecx
mov ecx, dword [esp + 0x30]
mov ebp, 1
mov dword [0x7591f0], ebx
mov dword [0x759144], ebx
mov dword [0x7591f4], ebx
mov dword [0x7591f8], ebx
mov dword [0x759200], ebx
mov dword [0x759204], ebx
mov dword [0x759120], ebx
mov dword [0x759124], ebx
mov dword [0x759208], ebx
mov dword [0x75920c], ebx
mov dword [0x759210], ebx
mov dword [0x759158], ebx
mov dword [0x75915c], ebx
mov dword [0x759214], ebx
mov dword [0x759218], ebx
mov dword [0x75921c], ebx
mov dword [0x7591a0], ebx
mov dword [0x7591a4], ebx
mov dword [0x759220], ebx
mov dword [0x759224], ebx
mov dword [0x759228], ebx
mov dword [0x759180], ebx
mov dword [0x759184], ebx
mov dword [0x75922c], ebx
mov dword [0x759230], ebx
mov dword [0x759234], ebx
mov dword [0x7591c8], ebx
mov dword [0x7591cc], ebx
mov dword [0x759238], ebx
mov dword [0x7591ec], ecx
mov edx, dword [ecx]
push ebp
push 0x7327e8
mov esi, eax
call dword [edx + 0x18]
cmp eax, ebx
mov dword [0x7591f0], eax
jne 0x6055d6
mov ecx, dword [0x7591ec]
push ebx
push 0x7327e8
push 0x7327e8
mov eax, dword [ecx]
call dword [eax + 0x14]
mov dword [0x7591f0], eax
mov edx, dword [eax]
push ebp
mov ecx, eax
call dword [edx + 0x28]
mov eax, dword [esi]
push 0x2146
mov ecx, esi
call dword [eax + 0x38]
mov dword [0x7591f4], eax
mov edx, dword [esi]
push 0x214b
mov ecx, esi
call dword [edx + 0x38]
mov dword [0x7591f8], eax
mov eax, dword [esi]
push 0x2147
mov ecx, esi
call dword [eax + 0x38]
push 0x38
mov dword [0x7591fc], eax
call fcn.006247b3
add esp, 4
mov dword [esp + 0x2c], eax
cmp eax, ebx
mov byte [esp + 0x24], 1
je 0x605629
mov ecx, eax
call fcn.0060a8e0
jmp 0x60562b
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759200], eax
push eax
mov byte [esp + 0x28], bl
mov edx, dword [ecx]
call dword [edx + 0x28]
push 0x18
call fcn.006247b3
add esp, 4
mov dword [esp + 0x2c], eax
cmp eax, ebx
mov byte [esp + 0x24], 2
je 0x605660
mov ecx, eax
call fcn.0060a3e0
jmp 0x605662
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759204], eax
push edi
push eax
mov edx, dword [ecx]
mov byte [esp + 0x2c], bl
call dword [edx + 0x24]
mov eax, dword [esi]
push 0x215b
mov ecx, esi
call dword [eax + 0x30]
mov dword [0x759120], eax
mov edx, dword [esi]
push 0x215a
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [0x7591ec]
mov edi, 0xff00
mov dword [0x759124], eax
mov dword [0x759128], edi
mov eax, dword [ecx]
push 0x219f
lea edx, [esp + 0x34]
push esi
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x75914c
mov byte [esp + 0x2c], 3
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x75914c]
cmp eax, ebx
je 0x6056ee
add eax, 0xc
mov dword [0x75912c], eax
jmp 0x6056f8
mov dword [0x75912c], 0x7427d8
mov ecx, dword [0x7591ec]
push 0x21a0
lea edx, [esp + 0x34]
push esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759140
mov byte [esp + 0x2c], 4
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759140]
cmp eax, ebx
je 0x605741
add eax, 0xc
mov dword [0x759130], eax
jmp 0x60574b
mov dword [0x759130], 0x7427d8
mov ecx, dword [0x7591f0]
mov dword [0x759134], ebp
mov dword [0x759138], ebx
push 0x759120
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, dword [0x759204]
mov dword [0x759208], eax
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 4]
push 0x38
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 5
je 0x60579a
mov ecx, eax
call fcn.006096d0
jmp 0x60579c
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x75920c], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x28]
push 0x14
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 6
je 0x6057d1
mov ecx, eax
call fcn.006091d0
jmp 0x6057d3
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759210], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x24]
mov eax, dword [esi]
push 0x215e
mov ecx, esi
call dword [eax + 0x30]
mov dword [0x759158], eax
mov edx, dword [esi]
push 0x2159
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [0x7591ec]
mov dword [0x75915c], eax
mov dword [0x759160], edi
push 0x21a1
mov eax, dword [ecx]
lea edx, [esp + 0x34]
push esi
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759148
mov byte [esp + 0x2c], 7
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759148]
cmp eax, ebx
je 0x605859
add eax, 0xc
mov dword [0x759164], eax
jmp 0x605863
mov dword [0x759164], 0x7427d8
mov ecx, dword [0x7591ec]
push 0x21a2
lea edx, [esp + 0x34]
push esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759114
mov byte [esp + 0x2c], 8
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759114]
cmp eax, ebx
je 0x6058ac
add eax, 0xc
mov dword [0x759168], eax
jmp 0x6058b6
mov dword [0x759168], 0x7427d8
mov ecx, dword [0x7591f0]
mov dword [0x75916c], ebp
mov dword [0x759170], ebx
push 0x759158
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, dword [0x759210]
mov dword [0x759214], eax
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 4]
push 0x38
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 9
je 0x605905
mov ecx, eax
call fcn.00608500
jmp 0x605907
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759218], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x28]
push 0x18
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 0xa
je 0x60593c
mov ecx, eax
call fcn.00608000
jmp 0x60593e
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x75921c], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x24]
mov eax, dword [esi]
push 0x215d
mov ecx, esi
call dword [eax + 0x30]
mov dword [0x7591a0], eax
mov edx, dword [esi]
push 0x2158
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [0x7591ec]
mov dword [0x7591a4], eax
mov dword [0x7591a8], edi
push 0x21a3
mov eax, dword [ecx]
lea edx, [esp + 0x34]
push esi
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x7591c0
mov byte [esp + 0x2c], 0xb
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x7591c0]
cmp eax, ebx
je 0x6059c4
add eax, 0xc
mov dword [0x7591ac], eax
jmp 0x6059ce
mov dword [0x7591ac], 0x7427d8
mov ecx, dword [0x7591ec]
push 0x21a4
lea edx, [esp + 0x34]
push esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x75917c
mov byte [esp + 0x2c], 0xc
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x75917c]
cmp eax, ebx
je 0x605a17
add eax, 0xc
mov dword [0x7591b0], eax
jmp 0x605a21
mov dword [0x7591b0], 0x7427d8
mov ecx, dword [0x7591f0]
mov dword [0x7591b4], ebp
mov dword [0x7591b8], ebx
push 0x7591a0
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, dword [0x75921c]
mov dword [0x759220], eax
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 4]
push 0x38
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 0xd
je 0x605a70
mov ecx, eax
call fcn.006072f0
jmp 0x605a72
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759224], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x28]
push 0x18
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 0xe
je 0x605aa7
mov ecx, eax
call fcn.00606df0
jmp 0x605aa9
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759228], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x24]
mov eax, dword [esi]
push 0x2179
mov ecx, esi
call dword [eax + 0x30]
mov dword [0x759180], eax
mov edx, dword [esi]
push 0x2178
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [0x7591ec]
mov dword [0x759184], eax
mov dword [0x759188], edi
push 0x21a5
mov eax, dword [ecx]
lea edx, [esp + 0x34]
push esi
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759150
mov byte [esp + 0x2c], 0xf
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759150]
cmp eax, ebx
je 0x605b2f
add eax, 0xc
mov dword [0x75918c], eax
jmp 0x605b39
mov dword [0x75918c], 0x7427d8
mov ecx, dword [0x7591ec]
push 0x21a6
lea edx, [esp + 0x34]
push esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759118
mov byte [esp + 0x2c], 0x10
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759118]
cmp eax, ebx
je 0x605b82
add eax, 0xc
mov dword [0x759190], eax
jmp 0x605b8c
mov dword [0x759190], 0x7427d8
mov ecx, dword [0x7591f0]
mov dword [0x759194], ebp
mov dword [0x759198], ebx
push 0x759180
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, dword [0x759228]
mov dword [0x75922c], eax
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 4]
push 0x38
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 0x11
je 0x605bdb
mov ecx, eax
call fcn.00606540
jmp 0x605bdd
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759230], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x28]
push 0x14
call fcn.006247b3
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebx
mov byte [esp + 0x28], 0x12
je 0x605c12
mov ecx, eax
call fcn.00606040
jmp 0x605c14
xor eax, eax
mov ecx, dword [0x7591ec]
mov dword [0x759234], eax
push eax
mov byte [esp + 0x2c], bl
mov edx, dword [ecx]
call dword [edx + 0x24]
mov eax, dword [esi]
push 0x2144
mov ecx, esi
call dword [eax + 0x30]
mov dword [0x7591c8], eax
mov edx, dword [esi]
push 0x2145
mov ecx, esi
call dword [edx + 0x30]
mov ecx, dword [0x7591ec]
mov dword [0x7591cc], eax
mov dword [0x7591d0], edi
push 0x21a7
mov eax, dword [ecx]
lea edx, [esp + 0x34]
push esi
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x759178
mov byte [esp + 0x2c], 0x13
call fcn.00499cd0
lea ecx, [esp + 0x30]
mov byte [esp + 0x28], bl
call fcn.00499a60
mov eax, dword [0x759178]
pop edi
cmp eax, ebx
je 0x605c9b
add eax, 0xc
mov dword [0x7591d4], eax
jmp 0x605ca5
mov dword [0x7591d4], 0x7427d8
mov ecx, dword [0x7591ec]
push 0x21a8
lea edx, [esp + 0x30]
push esi
mov eax, dword [ecx]
push edx
call dword [eax + 0x94]
push eax
mov ecx, 0x7591c4
mov byte [esp + 0x28], 0x14
call fcn.00499cd0
lea ecx, [esp + 0x2c]
mov byte [esp + 0x24], bl
call fcn.00499a60
mov eax, dword [0x7591c4]
cmp eax, ebx
je 0x605cee
add eax, 0xc
mov dword [0x7591d8], eax
jmp 0x605cf8
mov dword [0x7591d8], 0x7427d8
mov ecx, dword [0x7591f0]
mov dword [0x7591dc], ebp
mov dword [0x7591e0], ebx
push 0x7591c8
mov eax, dword [ecx]
call dword [eax + 0x44]
mov ecx, dword [0x759234]
mov dword [0x759238], eax
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 4]
lea edx, [esp + 0xc]
mov dword [esp + 0xc], ebx
push edx
push ebp
push ebx
push 0x72322c
push SysReAllocStringLen
mov dword [esp + 0x24], ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x605d79
mov edx, dword [esp + 0xc]
lea eax, [esp + 0x18]
lea ecx, [esp + 0x10]
push eax
push ecx
push ebx
push ebx
push 0x723220
push edx
mov dword [esp + 0x30], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov eax, dword [esp + 0xc]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [esp + 0x10]
dec eax
je 0x605d97
dec eax
je 0x605d8b
mov dword [0x759144], ebx
jmp 0x605d9d
mov dword [0x759144], 2
jmp 0x605d9d
mov dword [0x759144], ebp
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
mov ecx, dword [esp + 0x1c]
mov eax, ebp
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1c
ret