Function at 0x1000f87b
Capabilities:
Set registry value

Disassembly:
push 0x10c
mov eax, 0x100eb987
call fcn.1003e1f4
mov esi, edx
mov ebx, ecx
xor eax, eax
test esi, esi
je 0x1000fb4f
xor edi, edi
mov dword [ebp - 0x94], 7
push 0x1012ed94
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0x98], edi
mov word [ebp - 0xa8], ax
call fcn.10002ed6
mov dword [ebp - 4], edi
lea ecx, [ebp - 0xa8]
cmp dword [ebp - 0x94], 8
cmovae ecx, dword [ebp - 0xa8]
call fcn.10011b2e
push eax
lea ecx, [ebp - 0xd8]
call fcn.10002c0e
lea edx, [ebp - 0xd8]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x108]
call fcn.1000f7e9
mov byte [ebp - 4], 2
cmp dword [eax + 0x14], 0x10
jb 0x1000f910
mov eax, dword [eax]
mov ecx, eax
call fcn.10011a7f
push eax
lea ecx, [ebp - 0xf0]
call fcn.10002c47
push edi
push 1
lea ecx, [ebp - 0x108]
call fcn.10002e46
push edi
push 1
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 5
call fcn.10002e46
mov eax, dword [ebp - 0xe0]
lea ecx, [ebp - 0xf0]
cmp dword [ebp - 0xdc], 8
cmovae ecx, dword [ebp - 0xf0]
lea eax, [eax*2 + 2]
push eax
push ecx
push 1
push edi
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
push str.Title
push esi
call edi
xor eax, eax
mov dword [ebp - 0x7c], 7
push 0x1012edb8
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x80], eax
mov word [ebp - 0x90], ax
call fcn.10002ed6
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x90]
cmp dword [ebp - 0x7c], 8
cmovae ecx, dword [ebp - 0x90]
call fcn.10011b2e
push eax
lea ecx, [ebp - 0xd8]
call fcn.10002c0e
lea edx, [ebp - 0xd8]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x108]
call fcn.1000f7e9
mov byte [ebp - 4], 8
cmp dword [eax + 0x14], 0x10
jb 0x1000f9e1
mov eax, dword [eax]
mov ecx, eax
call fcn.10011a7f
push eax
lea ecx, [ebp - 0xc0]
call fcn.10002c47
xor eax, eax
lea ecx, [ebp - 0x108]
push eax
push 1
call fcn.10002e46
xor eax, eax
lea ecx, [ebp - 0xd8]
push eax
push 1
call fcn.10002e46
mov eax, dword [ebp - 0xb0]
lea ecx, [ebp - 0xc0]
cmp dword [ebp - 0xac], 8
cmovae ecx, dword [ebp - 0xc0]
lea eax, [eax*2 + 2]
push eax
push ecx
push 1
xor eax, eax
push eax
push 0x1012f000
push esi
call edi
test ebx, ebx
mov edx, str.F1B5BA770B401A1E
mov eax, str.A54C28C5CAE1DA00
cmove edx, eax
mov ecx, edx
lea ebx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x10c]
jne 0x1000fa58
sub ecx, ebx
xor ebx, ebx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edx
push 1
push ebx
push str.Agreed
push esi
call edi
push 0x22
push str.A54C28C5CAE1DA00
push 1
push ebx
push str.DisgreeText
push esi
call edi
push 0x22
push str.A54C28C5CAE1DA00
push 1
push ebx
push str.Type
push esi
call edi
lea eax, [ebp - 0x118]
push eax
call fcn.10038c64
pop ecx
xor eax, eax
push 0x62
mov word [ebp - 0x78], ax
lea eax, [ebp - 0x76]
push ebx
push eax
call fcn.1003e9c0
add esp, 0xc
lea eax, [ebp - 0x78]
push 0xa
push 0x32
push eax
push dword [ebp - 0x114]
push dword [ebp - 0x118]
call fcn.1003a747
lea ecx, [ebp - 0x78]
add esp, 0x14
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1000fae9
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [ebp - 0x78]
push eax
push 1
push ebx
push 0x1012d67c
push esi
call edi
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
lea ecx, [ebp - 0xc0]
push ebx
inc esi
push esi
call fcn.10002f54
push ebx
push esi
lea ecx, [ebp - 0x90]
call fcn.10002f54
push ebx
push esi
lea ecx, [ebp - 0xf0]
call fcn.10002f54
push ebx
push esi
lea ecx, [ebp - 0xa8]
call fcn.10002f54
mov eax, esi
call fcn.1003e1b2
ret