Function at 0x10036356
Capabilities:
Start service

Disassembly:
mov eax, 0x1005c7d7
call fcn.1005b080
sub esp, 0x158
cmp byte [ebp + 0x14], 0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x54], cl
je 0x1003641f
xor ebx, ebx
test cl, cl
je 0x10036411
mov dword [ebp - 0x24], 0x1e0
cmp dword [ebp - 0x24], 0x349
jle 0x100363b8
mov esi, ebx
mov edi, esi
mov ebx, 0x38d2
mov eax, edi
mov ecx, 0x10077178
cdq
push edx
push eax
call fcn.1000b0cd
dec edi
dec ebx
jne 0x1003639c
inc esi
cmp esi, 0x40c9
jl 0x10036395
mov byte [ebp + 0x17], bl
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x24], 0xfffffe5b
jge 0x100363d6
mov edx, str.rnvdgu_btftbmj_tlldu
mov ecx, 0x10077178
call fcn.1000ca72
lea eax, [ebp + 0x17]
xor dl, dl
push eax
push 0x2d6a
push 1
push 1
mov ecx, 0x2b0a
call fcn.10035df5
add esp, 0x10
jmp 0x10036cd2
push ebx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_StartServiceW]
jmp 0x10036cd2
cmp byte [ebp + 0x10], 0
je 0x10036cc3
xor ebx, ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 4], 2
mov dword [ebp - 0x3c], 0xfffffff9
mov dword [ebp - 0x3c], 3
jmp 0x100364b6
push ebx
push 0x4e0b
lea eax, [ebp - 0x40]
mov dword [ebp - 0x8c], 0xffffffff
push eax
push ecx
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x40], 0xffffffff
push eax
lea edx, [ebp - 0x3c]
call fcn.10037daf
add esp, 0x14
mov dword [ebp - 0x40], 0xffffffe6
jmp 0x100364ad
mov dword [ebp - 0x100], ebx
mov dword [ebp - 0xfc], ebx
mov dword [ebp - 0xf8], ebx
mov dword [ebp - 0xf4], ebx
mov dword [ebp - 0x44], 0x73292c5e
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x44], eax
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xffffffe7
jg 0x10036482
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x1d
jge 0x1003644b
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0xe4]
mov edi, dword [ebp + 8]
push 1
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x30], eax
mov eax, dword [edi + 0x10]
mov dword [ebp - 0x38], 0x5540d7f8
mov dword [ebp - 0x44], eax
call fcn.10001471
push ecx
lea eax, [ebp - 0x104]
mov byte [ebp - 4], 3
push eax
push ecx
push ecx
mov dword [ebp - 0xb0], 0x7ea0d018
lea edx, [ebp - 0xe4]
mov cl, 1
call fcn.10035ccf
add esp, 0x10
mov dword [ebp - 0x38], ebx
jmp 0x10036525
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10036522
push ebx
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_OpenProcess]
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x13
je 0x1003650f
push 0x77de
lea eax, [ebp - 0xb0]
mov edx, 0x5df7
push eax
push 1
push 1
lea eax, [ebp - 0x38]
xor cl, cl
push eax
push 0x4479
push 0x74ee
lea eax, [ebp - 0xe4]
push eax
push 0x2904
push 0x176c
push 0x61c3
call fcn.10037ee7
add esp, 0x2c
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xe4]
call fcn.100014f4
cmp dword [esi + 0x14], 8
mov ecx, dword [esi + 0x10]
jb 0x1003658a
mov eax, dword [esi]
jmp 0x1003658c
mov eax, esi
push ecx
push ebx
push eax
mov ecx, edi
call fcn.100132c1
mov edi, ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x4c], eax
cmp edi, 0xffffffff
je 0x10036ab2
cmp edi, dword [ebp - 0x44]
jae 0x10036ab2
mov dword [ebp - 0x20], 0xa8eac8b
mov dword [ebp - 0x84], 0xffffffff
mov dword [ebp - 0x5c], 0xfffffffe
mov dword [ebp - 0x50], 0x21692869
mov dword [ebp - 0x28], 0x5bc9807
mov dword [ebp - 0x70], 5
mov dword [ebp - 0x90], 0xf51b4373
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0x20], 0xfffffff9
cmp dword [ebp - 0x20], 0x10
jne 0x10036837
mov dword [ebp - 0x28], 0x5faa
cmp dword [ebp - 0x28], 0x6388
jle 0x1003667e
mov edi, ebx
mov dword [ebp - 0x14], ebx
mov esi, ebx
mov dword [ebp - 0x1c], ebx
mov eax, edi
cdq
idiv esi
mov esi, 0x3930
mov edi, edx
mov eax, edi
lea ecx, [ebp - 0x14c]
cdq
push edx
push eax
call fcn.10002a51
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1003663e
mov eax, dword [eax]
push eax
call fcn.1004498a
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x14c]
call fcn.10001643
dec edi
dec esi
jne 0x10036624
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x14]
inc esi
mov dword [ebp - 0x1c], esi
cmp esi, 0x3016
jl 0x10036618
inc edi
mov dword [ebp - 0x14], edi
cmp edi, 0x2af6
jl 0x10036613
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 0x48], 0xffffffff
cmp dword [ebp - 0x28], 0x5cc7
jge 0x10036699
push str.apmhiv_oelu_dmnxagzn_rcuzroi_mhtjcgdj_shvzc_jjqruog_aabxy_omotag
call fcn.1004498a
pop ecx
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x60], 0xfff9
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x88], 0x209a488d
mov dword [ebp - 0xac], 0xf14186e1
mov dword [ebp - 0x28], 0xba1dd793
push 1
call fcn.10001471
mov byte [ebp - 4], 6
xor edx, edx
inc edx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0xa0], 0xc7df
mov dword [ebp - 0xbc], 0xeb13e27c
mov dword [ebp - 0x1c], ebx
jmp 0x10036708
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xf0]
mov dword [eax + ecx*4], 0xc23782e
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x100366f5
cmp dword [ebp - 0x48], ebx
jne 0x10036715
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x20]
add eax, 0x6cc9
imul eax, eax, 0x10e1
cmp eax, 0x3191
jl 0x100367bf
push edx
mov dword [ebp - 0x58], edx
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x28], 0xfffffffc
mov edx, 0x63fb
mov dword [ebp - 0x28], 0x9d073d4
push 0x1550
mov dword [ebp - 0x28], 0x3c17a3f0
push ecx
mov dword [ebp - 0x28], 0xee879096
mov dword [ebp - 0x28], 0xae2ad21d
push 0x4585
mov dword [ebp - 0x80], 0xfff7
call fcn.10037daf
lea eax, [ebp - 0x58]
mov ecx, 0x38fe
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x5c]
push eax
push 0x36f4
push 0x495e
lea eax, [ebp - 0x60]
push 0x67a1
push eax
call fcn.10035ecb
add esp, 0x40
jmp 0x10036820
push ecx
lea eax, [ebp - 0xac]
mov dword [ebp - 0xb4], 4
push eax
lea eax, [ebp - 0xf0]
mov dword [ebp - 0xb8], ebx
push eax
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x50]
push eax
push ecx
lea edx, [ebp - 0xb8]
call fcn.10036ce3
add esp, 0x34
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 2
call fcn.100014f4
inc dword [ebp - 0x20]
jmp 0x100365f4
lea eax, [ebp - 0x70]
mov ecx, 0x2c1a
push eax
push 1
sub esp, 0xc
lea eax, [ebp - 0x50]
push eax
call fcn.10037a74
mov esi, dword [ebp - 0x4c]
add esp, 0x18
cmp esi, 0xffffffff
je 0x100368be
mov edi, dword [ebp - 0x24]
cmp esi, edi
je 0x10036894
mov ecx, dword [ebp + 8]
mov eax, esi
sub eax, edi
push eax
push edi
lea eax, [ebp - 0x11c]
push eax
call fcn.10039bd8
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa
call fcn.10039c8b
push ebx
push 1
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 2
call fcn.100017af
mov edi, dword [ebp - 0x30]
add edi, esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x24], edi
cmp dword [esi + 0x14], 8
mov ecx, dword [esi + 0x10]
jb 0x100368ac
mov eax, dword [esi]
jmp 0x100368ae
mov eax, esi
push ecx
mov ecx, dword [ebp + 8]
push edi
push eax
call fcn.100132c1
jmp 0x1003659b
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x134]
push 0xffffffffffffffff
push dword [ebp - 0x24]
push eax
call fcn.10039bd8
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 7
call fcn.10039c8b
push ebx
push 1
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 2
call fcn.100017af
push 4
lea ecx, [ebp - 0x9c]
call fcn.10001471
push 1
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 8
call fcn.10001471
mov byte [ebp - 4], 9
mov dword [ebp - 0x14], ebx
jmp 0x10036928
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x9c]
mov dword [eax + ecx*4], 0xfffffffa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10036915
mov dword [ebp - 0x14], ebx
jmp 0x10036943
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x6c]
mov dword [eax + ecx*4], 0x2ba39464
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x10036933
mov eax, dword [ebp - 0x6c]
mov dword [eax], ebx
mov dword [ebp - 0x2c], 0x17f75960
mov dword [ebp - 0xa4], 1
mov dword [ebp - 0x2c], ebx
jmp 0x10036a43
mov dword [ebp - 0x14], 0x31551da6
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 0x33147f59
mov dword [ebp - 0x14], 3
cmp dword [ebp - 0x14], ebx
jl 0x10036a31
mov dword [ebp - 0x30], 0xfffffff9
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x9c]
cmp dword [eax + ecx*4], ebx
jne 0x100369bf
mov eax, dword [ebp - 0x24]
dec dword [ebp - 0x24]
neg eax
je 0x100369bf
mov esi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x9c]
mov eax, dword [eax + ecx*4]
mov dword [edx + esi*4], eax
mov eax, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x6c]
cmp ecx, dword [eax]
setne dl
cmp edx, 0xd580090a
jae 0x100369e2
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov eax, dword [ebp - 0x6c]
cmp dword [eax], 0x3a34071e
mov eax, dword [ebp - 0x14]
setl cl
sub ecx, eax
imul ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x10036a0d
sub esp, 0x10
call fcn.10037785
add esp, 0x10
jmp 0x10036a28
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], ebx
jl 0x10036a28
mov edx, 0x778
call fcn.10037410
dec dword [ebp - 0x20]
jns 0x10036a19
dec dword [ebp - 0x14]
jns 0x10036988
push ecx
push ecx
mov byte [ebp - 0x31], bl
lea ecx, [ebp - 0x31]
call fcn.100360d9
inc dword [ebp - 0x2c]
pop ecx
pop ecx
cmp dword [ebp - 0x2c], 3
jle 0x10036967
lea eax, [ebp - 0x2c]
mov cl, 1
push eax
push 1
lea eax, [ebp - 0xa4]
push eax
push ebx
push 0x217c
lea eax, [ebp - 0x6c]
push 0x5f8d
push eax
call fcn.10036133
mov eax, dword [ebp - 0x6c]
add esp, 0x1c
inc dword [eax]
cmp dword [eax], 3
jle 0x1003694e
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10036a9b
push ebx
mov edx, 0x39e5
mov ecx, 0x3930
call fcn.10037d70
pop ecx
lea ecx, [ebp - 0x6c]
call fcn.100014f4
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 2
call fcn.100014f4
mov dword [ebp - 0x20], 0x2e91a049
mov dword [ebp - 0x14], 0xfff7
mov dword [ebp - 0xd8], 0xffffffff
mov dword [ebp - 0xd4], 0xffffffff
mov dword [ebp - 0xd0], 0xffffffff
mov dword [ebp - 0xcc], 0xffffffff
mov dword [ebp - 0x44], 0x4d33
cmp dword [ebp - 0x44], 0x4fc3
jle 0x10036b71
push ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, ebx
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov dword [ebp - 0x4c], ebx
mov ecx, esi
mov dword [ebp - 0x30], edi
mov esi, edi
mov dword [ebp - 0x24], ebx
sar esi, cl
mov edi, ebx
mov ecx, edi
mov eax, esi
sar eax, cl
lea ecx, [ebp - 0x164]
cdq
push edx
push eax
call fcn.10002a51
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10036b35
mov eax, dword [eax]
push eax
call fcn.1004498a
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x164]
call fcn.10001643
inc edi
cmp edi, 0x61ed
jl 0x10036b17
mov esi, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x28]
inc esi
mov dword [ebp - 0x4c], esi
cmp esi, 0x5789
jl 0x10036b09
inc edi
mov dword [ebp - 0x28], edi
cmp edi, 0x764d
jl 0x10036b04
push 5
mov dword [ebp - 0x20], 0x10
pop edi
jmp 0x10036c89
mov dword [ebp - 0x24], edi
lea ecx, [ebp - 0xc8]
push 3
call fcn.10001471
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x1c], ebx
jmp 0x10036bac
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc8]
mov dword [eax + ecx*4], 0xfffffffb
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x10036b99
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x20], 1
jl 0x10036bf8
mov eax, dword [ebp - 0x24]
mov ecx, 0x969ac54c
cmp ecx, eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x24]
je 0x10036bd7
cmp dword [ebp - 0x14], ebx
je 0x10036bd7
xor esi, esi
inc esi
jmp 0x10036bd9
mov esi, ebx
mov edx, dword [ebp - 0x14]
xor ecx, ecx
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0x24]
cmp esi, eax
setge cl
add ecx, dword [ebp - 0x20]
cmp edx, ecx
jne 0x10036bf8
xor ecx, ecx
inc ecx
jmp 0x10036bfa
mov ecx, ebx
mov eax, dword [ebp - 0xc8]
cmp ecx, dword [eax]
jl 0x10036c07
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x14], 0xfffffff8
jmp 0x10036c4d
mov dword [ebp - 0x30], 0xae857b1a
cmp dword [ebp - 0x1c], ebx
jne 0x10036c3b
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xc8]
cmp ecx, dword [eax]
jl 0x10036c3b
mov eax, ebx
jmp 0x10036c3e
xor eax, eax
inc eax
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x36
jle 0x10036c1e
mov dword [ebp - 0x1c], 0x1c
jmp 0x10036c71
mov byte [ebp - 0x15], bl
cmp byte [ebp - 0x15], 0
je 0x10036c6e
push ecx
push ecx
call fcn.1003774e
pop ecx
pop ecx
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x1a
jge 0x10036c5c
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 2
call fcn.100014f4
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10036b80
cmp dword [ebp - 0x44], 0x4977
jge 0x10036ca6
push str.drstt_uqejq_wdeem_fgqott_soi
call fcn.1004498a
pop ecx
mov ecx, dword [ebp + 0x18]
lea eax, [ebp - 0x7c]
push eax
mov dword [ebp - 4], 2
call fcn.10039cfb
lea ecx, [ebp - 0x7c]
call fcn.1003a186
jmp 0x10036cd2
cmp byte [edx], 0
je 0x10036cd2
xor ebx, ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret