Function at 0x417d4d
Capabilities:
Set registry value

Disassembly:
push 0x84
mov eax, 0x44041c
call fcn.0042babd
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov dword [ebp - 4], 2
xor ebx, ebx
mov dword [ebp - 0x10], ebx
call fcn.004295cd
cdq
push 0x14
pop ecx
idiv ecx
mov esi, edx
inc esi
call fcn.004295cd
cdq
idiv esi
cmp edx, esi
jg 0x417d91
mov eax, esi
cdq
idiv esi
cmp edx, ebx
je 0x417d96
call fcn.0040d183
cmp dword [ebp + 0x24], 0x10
mov eax, dword [ebp + 0x10]
jae 0x417da2
lea eax, [ebp + 0x10]
lea ecx, [ebp - 0x10]
push ecx
mov edi, 0xf003f
push edi
push ebx
push eax
mov esi, closesocket
push esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
cmp eax, 2
jne 0x417e63
cmp dword [ebp + 0x24], 0x10
mov eax, dword [ebp + 0x10]
jae 0x417dcf
lea eax, [ebp + 0x10]
push ebx
lea ecx, [ebp - 0x10]
push ecx
push ebx
push edi
push ebx
push ebx
push ebx
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
cmp dword [ebp + 0x24], 0x10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0x10]
jae 0x417df0
lea eax, [ebp + 0x10]
push eax
push esi
lea eax, [ebp - 0x38]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x18], esp
push 0x38
push 0x4497f0
call fcn.004081ed
lea edi, [ebp - 0x90]
call fcn.00427366
mov byte [ebp - 4], 3
call fcn.004274a1
mov byte [ebp - 4], 4
cmp dword [eax + 0x18], 0x10
jb 0x417e2d
mov eax, dword [eax + 4]
jmp 0x417e30
add eax, 4
mov ebx, dword [ebp - 0x14]
push eax
push 1
call fcn.0040eded
add esp, 0x10
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.004035bd
lea esi, [ebp - 0x90]
mov byte [ebp - 4], 2
call fcn.00404654
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
mov esi, closesocket
cmp eax, 5
jne 0x417ec4
cmp dword [ebp + 0x24], 0x10
mov eax, dword [ebp + 0x10]
jae 0x417e74
lea eax, [ebp + 0x10]
push eax
push esi
lea eax, [ebp - 0x38]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x18], esp
push 0x3b
push str._DRTSN
call fcn.004081ed
lea edi, [ebp - 0x90]
call fcn.00427366
mov byte [ebp - 4], 5
call fcn.00427666
mov byte [ebp - 4], 6
cmp dword [eax + 0x18], 0x10
jb 0x417eb1
mov eax, dword [eax + 4]
jmp 0x417eb4
add eax, 4
mov ebx, dword [ebp - 0x14]
push eax
push 1
call fcn.0040eded
add esp, 0x10
jmp 0x417f23
cmp eax, ebx
je 0x417f3e
cmp dword [ebp + 0x24], 0x10
mov ecx, dword [ebp + 0x10]
jae 0x417ed4
lea ecx, [ebp + 0x10]
push ecx
push esi
push eax
lea eax, [ebp - 0x38]
push eax
sub esp, 0x1c
mov esi, esp
mov dword [ebp - 0x18], esp
push 0x3e
push str.ee__Rgri
call fcn.004081ed
lea edi, [ebp - 0x90]
call fcn.00427366
mov byte [ebp - 4], 7
call fcn.004274a1
mov byte [ebp - 4], 8
cmp dword [eax + 0x18], 0x10
jb 0x417f12
mov eax, dword [eax + 4]
jmp 0x417f15
add eax, 4
mov ebx, dword [ebp - 0x14]
push eax
push 1
call fcn.0040eded
add esp, 0x14
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.004035bd
lea esi, [ebp - 0x90]
call fcn.00404654
xor ebx, ebx
jmp 0x417f6c
cmp dword [ebp - 0x10], ebx
je 0x417f7a
cmp dword [ebp + 0x5c], 0x10
mov ecx, dword [ebp + 0x48]
jae 0x417f4f
lea ecx, [ebp + 0x48]
cmp dword [ebp + 0x40], 0x10
mov eax, dword [ebp + 0x2c]
jae 0x417f5b
lea eax, [ebp + 0x2c]
push dword [ebp + 0x58]
push ecx
push 1
push ebx
push eax
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
cmp dword [ebp - 0x10], ebx
je 0x417f7a
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push ebx
push 1
lea ecx, [ebp + 0xc]
call fcn.004035bd
push ebx
push 1
lea ecx, [ebp + 0x28]
call fcn.004035bd
push ebx
push 1
lea ecx, [ebp + 0x44]
call fcn.004035bd
xor eax, eax
call fcn.0042bb95
ret 0x58