Function at 0x1001f180
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10061d28
mov eax, dword fs:[0]
push eax
sub esp, 0x8a8
mov eax, dword [0x1007a010]
xor eax, esp
mov dword [esp + 0x8a0], eax
push ebx
push esi
push edi
mov eax, dword [0x1007a010]
xor eax, esp
push eax
lea eax, [esp + 0x8b8]
mov dword fs:[0], eax
push 0x7fe
xor esi, esi
lea ecx, [esp + 0xb2]
xor eax, eax
push esi
push ecx
mov word [esp + 0xb8], ax
call fcn.1004acc0
mov eax, dword [0x1007dd3c]
add esp, 0xc
push 0x400
lea edx, [esp + 0xb0]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1001f355
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x8c0], esi
mov ebx, 7
xor ecx, ecx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], esi
mov word [esp + 0x20], cx
mov byte [esp + 0x8c0], 1
push 0x17
xor edx, edx
push str.SoftwareMozillaPlugins
lea ecx, [esp + 0x7c]
mov dword [esp + 0x90], ebx
mov dword [esp + 0x8c], esi
mov word [esp + 0x7c], dx
call fcn.10008dc0
lea eax, [esp + 0x74]
push eax
mov eax, 0x1006e9b4
lea edi, [esp + 0x5c]
mov byte [esp + 0x8c4], 2
call fcn.10009430
add esp, 4
push eax
mov eax, str._nprt.com_ClientNPAPISupport
lea edi, [esp + 0x40]
mov byte [esp + 0x8c4], 3
call fcn.10009430
add esp, 4
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0x8c4], 4
call fcn.10008160
mov edi, 8
cmp dword [esp + 0x50], edi
jb 0x1001f2b9
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.10046e92
add esp, 4
xor edx, edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], esi
mov word [esp + 0x3c], dx
cmp dword [esp + 0x6c], edi
jb 0x1001f2db
mov eax, dword [esp + 0x58]
push eax
call fcn.10046e92
add esp, 4
xor ecx, ecx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x68], esi
mov word [esp + 0x58], cx
cmp dword [esp + 0x88], edi
jb 0x1001f300
mov edx, dword [esp + 0x74]
push edx
call fcn.10046e92
add esp, 4
mov byte [esp + 0x8c0], 5
mov eax, dword [esp + 0x20]
cmp dword [esp + 0x34], edi
jae 0x1001f316
lea eax, [esp + 0x20]
lea ecx, [esp + 0x14]
push ecx
call fcn.1001ef30
cmp eax, esi
je 0x1001f35c
cmp dword [esp + 0x34], edi
jb 0x1001f337
mov edx, dword [esp + 0x20]
push edx
call fcn.10046e92
add esp, 4
xor eax, eax
mov word [esp + 0x20], ax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x30], esi
cmp eax, esi
je 0x1001f355
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x1001f545
mov dword [esp + 0x8c0], 1
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
push str.ClientNPAPISupport
call edi
mov ebx, dword [esp + 0x14]
lea ecx, [eax + eax + 2]
push ecx
push str.ClientNPAPISupport
push 1
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push str.Description
push ebx
call esi
lea edx, [esp + 0xac]
push edx
call edi
lea eax, [eax + eax + 2]
push eax
lea ecx, [esp + 0xb0]
push ecx
push 1
push 0
push str.Path
push ebx
call esi
push str.ClientNPAPISupport
call edi
lea edx, [eax + eax + 2]
push edx
push str.ClientNPAPISupport
push 1
push 0
push 0x1006f018
push ebx
call esi
push 0
push 0
lea esi, [esp + 0x7c]
call fcn.1001ed50
mov dword [esp + 0x18], eax
push 0
push 1
lea esi, [esp + 0x4c]
mov byte [esp + 0x8d0], 7
call fcn.1001ed50
push eax
mov eax, 0x1006f030
lea edi, [esp + 0x6c]
mov byte [esp + 0x8d4], 8
call fcn.10009430
add esp, 0x14
mov ecx, eax
mov eax, dword [esp + 0x10]
lea edi, [esp + 0x90]
mov byte [esp + 0x8c0], 9
call fcn.10009570
mov edi, 8
cmp dword [esp + 0x6c], edi
jb 0x1001f445
mov eax, dword [esp + 0x58]
push eax
call fcn.10046e92
add esp, 4
xor ecx, ecx
mov esi, 7
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], 0
mov word [esp + 0x58], cx
cmp dword [esp + 0x50], edi
jb 0x1001f470
mov edx, dword [esp + 0x3c]
push edx
call fcn.10046e92
add esp, 4
xor eax, eax
mov dword [esp + 0x50], esi
mov dword [esp + 0x4c], 0
mov word [esp + 0x3c], ax
cmp dword [esp + 0x88], edi
jb 0x1001f499
mov ecx, dword [esp + 0x74]
push ecx
call fcn.10046e92
add esp, 4
cmp dword [esp + 0xa4], edi
jb 0x1001f569
mov esi, dword [esp + 0x90]
test esi, esi
je 0x1001f4ce
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea edx, [eax + eax + 2]
push edx
push esi
push 1
push 0
push 0x1006f034
push ebx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push ebx
call dword [sym.imp.ADVAPI32.dll_RegFlushKey]
cmp dword [esp + 0xa4], edi
jb 0x1001f4ee
mov eax, dword [esp + 0x90]
push eax
call fcn.10046e92
add esp, 4
xor ecx, ecx
mov esi, 7
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa0], 0
mov word [esp + 0x90], cx
cmp dword [esp + 0x34], edi
jb 0x1001f522
mov edx, dword [esp + 0x20]
push edx
call fcn.10046e92
add esp, 4
xor eax, eax
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], 0
mov word [esp + 0x20], ax
test ebx, ebx
je 0x1001f540
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
mov ecx, dword [esp + 0x8b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x8a0]
xor ecx, esp
call fcn.1004677e
mov esp, ebp
pop ebp
ret
lea esi, [esp + 0x90]
jmp 0x1001f4b1