Function at 0x434a50
Capabilities:
Query or enumerate registry key
Set registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x6e4
mov eax, dword [0x4434f4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x1f
pop ecx
mov esi, 0x409228
lea edi, [ebp - 0x230]
rep movsd dword es:[edi], dword [esi]
push 0x19
pop ecx
push 0x19
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x6cc]
mov esi, 0x4092a8
lea edi, [ebp - 0x14]
xor ebx, ebx
mov dword [ebp - 0x6cc], ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, 0x4092b8
lea edi, [ebp - 0x140]
rep movsd dword es:[edi], dword [esi]
pop ecx
push 0x18
movsw word es:[edi], word [esi]
mov esi, 0x409320
lea edi, [ebp - 0xd8]
rep movsd dword es:[edi], dword [esi]
pop ecx
push 0x1c
mov esi, 0x409388
lea edi, [ebp - 0x74]
rep movsd dword es:[edi], dword [esi]
pop ecx
push 0x21
mov esi, 0x4093e8
lea edi, [ebp - 0x1b0]
rep movsd dword es:[edi], dword [esi]
pop ecx
mov esi, 0x409458
lea edi, [ebp - 0x2b8]
rep movsd dword es:[edi], dword [esi]
push ebx
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x74]
push eax
mov edi, reloc.OLEAUT32.dll_SysReAllocString
push edi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov esi, eax
test esi, esi
jne 0x434b20
mov ecx, dword [ebp - 0x6cc]
lea edx, [ebp - 0x230]
push 3
push 0x10000000
call fcn.00434625
mov esi, eax
cmp dword [ebp - 0x6cc], ebx
je 0x434b34
push dword [ebp - 0x6cc]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x6d0], ebx
mov dword [ebp - 0x6d8], ebx
test esi, esi
jne 0x434dd5
push ebx
lea eax, [ebp - 0x6d8]
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
lea eax, [ebp - 0x1b0]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov esi, eax
test esi, esi
jne 0x434d98
mov ecx, dword [ebp - 0x6d8]
lea edx, [ebp - 0x14]
push 3
push 0x20019
call fcn.00434625
mov esi, eax
test esi, esi
jne 0x434d98
lea eax, [ebp - 0x6d0]
push eax
push 0x109
push ebx
lea eax, [ebp - 0x140]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, eax
test esi, esi
jne 0x434d98
mov edx, dword [ebp - 0x6d8]
mov ecx, dword [ebp - 0x6d0]
call fcn.00434855
mov esi, eax
test esi, esi
jne 0x434d98
push ebx
lea eax, [ebp - 0x6d4]
mov dword [ebp - 0x6d4], ebx
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
lea eax, [ebp - 0x2b8]
mov dword [ebp - 0x6cc], ebx
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov esi, eax
test esi, esi
jne 0x434d6a
mov ecx, dword [ebp - 0x6d4]
lea edx, [ebp - 0x14]
push ebx
push 0x20019
call fcn.00434625
mov esi, eax
test esi, esi
jne 0x434d6a
lea eax, [ebp - 0x6cc]
push eax
push 0x109
push ebx
lea eax, [ebp - 0xd8]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
push 0x104
lea eax, [ebp - 0x4c0]
mov edi, ebx
push eax
push ebx
jmp 0x434d4a
lea eax, [ebp - 0x6e0]
mov dword [ebp - 0x6e0], ebx
push eax
lea eax, [ebp - 0x4c0]
mov dword [ebp - 0x6dc], ebx
push eax
call dword [sym.imp.ADVAPI32.dll_ConvertStringSidToSidW]
test eax, eax
je 0x434d3c
push dword [ebp - 0x6e0]
call dword [sym.imp.KERNEL32.dll_LocalFree]
push ebx
lea eax, [ebp - 0x6dc]
mov dword [ebp - 0x6e0], ebx
push eax
push ebx
push 0xf003f
push ebx
push ebx
push ebx
lea eax, [ebp - 0x4c0]
push eax
push dword [ebp - 0x6d4]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x434d28
mov ecx, dword [ebp - 0x6dc]
lea edx, [ebp - 0x4c0]
push 3
push 0x2001f
call fcn.00434625
test eax, eax
jne 0x434d28
push 0x104
lea eax, [ebp - 0x6c8]
mov esi, ebx
push eax
push ebx
jmp 0x434d18
push 4
lea eax, [ebp - 0x6e4]
mov dword [ebp - 0x6e4], 2
push eax
push 4
push ebx
lea eax, [ebp - 0x6c8]
push eax
push dword [ebp - 0x6dc]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push 0x104
lea eax, [ebp - 0x6c8]
inc esi
push eax
push esi
push dword [ebp - 0x6d0]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x434ce1
cmp dword [ebp - 0x6dc], ebx
je 0x434d3c
push dword [ebp - 0x6dc]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x104
lea eax, [ebp - 0x4c0]
inc edi
push eax
push edi
push dword [ebp - 0x6cc]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyW]
test eax, eax
je 0x434c52
lea esi, [eax - 0x103]
neg esi
sbb esi, esi
and esi, eax
cmp dword [ebp - 0x6d4], ebx
je 0x434d84
push dword [ebp - 0x6d4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x6d4], ebx
cmp dword [ebp - 0x6cc], ebx
je 0x434d98
push dword [ebp - 0x6cc]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x6d0], ebx
je 0x434db2
push dword [ebp - 0x6d0]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x6d0], ebx
cmp dword [ebp - 0x6d8], ebx
je 0x434dcc
push dword [ebp - 0x6d8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x6d8], ebx
test esi, esi
jne 0x434dd5
xor eax, eax
inc eax
jmp 0x434dde
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00441b90
mov esp, ebp
pop ebp
ret