Function at 0x75c81302
Capabilities:
Delete registry key
Delete registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 0xc], 0
cmp dword [ebp + 0xc], 0
push ebx
push esi
push edi
mov esi, 0xffffffff
je 0x75c81529
mov eax, dword [ebp + 8]
mov ebx, 1
add eax, 8
mov dword [ebp - 4], eax
xor edi, edi
mov eax, dword [ebp - 4]
mov eax, dword [eax - 8]
cmp eax, ebx
je 0x75c814c8
cmp eax, 2
je 0x75c81378
cmp eax, 3
je 0x75c81412
cmp eax, 4
je 0x75c8144f
cmp eax, 5
je 0x75c81471
cmp eax, 6
je 0x75c81496
cmp eax, 7
je 0x75c814b1
mov edi, ebx
jmp 0x75c81510
test esi, esi
jge 0x75c81383
mov edi, ebx
jmp 0x75c81510
mov eax, dword [ebp - 4]
mov edi, dword [eax - 4]
cmp edi, ebx
je 0x75c813c5
test edi, edi
jne 0x75c813a9
push dword [ebp + esi*4 - 0x38]
mov eax, esi
dec esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jge 0x75c813c5
mov edi, ebx
jmp 0x75c81510
jge 0x75c8140b
mov eax, edi
inc edi
cmp eax, 1
jge 0x75c813c5
push dword [ebp + esi*4 - 0x38]
mov eax, esi
dec esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp esi, 0xffffffff
jge 0x75c813ab
lea eax, [ebp - 0x10]
lea ecx, [ebp - 8]
push eax
push ecx
push 0
mov edx, dword [ebp - 4]
push 0xf003f
push 0
push 0
push 0
push dword [edx]
push dword [ebp + esi*4 - 0x38]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov edi, eax
test edi, edi
jne 0x75c8152c
inc esi
mov eax, dword [ebp - 8]
cmp esi, 0xa
mov dword [ebp + esi*4 - 0x38], eax
jl 0x75c81510
mov edi, ebx
jmp 0x75c81510
mov edi, ebx
jmp 0x75c81510
test esi, esi
jge 0x75c8141d
mov edi, ebx
jmp 0x75c81510
mov eax, dword [ebp - 4]
mov edi, dword [eax + 4]
push edi
call dword [sym.imp.msvcrt.dll_wcslen]
add esp, 4
lea eax, [eax*2 + 2]
mov ecx, dword [ebp - 4]
push eax
push edi
push ebx
push 0
push dword [ecx]
push dword [ebp + esi*4 - 0x38]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
jmp 0x75c81510
mov eax, dword [ebp - 4]
push dword [eax]
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
cmp eax, 2
mov edi, eax
jne 0x75c81510
xor edi, edi
jmp 0x75c81510
test esi, esi
jge 0x75c8147c
mov edi, ebx
jmp 0x75c81510
mov eax, dword [ebp - 4]
push dword [eax]
push dword [ebp + esi*4 - 0x38]
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
cmp eax, 2
mov edi, eax
jne 0x75c81510
xor edi, edi
jmp 0x75c81510
test esi, esi
jge 0x75c8149e
mov edi, ebx
jmp 0x75c81510
mov eax, dword [ebp - 4]
push dword [eax]
push dword [ebp + esi*4 - 0x38]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov edi, eax
jmp 0x75c81510
test esi, esi
jge 0x75c814b9
mov edi, ebx
jmp 0x75c81510
push dword [ebp + esi*4 - 0x38]
mov eax, esi
dec esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x75c81510
test esi, esi
jl 0x75c814dd
push dword [ebp + esi*4 - 0x38]
mov eax, esi
dec esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jge 0x75c814cc
lea eax, [ebp - 0x10]
lea ecx, [ebp - 8]
push eax
push ecx
push 0
mov edx, dword [ebp - 4]
push 0xf003f
push 0
push 0
push 0
push dword [edx]
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov edi, eax
test edi, edi
jne 0x75c8152c
inc esi
mov eax, dword [ebp - 8]
mov dword [ebp + esi*4 - 0x38], eax
test edi, edi
jne 0x75c8152c
add dword [ebp - 4], 0x10
inc dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp + 0xc]
jb 0x75c8132f
jmp 0x75c8152c
mov edi, dword [ebp - 4]
test esi, esi
jl 0x75c81541
push dword [ebp + esi*4 - 0x38]
mov eax, esi
dec esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jge 0x75c81530
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8