Function at 0x100205c1
Capabilities:
Modify service

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd4
movzx eax, byte [ebp + 8]
test eax, eax
je 0x10020a90
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x20], 0xc77509cb
mov dword [ebp - 8], 4
mov dword [ebp - 0x94], 0xffffffff
mov dword [ebp - 0x90], 0xffffffff
mov dword [ebp - 0x8c], 0xffffffff
mov dword [ebp - 0x88], 0xffffffff
mov dword [ebp - 0xc], 7
mov dword [ebp - 0x28], 0
jmp 0x10020629
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 1
jge 0x1002063c
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 4], 0xc203
jmp 0x10020622
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
mov dword [ebp - 0xb0], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
mov dword [ebp - 0xbc], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
mov dword [ebp - 0xa8], eax
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 4]
cmp dword [ebp + eax - 4], ecx
jl 0x1002068b
mov dword [ebp - 0x44], 1
jmp 0x1002068f
and dword [ebp - 0x44], 0
cmp dword [ebp - 0x44], 0
jne 0x1002069e
mov dword [ebp - 0x40], 1
jmp 0x100206a2
and dword [ebp - 0x40], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
cmp dword [ebp - 0x40], eax
jg 0x100206ba
mov dword [ebp - 0x58], 1
jmp 0x100206be
and dword [ebp - 0x58], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x58]
sub ecx, dword [ebp + eax - 4]
cmp ecx, 0x66fe
jle 0x100206dc
mov dword [ebp - 0x48], 1
jmp 0x100206e0
and dword [ebp - 0x48], 0
cmp dword [ebp - 0x48], 0xfffa
ja 0x100206f2
mov dword [ebp - 0x68], 1
jmp 0x100206f6
and dword [ebp - 0x68], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
cmp dword [ebp - 0x68], eax
jle 0x1002070e
mov dword [ebp - 0x50], 1
jmp 0x10020712
and dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jl 0x1002072d
mov eax, 0xf11bbb4f
test eax, eax
jne 0x1002072d
and dword [ebp - 0x60], 0
jmp 0x10020734
mov dword [ebp - 0x60], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
cmp eax, dword [ebp - 0x60]
jg 0x10020756
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 4], 0
jne 0x10020756
and dword [ebp - 0x3c], 0
jmp 0x1002075d
mov dword [ebp - 0x3c], 1
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 8], eax
mov dword [ebp - 0x20], 0
jmp 0x10020773
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x100209ed
mov dword [ebp - 0x14], 0xce3d9786
mov dword [ebp - 8], 0
jmp 0x10020794
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jg 0x100208ae
mov dword [ebp - 0x5c], 1
mov dword [ebp - 0x80], 1
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 4]
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0x14], 5
jb 0x10020863
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 4], 0x487972e8
jne 0x100207d9
mov dword [ebp - 0x38], 1
jmp 0x100207dd
and dword [ebp - 0x38], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 4]
cmp dword [ebp - 0x38], eax
jge 0x100207f5
mov dword [ebp - 0x34], 1
jmp 0x100207f9
and dword [ebp - 0x34], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x34]
mov dword [ebp + eax - 0x94], ecx
cmp dword [ebp - 0x34], 0
jne 0x1002081e
mov eax, 0x4d2c
test eax, eax
jne 0x1002081e
and dword [ebp - 0x4c], 0
jmp 0x10020825
mov dword [ebp - 0x4c], 1
mov eax, dword [ebp - 8]
cmp dword [ebp - 0x4c], eax
jne 0x10020836
mov dword [ebp - 0x54], 1
jmp 0x1002083a
and dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 4]
cmp dword [ebp - 0x5c], eax
je 0x10020855
mov dword [ebp - 0x64], 1
jmp 0x10020859
and dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0xc], eax
imul eax, dword [ebp - 0xc], 5
mov eax, 0x9a5c1b09
test eax, eax
jne 0x10020870
cmp dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 4]
mov dword [ebp - 0xac], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 4], 0x8fbd
jl 0x1002089f
mov dword [ebp - 0x6c], 1
jmp 0x100208a3
and dword [ebp - 0x6c], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x80], eax
jmp 0x1002078d
mov dword [ebp - 0x14], 0
jmp 0x100208be
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jg 0x100209e8
mov dword [ebp - 8], 0
jmp 0x100208d8
mov eax, dword [ebp - 8]
dec eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
jl 0x100209e3
mov dword [ebp - 0xc], 0
jmp 0x100208f2
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jg 0x10020909
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x94], 0
je 0x10020907
jmp 0x10020909
jmp 0x100208eb
mov dword [ebp - 0xc], 3
jmp 0x10020919
mov eax, dword [ebp - 0xc]
dec eax
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jl 0x100209de
mov dword [ebp - 0x30], 0
jmp 0x10020933
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
jge 0x10020949
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0xa4], 0xfffffff7
jmp 0x1002092c
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0xa4], 3
jmp 0x10020977
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xa4]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0xa4], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xa4], 0
jl 0x10020998
mov eax, dword [ebp - 0xc]
cmp dword [ebp + eax*4 - 0x94], 0
je 0x10020996
jmp 0x10020998
jmp 0x1002095c
mov byte [ebp - 0x19], 0
movzx eax, byte [ebp - 0x19]
test eax, eax
je 0x100209d9
push 0x26a9
push 0x1b84
push 0xe3b
push 0x1457
push 0x355
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.USER32.dll_DrawStateW]
jmp 0x10020912
jmp 0x100208d1
jmp 0x100208b7
jmp 0x1002076c
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
movzx eax, byte [eax]
test eax, eax
je 0x10020a11
push 0
push 0x13bc
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov dword [ebp - 0x18], 0xade19d29
mov dword [ebp - 0x10], 0
jmp 0x10020a28
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 1
jge 0x10020a3b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7c], 6
jmp 0x10020a21
mov dword [ebp - 0x10], 0
jmp 0x10020a4b
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10020a61
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd4], 0x4f2887cf
jmp 0x10020a44
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x18], 0
jmp 0x10020a78
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jge 0x10020a8b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x7c], 0xf37d45db
jmp 0x10020a71
jmp 0x10020b25
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x84]
movzx eax, byte [eax]
test eax, eax
je 0x10020ad1
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x1c07
push 0x9ae
push 0x26f4
push 0
call dword [sym.imp.ADVAPI32.dll_ChangeServiceConfigW]
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x2c], 0
jmp 0x10020ae8
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jge 0x10020afe
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0xc8], 1
jmp 0x10020ae1
mov dword [ebp - 0x24], 0
jmp 0x10020b0e
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jg 0x10020b25
mov eax, dword [ebp - 0x24]
cmp dword [ebp + eax*4 - 0xc8], 0
je 0x10020b23
jmp 0x10020b25
jmp 0x10020b07
mov esp, ebp
pop ebp
ret