Function at 0x1000ee73
Capabilities:
Set registry value

Disassembly:
push 0x4c
mov eax, 0x100126a2
call fcn.10011e79
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x30], ecx
mov eax, dword [0x10014024]
mov ebx, dword [ebp + 8]
cmp eax, 0x10014024
je 0x1000eeb1
test byte [eax + 0x1c], 1
je 0x1000eeb1
cmp byte [eax + 0x19], 5
jb 0x1000eeb1
push dword [ebp + 0xc]
push ebx
push edx
push ecx
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.1000ed30
xor eax, eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov esi, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
call fcn.1000f4f7
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000ef07
test byte [eax + 0x1c], 2
je 0x1000ef07
cmp byte [eax + 0x19], 4
jb 0x1000ef07
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x2e
pop ecx
call fcn.10002ec1
test edi, edi
jne 0x1000ef44
lea edx, [ebp - 0x4c]
lea ecx, [ebp - 0x58]
call fcn.1000dd26
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000ef44
test byte [eax + 0x1c], 2
je 0x1000ef44
cmp byte [eax + 0x19], 4
jb 0x1000ef44
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x2f
pop ecx
call fcn.10002ec1
push dword [ebp - 0x24]
lea ecx, [ebp - 0x2c]
call fcn.1000acf9
push 0x100022d8
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.1000acf9
push 0x100022d8
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 4
call fcn.1000acf9
mov byte [ebp - 4], 5
test edi, edi
jne 0x1000f000
test ebx, ebx
je 0x1000efbd
mov ecx, ebx
call fcn.1000b2ee
push eax
push ebx
lea ecx, [ebp - 0x20]
call fcn.1000b275
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000efbd
test byte [eax + 0x1c], 2
je 0x1000efbd
cmp byte [eax + 0x19], 4
jb 0x1000efbd
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x30
pop ecx
call fcn.10002ea3
mov ebx, dword [ebp + 0xc]
test ebx, ebx
je 0x1000f000
mov ecx, ebx
call fcn.1000b2ee
push eax
push ebx
lea ecx, [ebp - 0x1c]
call fcn.1000b275
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f000
test byte [eax + 0x1c], 2
je 0x1000f000
cmp byte [eax + 0x19], 4
jb 0x1000f000
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x31
pop ecx
call fcn.10002ea3
mov ebx, 0x10014158
lea ecx, [ebp - 0x18]
push ebx
call fcn.1000b324
mov byte [ebp - 4], 6
test edi, edi
jne 0x1000f3c3
lea ecx, [ebp - 0x18]
call fcn.1000d954
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f055
test byte [eax + 0x1c], 2
je 0x1000f055
cmp byte [eax + 0x19], 4
jb 0x1000f055
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x32
pop ecx
call fcn.10002ec1
mov eax, dword [0x10014024]
test edi, edi
js 0x1000f3c8
push ebx
lea ecx, [ebp - 0x14]
call fcn.1000b324
xor eax, eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
mov ebx, eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x48], ebx
jle 0x1000f3b8
push ebx
lea ecx, [ebp - 0x4c]
call fcn.1000d3a0
push eax
lea ecx, [ebp - 0x14]
call fcn.1000b000
mov ecx, 0x100021c8
call fcn.1000b2ee
push eax
push 0x100021c8
lea ecx, [ebp - 0x14]
call fcn.1000aaae
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x14]
push dword [eax - 0xc]
push eax
call fcn.1000aaae
push ecx
push ecx
push 0x2011f
push ecx
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x40]
push dword [ebp - 0x58]
call fcn.1000ab09
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f101
test byte [eax + 0x1c], 2
je 0x1000f101
cmp byte [eax + 0x19], 4
jb 0x1000f101
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x33
pop ecx
call fcn.10002ec1
test edi, edi
jne 0x1000f226
mov eax, dword [ebp - 0x30]
push 4
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x40]
push 4
push edi
push 0x100022a8
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f155
test byte [eax + 0x1c], 2
je 0x1000f155
cmp byte [eax + 0x19], 4
jb 0x1000f155
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x34
pop ecx
call fcn.10002ec1
test edi, edi
jne 0x1000f226
push ecx
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x40]
push 0x100022b8
call fcn.1000ad45
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f19c
test byte [eax + 0x1c], 2
je 0x1000f19c
cmp byte [eax + 0x19], 4
jb 0x1000f19c
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x35
pop ecx
call fcn.10002ec1
test edi, edi
jne 0x1000f226
push ecx
push dword [ebp - 0x20]
lea ecx, [ebp - 0x40]
push 0x100022c0
call fcn.1000ad45
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f1e3
test byte [eax + 0x1c], 2
je 0x1000f1e3
cmp byte [eax + 0x19], 4
jb 0x1000f1e3
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x36
pop ecx
call fcn.10002ec1
test edi, edi
jne 0x1000f226
push ecx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x40]
push 0x100022cc
call fcn.1000ad45
mov edi, eax
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f226
test byte [eax + 0x1c], 2
je 0x1000f226
cmp byte [eax + 0x19], 4
jb 0x1000f226
push edi
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x37
pop ecx
call fcn.10002ec1
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x1000f239
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
mov dword [ebp - 0x40], eax
test edi, edi
jne 0x1000f39d
push 0x10014158
lea ecx, [ebp - 0x24]
call fcn.1000b324
push ebx
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 9
call fcn.1000d3a0
push dword [eax]
lea eax, [ebp - 0x24]
push 0x10002290
push eax
call fcn.1000d650
mov edi, dword [ebp - 0x24]
add esp, 0xc
push edi
push 0
push 0x100002
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov esi, eax
test esi, esi
jne 0x1000f348
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov edx, dword [0x10014024]
cmp edx, 0x10014024
je 0x1000f2d3
test byte [edx + 0x1c], 2
je 0x1000f2d3
movzx eax, byte [edx + 0x19]
mov ecx, ebx
neg ecx
sbb ecx, ecx
and ecx, 0xfffffffd
add ecx, 5
cmp eax, ecx
jb 0x1000f2d3
push ebx
push dword [edx + 0x14]
push dword [edx + 0x10]
mov edx, 0x10002358
push 0x38
pop ecx
call fcn.10002ec1
mov edx, dword [0x10014024]
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x28], esi
cmp edx, 0x10014024
je 0x1000f301
test byte [edx + 0x1c], 2
je 0x1000f301
cmp byte [edx + 0x19], 4
jb 0x1000f301
push esi
push dword [edx + 0x14]
push dword [edx + 0x10]
mov edx, 0x10002358
push 0x39
pop ecx
call fcn.10002ec1
test esi, esi
je 0x1000f350
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, dword [0x10014024]
cmp ecx, 0x10014024
je 0x1000f33a
test byte [ecx + 0x1c], 2
je 0x1000f33a
cmp byte [ecx + 0x19], 4
jb 0x1000f33a
push eax
push dword [ecx + 0x14]
mov edx, 0x10002358
push dword [ecx + 0x10]
push 0x3a
pop ecx
call fcn.10002ec1
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor esi, esi
mov dword [ebp - 0x28], esi
jmp 0x1000f391
mov edx, dword [0x10014024]
jmp 0x1000f2d6
push ebx
lea ecx, [ebp - 0x4c]
call fcn.1000d3a0
lea ecx, [ebp - 0x58]
mov edx, dword [eax]
call fcn.1000e094
mov ecx, dword [0x10014024]
cmp ecx, 0x10014024
je 0x1000f391
test byte [ecx + 0x1c], 2
je 0x1000f391
cmp byte [ecx + 0x19], 4
jb 0x1000f391
push eax
push dword [ecx + 0x14]
mov edx, 0x10002358
push dword [ecx + 0x10]
push 0x3b
pop ecx
call fcn.10002ec1
lea ecx, [edi - 0x10]
mov byte [ebp - 4], 8
call fcn.1000b376
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, dword [ebp - 0x48]
jl 0x1000f083
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x1000f3b8
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.1000b376
mov eax, dword [0x10014024]
cmp eax, 0x10014024
je 0x1000f3e8
test byte [eax + 0x1c], 1
je 0x1000f3e8
push dword [eax + 0x14]
mov edx, 0x10002358
push dword [eax + 0x10]
push 0x3c
pop ecx
call fcn.10002ea3
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.1000b376
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.1000b376
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.1000b376
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.1000b376
lea ecx, [ebp - 0x4c]
call fcn.1000d3c5
test esi, esi
je 0x1000f427
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x58], 0
je 0x1000f436
push dword [ebp - 0x58]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.10011e47
ret 8