Function at 0x10030a7b
Capabilities:
Start service

Disassembly:
mov eax, 0x1005884e
call fcn.100573b8
sub esp, 0xf4
cmp byte [ebp + 8], 0
push ebx
push esi
push edi
mov edi, edx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x20], edi
je 0x10030af4
cmp byte [ebp + 0x18], 0
je 0x10030ae0
mov eax, dword [ebp + 0x20]
cmp byte [eax], 0
je 0x10031292
push 0x6b8
push 0x5228
push 0
push 0x679e
xor esi, esi
mov edx, 0x41c7
push 0x7044
inc esi
mov ecx, 0x72ba
push esi
push esi
call fcn.10030a7b
add esp, 0x1c
jmp 0x10031292
xor ebx, ebx
push ebx
push 0x1284
push ebx
call dword [sym.imp.ADVAPI32.dll_StartServiceW]
jmp 0x10031292
xor esi, esi
inc esi
cmp byte [ebp + 0xc], 0
je 0x10031271
mov dword [ebp - 0x38], ecx
xor ebx, ebx
mov dword [ebp - 0x2c], 0x602a
cmp dword [ebp - 0x2c], 0x634a
jle 0x10030bab
mov dword [ebp - 0x30], ebx
mov edi, ebx
mov dword [ebp - 0x1c], ebx
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], edi
mov edx, ebx
mov edi, dword [ebp - 0x30]
mov ecx, eax
shl dword [ebp - 0x28], cl
mov dword [ebp - 0x24], edx
mov eax, edx
lea ecx, [ebp - 0xf0]
xor eax, edi
xor eax, dword [ebp - 0x28]
cdq
push edx
push eax
call fcn.10001a51
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10030b56
mov eax, dword [eax]
push eax
call fcn.1003fd76
pop ecx
push ebx
push esi
lea ecx, [ebp - 0xf0]
call fcn.10002015
mov edx, dword [ebp - 0x24]
inc edx
mov dword [ebp - 0x24], edx
cmp edx, 0x7af9
jl 0x10030b37
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x14], eax
cmp eax, 0x37c5
jl 0x10030b27
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x3ebb
jl 0x10030b22
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, 0x35f4
jl 0x10030b1d
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x2c], 0x5d19
jge 0x10030bbf
push str.bztjjwwn_fpoe_ppflqdfpp_tiunrfuz
call fcn.1003fd76
pop ecx
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x30], 0xfffffff7
mov dword [ebp - 0x24], 0x69393dda
push 0xfffffffffffffffa
pop ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x1c], ebx
jmp 0x10030bf4
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x40], 9
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 2
jl 0x10030be6
cmp dword [ebp - 0x30], ebx
je 0x10030d8b
mov dword [ebp - 0x18], 0xfffffffb
mov dword [ebp - 0x28], 0xfffffff9
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], 0xcb3a3fc4
mov eax, dword [ebp - 0x18]
cmp eax, esi
setge cl
xor edx, edx
cmp ecx, 0x13d8c537
setne dl
cmp dword [ebp - 0x24], 0xfffffffd
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, edx
setge cl
cmp ecx, dword [ebp - 0x30]
jne 0x10030c57
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x30], esi
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], ebx
jmp 0x10030d80
mov dword [ebp - 0x1c], 3
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], ebx
jl 0x10030d7d
mov dword [ebp - 0x14], ebx
jmp 0x10030ca1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5c], 0x8f87
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10030c93
mov dword [ebp - 0x14], ebx
jmp 0x10030d6b
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp + eax*4 - 0x40]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x40]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x40], 8
mov eax, dword [ebp - 0x1c]
add eax, 0xa4d2c64
jne 0x10030d3d
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x40]
mov edx, dword [ebp - 0x28]
sub edx, eax
add edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
mov eax, dword [ebp + eax*4 - 0x40]
cmp edx, eax
mov eax, dword [ebp - 0x5c]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x5c]
setg dl
xor ecx, ecx
sub edx, eax
mov eax, dword [ebp - 0x24]
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0xfffffffb
setg al
add eax, dword [ebp - 0x5c]
neg eax
cmp eax, 0x68be3e2
jl 0x10030d3d
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x5c], ebx
jg 0x10030d52
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x40], 0xb53abf6a
jmp 0x10030d68
mov dword [ebp - 0x1c], ebx
jmp 0x10030d63
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x40], ebx
jne 0x10030d68
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10030d57
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jle 0x10030caf
dec dword [ebp - 0x18]
jns 0x10030c8e
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x10030c7b
jmp 0x10030d96
lea edx, [ebp + 0xb]
mov byte [ebp + 0xb], bl
call fcn.1003036d
xor eax, eax
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], ebx
mov word [ebp - 0x8c], ax
push 2
pop eax
mov dword [ebp - 4], eax
cmp edi, dword [ebp - 0x38]
ja 0x10030e60
mov dword [ebp - 0x20], 0x8ade
mov dword [ebp - 0x20], 0xe1d925b0
mov dword [ebp - 0x20], 0xdb34
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x18], ebx
jmp 0x10030de9
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd8], 0xc9ed9ba0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10030dd8
mov dword [ebp - 0x18], ebx
jmp 0x10030e01
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x100], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10030df4
mov dword [ebp - 0x18], ebx
jmp 0x10030e19
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb4], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10030e0c
lea eax, [ebp - 0x31]
mov byte [ebp - 0x31], bl
push eax
push ecx
call fcn.10032839
lea eax, [ebp - 0x74]
push eax
call fcn.1002f99b
add esp, 0xc
mov ecx, dword [ebp + 0x1c]
lea eax, [ebp - 0x8c]
cmp ecx, eax
je 0x10030e4e
push 0xffffffffffffffff
push ebx
push eax
call fcn.100115db
push ebx
push esi
lea ecx, [ebp - 0x8c]
call fcn.1001171d
jmp 0x10031292
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
jmp 0x10030e76
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x60], 0xdd33
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030e68
mov dword [ebp - 0x1c], ebx
jmp 0x10030ea2
mov dword [ebp - 0x14], 0x888adae8
mov dword [ebp - 0x14], ebx
jmp 0x10030e9a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x60], 0xf369
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030e8c
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jle 0x10030e80
mov eax, edi
lea ecx, [ebp - 0x8c]
sub eax, dword [ebp - 0x38]
sar eax, 1
push eax
call fcn.10010f0b
mov dword [ebp - 0x14], 7
mov dword [ebp - 0x20], 0x878ed7c3
mov dword [ebp - 0x24], 0x996f
mov dword [ebp - 0x18], ebx
jmp 0x10030ee2
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x4c], 0xfffffff8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x10030ed4
mov dword [ebp - 0x18], ebx
jmp 0x10030efe
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x98], 0xa3191b49
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x10030eed
mov eax, dword [ebp - 0x48]
dec eax
mov dword [ebp - 0x98], eax
mov edx, dword [ebp - 0x4c]
sub edx, eax
mov eax, dword [ebp - 0x48]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x48]
setge cl
xor ebx, ebx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setne bl
xor ecx, ecx
imul edx, ebx
cmp edx, eax
sete cl
xor ebx, ebx
imul ecx, dword [ebp - 0x14]
test ecx, ecx
jne 0x10030f4d
mov ecx, ebx
cmp dword [ebp - 0x48], ebx
je 0x10030f4f
mov ecx, esi
mov eax, dword [ebp - 0x48]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x14]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
cmp ecx, esi
setg dl
sub edx, dword [ebp - 0x14]
neg edx
sbb edx, edx
xor eax, eax
inc edx
imul edx, dword [ebp - 0x14]
cmp edx, 0xca4d
setge al
xor edx, edx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x24]
cmp eax, ecx
setg dl
xor eax, eax
cmp edx, 0xe6b786ae
setne al
xor ecx, ecx
cmp eax, 0x21dd8e18
setg cl
mov dword [ebp - 0x20], ecx
jmp 0x10031095
mov dword [ebp - 0x14], 0x1928c176
mov dword [ebp - 0x44], 0x6580849f
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x20], 0x16f93bd5
mov dword [ebp - 0x14], ebx
jmp 0x10031079
mov dword [ebp - 0x28], 0x7e3b6f9b
mov ecx, esi
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x28], ebx
jne 0x10031003
mov ecx, ebx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x44], eax
mov eax, 0xfecafe8
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
mov eax, dword [ebp - 0x28]
setns cl
xor edx, edx
cmp ecx, 0x2b3b7bed
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x44]
setg cl
imul ecx, eax
mov eax, dword [ebp - 0x28]
add eax, ecx
je 0x10031057
push ecx
push ecx
lea edx, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0xcf5aa05d
lea ecx, [ebp - 0x44]
call fcn.1002fa74
pop ecx
pop ecx
jmp 0x10031076
push 0x1876
push esi
push esi
push ebx
push 0x41a8
mov edx, 0x63ff
mov ecx, 0x3a3b
call fcn.100312a3
add esp, 0x14
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x12
jge 0x10030fe4
lea eax, [ebp - 0x8c]
xor dl, dl
push eax
lea ecx, [ebp - 0x38]
call fcn.1002f3d0
pop ecx
cmp dword [ebp - 0x38], edi
jb 0x10030fc0
mov dword [ebp - 0x68], 0xb02
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x64], esi
push 2
call fcn.10004d70
mov byte [ebp - 4], 3
mov dword [ebp - 0x50], 0x38591b6
mov dword [ebp - 0x70], esi
mov dword [ebp - 0x28], 0x1633
cmp dword [ebp - 0x28], 0x1922
jle 0x10031144
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov eax, ebx
mov dword [ebp - 0x20], ebx
mov edx, edi
mov dword [ebp - 0x30], ebx
mov ecx, eax
mov edi, ebx
shl edx, cl
mov dword [ebp - 0x14], edx
mov eax, edi
lea ecx, [ebp - 0xcc]
xor eax, edx
cdq
push edx
push eax
call fcn.10001a51
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10031107
mov eax, dword [eax]
push eax
call fcn.1003fd76
pop ecx
push ebx
push esi
lea ecx, [ebp - 0xcc]
call fcn.10002015
mov edx, dword [ebp - 0x14]
inc edi
cmp edi, 0x1175
jl 0x100310eb
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x42c0
jl 0x100310dd
inc edi
mov dword [ebp - 0x24], edi
cmp edi, 0x73c2
jl 0x100310d8
lea eax, [ebp - 0xa8]
xor cl, cl
push eax
push 0x29a3
lea edx, [ebp - 0xa4]
call fcn.100325a2
cmp dword [ebp - 0x28], 0x154c
pop ecx
pop ecx
jge 0x10031173
push str.pwpnmbatm_cpnt_pflrilfsa_tonds_ffkve_tbtozy_uqghjh_nufqwptj
call fcn.1003fd76
pop ecx
mov dword [ebp - 4], 3
mov dword [ebp - 0x20], 0x5eef
cmp dword [ebp - 0x20], 0x6241
jle 0x100311f0
push ebx
push ebx
push 0x20f2
push 0xefe
call dword [sym.imp.USER32.dll_PostMessageA]
mov edi, ebx
mov esi, ebx
mov dword [ebp - 0x24], ebx
mov eax, esi
mov ecx, 0x100720b8
cdq
idiv ebx
lea eax, [edi + edx]
cdq
push edx
push eax
call fcn.10001c38
inc ebx
cmp ebx, 0x8af
jl 0x100311a3
inc esi
push 0
pop ebx
cmp esi, 0x21da
jl 0x100311a0
inc edi
cmp edi, 0x463c
jl 0x1003119e
push ebx
push 0x7ca
push ebx
push 0x688
push 0x1301
call dword [sym.imp.GDI32.dll_ExtCreatePen]
xor esi, esi
inc esi
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x68]
push eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0xa4]
call fcn.1002e587
add esp, 0x10
mov byte [ebp - 4], 6
cmp dword [ebp - 0x20], 0x5e38
jge 0x1003124b
mov edx, str.pmopzo_oms_pnxshgt
mov ecx, 0x100720b8
call fcn.100035ef
jmp 0x1003124b
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x32]
mov byte [ebp - 0x32], bl
call fcn.1002f5e3
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 2
call fcn.10004df3
jmp 0x10030e38
mov edx, dword [ebp + 0x10]
mov dword [edx], 0
cmp dword [edx], esi
jge 0x10031292
mov edi, dword [ebp + 0x14]
mov ecx, dword [edx]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0xe8f21009
inc dword [edx]
cmp dword [edx], esi
jl 0x10031281
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret