Function at 0x485b75
Capabilities:
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push 0x270
mov eax, 0x508c3f
call fcn.004d2c4d
mov dword [ebp - 0x248], edx
mov esi, ecx
mov dword [ebp - 0x234], esi
mov bl, byte [ebp + 8]
lea eax, [ebp - 0x260]
push eax
mov eax, dword [ebp + 0x10]
mov ecx, str.SoftwareJavaSoftJava_Runtime_Environment_
or eax, 0x20019
test bl, bl
push eax
push 0
mov eax, str.SoftwareJavaSoftJava_Development_Kit_
cmove eax, ecx
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x485e1a
mov ebx, dword [ebp - 0x260]
and dword [ebp - 0x25c], eax
and dword [ebp - 0x258], eax
and dword [ebp - 0x254], eax
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x250], eax
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x264], 0x208
push ecx
lea ecx, [ebp - 0x21c]
push ecx
push eax
push ebx
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov dword [ebp - 0x268], eax
test eax, eax
jne 0x485dea
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x238]
call fcn.00409419
push ecx
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebp - 0x230]
call fcn.0048ed16
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x238]
lea ecx, [ecx - 0x10]
call fcn.00406df6
push esi
lea ecx, [ebp - 0x230]
call fcn.0048eceb
test eax, eax
js 0x485dea
lea eax, [ebp - 0x23c]
push eax
push 0x20019
push 0
lea eax, [ebp - 0x21c]
push eax
push ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x485dea
xor edi, edi
lea eax, [ebp - 0x240]
cmp dword [ebp - 0x23c], edi
push eax
cmovne edi, dword [ebp - 0x23c]
xor eax, eax
push eax
push eax
push eax
push str.JavaHome
push edi
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov eax, dword [ebp - 0x240]
test eax, eax
je 0x485e30
xor ecx, ecx
push 2
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004d25b2
pop ecx
mov esi, eax
lea eax, [ebp - 0x240]
push eax
push esi
push 0
push 0
push str.JavaHome
push edi
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x485d16
push esi
call fcn.004d26a2
pop ecx
test edi, edi
je 0x485de4
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x485de4
lea eax, [ebp - 0x25c]
push eax
lea ecx, [ebp - 0x27c]
call fcn.00485f7b
xor ebx, ebx
cmp dword [ebp - 0x278], ebx
jle 0x485d5d
push ebx
lea ecx, [ebp - 0x27c]
call fcn.004860ff
lea ecx, [ebp - 0x230]
push ecx
mov ecx, eax
call fcn.0048eceb
test eax, eax
js 0x485e20
inc ebx
cmp ebx, dword [ebp - 0x278]
jl 0x485d32
lea ecx, [ebp - 0x27c]
call fcn.00406f66
or ebx, 0xffffffff
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x25c]
call fcn.00485f05
push esi
lea ecx, [ebp - 0x244]
call fcn.00409419
mov ecx, dword [ebp - 0x248]
lea eax, [ebp - 0x244]
push eax
call fcn.0046daf0
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x244]
lea ecx, [ecx - 0x10]
call fcn.00406df6
cmp ebx, 0xffffffff
je 0x485dcc
mov edx, ebx
lea ecx, [ebp - 0x25c]
call fcn.00485fef
mov ecx, dword [ebp - 0x248]
mov edx, ebx
call fcn.0048606f
push esi
call fcn.004d26a2
pop ecx
test edi, edi
je 0x485dde
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ebx, dword [ebp - 0x24c]
mov esi, dword [ebp - 0x234]
mov eax, dword [ebp - 0x250]
inc eax
cmp dword [ebp - 0x268], 0
mov dword [ebp - 0x250], eax
je 0x485bee
lea ecx, [ebp - 0x25c]
call fcn.00406f66
test ebx, ebx
je 0x485e1a
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.004d2bf7
ret
lea ecx, [ebp - 0x27c]
call fcn.00406f66
jmp 0x485d6b
test edi, edi
je 0x485dea
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x485dea