Function at 0x3001bdf9
Capabilities:
Set registry value

Disassembly:
push ebp
lea ebp, [esp - 0x1c8]
sub esp, 0x248
mov eax, dword [0x30034b3c]
push ebx
push esi
push edi
lea ecx, [ebp - 0x80]
mov dword [ebp + 0x1c4], eax
call fcn.3000d430
lea ecx, [ebp - 0x64]
call fcn.3000d430
lea ecx, [ebp - 0x6c]
call fcn.3000d430
mov ebx, dword [ebp + 0x1dc]
mov eax, ebx
xor edi, edi
sub eax, edi
je 0x3001bf61
dec eax
dec eax
je 0x3001be57
push 0x3000a830
call fcn.300105be
mov esi, 0xfffffda8
jmp 0x3001c18e
push dword [ebp + 0x1d4]
lea eax, [ebp - 0x64]
push dword [ebp + 0x1d0]
push eax
call fcn.3001a668
mov esi, eax
cmp esi, edi
je 0x3001be7c
push 0x3000a800
jmp 0x3001c14f
cmp dword [0x30077240], edi
mov eax, 0x30008f28
mov dword [ebp - 0x70], eax
jne 0x3001bffe
lea ecx, [ebp + 0x1d0]
push ecx
push edi
push 0xa
lea ecx, [ebp + 0x1b0]
push ecx
push eax
mov dword [ebp + 0x1d0], edi
mov word [ebp + 0x1b0], di
call fcn.3001250e
cmp word [ebp + 0x1b0], di
je 0x3001beef
lea eax, [ebp + 0x1b0]
push eax
push 0x30005a10
call fcn.300106d0
pop ecx
pop ecx
lea eax, [ebp + 0x1b0]
push eax
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
je 0x3001beef
push 0x30009254
jmp 0x3001c14f
cmp dword [ebp + 0x1d0], edi
je 0x3001bf09
push 0x300059d4
lea ecx, [ebp - 0x64]
call fcn.3000d701
jmp 0x3001bffe
lea ecx, [ebp - 0x78]
call fcn.3000d430
push 0xa
lea ecx, [ebp - 0x78]
call fcn.3000d531
push dword [0x30076d54]
lea eax, [ebp - 0x78]
push eax
push 0x300059c0
call fcn.30011ffa
push dword [ebp - 0x78]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x3001bf54
push 0x3000a7ec
lea ecx, [ebp - 0x64]
call fcn.3000d701
push dword [ebp - 0x78]
lea ecx, [ebp - 0x64]
call fcn.3000d701
lea ecx, [ebp - 0x78]
call fcn.3000d43a
jmp 0x3001bffe
push dword [ebp + 0x1d0]
lea eax, [ebp - 0x64]
push eax
call fcn.3001a566
mov esi, eax
cmp esi, edi
je 0x3001bf80
push 0x3000a7c4
jmp 0x3001c14f
push 0x30003be8
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x70], 0x30008f18
call fcn.3000d701
mov esi, eax
cmp esi, edi
je 0x3001bfa4
push 0x30009410
jmp 0x3001c14f
push dword [0x30076d54]
lea eax, [ebp - 0x6c]
push eax
call fcn.30012032
mov esi, eax
cmp esi, edi
je 0x3001bfc3
push 0x3000a7a0
jmp 0x3001c14f
push dword [ebp - 0x6c]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x3001bffe
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
je 0x3001bfeb
push 0x3000a760
jmp 0x3001c14f
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push 0x3000a710
call fcn.300106d0
add esp, 0xc
lea ecx, [ebp - 0x6c]
call fcn.3000d474
mov esi, eax
cmp esi, edi
je 0x3001c016
push 0x3000a6e8
jmp 0x3001c14f
push dword [0x30076d50]
lea eax, [ebp - 0x6c]
push eax
call fcn.30012032
mov esi, eax
cmp esi, edi
je 0x3001c035
push 0x3000a6cc
jmp 0x3001c14f
push 0x30003be8
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
jne 0x3001bf9a
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
je 0x3001c067
push 0x3000a698
jmp 0x3001c14f
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push 0x3000a65c
call fcn.300106d0
add esp, 0xc
push 0x30003be8
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
jne 0x3001bf9a
push dword [ebp + 0x1d8]
lea ecx, [ebp - 0x64]
call fcn.3000d701
mov esi, eax
cmp esi, edi
jne 0x3001c18e
lea eax, [ebp - 0x80]
push eax
call fcn.300114ad
mov esi, eax
cmp esi, edi
je 0x3001c0c2
push 0x3000a638
jmp 0x3001c14f
push 0x105
lea eax, [ebp - 0x5c]
push eax
push 0x300021a4
push 0x30008f5c
push dword [ebp - 0x70]
mov word [ebp - 0x5c], di
call fcn.30010b2b
test eax, eax
je 0x3001c138
cmp ebx, edi
jne 0x3001c138
push 0x30008d58
lea eax, [ebp - 0x70]
push eax
mov dword [ebp - 0x70], edi
call fcn.30019b98
mov esi, eax
cmp esi, edi
je 0x3001c107
push 0x3000391c
jmp 0x3001c14f
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [eax + eax + 2]
push eax
lea eax, [ebp - 0x5c]
push eax
push 1
push edi
push 0x30008eec
push dword [ebp - 0x70]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov esi, eax
cmp esi, edi
je 0x3001c138
push 0x3000a610
jmp 0x3001c14f
lea eax, [ebp + 0x1d0]
push eax
call fcn.30019c12
mov esi, eax
cmp esi, edi
je 0x3001c157
push 0x3000a5f0
call fcn.30010597
pop ecx
jmp 0x3001c18e
mov ax, word [ebp - 0x5c]
neg ebx
sbb ebx, ebx
and ebx, 2
push ebx
push 0x30008d58
push edi
push edi
push edi
neg ax
push 0x30008f08
push dword [ebp - 0x64]
lea ecx, [ebp - 0x5c]
push dword [ebp - 0x80]
sbb eax, eax
and eax, ecx
push eax
push dword [ebp + 0x1d0]
call fcn.3001bb8c
mov esi, eax
lea ecx, [ebp - 0x6c]
call fcn.3000d43a
lea ecx, [ebp - 0x64]
call fcn.3000d43a
lea ecx, [ebp - 0x80]
call fcn.3000d43a
mov ecx, dword [ebp + 0x1c4]
pop edi
mov eax, esi
pop esi
pop ebx
call fcn.3001fd67
add ebp, 0x1c8
leave
ret 0x10