Function at 0x10036f7c
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
sub esp, 0x208
lea ebp, [esp - 4]
mov eax, dword [0x10080f6c]
xor eax, ebp
mov dword [ebp + 0x208], eax
push 0x6c
mov eax, 0x100597fa
call fcn.10039bd1
mov ebx, dword [ebp + 0x214]
lea eax, [ebp - 0x20]
push eax
push 0x20019
xor edi, edi
push edi
push str.JNLPFileShellOpenCommand
push SysReAllocStringLen
mov dword [ebp - 0x1c], 0x208
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x100372c7
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp]
push eax
lea eax, [ebp - 0x24]
push eax
push edi
push edi
push dword [ebp - 0x20]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x20]
mov esi, eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp esi, edi
jne 0x100372c7
cmp dword [ebp - 0x24], 1
jne 0x100372c7
mov eax, dword [ebp - 0x1c]
shr eax, 1
cmp eax, 0x104
jb 0x10037016
mov eax, 0x103
xor ecx, ecx
mov word [ebp + eax*2], cx
push 0x1006d5d0
lea ecx, [ebp - 0x14]
call fcn.10001309
push 0x1006d10b
lea ecx, [ebp - 0x18]
mov dword [ebp - 4], edi
call fcn.1001060c
lea eax, [ebp]
push 0x1006d5d4
push eax
mov byte [ebp - 4], 1
call fcn.1003b4c0
pop ecx
test eax, eax
pop ecx
lea eax, [ebp]
je 0x100370cc
push str.___1_
push eax
call fcn.1003b4c0
pop ecx
pop ecx
cmp eax, edi
je 0x100372af
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp]
push eax
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x1003709b
call fcn.10001441
lea eax, [ebp]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x100370a1
sub eax, edx
sar eax, 1
xor ecx, ecx
mov word [ebp + eax*2 - 2], cx
lea eax, [ebp + 2]
push eax
lea ecx, [ebp - 0x10]
call fcn.10001309
mov byte [ebp - 4], 3
jmp 0x1003717c
push str.jp2launcher.exe
push eax
call fcn.1003b4c0
pop ecx
pop ecx
cmp eax, edi
je 0x100372af
xor ecx, ecx
mov word [eax], cx
lea eax, [ebp]
push eax
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x10037112
call fcn.10001441
push str.javaws.exe_
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 5
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x1003713f
call fcn.10001441
lea eax, [ebp + 2]
push eax
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 6
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x1003716b
call fcn.10001441
push str.javaws.exe
lea ecx, [ebp - 0x10]
call fcn.10001309
mov byte [ebp - 4], 7
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x18]
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x10037198
call fcn.10001441
push str.__nocodebase
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 8
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x100371c5
call fcn.10001441
push 0x1006d664
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 9
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x100371f2
call fcn.10001441
push ebx
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xa
call fcn.10001524
mov ecx, dword [ebp - 0x10]
mov byte [ebp - 4], 1
cmp ecx, edi
je 0x1003721b
call fcn.10001441
push 0x1006d668
lea ecx, [ebp - 0x10]
call fcn.10001309
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0xb
call fcn.10001524
mov ecx, dword [ebp - 0x10]
cmp ecx, edi
je 0x10037244
call fcn.10001441
push 0x44
pop esi
push esi
lea eax, [ebp - 0x78]
push edi
push eax
call fcn.10039d40
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov dword [ebp - 0x78], esi
cmp eax, edi
je 0x10037263
mov ecx, dword [eax]
jmp 0x10037265
xor ecx, ecx
mov ebx, dword [ebp - 0x18]
cmp ebx, edi
je 0x10037270
mov eax, dword [ebx]
jmp 0x10037272
xor eax, eax
lea edx, [ebp - 0x34]
push edx
lea edx, [ebp - 0x78]
push edx
push edi
push edi
push edi
push edi
push edi
push edi
push ecx
push eax
call fcn.1003b4c0
add esp, 0x28
mov esi, eax
neg esi
sbb esi, esi
and esi, 0xfffffff9
cmp ebx, edi
je 0x1003729e
mov ecx, ebx
call fcn.10001441
mov ecx, dword [ebp - 0x14]
cmp ecx, edi
je 0x100372aa
call fcn.10001441
lea eax, [esi + 7]
jmp 0x100372ca
mov ecx, dword [ebp - 0x18]
cmp ecx, edi
je 0x100372bb
call fcn.10001441
mov ecx, dword [ebp - 0x14]
cmp ecx, edi
je 0x100372c7
call fcn.10001441
push 6
pop eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x208]
xor ecx, ebp
call fcn.10039bc2
add ebp, 0x20c
leave
ret