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

Disassembly:
push 0xffffffffffffffff
push 0x55bc83
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0x18], esi
lea ecx, [esi + 8]
call fcn.0051af80
xor ebx, ebx
lea ecx, [esi + 0x150]
mov dword [esp + 0x24], ebx
call fcn.0041c090
lea ecx, [esi + 0x170]
mov byte [esp + 0x24], 1
call fcn.004a74e0
mov dword [esi + 0x18c], ebx
mov dword [esi + 0x198], ebx
mov dword [esi + 0x194], ebx
mov dword [esi + 0x190], ebx
mov dword [esi + method.CCommandLineInfo.virtual_0], 0x5694f4
lea ecx, [esi + 0x1a0]
mov byte [esp + 0x24], 3
call fcn.004b83a0
lea ecx, [esi + 0x2e0]
mov byte [esp + 0x24], 4
call fcn.004123e0
lea ecx, [esi + 0x390]
mov byte [esp + 0x24], 5
call fcn.0049c270
push 0x1770
mov byte [esp + 0x28], 6
mov dword [esi + 0x3cc], 0x56d13c
mov dword [esi + 0x3d0], ebx
mov dword [esi + 0x3d4], 0x1f4
call fcn.0054276d
mov edi, eax
mov eax, dword [esi + 0x3d4]
mov dword [esi + 0x3d8], edi
add esp, 4
lea ecx, [eax + eax*2]
xor eax, eax
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
cmp dword [esi + 0x3d8], ebx
jne 0x4679fb
lea eax, [esp + 0x10]
push 0x589640
push eax
mov dword [esp + 0x18], 0xc0000017
call fcn.00528fcc
push 0xfa0
mov byte [esp + 0x28], 7
mov dword [esi + 0x3dc], 0x56d138
mov dword [esi + 0x3e0], ebx
mov dword [esi + 0x3e4], 0x3e8
call fcn.0054276d
mov ecx, dword [esi + 0x3e4]
mov edi, eax
shl ecx, 2
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x3e8], edi
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
cmp dword [esi + 0x3e8], ebx
jne 0x467a67
lea eax, [esp + 0x14]
push 0x589640
push eax
mov dword [esp + 0x1c], 0xc0000017
call fcn.00528fcc
push ebp
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x414], ecx
mov edx, dword [0x5c2a74]
mov dword [esi + 0x418], edx
mov eax, dword [0x5c2a74]
mov dword [esi + 0x41c], eax
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x420], ecx
mov edx, dword [0x5c2a74]
mov dword [esi + 0x424], edx
mov eax, dword [0x5c2a74]
mov dword [esi + 0x42c], eax
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x430], ecx
mov edx, dword [0x5c2a74]
mov dword [esi + 0x438], edx
mov eax, dword [0x5c2a74]
mov dword [esi + 0x43c], eax
mov dword [esi + 0x444], ebx
mov dword [esi + 0x448], ebx
mov dword [esi + 0x44c], ebx
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x450], ecx
mov edx, dword [0x5c2a74]
mov dword [esi + 0x454], edx
mov eax, dword [0x5c2a74]
mov dword [esi + 0x45c], eax
mov dword [esi + 0x478], 0x56d12c
mov dword [esi + 0x47c], ebx
mov dword [esi + 0x480], 0x11
mov dword [esi + 0x484], ebx
mov dword [esi + 0x488], ebx
mov dword [esi + 0x48c], ebx
mov dword [esi + 0x490], 0xa
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x49c], ecx
mov edx, dword [0x5c2a74]
mov dword [esi + 0x4a0], edx
mov eax, dword [0x5c2a74]
mov dword [esi + 0x4a8], eax
mov ecx, dword [0x5c2a74]
mov dword [esi + 0x4d0], ecx
mov dword [esi + 0x4f4], 0x56d120
mov dword [esi + 0x4f8], ebx
mov dword [esi + 0x504], ebx
mov dword [esi + 0x500], ebx
mov dword [esi + 0x4fc], ebx
mov dword [esi + 0x508], 0x56d114
mov dword [esi + 0x50c], ebx
mov dword [esi + 0x518], ebx
mov dword [esi + 0x514], ebx
mov dword [esi + 0x510], ebx
mov dword [esi], 0x56d110
mov byte [esi + 0x495], bl
mov byte [esi + 0x496], bl
mov byte [esi + 0x497], bl
mov byte [esi + 0x494], bl
mov byte [esp + 0x28], 0x1c
mov dword [esi + 0x4a4], ebx
mov dword [esi + 0x474], ebx
mov edi, 1
mov byte [esi + 0x461], bl
mov dword [esi + 0x4d4], edi
mov dword [esi + 0x4d8], ebx
mov byte [esi + 0x428], bl
mov byte [esi + 0x434], bl
mov byte [esi + 0x440], bl
mov byte [esi + 0x4ad], 1
mov byte [esi + 0x520], bl
lea edx, [esi + 0x3f0]
mov dword [esi + 0x4b0], ebx
mov dword [esi + 0x4b4], ebx
push edx
mov dword [esi + 0x4b8], ebx
mov dword [esi + 0x4bc], ebx
mov dword [esi + 0x4c0], ebx
mov dword [esi + 0x4c4], ebx
mov dword [esi + 0x4c8], ebx
mov dword [esi + 0x4cc], ebx
mov byte [esi + 0x463], bl
mov byte [esi + 0x3ec], bl
mov byte [esi + 0x3ed], bl
mov dword [esi + 0x4ec], ebx
mov dword [esi + 0x4f0], ebx
mov dword [esi + 0x51c], ebx
mov dword [esi + 0x4e8], edi
mov byte [esi + 0x462], bl
mov byte [esi + 0x4ac], bl
mov byte [esi + 0x4e4], bl
mov dword [esi + 0x4dc], ebx
mov dword [esi + 0x4e0], ebx
mov dword [esi + 0x464], ebx
mov dword [esi + 0x468], ebx
mov byte [esi + 0x46e], bl
mov byte [esi + 0x46c], bl
mov byte [esi + 0x46d], bl
mov byte [esi + 0x46f], bl
mov byte [esi + 0x470], bl
mov dword [esi + 0x408], ebx
mov dword [esi + 0x410], ebx
mov dword [esi + 0x524], ebx
mov dword [esi + 0x52c], ebx
mov dword [esi + 0x528], ebx
mov dword [esi + 0x530], ebx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov ecx, esi
call fcn.0046f780
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
mov ebp, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [esp + 0x10]
push eax
push 0xf003f
push ebx
push str.SoftwareMicrosoftInternet_ExplorerMain
push reloc.WSOCK32.dll_accept
call ebp
test eax, eax
jne 0x467d4b
mov edi, 0x5aade8
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
push ecx
mov ecx, dword [esp + 0x14]
push 0x5aade8
push 1
push ebx
push str.Disable_Script_Debugger
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edi, 1
lea eax, [esp + 0x10]
mov dword [esi + 0x568], edi
push eax
push 0xf003f
push ebx
push str.SoftwareMicrosoftInternet_ExplorerInternational
push reloc.WSOCK32.dll_accept
call ebp
test eax, eax
pop ebp
jne 0x467dc8
mov eax, dword [esp + 0xc]
lea ecx, [esp + 0x14]
lea edx, [esp + 0x10]
push ecx
push edx
push ebx
push ebx
push str.W2KLpk
push eax
mov dword [esp + 0x2c], 4
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x467d9f
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x568], ecx
mov eax, dword [esp + 0xc]
lea edx, [esp + 0x10]
push 4
push edx
push 4
push ebx
push str.W2KLpk
push eax
mov dword [esp + 0x28], ebx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov ecx, dword [esp + 0xc]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, esi
call fcn.00466460
mov ecx, dword [esp + 0x1c]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x1c
ret