Function at 0x1043ded
Capabilities:
Set registry value

Disassembly:
push 0x20
mov eax, 0x105eabd
call fcn.0104dc9c
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 1
cmp dword [ebp + 0xc], esi
je 0x1043e5f
push esi
lea eax, [ebp - 0x1c]
push eax
push esi
push 2
push esi
push esi
push esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
cmp eax, esi
je 0x1043e65
jg 0x1043e32
mov dword [ebp - 0x18], eax
jmp 0x1043e43
mov ecx, eax
and ecx, 0xffff
or ecx, 0x80070000
mov dword [ebp - 0x18], ecx
push dword [ebp + 0xc]
push 0x10112fc
push 0x10117e0
push eax
call fcn.01048dd8
add esp, 0x10
push esi
jmp 0x1043fa2
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1c], eax
mov eax, 0x104
push eax
lea ecx, [ebp - 0x14]
mov dword [ebp + 8], eax
call fcn.01033530
movzx eax, al
cmp eax, esi
jne 0x1043ea0
push 0x10117d0
mov eax, 0x8007000e
push 0x10117b0
push eax
mov dword [ebp - 0x18], eax
call fcn.01048c52
add esp, 0xc
push dword [ebp - 0x14]
jmp 0x1043fa2
mov dword [ebp - 0x20], esi
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x20]
cmp ebx, dword [edi + 4]
jae 0x1043fd6
push ebx
mov ecx, edi
call fcn.0104759f
mov eax, dword [eax]
push ebx
mov ecx, edi
mov dword [ebp - 0x24], eax
call fcn.0104759f
mov eax, dword [eax]
mov ebx, dword [eax - 0xc]
inc ebx
cmp ebx, 1
je 0x1043fce
mov eax, dword [ebp + 8]
sub eax, esi
cmp ebx, eax
jb 0x1043f6f
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x14]
and dword [ebp - 0x14], 0
add eax, ebx
add eax, eax
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
mov dword [ebp - 0x28], edi
mov dword [ebp + 8], eax
call fcn.01033530
movzx eax, al
test eax, eax
jne 0x1043f3f
push 0x10117d0
mov eax, 0x8007000e
push 0x1011790
push eax
mov dword [ebp - 0x18], eax
call fcn.01048c52
add esp, 0xc
push edi
mov byte [ebp - 4], 1
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
push dword [ebp - 0x14]
mov byte [ebp - 4], 0
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
pop ecx
jmp 0x1043fab
cmp esi, dword [ebp + 8]
jbe 0x1043f55
push 0x1011720
mov eax, 0x8000ffff
push 0x10116fc
jmp 0x1043f1a
lea eax, [esi + esi]
push eax
push edi
push dword [ebp - 0x14]
call sub.msvcrt.dll_memcpy
push edi
mov byte [ebp - 4], 1
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
add esp, 0x10
push dword [ebp - 0x24]
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x14]
sub eax, esi
push eax
lea eax, [edi + esi*2]
push eax
call fcn.01033736
mov dword [ebp - 0x18], eax
test eax, eax
jge 0x1043fcc
push dword [ebp - 0x24]
push 0x10116b0
push 0x101168c
push eax
call fcn.01048c52
add esp, 0x10
push edi
mov byte [ebp - 4], 0
call sub.msvcrt.dll_void___cdecl_operator_delete___void__
pop ecx
cmp dword [ebp + 0xc], 0
je 0x1043fc1
cmp dword [ebp - 0x1c], 0
je 0x1043fc1
push dword [ebp - 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [ebp - 0x18]
call fcn.0104dd50
ret 0x10
add esi, ebx
inc dword [ebp - 0x20]
jmp 0x1043ea3
cmp esi, dword [ebp + 8]
jb 0x1043fef
push 0x10115e0
mov eax, 0x8000ffff
push 0x10115bc
jmp 0x1043e8c
mov edi, dword [ebp - 0x14]
xor eax, eax
mov word [edi + esi*2], ax
lea esi, [esi + esi + 2]
push esi
push edi
push 7
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x1c]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x1043fa1
jg 0x1044018
mov dword [ebp - 0x18], eax
jmp 0x1044029
mov ecx, eax
and ecx, 0xffff
or ecx, 0x80070000
mov dword [ebp - 0x18], ecx
push dword [ebp + 0x10]
push 0x10112a0
push 0x101159c
push eax
call fcn.01048dd8
jmp 0x1043f9e