Function at 0x420960
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42e6d5
mov eax, dword fs:[0]
push eax
sub esp, 0x148
mov eax, dword [0x4411c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov byte [ebp - 0x13c], 0
push 0xff
push 0
lea eax, [ebp - 0x13b]
push eax
call fcn.004097d0
add esp, 0xc
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 2
push str.SOFTWAREMicrosoftWindowsCurrentVersionexplorerAutoplayHandlersCancelAutoplayCLSID
lea ecx, [ebp - 0x2c]
call fcn.004012e0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x2c]
call fcn.004014a0
push eax
lea ecx, [ebp - 0x13c]
push ecx
call fcn.00409b50
add esp, 8
lea edx, [ebp - 0x30]
push edx
push 0x101
push 0
lea eax, [ebp - 0x13c]
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x420a71
lea ecx, [ebp - 0x30]
push ecx
push 0x101
push 0
lea edx, [ebp - 0x13c]
push edx
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x420a71
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
push eax
lea ecx, [ebp - 0x13c]
push ecx
push str.ERR:_Open_REG_key:_s_error..._ErrorCode_is:__d
call fcn.0042a0d0
add esp, 0xc
mov dword [ebp - 0x144], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00401360
mov eax, dword [ebp - 0x144]
jmp 0x420bd1
push 2
call fcn.004099f8
add esp, 4
mov dword [ebp - 0x3c], eax
lea edx, [ebp - 0x38]
push edx
mov eax, dword [ebp - 0x3c]
push eax
push 0
push 0
push 0x439fd4
mov ecx, dword [ebp - 0x30]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x3c]
push edx
call fcn.0040984a
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x34], 0
je 0x420bb2
push str.Get_CLSID_failed_
call fcn.0042a070
add esp, 4
lea ecx, [ebp - 0x30]
push ecx
push 0x2011f
push 0
lea edx, [ebp - 0x13c]
push edx
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x420b20
push str.OpenKey_to_KEY_WRITE_CLSID_is_faild_
call fcn.0042a070
add esp, 4
mov dword [ebp - 0x148], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00401360
mov eax, dword [ebp - 0x148]
jmp 0x420bd1
push 0
push 0
push 1
push 0
push str.E073343B_9D6B_41cc_8792_2CEDCCC0E868
mov eax, dword [ebp - 0x30]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
jne 0x420b7a
mov ecx, dword [ebp - 0x30]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push str.set_CLSID_is_success_
call fcn.0042a0d0
add esp, 4
mov dword [ebp - 0x14c], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00401360
mov eax, dword [ebp - 0x14c]
jmp 0x420bd1
push str.set_CLSID_is_faild_
call fcn.0042a070
add esp, 4
mov edx, dword [ebp - 0x30]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x150], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00401360
mov eax, dword [ebp - 0x150]
jmp 0x420bd1
mov dword [ebp - 0x154], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.00401360
mov eax, dword [ebp - 0x154]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00407a6c
mov esp, ebp
pop ebp
ret