Function at 0x4837b1
Capabilities:
Get common file path
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b5000
push 0x4a7764
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
add esp, 0xfffffbbc
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x450], ecx
mov byte [ebp - 0x124], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x123]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push str.SOFTWAREMicrosoftWindowsCurrentVersionpoliciesExplorerRun
push 0x104
lea eax, [ebp - 0x124]
push eax
call fcn.00415330
mov dword [ebp - 0x128], 0
lea ecx, [ebp - 0x20]
push ecx
lea edx, [ebp - 0x124]
push edx
push SysStringLen
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
test eax, eax
je 0x48383e
mov eax, dword [ebp - 0x128]
jmp 0x483acb
mov dword [ebp - 0x1c], 0
mov eax, 1
test eax, eax
je 0x483ab5
mov byte [ebp - 0x448], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x447]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x330], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x32f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x344], 0x104
mov dword [ebp - 0x334], 0x104
lea ecx, [ebp - 0x334]
push ecx
lea edx, [ebp - 0x330]
push edx
lea eax, [ebp - 0x340]
push eax
push 0
lea ecx, [ebp - 0x344]
push ecx
lea edx, [ebp - 0x448]
push edx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x454], eax
mov ecx, dword [ebp - 0x454]
push ecx
mov edx, dword [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
call fcn.00442b70
mov ecx, eax
call fcn.004432af
mov dword [ebp - 0x33c], eax
cmp dword [ebp - 0x33c], 0x103
jne 0x4838fd
jmp 0x483ab5
cmp dword [ebp - 0x33c], 0
je 0x48390b
jmp 0x483ab5
mov byte [ebp - 0x22c], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x22b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [ebp - 0x338], 0
push 0x104
lea ecx, [ebp - 0x22c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
mov dword [ebp - 0x338], eax
cmp dword [ebp - 0x338], 0
jne 0x483954
jmp 0x483ab5
push 0x53686c
mov edx, 0x104
sub edx, dword [ebp - 0x338]
push edx
lea eax, [ebp - 0x22c]
push eax
call fcn.004152f0
lea ecx, [ebp - 0x330]
push ecx
mov edx, 0x104
sub edx, dword [ebp - 0x338]
sub edx, 1
push edx
lea eax, [ebp - 0x22c]
push eax
call fcn.004152f0
lea ecx, [ebp - 0x22c]
push ecx
call fcn.0042b4af
add esp, 4
test eax, eax
jne 0x4839ab
jmp 0x483845
lea edx, [ebp - 0x22c]
push edx
call fcn.00453370
mov ecx, eax
call fcn.00453794
test eax, eax
je 0x4839c7
jmp 0x483845
mov dword [ebp - 0x44c], 0
push 1
push 0
lea eax, [ebp - 0x22c]
push eax
call fcn.0042b751
add esp, 0xc
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x44c], 0
jne 0x4839f8
jmp 0x483845
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x44c]
push ecx
call fcn.0042a900
add esp, 4
test eax, eax
jne 0x483a14
jmp 0x483a88
lea edx, [ebp - 0x22c]
push edx
mov ecx, dword [ebp - 0x450]
call fcn.0048320c
test eax, eax
je 0x483a7e
push 0
push 0
mov eax, dword [ebp - 0x44c]
push eax
lea ecx, [ebp - 0x22c]
push ecx
mov ecx, dword [ebp - 0x450]
call fcn.00482f36
test eax, eax
je 0x483a7e
mov edx, dword [ebp + 0xc]
push edx
push 0x6b
lea eax, [ebp - 0x22c]
push eax
mov ecx, dword [ebp - 0x450]
push ecx
call dword [ebp + 8]
mov edx, dword [ebp - 0x450]
mov dword [edx + 4], 1
mov eax, dword [ebp - 0x128]
add eax, 1
mov dword [ebp - 0x128], eax
xor ecx, ecx
test ecx, ecx
jne 0x4839ff
mov dword [ebp - 4], 0xffffffff
jmp 0x483aa1
mov edx, dword [ebp - 0x44c]
push edx
call fcn.0042b816
add esp, 4
jmp 0x483845
mov eax, dword [ebp - 0x20]
push eax
call fcn.00442b70
mov ecx, eax
call fcn.00443318
mov eax, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8