Function at 0x6d1c3150
Capabilities:
Get common file path
Persist via path registry key
Set registry value

Disassembly:
mov eax, 0x280c
call fcn.6d1c9470
mov eax, dword [0x6d1d54cc]
xor eax, esp
mov dword [esp + 0x2808], eax
push ebx
push esi
push edi
xor ebx, ebx
push 0x7ff
lea eax, [esp + 0x1019]
push ebx
push eax
mov byte [esp + 0x1020], bl
call sub.MSVCR100.dll_memset
push 0x7ff
lea ecx, [esp + 0x2025]
push ebx
push ecx
mov byte [esp + 0x202c], bl
call sub.MSVCR100.dll_memset
push 0x7ff
lea edx, [esp + 0x1831]
push ebx
push edx
mov byte [esp + 0x1838], bl
call sub.MSVCR100.dll_memset
mov esi, dword [sym.imp.MSVCR100.dll_sprintf_s]
push str.10.0.0
push str.RegisterDeploy__version__s_n
lea eax, [esp + 0x40]
push 0x800
push eax
call esi
add esp, 0x34
call fcn.6d1c1ff0
mov edi, dword [sym.imp.MSVCR100.dll_fprintf_s]
test eax, eax
je 0x6d1c31fa
mov edx, dword [0x6d1d56bc]
lea ecx, [esp + 0x14]
push ecx
push edx
call edi
add esp, 8
push 0x800
lea eax, [esp + 0x1018]
push eax
push ebx
push ebx
call fcn.6d1b3440
add esp, 0x10
test eax, eax
je 0x6d1c3285
lea ecx, [esp + 0x1014]
push ecx
call fcn.6d1c2c50
add esp, 4
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x10]
push eax
push ebx
push 0x2001f
push ebx
push ebx
push ebx
push str.SOFTWAREOracleJavaFX
push reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x34], ebx
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x6d1c3285
cmp dword [esp + 0xc], ebx
je 0x6d1c327a
push str.false
call dword [sym.imp.kernel32.dll_lstrlenA]
mov ecx, dword [esp + 0xc]
push eax
push str.false
push 1
push ebx
push str.Disabled
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [esp + 0xc]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push str.Deployment_Toolkit
push 0x6d1cb9cb
push str.CLSIDCAFEEFAC_DEC7_0000_0001_ABCDEFFEDCBA
push SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c32bb
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c32d5
mov eax, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID__reg_key_OK_n
push eax
jmp 0x6d1c32d0
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c32d5
mov ecx, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID_reg_key_FAIL_n
push ecx
call edi
add esp, 8
push 0x800
lea edx, [esp + 0x18]
push edx
call dword [sym.imp.kernel32.dll_GetSystemDirectoryA]
test eax, eax
jne 0x6d1c3302
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3302
mov eax, dword [0x6d1d56bc]
push str.Error_calling_GetSystemDirectory
push eax
call edi
add esp, 8
push str.deployJava1.dll
lea ecx, [esp + 0x18]
push ecx
push str._s_s
lea edx, [esp + 0x1820]
push 0x800
push edx
call esi
add esp, 0x14
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c333d
mov ecx, dword [0x6d1d56bc]
lea eax, [esp + 0x14]
push eax
push ecx
call edi
add esp, 8
push str.InProcServer32
push str.CLSIDCAFEEFAC_DEC7_0000_0001_ABCDEFFEDCBA
push str._s_s
lea edx, [esp + 0x20]
push 0x800
push edx
call esi
add esp, 0x14
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3375
mov ecx, dword [0x6d1d56bc]
lea eax, [esp + 0x14]
push eax
push ecx
call edi
add esp, 8
lea edx, [esp + 0x1814]
push edx
push 0x6d1cb9cb
lea eax, [esp + 0x1c]
push eax
push SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c33af
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c33c9
mov ecx, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID_InProcServer32_reg_key_OK_n
push ecx
jmp 0x6d1c33c4
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c33c9
mov edx, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID_InProcServer32_reg_key_FAIL_n
push edx
call edi
add esp, 8
push str.Apartment
push str.ThreadingModel
lea eax, [esp + 0x1c]
push eax
push SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c3400
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c341a
mov ecx, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID_InProcServer32_ThreadingModel_key_OK_n
push ecx
jmp 0x6d1c3415
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c341a
mov edx, dword [0x6d1d56bc]
push str.create_Deployment_Toolkit_CLSID_InProcServer32_ThreadingModel_key_FAIL_n
push edx
call edi
add esp, 8
push 0x7ff
lea eax, [esp + 0x819]
push ebx
push eax
mov byte [esp + 0x820], bl
call sub.MSVCR100.dll_memset
lea ecx, [esp + 0x1020]
push ecx
lea edx, [esp + 0x824]
push 0x800
push edx
call dword [sym.imp.MSVCR100.dll_strcpy_s]
lea eax, [esp + 0x82c]
add esp, 0x18
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x6d1c3460
sub eax, edx
mov byte [esp + eax + 0x810], bl
lea eax, [esp + 0x814]
push eax
push str.JavaFXHome:__s_n
lea ecx, [esp + 0x1c]
push 0x800
push ecx
call esi
add esp, 0x10
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c34a5
mov eax, dword [0x6d1d56bc]
lea edx, [esp + 0x14]
push edx
push eax
call edi
add esp, 8
push str.10.0.0
push str.SOFTWAREJavaSoftJava_Plug_in
push str._s_s
lea ecx, [esp + 0x20]
push 0x800
push ecx
call esi
add esp, 0x14
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c34dc
mov eax, dword [0x6d1d56bc]
lea edx, [esp + 0x14]
push edx
push eax
call edi
add esp, 8
lea ecx, [esp + 0x2014]
push 0x800
push ecx
call fcn.6d1c23b0
add esp, 8
test eax, eax
jne 0x6d1c350f
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c350f
mov edx, dword [0x6d1d56bc]
push str.getLatestInstalledPluginVersion_FAIL_n
push edx
call edi
add esp, 8
lea eax, [esp + 0x814]
push eax
push str.JavaHome
lea ecx, [esp + 0x1c]
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c3549
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3562
mov edx, dword [0x6d1d56bc]
push str.create_Java_Plug_in__reg_key_OK_n
push edx
jmp 0x6d1c355d
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3562
mov eax, dword [0x6d1d56bc]
push str.create_Java_Plug_in__reg_key_FAIL_n
push eax
call edi
add esp, 8
lea ecx, [esp + 0x2014]
push ecx
call fcn.6d1c2170
push eax
push str.UseJava2IExplorer
lea edx, [esp + 0x20]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2a80
add esp, 0x14
test eax, eax
jne 0x6d1c35a1
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c35bb
mov eax, dword [0x6d1d56bc]
push str.create_Java_Plug_in__UseJava2IExplorer_key_OK_n
push eax
jmp 0x6d1c35b6
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c35bb
mov ecx, dword [0x6d1d56bc]
push str.create_Java_Plug_in__UseJava2IEXplorer_key_FAIL_n
push ecx
call edi
add esp, 8
push 1
push str.UseNewJavaPlugin
lea edx, [esp + 0x1c]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2a80
add esp, 0x10
test eax, eax
jne 0x6d1c35ee
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3608
mov eax, dword [0x6d1d56bc]
push str.create_Java_Plug_in__UseNewJavaPlugin_key_OK_n
push eax
jmp 0x6d1c3603
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3608
mov ecx, dword [0x6d1d56bc]
push str.create_Java_Plug_in__UseNewJavaPlugin_key_FAIL_n
push ecx
call edi
add esp, 8
push str.10.0.0
push str.SOFTWAREJavaSoftJava_Web_Start
push str._s_s
lea edx, [esp + 0x20]
push 0x800
push edx
call esi
add esp, 0x14
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3640
mov ecx, dword [0x6d1d56bc]
lea eax, [esp + 0x14]
push eax
push ecx
call edi
add esp, 8
lea edx, [esp + 0x1014]
push edx
push str.Home
lea eax, [esp + 0x1c]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c367a
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3694
mov ecx, dword [0x6d1d56bc]
push str.create_Java_Web_Start__reg_key_OK_n
push ecx
jmp 0x6d1c368f
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3694
mov edx, dword [0x6d1d56bc]
push str.create_Java_Web_Start__reg_key_FAIL_n
push edx
call edi
add esp, 8
push str.10.0.0
push str.BrowserJavaVersion
push str.SOFTWAREJavaSoftJava_Runtime_Environment
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2bb0
add esp, 0x10
test eax, eax
jne 0x6d1c36ca
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c36e4
mov eax, dword [0x6d1d56bc]
push str.update_browser_java_version_key_OK_n
push eax
jmp 0x6d1c36df
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c36e4
mov ecx, dword [0x6d1d56bc]
push str.update_browser_java_version_key_FAIL_n
push ecx
call edi
add esp, 8
push str.2.0.0
push str.SOFTWAREOracleJavaFX
push str._s_s
lea edx, [esp + 0x20]
push 0x800
push edx
call esi
add esp, 0x14
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c371c
mov ecx, dword [0x6d1d56bc]
lea eax, [esp + 0x14]
push eax
push ecx
call edi
add esp, 8
lea edx, [esp + 0x814]
push edx
push str.Path
lea eax, [esp + 0x1c]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.6d1c2b10
add esp, 0x10
test eax, eax
jne 0x6d1c3756
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3770
mov ecx, dword [0x6d1d56bc]
push str.create_JavaFX_2.0.0_reg_key_OK_n
push ecx
jmp 0x6d1c376b
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3770
mov edx, dword [0x6d1d56bc]
push str.create_JavaFX_2.0.0_reg_key_FAIL_n
push edx
call edi
add esp, 8
call fcn.6d1c1ff0
test eax, eax
je 0x6d1c3792
mov eax, dword [0x6d1d56bc]
cmp eax, ebx
je 0x6d1c3792
push eax
call dword [sym.imp.MSVCR100.dll_fclose]
add esp, 4
mov dword [0x6d1d56bc], ebx
mov ecx, dword [esp + 0x2814]
pop edi
pop esi
pop ebx
xor ecx, esp
mov eax, 1
call fcn.6d1c932c
add esp, 0x280c
ret