Function at 0x10030a07
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x178
movzx eax, byte [ebp + 0xc]
test eax, eax
je 0x10030cd9
lea eax, [ebp + 0x24]
mov dword [ebp - 0x88], eax
lea eax, [ebp + 0x10]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x50]
movzx eax, byte [eax]
test eax, eax
je 0x10030ccc
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 4]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax]
push 8
pop ecx
imul ecx, ecx, 5
lea eax, [eax + ecx + 0x78]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
cmp dword [eax + 4], 0
jbe 0x10030cca
mov dword [ebp - 0x58], 0x2532
cmp dword [ebp - 0x58], 0xd64
jge 0x10030c98
lea eax, [ebp - 0x78]
push eax
push 0x10007b80
call fcn.1005076b
pop ecx
pop ecx
mov dword [ebp - 0x28], 1
jmp 0x10030aaa
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x78]
jg 0x10030c98
lea eax, [ebp - 0x20]
push eax
push 0x10007b80
call fcn.1005076b
pop ecx
pop ecx
and dword [ebp - 0x14], 0
jmp 0x10030ad3
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x20]
jge 0x10030b0b
mov eax, dword [ebp - 0x14]
lea eax, [ebp + eax*4 - 0x128]
push eax
mov eax, dword [ebp - 0x14]
lea eax, [ebp + eax*4 - 0x178]
push eax
mov eax, dword [ebp - 0x14]
lea eax, [ebp + eax*4 - 0xd8]
push eax
push 0x10007c40
call fcn.1005076b
add esp, 0x10
jmp 0x10030acc
lea eax, [ebp - 0x24]
push eax
push 0x10007b80
call fcn.1005076b
pop ecx
pop ecx
and dword [ebp - 0xc], 0
jmp 0x10030b28
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x20]
jge 0x10030bb4
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0x10], eax
jmp 0x10030b44
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x20]
jge 0x10030baf
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0xd8]
cmp eax, dword [ebp + ecx*4 - 0xd8]
jle 0x10030bad
mov eax, dword [ebp - 0x10]
lea edx, [ebp + eax*4 - 0xd8]
mov eax, dword [ebp - 0xc]
lea ecx, [ebp + eax*4 - 0xd8]
call fcn.1001bc85
mov eax, dword [ebp - 0x10]
lea edx, [ebp + eax*4 - 0x178]
mov eax, dword [ebp - 0xc]
lea ecx, [ebp + eax*4 - 0x178]
call fcn.1001bc85
mov eax, dword [ebp - 0x10]
lea edx, [ebp + eax*4 - 0x128]
mov eax, dword [ebp - 0xc]
lea ecx, [ebp + eax*4 - 0x128]
call fcn.1001bc85
jmp 0x10030b3d
jmp 0x10030b21
mov byte [ebp - 1], 0
and dword [ebp - 0x2c], 0
and dword [ebp - 8], 0
jmp 0x10030bc9
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x20]
jge 0x10030c73
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x10030c73
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0xd8]
sub eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x178]
imul eax, dword [ebp + ecx*4 - 0x128]
mov ecx, dword [ebp - 8]
imul eax, dword [ebp + ecx*4 - 0x128]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x38]
jg 0x10030c26
mov byte [ebp - 1], 1
jmp 0x10030c6e
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0xd8]
mov dword [ebp - 0x2c], eax
cvtsi2sd xmm0, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x24]
cvtsi2sd xmm1, eax
mulsd xmm1, qword [0x10008168]
cvtsi2sd xmm2, dword [ebp - 0x30]
divsd xmm1, xmm2
subsd xmm0, xmm1
push ecx
push ecx
movsd qword [esp], xmm0
call fcn.10051770
pop ecx
pop ecx
call fcn.100697a0
mov dword [ebp - 0x24], eax
jmp 0x10030bc2
movzx eax, byte [ebp - 1]
test eax, eax
je 0x10030c88
push 0x10008014
call fcn.10050db3
pop ecx
jmp 0x10030c93
push 0x10008020
call fcn.10050db3
pop ecx
jmp 0x10030aa3
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x3c]
add ecx, dword [eax]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
cmp dword [eax], 0
jbe 0x10030cca
mov eax, dword [ebp - 0x60]
push dword [eax]
push 0x6611
push 1
push 1
push dword [ebp - 0x3c]
lea eax, [ebp - 0x44]
push eax
call fcn.1002fe5c
add esp, 0x18
jmp 0x10030ca3
jmp 0x10030cd4
push 0
call dword [sym.imp.COMDLG32.dll_FindTextW]
jmp 0x10030d9a
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x70], eax
lea eax, [ebp + 0x28]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax]
test eax, eax
je 0x10030d16
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
jmp 0x10030d9a
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax], 0
jmp 0x10030d5c
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1c]
cmp dword [eax], 1
jg 0x10030d9a
mov eax, dword [ebp - 0x18]
mov dword [eax], 1
jmp 0x10030d7a
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [ebp - 0x18]
cmp dword [eax], 0
jl 0x10030d98
mov eax, dword [ebp - 0x74]
push dword [eax]
mov ecx, dword [ebp - 0x7c]
call fcn.10017939
cmp dword [eax], 0
je 0x10030d96
jmp 0x10030d98
jmp 0x10030d6f
jmp 0x10030d51
mov esp, ebp
pop ebp
ret