Function at 0x1012e69
Capabilities:
Set registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
and dword [ebp - 4], 0
push ebx
mov ebx, dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push esi
mov esi, dword [ebp + 8]
push edi
push 0x3f4
push esi
mov edi, ecx
call ebx
push 0x403
push esi
mov dword [edi + 0x2944], eax
call ebx
push 0x401
push esi
mov dword [edi + 0x2958], eax
call ebx
push 0x402
push esi
mov dword [edi + 0x295c], eax
call ebx
push 0
push 0
push 0x147
push 0x3f6
push esi
mov esi, dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov dword [edi + 0x2960], eax
call esi
cmp eax, 0xffffffff
je 0x1012edb
mov dword [edi + 0x2950], eax
push 0
push 0
push 0x400
push 0x3fc
push dword [ebp + 8]
call esi
push 0
push 0
push 0x400
push 0x3f5
push dword [ebp + 8]
mov dword [edi + 0x294c], eax
call esi
push 0
push 0
push 0x400
push 0x3f8
push dword [ebp + 8]
mov dword [edi + 0x2948], eax
call esi
imul eax, eax, 0x64
push 0x15
mov dword [edi + 0x2d74], eax
lea eax, [edi + 0x28b4]
push eax
push 0x405
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItemTextW]
push 0x3ec
push dword [ebp + 8]
call ebx
xor esi, esi
test eax, eax
je 0x1012f5c
mov dword [edi + 0x293c], 1
jmp 0x1012f62
mov dword [edi + 0x293c], esi
push esi
lea eax, [ebp - 4]
push eax
push esi
push 0x20006
push esi
push esi
push esi
lea eax, [edi + 0x251c]
push eax
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x101318b
push dword [ebp - 4]
mov ecx, edi
call fcn.0101ea56
push 4
pop ebx
push ebx
lea eax, [edi + 0x2940]
push eax
push ebx
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push 0x10015c8
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2944]
push eax
push ebx
push 0
push 0x10015b4
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2954]
push eax
push ebx
push 0
push 0x1001598
push dword [ebp - 4]
call esi
lea eax, [edi + 0x2964]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax + 2]
push eax
lea eax, [edi + 0x2964]
push eax
push 1
push 0
push 0x100157c
push dword [ebp - 4]
call esi
lea eax, [edi + 0x2b6c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax + 2]
push eax
lea eax, [edi + 0x2b6c]
push eax
push 1
push 0
push 0x1001558
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2958]
push eax
push ebx
push 0
push 0x1001538
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x295c]
push eax
push ebx
push 0
push 0x1001514
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2960]
push eax
push ebx
push 0
push 0x10014e8
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2d74]
push eax
push ebx
push 0
push 0x10014d0
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x294c]
push eax
push ebx
push 0
push 0x10014c4
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2948]
push eax
push ebx
push 0
push 0x10014a8
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x2950]
push eax
push ebx
push 0
push 0x100148c
push dword [ebp - 4]
call esi
lea eax, [edi + 0x28b4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax + 2]
push eax
lea eax, [edi + 0x28b4]
push eax
push 1
push 0
push 0x1001470
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x293c]
push eax
push ebx
push 0
push 0x1001458
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x28f0]
push eax
push ebx
push 0
push 0x1001440
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x28e0]
push eax
push ebx
push 0
push 0x1001428
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x28f4]
push eax
push ebx
push 0
push 0x1001410
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x28f7]
push eax
push ebx
push 0
push 0x10013f8
push dword [ebp - 4]
call esi
push ebx
lea eax, [edi + 0x28fb]
push eax
push ebx
push 0
push 0x10013d8
push dword [ebp - 4]
call esi
add edi, 0x28fc
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax + 2]
push eax
push edi
push 1
push 0
push 0x10013c4
push dword [ebp - 4]
call esi
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
pop esi
pop ebx
leave
ret 4